systemd 와 sysVinit

” CentOS 7부터 유닉스, 리눅스에서 사용하던 전통적인 서비스 실행 스크립트(시스템의 부팅을 관장하는 프로그램) sysVinit 가 systemd 로 대체 되었습니다. systemd 를 둘러싼 논란이 많지만 레드햇뿐만 아니라 데비안계열도 systemd 를 수용하는 것으로 가닥을 잡은것 같습니다. 여기서는 systemd 관리방법과 몇가지 비교의 글을 작성했습니다.

Systemd is the new system and service manager for Linux. It is a replacement for init system and can manage system startup and services. It starts up and supervises the entire system.“

systemd


1. systemd 관련 명령어 정리
1) 실행중인 서비스 보기

2) 서비스 [시작/중지/재시작/상태출력]

3) 서비스Kill

4) 부팅 시 자동실행/비활성화

5) 서비스 의존성과 order 확인

6) Failed units 출력

7) 원격 시스템

8) 시스템 부팅시간 분석

9) systmed 로깅
systemdjournald라는 로깅 시스템을 포함하여 SysVinit의 syslog 데몬을 대체합니다. journalctl 명령어로 로그를 읽을 수 있습니다.


2. systemd 과 init 비교
 1) CentOS 6.x PID 값 1 은 init, CentOS 7 의 PID 값 1 은 systemd

2) VM 에서 CentOS 6.5는 부팅시간 27.4 초 소요되었으며 CentOS 7은 13.5 초 소요.
환경에 따라 차이가 있겠지만 순차적으로 부팅을 하는 init 에 비해 의존성 있는 서비스끼리 묶어 병렬로 동시에 실행하는 systemd 방식히 훨씬 더 빠른 부팅속도를 보입니다.

3) 스크립트 저장 디렉토리
sysVinit 의 경우 /etc/rc.d/init.d 디렉토리에 있으며,
systemd 의 경우 바이너리 실행파일은 /lib/systemd 에 있고 service 와 target 는 /lib/systemd/system 디렉토리에 있습니다.

4) 상태출력
init 는 서비스의 실행상태 정도의 최소 정보만 출력한다면 systemd 는 시작시간, CGroup, 상태로그 등 상세한 내용을 확인할 수 있습니다.

참조
1) 사용법 및 설명 참고
http://en.wikipedia.org/wiki/Systemd

Awesome ! systemd Commands to Manage Linux System


http://www.slideshare.net/enakai/systemd-study-v14e
http://www.slideshare.net/ienvyou/about-rhel7-systemd
http://lunatine.net/about-systemd/
http://www.smallake.kr/?p=18029

2) systemd 기사
http://www.zdnet.co.kr/news/news_view.asp?artice_id=20140217092543

3) systemd 반대기사
http://www.itworld.co.kr/news/89336
http://www.itworld.co.kr/news/91168

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다

This site uses Akismet to reduce spam. Learn how your comment data is processed.