Eu acidentalmente usei dd
e escrevi nos primeiros 208 MB do meu disco externo. O que eu escrevi é uma partição por si só (instalador de ninhos da Debian), então o que vejo agora não é minha partição ext4 antiga (agora danificada), mas outra partição menor. Isso limita as ferramentas e conselhos que eu poderia seguir.
Meu plano era recriar a tabela de partições testdisk
e, em seguida, corrigir tudo com os superblocos de backup, conforme descrito aqui . Eu perderia os primeiros 208 MB, mas tudo bem se comparado aos outros 300 GB de dados existentes. Algo como o seguinte:
mke2fs -n /dev/sdb1 # doesn't work because sdb1 is the 208MB new partition
testdisk ... # used this to create new correct partition table
mke2fs -n /dev/sdb1 # now works fine, get backup superblock positions
e2fsck -b backup_position -y /dev/sdb1 # returns many errors hence the -y
No entanto, não consegui recuperar nada. Eu costumava testdisk
escrever uma nova tabela de partição que correspondia ao que eu tinha antes. Quando executo o e2fsck, recebo muitos erros diferentes. Recebo um sistema de arquivos depois disso, mas está completamente vazio, sem arquivos.
O diretório perdido + encontrado está cheio de arquivos (acho que os recuperados), mas preciso recuperar a árvore de diretórios, não apenas os arquivos. Eu preciso do nome do arquivo e dos diretórios anteriores para saber quais são os arquivos (imagens de microscópio, dados de especificações de massa, etc.) Sem os nomes e os diretórios em que estavam, eles não significam nada).
Consegui outro HD exatamente igual e fiz uma cópia de todo o HD dd
para que eu possa experimentar a recuperação sem perder nada. Algum conselho?
fonte
testdisk
recriar a partição. Vou tentar comfdisk
.fdisk
eu não poderia nem usare2fsck
, pois não encontraria os backups do superbloco. Acho que o problema era que eu não poderia editar os CHS (a nova partição configurá-lo para 64, mas deve ser 255)Respostas:
Eu finalmente consegui consertar isso. Só para constar, aqui está como eu fiz. Parte da solução que encontrei aqui e envolve conhecer as configurações usadas para criar o sistema de arquivos (eu tinha certeza que não alterei os padrões).
Basicamente, primeiro tive que corrigir a tabela de partições para refletir o que realmente tinha lá (usei
testdisk
para issoparted
, mascfdisk
oufdisk
deveria funcionar bem também). Acabei de remover as partições erradas e substituí-las por uma única partição ext4 cobrindo todo o disco com os valores CHS corretos.O resto é principalmente do link no início (leia-o para obter detalhes), mas basicamente corri
mke2fs -n /dev/xxx
para encontrar as posições para o backup dos superblocos. Em seguida, usei o último backup mais próximo do final do disco (apenas os que foram iniciados no disco foram substituídos pelo dd) para executar o fsck. Isso gerou muitos erros, mas o fsck tem uma-y
opção (não é a mesma que-a
).Eu pensei que isso não tivesse funcionado porque não conseguia ver nenhum arquivo, mas na verdade todos eles foram salvos no
lost+found
diretório.Então, no final, eu recuperei a maioria dos meus arquivos, mantendo seus nomes de arquivos e estrutura de diretórios. Espero que isso ajude outras pessoas no futuro.
fonte
Ok, isso funciona para recuperar de uma unidade acidentalmente iniciada em um array MegaRAID. Meu controlador RAID inicializou TODAS as unidades no RAID, não apenas as da matriz RAID6 que eu estava refazendo. Ai! Pelo menos eu fiz um init rápido, e não um init lento - o init lento limpa a unidade para zeros.
O Quick init apaga 10M no início e no final das unidades. Então, eu com uma partição ext4 em toda a unidade (no Linux) e uma unidade, RAID0, tive alguma chance. Com a unidade sendo de 6 TB e quase 5 TB, eu estava suando - era o meu backup da matriz RAID6 que estava reformando!
A propósito, eu não escorreguei - o LSI MegaRAID NÃO deveria ter iniciado unidades no meu outro grupo de unidades - mas aconteceu. Como observação, o que eu deveria ter feito é REMOVER A UNIDADE DO ENCERRAMENTO e reimportá-lo DEPOIS de ter o recém-arranjado grupo de unidades RAID6. Eu tolo. REALMENTE bobo eu ....
OK, felizmente o LSI MegaRaid não gosta de nada com unidades RAID0 (se houver uma que eu acho que não tenha certeza sobre várias). Aqui está o que eu fiz para corrigi-lo. OS = Fedora F22. Drive = uma grande partição ext4, concluída com parted. Primeiro, instalei a unidade em uma unidade exatamente nova do mesmo modelo, em um servidor sobressalente com alguns slots de compartimento sobressalentes: dez horas depois, terminou ......
Esse foi o meu backup de ouro.
NOTA - Minha unidade foi
/dev/sdb
- você precisa configurá-la para qualquer unidade que esteja tentando recuperar. Não estrague as unidades, ou você ficará ainda mais bagunçado ....Então, feito isso, fiz o seguinte.
(1) remova o instantâneo da máquina (não é bobo de novo, posso garantir - esse seria transferido para o hospital de recuperação de disco se eu falhasse, enquanto eu me registrava no pronto-socorro local!).
(2) reinicie a máquina FC22 com a unidade. Execute parted, refaça a partição (no meu caso, exclua a corrompida, escreva em uma nova partição ext4 de 0% a 100%). Você PRECISA saber exatamente onde estavam as partições originais e seu tipo exato - a próxima etapa depende disso - se não, PARE AQUI. Você não vai conseguir. use
testdisk
ephotorec
ou similar, ou para uma grande unidade onde realmente importa, envie-a.(3) corra
mke2fs -n /dev/sdb1
(não esqueça o-n
, ou você pode simplesmente ir embora ...)Para mim, o resultado foi o seguinte:
Aí está, é aí que estão todos os superblocos de reposição ... ... Sabemos que o primeiro e o último são lixo, mas os do meio devem estar OK. (Observe que você pode
mkfs.ext4 -n /dev/sdb1
ser super cauteloso e obter o mesmo resultado).(4) Corra
e2fsck -y -b 102400000 /dev/sdb1
. Você precisará do-y
, pois haverá muitos "sim" necessários para corrigir a bagunça criada pelo front-end ausente do disco .... e escolher qualquer superbloco no meio que você quiser ... e depois de 30 minutos de silêncio (use outro terminal e "top" para assistir ao progresso, ou a luz piscante do disco) no meu caso, uma partição montável e praticamente tudo intacto no/lost+found
diretório.De qualquer forma, espero que isso ajude - se você está lendo isso com atenção, desejo-lhe boa sorte. E graças aos caras escrevendo acima. Você me salvou de um fim realmente doentio ...
fonte