freebsd
[Início] [Todas as Listas]

Re: [FUG-BR] 7.0 Não arranca depois de actualizacao

From: Pedro Almeida <mindcooker@xxxxxxxxx>
To: "Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)" <freebsd@xxxxxxxxxx>
Subject: Re: [FUG-BR] 7.0 Não arranca depois de actualizacao
Date: Thu, 28 Feb 2008 16:59:18 +0000
Patrick Tracanelli wrote:
 Can't work out which disk we are booting from.
 Guessed BIOS device 0xffffffff not found by probes, defaulting to disk0:
 panic: free: guard1 fail @ 0x6c23c
 from /usr/src/sys/boot/i386/loader/../../common/module.c:959
 press any key to reboot

O loader não consegue relacionar o ID de disco que a BIOS informa ao disco de fato. Isso pode ser por corrupcao do proprio loader ou algum estagio intermediario (boot1, 2, ..).

Entao voce tem algumas alternativas.

1) De o boot com um CD, va ate partition, marque a particao como ativa com a tecla S (set active) e aperte W (write to disk), instale o boot manager, e tente bootar. Se nao funcionar proxima alternativa:

2) Entre com o CD de em modo Fixit, escolha a midia Live como opcao, monte o s1a do seu disco em algum lugar (/mnt por exemplo) e remova o /boot/loader. Sim, nos nao precisamos do loader. Ele prove uma serie de recursos mas nao eh imperativo. Entao remova, os boot stages vao tentar carregar o kernel diretamente sem solicitar intervencao do loader (afinal ele nao vai existir). Se nao funcionar:

3) Antes de identificar qual particao voce quer bootar via F1, F2, etc, de uma barra de espaco. Voce caira numa prompt absurtamente precaria, algo assim:

 >> FreeBSD/i386 BOOT
Default: 0:ad(0,a)/boot/loader
boot:

E ai digite por qual disco voce quer bootar. A sintaxe eh:

<BIOS_ID>:<device>(<device_unit>,<label>)/<arquivo>

<BIOS_ID> é o ID da controladora de disco na BIOS, onde 0 = controladora 1 (IDE 1 por exemplo, ou scsi ID), etc;

<device> é o nome do device driver (ad pra ata disk, da pra scsi, etc)

<device_unit> pro numero do disco, 0 = disco1, etc;

<label> = label ;)

<arquivo> é o nome do arquivo onde voce quer bootar; o padrão (por omissão inclusive) é o /boot/loader do disco que voce escolher; mas como eu disse antes o loader não é imperativo, você não precisa dele.

Por exemplo, supondo que voce queira o disco ad0s1a no ID 0

0:ad(0,a)

Se quer ad2s2a

2:ad(1,a)

Ou entao

1:ad(1,a)
ou
1:ad(0,a)

Nao importa, voce quem decide.

Como estamos contando com a hipotese do loader estar danificado, pule-o, chamando direto o kernel, por exemplo:

1:ad(1,a)/boot/kernel/kernel

Pronto. Não tem como não funcionar. Pode até ser que você ainda não consiga bootar, mas a causa (e consequentemente a mensagem de erro) certamente será outra.

Assim que bootar a primeira coisa é reinstalar o loader, entre em /usr/src/sys/boot/i386/loader e reinstale. Caso voce precise bootar varias vezes escolhendo o disco manualmente, o padrão acima pode ser tornado permanente em /boot.config, por exemplo com:

echo "1:ad(1,a)/boot/kernel/kernel" > /boot.config

Boa sorte. Espero que voce consiga com o procedimento 1 ou 2 pois o ultimo eh chatissimo. BIOS ID se o disco for ATA ou SATA não é nada linear.

--
Patrick Tracanelli



-------------------------
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

Estando dentro do "fixit", como devo proceder para recupearar a instalação ou corrigir o problema?

























<Anterior na Thread] Thread Atual [Próximo na Thread>