題 rsync命令刪除錯誤“遇到IO錯誤 - 正在刪除文件”


我使用rsync命令將文件從我的一個ubuntu服務器備份到另一個ubuntu機器。 備份服務器觸發使用rysnc命令的腳本。 這是我使用的命令

rsync -rltvh --partial --stats --exclude = .beagle / --exclude =。* --delete-after root @ live_server:/ home / / home / live_server_backup / home >> /tmp/logfile.log 2> &1

live_server是沒有密碼的ssh-able。所以它有效。現在問題在於

- 刪除後選項

在所有文件同步後。最後我可以看到刪除過程跳過.logfile錯誤就好

遇到IO錯誤 - 跳過文件刪除

當我試圖找到日誌時,文件同步時出現了一些錯誤

rsync:send_files無法打開“/home/xyz/Desktop/PPT_session_1_context.pdf”:權限被拒絕(13)

所以我的理解是因為rsync無法讀取目標中的所有文件,出於安全原因它正在跳過文件刪除。

即使有一些權限錯誤,有沒有辦法讓 - 刪除 - 工作後? 我不想使用強制刪除,因為在某些情況下它會很危險。


15
2017-12-07 03:29


起源


Pssst再次......你真的應該。 - Armel Larcier


答案:


關於此問題的其他說明:

vanished file 不應該觸發這種情況 IO error encountered -- skipping file deletion,但這通常在您創建實時系統的備份時發生。

這由rsync bug#7809(https://bugzilla.samba.org/show_bug.cgi?id=7809並且應該在即將發布的3.1.0中解決。

在此期間使用:

--ignore-errors         delete even if there are I/O errors

12
2018-06-28 11:11





從rsync手冊頁:

--ignore-errors         delete even if there are I/O errors

這將解決您的問題。


18
2018-04-27 01:07





您應該使用排除文件 rsync 忽略它無法讀取的文件。可以使用生成列表 find . -exec test -r '{}' 在源目錄中然後按摩成排除文件格式 rsync 想。


2
2017-12-07 04:48



實際上我的源目錄非常大(10-12GB)。因此,每次查找文件(沒有讀取權限)都不是有效的方法。你說啥? - XemX
運行一次以構建排除列表,除非添加了大量新的不可讀文件,否則不要再次運行它。 rsync正在進行相同的樹遍歷,所以不管怎樣它都不應該那麼糟糕。 - Kyle Jones
是。但這就是我的情景。日常源目錄可能會引入此類文件。我需要將新文件備份到備份機器中。 - XemX
這有解決方案嗎?我還使用rsync從實時系統進行備份,當讀取機器出現I / O錯誤時,目標機器上的文件將被刪除,這不應該發生! - bzero