文件对于 /dev/null 来说太大

文件对于 /dev/null 来说太大

在测试有问题的 LUN 是否存在读取错误时,我遇到了以下问题:

find /mnt/problem_lun/ -type f -print -exec dd if={} of=/dev/null bs=8k \;
...
/mnt/problem_lun/a_file
dd: writing `/dev/null': File too large
33619977+0 records in
33619976+0 records out
275414843392 bytes (275 GB) copied, 804.171 s, 342 MB/s

IBM 硬件,RHEL 6.6

如果这个特定的文件能够被读取且没有任何错误,那么罪魁祸首是谁?

答案1

看起来您/dev/null可能在某个时候被删除了,所以当您开始写入它时,您是在写入一个普通文件,而不是字符特殊空设备。

您可以通过查看 ls 的输出来确认这一点

$ ls -l /dev/null
crw-rw-rw-. 1 root root 1, 3 Sep 28 08:11 /dev/null

如果我没记错的话,你不会看到字符特殊设备。你可以先删除你创建的文件,然后运行

MAKEDEV std 

应该适用于 EL6 或

mknod -m 666 /dev/null c 1 3

相关内容