在測試問題 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