配置指定用户登入服务端 使用密码
增加属主
这里也是直接配这个
推测:rsyncd.conf文件中的auth users是临时指定用户 这个用户不一定要有 不一定被useradd过
计划测试
是不是没加空格 users = boss1,boss2
怎么没改过
ok
参考
服务端指定用户 密码 接入:
服务端设置的用户 可以是虚拟性的,元宝称:不需要真实useradd;且rsyncd.secrets文件只有一个属主
在Linux系统中,标准权限模型中每个文件只能有一个属主(owner),无法通过传统命令直接为文件设置多个属主。但可以通过 ACL(访问控制列表) 实现类似多属主的效果,赋予其他用户与属主相同的权限。
服务端:1.配置/etc/rsyncd.conf文件 vim
auth users=user1,user2
secrets=/etc/rsyncd.secrets
2.vim /etc/rsyncd.secrets
user1=123
user2=123
推测也可以不用密码 上一次也尝试过不设置密码
3.systemctl restart rsyncd
客户端
rsync -av boss1@192.168.235.20::app /
再回顾
本地yum源配置
1.备份:tar -zcf repo.tar.gz *.repo
rm -rf .repo
2.挂载:
<1>光盘那打勾
2>删除/mnt 下文件 rm -rf /mnt/
3>挂载 mount -o ro /dev/sr0 /mnt
-o 以啥形式挂载 ro以只读形式挂载
4>lsblk 检查挂载情况
5>设置定时挂载
5.1>chmod +x /etc/rc.local 设置开机自启文件 执行权限
5.2>将挂载步骤写入 rc.local
echo ‘mount -o rc /dev/sr0 /mnt’>>/etc/rc.local
3.参考
配置本地yum源
vim local.yum
[local]
name=local yum
baseurl=file:///mnt
gpgcheck=0
enabled=1
3,1 yum clean all
yum makecache
3.2 yum repolist
欧克
- 配置SSH
1.关闭防火墙 SELINUX
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
vim /etc/selinux/config
SELINUX=disable
2.配置YUM源
3.检查并下载
rpm -qa|ssh
rpm -qa|grep openssh
4.启动
systemctl restart sshd
4.1查看
ps -ef|grep sshd
- ssh免密登录
1.生成公钥私钥
ssh-keygen
2.将公钥添加到对方用户私钥中
ssh-copy-id root@对面id
3.测试
ssh root@对面id
还有一种集群的计划后面再看
简单理解下:1.JumpServer:生成公私钥
ssh-keygen
2.JumpServer:把公钥(推测)id_rsa.pub 传到对面(服务器端)使用scp
我方JumpServer:scp ~/.ssh/id_rsa.pub root@对面id /目录
3.RealServer:把公钥追加到私钥中(推测)
cd /目录
cat id_rsa.pub >>~/.ssh/authorized_keys
参考原理
- rsync环境配置配置
1.关闭防火墙firewalld Selinux
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
vim /etc/selinux/config
SELINUX=disable
2.设置主机名
2.设置主机名
systemctl set-hostname code
systemctl set-hostname backup
3.配置YUM源
4.配置网络(因为是定时备份环境配置,所以需要保证code 能ssh到rsync z这句话是推测 因为rsync基于ssh)
5.关闭NetworkManager
systemctl stop NetWorkManager
systemctl disable NetworkManager
6.设置时钟
ntpdate cn.ntp.org.cn
- rsync定时备份代码
本机code:
1.创建备份文件夹/app/java
mkdir -p /app/java
2.设置rsyncd系统服务
cd /etc/rsyncd.conf
vim /etc/rsyncd.conf
[app]
参考
path=/app/java
log file=/var/log/rsync.log
3.重启服务
systemctl restart rsyncd
backup:
1.创建备份文件夹
mkdir /backup/app
2.测试rsyncd系统服务
rsync -a root@codeip::
正确应输出app
3.具体命令
rsync -av root@codeip::app /backup/app
此时应该有文件传过来
4.配置定时脚本
4.1定时
crontab -e
分 时 日 月 周 命令脚本rsync.sh
4.2设置命令脚本
vim rsync.sh
!/bin/bash
rsync -av root@codeip::app /backup/app && /dev/null
5.配置脚本权限为x可执行
chmod +x rsync.sh
- 远程传输中rsync -av --delete 以为同步两文件夹 对照
- rsync -av --delete /本机文件夹 对面@对面id:/对面文件夹、
- rsync 实现特定用户 密码登录
服务端:
1.配置rsync.conf
参考
服务端:1.vim /etc/rsyncd.conf
auth users=users1,users2
secrets=/etc/rsyncd.secrets
2.配置密码文件
vim /etc/rsyncd.secrets
users1:123
users2:
3.设置密码文件权限为600:重要 本文前面由于没配密码文件权限,导致连接报错
chmod 600 rsyncd.secrets
4.重启系统服务
systemctl restart rsyncd
客户端:测试
rsync -av users@服务端ip::app
22:34了
计划再看一点
inotify+rsync 实施代码同步
1.安装inotify工具
1.12三步走
./configure
make
make install
1.11解压
1.12三步走 源码包
计划明天再弄
问题:为什么在配置rsync定时备份时要关闭network manager
今日源码
a
MX:a