rsync配置兩台服務器之間的文件備份(同步)
前情提要
環境:
- 192.168.1.2 主服務器 centos 7.7
- 192.168.1.3 備份服務器 centos 7.7
rsync 安裝(兩台linux都需要安裝)
在linux環境下,以centos為例,安裝非常簡單:
[root@qinshengfei ~]# yum install rsync
rsync的配置文件(服務端配置)
rsync 服務端安裝完成之后是沒有生成rsync.conf文件的,需要手動創建rsyncd.conf
[root@qinshengfei ~]# vim /etc/rsyncd.conf
#先定義整體變量
secrets file = /etc/rsyncd.secrets #配置同步用戶名和密碼
motd file = /etc/rsyncd.motd
read only = yes
list = yes
#uid = nobody
#gid = nobody
uid = root
gid = root
hosts allow = * #哪些電腦可以訪問rsync服務
hosts deny = 0.0.0.0/32 #哪些電腦不可以訪問rsync服務
max connections = 2
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
#再定義要rsync的目錄
[backup]
path = /data/app/files
list=yes
ignore errors
auth users = root
comment = welcome
exclude = file1/ file2/
- 配置同步的用戶名和密碼
[root@qinshengfei ~]# vim /etc/rsyncd.secrets
- 在rsyncd.secrets文件里配置一行即可
root:123456
rsync 備份測試(客戶端執行)
[root@qinshengfei ~]# rsync -arzvtopg --delete feng@192.168.1.2::bakup /opt/app/bakdir --password-file=/etc/rsyncd.secrets
rsync 定時備份(客戶端配置)
在linux環境下,可以使用crontab和rsync結合起來做備份機制,找到/etc/crontab文件,在文件里追加這樣一行
[root@qinshengfei ~]# vim /etc/crontab
40 19 * * * root rsync -aqzrtopg --progress root@192.168.1.2::backup /opt/app/bakdir --password-file=/etc/rsyncd.secrets --log-file=/var/log/rsync.log
釋義:前面兩個參數配置是:每天19:40定時同步