公司有NAS存储,作为各系统重要数据(如数据库文件)及各个应用数据的集中存储备份的地方(异地备份)。实际场景,公司内网部署一台Linux作为同步任务,用rsync同步。设置同步目录,将NAS存储目录挂载到目录,并设置定时任务,将各应用数据定期同步到NAS存储目录。
-
先挂载NAS目录
/bin/mount -o username=admin,password=password //192.168.1.1/nas中目录 /data/pos_nas/
Linux机器查看,df -h显示已挂载好的目录。
-
Rsync操作配置
Windows作为Rsync服务端,Linux为客户端。
rsync两种登录认证协议:ssh认证协议 、 rsync认证协议,如:
rsync认证协议:rsync -avz --progress --password-file=/etc/rsync.passwd --port=873 rsync@10.10.10.10::db_backup /data/backup/
ssh认证协议:rsync -avz -e ssh -p 7022 /data/backup/ rsync@10.10.10.10:/backup/
1). 准备rsync的Windows版本,--cwRsync4.1.0
服务端版本:cwRsyncServer_4.1.0_Installer.exe
客户端版本:cwRsync_4.1.0_Installer.exe
Windows机器上安装cwRsyncServer_4.1.0_Installer.exe。注意安装过程中设置账号,账号用于启动crsync server服务,需分配给账号对要同步文件的权限。此设置账号为:rsync
2). 配置rsyncd.conf文件
cwRsyncServer安装默认目录为: C:\Program Files (x86)\ICWuse chroot = false strict modes = false hosts allow = * log file = rsyncd_log.log uid = 0 gid = 0 [nc-backup] path = /cygdrive/d/backup/ comment = nc-backup transfer logging = yes read only = false write only = no list = no auth user = rsync secrets file = /cygdrive/d/rsyncd.password
安装后,RsyncServer服务默认为手动启动,修改为RsyncServer服务默认为自动启动模式。
注意,如果启用防火墙,需将rsync 873端口开放。
3).Linux server上设置同步命令
从Linux机器上拉取windows端需同步的目录到Linux端。
先手动测试:/usr/bin/rsync -avz --progress --password-file=/etc/rsync.passwd1 --port=873 rsync@10.10.1.10::nc-backup /data/pos_nas/U8_backup
在挂载的NAS目录查看到文件同步过来,说明同步成功。接下来设置定时任务,进行自动同步。
crontab -l
30 0 * /bin/bash /opt/scripts/nc.sh