集群分發指令碼 xsync

2022-06-21 03:30:10 字數 1296 閱讀 7752

1. scp(secure copy)安全拷貝

(1)scp定義:

scp可以實現伺服器與伺服器之間的資料拷貝。(from server1 to server2)

(2)基本語法

scp -r $pdir/$fname $user@hadoop$host:$pdir/$fname

命令 遞迴 要拷貝的檔案路徑/名稱 目的使用者@主機:目的路徑/名稱

2. rsync 遠端同步工具

rsync主要用於備份和映象。具有速度快、避免複製相同內容和支援符號鏈結的優點。

rsync和scp區別:用rsync做檔案的複製要比scp的速度快,rsync只對差異檔案做更新。scp是把所有檔案都複製過去。

(1)基本語法

rsync -rvl $pdir/$fname $user@hadoop$host:$pdir/$fname

命令 選項引數 要拷貝的檔案路徑/名稱 目的使用者@主機:目的路徑/名稱

選項引數說明

選項 功能

-r 遞迴

-v 顯示複製過程

-l 拷貝符號連線

(a)在/home/bigdata目錄下建立bin目錄,並在bin目錄下xsync建立檔案

vi 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=101; host<104; host++)); do

echo ------------------- hadoop$host --------------rsync -rvl $pdir/$fname $user@hadoop$host:$pdir

done

注意:如果將xsync放到/home/atguigu/bin目錄下仍然不能實現全域性使用,可以將xsync移動到/usr/local/bin目錄下。

xsync集群分發指令碼

作用 迴圈複製檔案到所有節點的相同目錄下 第一步cd home 使用者名稱 bin touch xsync vi xsync注意 如果將xsync放到 home 使用者名稱 bin目錄下仍然不能實現全域性使用,可以將xsync移動到 usr local bin目錄下。第二步 bin bash 1 獲...

xsync集群同步指令碼

1 修改 etc hosts檔案 新增下面主機 192.168.225.131 hadoop101 192.168.225.132 hadoop102 192.168.225.133 hadoop1032 編寫xsync檔案 用普通使用者hadoop在 home目錄下建立bin檔案 用於存放指令碼的...

集群分發指令碼

分發指令碼使用前提 需要讓linux01機器知道linux02和linux03代表的是哪個ip 1 在 usr local bin目錄下建立xsync檔案,檔案內容如下 cd usr local bin vim xsync bin bash 1 獲取輸入引數個數,如果沒有引數,直接退出 pcount...