Tabela de partições estranha

2

Recebi um disco rígido para reparar / extrair dados. Este disco rígido já foi o disco rígido de um computador que tinha windows e linux instalados (usando o grub para alternar entre dois). Inicializar a partir do disco rígido não é mais possível. Quando conectado ao linux, 4 partições são encontradas ( /dev/sdb[1256] ), mas somente /dev/sdb1 pode ser lido. /dev/sdb1 é a partição do grub, enquanto /dev/sdb5 foi identificado como partição de swap por blkid (pode ter sido outro programa, vou verificar isso). Montando as partições 2 e 6 dá erros, var/log/syslog diz algo sobre um superbloco ruim.
Ainda assim, o resultado mais irritante dá fdisk -l , que imprime a tabela de partições AFAIK.

Device    Start    End        Type
/dev/sdb1     2048  19531775  83 linux
/dev/sdb2 19533822 625141759   5 extended
/dev/sdb5 19533824  36304895  82 linux swap 
/dev/sdb6 36306944 625141759  83 linux

(1 setor é igual a 512 bytes, parte da saída foi removida por mim. Eu adicionarei se necessário)

Se eu entendi corretamente, algo está errado com a tabela de partições. De alguma forma, a partição 2 está no mesmo local das partições 5 e 6, o que pode explicar os erros de montagem. (Eu perguntarei qual sistema operacional realmente foi usado neste disco rígido).

Agora, existem arquivos importantes neste disco rígido. Como faço para obter esses arquivos do disco rígido ou (melhor) alterar o disco rígido para que o Linux possa montar todas as partições. Meu primeiro pensamento foi fazer um backup com dd e, em seguida, deixar um fsck executar em /dev/sdb (você pode ver que não sou especialista nisso), embora eu tenha minhas dúvidas.

UPDATE: Como o Grawity apontou, a tabela de partições está intacta e existem 3 partições, das quais uma é uma partição swap. /dev/sdb1 pode ser montado e é a partição grub (a julgar pelos arquivos na partição). /dev/sdb5 é mais provável que o patrono de swap (desde que seja rotulado como tal e seu tamanho é na magnitude certa). Vou tentar fazer um fsck on /dev/sdb6 e tentar algumas ferramentas de recuperação.
Além disso, a pessoa que me deu o disco rígido agora está pensando se ele me deu o caminho certo. Vou procurar os arquivos de qualquer maneira.

    
por AidenPearce 24.05.2016 / 14:03

2 respostas

7

If I undmerstand correctly, something is wrong with the partition table. Somehow partition 2 is at the same location as partitions 5 and 6, which might explain the mounting-errors.

Isso é normal. A tabela de partições MBR da era do MS-DOS só pode conter 4 partições, então é costume fazer com que a última seja uma partição "estendida" , no qual partições "lógicas" adicionais são aninhadas.

(o Linux sempre numera as partições lógicas que começam com 5+ e, embora os nomes em fdisk -l estejam realmente compostos, eles também seguem a mesma numeração.)

(Enquanto no tópico, não se esqueça que existem outras tabelas de partição, como GPT. O fdisk 2.23 entende o GPT, mas versões mais antigas não.)

Observe também que os tipos de partição nem sempre correspondem aos dados reais internos. Não é impossível que o proprietário tenha decidido usar sdb5 para dados e sdb6 para swap, mas esqueceu de atualizar os tipos de partição MBR (que o Linux ignora, de qualquer forma).

How do I get these files from the hard drive or (better) alter the hard drive so linux can mount all partitions

Experimente o photorec .

My first thought was to make a backup with dd and then let a fsck run on /dev/sdb

Fazer um backup é uma boa ideia. Tentar executar o fsck em algo que não é um FS não fará nada de útil. /dev/sdb1 ou /dev/sdb6 seriam alvos melhores para isso, já que eles contêm sistemas de arquivos.

    
por 24.05.2016 / 14:17
-1

A tabela de partição exibida pertence a um sistema Linux pure : não há nenhum rastro de Windows nela. Então, dado que você declarou:

This hard drive was once the hard drive of a computer that had windows and linux installed ...

talvez o cara que deu a você estivesse certo quando disse ...

Also, the person who gave me the hard drive is now thinking if he gave me the right one.

Os arquivos do usuário estão em /home/ , o que provavelmente é a partição /dev/sdb6 . Não há necessidade de usar algo tão complexo como photorec e, possivelmente, você pode restaurar a partição para o estado completo, de trabalho, de uma maneira alternativa. Você pode, por favor, indicar exatamente qual mensagem de erro você obtém quando tenta montar a partição /dev/sdb6 ? Se for apenas uma questão de um superbloco ruim, isso pode ser facilmente curado:

  1. Verifique com o sistema de arquivos (você pode ter que refazer isso com ext2 ou ext3, não está claro a partir do acima qual sistema de arquivos estava sendo usado),

     sudo fsck.ext4 -v /dev/sdb6
    
  2. Se o superbloco estiver realmente corrompido, você terá uma saída como

    fsck /dev/sdb6
    fsck 1.41.4 (27-Jan-2009)
    e2fsck 1.41.4 (27-Jan-2009)
    fsck.ext4: Group descriptors look bad... trying backup blocks...
    fsck.ext4: Bad magic number in super-block while trying to open /dev/sdb6
    
    The superblock could not be read or does not describe a correct ext4
    filesystem.  If the device is valid and it really contains an ext4
    filesystem (and not swap or ufs or something else), then the superblock
    is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 /device
    
  3. Vamos descobrir onde estão os superblocos de backup,

    sudo mke2fs -n /dev/sdb6
    

    No início de uma saída longa, você encontrará algo como:

    Superblock backups stored on blocks:
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208
    
  4. E agora, por último, corrija-o substituindo o superbloco com defeito por um (qualquer um) dos backups:

    sudo e2fsck -b block_number /dev/sb6
    

Reinicie e você deve estar pronto para ir. Se não, tente um superbloco diferente. Como eu disse, se este é o motivo pelo qual você não conseguiu montar a partição /dev/sdb6 , tudo isso é muito mais fácil do que usar photorec , além de você restaurar o disco e suas partições ao seu estado primitivo.

    
por 25.05.2016 / 10:56