4-10.8 Linux 中的文件同步傳輸 --- rsync --delete 接收端鏡像形式備份源數(shù)據(jù)

  • --delete 以源文件為主,源文件傳輸數(shù)據(jù)到目標(biāo)目錄,目標(biāo)目錄以鏡像形式保存源文件數(shù)據(jù)。如,目標(biāo)目錄里有源數(shù)據(jù)以外的內(nèi)容將會(huì)被刪除(多則刪除,少則補(bǔ)上)。目標(biāo)目錄的內(nèi)容和源目錄的內(nèi)容保持一致。
  • 4-10.8 內(nèi)容
    通過(guò) rsync -a --delete 學(xué)習(xí)鏡像形式的備份。
  • 操作步驟:
    1、新建一個(gè) backups_delete 用作備份目錄
[root@localhost ~]# ls
test
[root@localhost ~]# cd test 
[root@localhost test]# mkdir backups_delete    ## 新建 backups_delete 備份目錄
[root@localhost test]# 
[root@localhost test]# tree    ## 目錄結(jié)構(gòu)
.
├── backups_delete      ## 新建的 backups_delete 備份目錄 
└── SRC
    ├── directory
    │   └── file2.txt
    └── file1.txt

3 directories, 2 files

2、執(zhí)行 rsync -a --delete 把 SRC 目錄下的內(nèi)容傳輸?shù)?backups_delete 目錄,backups_delete 以鏡像形式保存 SRC 目錄的內(nèi)容。backups_delete 目錄的內(nèi)容和 SRC 目錄的內(nèi)容保持一致。

[root@localhost test]# rsync -a --delete SRC/ backups_delete/
[root@localhost test]# 
[root@localhost test]# tree
.
├── backups_delete    ## backups_delete 目錄已備份了 SRC 目錄的文件
│   ├── directory
│   │   └── file2.txt
│   └── file1.txt
└── SRC
    ├── directory
    │   └── file2.txt
    └── file1.txt

3、第 2 點(diǎn)通過(guò) -a --delete 完成了 SRC 目錄文件的備份,可能沒(méi)有突顯鏡像備份的形式?,F(xiàn)在 backups_delete 增加一些內(nèi)容,然后用 -a --delete 再傳輸一次數(shù)據(jù)作一個(gè)對(duì)比就會(huì)清晰了。

backups_delete 目錄下新增兩個(gè)目錄 directory1 和 directory2,directory1目錄新增一個(gè) file3.txt 文件,directory2目錄新增一個(gè) file4.txt 文件。操作 和 目錄結(jié)構(gòu)如下:

## backups_delete 目錄下新增兩個(gè)目錄 directory1 和 directory2
[root@localhost test]# mkdir backups_delete/directory1
[root@localhost test]# mkdir backups_delete/directory2

## directory1目錄新增一個(gè) file3.txt 文件,directory2目錄新增一個(gè) file4.txt 文件
[root@localhost test]# touch backups_delete/directory1/file3.txt
[root@localhost test]# touch backups_delete/directory2/file4.txt
[root@localhost test]# 
[root@localhost test]# tree    ## 目錄結(jié)構(gòu)如下
.
├── backups_delete
│   ├── directory    ## SRC 目錄備份內(nèi)容
│   │   └── file2.txt
│   ├── directory1    ## 新增的內(nèi)容
│   │   └── file3.txt
│   ├── directory2     ## 新增的內(nèi)容
│   │   └── file4.txt
│   └── file1.txt     ## SRC 目錄備份內(nèi)容
└── SRC
    ├── directory
    │   └── file2.txt
    └── file1.txt     

6 directories, 6 files
[root@localhost test]# 

-a --delete 再傳輸一次數(shù)據(jù),可以發(fā)現(xiàn)剛才新建的目錄和文件都被刪除了,backups_delete 目錄只保存和 SRC 源目錄一致的內(nèi)容。形成一個(gè) SRC 目錄內(nèi)容的鏡像。

[root@localhost test]# rsync -a --delete SRC/ backups_delete/
[root@localhost test]# 
[root@localhost test]# tree
.
├── backups_delete
│   ├── directory
│   │   └── file2.txt
│   └── file1.txt
└── SRC
    ├── directory
    │   └── file2.txt
    └── file1.txt

4 directories, 4 files

4、同理,把 backups_delete 的 file1.txt 文件刪除,再用 -a --delete 再傳輸一次數(shù)據(jù)。

## 刪除 backups_delete 的 file1.txt 文件
[root@localhost test]# rm -rf backups_delete/file1.txt 
[root@localhost test]# 
[root@localhost test]# tree
.
├── backups_delete    ## 缺少了 file1.txt 文件
│   └── directory
│       └── file2.txt
└── SRC
    ├── directory
    │   └── file2.txt
    └── file1.txt

4 directories, 3 files
##  -a --delete 完成了 SRC 目錄文件的備份
[root@localhost test]# rsync -a --delete SRC/ backups_delete/
[root@localhost test]# 
[root@localhost test]# tree
.
├── backups_delete
│   ├── directory    ## 缺少的 file1.txt 文件已經(jīng)補(bǔ)上
│   │   └── file2.txt
│   └── file1.txt
└── SRC
    ├── directory
    │   └── file2.txt
    └── file1.txt

4 directories, 4 files
[root@localhost test]# 

由上述實(shí)驗(yàn)可以看出 --delete 作用于接收端,把目標(biāo)目標(biāo)以鏡像模式備份源目錄的數(shù)據(jù)。目標(biāo)目錄比源目標(biāo)多出的內(nèi)容將會(huì)被刪除。對(duì)比源目錄,比源目錄少的內(nèi)容會(huì)補(bǔ)上。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容