fsck dysk ntfs w systemie Linux

27

Czy istnieje sposób na fsck / chkdsk dysk NTFS z Linuksa?

vivin
źródło

Odpowiedzi:

14

Tak. Zostało to rozwiązane fsckw niektórych wydaniach. Jeśli partycji nie ma na liście /etc/fstab, prawdopodobnie będziesz musiał podać jej typ. Użyłem tego z dysku CD z systemem Linux do odzyskania partycji, z której system Windows nie chce się uruchomić.

W oparciu o poniższe komentarze, rzeczywiste naprawianie jest wykonywane przez ntfsfixprogram. Powinien być dostępny, nawet jeśli nie ma programu do uruchomienia fsckw systemie plików NTFS.

BillThor
źródło
7
Chociaż, jak zauważono na stronie man dla ntfsfix / fsck.ntfs, nie jest to wersja chkdsk dla Linuksa i sprawdza tylko pewne oczywiste problemy na dysku.
SabreWolfy,
3
Zakładam, że z powyższego komentarza, który fsck.ntfsbył kiedyś rozpatrywany ntfsfix. Komentarze do niższego postu wskazują, że może to nie być wykonalne, ponieważ ich argumenty nie są kompatybilne. W każdym razie, w Debianie 8.2, fsck.ntfsnie istnieje - ale ntfsfixjest w stanie naprawić zepsute MFT, które napotkałem. Dzięki @SabreWolfy za podpowiedź.
underscore_d
8

Niestety narzędzie ntfsfix jest bardzo ograniczone w porównaniu do chkdsk Microsoftu. Postaraj się rozpocząć instalację systemu Windows - najlepiej z najnowszą wersją systemu Windows, ponieważ Microsoft prawdopodobnie stale ulepsza program chkdsk (mam nadzieję ..) Nowe wersje systemu Windows są często dostępne za darmo jako wersje próbne. Jeśli problem dotyczy dysku USB, możesz spróbować zainstalować system Windows w coś takiego jak VirtualBox i przekazać maszynie wirtualnej kontrolę nad urządzeniem USB.

eug
źródło
1
Lub użyj Ultimate Boot CD dla Windows. To dysk CD z systemem Windows XP z dużą ilością narzędzi do odzyskiwania. W ten sposób rozwiązałem mój problem (uszkodzona partycja NTFS). Próbowałem użyć ntfsckprogramu zawartego w Parted Magic Live USB, ale dostałem komunikat o błędzie Boot sector: bad NTFS magic. Segmentation fault.
dario_ramos
1
może jest ograniczony dla niektórych osób, ale naprawiło to dobrze moje uszkodzone MFT :-) [może do następnego razu! nie jestem pewien co do tego napędu ...]
podkreślenie_dnia
UBCD ma wiele zalet, ale nie powinienem opisywać go jako dysku CD z systemem Windows XP.
Graham Perrin
Serwer Hyper-V to całkowicie darmowa (piwna), ale mocno wycięta wersja systemu Windows, zaprojektowana do uruchamiania maszyn wirtualnych. Instalator powinien zawierać wszystkie zwykłe narzędzia, takie jak chkdsk/ diskpartitp.
mwfearnley,
3

Jeśli masz zainstalowany NTFSProgs, powinieneś być w stanie uruchomić fsck.ntfslub fsck -t ntfsfsck dysk NTFS.

krążyć
źródło
2
Działając z Debianem 6.0.3, właśnie zainstalowałem ntfsprogs, nie zainstalowałem fsck.ntfs, a kiedy uruchamiamy fsck z -t ntfs, otrzymujemy „fsck.ntfs not found”. Więc nie myśl, że oba są ze sobą powiązane.
Zayne S Halsall,
3
@ZayneSHalsall w Debianie, zdarza się dowiązaniem do ntfsfixktórego jest ntfsprogs. Gwarantuję, że będziesz w stanie uruchomić, ntfsfixjeśli zostanie ntfsprogspoprawnie zainstalowany.
squircle
3
Nowsze wersje Debiana i Ubuntu nie mają tego dowiązania symbolicznego. Możesz zrobić to sam, ale problem polega na tym, że ntfsfixma zupełnie inny zestaw argumentów niż standardowe fsck. Lepiej jest utworzyć fsck.ntfs(i fsck.ntfs-3) skrypt zawierający exec ntfsfix ${@:$#}(z shebang z #!/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.

Na Fedorze 22 jest inny plik binarny:

lrwxrwxrwx. 1 root root 13 May 22 22:13 /usr/sbin/fsck.ntfs -> ../bin/ntfsck
Tanguy
źródło
1

W moim przypadku żaden z fsck& ntfsfixnie mógł rozwiązać problemu z moim zewnętrznym dyskiem mobilnym NTFS.

W końcu uruchamiam system operacyjny Windows i wykonuję kroki, aby naprawić problem z dyskiem.

Kroki:

  • Sprawdź identyfikator uszkodzonego dysku. na przykładg
  • Otwórz terminal „cmd” systemu Windows.
  • Dane wejściowe, chkdsk <disk>: /faby to naprawić.
    Gdzie <disk>jest identyfikator, npchkdsk d: /f
  • Następnie zostanie to naprawione w ciągu kilku sekund ( dla dysku o rozmiarze 1 TB ).

Po latach w końcu znalazłem coś, co Windows może zrobić łatwo, ale Linux nie;)


@Update - rozwiązanie VM

Możesz także utworzyć Windows VM (np. Win 7), a następnie zamontować dysk mobilny na Windows VM, a następnie możesz go użyć chkdskdo naprawy dysku, podobnie jak rozruch na komputerze z systemem Windows.

Eric Wang
źródło
Polecam użycie flagi /x(odmontowanie) w celu wymuszenia uniemożliwienia dostępu do dysku. Podręcznik pomocy mówi, że używanie /ximplikuje również /f, więc pomaga robić poprawki w taki sam sposób jak Linux ( fsckwymaga odmontowania dysków).
SonicARG