rsync命令使用方法

rsync的三種工做模式:node

一、單個主機本地進行數據傳輸   相似與cp命令   另外rsync還有刪除功能vim

二、藉助與rcp,ssh通道來進行傳輸       相似與scp功能安全

rsync -avz /etc/hosts -e ssh    192.168.12.246:/etc/init.d/服務器

-a:保持文件自身屬性       -z:壓縮傳輸         -e:使用通訊協議       -v:輸出給出進度提示ssh

將 本地的/etc/hosts文件  藉助ssh通道來傳輸到192.168.12.246的/etc/init.d/目錄下socket

三、以守護進程(socket)方式進行傳輸ui

當以守護進程的方式傳輸,須要新建該文件:vim  /etc/rsyncd.conf日誌

uid = rsync     用戶
gid = rsync     組
use chroot = no
max connections = 200  鏈接數
timeout = 300    超時退出
pid file = /var/run/rsyncd.pid       日誌
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[lzk]
path = /usr/local/tools/   同步的目錄
ignore errors      忽略輸出時錯誤提示
read only = false  讀寫
list = false
hosts allow = 192.168.12.0/24   容許的網段
hosts deny = 0.0.0.0/32
auth users = slave   認證的用戶
secrets file = /etc/rsync.password  將客戶端用戶的密碼寫入該文件,不會在要求密碼進程

 

當建立寫好配置文件時使用rsync --daemon啓動服務  查看873端口ip

[root@node1 ~]# lsof -i :873
COMMAND   PID USER   FD   TYPE DEVICE SIZE NODE NAME
rsync   17160 root    4u  IPv6 175668       TCP *:rsync (LISTEN)
rsync   17160 root    5u  IPv4 175669       TCP *:rsync (LISTEN)

 

在配置文件中咱們定義的用戶是rsync,因此咱們如今建立虛擬用戶

useradd rsync -s /sbin/nologin

 

將咱們共享的文件目錄賦予用戶權限

chown rsync.rsync /usr/local/tools/

 

在配置文件中定義了密碼文件,咱們將認證用戶和密碼寫入該文件中

 echo "slave:lzk.1995" > /etc/rsync.password

因爲該文件是有咱們認證的信息,因此要給最小的權限最安全  chmod 600 /etc/rsync.password

這時,咱們的客戶端就配置好了。

 

 

咱們在客戶端也須要建立rsync.password文件,當同步數據時,能夠不顯示密碼提示

   echo "lzk.1995" > /etc/rsync.password

給該文件賦予最小最安全的權限

  chmod 600 /etc/rsync.password

 

配置到此,咱們即可以經過客戶端像服務器端推拉數據了

[root@node2 /]# rsync -avz slave@192.168.12.237::lzk /usr/local/tls/    
Password:

 

能夠看出如今仍是須要密碼,咱們添加格外參數

[root@node2 /]# rsync -avz slave@192.168.12.237::lzk /usr/local/tls/ --password-file=/etc/rsync.password 
receiving file list ... done
./
memeda

sent 125 bytes  received 870686 bytes  1741622.00 bytes/sec
total size is 789158893  speedup is 906.23

 

注意:sync -avz slave@192.168.12.237::lzk   /usr/local/tls/ --password-file=/etc/rsync.password

上面標紅的字母在ip後面是兩個冒號,scp則是一個。另外lzk和服務器端配置文件中[lzk]是對應的。

相關文章
相關標籤/搜索