Dudas sobre el sistema de archivos raíz de Linux

13

En mi opinión, el término 'sistema de archivos raíz' es ambiguo, en realidad se refiere a dos cosas diferentes. Uno es el sistema de archivos mínimo absoluto necesario para lograr la configuración del sistema junto con el núcleo. Contiene algunos programas iniciales de espacio de usuario que realizan detección de hardware, carga de módulos, descubrimiento de dispositivos, etc. Este sistema de archivos a menudo se denomina 'rootfs'. El otro es el sistema de archivos raíz 'real'. Puede ubicarse en un disco local o en un servidor remoto (para sistemas que admiten el arranque desde ethernet).

He explorado varias distribuciones de Linux usando el comando 'mount'. Algunos tienen 'rootfs on / type rootfs' en el resultado, mientras que otros no. Y todos ellos tienen algo como '/ dev / sdaX on / type extX'.

Me pregunto si el mecanismo ha cambiado o si rootfs está desmontado para aquellos que no tienen 'rootfs on / type rootfs'.

Intenté buscar la respuesta en wiki y google, pero terminé más confundido.

Alguien puede ayudarme?


fuente

Respuestas:

16

El mountcomando toma información sobre los montajes actuales de /etc/mtab.

En el pasado , mtabera un archivo normal recreado después de cada arranque y actualizado por el mountcomando , por lo que no tendría una rootfs /entrada simplemente porque el rootfs nunca se monta explícitamente ; Simplemente siempre existe. (Tal vez a mtabveces también tiene entradas duplicadas, o entradas para sistemas de archivos que ya no están montados ...)

Muchas distribuciones actuales ahora hacen enlaces simbólicos mtaba /proc/self/mounts, que (como todo lo demás en / proc) es generado directamente por el kernel . Debido a esto, siempre muestra todo lo que está montado actualmente, incluidos ambos rootfs /y /dev/blah /.

Puede usar cat /proc/self/mountsen todas las distribuciones para comparar las monturas. (También existe /proc/self/mountinfo, que usa una sintaxis incompatible pero agrega más detalles).

usuario1686
fuente
+1 para / proc cosas que no sabía.
Joe