Rsync服务器配置


Linux #rsync2012-12-07 14:54
1 安装xinetd
  yum -y install xinetd

2 将rsync启动控制交给xinetd

  vi /etc/xinetd.d/rsync
  将disable = yes  更改为  disable = no

3 创建rsync配置文件

  vi /etc/rsyncd.conf 添加
  uid = root
  gid = nobody
  use chroot = yes
  max connections = 4
  pid file = /var/run/rsyncd.pid
  lock file = /var/run/rsyncd.lock
  log file = /var/log/rsyncd.log
  [upload]
  path = /data/upload
  comment = used for user upload data
  read only = no
  list = no
  hosts allow = 192.168.1.252
  [download]
  path = /data/download
  comment = used for user download file
  read only = yes
  list = no
  hosts allow = 192.168.1.252
  [password]
  path=/data/password
  comment = need password to access
  read only = yes
  list = no
  auth users = wang
  secrets file =/data/rsyncd.pass
  4创建密码文件
  touch /data/rsyncd.pass
  echo "wang:test">/data/rsyncd.pass
  chmod 400 /data/rsyncd.pass
  5重新启动xinetd 让rsync配置生效
  service xinetd restart
  6 在192.168.1.252测试
  在192.168.1.252 上传同步文件夹命令
  rsync -a --progress --delete  /data/upload     192.168.1.100::upload
  在192.168.1.252 下载同步文件夹命令
  rsync -a --progress --delete 192.168.1.100::download download/
  在192.168.1.252上同步需要密码验证的文件夹命令
  touch pass
  echo "test">pass
  chmod 400 pass
  rsync -a --progress wang@192.168.1.100::password /data/passwd --password-file=pass
  7 说明:
  1 rsync常用参数说明示例:
  [test]                 # 这里是认证的模块名,在client端需要指定
  max connections = 4    #客户端最大连接数,默认0(没限制)
  uid = root             #指定该模块传输文件时守护进程应该具有的uid
  gid = nobody           #指定该模块传输文件时守护进程应该具有的gid
  path = /data/upload   # 需要发布的数据文件目录
  read only = no         #no客户端可上传文件,yes只读
  write only = no        #no客户端可下载文件,yes不能下载
  hosts allow = 192.168.0.101     #*允许任何主机连接
  #hosts deny = 192.168.1.100    #禁止指定的主机连接
  auth users = root     #认证的用户名,如果没有这行,则表明是匿名
  secrets file = /data/rsyncd.pass   # 指定认证口令文件位置
  #exclude = *                                 #排除所有文件
  #include = test.txt                          #包含test.txt文件
  2上述rsync配置实现了
  upload模块允许192.168.1.252 上传
  download模块允许192.168.1.252 下载
  password模块允许用户wang通过密码验证,如果想让多个账号通过密码验证,多个账号之间用逗号隔开。服务器端secret file的格式为 账号:密码 一行一个账号  客户端的secret file 中只需要填入密码即可。
  3 参数说明:
  -a 参数设置复制文件及目录,并保持访问权限、修改时间等文件的元数据(metadata);
  --delete  参数让目标同源保持完全一致,在源目录被删除的文件,在目标目录也会被删除。如果不包含“--delete”选项,那么即使在源目录已经删除的文件,也会仍然保存在
  目标目录中。
  --progress  参数将显示复制详细的进度。
  -a, --archive                   归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
  -r, --recursive                 对子目录以递归模式处理
  -l, --links                         保留软链结
  -p, --perms                    保持文件权限
  -o, --owner                    保持文件属主信息
  -g, --group                     保持文件属组信息
  -D, --devices                 保持设备文件信息
  -t, --times                      保持文件时间信息
  -e, --rsh=COMMAND              指定使用rsh、ssh方式进行数据同步
  --delete                         删除那些DST中SRC没有的文件
  -z, --compress                对备份的文件在传输时进行压缩处理
  --password-file=FILE          从FILE中得到密码
  -zrtopg                      有些朋友喜欢用这些参数同步
  4 如果想把rsync做成独立模式可以用下面的命令启动rsync,而不再用xinetd 也不必执行上面第1、2 、4步
  /usr/bin/rsync --daemon  --config=/etc/rsyncd.conf

相关文章

粤ICP备11097351号-1