Wie erstelle ich einen Debian Live USB mit Persistenz?

11

Ich möchte Debian überall verwenden, indem ich es auf einem USB-Flash-Laufwerk installiere, bin mir jedoch nicht sicher, wie ich die Einstellungen speichern und Pakete installieren / aktualisieren kann, ohne sie beim Neustart zu verlieren.

Also habe ich ein Hybrid-ISO-Image von diesem Link heruntergeladen und die Anweisungen in den FAQ befolgt :

dd if=image.iso of=/dev/sdb bs=4M; sync

Dieser Befehl kopierte das Image auf das Flash-Laufwerk, indem eine Partition erstellt wurde, deren Größe der des ISO-Images entspricht (1,3 GB von 8 GB), und der Rest des Flash-Laufwerks ist nicht zugeordnet.

Ich habe gesucht, wie das geht, aber jedes Tutorial verwendet einen anderen Ansatz und einige von ihnen sind veraltet und sprechen über das alte USB-HDD-Image.

Wie soll ich dieses Hybrid-Image auf dem Flash-Laufwerk installieren?

Wie soll ich mein Flash-Laufwerk partitionieren, um Pakete installieren und Einstellungen speichern zu können? und wie kann ich dieses Image ohne Verwendung installieren dd?

Pierre
quelle
In diesem datierten Tutorial (2011) wurde genau beschrieben, wie das Ergebnis in GParted aussehen soll. Dies war mit Debian 6.0.0 (Squeeze) unter Verwendung eines USB-HDD-Images möglich. Andererseits kann ich das Ergebnis scheinbar nicht reproduzieren, indem ich ein hybrides ISO-Image für neuere Versionen von Debian verwende.
Clearkimura
@clearkimura Versuchen Sie UEFI + BIOS bootfähig live Debian Stretch amd64 mit Persistenz . Sie sollten das Kopfgeld an Benutzer schlimmchen vergeben, wenn die Antwort für Sie funktioniert.
Freddy
Hybrid-ISOs sind Images, die von einer CD-ROM und von USB-Geräten gestartet werden können, da sie auch einen MBR enthalten . Diese Bilder sind schreibgeschützt (squashfs-Dateisystem) und können daher nicht beschrieben werden. Sie haben normalerweise eine Partition. Sie müssen also eine zweite beschreibbare Partition für die Persistenz erstellen, eine persistence.confKonfigurationsdatei hinzufügen und Ihrer grub / syslinux-Konfiguration einen Kernel-Boot-Parameter "Persistenz" hinzufügen, um Ihre zweite Partition zu erkennen.
Freddy
@Freddy Wenn Sie der Meinung sind, dass Sie eine bessere Erklärung liefern können als bisher veröffentlichte Antworten - um zu erklären, warum das Klonen (mit dd oder cp) nicht dauerhaft funktioniert, wie in der offiziellen Dokumentation beschrieben -, sollten Sie Ihren Kommentar in eine richtige Antwort umwandeln stattdessen.
Clearkimura
1
Post-Bounty-Hausaufgaben: Nachdem ich weiterhin verschiedene Texte im Web gelesen, gelesen und gelesen und einige weitere Versuche und Irrtümer durchgeführt hatte, konnte ich das Klonen besser verstehen (Ja, Hybrid-ISO kann auf USB als dauerhaft funktionieren) gemäß offizieller Dokumentation ). Zum Herunterladen und Testen mit Debian 10 kann ich jedoch bald meine eigene Antwort erhalten.
Clearkimura

Antworten:

7

Debian lebt mit Ausdauer.

  1. Versuchen Sie es zuerst mit dem offiziellen Bild von www.debian.org/CD/live/

    Von der SE-Site (Standard Live):

    wget https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/debian-live-10.0.0-amd64-standard.iso
    

    Aus der automatischen Spiegelauswahl (Mate Live):

    wget http://debian-cd.debian.net/debian-cd/10.0.0-live/amd64/iso-hybrid/debian-live-10.0.0-amd64-mate.iso
    

    Dann Prüfsumme Sie laden Datei mit https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/SHA256SUMS herunter ...

    Ok ISO - Dateisystem ist schreibgeschützt , aber es ist eine wenig Abhilfe : wir nicht vital ersetzen könnten bootparam durch persistenceauf diese Weise.

    • Einmal Datei validiert!
    • Sie können sie ändern, indem Sie sedzum Ersetzen von Zeichenfolgen in Binärform verwenden.

      LANG=C sed 's/splash quiet/persistence /;s/quiet splash/persistence /' \
          </tmp/debian-live-10.0.0-amd64-mate.iso \
          >/tmp/debian-live-10.0.0-amd64-mate-persist.iso
      

    Dies wird eine modifizierte Kopie Ihres erstellen Live - Binärdatei , durch streng ersetzt splash quietoder quiet splashdurch persistence, überall. Ok, dies funktioniert nur, wenn der Befehl grub boot diese beiden Wörter zusammen enthält.

    Aber achten Sie darauf, den Raum nach der Beharrlichkeit nicht zu verpassen:

    "splash quiet" -> 12 characters
    "persistence " -> 12 characters
    

    Oder Ihre Binärdatei wird beschädigt.

  2. Auf USB-Stick installieren

    dd if=debian-live-10.0.0-amd64-standard-persist.iso of=/dev/sdX
    

    Fügen Sie dann Ihre dritte Partition für die Persistenz hinzu:

    fdisk /dev/sdX
    n           # new partition
    p           # primary
    <Return>    # default: 3
    <Return>    # default: next free sector
    <Return>    # default: last addressable sector
    w           # write and quit
    

    Dies könnte ohne Interaktion ausgeführt werden:

    fdisk /dev/sdX <<<$'n\np\n\n\n\nw'
    

    Formatieren und Vorbereiten der Persistenz mit union:

    mkfs.ext4 -L persistence /dev/sdX3
    mount /dev/sdX3 /mnt
    echo '/ union' >/mnt/persistence.conf
    sync
    umount /mnt
    

    Dann auswerfen und versuchen!

    Wenn Sie ein offizielles, unverändertes Image verwenden, um die Persistenz zu nutzen , müssen Sie die Startauswahl unterbrechen :

    Sobald Menübildschirm angezeigt wird, wählen Sie Ihre Boot - Option, dann statt Return, Hit Tab.

    Die Kernel-Befehlszeile wird angezeigt. persistenceNach dem letzten Wort ( quiet) wird ein Leerzeichen eingefügt und dann gedrückt Return.

    Da die erste Partition mit UEFI gebündelt ist und ISO ist, können Sie den Startbefehl leider nicht ändern.

Customized Debian leben mit Ausdauer

Sie müssen nur zur Startbefehlszeile hinzufügen persistence, aber sonst nichts!? Es gibt eine Möglichkeit, FAT und zu verwenden syslinux, aber Sie haben viele Datenmanipulationen. Es ist lang und ich finde das nicht so gut. Ich bevorzuge:

  1. Erstellen Sie Ihr eigenes Debian live

    Mehr regelmäßig , aber ein wenig mehr (zumindest für erstes Bild),

    Hinweis: All diese Dinge wurden unter dem Root- Benutzer ausgeführt (dies muss mithilfe von funktionieren fakeroot, wird jedoch dort und heute nicht getestet).

    apt install live-build
    

    ... und alle Empfehlungen.

    Ich habe eine kleine XARGSFunktion zum Löschen kommentierter Zeilen geschrieben:

    XARGS() { sed -ne '/#/d;s/ \t//g;H;${x;s/\n/ /g;s/^ //;p}'; }
    

    Erste Einstellung bootparamsmit Lokalisierung und Argumenten für die Persistenz:

    ExtraBootParams=$(XARGS <<eobp
        boot=live
        config
        locales=ed_WT
        keyboard-layouts=ed
        keyboard-variant=wt
        persistence
    eobp
    )
    

    Nun Ihre Paketliste:

    PackageList=$(XARGS <<-eopl
        gnome
        gnome-core
        # gnome-full
        # debian-forensics
        debian-installer-launcher
    eopl
    )
    

    Der erste Schritt von lb: Erstbaum erstellen:

    lb config --architectures amd64 -d buster --debian-installer-gui \
        true --archive-areas 'main contrib non-free' \
        --bootappend-live "$ExtraBootParams" 
    

    Jetzt haben Sie einen kleinen Baum, Sie könnten:

    printf "%s\n" > config/package-lists/standard.list.chroot \
        $Packages $PackageList
    

    Ok, der nächste Befehl wird eine lange Zeit dauern! (Ca. 1 Stunde auf meinem Gastgeber)

    lb build
    

    Wenn alles in Ordnung ist, können Sie Ihren eigenen Debian live finden :

    ls -l *.iso
    -rw-r--r--  1 root root 1511817216 sep  7 15:32 live-image-amd64.hybrid.iso
    
  2. Installation auf USB-Stick (gleicher Vorgang wie bei heruntergeladenen Binärdateien)

    Das 'Iso-Hybrid'- Image enthält zwei Partitionen für UEFI und wird live gemischt, so dass sowohl EFI als auch BIOS booten können.

    file live-image-amd64.hybrid.iso
    live-image-amd64.hybrid.iso: DOS/MBR boot sector; partition 2 : ID
    =0xef, start-CHS (0x3ff,254,63), end-CHS (0x3ff,254,63), startsect
    or 708, 5696 sectors
    

    Sie können einfach einen USB-Stick anschließen: (Hinweis: Stellen Sie zunächst sicher, dass Ihr USB-Stick nicht montiert ist!)

    dd if=live-image-amd64.hybrid.iso of=/dev/sdX
    

    Fügen Sie dann Ihre dritte Partition für die Persistenz hinzu:

    fdisk /dev/sdX <<<$'n\np\n\n\n\nw'
    

    Formatieren und Vorbereiten der Persistenz mit union:

    mkfs.ext4 -L persistence /dev/sdX3
    mount /dev/sdX3 /mnt
    echo '/ union' >/mnt/persistence.conf
    sync
    umount /mnt
    

    Auswerfen und versuchen ...

Debian lebt mit verschlüsselter Persistenz

  1. Erstellen Sie Ihr eigenes Debian live, aber mit verschlüsselter Persistenz .

    Um mit rootfs /bei verschlüsselter Persistenz zu booten , müssen Sie initrd (anfänglicher RAM-Datenträger) ein dm-cryptModul und zugehörige Binärdateien hinzufügen, indem Sie Einstellungen in eine ...CRYPTSETUP=y/etc/initramfs-tools/hooks/

    Ich habe eine kleine XARGSFunktion zum Löschen kommentierter Zeilen geschrieben:

    XARGS() { sed -ne '/#/d;s/ \t//g;H;${x;s/\n/ /g;s/^ //;p}'; }
    

    Erste Einstellung bootparamsmit Lokalisierung und Argumenten für Persistenz und Kryptenbildung:

    ExtraBootParams=$(XARGS <<eobp
        boot=live
        config
        locales=ed_WT
        keyboard-layouts=ed
        keyboard-variant=wt
        persistent=cryptsetup
        persistence-encryption=luks
        persistence
    eobp
    )
    

    Nun Ihre Paketliste:

    PackageList=$(XARGS <<-eopl
        gnome
        gnome-core
        # gnome-full
        # debian-forensics
        debian-installer-launcher
    eopl
    )
    

    Und Ihre Paketauswahl:

    Packages=$(XARGS <<-eopk
        cryptsetup
        cryptsetup-initramfs
        debian-installer-launcher
        firmware-linux-nonfree
        firmware-linux-free
        less
        ssh
    #   openvpn
    #   xtightvncviewer
        gsmartcontrol
        smartmontools
        partclone
        ntfs-3g
        task-gnome-desktop
        user-setup
        sudo
        apt-utils
    eopk
    )
    

    Natürlich cryptsetupist erforderlich! ;-);

    Der erste Schritt von lb: Erstbaum erstellen:

    lb config --architectures amd64 -d buster --debian-installer-gui \
        true --archive-areas 'main contrib non-free' \
        --bootappend-live "$ExtraBootParams" 
    

    Jetzt haben Sie einen kleinen Baum, Sie könnten:

    printf "%s\n" > config/package-lists/standard.list.chroot \
        $Packages $PackageList
    

    Ok, die nächsten beiden Befehle werden eine lange Zeit dauern! (Ca. 40 'auf meinem Host)

    lb bootstrap ; lb chroot
    

    Jetzt können Sie Ihr Modul und Ihre Binärdateien hinzufügen:

    echo dm-crypt >> chroot/etc/initramfs-tools/modules
    
    sed '/CRYPTSETUP=/s/^#//;s/=.*/=y/' -i \
        chroot/etc/cryptsetup-initramfs/conf-hook 
    ln -s ../../cryptsetup-initramfs/conf-hook \
        chroot/etc/initramfs-tools/hooks/cryptsetup
    chroot chroot live-update-initramfs -u
    

    Führen Sie dann die letzte Etappe aus (dauert etwas länger ~ 25 '):

    lb installer ; lb binary
    

    Hinweis: Wenn Sie lesen cryptsetup: WARNING: Couldn't determine root device, ist es in Ordnung! Dies bedeutet, dass Cryptsetup auf Ihrem installiert ist initrd.

    Wenn alles in Ordnung ist, können Sie Ihren eigenen Debian live finden :

    ls -l *.iso
    -rw-r--r--  1 root root 1511817216 sep  7 15:32 live-image-amd64.hybrid.iso
    
  2. Auf USB-Stick installieren

    Das 'Iso- Hybrid' - Umage enthält bereits zwei Partitionen für UEFI und ist live gemischt, so dass sowohl EFI als auch BIOS booten können.

    file live-image-amd64.hybrid.iso
    live-image-amd64.hybrid.iso: DOS/MBR boot sector; partition 2 : ID
    =0xef, start-CHS (0x3ff,254,63), end-CHS (0x3ff,254,63), startsect
    or 708, 5696 sectors
    

    Sie können einfach einen USB-Stick anschließen: (Hinweis: Stellen Sie zunächst sicher, dass Ihr USB-Stick nicht montiert ist!)

    dd if=live-image-amd64.hybrid.iso of=/dev/sdX
    

    Fügen Sie eine neue Linux-Partition hinzu, indem Sie freien Speicherplatz verwenden.

    fdisk /dev/sdX <<<$'n\np\n\n\n\nw'
    

    Dadurch wird Partition 3 mit freiem Speicherplatz auf Ihrem USB-Stick erstellt.

    Bereiten Sie dann Ihre verschlüsselte Partition vor

    cryptsetup -q luksFormat /dev/sdX3
    

    Geben Sie die Passphrase ein

    cryptsetup -q luksOpen /dev/sdX3 persist 
    

    Geben Sie die Passphrase erneut ein

    mkfs.ext4 -L persistence /dev/mapper/persist
    mount /dev/mapper/persist /mnt
    echo '/ union' >/mnt/persistence.conf
    sync
    umount /mnt
    cryptsetup luksClose persist
    

Das ist alles.

eject /dev/sdX
F. Hauri
quelle
Das ist interessant: 1. Gibt es binDateien für die aktuellen Versionen von Debian? 2. Bitte teilen Sie uns mit, ob und wie Ihre Methode funktioniert (mit den aktuellen Versionen von Debian).
Sudodus
1
@sudodus Seit Debian 7 (Wheezy) wurden die USB-HDD-Images nicht mehr für die Veröffentlichung erstellt. Ich kann zumindest bestätigen, dass die USB-HDD-Bilder für Debian 5 (Lenny) und 6 (Squeeze) verfügbar sind. Die USB-HDD-Bilder sind .imgund nicht .bin, aber ich denke, diese sind im Wesentlichen die gleichen wie im Debian-Wiki .
Clearkimura
2
Ok, ich werde das alles umschreiben, aber nicht heute ... Entschuldigung.
F. Hauri
@sudodus Rewite ist fertig und nein , sorry: Das binauf debian.org veröffentlichte Bild bootet nicht mit verschlüsselter Persistenz.
F. Hauri
1
+1; @ F.Hauri, ich habe versucht, die Partition für die Persistenz nach dem geklonten Teil eines USB-Laufwerks mit partedund gpartedohne viel Glück zu erstellen . Sie zeigen, dass dies fdiskfunktioniert (zerstört nicht das Booten des geklonten Laufwerks). Und ja, ich sehe, dass es notwendig sein wird, die persistenceStartoption bei jedem Start hinzuzufügen, da das Dateisystem iso9660 vom Design her schreibgeschützt ist. Und ich stimme zu, es kann cool (sogar sehr wertvoll) sein, die Persistenz beispielsweise auf Reisen verschlüsselt zu haben.
Sudodus
4

Warum machen Sie keine Neuinstallation von Debian und wählen das USB-Gerät anstelle Ihrer Festplatte als Ziel? Welche Kapazität hat Ihr USB?

Ich habe ein Debian LXDE installiert und laufe in einem 4 GB USB-Speicherstick, aktualisiere das System wann immer ich will und installiere Pakete, wenn ich sie brauche.

YoMismo
quelle
Es ist ein 8-GB-Flash-Laufwerk, ich möchte GNOME verwenden und dachte, dass es viel Speicherplatz beanspruchen würde, und das GNOME-Live-Image ist nur 1,3 GB groß, aber meine Festplatteninstallation ist größer, aber ich weiß nicht genau, wie viel, welches Installationsimage haben Sie verwendet?
Pierre
@Peter - 8 GB sollten für eine Standardinstallation in Ordnung sein.
slm
Ich habe cdimage.debian.org/debian-cd/current-live/i386/iso-hybrid/… verwendet , da ich Geschwindigkeit wollte, habe ich lxde ausgewählt. Sie haben dort auch ein Gnomenbild. Gnome vom USB ist zwar etwas langsam, aber wenn Sie über genügend RAM verfügen, werden die Apps beim ersten Mal nur langsam geöffnet, beim nächsten Mal werden sie schneller geöffnet. In Bezug auf den Speicherplatz müssen Sie natürlich die Anzahl der Apps, die Sie im USB installieren, auf diejenigen reduzieren, die Sie wirklich verwenden / benötigen, und den Rest für Ihren Heimcomputer überlassen.
YoMismo
2
Übrigens möchten Sie vielleicht Ihr / tmp auf Ihrem RAM anstatt auf Ihrer Festplatte erstellen. Sie müssen nur die Zeile tmpfs /tmp tmpfs nodev,nosuid,size=2G 0 0zu Ihrer fstab hinzufügen (ändern Sie 2G für die gewünschte Größe und berücksichtigen Sie den Betrag, den Sie haben Zuweisen zu tmp wird für den Rest der Apps nicht verfügbar sein)
YoMismo
2
Die Verwendung des installierten Systems ist nicht für USB-Sticks geeignet, die auf vielen verschiedenen Hardwarekomponenten booten müssen. Ein echtes Leben ist so aufgebaut, dass mehrere Hardwares möglich sind
F. Hauri
4

Klonen und Debian bleiben live bestehen

Das Klonen (Kopieren jedes Bytes wie es ist, Erstellen einer Eins-zu-Eins-Kopie) ist eine sehr einfache und zuverlässige Methode, um ein Boot-Laufwerk (Live-Laufwerk oder Installationslaufwerk) aus einer Linux-Hybrid-ISO-Datei zu erstellen.

Es gibt keine herkömmliche Möglichkeit, eine geklonte Debian-ISO-Datei dauerhaft zu machen, da sie über ein schreibgeschütztes Dateisystem ISO9660 (und eine schreibgeschützte Partitionstabelle) verfügt.

Verwenden von mkusb (BIOS / UEFI)

Es ist möglich (und ich würde eher einfach sagen), mit mkusb ein dauerhaftes Live-Laufwerk aus einer Debian-Live- ISO-Datei zu erstellen . mkusb unterstützt Debian 8 oder neuer, und Sie sollten die aktuelle Version von mkusb (Version 12.3.3 oder neuer) verwenden.

mkusb erstellt eine Partitionstabelle und 5 Partitionen:

  1. NTFS-Partition für den Datenaustausch mit Windows-Computern (optionale Größe)
  2. Erweiterte Partition oder bios_grubPartition
  3. FAT32-Bootpartition zum Booten mit grub(sowohl im UEFI- als auch im BIOS-Modus)
  4. ISO9660-Partition mit Klon der ISO-Datei
  5. ext Partition für Persistenz, in der Ihre Änderungen (und Dateien) gespeichert werden

mkusb führt die folgenden Optimierungen automatisch durch:

  • Die Boot-Option persistence(nicht persistentwie in Ubuntu)
  • Das Label persistenceauf Partition # 5 (nicht casper-rwwie in Ubuntu)
  • Die Datei persistence.confmit dem Inhalt / unionauf der obersten Ebene von Partition 5.

Diese Struktur wird vom Bash-Shellscript erstellt dus-persistent, wenn Sie den Alias ​​mkusb Version 12 verwenden mkusb-dus. Wenn Sie alle Details wünschen, installieren Sie mkusb und lesen Sie den Inhalt vondus-persistent oder lesen Sie ihn direkt über phillw.net/isos/linux-tools/mkusb/dus-persistent .

Die Standardeinstellungen von mkusb können für Debian 8, 9 und 10 verwendet werden, und das persistente Live-Laufwerk funktioniert beim Booten im BIOS-Modus und im UEFI-Modus (jedoch nicht mit sicherem Start).

(In der vorherigen Version von mkusb 12.3.2 müssen Sie 'usb-pack-efi' manuell im Menü 'Einstellungen' für Debian 10 im UEFI-Modus einstellen.)

Manuelles Setup verwenden (nur UEFI)

Wenn Sie ein UEFI-Boot-Flash-Laufwerk nur starten möchten, benötigen Sie überhaupt kein Installationsprogramm.

Sie müssen nur das Flash-Laufwerk mit FAT32 formatieren und das Startflag aktivieren. Verwenden Sie dann das von Ihnen bevorzugte Extraktionswerkzeug wie 7zip, um ISO in die FAT32-Partition zu extrahieren und zu kopieren . Siehe Mach es selbstWeitere Informationen finden .

Ich habe diese Methode mit der Standard-Live-ISO-Datei (klein, keine grafische Desktop-Umgebung) überprüft.

debian-live-10.0.0-amd64-standard.iso

Auf diese Weise können Sie mit Debian 10 (64-Bit) ein USB-Boot-Laufwerk erstellen. Es ist nur live und startet im UEFI-Modus.

  • Erstellen Sie eine FAT32-Partition, die groß genug ist, um die Dateien aus der ISO-Datei zu speichern (addieren Sie ungefähr 5% zur Größe der ISO-Datei).
  • Hängen Sie die FAT32-Partition ein
  • Extrahieren Sie den Inhalt (Verzeichnisbaum mit allen Dateien) der ISO-Datei in die FAT32-Partition

Jetzt haben Sie ein Live-USB-Startlaufwerk

  • Bearbeiten Sie das Wort persistencebis zum Ende der Zeile (n), beginnend mit linuxin der Datei

    /path/to/mountpoint/boot/grub/grub.cfg
    
  • Erstellen Sie eine ext2Partition im nicht zugewiesenen Bereich (hinter der FAT32-Partition).

  • Bringen Sie das Etikett persistenceauf der ext2Partition an
  • Montieren Sie die ext2Partition
  • Schreiben Sie / unionin die Datei persistence.confim ext2Dateisystem

  • Hängen Sie alle Partitionen auf dem Flash-Laufwerk aus, bevor Sie den Netzstecker ziehen oder neu starten

Jetzt haben Sie ein dauerhaftes Live-USB-Laufwerk mit Debian 10.


Befehlsausgabe vom persistenten Live-Laufwerk aus gesehen:

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            7.8G     0  7.8G   0% /dev
tmpfs           1.6G  9.0M  1.6G   1% /run
/dev/sdb1       4.0G  826M  3.2G  21% /run/live/persistence/sdb1
/dev/loop0      610M  610M     0 100% /run/live/rootfs/filesystem.squashfs
tmpfs           7.8G     0  7.8G   0% /run/live/overlay
/dev/sdb2        11G   38M   11G   1% /run/live/persistence/sdb2
overlay          11G   38M   11G   1% /
tmpfs           7.8G     0  7.8G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           7.8G     0  7.8G   0% /sys/fs/cgroup
tmpfs           7.8G     0  7.8G   0% /tmp
tmpfs           1.6G     0  1.6G   0% /run/user/1000

$ lsb_release -a
Distributor ID: Debian
Description:    Debian GNU/Linux 10 (buster)
Release:    10
Codename:   buster

$ lsblk -fm /dev/sdb
NAME   FSTYPE LABEL       UUID                                 FSAVAIL FSUSE% MOUNTPOINT                            SIZE OWNER GROUP MODE
sdb                                                                                                                14.8G             brw-rw----
├─sdb1 vfat   USBBOOT     7176-C538                               3.2G    20% /usr/lib/live/mount/persistence/sdb1    4G             brw-rw----
└─sdb2 ext2   persistence 2b324439-d63e-4a19-bf57-d49ecb881828     10G     0% /usr/lib/live/mount/persistence/sdb2 10.8G             brw-rw----

Sie können sehen, dass die Größe der overlayÜbereinstimmungen mit der übereinstimmt, /dev/sdb2dass die Persistenz funktioniert.

Verwenden von mkusb-minp(BIOS / UEFI)

Es ist möglich (und ich würde sagen ziemlich einfach), mkusb-minp zu verwenden, um ein dauerhaftes Live-Laufwerk aus einer Debian-Live- ISO-Datei zu erstellen. mkusb-minp unterstützt Debian 10 oder neuer. Dieses einfache Shellscript wurde aus mkusb-min entwickelt . Beide wickeln einen Sicherheitsgurt um den Klonvorgang, um zu vermeiden, dass auf das falsche Gerät geschrieben wird.

Dies ist eine gute Option, wenn Sie keine Software über eine PPA hinzufügen oder im Allgemeinen nur Tools verwenden möchten, die Sie verstehen können.

Sudodus
quelle
1
Allgemeine Informationen für Benutzer: Ab heute (5. September 2019) ist mkusb 12.3.2-1ubuntu4 über PPA für Ubuntu 12.04 und höher verfügbar . SparkyLinux, eine Debian-basierte Distribution, hat dieselbe Version in ihrem Repository wie im März 2019 angekündigt .
Clearkimura
1
Kommentar nach der Prämie: Der sedBefehl ist nur eine Problemumgehung, und dennoch scheint niemand die Einschränkungen zu kommentieren oder zu erklären. Ich denke, das Kopieren der Lösung aus einer anderen Antwort schadet mehr als es nützt, es sei denn, Sie können klären, wann dies nicht funktioniert.
Clearkimura
@clearkimura, ich habe "den ganzen Weg" von F.Hauri getestet persistence , um eine binäre Bearbeitung in eine Debian 10 -ISO- Datei durchzuführen , eine Partition dahinter zu erstellen fdiskund die Partition zu optimieren, um ein Container für persistente Daten zu werden. Ich kann bestätigen, dass es mit Debian 10 sowohl im UEFI- als auch im BIOS-Modus funktioniert, aber ich kann noch nichts über frühere Versionen (Debian 8 und 9) sagen. Ich entferne den Text aus der Antwort und mache 'nur' diesen Kommentar dazu.
Sudodus
1
Ich bin mir nicht sicher, ob mein Kommentar falsch interpretiert wurde, aber ich wollte nur andeuten, dass der sedBefehl nicht für alle funktioniert. Da dies nur eine Problemumgehung ist, lohnt es sich nicht, weitere Tests durchzuführen.
Clearkimura
1
Ich habe vor mkusb2 Jahren getestet , es funktioniert perfekt auf / für die Erstellung eines dauerhaften Debian 8 und 9. Hier ist meine Antwort auf U & L
GAD3R
1

Zuallererst - ich bin kein Linux-Typ - kenne es nur mehr als der durchschnittliche Joe.

Sie können das yummi-Installationsprogramm verwenden, um einen Debian 10-USB-Boot-Stick (ich habe einen 16-GB-Stick verwendet, den ich herumliegen hatte) zu erstellen und dann von diesem zu booten.

Stecken Sie einen großen USB-Stick in einen anderen Anschluss (ich mache das, während wir mit einem 128 GB Samsung FIT-Flash-Laufwerk sprechen) und doppelklicken Sie dann auf das Symbol Debian installieren auf dem Desktop.

Führen Sie die normalen Schritte durch, bis Sie zur Partitionierung gelangen, und wählen Sie dann manuell aus. Stellen Sie im Bildschirm für die manuelle Partitionierung sicher, dass Ihr 128-GB-USB-Stick ausgewählt ist (oder welcher auch immer Sie verwenden - stellen Sie sicher, dass es sich nicht um das lokale Laufwerk für den von Ihnen verwendeten PC handelt um dies zu tun und sicherzustellen, dass es nicht der 16 GB USB-Stick ist, auf dem der Live-Debian gerade läuft)

Löschen Sie anschließend alle vorhandenen Partitionen vom 128-GB-USB-Stick und erstellen Sie die folgenden 3 Partitionen.

500 MB / boot / efi 1942 MB Linux tauschen den Rest ext2 aus (meins ist 119 GB)

---- Ich würde ext3 oder 4 nicht für einen USB-Stick verwenden - nicht sicher warum, ein Linux-Typ hat mir das vor ein paar Jahren gesagt und ich bin dabei geblieben. Wenn jemand weiß warum, sag es uns bitte.

und schließlich stellen Sie sicher, dass Ihr Bootloader auf dem richtigen USB-Stick installiert ist - dies war auf derselben Seite wie die Partitionierung, als ich es gemacht habe, und es ist leicht zu übersehen - für mich war es ganz unten und ich musste Ändern Sie es von der lokalen SDD des PCs, mit dem ich dies getan habe, auf das Samsung 128 GB FIT-Flash-Laufwerk. Nach all dem, als nächstes ... warte ungefähr eine Stunde (in meinem Fall).

Wenn Debian live sperrt, lautet das Passwort natürlich "live" ohne Anführungszeichen.

Es wurde beendet, während ich dies tippte, also starte ich neu und melde mich bei meinem vollständigen Debian 10-System an, das von meinem Samsung 128 GB FIT USB-Flash-Laufwerk ausgeführt wird. Mit der rd. 10 Minuten für die Verwendung, die ich darauf hatte Ich konnte bestätigen, dass der Speicherplatz so ist, wie er sein sollte (LOTS), und er scheint etwas langsamer als mein lokales NvMe-Laufwerk zu sein, aber schneller als eine Festplatte mit 7200 U / min.

Da gehst du.

Jon
quelle
Oh ja, ich habe Debian 10 KDE nicht kostenlos verwendet, aber ich nehme an, dass alles so funktionieren würde. Ich werde den Stick von meinem Laptop ziehen, den ich zum Erstellen verwendet habe, und ihn auf meinem Desktop und meinem Web-Server ausprobieren, um sicherzugehen es bootet gut über mehrere Computerhersteller und ist nicht auf meinen Laptop beschränkt, den wir sehen werden ... lassen Sie es Sie in ungefähr 10 Minuten wissen ...
Jon
Funktionierte einwandfrei auf allen Systemen - ich musste den sicheren Start auf denen deaktivieren, die ihn im BIOS hatten und aktiviert hatten (x2 - getestet auf fünf Systemen = 1 älteres Modell HP Inspiron, ein echtes älteres Modell Dell XPS, ein Alienware Aurora R4 - sicherer Start) nicht aktiviert, ein Alienware Aurora R8 - sicherer Start aktiviert - musste deaktiviert werden, damit der Start funktioniert, und ein MSI Infinite X auch mit aktiviertem sicherem Start und ich habe ihn deaktiviert). Anders als das np. Dies darf ich nur zu Diagnosezwecken verwenden. Andernfalls würde ich es einfach auf der NvME installieren und sicher von diesem Laufwerk booten und damit fertig sein.
Jon
Sie beschreiben auf gute Weise, wie Sie ein installiertes System auf einem USB-Laufwerk erstellen (wie auf einem internen Laufwerk installiert). Dies ist eine gute Alternative, beantwortet jedoch nicht die ursprüngliche Frage dieses Threads. Wie auch immer, ich denke, Ihre Bemühungen sind es wert, positiv bewertet zu werden (+1).
Sudodus