파일 시스템 손상을 복구하는 방법은 무엇입니까?

파일 시스템 손상을 복구하는 방법은 무엇입니까?

외부 USB SSD 드라이브의 데비안. dmesg로그 파일에 몇 가지 오류가 있습니다.

...[    3.320718] EXT4-fs (sdb2): INFO: recovery required on readonly filesystem
[    3.320721] EXT4-fs (sdb2): write access will be enabled during recovery
[    5.366367] EXT4-fs (sdb2): orphan cleanup on readonly fs
[    5.366375] EXT4-fs (sdb2): ext4_orphan_cleanup: deleting unreferenced inode 6072
[    5.366426] EXT4-fs (sdb2): ext4_orphan_cleanup: deleting unreferenced inode 6071
[    5.366442] EXT4-fs (sdb2): 2 orphan inodes deleted
[    5.366444] EXT4-fs (sdb2): recovery complete
...

시스템이 부팅되고 정상적으로 작동합니다. 완전히 고칠 수 있나요? 그리고 올바른 방법은 무엇인가요?

답변1

fsck다음과 같이 마운트 후 즉시 작업을 수행하도록 파일 시스템에 지시할 수 있습니다.

방법 #1: /forcefsck 사용

일반적으로 다음과 같이 다음 재부팅 시 검사가 수행되도록 예약할 수 있습니다.

$ sudo touch /forcefsck
$ sudo reboot

방법 #2: 종료 사용

shutdown스위치를 통해 이 작업을 수행하도록 명령에 지시 할 수도 있습니다 -F.

$ sudo shutdown -rF now

노트:첫 번째 방법은 이를 달성하는 가장 일반적인 방법입니다!

방법 #3: tune2fs 사용

tune2fs다음에 설치하려고 할 때 강제로 검사하도록 파일 시스템 자체에 대한 매개변수를 설정하는 를 사용할 수도 있습니다 .

$ sudo tune2fs -l /dev/sda1
Mount count: 3
Maximum mount count: 25

따라서 다음 명령을 사용하여 "설치 횟수"를 25보다 높게 설정해야 합니다.

$ sudo tune2fs -C 26 /dev/sda1

변경된 값을 확인 tune2fs -l하고 재부팅하세요!

노트:내가 사용한 3가지 옵션 중 기본 파일 시스템( )이든 다른 tune2fs파일 시스템이든 모든 파일 시스템을 강제로 검사할 수 있습니다 ./

보충 설명

일반적으로 ext2/3/4로 포맷된 파티션과 관련된 "최대 마운트 수:" 및 "검사 간격:" 매개변수가 표시됩니다. 일반적으로 다음과 같이 구성됩니다.

$ tune2fs -l /dev/sda5 | grep -E "Mount count|Maximum mount|interval"
Mount count:              178
Maximum mount count:      -1
Check interval:           0 (<none>)

매개변수가 이와 같이 설정되면 장치는 fsck설치 중에 해당 작업을 수행하지 않습니다. 이는 대부분의 배포판에서 매우 일반적입니다.

두 가지 강제 운전 점검이 있습니다. 설치 횟수 또는 경과 시간. "확인 간격"은 시간 기반 간격입니다. 2주에 한 번씩 이 주장을 할 수 있습니다, 2w. tune2fs자세한 내용은 매뉴얼 페이지를 참조하십시오 .

노트:tune2fs또한 이는 장치 명령이 아닌 파일 시스템 명령이라는 점을 이해해야 합니다 . 따라서 /dev/sdaext2/3/4 파일 시스템이 없으면 이전 장치에서는 작동하지 않습니다. 명령 tune2fs은 의미가 없으며 이러한 유형의 파일 시스템 중 하나로 포맷된 파티션에서 사용해야 합니다.

인용하다

답변2

fsck파티션을 제거 하는 것이 좋습니다/dev/sdb2 이 기기에 중요한 것이 없다면, 그래도 작동하지 않으면 Live CD를 사용하여 fsck를 시도해 보세요.

$ sudo fsck /dev/sdb2

답변3

fsck 유형 작업을 실행해야 한다고 생각합니다. fsck다음과 같이 실행 해 볼 수 있습니다 .

$ sudo fsck /dev/sdb2

관련 정보