728x90
반응형
fcsk
▶ fsck 명령어는 리눅스 파일 시스템을 점검하고 복원시켜 주며 윈도우의 chkdsk 와 유사한 명령어
▶ fsck (최신 e2fsck)는 single 모드로, 해당 파티션이 unmount 된 상태에서 수행해야 정확한 검사가 가능
▶ ext3 의 경우에는 보통 default 로 부팅시에 6개월에 한번 파일 시스템 점검 하도록 되어있으므로 파일시스템 손상 가능성이 거의 없지만 ext2 의 경우는 가끔 실행해 주는 것이 좋다.
▶ 종료 코드는 다음 값의 합계로 나타난다.
0 - 에러 없음
1 - 화일 시스템 에러 고쳐짐
2 - 리부팅이 필요함
4 - 화일 시스템 에러를 고치지 않고 그대로 둠
8 - 실행 에러
16 - 사용법 또는 문법 에러
128 - 공유 라이브러리 에러
▶ 사용법
# fsck [ -AVRTNP ] [ -s ] [ -t 파일시스템유형 ] [ 파일시스템옵션 ] 파일시스템 [ ... ]
▶ 옵션
-A : etc/fstab 화일에 표시된 모든 화일 시스템을 모두 검사한다
-R : -A와 같이 사용될 때 루트 화일 시스템은 제외 한다(이미 읽기-쓰기 가능으로 마운트되어 있는 경우)
-T : 시작할때 제목을 보여주지 않는다
-N : 실제 검사는 하지 않고 어떤 작업을 할것인가만 보여준다
-V : 자세히 출력한다
-a : 물어보지 않고 자동 복구한다
-r : 물어보고 복구한다
-s : fsck 동작을 시리얼화한다. 대화형 모드에서 여러 화일 시스템을 점검할 때 유용하다
-t [type] : 화일 시스템 유형을 지정한다.
-A 플래그가 설정되어 있는 경우 파일시스템유형에 맞는 것만 점검한다.
파일시스템유형 앞에 no 를 붙이면 파일시스템유형 아닌 것만 점검한다.
보통 /etc/fstab 화일에 들어있는 파일시스템유형을 따른다.
만약 해당 유형을 알아낼 수 없을 때는 fsck 는 -t 옵션에서 주어진 값을 사용한다.
주어진 값이 유효하지 않다면 현재로서는 기본값인 ext3가 사용된다
fsck 상세 설명
1) fsck는 화일 시스템에서 내재하는 여분의 데이타를 첵크함으로서 구조적인 상태를 검증
fsck 실행시 아래의 5가지의 과정을 거치게 된다.
Phase 1 - Check Blocks and Sizes : 블럭과 사이즈 검사
Phase 2 - Check Pathnames : 패스이름 검사
Phase 3 - Check Connectivity : 연결 상태 검사
Phase 4 - Check Reference Counts : 참조 수 검사
Phase 5 - Check Cyl groups : 싸이클 그룹 검사
2) fsck는 Multi-pass 프로그램인데, 파일 시스템을 여러번 시험하여 각각의 경로마다 파일 시스템의 다른 특징을 시험한다는 뜻
3) root에 fsck를 실행시키기전에 shutdown 명령어를 써서 시스템을 단독 사용자 형태로 옮겨야 한다.
만일 fsck에 파일 시스템을 주지 않고서 실행시키면 fsck는 /etc/checklist 파일에서 "hfs"라고 표시된 파일 시스템만 검색.
그 순서는 pass_number(6번째 필드) 에서 숫자로 결정된다.
% 예방과 유지를 위해 모든 파일 시스템에 한주에 한번 혹은 각각의 full backup 전에 fsck -p를 실행하는것이 좋다.
4) 형식)
# fsck -P/-p (-P: /file system check only. -p: /를 제외한 일반 파일 시스템 check)
5) # fsck (-b, block#) (-y|-n) (-q) (file_system)
* -y : 모든 질문에 yes라는 뜻. 가급적 안쓰는것이 좋다.
* -n : " no " . 쓰지 말것.
* -q : 구질 구질한 것이 많으니 보지 않겠다는 의미. 역시 안쓰는것이 좋다.
* -b block# : 이것은 primary super block을 잃어버렸거나 파괴되었을때 사용하기 좋고 fsck로 많은 에러가 발생되었다면 이 옵션을 사용할 것.
% fsck가 다시 부트하라는 말이 없는데 시스템을 다시 시동하지 말것.
만일 다시 시동해야 한다면 sync를 실행시키지않는 reboot -n 명령을 사용할 것.
6) The lost + found Directory
6-1. 모든 file system은 그의 root에 lost+found라는 디렉토리를 가져야 된다. 즉, /lost+found 이고 이것은 newfs에 의해 생성된다.
6-2. 만일 존재하지 않는다면 /etc/mklost+found라는 명령을 써서 다시 만들수있다.
6-3. fsck는 lost+found 디렉토리안에 어떤 문제의 파일들이나 디렉토리들을 위치시킨다.
fsck 명령의 일반적인 사용 예 1
1. 시스템을 리부팅 하거나 갑자기 파일시스템 I/O에러가 생길 때 보통은 너무 오랫동안 파일 시스템 점검을 안해 준 경우가 대부분
2. 시스템을 싱글 유저 모드로 부팅
boot: linux single
3. 현재 마운트된 장치명을 확인 한다
#mount
4. 체크 할 파티션을 umount 한다 (필수임, umount 하지 않을 경우 파티션 손실 가능성 높음)
#umount /dev/sdb1 /backup
5. fsck 명령으로 시스템 점검
#fsck -y /dev/sdb1 : 복구할지 물어 보지 않고 자동 yes 처리 함
#fsck -a /dev/sdb1
6. fsck 주요 옵션
형식 : fsck [-옵션] [파일시스템 옵션] 파일시스템 또는 디스크 디바이스
fsck 명령의 일반적인 사용 예 2
▶ 파일시스템 검사 (-TV : 자세한 출력 및 버전 출력 방지 옵션)
# fsck -TV /dev/sdb1
[/sbin/fsck.ext4 (1) -- /dev/sdb1] fsck.ext4 /dev/sdb1
e2fsck 1.41.14 (22-Dec-2010)
/dev/sdb1 is mounted.
WARNING!!! The filesystem is mounted. If you continue you ***WILL***
cause ***SEVERE*** filesystem damage.
Do you really want to continue (y/n)? yes
/dev/sdb1: 저널 복구중
/dev/sdb1: clean, 11/65280 files, 8523/261048 blocks
▶ 검사 수행 도중 문제가 발생하면, 문제를 수정할 것인지 사용자에게 물어보는데 -y옵션을 추가하여 모든 질문에 대해 yes로 답변하도록 할 수 있다.
# fsck -TVy /dev/sdb1
반응형
'Linux' 카테고리의 다른 글
Linux 백업 슈퍼블록을 이용한 파일 시스템 복구 (0) | 2018.08.08 |
---|---|
Linux nfs mount error (0) | 2018.08.08 |
Linux badblocks (0) | 2018.08.08 |
Linux hdparm (0) | 2018.08.08 |
Linux smartctl (0) | 2018.08.08 |