Ubuntu
Rsync 總是在同一點失敗
我為我的 Proxmox 主機製作了一個腳本,以將其每日備份複製到另一台機器(執行 Windows Server 2019)。
該腳本掛載 CIFS 共享並執行以下 rsync 命令:
rsync -aqzP --delete --delete-excluded /mnt/raid/ /mnt/backups --exclude "*.log"
它執行了大約 6 分鐘,然後當它嘗試複製
vzdump-qemu-100-2021_05_16-00_00_03.vma.zst
文件時,它會拋出一個錯誤:rsync: [receiver] close failed on "/mnt/backups/backups/dump/.vzdump-qemu-100-2021_05_16-00_00_03.vma.zst.nrDEvQ": Broken pipe (32) rsync error: error in file IO (code 11) at receiver.c(871) [receiver=3.2.3] rsync: [sender] write error: Broken pipe (32)
可能是什麼問題呢?
在 Windows 機器上,有複製所需的所有空間。
我是如何解決的:
我在 ArchLinux 論壇上發現了這個被遺忘的文章,並嘗試了解決方案:
這似乎是一個記憶體問題或相關的東西。
為了讓它工作,我剛剛添加
-o fg,noac,lookupcache=none
到mount
命令中。
我會研究 cifs 在該
vzdump-qemu-100-2021_05_16-00_00_03.vma.zst
文件中不喜歡的內容。
- 文件是在遠端卷上創建的嗎?它沒有部分複制?
- 遠端文件系統或 cifs 協議是否支持文件的大小?
此外,如果文件可由 rsync 使用:
- 執行 rsync 的使用者是否可以訪問文件(文件權限、文件被另一個程序鎖定等)
最後,如果我對此沒有結果,我會嘗試增加 rsync 詳細程度以獲取有關錯誤的更多詳細資訊:
rsync -aqzPvvvvvvvvvvvvvvvv ...