IT기술/Linux

7-1 데몬관리

dobbby 2013. 9. 11. 09:43
반응형

● 데몬 관리


  - 데몬(Daemon) : background 실행으로 동작되는 서비스 프로그램

    => 요청이 발생하면 요청에 대한 처리를 하기 위한 프로그램


    ex) httpd  :  아파치 웹서버 데몬 

          - 홈페이지파일(HTML, CSS, JavaScript)등을 요청하면 파일을 검색하여 전송하는 역활 


  - 데몬은 요청에 의한 실행방법에 standalone 방식과 xinetd 방식으로 구분한다.


  1. standalone 방식의 데몬

    => 요청에 의해 실행되기 위해 항상 메모리에 상주(실행)되어 있는 데몬

    => 요청에 대한 응답속도가 빠르다.

    => 메모리 효율이 좋지 않다.

    => standalone 방식의 데몬 제어 : 메모리 항상 상주되도록 background 실행 하거나 상주된 프로그램 삭제    


       ]# /etc/rc.d/init.d/데몬제어파일 [start|stop|restart] 

       또는 ]# service 데몬제어파일 [start|stop|restart]   


    => 부팅시 데몬을 자동 실행 유무 제어

       ]# chkconfig --list     =>  데몬의 종류 및 런레벨에 따른 자동 실행 유무 확인

       ]# chkconfig --list | grep sshd

       sshd            0:해제  1:해제  2:활성  3:활성  4:활성  5:활성  6:해제


       ]# chkconfig --level 24 sshd off  => sshd에 대해 2번,4번 런레벨일 경우 자동 실행되지 않도록 제어

         ※ on : 활성     off : 해제     reset : 초기화


       ]# chkconfig --list | grep sshd

       sshd            0:해제  1:해제  2:해제  3:활성  4:해제  5:활성  6:해제




       ※ 새로 설치된 데몬은 service 및 chkconfig 명령에 의해 제어되도록 만들어 주는 것이 좋다.        

          ]# cp 데몬제어파일 /etc/rc.d/init.d/데몬제어파일   =>  service 명령을 이용해 제어

          ]# chkconfig --add 데몬제어파일   => chkconfig 명령에 의해 부팅시 데몬 제어 


       ※ chkconfig 명령에 의해 부팅시 제어 불가능 데몬이 존재하는 경우


          ]# vi /etc/rc.d/rc.local   =>  모든 데몬을 실행후 마지막 실행되는 파일 

          데몬실행명령        =>   추가


  2. xinetd(슈퍼데몬) 방식의 데몬 

    => 사용자 의한 요청에 발생할 경우 xinted 프로그램이 해당 서비스을 

       분석하여 필요한 데몬을 메모리에 로드(실행)하여 응답하는 방식

    => 요청이 발생할 경우에만 실행되는 데몬

    => standalone 방식보다는 응답속도가 느리다.

    => 메모리 효율이 좋다.

    => xinted 방식의 데몬 제어 : 슈퍼데몬에게 데몬 실행 권한을 부여하거나 삭제


      ]# chkconfig --list   => xinetd 기반의 데몬 확인 및 제어권한 유무 확인 

      ...

      xinetd 기반의 서비스:

              chargen-dgram:  해제      =>  활성 : 데몬실행 권한 O     해제 : 데몬실행 권한 X

              .... 




      ]# vi /etc/xinetd.d/rsync      =>  데몬파일 : 제어권한 및 환경설정 관련 내용이 존재하는 파일

      service rsync

      {

           disable = no             =>  제어권한 부여 유무 :  yes - 해제    no - 활성

           socket_type     = stream

           wait            = no

           user            = root

           server          = /usr/bin/rsync

          server_args     = --daemon

      log_on_failure  += USERID

      }


      ]# service xinetd restart   =>  슈퍼데몬 재실행(환경설정 변경되었기 때문)

     

      ]# chkconfig --list | grep rsync

            rsync:          활성




반응형