Ich bin [rootfs /]#
oft auf eine Eingabeaufforderung gestoßen, als das Booten meiner Distribution fehlgeschlagen ist. Normalerweise stellte ich fest, dass ich das Problem mit den begrenzten verfügbaren Befehlen nicht beheben konnte, sodass ich eine Ersatz-Live-CD verwenden konnte, die ich herumliegen hatte.
Aber wie lautet die rootfs
Aufforderung? Warum stehen nur begrenzte Befehle zur Verfügung? Und kann ich damit mein System booten, nachdem das Problem behoben wurde?
command-line
boot
arch-linux
prompt
Wolfizen
quelle
quelle
Antworten:
Rootfs
ist eine spezielle Instanz vonramfs
(odertmpfs
, falls aktiviert), die immer in vorhanden ist2.6 systems
. Sie können rootfs nicht aushängen.Zur Zeit der Kernel-Initialisierung ist ein absolut minimales Dateisystem registriert, genannt
rootfs
. Der Code, der dieses Dateisystem implementiert, befindet sich infs/ramfs/inode.c
, der auch den Code für dasramfs
Dateisystem enthält. rootfs istramfs
bis auf die Angabe desMS_NOUSER
Flags grundsätzlich identisch mit . Dies wird von der Routinegraft_tree
in interpretiertfs/namespace.c
, und ich denke, es verhindert, dass Userland-Prozesse ihre eigenen Reittiere ausführenrootfs
.Die Routine
init_mount_tree
(in fs / namespace.c) wird beim Systemstart aufgerufen, um eine Instanz von rootfs einzuhängen und als Root-Namespace des aktuellen Prozesses festzulegen ( denken Sie daran, dass verschiedene Prozesse unter Linux unterschiedliche Namespaces für Dateisysteme haben können ).Es enthält alle Anwendungen, Einstellungen, Geräte, Daten und mehr. Ohne das Root-Dateisystem kann Ihr Linux-System nicht ausgeführt werden.
Siehe: https://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt
quelle