我想知道这个错误可能是什么情况:
cp: reading `filename': Input/output error
当我尝试复制一个大约 50MB 的大文件时收到此消息。
答案1
最可能的问题是磁盘故障,除非磁盘是通过网络安装的,在这种情况下,我相信网络问题也可能导致这种情况。
规模影响很可能是统计性的,特别是在网络情况下(即,失败的可能性随着规模的增加而增加,因为涉及更多操作并且每个操作都有失败的几率)。
答案2
尝试dmesg
或查看系统日志,看看内核是否抱怨与此相关的内容。该cp
命令仅获取底层系统调用的整数错误号,因此错误消息有时不太详细。
答案3
我唯一一次看到 cp 给出此错误是当 iso 映像被挂载两次时,例如:/dev/sr0 挂载在 /mnt 上,而 /dev/loop0 也挂载在 /mnt 上。在这种情况下,我认为 cp 遇到了一些它无法处理的递归。对我来说,卸载 loop0 和 sr0,然后再次运行 mount -o loop /dev/sr0 /mnt 可以修复此问题(由 root 或 sudo 用户完成)。