web-dev-qa-db-fra.com

Comment déplacer un dossier / home sur un lecteur externe chiffré luks?

Le système actuel serait entièrement crypté sur disque et je souhaite déplacer/mapper le dossier /home sur un disque dur externe formaté avec le cryptage LUKS. Est-ce possible?

Les mises à jour Linux continuent de tout casser pour moi. Je pense que cela pourrait avoir quelque chose à voir avec le FDE. Je souhaite simplement pouvoir enregistrer mes données /home, les chiffrer et les stocker sur un autre disque dur.

Sudo lsblk

(sda1 dans ce cas serait le lecteur chiffré externe où/home serait)

 NOM MAJ: MIN RM TAILLE RO TYPE MOUNTPOINT 
 Sda 8: 0 0 931.5G 0 disque 
 Sda1 8: 1 0 931.5G 0 partie 
 Luks-39afxxxxxxxxxxxxxxxxxxx 252: 3 0 931,5G 0 crypt /media/utilisateur/Mon_external_drive[.____. 311sdb 8:16 0 931.5G 0 disque 
. ├─sdb1 8:17 0. 487M 0 partie /boot
├─sdb2 8:18 0 1K 0 partie 
 Sdb5 8:21 0 931G 0 partie 
 Sda5_crypt 252: 0 0 931G 0 crypt 
 Xubuntu - vg-root 252: 1 0 919,1G 0 lvm /
 Xubuntu - vg-swap_1 252: 2 0 11,9G 0 lvm [SWAP] 
 sr0 11: 0 1 1024M 0 sur 
 

cat/etc/fstab

 #/boot était sur/dev/sda1 au cours de l'installation 
 UUID = f2c4a3ef-xxxx-xxxx-xxxx-xxxx-xxxx/boot ext2 par défaut 0 2 
/dev/mapper/xubuntu- -vg-swap_1 aucun échange sw 0 0 

Sudo cat/etc/crypttab

 sda5_crypt UUID = 4426b1a1-xxxx-xxxx-xxxx-xxxx aucune luks, ignorer 

Sudo blkid

/dev/mapper/sda5_crypt: UUID = "NKYcrR-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx" TYPE = "LVM2_member" 
/dev/mapper/xubuntu - vg-root : UUID = "fffe201d-xxxxxxxxxxx" TYPE = "ext4" 
/Dev/sda1: UUID = "39af7a74-xxxx" TYP = "crypto_LUKS" PARTUUID = "04f839ad-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxh sdb1: UUID = "f2c4a3ef-xxxx" TYPE = "ext2" PARTUUID = "df4931bf-01" 
/dev/sdb5: UUID = "4426b1a1-xxxxxx" TYPE = "crypto_LUKS" PARTAGUID " 
/dev/mapper/xubuntu - vg-swap_1: UUID = "2abaef03-xxxxxx" TYPE = "swap" 
 
 *** lecteur lu crypté externe que je souhaite utiliser sous la forme /home****inton. ______________________________. ]
1
positivetypical

Migration/maison et autres problèmes apparents

Tout d'abord, il semblerait que votre partition racine sous /dev/mapper/xubuntu--vg-root ne soit pas configurée dans /etc/fstab. Cela devra être corrigé. Deuxièmement, votre partition /boot est plutôt petite. Efforcez-vous de supprimer les anciens noyaux, sinon vous aurez des problèmes pour installer les mises à jour une fois que votre partition /boot sera remplie à 100%. Il est facile de créer une partition de démarrage plus grande et de placer le disque dur à la maison sur un lecteur séparé avec un partitionnement manuel lors de l’installation. Voir comment s'y prendre dans mon post ici si cela vous intéresse, mais cela ne s'applique qu'aux nouvelles installations.

Je devrais pouvoir vous aider avec la migration et récupérer votre partition racine dans /etc/fstab. Puisque vous avez indiqué que vous aviez déjà modifié un ou plusieurs de ces fichiers, je suppose que vous savez déjà comment éditer des fichiers en tant que root ou avec Sudo. Vous devrez apporter les modifications de fichier mentionnées ci-dessous de cette manière.

Capture d'une image système:
Nous allons apporter des changements importants au système. Si vous avez actuellement un système "en fonctionnement", vous devriez utiliser un outil tel que Clonezilla pour récupérer une image système à restaurer au cas où quelque chose soit vraiment gâché! Bien que cela ne soit pas absolument nécessaire, je fortement ​​le conseille!

Correction de /etc/fstab:
Éditez /etc/fstab et ajoutez une ligne en haut qui se lit comme suit:
/dev/mapper/xubuntu--vg-root / ext4 errors=remount-ro 0 1
Sans cette ligne, votre ordinateur ne pourra même pas démarrer.

Migration de /home:
Il y a quelques parties à cela. Vous devez déplacer tous vos documents sur le lecteur externe. Vous devez mettre à jour votre fichier /etc/crypttab afin que votre système puisse déchiffrer votre lecteur externe lors du démarrage. Cela signifie que vous devrez entrer un mot de passe pour déchiffrer votre disque interne, puis un autre mot de passe pour déchiffrer votre disque externe. Il existe des moyens de déverrouiller deux disques en fournissant un seul mot de passe, mais je ne vais pas entrer dans cela ici. Si vous voulez en savoir plus à ce sujet, lisez ici et ici . Vous devez également mettre à jour /etc/fstab pour que votre système sache monter votre répertoire personnel. Enfin, vous devez mettre à jour vos initramfs.

  1. Copiez le contenu de votre répertoire personnel sur le lecteur externe. Dans un terminal, exécutez ce qui suit en modifiant le chemin d'accès au lecteur externe, si nécessaire. Chacune de ces commandes peut prendre plusieurs minutes à s'exécuter.
    • Créez des hachages à utiliser ultérieurement pour vérifier l'intégrité des fichiers copiés. Ce n'est pas absolument nécessaire, mais il est agréable de pouvoir confirmer que rien n'a été corrompu lors de la copie.
      Sudo find $HOME -type f -exec md5sum '{}' >> $HOME/checksums.md5 \;
    • Copiez tout ce qui se trouve dans votre répertoire personnel sur votre lecteur externe.
      Sudo cp -ar $HOME/. /media/$USER/My_external_drive
    • Si vous avez créé des sommes de contrôle de tous vos fichiers, allez-y et vérifiez-les. Si vous êtes connecté à votre compte, sachez que certains fichiers peuvent naturellement changer entre le moment de la création de sommes de contrôle et celui de la vérification des fichiers copiés. En cas d'échec, assurez-vous qu'il ne s'agit pas de fichiers importants.
      cd /media/$USER/My_external_drive
      Sudo md5sum -c checksums.md5 | grep "FAILED"
    • Vous devrez également tout supprimer de /home pour qu'il puisse être utilisé comme point de montage, mais nous ne souhaitons pas le faire à partir de votre installation xubuntu locale. Nous attendrons que nous soyons prêts à redémarrer et à utiliser un live CD/USB pour cela.
  2. Mise à jour de /etc/crypttab:
    Ouvrez /etc/crypttab pour l'éditer et ajoutez la ligne suivante, en remplaçant les x par les valeurs réelles de l'UUID de votre partition LUKS sur votre lecteur externe.
    luks_home UUID=39af7a74-xxxx none luks,discard
  3. Mise à jour de /etc/fstab pour inclure la nouvelle partition /home:
    Ouvrez /etc/fstab pour le modifier et ajoutez la ligne suivante à la fin.
    /dev/mapper/luks_home /home ext4 defaults 0 2
  4. Mettez à jour vos initramfs
    Sudo update-initramfs -k all -u

Points à vérifier:
Votre fichier /etc/fstab devrait maintenant ressembler à ceci:

/dev/mapper/xubuntu - erreurs vg-root/ext4 = remount-ro 0 1 
 #/boot était sur/dev/sda1 lors de l'installation 
 UUID = f2c4a3ef- longstringofnumbers/boot ext2 par défaut 0 2 
/dev/mapper/xubuntu - vg-swap_1 aucun échange sw 0 0 
/dev/mapper/luks_home/home ext4 par défaut 0 2 

Votre fichier /etc/crypttab devrait maintenant ressembler à ceci:

 sda5_crypt UUID = 4426b1a1-longstringofnumbers aucun luks, ignore 
 luks_home UUID = 39af7a74-xxxx aucun luks, élimine 

Si vous rencontrez des problèmes avec le fichier /etc/crypttab et apportez des modifications, veillez à réexécuter la commande update-initramfs à partir du point 4.

Redémarrez dans le système d'exploitation actif
Une fois que vous avez copié tout ce dont vous avez besoin, il est temps de tout effacer de /home pour qu'il puisse être utilisé comme point de montage. Obtenez votre live CD/USB et démarrez à partir de celui-ci.

  • Une fois démarré, vous devrez déchiffrer et monter la partition LUKS sur votre disque interne. Exécutez les commandes suivantes pour ce faire, en entrant votre mot de passe de cryptage lorsque vous y êtes invité

     dev = $ (Sudo lsblk | grep -B1 "sda5_crypt" | grep -oP "sd [az]\d\b" | awk '{print "/dev/"$1}')
     Sudo cryptsetup luksOpen $ dev internal_crypt 
     Sudo mount/dev/mapper/xubuntu - vg-root /mnt
    
  • Maintenant, votre ancienne partition home doit être située dans/mnt/home. Supprimons tout à l'intérieur
    Sudo rm -fr /mnt/home/*

Redémarrez dans l'installation locale:
À ce stade, vous êtes prêt à redémarrer. Une fois votre ancien répertoire personnel vidé, arrêtez le système d'exploitation et relancez-le sur votre système. Votre système doit maintenant demander deux mots de passe, un pour déchiffrer le lecteur interne et un pour déchiffrer le lecteur externe. En supposant que vous saisissiez les deux correctement, votre système devrait démarrer et votre répertoire personnel devrait se trouver sur votre disque externe.

Vérification de l'utilisation du disque externe en tant que /home:
Si tout est à peu près là où vous l'avez laissé dans votre répertoire personnel, vous êtes en or. Vous pouvez taper mount | grep "/home" dans une fenêtre de terminal. Cela devrait montrer que votre partition LUKS sur votre disque externe est montée à /home.

1
b_laoshi