Préparation d'une clef USB pour faire des sauvegardes (1/3)

moo à toi,
Contexte
Je vais me servir d’une clef USB pour faire les sauvegardes du blog. Sachant que c’est une clef USB qui a pas mal été utilisé par le passé. Je vais la préparer et programmer une vérification et éventuellement une réparation du système de fichier.
Présentation
Pour ça, je vais récupérer des informations avec la commande
lsblk, faire une partition primaire sur la clef avec
fdisk au format linux pour préparer la partition au
formatage en ext4 avec la commande mkfs.ext4.
Je vais ensuite configurer le fichier /etc/fstab pour que
la clef soit reconnue par le système à chaque redémarrage et pour
récupérer les bonnes infos, j’utiliserai blkid.
Ensuite, je te montrerai dans un autre post, le petit script
bash pour vérifier la clef et planifierai son
exécution.
3 petites choses : - Je vais ajouter des commentaires sur les lignes
de commande où dans les résultats des commandes, les commentaires seront
identifiable par #. - Il faudra que tu personnalises
certaines commander pour ça, je vais l’indiquer entre crochet :
<valeur à changer> - Si tu as des messages d’erreurs
qui indique des soucis de droits sur les commandes, lance les commandes
avec sudo devant pour les exécuter en tant que
root.
Cambouis
Préparation_de_la_clef_USB
Identification
Pour identifier la clef USB branchée sur le système, il faut lancer
la commande lsblk.
Ce qui donne quelque comme ceci :
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 905M 0 loop
sda 8:0 1 14.5G 0 disk # Ici, c'est ma clef USB, on peut la reconnaitre à sa taille 14.5Go et par élimination des autres éléments ci-dessous.
mmcblk0 179:0 0 29.7G 0 disk # Ici, c'est le périphérique de mon système qui contient les deux partitions ci-dessous
├─mmcblk0p1 179:1 0 512M 0 part /boot/firmware # Ici, on voit `mmcblk0p1`, c'est la partition primaire N°1 qui contient `/boot/firmware`
└─mmcblk0p2 179:2 0 29.2G 0 part / # Ici, c'est la partition primaire N°2 et contient `/`, c'est la racine de mon système donc pas touche.
zram0 254:0 0 905M 0 disk [SWAP]Si tu n’as pas de partition sur ton périphérique de stockage, tu auras le même résultat que moi. Si il y a des partitions présentes ou plusieurs, tu verras quelques choses qui ressemble à ceci au niveau de ta clef :
sda 8:0 1 14.5G 0 disk
└─sda1 8:1 1 14.5G 0 part
# sda2 … si tu as une deuxième partition[!NOTE] Ici, le nom du périphérique est
/dev/sdamais il est possible que le nom de ton périphérique se présente sous ce nom/dev/nvme0n1. Pour la petite explication :/dev/sdX-> Périphérique connecté sur une interface SATA où SCSI/dev/nvm0nX-> Périphérique connecté sur une interface NVMe
Maintenant, que tu as fais cette commande, note le nom de ton
stockage. Pour moi, ça sera /dev/sda. Si tu as des
partitions, tu peux prendre un de tes partitions par exemple
/dev/sda1 pour y mettre tes sauvegardes. Je ferai surement
un post sur la gestion de disques et donc des partitions.
Création de la partition
sudo fdisk /dev/<clef usb>
Welcome to fdisk (util-linux 2.41).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS (MBR) disklabel with disk identifier 0x0e166dae.
Command (m for help): n # Touche `n` pour la création d'une nouvelle partition
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): # Je ne mets rien parce que par défaut, il fera une partition primaire
Using default response p.
Partition number (1-4, default 1): # Pareil, je ne mets rien, ça sera la partition primaire N°1.
First sector (2048-30326783, default 2048): # Je laisse aussi par défaut pour que la partition commence au début de la clef USB
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-30326783, default 30326783): # Et pour finir, je laisse vide encore pour que la partition aille jusqu'au dernier secteur.
Created a new partition 1 of type 'Linux' and of size 14.5 GiB. #La partition est directement de type `Linux`.
Command (m for help): w #Attention, c'est ici que je valide l'écriture sur le périphérique si vous n'êtes pas sur, ne valider pas avec `w`.
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.Formater la clef
On va maintenant formater la nouvelle partition de la clef au bon format.
[!WARNING] Le formatage va écraser l’index de ta partition USB donc tu n’auras plus accès aux données dessus, pense à vérifier qu’il n’y a rien d’important sur ta clef.
On va prendre le format ext4, c’est le format classique
sous nunux et donc on lance la commande suivante :
mkfs.ext4 /dev/<partition>
mke2fs 1.47.2 (1-Jan-2025)
Creating filesystem with 3790592 4k blocks and 948416 inodes
Filesystem UUID: 4e0e3caa-0c7f-451e-912f-468a38891b9f
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208
Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: doneVoila ta partition USB est formaté en ext4.
/etc/fstab
Récupération des informations
[!IMPORTANT] Si tu as plusieurs périphériques de stockages branché sur ton ordinateur, il faut savoir qu’au démarrage, le nom des périphériques est donné dans l’ordre de réponses des périphériques. Donc si ta clef réponds vite, elle sera en
/dev/sdamais si ton autre périphérique réponds plus vite, ta clef sera en/dev/sdb.
Pour pallier à ce petit soucis, on va récupérer l’UUID
de ta clef qui lui ne change jamais.
Pour ça, on va lancer la commande suivante :
blkid | grep sda # On fait un pipe (|) pour que le résultat de `blkid` soit l'entrée de la commande suivante, c'est à dire `grep` qui sert à chercher et là, on cherche notre clef `sda`.
/dev/sda: UUID="c3cd90u2-433d-4ba6-9X55-85338871903c" BLOCK_SIZE="4096" TYPE="ext4"Je te laisse noter ton UUID.
Choix du répertoire
Pour que la clef soit accessible, on va demander à ce que le contenu
de /dev/sda soit dans un répertoire accessible par notre
utilisateur. Sachant que pour moi la clef est là pour les backups, je
vais créer un répertoire dans le home de mon utilisateur pour accueillir
le contenu de la clef :
mkdir ~/backups #mkdir pour make directory, ça créé un répertoire, le tilde (~), c'est un raccourci pour dire mon home et `backups` le nom du répertoire.Modification du fichier
Ensuite pour la modification on ne va pas s’embêter, on va lancer la commande suivante à personnaliser avec tes éléments:
echo 'UUID="<UUID>" /home/<utilisateur·ice>/<repertoire> ext4 defaults 0 2' >> /etc/fstab # On reviendra sur `/etc/fstab` dans un autre post.Maintenant pour que systemd sache que le fichier à été
changé, il faut taper cette commande :
sudo systemctl daemon-reloadEt pour finir :
mount -a #Cette commande va lire le contenu de `/etc/fstab` et monter les lecteurs.Ton périphérique est maintenant monté sur le répertoire que tu as indiqué. /
Tu peux le vérifier en tapant la commande :
df -f /home/<utilisateur·ice>/repertoireTu devrais voir ton périphérique monté dans ton répertoire.
Tu peux maintenant aller dans ton répertoire pour écrire sur ton stockage :
cd /home/<utilisateur·ice>/<repertoire>