Documentation du Dr FRAPPE

Ce wiki regroupe les résultats de mes expériences en informatique accumulés au cours de mes recherches sur le net.

Dans la mesure du possible, j'ai cité mes sources ; il en manque certainement… :-)

Table des matières

Dual-boot Ubuntu / Windows

1. Méthode résumée

Cette méthode fonctionne dans tous les cas.

Le PC boote sur le disque Windows, dont le menu de démarrage permet de choisir entre windows ou ubuntu.

Pour cela, on démarre l'ordinateur sur le cd ubuntu en choisissant “Essayer Ubuntu” :

  • Vérifier les partitions

Lancer Gparted ou l'utilitaire de disques :

soit par exemple :

windows → /dev/sda
ubuntu → /dev/sdb
  • Sauvegarder la partition windows
sudo dd if=/dev/sda of=sauvegarde_mbr_xp bs=512 count=1
  • Fermer Gparted
  • sous nautilus, monter le disque ubuntu
  • installer grub sur le disque windows
sudo grub-install --root-directory=/media/... /dev/sda

(faire une tabulation après /media pour trouver le point de montage)

  • Recopier le mbr (actuellement, de ubuntu) dans le fichier grub.bs
sudo dd if=/dev/sda of=grub.bs bs=512 count=1
  • Monter la partition windows → cela ouvre une fenêtre
  • ouvrir le home (dossier personnel) dans une autre fenêtre
  • Glisser grub.bs à la racine de la partition windows
  • Restaurer le mbr de windows sauvegardé :
sudo dd of=/dev/sda if=sauvegarde_mbr_xp bs=512 count=1
  • Redémarrer windows

2. Principes

Réinstaller le bootloader ubuntu ou windows : http://forum.ubuntu-fr.org/viewtopic.php?id=28431

http://ubuntuforums.org/showthread.php?t=1014708

Pour réparer GRUB : http://doc.ubuntu-fr.org/tutoriel/comment_restaurer_grub

Dans tous les cas, il faut mettre la partition contenant windows en partition principale et active. Pour cela :

  • démarrer sur le cd ubuntu
  • en mode essayer ubuntu
  • lancer gparted
  • repérer la partition de windows
  • un clic droit dessus
  • drapeaux
  • et cocher boot
  • vérifier que les autres partitions n'ont pas ce drapeau

3. Windows est déjà installé sur la machine

C'est la configuration de la plupart des ordinateurs du commerce.

Au démarrage de l'ordinateur, le programme de démarrage cherche sur le MBR quel OS lancer.

Il peut y trouver :

  • un menu (Grub, Gag, …) qui l'adresse vers une partition particulière pour démarrer un OS.
  • ou le chargeur de démarrage (“bootloader”) de Windows (« NTLDR »), invisible pour l'utilisateur, qui appelle la partition qui est « primaire » et « active »
    (il n'y a qu'une seule partition primaire active à la fois).
    En temps normal, cette partition primaire et active est celle de Windows qui est donc lancé après son installation.

Nous allons conserver le MBR de Windows. Ce sera parfait si l'ordinateur est tatoué.

Pour cela :

  • Windows et Ubuntu seront installés sur des partitions primaires différentes, éventuellement sur des disques différents
  • La partition de Windows sera active (elle aura le drapeau “boot”)
  • Grub sera installé sur le MBR de la partition ou du disque dédié à Ubuntu.
  • Le BIOS lancera Windows en premier.
  • Dans le cas d'un seul disque, nous utiliserons NTLDR, le chargeur de démarrage de Windows pour ne pas toucher au MBR.

Ainsi Windows sera appelé au démarrage de la machine. Et nous pourrons démarrer Ubuntu :

  • sans avoir besoin d'un menu auxiliaire comme Gag
  • en protégeant Grub de l'écrasement dû à une réinstallation de Windows
  • et en protégeant le MBR.

On va :

  1. Sauvegarder le contenu du MBR de Windows
  2. Installer grub dans le MBR de Windows
  3. Récupérer le nouveau contenu du MBR dans un fichier grub.bs
  4. Restaurer le MBR de Windows grâce à la sauvegarde

3.1. Dans tous les cas

Démarrer sur le Live-cd Ubuntu :

Appuyer sur : EssayerUbuntu ; le bureau s'affiche :

Lancer gparted pour voir les disques :

Sauvegarder le contenu du MBR de Windows en lançant dans un terminal la commande :

sudo dd if=/dev/sda of=sauvegarde_mbr_xp bs=512 count=1

3.2. Avec un seul disque

3.3. Avec deux disques

Voir aussi : Dual Boot sur 2 disques durs séparés

Nous allons mettre Grub hors de portée de Windows en installant

  • windows sur un disque
  • et ubuntu sur l'autre selon le schéma :

Le schéma à atteindre est :

  • une partition primaire pour Windows,
  • une partition primaire pour Ubuntu,
  • une partition pour le swap,
  • éventuellement une partition home et une partition fat32 commune à Windows et à Ubuntu.

Les deux systèmes sont ainsi parfaitement indépendants :

  • s'il faut réinstaller Windows, GRUB n'est pas effacé.
  • on peut booter sur Windows même si le second disque dur est enlevé.

Supposons que :

  • Windows est installé sur /dev/sda
  • et Ubuntu est à installer sur la partition /dev/sdb1 du disque /dev/sdb

Créer une partition primaire /dev/sdb1 en ext4 pour Ubuntu et une partition swap de 3 ou 400Mo.

Avant tout, sauvegarder le MBR de Windows. Dans un terminal, lancer :

Lancer l'installation : cf les explications ici : Installation de Ubuntu)

Installer Ubuntu sur sdb1 (1).

Choisir le type d'installation “autre chose” pour mettre en place les partitions à la main :

Le moment venu, choisir d'installer Grub sur la partition le disque Windows (sda) (repère 2 sur l'image)

L'installation terminée, rester sur le cd en appuyant sur Continueràtester

Laisser le drapeau (flag) boot de sda1 (Windows) sur on.

Récupérer le MBR selon Ubuntu

sudo dd if=/dev/sda of=grub.bs bs=512 count=1

Monter la partition système de windows (un clic dans la liste de Nautilus)

Récupérer le nouveau fichier grub.bs obtenu précédemment et le placer à la racine du disque système Windows.

Restaurer le MBR de Windows depuis la sauvegarde :

sudo dd of=/dev/sda if=sauvegarde_mbr_xp bs=512 count=1

Redémarrer en mettant l'ordre de boot :

  1. cd
  2. windows
  3. ubuntu

Supposons que

  • Windows est installé sur le disque dur n°1 (maitre)
  • et que le disque n°2 (esclave) est prêt pour accueillir Ubuntu :
    • Il contient un espace prêt a accueillir Linux (Espace Libre non-formaté)
    • Il contient au moins une partition primaire libre, suffisamment grande pour installer la racine de Ubuntu
    • les partitions nécessaires (swap, home, etc) ont été créées (à l'aide d'un Live CD de Gparted par exemple).

4. Récupérer GRUB

4.1. Commencer par faire l'inventaire des disques

Lancer dans un terminal :

  • sudo parted -l

On obtient la liste de tous les disques :

Modèle: ATA TOSHIBA MK6475GS (scsi)
Disque /dev/sda : 640GB
Taille des secteurs (logiques/physiques): 512B/4096B
Table de partitions : msdos

Numéro  Début   Fin    Taille  Type     Système de fichiers  Fanions
 1      32,3kB  640GB  640GB   primary  ntfs


Modèle: ATA TOSHIBA MK6475GS (scsi)
Disque /dev/sdb : 640GB
Taille des secteurs (logiques/physiques): 512B/4096B
Table de partitions : msdos

Numéro  Début   Fin    Taille  Type     Système de fichiers  Fanions
 1      32,3kB  640GB  640GB   primary  ntfs


Modèle: ATA SAMSUNG HD501LJ (scsi)
Disque /dev/sdc : 500GB
Taille des secteurs (logiques/physiques): 512B/512B
Table de partitions : msdos

Numéro  Début   Fin    Taille  Type     Système de fichiers  Fanions
 1      1049kB  496GB  496GB   primary  ext4
 2      496GB   500GB  4194MB  primary  linux-swap(v1)


Modèle: ATA ST500DM002-1BD14 (scsi)
Disque /dev/sdd : 500GB
Taille des secteurs (logiques/physiques): 512B/4096B
Table de partitions : msdos

Numéro  Début   Fin    Taille  Type     Système de fichiers  Fanions
 1      1049kB  496GB  496GB   primary  ext4
 2      496GB   500GB  4194MB  primary  linux-swap(v1)


Modèle: ATA OCZ-ONYX (scsi)
Disque /dev/sde : 32,0GB
Taille des secteurs (logiques/physiques): 512B/512B
Table de partitions : msdos

Numéro  Début   Fin     Taille  Type     Système de fichiers  Fanions
 1      1049kB  32,0GB  32,0GB  primary  ext4                 démarrage


Modèle: ATA OCZ VERTEX PLUS (scsi)
Disque /dev/sdf : 30,0GB
Taille des secteurs (logiques/physiques): 512B/512B
Table de partitions : msdos

Numéro  Début   Fin     Taille  Type     Système de fichiers  Fanions
 1      32,3kB  30,0GB  30,0GB  primary  ntfs                 démarrage


Modèle: Mappeur de périphériques Linux (linear) (dm)
Disque /dev/mapper/pdc_degbgfcfc1 : 640GB
Taille des secteurs (logiques/physiques): 512B/4096B
Table de partitions : loop

Numéro  Début  Fin    Taille  Système de fichiers  Fanions
 1      0,00B  640GB  640GB   ntfs


Modèle: Mappeur de périphériques Linux (linear) (dm)
Disque /dev/mapper/pdc_ffjibaiei2 : 4194MB
Taille des secteurs (logiques/physiques): 512B/4096B
Table de partitions : loop

Numéro  Début  Fin     Taille  Système de fichiers  Fanions
 1      0,00B  4194MB  4194MB  linux-swap(v1)


Modèle: Mappeur de périphériques Linux (linear) (dm)
Disque /dev/mapper/pdc_ffjibaiei1 : 496GB
Taille des secteurs (logiques/physiques): 512B/4096B
Table de partitions : loop

Numéro  Début  Fin    Taille  Système de fichiers  Fanions
 1      0,00B  496GB  496GB   ext4


Modèle: Mappeur de périphériques Linux (mirror) (dm)
Disque /dev/mapper/pdc_degbgfcfc : 640GB
Taille des secteurs (logiques/physiques): 512B/4096B
Table de partitions : msdos

Numéro  Début   Fin    Taille  Type     Système de fichiers  Fanions
 1      32,3kB  640GB  640GB   primary  ntfs


Modèle: Mappeur de périphériques Linux (mirror) (dm)
Disque /dev/mapper/pdc_ffjibaiei : 500GB
Taille des secteurs (logiques/physiques): 512B/4096B
Table de partitions : msdos

Numéro  Début   Fin    Taille  Type     Système de fichiers  Fanions
 1      1049kB  496GB  496GB   primary  ext4
 2      496GB   500GB  4194MB  primary  linux-swap(v1)


Avertissement: Impossible d'ouvrir /dev/sr0 en lecture-écriture (Système de
fichiers accessible en lecture seulement). /dev/sr0 a été ouvert en lecture
seule.
Erreur: Table de partition invalide - partition récursive sur /dev/sr0.   
Ignorer/Ignore/Annuler/Cancel? Ignore                                     
Modèle: Optiarc DVD RW AD-7261S (scsi)
Disque /dev/sr0 : 700MB
Taille des secteurs (logiques/physiques): 2048B/2048B
Table de partitions : msdos

Dans cet exemple, on a :

  • un disque RAID /dev/mapper/pdc_degbgfcfc de 640GB :
    • composé de :
      • Disque /dev/sda : 640GB
      • Disque /dev/sdb : 640GB
    • partitions :
      • /dev/mapper/pdc_degbgfcfc1 : 640GB (Donnees, primary, ntfs)
  • un disque RAID /dev/mapper/pdc_ffjibaiei de 500GB :
    • grappe composée des deux disques :
      • Disque /dev/sdc : 500GB
      • Disque /dev/sdd : 500GB
    • partitions :
      • /dev/mapper/pdc_ffjibaiei1 : 496GB (/home, primary, ext4)
      • /dev/mapper/pdc_ffjibaiei2 : 4194MB (/swap, primary, linux-swap)
  • Disque SSD /dev/sde : 32,0GB
    • /dev/sde1 : racine Linux (/, ext4)
  • Disque SSD /dev/sdf : 30,0GB
    • /dev/sdf1 pour le système Windows (C:\, ntfs)
  • Un lecteur de CD-ROM qui donne une erreur car il est en lecture seule
sudo sfdisk -l

Ici,

  • Windows est installé sur la partition /dev/sda1 du disque /dev/sda ; cette partition est bootable
  • Linux est installé sur la partition /dev/sdb1 du disque /dev/sdb ; cette partition est bootable

4.2. Sauvegarder le contenu du MBR de Windows

Lancer dans un terminal la commande :

sudo dd if=/dev/sdf of=sauvegarde_mbr_xp bs=512 count=1

puisque notre disque Windows est /dev/sdf. Adapter.

4.3. Montage de la partition contenant Linux

Dans notre exemple, c'est /dev/sdb1. Pour la monter :

  • ouvrir nautilus
  • un clic à gauche sur « système de fichiers » en choisissant celui de Linux (on y retrouve les répertoires habituels dev, etc.)

Bien repérer son point de montage (il s'affiche dans une info-bulle quand on survole la partition à gauche) : /media/uuid, uuid étant une suite de caractères.

On peut retrouver ce uuid en tapant dans un terminal :

sudo blkid

On obtient la liste des partitions et de leurs uuids :

Noter l'uuid de la partition ubuntu (surligné)

4.4. Installation de Grub dans le MBR

Dans une console, taper :

sudo grub-install --root-directory=/media/uuid /dev/sda

pour installer grub sur le disque windows.

<note tip>pour retrouver le point de montage uuid, utiliser une tabulation après /media/ pour lister les possibilités ; choisir les chiffres</note>

4.5. Récupération du MBR selon Ubuntu

Recopier le mbr de ubuntu dans un fichier grub.bs. Pour cela, taper dans une console :

sudo dd if=/dev/sda of=grub.bs bs=512 count=1
  • Récupérer le nouveau fichier grub.bs obtenu
  • Monter la partition système de windows (en cliquant dessus dans Nautilus, c'est la partition qui contient un répertoire Windows)
  • et placer le fichier grub.bs à la racine de cette partition.

4.6. Restauration du MBR depuis la sauvegarde

Restaurer le mbr de windows sauvegardé au début :

sudo dd of=/dev/sda if=sauvegarde_mbr_xp bs=512 count=1

4.7. Premier cas : Windows est seul installé sur la machine

4.8. Avec un seul disque

4.9. Avec deux disques

4.9.1. Premier cas : Windows déjà installé seul

4.9.2. Deuxième cas : Windows n'est pas pré-installé

Installer dans l'ordre Windows puis Ubuntu avec les cds fournis.

  • au démarrage de l'ordinateur, dans le bios, mettre l'ordre de boot à :
    1. cd-rom
    2. Windows
    3. Linux
    4. etc.
  • installer Windows sur le premier disque (/dev/sda) et vérifier que tout fonctionne bien.
  • changer l'ordre de boot en :
    1. cd-rom
    2. Linux
    3. Windows
    4. etc.
  • installer Linux sur le deuxième disque (/dev/sdb) .
    • choisir le mode manuel de partition du disque pour choisir le deuxième disque pour l'installation de Linux.
    • Continuer l'installation de Linux jusqu'à l'étape d'installation de Grub. L'installer dans le MBR (Master Boot Record) du disque Linux (/dev/sdb)
    • Terminer l'installation de Linux.
    • Au moment où est proposé le redémarrage, laisser le CD d'installation et rester dessus.
  • On va générer un fichier contenant la partition de démarrage de Linux, le copier sur la partition de démarrage de Windows et configurer le Boot loader de Windows pour qu'il l'exécute :
    • Dans un terminal, lancer la commande (Bien vérifier que « if= » contient le nom de la partition où est installé Grub (/dev/sdb)
dd if=/dev/sdb1 of=bootsect.lnx bs=512 count=1
  • cela génére un fichier bootsect.lnx contenant les 512 octets de la partition de démarrage de Linux.
  • monter la partition système de Windows et copier le fichier bootsect.lnx à la racine du disque
  • Quitter le terminal de Linux et redémarrer sur Windows.
  • Enfin, modifier le fichier boot.ini de Windows pour y inclure la ligne suivante:
C:\bootsect.lnx="Linux"

Au démarrage, on peut désormais choisir entre Windows et Linux.

5. Réinstaller GRUB :

http://doc.ubuntu-fr.org/tutoriel/comment_restaurer_grub

Depuis la partition où est installé Ubuntu :

sudo os-prober
sudo update-grub
sudo grub-install /dev/sda

Démarrer sur le live-cd :

Avec Super-Grub-2

Démarrer sur le cd

http://forum.ubuntu-fr.org/viewtopic.php?id=28431

Dans tous les cas, il faut mettre la partition contenant windows en partition principale et active. Pour cela :

  • démarrer sur le cd ubuntu
  • en mode essayer ubuntu
  • lancer gparted
  • repérer la partition de windows
  • un clic droit dessus
  • drapeaux
  • et cocher boot
  • vérifier que les autres partitions n'ont pas ce drapeau

6. Avec deux disques

6.1. Méthode

6.1.1. Deuxième cas : Windows est seul installé sur la machine

6.1.2. Ubuntu est déjà installé sur une partition primaire

7. Avec un seul disque

7.1. Principe

7.1.1. Méthode

8. Procédure

8.1. Premier cas : aucun système n'est installé

8.2. Deuxième cas : Windows est seul installé sur la machine

8.2.1. Un seul disque dur

C'est la configuration de la plupart des ordinateurs du commerce. Et sur les portables, en raison du tatouage, il semble que l'on ne doive pas modifier le MBR.

Schéma à atteindre :

  • une partition primaire pour Windows
  • une partition primaire pour Ubuntu
  • une partition étendue contenant
    • la partition swap,
    • la partition home
    • et une partition fat32 commune à Windows et à Ubuntu.

<note important>Toucher les partitions n'est pas sans risques pour les données, car on est à la merci d'une fausse manoeuvre. Les données étant uniques, il est sage de les sauvegarder sur un autre support avant toute manoeuvre sur les partitions.</note>

doc.ubuntu-fr.org_media_installation_partition.jpg

Il faut effacer les fichiers temporaires de Windows et défragmenter le disque C:

Avec gparted (sur le live cd), diminuer la taille de la partition qui contient Windows (sda1 en général) pour libérer de la place pour les partitions à créer.

Créer une partition primaire de 5Go -hda2- en ext3 pour Ubuntu

Créer une partition étendue de 10 ou 20Go dans laquelle nous créerons une partition logique de 2 ou 3 Go en ext3 (ce sera home), une partition swap de 3 ou 400Mo, et une partition Fat32 de 10 ou 15Go dans laquelle nous mettrons les données communes à Wxp et Ubuntu.

Installer Ubuntu sur hda2. Le moment venu, choisir d'installer Grub sur la partition hda2 (hd0,1)

Avec qtparted, mettre l'indicateur d'état de hda2 sur « active ».

Rebooter. Le Grub de hda2 va démarrer automatiquement.

8.3. Ubuntu est déjà installé sur une partition primaire

Les opérations suivantes sont à effectuer :

  • installer Grub sur la partition
  • rendre la partition « active »
  • restaurer le MBR pour effacer le menu (Grub, Gag, …) qui peut y être.

Vérifier que Ubuntu est bien installé sur une partition primaire. Pour s'en assurer, ouvrir une console et taper la commande :

sudo fdisk -l

La réponse est de la forme :

Disque /dev/hda: 20.0 Go, 20020396032 octets
255 têtes, 63 secteurs/piste, 2434 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets

Périphérique     Amorce    Début         Fin      Blocs    Id  Système
/dev/hda1               1         318     2554303+  1b  Hidden W95 FAT32
/dev/hda2             319        1084     6152895   83  Linux
/dev/hda3   *        1085        1870     6313545    7  HPFS/NTFS
/dev/hda4            1871        2434     4530330    f  W95 Etendu (LBA)
/dev/hda5            1871        2126     2056288+   b  W95 FAT32
/dev/hda6            2127        2434     2473978+   b  W95 FAT32

où l'on voit ici que Linux est installé sur hda2.

Rappel :

partitions primaires :

  • hda1 nommée aussi (hd0,0)
  • hda2 nommée aussi (hd0,1)
  • hda3 nommée aussi (hd0,2)
  • hda4 nommée aussi (hd0,3)

On utilise souvent la partition primaire hda4 pour créer des partitions « logiques » hda5, hda6, hda7 etc. hda4 prend alors le qualificatif de “partition étendue”.

8.3.1. Installer Grub sur la partition

Ouvrir un terminal avec sudo -s puis :

grub --batch
find /boot/grub/stage1
root (hd?,?)
setup (hd?,?)
quit
exit

8.3.2. Rendre la partition active

Utiliser un outil gestionnaire de partition tel que qtparted (sur le live cd Linux-Azur) ou Partition Magic (propriétaire)

Sélectionner la partition, la passer à l'état « active ». La partition primaire Windows deviendra « cachée »

8.3.3. Restaurer le MBR

Dans un terminal Windows, taper la commande

c:\>fdisk /mbr

Il n'y a pas de compte rendu. L'action est effectuée lorsque le prompt réapparait.

8.4. Le disque dur est vide

Avec qtparted ou partition magic, créer une partition primaire -disons hda1- de 5Go en NTFS (pour Wxp)

Créer une partition primaire de 5Go -hda2- en ext3 pour Ubuntu

Créer une partition étendue de 10 ou 20Go dans laquelle nous créerons une partition logique de 2 ou 3 Go en ext3 (ce sera home), une partition swap de 3 ou 400Mo, et une partition Fat32 de 10 ou 15Go dans laquelle nous mettrons les données communes à Wxp et Ubuntu (nota : cette configuration n'engage que moi, mais est trés suffisante pour débuter). Le reste du disque dur peut rester en friches pour le moment !

Installer Wxp sur hda1

Installer Ubuntu Breezy sur hda2. Le moment venu, choisir d'installer Grub sur la partition hda2 (hd0,1)

Avec qtparted, mettre l'indicateur d'état de hda2 sur « active »

Redémarrer

8.5. Ubuntu est installé sur une partition logique

Il n'y a pas de miracles. Il faut un grub sur une partition primaire pour pouvoir appeler le grub de la partition logique. Ou encore, on peut utiliser le lanceur NTLDR de Windows pour appeler le grub de la partition logique. nikola en présente une méthode ici. Vérifier que la partition Windows est bien active.

9. Avec un seul disque

9.1. Démarrage à partir du bootloader de Windows

9.1.1. Si Windows est pré-installé (PC probablement tatoué)

Si après toutes ces manipulations, un plantage se produit lorsque l'on sélectionne grub au démarrage

<note warning> FIXME Procédure inspirée d'une manip trouvée sur le forum anglophone et en attente d'approbation par la liste de diffusion du wiki. 07/03/2010</note>

Cela peut arriver notamment dans le cas où vous utilisez karmic et Grub2 et que vous êtes malchanceux ou si vous l'avez installé sur une partition logique. Il existe une méthode alternative pour arriver quand même à ses fins. En effet, le bug vient du fait que pour une raison inconnue, le premier secteur que vous avez récupéré de votre partition où vous avez installé grub est vide, ce qui fait que votre grub.bs ne contient pas de données exploitables. La solution consiste à :

  1. redémarrer sur le liveCD Ubuntu
  2. monter la partition où est installé Ubuntu : ouvrir nautilus et cliquer à gauche sur le système de fichiers correspondant. Il doit afficher les répertoires habituels /dev, /boot, /var etc. Noter son point de montage (bulle quand la souris passe dessus). nous supposerons qu'il s'agit de /dev/sda2, et qu'elle a été montée dans /media/Ubuntu
  3. Sauvegarder le contenu du MBR : dans un terminal lancer :
sudo dd if=/dev/sda of=sauvegarde_mbr_xp bs=512 count=1
  1. Installer grub dans le MBR du disque de Windows (pour retrouver le point de montage, utiliser l'autocomplétion = Tab après /media/) :
sudo grub-install --boot-directory=/media/uuid /dev/sda
  1. Récupérer le nouveau contenu du MBR dans le fichier grub.bs :
sudo dd if=/dev/sda of=grub.bs bs=512 count=1
  1. Restaurer le MBR grâce à la sauvegarde faite au début :
sudo dd of=/dev/sda if=sauvegarde_mbr_xp bs=512 count=1
  1. Récupérer le nouveau fichier grub.bs obtenu après cette manipulation
  2. Monter la partition système de windows (avec nautilus) et placer le fichier grub.bs à la racine de la partition système de windows.

9.2. Démarrage à partir de GRUB2

10. avec deux disques

10.1. Démarrage à partir du bootloader de Windows

10.2. Démarrage à partir de GRUB2

11. Réinstallation de grub2

11.1. Pour le mettre sur la partition (PBR)

11.2. Démarrer en Live-cd

11.3. Montage et chrootage

  • Ouvrir un terminal et taper :
sudo fdisk -l

(Permet de vérifier quelle partition est à “chrooter”…)

  • Repérer la partition dans la liste qui s'affiche, qui ressemble à ceci sur une installation “simple” :
Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1        5624    45174748+  83  Linux
/dev/hda2            5625        6110     3903795   82  Linux swap / Solaris
/dev/hda3            6111       14946    70975170    5  Extended
/dev/hda5            6111       14946    70975138+  8e  Linux LVM

La partition qui vous intéresse est celle qui contient Linux, ici /dev/hda1

  • créer un répertoire pour monter cette partition, et monter la partition système :
# mkdir /mnt/chroot
# mount /dev/hda1 /mnt/chroot

Si on a créé une partition séparée pour /boot, il faut la monter :

# mount /dev/hdxy /mnt/chroot/boot

Il est d'ailleurs probable que dans ce cas, /dev/hda1 soit votre partition /boot et /dev/hda2 la racine de votre système, soyez attentif à ce que vous faites.

Une la partition système montée, il faut monter les périphériques que le Live CD a trouvé,

# mount --bind /dev/ /mnt/chroot/dev
# mount -t proc /proc /mnt/chroot/proc

Le système est prêt à être “chrooté” :

# chroot /mnt/chroot

Il est parfois nécessaire, en fonction de votre système ou du LiveCD à partir duquel vous avez démarré d'ajouter /bin/bash à la commande

# chroot /mnt/chroot /bin/bash

On est maintenant en tant que root sur le système installé en dur.

11.4. Réinstallation de GRUB 2

<note tip> Le paquet 'grub2' n'est pas indispensable, c'est ce que l'on appelle un “méta-paquet” il ne sert qu'a installer grub-pc et grub-common.</note>

Editer le fichier /etc/default/grub (uniquement si vous savez ce que vous faites!) selon vos besoins, et lancer la commande :

# update-grub

Une fois le fichier /etc/grub/grub.cfg “réparé”, taper :

# grub-install /dev/hda 

pour installer GRUB sur le MBR du disque dur.

Pour l'installer sur le PBR d'une partition, taper :

grub-install --force /dev/hda1

Si l'étape se passe mal, essayer la commande

# grub-install --root-directory=/mnt/chroot/ --recheck /dev/hda

12. un seul disque pour Ubuntu et Windows : préparation sous Windows

<note>Si on installe Windows et Ubuntu sur deux disques différents, on peut sauter ce paragraphe.</note>

Sous Windows, il est préférable de :

  1. Nettoyer le disque dur de tout ce qui l'encombre : fichiers temporaires, logiciels inutilisés, téléchargements divers et variés (exemple : ce tutoriel externe, Ccleaner).
  2. Vérifier la partition : un clic droit sur le disque voulu dans (Poste de travail ou Ordinateur) ; /propriétés, onglet OutilsVérifiermaintenant.
  3. Défragmenter la partition : Toujours dans l'onglet Outils des propriétés du disque, appuyer sur Défragmentermaintenant

Partitionner le disque pour faire de la place à Ubuntu.

13. Installer Ubuntu en dual-boot avec Windows XP sur le même disque dur en utilisant l'amorçeur de Windows

14. Première méthode

15. Avec deux disques

cf http://doc.ubuntu-fr.org/tutoriel/comment_faire_multiboot_propre_2_dd

Vous voulez garder votre MBR intact ? Vous avez un ordinateur tatoué ? Vous avez un 2e disque dur ?

Cette solution est sûrement la meilleure car les deux systèmes sont ainsi parfaitement indépendants : si vous devez réinstaller Windows, GRUB ne sera pas effacée. De plus, vous pouvez booter sur votre Windows même si vous avez enlevé votre second disque-dur !

ousOn veut installer ubuntu sur un disque et windows sur l'autre.

Supposons que Windows est installé sur le disque dur n°1, et que le disque n°2 est prêt pour accueillir Ubuntu.

Le disque 2 est prêt si :

  • Il contient un espace prêt a accueillir Linux (Espace Libre non-formaté)
  • Il contient au moins une partition primaire libre, suffisamment grande pour installer Ubuntu
  • Et si les partitions nécessaires ont été créées (à l'aide d'un Live CD de Gparted par exemple).

15.1. Avant l'installation

Il faut changer l'ordre de démarrage dans le BIOS pour que le disque dur destiné à Ubuntu soit devant le disque dur contenant Windows.

Par exemple :

  1. Lecteur CD/DVD
  2. Disque dur destiné à Ubuntu
  3. Disque dur Windows

Si le BIOS ne permet pas de choisir l'ordre de démarrage entre les différents disques durs (cas très rare), il faut inverser les sélecteurs Maître/Esclave des disques pour que le disque destiné à Ubuntu soit Maître et le disque Windows Esclave. Si les sélecteurs Maître/Esclave sont sur le mode automatique, on peut inverser la position des disques sur la nappe.

15.2. Procédure d'installation

Lancer la procédure normale d'installation d'Ubuntu avec le LiveCD.

A la fin de la dernière étape de l'installation,(confirmation des changements) il y a une option “Avancé”. Cliquer dessus et changer l'emplacement de GRUB. Par défaut, GRUB s'installe sur hd0. Pour changer, cliquer sur l'onglet et choisir le disque. (Par exemple : hd0 ⇒ sdb).

<note important>Surtout ne pas indiquer le disque Windows</note>

Finir l'installation normalement.

15.3. Après l'installation

L'installation complète d'Ubuntu s'est bien déroulée. Mais il se peut que Grub n'arrive pas à lancer Ubuntu.

Dans ce cas, éditer la ligne (2 fois e), et changer hd(1,0) en hd(0,0), puis faire b pour booter.

Si cela marche (cas de GRUB-PC, à partir de Ubuntu 9.10) :

sudo grub-mkdevicemap
sudo update-grub

<note tip>Dans le cas de GRUB (Version d'ubuntu antérieure à Ubuntu 9.10 = karmic, il faut modifier un paramètre de GRUB.

Pour cela, avec les droits administrateur, modifier le fichier /boot/grub/menu.lst

Changer la ligne # groot :

# groot hd(1,0)

en :

# groot hd(0,0)

Important : garder le #

et sauver.

Puis taper dans la console :

sudo update-grub

Cette dernière commande remet à jour le menu de démarrage grub.</note>

15.4. Pour booter sur Windows

Il se peut que Grub n'arrive pas à lancer Windows.

Il faut savoir que Windows n'accepte de se lancer que s'il est sur le premier disque dur.

Avec les droits administrateur, modifier le fichier /boot/grub/menu.lst (dans le cas de GRUB ou le fichier /boot/grub/grub.cfg (cas de GRUB-PC)

  • Pour GRUB, chercher la ligne
    END DEBIAN AUTOMAGIC KERNELS…
    normalement située à la fin du fichier, et rentrer les paramètres « map », qui vont virtuellement inverser l'ordre des disques au lancement de Windows, lui faisant croire qu'il se trouve sur le premier. Enregistrer le fichier après modification.\\Exemple : (le disque n°1 devient le n°2, et le disque n°2 devient le n°1) :
    ### END DEBIAN AUTOMAGIC KERNELS LIST
    
    title           Microsoft Windows XP Home Edition
    map (hd0) (hd1)
    map (hd1) (hd0)
    root (hd1,0)
    savedefault
    makeactive
    chainloader     +1
  • Pour GRUB-PC, chercher la ligne

    BEGIN /etc/grub.d/30_os-prober ###
    et ajouter à la suite le paramètre drivemap qui va, lui aussi, inverser virtuellement les disques, ce qui vouz donne le code :

    ### BEGIN /etc/grub.d/30_os-prober ###
    menuentry "Microsoft Windows XP Home Edition" --class windows --class os {
    	drivemap -s (hd0) (hd1)
    	insmod part_msdos
    	insmod ntfs
    	set root='(/dev/sdb,msdos1)'
    	search --no-floppy --fs-uuid --set=root 806C7A1D6C7A0DE2
    	chainloader +1
    }
    ### END /etc/grub.d/30_os-prober ###

    15.5. S'il faut réinstaller Windows

    • Faire la procédure inverse de celle que vous avez faite en 3.1
    • Réinstaller Windows en faisant attention de ne pas écraser les partitions Ubuntu, et vérifier son bon fonctionnement.
    • Pour finir, refaire la procédure 3.1, pour se retrouver dans la configuration initiale avec Grub comme lanceur.

16. Un problème suite à la réinstallation de Windows ?

Après réinstallation de Windows, il arrive que GRUB ne parvienne plus à le lancer.

Pour réinstaller GRUB sur le mbr du disque sdb :

grub-install /dev/sdb

Pour le réinstaller sur le pbr /dev/sdb1 (partition où est installé linux) :

grub-install /dev/sdb1

C'est le cas si Windows était préalablement installé sur la 2ème partition du disque (la première étant souvent réservée à la partition de récupération propre aux Windows pré-installés), et qu'il se soit réinstallé sur la première.

Dans ce cas il faut renseigner GRUB pour qu'il prenne ce changement en compte.

Pour cela il faut savoir sur quelle partition se trouve maintenant Windows.

sudo fdisk -l

Repérer le nom de la partition sur laquelle se trouve Windows.

Avec les droits administrateur, modifier le fichier /boot/grub/menu.lst (cas de GRUB) ou le fichier /boot/grub/grub.cfg (cas de GRUB-PC).

Aller à la ligne

Title    Microsoft Windows...

en dessous se trouve la ligne

root

ou

rootnoverify

vérifier que la partition corresponde à ce qu'on a noté.

Modifier la si nécessaire et enregistrer le fichier.

17. Références


Connexion