Comment puis-je obtenir un live-USB pour utiliser une partition pour la persistance?

26

Je veux installer Ubuntu sur un disque dur USB afin qu'il s'exécute sur tous les systèmes, qui peuvent exécuter le LiveCD et stocker des données persistantes sur une partition ext4 régulière plutôt qu'un casper-rwfichier. Dans tous les autres cas, il devrait se comporter comme une installation régulière d'Ubuntu .

Le problème

Avec Startup Disk Creator, on est capable de mettre l'image LiveCD sur un périphérique USB. Les modifications peuvent être rendues persistantes mais sont stockées dans un fichier limité à quelques Go . Ce fichier persistant (en plus d'être limité en taille) a le problème de ne pas être lisible comme les données sur une partition normale . *

Ma question

Alors, comment puis-je obtenir le LiveCD sur un disque USB de telle manière que les modifications soient stockées dans une partition normale plutôt que dans un fichier de persistance? De plus, les changements persistants ne devraient pas être limités à quelques Go mais utiliser une partition entière de plusieurs 100 Go si besoin est.

Je soupçonne qu'il existe un tutoriel pour cela, mais mon google-fu n'est tout simplement pas assez bon pour le trouver.

tl; dr:

Le système doit fonctionner sur toutes les configurations matérielles, avoir toutes les fonctionnalités du LiveCD et être stocké sur une partition ext4 régulière sans utiliser de disques virtuels et de casper-rw. FU casper-rw.


* Je sais que l'on pourrait monter le fichier casper-rw à partir d'un autre système d'exploitation et accéder aux données de cette façon, mais c'est un problème.

embrouiller
la source
Pourquoi ne pas installer la clé USB de la manière habituelle? Exécutez un CD live et définissez-le comme votre partition racine. (Plus de tracas qu'une configuration live-CD, bien sûr, mais assez facile.)
jpaugh
Parce que la version sur le live-CD n'est pas spécifique au matériel et surtout elle a la possibilité d'installer ubuntu sur un autre appareil.
con-f-use
Questions supplémentaires: Comment puis-je apporter des modifications au fstab persistant? La réponse dans askubuntu.com/q/56719/17789 semble obsolète.
con-f-use du
De nos jours, syslinux, (6.03), sera installé sur NTFS donc il n'y a plus de limite de taille FAT32 de 4 Go. Voir YUMI
CSCameron

Réponses:

28

C'est très facile à faire, bien que le nom "casper-rw" apparaisse encore une fois :)

  1. Votre disque USB cible doit avoir au moins deux partitions; Je recommande d'utiliser GParted pour créer une nouvelle table de partition.

    • La première partition doit être vfat / FAT32 et une taille minimale de 750 Mo (ou plus si vous utilisez une image DVD en direct).
    • La deuxième partition doit être ext4 , dimensionnée selon ce que vous voulez que votre stockage persistant soit (pas de limites), mais elle doit être étiquetée casper-rw(tout en minuscules, sans guillemets)

    Entrez la description de l'image ici

    • Vous pouvez bien sûr ajouter des troisième, quatrième, partitions étendues / logiques, etc. si vous le souhaitez.

    Remarque: je préfère utiliser UNetbootin car cela facilite l'édition de la configuration de syslinux . Vous pouvez utiliser votre propre créateur USB, mais vous devez ensuite modifier les étapes ci-dessous de manière appropriée. Notez également que GParted 0.18.0 semble avoir des problèmes de partitionnement de la clé USB. Donc, si vous avez le problème, utilisez le CD GParted en direct pour le partitionnement.

  2. Utilisez UNetbootin pour graver l'ISO de votre CD live sur la première partition USB (vfat) .

    • Mettez une petite taille pour l'option de persistance d'UNetbootin (disons, 10 Mo) pour vous faciliter la vie; ne vous inquiétez pas, nous n'utiliserons pas réellement ce fichier casper-rw .

    Entrez la description de l'image ici

  3. Une fois que tout est fait, la dernière étape consiste à supprimer le petit casper-rw fichier créé sur la partition vfat sur laquelle vous avez installé le CD live, afin que la grande casper-rwpartition ext4 soit utilisée à la place. Montez cette partition (ici sdb1) et supprimez /casper-rw.

  4. La persistance (via l' persistentoption du noyau) devrait déjà être configurée si vous avez utilisé UNetbootin, donc éjectez l'USB en toute sécurité et vous êtes prêt à partir!

PS: Si vous ne souhaitez pas utiliser UNetbootin et que vous utilisez le "créateur de disque de démarrage" dans Ubuntu, vous devez effectuer quelques modifications dans votre syslinux/txt.cfgfichier comme suit:

live par défaut
étiquette en direct
  étiquette de menu ^ Essayez Ubuntu sans installer
  noyau /casper/vmlinuz.efi
  append file = / cdrom / preseed / ubuntu.seed boot = casper cdrom-detect / try-usb = true noprompt persistent floppy.allowed_drive_mask = 0 ignore_uuid initrd = / casper / initrd.lz splash silencieux -
étiquette installation en direct
  étiquette de menu ^ Installer Ubuntu
  noyau /casper/vmlinuz.efi
  append file = / cdrom / preseed / ubuntu.seed boot = casper only-ubiquity cdrom-detect / try-usb = true noprompt persistant floppy.allowed_drive_mask = 0 ignore_uuid initrd = / casper / initrd.lz splash silencieux -
vérification des étiquettes
  étiquette du menu ^ Vérifier que le disque n'est pas défectueux
  noyau /casper/vmlinuz.efi
  ajouter boot = casper intégrité-check cdrom-detect / try-usb = true persistant noprompt floppy.allowed_drive_mask = 0 ignore_uuid initrd = / casper / initrd.lz splash silencieux -
label memtest
  étiquette de menu Test ^ mémoire
  noyau / install / mt86plus
étiquette hd
  étiquette de menu ^ Démarrer à partir du premier disque dur
  localboot 0x80
ish
la source
Ne vous précipitez pas, prenez votre temps et testez-le. Et faites-moi savoir si vous avez des problèmes / questions dans les commentaires :)
ish
Y a-t-il une raison de ne pas étendre ces partitions?
con-f-use
Je vous remercie beaucoup, cela a fonctionné. Une idée si cela fonctionne aussi avec les partitions ntfs / fat32-casper-rw? Je suppose que non ...
con-f-use
1
Non, la partition doit être ext2 / ext3 / ext4 ... vous pouvez cependant avoir des partitions NTFS supplémentaires qui vous permettront de démarrer WinPE, etc.
ish
3
cette solution n'a pas fonctionné lors de l'installation de LXLE via Unetbootin. Il se coince dans un écran qui dit Busybox et un pront avec (initramfs)
luisgonzalez
3

Les partitions persistantes ne fonctionnent plus avec les installations de type syslinux telles que SDC, UNetbootin, Rufus, etc. depuis le 14.04 (sauf si la partition se trouve sur un lecteur séparé). Une tentative de démarrage se terminera par BusyBox.

Syslinux 6.03 offre une prise en charge complète de NTFS (et de nombreux autres fs), il n'y a donc plus de limite de taille de fichier persistante de 4 Go requise pour satisfaire FAT32. YUMI utilise Syslinux 6.03 tout comme RUFUS.

https://www.pendrivelinux.com/yumi-multiboot-usb-creator/

https://rufus.akeo.ie/

Mkusb est un fabricant de lecteur flash amorçable de type grub2 qui utilise une partition FAT32 pour le démarrage, une partition ISO9660 en écriture uniquement pour le système d'exploitation, une partition ext4 casper-rw pour la persistance et une partition de données NTFS accessible à la fois à Linux et à Windows.

https://help.ubuntu.com/community/mkusb

Il devrait satisfaire vos spécifications.

CSCameron
la source
Oui, c'était aussi mon expérience (fin avec BusyBox) avec Ubuntu 17.10 (Artful Aardvark). J'ai utilisé une combinaison de pendrivelinux.com et une deuxième installation de clé USB pour créer la casper-rwpartition ext4.
Peter Mortensen
0

Pour ce que ça vaut, voici comment je fais un lecteur flash persistant:

Démarrez Live CD ou Live USB. Branchez le lecteur flash. Commencez gparted.

Créez une partition FAT32 de 2 Go (sur le côté gauche de la barre). (la taille est facultative, un espace supplémentaire peut être utilisé pour le stockage de fichiers et le transfert vers des machines Windows).

Créez une partition ext2 de 4 Go à droite de celle-ci, étiquetée "casper-rw". (ext3 et ext4 fonctionnent également).

Créez une partition dans l'espace restant et nommez-la "home-rw". (facultatif, crée une partition home séparée).

Fermer gparted. Démontez et remontez le lecteur flash. Démarrez "Créer un disque de démarrage USB en direct", (créateur USB). Sélectionnez "Jeter à l'arrêt". Appuyez sur "Make Startup Disk. Lorsque usb-creator a terminé, accédez au dossier racine de votre Live USB Entrez dans le répertoire syslinux, (ou pour UNetbootin le répertoire racine). Rendez le fichier syslinux.cfg accessible en écriture Remplacez le contenu du fichier syslinux. cfg avec:

default persistent
label persistent
  say Booting a persistent Ubuntu session...
  kernel /casper/vmlinuz
  append  file=/cdrom/preseed/ubuntu.seed boot=casper persistent initrd=/casper/initrd.lz quiet splash noprompt --

Arrêtez, retirez le CD, redémarrez.

Pour la première fois, accédez aux utilisateurs et aux groupes et créez un compte avec vous-même en tant qu'administrateur, avec un mot de passe si vous le souhaitez.

Remarque: Le code ci-dessus contournera les écrans Try / Install et Language.

CSCameron
la source
cette solution n'a pas fonctionné lors de l'installation de LXLE via Unetbootin. Il est coincé dans un écran qui dit Busybox et un pront avec (initramfs)
luisgonzalez
@luisgonzalez Depuis 14.04, les partitions persistantes ne fonctionnent pas avec les installations de type syslinux (SDC, UNetbootin, Universal), les partitions persistantes fonctionnent avec les installations de type grub2 (mkusb). L'utilisation de mkusb est beaucoup plus facile que n'importe laquelle des réponses ci-dessus.
CSCameron