리눅스 기초 명령어에 관한 포스트를 보다보면 콘솔을 종료할 때 사용하는 init 0, 재부팅할 때 사용하는 init 6과 같은 명령어를 볼 수 있다. 과연 init이란 무엇일까? init을 알기 위해서는 먼저 runlevel에 대해 알아야 한다.
runlevel은 시스템이 부팅된 후 운영 상태(ex. 종료 상태, 재부팅 상태, CUI..)를 의미한다. runlevel은 7가지로 구성되어 있는데 다음과 같다.
runlevel | 상태 | 비고 |
0 | Power off, 종료 모드 | |
1 | Rescue, 시스템 복구 모드(단일 사용자 모드) | |
2 | Multi-User | 사용하지 않음 |
3 | Multi-User | |
4 | Multi-User | 사용하지 않음 |
5 | Graphical, GUI 다중 사용자 모드 | |
6 | Reboot, 재부팅 |
initd(init daemon)은 프로세스 관리 및 runlevel을 관리하는 프로세스이다. RHEL 6(CentOS, Rocky도 같은 버전을 따라간다)까지 init을 사용했으나 RHEL 7부터는 initd가 systemd로 대체되었고, runlevel도 target이라는 개념으로 대체되었다. target은 runlevel과 유사하게 시스템의 특정 상태를 정의하고, 여러 유닛(daemon, 장치, 마운트..)을 그룹화하여 시스템의 전반적인 상태를 설정하는 더 세분화되고 유연한 개념이다. target은 runlevel과 호환되는데 각 단계 별 target과 runlevel을 매핑하면 다음과 같다.
target | runlevel | 설명 |
poweroff.target | 0 | 시스템 종료 |
rescue.target | 1 | 시스템 복구, 복구에 필요한 최소한의 서비스만 실행 |
multi-user.target | 3 | 명령어 모드(CUI)로 작업하는 다중 사용자 모드 |
graphical.target | 5 | GUI 환경을 시작하는데 필요한 서비스 포함 |
reboot.target | 6 | 시스템 재부팅 |
Linux 내 target 모드를 확인하기 위해서는 /lib/systemd/system 디렉토리의 runlevel?.target을 조회하면 된다.
현재 시스템의 Default target(GUI, CUI) 변경은 다음과 같은 명령어를 통해 할 수 있다.
# multi-user.target(Runlevel 3)로 변경
# systemctl set-default multi-user.target
---Output---
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
# reboot
# graphical.target으로 변경 (Runlevel 5)
systemctl set-default graphical.target
---Output---
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
# reboot
힘들지만 오늘도 한 발짝 나아간 나를 위한 한 마디,
"To follow, without halt, one aim. there's the secret of success", Anna Pavlova
"내가 이루고자 하는 바에 멈추지 말고 몰입하자"
'System > Linux' 카테고리의 다른 글
[Linux] 파일 시스템, 마운트 (0) | 2024.09.25 |
---|---|
[Linux] 저장소(Storage)관리 (5) | 2024.09.24 |
[Linux] 작업 예약 명령어: cron (2) | 2024.09.21 |
[Linux] DHCP (0) | 2024.09.21 |
[Linux] 도대체 프로세스가 뭐야?(프로세스 관리 명령어) (0) | 2024.09.19 |