Table des matières

Construire un LiveUSB avec persistance des données

Présentation

Un live Debian ou dérivé accepte l'option de persistance. Cette option vous permettra de conserver vos réglages, vos données et vos logiciels entre deux sessions live. Pour utiliser la persistance, vous devez créer une partition à côté de celle utilisée par l'ISO, lui assigner un point de montage et préciser au live l'utilisation de cette option.

Pré-requis

Pour commencer, il faut bien évidemment un Live Debian ou dérivé. Vous pouvez choisir un Live Debian officiel ou créer vous-même un Live :

Une fois votre Live téléchargé ou créé, vous devez le transférer sur une clé USB.

Rappel : procédure de transfert de l'ISO sur USB

Le transfert se fera via le Terminal, c’est la méthode recommandée. Toutefois, une méthode graphique est disponible sur ce wiki. Vous pouvez aussi utiliser l'application multi-plateforme Etcher.

Pour commencer, branchez votre clé USB, puis lancez un terminal en mode administrateur “root”. Nous allons identifier la clé USB à utiliser grâce à la commande blkid qui vous donnera un résultat du type :

blkid
/dev/sda1: LABEL="system" UUID="3d378712-1b6e-4f66-b9e8-2a6673c62199" TYPE="ext4" 
/dev/sda5: UUID="65bdec62-8d0e-49ca-b70b-c99340e4ee5e" TYPE="swap"
/dev/sdb1: UUID="F9B8-E691" TYPE="vfat"

Ici, notre clé est identifiée comme UUID=“F9B8-E691”, est formatée en “vfat” et contient la partition sdb1. Notez bien ce sdb1 pour ne pas, par erreur, effacer une partition de votre disque dur interne (ici sda1).

Placez-vous dans le dossier contenant votre ISO (à adapter à votre configuration) :

cd $HOME/ma_debian_perso/

Transférer le contenu de l’ISO sur la clé USB grâce à la commande “dd”. Prenez bien soin de nommer la clé USB “sdb” et pas sdb1, car c’est le disque qui compte, pas la partition et changez “ma_debian.iso” par le nom de votre Live :

dd if=ma_debian.iso of=/dev/sdb bs=4M status=progress; sync

Le temps de transfert sur votre clé USB dépend de la taille de l’ISO et du taux de transfert de votre port USB. Cette opération peut durer 10 à 15 minutes (la progression de la copie s’affiche dans le terminal). Le terminal vous “rendra la main” une fois le transfert terminé.

Création de la partition de persistance

Une fois l'image ISO transférée sur la clé USB, il faut utiliser la place restante. Pour vérifier qu'il reste assez de place, lister les partitions de la clé USB en mode administrateur (ici avec /dev/sdb à adapter à votre situation) :

fdisk -l /dev/sdb

Qui devrait vous renvoyer un résultat de ce type :

fdisk -l /dev/sdb
Disque /dev/sdb : 3,8 GiB, 4040724480 octets, 7892040 secteurs
Modèle de disque : USB2FlashStorage
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0xbd512129
 
Périphérique Amorçage Début     Fin Secteurs Taille Id Type
/dev/sdb1    *           64 1302527  1302464   636M  0 Vide
/dev/sdb2              6060   11755     5696   2,8M ef EFI (FAT-12/16/32)

Dans notre exemple, il reste 3,1G (3,8G - 636M). Il faut maintenant créer la partition de persistance avec fdisk en mode administrateur :

fdisk /dev/sdb
 
Bienvenue dans fdisk (util-linux 2.33.1).
Les modifications resteront en mémoire jusqu'à écriture.
Soyez prudent avant d'utiliser la commande d'écriture.
 
Commande (m pour l'aide) : n
Type de partition
   p   primaire (2 primaire, 0 étendue, 2 libre)
   e   étendue (conteneur pour partitions logiques)
Sélectionnez (p par défaut) : p
Numéro de partition (3,4, 3 par défaut) : 3
Premier secteur (1302528-7892039, 1302528 par défaut) :
Dernier secteur, +/-secteurs ou +/-taille{K,M,G,T,P} (1302528-7892039, 7892039 par défaut) :
 
Une nouvelle partition 3 de type « Linux » et de taille 3,1 GiB a été créée.
 
Commande (m pour l'aide) : w
La table de partitions a été altérée.
Appel d'ioctl() pour relire la table de partitions.
Synchronisation des disques.

Explications des commandes effectuées :

Formatage de la partition de persistance

La partition de persistance doit être formatée en ext4 en mode administrateur avec le label “persistence” (en anglais) grâce à le commande mkfs.ext4 :

mkfs.ext4 -L persistence /dev/sdb3
mke2fs 1.44.5 (15-Dec-2018)
En train de créer un système de fichiers avec 823689 4k blocs et 206336 i-noeuds.
UUID de système de fichiers=455c4996-16eb-4dbe-82da-b7f1ebd13e7e
Superblocs de secours stockés sur les blocs :
    32768, 98304, 163840, 229376, 294912, 819200
 
Allocation des tables de groupe : complété
Écriture des tables d'i-noeuds : complété
Création du journal (16384 blocs) : complété
Écriture des superblocs et de l'information de comptabilité du système de
fichiers : complété

Pour vérifier la partition créée avec la commande lsblk :

lsblk -f /dev/sdb
NAME   FSTYPE  LABEL       UUID
sdb    iso9660 debian-11.7 2020-12-03-02-12-29-00
├─sdb1 iso9660 debian-11.7 2020-12-03-02-12-29-00
├─sdb2 vfat    debian-11.7 9EC9-9685
└─sdb3 ext4    persistence 455c4996-16eb-4dbe-82da-b7f1ebd13e7e

Définition du point de montage

Il faut désormais définir un point de montage afin que la partition de persistance soit reconnue et activée lors de l'utilisation du Live.
Pour plus de facilité, prendre la racine du système Live. Ainsi, toute modification effectuée en session live sera prise en compte.

mount /dev/sdb3 /mnt/
echo "/ union" > /mnt/persistence.conf
umount /mnt

Et voilà, votre clé USB est prête à l'emploi.

Utilisation du Live en mode persistant

Votre clé est prête pour la persistance des données. Pour l'utiliser, au moment du menu de démarrage, presser la touche Tab ⇆ pour “Tabulation” afin d'éditer la ligne de commande du lancement du live. il faut ajouter “persistence” (en anglais) aux options présentes ainsi :

boot=live components quiet splash persistence

Et voilà :-)

Précautions d'emploi

Attention : la persistance des données est très pratique car elle vous permet de garder votre Live à jour et de conserver vos téléchargements, vos modifications.
Cela dit, si vous perdez votre clé USB, la personne qui la trouve pourra consulter votre historique web, vos mots de passe et toutes les données que vous avez ajouté ou modifié.

1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !