O Arch Linux falha ao inicializar a partir de uma chave USB (não é possível montar a partição selecionada)

2

Eu tentei instalar o Arch Linux em uma chave USB. As coisas são meio vacilantes (assume que o sistema tem exatamente uma unidade interna, por exemplo), mas tudo está bem instalado. Até que eu reiniciei.

  Booting 'Arch Linux'

root (hd1,1)
 Filesystem type unknown, partition type 0x7
kernel /boot/vmlinuz26 root=/dev/dsb2 ro

Error 17: Cannot mount selected partition

( /dev/dsb1 / (hd1,0) é uma pequena partição FAT para fins de armazenamento de dados - para os computadores de laboratório bloqueados.)

Aqui está a sequência de comandos do 'Arch Linux':

root (hd1,1)
kernel /boot/vmlinuz26 root=/dev/dsb2 ro
initrd /boot/kernel26.img

No console do grub:

grub> root (hd1,1)
 Filesystem type unknown, partition type 0x7
grub> cat /etc/passwd
 Error 17: Cannot mount selected partition
grub> root (hd0,1) # my ubuntu partition
 Filesystem type is ext2fs, partition type 0x73
grub> cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
<snip/>

Eu consegui reinicializar com sucesso no meu sistema operacional host, o Ubuntu, e usei a Disk Tool para confirmar que o particionamento foi bem-sucedido. Além disso, executar sudo kvm /dev/dsb resultou em uma inicialização do Arch bem-sucedida, uma vez que editei os comandos para inicializar a partir de root (hd0,1) (ou seja, até o Arch tentar montar /dev/dsb2 ).

O que eu fiz de errado?

Editar 1

Do Ubuntu, fdisk -l /dev/sdb dá:

Disk /dev/sdb: 1998 MB, 1998585856 bytes
62 heads, 62 sectors/track, 1015 cylinders
Units = cylinders of 3844 * 512 = 1968128 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1          65      124899    b  W95 FAT32
/dev/sdb2   *          66        1015     1825900   83  Linux

Agora li a seção wiki relacionada , mas nada parece se aplicar: não usei Unidades GParted ou lógicas; tudo está na mesma partição.

    
por badp 30.10.2010 / 12:49

2 respostas

3

A primeira coisa a verificar nesta situação é se o disco que você está tentando inicializar é o correto. A ordenação de discos pode depender de muitos fatores:

  • No Grub1, você só tem acesso a dois discos rígidos. Esta é uma limitação da interface do BIOS. Quais são os dois discos rígidos que você realmente obtém depende das configurações da BIOS (procure por algo como “ordem de inicialização”) e quais discos e outras mídias de inicialização do disco rígido (por exemplo, unidades flash USB) você realmente tem disponível.

  • No Linux, a ordem de sda , sdb , etc., depende da ordem em que as unidades são detectadas, o que na hora da inicialização geralmente depende da ordem em que os drivers são carregados. Além disso, se alguns discos aparecem como sd? ou hd? depende das opções de configuração do kernel e das configurações do udev.

Aqui o Grub está relatando uma partição com o tipo 7. Embora o Linux e o Grub não se importem com os tipos de partição (exceto para partições "container", como partições estendidas), é incomum ter um sistema de arquivos Linux em uma partição com tipo 7 (qual fdisk descreve como HPFS/NTFS ). Então, meu palpite é que qualquer unidade que seu BIOS esteja oferecendo como a segunda unidade de inicialização (Grub's hd1 ) não é o disco que você quer inicializar, mas algum outro disco com uma partição do Windows. Verifique se hd0 é a unidade da qual você deseja inicializar; se não for, você terá que alterar as configurações da BIOS.

Se o Grub reconhece o sistema de arquivos em uma partição, você pode digitar algo como cat (hd1,1)/ e pressionar a tecla Tab para ver quais arquivos estão lá. Esta é a maneira usual de descobrir quais sistemas de arquivos você tem quando se sente perdido em um prompt do Grub.

A segunda coisa a verificar é se a partição que você está tentando acessar é a correta - Grub1 conta a partir de 0, Linux e Grub2 contam a partir de 1, e situações incomuns (como ter uma instalação BSD) podem causar mais complicações. Adicionar ou remover partições lógicas pode fazer com que as partições existentes sejam renumeradas de uma maneira às vezes não intuitiva.

Se você tivesse a partição correta no disco direito, então Filesystem type unknown indicaria que a partição não contém um sistema de arquivos suportado pela sua versão do Grub. O Grub1 suporta os sistemas de arquivos comumente usados pelo Linux (ext2 e versões posteriores, reiserfs, xfs, jfs) mas (a menos que você tenha uma correção recente) btrfs. O Grub1 também não suporta LVM ou RAID (exceto o RAID-1, ou seja, o espelhamento, já que parece um volume comum ao ler).

    
por 30.10.2010 / 15:36
0

Eu realmente recomendo usar o grub2 e os UUIDs aqui.

Você pode obter UUIDs por

ls -l /dev/disk/by-uuid
    
por 16.11.2010 / 01:42