CentOS7에서 서비스 관리 방법이 바뀌었다!

2578 단어 centos7systemd

소개



CentOS7이 되어 서비스가 관리하는 시스템이 "System V계의 init"에서 "Systemd"로 바뀌었기 때문에 지금까지와 같이 /etc/rc.d/init.d/sshd restart를 실행할 수 없게 되었습니다.

Systemd에서 서비스를 관리할 수 있게 하기 위해 내가 사용하는 명령을 중심으로 정리해 나갑니다.
※덧붙여서, service 커맨드는 지금까지대로 사용할 수 있는 모양(systemctl에 리다이렉트 하고 있지만).

서비스 시작 및 종료



지금까지 /etc/rc.d/init.d/sshd restart 했던 sshd의 재부팅은 systemctl restart sshd.service입니다.

조사하고 있으면 systemctl restart sshd 라고 써 있는 곳도 있습니다만, 1번 마지막 인수는 Unit명을 넣는 것이 되어 있으므로, 서비스명이 아니라 Unit명인 "sshd.service"를 지정 해야 한다.
(Unit에 대해서는 Google 교사에게 물어보십시오)

서비스의 기동은 systemctl start sshd.service, 종료는 systemctl stop sshd.service 와, systemctl와 Unit명의 사이에 하고 싶은 것을 넣으면 OK입니다. reload에 대해서는 Unit에 기재되어 있으면 사용할 수 있다는 것.

서비스 목록 및 자동 시작 설정 확인



서비스의 자동 기동 설정을 확인할 때 사용하고 있던 chkconfig --list 는, systemctl list-unit-files -t service 가 된다.
사실이라면 systemctl list-unit-files 가 대비적으로는 옳습니다만, 나의 경우 서비스만을 신경쓰고 사용한다고 생각하기 때문에, "-t service"를 붙이고 있습니다.

STATE가 enabled로 되어 있는 것이 자동 기동 유효의 서비스. disabled 는 자동 기동 무효. static은 단독으로 자동 기동 설정을 할 수 없는 서비스가 된다.


또한 개별적으로 확인하고 싶은 경우는 systemctl status sshd.service로 하면 확인할 수 있다.
"Loaded:"가 출력되고 있는 행의 제일 마지막에 쓰여진 enable 또는 disable로 판별할 수 있습니다.
이 명령을 사용하면 다른 서비스의 상태 등을 확인할 수 있습니다.


자동 시작 설정


chkconfig sshd on에 해당하는 자동 시작 활성화는 systemctl enable sshd.service입니다.chkconfig sshd off에 해당하는 자동 기능 비활성화는 systemctl disable sshd.service입니다.

Log 출력 방법



SystemV계의 init에서는, "/var/log"하하에 rsyslog 경유로 토해지고 있던 log가, systemd에서는 바이너리로 보존되므로 "journalctl"를 사용해 보게 된다.

사용법은 journalctl -u sshd.service입니다.
그 밖에도, "-b"를 붙이면, 최근의 기동으로부터의 로그만으로 하거나, "-k"를 붙여 dmseg와 같은 내용으로 하거나(에러가 빨갛게 나오게 되어 있으므로 알기 쉽게 되어 있다) , "-f"를 붙여 tail -f 와 같이 실시간으로 표시할 수 있도록(듯이), 그 나름대로 옵션이 있습니다.

결론



내가 사용하는 만큼은 이런 느낌이겠지요.
그 밖에도 Systemd가 되어 변경이 되고 있는 개소가 있습니다만, 이번은 픽업 하지 않습니다. Google 교사에게 물어보세요.

좋은 웹페이지 즐겨찾기