Cent Os 리눅스 시작과 종료
리눅스 부팅 과정에 대해 정리해보자.
참고도서 : CentOS 리눅스구축 관리실무 [한국리눅스유저그룹 회장 김태용 저]
리눅스 부팅과정
1. Bios 실행
- 시스템 전원이 공급되면 메인보드의 ROM-Bios에 있는 Bios프로그램이 자동으로 실행된다.
2. 자체진단기능(post)수행
- cmos, cpu, 메모리, 그래픽카드, 키보드, 마우스 등 각종 장치들의 이상유무를 검사하고 이들 장치를 초기화한다.
3. 부팅매체 검색과 부트로더 실행
- 2번단계가 OK되면 부팅가능한 매체를 검색하여 부트로더를 불러들인다.
4. Grub 실행
- 부트로더인 GRUB가 실행되면 BOIS는 종료된다. GRUB가 실행되고 부팅할 OS를 선택하면 커널을 찾아 메모리에 로드 후 다음실행한다.
5. init 프로세스 실행
- /etc/inittab 파일에 설정된 내용을 실행한다
[root@centos rc.d]# cat /etc/inittab # Default runlevel. The runlevels used by RHS are: # System initialization. l0:0:wait:/etc/rc.d/rc 0 # Trap CTRL-ALT-DELETE # When our UPS tells us power has failed, assume we have a few minutes # If power was restored before the shutdown kicked in, cancel it.
# Run xdm in runlevel 5 |
6. init에 의해 /etc/rc.d/rc.sysinit 실행
- si::sysinit:/etc/rc.d/rc.sysinit (System Initialization)항목에 의해 /etc/rc.d/rc.sysinit 스크립트가 실행된다. 이 스크립트는 부팅레벨과 무관하게 한번만 실행이 된다.(자세한내용 141p)
7. 부팅레벨별 스크립트 실행
- id:3:initdefault: 항목에 의해 결정된 런레벨에 따라 아래의 항목중 하나가 실행
l0:0:wait:/etc/rc.d/rc 0 l1:1:wait:/etc/rc.d/rc 1 l2:2:wait:/etc/rc.d/rc 2 l3:3:wait:/etc/rc.d/rc 3 다중사용자 텍스트모드 l4:4:wait:/etc/rc.d/rc 4 l5:5:wait:/etc/rc.d/rc 5 l6:6:wait:/etc/rc.d/rc 6 |
부팅시 실행해야하는 명령들을 적어두면 시스템 부팅시 가장 마지막에 실행되므로 시스템운영시 편리하다. rc.local파일을 편집기로 열어서 실행하고자 하는 명령을 한줄씩 줄단위로 적어두면 순차적으로 실행된다.
[root@centos rc.d]# cat rc.local #!/bin/sh # # This script will be executed *after* all the other init scripts. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff. touch /var/lock/subsys/local |
8. CTRL+ALT+DEL 설정
이 3개의 키를 동시에 눌렀을 경우 /sbin/shutdown -t3 -r now라는 명령을 수행하게 된다.
9. 전원관리 설정
pt::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"
(usp 전원이 부족할경우 2분후에 자동으로 시스템 종료)
pr::12345:powerokwait:/sbin/shutdown -c "Power Restored;Shutdown Cancelled"
(usp 전원이 재충전 되었을 경우 pf행에서 실행된 종료명령을 취소한다)
10. 6개의 가상콘솔 실행
콘솔 로그인을 위해 /etc/mingetty를 싱행한다.(143p)
11. 로그인 프롬프트
런레벨이 5라면 로그인을 위한 x윈도우화면이 나타남.
런레벨이 3이라면 로그인을 위한 로그인 프롬프트가 나타남.
로그인
리눅스로그인, 그래픽모드 로그인, 원격로그인 등이 있다.
시스템 종료와 재부팅
1. shutdown[옵션][시간][메시지]
shutdown -h 10 10분후에 시스템 종료
shutdown -r now 시스템을 재부팅한다
shutdown -c 예약된 시스템 종료명령을 취소한다.
2. halt [옵션]
역시 시스템종료시 사용
3. init 시스템의 런레벨을 변경하는 명령어(런레벨이란 시스템이 가동되는 방법을 레벨로나열)
런레벨 | 의미 |
0 | 종료보드 |
1 | 단일사용자 모드(시스템복구시에 사용) |
2 | 다중사용자 텍스트모드(NFS불가) |
3 | 다중사용자 텍스트모드 |
4 | 사용안함 |
5 | 다중사용자 그래픽모드 |
6 | 재부팅모드 |
4. reboot [옵션]
시스템 재부팅할때
reboot : 로그남기고 재부팅
reboot -n sync : 로그남기지 않고 재부팅
5. exit, logout, ctrl+d
로그아웃