需求:對於開發機器做目錄的數據備份
測試機IP:192.168.1.100 WEB目錄:/bckup/
下面我將用一台機器來備份上面測試機 /bckup下的所有數據,並實現時時同步
備份機器IP:192.168.1.101 備份到目錄/bckup下 (需要創建目錄 mkdir -p /bckup
安裝 192.168.1.101 需要操作如下:
rsync-2.6.8.tar.gz 包下載到本機 http://pan.baidu.com/s/1jIEzwxw
[root@cdn ~]#tar -zxvf rsync-2.6.8.tar.gz rsync-2.6.8/ rsync-2.6.8/COPYING rsync-2.6.8/Doxyfile rsync-2.6.8/INSTALL rsync-2.6.8/Makefile.in rsync-2.6.8/NEWS rsync-2.6.8/OLDNEWS rsync-2.6.8/README rsync-2.6.8/TODO
[root@cdn ~]# cd rsync-2.6.8 [root@cdn rsync-2.6.8]# ./configure [root@cdn rsync-2.6.8]# make && make install
配置 vi /etc/rsyncd.conf
uid = nobody gid = nobody use chroot = yes max connections = 4 pid file= /var/run/rsyncd.pid lock file= /var/run/rsync.lock log file= /var/log/rsyncd.log [downloads] path = /bckup/ //同步的目錄 ignore errors readonly = false list = false hosts allow = 192.168.1.100/24 //允許的Ip hosts deny = 0.0.0.0/32 //拒絕的IP 0.0.0.0代表無黑名單用戶ip auth users= root //用戶
啟動服務並加入開機自啟
/usr/bin/rsync --daemon echo "/usr/bin/rsync --daemon" >>/etc/rc.local
192.168.1.100 實現同步腳本
[root@cdn etc]# rsync -vrtL --progress /bckup/* root@192.168.1.101:/bckup/ The authenticity of host '192.168.1.101 (192.168.1.101)' can't be established. RSA key fingerprint is c1:c3:e2:7e:e6:bb:e7:1a:42:5d:02:9d:35:6e:6a:c8. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.1.101' (RSA) to the list of known hosts. root@192.168.1.101's password:
----直接執行的話會有一個繁瑣的問題,就是需要每次都輸入密碼,但如果放在shell腳本中實現自動同步是無法實現的,所以需要做一個SSH密鑰登錄功能
[root@cdn etc]# ssh-keygen -t rsa 此命令會有一些提示,全部選擇默認確定即可 [root@cdn etc]# cat /root/.ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAvpnDDCEUHeN6AWjkxue60ol0z4cLfXkmn6SXr1rRd2le45nOh7idCCF9B3+cOkLaA/IlRejBas5E7zodnyFIpad8X5Cj0C9vc31a1Wo33y6vo7KHsTvHsLBE4PcXjxkSN9fjmNekzOMNkvCne4bq1h9zvkvocuigTjUkQ1i9TG3Tg3DZ2lA5X8/jQFoebA9hX2WMCiwJNc5g0rhhtoQuQ8yYVd5fnzzvbcnXTLE/CB69UefkmVSvUkzsYd+PcNHbGVGpivO7jk2eR8c7WKl39kJ3LbqKHNL4rayuXpSCtvfKiwlkFjzxDYZ2ubAUreru8B/YQyJikEypNhq4IzTZUQ== root@cdn.oss.letv.com [root@cdn etc]#
復制自己創建的密鑰,放到 192.168.1.101 /root/.ssh/authorized_keys 目錄內 實現登錄無需密碼登錄。
將同步命令寫入計划任務,定期執行,即可實現自動同步。