강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

부팅시 자동시작할 서비스를 설정하는 ntsysv 활용법

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

부팅시 자동시작할 서비스를 설정하는 ntsysv 활용법

 

 

 

 

 

이번강좌에서는 ntsysv에 대해서 자세히 알아보도록하자. 한가지 미리 알아두어야 할 사항은 지금 설명할 ntsysv와 이어서 설명하는 chkconfig는 방법이 조금 다를 뿐 목적하는바가 같은 것이다.

 

 

 

 

 물론 사용방법과 실행결과에 조금씩의 차이는 있으나 부팅시에 자동실행할 서비스들을 관리한다는 점에서 같은 목적을 가진 도구라고 할 수 있다.

 

 

 

 

 또한 이 두가지는 런레벨에 따른 자동실행 서비스들을 설정하는 역할에 대하여 상호 보완적이라고도  할 수 있다.

 

 

 

 

 참고로 리눅스서버를 GUI환경(GNOME, KDE환경)에서 사용하고 있다면 “system-config-services”를 실행하면 동일하게 사용할 수 있다.

 

 

 

 

 함께 기억해두면 좋다.

 

 

 

 

 

 

먼저 ntsysv에 대해서 알아보자.  ntsysv는 리눅스의 부팅시 각 부팅레벨에 따라서 실행시키거나 실행시키지 않을 서비스들을 설정하는 유틸리티이다.

 

 

 

 

  0번부터 6번까지의 시스템부팅레벨에 따라서 부팅시에 자동실행 할 여러가지 서비스들에 대한 실행 여부를 설정할 수 있다.

 

 

 

 

 이 유틸리티는 /usr/sbin/ntsysv를 실행하면 실행이 되지만 setup유틸리티를 실행하여 System services항목을 선택하여 실행을 할 수도 있다.

 

 

 

 

 

 

ntsysv를 실행하면 다음과 같이 “Services”설정창이 뜨게 된다.

 

 

 

 

  이 시스템서비스 설정 유틸리티 프로그램의 위치는 /usr/sbin/ntsysv이며 이 명령어는 시스템 부팅시에 자동실행할 여러가지 서비스들에 대해 설정하는 것이 목적이다.

 

 

 

 

 

 

5a35fe4d7c6fa1b56d210893a7859e46_1687850926_4157.png
 

 

 

 

 

 

위와같이 ntsysv를 실행한 후에 각 서비스의 앞에 있는 [ ]탭을 빈 공란으로 두면 해당 서비스를 부팅시 시작하지 않는다.

 

 

 

 

  반대로 [*]와 같이 해당서비스를 선택해두면 부팅시에 그 서비스를 자동실행한다.

 

 

 

 

 결론적으로 현재의 부팅레벨에서 리눅스에서 제공하는 위의 서비스들을 부팅시에 자동시작하려면 [*]를 해두면 된다.

 

 

 

 

 참고로 현재 부팅레벨이 몇 번인가를 확인하려면 쉘프롬프트에서 “runlevel”을 실행하면 된다.

 

 

 

 

 

앞의 화면을 보면 ntsysv실행결과로서 선택할 수있는 여러개의 서비스들이 나열되어있다.

 

 

 

 

 여기서 중요한 것은 이들 각각의 서비스들이 어떤 서비스인가를 알아야만 선택을 할 것인가? 또는 선택하지 않을 것인가?를 결정할 수 있다는 점이다.

 

 

 

 

 

 

그리고 또한 개별서비스들에 간략한 도움말을 ntsysv실행창에서 확인할 수 있다.

 

 

 

 

 즉 위의 여러가지 서비스들에 대한 간단한 설명을 보려면 F1키를 눌러보자. 

 




5a35fe4d7c6fa1b56d210893a7859e46_1687850938_8945.png
 

 

 

 

 

 

위의 예는 ntsysv가 실행된 창에서 “httpd”서비스에 대한 간단한 설명을 보기 위하여 httpd항목에 커서를 위치하고 F1키를 누른 결과 httpd서비스에 대한 간략한 도움말이 출력된 것이다.

 

 

 

 

 “The Apache HTTP Server is an extensible server”라는 문구를 보면서~~, 이 서비스는 이런 서비스를 하는구나!”라고 알 수 있을 것이다.

 

 

 

 

 결론적으로 어떤 서비스를 선택해야하는가에 대한 힌트 또는 도움을 각 항목에서 F1키를 눌러봄으로써 알 수 있다는 것을 말하고 있다.

 

 

 

 

 

 

다음은 특정 런레벨에서 부팅시에 자동실행할 서비스를 설정하기 위해 ntsysv를 실행하는 방법이다.

 

 

 

 

 앞에서 ntsysv를 실행하였을 경우에 현재 부팅레벨로 다시 부팅할 경우에 자동 실행할 서비스들을 설정하는 것이었다면 다음 예는 현재 런레벨이 어떤 것인가와는 무관하게 시스템관리자가 원하는 특정 런레벨로 부팅이 될 때에 자동실행 할 서비스들을 설정할 수있는 방법이있어야 할 것이다.

 

 

 

 

 

 

[root@sulinux ~]# ntsysv --level 3

 

 

 

 

위의 예는 현재 시스템이 어떤 런레벨로 부팅되었는가는 상관없이 다음에 시스템이 3번 런레벨로 부팅될 때에 자동실행하도록 할 서비스들을 설정할 수 있다.

 

 

 

 

 

 

마찬가지로 만약 현재 런레벨과 상관없이 이후에 런레벨 5번으로 시스템이 부팅될 때에 자동실행할 서비스들을 선택하려면 다음과 같이 하면된다.

 

 

 

 

 

 

[root@sulinux ~]# ntsysv --level 5

 

 

 

 

즉 이번절에서 설명한 것은 현재 시스템이 어떤 런레벨로 부팅이 되었는가는 상관없이 시스템관리자가 원하는 특정 런레벨로 부팅할 경우에 자동실행하도록 할 서비스들을 선택하는 방법에 대해서 알아보았다.

 

 

 

 

 

 

이번에는 동시에 여러개의 런레벨에서 부팅시 자동실행할 서비스 설정하기 위한 ntsysv를 실행하는 방법에 대한 설명이다.

 

 

 

 

  앞의 예에서는 특정 런레벨로 부팅할 때에 자동실행 할 서비스를 선택하는 방법에 대해서 알아보았다.

 

 

 

 

 그렇다면 동시에 여러개의 런레벨에서 자동실행할 서비스들을 선택하는 방법은 없을까?

 

다음과 같이 ntsysv를 실행하면 한번의 설정으로 3번 런레벨과 5번 런레벨 모두에서 동일한 설정을 할 수 있다.

 

 

 

 

 

 

[root@sulinux ~]# ntsysv --level 35

 

 

 

 

즉 위의 설정으로 선택된 서비스들은 3번 런레벨과 5번 런레벨로 부팅이 될 때에 모두 자동으로 실행된다.

 

 

 

 

 

 

그리고 만약 0, 1, 6번 런레벨에서 동일한 설정을 하려면 다음과 같이 하면된다.

 

 

 

 

 

 

[root@sulinux ~]# ntsysv --level 016

 

 

 

 

또한 다음과 같이 하면 2, 3, 4, 5번 런레벨에서 동일한 설정을 할 수 있다.

 

 

 

 

 

 

[root@sulinux ~]# ntsysv --level 2345

 

 

 

 

ntsysv를 위와같이 실행한 후에 선택된 서비스들은 2, 3, 4, 5번 런레벨로 부팅이 될 때에 자동으로 실행된다.

 

 

 

 

 

 

 


관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,035 명
  • 현재 강좌수 :  35,798 개
  • 현재 접속자 :  122 명