Raspberry Pi 2にUbuntu 20.04 をインストールしWi-Fiに接続する

Raspberry Pi 2 Model B(以下ラズパイ2)にUbuntu Server 20.04(Ubuntu 20.04)をインストールします。
インストール時にWi-Fiの設定を行うことで、ラズパイ2の電源コードを挿したら自動でWi-Fiに接続するようにもします。

環境

インストール手順

1. OSイメージのダウンロード

まず、Install Ubuntu on a Raspberry Pi | Ubuntuに従って、 Ubuntu20.04のインストールイメージをダウンロードします。
今回は、サーバとして使うため、Download Ubuntu ServerのUbuntu Server 20.04.4 LTSを選択します。
ラズパイ2は32bitOSのみ実行可能なため、「Download 32bit」をクリックします。

2. Raspberry Pi Imagerをインストール

次に、ダウンロードしたimageファイルを、microSDカードへ書き込み(焼き)ます。
How to install Ubuntu Server on your Raspberry Pi | Ubuntuに従って、 Raspberry Pi Imagerをダウンロードします。 私はmacOSを使っているため、Raspberry Pi Imager for macOSをクリックします。ダウンロードが終わったらPCへインストールします。

3. SDカードにOSイメージを書き込む

PCにmicroSDカードを差し込みます。
Raspberry Pi Imagerを起動したら、Operating Systemの「Use custom」をクリックして、 1でダウンロードしたUbuntuのイメージファイルを選択します。
StorageにはmicroSDカードを選択し、右側の「Write」ボタンを押します。 すると確認ダイアログが表示されるので、「Yes」ボタンをクリックすれば書き込みが開始します。
完了したら、microSDカードを一旦抜き、PCに差し直してください。

4. Wi-Fi設定を追加する

ラズパイ2起動時に自動でWi-Fiに接続してほしいので、Wi-Fiの設定を追加します。
microSDカードを開き、network-configファイルを編集します。

macOSの場合は以下のようなコマンドを叩きます。

cd /Volumes/system-boot/
vi network-config

以下のようにwifisのコメントアウトを外します。
SSIDにWi-FiのSSIDを、PASSWORDにWi-Fiのパスワードを記載します。
SSIDとパスワードの引用符は忘れずにつけてください。僕はつけ忘れて数時間溶かしました。

version: 2
ethernets:
  eth0:
    dhcp4: true
    optional: true
wifis:
  wlan0:
    dhcp4: true
    optional: true
    access-points:
      "SSID":
        password: "PASSWORD"

5. ラズパイ2にssh接続する

microSDカードを差し込み、ラズパイ2の電源コードを挿したらUbuntu20.04が起動するはずです。
ubuntuユーザでsshします。パスワードはubuntuですが、ログイン直後に変更するよう促されます。

ssh ubuntu@192.168.1.x
(snip)
Last login: Sun Mar 27 01:47:14 2022 from 192.168.1.x
ubuntu@ubuntu:~$ 

ログインできれば成功です。お疲れ様でした。

あとがき

以前と比べてOSのインストールもだいぶ楽になりました。
昔はddコマンドを使ったりして書き込んでましたが、 今はボタンをポチポチするだけで希望のOSをインストールできるので便利になりましたね。

本当はWi-Fiの設定で固定IPアドレスを割り振りたかったのですが、 以下のように設定してもうまく動いてくれない(Wi-Fiに接続しない)ので困りました。
ルータ側で設定が必要なんですかね。。。

wifis:
  wlan0:
    addresses:
      - 192.168.1.129/24
    gateway4: 192.168.1.1
    nameservers:
      addresses: [192.168.1.1]
    optional: true
    access-points:
      "SSID":
        password: "PASSWORD"

関連記事