Primeiro, corro sudo os-prober
e vejo se ele encontra a instalação do Windows. Se ele não estiver instalado, execute sudo apt-get install os-prober
, em seguida, execute-o e, se ele encontrar o Windows, execute sudo update-grub
e ele deverá criar o item de menu.
Se isso não funcionar, eu executaria sudo fdisk -l
(-l é para List) e procuraria seu disco rígido. Será algo parecido com isto:
Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x000702fc
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 33554431 33552384 16G 83 Linux
/dev/sda2 33556478 41940991 8384514 4G 5 Extended
/dev/sda5 33556480 41940991 8384512 4G 82 Linux swap / Solaris
/dev/sda6 41940991 50950020 8250580 16G 0b FAT32
Mais uma vez, este é apenas um exemplo que o seu parecerá diferente e poderá ser rotulado de forma diferente. Eu realmente não tenho uma partição do Windows XP no sistema, então eu 'fingi' neste exemplo.
Para isso, suponho que meu Windows XP esteja instalado em /dev/sda6
. Isso será importante para a etapa a seguir.
Agora precisamos criar um item de menu personalizado para o GRUB
Abra o terminal e digite:
sudo gedit /etc/grub.d/40_custom
você pode substituir o gedit pelo seu editor favorito, mas ele precisa ser executado como sudo para poder editar o arquivo.
adicione o seguinte ao final do arquivo 40_custom (se o arquivo estiver completamente em branco, você digitou algo errado ou você não tem o grub2 e essas instruções não funcionarão para você ... verifique novamente se você tem uma pasta /etc/grub.d)
menuentry "Windows XP" {
set root=(hd0,6)
chainloader (hd0,6)+1
}
Explicação para esta entrada ... você precisará alterar o hd0,6
nas entradas para corresponder à sua partição do Windows. O hd0 refere-se a sda, se você tem mais de um disco rígido e sua partição do windows está em sdb então você precisaria usar hd1 em vez de você, estou assumindo que você está em sda que você determinou pelo comando fdisk que você correu mais cedo. O, 6 no meu exemplo é porque determinamos que a instalação do Windows estava em /dev/sda6 - sda(hd0)6
Depois de modificar o arquivo 40_custom, ele deve ser parecido com este
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
#echo 'Adding 40_custom menu entries' >&2
menuentry "Windows XP" {
set root=(hd0,6)
chainloader (hd0,6)+1
}
salve o arquivo e execute sudo update-grub
ele deve adicionar um item de menu para o Windows XP ... tente reinicializar e verifique se ele inicializa no Windows
Se você fez tudo corretamente, você deve estar pronto.
A partir das novas informações, o arquivo 40_custom deve ficar assim:
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
#echo 'Adding 40_custom menu entries' >&2
menuentry "Windows XP" {
set root=(hd0,1)
chainloader (hd0,1)+1
}
Devido a problemas com "Assinatura Inválida", precisamos trabalhar mais um pouco
Você precisa abrir o terminal e inserir sudo blkid
para procurar o UUID
para /dev/sda1
e copiá-lo. então você precisará editar o 40_custom com o seguinte:
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
#echo 'Adding 40_custom menu entries' >&2
menuentry "Windows XP" {
insmod ntfs
set root=(hd0,msdos1)
search --no-floppy --fs-uuid --set 822CB74E2CB73BCB
chainloader +1
}
(editado com a informação dada nos comentários)
salve o arquivo e sudo update-grub
novamente e tente mais uma vez. Espero que agora você não receba a Assinatura Inválida