====== Construire un LiveUSB avec persistance des données ====== * Objet : Construire un LiveUSB avec persistance des données * Niveau requis :{{tag>débutant avisé}} * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) * Suivi : {{tag>à-tester}} * Création par [[user>deuchdeb]] le 23/07/2010 * Mise à jour par [[user>arpinux]] le 21/05/2023 * Testé par .... le .... * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=148282#p148282 |C'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) ===== 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 : * Debian Live officiel : https://www.debian.org/CD/live/index.fr.html * Debian Live avec les non-free : https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/current-live/amd64/iso-hybrid/ * Debian Live personnalisé : https://debian-facile.org/doc:install:live-build 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 [[doc:environnements:gnome:gnome-disk-utility#graver-une-iso-sur-cle-usb|méthode graphique]] est disponible sur ce wiki. Vous pouvez aussi utiliser l'application multi-plateforme [[https://etcher.balena.io/|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 : * commande : n pour "nouvelle partition" * type de partition : p pour "primaire" * numéro de partition : ici 3 (les deux premières partitions étant utilisées) * premier et dernier secteur : par défaut pour occuper toute la place disponible * commande : w pour "write", écrire la table de partition ===== 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. * Montage de la partition et mise en place du fichier de configuration en root : mount /dev/sdb3 /mnt/ echo "/ union" > /mnt/persistence.conf * Démontage de la partition en root : 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é.