Hoy, en el trabajo, un cliente rm -rf /dev
terminó eliminando dos archivos, /dev/shm
lo que obligó a que su sitio dejara de funcionar.
Por lo que aprendí anteriormente, /dev
no es virtual, pero un colega técnico sugirió reiniciar el servidor porque /dev
es virtual /proc
. Efectivamente reinicié el servidor y los archivos que el cliente rm -rf tenía allí.
Entonces mi pregunta es; es /dev
virtual? ¿Es el tipo de virtual /proc
? ¿Hay más documentación sobre esto? ¿Cómo puedo restaurar los /dev
archivos sin reiniciar el servidor?
Respuesta1
La respuesta durante mucho tiempo ha sido "más o menos".
Actualmente el árbol de dispositivos Linux está gestionado porudev
, un administrador de dispositivos de espacio de usuario que reemplazó a devfs hace varios años. udev completa /dev con cualquier nodo de dispositivo que el sistema necesite, dependiendo de las reglas configuradas en sus archivos de configuración.
En los sistemas Linux más nuevos, /dev está en un disco RAM temporal proporcionado pordevtmpfs
. Podrías llamarlos virtuales.
Ejemplo:
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=6109940k,nr_inodes=1527485,mode=755)
La única razón para que existan nodos de dispositivos reales en /dev hoy en día es el entorno de arranque, antes de que udev haya comenzado. Por lo general, solo se necesitan /dev/console
y /dev/null
en el sistema de archivos real, lo cual es suficiente para llegar al punto en el que se puede iniciar udev. Luego proporcionará todo lo demás.