Corrigir partição NTFS corrompida sem o Windows

84

A minha partição NTFS ficou corrompida de alguma forma (é uma relíquia dos dias em que eu tinha o Windows instalado).

Captura de tela GParted mostrando diferentes partições

Estou colocando a saída de depuração do fdisk e blkid aqui .

Ao mesmo tempo, qualquer sistema operacional não consegue montar minha partição raiz, localizada ao lado da minha partição NTFS. Não tenho certeza se isso tem algo a ver com isso, no entanto. Eu recebo o seguinte erro ao tentar montar minha partição raiz (sda5)

mount: wrong fs type, bad option, bad superblock on /dev/sda5,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

ubuntu@ubuntu:~$ dmesg | tail
[ 1019.726530] Descriptor sense data with sense descriptors (in hex):
[ 1019.726533]         72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00 
[ 1019.726551]         1a 3e ed 92 
[ 1019.726558] sd 0:0:0:0: [sda]  Add. Sense: Unrecovered read error - auto reallocate failed
[ 1019.726568] sd 0:0:0:0: [sda] CDB: Read(10): 28 00 1a 3e ed 40 00 01 00 00
[ 1019.726584] end_request: I/O error, dev sda, sector 440331666
[ 1019.726602] JBD: Failed to read block at offset 462
[ 1019.726609] ata1: EH complete
[ 1019.726612] JBD: recovery failed
[ 1019.726617] EXT4-fs (sda5): error loading journal

Quando abro o gparted (usando o live CD), recebo uma exclamação ao lado da minha unidade NTFS, que informa Captura de tela GParted mostrando erro

Existe uma maneira de executar chkdsksem usar o Windows?

Minha tentativa de executar fsckresultados da seguinte maneira:

ubuntu@ubuntu:~$ sudo fsck /dev/sda
fsck from util-linux-ng 2.17.2
e2fsck 1.41.14 (22-Dec-2010)
fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /dev/sda

The superblock could not be read or does not describe a correct ext2
filesystem.  If the device is valid and it really contains an ext2
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>

Atualização: Consegui consertar a partição NTFS executando o chkdsk no BootCD do Hiren, mas parece que o problema do superbloco ainda permanece.

Atualização 2: Corrigido o problema de superbloco usandoe2fsck -c /dev/sda5

Nemo
fonte
11
Link para uma questão relacionada: askubuntu.com/q/58755/31592
blong

Respostas:

106

Instale o NTFS-3G com sudo apt-get install ntfs-3g. Em seguida, execute o comando ntfsfix na sua partição NTFS.

Por exemplo:

ntfsfix /dev/hda6

ntfsfix v2.0.0 (libntfs 10: 0: 0)

Uso: dispositivo ntfsfix [opções]

Attempt to fix an NTFS partition.

-h, --help             Display this help
-V, --version          Display version information

Endereço de e-mail dos desenvolvedores:

[email protected]Página inicial do Linux NTFS: http://www.linux-ntfs.org


Para o Ubuntus mais recente, você pode usar -be -dopção juntos. -btenta corrigir clusters ruins e -dcorrigir estados sujos. Então o comando pode ser

sudo ntfsfix -b -d /dev/sda6

--help mostra a eles

ntfsfix v2015.3.14AR.1 (libntfs-3g)

Usage: ntfsfix [options] device
    Attempt to fix an NTFS partition.

    -b, --clear-bad-sectors Clear the bad sector list
    -d, --clear-dirty       Clear the volume dirty flag
    -h, --help              Display this help
    -n, --no-action         Do not write anything
    -V, --version           Display version information
RolandiXor
fonte
Você tem alguma sugestão para o problema do superbloco? Corrigi a partição NTFS.
Nemo
5
Infelizmente, esta não é uma resposta útil - o problema não é como consertar as estruturas do sistema de arquivos NTFS, mas os erros de leitura irrecuperáveis ​​no nível do dispositivo de bloco (abaixo de NTFS). Isso significa que (como o psusi já disse) "o seu disco está torrado" - a única opção é comprar um novo disco rígido e restaurar do backup. Se você não possui backups atualizados, pode tentar usar o GNU ddrescue ("apt-get install gddrescue") para recuperar o máximo de dados possível em um arquivo de imagem de disco. Recuperação de disco do Google for Ubuntu para obter mais ajuda.
RichVel
3
@RolandTaylor: Tenho certeza de que foi útil, mas dizer a alguém para executar uma verificação do sistema de arquivos quando houver um erro de leitura irrecuperável visível nos logs não vai ajudá-los. Eles podem corrigir o erro temporariamente, mas o hardware do disco realmente está falhando e o ntfix não está ajudando.
RichVel 17/10/11
5
Desculpe, isso não está correto: a primeira versão da pergunta incluía a linha "sd 0: 0: 0: 0: [sda] Add. Sentido: erro de leitura não recuperado - falha na realocação automática" nos logs - o erro de leitura não recuperado (URE ) é o que indica que a unidade está falhando. Se você receber erros de gravação não recuperados , isso pode ser resolvido por um tempo (a unidade remapeia os blocos), mas os UREs não estão OK. Consulte superuser.com/questions/114675/… para obter um erro semelhante. Veja en.wikipedia.org/wiki/SMART#cite_note-labs.google.com-1 - uma enorme análise do Google.
RichVel 19/10/11
11
Mais um bom link para a questão do URE é esta resposta em outro site do Stack Exchange: unix.stackexchange.com/questions/1869/…
RichVel
14

Eu consertei minha unidade USB usando o "testdisk", um utilitário de linha de comando do Linux (ainda que amigável). Minha unidade nem estava montando no Windows e o Windows 8 descobriu como 6 partições (quando a unidade tinha apenas uma).

Para usar o utilitário, instale-o:

sudo apt-get install testdisk

Em seguida, execute-o:

sudo testdisk

e siga as instruções. Você deve procurar partições e depois gravar as alterações.

Espero que isso ajude alguém.

Diego Jancic
fonte
3
isso foi ótimo .. corrigiu uma tabela de partição quebrada no meu disco rígido externo! Obrigado! V
vellvisher 15/01/13
11

Apenas para esclarecer alguns dos seus pontos.

Minha tentativa de executar o fsck resulta no seguinte:

ubuntu@ubuntu:~$ sudo fsck /dev/sda

...

fsck.ext2: Bad magic number in super-block while trying to open /dev/sda

Agora, isso não é de admirar, porque você está tentando fsck o disco, e não sua partição. O que o fsck faz é, ele tenta reconhecer o tipo FS. Como você forneceu a superfície do disco bruto, ele não reconhece e recorre ao tipo padrão - ext, chamando fsck.ext.

O fsck.ext não encontra nenhuma assinatura FS no local e tenta encontrar superblocos. Por fim, falha, porque seu disco apenas com o tipo de partição NTFS.

É por isso que você tem esse erro.

O comando correto seria:

sudo fsck /dev/sda1

Isso alimentaria a PRIMEIRA partição do primeiro disco rígido SATA, não o primeiro disco SATA.

Quem se importa
fonte
essa pode não ser a resposta para a solução do problema dos OPs, mas suas informações são ouro puro. Muito obrigado!
Oliverjkb
você é sda1 ntfs?
Adi Prasetyo 29/11
5

Seu disco é torrada. Verifique o diagnóstico SMART no utilitário de disco para confirmar; deve-se dizer que você tem muitos setores defeituosos e precisa substituir a unidade.

psusi
fonte
5

Concordo com o @psusi: o disco precisa ser substituído, veja meu comentário na resposta aceita. Fazer um ntfsfixnão ajudará em nada e apenas atrasa a ação essencial de:

  1. fazendo backup de todos os dados no disco o mais rápido possível
  2. substituindo o disco por um novo

Não há realmente necessidade de verificar os diagnósticos SMART - eles detectam apenas uma porcentagem de erros. As bandeiras vermelhas são as duas linhas:

[ 1019.726558] sd 0:0:0:0: [sda]  Add. Sense: **Unrecovered read error** - auto reallocate failed
[ 1019.726602] JBD: **Failed to read block** at offset 462

Assim que um disco começa a fornecer erros de leitura irrecuperáveis ​​(UREs), ele deve ser substituído imediatamente e usado apenas para recuperação de dados. (Um nível excessivo de não-UREs também indica que a substituição é necessária.)

Os discos devem ser vistos como consumíveis que devem ser substituídos a cada poucos anos, portanto, é essencial ter backups realmente bons (automatizados, diários, completos e, pelo menos, em uma unidade externa).

RichVel
fonte
5

No Ubuntu 14.04 Apenas tente isso

sudo ntfsfix /dev/sdXY

Onde XYestá sua partição. ( /dev/sda2no seu caso)

user335969
fonte
2

fscke os gpartedaplicativos não podem ser usados ​​para corrigir um problema com uma partição NTFS. ntfsfixnão deve ser usado para tentar corrigir esse problema.

As ferramentas do Windows normalmente devem ser usadas. No entanto, chkdsknão está ajudando aqui.

Você pode tentar usar testdiskno Ubuntu OS.

sudo apt-get update # atualizar os bancos de dados de software

sudo apt-get install testdisk # install testdisk

sudo testdisk # start testdisk

Vá para http://www.cgsecurity.org/wiki/TestDisk_Step_By_Step para obter ajuda no uso desta ferramenta.

heynnema
fonte
Pode-se acrescentar que erros de E / S geralmente significam uma unidade ou seção que está morrendo. Esp. se o NTFS estiver tão corrompido, você não poderá corrigi-lo com o chkdisk ou qualquer ferramenta do Windows.
Thomas Ward
@ TomásWard, você está absolutamente correto ... Erros de E / S geralmente significam mais problemas. "@karel" me fez adicionar isso aqui como acompanhamento de um link que ele colocou em outra pergunta ... então eu não li todos os detalhes aqui ... e a pergunta já tem uma resposta aceita, com atualizações.
heynnema
1

Como as outras respostas disseram, neste caso, provavelmente é um disco defeituoso.

Mas para o benefício de outras pessoas que enfrentam corrupção real do NTFS - infelizmente a ferramenta ntfsfix é muito limitada em comparação com o chkdsk da Microsoft. Tente iniciar a instalação do Windows - de preferência com a versão mais recente do Windows, já que a Microsoft provavelmente melhora constantemente o chkdsk (espero ..). As versões mais recentes do Windows geralmente estão disponíveis gratuitamente como teste. Se o problema estiver em um disco USB, você pode tentar instalar o Windows em algo como o VirtualBox e dar o controle da VM do dispositivo USB.

eu G
fonte
1

Infelizmente, as ferramentas gratuitas disponíveis no Linux são muito limitadas no que diz respeito à correção de partições NTFS.

Muito provavelmente você ainda pode recuperar seus dados usando a MFT secundária armazenada no final do disco. Geralmente não é usado, mas deve conter uma versão atualizada da sua estrutura de diretórios. Há uma boa chance de que não tenha sido afetado pelos erros de disco.

No passado, eu usei o GetDataBack NTFS do produto Runtime Software (comercial, 79 $), com muito sucesso. É uma das poucas ferramentas NTFS (a única?) Executada no WINE e como um LiveCD do Linux , e a demonstração gratuita deve ser suficiente para verificar se seus dados ainda estão lá. Se for, vale a pena comprar seus dados.

O LiveCD roda o Knoppix Linux e possui todas as ferramentas pré-instaladas. Observe que você ainda precisará de uma chave de licença para realmente usar as ferramentas, mas deve ser o suficiente para ver se funciona no seu computador.

Isenção de responsabilidade: Eu não tenho nenhuma afiliação com o software Runtime além de ter comprado seu produto há alguns anos.

jmiserez
fonte
+1 não porque tenho experiência com o que há nesta resposta; o objetivo é aumentar a conscientização sobre alternativas menos conhecidas para coisas como Magia Partida.
Graham Perrin
0

Esta resposta provavelmente funcionará apenas para 10.04 (lucid) e versões posteriores do Ubuntu!

Tente sudo ntfsfix -b /dev/sda2.

  • Você precisa do ntfs-3gInstalar ntfsprogs instalado. Se você não o tiver, poderá instalá-lo no Centro de Software clicando nesse link ou no Terminal ( Ctrl+ Alt+ T) executando estes comandos:

    sudo apt-get update
    sudo apt-get install ntfs-3g
    
DeGe
fonte
4
Por que usar NTFSProgs quando o NTFS-3g está instalado por padrão? O NTFSProgs está morto, pois foi completamente mesclado no NTFS-3g. Mudar para o primeiro pode causar mais problemas do que resolve.
TSJNachos117
11
O NTFSProgs não faz mais parte dos arquivos do pacote após o 12.04 preciso.
Kynan
0

Acabei de ter o mesmo problema em um USB NTFS de 3 TB. Grande drama, como você pode imaginar.

Primeiro tentei consertá-lo na caixa do Windows da minha esposa. Sem alegria

O sudo ntfsfix / dev / sdcx o corrigiu extremamente rapidamente.

Viva! De volta aos negócios. Realmente deve obter um novo disco e imediatamente formatá-lo para um sistema de arquivos adulto adequado.

Monkeybus
fonte