介紹
rsync命令是一個遠程數據同步工具,可通過LAN/WAN快速同步多臺主機間的文件。rsync使用所謂的“rsync算法”來使本地和遠程兩個主機之間的文件達到同步,這個算法只傳送兩個文件的不同部分,而不是每次都整份傳送,因此速度相當快。 rsync是一個功能非常強大的工具,其命令也有很多功能特色選項,我們下面就對它的選項一一進行分析說明。
常用場景
無密碼同步
服務端:vim /etc/rsyncd.conf
#This is the rsync daemon configuration #global settings pid file = /var/run/rsyncd.pidport = 873lock file = /var/run/rsyncd.locklog file = /var/log/rsync.loggid = rootuid = root#module settings [share_data]path = /web/rsync/share_datause chroot = nomax connections = 15read only = yeswrite only = nolist = noignore errors = yestimeout = 120
/usr/bin/rsync --daemonmkdir -p /web/rsync/share_data
客戶端
rsync -avz --progress [email protected]::share_data /home/hadoop/share_data
限制流量同步
rsync -avz --bwlimit=50 --progress [email protected]::share_data /home/hadoop/share_data
有密碼同步
服務端
vim /etc/rsyncd.conf
#This is the rsync daemon configuration #global settings pid file = /var/run/rsyncd.pidport = 873lock file = /var/run/rsyncd.locklog file = /var/log/rsync.loggid = rootuid = root#module settings [auth_data]path = /web/rsync/auth_datause chroot = nomax connections = 15read only = yeswrite only = nolist = noignore errors = yestimeout = 120auth users = hadoopsecrets file = /etc/rsyncd.passwd
echo "hadoop:password123" > /etc/rsyncd.passwd chmod 600 /etc/rsyncd.passwdmkdir -p /web/rsync/auth_data
客戶端
echo "password123" > /home/hadoop/rsyncd.passwd chmod 600 /home/hadoop/rsyncd.passwd rsync -avz --progress --password-file=/home/hadoop/rsyncd.passwd [email protected]::auth_data /home/hadoop/auth_data
或者是
export RSYNC_PASSWORD="password123"rsync -avz --progress [email protected]::auth_data /home/hadoop/auth_data
寫入同步
服務端
vim /etc/rsyncd.conf
#global settings pid file = /var/run/rsyncd.pidport = 873lock file = /var/run/rsyncd.locklog file = /var/log/rsync.loggid = rootuid = root#module settings [write_data]path = /web/rsync/write_datause chroot = nomax connections = 15read only = nolist = noignore errors = yestimeout = 120auth users = hadoopsecrets file = /etc/rsyncd.passwd
mkdir -p /web/rsync/write_data
客戶端
echo "123" > /home/hadoop/write_fileexport RSYNC_PASSWORD="password123"rsync -avz --progress --delete /home/hadoop/write_file [email protected]::write_data
新聞熱點
疑難解答