Table des matières

, ,

Installer Ubuntu depuis une clef ou un disque USB

Au cours de la procédure nous allons prendre comme exemple le cas d'un liveUSB : avec une clé de 1Gio et le système live mis dessus (environ 700Mio)

À propos de "vétuste", voici l'info que j'ai trouvée, pour la persistance à partir de Ubuntu 20.04 Focal: https://askubuntu.com/questions/1236445/casper-rw-persistence-files-not-working-with-20-04

Il s'agit de nommer un fichier persistant "writable", ou une partition persitante "writable" ou "casper-rw" au choix.

Préparation de la clé USB

Deux solutions s'offrent à vous :

Première possibilité : Partitionnement de la clé USB

Pré-requis

Préparation des partitions

Cette solution consiste à créer une partition au format ext2 ou ext3 ayant pour nom (label) "casper-rw".

L'intérêt de cette solution est qu'il est possible de monter la 2ème partition en ext2 ou ext3 sous windows avec ext2fsd.

Avant de commencer je vous conseille de débrancher tout autre appareil de stockage usb que vous pouvez avoir sur votre ordinateur (appareil photo, clé usb, disque dur externe)

Voici l'exemple avec notre clé USB de 1Gigaoctet.

Utilisation de GParted.

Si gparted n'est pas installé :

sudo apt-get install gparted

Puis :

gksudo gparted


Choisissez grâce au menu déroulant en haut à droit votre clé USB.
La clé est représentée sous la forme /dev/sdX. Mémorisez cette lettre X, on en aura besoin par la suite. Démonter la partition existante sur cette clé en faisant un clic droit sur la partition et en choisissant "Démonter".

Création des partitions

Création d'une première partition FAT32 de 750Mo, avec le flag “actif” : C'est la partition qui contiendra le LiveUSB d'Ubuntu et d'une partition ext2 ou ext3 prenant le reste de la place de la clé USB qui va contenir les données persistantes.

Partition N°1 :

Cliquer sur la partition existante puis cliquer sur "Redimensionner/Déplacer". En face de "Nouvelle taille" taper 750 puis taper 0 en face de "Espace libre précédant". Cliquer ensuite sur "Redimensionner/Déplacer".

Partition N°2 :

Cliquer sur "non alloué" puis sur Nouveau. Dans la nouvelle fenêtre mettre : Par défaut GParted choisit tout l'espace non alloué restant pour créer une nouvelle partition primaire, ce qui est ce qu'on veut pour notre exemple. Il suffit donc de choisir le "Système de fichier" : ext2 ou ext3 sachant que ext3 marche mieux mais prend plus de place.
Cliquer ensuite sur "Ajouter".

Aucun changement n'est effectué pour l'instant donc il faut cliquer sur "Appliquer" pour effectuer les opérations. Une fois les changements terminés, revenez à la fenêtre principale de GParted, faites un clic-droit sur la partition FAT 32 de 750 Mo et choisissez "Gérer les drapeaux".
Cocher boot et fermer la fenêtre.
Mémoriser la dénomination de la partition en ext2 ou ext3 marquée dans GParted sous la forme /dev/sdXy.

Nommer la partition en ext2 ou ext3

Pour que le système sache où enregistrer les données persistantes il faut donner le nom casper-rw à la partition qui doit les contenir.
Dans un terminal :

sudo e2label /dev/sdXy casper-rw

En remplaçant X et y par la lettre et le chiffre correspondant.

Création du secteur de démarrage

Il faut enfin créer le secteur de démarrage :

sudo install-mbr /dev/sdX

(en remplaçant X par la lettre que vous avez mémorisé précédemment !)

Si vous obtenez "sudo: install-mbr: command not found", exécutez d'abord :

sudo apt-get install mbr

Ensuite passez à l'installation du système de base.

Seconde possibilité : fichier contenant un système de fichier

Le principe est de créer à la racine d'une partition (une partition de clé USB de disque dur ou autre, tant qu'elle est au format FAT, ext2 ou ext3) un fichier nommé "casper-rw" que l'on va formater en ext2 ou ext3.

L'intérêt de cette solution est que la clé USB ne contient qu'une partition :

Pour notre clé USB

On part du principe que la clé USB est formatée en FAT (FAT16 ou FAT32) et qu'elle contient l'installation live de (K)(X)ubuntu (voir installation sur cette page).

dd if=/dev/zero of=/media/cleUSB/casper-rw bs=1M count=250

si la clé USB est montée dans le dossier /media/cleUSB/

mkfs.ext2 -L casper-rw /media/cleUSB/casper-rw

ou

mkfs.ext3 -L casper-rw /media/cleUSB/casper-rw

Répondez "oui" à la question.

Installation du système de base

Pour ubuntu 10.4 ce n'est pas initrd.gz mais initrd.lz. Copier initrd.lz et renommer le en initrd.gz. Normalemnt ca marche.
DEFAULT persistent
GFXBOOT bootlogo
GFXBOOT-BACKGROUND 0xB6875A
APPEND  locale=fr_FR bootkbd=fr console-setup/layoutcode=fr console-setup/variantcode=nodeadkeys file=preseed/ubuntu.seed boot=casper initrd=initrd.gz quiet splash --
LABEL persistent
  menu label ^Start Ubuntu 7.10 in persistent mode
  kernel vmlinuz
  append  locale=fr_FR bootkbd=fr console-setup/layoutcode=fr console-setup/variantcode=nodeadkeys file=preseed/ubuntu.seed boot=casper persistent initrd=initrd.gz quiet splash --
LABEL live
  menu label ^Start or install Ubuntu
  kernel vmlinuz
  append  locale=fr_FR bootkbd=fr console-setup/layoutcode=fr console-setup/variantcode=nodeadkeys file=preseed/ubuntu.seed boot=casper initrd=initrd.gz quiet splash --
LABEL xforcevesa
  menu label Start Ubuntu in safe ^graphics mode
  kernel vmlinuz
  append  file=preseed/ubuntu.seed boot=casper xforcevesa initrd=initrd.gz quiet splash --
LABEL driverupdates
  menu label Install with driver ^update CD
  kernel vmlinuz
  append  file=preseed/ubuntu.seed boot=casper debian-installer/driver-update=true initrd=initrd.gz quiet splash --
LABEL oem
  menu label ^OEM install (for manufacturers)
  kernel vmlinuz
  append  file=preseed/ubuntu.seed boot=casper oem-config/enable=true initrd=initrd.gz quiet splash --
LABEL check
  menu label ^Check CD for defects
  kernel vmlinuz
  append  boot=casper integrity-check initrd=initrd.gz quiet splash --
LABEL memtest
  menu label ^Memory test
  kernel mt86plus
  append -
LABEL hd
  menu label ^Boot from first hard disk
  localboot 0x80
  append -
DISPLAY isolinux.txt
TIMEOUT 300
PROMPT 1
F1 f1.txt
F2 f2.txt
F3 f3.txt
F4 f4.txt
F5 f5.txt
F6 f6.txt
F7 f7.txt
F8 f8.txt
F9 f9.txt
F0 f10.txt

Normalement c'est terminé vous pouvez enfin utiliser votre clé USB pour booter Ubuntu partout !

Activer le mode persistant

Principe: ajouter le paramètre persistent au noyau au démarrage

Au démarrage de l'ordinateur, quand le système live démarre, ajoutez l'option persistent FIXME plus de détails

Au démarrage de l'ordinateur, quand le système live démarre appuyez sur F6.

ajoutez l'option persistent avant les "- -"

ajouter un screenshot FIXME

Il semble qu'il y ait un bug et que la persistance ne marche pas sous feisty. ce bug est répertorié chez launchpad.net

Avec notre clé usb

Editez le fichier syslinux.cfg qui est sur la clé USB et changer la ligne append et ajoutez le mot clé persistent

avant

LABEL live
  menu label ^Start or install Ubuntu
  kernel vmlinuz
  append  file=preseed/ubuntu.seed boot=casper initrd=initrd.gz quiet splash --

après

LABEL live
  menu label ^Start or install Ubuntu
  kernel vmlinuz
  append  file=preseed/ubuntu.seed boot=casper initrd=initrd.gz quiet splash persistent --

Pour le cas d'un live cd.

Il faut extraire l'image iso du cd.

Éditez le fichier isolinux.cfg et modifiez-le de la même manière que la clé USB.

Régénérer l'image iso du CD.

À retenir

Il n'est pas nécessaire de modifier le MBR du disque pour le rendre amorçable.

Le système n'est pas persistant :

file=preseed/ubuntu.seed ## pour ubuntu
file=preseed/xubuntu.seed ## pour xubuntu ETC ETC
Bug pour Ubuntu 8.04 LTS Hardy Heron

Un bug du live CD d'Ubuntu 8.04 LTS Hardy Heron rend l'option 'persistent' non fonctionnelle. Il se caractérise par l'apparition d'une invite de commande (initramfs) au lieu du bureau. Pour solutionner ce problème, après avoir rebranché la clé usb, remplacez le fichier initrd.gz, à la racine de la partition FAT32, par le nouveau corrigé (par la communauté) :

wget http://launchpadlibrarian.net/13998650/initrd.gz
mv initrd.gz /media/ubuntu/
wget http://launchpadlibrarian.net/14407459/initrd.gz
mv initrd.gz /media/ubuntu/

Voir aussi

—-

Contributeurs : Damocles, Guyms, honeyshell