Logout

Aus LinuxUser 03/2003

Logout

The Final Shutdown: rm -rf /

t=0: Vier Daumen drücken gleichzeitig die [Return]-Taste. Der Befehl lautet rm -rfv / – als Schnapsidee geboren (“Läuft rm-rf / eigentlich durch?”) stand schnell fest, dass ein altes, nur noch archäologisch interessantes System dran glauben sollte.

t+1: Schnelles Ende in einer Endlosschleife:

removing all entries of directory //boot
removing directory itself: //boot

In schneller Abfolge fliegen uns diese Zeilen um die Ohren. Dass rm -rf / alles löschen soll, hat man oft und überall gelesen. Reines Mysterium, denn gemountete Partitionen lassen sich auf diese Weise nicht entfernen. Spätestens beim ersten Mountpoint ist Schluss. Auf unserem Delinquenten ist die Lage recht einfach: Nur /boot hält uns auf. Ein einfaches umount /boot entfernt das letzte Hindernis. Ab jetzt geht alles ganz schnell:

*

t+60: Alles läuft noch; David Gray singt “This years love” – wie passend.

  • t+120: /usr/share/texmf muss dran glauben.
  • t+180: /usr/src/linux verabschiedet sich – sorry, Linus.
  • Nach fast vier Minuten ist der Spuk vorbei; David Gray trällert “Sail away with me, honey”, und Linux läuft immer noch.

Die Festplatte ist leer, doch wir haben kein df mehr, um es zu prüfen. Ein ls scheitert natürlich ebenso. Daher weichen wir auf echo @L: * .@L: * aus. Die einzigen Überlebenden sind /dev, /proc und die zuvor gestarteten Prozesse. Irgendwann wird das System schon merken, dass es im dritten Stock keinen Boden mehr unter den Füßen hat. Man hat schon Linux-Installationen mit 2GB gesehen, bei denen weniger funktionierte.

Eine root-Shell und damit die Bash Builtins bleiben uns. /proc/meminfo wäre interessant, doch cat hat uns verlassen. Mit den Bordmitteln der Shell lässt sich jedoch Abhilfe schaffen:

function cat() { while read a; do echo "$a"; done < $1; }

Die Funktion cat ersetzt so weitgehend das fehlende Programm: Zeilenweise schaufelt uns die Schleife mittels der Variable a den Inhalt der übergebenen Datei auf den Bildschirm. Der Aufruf cat /proc/meminfo liefert nun die gewünschte Information.

Was läuft denn noch?

David Gray ist bei “Say hello, wave goodbye”. Zeit, dem in den letzten Zügen liegenden System den Rest zu geben. Wir wollen alle verbleibenden Prozesse löschen. Die zunächst einleuchtend erscheinende Idee, alle Prozess-IDs von 1 bis 65535 in einer while-Schleife zu killen, nimmt uns die root-Shell bei PID 911. Tastatur weg, Maus weg, X nutzt nix. Von außen ist der Rechner immer noch mit ping zu erreichen – eth0 verlässt das sinkende Schiff mit dem Reset-Knopf zuletzt.

Totgesagte leben länger: Zwar ist der Kernel gelöscht, doch liegen seine Datentrümmer immer noch an der von LILO vermuteten Stelle. Der Kernel bootet, doch der Versuch, die Mutter aller Prozesse (/sbin/init) zu starten, scheitert:

Kernel panic: No init found.
Try passing init= option to kernel.
LinuxUser 03/2003 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben