2019-05-20日rsync服务

综合结构rysnc

rsync参数

4.Rsync 命令对应选项
‐a #归档模式传输, 等于‐tropgDl
‐v #详细模式输出, 打印速率, 文件数量等
‐z #传输时进行压缩以提高效率
‐r #递归传输目录及子目录,即目录下得所有目录都同样传输。
‐t #保持文件时间信息
老男孩教育-Linux学院
‐o #保持文件属主信息
‐p #保持文件权限
‐g #保持文件属组信息
‐l #保留软连接
‐P #显示同步的过程及传输时的进度等信息
‐D #保持设备文件信息
‐L #保留软连接指向的目标文件
‐e #使用的信道协议,指定替代rsh 的shell 程序
‐‐exclude=PATTERN #指定排除不需要传输的文件模式
‐‐exclude‐from=file #文件名所在的目录文件
‐‐bwlimit=100 #限速传输
‐‐partial #断点续传
‐‐delete #让目标目录和源目录数据保持一致

第一个里程碑本地连接

本地拷贝数据命令

Local: rsync [OPTION...] SRC... [DEST]

本地拷贝数据示例

[root@backup ~]# rsync ‐avz /etc/passwd /tmp/

rsync #备份命令(cp)
[options] #选项
SRC... #本地源文件
[DEST] #本地目标文件

第二个里程碑远程连接

pull 拉取数据命令
Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]

pull 拉取数据示例

[root@backup ~]# rsync ‐avz root@172.16.1.41:/etc/hostname ./ #拉取远程文件
[root@backup ~]# rsync ‐avz root@172.16.1.41:/root/ /backup/ #拉取远程目录下的

所有文件

[root@backup ~]# rsync ‐avz root@172.16.1.41:/root /backup/ #拉取远程目录以及目录下的所有文件

Pull #拉取, 下载
rsync #备份命令
[options] #选项
[USER@] #目标主机的系统用户
HOST #目主机IP 地址或域名
SRC... #目标主机源文件
[DEST] #下载至本地哪个位置

push 推送数据命令

Push: rsync [OPTION...] SRC... [USER@]HOST:DEST
push 推送数据示例

rsync ‐avz /backup/2018‐10‐01 root@172.16.1.41:/tmp/
Push #推送, 上传
rsync #备份命令
[options] #选项
SRC... #本地源文件
[USER@] #目标主机的系统用户
HOST #目主机IP 地址或域名
[DEST] #目标对应位置
Rsync 借助SSH 协议同步数据存在的缺陷
1.使用系统用户(不安全)
2.使用普通用户(会导致权限不足情况)

第三个里程碑守护进程

1.创建rsync虚拟用户

useradd -s /sbin/nologin -M rsync

2.检查rsunc用户

[root@backup ~]# cat /etc/passwd |grep rsync
rsync:x:1001:1001::/home/rsync:/sbin/nologin

3.修改rsync配置文件

[root@backup ~]# vim /etc/rsyncd.conf 

#Rsync server
##created by oldboy 15:01 2009-6-5
##rsyncd.conf start##
fake super = yes
uid = rsync
gid = rsync
use chroot = no
max connections = 2000
timeout = 600
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = false
list = false
#hosts allow = 10.0.0.0/24
#hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
#####################################
[data]
comment = www by old0boy 14:18 2012-1-13
path = /data
#####################################
[backup]
comment = www by old0boy 14:18 2012-1-13
path = /backup
"/etc/rsyncd.conf" 27L, 621C                 

3.1配置文件详解

uid = rsync # 运行进程的用户
gid = rsync # 运行进程的用户组
port = 873 # 监听端口
fake super = yes # 无需让rsync 以root 身份运行,允许接收文件的完整属性
use chroot = no # 禁锢推送的数据至某个目录, 不允许跳出该目录
max connections = 200 # 最大连接数
timeout = 600 # 超时时间
ignore errors # 忽略错误信息
read only = false # 对备份数据可读写
list = false # 不允许查看模块信息
auth users = rsync_backup # 定义虚拟用户,作为连接认证用户
secrets file = /etc/rsync.passwd # 定义rsync 服务用户连接认证密码文件路径
[backup] # 定义模块信息
comment = commit # 模块注释信息
path = /backup # 定义接收备份数据目录

4.创建rsync密码文件,并授权600

echo  rsync_backup:123456 >/etc/rsync.password
chmod 600 /etc/rsync.password

5.启动rsync服务

systemctl start rsyncd

5.1检查服务是否启动

[root@backup ~]# ps -ef |grep rsync
root        936      1  0 May21 ?        00:00:00 /usr/bin/rsync --daemon --no-detach
root       5285   5096  0 04:22 pts/4    00:00:00 grep --color=auto rsync

5.2服务开机自启

systemctl enable rsyncd

检查

[root@backup ~]# systemctl is-enabled rsyncd
enabled

5.3服务是否正在运行

[root@backup ~]# systemctl is-active rsyncd
active

6.查看服务端口是否处于监听状态

[root@backup ~]# ss -lntup |grep rsync
tcp    LISTEN     0      5         *:873                   *:*                   users:(("rsync",pid=936,fd=3))
tcp    LISTEN     0      5        :::873                  :::*                   users:(("rsync",pid=936,fd=5))

7.创建共享目录,并修改所属用户

[root@backup ~]# mkdir -p /data
[root@backup ~]# chown rsync.rsync /data

检查

[root@backup ~]# ll -d /data
drwxr-xr-x 2 rsync rsync 147 May 21 22:01 /data
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容