Windows없이 손상된 NTFS 파티션 수정


84

내 NTFS 파티션이 어떻게 든 손상되었습니다 (Windows를 설치 한 시절의 유물입니다).

다른 파티션을 보여주는 GParted 스크린 샷

fdisk와 blkid의 디버그 출력을 여기에 넣습니다 .

동시에 모든 OS에서 내 NTFS 파티션 옆에있는 루트 파티션을 마운트 할 수 없습니다. 그래도 이것이 관련이 있는지 확실하지 않습니다. 루트 파티션 (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

gparted (라이브 CD 사용)를 열면 NTFS 드라이브 옆에 느낌표가 표시됩니다. GParted 스크린 샷 오류

chkdsk창문을 사용하지 않고 실행할 수 있습니까?

내 실행 시도 fsck결과는 다음과 같습니다.

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>

업데이트 : Hiren의 BootCD에서 chkdsk를 실행하는 NTFS 파티션을 수정할 수 있었지만 수퍼 블록 문제는 여전히 남아있는 것 같습니다.

업데이트 2 : 사용하여 수퍼 블록 문제 수정e2fsck -c /dev/sda5


1
관련 질문으로 연결 : askubuntu.com/q/58755/31592
blong

답변:


106

로 ntfs-3g를 설치하십시오 sudo apt-get install ntfs-3g. 그런 다음 NTFS 파티션에서 ntfsfix 명령을 실행하십시오.

예를 들면 다음과 같습니다.

ntfsfix /dev/hda6

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

사용법 : ntfsfix [옵션] 장치

Attempt to fix an NTFS partition.

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

개발자의 이메일 주소 :

linux-ntfs-dev@lists.sf.net리눅스 NTFS 홈페이지 : http://www.linux-ntfs.org


새로운 Ubuntus를 들어 당신은 사용할 수 -b-d함께 옵션을 선택합니다. -b불량 클러스터 -d를 수정하고 더티 상태를 수정 하려고합니다 . 따라서 명령은

sudo ntfsfix -b -d /dev/sda6

--help 보여줍니다

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

수퍼 블록 문제에 대한 제안 사항이 있습니까? NTFS 파티션을 수정했습니다.
니모

5
불행히도 유용한 답변은 아닙니다. 문제는 실제로 NTFS 파일 시스템 구조를 수정하는 방법이 아니라 블록 장치 수준 (NTFS 미만)에서 복구 할 수없는 읽기 오류입니다. 이것은 (의사에서 말했듯이) "디스크가 굳었다"는 것을 의미합니다. 유일한 옵션은 새 하드 드라이브를 구입하고 백업에서 복원하는 것입니다. 최신 백업이없는 경우 GNU ddrescue ( "apt-get install gddrescue")를 사용하여 디스크 이미지 파일에 최대한 많은 데이터를 복구 할 수 있습니다. 도움이 더 필요한 Google Ubuntu 디스크 복구.
RichVel

3
@RolandTaylor : 도움이 될 것이라고 확신하지만 로그에 읽을 수없는 읽기 오류가있을 때 파일 시스템 검사를 실행하도록 지시하면 도움이되지 않습니다. 그들은 일시적으로 오류를 수정할 수 있지만 디스크 하드웨어는 실제로 실패하고 ntfix가 도움이되지 않습니다.
RichVel

5
죄송합니다. 정답이 아닙니다. 질문의 첫 번째 버전에 "sd 0 : 0 : 0 : 0 : [sda] 추가"가 포함되었습니다. 감지 : 복구되지 않은 읽기 오류-자동 재 할당이 실패했습니다. )는 드라이브 고장을 나타냅니다. 복구되지 않은 쓰기 오류가 발생하면 잠시 동안 지속될 수 있지만 (드라이브가 블록을 다시 매핑 함) URE는 정상이 아닙니다. 비슷한 오류에 대해서는 superuser.com/questions/114675/… 를 참조하십시오 . en.wikipedia.org/wiki/SMART#cite_note-labs.google.com-1- 거대한 Google 분석을 참조하십시오 .
RichVel

1
URE 문제에 대한 또 하나의 좋은 링크는 다른 스택 교환 사이트에 대한이 답변입니다 : unix.stackexchange.com/questions/1869/…
RichVel

14

방금 Linux 명령 행 (아직 친숙한) 유틸리티 인 "testdisk"를 사용하여 USB 드라이브를 수정했습니다. 내 드라이브는 Windows에 마운트되지 않았고 Windows 8은 6 개의 파티션처럼 발견되었습니다 (드라이브에 하나만있는 경우).

유틸리티를 사용하려면 다음을 설치하십시오.

sudo apt-get install testdisk

그런 다음 실행하십시오.

sudo testdisk

지침을 따르십시오. 파티션을 검색 한 후 변경 사항을 작성해야합니다.

이것이 누군가를 돕기를 바랍니다.


3
이것은 굉장했습니다 .. 내 외장 하드 디스크에서 깨진 파티션 테이블을 수정했습니다! 감사합니다! V
vellvisher

11

요점을 정리하면됩니다.

fsck를 실행하려고하면 다음과 같은 결과가 나타납니다.

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

...

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

이제는 파티션이 아닌 디스크를 fsck하려고 시도하기 때문에 놀라운 일이 아닙니다. fsck는 FS 유형을 인식하려고합니다. 원시 디스크 표면을 지정 했으므로 인식하지 못하고 fsck.ext를 호출하는 기본 유형 -ext에 의존합니다.

fsck.ext는 해당 위치에서 FS 서명을 찾지 못하고 수퍼 블록을 찾습니다. NTFS 파티션 유형의 디스크 만 있기 때문에 결국에는 실패합니다.

이 오류가 발생하는 이유입니다.

올바른 명령은 다음과 같습니다.

sudo fsck /dev/sda1

그것은 첫 번째 sata 디스크 자체가 아니라 첫 번째 sata 하드 드라이브의 첫 번째 파티션을 공급합니다.


이것은 OPs 문제를 해결하는 답이 아닐 수도 있지만 그 정보는 순수한 금입니다. 무리 감사!
oliverjkb

sda1 ntfs입니까?
Adi Prasetyo

5

디스크가 토스트되었습니다. 디스크 유틸리티에서 SMART 진단을 확인하여 확인하십시오. 불량 섹터가 많으며 드라이브를 교체해야합니다.


5

@psusi에 동의합니다. 디스크를 교체해야합니다. 허용 된 답변 아래에서 내 의견을 참조하십시오. 을하는 것은 ntfsfix전혀 도움이 단지의 필수 조치를 지연되지 않습니다 :

  1. 디스크의 모든 데이터를 최대한 빨리 백업
  2. 디스크를 새 것으로 교체

SMART 진단을 실제로 확인할 필요는 없습니다. 어쨌든 오류의 일부만 선택합니다. 붉은 깃발은 두 줄입니다.

[ 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

디스크에 복구 불가능한 읽기 오류 (URE)가 발생하자마자 디스크를 즉시 교체하고 데이터 복구에만 사용해야합니다. (URE가 아닌 레벨도 교체가 필요함을 나타냅니다.)

디스크는 몇 년마다 교체해야하는 소모품으로 간주해야하므로 실제로 백업 (자동화, 매일, 완료 및 적어도 외부 드라이브에 대한 백업)이 매우 중요합니다.


5

우분투 14.04에서 이것을 시도하십시오

sudo ntfsfix /dev/sdXY

XY파티션이 어디에 있습니까 ? ( /dev/sda2귀하의 경우)


2

fsckgparted응용 프로그램은 NTFS 파티션 문제를 해결하는 데 사용할 수 없습니다. ntfsfix이 문제를 해결하기 위해 사용해서는 안됩니다.

일반적으로 Windows 도구를 사용해야합니다. 그러나 chkdsk여기서 도움이되지 않습니다.

다음을 사용하여 시도 할 수 있습니다 testdisk우분투 OS에서.

sudo apt-get update # 소프트웨어 데이터베이스 업데이트

sudo apt-get install testdisk # testdisk 설치

sudo testdisk # testdisk 시작

이 도구 사용에 대한 도움말을 보려면 http://www.cgsecurity.org/wiki/TestDisk_Step_By_Step으로 이동 하십시오 .


I / O 오류는 일반적으로 죽어가는 드라이브 또는 드라이브 섹션을 의미한다고 덧붙일 수 있습니다. Esp. NTFS가 너무 손상된 경우 chkdisk 또는 Windows 도구를 사용하여 수정할 수 없습니다.
토마스 워드

@ThomasWard 당신은 절대적으로 정확합니다 ... I / O 오류는 일반적으로 더 많은 문제를 의미합니다. "@karel"은 다른 질문에있는 링크에 대한 후속 조치로 여기에 이것을 추가했습니다. 그래서 여기에 모든 세부 사항을 읽지는 않았으며 ... 질문에는 이미 업데이트 된 답변이 있습니다.
heynnema

1

다른 답변에서 알 수 있듯이이 경우 아마도 디스크가 잘못되었을 수 있습니다.

그러나 실제 NTFS 손상에 직면 한 다른 사람들의 이익을 위해-불행히도 ntfsfix 도구는 Microsoft의 chkdsk에 비해 매우 제한적입니다. Microsoft가 chkdsk를 지속적으로 개선하고 있기 때문에 최신 버전의 Windows를 사용하는 것이 바람직합니다. 새로운 버전의 Windows는 종종 무료로 시험판으로 제공됩니다. USB 디스크에 문제가있는 경우 VirtualBox와 같은 방식으로 Windows를 설치하고 USB 장치의 VM 제어를 제공 할 수 있습니다.


1

불행히도 Linux에서 사용 가능한 무료 도구는 NTFS 파티션 수정과 관련하여 매우 제한적입니다.

디스크 끝에 저장된 보조 MFT를 사용하여 여전히 데이터를 복구 할 수 있습니다. 일반적으로 사용되지 않지만 디렉토리 구조의 최신 버전을 포함해야합니다. 디스크 오류의 영향을받지 않았을 가능성이 높습니다.

과거에는 Runtime Software (상업용, 79 $) 제품 GetDataBack NTFS를 사용 하여 큰 성공을 거두었습니다. WINELinux LiveCD 에서 실행 되는 몇 가지 NTFS 도구 ( 유일한가 ?) 중 하나 이며, 무료 데모는 데이터가 여전히 존재하는지 확인할 수 있어야합니다. 그렇다면 데이터를 구입하는 것이 좋습니다.

LiveCD는 Knoppix Linux를 실행하며 모든 도구가 사전 설치되어 있습니다. 도구를 실제로 사용하려면 여전히 라이센스 키가 필요하지만 컴퓨터에서 작동하는지 확인하기에 충분해야합니다.

면책 조항 : 몇 년 전에 제품을 구입 한 것 외에는 런타임 소프트웨어와 아무런 관련이 없습니다.


이 답변의 내용에 대한 경험이 없기 때문에 +1이 아닙니다. Up은 Parted Magic과 같은 덜 알려진 대안에 대한 인식을 높이기위한 것입니다.
Graham Perrin

0

이 답변은 아마도 10.04 (lucid) 및 이후 버전의 Ubuntu에서만 작동합니다!

시도하십시오 sudo ntfsfix -b /dev/sda2.

  • 당신은 필요 NTFS-3g가ntfsprogs 설치 설치되어 있어야합니다. 없는 경우 해당 링크를 클릭하여 소프트웨어 센터에 설치하거나 다음 명령을 실행 하여 터미널 ( Ctrl+ Alt+ T) 에서 설치할 수 있습니다 .

    sudo apt-get update
    sudo apt-get install ntfs-3g
    

4
NTFS-3g가 기본적으로 설치 될 때 왜 NTFSProgs를 사용합니까? NTFSProg는 NTFS-3g에 완전히 병합되어 죽었습니다. 전자로 전환하면 해결하는 것보다 더 많은 문제가 발생할 수 있습니다.
TSJNachos117

1
NTFSProgs는 12.04 이후 정확하게 더 이상 패키지 아카이브의 일부가 아닙니다.
kynan

0

방금 3TB NTFS USB에서 동일한 문제가 발생했습니다. 상상할 수 있듯이 큰 드라마.

나는 먼저 아내의 윈도우 박스에 그것을 고치려고 노력했다. 기쁨이 없습니다.

sudo ntfsfix / dev / sdcx는 그것을 매우 빠르게 수정했습니다.

만세! 업무 복귀. 실제로 새 디스크를 가져 와서 적절한 성인 파일 시스템으로 즉시 재 포맷해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.