GNU/Linux >> Tutoriales Linux >  >> Linux

¿Por qué puedo mover cosas a /dev/null a pesar de ser un pseudodispositivo representado por un archivo?

Si intenta mover algo a /dev/null bajo un usuario simple (no root), obtendrá un Permission denied error porque mv something /dev/null en realidad está tratando de eliminar /dev/null y luego mueve something a qué /dev/null era.

Si intenta hacerlo desde la raíz, lo eliminar /dev/null (y luego mueva el archivo proporcionado por usted en su lugar)! Puede restaurarlo reiniciando o escribiendo lo siguiente en un shell raíz (en Linux):mknod /dev/null c 1 3; chmod a+w /dev/null o en BSD:mknod /dev/null c 3 2; chmod a+w /dev/null .


Cuando haces esto:

# mv oi /dev/null

En realidad estás haciendo el equivalente a lo siguiente

# rm /dev/null
# mv oi /dev/null

no puedes

# uname -sr
Linux 2.6.32-ARCH
# touch a
# mv a /dev/null
mv: inter-device move failed: `a' to `/dev/null'; unable to remove target: Permission denied

Linux
  1. DD de /dev/zero a /dev/null... lo que realmente sucede

  2. ¿Por qué el contenido de /dev/shm/ se elimina automáticamente?

  3. /dev/sdb:No existe tal archivo o directorio (pero /dev/sdb1, etc. existe)

  4. Linux:diferencia entre /dev/console, /dev/tty y /dev/tty0

  5. hacer eco o imprimir /dev/stdin /dev/stdout /dev/stderr

¿Cómo maneja Linux múltiples separadores de rutas consecutivas (/home////username///file)?

¿Qué tan portátiles son /dev/stdin, /dev/stdout y /dev/stderr?

¿Cuándo usar /dev/random Vs /dev/urandom?

/dev/null en Linux

¿Por qué no puedo crear un vínculo físico desde un archivo de dispositivo que no sea el directorio /dev?

¿Por qué se requieren < o > para usar /dev/tcp?