리눅스 chkconfig
IT 위키
- 런레벨별로 서비스의 자동 시작 여부를 설정하고 확인하는 명령
- 경로 : /sbin/chkconfig
SysV init 기반 시스템(CentOS·RHEL 6 이하)에서 /etc/rc.d/rc[0-6].d/ 의 심볼릭 링크를 직접 만들지 않고 서비스의 부팅 시 자동 실행 여부를 관리하는 도구다. systemd 를 쓰는 배포판에서는 systemctl enable/disable 로 대체되었으나, 호환을 위해 명령은 남아 있다.
현재 실행 상태를 바꾸는 것이 아니라 다음 부팅 때의 시작 여부를 정한다. 지금 당장 시작·중지하려면 service 를 쓴다.
chkconfig [--list] [--type 유형] [서비스명] chkconfig [--level 런레벨] 서비스명 <on|off|reset> chkconfig --add 서비스명 chkconfig --del 서비스명
- --list : 서비스별 런레벨 0~6 설정 상태를 출력한다. 서비스명을 생략하면 전체를 보여 준다
- --level 런레벨 : 적용할 런레벨을 지정한다. 생략하면 기본값인 2,3,4,5 에 적용된다
- --add : 서비스를 chkconfig 관리 대상에 등록한다
- --del : 관리 대상에서 제거한다
- on / off : 해당 런레벨에서 자동 시작을 켜거나 끈다
- reset : 스크립트에 지정된 기본값으로 되돌린다
# 전체 서비스의 런레벨별 설정 확인 # chkconfig --list crond 0:해제 1:해제 2:활성 3:활성 4:활성 5:활성 6:해제 sshd 0:해제 1:해제 2:활성 3:활성 4:활성 5:활성 6:해제 # 특정 서비스만 확인 # chkconfig --list telnet # 재부팅 후에도 telnet 이 동작하도록 설정 # chkconfig telnet on # 런레벨 3, 5 에서만 켜기 # chkconfig --level 35 httpd on # 끄기 # chkconfig httpd off
xinetd 로 관리되는 서비스(telnet 등)에 chkconfig 서비스명 on 을 쓰면
/etc/xinetd.d/ 의 해당 설정에서 disable = no 로 바뀐다.
- ntsysv : 같은 일을 텍스트 메뉴 화면에서 처리한다(리눅스 ntsysv)
- service : 서비스를 지금 시작·중지·재시작한다
- systemctl : systemd 기반 시스템의 통합 관리 명령.
systemctl enable telnet이chkconfig telnet on에 대응한다
