centos 6버전부터 리눅스를 시작했는데, 그러다보니 service 와 systemctl 이 해깔리는 경우가 가끔씩 있다.
개발 작업을 하다가 가끔씩 리눅스를 쓰다보면 해깔린다.
명령어의 인자의 순서가 보통 그렇다. 그러니 사용법을 아예 비교해보자
기능 | centos 6 service | centos 7 systemctl |
시작 | service 서비스이름 start | systemctl start 서비스이름 systemctl start 서비스이름.service (.service 제거 가능) |
종료 | service 서비스이름 stop | systemctl stop 서비스이름 |
재시작 | service 서비스이름 restart | systemctl restart 서비스이름 |
재시작(서비스 구동중일경우) | service 서비스이름 condrestart | systemctl try-restart 서비스이름 |
설정 relode | service 서비스이름 relode | systemctl reload 서비스이름 |
상태 확인 | service 서비스이름 status | systemctl status 서비스이름 systemctl is-active 서비스이름 |
모든 서비스 상태확인 | service --status-all | systemctl list-units --type service --all |
* systemctl은 <TAB>키를 사용한 자동완성 기능을 지능적으로 제공 한다. 예를 들면 systemctl start <TAB>키를 누르면 시작되지 않은 유닛들을 기준으로 자동완성 또는 유닛 리스트를 보여주고, systemctl stop <TAB>키를 누르면 시작된 유닛들을 기준으로 자동완성 또는 유닛 리스트를 보여준다.
* systemctl은 service와 달리 정해진 서비스 명령어외의 사용자 명령어는 제공하지 않는다. 예를 들면 Apache의 설정내역을 테스트하기 위한 configtest 등의 명령은 호환되지 않는다.
부팅 시 서비스 자동시작 여부를 설정하기 위해 사용하는 chkconfig와 systemctl의 명령을 비교해 보자.
기능 | centos 6 chkconfig | centos 7 systemctl |
자동시작 설정 | chkconfig 서비스이름 on | systemctl enable 서비스이름 |
자동시작 취소 | chkconfig 서비스이름 off | systemctl disable 서비스이름 |
서비스 자동시작 여부 확인 | chkconfig --list 서비스이름 | systemctl is-enabled 서비스이름 |
모든 서비스 자동시작 여부 확인 | chkconfig --list | systemctl list-unit-files --type service |
) 예시 -----------------------
# systemctl list-unit-files --type service | grep enabled
사진의 결과에선 enable 활성화된 서비스들이 .service로 끝나는 것을 알 수 있다.
이는 systemctl enable 서비스이름.service 로도 적용되는것이며, 입력상 편의를 위해 .service를 생략해도 그대로 동작하도록 준비되어 있는 것이다.
# systemctl list-units --type service -a | grep -w inactive
서비스 중지중인 서비스 나열하기
엄청나게 나올거다. 이걸로도 서비스 설치유무라던지 기타 활용가능한 것으로 보인다.
'IT기술 > 리눅스' 카테고리의 다른 글
tomcat에서 appBase 설정, 웹 파일 위치 설정 (0) | 2021.08.06 |
---|---|
centos7 리눅스 자바 수동 설치하기 (0) | 2021.08.05 |
centos 7 시간 동기화 ntp로 적절한 시간 맞추기 (0) | 2021.08.04 |
yum이 패키지를 찾지 못할때 (0) | 2021.08.04 |
리눅스마스터 1급 2회차 기출문제 모음 (0) | 2021.03.23 |