
一段時間以來,我一直在 Windows 2003 Server 上使用 rsync over ssh (cygwin) 將檔案備份到連接了 USB 硬碟的 Debian 盒子。
檔案直接同步到 USB 硬碟,該硬碟作為 /media/backup 安裝在 Debian 機器上。
備份是從 Windows 機器上的排程任務運行的,stdout 和 stderr 會輸出到文件中,備份完成後這些文件會透過電子郵件發送給我。
我時不時地在 stderr 檔案中看到錯誤,例如:
rsync: failed to set times on "/media/backup/[some file name] ": Read-only file system (30)
對於自上次備份以來發生更改的每個檔案。
當我看到此錯誤時,我會卸載驅動器並重新安裝。這樣就解決了問題。
誰能告訴我為什麼會出現這個錯誤?也就是為什麼 USB 隨身碟每隔幾個月就會變成唯讀一次?
答案1
檔案系統被設為唯讀,以回應與檔案系統互動時出現的一些錯誤。在開始抱怨之前,您應該會看到出現一些內容dmesg
和/或/var/log/messages
(或類似內容) 。rsync
答案2
USB 隨身碟上有什麼檔案系統?如果是 NTFS,則可能沒有完全卸載。因此,預設通常將其掛載為唯讀,直到執行磁碟檢查或清除不乾淨的掛載標誌為止。 (不確定該標誌實際上叫什麼)。