FSCK(8)

명칭
fsck - 파일 시스템의 정합성 체크와 대화적 수정

서식
fsck -p [-f] [-m mode] [filesystem] ... fsck [-ny] [-b block#] [-c level] [-l maxparallel] [-m mode] [filesystem] ...

해설
fsck 의 최초의 서식은, 표준의 파일 시스템세트나 지정되었다 파일 시스템 상태를 정돈하는데 사용됩니다. 통상은, 자동 리부트동안에 /etc/rc 스크립트 중(안)에서 사용됩니다. 이 때 fsck 하 /etc/fstab (을)를 읽어, 체크하는 파일 시스템을 결정합니다. fstab 내의 ``rw, '' ``rq, '' ``ro''의 몇개의 옵션으로 mount 되는, 0 이외의 패스 번호를 가지는 파티션만이 체크의 대상입니다. 패스 번호 1 을 가지는 파일 시스템 (통상은 루트 파일 시스템 뿐입니다)(은)는, 한개씩 차례로 체크됩니다. 패스 1 이 완료하면(자), 나머지의 모든 파일 시스템은, 디스크 드라이버 마다 하나의 프로세스를 사용해 체크됩니다. 파일 시스템이 포함되는 디스크 드라이버는, 디바이스명 중 최후가 숫자인 가장 긴 캐릭터 라인으로서 인식됩니다. 나머지의 캐릭터 라인은 파티션을 나타낸다고 해석됩니다.

preen 모드에서는, 각 파일 시스템의 슈퍼 블록의 크린 (clean) 플래그를 조사해 깨끗하지 않은 파일 시스템만을 체크합니다. 파일 시스템이 크린과 마크 되는 것은, 언마운트 되었을 때, 독해 전용으로 mount 되었을 때, fsck 하지만 성공리에 실행되었을 때입니다. -f 옵션을 지정했을 경우, 크린 플래그 상태에 관계없이 파일 시스템을 체크합니다.

커널은, 하드웨어나 소프트웨어에 장해가 일어나지 않는 이상 파일 시스템에는 한정된 무해인 부정합 밖에 일으키지 않게 동작합니다. 그러한 부정합에는 이하의 물건이 있습니다.

참조되지 않는 inode
inode 의 링크 카운트가 너무 많다
프리 MAP중에 없는 프리 (빈) 블록
프리 MAP와 파일의 양쪽 모두에 있는 블록
슈퍼 블록내의 수치의 이상

-p 옵션부의 fsck 그럼, 상기의 부정합만을 수정합니다. 그 외의 부정합을 발견하면(자), fsck (은)는 이상종료(ABEND)의 스테이터스를 돌려주어 종료해, 자동 리부트는 실패합니다. 부정합을 수정할 때마다, 파일 시스템과 수정 내용이 표시됩니다. 파일 시스템의 수정에 성공한 다음에, fsck (은)는 파일 시스템중의 파일수, 사용중 블록과 프리 블록의 수, fragment의 비율을 표시합니다.

fsck 하지만 파일 시스템을 체크하고 있는 동안에 QUIT 시그널을 보내면(자), fsck (은)는 체크를 계속합니다만, 종료시에 이상종료(ABEND)의 스테이터스를 돌려주어, 자동 리부트를 실패시킵니다. 이것은, 자동 리부트에 의한 파일 시스템 체크는 실시하고 싶지만, 체크 완료 후에 multiuser 모드로 이행하고 싶지 않은 경우에 유용합니다.

fsck 하지만 SIGINFO 시그널을 수신하면(자) ( stty(1) 의 “status” 인수를 참조해 주세요), 현재 체크중의 디바이스와 현재 국면 번호와 국면 고유의 진척 정보를 나타내는 행이, 표준 출력에 쓰여집니다.

-p 옵션없이는, fsck (은)는 파일 시스템 상태의 검사를 행해, 그것을 대화적으로 수정합니다. 파일 시스템에 부정합이 있는 경우, 수정을 실시하기 전에 오퍼레이터에게 확인을 요구합니다. -p 옵션에서는 고칠 수 없는 수정에서는, 데이터가 없어질 가능성이 있는 것에 주의해야 합니다. 없어지는 데이터의 양과 그 치명도는, 진단 메세지로부터 판단해 주세요. 디폴트 동작에서는, 수정을 실행하기 전에, 오퍼레이터가 yes 인가 no (이)라고 응답할 때까지 기다립니다. 오퍼레이터에게 파일 시스템의 기입 권한이 없는 경우, fsck (은)는, -n 옵션의 동작을 디폴트로 합니다.

fsck (은)는, 이전 사용되고 있었다 check, dcheck, fcheck, icheck 의 편성보다 보다 자세한 부정합체크를 행합니다.

fsck (은)는 이하의 플래그를 해석합니다.

-b  지정한 번호의 블록을 파일 시스템의 슈퍼 블록으로서 사용합니다. 블록 번호 32 는 보통, 대체 슈퍼 블록이 되어 있습니다.

-c  파일 시스템을 지정한 레벨에 변환합니다. 파일 시스템의 레벨은, 올리는 것만이 가능합니다.
    이하의 4 레벨이 정의되고 있습니다.

    0   파일 시스템은, 구포맷입니다 (정적 테이블).

    1   파일 시스템은, 신포맷입니다 (동적 테이블).

    2   파일 시스템은 32 비트의 UID 와 GID 를 이용해 짧은 기호 연결은 inode 내에 격납해, 디렉토리는 파일 타입을 나타내는 추가 필드를 가집니다.

    3   maxcontig 가 1 보다 큰 경우, 연속 블록을 찾아내기 위한 프리 세그먼트(segment) MAP를 작성합니다. maxcontig 가 1 의 경우, 기존의 세그먼트(segment) MAP를 삭제합니다.

    대화 모드에서는, fsck (은)는, 변환의 내용을 표시해, 실제로 변환하는지 어떤지를 문의합니다. no 라고 대답하면(자), 파일 시스템에의 그 이상의 조작은 행해지지 않습니다. preen 모드 ( -p 옵션)에서는, 변환 내용을 표시합니다만, 변환이 가능하면 유저에게로의 문의 없이 실행합니다. preen 모드에서의 변환은, 모든 파일 시스템을 한 번에 변환해 버리는 경우에 편리합니다. 파일 시스템의 포맷은, dumpfs(8) 의 출력의 최초의 행으로부터 결정할 수가 있습니다.

-f  preen 모드의 경우에서도, ‘크린’ 파일 시스템을 체크하도록(듯이) 합니다.

-l  동시 체크의 병렬도를, 지정한 수에 제한합니다. 기본값은 디스크수이며, 디스크마다 하나의 프로세스가 실행됩니다. 이것보다 작은 값을 지정하면(자), 각 디스크를, 파일 시스템을 한개씩 라운드로빈 방식에서 체크합니다.

-m  lost+found 디렉토리를 만들 때의 모드로서 디폴트의 1777 의 대신의 값을 8 진수로 지정합니다. 없어진 파일을 모든 유저에게는 보여 주고 싶지 않은 시스템에서는, 보다 제한의 어려운 700 을 사용해야 합니다.

-n  fsck (으)로부터의 ‘CONTINUE?’ (을)를 제외하는 모든 문의에 no 라고 대답합니다. 이 옵션 사용시, 파일 시스템에의 기입해 오픈을 실시하지 않습니다.

-p  파일 시스템을 정돈합니다(상기 참조).

-y  fsck (으)로부터의 모든 질문에 yes 라고 대답합니다. 이 옵션은, 수정에 의해 새로운 부정합을 낳는 것 같은 잘못한 수정에 대해서도 무제한한 허가를 주어 버리는 것이기 때문에, 충분히 조심해 사용해야 합니다.

파일 시스템을 지정하지 않고 fsck (을)를 실행하면(자) /etc/fstab 파일로부터 읽힌 파일 시스템의 리스트가 대상이 됩니다.

파일 시스템은, 이하의 점에 대해 검사됩니다.
1.  둘이상의 inode 나 프리 MAP에 의해 사용되고 있는 블록
2.  파일 시스템 area외의 inode 에 의해 사용되고 있는 블록
3.  부정한 링크 카운트
4.  사이즈의 체크:
    사이즈가 DIRBLKSIZ 의 배수가 아닌 디렉토리
    절약하고 (truncate)가 부분적에 행해지고 있는 파일
5.  부정한 inode 포맷
6.  어디에도 등록되지 않은 블록
7.  디렉토리의 체크:
    할당하고되어 있지 않은 inode 를 가리키는 파일
    범위외의 inode 번호
    할당할 수 있지 않은 블록 (구멍)을 가지는 디렉토리
    최초의 2 개의 엔트리가 `. '와 `..'가 아닌지, 부정한 inode 번호를 가지는 디렉토리
8.  슈퍼 블록의 체크:
    파일 시스템에 있는 것보다도 많은 inode 블록수
    부정한 프리 블록 MAP 포맷
    프리 블록이나 프리 inode 의 총수의 잘못

친디렉토리가 없는 파일이나 디렉토리 (할당 라고 있지만 참조되어 있지 않다)는, 오퍼레이터에게로의 문의의 나중에 lost+found 디렉토리에 배치됩니다. 그 때의 파일명은 inode 번호가 됩니다. lost+found 디렉토리가 존재하지 않는 경우, 새롭게 작성됩니다. 스페이스가 부족한 경우는, 그 사이즈가 확장됩니다.

블록 디바이스와 버퍼 캐쉬의 내용은 일치 하지 않을 지도 모르기 때문에, 반드시 로 (raw) 디바이스를 지정해 주세요.

관련 파일
/etc/fstab
    체크를 행하는 파일 시스템의 디폴트 리스트를 포함한다

진단
fsck (이)가 내는 진단 메세지는, Fsck - The UNIX File System Check Program. 의 Appendix A 에 모두 열거되고 설명되고 있습니다.

관련 항목
fs(5), fstab(5), fsdb(8), newfs(8), reboot(8)