We are Architect

13. 리눅스 시스템의 부팅(2) 본문

운영체제/Linux

13. 리눅스 시스템의 부팅(2)

the best infra 2024. 12. 2. 10:47

 

* systemd와 런레벨

  • 사용자의 공간을 만들고 시스템을 초기화시키는 systemd에는 '런 레벨'이라는 것이 존재한다.
  • 런레벨은 시스템이 어떤 작업을 수행할지, 어떤 서비스가 실행 중인지에 따라 특정 상태를 나눈다.
  • 초창기 유닉스의 Sysinit이라는 시스템에서 가져왔으며 숫자로 시스템의 상태를 표기한다.
  • 명령어로 확인이 가능하다. 
# 현재 명령어로 설정된 기본 런 레벨 확인.
systemctl get-default

# 런 레벨이 설정된 경로 확인
ls -l /etc/systemd/system/default.target

# 런 레벨 변경 명령어
systemctl isolate multi-user / systemctl isolate runlevel5
런레벨 심볼릭 링크 (Target 파일) Target 원본 파일 기능 설명
0 runlevel0.target poweroff.target 시스템 종료(Halt)
1 runlevel1.target rescue.target 단일 사용자 모드(Single User Mode)
2 runlevel2.target multi-user.target 다중 사용자 모드(네트워크 활성화 없음)
3 runlevel3.target multi-user.target 다중 사용자 모드(네트워크 활성화, GUI 없음)
4 runlevel4.target multi-user.target 사용자가 정의 가능한 런레벨
5 runlevel5.target graphical.target 다중 사용자 모드(GUI 활성화)
6 runlevel6.target reboot.target 시스템 재부팅(reboot)

 

 

* init 명령어를 사용한 시스템 컨트롤

  • systemd를 사용해서 시스템을 종료하거나 재부팅 혹은 모드를 재설정할 수 있다. 
런 레벨 init 명령어 의미
0 init 0 시스템 종료.
1 init 1 단일 사용자 모드.
2 init 2 다중 사용자 모드.(네트워크 비활성)
3 init 3 다중 사용자 모드.(네트워크 활성, 텍스트 기)
4 init 4 사용자 정의 런레벨 (사용자에 따라 다름)
5 init 5 다중 사용자 모드 (GUI 환경)
6 init 6 시스템 재부팅 (reboot)

 

 

 

* 데몬 프로세스

  • systemd에서 d는 '데몬'을 의미한다. 앞서 이야기했지만 여기서 데몬은 영적인 존재를 의미하며 항상 보이지 않는 곳에서 존재한다는 뜻이다.
  • systemd 또한 보이지 않는 백그라운드에서 시스템 초기화 및 실행을 담당하고 있다.
  • [ 데몬의 동작 방식 ] 
    • 독자형
      • 시스템의 백그라운드에서 서비스별로 동작. 
      • 자주 호출되는 데몬이 아니라면 시스템 자원(메모)을 낭비할 우려가 있음.
      • ex) httpd, nginx, mysql
      • 호출 속도가 빠르며 독립적으로 실행된다.
    • 슈퍼데몬
      • 요청이 들어올 때마다 필요한 데몬을 동적으로 실행하는 역할
      • 자체적으로 계속 실행되지 않고, 요청에 따라 하위 프로세스(데몬)를 실행.
      • 보통 네트워크 서비스 관리를 담당.
      • ex) inetd(네트워크 요청을 감지. FTP, telnet, ssh 등..), xinetd(inetd의 세분화 버전)
    • 리눅스에서 자주 보이는 데몬들
데몬 설명
atd 특정 시간에 실행되도록 예약한 명령을 처리
crond 주기적으로 실행되도록 예약한 명령을 처리
dhcpd 동적으로 IP 주소를 클라이언트에 할당(DHCP서버에서 설정)
httpd 웹 서비스를 제공
lpd 프린터 서비스를 제공
nfs 네트워크 파일 시스템(NFS) 서비스를 제공
named DNS 서비스를 제공
sendmail 이메일 송신 서비스를 제공
smtpd 메일 전송 데몬으로, SMTP 프로토콜을 처리
popd POP3 프로토콜을 통해 기본 메일함 서비스를 제공
routed 자동 IP 라우터 테이블 관리를 제공(동적 라우팅 프로토콜 구현)
smb 삼바(Samba)를 통해 파일 및 프린터 공유 서비스를 제공(윈도우와 리눅스 간 파일 공유)
syslogd 로그 기록 서비스를 제공
sshd 원격 보안 접속(SSH) 서비스를 제공
inetd 여러 네트워크 서비스를 관리하는 슈퍼데몬 역할
ftpd FTP(파일 전송 프로토콜) 서비스를 제공
ntpd 네트워크 시간 동기화(NTP)를 제공

'운영체제 > Linux' 카테고리의 다른 글

15. yum 패키지 설치  (0) 2024.12.05
14. RPM 패키지 설치  (0) 2024.12.05
12. 리눅스 시스템의 부팅(1)  (0) 2024.11.30
11. 파일 시스템 검사하기  (1) 2024.11.29
10. 파일시스템 구축(LVM)  (0) 2024.11.27