软 件 导 刊第8卷 第5期 2009年 5 月Vol.8 No.5Software
软 件 导 刊
第8卷 第5期
2009年 5 月
Vol.8 No.5
Software Guide May. 2009
Linux 与 Windows 间文件定时自动同步的实现
曾绍庚,徐
鹏,冉
全
(武 汉 工 程 大 学 ,湖 北 武 汉 430073)
摘 要 :在日常文件管理 和 数据库备份等操作中 ,经 常会遇到这样的情况 :我们 需要在无人值守的情 况 下完成文件
夹 的 同 步 过 程 ,以 实 现 周 期 性 的 备 份 ,有时甚至是不 同操作系统间的文件 夹 需要同步 。 在 两 台 Windows 主 机 中 ,要 实 现 文 件 夹 的 同 步 ,用 Windows 系统自 带的公文包即可 ,操 作 过 程 也 比 较 简 单 ,故不在本 文讨论范围之内 。 本 研 究 实 现 了 本 地 Windows 主 机 与 远 程 Linux 主 机 , 本 地 Linux 主 机 与 远 程 Windows/Linux 主机目录 的定时自动同步 。 实 例 在 Windows XP SP2 和 CentOS 4.6 & CentOS 5.2 系统下测试通过 。
关 键 词 :文 件 同 步 ;Linux 系 统 ;自 动 同 步 ;定 时 同 步
中 图 分 类 号 :TP316
文 献 标 识 码 :A
文 章 编 号 :1672-7800(2009)05-0009-04
\unison。 为 操 作 方 便 , 可 把 解 压 出 来 的 Unison-2.27.57Text.exe
改 名 为 unison.exe。
安 装 OpenSSH 并 做 如 下 配 置 :
(1)打 开一个命令行 窗 口并切换到 安 装目 录 (默 认 路 径 是
C:\Program Files\OpenSSH)。
(2)CD 进 入 bin 目 录 。
1
软件准备
在 Windows 系统下我们可 以 使用 OpenSSH 软 件 搭 建 SSH
环 境 ,这 样 就 可 以 通 过 SSH 实 现 Windows 与 Linux 主 机 间 的 连 接 。 同 步 软 件 选 用 的 是 unison,它是个跨 平台的开源软件 ,可 以 实 现不同操作系 统 间文件夹的同步 。 在 Windows 系 统 下 ,uni- son 有 命 令 行 和图形前端两 种 版本 , 其 中 图 形 前 端 版 需 要 GTK+库 的 支 持 。
(3)使 用 mkgroup 命 令 创 建 一 个 组 验 证 文 件 。
组 ,使 用 “-l”参 数 ;对 域 ,使 用 “-d”参 数 。
对 本 地 工 作
要 同时使用域和 本 地工作组 ,最 好 把 以 下 两 条 命 令 都 运 行
一 下 (请 注 意 使 用>>而 不 是 >)。 如果你 同时使用这两者 ,须 编 辑 生 成 的 group 文 件并删除掉里面 相 同的条目 。
2
目录同步操作指南
Unison-2.27.57-Gtk.zip 压 缩 包 中 的 Unison-2.27.57 Gtk+.
exe 是 unison 的 图 形 前 端 (图 1), 需 要 安 装 不 低 于 2.12 版 的
GTK+来 支 持 它 。
mkgroup -l >> ..\etc\group
mkgroup -d >> ..\etc\group
(对 本 地 工 作 组 )
(对 域 里 面 的 组 )
(4)使 用 mkpasswd 命 令 创 建 一 个 名 为 passwd 文 件 并 把 需
要 验证的用户加 入到这个文件中 。 对 本 地 工 作 组 ,使 用 “-l”参 数 ;对 域 ,使 用 “-d”参 数 。
要 同时使用域和 本 地工作组 ,最 好 把 以 下 两 条 命 令 都 运 行
一 下 (请 注 意 使 用>>而 不 是 >)。 如果你 同时使用这两者 ,须 编 辑 生 成 的 passwd 文 件并删除掉里面 相 同的条目 。
mkpasswd -l [-u ] >> ..\etc\passwd
(对 本 地 工 作 组 )
mkpasswd -d[-u ] >> ..\etc\passwd
(对 域 里 面 的 组 )
注 : 若需要从不同 于 本机所在主域 的 其它域 里 增 加 用户 ,
请在用户名后 加 上域名 。
注 :不必切换用户名 ,命令会自动增 加 计算 机 或 域 里 的所
图 1