Ubuntu Serverのインストールと初期設定

大学の時に使っていたDELLのノートPCが、Windows 10のまま眠っていた。

メモリは8GB。Windows 11にしても重くなるだけだし、かといって捨てるのはもったいない。

だったら Ubuntu Serverを入れて、自宅のバックエンド実験サーバーにしてしまおう、というのがこの記事の話。

メインのMacに開発ツールやDBを全部入れると、環境がぐちゃぐちゃになる。

それを避けるために、古いPCをLinuxサーバー化して「壊してもいい箱」として運用する。

VPN(Tailscale)で外からも安全に触れるようにして、Docker上にPostgreSQLなどの実験環境を立てるところまでをまとめた。

なぜWindows → Ubuntu Server なのか

サーバー用途で旧PCを再利用するなら、Ubuntu Serverが合理的な選択肢になる。

  • 軽い:GUIがないぶんリソース消費が小さく、8GB RAMでも余裕で動く
  • アップデートを自分で制御できる:Windowsの強制アップデートによる事故がない
  • リモート管理が前提の設計:SSHで完結する
  • バックエンドとの相性が良い:PostgreSQL、Python、Dockerなどが自然に動く

ブータブルUSBの作成

インストールにはUSBメモリ(8GB以上)が必要。

  1. ubuntu.com から Ubuntu Server 24.04 LTS のISOをダウンロード
  2. balenaEtcheretcher.balena.io)でISOをUSBに書き込む
  3. USBの中身は上書きされるので、必要なデータは事前にバックアップ

BIOS設定の変更

DELLの場合、起動時に F2連打 でBIOSに入れる。

  • Secure BootAudit Mode(実質Disabled)に変更
  • Boot Order → USBを最優先に設定
  • 保存して再起動

インストール時の設定ポイント

項目設定値
言語English(Server版は日本語を選べない)
ストレージUse an entire disk
LVM有効
暗号化(LUKS)無効
Ubuntu ProSkip
OpenSSH Serverインストール必須

サーバー名とユーザー名は任意のものを設定する。

インストール完了後、「Reboot Now」でUSBを抜いて再起動。


ネットワーク設定:最初の「鶏と卵」問題

Ubuntu Serverをインストールした直後、Wi-Fiを使うには wpasupplicant が必要だが、そのインストールにはネット接続が要るという問題にぶつかる。

解決策はシンプルで、まず有線LANでルーターに直結する

① 有線LANをnetplanで有効化

sudo nano /etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0:         # ← デバイス名は `ip a` で確認
      dhcp4: true
      dhcp6: false
sudo chmod 600 /etc/netplan/01-netcfg.yaml
sudo netplan apply

ip a でIPv4アドレスが取得できていればOK。

② wpasupplicantをインストールしてWi-Fiを設定

sudo apt update && sudo apt install -y wpasupplicant

同じnetplanファイルにWi-Fiの設定を追加する。

wifis:
  wlo1:           # ← デバイス名は `ip a` で確認
    dhcp4: true
    access-points:
      "<SSID名>":
        password: "<パスワード>"
sudo netplan apply

Wi-FiでIPが取れたら、有線を抜いても大丈夫。

注意:netplanのYAMLはインデントに厳しい。スペースがずれるとエラーになる。また、設定ファイルは chmod 600 でパーミッションを絞っておくこと。


SSH接続と鍵認証

サーバーのIPが分かったら、別のPC(Macなど)からSSHで入る。

ssh <ユーザー名>@<サーバーのローカルIP>

毎回パスワードを打つのは面倒なので、鍵認証に切り替える。

# クライアント側で鍵を生成
ssh-keygen -t ed25519 -C "my-server"

# 公開鍵をサーバーに送る
ssh-copy-id <ユーザー名>@<サーバーのローカルIP>

Macの場合はキーチェーンに登録しておくと便利。

ssh-add --apple-use-keychain ~/.ssh/id_ed25519

ノートPCサーバーの落とし穴:蓋を閉じるとスリープする

ノートPCをサーバー転用すると、蓋を閉じた瞬間にスリープして接続が切れる。

/etc/systemd/logind.conf を編集して無効化する。

sudo nano /etc/systemd/logind.conf

以下の行のコメントを外して ignore に変更:

HandleLidSwitch=ignore
sudo systemctl restart systemd-logind

これでサーバーは蓋を閉じたまま稼働し続ける。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA