<FSCK (File System Check)>
- 파일 시스템에서 시스템 비정상 종료나 정전, 하드웨어 장애 등으로 인해 발생하는 파일시스템에 손상을 데이터 점검을 통해 불일치를 해결하여 복구하는 기능을 가진 명령어
<fsck 사용시 주의사항>
- 마운트가 된 상태에서 하는 것은 좋지 않다.
<fsck 기능>
데이터 불일치 검사 | 모든 데이터들의 불일치 유형을 검사한다. |
슈퍼 블록 일관성 | 슈퍼 블록에 있는 정보를 다시 확인 |
실린더 그룹 블록 일관성 | i-node 수, 디렉토리 수, 데이터블록 수 |
i-node 일관성 | 링크 수, 수정시간, 링크 수가 0인 파일을 복구 |
데이터 블록 일관성 | 파일의 내용 다시 확인 |
lost+found 디렉토리 | fsck명령어를 통해 복구되는 파일들을 해당 디렉토리에 복구 |
비대화형 모드 | 사용자에게 묻지 않고 알아서 다 해결, 심각한 에러 발생시 fsck 종료 |
대화형 모드 | 문제가 발생하면 사용자에게 계속 진행할지 않을지 yes/no로 묻는다. |
<참조되어지지 않은 파일 복구>
- unlink [디렉토리명] : 해당디렉토리 링크제거
- fsck [장치명] : 장치에 있는 파일복구 (lost+found안에 i-node값으로 존재)
<디렉토리 복구>
1)/dev/dsk/c1t1d0s0의 파일시스템 선택 |
2)unlink로 aaa 디렉토리의 링크를 없앤다. |
3) fsck로 디스크의 파일복구 |
4) 복구파일의 I-node번호로 디렉토리 복구 |
<슈퍼블록 장애복구>
- dd if=/dev/zero of=/dev/rdsk/c1t1d0s0 bs=512 count=32 : 장애발생

- fsck –F ufs –o b=32 /dev/rdsk/c1t1d0s0 : 복구

<솔라리스의 부팅 과정>
X86 | SPARC |
BIOS | Boot PROM |
GRUB | ufs boot |
kernel 초기화 | |
init(리눅스는 여기까지) | |
SMF(솔라리스 10버전부터 생김) |
1) Boot PROM / BIOS
Boot PROM | 시스템의 하드웨어를 점검, POST (Power of Self Test) |
BIOS | POST 과정 수행, 부트 장치의 첫 번째 섹터 MBR을 읽어온다. |
2)부트 로더 (ex. GRUB, ufs boot)
*GRUB
- GNU프로젝트에서 만든 부트 로더(부트 프로그램)이다.
- 다양한 운영체제를 불러올 수 있다.
Stage 1 : 파일시스템의 종류를 확인, 확인 후 1.5 또는 2로 넘어감 Stage 1.5 : 특정 파일시스템을 해석하고 2로 넘어감 Stage 2 : 커널을 어떻게 불러올 것인지와 관련된 파일을 읽어서 사용자에게 출력 |
3)kernel 초기화
- /etc/system이라는 구성 파일을 읽어온다.
(/etc/system : 커널이 로드해야 하는 모듈에 대한 내용이 들어있다.)
- 커널은 자체적으로 초기화 모듈을 시작 (/etc/init 데몬을 시작)
4)init단계 (/etc/inittab)
- init 데몬은 각각의 서비스를 시작, 또는 중지하도록 하는 svc.startd 데몬을 구동
*svc.startd 데몬 SMF : 각각의 서비스를 시작 또는 중지
<Run Level>
- 시스템의 상태를 숫자 또는 문자로 나타낸 것으로 서비스와 사용자가 사용할 수 있는 자원들에 대해서 정의한 것
- who –r : 런레벨 확인

1 : 현재 런 레벨 2 : 마지막으로 런 레벨이 변경된 날짜 3 : 현재 런 레벨 4 : 마지막 재부팅 후 현재 레벨까지 변경된 수 5 : 이전 런 레벨 |
<런 레벨 종류>
런 레벨 | 기능 |
0 | 시스템이 PROM 모니터를 실행하고 있는 상태, ok프롬프트 |
s | 싱글 사용자 모드, 중요 파일시스템이 마운트 되어진 상태 |
1 | 싱글 사용자 모드, 모든 파일시스템이 마운트 되어진 상태 |
2 | 시스템이 다중 사용자 동작으로 지원하고, 일부 네트워크 자원을 사용할 수 없음 |
3 | 가장 기본, 시스템이 다중사용자 동작으로 지원하고, 네트워크 자원을 사용가능 |
4 | 현재는 사용하지 않는 런 레벨 |
5 | 종료 |
6 | OS를 종료하고 기본 런 레벨 재부팅 |
5)SMF
- 각 런 레벨에 맞는 서비스를 시작, 또는 중지
/etc/rc[숫자].d |
숫자에 해당하는 런 레벨에서 시작 또는 중지되어야 하는 서비스들의 스크립트 파일이 모여 있는 디렉토리 (시작 – S로 시작하는 파일, 중지 – k로 시작하는 파일) |
/sbin/rc[숫자] | svc.startd 데몬에 의해서 실행되는 스크립트를 실행하는 파일 |
<런 레벨 변경 (재부팅 or 종료)>
1) init (종료 스크립트 실행)
- 각 런 레벨번호 부여하여 모드전환 (종료)
2) shutdown (종료 스크립트 실행)
- 로그인 중인 사용자에게 시스템 종료를 알리고 종료합니다.
- 기본적으로 60초 후에 종료
shutdown | 단일 사용자모드 전환 |
–i | 런 레벨 지정 |
–y | 묻는 응답에 y로 대답 |
–g | 시간 지정 |
3) halt / poweroff / reboot (종료 스크립트 실행없이 강제)
<명령어>
-종료-
init 5 shutdown –i5 –y –g0 halt poweroff |
-재부팅-
init 6 shutdown –i6 –y –g0 reboot |
'IT > OS' 카테고리의 다른 글
UNIX /root복구 네트워크 인터페이스 (0) | 2024.01.16 |
---|---|
UNIX 패치 작업스케줄링 백업 (0) | 2024.01.16 |
UNIX 파일시스템 ufs 단편화 (0) | 2024.01.16 |
UNIX 디스크관리 MBR 파티션 설정 (0) | 2024.01.16 |
UNIX 계정 생성 방법 비밀번호 복구 원격접속 시스템보안 모니터링 (0) | 2024.01.16 |