阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux使用rsync客户端与服务端同步目录进行备份

114次阅读
没有评论

共计 1957 个字符,预计需要花费 5 分钟才能阅读完成。

一、服务端设置

1. 修改 server 端配置

# vi /etc/rsyncd.conf

修改:

uid = nobody                          # 该选项指定当该模块传输文件时守护进程应该具有的 uid. 默认值为”nobody”.
gid = nobody                          # 该选项指定当该模块传输文件时守护进程应该具有的 gid. 默认值为”nobody”.
max connections = 4                    # 最大连接数为 4
use chroot = no                        # 不使用 chroot
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
hosts allow = 28.16.67.10            # 哪些客户端 IP 可以访问 rsync 服务
#hosts deny = 192.168.100.0/24        # 哪些 IP 不可以访问 rsync 服务  0/24 代表 192.168.100 该 IP 段

添加一个自定义的同步模块配置:

[mysqlbackup]                          # rsync 同步模块的设定名称
path = /mydata/mysql/data            # 需要同步的数据存放路径
comment = mysql backup folder          # 注释
auth users = root                      # 指定用户
ignore errors                          # 忽略错误
read only = yes                        # 只读
list = no                              # 不能列表
auth users = root                      # 连接 rsync 服务的帐号
secrets file = /etc/rsyncd.pwd        # 指定存放帐号密码的位置

2. 服务端生成密码文件

# echo root:123456 >> /etc/rsyncd.pwd

配置文件权限,仅允许 root 使用:

# chmod 600 /etc/rsyncd.pwd

3. 启动 rsync 守护进程方式启动

# rsync –-daemon

4. 添加到自启动文件

# echo “rsync –daemon” >> /etc/rc.d/rc.local

5. 检查 rsync 默认使用的是 873 端口, 除非特殊情况, 一般不要去修改

# netstat -na | grep 873

显示如下:

tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN
tcp 0 0 :::873 :::* LISTEN

二、客户端设置:

1. 生成密码文件 rsync 服务端 root 帐号密码 (注: 只要密码)

# echo 123456 >> /etc/rsyncd.pwd
# chmod 600 /etc/rsyncd.pwd

2. 指定客户端目录与服务端指定的 rsync 模块配置的目录同步,并删除客户端存在而服务端不存在的目录或文件

# rsync -vzrtopg –progress –delete –password-file=/etc/rsyncd.pwd root@24.12.36.55::mysqlbackup /data/mysql

# -v, –verbose 详细模式输出
# -z, –compress 对备份的文件在传输时进行压缩处理
# -r, –recursive 对子目录以递归模式处理
# -t, –times 保持文件时间信息
# -o, –owner 保持文件属主信息
# -p, –perms 保持文件权限
# -g, –group 保持文件属组信息
# –-progress 显示传输进度
# –-delete 删除本地备份目录中服务器模块指定目录中没有的文件
# –-password-file 从指定文件中得到密码

3. 制定计划任务

# crontab -e

加入:

0 0 * * * rsync -vzrtopg –delete –password-file=/etc/rsyncd.pwd root@24.12.36.55::mysqlbackup /data/backup/mysql > /dev/null 2>&1

Rsync 的详细介绍 :请点这里
Rsync 的下载地址 :请点这里

推荐阅读:

利用 inotifywait 监控主机文件和目录 http://www.linuxidc.com/Linux/2013-03/81075.htm

利用 inotify+rsync 实现 Linux 文件批量更新 http://www.linuxidc.com/Linux/2012-01/52132.htm

inotify-tools+rsync 实时同步文件安装和配置 http://www.linuxidc.com/Linux/2012-06/63624.htm

rsync 同步完整配置 http://www.linuxidc.com/Linux/2013-06/85781.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-20发表,共计1957字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中