首页
关于
推荐
CSDN
Search
1
文件上传下载-io-流的理解-笔记
129 阅读
2
vue循环指令el-table-column展示图片src路径拼接
123 阅读
3
正则表达式,将字符串分割两部分
114 阅读
4
MySQL数据库练习【一】
110 阅读
5
MySQL数据库练习【三】
96 阅读
默认分类
Mysql
Java基础
一天一练
Mongodb
Nginx
Docker
FastDFS
面试题
云计算基础
linux基础
shell脚本
实验
工具
基础命令
redis
zookeeper
部署
案例
登录
Search
标签搜索
vue
Mysql
IO
面试题
良辰美景好时光
累计撰写
68
篇文章
累计收到
0
条评论
首页
栏目
默认分类
Mysql
Java基础
一天一练
Mongodb
Nginx
Docker
FastDFS
面试题
云计算基础
linux基础
shell脚本
实验
工具
基础命令
redis
zookeeper
部署
案例
页面
关于
推荐
CSDN
搜索到
16
篇与
的结果
2023-09-20
Rsync和scp【备份服务】
@TOC1.Rsync企业应用场景应用场景(业务场景)应用建议rsync作为命令使用临时拉取,推送数据.未来这个需求可以通过scp命令实现.==定时备份:rsync服务+定时任务==定时备份,定期备份案例.(定时任务进行备份+通过rsync传输备份)实时同步:rsync服务+sersync/lsyncd实现实时同步解决存储服务单点问题rsync服务与异地容灾找一个异地的服务器存放备份把/etc/目录传输到另一台机器的/tmp/下面 scp -r /etc/sysconfig/ root@10.0.0.31:/tmp/ rsync -avz /etc/sysconfig/ root@10.0.0.31:/mnt/2.Rsync使用模式模式应用场景本地模式(了解)不推荐使用远程模式传输数据(临时使用可以使用scp替代)rsync守护进程模式(daemon)传输数据(不需要密码),用于定时备份,定时同步.3.rsync远程模式:star::star::star::star::star:格式 rsync -a源文件目标推送:rsync/etc/hostnameroot@10.0.0.31:/tmp拉取:rsyncroot@10.0.0.31:/etc/hosts/opt/#推送/etc/hostname 到10.0.0.31的/tmp/目录 rsync -avz /etc/hostname root@10.0.0.31:/tmp4.守护进程模式:star::star::star::star::star:服务使用流程:one:部署:two:配置:three:启动,使用:four:优化:five:故障:six:自动化(监控,日志,安全,自动化部署,容器)4.1.检查是否安装#关闭防火墙 systemctl disable firewalld #检查安装 更新 yum install -y rsync rpm -qa rsync rpm -qi rsync rpm -ql rsync 检查软件包内容 /etc/rsyncd.conf #配置文件(服务端配置文件,守护进程模式) /usr/bin/rsync #命令 /usr/lib/systemd/system/rsyncd.service #systemctl控制rsyncd服务的配置文件4.2.进行配置4.2.1.配置文件详解【rsyncd.conf】4.2.2.进行配置vim /etc/rsyncd.conf #created by dange ## rsyncd.conf start ## fake super=yes uid = rsync gid = rsync use chroot = no max connections = 2000 timeout = 600 pid file = /var/run/rsyncd.pif 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 dange path = /data4.2.3.后续配置【目录、用户、权限、密码文件】#1.添加虚拟用户 useradd -s /sbin/nologin -M rsync #添加虚拟用户 #2.创建密码文件 # 密码文件格式: 用户名:密码 echo 'rsync_backup:123456' >/etc/rsync.password #用户名:密码 chmod 600 /etc/rsync.password #3.共享目录与权限 mkdir /data #创建共享目录 chown -R rsync.rsync /data/4.2.4.确保文件正确并查验4.2.5.启动服务-检测状态systemctl start rsyncd systemctl enable --now rsyncd systemctl status rsyncd#检查进程 ps -ef |grep rsync #检查端口 ss -lntup |grep rsync4.2.6.访问测试rsync守护进程模式客户端命令 rsync -avz/etc/hostsrsync_backup@10.0.0.7::data rsync_backup是服务端配置文件中的认证用户 data表示模块中的名字4.2.6.1.本地测试rsync -av /etc/hostname rsync_backup@backup::data4.2.6.2.远程测试4.2.6.3.免密码传输数据到服务端4.3.rsyncd服务与客户使用流程部署流程 服务端:one:配置文件 :two:添加虚拟用户 :three:secret文件,密码文件,文件权限 :four:创建共享目录和修改权限 :five:启动或重启,开机自启动 :six:测试客户端:one:密码文件,权限 :two:客户端命令测试4.4.守护进程4.4.1.深刻理解uid,gid,,authr user,secret file1.用户执行命令:rsync -avz /tmp/etc.tar.gz rsync_backup@backup::data --password-file=/etc/rsync.client 2.服务端收到数据:判断rsync_backup用户,然后等待输入密码 3.把用户名和密码与配置文件里面对比 auth user 和secrets file 4.通过后,传输数据 5.数据到达服务器所有者被修改为uid和gid指定的(rsync) 6.数据写入data模块(/data/)目录下面.4.4.2.免密的方式连接服务端(命令行指定客户端密码文件):star::star::star::star::star:客户端密码文件只存储密码即可echo '123456' >/etc/rsync.client chmod 600 /etc/rsync.client rsync -avz /etc/hosts rsync_backup@backup::data --password-file=/etc/rsync.client4.4.3.访问控制-安全措施hosts allow 只准许指定的ip或网段访问.hosts deny 拒绝.配置只准许172.16.1.0/24 网段访问5.rsync选项rsync选项含义-a-rlptgoD<br/>-r递归复制<br/>-l复制软连接<br/>-p保持权限不变<br/>-m保持修改时间不变<br/>-o所有者不变<br/>-g用户组不变<br/>-D --devices --specials 设备与特殊文件-v显示过程-z传输数据的时候进行压缩(公网)-p显示每rsync -av . root@10.0.0.31:/tmp/ --exclude=04<br/>rsync -av . root@10.0.0.7:/mnt --exclude={04,05}个文件传输过程(进度条)断点续传 <br/>- -partial --progress--bwlimit限速,注意不要与-z一起使用.--exclude<br/>--exclude-from排除--delete目标目录与源目录保持一致的传输(高度保持2遍一致,实时同步)限速并传输 rsync -aP --bwlimit=500kb /tmp/1g 10.0.0.7:/mnt/# 传输并排除 rsync -av . root@10.0.0.31:/tmp/ --exclude=04 rsync -av . root@10.0.0.31:/tmp --exclude={04,05} # 通过文件内容进行排除 [root@backup /oldboy]# cat /tmp/paichu.txt 03 05 10 [root@backup /oldboy]# rsync -av . root@10.0.0.31:~ --exclude=/tmp/paichu.txt6.脚本文件rsyncd_bak_conf.shvim rsyncd_bak_conf.sh #!/bin/bash export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin #1.vars ip=`hostname -I | cut -d" " -f2` bak_dir=/backup/$ip date=`date +%F_%w` bak_file=conf-${date}.tar.gz rsync_user=rsync_backup rsync_server_ip=172.16.1.41 rsync_mo=data rsync_pass=/etc/rsync.client #2.目录检查 if [ ! -d ${bak_dir} ];then mkdir -p ${bak_dir} fi #3.打包压缩 tar zcf ${bak_dir}/${bak_file} /etc/ #4.传输备份到rsync服务端 echo '123456'>/etc/rsync.client chmod 600 /etc/rsync.client rsync -av /backup/ rsync_backup@${rsync_server_ip}::data --password-file=/etc/rsync.client7.任务项目项目要求::one:定时备份nfs01,web01配置文件(etc,定时任务) /backup/ip地址/conf-时间.tar.gz 也可以说2个备份软件包.:two:定时备份nfs01,web01同步到backup服务器上/backup/:three:定时备份nfs01,web01删除7天之前的备份:four:在backup服务器,每天发送邮件备份结果(find或tree):five:检查:邮箱是否收到邮件,检查备份服务器上是否收到了备份备份服务器 /backup/ 172.16.1.31/xxxx.tar.gz 172.16.1.7/xxxx.tar.gz8. 故障记录服务端防火墙服务开启[19:53:45 root@nfs01 ~]# rsync -avz /tmp/etc.tar.gz rsync_backup@backup::data --password-file=/etc/rsync.client rsync: failed to connect to backup (172.1.16.7): Connection refused (111) rsync error: error in socket IO (code 10) at clientserver.c(125) [sender=3.1.2][17:36:53 root@nfs01 ~]# rsync -avz /etc/hosts rsync_backup::data --passwd-file=/etc/rsync.client rsync: --passwd-file=/etc/rsync.client: unknown option rsync error: syntax or usage error (code 1) at main.c(1568) [client=3.1.2][17:39:01 root@nfs01 ~]# rsync -avz /etc/hosts rsync_backup::data --password-file=/etc/rsync.client rsync: getaddrinfo: rsync_backup 873: Name or service not known rsync error: error in socket IO (code 10) at clientserver.c(125) [sender=3.1.2]endl
2023年09月20日
3 阅读
0 评论
0 点赞
1
...
3
4