Linux 부팅과정1
*리눅스 부팅 과정
1.BIOS 단계 (Firmware)
: CMOS검사, CPU, MEMORY, 그래픽카드, 키보드, 마우스등 각종 장치들의 이상 유무를 검사하고 이들 장치(하드웨어들)을 초기화
2.부트 로드 단계
: 부트로더는 커널(운영체제의 심장)을 메모리에 올려놓는 일을 한다.
: 부트로더는 커널 이미지의 위치를 알고 있어서 스스로 커널이미지를 찾아서 메모리에 올려놓는다.
-GRUB(/boot/grub/grub.conf = /etc/grub.conf파일은 GRUB실행과 함께 읽혀짐)
--------------grub.conf-------------------
timeout=5 (5초 후 부팅)
default=0 (기본 부팅으로 쓰는거)
hiddenmenu (GRUB 메뉴 숨김)
splashimage=(hd0,0)/bot/grub/splash.xpm.gz
....커널 경로 등등
------------------------------------------
GRUB 설치 : #/sbin/grub-install /dev/sda
GRUB 삭제 : #dd if=/dev/zero of=/dev/sda bs=446 count=1 (잘못입력시 위험)
3.커널 단계
: 하드웨어(디스크)를 점검하고 /var/log/dmesg 파일에 기록을 한다.
: init 프로세스를 실행시킨다.
4.init 단계 (CentOS 6.x ↑ = systemd 단계)
: /etc/inittab 파일에 정의된 순서에 따라서 시스템을 초기화
: /etc/rc.d/rc.sysinit 파일 읽혀짐
: /etc/rc.d/* 파일 읽혀짐
: /etc/rc숫자.d/* 파일 읽혀짐
: 로그인 프롬프트가 나오기까지의 부팅완료화면까지 init프로세스에 의해서 실행
//Runlevel에 따른 inittab파일의 읽혀지는 라인
1.Runlevel 3
id:3:initdefault:
si::sysinit:/etc/rc.d/rc.sysinit
l3:3:wait:/etc/rc.d/rc 3
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"
pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6
2.Runlevel 5
id:5:initdefault:
si::sysinit:/etc/rc.d/rc.sysinit
l3:5:wait:/etc/rc.d/rc 5
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"
pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6
x:5:respawn:/etc/X11/prefdm -nodaemon
*부팅시 런레벨에 따른 실행할 스크립트 위치
/etc/rc숫자.d/S##script (부팅시 실행)
/etc/rc숫자.d/K##script (부팅시 실행 안됨)
/etc/rc숫자.d/* -> /etc/init.d/* (심볼릭 링크 되어있음)
*현재 실행할 스크립트 위치
1./etc/init.d/script
2./etc/rc.d/init.d/script
*sshd 서비스를 부팅+현재 open 방법
현재 실행 + 부팅시 실행 두가지를 해야함
#service sshd start (=#/etc/init.d/sshd start, 현재 실행)
#chkconfig sshd on (=#/etc/rc숫자.d/S##sshd, 부팅시 자동 실행)
*부팅시에 사용자 스크립트/명령어 실행 파일
#cat /etc/rc5.d/S99local (명령어를 메모하여 로그창이 띄기전 실행)