[Linux] Amazon Linux 2023 rc.local 활성화

Amazon Linux 2023 에서 rc.local 기능을 사용하기 위해서는 아래와 같은 방법을 이용하면 사용이 가능합니다.

(1) /etc/rc.d/rc.local 파일을 생성합니다.
man page 를 확인하면 아래와 같이 기존에는 /etc/rc.local 이였지만 지금은 /etc/rc.d/rc.local 으로 변경된 것을 확인 할 수 있습니다.

$ man systemd-rc-local-generator
DESCRIPTION   
systemd-rc-local-generator is a generator that checks whether /etc/rc.d/rc.local exists 
and is executable, and if it is, pulls the rc-local.service unit into the boot process.
...
$ sudo vi /etc/rc.d/rc.local

(2) /etc/rc.d/rc.local 에 스크립트 내용을 추가합니다.
아래는 rc.local 에 대한 예제입니다.

#!/bin/bash
printf "rc-local for test." | logger -t test-rc-locald
printf "rc-local for test." | logger -t test-rc-locald
printf "rc-local for test." | logger -t test-rc-locald

(3) /etc/rc.d/rc.local 에 실행 권한을 추가합니다.

$ sudo chmod u+x /etc/rc.d/rc.local

(4) SELinux 를 사용한다면 아래 명령어로 Context 를 추가합니다.

$ sudo chcon -t initrc_exec_t /etc/rc.d/rc.local

(5) rc.local daemon 을 기동하고 rc.local 이 정상적으로 수행이 되는지 확인합니다.

$ sudo systemctl start rc-local

(6) 실행 예제

$ systemctl status rc-local
● rc-local.service - /etc/rc.d/rc.local Compatibility
     Loaded: loaded (/usr/lib/systemd/system/rc-local.service; static)
     Active: active (exited) since Wed 2023-10-11 00:00:09 UTC; 3s ago
       Docs: man:systemd-rc-local-generator(8)
    Process: 2548 ExecStart=/etc/rc.d/rc.local start (code=exited, status=0/SUCCESS)
        CPU: 8ms

Oct 11 00:00:09 chhanz.compute systemd[1]: Starting rc-local.service - /etc/rc.d/rc.local Compatibility...
Oct 11 00:00:09 chhanz.compute test-rc-locald[2550]: rc-local for test.  <<<---!!
Oct 11 00:00:09 chhanz.compute test-rc-locald[2552]: rc-local for test.  <<<---!!
Oct 11 00:00:09 chhanz.compute test-rc-locald[2554]: rc-local for test.  <<<---!!
Oct 11 00:00:09 chhanz.compute systemd[1]: Started rc-local.service - /etc/rc.d/rc.local Compatibility.

참고 자료

chhanz's profile image

chhanz

2023-10-11

Read more posts by this author