Doutes sur le système de fichiers racine Linux

13

À ma connaissance, le terme «système de fichiers racine» est ambigu, il fait en fait référence à deux choses différentes. L'un est le système de fichiers minimal absolu nécessaire pour effectuer la configuration du système avec le noyau. Il contient certains des premiers programmes d'espace utilisateur qui effectuent la détection du matériel, le chargement des modules, la découverte des périphériques, etc. Ce système de fichiers est souvent appelé «rootfs». L'autre est le «vrai» système de fichiers racine. Il peut localiser sur un disque local ou sur un serveur distant (pour les systèmes qui prennent en charge le démarrage à partir d'Ethernet).

J'ai exploré plusieurs Linux Distros en utilisant la commande 'mount'. Certains ont 'rootfs on / type rootfs' dans le résultat, tandis que d'autres n'en ont pas. Et tous ont quelque chose comme '/ dev / sdaX on / type extX'.

Je me demande si le mécanisme a changé ou si rootfs est juste démonté pour ceux qui n'ont pas 'rootfs on / type rootfs'.

J'ai essayé de chercher la réponse par wiki et google, mais j'ai fini par être plus confus.

Quelqu'un peut-il m'aider?


la source

Réponses:

16

La mountcommande prend des informations sur les montages actuels /etc/mtab.

Dans le passé , mtabétait un fichier normal recréé après chaque démarrage et mis à jour par la mountcommande - il n'aurait donc pas d' rootfs /entrée simplement parce que rootfs n'est jamais monté explicitement ; il existe toujours. (Un tel a mtabparfois aussi des entrées en double, ou des entrées pour des systèmes de fichiers qui ne sont plus montés ...)

De nombreuses distributions actuelles ont maintenant un lien symbolique mtabvers /proc/self/mountslequel (comme tout le reste dans / proc) est directement généré par le noyau . Pour cette raison, il montre toujours tout ce qui est actuellement monté, y compris les deux rootfs /et /dev/blah /.

Vous pouvez utiliser cat /proc/self/mountssur toutes les distributions pour comparer les montures. (Il y en a aussi /proc/self/mountinfo, qui utilise une syntaxe incompatible mais ajoute plus de détails.)

user1686
la source
+1 pour les choses / proc que je ne connaissais pas.
Joe