Fórum Ubuntu Linux - PT
Suporte Técnico => Instalação e Atualização => Tópico iniciado por: Madrigal em 08 de Maio de 2008, 01:20
-
Instalei o Ubuntu 8.04 num pc com o particionamento muito estranho, o Windows XP instalado numa partição extendida dentro do hda1.
Está assim o HD:
hda1 (com extendida hda5, onde está instalado o Windows XP)
hda2 (sistema do Ubuntu)
hda3 (home do Ubuntu)
hda4 (Swap)
O Grub não reconheceu o Windows, por isso editei o menu.lst e coloquei:
title Windows XP
root (hd0,4)
savedefault
makeactive
chainloader +1
Mesmo assim não deu certo!
Não posso formatar todo o HD porque o PC não tem gravadora, pra fazer cópia de segurança dos arquivos no XP.
O que pode ser isso? Será que não reconhece devido ao XP estar numa extendida? Eu nem sabia que poderia instalar o XP numa extendida. :-\
-
Windows não pode ficar em partição extendida.
Isso é uma limitação dele.
-
O windows já estava instalado antes de instalar o linux?
Até onde eu sei, o Windows XP pode sim ser instalado em partição extendida, mas a partição ativa tem que ser a primária para ele gravar na MBR.
O que acontece quando você tenta iniciar o windows a partir do grub depois dessa configuração?
-
O windows já estava instalado antes de instalar o linux?
Sim, já estava.
..., mas a partição ativa tem que ser a primária para ele gravar na MBR.
Como assim partição ativa?
O que acontece quando você tenta iniciar o windows a partir do grub depois dessa configuração?
Dá uma mensagem de erro, mas não me lembro qual é... é algo como /dev/... incorreta.
Já experimentei colocar (hd0,4), (hd0,0), e outros e não deu certo.
-
Cara... estive procurando algumas coisas sobre o assunto... uma dúvida: o seu XP dava boot normal antes da instalação do linux? se sim, pode ser possível fazer o seguinte:
1) instalar o grub do linux na partição em vez de na MBR.
2) recuperar o boot do windos através do cd de instalação (utilizando as ferramentas fixboot e fixmbr, lembrando de especificar corretamente o disco onde está instalado o windos).
3) utilizar o NTLDR do windows como gerenciador de boot.
Para o passo 3, existe a ferramenta BootPart e achei um tutorial em inglês de como utilizá-la: http://www.linuxforums.org/forum/401236-post13.html
Não testei essa solução... não sei se funciona...
-
glilco a única vez que vi alguém tentando instalar o GRUB em uma partição ele acabou ficando sem os dados... tem certeza mesmo disso?
-
clcampos, depois do seu alerta, resolvi fazer os testes aqui.
Nesse momento, estou usando o Ubuntu e o boot foi feito pelo NTLDR do windows, que executou o boot do grub na minha partição que, por sua vez, executou o boot do linux.
Claro, essas operações sempre envolvem risco de perda de dados, afinal, estamos mexendo diretamente nas tabelas de partição.
É muito importante ter um live cd do Linux ou um disco de boot para recuperar eventuais falhas.
Os passos que segui foram os seguintes:
1) instalar o grub do linux na partição em vez de na MBR.
Como a minha partição do linux é a /dev/sda2, executei:
sudo grub-install /dev/sda2
2) recuperar o boot do windows através do cd de instalação.
Inicializei o cd de instalação do windows (no meu caso, Windows 2000) e escolhi as opções até chegar no console de recuperação. No console, digitei
fixmbr c:
3) utilizar o NTLDR do windows como gerenciador de boot
Entrei no windows (agora diretamente, pois o grub foi removido da MBR), baixei o BootPart e usei para adicionar no NTLDR o boot para o linux.
==> Como usar o BootPart
os comandos que eu usei estão listados abaixo:
bootpart Lista todas as partições do disco, seguidas dos sistemas de arquivo, cada uma identificada por um número.
Ex.:
0 : C:* type=7 (HPFS/NTFS), size = 1741824 KB
1 : D: type=b (Win95 Fat32), size = 1407136 KB
2 : E:* type=83 (Linux native), size = 16600 KB
3 : E: type=5 (Extended), size = 3136392 KB
4 : E: type=83 (Linux native), size = 3070336 KB
bootpart list Lista as entradas do BOOT.INI, utilizado pelo NTLDR para executar o boot.
Ex.:
0 : C:\bootsect.lnx="Fedora Core 6"
1 : multi(0)disk(0)rdisk(0)partition(2)\WINNT="Windows XP"
bootpart <nro_part> <arquivo_boot> <nome_exibicao> Adiciona uma entrada no boot.ini.
<nro_part> é o número da partição, que é obtido no comando bootpart
<arquivo_boot> é o arquivo que ele vai criar com as informações de boot.
<nome_exibicao> é o nome que vai aparecer na tela de boot para essa entrada do boot.ini. Lembrando que, se o nome tiver espaços, deve ser escrito entre aspas.
Ex.:
bootpart 2 c:/bootsect.lnx "Ubuntu Linux"
Aqui funcionou perfeito. Só que a minha partição do windows é primária. Mas se você conseguir restaurar o seu boot do windows através do fixmbr, provavelmente vai funcionar essa solução.
Mas não se esqueça! Essa não é uma operação simples e sempre há risco de perda de dados!
-
Muito obrigado Glilco pela atenção dispensada. ;)
Bem, acabei não podendo executar suas indicações porque a dona do computador resolveu radicalizar antes de experimentar recuperar o glub... ela arrumou um HD externo, transferiu os arquivos e formatou tudo.
Portanto é uma pena que ficarei sem saber se sua dica daria certo ou não, pela sua explicação detalhada, é bem capaz que daria.
O bom disso, é que minha aluna resolveu nem colocar mais o Windows no PC, vai ser exclusivamente Ubuntu. ;D