Last Updated on 2월 15, 2021 by 태랑(정현호)
0. rc.local
rc.local 은 부팅시 자동으로 실행 명령어나 스크립트를 수행하는 동작을 하며 OS 부팅시 마다 매번 자동으로 실행 되기를 원하는 명령어나 작업 스크립트를 파일에 입력하면 수행이 되게 됩니다.
부팅을 하면서 스크립트나 명령어를 자동으로 실행 하도록 하는 방법에는 여러가지가 있으며 그 중에서 가장 쉽게 빠르게 할 수 있는 방법이 /etc/rc.local 을 사용 하는 것이기도 합니다.
각 OS 마다 어느 버전 부터 해당 파일의 퍼미션과 서비스가 활성화가 기본적으로 되어 있지 않아서 사용 하기 위해서 아래의 작업이 선행 되어야 합니다.
• 포스팅 환경
CentOS: 7.9
우분투: 18.04
Fedora : 33
1. 파일 생성
• 우분투
파일을 생성 후 아래와 같이 입력 합니다.
user$ sudo vi /etc/rc.local #!/bin/bash touch /tmp/test
• 페도라
파일 생성 후 심볼릭 링크를 생성 합니다.
user$ sudo vi /etc/rc.d/rc.local #!/bin/bash touch /tmp/test user$ sudo ln -s /etc/rc.d/rc.local /etc/rc.local
• CentOS
파일이 생성 되어 있으므로 별도의 생성은 하지 않아도 됩니다.
user$ ls -al /etc/rc.local lrwxrwxrwx. 1 root root 13 Jun 17 2020 /etc/rc.local -> rc.d/rc.local user$ sudo echo "touch /tmp/test" | sudo tee -a /etc/rc.local
* touch /tmp/test 이부분은 서비스가 정상적으로 실행 되는지를 확인 해보기 위해서 추가한 내역으로 서비스가 정상적으로 실행되었고 /etc/rc.local 이 수행되었다면 /tmp 아래 test 라는 파일이 생성될 것입니다.
파일 생성 여부로 해당 작업의 정상 유무를 확인 할 수 있습니다.
2. 퍼미션 권한 부여
• 우분투
user$ sudo chmod 755 /etc/rc.local
• Fedora, CentOS
user$ sudo chmod 755 /etc/rc.d/rc.local
3. rc-local.service 파일 수정
3-1 파일 수정
공통 작업으로 rc-local.service 파일 맨 마지막에 [Install] 부분을 추가 합니다
user$ sudo vi /lib/systemd/system/rc-local.service [Install] WantedBy=multi-user.target
3-2 저장 후 reload 실행
user$ sudo systemctl daemon-reload
3-3 서비스 활성화,시작,상태 확인
user$ sudo systemctl enable rc-local user$ sudo systemctl start rc-local user$ sudo systemctl status rc-local
4. 테스트 파일 생성 여부 확인
4-1 파일 생성 여부 확인
user$ ls -al /tmp | grep test -rw-r--r-- 1 root root 0 Oct 20 15:28 test
4-2 touch 명령어 부분 삭제
user$ sudo vi /etc/rc.local touch /tmp/test <== 삭제합니다
이제 /etc/rc.local 파일에 명령어나 실행할 스크립트를 추가하게 되면 부팅시 실행이 되게 됩니다.
관련된 다른 글





Senior DBA(Mysql, Oracle) - 현재 위메프에서 많은 새로움을 경험중입니다
At WeMakePrice / Previous - Oracle Korea ACS Support / Fedora Kor UserGroup 운영중
Database 외에도 NoSQL , Linux , Cloud, Http/PHP CGI 등에도 관심이 있습니다
purityboy83@gmail.com / admin@hoing.io