web-dev-qa-db-fra.com

Comment faire en sorte que grub détecte un ancien OS après le formatage de la partition `/ boot`

J'avais réglé mon PC comme ceci:

/boot - 250 MB ext3  
/ 100 GB ext4, Kubuntu

J'avais maintenant besoin d'installer Ubuntu. J'ai donc créé une nouvelle partition de 8 Go sous le nom de /, formaté la précédente partition /boot et défini cette même partition comme nouvelle /boot pour cette nouvelle installation.

Le fait est que ma partition Kubuntu ressemble maintenant à une partition /home et à quelques autres dossiers système, mais sans un /boot, et grub ne voit que la nouvelle installation Ubuntu.

S'il vous plaît, aidez-moi, tout mon travail depuis un an et demi est sur Kubuntu et je dois le récupérer. Je pourrais copier mon profil firefox (car c’est le plus important que j’ai là-bas), mais je préférerais vraiment que mon système me soit rendu.

Edit:
Quand je fais Sudo update-grub il dit ceci:

Generating grub.cfg ... 
Found linux image: /boot/vmlinuz-3.2.0-26-generic 
Found initrd image: /boot/initrd.img-3.2.0-26-generic 
Found linux image: /boot/vmlinuz-3.2.0-23-generic 
Found initrd image: /boot/initrd.img-3.2.0-23-generic 
Found memtest86+ image: /memtest86+.bin 
Found Ubuntu 12.04 LTS (12.04) on /dev/sda6 
done 

Mon Kubuntu est sur/dev/sda6
Mais lorsque je redémarre, seules les options suivantes s'affichent:

Ubuntu, with Linux 3.2.0-26-generic 
Ubuntu, with Linux 3.2.0-26-generic (recovery mode) 
Previous Linux versions(in here are 3.2.0-23 and 3.2.0-23 recovery mode) 
Memory test (memtest86+) 
Memory test (memtest86+, serial console 115200) 

Et c'est tout, pas de Kubuntu ou de Ubuntu 12.04 LTS on /dev/sda6.
Dans un message, quelqu'un a dit que grub.cfg devait être mis à jour manuellement (pour écrire l'entrée pour Kubuntu dans mon cas), mais cela n'a pas fonctionné. Peut-être que j'ai fait quelque chose de mal ...

Edit2:
J'ai ajouté manuellement Kubuntu dans grub.cfg, copié le menu Ubuntu et, avec l'aide de Sudo blkid, trouvé l'UUID et remplacé l'UUID de la partition Ubuntu par l'UUID de la partition Kubuntu. Redémarré, c'était là, démarré mais maintenant il montre que: enter image description here

Si j'appuie sur S, il continue et démarre correctement.
Quelqu'un sait comment se débarrasser de la notification? :)

1
Lilian A. Moraru

Réponse de la question avant édition ci-dessous:

Après la dernière modification de la question, il semble que OP ait démarré avec succès sur Kubuntu et My supposition (qu'il a également supprimé les noyaux avec la partition de démarrage) était erroné. Alors la question devient plus ou moins comme ça

J'ai enfin démarré sur Kubuntu, mais comment puis-je éviter cet écran en démarrant en disant d'appuyer sur S pour sauter le montage?

La réponse à cette question est:

  • Ouvrez le fichier /etc/fstab de la partition Kubuntu avec le privilège root.
  • Supprimer la ligne comme ceci

     UUID=xxxxxx        ext4        /boot       0   0  
    

    c’est-à-dire supprimer la ligne contenant /boot, qui était précédemment utilisée pour monter une partition d’amorçage lorsque vous en avez une auparavant, mais pas maintenant.

Alors tout ira bien.


Première réponse avant édition, en supposant qu'il ait déjà supprimé les noyaux de Kubuntu avec la partition de démarrage.

Selon votre version de Kubuntu installée, utilisez la procédure suivante.

  1. Si vous n'avez pas l'iso Kubuntu (même version que celle installée), obtenez-en un.

  2. Créez deux dossiers (dans le dossier où réside votre kubuntu iso) avec les noms iso et live.

  3. Ouvrez un terminal et accédez au répertoire du fichier iso de Kubuntu. Par exemple, nous supposons que vous avez cet iso dans votre dossier Téléchargements de votre répertoire personnel. Et que le nom de l’iso soit kubuntu.iso pour plus de simplicité.

  4. monte l'iso dans le dossier iso avec cette commande

     Sudo mount ./kubuntu.iso ./iso
    
  5. Montez ensuite le fichier filesystem.squashfs dans le répertoire casper du fichier iso monté dans le dossier live.

    Sudo mount ./iso/casper/filesystem.squashfs ./live
    
  6. Copiez ensuite les variables vmlinuz et initrd.lz dans la partition kubuntu. Commencez par créer un dossier boot. Copiez ensuite les fichiers requis dans ce dossier.

    1. Montez d'abord la partition de l'ancien Kubuntu. vous devez connaître le numéro /dev/sdax de cette partition. Utilisez la commande Sudo blkid pour voir cela. Nous supposons que c'est /dev/sda2. Montez-le avec la commande ci-dessous dans le dossier/mnt.

      Sudo mount /dev/sda2 /mnt
      
    2. Une fois monté, créez un dossier boot dans cette partition.

      Sudo mkdir /mnt/boot
      
    3. Utilisez ensuite la commande pour copier les fichiers vmliuz et initrd.lz dans le dossier/boot de la partition kubuntu montée.

      Sudo cp ./iso/vmlinuz /mnt/boot  
      Sudo cp ./iso/initrd.lz /mnt/boot
      
    4. Utilisez ensuite la commande pour copier le contenu du dossier de démarrage du fichier ISO dans le dossier de démarrage nouvellement créé du lecteur kubuntu.

      Sudo cp -r ./live/boot/* /mnt/boot 
      
  7. Puis démontez les dossiers ./iso et ./live (Cette étape est facultative)

     Sudo umount ./live
     Sudo umount ./iso
    
  8. Puis lancez la commande pour laisser grub détecter votre kubuntu

     Sudo update-grub
    

J'espère que cela aidera.

Référence: j'ai accidentellement supprimé mon dossier de démarrage et utilise cette procédure pour pouvoir redémarrer à cette disto.

1
Anwar