我的 crontab 脚本最近在从本地文件系统到 Windows 安装的移动命令上开始失败,并出现以下错误:
mv: closing `/mnt/SEProjbackups/20101124-040001_vm-seprojects.tar.bz2': Input/output error
本地和远程服务器都有足够的磁盘空间。文件已复制且大小正确,但存档已损坏。同时,如果我从命令行运行移动,它就可以正常工作。
关于我应该如何排除故障,有什么建议吗?我是 Linux 菜鸟,所以请温柔一点。
答案1
每次都失败吗?Windows 安装如何安装?安装上的导出权限是什么?
我建议使用 rsync,而不是使用mv
,它将对文件进行校验并确保其已成功传输,并且可以恢复部分传输的文件。我认为你想要的咒语是:
rsync --partial --times --remove-sent-files /location/of/SEProj/* /mnt/SEProjbackups/
请查阅 rsync 手册页以了解您可能想要添加的其他选项。
这将尝试移动任何文件/location/of/SEProj/
(当然使用真实路径)复制到您挂载的共享,并删除成功传输的内容。
这样,即使这个问题只是一个暂时的故障,你最终也会传输所有的备份。