Distributionen im Subsystem für Linux (WSL) duplizieren, verschieben und exportieren


    Tags: , ,

    Distributionen für Windows Subsystem for LinuxFügt man eine Linux-Distri­bution für WSL hinzu, dann wird diese im Pro­fil des jeweiligen Be­nutzers installiert. Zudem lassen sich mehrere davon paral­lel nutzen. Dabei kann es prak­tisch sein, etwa die Kopie einer vor­han­denen Instal­lation zu er­stellen oder eine Distro auf einen anderen PC bzw. einen USB-Stick zu über­tragen.

    Die 20xx-Releases von Windows 10 enthalten nicht nur das neue Windows Subsystem für Windows 2 (WSL 2), sondern auch noch die ursprüngliche erste Ausführung. Diese hängt das root-Dateisystem unterhalb von %LOCALAPPDATA% ein, wogegen WSL2 eine Utility-VM nutzt und die dazugehörige VHDX im Benutzerprofil speichert.

    wsl.exe versus LxRunOffline

    Möchte man eine vorhandene Distribution klonen, an einen anderen Ort verschieben oder exportieren, dann spielt es keine Rolle, in welcher Form eine WSL-Version das Linux-Dateisystem speichert. Für diesen Zweck stehen nämlich eigene Tools zur Verfügung, so dass ein Hantieren mit den Dateien und Konfigu­rationen entfällt.

    Zum einen gibt es für das Management der Distributionen das in Windows enthaltene Kommando­zeilen-Tool wsl.exe, zum anderen das Open-Source-Programm LxRunOffline, das mehr Optionen bietet.

    Installierte Distros anzeigen

    Bei beiden beginnt man in der Regel damit, dass man sich die Namen der installierten Distributionen anzeigen lässt, weil man diese den Tools für weitere Operationen als Parameter übergeben muss. Im einen Fall gibt man dazu

    wsl --list --verbose

    ein, im anderen

    LxRunOffline.exe list

    Distributionen in WSL anzeigen mit wsl.exe oder LxRunOffline

    Möchte man bei LxRunOffline mehr Informationen erhalten als bloß den Namen, dann schickt man noch ein

    LxRunOffline.exe summary -n Ubuntu-20.04

    hinterher, um diese für die Distribution mit der Bezeichnung Ubuntu-20.04 anzuzeigen.

    Import und Export von Distros

    Wenn es um das Management der Dateien einer Distribution geht, dann bietet das Bordmittel wsl.exe nur die Möglichkeit, diese zu exportieren und zu importieren. Den Export kann man nutzen, um eine Distro, die man relativ aufwändig angepasst hat, als Kopie zu sichern.

    Diese lässt sich dann auf dem gleichen Rechner wieder importieren, um sie zu klonen. Alternativ kann man sie damit natürlich auch auf einen anderen PC übertragen.

    Der Export-Befehl erwartet den Namen einer installierten Distribution und einen solche für die .tar-Datei, in die sie gespeichert werden soll, und zwar nach diesem Muster:

    wsl.exe --export Ubuntu-20.04 u2004.tar

    Distribution aus dem Subsystem für Linux exportieren mit wsl.exe

    Bevor man loslegt, sollte man sicherstellen, dass die betreffende Distribution nicht aktiv ist und bei Bedarf mit

    wsl.exe --terminate Ubuntu-20.04

    beenden.

    Der Import erfolgt dann entsprechend mit

    wsl.exe --import <Name-der-neuen-Distro> <Installationsort> <Dateiname.tar> --version <Version>

    Die Angabe der Version ist optional.

    Wesentlich flexibler zeigt sich bei solchen Anforderungen LxRunOffline. Auch dieses verfügt über einen Export- und Importbefehl, Letzerer heißt install:

    LxRunOffline.exe install -n <Name-der-neuen-Distro> -d <Installationsort> -f <.tar-File>

    Auch hier kann man die Version mit dem Parameter -v festlegen, der Schalter -s erzeugt zudem eine Verknüpfung auf dem Desktop. Beim Export reichen neben die Parameter -n für den Namen der Distro und -f für jenen der .tar-Datei:

    LxRunOffline.exe export -n <Name-der-Distro> -f <.tar-File>

    Distros klonen und verschieben mit LxRunOffline

    Spannender sind die Möglichkeiten, Distros ohne umständlichen Export und Reimport zu klonen, zu verschieben oder auf einem anderen PC zu registrieren. Der folgende Befehl dupliziert eine Distro auf einen USB-Stick und registriert sie unter dem Namen USBuntu:

    LxRunOffline.exe duplicate -n Ubuntu-18.04 -d f:\ubuntu -N USBuntu

    Nimmt man einen USB-Datenträger als Ziel, dann sollte man darauf achten, dass er mit NTFS formatiert wurde. Andernfalls erscheint die Fehlermeldung, wonach sich das Case-sensitive-Attribut nicht setzen ließ. Außerdem weigert sich LxRunOffline, das Hauptverzeichnis eines Datenträgers als Ziel zu akzeptieren.

    Linux-Distro mit LxRunOffline duplizieren. Vorsicht: Das Unregister mit wsl.exe löscht die Distro auch gleich noch.

    Alternativ zum Klonen könnte man eine Distro einfach auch auf einen anderen Datenträger verschieben. Auch diese Operation bleibt LxRunOffline vorbehalten:

    LxRunOffline.exe move -n Ubuntu-18.04 -d f:\ubuntu\

    Der Parameter -d erwartet in diesem Fall das Zielverzeichnis, in das die Distro verschoben werden soll.

    Portable Distro erstellen

    Wenn man eine portable Distribution für WSL einrichten möchte und diese wie oben beschrieben auf einen USB-Stick kopiert, dann kann man sie deregistrieren, bevor man den Datenträger entfernt. Andernfalls zeigen die WSL-Tools eine Disto an, die nicht verfügbar ist. Dazu gibt man für das obige Beispiel

    LxRunOffline.exe unregister -n USBuntu

    ein. Keinesfalls aber sollte man dafür

    wsl --unregister USBuntu

    verwenden, weil dieses Kommando die angegebene Distribution löscht.

    Distro auf einem USB-Datenträger mit LxRunOffline registrieren

    Hat man den Memory-Stick an einen anderen Rechner angeschlossen, dann muss man die Distro dort wieder registrieren. Dazu ist wsl.exe nicht in der Lage, dazu benötigt man wieder LxRunOffline:

    LxRunOffline.exe register -n USBuntu -d f:\ubuntu\

    Die Parameter -n und -d stehen wieder für den Namen der Distro und des Verzeichnisses, in dem sie sich befindet.

    Täglich Know-how für IT-Pros mit unserem Newsletter

    Wir ver­wenden Ihre Mail-Adresse nur für den Ver­sand der News­letter.
    Es erfolgt keine per­sonen­be­zogene Auswertung.

    Bild von Wolfgang Sommergut

    Wolfgang Sommergut hat lang­jährige Erfahrung als Fach­autor, Berater und Kon­ferenz­sprecher zu ver­schie­denen Themen der IT. Da­ne­ben war er als System­ad­mi­ni­stra­tor und Con­sultant tätig.
    // Kontakt: E-Mail, XING, LinkedIn //

    Verwandte Beiträge

    Weitere Links