데비안 및 우분투 최근 배포버전에서는 rc.local이 비활성화 되어있다. 

     

    따라서, 리눅스 부팅도중 어떠한 프로그램을 실행시키려면 rc-local 서비스를 활성화 하여야 한다. 

     

    1. 실행할 대상을 생성

    rc-local.service는 /etc/rc.local 파일을 열어서 실행하도록 설정되어있다. 따라서 다음과 같이 rc.local 파일을 생성한다.

     

    $ sudo cat > /etc/rc.local

    ----------------------------------------------------------------------

    #!/bin/sh

    <실행할 바이너리를 기록 - 가능하면 절대경로로 작성한다.>

    exit 0

    ----------------------------------------------------------------------

     

    그리고 소유권을 실행가능한 파일로 설정한다. 

    $ sudo chmod 755 /etc/rc.local

     

     

    2. rc-local.service 파일 수정

    서비스를 실행하기 위해서 rc-local.service 파일을 수정한다. 

    수정할 내용은 가장 마지막에 [Install] 항목이다. 

     

    $ sudo vim /lib/systemd/system/rc-local.service

    -----------------------------------------------------------------------

    ...생략...

    [Service]

    Type=forking

    ExecStart=/etc/rc.local start

    ...생략...

    GuessMainPID=no

    [Install]

    WantedBy=multi-user.target

     

    3. 서비스 실행

    1). 서비스 활성화

    $ sudo systemctl enable rc-local.service

     

    2) 서비스 시작

    $ sudo systemctl start rc-local.service

     

    3) 서비스 상태 확인

    명령을 확인하면 아래와 같이 Active에 Active(녹색)라고 표시되어야 한다. 만약 Failed라고 표시되었다면, 스크립트 또는 서비스 설정등에 문제가 있는 경우이다. 간혹 리부팅전에는 Failed등으르로 표시될 수 있는 서비스가 있으므로 가능하면 확인은 리부팅후 아래의 명령을 통해서 해보는 것이 좋다. 

     

    $ sudo systemctl status rc-local.service

    --------------------------------------------------------

    systemctl status rc-local.service
    ● rc-local.service - /etc/rc.local Compatibility
         Loaded: loaded (/lib/systemd/system/rc-local.service; enabled; vendor pres>
        Drop-In: /usr/lib/systemd/system/rc-local.service.d
                 mqdebian.conf
         Active: active (exited) since Tue 2021-04-13 03:21:27 KST; 13min ago
           Docs: man:systemd-rc-local-generator(8)
        Process: 371 ExecStart=/etc/rc.local start (code=exited, status=0/SUCCESS)
            CPU: 5ms

    Apr 13 03:21:27 imx systemd[1]: Starting /etc/rc.local Compatibility...
    Apr 13 03:21:27 imx systemd[1]: Started /etc/rc.local Compatibility.

     

     

     

    반응형
    • 네이버 블러그 공유하기
    • 네이버 밴드에 공유하기
    • 페이스북 공유하기
    • 카카오스토리 공유하기