728x90

리눅스 시스템의 부팅 과정

1) 전원 ON

 

2) 바이오스 단계

- PC에 장착된 기본적인 하드웨어의 상태를 확인한 후 부팅 장치를 선택하여 부팅 디스크의 첫 섹터에서 512 바이트를 로딩함

- 512 바이트: 마스터 부트 레코드(MBR)

- MBR는 부트 로더를 메모리에 적재함

 

3) 부트 로더 단계

- 부트 로더는 부팅할 운영 체제를 선택할 수 있도록 메뉴 제공

- 부트 로더는 리눅스 커널을 메모리에 로딩

 

4) 커널 초기화 단계

- 커널은 가장 먼저 시스템에 연결된 메모리, 디스크, 키보드, 마우스 등 장치들을 검사

- 기본적인 초기화 과정이 끝나면 커널은 fork를 사용하지 않고 생성되는 프로세스와 스레드를 생성함

 

5) systemd 서비스 단계

- 기존의 init 스크립트를 대체한 것으로 다양한 서비스를 동작시킴

- 부팅 메시지 출력, 부트 스플래시 화면 출력

 

6) 로그인 프롬프트 출력

 

 

systemd 서비스

 

1) 리눅스의 init 런레벨

런레벨 의미 관련 스크립트의 위치
0 시스템 종료 /etc/rc0.d
1, S 단일 사용자 모드 /etc/rc1.d
2 다중 사용자 모드(NFS를 실행하지 않음) /etc/rc2.d
3 다중 사용자 모드(NFS 포함) /etc/rc3.d
4 사용하지 않음(예비 번호) /etc/rc4.d
5 X11 상태로 부팅 /etc/rc5.d
6 재시작 /etc/rc6.d

 

2) systemd의 기본 개념

 

- CentOS7부터 본격적으로 기존의 init 스크립트를 대체하기 시작함

- 거의 대부분의 서비스가 systemd 기반으로 변경됨

- systemd 방식의 장점: inetd와 호환성 유지, 셸과 독립적으로 부팅 가능, 마운트 제어 가능, fsck 제어 가능, SELinux와 통합 등

 

3) systemd 유닛

 

- systemd는 전체 시스템을 시작하고 관리하는 데 유닛(units)이라 부르는 구성 요소 사용

- 관리 대상 이름 형태: 서비스 이름.서비스 종류

 

4) systemctl

 

- systemd를 제어함

- 형식: systectl [옵션] [명령] [서비스명]

 

- 옵션

 

옵션 설명
-a 상태와 관계없이 서비스 전체 출력
-t 지정한 종류의 서비스만 출력

 

- 명령어

 

명령어 설명
start 서비스 시작
stop 서비스 정지
reload 서비스의 설정 파일을 다시 읽어옴
restart 서비스 재시작
status 서비스 상태 출력
enable 부팅 시 서비스가 시작하도록 설정
disable 부팅 시 서비스가 시작하지 않도록 설정
is-active 서비스가 동작하고 있는지 확인
is-enabled 서비스가 시작되었는지 확인
isolate 지정한 서비스 및 이와 관련된 서비스만 시작하고 나머지는 정지
kill 서비스에 시그널 전송
mask, unmask 서비스 잠금, 해제

 

 

리눅스 시스템의 종료

 

1) shutdown [시간] [메시지]

 

- 옵션

옵션 기능
-k 실제로 시스템을 종료하는 것이 아니라 사용자들에게 메시지만 전달
-r 종료 후 재시작
-h 종료하며 halt 상태로 이동
-f 빠른 재시작으로 이 과정에서 fsck 생략 가능
-c 이전에 내렸던 shutdown 명령 취소
[시간] 종료할 시간(hh:mm, +m, now)
[메시지] 모든 사용자에게 보낼 메시지

 

2) halt, poweroff, reboot

- 시스템을 종료하거나 재시작하기 위해 사용하는 명령어

- systemctl 명령의 심볼릭 링크

- /var/log/wtmp 파일에 시스템 종료 기록을 남김

 

- 옵션

옵션 기능
-n 재시작이나 종료 전에 sync를 호출하지 않음
-w 실질적으로 재시작하거나 종료하지는 않지만 wtmp 파일에 기록을 남김
-d wtmp 파일에 기록을 남기지 않음
-f 강제로 명령을 실행하며 shutdown을 호출하지 않음
-p 시스템의 전원을 끔

 

3) runlevel 0, 6

 

 

 

 

데몬 프로세스

 

1) 데몬

- 리눅스 백그라운드에서 동작하면서 특정한 서비스를 제공하는 프로세스

 

2) 데몬의 동작 방식

- 독자형: 시스템의 백그라운드에서 서비스별로 항상 동작, 자원 낭비 우려

- 슈퍼 데몬: 평소에는 슈퍼 데몬만 동작 > 서비스 요청 시 슈퍼 데몬이 해당 데몬을 동작 시킴, 응답 시간이 느리지만 효율적인 자원 사용

 

3) 주요 데몬

 

데몬 기능
crond 주기적으로 실행하도록 예약한 명령 실행
dhcpd 동적으로 IP 주소를 부여하는 서비스 제공
httpd 웹 서비스 제공
nfs 네트워크 파일 시스템 서비스 제공
smtpd 메일 전송 데몬
syslogd 로그 기록 서비스 제공
ftpd 파일 송수신 서비스 제공

 

728x90

+ Recent posts