Information Security

20-1 부팅 프로세스 본문

Linux

20-1 부팅 프로세스

leeeeye321 2017. 10. 12. 15:49

부팅 프로세스(Booting Process)

 

부팅 프로세스의 단계

1. Power ON & ROM BIOS

-전원이 들어오면 CPU가 ROM(Read Only Memory)에 저장된 BIOS(Basic Input Output System) 실행

 

-BIOS는 POST(Power On Self Test/ 자체 진단 기능)작업을 수행하며 하드웨어 장치들을 하나씩 인식하며 이상 유무 확인

 

-부팅 장치(HDD)를 선택하여 부팅 디스크의 첫 섹터(Sector)에서 MBR(Master Boot Record)을 읽어, 부트로더(Boot Loader)가 로딩된다.

 

2. 부트로더 실행

리눅스 가상머신을 실행하고 time out 되기 전 아무 키나 누르면 부팅 메뉴가 실행된다.

 

-부팅 메뉴 실행(/boot/grub/grub.conf)

-> 실행할 운영체제와 실행 시 사용할 옵션 선택

 

-Kernel 이미지와, initrd(램디스크 초기화)이미지 실행

 

-부트로더 init 프로세스 실행

 

3. init 프로세스 실행

-/etc/inittab 파일 참조하여 설정된 Runlevel을 확인하여 부팅 레벨(환경) 결정

 

-시스템 초기화 및 관리 설정 파일 실행

과거 : System V init (init -> inittab -> rc.sysinit) 5.X

현재 : System V init + Upstart (init 프로세스 실행 -> inittab 파일 읽음 -> rcS.conf -> rc.conf -> rc.local) 6.X

미래 : Systemd (init 프로세스가 사라지고, systemd 프로세스가 모든 프로세스를 관리) Cent OS 7.X 부터..

 

/etc/inittab 파일 내용 확인

 

[id] : [runlevel] : [option]

-1~25 줄은 모두 주석

-네트워크 지원하는 CLI 환경의 런레벨 3에서 리눅스를 사용하고 있다.

 

initdefault

부팅 시 실행할 런레벨을 지정할 때 사용하는 옵션

 

**runlevel

-부가 설명 & 실습 http://leeeeye321.tistory.com/111

시스템을 어떤 방식으로 부팅할 것인지를 분류해 놓은 것

 

4. Login 프롬프트 및 X-Windows 실행

 


 

/etc/rc.d/rc#.d/* (# : 숫자(runlevel))

-런레벨 #으로 부팅 시 실행할 스크립트

 

...

...

-런레벨 3으로 부팅 시 실행할 스크립트의 목록이다.

K~(Kill)    K로 시작하는 스크립트는 해당 부팅 레벨로 동작 시 실행하지 않는 스크립트이다.

S~(Start)    S로 시작하는 스크립트는 해당 부팅 레벨로 동작 시 실행할 스크립트이다.

숫자    우선순위

 

chconfig

-서비스 데몬의 실행 레벨을 저장하고, 관리해주는 명령어

 

#chkconfig --list

현재 시스템 내 모든 데몬의 목록 출력

 

#chkconfig --list [데몬명]

특정 데몬의 런레벨마다 동작 여부 확인

 

#chkconfig [데몬명] [on|off|reset]

모든 런레벨에서 비활성

 

확인

 

부팅 가능한 모든 런레벨에서 활성화

 

확인

 

#chkconfig --level [#] [데몬명] [on|off|reset]

sshd 데몬이 런레벨 3에서는 동작하지 않도록 설정

 

확인

 

재부팅

 

-Xshell 연결을 시도하면 실패한다.

-service 명령어로 다시 sshd 데몬을 동작시켜 보겠습니다.

 

service

-데몬의 상태를 관리하는 명령어

#service [데몬명] [stop|start|restart|status]

 

콘솔에서 sshd 데몬 상태 확인(중지 상태)

 

sshd 데몬 시작

 

다시 Xshell 연결을 시도하면 성공한다.


다음 번 런레벨 3에서 부팅 시 sshd가 동작하도록 설정

 

확인

 

#service sshd restart

-중지 후 시작

-서버 프로그램이 사용하는 설정 파일의 내용을 변경한 후에 프로그램에 적용하기 위해 자주 사용하는 형식

 

※ 시스템에 불필요한 프로그램(데몬)이 동작하고 있다면, 중지(stop)시키거나 다음 번 부팅 시 동작하지 않도록 해주는 것(chkconfig)이 시스템 최적화의 기본이다.

'Linux' 카테고리의 다른 글

20-3 압축 유틸리티 기본 사용  (0) 2017.10.13
20-2 Run Level  (0) 2017.10.13
19-3 xargs 명령어  (0) 2017.10.12
19-2 find 명령어2  (0) 2017.10.12
19-1 find 명령어  (0) 2017.10.11