1 votes

Problèmes de configuration de Swap et de déplacement de /home vers un nouveau disque chiffré sur Ubuntu 24.04

J'ai Ubuntu 24.04 installé avec les paramètres de partitionnement de disque par défaut choisis par l'installateur, y compris le chiffrement LVM. J'ai deux SSD :

Premier disque avec les partitions suivantes :

/boot/efi

/boot

/

Deuxième disque (/dev/sda)

Mon objectif est de :

Allouer une partition d'échange de 20 Go à partir du premier disque, qui est chiffrée, et l'activer. Formater le deuxième disque en Ext4, le chiffrer, l'ajouter à LVM et déplacer la partition /home sur ce disque.

Problème :

Après le redémarrage, le système a demandé le mot de passe de déchiffrement (le même mot de passe pour les deux partitions), a tenté de charger le système, mais est ensuite passé à une initramfs avec l'alerte : "/dev/mapper/ubuntu--vg-ubuntu--lv n'existe pas". J'ai remarqué que les fichiers fstab et crypttab étaient vides. Les remplir manuellement n'a pas résolu le problème.

Question :

Comment puis-je configurer correctement la partition d'échange et déplacer /home vers le deuxième disque chiffré sans causer de problèmes de démarrage ? Quelles étapes pourrais-je manquer ou faire incorrectement ?

Voici les étapes que j'ai effectuées à partir d'un environnement LiveCD :

Ajout de la partition d'échange :

ubuntu@ubuntu:~$ sudo pvs
ubuntu@ubuntu:~$ sudo vgs
ubuntu@ubuntu:~$ sudo lvs
ubuntu@ubuntu:~$ sudo e2fsck -f /dev/mapper/ubuntu--vg-ubuntu--lv
ubuntu@ubuntu:~$ sudo umount /target/boot/efi
ubuntu@ubuntu:~$ sudo umount /target/boot
ubuntu@ubuntu:~$ sudo umount /target/*
ubuntu@ubuntu:~$ sudo umount /target
ubuntu@ubuntu:~$ sudo e2fsck -f /dev/mapper/ubuntu--vg-ubuntu--lv
ubuntu@ubuntu:~$ sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv 95G
ubuntu@ubuntu:~$ sudo lvreduce -L 95G /dev/mapper/ubuntu--vg-ubuntu--lv
ubuntu@ubuntu:~$ sudo lvcreate -L 20G -n swap_1 ubuntu-vg
ubuntu@ubuntu:~$ sudo mkswap /dev/ubuntu-vg/swap_1
ubuntu@ubuntu:~$ sudo swapon /dev/ubuntu-vg/swap_1
ubuntu@ubuntu:~$ sudo nano /etc/fstab
#Ligne ajoutée : /dev/ubuntu-vg/swap_1 none swap sw 0 0

Travailler avec le deuxième disque :

ubuntu@ubuntu:~$ sudo cryptsetup luksFormat /dev/sda1
ubuntu@ubuntu:~$ sudo cryptsetup open /dev/sda1 sda1_crypt
ubuntu@ubuntu:~$ sudo pvcreate /dev/mapper/sda1_crypt
ubuntu@ubuntu:~$ sudo vgextend ubuntu-vg /dev/mapper/sda1_crypt
ubuntu@ubuntu:~$ sudo blockdev --getbsz /dev/mapper/sda1_crypt
ubuntu@ubuntu:~$ sudo blockdev --getbsz /dev/mapper/dm_crypt-0
ubuntu@ubuntu:~$ sudo vgscan
ubuntu@ubuntu:~$ sudo vgchange -ay
ubuntu@ubuntu:~$ sudo vgextend ubuntu-vg /dev/mapper/sda1_crypt
ubuntu@ubuntu:~$ sudo lvdisplay /dev/mapper/ubuntu--vg-ubuntu--lv
ubuntu@ubuntu:~$ sudo vgscan --mknodes
ubuntu@ubuntu:~$ cat /etc/lvm/lvm.conf | grep -i "allow_mixed_block_sizes" | grep -v "#"
ubuntu@ubuntu:~$ sudo fdisk -l /dev/sda1
ubuntu@ubuntu:~$ sudo nano /etc/lvm/lvm.conf
# Trouver allow_mixed_block_sizes et le définir à 1
ubuntu@ubuntu:~$ sudo vgextend ubuntu-vg /dev/mapper/sda1_crypt
ubuntu@ubuntu:~$ sudo lvcreate -L 476.9G -n home ubuntu-vg
ubuntu@ubuntu:~$ sudo mkfs.ext4 /dev/ubuntu-vg/home
ubuntu@ubuntu:~$ sudo mount /dev/ubuntu-vg/home /mnt
ubuntu@ubuntu:~$ sudo rsync -aXS /home/. /mnt/.
ubuntu@ubuntu:~$ sudo nano /etc/fstab
# Ligne ajoutée : /dev/ubuntu-vg/home /home ext4 defaults 0 0
ubuntu@ubuntu:~$ sudo umount /mnt
ubuntu@ubuntu:~$ sudo mount -a

0voto

LocalUser Points 111

J'ai trouvé le hack qui m'aide et résout mon problème Lien vers le même problème

Pour rendre /etc / crypttab disponible en tant que /cryptroot / crypttab dans initramfs, créez le script suivant dans le répertoire /etc / initramfs-tools / hooks et rendez-le exécutable:

#!/bin/sh
cp /etc / crypttab "${DESTDIR} / cryptroot / crypttab"
exit 0

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X