rsync

                      #rsync备份

虚拟机准备

修改主机名称

服务端:backup
客户端:nfs

关闭防火墙、selinux、networkmanger

systemctl stop firewalld
systemctl disable firewalld
sed -i '7c SELINUX=disabled' /etc/selinux/config
setenforce 0

修改默认yum源、安装常用软件、修改文件最大描述符

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

yum -y install net-tools vim tree lrzsz wget unzip telnet bash-completion bash-completion-extra

vi /etc/security/limits.conf
--- * soft nofile 102400
--- * hard nofile 104800

增加内网卡、修改IP地址

backup:10.0.0.41/172.168.1.41
nfs:10.0.0.31/172.168.1.31

cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth1

sed -i 's#200#41#g' /etc/sysconfig/network-scripts/ifcfg-eth{0,1}

三种传输方式

本地传输

rsync -avz+源文件/目录+目标位置
rsync -avz file.txt /opt
rsync -avz /etc /opt

远程传输

服务器拉取数据:rsync -avz+客户端地址+源文件+本地存放位置
rsync -avz 172.16.1.31:/etc/hosts /opt

服务器推送数据:rsync -avz+源文件+客户端地址+客户端存放位置
rsync -avz test 172.16.1.31:/root

守护进程模式
安装rsync

yum -y install rsync

服务器修改rsync配置文件

vim /etc/rsyncd.conf

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 # 定义接收备份数据目录

backup服务端操作

1.创建虚拟用户rsync
useradd -M -s /sbin/nologin rsync
2.创建密码文件并修改权限为600
cat /etc/rsync.passwd
rsync_backup:123456
chmod 600 /etc/rsync.passwd
3.创建目录并修改属主属组
mkdir /backup
chown -R rsync.rsync /backup/
4.启动rsync服务
systemctl start rsyncd
systemctl enable rsyncd

nfs客户端操作

配置密码文件并修改权限为600


image.png

5.操作


image.png
ps:密码也可以直接使用内置变量

[root@nfs ~]# export RSYNC_PASSWORD=123456
[root@nfs ~]# rsync -avz /etc/passwd rsync_backup@172.16.1.41::backup

无差异数据同步

1.以本地数据为准进行同步
服务端数据以本地数据为准同步
rsync -avz --delete test/ rsync_backup@172.16.1.41::backup
2.以服务端数据为准进行同步
本地数据以服务端数据为准同步
rsync -avz --delete rsync_backup@172.16.1.41::backup test/

limit限速,以M为单位

rsync -avzP --bwlimit=1 1.txt rsync_backup@172.16.1.41::backup

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

相关阅读更多精彩内容

友情链接更多精彩内容