Linux

rsync不刪除文件夾

  • February 28, 2013

我在重新同步我的文件夾時遇到問題。在我家有一個名為“工作區”的文件夾。最近我更改了很多內容,創建新目錄,刪除舊目錄。新文件夾已成功 rsync 到外部磁碟,但已刪除的文件夾仍在外部磁碟上,未刪除。如果我 rsync 到我的其他備份網路位置,則相同。在嘗試調查我嘗試這兩個命令的原因時:

   rsync -nav --delete --exclude='.gvfs' --exclude='.cache' --exclude='.thumbnails' /home/OURDOMAIN/myname/workspace /run/media/myname/VERBATIM/backup/myname > dryrun.txt

在此試執行之後,dryrun.txt 文件包含工作區文件夾中要刪除的所有文件和文件夾,標記為“刪除”,沒關係。但我想為整個主目錄執行我的 rsync 命令,但它不起作用。使用命令:

   rsync -nav --delete --exclude='.gvfs' --exclude='.cache' --exclude='.thumbnails' /home/OURDOMAIN/myname /run/media/myname/VERBATIM/backup > dryrun2.txt

現在標有“刪除”的dryrun2.txt 行僅適用於.local 和.config 中的一些最近刪除的文件。沒有工作區目錄。

為什麼它沒有按我的預期工作?新文件夾會被複製,但已刪除的文件夾不會被刪除。如您所見,我沒有使用文件遮罩。我認為問題不在我的排除目錄中。如試執行所示,這也不是權限問題。感謝幫助。

rsync 版本 3.0.9 協議版本 30

附加說明:如果我創建一些非空目錄並執行 rsync,它們將被成功複製。當我刪除這些文件夾並執行 rsync 時,僅當文件夾直接位於 /home/OURDOMAIN/myname 中(例如 /home/OURDOMAIN/myname/deleteme)時,它們才會在備份中消失。但是像 /home/OURDOMAIN/myname/tmp/deleteme 這樣的嵌套目錄會保留它們的所有內容並且不會被刪除。

rsync返回:

23 因錯誤部分轉移

解釋是:權限在不同文件夾中被拒絕禁用刪除,我認為被拒絕的目錄被跳過,來自手冊頁的引用:

如果發送方檢測到任何 I/O 錯誤,則將自動禁止刪除目的地的任何文件。

如果它是備份並且應該始終是您的主文件夾的最新副本,您可以嘗試使用--ignore-times.

引用自:https://serverfault.com/questions/482919