web-dev-qa-db-fra.com

Ajouter Windows 7 au menu de démarrage

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      102400    7  HPFS/NTFS   - system restore
/dev/sda2              13        4674    37436416    7  HPFS/NTFS  - Windows 7
/dev/sda3            4674       58843   435116032    7  HPFS/NTFS -  data storage
/dev/sda4           58843       60802    15728640   83  Linux - Ubuntu 10.10

Au départ, j'ai installé StartUpManager. Cela (je pense) a ajouté 4 autres instances de Linux + memtest à la liste de mes menus de démarrage. Cependant, je n'ai pas vu le menu de démarrage GRUB. L'ordinateur démarre dans Ubuntu après quelques secondes.

J'ai essayé d'ajouter Windows 7, mais je n'ai pas réussi.

Ceci est une partie de mon fichier menu.lst.

title        Ubuntu 10.10, kernel 2.6.35-24-generic
uuid        1c9748e2-2f11-4a6c-91c0-7310d48c4a7a
kernel        /boot/vmlinuz-2.6.35-24-generic root=UUID=1c9748e2-2f11-4a6c-91c0-7310d48c4a7a ro quiet splash
initrd        /boot/initrd.img-2.6.35-24-generic


title        Chainload into GRUB 2
root        1c9748e2-2f11-4a6c-91c0-7310d48c4a7a
kernel        /boot/grub/core.img

title        Ubuntu 10.10, memtest86+
uuid        1c9748e2-2f11-4a6c-91c0-7310d48c4a7a
kernel        /boot/memtest86+.bin


menuentry “Windows 7″ {
set root=(hd0,2)
chainloader +1
}

Et ceci après upgrade-grub

Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /boot/vmlinuz-2.6.35-24-generic
Found kernel: /boot/vmlinuz-2.6.35-22-generic
Found GRUB 2: /boot/grub/core.img
Found kernel: /boot/memtest86+.bin
Updating /boot/grub/menu.lst ... done

ltérieur Edit:

J'ai ajouté ce qui suit à /etc/grub.d/40_custom et je n'ai pas commenté la ligne de menu masquée de menu.lst, mais je ne peux toujours pas voir le menu de démarrage. J'ai aussi essayé d'appuyer sur ESC et SHIFT.

menuentry "Windows 7 (loader) (on /dev/sda1)" {
  insmod part_msdos
  insmod ntfs
  set root='(hd0,msdos1)'
  chainloader +1
}

menuentry "Windows 7 (loader) (on /dev/sda1)" {
  insmod part_msdos
  insmod ntfs
  set root='(hd0,msdos0)'
  chainloader +1    
}

menuentry "Windows 7 (loader) (on /dev/sda1)" {
  set root= hd(0,0)
  chainloader +1
}

menuentry "!Windows 7 (loader) (on /dev/sda1)" {
  set root= hd(0,1)
  chainloader +1
}

menuentry "!!Windows 7 (loader) (on /dev/sda1)" {    
  set root= hd(0,2)
  chainloader +1
}
6
Cumatru

Ceci est mon chargeur Windows 7:

menuentry "Windows 7 (loader) (on /dev/sda1)" {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos1)'
chainloader +1
}

Cela devrait fonctionner si vous le copiez et le collez, mais je ne pense pas que vous devriez le mettre dans votre fichier menu.lst. Il devrait aller dans /etc/grub.d/40_custom

8
Micheal Harker

Vous devez connaître votre partition Windows 7. (pour moi "hd0, msdos2") .. Vous pouvez utiliser;

menuentry 'Windows 7 (loader) (on /dev/sda2)' --class windows --class os
$menuentry_id_option 'osprober-chain-9A4600EC4600CB49' {
    insmod part_msdos
    insmod ntfs
    set root='hd0,msdos2'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  9A4600EC4600CB49
      else
      search --no-floppy --fs-uuid --set=root 9A4600EC4600CB49
      fi
      ntldr ($root)/bootmgr # <--- change this
}

Ou vous pouvez utiliser;

menuentry 'Windows 7 (loader1) (on /dev/sda2)' --class windows --class os
$menuentry_id_option 'osprober-chain-9A4600EC4600CB49' {
    insmod part_msdos
    insmod ntfs
    set root='hd0,msdos2'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  9A4600EC4600CB49
      else
      search --no-floppy --fs-uuid --set=root 9A4600EC4600CB49
      fi
      ntldr /bootmgr  # <--- change this
}

Ou vous devez ouvrir bash ..

Sudo update-grub2

vi grub.cfg

** change les lignes que j'ai marquées avec ** # <--- change this ** dans ton grub.cfg. et alors..

Sudo grub-install /dev/sda

c'est tout..

0
PowerOfThink