web-dev-qa-db-fra.com

Manuel LVM & LUKS partitionné mais des problèmes avec loader / init / grub

J'ai eu du succès avec le partitionnement manuel et l'installation de LVM et de LUK.

Les partitions sont créées - home, root, swap and boot, les pv et les vg ont tous été créés et configurés correctement.

J'ai installé à partir de Live et tout le système de fichiers installé aux bons endroits.

J'ai chrooté et monté et configuré/etc/crypttab avec le bon UUID et/etc/fstab pointe vers le bon mappeur et les bons UUID (basés sur la sortie de blkid).

À ce stade, j’essaie différentes approches pour que le chargeur de démarrage et grub me donnent un écran de connexion avec mot de passe qui décrypte ce que j’ai référencé dans/etc/crypttab.

Première approche -

mount -t proc proc /proc 
mount -t sysfs sys /sys 
update-initramfs -u

courir cela me dit

/usr/sbin/iucode_tool: cpuid kernel driver unavailable, cannot scan system processor signatures

Deuxième approche -

Vérification de /etc/mkinitcpio.conf pour ajouter lvm2 et chiffrer, puis suivi de

mkinitcpio -p linux

Cela ne fonctionne pas non plus parce que mkinitcpio n'existe pas.

Après quelques recherches, je pensais que/etc/crypttab est peut-être suffisant pour les processus init existants?

Troisième approche -

Modification de/etc/default/grub à ajouter

GRUB_ENABLE_CRYPTODISK=y 

puis en cours d'exécution

grub mkconfig -o /boot/grub/grub.cfg
grub-install /dev/sda1

Le problème que je me pose avec ça me pose

/usr/sbin/grub-probe: error: failed to get canonical path of `/dev/mapper/ubuntu-rootvol'

Je sais qu'il devrait être assez simple d'obtenir cet écran de démarrage avec un mot de passe trié, mais je n'ai plus d'options. Pouvez-vous me dire quelle est la bonne méthode pour faire référence à Ubuntu/etc/crypttab

Merci de votre aide!

3
user81084

J'ai trouvé un moyen de configurer LUKS et LVM en partitionnant manuellement! J'ai testé cela sur Ubuntu 16.04.2

Démarrez Ubuntu à partir d’un SE Live et sélectionnez l’option d’essayer Ubuntu sans l’installer. Suivez les étapes que j'ai décrites ci-dessous.

  1. Partitionnez le lecteur avec l’outil de votre choix: j’ai utilisé fdisk pour configurer le mien sur une table de partitions msdos comme suit:
    • sda1:/boot (1G)
    • sda2: partition LUKS (le reste du disque)
  2. Configurer LUKS
    • Sudo cryptsetup luksFormat --hash=sha512 --key-size=512 --cipher=aes-xts-plain64 --verify-passphrase /dev/sda2
    • Sudo cryptsetup luksOpen /dev/sda2 CryptDisk
    • Bien que cela ne soit pas nécessaire, il est judicieux de remplir votre partition LUKS de zéros afin que la partition chiffrée soit remplie de données aléatoires. Sudo dd if=/dev/zero of=/dev/mapper/CryptDisk bs=4M ATTENTION, cela pourrait prendre très longtemps!
  3. Configurez LVM sur /dev/mapper/CryptDisk
    • Sudo pvcreate /dev/mapper/CryptDisk
    • Sudo vgcreate vg0 /dev/mapper/CryptDisk
    • Sudo lvcreate -n swap -L 2G vg0
    • Sudo lvcreate -n root -L 10G vg0
    • Sudo lvcreate -n home -l +100%FREE vg0
  4. Vous êtes maintenant prêt à installer. Lorsque vous arrivez à la partie "Type d'installation" de l'installation, choisissez l'option "Quelque chose d'autre". Ensuite, affectez manuellement les partitions/dev/mapper/vg0- * comme vous le souhaitez. N'oubliez pas de définir/dev/sda1 comme/boot. la partition/boot ne doit pas être chiffrée. Si c'est le cas, nous ne pourrons pas démarrer. Changez le "Dispositif pour l’installation du chargeur de démarrage" en/dev/sda et poursuivez l’installation.
  5. Lorsque l'installation est terminée, ne redémarrez pas ! Choisissez l'option "Continuer à tester".
  6. Dans un terminal, tapez ce qui suit et recherchez l’UUID de/dev/sda2. Prenez note de cet UUID pour plus tard.
    • Sudo blkid
    • La ligne importante de ma machine lit /dev/sda2: UUID="bd3b598d-88fc-476e-92bb-e4363c98f81d" TYPE="crypto_LUKS" PARTUUID="50d86889-02"
  7. Ensuite, récupérons le système nouvellement installé pour que nous puissions apporter d'autres modifications.
    • Sudo mount /dev/vg0/root /mnt
    • Sudo mount /dev/vg0/home /mnt/home # ce n'est probablement pas nécessaire
    • Sudo mount /dev/sda1 /mnt/boot
    • Si vous avez une partition EFI, montez-la à /mnt/boot/efi
    • Sudo mount --bind /dev /mnt/dev # Je ne suis pas tout à fait sûr que cela soit nécessaire
    • Sudo mount --bind /run/lvm /mnt/run/lvm
  8. Maintenant, lancez Sudo chroot /mnt pour accéder au système installé
  9. Depuis le chroot, montez quelques autres choses
    • mount -t proc proc /proc
    • mount -t sysfs sys /sys
    • mount -t devpts devpts /dev/pts
  10. Installer le crypttab. A l’aide de votre éditeur de texte favori, créez le fichier/etc/crypttab et ajoutez la ligne suivante en remplaçant l’UUID par l’UUID de votre disque.
    • CryptDisk UUID=bd3b598d-88fc-476e-92bb-e4363c98f81d none luks,discard
  11. Enfin, reconstruisez quelques fichiers de démarrage.
    • update-initramfs -k all -c
    • update-grub
  12. Redémarrez et le système devrait vous demander un mot de passe pour décrypter au démarrage!

Un merci spécial à Martin Eve , EGIDIO DOCILE , et aux gens de blog.botux.fr pour les tutoriels qu’ils ont postés. En tirant des morceaux de leurs poteaux et en faisant un petit problème supplémentaire, j'ai finalement pu comprendre cela.

J'ai essayé cela plusieurs fois et j'ai échoué encore et encore. Le bit que j'ai dû résoudre moi-même en fonction des messages d'erreur était Sudo mount --bind /run/lvm /mnt/run/lvm

2
b_laoshi

Merci beaucoup pour ce guide. J'ai essayé récemment pour 18.04 et a fonctionné parfaitement. Afin de réparer l’installation de grub et de traiter avec EFI, j’ai inclus quelques étapes supplémentaires basées sur Impossible d’installer Ubuntu sur Acer Aspire ES1-5 . Après "update-initramfs -k all -c", j'ai suivi les étapes suivantes:

1- Charger les efivars par:

Sudo modprobe efivars

2- Réinstallez grub-install pour une version 64 bits:

Sudo apt-get install --reinstall grub-efi-AMD64

Sudo grub-install --no-nvram --root-directory=/mnt

3- Changez la racine en/mnt et mettez à jour grub

Sudo chroot /mnt

update-grub

(Dans mon cas, il y a un problème concernant grub-prob (introuvable dans sda1). Mais cela n'a pas affecté mon installation)

4- Déplacer et renommer le chargeur de démarrage installé

cd /boot/efi/EFI

cp -R ubuntu/* BOOT/

cd BOOT

cp grubx64.efi bootx64.efi

Et enfin, redémarrez!

0
ceshaz