J'ai une machine qui a installé un Ubuntu 16.04 sur une partition et un Ubuntu 16.10 sur une autre. J'ai une partition de 200m qui monte/boot/efi.
Fondamentalement, j'utilise 16.04 et utilise le grub installé par 16.04.
Parfois, je reçois 16.10 et met à jour le noyau. Cependant, je ne peux pas mettre à jour le grub de mon 16.04 sans y entrer. Je dois donc faire grub-install le 16.10 pour pouvoir démarrer le nouveau noyau. Puis, quand je reviens à 16.04, je mets à jour grub et grub-install, ce qui est stupide à mon avis.
Comment mettre à jour le ver de 16.04 sans y entrer, existe-t-il une bonne solution?
Puis-je faire quelque chose comme mettre à jour le fichier de configuration grub ou utiliser une autre partition comme/boot? Ce genre d'opération est-il dangereux?
Vous pouvez directement démarrer une partition, pas un noyau spécifique. Basé sur Debian (pas sûr des autres distributions), ajoutez un lien dans/vers le noyau le plus récent et le deuxième plus récent également. Donc, vous démarrez le lien vers le nouveau noyau. Désactivez os-prober, copiez la strophe de démarrage de votre lecteur et de votre partition dans 40_custom.
Sauvegardez le fichier grub.cfg actuel, puis éditez 40_custom
Sudo cp -a /boot/grub/grub.cfg /boot/grub/grub.cfg.backup
Sudo nano /etc/grub.d/40_custom
Ajoutez une entrée comme celle-ci à 40_custom, utilisez votre lecteur et votre partition à la place de (hd1,1) & sdb1:
menuentry "Install on sdb1" {
set root=(hd1,1)
linux /vmlinuz root=/dev/sdb1 ro quiet splash
initrd /initrd.img
}
Editez grub pour désactiver os-prober:
Sudo nano /etc/default/grub
Ajoutez cette ligne à grub pour ne pas ajouter ses entrées et mettre à jour grub:
GRUB_DISABLE_OS_PROBER=true
Et mettez à jour grub avec tous les changements:
Sudo update-grub
Ancienne entrée similaire, a également la version UUID:
Comment ajouter une entrée de menu GRUB2 pour démarrer Ubuntu installé sur un lecteur USB?
Détails: Comment: créer un écran GRUB2 personnalisé ne nécessitant pas de maintenance.- Cavsfan
https://help.ubuntu.com/community/MaintenanceFreeCustomGrub2Screen
Vous avez décrit une limitation fondamentale de GRUB: elle repose sur des fichiers de configuration qui ne peuvent être générés que dans Ubuntu (ou un autre système d'exploitation prenant en charge GRUB). Normalement, exécuter Sudo update-grub
dans le système d'exploitation/la distribution qui contrôle GRUB devrait suffire. Dans certains cas (mais probablement pas le vôtre), il peut y avoir des problèmes qui pourraient rendre cet échec impossible, auquel cas des sauts au cerceau encore plus délicats seraient nécessaires.
Il existe plusieurs approches alternatives:
Bien sûr, je suis partial, mais à l’heure actuelle, mon meilleur moyen de contourner le problème que vous rencontrez est. OTOH, rEFInd n'est pas encore un paquet officiel Ubuntu (bien qu'il devrait l'être à l'avenir; il est maintenant en cours de test par Debian et devrait donc être intégré à Ubuntu). Cela nécessite également quelques sauts supplémentaires si vous souhaitez utiliser Secure Boot.
Eh bien ... comment GRUB peut-il savoir qu'un nouveau noyau a été installé lorsque vous n'exécutez pas la commande Sudo update-grub
? Cela est donc inévitable, mais la réinstallation de GRUB ne doit pas être explicitement effectuée - vous pouvez choisir de démarrer le nouveau noyau à partir des options de démarrage avancées du menu GRUB. La réinstallation de GRUB sur le système d’exploitation principal que vous utilisez apporte plus de commodité, car vous pouvez démarrer l’autre système directement à partir du premier niveau du menu de démarrage. Malheureusement, il n'y a pas d'autre option pour gérer cette configuration à double démarrage ...