systemctl이란?
- RHEL 7에 도입된 systemd를 관리하는 명령어이다.
- /usr/lib/systemd/system 디렉토리의 .service파일을 systemctl 명령어로 서비스를 제어할 수 있다.
Centos systemctl 과 service 명령어 차이점
service httpd start
vs systemctl start httpd
- 같은 동작을 수행한다 하지만 CentOS6버전 이하에서 service구문으로 사용한다. 이상은 systemctl
- systemctl 옵션 서비스명.service (.service는 생략가능)
기존 명령어와 비교 표
service | systemctl | 설명 |
service name start | systemctl start name.service | 서비스 시작 |
service name stop | systemctl stop name.service | 서비스 중지 |
service name restart | systemctl restart name.service | 서비스 재시작 |
service name condrestart | systemctl try-restart name.service | 서비스가 구동중이었을 경우에만 재시작 |
service name reload | systemctl reload name.service | 설정 재구동 |
service name status | systemctl status name.service systemctl is-active name.service |
서비스 구동 여부 확인 |
service name --status-all | systemctl list-units --type service -all | 모든 서비스의 상태 표시 |
서비스 상태확인하기
systemctl status service_name.service
서비스 시작, 중지, 재시작
systemctl start mariadb.service
systemctl stop service_name.service
systemctl restart service_name.service
부팅 시 자동 실행
systemctl enable service_name.service
부팅 시 자동 실행 X
systemctl disable service_name.service
현재 runlevel 보기
systemctl get-default
runlevel 변경하기
systemctl set-default multi-user.target //멀티유저(runlevel 3)
systemctl set-default graphical.target //그래피컬(runlevel 5)
서비스 목록 보기
systemctl list-units --type target
systemctl list-units --type target --all //활성화 되지 않은 타겟 목록 까지 보기
설치된 모든 unit 파일 보기
systemctl list-unit-files
재부팅 하지 않고 runlevel 변경
systemctl isolate graphical.target
systemctl isolate mult-user.target
시스템 복구등의 이유로 single user mode 로 진입
systemctl rescue
최소부팅
- 파일 시스템이 깨졌거나 single mode 로 진입 할 수 없을 때 (부팅시 최소 기능으로 부팅)
systemctl emergency
서비스 마스킹
- 동일한 용도의 또는 같은 서비스 사용시 충돌을 막음
systemctl mask service
systemctl start service
systemctl unmask service
서비스 보기(조건)
실행중인 서비스 보기
systemctl list-units --type=service --state=running
systemctl list-units --type=service
구동에 실패한 서비스 보기
systemctl list-units --state=failed
모든 active목록 보기
systemctl list-units --state=active
상태가 inactive인 목록 보기
systemctl list-units -all --state=inactive
특정 서비스가 active상태인지 보기 (==서비스상태보기)
systemctl is-active service
'IT > 리눅스' 카테고리의 다른 글
[명령어] mv (0) | 2020.07.02 |
---|---|
[리눅스] Xshell -> Centos7 접속하기 (0) | 2020.07.02 |
[에러] Peer's Certificate has expired (0) | 2020.07.01 |
[리눅스] 패키지 및 파이썬 모듈 설치 (0) | 2020.07.01 |
[에러] Cannot find a valid baseurl for repo: base/7/x86_64 (0) | 2020.07.01 |