본문 바로가기
Linux

Linux 시작 프로그램 관리: chkconfig 개념과 사용 방법

by 정권이 내 2024. 11. 14.

Linux에서 시작 프로그램 관리: chkconfig 개념과 사용 방법

이 글에서는 리눅스 시스템에서 서비스의 시작 프로그램을 관리하는 명령어 chkconfig의 개념과 사용 방법을 안내합니다.

chkconfig는 시스템 시작 시 자동으로 실행되는 서비스와 데몬을 효율적으로 제어할 수 있게 해주는 명령어로, 리눅스 서버 관리에 유용하게 활용됩니다.

 

chkconfig란?

chkconfig는 주로 Red Hat 계열의 리눅스 배포판(CentOS, Fedora 등)에서 사용되며, 부팅 시 특정 서비스가 자동으로 실행되도록 설정하는 도구입니다. 이를 통해 시스템 시작 시 자동 실행되는 데몬과 서비스를 제어하여 시스템의 성능을 최적화할 수 있습니다.

리눅스 시스템은 부팅 시 특정 런레벨(runlevel)에 따라 다양한 서비스와 데몬을 실행합니다. chkconfig는 서비스가 어떤 런레벨에서 자동으로 시작되고 중지될지 관리합니다. 대표적인 런레벨은 다음과 같습니다.

  • 런레벨 0: 시스템 종료
  • 런레벨 1: 단일 사용자 모드
  • 런레벨 3: 네트워크를 포함한 다중 사용자 모드 (GUI 없음)
  • 런레벨 5: 다중 사용자 모드 (GUI 포함)
  • 런레벨 6: 시스템 재부팅

chkconfig는 이러한 런레벨에서 실행될 서비스를 지정함으로써 시스템의 시작 프로그램을 관리하는 중요한 역할을 합니다.

 

chkconfig 설치하기

대부분의 CentOS와 RHEL 계열 시스템에는 chkconfig가 기본적으로 설치되어 있지만, 설치되어 있지 않은 경우에는 yum을 통해 설치할 수 있습니다.

sudo yum install chkconfig

 

설치가 완료되면 chkconfig 명령어가 사용 가능한지 확인합니다.

chkconfig --version

 

chkconfig 사용 방법

 

서비스 목록 확인

chkconfig 명령어로 현재 시스템에 등록된 모든 서비스와 각 서비스의 런레벨별 상태를 확인할 수 있습니다.

chkconfig --list

 

이 명령어는 각 서비스가 어떤 런레벨에서 시작 또는 중지되도록 설정되어 있는지 보여줍니다. 특정 서비스만 확인하고 싶다면 서비스 이름을 지정할 수 있습니다.

chkconfig --list 서비스이름

 

서비스 자동 시작 설정하기

chkconfig 명령어를 사용해 특정 서비스를 시스템 시작 시 자동으로 실행되도록 설정할 수 있습니다.

chkconfig 서비스이름 on

이 명령어는 기본적으로 런레벨 2, 3, 4, 5에서 서비스가 자동으로 시작되도록 설정합니다.

 

서비스 자동 시작 해제하기

서비스가 시스템 시작 시 자동으로 실행되지 않도록 설정하려면 off 옵션을 사용합니다.

chkconfig 서비스이름 off

이 명령어는 지정된 서비스가 부팅 시 자동으로 실행되지 않도록 설정합니다.

 

특정 런레벨에서 서비스 설정하기

서비스가 특정 런레벨에서만 실행되도록 설정하고 싶다면 --level 옵션을 사용합니다.

chkconfig --level 런레벨 서비스이름 on

 

예를 들어, 서비스가 런레벨 3에서만 실행되도록 설정하려면 다음과 같이 입력합니다.

chkconfig --level 3 서비스이름 on

 

chkconfig 설정 확인 및 적용

chkconfig 명령어로 설정한 내용은 다음 부팅부터 적용됩니다.

현재 설정을 즉시 적용하려면 service 명령어를 통해 해당 서비스를 수동으로 시작하거나 중지할 수 있습니다.

sudo service 서비스이름 start
sudo service 서비스이름 stop
반응형

댓글