만약 서버가 꺼지거나, 어떤 문제로 인해 자동으로 reboot 되었을 때를 대비해 서버 reboot 시 자동으로 웹, 파일 서버가 실행되도록 설정해보려 합니다.
sudo systemctl enable nginx
명령어 설명
Nginx가 시스템이 부팅될 때 자동으로 시작되도록 설정합니다.
만약 이미 자동 시작이 설정되어 있다면 출력값이 없을것입니다.
결과값 확인
(1) systemctl enable nginx :
Nginx가 시스템 부팅 시 자동으로 시작되도록 설정되었음을 알려주는 메시지입니다.
(2) Synchronizing state :
시스템에서 SysV init 스크립트를 systemd와 동기화하고 있다는 의미입니다.
이는 Nginx가 올바르게 자동 시작되도록 설정되었다는 것을 나타내는 일반적인 메시지입니다.
sudo systemctl enable smbd
명령어 설명
Samba가 시스템 부팅 시 자동으로 시작되도록 설정합니다.
Nginx와 마찬가지로 이미 설정되어 있으면 아무런 출력값이 없을것입니다.
결과값 확인
(1) systemctl enable smbd :
Samba 파일 서버(smbd)를 시스템 부팅 시 자동으로 시작되도록 설정되었음을 알려주는 메시지입니다.
(2) Synchronizing state :
systemd와 SysV init 스크립트를 동기화하는 정상적인 과정이며, Samba가 자동으로 실행되도록 설정된 것을 의미합니다.
sudo reboot
sudo reboot 명령어를 통해 서버를 재시작해보았는데, 웹, 파일 서버 접속이 되지 않고 Raspberry Pi에"Failed to connect to https://changelogs.ubuntu.com/meta-release-lts. Check your Internet connection or proxy settings 라는 문구가 뜨며 ip가 연결되지 않는 오류가 발생하여 추가로 해결 방법을 작성합니다.
우선, 아래 명령어를 통해 라즈베리파이가 인터넷에 제대로 연결되어 있는지 확인합니다.
ping 8.8.8.8
저는
ping: connet: Network is unreachable**라는 결과값이 출력되었고, 정상적으로 작동되지 않아 다른 방법시도하였습니다.
sudo dhclient eth0 # 유선 연결 사용 시
sudo dhclient wlan0 # 무선 연결 사용 시
저는
sudo: dhclient: command not found라는 결과 값이 출력되었고 계속해서 IP 연결이 되지 않았다.
ifupdown 패키지를 설치하고, 이를 통해 네트워크 인터페이스를 관리할 수 있다고 하여 아래와 같은 방법을 진행해보았습니다.
sudo apt update
sudo apt install ifupdown
명령어 설명
‣ ifupdown :
네트워크 인터페이스를 관리하기 위한 도구 패키지입니다.
이 패키지를 설치하면 네트워크 인터페이스를 수동으로 활성화하고 IP 주소를 할당할 수 있게 됩니다.
설치된 후 네트워크 인터페이스를 수동으로 활성화 해본다.
sudo ifup eth0 # 유선 연결 사용 시
sudo ifup wlan0 # 무선 연결 사용 시
저는 "sudo apt install ifupdown" 오류메세지가 출력되면서 작동되지 않는 오류가 발생했습니다. (오류메세지를 확인하지 못했다...ㅜ)
Ubuntu Server는 netplan 이라는 네트워크 설정 도구를 사용하고, 이 도구를 통해 네트워크 인터페이스 설정을 확인하고 수동으로 수정할 수 있습니다.
sudo nano /etc/netplan/00-installer-config.yaml
명령어 설명
netplan 설정 파일을 열 수 있는 명령어입니다.
파일 형식은 .yaml 파일로, 네트워크 인터페이스 설정을 담고 있습니다.
명령어를 실행하면 빈 파일이 열리게 되며, 아래 내용을 추가하거나 이미 내용이 있다면 수정하면 된다.
# 유선 연결 사용 시
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: yes
# 무선 연결 사용 시
network:
version: 2
renderer: networkd
wifis:
wlan0:
dhcp4: yes
access-points:
"네트워크_이름":
password: "네트워크_비밀번호"
파일을 수정한 후, Ctrl + X, Y를 눌러 저장하고 종료합니다.
sudo netplan apply
ip a
Server Reboot시 웹, 파일 서버가 자동으로 켜지게 하는것이 목표였으므로 다시 한번 Server Reboot를 시도하여 정상적으로 적용되었는지 확인합니다.
# Nginx 서비스 상태 확인 명령어
sudo systemctl status nginx
# Samba 서비스 상태 확인 명령어
sudo systemctl status smbd
ssh user_name@ip_address
다음에는 Docker를 설치해보겠습니다.
