4.3. Dateien vorbereiten für das Booten von einem USB-Memory-Stick

Um den USB-Stick vorzubereiten, benötigen Sie ein System, auf dem GNU/Linux bereits läuft und das USB unterstützt. Auf aktuellen GNU/Linux-Systemen sollte der USB-Stick automatisch erkannt werden, sobald Sie ihn einstecken. Falls nicht, sollten Sie sicherstellen, dass das usb-storage-Kernelmodul geladen ist. Beim Einstecken wird dem USB-Stick ein Gerät namens /dev/sdX zugewiesen, wobei X ein Buchstabe im Bereich zwischen a und z ist. Es sollte Ihnen möglich sein zu erkennen, welches Gerät dem Stick zugewiesen wurde, indem Sie den Befehl dmesg ausführen, nachdem der USB-Stick eingesteckt wurde. Um den Stick zu beschreiben, müssen Sie eventuell noch mit dem entsprechenden Schalter am Stick den Schreibschutz deaktivieren (falls Ihr Stick solch einen Schalter hat).

Warnung

Die in diesem Abschnitt beschriebenen Vorgehensweisen werden alle Daten zerstören, die sich bereits auf dem Gerät befinden! Vergewissern Sie sich, dass Sie den korrekten Gerätenamen (nämlich den Ihres USB-Sticks) verwenden. Wenn Sie einen falschen Namen verwenden, könnte dies dazu führen, dass Sie z.B. alle Daten auf Ihrer Festplatte verlieren!

4.3.1. Einen USB-Stick vorbereiten mit einem Hybrid-CD- oder -DVD-Image

Debian-CD- und -DVD-Images können jetzt direkt auf einen USB-Stick geschrieben werden, was ein sehr einfacher Weg ist, einen bootfähigen USB-Stick zu erstellen. Wählen Sie einfach ein CD- oder DVD-Image, das auf Ihren Stick passt. Auf Abschnitt 4.1, „Offizielle Debian GNU/Linux-CD/DVD-ROMs“ finden Sie Informationen darüber, wie Sie sich ein CD- oder DVD-Image besorgen.

Alternativ können Sie bei sehr kleinen USB-Sticks, die nur ein paar Megabyte groß sind, das mini.iso-Image aus dem netboot-Verzeichnis herunterladen (Abschnitt 4.2.1, „Wo Sie die Installations-Images finden“ gibt nähere Informationen, wo Sie dies finden).

Das CD- oder DVD-Image, das Sie ausgewählt haben, sollte direkt auf den USB-Stick geschrieben werden, wobei die vorher vorhandenen Daten überschrieben werden. Auf einem vorhandenen GNU/Linux-System kann das Image wie folgt auf den USB-Stick geschrieben werden (nachdem Sie sichergestellt haben, dass der Stick nicht im Dateisystem eingebunden ist):

# cp debian.iso /dev/sdX
# sync

Wichtig

Einfach das CD- oder DVD-Image wie hier gezeigt auf USB zu schreiben sollte für die meisten Benutzer funktionieren. Die anderen unten erwähnten Optionen sind komplexer und hauptsächlich für Leute mit speziellen Bedürfnissen gedacht.

Das Hybrid-Image auf dem Stick beansprucht nicht dem vollständigen Speicherplatz, daher können Sie in Betracht ziehen, den freien Platz zu verwenden, um Firmware-Dateien oder Pakete bzw. andere Dateien Ihrer Wahl abzulegen. Dies könnte nützlich sein, wenn Sie nur einen USB-Stick haben oder einfach alles, was Sie benötigen, auf einem Datenträger zusammenhalten möchten.

Sie erstellen dazu eine zweite FAT-Partition auf dem Stick, binden die Partition ein und kopieren oder entpacken die Firmware/Dateien dorthin. Zum Beispiel:

# mount /dev/sdX2 /mnt
# cd /mnt
# tar zxvf /pfad/zur/firmware.tar.gz
# cd /
# umount /mnt

Falls Sie das mini.iso-Image auf den USB-Stick kopiert haben, muss die zweite Partition nicht mehr erstellt werden, da sie praktischerweise bereits vorhanden ist. Ziehen Sie den Stick heraus und stecken Sie ihn neu ein, dann sollten zwei Partitionen sichtbar sein.

4.3.2. Dateien manuell auf den USB-Stick kopieren

Ein alternativer Weg zur Einrichtung des USB-Sticks ist das manuelle Kopieren der Installer-Dateien und eines CD-Images auf den Stick. Beachten Sie, dass der USB-Stick idealerweise mindestens 1 GB groß sein sollte (kleinere Setups sind möglich, wenn Sie gemäß Abschnitt 4.3.3, „Dateien manuell auf den USB-Stick kopieren – der flexible Weg“ vorgehen).

Es gibt ein Komplett-Image hd-media/boot.img.gz, das alle Dateien des Installers enthält (inklusive Kernel) sowie den Bootloader syslinux mit der zugehörigen Konfigurationsdatei.

Bedenken Sie, dass diese Methode, obwohl sie bequem ist, einen gravierenden Nachteil hat: die logische Größe des Sticks ist auf 1 GB begrenzt, auch wenn die Kapazität des USB-Sticks eigentlich größer ist. Falls Sie den Stick jemals wieder für einen anderen Zweck verwenden und die volle Kapazität zurückbekommen möchten, müssen Sie ihn neu paritionieren und die Dateisysteme neu erstellen.

Um oben erwähntes Komplett-Image zu verwenden, extrahieren Sie es einfach direkt auf Ihren USB-Stick:

# zcat boot.img.gz > /dev/sdX

Binden Sie danach den USB-Memory-Stick ins Dateisystem ein (mount /dev/sdX /mnt), der jetzt ein FAT-Dateisystem enthält, und kopieren Sie ein Debian ISO-Image (Netinst oder eine Komplett-CD) dorthin. Lösen Sie die Laufwerkseinbindung des Sticks (umount /mnt) – das war's.

4.3.3. Dateien manuell auf den USB-Stick kopieren – der flexible Weg

Wenn Sie flexibler sein oder einfach nur wissen möchten, was passiert, sollten Sie folgende Methode benutzen, um die Dateien auf den Stick zu befördern. Ein Vorteil dieser Methode ist, dass Sie – falls die Kapazität Ihres USB-Sticks dafür ausreicht – die Möglichkeit haben, jegliches ISO-Image (sogar ein DVD-Image) darauf zu kopieren.

4.3.3.1. Den USB-Stick partitionieren

Wir werden hier erläutern, wie Sie den Memory-Stick einrichten, so dass nur die erste Partition genutzt wird statt des kompletten USB-Speichers.

Anmerkung

Da die meisten USB-Sticks mit einer einzelnen FAT16-Partition vorkonfiguriert geliefert werden, müssen Sie den Stick möglicherweise nicht neu partitionieren oder formatieren. Falls es trotzdem nötig ist, nutzen Sie cfdisk oder ein anderes Partitionierungswerkzeug, um eine FAT16-Partition zu erzeugen[3], erzeugen Sie einen Master-Boot-Record (MBR), indem Sie Folgendes eingeben:

# install-mbr /dev/sdX

Das Programm install-mbr ist im Debian-Paket mbr enthalten. Erstellen Sie dann ein Dateisystem:

# mkdosfs /dev/sdX1

Achten Sie darauf, dass Sie den richtigen Gerätenamen für den USB-Stick verwenden. Das Programm mkdosfs ist im Debian-Paket dosfstools enthalten.

Um den Kernel starten zu können, nachdem vom USB-Stick gebootet wurde, werden wir einen Bootloader auf dem Stick ablegen. Obwohl jeder Bootloader (wie z.B. lilo) funktionieren sollte, wird empfohlen, syslinux zu verwenden, da er eine FAT16-Partition benutzt und über eine Textdatei konfiguriert werden kann. Jedes Betriebssystem, das das FAT-Dateisystem unterstützt, kann verwendet werden, um die Konfiguration des Bootloaders zu verändern.

Um syslinux auf die FAT16-Partition des USB-Sticks zu befördern, installieren Sie die Pakete syslinux und mtools auf Ihrem System und führen dann aus:

# syslinux /dev/sdX1

Hier nochmals die Warnung, den richtigen Gerätenamen zu verwenden. Die Partition darf nicht ins Dateisystem eingebunden sein, wenn syslinux ausgeführt wird. Durch diese Prozedur wird ein Boot-Sektor auf die Partition geschrieben und die Datei ldlinux.sys erstellt, die den Bootloader-Code enthält.

4.3.3.2. Ein Installer-Image auf den Stick kopieren

Binden Sie die Partition ins Dateisystem ein (mount /dev/sdX1 /mnt) und kopieren Sie die folgenden Installer-Image-Dateien auf den Stick:

  • vmlinuz oder linux (Kernel-Binär-Datei)

  • initrd.gz (Initial-RAM-Disk-Image)

Sie können wählen zwischen dem textbasierten und dem grafischen Installer. Letzteren finden Sie im gtk-Unterverzeichnis. Wenn Sie die Dateien umbenennen möchten, beachten Sie, dass syslinux nur Dateinamen im DOS-(8.3)Format verarbeiten kann.

Als nächstes sollten Sie eine Konfigurationsdatei syslinux.cfg erstellen, die mindestens die folgenden zwei Zeilen enthält (verwenden Sie als Name für die Kernel-Binärdatei linux, wenn Sie ein netboot-Image benutzen):

default vmlinuz
append initrd=initrd.gz

Falls Sie den grafischen Installer verwenden möchten, sollten Sie vga=788 zur zweiten Zeile hinzufügen. Weitere Parameter können nach Wunsch hinzugefügt werden.

Um den Boot-Prompt zu aktivieren und so weitere Anpassungen der Parameter zuzulassen, fügen Sie eine Zeile mit dem Inhalt prompt 1 hinzu.

Wenn Sie ein hd-media-Image benutzt haben, sollten Sie jetzt noch die ISO-Datei eines Debian-ISO-Images[4] auf den Stick kopieren. Danach lösen Sie die Einbindung der Partition wieder (umount /mnt).



[3] Vergessen Sie nicht, die bootable-Markierung (Boot-Flag) zu setzen.

[4] Sie können dafür ein Netinst- oder ein Komplett-CD-Image verwenden (siehe Abschnitt 4.1, „Offizielle Debian GNU/Linux-CD/DVD-ROMs“). Stellen Sie sicher, dass das Image Ihrer Wahl auf den Stick passt. Beachten Sie, dass das netboot mini.iso-Image für diesen Zweck nicht geeignet ist.