Diese Beschreibung habe ich mir als Anleitung zu meiner Diplomarbeit erstellt. Mein Ziel war es eine angepasste Knoppix Version von meinem USB Stick zu booten, und auf diesem auch Daten speichern zu können. Das HowTo wird sich hauptsächlich in Windows realisieren lassen. So können Um- (ich sage lieber Auf-) steiger ihr erstes Linux von USB ganz einfach ausprobieren. Es wird lediglich 1-mal nötig sein den USB Stick üder eine Knoppix CD zu partitionieren. Ich gebe mir die größte Mühe diese Schritte so ausführlich wie möglich zu beschreiben. Für alle Linux'ler verweise ich an dieser Stelle auf die zahlreichen HowTos, die es im Nezt dazu gibt.

 

Ich möchte hier insbesondere Klaus Knopper von Knoppix, TDot für das geniale Knoppix-USB-HowTo und Jürgen Egeling für die TYPO3-Live-CD danken, die alle zum Erfolg meiner Diplomarbeit mehr oder weniger beigetragen haben.

 

 

Anforderungen
  • viel Geduld
  • einen USB Stick mit mind. 128MB
  • ein Computer der von USB booten kann(neuere Modelle können das alle)
  • eine CD-R und einen CD-Brenner mit Brennsoftware
  • genügend freier Platz auf dem USB Stick. Ich würde gleich am Anfang vom Stick ein Backup machen, da die Installation alle Daten auf dem Stick löscht.
  • Das Damn Smal Linux von hier
  • Die Daemon Tools von hier
  • TESTDISK von hier
Vorgehensweise / Zweck diese Dokuments

Warum ein Knoppix auf einem USB Stick? Viele Menschen benutzen Ihre USB Sticks hauptsächlich um darauf Daten und Dokumente zu speichern, damit sie diese jederzeit parat haben. Häufig sind das Adressen, E-Mails, Bookmarks oder auch MP3 Lieder, falls der USB Stick als Musik-Player ausgelegt ist. Für mich sollte es aber ein wenig mehr sein. Es wäre sicherlich noch schöner, wenn ich nicht nur meine Daten, sondern auch gleich mein ganzes Betriebssystem mit mir spazieren führen könnte. Ich müsste mich nicht bei anderen Leuten in deren System zurecht finden und kann jeder Zeit auf meine Lieblingsanwendungen zugreifen.


Dazu muss man das System booten können. Das ist für alle Neulinge der Vorgang der sich beim drücken des Startknopfes am Computer abspielt, bis sich das Windows logo zeigt und die Melodie ertönt. Nun soll der USB Stick aber hier nicht Microsofts Windows booten sondern ein besonderes Linux. Es heißt Knoppix und wird von Klaus Knopper entwickelt. Der Computer mit dem Windows wird beim starten des Knoppix-Systems vom USB Stick nicht beschädigt. Nachdem man das System am Ende wieder ausgeschaltet hat und den USB Stick auf dem Computer entfernt hat, startet Windows wieder wie gewohnt.


Das original HowTo zum booten via USB ist in 3 Abschnitte unterteilt, die noch weitere Tricks und Tipps beschreiben. Ich werde hier allerdings nur auf den für mich interessanten Abschnitt 1 eingehen. Dieser beschreibt die Installation von Damn Small Linux(DSL) auf einem USB Stick. DSL ist eine verkleinerte Knoppix Version, die mit lediglich 50MB Platz auskommt. Knoppix selbst ist normalerweise 700MB groß und besitzt viel mehr Anwendungen, als ich wirklich benötige. Wer allerdings eine entsprechend großen USB Stick besitzt(ich habe 1GB), kann dies auch gerne mal ausprobieren. Alle weiteren Informationen zu den Abschnitten 2 und 3 gibt es auf den Seiten von TDot(siehe oben, leider nur in Englisch).

 

Den Computer von USB booten lassen

Um ein Betriebssystem von einem USB Stick zu starten, muss man sich zunächst mit dem BIOS des Computers befassen. Das BIOS ist das erste Programm, das beim Booten eines Rechners ausgeführt wird. Es wird noch vor dem Betriebssystem ausgeführt und ist von ihm unabhängig. Das BIOS ist ein Programm, das in einem Festspeicher (ROM, EPROM oder Flash-Speicher) abgelegt ist, der sich auf der Hauptplatine befindet. Es initialisiert die Hardware, startet das eigentliche Betriebssystem und enthält auch eine Sammlung von Ein-/Ausgaberoutinen, auf die das Betriebssystem später zurückgreifen kann. Da wir unser Betriebssystem von USB booten wollen, müssen wir also einen Weg finden, wie wir unserem BIOS das Booten von der Festplatte erst dann erlauben, wenn es zuvor keinen USB Stick an einer seiner Schnittstellen gefunden hat. Wer sich sicher ist, das sein Computer von USB booten kann, der braucht diesen Abschnitt nicht zu lesen.

 

Die hier aufgezeigten Möglichkeiten bilden nur ein Bruchteil der möglichen Bootoptionen ab. Generell können oft nur neuere Computer von USB booten. Im Zweifel sollte man den Herstellen dazu kontaktieren. Beim meinem Notebook(IBM Thinkpad R40) muss ich zum booten die F12 Taste nach dem Start gedrückt halten und über das Auswahlmenü die Reihenfolge der "Boot-Devices" fest legen. Der USB Stick wird dabei als SCSI Festplatte erkannt. Über die Return-Taste werden einem alle erkannten Festplatten angezeigt. Durch F6 und F7 kann man die Reihenfolge verändern. Ist der USB Stick an erster Position, kann man durch F10 das BIOS verlassen und die Änderungen speichern. Beim meinem Rechner zu Hause ist das ganze ein wenig anders. Hier muss ich die "Entf"-Taste gedrückt halten und kann dann unter dem Eintrag "Advanced Settings" die Reihenfolge fest legen. Hier gibt es Einträge für First, Second und Third-Boot-Device. Diese erreicht man über drei Pfeiltasten. Mit "Bild-Hoch" und "Bild-Runter" kann man dann für das First-Boot-Device den USB Stick auswählen. Manchmal wird dieser auch als USB-Disk oder USB-HDD angegeben. Welcher der richtige ist, kann man leider nur durch Ausprobieren fest stellen. Also nicht gleich aufgeben, wenn es beim ersten Versuch nicht klappt. Der Computer wird dabei nicht beschädigt. Hat das booten nicht geklappt, kommt oft eine Fehlermeldung wie "SYSTEM COULD NOT FIND BOOT DEVICE". Dann muss man nur einen Restart machen und erneut das BIOS anpassen. Es ist anfangs sicherlich gut die Einstellungen im BIOS auf einem Zettel zu notieren, damit man im Zweifel die Änderungen wieder auf den Ausgangszustand zurücksetzen kann.

Damn Smal Linux DSL

Seit ein paar Tagen ist nun die Version 1.o von DSL erschienen. Es gibt verschiedenen "Arten", die auf den zahlreichen Mirror Servern zum Download bereit stehen. Für diese HowTo habe ich die ganz normale Version dsl-xxx.iso verwendet (xxx ist die Versionsnummer). Auch wenn es dort Syslinux und USB Versionen von DSL gibt, und wir hier tatsächlich auch Syslinux und USB verwenden, kann ich für die anderen Versionen keine Garantie geben, das irgend etwas später funktioniert. Also bitte die ganz normale Version herunter laden! Kleiner Tipp: Der Download funktioniert von den belgischen Seiten sehr gut.

Ich werde im Verlauf meiner Diplomarbeit vielleicht auch ein eigenes ISO auf Basis von Knoppix hier zum Download anbieten. Dieses soll die benötigten Dateien dann bereits enthält. Momentan soll uns aber die "out-of-the-box" Version genügen.

Teil A: Einrichten des boot-Sektors auf dem USB-Stick

  • Nun wird es Zeit sich die entsprechende Software zu besorgen. Also werden wir zuerst mal das DSL herunter laden. (ca. 50 MB)
  • Während der Download läuft, können wir auch schon mal das Deamon Tool runter laden
  • Und weil es so schön ist werden wir uns auch gleich das TestDisk besorgen. Das TestDisk Tool scheint nicht mit allen USB Sticks zu funktionieren. Ich selbst habe einen 1GB Stick von Connect3D und hatte keine Probleme damit. Dennoch scheint die Software recht fehlerhaft zu sein. Jeder ist also SELBST FÜR SEIN HANDELN VERANTWORTLICH!!!
  • Nun werden wir als erstes mal das TestDisk installieren.
  • Das kleine TestDisk Tool baut den MBR (Master Boot Record) auf dem USB Stick neu auf. Es scheint so, dass die Probleme mit der Software nur dann auftreten, wenn noch weitere USB Geräte am Computer angeschlossen sind. Also bitte zuvor ALLE (Tastatur und Maus ggf. durch PS2-Version ersetzten) USB Geräte außer dem Stick entfernen.
  • Beim Starten des Programms wählt man nun unter "Device" den USB Stick aus. Dieser soll nun mit dem "Filesystem" FAT formatiert werden. Bitte nicht das FAT32 auswählen. Anscheinen ist der Syslinux Bootloader den wir später verwenden werden da sehr genau.
  • Bitte nicht das "quick format" auswählen und auch nicht das "DOS bootable" die brauche wir beide nicht :-) Einfach Start klicken und abwarten. Es ist hier weniger wichtig, das der USB Stick neu formatiert wird als die Tatsache, das wir den MBR neu beschrieben haben und das Dateisystem auf FAT umgestellt haben.
  • Nun brauchen wir als nächstes SYSLINUX, das man direkt hier bekommt. Ich habe zuerst eine aktuelle Version 3.x verwendet. Das HowTo von TDot brachte mich dann letztendlich auf Version 2.11. Warum es genau die sein muss, weiss ich auch nicht. Fakt ist, es funktioniert bei mir nur mit dieser Version.
  • Nachdem nun SYSLINUX installiert ist, öffnet man ein DOS-Fenster (Start-> Programme-> Zubehör-> Eingabeaufforderung) und wechselt in das Verzeichnis von Syslinux. Nun gibt man folgendes auf der Kommandozeile ein. syslinux.exe X: wobie das X der Laufwerksbuchstabe das USB-Sticks darstellt.
  • Das Ergebnis kann man sich im Windows-Explorer anschauen. Auf unserem USB-Stick sollte sich nun die Datei "ldlinux.sys" befinden. Es kann sein, dass bei machen Windows Versionen die "Systemdateien" ausgeblendet sind. Also nicht gleich erschrecken, wenn der USB Stick leer erscheint. Die Ansicht kann man im Windows-Explorer über Extras-> Ordneroptionen einschalten.
Teil B: Korrektur der Partitionieruns-ID

Dieser Abschnitt beschäftigt sich mit dem Problem des HP Tools. Es setzt den hexadezimal Code einer Partition auf die ID "e", was einem "Windows95 FAT16 LBA" entspricht. Diese ID verursacht aber bei vielen Systemen einen Fehler. Deshalb wollen wir hier die ID auf "6" setzten, was einem "FAT16" entspricht. Die Änderung scheint bei vielen Benutzern die größten Probleme zu bereiten. Leider gibt es keine Free- oder Shareware, die eine Änderung der Partitionierungs-ID unter Windows zuläßt. "Partitition Magic" und "Disc Director" sind zwei kommerzielle Produkte die dies unterstützen. Allerdings auch nur in der Vollversion und nicht als 30-Tage Demo. Den Workaround werden wir mit eine Knoppix CD schaffen. TDot beschreibt das gleiche auf seiner Seite. Er benutzt dazu aber ein eigenes Tool, das ich selbst nicht sehr praktisch finde.

  • Das nächste was wir also brauchen ist eine Knoppix-CD. Am Einfachsten ist, man schaut mal seine Heft-CDs der letzten Wochen an. Alternativ kann man sich auch das DSL-Image mit einer Brennsoftware auf CD brenne. (unter Nero heisst das dann "Image auf Disk brennen".
  • Nun werden wir uns in fremde Gefilde begeben und unseren Computer das Knoppix von CD booten lassen. Dabei muss der USB-Stick bereits am Computer angeschlossen sein.
  • Ganz wichtig dabei ist, dass ALLE anderen USB Geräte vom Computer entfernt sind. Ich meine wirklich ALLE, also auch die USB-Maus und Tastatur. Notfalls muss man sich bei seine Bekannten eine Maus und Tastatur mit PS2-Anschluss ausleihen.
  • Beim Starten von Knoppix muss man in der boot: Konsole einfach nur "Enter" drücken und das System wird gestartet.
  • Mit hoher Wahrscheinlichkeit wird der USB-Stick als "sda1" eingebunden. Um uns zu vergewissern, werden wir auf das Monitor-Symbol in der Task-Leiste unter Knoppix klicken. (bei Linux reicht immer ein Klick, um Programme zu starten. Es gibt also keine Doppelklick wie in Windows)
  • Hier geben wir nun folgenden Befehl ein: "sudo su" um uns als Administrator am System auszugeben. Hat alle geklappt, steht nun am Anfang einer jeden Zeile eine kleines Raute-Symbol (#).
  • Als nächsten lassen wir uns alle Speichermedien und ihre Partitionen anzeigen. Das geht mit "fdisk -l". In der Liste sollte dann auch unser USB-Stick auftauchen. Der Abschnitt beginnt mit Platte /dev/sda und zeigt die Größe des Sticks in MB an. Sollten hier mehr als eine Platte mit /dev/sda oder /dev/sdb usw. stehen, muss man sich noch einmal genau vergewissern, das man die Richtige anhand der Größe auswählt. Bei mir steht dort dann 1024MB für meinen 1GB USB-Stick.
  • Nun starten wir fdisk für unseren USB-Stick mit "fdisk /dev/sda" oder auch sdb usw. (Es kommt hier keine 1 hinter das sda!)
  • Wir befinden uns nun im fdisk-Programm um den Stick zu partitionieren. Mit "t" werden wir nun die ID ändern. Da der Stick(hoffentlich) nur eine Partition enthält, wählt fdisk diese automatisch aus. Sollte der Stick mehrere Partitionen enthalten wähle wir die Partition 1 aus. Nun wird man nach der HEX Nummer gefragt. Man gibt also "6" ein. Als nächstes werden wir unsere Änderungen gleich mal überprüfen. Dazu wird über das "p" die Tabelle der Partitionen auf dem Stick inkl. ihrer Hex-Nummer angezeigt. Dort sollte also in der ersten Partition unser Fat16 stehen. Stimmt soweit alles, können wir mit "w" fdisk verlassen und die Änderungen auf den Stick schreiben.
  • Das war für den Anfang auch schon alles in Linux. Über das "K-Menü" können wir Knoppix herunter fahren und den USB-stick dann entfernen.
  • Am Ende fordert Knoppix einen auf die CD zu entfernen und Return zu drücken. Jetzt ist es an der Zeit wieder mit Windows zu starten :-)
Teil C: DSL auf dem Stick installieren
  • Den Download von DSL haben wir ja zu Beginn erledigt. Nun muss man nur noch die Datei entpacken. Das Ergebnis sollte eine ca. 50MB große iso-Datei sein.(wer will kann hier auch ein beliebig anderes Knoppix Derivat nehmen z.B. TYPO3-Live)
  • Ebenso sollte auch der Download des Demon Tools fertig sein. Diese wollen wir nun auch gleich installieren. Nach erfolgreicher Installation wird man unter Windows ein neues "virtuelles" Laufwerk finden.
  • In der Task-Leiste befindet sich nach dem Start des Demon-Tools ein rotes Icon. Über einen rechts-Klick könne wir nun unsere ISO-Datei "mounten" indem wir auf den Reiter "Virtual CD/DVD-Rom" gehen und dort "Device 0" "Mount Image" auswählen. Über das sich öffnende Fenster kann man nun die ISO-Datei auf der Festplatte auswählen.
  • Im Explorer könne wir nun auf das neue Laufwerk zugreifen. Bei mir hat Windows den Buchstaben "f" verwendet. Im Daemon-Toll kann man dies aber auch raus finden, indem man noch einmal auf den Reiter "Mount Image" geht und dort den Buchstaben abließt.
  • Alles was man nun unter dem Laufwerk findet kopiert man als nächstes auf den USB-Stick.
  • Ist alles kopiert, klickt man sich im Windows Explorer auf den USB-Stick, wechselt in das Verzeichnis boot\isolinux und verschiebt alles aus diesem Verzeichnis auf die unterste Ebene des Sticks(bei mir also direkt in f:).
  • Knoppix an sich wird immer im "read-only" Modus gestartet. Wir können also nicht direkt auf dem Stick unsere Daten schreibe. Gerade dies wollten wir aber. Um nun der Knoppix Version das "schreiben" direkt auf dem Stick zu erlauben auf dem auch das Knoppix läuft, müssen wir ein kleines Skript namens linuxrc in der Datei minirt26.gz ändern. (bei manchen gibt es auch noch die Datei minirt24.gz, je nachdem ob man die Knoppix Version mit Kernel 2.4 oder Kernel 2.6 starten will) In diesem Skript gibt es eine Zeile mit Parametern "-o ro" die man dort löschen muss. Der Vorteil ist bei dieser Lösung natürlich das einfache Speichern von Daten direkt auf dem Stick. Der Nachteil ist folgender: Wird das Knoppix System nicht ordentlich über das K-Menü herunter gefahren, kann es zu Datenverlusten kommen und im schlimmsten Fall zu einem Knoppix das sich nicht mehr booten lässt.
  • Nun müssen wir nur noch ein wenig aufräumen und das leere boot-Verzeichnis auf dem Stick löschen. Genauso können wir auch das isolinux Verzeichnis löschen. Schließlich haben wir alle Dateien daraus auf die root-Ebene kopiert.
  • Nun bleibt zum Schluss nur noch die Datei isolinux.cfg in syslinux.cfg umzubenennen und die Datei isolinux.bin zu löschen.

Nun bist du fertig!  Willst du es gleich mal versuchen? Auf einem Computer neueren Baujahrs kommt man über "Entf" in das Bios und kann dort USB-Zip, USB-Floppy oder USB-FDD angeben. Welche Version bei dir funktioniert, muss man einfach mal ausprobieren. Bei manchen Laptops kann es auch sein, dass man das Bios  über die "Esc" Taste oder eine der F-Tasten erreicht. Die nötigen Infos dazu findet man im Handbuch. Viel Spass :-)