Welcher Linux-User kennt das Problem nicht: Man kompiliert einen neuen Kernel und kopiert ihn in das Verzeichnis »/boot« über den alten. Doch während der Rechner schon herunterfährt, reift so langsam der Gedanke, es wäre vielleicht besser gewesen, noch vor dem »halt«-Befehl einmal Lilo auszuführen. Pech gehabt. Also wird der Schreibtisch durchwühlt. Irgendwo muss ja noch die Bootdiskette von der Installation liegen. Schade nur, dass der Kernel auf der Diskette die SCSI-Karte nicht unterstützt. Da hängt nun mal leider die Festplatte dran, auf der das ganz nach eigenem Geschmack zusammengestellte Linux liegt. Murphy lässt grüßen.
So eine Situation war vor zwei Jahren der Anlass, dieses Projekt zu starten. Am Anfang sollte es nur eine eigene Bootdiskette werden. Doch für alle nützlichen beziehungsweise wünschenswerten Tools, war auf einer Diskette einfach zu wenig Platz. Also musste es eine bootfähige CD sein. Schnell entstanden ein, zwei Skripte, die zum Download auf Sourceforge landeten, nach der Devise: Vielleicht kann es ja noch jemand anderes verwenden. Heute ist daraus ein ganzes Toolset geworden, mit dem jeder Anwender ohne viel Aufwand eigene Boot-CDs erstellen kann; auch die Scheckkarten-Rettungs-CD des Linux-Magazins ist damit erstellt worden.
Das Toolset basiert auf der Debian- GNU/Linux-Distribution, alle Skripte sind auch unter dieser Umgebung getestet worden. Aber auch mit den meisten anderen Distributionen gibt es keine größeren Probleme.
Systemkonfiguration
Nachdem das Archiv von der Projekt-Website auf Sourceforge[1] heruntergeladen ist, entpackt der Befehl »tar xpjf timos_rescue_cd_set-0.9.8.tar.bz2« das Toolset in ein eigenes Verzeichnis mit der Bezeichnung »timos_rescue_cd_ set-0.9.8«. Wichtig ist, dass der Tar-Befehl unter der User-ID »root« ausgeführt wird, da ansonsten die Berechtigungen nicht stimmen und sich keine Device- Files erstellen lassen
Ein Ziel des Toolsets liegt in der einfachen Handhabung und Anpassung. Aus diesem Grund ist die Verzeichnisstruktur, die letztlich das Rettungssystem auf der CD darstellen wird, im Verzeichnis »_system/_cd« offen zugänglich und kann den eigenen Wünschen weitgehend angepasst werden.
Aber keine Angst, wer nicht allzu exotische Wünsche hat, muss keine Änderungen direkt am System vornehmen. Für viele grundlegende Einstellungen gibt es entsprechende Parameter in der Datei »config_system«, die dann das Skript »system_config« überträgt. Hier lassen sich unter anderem die Netzwerkkonfiguration oder das Login-Passwort einstellen.
Im nächsten Schritt ist die Datei »config_build« anzupassen. Wichtig sind hier vor allem die beiden Parameter »BASE« und »SCSIDEV«, die angeben, wo das Toolset installiert wurde und welches CD-Laufwerk als Brenner dienen soll. Ein kleiner Tipp hierzu: Der Befehl »cdrecord -scanbus« listet alle vorhandenen Laufwerke und deren SCSI-Adressen auf. Soll kein CDRW-Medium zum Einsatz kommen, wird der Parameter »SCSIBLANK« auskommentiert, da sonst der Brennvorgang mit einer Fehlermeldung abbricht. Das waren schon die wichtigsten Parameter, weitere Einstellmöglichkeiten folgen später.
Paketverwaltung
Debian GNU/Linux verfügt mit »apt« über ein sehr ausgefeiltes Paketmanagement-Tool: Ein wichtiges Feature von »apt« ist es, Pakete direkt aus dem Internet herunterzuladen und zu installieren. Da das Rettungssystem auf der Debian Distribution aufbaut, können also sehr komfortabel Pakete eingespielt, entfernt oder ganze Systeme auf den neuesten Stand gebracht werden. Damit auch der Nicht-Debian-Kundige ohne großes Vorwissen sofort mit der Paketauswahl beginnen kann, liegen in dem Unterverzeichnis »utils« einige nützliche Skripte bereit, die als Apt-Wrapper dienen. Zu beachten ist dabei, dass man die Skripte nur direkt im »utils«-Verzeichnis ausführen kann.
Soweit es möglich ist, sollte das System auch nur auf diesem Weg angepasst werden. Man erhält so ein fast unverändertes Debian GNU/Linux auf CD. Das hat den großen Vorteil, dass das Rettungssystem auf einer sehr ausgereiften Distribution beruht. Alle eingespielten Pakete arbeiten also ohne Probleme zusammen.
Das Skript »pkg_install« installiert neue Pakete im System. Um jetzt zum Beispiel den Editor »joe« mit auf die Rettungs-CD zu bringen, ist einfach der folgende Befehl im »utils« Verzeichnis einzugeben:
./pkg_install joe
Wer ein Paket wieder entfernen möchte, arbeitet analog zu »pkg_install«, nur mit dem Skript »pkg_remove«. Einen Überblick über alle für die Installation zur Verfügung stehenden Pakete liefert »pkg_list«, eine Liste der bereits installierten Pakete erhält man mit dem Befehl »pkg_show_installed«.
Als letztes, aber vielleicht auch wichtigstes Tool aus der Pkg-Reihe gibt es noch »pkg_update«. Es aktualisiert die Paketbeschreibungen und spielt Updates ein, sofern sie vorliegen. »pkg_update« sollte vor jeder CD-Erstellung aufgerufen werden, um eventuell vorhandene Bugs und Sicherheitslücken bereits im Vorfeld zu beheben. Der eingeweihte Debian-User wird wahrscheinlich nur müde lächeln, wenn er hört, dass ein Update sogar über Release-Grenzen hinweg möglich ist. Der eine oder andere Nicht-Debianer ist aber sicherlich erstaunt darüber.
|
Es gibt eine Reihe von Gründen, die für eine Komprimierung der Daten auf der Rettungs-CD sprechen. Zum einen gibt es die Möglichkeit, die CD vollständig in den Arbeitsspeicher zu kopieren. Das hat den Vorteil, dass das CD-ROM-Laufwerk nicht blockiert ist und zum Brennen benutzt werden kann. Allerdings wird auch entsprechend viel RAM benötigt. Die Komprimierung reduziert den Speicherbedarf etwa um den Faktor 2, sodass das Defaultsystem locker auf einem Rechner mit 128 MByte Speicher gestartet und in den Speicher geladen werden kann. Im Laufe der Zeit sind verschiedene Methoden zur Komprimierung in dem Toolset integriert worden, jede mit speziellen Vor- und Nachteilen. Umrüstung auf Zisofs
Zunächst bietet sich Zisofs an, das über den Parameter »COMPRESSEDFS« in der Datei »config_build« wählbar ist. Es ist eine Erweiterung des ISO9660-Dateisystems und wird von den neueren Kernelversionen unterstützt. Leider ist dazu eine gepatchte Mkisofs-Version [4] nötig; die Version, die die meisten Distribution verwenden, kann mit den komprimierten Dateien nicht umgehen. Zisofs komprimiert die Dateien auf Dateisystemebene, was einen gewissen Overhead zur Folge hat. Demzufolge hat Zisofs auch den schlechtesten Komprimierungsfaktor. Overhead sparen mit Cramfs
In dieser Hinsicht besser ist »cramfs«, das über den Parameter »CRAMFS« in der Datei »config_build« zu aktivieren ist. Es komprimiert die Dateien ebenfalls auf Dateisystemebene, erzeugt aber weniger Overhead. Den gewonnenen Speicherplatz muss man sich jedoch mit einigen Nachteilen erkaufen: Maximale Dateigröße ist 16 MByte, das gesamte Dateisystem darf nicht viel größer als 256 MByte sein und Benutzer- und Gruppen-IDs sind auf 8 Bit beschränkt.
Als bisher letzte Methode kam das »cloop«-Modul[7] hinzu. Der entsprechende Parameter ist »CLOOP«. Es komprimiert das Dateisystem auf Blockebene und wird, wie der Name schon andeutet, ähnlich wie ein Loop-Device benutzt. Mit ihm komprimierte Dateisysteme haben den besten Komprimierungsfaktor, allerdings ist das »cloop«-Modul jedes Mal neu zu kompilieren, wenn der Kernel ausgetauscht wurde.
|