Raspberry Pi をある用途で使おうかと考えているのですが、流石にSDカードだと速度も信頼性も低すぎるので、とりあえず手持ちの Raspberry Pi 4 8GB で試してみました。
ブートローダーをアプデートする
Raspberry Pi 4 は公式でUSBブートに対応しています。最近製造されたものなら問題ないと思いますが、ブートローダーのバージョンが古いとアップデートが必要なようなので手動で更新します。
とりあえず更新用にいつも通りOSをSDカードに書き込むめ公式サイトからRaspberry Pi Imagerをダウンロードをしてインストール。OSイメージのダウンロードからストレージへの書き込みまでやってくれる便利なやつです。
https://www.raspberrypi.com/software/
インストールしたらSDカードにRaspberry Pi OSを書き込みます。古いバージョンでなければ何でも良いと思いますが、ブートローダーの更新以外の用途で使うことはないのでサイズの小さいこのあたりで良さそうです↓
書き込みが終わったらRaspberry Piにセットしていつも通りに起動します。とりあえず最初は念のためOSを更新…
sudo apt update sudo apt upgrade
次にブートローダの更新を確認します。
sudo rpi-eeprom-update
今回の環境では更新はありませんでしたが、更新が必要な場合は上記のコマンドに引数 -a
をつけて実行 & 再起動をするようです。
ブート順位の設定を変更する
raspi-configを使って起動の優先順位を設定します。
sudo raspi-config
"Advanced Options" を選択
"Boot Order" を選択
USB Bootの B2 を選択
最後にOKを選択して設定は完了です。
UbuntuをSSDに書き込む
OSをインストールしたいUSB3.0対応のSSDを用意します。今回は余っていたSATAのSSDに変換ケーブルを使って接続しました。
SSDを作業をするPCに接続して再びRaspberry Pi Imagerを起動します。 OS選択でUbuntuを選択します。今回はLTS最新のUbuntu Server 22.04を選択しました。
接続したSSDを選択して書き込みをします。
Ubuntuの起動とログイン
SSDをRaspberry Piに接続し(SDカードが刺さっていたら抜いて)、起動します。
問題がなければログイン画面になるのでログインします。
初期のログイン情報は
- user: ubuntu
- password: ubuntu
です。 初回ログイン時にパスワードの再設定を求められます。
IP 固定とSSH接続
このままでは不便なのでドキュメントに従ってIPを固定します。
99_config.yaml
というファイルを新規に作成して設定を記述していきます。
sudo vim /etc/netplan/99_config.yaml
今回はこんな感じに。IPv6は不要だったので無効にしています。
network: version: 2 renderer: networkd ethernets: eth0: dhcp4: false dhcp6: false accept-ra: false link-local: [] addresses: - 192.168.xxx.xx/xx routes: - to: default via: 192.168.xxx.x nameservers: addresses: [192.168.xx.xx]
設定が完了したら保存してエディタを終了します。下記のコマンドで適用されます。
sudo netplan apply
SSHはパスワードログインで既に有効になっていました。