Linux vollständig auf USB-Stick einrichten
Stand: 30.05.2024
In dieser Anleitung geht es darum, Linux mit (U)EFI vollständig auf einen USB-Datenträger einzurichten. Auf dem verwendeten Beispielrechner befinden sich bereits eine EFI-Systempartition und neben Windows 10 noch zwei eigenständige Linux-Installationen.
Ich werde ein klassisches Debian 12 - System mit XFCE als grafischer Oberfläche einrichten.
Später, in einer weiteren Anleitung, werde ich dieses System in eine Audio-Workstation umwandeln. Das heißt, es kommt ein Echtzeitkernel, Jack als Audiosystem und Jamulus um mich Online mit Musikern zu treffen und zu jammen. Evtl. kommen noch Audacity und Hydrogene dazu. Also mal reinschauen...
Es gibt viele solcher Anleitungen im Netz. Bei den meisten wird Linux nicht wirklich vollständig installiert, sondern es wird mit Rufus, Unetbootin oder anderen Werkzeugen auf den USB-Stick übertragen und anschließend eine als Persistence bezeichnete Überlagerung zum System angelegt. Für viele Anwendungsfälle ist das eine sehr einfache Möglichkeit sich mit Linux auseinanderzusetzen. Dateien, Änderungen an der Konfiguration usw. können gespeichert werden. Hat man etwas "versemmelt" könnte man den persistenten Bereich einfach leeren und ist wieder beim Ursprung. Bestimmte Änderungen bspw. Kernelupdates sind imho nicht möglich.
Bei anderen Anleitungen wird man aufgefordert die Festplatten des Systems während des Installationsvorganges zu entfernen. Das ist bei heutigen Laptops gar nicht mehr so einfach. Oftmals kommen mSata oder NVME-Datenträger zum Einsatz. Manchmal befinden sich mehrere Festplatten im System. Zusätzlich gibt es Laptops, bei denen man die Unterseite gar nicht öffnen kann, wie bspw. beim Acer Aspire 5 A515-51G-86R5, den ich verwenden werde. Man muss sich dort umständlich über das Entfernen der Tastatur und dem Lösen einiger Flachbandkabel bis zum Datenträger durchkämpfen. Das anbringen der Flachbandkabel ist noch schwieriger. Das werde ich nicht beschreiben.
Hinweis: In meiner Anleitung gehe ich nicht auf die grundsätzlichen Basics ein. Ich setze voraus, dass man die Unterschiede zwischen (U)EFI/GPT und BIOS/MBR kennt und versteht. Man sollte sich mit Linux schon ein stückchen weit auskennen und bereits erfolgreich eingerichtet haben.
Nicht geeignet ist diese Anleitung für Anfänger. Bei falscher Anwendung ist es leicht möglich, dass man sich sein "Master-System" kaputt macht. Ich gebe also keine Garantie dafür das es genauso funktionieren wird.
1. Vorbereitung der Installation
Als Erstes bereiten wir einen bootfähigen Datenträger vor, von dem das "Master-System" gestartet werden kann. Dafür verwende ich Ventoy, so wie unter 3.1 Ventoy beschrieben wurde. Für die Installation habe ich in das Datenverzeichnis von Ventoy die zuvor heruntergeladene iso-Datei debian-12-5-0-amd64-netinst.iso kopiert.
Die Startfähigkeit auf dem Rechner muss gegeben sein. Nachteil bei Ventoy, man sollte SecureBoot bei den (U)EFI-Einstellungen deaktivieren. Es gibt zwar einen Weg, Ventoy mit SecureBoot auszuführen, das ist aber zu kompliziert und in Bezug auf die Änderungen, die Microsoft gerade mit den SecureBoot-Masterkeys abzieht sehr unsicher. Ob der Rechner, auf dem ich die Installation ausführen werde, im Herbst mit SecureBoot überhaupt noch startfähig sein wird steht noch in den Sternen. Erstens hat der schon ein paar Jahre auf dem Buckel, zum Zweiten verwende ich auf diesem Rechner eher selten Windows 10. Somit gehen möglicherweise die entscheidenden Aktualisierungen an mir vorbei.
Im zweiten Schritt wählen wir einen "guten" USB-Datenträger für die Installation von Linux aus. Gute Erfahrungen habe ich mit den in Metallgehäusen angebotenen SanDisk Ultra Flair USB 3.0, SanDisk Ultra Luxe und sogar SanDisk Ultra Fit USB 3.1 Gen1 gemacht. Weniger geeignet dagegen sind SanDisk Cruzer Blade oder SanDisk Ultra Dual Drive M3.0 - die sind imho einfach zu langsam. Das soll keine Produktwerbung sein, sicher gehen auch andere USB-Sticks. Gerne nehme ich andere Erfahrung entgegen.
2. Die Installation
Die Installation ist denkbar einfach, da sich nur an einer einzigen Stelle von einer Standardinstallation unterscheidet, der Partitionierung. Aber genau da muss man ganz genau aufpassen, was man tut.
2.1 Booten
Bei meinem System handelt es sich, wie schon erwähnt um einen Acer Aspire 5 A515-51G-86R5 mit i7-8550i, 12 GB RAM, 256 er SSD, 1 TB HDD und NVIDIA GeForce MX150. Der Aufruf für die Auswahl der Bootmedien erfolgt über F12.
Nach Auswhl des USB-Datenrägers wir Ventoy gestartet und man kann die heruntergeladene Datei aus dem Ventoy-Menü auswählen. Ich boote im Normal Mode.
Das war es schon, man beginnt eine normale Installation allerdings wählt man Advanced options...! und anschließend ... Expert install!
2.2 Standardabfragen
- Choose language
- Access software for a blind person using a braille display
- Tatsatur konfigurieren
- Installationsmedium erkennen und einbinden
- Installer-Komponenten vom Installationsmedium laden - ohne Auswahl --> Weiter
- Netzwerk-Hardware erkennen
Hinweis: Ohne erkannte Netzwerkverbindung keine Installation! In meinem Fall werde ich aufgefordert, für mein WLAN-Modul die Firmware ath10k, die Fehlende Firmware vom Wechselträger zu laden? was ich mit Ja beantworten würde. Das setzt allerdings voraus, dass ich diese Firmware bereits auf dem Wechseldatenträger heruntergeladen habe. Habe ich nicht, damit bleibt mir nur diesen Schritt zu überspringen. Ich verwende eine Ethernet-Verbindung, die ich sowieso bevorzuge.
- Netzwerk einrichten --> ich wähle als primäre Netzwerkverbindung die eingebaute Realtek-Karte.
- Rechnername - ich wähle deb12usb
- Domain-Name - entspricht der Search Domain - ich wähle it-scholar.bem
- Benutzer und Passwörter einrichten
- root das Anmelden erlauben? - Nein
- Vollständiger Name des neuen Benutzers: bem
- Benutzername für Ihr Konto: bem
- Passwort mit Wiederholung
- Uhr einstellen
- Festplatten erkennen
2.3 Partitionierung - Super wichtig
Jetzt kommt der entscheidende Teil für die erfolgreiche Partitionierung!
In jedem (U)EFI-System ist nur eine einzige EFI-Systempartition - ESP erlaubt. Diese ist auf dem Rechner bereits vorhanden und würde für das neu zu installierende System benutzt werden. Es besteht sogar die Gefahr, dass eine gleichnamige Installation ein bereits bestehndes Startsystem darin überschreibt.
Dasselbe passiert mit einer bereits bestehnden SWAP-Partition. Auf meinem Rechner sind bereits mehrere unahbängig voneinander zu startende Linux-Systeme installiert. Die neue Installation würde diese SWAP-Partition benutzen.
Diese Partitionen schließen wir von der Nutzung aus!
- Festplatten partitionieren ... --> Manuell
- ESP-Partition auswählen -> Benutzen als... -> Partition nicht benutzen --> Zurück
- Die Partition wird jetzt als fat32-Partition angezeigt, das ist richtig so.
- Swap - Partition auswählen -> Benutzen als... -> Partition nicht benutzen --> Zurück
- ESP-Partition auswählen -> Benutzen als... -> Partition nicht benutzen --> Zurück
- Jetzt den Zieldatenträger auswählen - An Hand des Namens und der Datenträgergröße sollte dieser eindeutig zu identifizieren sein
- mit Enter eine Neue, leere Partitionstabelle auf diesem Gerät erstellen? -> Ja -> gpt
- Den Eintrag FREIER SPEICHER auswählen!
- Eine neue Partition erstellen
- 256 MB - Anfang - Benutzen als: EFI-System-Partition, Name: EFI --> Anlegen der Partition beenden
- Eine neue Partition erstellen
- Den Eintrag FREIER SPEICHER auswählen!
- Eine neue Partition erstellen
- Gesamtkapazität - 2 GB eintragen - Anfang - Benutzen als: Ext4, Einbindungspunkt /, Name: System --> Anlegen der Partition beenden
- Eine neue Partition erstellen
- Den Eintrag FREIER SPEICHER auswählen!
- Eine neue Partition erstellen
- 2 GB - Anfang - Benutzen als: Auslagerungsspeicher (Swap) --> Anlegen der Partition beenden
- Eine neue Partition erstellen
- Partitionierung beenden und Änderungen übernehmen...
In einer Zusammenfassung werden alle Informationen dargestellt.
Der Hinweis auf die Änderung der Partitionstabelle des Systems, bei mir SCSI1 (0,0,0) (sdb) betrifft den Ausschluss der im System vorhandenen ESP-Partition. Es wird nicht die Partitionstabelle des Systems geändert.
Viel wichtiger ist die korrekte Auflistung der Partitionen auf dem USB-Datenträger, bei mir
Partition 1 auf SCSI5 (0,0,0) (sdd) als ESP Partition 2 auf SCSI5 (0,0,0) (sdd) als ext4 Partition 3 auf SCSI5 (0,0,0) (sdd) als Swap
Ist irgendetwas nicht korrekt, kann man mit Nein zurück wechseln und die Fehler beheben.
- Mit Ja werden die Änderungen auf die Festplatte geschrieben! Das ist natürlich der USB-Stick.
Es gibt dann kein zurück mehr und die eigentliche Installation beginnt!
2.4 Installation
- Basissystem installieren
- Zu installierender Kernel: linux-image-kernel
- In die initrd aufzunehmenden Treiber: generisch: alle verfügbaren Treiber einbinden
- Paketmanager konfigurieren
- Einen Netzwerkspiegel verwenden? --> ja
- Protokoll: http
- Deutschland
- deb.debian.org
- HTTP-Proxy --> Weiter
- Nicht-freie Firmware (>>non-free-firmware<<) verwenden? --> Ja
- >>Non-free<<-Software verwenden? --> Ja
- Paketdepots für Quellpakete in APT aktivieren? - Ja
- Zu verwendende Dienste: Sicherheitsaktualisierungen und Release-Updates --> Weiter
- Software auswählen und installieren
- Keine automatischen Updates
- An der Paketverwendungserfassung teilnehmen? --> Nein
- Welche Software soll installiert werden?
- Debian desktop environment
- Xfce
- SSH server
- Standard-Systemwerkzeuge
- Den GRUB-Bootloader installieren
- GRUB-Installation in den EFI-Wechseldatenträgerpfad erzwingen? --> Ja
- NVRAM aktualisieren, um direkt in Debian hineinzustarten? --> Nein
- os-prober automatisch ausführen, um andere Betriebssysteme zu erkennen und zum Booten vorzubereiten? --> Nein
- Installation abschließen
- Ist die Systemzeit auf UTC gesetzt? --> Nein
- Installation abgeschlossen --> Weiter
2.5 USB-Stick ausprobieren
Beim Neustart den Ventoy-Datenträger entfernen und vom USB-Datenträger starten, bei mir mit F12.
Auch andere kompatible Rechner sollten sich mit diesem USB-Stick starten lassen. Spezielle Firmware, bspw. für das WLAN-Modul sind aber nur für das System installiert, auf dem die Installation druchgeführt wurde.
3. Fazit
Die Einrichtung eines vollwertigen Linux-Systems auf einem Datenträger ist gar nicht so schwierig. Man bekommt die Freiheit einen kompatiblen Rechner von diesem USB-Stick auszuführen und man kann mit einem schnellen USB-Stick ganz gut arbeiten.
Bleibt noch die Frage, warum verwende ich Debian12?
Ubuntu als Debian-Derivat hat in den letzten Jahren einen Weg eingenommen, der es aus meiner Sicht nicht mehr möglich macht, schmale und somit ressourcenschonende Installationen zu ermöglichen. Das eingeständige Snap trägt entscheidend zu dieser Erkenntnis bei. Wollte man sich von Snap verabschieden, müsste man sehr umfangreiche Anleitungen abarbeiten, um sich davon zu trennen. Da kommt keine Freude auf.
Debian verwendet zwar nicht die aktuellsten Kernel und auch nicht die brandaktuellsten Programmversionen, aber alles läuft äußerst stabil. Mit der Möglichkeit nun auch externe Firmware einzubinden sollte es weitestgehend möglich werden auch modernere Hardware zu nutzen.
Ganz sicher kann man mit dieser Anleitung auch andere Systeme auf USB-Sticks als vollwertige Systeme einrichten.
Wie bin ich überhaupt auf die Idee gekommen, Linux direkt auf einem USB-Stick zu verbannen?
Auf dem Rechner, auf dem ich die Installation durchführe, hatte ich vor ca. 2 Jahren JamulusOS installiert. Ich konnte dafür gerade 40 GB frei machen. JamulusOS basierte damals auf UbuntuStudio 20.04. Damit konnte ich mit Jamulus ganz gut jammen. Mit Audacity generiere ich mir gern mehrspurige Audio Dateien, so als Playback. Audacity untesrstützte damals noch kein aup3-Format für die Speicherung in einer einzelnen Datei. Das wollte ich gerne. Also habe ich im März eine Aktualisierung auf UbuntuStudio 22.04 angeschoben. Nachdem ich einige nicht unbedingt notwendigen Programme entfernt hatte ging das auch. Zu meinem Erstaunen kennt auch die Audacity-Version unter UbuntuStudio 22.04 kein aup3-Format. Da war ich schon sehr überrascht. Das nächste Problem, meine Partition ist nahezu ausgeschöpft. Ein Upgrade, welches ich ins Auge gefasst hatte, auf Version 24.04 ist in dem Moment peplatzt, als ich die Größe der iso-Datei gesehen habe - 6,7 GB. Klar, da ist alles drin, vor allem Snap.
Flucht nach vorn, Debian 12 ausprobiert, Echtzeitkernel, ..., funktioniert sehr gut. Ich bin rundum zufrieden. Auch das aup3-Format in Audacity steht zur Verfügung. Wie ich das hinbekommen habe kommt in einer weiteren Anleitung.
Viel Spass Bernd.