1. 程式人生 > >Linux基礎_檔案在系統中的傳輸rsync

Linux基礎_檔案在系統中的傳輸rsync

    當我們想遠端傳送給另一個主機檔案時有很多種方法,今天主要介紹使用rsync命令遠端傳輸,rsync的傳輸方式是建立一個映象,不像scp命令是複製貼上的過程,所以rsync命令要比scp命令要快很多,但同時會忽視檔案的屬性(許可權,使用者,組,時間戳),連線檔案,裝置檔案。在scp傳輸的過程/mnt和/mnt/在傳輸之後都會存在mnt這個目錄,而rsync命名的/mnt是包含目錄本身,而/mnt/是不包含目錄本身。

   rsync命令的主要引數:

-r    #對目錄進行第歸 -p    #保留許可權 -o    #保留檔案的所有人 -g    #保留檔案的組 -t    #保留時間戳 -l    #保留連線 -D   #保留裝置檔案

    在預設情況下,是忽略檔案屬性(許可權,使用者,組,時間戳),連結檔案,裝置檔案,如下圖在node2主機的/mnt下建立檔案及目錄和連線:

用rsync -r /mnt/ [email protected]:/mnt/將檔案傳輸到node1主機的/mnt/下時,檔案屬性和連線被忽略掉了,-r表示第歸:

再新增上-p引數後,檔案的777許可權被保留:

加上-o引數,原檔案的所有人得到保留,為student:

再加上-g引數,原檔案的所有組被保留,為student:

-t引數保留原檔案的時間戳:

-l引數保留了連線檔案:

/dev/pts目錄下有兩個字元裝置檔案,在預設情況下是無法傳輸的:

在加上-D引數之後,就可以將裝置檔案傳輸的node1主機上了: