著者:麻生 二郎
小型コンピュータボードの最上位モデルである「Raspberry Pi 4 Model B」の2G/4G/8Gバイト版と、人気のLinuxディストリビューション「Ubuntu」のサーバー版を組み合わせて、本格的なサーバーを構築しましょう。本特集では、サーバーをインターネットに公開する方法を紹介します。
シェルスクリプトマガジン Vol.79は以下のリンク先でご購入できます。
図A3 ラズパイサーバーの初期設定(ubuntu_init1.sh)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
#!/bin/sh ##日本のタイムゾーン設定 sudo timedatectl set-timezone Asia/Tokyo ##全ソフトウエア更新 sudo apt update sudo apt -y upgrade sudo apt -y autoremove sudo apt clean ##ファームウエアアップデート sudo apt -y install rpi-eeprom sudo rpi-eeprom-update ##完了後の再起動 read -p "再起動しますか [y/N]:" YN if [ " $YN" = " y" ] || [ " $YN" = " Y" ]; then sudo reboot fi |
図A4 ラズパイサーバーの初期設定(ubuntu_init2.sh)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
#!/bin/sh ##固定IPアドレスとルーターのIPアドレス IP_ADDRESS="192.168.10.100" ROUTER_IP="192.168.10.1" ##旧設定バックアップ mkdir -p ~/old_settings sudo mv /etc/netplan/50-cloud-init.yaml ~/old_settings/. ##新ネットワーク設定作成 cat << EOF | sudo tee /etc/netplan/50-cloud-init.yaml > /dev/null network: ethernets: eth0: dhcp4: false addresses: [ip_address/24] gateway4: router_ip nameservers: addresses: [8.8.8.8] version: 2 EOF sudo sed -i -e "s%ip_address%$IP_ADDRESS%" /etc/netplan/50-cloud-init.yaml sudo sed -i -e "s%router_ip%$ROUTER_ip%" /etc/netplan/50-cloud-init.yaml ##ネットワーク設定反映 sudo netplan apply |