社区编辑申请
注册/登录
在Ubuntu/Debian上用Unison来同步文件 译文
运维 系统运维
Unison是一款免费的、跨平台的文件同步工具,可在与互联网连接的任何一对机器之间使用,通过直接套接层链路或基于加密SSH连接的隧道进行联系。本文中,主要讲述了在Ubuntu/Debian这两个系统上用Unison来同步文件的方法。

【51CTO精选译文】Unison是一款免费的、跨平台的文件同步工具;有了它,我们就能够将两套文件副本(实例)保存在两个不同的平台上,或保存在同一个系统的不同磁盘上。不像简单的镜像方法或备份实用工具,Unison可以同时更新分布式目录结构的两个副本。它可以检测并显示有冲突的更新。而且不像分布式文件系统,Unison是一款用户级程序;不需要改动内核,也没必要在任何一个主机上都要拥有根用户权限。

Unison可在与互联网连接的任何一对机器之间使用,通过直接套接层链路或基于加密SSH连接的隧道进行联系。它谨慎使用网络带宽,在PPP连接等慢速链路上可以顺畅地使用。可以使用一种类似rsync的压缩协议,优化将小容量更新传送到大文件的操作。

在这篇实用文章中,我使用了两台运行Ubuntu的系统。本地系统运行Ubuntu桌面版,其IP地址是192.168.1.100/24;而远程系统则运行Ubuntu服务器版,其IP地址是192.168.1.201/24。我还准备在这两个系统之间同步目录/home/sk/Unixmen。请根据你的具体情况,更改相应值。

安装Unison

在本地和远程服务器系统上安装:

使用下列两个命令,更新和升级这两个系统:

  1. sudo apt-get update 
  2. sudo apt-get upgrade 

在两个系统上安装Unison。

  1. sudo apt-get install unison unison-gtk 

配置

现在在你的本地系统上,从Menu(菜单)或Dash启动Unison GUI工具。它的界面看起来应该如下。

首先,我们得为同步过程创建一个新的配置文件。点击Add(添加),即可创建一个新的配置文件。点击Forward(下一步)。

输入新配置文件的名称,点击Forward(下一步)。

这里会要求你选择同步方法。我想使用SSH,在本地桌面与远程服务器之间同步文件。于是我在这里从Synchronization Kind(同步类别)下拉框中选择Using SSH(使用SSH)。然后输入远程主机服务器的IP地址和用户名称,如下所示,点击Forward(下一步)。

现在,我们得指定需要复制的本地文件夹和远程文件夹。在Local Directory(本地目录)框里面输入本地文件夹的路径(如本文中的/home/sk/Unixmen),在Remote Directory(远程目录)框里面输入远程文件夹的路径。点击Forward(下一步)。

如果你同步FAT分区里面的任何文件夹,请勾选FAT Partition(FAT)分区,然后点击Forward(下一步)。

***点击Apply(应用)。

我们已成功地创建了配置文件。点击Open(打开)即可开始。

它会要求你输入远程系统用户密码。输入密码,点击OK(确定)。

如果你头一次使用该应用程序,你会得到如下所示的一段警告信息。点击Ok(确定),继续操作。

现在,你会看到类似这样的屏幕。

把你想要复制的文件夹或文件放入到同步文件夹(/home/sk/unixmen),点击Go(开始同步)。一切都会在幕后进行。

现在查看远程系统里面的文件。它们应该肯定就在那里。如果你添加了一个新的文件或文件夹,点击Rescan(重新扫描);之后,点击Go(开始同步),即可开始同步了。

  1. sk@server1:~$ ls /home/sk/Unixmen/ 
  2. New1  New2  New3 

就这样,开始享用吧。你刚才看到的上面这些只是Unison的一个基本概念。你可以用Unison处理许多任务。我建议你仔细阅读官方文档,以获取更多信息。

原文链接:http://www.unixmen.com/synchronize-files-with-unison-on-ubuntu/

责任编辑:黄丹 来源: 51CTO.com
相关推荐

2022-04-02 20:45:04

Hi3516开发板操作系统鸿蒙

2022-05-17 09:19:17

XebianLinuxLinux 发行版

2022-05-07 11:08:50

Linuxapt 命令

2022-05-13 10:24:44

WineWindowsLinux

2022-04-22 19:14:51

LinuxUbuntu

2022-04-06 12:19:50

LinuxUbuntu

2022-04-19 11:23:26

release3.1子系统鸿蒙

2022-05-16 10:41:40

GNOME 42Console控制台

2022-04-25 08:45:38

Linux 发行版旧计算机PC

2022-04-30 09:09:55

SecureFXSecureCRT

2022-04-06 11:33:43

Linux桌面GNOME 42

2022-04-27 09:55:12

Linux误删文件

2022-03-22 10:57:37

Xshell开源SSH

2022-04-25 09:10:50

RK3568鸿蒙

2009-06-29 09:44:39

LinuxDebianGNU

2022-04-26 07:45:52

PostgreSQL容器

2022-03-03 09:34:28

CentOS 8服务器替代

2022-05-10 06:01:17

Windows 11微软操作系统

2022-04-25 21:25:38

数据模式

2021-09-16 14:48:26

同话题下的热门内容

使用 Vmalert 代替 Prometheus 监控报警开发和运维对K8S中的应用都做了什么?

编辑推荐

六个人如何运维一万台服务器?Linux下如何使用minicom USB串口Linux中7个判断文件系统类型的方法从美团程序员的灾难,看美团外卖自动化运维体系建设如何限制SSH用户访问Linux中指定的目录
我收藏的内容
点赞
收藏

51CTO技术栈公众号