linux-rsyncd服务配置
一. 简述:
rsync
是一个快速、多功能且非常灵活的命令行工具,用于在不同位置之间复制和同步文件。当使用守护进程模式时,rsync
服务器会在指定端口监听来自客户端的连接请求,并根据配置提供文件同步服务。rsyncd
是指 rsync
的守护进程模式。
二.部署:
大多数 Linux 发行版默认已经包含了 rsync。如果没有,可以通过包管理器安装:
sudo yum install rsync
三. 配置案例:
通常,rsyncd
的主配置文件位于 /etc/rsyncd.conf
或 /etc/rsync/rsyncd.conf
。您可以创建或编辑此文件来定义模块和服务设置。
# cat /etc/rsyncd.conf
strict modes = yes
uid = root #指定运行 rsyncd 的用户和组,默认为 nobody。
gid = root
read only = no #是否只读
use chroot = no # 是否将 rsyncd 限制在一个特定的目录中以提高安全性。
transfer logging = true
log format = %h %o %f %l %b
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
hosts allow = 10.0.0.135 #允许的主机
secrets file = /etc/rsync.pass
slp refresh = 300
[tiger_home] #模块名称
path = /home #共享目录路径
comment = tiger_home #模块描述
auth users = tiger #授权用户
secrets file = /etc/rsync.pass #认证文件
[tiger_usermail]
path = /var/spool/mail
comment = tiger_user
auth_user = tiger
secrets file = /etc/rsync.pass
# cat /etc/rsync.pass
tiger:xxx
确保设置适当的权限,以防止非授权访问:
chmod 600 /etc/rsync.pass
启动服务:
sudo systemctl start rsync
sudo systemctl enable rsync
手动启动:
rsync --daemon --config=/etc/rsyncd.conf
同步指令:
# cat /etc/rsync.pass
xxx
# cat bin/tiger_backup.sh
#!/bin/bash
rsync -av --progress --password-file=/etc/rsync.pass tiger@10.0.0.13::tiger_tools /root/bin/
rsync -av --progress --delete --password-file=/etc/rsync.pass tiger@10.0.0.13::tiger_home /home/
rsync -av --progress --delete --password-file=/etc/rsync.pass tiger@10.0.0.13::tiger_usermail /var/spool/mail