linux的檔案同步、壓縮、歸檔
1.檔案同步
命令 | 含義 |
---|---|
rsync -r /mnt/ [email protected]:/mnt | 同步資料 |
rsync -rp /mnt/ [email protected]:/mnt | 同步資料帶許可權 |
rsync -rpo /mnt/ [email protected]:/mnt | 同步資料帶許可權使用者 |
rsync -rpog /mnt/ [email protected] |
同步資料帶許可權使用者組 |
rsync -rpogt /mnt/ [email protected]:/mnt | 同步資料帶許可權使用者,組,時間戳 |
rsync -rpogtl /mnt/ [email protected]:/mnt | 同步資料帶許可權使用者,組,時間戳,連結 |
rsync -r /dev/pts/ [email protected]:/mnt | 同步裝置,不成功 |
rsync -Dr /dev/pts [email protected] |
同步資料帶裝置,成功 |
我們選取三條命令執行,
rsync -r /mnt/ [email protected]:/mnt
我們可以看到下圖中兩個虛擬機器下的許可權,使用者名稱不同。(node1虛擬機器中的檔案時間是其獲得同步檔案的時間,時間相同是因為檔案剛建立就同步)
rsync -rpogtl /mnt/ [email protected]:/mnt
下圖中許可權,使用者,組,時間戳與檔案原本的使用者名稱相同,此檔案沒有連結,如果有連結,連結也會被同步。
rsync -Dr /dev/pts [email protected]:/mnt
2.歸檔
目錄變為檔案 上傳速度加快
命令 | 含義 |
---|---|
tar cf etc.tar dir1 dir2 | 將兩個目錄歸檔進檔案etc.tar |
tar tf etc.tar | t代表檢視 |
tar -rf etc.tar file/dir | r第歸,新增進新的檔案或目錄 |
tar xf etc.tar | 解壓所有檔案 |
tar xf etc.tar -C /mnt/ | 解壓到/mnt目錄下 |
tar -f etc.tar --get file | 解壓出檔案file |
tar -f etc.tar --delete mnt | 刪除檔案mnt |
執行命令:tar cf etc.tar dir1 dir2 和tar tf etc.tar
執行命令:tar -rf etc.tar file/dir
執行命令:tar xf etc.tar -C /mnt/
執行命令:tar -f etc.tar --delete westos
3.壓縮
壓縮檔案常見有四種類型: zip gzip bz2 xz
du -sh etc.tar.xz 檢視壓縮包大小
(1)zip -r etc.tar.zip etc.tar 壓縮etc.tar
unzip etc.tar 解壓
這種方式會保留原檔案,解壓前要刪除原始檔,否則解壓時或詢問是否重新命名。(如下圖)下圖中zip檔案解壓後其壓縮檔案依然存在,我們可以檢視其檔案大小,其他型別壓縮檔案解壓後就不存在了。
(2)gzip etc.tar 壓縮etc.tar
gunzip etc.tar.gz 解壓
(3)bzip2 etc.tar 壓縮etc.tar
bunzip2 etc.tar.bz2 解壓
(4)xz etc.tar 壓縮etc.tar
unxz etc.tar.xz 解壓
4.組合操作
- 壓縮打包一起
tar zcf etc.tar.gz file/dir 將目錄或檔案打包並壓縮排etc.tar.gz壓縮包
tar zcf etc.tar.xz file/dir (注意:檔案型別仍是gz) 將目錄或檔案打包並壓縮排etc.tar.gz壓縮包
tar jcf etc.tar.bz2 file/dir 將目錄或檔案打包並壓縮排etc.tar.gz壓縮包
tar Jcf etc.tar.xz file/dir 將目錄或檔案打包並壓縮排etc.tar.gz壓縮包
file etc.tar.gz 檢視檔案型別 - 解壓縮解包一起
tar zxf etc.tar.gz
tar jxf etc.tar.bz2
tar Jxf etc.tar.xz