一段时间以来,我一直在使用 rsync over ssh (cygwin) 从 Windows 2003 服务器将文件备份到连接了 USB 硬盘驱动器的 Debian 盒子。
这些文件直接同步到作为 /media/backup 安装在 Debian 盒子上的 USB 硬盘驱动器。
备份从 Windows 机器上的计划任务运行,stdout 和 stderr 输出到备份完成后通过电子邮件发送给我的文件。
我时不时地在 stderr 文件中看到错误,例如:
rsync: failed to set times on "/media/backup/[some file name] ": Read-only file system (30)
对于自上次备份以来已更改的每个文件。
当我看到这个错误时,我卸载驱动器并重新安装。这样就解决了问题。
谁能告诉我为什么会发生这个错误?即为什么USB驱动器每隔几个月就会变成只读一次?
文件系统被设为只读以响应与它交互的一些错误。在开始抱怨之前,您应该看到一些东西出现
dmesg
和/或/var/log/messages
(或等效) 。rsync
USB驱动器上的文件系统是什么?如果它是 NTFS,它可能没有被完全卸载。因此默认情况下通常以只读方式挂载它,直到您运行磁盘检查或清除了不干净的挂载标志。(不确定实际调用的标志是什么)。