分类
Linux

使用rsync同步服务器文件

这篇指南告诉你如何使用rsync同步你的web服务器的文件至另一台备份服务器,假如主服务器Down掉,你可以立即手工却换至备份服务器。我们使用rsync进行服务器文件数据同步,通过使用cron的计划任务可以让rsync每X分钟进行同步一次,可以保证备份服务器的数据是最新的。

rsync只同步有变化的或者新的文件,也就是我们通常所说的增量备份。若主服务器上的文件被删除,它也可以从备份服务器删除文件。它能保证主服务器与备份服务器的文件和目录的权限和属主是一致的,但是前提要求是必须以root权限运行rsync。若主服务器上的文件或目录的属性发生了变化,rsync也能同步至备份服务器,始终保持一致。

本指南中rsync是通过更加安全的ssh方式进行同步,使用默认的ssh端口即可,不需要在防火墙中为rsync另开端口,但问题是ssh登录是需要密码的,若我们使用cron计划任务,这就需要人工输入密码。那么还有办法吗?幸运的是,ssh提供公钥登录,只需要在备份服务器生成公钥和私钥,然后将公钥保存至主服务器,这样SSH登录就不再需要密码,那么用cron计划任务来使用rsync同步文件数据就非常方便,可靠了。

现有服务器 server1.example.com 192.168.0.100

备份服务器 server2.example.com 192.168.0.101,