rsync遠端同步工具
阿新 • • 發佈:2018-12-03
功能:迴圈複製檔案到所有節點的相同目錄下。
rsync遠端同步工具,主要用於備份和映象。具有速度快、避免複製相同內容和支援符號連結的優點。
先配置ssh無密碼登陸,ssh無密碼登入文件地址:https://blog.csdn.net/zhangchao_cn/article/details/84753730
(1)安裝和檢視rsync使用說明
#安裝
yum install rsync -y
#檢視使用說明
man rsync | more
(2)基本語法
rsync -rvl $pdir/$fname [email protected]$host:$pdir
命令 命令引數 要拷貝的檔案路徑/名稱 目的使用者@主機:目的路徑
選項
-r 遞迴
-v 顯示覆制過程
-l 拷貝符號連線
(3)案例實操
把本機/opt/tmp目錄同步到hadoop103伺服器的root使用者下的/opt/tmp目錄
rsync -rvl /opt/tmp/* [email protected]:/op t/tmp
(4)編寫叢集分發指令碼
a)、在/usr/local/bin目錄下建立xsync檔案,檔案內容如下
#!/bin/bash
#1 獲取輸入引數個數,如果沒有引數,直接退出
pcount=$#
if((pcount==0)); then
echo no args;
exit;
fi
#2 獲取檔名稱
p1=$1
fname=`basename $p1`
echo fname=$fname
#3 獲取上級目錄到絕對路徑
pdir=`cd -P $(dirname $p1); pwd`
echo pdir=$pdir
#4 獲取當前使用者名稱稱
user=`whoami`
#5 迴圈
for((host=103; host<105; host++)); do
#echo $pdir/$fname [email protected]$host:$pdir
echo --------------- hadoop$host ----------------
rsync -rvl $pdir/$fname [email protected]$host:$pdir
done
b)、修改指令碼 xsync 具有執行許可權
chmod a+x xsync
c)、呼叫指令碼形式:xsync 檔名稱