运维开发网

rysnc用法--服务搭建

运维开发网 https://www.qedev.com 2020-10-29 12:34 出处:51CTO 作者:中国爱我们
服务端配置1.服务端安装了rsync[[email protected]~]#yum-yinstallrsync2,修改配置文件[[email protected]]#cat/etc/rsyncd.conf#/etc/rsyncd:configurationfileforrsyncdaemonmode#Seersyncd.confmanpageformoreoptions.#configurationexample:#全

常用选项说明:

-v:显示rsync过程中详细信息。可以使用"-vvvv"获取更详细信息。

-P:显示文件传输的进度信息。(实际上"-P"="--partial --progress",其中的"--progress"才是显示进度信息的)。

-a --archive :归档模式,表示递归传输并保持文件属性。等同于"-rtopgDl"。

-r --recursive:递归到目录中去。

-t --times:保持mtime属性。强烈建议任何时候都加上"-t",否则目标文件mtime会设置为系统时间,导致下次更新

:检查出mtime不同从而导致增量传输无效。

-o --owner:保持owner属性(属主)。

-g --group:保持group属性(属组)。

-p --perms:保持perms属性(权限,不包括特殊权限)。

-D :是"--device --specials"选项的组合,即也拷贝设备文件和特殊文件。

-l --links:如果文件是软链接文件,则拷贝软链接本身而非软链接所指向的对象。

-z :传输时进行压缩提高效率。

--max-size :限制rsync传输的最大文件大小。可以使用单位后缀,还可以是一个小数值(例如:"--max-size=1.5m")

--min-size :限制rsync传输的最小文件大小。这可以用于禁止传输小文件或那些垃圾文件。

--exclude :指定排除规则来排除不需要传输的文件。

--delete :以SRC为主,对DEST进行同步。多则删之,少则补之。

-b --backup :对目标上已存在的文件做一个备份,备份的文件名后默认使用"~"做后缀。

--backup-dir:指定备份文件的保存路径。不指定时默认和待备份文件保存在同一目录下。

-e :指定所要使用的远程shell程序,默认为ssh。

--password-file:daemon模式时的密码文件,可以从中读取密码实现非交互式。注意,这不是远程shell认证的密码,而是rsync模块认证的密码。

服务端配置

1.服务端安装rsync

[[email protected] ~]# yum -y install rsync

2,修改配置文件(若无配置文件需要手动创建)

[[email protected] backup]# cat /etc/rsyncd.conf
# /etc/rsyncd: configuration file for rsync daemon mode

# See rsyncd.conf man page for more options.

# configuration example:
# 全局模块
uid = rsync                      #客户端同步时使用的服务端用户身份
gid = rsync          #客户端同步时使用的服务端组身份
port = 873           #监听的端口
fake super = yes         #无需让rsync以root身份运行,允许存储文件的完整属性(3.1版本之后)
use chroot = no          #关闭假根功能
max connections = 200        #最大连接数
timeout = 600            #超市时间10分钟
ignore errors = true         #忽略错误信息
read only = false        #对备份数据可读写
list = false             #不允许查看模块信息
dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2  # 指定哪些文件不用进行压缩传输
auth users = rsync_backup    #定义虚拟用户,用于连接认证用户
secrets file = /etc/rsync.passwd #定义rsync服务用户连接的认证密码文件路径
#局部模块
[backup]
  path = /backup
  comment = 说明

3,创建rsync用户,创建模块目录,创建密码文件,并赋予600权限

[[email protected] ~]#useradd -r  -s /sbin/nologin rsync
[[email protected] ~]#mkdir -pv /backup
[[email protected] ~]#[[email protected] ~]# echo "rsync_backup:123456" >/etc/rsync.passwd 
[[email protected] ~]#chmod 600 /etc/rsync.passwd

4,启动服务,并设置开机自启动

[[email protected] ~]systemctl start rsyncd
[[email protected] ~]systemctl enable rsyncd

客户端验证

  1. 安装rsync(rsync客户端和服务端安装包一样)

    [[email protected] ~]# yum -y install rsync

  2. 客户端上传

    方式一:命令行输入密码

    [[email protected] ~]# rsync -avzP /etc [email protected]::backup

    Password:

    方式二:免密码登录,客户端创建密码文件,权限设置600

    [[email protected] ~]# echo 123456 > /etc/rsync.passwd
    [[email protected] ~]# chmod 600 /etc/rsync.passwd
    [[email protected] ~]# rsync -avzP  /etc [email protected]::backup --password-file=/etc/rsync.passwd

    方式三:免密码登录,客户端定义环境变量RSYNC_PASSWORD,适用于脚本

    [[email protected] ~]# export RSYNC_PASSWORD=123456
    [[email protected] ~]# rsync -avzP  /etc [email protected]::backup

    3.客户端下载

    [email protected] ~]# rsync -avzP [email protected]::backup /root

    注意:客户端下载需要服务端的rsync账号对模块目录文件拥有读权限

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号