반응형

 


테스트 및 작성일: 2023년 11월 29일

 

Ubuntu에서 rc.local 초기화 스크립트 활성화하기

 


테스트한 날짜:  2023년 2월 20일

테스트에 사용한 OS:
  - Ubuntu 22.04 
  - CentOS7.9

 

##
##  이해를 돕기 위해 eth0 NIC 포트에 IP address를 설정하는 예시를 들었다.
##

$  sudo -s

$  cat  /etc/rc.local

#!/bin/bash

ifconfig eth0 10.10.2.5/24

route add -net 10.10.2.0/24 gw 10.10.2.1

exit 0

$  chmod +x /etc/rc.local


##
## rc-local.service 설정 파일의 마지막 줄에 [Install] 섹션을 추가한다.
##

$  cat  /lib/systemd/system/rc-local.service
... 중간 생략 ...

[Install]                      ## 이 내용을 추가
WantedBy=multi-user.target     ## 이 내용을 추가
$

##
## 위에서 변경한 내용을 반영하기 위해 데몬을 reload하고, rc-local 서비스를 기동한다.
##

$  systemctl daemon-reload

$  systemctl enable --now rc-local

$  systemctl status rc-local

##
##  잘 설정되었는지 확인하기 위해 OS를 reboot하고, eth0 포트의 IP address 값을 확인한다.
##

$  reboot

... 중간 생략 ...

$  hostname -I

10.10.2.5

$

 

 

 

 

CentOS 7.9 에서 rc.local 초기화 스크립트 활성화하기

CentOS의 rc.local  파일은 /etc/rc.d/rc.local 파일의 Symbolic Link라는 점에서 Ubuntu와 약간 차이가 있다.

이 부분만 주의해서 아래 예제를 따라하면 잘 동작한다.

 

##
##  이해를 돕기 위해 eth0 NIC 포트에 IP address를 설정하는 예시를 들었다.
##

$  sudo -s

$  cat  /etc/rc.local

#!/bin/bash

ifconfig eth0 10.10.2.5/24

route add -net 10.10.2.0/24 gw 10.10.2.1

exit 0

$  chmod 755 /etc/rc.d/rc.local


##
## rc-local.service 설정 파일의 마지막 줄에 [Install] 섹션을 추가한다.
##

$  cat  /lib/systemd/system/rc-local.service
... 중간 생략 ...

[Install]
WantedBy=multi-user.target
$

##
## 위에서 변경한 내용을 반영하기 위해 데몬을 reload하고, rc-local 서비스를 기동한다.
##

$  systemctl daemon-reload

$  systemctl enable --now rc-local

$  systemctl status rc-local

##
##  잘 설정되었는지 확인하기 위해 OS를 reboot하고, eth0 포트의 IP address 값을 확인한다.
##

$  reboot

... 중간 생략 ...

$  hostname -I

10.10.2.5

$

 

 


 

'Ubuntu' 카테고리의 다른 글

KVM의 VM에서 Hugepage 사용하기  (0) 2022.01.13
PCI passthrough on Ubuntu + KVM  (0) 2022.01.12
추가 장착한 Disk Mount  (0) 2021.12.28
Root 계정의 SSH 로그인 허용  (0) 2021.12.28
Install BIND for name server(DNS) on Ubuntu 22.04  (0) 2021.11.05
반응형

CentOS 8에서 특정 Network port, NIC에 대해 IP address를 설정하려면, 

'/etc/sysconfig/network-scripts/ifcfg-*' 설정 파일을 작성해야 한다.

 

예를 들어, ens3 network interface를 설정하려면 아래와 같이 설정 파일을 작성해야 한다.

# /etc/sysconfig/network-scripts/ifcfg-ens3

. . .
BOOTPROTO="dhcp"                             # 고정 IP 설정을 위해 none으로 설정
. . .
IPV6INIT="no"
IPV6_AUTOCONF="no"
IPV6_DEFROUTE="no"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
. . .
ONBOOT="yes"                        # 부팅 / 네트워크 재시작 시 자동 활성화를 위해 yes로 설정
IPADDR=10.10.12.30                  # IP 설정
NETMASK=255.255.255.0               # 서브넷 마스크 설정, prefix=24 설정으로 대체할 수도 있습니다.
GATEWAY=10.10.12.1                  # 게이트웨이 설정 
DNS1=10.10.12.40                    # 1차 네임서버 설정, /etc/resolv.conf 설정파일에서 정의하셔도 됩니다.
DNS2=1.1.1.1                        # 2차 네임서버 설정

 

위 설정 파일을 저장하고 NetworkManager를 재시작한다.

$  systemctl restart NetworkManager

'CentOS' 카테고리의 다른 글

CPU Pinning 예제 코드  (0) 2022.06.17
Install Ansible AWX (version 17.1.0)  (0) 2021.11.16
How to use Ansible and Playbook  (0) 2021.11.12
Install OS with PXE and kickstart  (0) 2021.11.12
Samba(SMB) on CentOS  (0) 2021.07.10

+ Recent posts