fsck uma unidade NTFS no Linux

27

Existe uma maneira de fsck / chkdsk uma unidade NTFS do Linux?

vivin
fonte

Respostas:

14

Sim. Isso foi tratado fsckem alguns lançamentos. Se a partição não estiver listada /etc/fstab, você provavelmente precisará informar o tipo de partição. Eu usei isso de um CD do Linux para recuperar uma partição da qual o Windows não inicializaria.

Com base nos comentários abaixo, a correção real é feita pelo ntfsfixprograma. Ele deve estar disponível, mesmo se não houver um programa para executar um fscksistema de arquivos on e NTFS.

BillThor
fonte
7
Embora como observado na página de manual do ntfsfix / fsck.ntfs, não seja uma versão Linux do chkdsk e verifique apenas certos tipos de problemas óbvios no disco.
SabreWolfy
3
Eu assumo a partir do comentário acima que fsck.ntfsfoi em algum momento tratado por ntfsfix. Comentários em uma postagem inferior indicam que isso pode não ser viável agora, pois seus argumentos não são compatíveis. De qualquer forma, no Debian 8.2, fsck.ntfsnão existe - mas existe ntfsfixe foi capaz de corrigir uma MFT corrompida que encontrei. Obrigado @SabreWolfy pela dica.
Sublinhado_d
8

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, pois a Microsoft provavelmente melhora constantemente o chkdsk (espero ..). Novas versões 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
Ou use o Ultimate Boot CD para Windows. É um CD do Windows XP ao vivo com muitas ferramentas de recuperação. Foi assim que resolvi meu problema (partição NTFS corrompida). Tentei usar o ntfsckprograma incluído no USB ao vivo do Parted Magic, mas ocorreu um erro ao dizer Boot sector: bad NTFS magic. Segmentation fault.
Dario_ramos
1
talvez limitado para algumas pessoas, mas corrigiu minha MFT corrompida muito bem :-) [até a próxima vez, talvez! não tenho certeza sobre essa unidade ...]
underscore_d
O UBCD tem muitas qualidades, mas não devo descrevê-lo como um CD do Windows XP.
Graham Perrin
O Hyper-V Server é uma versão totalmente gratuita (cerveja), mas muito reduzida do Windows, projetada para executar VMs. O instalador deve conter todos os utilitários usuais, como chkdsk/ diskpartetc.
mwfearnley
3

Se você possui o NTFSProgs instalado, poderá executar fsck.ntfsou fsck -t ntfsfsck uma unidade NTFS.

esquilo
fonte
2
Rodando Debian 6.0.3, apenas ntfsprogs instalado, nenhum fsck.ntfs instalado, e ao rodar fsck com -t ntfs, obtenha "fsck.ntfs não encontrado". Portanto, não pense que os dois estão relacionados.
Zayne S Halsall
3
@ZayneSHalsall No Debian, é um link simbólico para o ntfsfixqual está ntfsprogs. Eu garanto que você poderá executar ntfsfixse ntfsprogsinstalado corretamente.
squircle
3
Versões mais recentes do Debian e Ubuntu não possuem esse link simbólico. Você pode fazer isso sozinho, mas o problema é que ntfsfixtem um conjunto de argumentos completamente diferente dos argumentos padrão fsck. É melhor criar fsck.ntfs(e fsck.ntfs-3) um script que contenha exec ntfsfix ${@:$#}(com um shebang de #!/bin/bash).
Neil Mayhew
2

ln -s / bin / ntfsfix /sbin/fsck.ntfs

fsck /dev/sdg1
fsck from util-linux 2.21.2
Mounting volume... OK
Processing of $MFT and $MFTMirr completed successfully.
Checking the alternate boot sector... FIXED
NTFS volume version is 3.1.
NTFS partition /dev/sdg1 was processed successfully.

No fedora 22, há outro binário:

lrwxrwxrwx. 1 root root 13 May 22 22:13 /usr/sbin/fsck.ntfs -> ../bin/ntfsck
Tanguy
fonte
1

No meu caso, nenhum dos fsck& ntfsfixpoderia corrigir o problema do meu disco móvel NTFS externo.

Acabo por inicializar no sistema operacional Windows e seguir as etapas abaixo para corrigir o problema de disco.

Passos:

  • Verifique o identificador do disco defeituoso. por exemplog
  • Abra o terminal "cmd" do windows.
  • Entrada chkdsk <disk>: /fpara corrigi-lo.
    Onde <disk>está o identificador, por exemplochkdsk d: /f
  • Em seguida, seria corrigido em segundos ( para um disco de tamanho 1 TB ).

Depois de anos, finalmente encontrei algo que o Windows pode fazer facilmente, mas o Linux não pode;)


@Update - vm solution

Você também pode criar um windows vm (por exemplo, win 7), montar o disco móvel no windows vm e também pode chkdskconsertar o disco, semelhante à inicialização em uma máquina windows.

Eric Wang
fonte
Eu recomendo usar o sinalizador /x(desmontar) para impor a prevenção de acesso à unidade. O manual de ajuda diz que o uso /ximplica também /f, por isso ajuda a fazer correções da mesma maneira que o Linux ( fsckrequer que as unidades sejam desmontadas).
SonicARG