systemd

SunChan Kwon·2024년 5월 29일
0

Linux

목록 보기
6/20

systemd

유저레벨엣 가장 먼저 실행되는 최상위 프로세스로 systemd가 거의 모든 프로세스 관리중
유닛이라는 단위를 통해 시스템 전반적인 관리
systemctl 명령어를 통해 유닛들의 상태 확인 및 제어

ps -ef

  • 프로세스 중 systemd 상태 확인
[root@rocky9 ~]# ps -ef | grep systemd
root           1       0  0 09:17 ?        00:00:02 /usr/lib/systemd/systemd text --switched-root --system --deserialize 31 
root         590       1  0 09:17 ?        00:00:00 /usr/lib/systemd/systemd-journald
root         591       1  0 09:17 ?        00:00:00 /usr/lib/systemd/systemd-udevd
root         706       1  0 09:17 ?        00:00:00 /usr/lib/systemd/systemd-logind
vagrant     1104       1  0 09:17 ?        00:00:00 /usr/lib/systemd/systemd --user
root        2986    1138  0 10:18 pts/0    00:00:00 grep --color=auto systemd

기능 및 특징

1. init 프로세스에 대한 호환성

init 프로세스에서 systemd로 대체되면서 init프로세스의 스크립트에 대한 호환성과 Run Level을 제한적 지원

2. systemd유닛 사용

프로세스의 관리를 위해 systemd 유닛별 분류

3. 시스템 부팅 시 서비스 병렬 시작

시스템 부팅 시 최소한의 서비스만 실행해 부팅 시간 단축
이후 서비스들은 병렬로 실행되며 이 때 Socket 기능이 사용됨

4. On-demand 서비스 실행

5. Snapshot 지원

6. 의존성 기반 서비스 제어로직 제공

7. Upstart 대체

8. CGroup 관리

9. systemctl을 사용한 사용자 정의 명령 미지원

10. systemd에 의해 실행된 서비스만 관리

11. 시스템 셧다운 시 실행중인 서비스만 중지

12. 서비스에 대해 5분의 timeout 적용

13. 소켓 기반 활성화

14. 버스 기반 활성화

15. 장치 기반 활성화

16. 경로 기반 활성화

17. 마운트 포인트, 자동 마운트 포인트 관리

18. 통합 로그 관리


systemd 유닛

위치

/etc/systemd/sytem : 시스템 관리자가 수동으로 생성 및 관리하는 유닛 저장
/run/systemd/system : 시스템이 런타임 상태일 때 임시로 유닛파일 저장
/usr/lib/sys-temd : 사용자가 패키지를 특정 유닛이 포함된 패키지를 설치하면 저장

구성

Unit, 유닛의 유형, Install 3개의 섹션으로 구성


systemctl

systemd 유닛 관리 명령

옵션설명
list-unit-files시스템에 설치된 모든 유닛 파일 목록 표시
start [unit]지정된 유닛을 시작
stop [unit]지정된 유닛을 중지
restart [unit]지정된 유닛을 재시작
enable [unit]부팅 시 지정된 유닛을 자동으로 활성화
disable [unit]부팅 시 지정된 유닛을 자동으로 비활성화
status [unit]지정된 유닛의 상태를 표시
daemon-reload유닛 파일 변경 사항을 다시 로드
is-active [unit]유닛이 현재 활성 상태인지 확인
is-enabled [unit]유닛이 부팅 시 자동으로 활성화되는지 확인

systemctl status

Description, 유닛파일 경로, 활성화 상태, 실행 및 보조상태, Documentation 옵션 지정 값, 유닛파일 주 PID, Cgroup 프로세스 목록, 로그 등 출력

0개의 댓글