Erro no GRUB: sistema de arquivos desconhecido

3

Substitui a minha unidade de laptop antiga que era o win7 e o boot duplo do ubuntu com um SSD.

Agora conectei o disco antigo por meio de um adaptador USB e quero inicializá-lo a partir dele.

Mas isso surge:

unknown filesystem
grub rescue>

Como eu preciso dos programas da unidade antiga, eu tenho que inicializar de tempos em tempos e não quero instalar esses softwares na nova unidade. Demora tanto tempo para trocar as unidades, então eu quero inicializar a partir do USB.

como posso corrigir isso?

    
por Ali 21.10.2011 / 11:58

4 respostas

1

A maneira mais conveniente seria, eu acho, ... copiar o disco antigo para o SSD. A virtualização também pode ser uma maneira de converter o disco USB em uma imagem "bruta" e executá-lo em tela cheia (funciona bem com o USB3).

Caso contrário, você deve inicializar a partir do grub. Você pode adicionar uma entrada de menu para isso, se você puder fazer isso.

Problema da Polyshell

Para testar o seguinte, instalei um Windows 7 Home Premium (não tinha outra licença disponível, infelizmente) como sistema operacional único.

Então (do Windows 7) eu encolhi a partição para liberar espaço suficiente para o Fedora 18.

Nesse momento eu iniciei o Fedora 18 DVD (Desktop, Xfce) e instalei no disco rígido. O instalador encontrou "muito espaço para instalar o Fedora!", Usei o particionamento automático e assumi o padrão de inicialização dupla.

Ambos os sistemas foram inicializados corretamente.

Nesse momento, apaguei a partição F18 (do Windows) e formatei o espaço livre.

Após a reinicialização, recebi:

GRUB loading.
Welcome to GRUB!

error: unknown filesystem.
Entering rescue mode...
grub rescue> _

Rodando

ls

encontrou três partições do Windows ( a primeira foi criada pelo Windows 7 e é uma partição de serviço de 100Mb. Não sei se a inicialização deve ser msdos1 ou msdos2; a que eu criei agora é msdos3 ).

(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (fd0)

Assim, a partição Linux onde o código GRUB2 necessário reside está perdida . E o Grub2 aparentemente não pode fazer "inicialização cega" (ou seja, carregar em cadeia para o carregador de inicialização em uma partição existente no nível do setor). Então agora precisamos dos arquivos originais do GRUB2 para poder fazer qualquer coisa; o que significa que precisamos de outra instalação do GRUB2 .

Então, em outro computador, baixamos essa ferramenta, que é, na verdade, uma instalação de recuperação do GRUB2: link (é um ISO de 12 Mb) e colocá-lo em um USB inicializável ou gravar em um CD.

E nós começamos a partir dele. O menu aparece, vamos para "Detectar Qualquer Sistema Operacional"; ele deve ver a partição do Windows e ser capaz de inicializá-lo.

Infelizmente, o sistema operacional completo do Windows também bloquearia o disco do sistema e impediria sua modificação, por isso precisamos inicializar no Windows e imediatamente pressionar F8 para entrar no modo de manutenção com disco desbloqueado.

Uma maneira mais rápida neste ponto, é claro, seria ter o DVD original do Windows ou fazer com que um amigo grave um CD de recuperação do Windows, inicialize-o em vez do CD de recuperação do Grub2 e siga estas etapas (para o Windows 8, há Reparo automático).

Uma vez no menu de inicialização do Windows 7, o primeiro item do menu ("Reparo de inicialização", eu acho - minha instalação não era o inglês) procurava automaticamente o que impedisse o Windows de inicializar ("Nenhum dado ou documento será perdido") , disse ele. Também me ofereceram a opção de executar uma Restauração do Sistema, que eu recusei: o sistema está bem, é o carregador de boot que precisa ser recuperado, e isso nem é na Restauração do Sistema.

Após alguns minutos, a opção Reparo de inicialização falhou miseravelmente (esperamos que o Windows 8 melhore).

Então eu iniciei novamente no modo gráfico e pesquisei por bootsect.exe (os dois primeiros links tentaram me fazer baixar spyware - o arquivo bom tinha cerca de 95 Kb), baixei para o disco, reiniciei novamente com o F8 no Recovery Tools Depois de abrir um Prompt de Comando, localizei o binário BOOTSECT.EXE que baixei. Então eu corri

BOOTSECT /nt60 SYS /mbr

e, em seguida, reiniciado (depois de remover o CD de recuperação).

O sistema entrou na GUI original do Windows 7 sem problemas (exceto uma longa espera no início com muita atividade de disco, enquanto CHKDSK estava sendo executado silenciosamente, eu acho)

Inicializando do USB

Isto não garante que funcione, porque depende de como o dispositivo USB é "visto" em Hora de inicialização do GRUB. Ser capaz de inicializar a partir do USB a partir do prompt do BIOS pode não ser suficiente .

No mínimo, o carregador do GRUB terá que ser modificado, porque quando o disco USB foi hd0, ele "se viu" como hd0. Agora ele ainda funciona, mas o hd0 é agora outro disco, então o grub está procurando por coisas no lugar errado.

Os comandos acima podem ainda funcionar, exceto que agora não é hd0 mas hd1, 2 ... et cetera. Não garantido, no entanto. Mas você pode ter sorte.

root (hd2,1)
chainloader +1
boot

Dependendo do que está no SSD, talvez você precise de uma configuração muito mais complicada , trocando os discos no nível do BIOS (hardware EFI suporte necessário) e talvez até mesmo escondendo o próprio SSD.

Como primeira tentativa, tentei localizar a imagem no ponto de montagem USB e inicializar a imagem, esperando que o USB seja visto como hd2 :

root (hd2,1)
find /                       <-- press "Tab"
kernel <path to kernel>
initrd <path to initrd>
boot 

Você pode encontrar um pequeno tutorial para o aqui .

    
por 06.05.2013 / 09:49
0

Primeiro você pode tentar:

resgate grub > ls
                                                                                               (hd0) (hd0,1)
                                                                                               resgate grub > insmod ext2
                                                                                               resgate grub > msmods insmod
                                                                                               erro: sistema de arquivos desconhecido.

então você tem que investigar

link

link

    
por 01.12.2011 / 16:27
0

primeiro para inicializar no Ubuntu a partir da iso.

1.Localize a partição do Ubuntu e a pasta que contém os módulos do Grub.

A pasta Grub contendo os módulos deve estar localizada para que os módulos corretos possam ser carregados. Esta pasta teria sido criada durante a instalação inicial do Ubuntu e deveria estar localizada na partição do Ubuntu. Esta pasta normalmente estaria localizada em (hdX, Y) / boot / grub ou (hdX, Y) / usr / lib / grub / i386-pc Encontre sua partição Ubuntu existente e a pasta do módulo.

ls                               # List the known drives (hdX) and partitions (hdX,Y)
ls (hdX,Y)/                      # List the contents of the partition's root
ls (hdX,Y)/boot/grub             # Normal location of the Grub 2 modules.
ls (hdX,Y)/usr/lib/grub/i386-pc  # Alternate location of the Grub 2 modules.
  • ls - deve retornar todas as unidades conhecidas (hdX) e partições (hdX, Y)
  • ls (hdX, Y) / - deve mostrar o conteúdo do diretório raiz da partição.
  • Se você receber um "erro: sistema de arquivos desconhecido", esta não é a partição do Ubuntu.
  • Se esta é a partição do Ubuntu, você verá as pastas do Ubuntu, incluindo lost + found /, home /, boot / e vmlinuz e initrd.img. Use este endereço como a primeira parte do próximo comando.
  • ls (hdX, Y) / boot / grub - deve exibir várias dezenas de arquivos * .mod. Esta é a pasta que você está procurando.
  • Se você não encontrar os módulos, tente o local alternativo: ls (hdX, Y) / usr / lib / grub / i386-pc

2.Carregue os módulos.

set prefix=(hdX,Y)/<path to modules>
  • Este comando deve apontar corretamente para a pasta que contém os módulos do Grub. O endereço deve ser o da seção anterior que exibiu os módulos.

Exemplos:

set prefix=(hd0,5)/boot/grub 
set prefix=(hd1,1)/usr/lib/grub/i386-pc
  • Carregar módulos:

    insmod linux insmod loopback insmod iso9660 insmod fat # Se o ISO estiver localizado na partição formatada fat16 ou fat32. insmod ntfs # Se o ISO estiver localizado em uma partição formatada com NTFS. insmod nftscomp # Se a compactação NTFS for usada na partição. Carregue se você não tiver certeza.

  • Um erro "arquivo não encontrado" significa que o caminho no prefixo está incorreto ou o módulo específico não existe. A configuração do prefixo pode ser revisada com o comando set. Execute novamente o comando "set prefix=" com o caminho correto.

3.Localize o arquivo ISO do Ubuntu.

  • Usando as combinações de comandos ls, localize a imagem ISO do Ubuntu.

4.Crie o dispositivo de loopback. loop de loopback (hdX, Y) //

  • Exemplo:

    loop de loopback (hd1,1) /path/to/ubuntu-10.04.1-desktop-i386.iso

5.Carregue o kernel do Linux e a imagem initrd.

set root=(loop)

linux /casper/vmlinuz boot=casper iso-scan/filename=/<ISO-name.iso> noprompt noeject

initrd /casper/initrd.lz
  • Se o caminho para o ISO ou o nome do arquivo não estiver correto, a inicialização parará na tela BusyBox e produzirá uma mensagem dizendo "não é possível abrir / dev / sr0: nenhum meio encontrado".
  • Nota: Se o arquivo ISO não estiver na pasta /, inclua o caminho na entrada iso-scan / filename =. Veja o segundo exemplo.

  • Exemplos:

    linux /casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-10.04.1-desktop-i386.iso
    
    linux /casper/vmlinuz boot=casper iso-scan/filename=/my-iso/ubuntu-10.04.1-desktop-i386.iso
    

6.Boot.

  • Deveria ser isso. Se os comandos foram executados sem mensagens / erros, os comandos foram aceitos como inseridos. Agora é hora de inicializar:

boot

mais informações aqui

Agora faça isso depois de inicializar ::

aqui é enviado com o mesmo problema e é resolvido conforme abaixo,

1.sudo mount / dev / sdaX / mnt

aqui sdaX é sua partição de inicialização. você pode obter lista com o sudo blkid assim,

/dev/sda1: LABEL="Windows XP" UUID="96A4390DA438F0FB" TYPE="ntfs" 
/dev/sda3: LABEL="Ubuntu 11.04" UUID="b61fcae3-7744-45b4-95b9-7528d50a3652" TYPE="ext4" 
/dev/sda5: LABEL="Se7en" UUID="A2DC9D71DC9D4109" TYPE="ntfs" 
/dev/sda6: LABEL="Development" UUID="DEB455A1B4557CC9" TYPE="ntfs" 
/dev/sda7: LABEL="EXTRA" UUID="D8A04109A040F014" TYPE="ntfs" 
/dev/sda8: LABEL="SONG" UUID="46080FCD080FBAC7" TYPE="ntfs" 
/dev/sda9: LABEL="BACKUPS" UUID="766E-BC99" TYPE="vfat" 

nota: sdaX deve ser uma partição linux.

2. sudo grub-install --boot-directory=/mnt/boot /dev/sda

3. sudo update-grub

    
por 06.05.2013 / 08:47
-1

Você pode usar o Ubuntu e o Lilo para restaurar o MBR nessa unidade. Eu escrevi um tutorial sobre como fazer isso no thenewtech.tv

    
por 05.05.2013 / 15:53