El archivo es demasiado grande para /dev/null

El archivo es demasiado grande para /dev/null

Mientras probaba un LUN problemático para errores de lectura, encontré el siguiente problema:

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

Hardware IBM, RHEL 6.6

¿Quién es el culpable, siempre que este archivo en particular pueda leerse sin errores?

Respuesta1

Parece que es /dev/nullposible que lo hayan eliminado en algún momento, por lo que cuando comenzó a escribir en él, estará escribiendo en un archivo simple en lugar del dispositivo nulo especial de caracteres.

Puedes confirmar esto mirando el resultado de ls

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

Si estoy en lo cierto, entonces no verás un dispositivo de carácter especial. Puede reparar esto eliminando primero el archivo que creó y luego ejecutando

MAKEDEV std 

que debería funcionar en EL6 o

mknod -m 666 /dev/null c 1 3

información relacionada