做打井宣传广告找什么网站,最近韩国电影片在线观看免费高清中文,珠海做网站最好的公司有哪些,手机app怎么制作流程图37、Linux中Xsync数据同步备份工具 一、介绍二、配置集群hostname三、修改xsync文件四、赋权五、安装Rsync六、验证一七、配置免密登录1、生成rsa密钥2、copy机器自身公钥到目标机器3、.ssh/文件目录赋权 八、验证二 ⚠️
注#xff1a;本文全程在普通用户下操作#xff0c;… 37、Linux中Xsync数据同步备份工具 一、介绍二、配置集群hostname三、修改xsync文件四、赋权五、安装Rsync六、验证一七、配置免密登录1、生成rsa密钥2、copy机器自身公钥到目标机器3、.ssh/文件目录赋权 八、验证二 ⚠️
注本文全程在普通用户下操作非root账户。个别命令前需要添加sudo 一、介绍
Xsync 基于 Rsync 工具编写的 Linux shell 脚本。用于简化在 集群环境中同步文件 的操作。该脚本封装了 Rsync 命令行参数可以 将本地文件或目录同步到多台远程主机上 。尤其在Hadoop或其他分布式集群管理中非常有用。它能自动遍历集群中的各个节点并执行同步任务。 简而言之在集群机器配置时经常 需要将一个文件或目录copy到同样的多台集群上。 一个一个机器去复制比较麻烦。如果有一个办法通过一条命令就可以实现这个目的就简单多了。xsync就是这样一个同步脚本。 Xsync 其实是对 Rsync 脚本的二次封装脚本内容可以根据自己需要进行修改。
二、配置集群hostname
# 命令
sudo vim /etc/hosts添加如下内容ip和主机名根据实际情况修改
# ip和主机名
192.168.250.130 ulanhada130
192.168.250.131 ulanhada131
192.168.250.132 ulanhada132三、修改xsync文件
修改 /usr/local/bin/ 下的 xsync 文件如果没有就新建。
# 新建xsync文件
touch xsync在 xsync 文件中添加如下内容
#!/bin/bash
#1 获取输入参数个数如果没有参数直接退出
pcount$#
if((pcount0)); then
echo no args;
exit;
fi#2 获取文件名称
p1$1
fnamebasename $p1
echo fname$fname#3 获取上级目录到绝对路径
pdircd -P $(dirname $p1); pwd
echo pdir$pdir#4 获取当前用户名称
userwhoami#5 循环
for((host130;host133;host)); doecho ------------------- ulanhada$host --------------rsync -rvl $pdir/$fname $userulanhada$host:$pdir
done其中的 ulanhada 是我起的名字与 hosts 中配置的 ulanhada 一样可自定义但两者必须匹配大家根据实际情况修改~
四、赋权
chmod 777 xsync五、安装Rsync
需要给每台远程目标服务器下载 rsync包括本机。如果都已安装则跳过该步骤~
sudo yum -y install rsync六、验证一
使用 xsync 需要分发的文件名文件夹也可以 进行分发
# 语法xsync [文件名/文件夹名]
xsync a.txt由上图可见需要 输入各个服务器的密码 。 如果打算省略输入密码的步骤请看 步骤七 。 如果需要输入密码则跳过步骤七。
七、配置免密登录
1、生成rsa密钥
使用命令 ssh-keygen 生成 rsa密钥。配置信息直接回车即可 生成的密钥默认在当前用户主目录的 .ssh 目录下。 密钥文件有两个 id_rsa 存放着私钥 id_rsa.pub 存放着公钥
ssh-keygen2、copy机器自身公钥到目标机器
在各个远程目标机器的用户主目录创建 .ssh 目录
mkdir -p ~/.ssh在本地执行远程拷贝命令
cd /home/ulanhada/.ssh
# 语法scp [本地文件的绝对路径] [服务器用户名][主机名/主机IP]:[远程文件的绝对路径]
scp id_rsa.pub ulanhadaulanhada130:/home/ulanhada/.ssh/authorized_keys
scp id_rsa.pub ulanhadaulanhada131:/home/ulanhada/.ssh/authorized_keys
scp id_rsa.pub ulanhadaulanhada132:/home/ulanhada/.ssh/authorized_keys拓展 递归复制整个目录
# 语法scp -r [本地文件夹的绝对路径] [服务器用户名][主机名/主机IP]:[远程文件夹的绝对路径]3、.ssh/文件目录赋权
在各个目标服务器分别给 .ssh 文件夹赋权限
chmod 700 .ssh/八、验证二
xsync d.txt上图所示发现不再需要输入密码。则无密码传输配置成功~ 到这里 Linux中Xsync数据同步备份工具 就结束了 欢迎小伙伴们学习和指正 祝大家学习和工作一切顺利