Linux Linux Mint persistent von USB Stick booten

Dieses Thema im Forum "Tutorials" wurde erstellt von Drago, 14 Juni 2008.

  1. Drago

    Drago X-User

    Hinweis: Dieses Tutorial bezieht sich auf Linux Mint 5 R1, siehe unteren Post für Linux Mint 6!

    Ok, ich bemühe mich alle Schritte einfach aufzuzeigen (sollte nicht allzu viel Arbeit sein):

    0) Vorbereitung:
    - Linux Mint 5 R1 runterladen (http://www.linuxmint.com)
    - Neueste Version von syslinux runterladen, derzeit v3.63 (http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.63.zip)
    - Mein Archiv runterladen (http://rapidshare.com/files/122265289/Drago.zip.html)

    1) Extrahiere das Mint 5 R1 ISO in den Ordner IMAGE und entpacke syslinux-3.63.zip nach syslinux-3.63

    2) Kopiere den Inhalt von IMAGE\isolinux\* nach IMAGE\*

    3) Lösche den Ordner IMAGE\isolinux und die Dateien IMAGE\isolinux.bin sowie IMAGE\isolinux.cfg.ori

    4) Benenne IMAGE\isolinux.cfg in IMAGE\syslinux.cfg um und ändere den Inhalt wie folgt (Achtung, unbedingt einen unix-fähigen Editor verwenden!):

    Code:
    
    default vesamenu.c32
    timeout 40
    
    menu background splash.jpg
    menu title Welcome to Linux Mint 5 Elyssa
    menu color border 0 #00eeeeee #00000000
    menu color sel 7 #ffffffff #33eeeeee
    menu color title 0 #ffeeeeee #00000000
    menu color tabmsg 0 #ffeeeeee #00000000
    menu color unsel 0 #ffeeeeee #00000000
    menu color hotsel 0 #ff000000 #ffffffff
    menu color hotkey 7 #ffffffff #ff000000
    menu color timeout_msg 0 #ffffffff #00000000
    menu color timeout 0 #ffffffff #00000000
    menu color cmdline 0 #ffffffff #00000000
    menu hidden
    menu hiddenrow 5
    label persistent
      menu label Start Linux Mint in ^persistent mode
      kernel /casper/vmlinuz
      append  file=/preseed/mint.seed boot=casper persistent initrd=/casper/initrd.gz quiet splash --
    menu default
    label live
      menu label Start ^Linux Mint
      kernel /casper/vmlinuz
      append  file=/preseed/mint.seed boot=casper initrd=/casper/initrd.gz quiet splash --
    label xforcevesa
      menu label Start Linux Mint in ^compatibility mode
      kernel /casper/vmlinuz
      append  file=/preseed/mint.seed boot=casper xforcevesa initrd=/casper/initrd.gz ramdisk_size=1048576 root=/dev/ram rw noapic noapci nosplash irqpoll --
    label memtest
      menu label ^Memory Test
      kernel memtest
    label local
      menu label ^Boot from local drive
      kernel /casper/chain.c32
      append hd1
    
    Alternativ kannst du auch meine syslinux2nd.cfg vom Archiv nehmen (-> in syslinux.cfg umbenennen)... ;)

    5) Überschreibe die Datei IMAGE\casper\initrd.gz mit der Datei aus dem Archiv. Ubuntu (und auch Mint) hat in der Datei einen Fehler, der es unmöglich macht die Distro persistent zu booten.
    Dies ist die originale, von mir gefixte initrd.gz des Linux Mint 5 R1 ISOs, also nicht für Ubuntu o.a. verwenden!

    6) Kopiere die Datei chain.c32 von syslinux-3.63\com32\modules\ nach IMAGE\casper\

    7) Nun zum Partitionieren des Sticks: Die wichtigste Frage jetzt lautet, ob du den gesamten Stick für's Linux Mint verwenden willst, oder lieber vorher noch eine FAT32 Partition für Daten erstellen willst. Also, ob dir lieber...

    Variante a: {FAT32 Partition | FAT16 Partition | ext2 Partition}
    Dabei kannst du vor der FAT16 Partition, die fürs IMAGE verwendet wird, noch eine Partition für sonstige Daten anlegen (ich verwende die erste Partition bspw. für Daten unter Windows oder für Filme, die ich mir auf dem DVD Player anschaue).

    ...oder...

    Variante b: {FAT16 Partition | ext2 Partition}

    ...ist. Das Partitionieren und Formatieren kannst du mit einem Tool deiner Wahl erledigen, ich würde diese beiden Schritte (also Schritt 7 und 8) unter Linux machen, eine kleine Hilfe hierzu findest du evtl. hier: http://www.pendrivelinux.com/2008/05/08/usb-ubuntu-804-persistent-install-tutorial/ (zeigt das Prinzip auf wie man unter Linux mit fdisk partitioniert, ist aber relativ selbsterklärend, andernfalls hilft "fdisk -?" oder "man fdisk" weiter *g*).
    Schritt 7 und 8 kannst du auch ganz am Anfang machen, aber spätestens hier, da der Stick im weiteren Verlauf partitioniert sein muss.

    Die Größe der Partitionen ist egal, lediglich die FAT16 Partition muss logischerweise mindestens die Größe von IMAGE\* haben, sollte aber auch nicht viel größer sein, da der restliche Platz quasi "verschwendet" wird (meine ist 725MB groß). Außerdem wichtig: Alle Partitionen sind Primärpartitionen.

    --------------------------------------------------

    Variante a:

    8) Die Befehle zum Formatieren der erstellten Partitionen lauten:
    Partition sdx1 (nenne ich im Weiteren Verlauf Laufwerk X): mkfs.vfat -F 32 -n <name> /dev/sdx1
    Partition sdx2 (nenne ich hier Laufwerk Y): mkfs.vfat -F 16 -n <name> /dev/sdx2
    Partition sdx3 (nenne ich hier Laufwerk Z): mkfs.ext2 -b 4096 -L casper-rw /dev/sdx3

    NB: das x von sdx1-sdx3 muss klarerweise durch einen anderen Buchstaben ersetzt werden (je nachdem welchen Buchstaben bei dir der USB Stick hat, mit "sudo fdisk -l" kannst du die Laufwerke auflisten oder grafisch mit "sudo gparted").

    9) So, jetzt wird der komplette Inhalt von IMAGE auf das Laufwerk Y kopiert oder verschoben.

    10) Führe folgende zwei Befehle in der Reihenfolge unter Windows aus (falls du Vista mit UAC verwendest in einer Administrator Shell):
    syslinux-3.63\win32\syslinux.exe -maf Y:
    syslinux-3.63\win32\syslinux.exe -maf X:

    Die ldlinux.sys vom Laufwerk Y kannst du evtl. löschen, die vom Laufwerk X nicht!

    11) Kopiere die Datei chain.c32 von syslinux-3.63\com32\modules\ auf das Laufwerk X. Kopiere ebenfalls die Datei syslinux1st.cfg nach Laufwerk X (-> wiederum nach syslinux.cfg umbenennen), die Folgendes enthält (dient wiederum nur zur Information, falls du etwas daran änderst, wiederum mit einem unix-konformen Editor):

    Code:
    default forward
    label forward
      kernel chain.c32
      append hd0 2
    
    12) Have fun! :)

    --------------------------------------------------

    Variante b:

    8) Die Befehle zum Formatieren der erstellten Partitionen lauten:
    Partition sdx1 (nenne ich im Weiteren Verlauf Laufwerk Y): mkfs.vfat -F 16 -n <name> /dev/sdx1
    Partition sdx2 (nenne ich hier Laufwerk Z): mkfs.ext2 -b 4096 -L casper-rw /dev/sdx2

    NB: das x von sdx1 und sdx2 muss klarerweise durch einen anderen Buchstaben ersetzt werden (je nachdem welchen Buchstaben bei dir der USB Stick hat, mit "sudo fdisk -l" kannst du die Laufwerke auflisten oder grafisch mit "sudo gparted").

    9) So, jetzt wird der komplette Inhalt von IMAGE auf das Laufwerk Y kopiert oder verschoben.

    10) Führe folgenden Befehl unter Windows aus (falls du Vista mit UAC verwendest in einer Administrator Shell):
    syslinux-3.63\win32\syslinux.exe -maf Y:

    11) Have fun! :)

    Hoffe es ist alles verständlich... wenn nicht... bitte nachfragen! Feedback ob es funktioniert hat ist ebenfalls erwünscht. ;)

    EDITed by Drago: Verständlicher ausgedrückt
  2. Drago

    Drago X-User

    AW: Linux Mint persistent von USB Stick booten

    Um diesen Post auf den neuesten Stand zu halten (da ja seit einer Weile Linux Mint 6 raus ist...), findet ihr im Folgenden das aktualisierte Howto. Viel Spaß ;)

    Ok, ich bemühe mich alle Schritte noch einfacher aufzuzeigen:
    0) Vorbereitung:
    - Linux Mint 6 runterladen (Main Page - Linux Mint)
    - Neueste Version von syslinux runterladen, derzeit v3.72 (http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.72.zip)
    - Optional: Vorkonfigurierte syslinux.cfg's (Drago2.zip ... at uploaded.to - Free File Hosting, Free Image Hosting, Free Music Hosting, Free Video Hosting, ...)

    1) Extrahiere das Linux Mint 6 in den Ordner LINUX und entpacke syslinux-3.72.zip nach SYSLINUX

    2) Lösche folgende Dateien im LINUX-Ordner:
    - autorun.inf
    - lmmenu.exe
    - mint4win.exe
    - isolinux\isolinux.bin

    3) Kopiere den Inhalt von LINUX\isolinux\* nach LINUX\* und entferne anschließend den Ordner isolinux.

    4) Benenne die Datei isolinux.cfg in syslinux.cfg um und ändere den Inhalt wie folgt (Achtung, unbedingt einen unix-fähigen Editor verwenden!):

    Code:
    
    default vesamenu.c32
    timeout 40
    
    menu background splash.jpg
    menu title Welcome to Linux Mint 6 Felicia Main Edition
    menu color border 0 #00eeeeee #00000000
    menu color sel 7 #ffffffff #33eeeeee
    menu color title 0 #ffeeeeee #00000000
    menu color tabmsg 0 #ffeeeeee #00000000
    menu color unsel 0 #ffeeeeee #00000000
    menu color hotsel 0 #ff000000 #ffffffff
    menu color hotkey 7 #ffffffff #ff000000
    menu color timeout_msg 0 #ffffffff #00000000
    menu color timeout 0 #ffffffff #00000000
    menu color cmdline 0 #ffffffff #00000000
    menu hidden
    menu hiddenrow 5
    label persistent
      menu label Start Linux Mint in ^persistent mode
      kernel /casper/vmlinuz
      append  file=/preseed/mint.seed boot=casper persistent initrd=/casper/initrd.gz quiet splash --
    menu default
    label live
      menu label Start ^Linux Mint
      kernel /casper/vmlinuz
      append  file=/preseed/mint.seed boot=casper initrd=/casper/initrd.gz quiet splash --
    label xforcevesa
      menu label Start Linux Mint in ^compatibility mode
      kernel /casper/vmlinuz
      append  file=/preseed/mint.seed boot=casper xforcevesa initrd=/casper/initrd.gz ramdisk_size=1048576 root=/dev/ram rw noapic noapci nosplash irqpoll --
    label memtest
      menu label ^Memory Test
      kernel memtest
    label local
      menu label ^Boot from local drive
      kernel /casper/chain.c32
      append hd1
    
    Alternativ kannst du auch meine syslinux2nd.cfg des optionalen Archivs verwenden (-> diese ist jedoch in syslinux.cfg umzubenennen)... ;)

    5) Kopiere die Datei chain.c32 von SYSLINUX\com32\modules\ nach IMAGE\casper\

    6) Zum komplizierteren Teil: Die wichtigste Frage lautet jetzt, ob man den gesamten Stick für Linux Mint verwenden will, oder der Stick auch groß genug ist auch Daten auf dem Stick zu beherbergen. Also, ob es...

    Variante a: {FAT32 Partition | FAT16 Partition | ext2 Partition}
    Dabei wird vor der FAT16 Partition, die für LINUX verwendet wird, noch eine Partition für sonstige Daten angelegt (ich verwende die erste Partition bspw. für Daten unter Windows oder für Filme, die ich mir auf dem DVD Player anschaue).

    ...oder...

    Variante b: {FAT16 Partition | ext2 Partition}

    ...werden soll. Das Partitionieren und Formatieren erledigt man einfach mit einem Tool seiner / ihrer Wahl, ich würde diese beiden Schritte (also Schritt 6 und 7) unter einem Linux-Betriebssystem erledigen (sollte keines zur Verfügung stehen, nehmt einfach die live-cd des Linux Mints, die ihr euch ja runtergeladen habt). Eine kleine Hilfe hierzu findet man evtl. hier: USB Ubuntu 8.04 Persistent install using Windows | USB Pen Drive Linux (zeigt das Prinzip auf wie man unter Linux mit fdisk partitioniert, ist aber relativ selbsterklärend, andernfalls hilft "fdisk -?" oder "man fdisk" weiter).

    Die Größe der Partitionen ist egal, lediglich die FAT16 Partition muss logischerweise mindestens die Größe von LINUX\* haben, sollte aber auch nicht viel größer sein, da der restliche Platz quasi "verschwendet" wird (meine ist 725MB groß). Außerdem wichtig: Alle Partitionen sind Primärpartitionen.

    --------------------------------------------------

    Variante a:

    7) Die Befehle zum Formatieren der erstellten Partitionen lauten:
    Partition sdx1 (bezeichne ich im weiteren Verlauf als Laufwerk X): mkfs.vfat -F 32 -n <name> /dev/sdx1
    Partition sdx2 (benenne ich als Laufwerk Y): mkfs.vfat -F 16 -n <name> /dev/sdx2
    Partition sdx3: mkfs.ext2 -b 4096 -L casper-rw /dev/sdx3

    NB: das x von sdx1-sdx3 muss klarerweise durch einen anderen Buchstaben ersetzt werden! (je nachdem welchen Buchstaben der USB Stick hat). Mittels "sudo fdisk -l" kann man sich die Laufwerke auflisten lassen oder grafisch mit "sudo gparted" - falls es sich um ein GNOME Linux handelt).

    8) So, jetzt wird der komplette Inhalt von LINUX auf das Laufwerk Y kopiert oder verschoben.

    9) Führe folgende zwei Befehle in der Reihenfolge unter Windows aus (falls du Vista mit UAC verwendest in einer Administrator Shell):
    SYSLINUX\win32\syslinux.exe -maf Y:
    SYSLINUX\win32\syslinux.exe -maf X:

    10) Kopiere die Datei chain.c32 von SYSLINUX\com32\modules\ aufs Laufwerk X. Erstelle ebenfalls folgende syslinux.cfg Datei mit einem unix-konformen Editor (wiederum befindet sich im optionalen Archiv die Datei syslinux1st.cfg, die genau folgenden Inhalt aufweist):

    Code:
    default forward
    label forward
      kernel chain.c32
      append hd0 2
    
    11) Have fun! :)

    --------------------------------------------------

    Variante b:

    7) Die Befehle zum Formatieren der erstellten Partitionen lauten:
    Partition sdx1 (bezeichne ich im weiteren Verlauf als Laufwerk Y): mkfs.vfat -F 16 -n <name> /dev/sdx1
    Partition sdx2 (benenne ich Laufwerk Z): mkfs.ext2 -b 4096 -L casper-rw /dev/sdx2

    NB: das x von sdx1-sdx3 muss klarerweise durch einen anderen Buchstaben ersetzt werden! (je nachdem welchen Buchstaben der USB Stick hat). Mittels "sudo fdisk -l" kann man sich die Laufwerke auflisten lassen oder grafisch mit "sudo gparted" - falls es sich um ein GNOME Linux handelt).

    8) So, jetzt wird der komplette Inhalt von LINUX auf das Laufwerk Y kopiert oder verschoben.

    9) Führe folgenden Befehl unter Windows aus (falls du Vista mit UAC verwendest in einer Administrator Shell):
    SYSLINUX\win32\syslinux.exe -maf Y:

    10) Have fun! :)

    --------------------------------------------------

    11) Sollte beim Booten ein "Boot Error" oder "Booting Error" auftreten, versucht es mit folgenden Windows Befehlen noch einmal:
    SYSLINUX\win32\syslinux.exe -s Y:
    ( SYSLINUX\win32\syslinux.exe -s X: )

Diese Seite empfehlen