[ 리눅스 시스템 부팅시 작업 순서 ]
(1) BIOS가 시스템 이상 여부 테스트
(2) Booting 할 Drive 선택
(3) 선택된 드라이브의 Master Boot Sector 읽어들임
(4) MBR이 파티션 테이블을 읽어 Booting 할 파티션을 알아냄
(5) Booting 파티션의 Boot Sector에 가지고 있는 프로그램이 해당 운영체제를 읽어들임
(6) Kernel 압축 해제
(7) 장착된 Hardware 검사, 장치 드라이버 설정
(8) Kernel 이 '/(root 파일시스템)'를 read-only로 mount
(9) FileSystem 검사
(10) '/(root 파일시스템)'를 read/write로 다시 mount
(11) '/sbin/init' 실행 - Kernel이 최초로 실행하는 Program으로, PID가 '1'
(12) /etc/inittab에서 init 실행을 위한 설정 내용 확인
(13) /etc/rc.d/rc.sysinit 실행 - Hostname, Swapping, 시스템 점검, 커널 모듈 로딩
(14) /etc/rc.d/rc 실행 : inittab에 정의된 Default Runlevel을 실행 - 실행될 runlevel의 디렉토리 존재 여부를 확인 - 실행시킬 프로세스 중 이미 실행중인 것을 종료시킴 - /etc/rc.d/rc[0-6].d 내의 'S'로 시작하는 스크립트를 실행
(15) /etc/rc.d/rc.local : 매번 실행할 내용을 넣어둔다.
(16) /etc/rc.d/rc.serial : 시리얼 포트를 초기화한다.
(17) login (getty) / X-Window (xfm) |