/etc/inittab
리눅스 / 2012. 2. 9. 08:26
/etc/inittab
하드웨어 인식과 초기화 작업을 마친 후 커널은 드디어 프로세스 ID(PID) 1번의 init를 실행시킨다.
시스템의 첫 번째 프로세스인 init는 실행하는 모든 프로세스들의 궁극적인 부모 역할을 하는 프로세스이다.
init가 실행될 때는 제일 먼저 /etc에 있는 inittab이란 파일을 읽어들인다.
이 파일은 init가 해야 할 모든 일이 적혀 있는 주문 양식(order form)이라 할 수 있다.
파일의 내용은 다음과 같다.
레드햇 계열 리눅스에서는 0부터 6번까지의 실행 레벨을 사용한다.
그에 대한 의미는 위의 내용중 앞부분에 잘 나와 있다.
즉
/etc/inittab의 id:5:initdefault:에서 지정한 숫자 5가 시스템의 기본 부팅 레벨이다.
X윈도우를 안쓰거나 부팅시 콘솔모드로 로딩되기를 윈할 때는 숫자 3으로 바꿔주면 된다.
이 실행 레벨을 변경할 때는 매우 주의해야 한다. 시스템 중지와 시스템 재부팅을 의미하는 0 또는 6을 기본값으로 잘못 지정하는 경우에는 시스템이 부팅되자 마자 중지되거나 리부팅되어 버리기 때문이다.
레벨 1번은 시스템의 다양한 초기화 과정을 모두 생략하고, 로그인 과정없이 즉시 루트 관리자 권한의 쉘 프롬프트 상태로 진입하는 레벨이다. 이 레벨은 시스템에 문제가 발생하여 루트가 수동으로 시스템을 고쳐야 할 필요가 있을 때 사용하는 레벨이다.
예를 들면 파일 시스템이 심하게 손상되어 자동 복구 방법이 통하지 않을 때 사용한다.
이 레벨로 진입하려면 GRUB에서 kernel이 포함된 라인 맨뒤에 single이라고 편집하여 부팅하면 된다.
참고로 부팅시 e를 누르면 편집모드로 되고 다시 하부 내용을 편집시는 e 그리고 편집을 마치고 엔터를 하면 편집이 완성되며 편집이 적용된 상태로 부팅을 하려고 하면 b를 누르면 된다.
4번경우는 어떠한 이유인지 사용치를 않는다. 아시는 분은 연락주길 바랍니다.^^;
원한다면 4번 레벨을 정의하여 사용할 수도 있다.
rc.sysinit는 말 그대로 시스템 초기화에 관련되는 파일로 최초에 1회 실행되며,
init가 제일 먼저 실행시키는 매우 중요한 스크립트이다.
그 뒤 l0~l6은 각 실행 레벨에 대하여 어떤 명령을 수행할 것인지 정해준다.
Ctrl키 Alt키 Delete키를 조합하여 동시에 누르면
shutdown -t3 -r now 명령이 실해된다.
즉 3초후 리부팅을 한다는 뜻이다.
우리에게 login: 프롬프트를 보여주는 프로그램을 getty류의 프로그램이라고 한다.
기본적으로 1번부터 6번의 가상 콘솔에 대하여 mingetty라는 프로그램을 실행시킨다.
설정을 자세히 보면 실행레벨 2345에서 실행되도록 되며,
respawn이 의미하는 것은 프로그램이 죽으면 다시 복제하여 계속 실행하라는 뜻이다.
로그인한 후 모든 작업을 마치고 로그아웃하고 나면 다시 로그인 화면이 뜨는 이유는 바로 이 respawn 옵션을 보고 init가 계속적으로 mingetty 프로그램을 수행하기 때문이다.
설정을 변경후에는 다음과 같이 init에게 알려 적용시킨다.
하드웨어 인식과 초기화 작업을 마친 후 커널은 드디어 프로세스 ID(PID) 1번의 init를 실행시킨다.
시스템의 첫 번째 프로세스인 init는 실행하는 모든 프로세스들의 궁극적인 부모 역할을 하는 프로세스이다.
init가 실행될 때는 제일 먼저 /etc에 있는 inittab이란 파일을 읽어들인다.
이 파일은 init가 해야 할 모든 일이 적혀 있는 주문 양식(order form)이라 할 수 있다.
파일의 내용은 다음과 같다.
그에 대한 의미는 위의 내용중 앞부분에 잘 나와 있다.
즉
/etc/inittab의 id:5:initdefault:에서 지정한 숫자 5가 시스템의 기본 부팅 레벨이다.
X윈도우를 안쓰거나 부팅시 콘솔모드로 로딩되기를 윈할 때는 숫자 3으로 바꿔주면 된다.
이 실행 레벨을 변경할 때는 매우 주의해야 한다. 시스템 중지와 시스템 재부팅을 의미하는 0 또는 6을 기본값으로 잘못 지정하는 경우에는 시스템이 부팅되자 마자 중지되거나 리부팅되어 버리기 때문이다.
레벨 1번은 시스템의 다양한 초기화 과정을 모두 생략하고, 로그인 과정없이 즉시 루트 관리자 권한의 쉘 프롬프트 상태로 진입하는 레벨이다. 이 레벨은 시스템에 문제가 발생하여 루트가 수동으로 시스템을 고쳐야 할 필요가 있을 때 사용하는 레벨이다.
예를 들면 파일 시스템이 심하게 손상되어 자동 복구 방법이 통하지 않을 때 사용한다.
이 레벨로 진입하려면 GRUB에서 kernel이 포함된 라인 맨뒤에 single이라고 편집하여 부팅하면 된다.
참고로 부팅시 e를 누르면 편집모드로 되고 다시 하부 내용을 편집시는 e 그리고 편집을 마치고 엔터를 하면 편집이 완성되며 편집이 적용된 상태로 부팅을 하려고 하면 b를 누르면 된다.
4번경우는 어떠한 이유인지 사용치를 않는다. 아시는 분은 연락주길 바랍니다.^^;
원한다면 4번 레벨을 정의하여 사용할 수도 있다.
init가 제일 먼저 실행시키는 매우 중요한 스크립트이다.
그 뒤 l0~l6은 각 실행 레벨에 대하여 어떤 명령을 수행할 것인지 정해준다.
shutdown -t3 -r now 명령이 실해된다.
즉 3초후 리부팅을 한다는 뜻이다.
기본적으로 1번부터 6번의 가상 콘솔에 대하여 mingetty라는 프로그램을 실행시킨다.
설정을 자세히 보면 실행레벨 2345에서 실행되도록 되며,
respawn이 의미하는 것은 프로그램이 죽으면 다시 복제하여 계속 실행하라는 뜻이다.
로그인한 후 모든 작업을 마치고 로그아웃하고 나면 다시 로그인 화면이 뜨는 이유는 바로 이 respawn 옵션을 보고 init가 계속적으로 mingetty 프로그램을 수행하기 때문이다.
설정을 변경후에는 다음과 같이 init에게 알려 적용시킨다.
# init q [출처] /etc/inittab 설정하기|작성자 피노키오 |
'리눅스' 카테고리의 다른 글
mount (2) | 2012.02.09 |
---|---|
APM 설치 옵션 정리 (1) | 2012.02.09 |
OpenWrt The Boot Process (5) | 2012.02.09 |
vi 에디터 명령어 (2) | 2012.02.08 |
VI 편집기 사용법 (1) | 2012.02.08 |