La plupart des utilisateurs qui ont plus d'un système d'exploitation installé sur leur ordinateur sont en dual-boot Linux/Windows. Selon le cas, ils ont installé Grub dans le "master boot record" (MBR ou "zone amorce") pour tout leur système, ou bien ils ont installé Grub dans la racine de leur partition, et utilisé le bootloader de Windows pour relayer dessus au démarrage, la première solution étant plus simple à mettre en œuvre, mais plus sujette aux plantages lorsque Windows modifie unilatéralement le MBR.
A partir de l'installation d'un deuxième système Linux, les choses se corsent. En effet, il faut impérativement en passer par le partitionnement manuel en le préparant à l'avance avec gparted, spécifier manuellement les points de montages des partitions, et choisir comment installer Grub de façon à ce que tout se passe bien lorsque l'un ou l'autre système est mis à jour. Ce dernier point est le plus problématique et c'est ce que nous allons développer davantage.
Lors de l'installation d'un nouveau système Linux en parallèle avec le premier, on ne peut plus utiliser les procédures assistées, car celles-ci présupposent le plus souvent qu'elles sont adressées à des gens qui ont juste Windows et veulent installer Ubuntu en simple ou dual boot. Il faut donc choisir le partitionnement manuel.
A ce sujet, il faut commencer à s'intéresser aux impératifs liés aux partitions primaires et secondaires. Pour rappel, vous avez droit à maximum 4 partitions primaires, dont une et une seule peut être une partition étendue. Sur cette partition étendue, vous pouvez créer autant de partitions logiques que souhaité. Par ailleurs Windows fonctionne mieux en général avec des partitions primaires, tandis que Linux se moque complètement de la différence, ce qui mène à conseiller de réserver les trois premières partitions primaires pour Windows, et de n'utiliser exclusivement que des partitions logiques pour y installer Linux.
Voici un exemple réalisé sous gparted de partitionnement possible dans le cas d'une personne qui utiliserait Windows en parallèle avec 4 systèmes Linux, dont deux versions d'ubuntu qui partagent leur /home (les tailles ont été délibérément gommées car cette capture a été prise sous Virtual Box pour l'exemple):
Une fois que vous avez bien préparé toutes vos partitions, vous pouvez passer à l'installation proprement dite.
On va supposer ici que vous installez une nouvelle version d'Ubuntu depuis un live cd, les installations d'autres systèmes étant de toutes manières souvent comparables. Lancez l'installation en mode graphique. A l'étape 4, on vous pose la fameuse question sur le partitionnement. C'est là qu'il faut cliquer sur "Définir les partitions manuellement (avancé)". Après une analyse des disques, l'installateur vous affiche la liste de vos partitions et attend que vous spécifiez comment vous souhaitez les utiliser. En pratique les manipulations sont très simples, il suffit de sélectionner la partition sur laquelle vous souhaitez faire l'installation, de cliquer sur modifier, utiliser comme ext3 ou ext4 selon la version que vous installez et vos gouts personnels et de choisir "/" comme point de montage. De manière facultative, si vous souhaitez utiliser une partition /home séparée, paramétrez là aussi. Pour reprendre l'exemple précédent, ça pourrait donner un truc comme ça:
Ca peut aussi donner un truc plus compliqué chez les gens qui utilisent davantage de partitions communes dédiées à un usage particulier. Une fois que tout est paramétré, poursuivez normalement l'installateur graphique, mais attendez avant de confirmer le lancement de l'installation, il va en effet falloir se préoccuper du Gestionnaire d'amorçage Grub et de la manière dont on l'installe, et cliquer pour cela sur le petit bouton avancé de l'écran de confirmation de l'installation.
Le problème de Grub dans la cohabitation de plusieurs systèmes Linux est plus complexe qu'il n'y parait, et c'est sans doute la difficulté majeure en particulier pour les personnes qui ont des versions de Linux qui utilisent grub-legacy et d'autres qui utilisent grub2. Mais procédons par ordre:
On va gérer ce cas à part puisqu'il est susceptible d'intéresser la majorité des gens. Il est valable dans les conditions suivantes:
Si l'une de ces deux conditions n'est pas vérifiée, reportez vous au cas général. Dans le cas contraire, plusieurs possibilités peuvent se présenter:
sudo update-grub
" pour que Grub2 procède à une redétection des noyaux présents et se mette à jour.sudo update-grub
" pour que Grub2 procède à une redétection des noyaux présents et se mette à jour en intégrant votre nouvelle installation.Tout d'abord un utilisateur prudent sait que Windows a la mauvaise manie de parfois modifier le MBR sans prévenir, provoquant un gros plantage du Grub si celui-ci est installé dans le MBR. C'est pourquoi il sera préférable de paramètrer les versions de Windows présentes pour qu'elles soient capables de renvoyer vers le bootloader de Linux, plutôt que d'installer Grub sur le MBR, supprimant ainsi le risque de problèmes. Si l'une de vos versions de Windows est Vista ou ultérieur, vous pouvez vous inspirer de ce tutoriel: comment_amorcer_ubuntu_avec_bootmgr. La manipulation précédente suppose que vous ayez au moins une partition Linux sur laquelle vous ayez installé un gestionnaire d'amorçage de type Grub ou Grub2. Certains puristes auront même un /boot dédié commun à toutes leurs installations, mais ceux là n'ont pas besoin de ce tutoriel. On va maintenant distinguer deux cas:
sudo update-grub
" pour que Grub2 procède à une redétection des noyaux présents et se mette à jour en intégrant votre éventuelle nouvelle installation.Voici par une capture d'écran qui illustre quelles options utiliser pour installer Grub dans le MBR:
Voici par une capture d'écran qui illustre quelles options utiliser pour installer Grub à la racine de la partition d'installation d'Ubuntu:
C'est un problème qui est arrivé au rédacteur de cette page: Une version de Linux qui utilise Grub-Legacy est installée, on installe une deuxième version qui utilise Grub2, on essaye d'installer Grub2 dans le MBR, et non seulement ça plante, mais en plus ça fait échouer l'installation. Je l'ai réglé par la bidouille suivante: installez Grub2 dans l'amorce de la partition de son Linux, puis modifiez le grub-legacy en vigueur par la méthode permettant de relayer vers Grub2 depuis Grub legacy, et configurez-le pour que par défaut le relais soit préselectionné. Puis configurez-le pour qu'il soit caché et que son délai soit à zéro. De cette manière-ci, le grub-legacy sera bien chargé à un moment de chaque démarrage, mais il a été court-circuité, renvoyant systématiquement sur votre Grub2 qui devient ainsi maitre.
Contributeurs: Aldian.