+ Responder ao Tópico



  1. #1

    Thumbs down Grub + um hd com Linux e outro com Windows

    Olá pessoal,

    Tenho linux rodando normalmente certo, aí coloquei um outro hd na máquina, sendo que este está com Windows XP. O hd com linux está na IDE 0 como primário e o hd Windows XP está como secundário na IDE1.
    Na bios o HD secundário detectou normalmente. Ao ligar a máquina sobe diretamente o linux, loguei na máquina e editei o arquivo de config. do GRUB.
    Nele inseri a seguinte linha:

    title Windows XP
    rootnoverify (hd4,0)
    makeactive
    chainloader +1

    Em rootnoverify já tentei (hd4,1) - (hd3,0) - (hd3,1) enfim tentei várias opções e sempre que tento escolher Windows XP ele diz que não encontrou o HD.

    O que está errado? Preciso muito fazer isso funfar.

    Valeu pessoal!

  2. #2

    Padrão

    Citação Postado originalmente por adritec Ver Post
    Olá pessoal,

    Tenho linux rodando normalmente certo, aí coloquei um outro hd na máquina, sendo que este está com Windows XP. O hd com linux está na IDE 0 como primário e o hd Windows XP está como secundário na IDE1.
    Na bios o HD secundário detectou normalmente. Ao ligar a máquina sobe diretamente o linux, loguei na máquina e editei o arquivo de config. do GRUB.
    Nele inseri a seguinte linha:

    title Windows XP
    rootnoverify (hd4,0)
    makeactive
    chainloader +1

    Em rootnoverify já tentei (hd4,1) - (hd3,0) - (hd3,1) enfim tentei várias opções e sempre que tento escolher Windows XP ele diz que não encontrou o HD.

    O que está errado? Preciso muito fazer isso funfar.

    Valeu pessoal!
    Cara, tenta colocar assim:

    title WindowsXP
    root (hd3,0)
    makeactive
    chainloader +1

  3. #3

    Padrão

    Opa Magnun, beleza.

    Cara valeu pela dica, mas eu já havia testado assim, antes de ler a citação abaixo:

    Na parte do arquivo que trata do Windows XP, a sintaxe é a mesma. No entanto, a segunda linha recebe o parâmetro rootnoverify ao invés de root, pois a montagem de partição não se aplica ao Windows. O rootnoverify é usado porque esse parâmetro não tenta fazer nenhuma montagem.

    Agora li algo sobre utilizar o comando map. Só que não entendi onde tenho que coloca-lo, alguma dica?

  4. #4

    Padrão

    Citação Postado originalmente por adritec Ver Post
    Opa Magnun, beleza.

    Cara valeu pela dica, mas eu já havia testado assim, antes de ler a citação abaixo:

    Na parte do arquivo que trata do Windows XP, a sintaxe é a mesma. No entanto, a segunda linha recebe o parâmetro rootnoverify ao invés de root, pois a montagem de partição não se aplica ao Windows. O rootnoverify é usado porque esse parâmetro não tenta fazer nenhuma montagem.

    Agora li algo sobre utilizar o comando map. Só que não entendi onde tenho que coloca-lo, alguma dica?
    Curioso, no meu o Windows usa root mesmo... E sem problemas! Talvez por ele estar no hd0

    Pesquisando achei o seguinte exemplo:

    title Microsoft Windows XP Professional
    root (hd1,0)
    savedefault
    map (hd0) (hd1)
    map (hd1) (hd0)
    chainloader +1

    Talvez alterando pra seu caso:
    title Microsoft Windows XP Professional
    root (hd3,0)
    savedefault
    map (hd0) (hd3)
    map (hd3) (hd0)
    chainloader +1

    Testa também com o rootnoverify...

    Vou continuar pesquisando...
    Última edição por Magnun; 03-10-2008 às 12:03.

  5. #5

    Padrão

    Algo válido também é dá uma olhada no devices.map dentro de /boot/grub..

  6. #6

    Padrão

    Magnun!

    Estranho olha só, no devices.map tem o seguinte:

    (fd0) /dev/fd0
    (hd0) /dev/hda

    Devo inserir uma outra entrada também?

    Como saberei se realmente é hd4,0 ou hd3,0 ou hd3,1 ou hd4,1

    Com fdisk -l é possível ter essas informações?
    Última edição por adritec; 03-10-2008 às 13:39.

  7. #7

    Padrão

    Citação Postado originalmente por adritec Ver Post
    Magnun!

    Estranho olha só, no devices.map tem o seguinte:

    (fd0) /dev/fd0
    (hd0) /dev/hda

    Devo inserir uma outra entrada também?

    Como saberei se realmente é hd4,0 ou hd3,0 ou hd3,1 ou hd4,1

    Com fdisk -l é possível ter essas informações?
    Não, o fdisk não mostra isso. Mas a lógica do linux é a seguinte:
    hda - IDE1 Master
    hdb - IDE1 Slave
    hdc - IDE2 Master
    hdd - IDE2 Slave

    O grub faz a seguinte associaçao:
    hda - hd0
    hdb - hd1
    hdc - hd2
    hdd - hd3

    Os numeros depois de hda representam a partição. Os primeiros 4 numeros (de 1 a 4) são para a partições primárias e extendiads. As partições lógicas ficam de 5 em diante.
    Quanto a partições não sei como o grub se comporta. Mas testa colocando (hd3) /dev/hdd

    Ate mais..

  8. #8

    Padrão

    Opa Magnun, bleza.

    Seguinte cara, no devices.map não tem nenhuma entrada do outro HD (no caso o disco que está como slave) preciso adicionar essa entrada manualmente?

    Na BIOS o disco é detectado.

  9. #9

    Padrão

    Citação Postado originalmente por adritec Ver Post
    Opa Magnun, bleza.

    Seguinte cara, no devices.map não tem nenhuma entrada do outro HD (no caso o disco que está como slave) preciso adicionar essa entrada manualmente?

    Na BIOS o disco é detectado.
    Ele não deve ter detectado automaticamente. Põe na mão ai e testa...

  10. #10

    Padrão

    Seguinte, inclui manualmente no arquivo devices.map então ficou assim:

    (fd0) /dev/fd0
    (hd0) /dev/hda
    (hd3) /dev/hdd

    Só que não rolou, sendo que o arquivo de config. do GRUB ficou da seguinte forma:

    title Windows XP
    rootnoverify (hd3, 0)
    map (hd0) (hd3)
    map (hd3) (hd0)
    chainloader +1

    Mas não rolou, quando seleciono Windows XP é como se ele não encontra-se o HD, já confirmei na BIOS e o HD com XP está como Slave da IDE1, sendo que o Linux está na IDE0 como Master.

    Estou fazendo algo errado?

  11. #11

    Padrão

    Citação Postado originalmente por adritec Ver Post
    Seguinte, inclui manualmente no arquivo devices.map então ficou assim:

    (fd0) /dev/fd0
    (hd0) /dev/hda
    (hd3) /dev/hdd

    Só que não rolou, sendo que o arquivo de config. do GRUB ficou da seguinte forma:

    title Windows XP
    rootnoverify (hd3, 0)
    map (hd0) (hd3)
    map (hd3) (hd0)
    chainloader +1

    Mas não rolou, quando seleciono Windows XP é como se ele não encontra-se o HD, já confirmei na BIOS e o HD com XP está como Slave da IDE1, sendo que o Linux está na IDE0 como Master.

    Estou fazendo algo errado?
    Cara, descobri que se editar esse arquivo tem que "re-instalar" o Grub...

    parece que é só usar o comando
    grub --batch --device-map=/boot/grub/device.map </etc/grub.conf


    Vi nesse link: [Dicas-L] GRUB - Configuração para dois HD
    Dá uma lida...

  12. #12

    Padrão

    Não rolou ainda, mas olha só, com fdisk -l obtenho a seguinte informação:

    Disk /dev/hda 40.0 GB blablablabla

    Device boot * Start End Blocks Id System
    /dev/hda1 1 3627 29133846 83 Linux
    /dev/hda2 3628 4865 9944235 f W95 Ext'd (LBA)
    /dev/hda5 3628 4865 9944203 + 83 Linux

    Disk /dev/hdd 20.4 GB blablablabla

    Device boot * Start End Blocks Id System
    /dev/hdd1 1 727 5839596 7 XXFS/NTFS
    /dev/hdd2 728 746 152617 + 82 Linux swap/Solaris
    /dev/hdd3 747 1766 8193150 83 Linux
    /dev/hdd4 1767 2480 5735205 7 XXFS/NTFS

    No HD da IDE0 que está como master tenho só linux instalado, no HD da IDE1 que está como slave tenho Windows XP e Linux, correto.

    Adicionei entrada no device.map que ficou assim:

    (fd0) /dev/fd0
    (hd0) /dev/hda
    (hd3) /dev/hdd


    Tentei usar o comando grub --batch --device-map=/boot/grub/device.map </etc/grub.conf (no meu caso não é grub.conf, fica em /boot/grub, é menu.lst) mas não rolou.

    Preciso fazer funfar isso, mas ta dificil.

  13. #13

    Padrão

    Citação Postado originalmente por adritec Ver Post
    Não rolou ainda, mas olha só, com fdisk -l obtenho a seguinte informação:

    Disk /dev/hda 40.0 GB blablablabla

    Device boot * Start End Blocks Id System
    /dev/hda1 1 3627 29133846 83 Linux
    /dev/hda2 3628 4865 9944235 f W95 Ext'd (LBA)
    /dev/hda5 3628 4865 9944203 + 83 Linux

    Disk /dev/hdd 20.4 GB blablablabla

    Device boot * Start End Blocks Id System
    /dev/hdd1 1 727 5839596 7 XXFS/NTFS
    /dev/hdd2 728 746 152617 + 82 Linux swap/Solaris
    /dev/hdd3 747 1766 8193150 83 Linux
    /dev/hdd4 1767 2480 5735205 7 XXFS/NTFS

    No HD da IDE0 que está como master tenho só linux instalado, no HD da IDE1 que está como slave tenho Windows XP e Linux, correto.

    Adicionei entrada no device.map que ficou assim:

    (fd0) /dev/fd0
    (hd0) /dev/hda
    (hd3) /dev/hdd


    Tentei usar o comando grub --batch --device-map=/boot/grub/device.map </etc/grub.conf (no meu caso não é grub.conf, fica em /boot/grub, é menu.lst) mas não rolou.

    Preciso fazer funfar isso, mas ta dificil.

    é cara... to ficando sem ideias...
    foi mal...