모든 중요한 데이터는 한 유형 또는 다른 유형의 파일 시스템에 있으며 파일 시스템 문제가 해결됩니다. Linux에서 우리는 그를 사용할 수 있습니다
fsck.
파일 시스템 오류를 찾아 수정하는 명령.
파일 시스템은 소프트웨어입니다
파일 시스템은 컴퓨터의 가장 중요한 구성 요소 중 하나입니다. 파일 시스템이 없으면 컴퓨터는 해당 드라이브가 회전하는 기계식 플래터인지 여부를 하드 드라이브에 저장할 수 없습니다. 솔리드 스테이트 드라이브 ...에 실제로 운영 체제가 하드 드라이브에 설치되기 전에 파일 시스템을 만들어야합니다. 운영 체제 파일을 저장할 수있는 것이 있어야합니다. 따라서 설치 프로세스 중에 파일 시스템이 생성됩니다.
파일 시스템이 있습니다 소프트웨어에 의해 만들어진 것 , 소프트웨어로 쓰여지고 소프트웨어에서 읽습니다. 알다시피 모든 복잡한 소프트웨어에는 버그가 있습니다. 우리의 데이터는 우리에게 비판적으로 중요합니다. 그래서 우리는 파일 시스템과이를 생성하고 사용하는 소프트웨어에 많은 믿음을 많이 넣습니다. 뭔가 잘못되면 파일 시스템의 일부 또는 전체 파티션의 일부에 대한 액세스 권한을 잃을 수 있습니다.
현대의 저널링 파일 시스템 갑작스런 전력 손실이나 시스템 충돌로 인해 발생할 수있는 문제를 취급 할 수 있습니다. 그들은 견고하지만 무적은 아닙니다. 그들의 경우 내부 테이블은 스크램블링됩니다 각 파일이 드라이브에있는 위치, 크기가 어떤 크기, 어떤 이름이 있는지, 어떤 파일 사용 권한이 설정된 파일을 추적 할 수 있습니다.
NS
fsck.
명령 파일 시스템이 건강 해지는지 확인할 수 있습니다. 어떤 문제가 발견되면 보통 당신을 위해 그들을 고칠 수 있습니다.
프리 플라이트 수표를하십시오
사용
fsck.
요구
sudo 권한
...에 파일 시스템을 변경할 수있는 명령은주의하여 취급하고 자신이하는 일을 알고있는 사람들에게 제한되어야합니다.
조종사는 항공기로 뛰어 오르지 않고, 그것을 시작하고 창백한 푸른 저쪽으로 날아갑니다. 그들은 프리 플라이트 수표를합니다. 그렇지 않으면 지분이 너무 많습니다. 그것은 개발하는 좋은 습관입니다. 사용하기 전에
fsck.
올바른 드라이브에서 사용할 수 있도록해야합니다. 그래서
fsck.
, 우리는 조금 정찰 할 것입니다.
우리는 시작할 것입니다
fdisk.
그것을 파이프로
더 적은
...에 우리는 특정 파티션에 대한 정보를 요구하지 않습니다. 그를 사용하여
-엘
(목록) 옵션
fdisk.
"/ proc / partitys"파일에서 찾은 모든 장치에 파티션 테이블을 나열합니다.
sudo fdisk -l | 덜
우리는 항목을 볼 수 있습니다
/ dev / sda.
그리고
/ dev / sdb.
...에 파일을 스크롤하여 컴퓨터에 존재할 수있는 다른 항목을 볼 수 있습니다.
파티션의 파티션
/ dev / sda.
대로 나열됩니다
/ dev / sda1.
,
/ dev / sda2.
, 그리고
/ dev / sda3.
...에 그래서 우리는 첫 번째 드라이브에 세 개의 파티션을 가지고 있습니다. 우리는
나뉜
명령. 우리는 그를 사용할 것입니다
'인쇄'
터미널 창에 파티션 테이블을 표시하는 옵션입니다.
sudo parted / dev / sda '인쇄'
이번에는 각 파티션의 파일 시스템 유형을 포함 하여이 시간에 추가 정보를 얻습니다.
모델 : ATA vbox 하드 디스크 (SCSI) 디스크 / dev / sda : 34.4Gb. 섹터 크기 (논리적 / 물리적) : 512B / 512B 파티션 테이블 : GPT. 디스크 플래그 : 번호 시작 끝 크기 파일 시스템 이름 플래그 1 1049KB 2097KB 1049KB BIOS_GRUB 2 2097KB 540MB 538MB FAT32 EFI 시스템 파티션 부팅, ESP 3 540MB 34.4GB 33.8GB ext4
이 테스트 컴퓨터에는 세 개의 드라이브가 있습니다. 이것들은 다른 두 드라이브의 결과입니다
/ dev / sdb.
그리고
/ dev / sdc.
...에 이 파일 시스템에는 "name"필드가 없습니다.
sudo parted / dev / sdb '인쇄'
모델 : ATA vbox 하드 디스크 (SCSI) 디스크 / dev / sdb : 21.5Gb. 섹터 크기 (논리적 / 물리적) : 512B / 512B 파티션 테이블 : MSDOS. 디스크 플래그 : 번호 시작 끝 크기 유형 파일 시스템 플래그 1 1049KB 21.5GB 21.5GB 1 차 EXT4
sudo parted / dev / sdc '인쇄'
모델 : ATA vbox 하드 디스크 (SCSI) 디스크 / dev / sdc : 21.5GB. 섹터 크기 (논리적 / 물리적) : 512B / 512B 파티션 테이블 : MSDOS. 디스크 플래그 : 번호 시작 끝 크기 유형 파일 시스템 플래그 1 1049KB 21.5GB 21.5GB 1 차 ext3
두 번째 및 세 번째 드라이브는 동일한 크기이고 각각에는 단일 파티션이 있습니다. 그러나 두 번째 드라이브의 파일 시스템은입니다
ext4.
및 세 번째 드라이브의 파일 시스템은 나이가 많습니다.
ext3.
...에
우리는 파티션 식별자를 전달합니다
fsck.
이 파티션의 파일 시스템을 확인합니다. 그러나 우리는 달릴 수 없습니다
fsck.
마운트 된 파일 시스템에서. 우리는 드라이브를 마운트 해제해야합니다. 이를 수행하려면 파티션과 파일 시스템이 장착되어있는 마운트 지점을 알아야합니다.
우리는 그걸 쉽게 사용할 수 있습니다
Df.
명령.
DF / DEV / SDB1
DF / DEV / SDC1
fsck 명령을 사용합니다
우리는 필요한 모든 정보를 가지고 있습니다. 우리가 할 첫 번째 일은 우리가 확인할 파일 시스템을 마운트 해제하는 것입니다. 우리는 파일 시스템을 첫 번째 및 전용 파티션에서 작업 할 것입니다.
/ dev / sdb.
, 그것은 무엇인가
/ dev / sdb1.
...에 우리는 이것이 일찍 봤습니다
ext4.
파일 시스템이며 "/ run / mount / dave / sata2"에 장착됩니다.
우리는 그를 사용할 것입니다
umount.
명령. 참고 "umount"에는 "n"이 없습니다.
sudo umount / run / mount / dave / sata2
와 함께
umount.
, 아무도 좋은 소식이 아닙니다. 명령 프롬프트에 자동으로 반환하면 우리는 가기에 좋습니다.
sudo fsck / dev / sdb1
이 파일 시스템은 깨끗한 것으로보고됩니다. 즉, 파일 시스템이 오류나 문제가 없는지보고하는 것이 좋습니다. 더 깊은 파일 시스템 검사가 자동으로 수행되지 않습니다. 우리는 또한 반품 코드를 볼 수 있습니다
fsck.
껍질로 돌아 왔습니다.
에코 $?
0의 반환 값은 오류가 없음을 나타냅니다. 가능한 리턴 코드는 다음과 같습니다.
- 0. : 오류 없음
- 1 : 파일 시스템 오류가 수정되었습니다
- 2 : 시스템을 재부팅해야합니다
- 4. : 파일 시스템 오류가 남정되었습니다
- 8. : 작동 오류
- 16. : 사용법 또는 구문 오류가 발생했습니다
- 32. : 사용자 요청에 의해 취소 된 점검
- 128. : 공유 라이브러리 오류
파일 시스템이 깨끗한 것으로보고 되었음에도 불구하고 파일 시스템을 강제로 수행 할 수 있습니다.
-NS
(힘) 옵션.
sudo fsck / dev / sdb1 -f
이번에는 수표가 완료하는 데 시간이 오래 걸리지 만 파일 시스템을보다 철저한 테스트를 수행합니다. 우리의 파일 시스템은 실제로 깨끗하고 오류 가보고되지 않았습니다. 테스트가 진행되는 것처럼 문제가 발견되면
fsck.
문제를 해결하거나 오류를 무시하십시오.
테스트를 마치면 파일 시스템을 다시 마운트해야합니다. 이것을하는 가장 쉬운 방법은 사용하는 것입니다
산
이랑
-NS
(모두) 옵션. 이것은 파일 시스템 목록에 대해 "/ etc / fstab"을 검사하고 일반 부팅을 따르는 것처럼 모두 탑재되어 있는지 확인합니다.
sudo mount -a
우리는 말할 필요가 없습니다
fsck.
어떤 유형의 파일 시스템이 파티션에 있습니다. 이 유틸리티는 파일 시스템을 검사하여 결정합니다. 즉, 파일 시스템을 강요 할 수 있음을 의미합니다.
/ dev / sdc1.
, NS
ext3.
우리가 사용한 명령을 똑같이 사용하여 테스트 PC의 파일 시스템
/ dev / sdb1.
, an.
ext4.
분할.
sudo fsck / dev / sdc1 -f
파일 시스템을 수정하기 위해 똑바로 다이빙하고 싶지는 않을 수도 있습니다. 당신이 도약하기 전에 보이는 것을 선호 할 수도 있습니다. 당신은 물어볼 수 있습니다
fsck.
아무것도 수정하고 터미널 창에 문제를보고하지 않으려 고합니다. NS
-N
(드라이 런) 옵션은 다음과 같습니다.
sudo fsck -n / dev / sdb1
그 반대는 말하는 것입니다
fsck.
오류가 발견되고 그냥 계속해서 고칠 수 있는지 촉구하지 마십시오. 이렇게하려면 다음을 사용하십시오
-와이
(프롬프트 없음) 옵션.
sudo fsck -y / dev / sdb1
루트 파티션에서 fsck를 사용합니다
당신은 사용할 수 없습니다
fsck.
마운트 된 파티션에서 컴퓨터를 부팅하려면 루트 파티션을 마운트해야합니다. 그래서 어떻게 실행할 수 있습니까?
fsck.
루트 파티션에서? 대답은 부팅 프로세스를 중단하고 실행하는 것입니다.
fsck.
복구 모드에서.
컴퓨터가 부팅되는 동안 "Shift"키를 누른 상태에서 누릅니다. 타이밍 한 경우 Linux로 부팅되지 않습니다. 부팅 프로세스는 흑백 메뉴에서 멈 춥니 다. 이 문서에 사용 된 테스트 시스템은 Ubuntu를 실행 중이었지만 다른 배포판은 동일한 유형의 메뉴를 가지고 있지만 외관이 다를 수 있습니다. 스크린 샷에서 "우분투"라고 말하는 곳은 배포 이름을 나타냅니다.
강조 표시 줄을 "위쪽 화살표"와 "아래쪽 화살표"키로 이동하여 "Ubuntu의 고급 옵션"메뉴 항목이 선택되도록하십시오. 다음 화면으로 이동하려면 "Enter"를 누르십시오.
"(복구 모드)로 끝나는 옵션을 선택하십시오." 이 예에서는 "Ubuntu가 Linux 5.11.0-20-Generic (복구 모드)입니다." "Enter"키를 누르십시오.
복구 메뉴가 표시됩니다. "fsck 모든 파일 시스템을 확인"하고 "탭"키를 눌러 강조 표시를 "확인"버튼으로 이동하십시오. 엔터 키를 치시오."
루트 파티션이 사용자가 정의한 다른 파티션과 함께 마운트 될 알림이 표시됩니다. "/ etc / fstab"파일 ...에
"탭"키를 눌러 강조 표시를 "예"버튼으로 이동하고 "Enter"를 누르십시오.
당신은 볼 수
fsck.
대화식 모드로 실행됩니다. 문제가있는 경우 묻는 메시지가 표시됩니다
fsck.
그들을 고치거나 무시하십시오. 파일 시스템을 선택하면 복구 메뉴가 다시 표시됩니다.
"Resume"옵션을 선택하고 "탭"키를 눌러 강조 표시를 "확인"버튼으로 이동 한 다음 "Enter"를 누르십시오. 부팅 프로세스가 재개되고 Linux로 부팅됩니다.
복구 모드 부팅은 일부 드라이버에 영향을 줄 수 있으므로 Linux로 부팅하는 즉시 한 번 더 재부팅하는 것이 좋습니다. 이렇게하면 컴퓨터가 표준 방식으로 작동하는지 확인합니다.
일이 잘못되었을 때
안전망은 이유가 있습니다. 그를 알게된다
fsck.
명령. 어떤 데이에서는 분노에서 그것을 사용하기가 필요하다면 사전에 익숙해지게되어 기쁩니다.