fsck
은 리눅스 화일 시스템을 점검하고 필요에 따라 수리할 때 사용한다.
화일시스템
은 장치명(예. /dev/hda1, /dev/sdb2 )이거나 화일 시스템이 마운트된 마운트
포인트(예. /, /usr, /home )이다. 서로 다른 물리적 드라이브 상의 여러 화일
시스템을 점검하는 경우 병렬 처리가 가능하다. 병렬 처리를 사용하므로 점검에
드는 시간을 절약할 수 있다.
fsck
의 종료 코드는 다음 값의 합계로 나타난다:
0 - 에러 없음
1 - 화일 시스템 에러 고쳐짐
2 - 리부팅이 필요함
4 - 화일 시스템 에러를 고치지 않고 그대로 둠
8 - 실행 에러
16 - 사용법 또는 문법 에러
128 - 공유 라이브러리 에러
-A
옵션을 주고 점검한 모든 화일 시스템에 대해서는 각 화일 시스템에 대한 모든
종료 코드가 비트연산 OR 되어 표시된다.
사실
fsck
은 리눅스에서 사용가능한 화일 시스템 점검
프로그램(fsck.화일시스템유형)에
대한 프론트엔드 (front-end)일 뿐이다.
각 시스템 고유의 점검 프로그램은 우선 /sbin 에서 찾고 다음에는 /etc/fs,
/etc 그리고 최종적으로는 PATH 환경 변수에 나열된 디렉토리에서 찾는다.
세부 사항에 대해서는 각 시스템 고유의 점검 프로그램에 대한 맨 페이지를
참고하기 바란다.
옵션
-A
/etc/fstab
화일에 표시된 모든 화일 시스템을 한 번 씩 모두 점검한다.
보통
/etc/rc
시스템 초기화 화일에서 각 시스템마다 일일이 명령을 내리지 않고
일괄적으로 점검할 때 사용된다.
-R
-A
플래그와 같이 사용될 때 루트 화일 시스템은 제외하도록 한다.
(이미 읽기-쓰기 가능으로 마운트되어 있는 경우)
-T
시작할 때 제목을 보여주지 않는다.
-N
실행하지는 말고 어떤 작업을 할 것인지만 보여준다.
-P
-A
플래그가 설정되어 있을 때 다른 화일 시스템과 루트 화일 시스템을 병렬처리하여
점검한다. 루트 화일 시스템에 에러가 있는 경우에는 e2fscsk 바이너리와 같은
것들이 깨져있을 수 있기 때문에 안전한 방법은 아니다. 루트 화일 시스템을
좀 더 작고 컴팩트하게 다시 파티션하길 원하지 않는 시스템 관리자들을 위해서만
제공되는 옵션이다.
-s
fsck 동작을 시리얼화한다. 대화형 모드에서 여러 화일 시스템을 점검할 때
유용하다.( 주의 :
e2fsck
은 기본값으로 대화형으로 실행한다.
e2fsck
을 비대화형 모드로 실행하려면
-p
또는
-a
옵션을 주어 에러를 자동 치유하거나
-n
을 주어 고치지 않고 그대로 놔두도록 해야 한다.)
-V
실행되는 각 화일 시스템용 명령을 포함하여 자세한 출력을 수행한다.
-t 화일시스템유형
점검할 화일 시스템 유형을 지정한다.
-A
플래그가 설정되어 있는 경우
화일시스템유형
에 맞는 것만 점검한다.
화일시스템유형
앞에
no
를 붙이면
화일시스템유형
아닌 것만 점검한다.
보통
/etc/fstab
화일에 들어있는
화일시스템유형
을 따른다.
만약 해당 유형을 알아낼 수 없을 때는
fsck
는
-t
옵션에서 주어진 값을 사용한다.
주어진 값이 유효하지 않다면 현재로서는 기본값인 ext2 가 사용된다.
화일시스템옵션
fsck
에 의해 이해되지 않는 옵션 또는
--
옵션 뒤에 오는 옵션은 각 화일 시스템 고유의 점검 프로그램의 옵션으로
취급한다.
현재 표준적인 화일 시스템 고유의 옵션은 변동 중이다. 비록 확실하게 보장할
수는 없지만 다음 옵션들은 대부분의 점검 프로그램에서 지원한다.
-a
물어봄 없이 자동으로 복구한다.( 주의하여 사용하기 바란다 )
e2fsck
은
-a
옵션을 단지 호환성을 위해 제공할 뿐이다. 이 옵션은 e2fsck의
-p
옵션으로 매핑된다.
-r
화일 시스템 복구시 질문을 하게끔 한다. 주의 : 여러 fsck 가 병렬모드로
작동하고 있을 때 사용하는 것은 좋지 않다.
e2fsck
의 기본 동작 방식이므로 주의하기 바란다. 이 옵션은 단지 호환성 때문에
제공될 뿐이다.