Linux-Imagedateien für USB optimiert

Linux Live-Distribution für den USB-Stick

15.04.2008 von Enrico Thierbach
Um Linux überall vom USB-Stick nutzen zu können braucht der Linux-Profi eine bootfähige Linux-Distribution für den USB-Stick. Bisher waren viele Live-Distributionen nur als ISO-Datei für Boot-CDs. Jetzt bieten immer mehr Projekte auch Imagedateien für USB-Sticks (mit der Dateiendung .img) zum Download an.

Wer sein bevorzugtes Linux-System auf einem USB-Stick in der Hosentasche dabei hat, kann an fast jedem Rechner mit der gewohnten Umgebung arbeiten. Auf dem USB-Stick installieren Sie normalerweise eine Live-Distribution, die Ihnen Office-Programme oder Internettools zur Verfügung stellt. Viele Live-Distributionen gibt es bislang aber nur als ISO-Datei für Boot-CDs. Immer mehr Projekte bieten jedoch auch Imagedateien für USB-Sticks (mit der Dateiendung .img) zum Download an.

Im folgenden Abschnitt haben wir einige dieser Distributionen für Sie zusammengestellt. Sie haben die Qual der Wahl zwischen verschiedenen Desktops, verschiedener Softwareausstattung und unterschiedlicher Größe. Für welche der Distributionen Sie sich entscheiden, bleibt dabei Ihnen überlassen, das Distributions-Image muss lediglich auf Ihren USB-Stick passen.

Linux-Distributionen für den USB-Stick

Puppy Linux: Puppy Linux ist eine speziell für den Einsatz auf USB-Sticks vorbereitete Linux-Version. Trotz der Größe von unter 100 MB bietet der Slackware-Abkömmling einen Desktop einschließlich Textverarbeitung und Internet-Tools

Pendrivelinux.com: Diese Website Pendrivelinux.comist die erste Anlaufstelle für alle Informationen rund um das Thema Linux auf dem USB-Stick und bietet auch Images zum Download an. Können Sie Ihren PC nicht dazu bewegen, vom USB-Stick zu booten, finden Sie bei Pendrivelinux noch einige Tipps.

Debian Live: Das Debian Live-Projekt bietet neben live-helper, dem Tool zum Erzeugen von Live-Distributionen, auch fertige Images an.

Webconverger: Webconverger ist eine Debian-basierte Live-Distribution, mit der Sie einen alten PC im Handumdrehen in eine Surf-Station verwandeln. Auf der Website des Projekts finden Sie auch USB-Images.

Einige Projekte bieten sowohl neben USB-Images auch ISO-Images an. Diese sind nicht fürs Booten vom USB-Stick geeignet. Sie tragen normalerweise die Dateiendung .iso, während USB-Images eine .img-Dateiendung besitzen.

Voraussetzungen

Ihr USB-Stick muss vor allem über ausreichend Platz verfügen. Für die meisten Anwendungszwecke reicht ein 1-GB-USB-Stick. Sie können den USB-Stick anschließend nicht mehr zum Datentransport verwenden, er wird komplett geleert. Sichern Sie also zuvor die auf dem Stick gespeicherten Daten.

Ihr PC muss von USB starten können. Leider haben sich die Hersteller bislang nicht auf einen gemeinsamen Standard geeinigt: Während die meisten USB-Sticks wie eine Festplatte angesprochen werden können, simulieren andere eine Floppy Disk. Das BIOS Ihres PCs muss also Ihren Stick unterstützen. In den letzten Jahren sind Inkompatibilitäten aber seltener geworden. Verfügen Sie über einen halbwegs aktuellen PC, stehen Ihre Chancen gut.

Aktuelle Rechner unterstützen in der Regel den schnelleren USB-Standard 2. Technisch spricht zwar nichts gegen eine Anbindung über USB 1 ? wegen der deutlich geringeren Übertragungsgeschwindigkeit ist diese aber in der Praxis nicht empfehlenswert.

U3-Sticks vorbereiten

Falls es sich bei Ihrem USB-Stick um einen so genannten U3-Stick handelt, müssen Sie diesen zuerst leeren. U3-Sticks enthalten in einem schreibgeschützten Bereich einige Windows-Tools, die die portable Nutzung mancher Windows-Programme etwa im Internet-Café ermöglichen. Sie erkennen einen U3-Stick daran, dass dieser an einem Windows-System nicht nur einen Laufwerksbuchstaben anmeldet, sondern zwei. Einer der beiden enthält dabei scheinbar eine CD mit dem Namen ?U3 System?.

Um die U3-Software von Ihrem Stick zu entfernen, benötigen Sie einen Windows-PC und die Software U3-Uninstaller. Nach dem Start des Uninstallers entfernt er die U3-Komponenten in wenigen Schritten.

Vorarbeiten: U3-Sticks müssen Sie zuerst mit einer Windows-Software entleeren.

Achtung: Sie können die U3-Funktionalität später nicht wieder herstellen. Falls Sie sich unsicher sind, ob Sie diese noch benötigen, müssen Sie auf einen anderen Stick ausweichen.

USB-ID ermitteln

Sie können ein Image nicht mit dem üblichen Dateibefehlen kopieren. Stattdessen arbeiten Sie auf Device-Ebene und müssen deshalb wissen, mit welcher Bezeichnung Ihr USB-Stick vom System angesprochen wird. Stecken Sie den Stick an. Nachdem er vom System erkannt wurde, geben Sie den Befehl

ls -la /dev/disk/by-id/usb*

ein. Die Ausgabe sieht dann etwa so aus:

lrwxrwxrwx 1 root root 9 2007-10-11 20:55 /dev/disk/by-id/usb-Sony_Storage_Media_2A07062113054-0:0 -> ../../sdb
lrwxrwxrwx 1 root root 10 2007-10-11 20:55 /dev/disk/by-id/usb-Sony_Storage_Media_2A07062113054-0:0-part1 -> ../../sdb1

In diesem Beispiel ist der USB-Stick zwei Gerätedateien zugeordnet. sdb bezieht sich dabei auf den gesamten Stick, während sdb1 die erste Partition auf dem Stick darstellt. Der Stick wird also als sdb angesprochen ? wovon wir in den folgenden Beispielen immer ausgehen.

Auf USB-Stick schreiben

Hängen Sie den USB-Stick aus dem System aus (Rechtsklick auf das Desktop-Icon des Sticks, Datenträger aushängen). Öffnen Sie nun ein Terminal-Fenster und wechseln Sie in das Verzeichnis, in dem die Imagedatei (zum Beispiel mit dem Namen binary.img) liegt. Mit den folgenden Befehlen kopieren Sie sie auf den USB-Stick:

su
dd if=binary.img of=/dev/sdb bs=1M
sync

Nun beenden Sie Ihr Linux und starten Ihren PC neu.

Von USB booten

Um jetzt von Ihrem USB-Stick zu booten, legen Sie diesen als Boot-Device fest. Die meisten modernen Rechner unterstützen diese Auswahl direkt beim Start: dort gelangen Sie mit <F8> in das Menü, in dem Sie das Boot-Device festlegen können. Bietet Ihr PC diese Möglichkeit nicht oder möchten Sie zukünftig immer von Ihrem USB-Stick booten, dann ändern Sie die Bootreihenfolge direkt im BIOS. Dazu betätigen Sie direkt nach dem Einschalten des PC den BIOS-Hotkey. Dieser hängt vom Typ Ihres PCs und des BIOS ab. Eine Übersicht über häufigsten Hotkeys finden Sie im Anhand des Artikels. Auch die Bezeichnung im BIOS ist nicht einheitlich: Wählen Sie etwa USB-HDD. Falls Sie in Ihrem BIOS keinen solchen Eintrag finden, funktioniert manchmal auch der Eintrag USB-ZIP. Falls Ihr PC partout nicht von USB booten will, finden Sie auf http://www.pendrivelinux.com unter Umständen Hilfe.

Beachten Sie, dass Sie das Prozedere nicht mit VMWare testen können: Das von bisherigen VMWare-Versionen eingesetzte BIOS kann nicht von einem USB-Stick booten.

Die Daten auf dem Stick liegen extrem komprimiert vor. Das schafft Platz auf dem Datenträger, dafür muss der Rechner nach dem Anschalten diese Daten erst einmal wieder auspacken. Abhängig von der Prozessorleistung kann es beim Booten vom USB-Stick also eine Weile dauern, bis Sie den Desktop zu Gesicht bekommen.

Ob Sie nach dem Booten nach einem Passwort gefragt werden, hängt von der jeweiligen Distribution ab. Falls das der Fall ist, finden Sie das Passwort auch auf der Website. Für das Image auf der Heft-DVD benötigen Sie kein Passwort.

USB-Stick wiederherstellen

Sie können Ihren USB-Stick im jetzigen Zustand nicht mehr zum Datenaustausch mit anderen Rechnern nutzen. Die ursprüngliche Funktionalität lässt sich zwar wiederherstellen, allerdings können Sie danach nicht mehr vom Stick booten.

Um das Linux-System wieder vom USB-Stick zu entfernen, stecken Sie den USB-Stick an und stellen Sie den Laufwerksbuchstaben fest.

USB-Stick wieder in den Urzustand versetzen: Löschen Sie die Partition auf dem USB-Stick und legen Sie eine neue FAT-Partition für den Datentransport an.

Stellen Sie mit der Paketverwaltung Ihres Systems sicher, dass das Paket dosfstools installiert ist. Mit dem Partitionseditor löschen Sie zuerst alle Partitionen auf dem USB-Stick und legen dann eine einzige Partition an, die den gesamten USB-Stick umfasst. Diese formatieren Sie mit FAT16. Achtung: Passen Sie auf, dass Sie die Partitionen Ihres USB-Sticks löschen und nicht etwa die Ihrer Festplatte.

Ihr ganz persönliches Linux

Falls Ihnen die Images im Internet nicht zusagen, erzeugen Sie einfach selbst ein solches Image. Dann erhalten Sie ein Linux, das genau auf Ihre Ansprüche zugeschnitten ist, auch wenn der Vorgang etwas komplizierter ist.

Der Systemstart Ihres Rechners läuft in mehreren Schritten ab. Zuerst lädt das BIOS den Bootloader (meist Grub) vom Bootdevice und überlässt diesem alles Weitere. Der Bootloader lädt den Kernel und einige benötigte Zusatzmodule. Nun startet der Kernel, lädt alle weiteren Bestandteile des Systems und begrüßt Sie schließlich mit Ihrem Desktop oder der Textkonsole. Damit das funktioniert, müssen Bootloader und Kernel die benötigten Dateien finden.

Normalerweise erwarten diese alle Dateien auf CD oder DVD oder auf der Festplatte. Damit die Daten vom USB-Stick geladen werden, sind einige Anpassungen nötig: ein für USB-Sticks geeigneter Bootloader ? Grub funktioniert dort bisher nicht ? muss installiert und Kernel und weitere Dateien angepasst werden.

Tools für Ihr USB-Linux

Mit den richtigen, auf die jeweilige Distribution abgestimmten Tools ist das Anpassen nicht schwer. Für ein Open-Suse-System benutzen Sie kiwi (http://en.opensuse.org/Build_Service/KIWI). Fedora-Nutzern steht mit Revisor (http://revisor.fedoraunity.org) sogar ein äußerst luxuriöses Tool mit grafischer Oberfläche zur Verfügung.

Hier zeigen wir Ihnen, wie Sie unter Debian mit live-helper eine für Ihren USB-Stick angepasste Debian-Variante erzeugen. Im Vergleich zu Revisor erscheint live-helper eher spartanisch ? doch hinter den Kulissen ist das Tool ein flexibles und mächtiges Werkzeug.

live-helper ist noch nicht Teil der aktuellen Debian-Distribution ?Etch?. Erst ?Lenny? wird live-helper mitbringen. Um es aber dennoch unter ?Etch? zu installieren, laden Sie die Version aus ?unstable? (sid) herunter. Sie finden die Paketdatei (1,8 MB) unter http://packages.debian.org/sid/live-helper/all/download. Nach dem Download installieren Sie das Paket mit

dpkg -i live_helper_1.0~a34-1_all.deb
apt-get -f install

Nach Redaktionsschluss hat live_helper sicherlich nicht mehr die Version ?a34? ? setzen Sie hier einfach den Namen der Datei ein, die Sie heruntergeladen haben.

Zu Beginn: ein Minimal-System

Mit der Image-Erstellung machen Sie sich am besten vertraut, indem Sie zuerst einmal ein Minimalsystem erzeugen. Beachten Sie, dass Sie auch alle folgenden als Benutzer root vornehmen müssen. Überprüfen Sie auch deshalb Ihre Eingaben genau, denn als root können Sie bereits mit kleinen Tippfehlern großen Schaden in Ihrem Linux anrichten!

Mit den folgenden vier Befehlszeilen erzeugen Sie eine neue Grundkonfiguration für ein minimales Debian Lenny-System im Verzeichnis /root/usblive:

sudo su
mkdir /root/usblive
cd /root/usblive
lh_config -d lenny -b usb-hdd

Die von live-helper erzeugten Konfigurationsdateien benötigen noch einige Anpassungen. Öffnen Sie die Datei /root/usblive/config/chroot und ändern Sie die dort enthaltenen Einträge folgendermaßen:

LH_UNION_FILESYSTEM="aufs"
LH_LINUX_PACKAGES="linux-image-2.6 aufs-modules-2.6 squashfs-modules-2.6"

Damit Ihr Linux deutsch spricht, tragen Sie in der Datei /root/usblive/config/binary

LH_BOOTAPPEND_LIVE="locale=de keyb=de"

ein. Mit dem Befehl

lh_build

starten Sie anschließend die Erstellung des Boot-Images. live-helper lädt nun die benötigten Software-Pakete aus dem Internet. Anschließend installiert es diese Dateien in ein Unterverzeichnis und komprimiert es. Dafür benötigen Sie ausreichend Festplattenplatz. Für dieses Minimalsystem genügen 350 MB; für ein Image mit Gnome sollten Sie schon 2 bis 3 GB Platz haben. In diesem Fall kann die Erstellung des Images auch durchaus einmal eine Stunde benötigen.

Image überprüfen per mount

Zur Überprüfung des Image-Inhalts mounten Sie die Imagedatei:

mkdir test
mount -o loop,offset=512 /root/debian-live/binary.img test
ls test/

Anmerkung: der Wert für offset hängt dabei von den ?Innereien? Ihres Images ab. Schlägt das Mounten mit einem Offset von 512 fehl ? die Fehlermeldung lautet: ?Sie müssen den Filesystem-Typ angeben), testen Sie einen der anderen möglichen Werte 31232 und 32256 (siehe auch http://wiki.debian.org/DebianLive/Howto/USB).

Überprüfung: Zum Test der Imagedatei mounten Sie diese in Ihrem Linux-System.

Jetzt sollten Sie eine Ausgabe ähnlich der im Screenshot vorfinden. Mit den folgenden Befehlen unmounten Sie das Image wieder:

umount test
rmdir test

Wie oben bereits beschrieben, kopieren Sie nun die Image-Datei /root/debian-live/binary.img auf Ihren USB-Stick, starten Ihren PC neu und booten nun vom Stick. Ihr PC sollte jetzt im Textmodus starten und Sie um die Eingabe von Usernamen und Passwort.

Zusätzliche Pakete installieren

Sie benötigen sicherlich mehr als Grundausstattung an Tools, die Ihnen das Lenny-Minimalsystem zur Verfügung stellt. Erstellen Sie dazu einfach ein Image mit zusätzlichen Paketen.

live-helper ermöglicht Ihnen, gleich eine komplettere Linux-Version zu installieren. Dazu bringt es im Verzeichnis /usr/share/live-helper/lists/ einige vorbereitete Paketlisten mit, die Sie für die Konfiguration Ihres Live-Linux-Systems verwenden können. Dazu geben Sie in der Datei /root/usblive/config/chroot im Eintrag LH_PACKAGES_LISTS die Namen der Paketliste an. Beispielsweise

LH_PACKAGES_LISTS="gnome"

Möchten Sie einzelne zusätzliche Pakete installieren, geben Sie diese ebenso im Eintrag LH_PACKAGES an.

Noch weiter gehende Änderungen ermöglicht der interaktive Modus: Auf diese Weise können Sie die Imagedatei mit den üblichen Linux-Befehlen modifizieren. Um diesen Modus zu aktivieren, geben Sie in /root/usblive/config/chroot

LH_INTERACTIVE="enabled"

an. Ein Image mit den neuen Einstellungen erzeugen Sie dann mit den Befehlen

cd /root/usblive
lh_clean
lh_build

Im interaktiven Modus

Haben Sie den interaktiven Modus aktiviert, unterbricht live-helper das Erstellen des Images und ermöglicht Ihnen die Modifikation der Dateien in einer Shell (siehe Bild).

Manuelle Eingriffe: Im interaktiven Modus verpassen Sie Ihrem Live-System den letzten Schliff.

In diesem Terminal-Fenster befinden Sie sich in einer so genannten chroot-Umgebung. Alle Befehle, die Sie dort eingeben, beziehen sich nur auf das Verzeichnis, in dem Ihr neues Linux-System erstellt wird. Andere Fenster sind davon nicht betroffen. Achten Sie sehr genau darauf, welche Befehle Sie in welchem Fenster eingeben.

Um etwa den Desktop-Hintergrund auszuwechseln, kopieren Sie das neue Hintergrundbild (hier: image.jpg) in den entsprechenden Ordner, aus dem Gnome den Hintergrund lädt. Da sich das neue Hintergrundbild nicht im Verzeichnis des Live-Systems befindet, öffnen Sie ein neues Terminal-Fenster, kopieren die Bilddatei in den richtigen Ordner und aktivieren es mit den folgenden Befehlen

sudo su
cp image.jpg /root/usblive/chroot/usr/local/share/image.jpg
rm /root/usblive/chroot/etc/alternatives/desktop-background
ln -sf /usr/local/share/image.jpg /root/usblive/chroot/etc/alternatives/desktop-background

Wechseln Sie nun wieder in das Fenster, in dem Sie lh_build ausführen. Mit exit verlassen Sie den interactiven Modus. Jetzt übernimmt wieder live-helper und erstellt die Imagedatei /root/usblive/binary.img. Kopieren Sie diese abschließend wie oben beschrieben auf den USB-Stick, um Ihr eigenes Debian-System vom Stick zu booten.

Anhang: BIOS-Hotkeys

Sie haben sicher schon festgestellt, dass kein BIOS dem anderen gleicht. Das betrifft auch die Tasten, die Sie beim Start Ihres PCs betätigen müssen, um in den BIOS-Bereich zu gelangen. Verfolgen Sie die Ausgaben auf dem Bildschirm, häufig steht hier, welche Taste ins BIOS führt. Im Folgenden finden Sie eine ? unvollständige ? Übersicht über mögliche Tastenkombinationen:

AMI BIOS: <Entf>

Award BIOS: <Entf>, <Strg-Alt-Esc>

Phoenix BIOS: <Strg>-<Alt>-<Esc>, <Strg>-<Alt>-<S>, <Strg>-<Alt>-<Einfg>

Dell PC: <F1>, <F2>, <F3>, <Fn-F1> oder <Entf>

IBM/Lenovo Thinkpad: <F1> oder die blaue ?ThinkVantage? oder ?Access IBM? Taste.

Toshiba Notebooks: <Esc>, <F1>, bei neueren Notebooks betätigen Sie unter Umständen bereits während des Anschaltens <Esc> und nach der dann angezeigten Aufforderung <F1>.

Funktioniert keine der aufgeführten Tastenkombinationen, konsultieren Sie das Handbuch oder die Website des PC-Herstellers.

Dieser Beitrag basiert auf einem Artikel unserer Schwesterpublikation PC-Welt. (mha) (wl)