web-dev-qa-db-fra.com

Comment réinstaller des noyaux après une suppression accidentelle avec une partition de démarrage séparée et un volume LVM crypté?

Mon installation est un Ubuntu 12.04 64 bits (MBR classique "classique" - pas de fichier EFI/UEFI ici) avec deux partitions:

  1. Une partition de démarrage séparée
  2. Un volume LUKS chiffré contenant les volumes logiques système

Il semble que j'ai accidentellement supprimé tous les fichiers du noyau en cours avec:

Sudo apt-get purge 'linux-image-3.8*' 

J'ai appliqué les mises à jour avec Ubuntu Software Update, puis redémarré, puis Ubuntu ne peut pas démarrer.

J'ai essayé de démarrer sur un DVD live avec Ubuntu 14.04.1 et je peux toujours voir mes partitions (décrites plus loin):

/ dev/sda1 (démarrage)/dev/sda2 (volume chiffré)/dev/sda5 (conteneur de volume logique)

Quelles sont les étapes à suivre pour récupérer/réinstaller les fichiers du noyau et les dépendances afin de redémarrer correctement mon système installé?

Merci d'avance

2
g0lem

Testez ceci:

Démarrez l'ordinateur avec un live-dvd/usb.

Ouvrez un terminal.

Exécuter:

Sudo -i
apt-get update
apt-get install lvm2 cryptsetup
modprobe dm-crypt
cryptsetup luksOpen /dev/sda2 crypt1
*##Write the passphrase##*
vgscan --mknodes
*##Save the volume name##*
mount /dev/<volume-name>/root /mnt
mount /dev/sda1 /mnt/boot
mount --bind /dev /mnt/dev 
mount --bind /dev/pts /mnt/dev/pts
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
cp /etc/resolv.conf /mnt/etc/resolv.conf
chroot /mnt
apt-get update
apt-get install --reinstall 'linux-image-3.8*'
update-grub 
apt-get clean
umount /mnt
reboot 
3
kyodake

J'ai essayé la réponse de Kyodake ci-dessus mais je continuais à avoir cette erreur après l'installation du noyau: cryptsetup: WARNING: invalid line in /etc/crypt1 -. Il serait ensuite redémarrer dans un shell initramfs.

J'ai reçu des informations de cette réponse que je devais déverrouiller le volume chiffré, qui était /dev/sda5 dans mon cas, avec le même nom que celui attendu par le système installé.

Par conséquent, je devais faire cryptsetup luksOpen /dev/sda5 sda5_crypt pour cette étape particulière, qui a fonctionné. Le système installé et le port USB en direct étaient 14.04

1
krm