[BTRFS] Agradissement d'une partition (résolu)

Questions et astuces concernant l'installation et la configuration d'archlinux
AVCESAR
newbie
Messages : 2
Inscription : dim. 09 mars 2025, 14:51

[BTRFS] Agradissement d'une partition (résolu)

Message par AVCESAR »

Bonjour,

Je suis nouveau sur Arch, je viens de Debian. J'utilise un serveur de machines virtuelles ou j'ai une machine virtuelle Debian générique avec une installation minimale. Cette machine contiens deux disques .qcow deux pour le root et home en ext4. Quand je veux créer une nouvelle machine, je copies les deux disques puis, je les agrandis en fonction de l'usage de la nouvelle VM. D'habitudes je suis les étapes de ce tutoriel : https://linuxconfig.org/how-to-resize-e ... out-umount.

J'essaye de reproduire le même schéma avec Arch ou j'ai une machine générique avec un disque btrfs contenant les subvolumes pour root et d'autres proposées par archinstall. Le deuxième est aussi en btrfs mais ne contiens que le subvolume pour le home.
J'ai essayé de procéder de la même manière pour agrandir le disque en l'agradissants avec qemu-image. Après quoi, je supprime la partition contenant le root et les autres subvolumes (/dev/vda2) avec fdisk et je la recrée avec le même bloc de départ et un bloc de fin différent.

Après cela, en redémarrant, le système ne démarre plus et j'aboutis à un shell de secours. Un message me dis qu'il manque un disque en me précisent l'ID.

Pour commencer, est ce que j'ai la bonne approche en séparant les deux disque comme il est historiquement recommandé avec ext4?
Comment agrandir le disque dur btrfs?

Il faut redéfinir un tree fs ou quelque chose?


/dev/vda1 => boot efi
/dev/vda2 => btrfs avec subvlumes root...

/dev/vdb1 => btrfs avec subvolume home

Le tout avec CoW.

Je ne sais pas si ça aide mais:

Code : Tout sélectionner

btrfs fi show /home
ERROR: not a valid btrfs filesystem: /home
Dernière modification par AVCESAR le dim. 09 mars 2025, 18:01, modifié 1 fois.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17563
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [BTRFS] Agradissement d'une partition

Message par benjarobin »

Bonjour,
Je n'ai pas forcément tout compris ce que tu as fait.

Tout d'abord pour répondre à ta question, il est parfaitement inutile de séparer en 2 partitions (home et root), tu peux très bien avoir une seule partition.
Par contre je ne comprends pas pourquoi tu as plusieurs disques qcow ? Quel est l’intérêt ? Sur un même disque tu peux très bien avoir plusieurs partitions. Après je peux comprendre l’intérêt dans certains cas de vouloir séparer dans une VM le home et la racine sur 2 disques séparés (permet de partager le home sur plusieurs VM, ...). Bref tout dépend de ton besoin, mais actuellement ce n'est pas clair sur ce point.

Et sinon pour agrandir une partition, quelque soit le système de fichier, la méthode suivante doit être utilisé :
- Agrandir la taille du disque (alors que la VM est éteinte)
- Refaire la table de partition de telle manière que la partition commence toujours au même endroit.
Avec parted c'est assez simple, par exemple quelque chose comme : parted -s /dev/sda "resizepart 2 -1" (voir la doc...)
- Demander au système de fichier (depuis le système démarré) de s’agrandir afin de prendre toute la place :
- Pour de l'ext4 : resize2fs /dev/sda1,
- Pour du BTRFS : btrfs filesystem resize max / (voir https://wiki.archlinux.org/title/Btrfs#Resizing)
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
AVCESAR
newbie
Messages : 2
Inscription : dim. 09 mars 2025, 14:51

Re: [BTRFS] Agradissement d'une partition (résolu)

Message par AVCESAR »

benjarobin a écrit : dim. 09 mars 2025, 17:52 Tout d'abord pour répondre à ta question, il est parfaitement inutile de séparer en 2 partitions (home et root), tu peux très bien avoir une seule partition.
Par contre je ne comprends pas pourquoi tu as plusieurs disques qcow ? Quel est l’intérêt ? Sur un même disque tu peux très bien avoir plusieurs partitions. Après je peux comprendre l’intérêt dans certains cas de vouloir séparer dans une VM le home et la racine sur 2 disques séparés (permet de partager le home sur plusieurs VM, ...). Bref tout dépend de ton besoin, mais actuellement ce n'est pas clair sur ce point.
C'est exactement cela. Ça me permet de copier juste le home ou le root pour faire une sauvegarde depuis l’hôte, de le monter sur une autre VM, de formater le root pour changer de distribution...
J'ai vu que btrfs permet des snapshot, de supprimer un subvolume root pour réinstaller le système...

Mais il me semble que la best practice reste de séparer home et root dans deux disque physique séparé de préférence.
Je demande parce-que je ne connais pas assez btrfs pour faire un choix définitif. Mais au moins je peux tout bouger facilement si je change d'avis.
benjarobin a écrit : dim. 09 mars 2025, 17:52 Et sinon pour agrandir une partition, quelque soit le système de fichier, la méthode suivante doit être utilisé :
- Agrandir la taille du disque (alors que la VM est éteinte)
- Refaire la table de partition de telle manière que la partition commence toujours au même endroit.
Avec parted c'est assez simple, par exemple quelque chose comme : parted -s /dev/sda "resizepart 2 -1" (voir la doc...)
- Demander au système de fichier (depuis le système démarré) de s’agrandir afin de prendre toute la place :
- Pour de l'ext4 : resize2fs /dev/sda1,
- Pour du BTRFS : btrfs filesystem resize max / (voir https://wiki.archlinux.org/title/Btrfs#Resizing)
J'ai réesayé avec parted au lieux de fdisk et ça marche maintenant.

Avec fdisk au démarrage, il indiquait:

Code : Tout sélectionner

Waiting 10 seconds for device /dev/disk/by-partuuid/03*******************************
Dans tous les cas parted règle mon problème.

Et le subvolume du @home était invisible car la partition n'était pas montée. J'ai généré un fstab et c'est réglé.
Répondre