Eine weitere simple Backup-Methode: Partclone, TinyCore und sshfs

Ein Backup zu machen ist das A und O. Ein Satz, den man regelmäßig liest und dem man auch zustimmen kann, nur um es dann doch auf die lange Bank zu schieben bis es schließlich zu spät ist. So etwas nennt man dann PP, Persönliches Pech. 😮
Die Auswahl für ein Backup reicht von Keep it simple, über "The Debian Way" bis hin zu einer kompletten Linuxdistribution, die Festplatten und Partitionen klonen und wiederherstellen kann.
Auf etwas älteren Laptops wie dem Thinkpad 600 funktioniert für mich auch die Partimage-Methode, indem ich von meinem Debian Stable aus eine weitere Partition sichere und bei Bedarf wieder einspiele.
Trotzdem ich freundlicherweise sogar Bilder zur Verfügung gestellt bekommen habe, wie man mit Hilfe von Clonezilla selbst mit nur 128 MB RAM ein vollständiges Festplattenbackup machen kann, hat dies bei mir leider noch nicht hingehauen.
Da es aber keine Rolle spielt, welche Linuxdistribution man benutzt, sondern nur, DASS es funktioniert, bin ich ziemlich glücklich, dass ich mit TinyCore nun die Möglichkeit habe ein vollständiges Backup durchzuführen.
Dazu muss man lediglich noch die Erweiterungen partclone.tcz und sshfs-fuse.tcz installieren. Partclone bietet gegenüber Partimage den Vorteil mehr Dateisysteme sichern zu können, darunter auch ext4 und btrfs.
Mit Hilfe von SSH lässt sich ein entferntes Dateisystem auf einem anderen Rechner einhängen und das Backup direkt an diesen Computer übertragen. Bei TinyCore muss man entweder die Rechte für den Standardnutzer tc konfigurieren oder mit sudo su als root die folgenden Kommandos ausführen.

Mit dem entfernten Rechner verbinden

mkdir /home/tc/backup
sshfs user@192.168.0.201:/home/user /home/tc/backup

Partition mit Partclone sichern

partclone.extfs -c -d -s /dev/sda2 -o /home/tc/backup/20111205_hal600_sda2.img

Partition mit Partclone wiederherstellen

partclone.restore -d -s /home/tc/backup/20111205_hal600_sda2.img -o /dev/sda2

MBR mit dd sichern

dd if=/dev/sda bs=512 count=1 of=/home/tc/backup/20111205_hal600_mbr.img



Mit den oben genannten Beispielen habe ich sowohl die zweite Partition der Thinkpad 600 Festplatte als auch den MBR und die Partitionstabelle gesichert und mit Hilfe des SSH-Dateisystems an einen entfernten Rechner übertragen. Je nach Interesse lassen sich mit TinyCore noch eine ganze Reihe anderer Möglichkeiten mit älterer Hardware verwirklichen.

Linux im RAM: Erfahrungen mit TinyCore auf dem Thinkpad 600

Nachdem die allgemeinen Hardwareprobleme wieder im Griff sind, wird es Zeit die Erfahrungen mit TinyCore zusammenzufassen. Ich habe mich nach meinem letzten Beitrag zum Thema "TinyCore remastern" noch etwas mit der Konfiguration dieser minimalistischen Linux-im-RAM-Distribution beschäftigt und lade die gefundenen Erkenntnisse hier einfach mal ab.

TinyCore auf dem Thinkpad 600

Da ich festgestellt habe, dass der standardmäßig installierte XVesa-Treiber nur eine unzureichende Bildschirmauflösung bietet und alles grünlich verzerrt, habe ich den Xorg-Server in Version 7.6 installiert. Als Ausgangsbasis zum weiteren Testen habe ich mir den Vorschlag von Heinz zu Herzen genommen und den Browser "Bon Echo", alias Firefox 2.0 mit GTK1-Bibliothek, Fluff, ein Dateimanager auf Basis von FLTK und kmaps für die deutsche Tastaturbelegung installiert. Nur an der Option "Add app inside intitrd on boot" konnte ich danach nicht mehr festhalten.
Ich denke, es liegt nicht an der Größe meines Arbeitsspeichers, 128 MB sind ausreichend um all diese Erweiterungen direkt beim Booten in den RAM zu kopieren. Dennoch wird der Xorg-Server nicht aktiviert und TinyCore fällt auf den XVesa-Modus zurück. Das Problem ließ sich nur durch Remastern mit der Option "Add app outside initrd on boot" beseitigen. Das bedeutete zwar, dass ich den USB-Stick nicht mehr entfernen konnte, gleichzeitig sinkt dadurch aber auch der benötigte Verbrauch an RAM, weswegen diese Methode für die älteren Rechner mir nun als der bessere Weg erscheint. Die Startzeit beim Booten wird ebenfalls verkürzt, hingegen erhöht sich die Wartezeit beim ersten Aufruf der Erweiterung.

Apps Audit

Natürlich kann man TinyCore auch komplett in Virtualbox remastern und wie im letzten Beitrag zu diesem Thema erwähnt, überflüssige Extensions der Multicore-Version entfernen und Konfigurationsdateien schon vor dem ersten Remastern bearbeiten.
Da das langweilig war, bin ich sofort nach dem Beenden von Ezremaster auf den Thinkpad 600 gewechselt und habe dort dann alle weiteren Anpassungen vorgenommen. Mit Hilfe der Anwendung "Apps Audit", grob vereinfacht eine Mischung aus Ubuntus Softwarecenter und Synaptic :D, lassen sich Extensions entfernen und das System auf den neusten Stand bringen und einstellen, welche Erweiterungen schon beim Booten (OnBoot) und welche erst auf Nachfrage (OnDemand) in den RAM geladen werden.

  • Pakete entfernen. Dependencies -> Build Reporting Database -> Extension auswählen -> Mark for Deletion -> Rebooten (mit Backup!)
  • System aktualisieren. Updates -> Check for Updates
  • Erweiterungen beim Booten laden. OnBoot -> Maintenance -> Extension wählen
  • Erweiterung nach Anfrage laden. OnDemand -> Maintenance -> Extension wählen
Apps Audit

AppBrowser

Applikationen, Softwarepakete sagen die einen, TinyCore nennt es Extensions. Diese Anwendungen lassen sich mit dem AppBrowser installieren. Er ist denkbar einfach zu bedienen. Mit Connect verbindet man sich zum TinyCore-Repositorium, danach nur noch die Erweiterung auswählen und aus den vier Modi wählen. Ich habe hier wie auch zuvor OnDemand gewählt und als weiteres App Dropbear, den winzigen SSH-Client und -Server installiert.
Alle Erweiterungen werden als Loop-Device eingehängt und dann lediglich mit dem Dateisystem verlinkt. Im Prinzip verhalten sich deshalb TinyCores Extensions ähnlich wie die IMG-Dateien eines Mac. Möchte man Programme deinstallieren genügt es einfach die TCZ-Datei zu löschen.

AppBrowser

Netzwerk

Das Letztere wäre ohne funktionierendes Netzwerk nicht möglich gewesen. Ich versuchte es zuerst mit meiner WLAN-Karte ASUS WL-107G mit Ralink-Chipsatz und dem Kerneltreiber rt2500pci. Der Linuxkernel erkannte die Karte wie gewohnt automatisch und da ich sowohl alle Wifi-Programme und auch wpa_supplicant von der Multicore-Version behalten hatte, funktionierte die minimalistische Netzwerkanwendung wifi.tcz problemlos. Zumindest für ca. 30 Sekunden hatte ich danach drahtlosen Internetzugang mit WPA-Verschlüsselung. Danach fror das System leider ein. Auch der Weg über die Kommandozeile half nicht weiter.
Ich tauschte danach die Karte gegen eine der 3com PCMCIA Karten aus, mit der es schließlich problemlos möglich war eine kabelgebundene Verbindung mit eth0 als Schnittstelle aufzubauen.

Netzwerk + Control Panel

Persistenz

Ein ganz wichtiges Thema bei TinyCore ist Persistenz. Nach dem Ausschalten des Computers sind gewöhnlich alle Daten, die vorher in den RAM geladen wurden verschwunden. Damit man sowohl seine Erweiterungen als auch wichtige Systemeinstellungen nach dem Reboot weiterverwenden kann, bietet TinyCore zwei grundlegende Möglichkeiten an.

  1. Dauerhaftes /home-, /opt- und /tce-Verzeichnis. Mit Hilfe von Bootcodes lässt sich TinyCore schon beim Starten anweisen die /home-, /opt- und /tce-Verzeichnisse dauerhaft auf einem Datenträger anzulegen. Beim Remastern mit dem schon vorgestellen Ezremaster ist das Schritt Nr.2. Die Bootparameter lassen sich auch nachträglich ändern. Die entsprechende Datei befindet sich in /mnt/sdb1/boot/extlinux und heißt extlinux.conf, wobei sdb mein eingehängter USB-Stick ist.Die Bootparameter lassen sich an die Zeile APPEND anhängen. Wer wie ich TinyCore auf einen USB-Stick installiert und Extensions außerhalb der initial ramdisk installiert hat, stellt fest, dass das TCE-Verzeichnis automatisch persistent angelegt wurde. D.h. alle Erweiterungen, die man mit dem Appbrowser in /mnt/sdb1/tce/optional installiert, werden gespeichert.
    Ausführlicher erklärt wird es im TinyCore-Wiki im Artikel "Persistence for Dummies".
  2. Backup. Die intuitivste und wahrscheinlich auch einfachste Methode ist es ein Backup zu machen. Beim Abmelden kann man zwischen den drei Optionen None, Backup und Safe auswählen, also entweder nicht speichern, ein Backup machen oder ein Backup machen und das alte Backup zusätzlich sichern. Alle Dateien und Informationen werden dann gepackt und im /tce-Verzeichnis als mydata.tgz gesichert. Was genau gespeichert oder nicht gespeichert werden soll, lässt sich in zwei einfachen Textdateien festlegen. Im /opt-Verzeichnis befinden sich die versteckten Dateien .filetool.lst und .xfiletool.lst. Die erste Datei ist eine Whitelist, in der Verzeichnisse und Dateien aufgeführt sind, die gesichert werden sollen. Die .xfiletool.lst ist das Gegenstück dazu, in der Dateien vom Backup ausgeschlossen werden können.Dabei gilt: .xfiletool.lst > .filetool.lst, wodurch es möglich ist Verzeichnisse auf eine Whitelist zu setzen, aber darin enthaltene Dateien vom Backup auszuschließen.

Folgende Dateien und Verzeichnisse habe ich zusätzlich zu den Voreinstellungen zum Backup hinzugefügt oder ausgeschlossen.

.filetool.lst

etc/X11/xorg.conf
opt/eth0.sh
opt/wpa_supplicant.conf
etc/passwd
etc/shadow
etc/dropbear

.xfiletool.lst

.mozilla/

Deutsche Tastaturbelegung

Xorg

Da ich den Xorg-Server benutze, ist es notwendig, dass man die Einstellungen zur deutschen Tastaturbelegung manuell in /etc/X11/xorg.conf ändert. Die Vorgehensweise habe ich vor kurzem etwas ausführlicher beschrieben. Im Prinzip ist es das gleiche Spiel wie bei ConnochaetOS oder Slitaz. Als Eintrag genügt aber in der Regel schon:

Section "InputDevice"
  Identifier "Keyboard"
  Driver "kbd"
  Option "XkbLayout" "de"
EndSection

Für Leserinnen und Leser aus der Schweiz und Österreich sollte natürlich auch ch und at funktionieren. 🙂 Nicht vergessen die xorg.conf in die .filetool.lst einzutragen!

Konsole

Für die virtuelle Konsole benötigt man das Paket kmap.tcz und die passende deutsche Keymap. Der folgende Befehl sollte in /opt/bootlocal.sh eingetragen werden. Er wird dann automatisch beim Start ausgeführt.

loadkmap < /usr/share/kmap/qwertz/de-latin1.kmap

Dropbear

Dropbear ist ein kleiner SSH-Client und -Server und der passende Ersatz, wenn man die gleiche Sicherheit wie mit OpenSSH haben möchte, aber auf die sftp Fähigkeit verzichten kann. Zum Starten von Dropbear trägt man den Befehl
/etc/init.d/dropbear start
in die /opt/bootlocal.sh ein. Gleichzeitig muss der Standardbenutzer tc ein Passwort erhalten (passwd) und die Dateien /etc/passwd, /etc/shadow und das gesamte /etc/dropbear Verzeichnis persistent gemacht werden.

Hintergrundbild einrichten

Das Hintergrundbild lässt sich spielend leicht ändern. Kopiert euer bevorzugtes Bild einfach nach /opt/backgrounds. Anschließend lässt sich im Control Panel unter "Wallpaper" das neue Hintergrundbild einrichten. So lässt sich ganz leicht aus TinyCore ein Ubuntu Oneiric Ocelot machen. 😉

Auf ein Wort

Es ist schon erstaunlich, dass es Freie Betriebssysteme gibt, die nicht nur auf 13 Jahre alter Hardware funktionieren, sondern dann auch noch komplett im RAM laufen können.
Ich denke TinyCore ist ein Beispiel dafür, dass man sowohl ältere Hardware als auch innovative Konzepte unter einen Hut bringen kann. TinyCore ist kein Abklatsch irgendeines bekannten Mainstream-Linux, dass sich an der Vorarbeit anderer gütlich tut und nur das Desktopthema austauscht.
Vollkommen zufrieden bin ich aber noch nicht. Die WLAN-Karte muss/sollte funktionieren. TinyCore auf eine Festplatte zu installieren ist zwar möglich, das halte ich aber nicht für den eigentlichen Verwendungszweck dieser Minidistribution. Zu rudimentär ist auch der Installer, als dass er einen ernsthaften Vergleich mit Debian oder Ubuntu standhalten könnte. Ideal ist TinyCore für den privaten Desktopbenutzer, der ein maßgeschneidertes Linux für einen USB-Stick und für den RAM sucht.
TinyCore bietet einige technisch einfache und effiziente Systemprogramme, die ideal für ältere Rechner geeignet sind, da sie kaum Ressourcen in Beschlag nehmen. Sie sehen zwar optisch nicht überwältigend aus, verrichten aber zielgerichtet ihren Dienst.
Debian, Slitaz oder ConnochaetOS halte ich für eine Festplatteninstallation auf dem Thinkpad 600 für die bessere Alternative, keine der Drei lässt sich aber so schnell und einfach mit 128 MB oder weniger in den RAM installieren, wobei man mit TinyCore eine grafische Oberfläche standardmäßig geboten bekommt.
Wenn man also ein bestehendes Betriebssystem nicht verändern möchte und gleichzeitig verschiedene Optionen von "Was man mit alten Computern machen kann" ausprobieren will, bietet sich TinyCore als eine ideale Möglichkeit an.
Wie immer muss man die Vor- und Nachteile für sich selbst abwägen. Fakt ist, TinyCore belegt momentan mit allen Erweiterungen gerade einmal 65 MB Speicherplatz, was es ideal für meinen 128-MB-USB-Stick macht. 😉
Nach dem Booten zeigt mir htop an, dass TinyCore 30 MB RAM in Anspruch nimmt. Mit Bon Echo, Fluff und ein paar Systemprogrammen komme ich auf 68 MB. Mehr als genug gute Gründe, um die Entwicklung von TinyCore in Zukunft weiter zu verfolgen.

Speicherverbrauch und Fluff
BonEcho

Links

TinyCore Wiki
TinyCore Forum
Anleitung zu TinyCore als Webserver

Linux im RAM: TinyCore am Beispiel Xorg-Server remastern

Vergangene Woche habe ich begonnen TinyCore etwas genauer unter die Lupe zu nehmen und die kleine Linuxdistribution auf einen USB-Stick installiert, von dem aus schließlich alles in den RAM meines Thinkpad 600 kopiert werden konnte. Noch nicht alles war perfekt. Der voreingestellte XVesa-Treiber versperrte mir den Blick auf den Desktop mit einem grünlich-blauen Schleier. Ich habe zwar noch eine Weile im Internet recherchiert, konnte aber keine Lösung zu dem XVesa-Problem finden.
Es wurde also Zeit TinyCore zu remastern, was in der Fachsprache dieser Linuxdistribution nichts anderes bedeutet als zusätzliche Softwarepakete zu installieren, überflüssige zu deinstallieren und die Stellschraube an der oder anderen Config-Datei zu drehen. TC bietet hier verschiedene Lösungsmöglichkeiten an:

  1. Die Zu-Fuß-Methode auf der Kommandozeile
  2. qremaster
  3. Ezremaster

Alle drei Methoden haben Vor-und Nachteile. Die Zu-Fuß-Methode setzt voraus, dass man sich wohl auf der Konsole fühlt, qremaster ist ein Shellskript, welches den Vorgang stark vereinfacht und Ezremaster ist ein grafisches Frontend, welches den gesamten Vorgang noch besser visualisiert und möglicherweise am intuitivsten ist.

TinyCore mit Hilfe von Ezremaster erweitern

  1. Pfad zum TinyCore-Abbild und zum temporären Verzeichnis


    Im ersten Schritt wählt man das Verzeichnis, indem sich entweder das multicore.iso, tinycore.iso, microcore.iso oder eine gemountete CD befindet. Die ISO-Dateien als Loop Device zu mounten funktioniert auch. Für mich war das /mnt/sr0 in Virtualbox. Für den Vorgang des Remasterns ist ein temporäres Verzeichnis notwendig, welches standardmäßig /tmp/ezremaster ist. Wer sehr viele Extensions, also neue Pakete, installieren möchte, sollte darüber nachdenken das Verzeichnis ggf. außerhalb von /tmp anzulegen, vor allem wenn RAM knapp ist.

  2. Boot-Codes und Backup


    Als nächstes lässt sich festlegen, mit welchen Boot Codes TinyCore gestartet werden soll. Für mich musste ich hier keine Einstellungen vornehmen. Wer aber z.B. Probleme mit der Auflösung hat, kann hier einen entsprechenden Parameter wie vga=791 für 1024x768 übergeben. Die sogenannte Backupdatei bietet die Möglichkeit gesicherte Einstellungen aus einer anderen TC-Installation in das neue Abbild zu übernehmen.

  3. Extensions installieren


    Der dritte Schritt ist das Installieren der zusätzlichen Software. Damit mein Thinkpad 600 wieder ein klares Bild liefert, habe ich mich für Xorg-7.6 entschieden, wozu ich mich zuerst mit dem Repositorium von TinyCore verbinden musste. Mit einem Klick auf "Connect to App Repo" ist dieses Thema abgehakt. Danach hat man folgende Möglichkeiten laut TinyCore Wiki.

    • Add App Outside initrd on boot / Add App Outside initrd. Diese Optionen werden die Erweiterungen im ISO-Image unter /tce/optional installieren. Wählt man Outside initrd apps on boot werden die Extensions zusätzlich in der Datei /tce/optional/onboot.lst aufgeführt, so dass sie automatisch beim Booten in den Arbeitsspeicher geladen werden. Die Methode Erweiterungen außerhalb der initial ramdisk zu installieren hat den Vorteil, dass weniger RAM notwendig ist um die Programme auszuführen. Die CD oder der USB-Stick darf dann aber nicht entfernt werden. Des Weiteren gibt es noch die Möglichkeit "copy2fs.flg" zu setzen, was dazu führt, dass die Erweiterung beim Booten schon in den RAM kopiert werden und das Installationsmedium danach entfernt werden kann. Das führt aber wieder zu mehr Speicherverbrauch.
    • Add App inside initrd on boot / Add App inside initrd. Diese Option installiert die Erweiterungen in die Initial-RAM-Disk (tinycore.gz) unter /opt/tce/optional. Wenn man "Inside initrd on boot" ausgewählt hat, werden die Namen der Extensions in die Datei /opt/tce/optional/onboot.lst geschrieben, so dass sie direkt beim Booten in den RAM kopiert werden und die CD/USB-Stick danach entfernt werden kann. Eine gute Methode, wenn man genügend Arbeitsspeicher zur Verfügung hat.
    • Add App Extract TCZ to initrd. Bei dieser Methode wird jede Extension beim Remasterprozess gemountet und in die extrahierte initrd installiert. Das soll eine bessere Performance als die "inside initrd" Option liefern bei gleichzeitig aber etwas größerem Speicherverbrauch, da nun die Extensions nicht mehr als komprimierte TCZ-Dateien vorliegen.

    Ich habe mich für "Add App inside initrd on boot" entschieden, da ich später alle Anwendungen im RAM laufen lassen und den USB-Stick entfernen möchte.

  4. Remaster-Prozess: Anfang


    Ab hier beginnt das eigentliche Remastern. Wer den Vorgang im Terminal beobachten möchte, wählt einfach die Checkbox aus. Der Vorgang kann, je nach dem wie viele Erweiterungen installiert werden sollen, eine Weile dauern.

  5. Remaster-Prozess: Finale


    Im letzten Schritt wird schließlich eine neue ISO-Datei erstellt, die sich danach erneut auf eine CD schreiben oder in Virtualbox mounten lässt. Bevor das aber geschieht, kann man ab jetzt noch verschiedene Konfigurationsdateien ändern und Veränderungen am Dateisystem selbst vornehmen. Wie in Schritt 3. schon erklärt, befinden sich die Extensions später in /opt/tce/optional. Hat man den Standardpfad für die temporären Dateien beibehalten, findet man die Erweiterungen vor dem Erstellen der ISO-Datei unter /tmp/ezremaster/extract/opt/tce/optional und kann überprüfen, ob zuvor alles glatt gelaufen ist.
    Im Verzeichnis /tmp/ezremaster/image/cde/optional befinden sich die Erweiterungen für die MultiCore-Version. Falls man in der neu erstellten ISO-Version auf die Tools zum Remastern verzichten kann, ist hier der richtige Ort um sie zu entfernen.
    Wenn man wieder alles auf einen USB-Stick schreiben möchte, muss man nur die neue Datei tinycore.gz in /tmp/ezremaster/image/boot/ auswählen und wie im alten Beitrag geschrieben weiter verfahren.

Das Ergebnis


Der X-Server wird automatisch mit Xorg eingerichtet. Insgesamt belegt das System ca. 100 MB im RAM und ist naturgemäß äußerst schnell. Der Speicherverbrauch ist aber noch zu hoch, da ich die zusätzlichen Extensions der MultiCore-Version noch nicht entfernt habe. Hier muss ich also in Zukunft noch ein wenig Hand anlegen. Positiv ist auch, dass meine ASUS WL-107G WLAN Karte automatisch erkannt wurde und mir TinyCores Wifi-Programm nun schon den Access Point anzeigt.
Als nächstes werde ich noch Dropbear als SSH-Server und einen Browser installieren und dann....mal schaun. 😉

Linux im RAM: TinyCore auf einem USB-Stick

Ein aktueller Trend ist der Austausch der althergebrachten elektromechanischen Festplatte gegen ein Solid State Drive und über kurz oder lang wird SSD die hergebrachte Magnetfestplatte vollständig ersetzen. Einziger Nachteil momentan ist der relativ hohe Preis pro GB für die neue Technologie. Für einen älteren Laptop mit einer zehnjährigen Vergangenheit lohnt ein solcher Umbau schon nicht mehr. Wer aber dennoch mit SD-Technik liebäugelt, aber nicht gerne Geld zum Fenster herauswirft, sollte sich auch einmal K.Mandlas SSD-Lösung näher anschauen. 😉
Für meinen Teil sehe ich sowohl für ältere als auch für brandneue Rechner eine noch preisgünstigere und noch schnellere Alternative.

RAM Installation

Machen wir uns nichts vor, heutzutage sind ja nun mehr 8 GB RAM Standard. Tendenz weiter steigend. Man muss schon ein außergewöhnliches Kunststück vollbringen, um mit einem Desktop-PC hier an die Grenzen zu stoßen. Hält man das System hingegen sogar schlank und minimal, lässt sich auch mit weit weniger RAM eine Linuxdistribution komplett in den RAM kopieren und darin dann ausführen. Und mal ehrlich, welchen Grund außer Nostalgie könnte es geben, dass Anwendungen nicht mit Lichtgeschwindigkeit starten sollten?
In der Vergangenheit habe ich mir einige Linuxe angeschaut, die sich zur Hauptaufgabe gemacht haben, ein Betriebssystem für den RAM zu entwickeln. Darunter waren Slitaz, Puppy Linux, auch ArchBang bietet einen RAM-Modus an und nicht zu vergessen das winzige TinyCore.
Im Grunde genommen lässt sich jede Linuxdistribution zum RAM-Linux umrüsten. Der Unterschied besteht hauptsächlich darin, wie viel Arbeitsspeicher vorausgesetzt wird und wie einfach oder schwer es gemacht wird das System an die eigenen Vorstellungen anzupassen. Gut gefallen hat mir das einfache Konzept von Slitaz, wo man dem im RAM laufenden Linux Anwendungen hinzufügen oder entfernen kann und mit dem sich das fertige Ergebnis sofort wieder zu einer neuen ISO-Datei zusammenstellen lässt.

TinyCore auf einem USB-Stick

Um den Horizont zu erweitern versuche ich mich derzeit an TinyCore Linux, welches den Thinkpad 600 und vielleicht später sogar den Toshiba Portégé 3110CT komplett als RAM-Distribution antreiben soll. Ähnlich wie bei Slitaz bietet TinyCore einen eigenen Installer, der das Image auf den USB-Stick schreibt und diesen zugleich bootfähig macht.
Die Dokumentation dazu ist meiner Meinung nach etwas inkonsistent. Gleichzeitig ist die Installation auf den USB-Stick aber ziemlich einfach. Ansehen sollte man sich die Installationsanleitung, das Quick&Easy Overview und auch das TinyCore-Wiki.

    1. Zuerst habe ich mir das MultiCore Image heruntergeladen, auf dem sich die zusätzlichen Programme zum Installieren befinden.
    2. Anschließend wurde die ISO-Datei in Virtualbox als CD-Laufwerk in einer virtuellen Maschine gemountet und von dort die MultiCore-Version gestartet. Natürlich habt ihr auch die Möglichkeit das Abbild auf CD zu brennen.

  1. Auf dem Desktop angekommen, startet ihr den TC-Installer (zweites Icon von rechts auf dem Screenshot).
  2. Wählt die Datei tinycore.gz aus, die sich im Boot-Verzeichnis der gemounteten ISO-Datei befindet. (hier Laufwerk sr0) und selektiert alles so wie auf dem Screenshot. Mein USB-Stick wurde an die virtuelle Maschine als Laufwerk sdb durchgereicht. Anschließend wird eine "Frugal"-Installation durchgeführt und der Inhalt des gesamten USB-Sticks überschrieben.
  3. Die folgenden Installationsschritte können wie in der Voreinstellung beibehalten werden. Lediglich als Dateisystem sollte ext2 gewählt werden, um zusätzliche Schreibvorgänge auf den USB-Stick zu vermeiden, die bei Journaling-Dateisystemen wie z.B. ext3 und ext4 auftreten.

Nach einer weiteren Bestätigung wird daraufhin TinyCore auf den USB-Stick geschrieben. Mit Hilfe des ausgezeichneten Plop Bootmanagers lässt sich dann mit dem Thinkpad 600 TinyCore von USB starten.

Probleme und To-Do

Mit TinyCore auf USB bootet der Thinkpad 600 ohne Probleme. Problematisch ist aber der verwendete XVesa-Treiber, der zwar die Auflösung mit 1024x768 korrekt einrichtet, die Darstellung jedoch grünlich verzerrt, so dass sich praktisch nichts erkennen lässt. Ich muss hier in Zukunft einen Weg finden, um XVesa in Einklang mit meiner MagicGraph-Grafikkarte zu bringen oder TinyCore mit dem X-Server von Xorg zu remastern. Da ich sowieso zusätzliche Erweiterungen installieren möchte, komme ich um das Remastern nicht herum.
TinyCore auf einen USB-Stick zu installieren war einfach. Die Konfiguration kann aber unter Umständen länger dauern.

TinyCore: Der ultrakleine Nomade

Ein weiteres Beispiel wie eine winzige Live-CD mit einer nur 10 MB großen ISO-Datei aussehen könnte. TinyCore reiht sich nahtlos, was die Größe anbetrifft, zwischen dem absoluten Champion der superleichtgewichtigen Betriebssysteme KolibriOS und dem vielseitigen Slitaz ein. Das Ziel von TinyCore ist nach eigener Darstellung ein "nomadisches, ultrakleines grafisches Desktopsystem" zu erschaffen, welches in der Lage ist von CD-ROM, USB oder Festplatte zu booten und komplett im RAM zu laufen, was schon mit 48 MB oder weniger gelingen soll.
Bei einer so winzigen Distribution gibt es natürlich auch immer ein paar Fragen. Wie gut wird meine Hardware unterstützt, welche und wie viele Softwarepakete stehen mir zur Verfügung und wie leicht oder schwer ist es sich in ein unbekanntes System, dass sich bewusst von den vorherrschenden, großen Distributionen abheben will, hineinzudenken?
Die erste Frage konnte ich mit meinen älteren Laptops noch nicht beantworten, packe es aber mal auf die (immer länger werdende) Liste. Mich würde schon interessieren, ob TinyCore ähnliche Ergebnisse wie Slitaz liefern kann. Zum Testen in Virtualbox war das aber alles kein Hinderungsgrund. TC bootet tatsächlich sehr schnell und man befindet sich danach sofort auf einem grafischen Desktop mit Busybox, Tiny X, FLTK und FLWM. Die vorinstallierten grafischen Anwendungen sind tatsächlich minimal, aber nicht monoton. Wer Linux mal mit GTK1 kennengelernt hat, wird sich praktisch wie zu Hause fühlen. 😉
Im Regelfall möchte man aus der Liveumgebung noch ein paar Anwendungen "on demand" installieren. Dazu muss man einmal auf den Desktop rechtsklicken und dann System Tools->AppBrowser auswählen. Auch TinyCore bietet als waschechte Linuxdistribution eine zentrale Paketverwaltung an. Natürlich kann sie nicht so umfangreich wie die von Debian mit dessen 1000 freiwilligen Entwicklern sein, aber auf den ersten Blick entdeckt man doch viele bekannte und essentielle Applikationen wieder.

Zum Test habe ich Firefox 5 installiert, was TinyCore als Extension also Erweiterung zu seinen bestehenden Kernanwendungen bezeichnet. Das ganze Betriebssystem ist wirklich in jeder Hinsicht auf den Punkt gebracht. Schnickschnack sucht man hier vergeblich. Die Installation klappte aber dennoch reibungslos und Firefox samt Abhängigkeiten wurden in den RAM geladen.
Einen vorkonfigurierten kompletten Desktop sucht man vergeblich. Es ist wirklich alles TinyCore. Slitaz ISO als Gegenbeispiel nimmt zwar geringfügig mehr Speicher ein, bietet dafür aber auch ein komplett vorkonfiguriertes Openbox-Desktoperlebnis. Wie auch immer, falls du dich genauso wie ich für sehr leichtgewichtige Linuxdistributionen interessierst, solltest du TinyCore zumindest einmal selbst ausprobieren. Ich denke ab 128 MB RAM und bei genauer Vorstellung was das System leisten soll, könnte TinyCore den Unterschied zwischen einer weiteren sinnvollen Verwendung des Rechners und dem Ende auf einem Schrottplatz bedeuten. Auf der offiziellen Homepage gibt es Links zu weiteren Screenshots und weitere grundlegende Informationen zu TinyCore.