728x90
CentOS 7에서 rc-local(rc.local) 서비스를 활성화하는 방법
CentOS 7에서는 rc.local 스크립트가 기본적으로 비활성화되어 있습니다. 그러나 필요한 경우 이를 활성화할 수 있습니다. rc.local 스크립트는 시스템 부팅 시에 자동으로 실행되는 사용자 정의 스크립트입니다.
테스트 환경
- 운영체제 버전 정보 확인
$ cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
- rc.local 서비스 상태 확인
$ sudo systemctl status rc-local.service
● rc-local.service - /etc/rc.d/rc.local Compatibility
Loaded: loaded (/usr/lib/systemd/system/rc-local.service; static; vendor preset: disabled)
Active: inactive (dead)
- rc.local 파일 확인
cat /etc/rc.local
#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.
touch /var/lock/subsys/local
- /etc/rc.local 실행 권한 확인
ls -l /etc/rc.local
$ ls -l /etc/rc.local
lrwxrwxrwx. 1 root root 13 Oct 23 13:39 /etc/rc.local -> rc.d/rc.local
/etc/rc.local 스크립트가 없으면 생성
더보기
---
rc.local 스크립트 생성
sudo vim /etc/rc.local
#!/bin/bash
# 여기에 명령어나 스크립트를 추가하세요
/경로/스크립트.sh
명령어1
명령어2
exit 0
(또는)
printf '%s\n' '#!/bin/bash' 'exit 0' | sudo tee -a /etc/rc.local
rc.local 파일에 실행 권한 부여
sudo chmod +x /etc/rc.local
---
728x90
1. rc.local 파일에 실행 권한 부여
sudo chmod +x /etc/rc.d/rc.local
2. rc-local.service 파일 편집
/usr/lib/systemd/system/rc-local.service 파일 확인
cat /usr/lib/systemd/system/rc-local.service
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
# This unit gets pulled automatically into multi-user.target by
# systemd-rc-local-generator if /etc/rc.d/rc.local is executable.
[Unit]
Description=/etc/rc.d/rc.local Compatibility
ConditionFileIsExecutable=/etc/rc.d/rc.local
After=network.target
[Service]
Type=forking
ExecStart=/etc/rc.d/rc.local start
TimeoutSec=0
RemainAfterExit=yes
에디터에서 다음 내용을 추가합니다.
sudo vim /usr/lib/systemd/system/rc-local.service
[Install]
WantedBy=multi-user.target
파일을 저장하기 위해 Shift + zz를 누르고 저장한 후 텍스트 편집기를 종료합니다.
3. rc-local.service를 활성화하기 위해 다음 명령어를 실행합니다.
sudo systemctl enable rc-local.service
sudo systemctl start rc-local.service
4. rc-local.service 서비스 상태 확인
systemctl status rc-local.service
$ systemctl status rc-local.service
● rc-local.service - /etc/rc.d/rc.local Compatibility
Loaded: loaded (/usr/lib/systemd/system/rc-local.service; enabled; vendor preset: disabled)
Active: active (exited) since Tue 2023-10-24 14:28:40 KST; 11min ago
Process: 1570 ExecStart=/etc/rc.d/rc.local start (code=exited, status=0/SUCCESS)
Oct 24 14:28:40 localhost.localdomain systemd[1]: Starting /etc/rc.d/rc.local Compatibility...
Oct 24 14:28:40 localhost.localdomain systemd[1]: Started /etc/rc.d/rc.local Compatibility.
5. rc-local 로그 확인
rc.local 스크립트의 로그를 확인하려면 /var/log/rc.local 파일을 검토합니다.
참고로, rc.local 스크립트는 시스템 부팅 시에 실행되며 종료 상태를 반환하지 않으면 부팅 프로세스가 차단될 수 있으므로 주의가 필요합니다. 필요한 작업을 신중하게 추가하십시오.
728x90
'리눅스' 카테고리의 다른 글
[리눅스] MySQL 5.7에서 마스터-슬레이브(Master-Slave) 구성을 설정하는 방법 (0) | 2023.05.20 |
---|---|
MySQL 서버에서 UUID 확인하는 방법 (0) | 2023.05.20 |
우분투에서 IP 주소를 고정하는 방법 (0) | 2023.05.20 |
[draft] 우분투에 MySQL 5.7을 바이너리 파일로 설치하는 방법 (0) | 2023.05.19 |
MySQL MHA(Master High Availability) 설치 및 구성하기 (0) | 2023.05.19 |