본문 바로가기
  • 오늘도 한걸음. 수고많았어요.^^
  • 조금씩 꾸준히 오래 가자.ㅎ
IT기술/리눅스

centos 6버전과 7버전 명령어 비교

by 미노드 2021. 8. 4.

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

서비스 중지중인 서비스 나열하기
엄청나게 나올거다. 이걸로도 서비스 설치유무라던지 기타 활용가능한 것으로 보인다.