FreeBSD14.2R で遊ぼう(RasPi編)

あなたは
3 4 7 8 7 7 8
人目のお客様です。 (本日331人目、昨日1010人) (from 2007-09-30)

5.5.12.FreeBSD14.2R で遊ぼう(RasPi編)
5.5.Raspberry Pi5で遊ぼうのこーな

5.5.12.FreeBSD14.2R で遊ぼう(RasPi編)

(tips)
本バージョンのFreeBSDはRasPi5に公式には対応していませんが、非公式には動き出して
います。参考までに後ろの(9)節以降に動かし方を載せています

(0) はじめに

2024年12月3日にFreeBSDの新Ver 14.2Rがリリースされました。

これを記念し、FreeBSD 14.2R (ARM版) をインストールします。 ちなみに、元ネタは、

FreeBSD 公式Wikiです。

(※)以降の記事はRaspi-4での記事です。Raspi-5の方は(9)節以降をご覧ください


(1) ブートローダー(EEPROM)の更新

Raspberry Pi4でFreeBSDを遊ぶには、ブートローダーを新しいものに更新する必要があります

一番手っ取り早い方法は、前節Raspberry Pi OS で遊ぼう を参考にRaspberry Pi OSを

インストールし、ソフトを更新することで、ブートローダー(EEPROM)も更新されます

以下の記事では2024/11/12版のEEPROMでテストしています


(2) 用意するもの

母艦パソコンはFreeBSDでなくても、通常のLinuxでも可 (筆者はVirtualBox上Debianで用意)


(3) 母艦の準備

母艦は、SDHCカードアダプタをもつLinuxマシンで以下解説します

筆者のSDHCカードアダプタは /dev/sdb で認識されます。以後説明で必要に 応じ読み替え下さい


(4) 母艦での作業

① 中身が丸ごと消えてもいいSDHCカードを用意し、アダプタに接続

  次の手順で、全パーティションが消されて一から作成されます。 mount されていたら umount

  ください。

② 適当な作業ディレクトリに移動し、以下のコマンドを実行してください

(RPi用64bit(aach)イメージ取得)
 $ wget https://download.freebsd.org/releases/arm64/aarch64/ISO-IMAGES/14.2/FreeBSD-14.2-RELEASE-arm64-aarch64-RPI.img.xz
(チェックサム確認)
 $ sha256sum FreeBSD-14.2-RELEASE-arm64-aarch64-RPI.img.xz
 61c1c2d304685b8e33b558e17d2b05942968930f6baa5ad9ecc92138b6922085 FreeBSD-14.2-RELEASE-arm64-aarch64-RPI.img.xz
  (イメージ展開)
 $ unxz FreeBSD-14.2-RELEASE-arm64-aarch64-RPI.img.xz
  (SDへの書込)
 $ sudo dd if=FreeBSD-14.2-RELEASE-arm64-aarch64-RPI.img of=/dev/sdb bs=1M
 $ sudo sync

(4) Raspberry Pi4 起動

上記で作成したカードをRaspberry Pi4にセットし、HDMIケーブルを繋いでください

なお、2つあるHDMIは電源コネクタに近い向かって左側に刺してください

電源を入れ、Raspberry PiをSDHCカードから起動してください

起動したら、初期ユーザはfreebsd、パスワードはfreebsd、特権ユーザはroot/rootです。起動したらすぐにパスワード設定してください

SSHサーバも最初から起動しています。


(5) 最低限の初期設定

PCの場合はインストール時に訊かれて初期設定するのですが、ARM版はそこまで整備されていませんので、ここで設定します。

① 初期ユーザー追加

  # adduser で追加してください。聞かれる内容はPCと同じです

② TimeZone 設定

  日本標準時(JST)を設定するには、以下設定し、その後、時刻を正しく設定してください

 # cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

③ キーマップ 設定

  日本語キーボードに対応するには、以下を/etc/rc.confの最後に追記

keymap="jp.106"

④ hdmi 画面を広げます

 初期設定では画面は640x480とかなり狭い画面で立ち上がります。これをお使いのモニタの最大

 領域(筆者環境では4K解像度)に広げます。/boot/msdos/config.txtの以下の行を削除

[pi4]
hdmi_safe=1  ← この行を削除 

 この行を削除すると、ついでに、HDMI両方の端子から画面が出力されるようになります


(6) パッケージ のアップデート

Arm版FreeBSDでも、一応はpkgもあります。 ただし、defaultでは更新が遅く四半期毎

最新版ソフトが必要な方はportsを利用ください

 # pkg update -f
 # pkg upgrade

(7) (参考) デスクトップ環境で遊ぶ

① パッケージからXorgをインストールすることもできます

 # pkg install xorg

  これで、再起動すると、コンソールからなら $ startx できるようになります

② デスクトップ環境の導入

  この状態では使いづらいのでデスクトップ環境 ( XFCE ) を入れます。

   package から xfce を入れます。

 # pkg install xfce

    /etc/rc.confに以下の行も追加

 dbus_enable="YES"
 polkitd_enable="YES"
    各ユーザーのホームディレクトリの .xinitrcファイルを以下のように設定  
 . /usr/local/etc/xdg/xfce4/xinitrc

    reboot すれば、次回より$ startx で XFCEが立ち上がります

 ③ 続いてGUIログイン化します

 # pkg install slim

  /etc/rc.confに以下の行も追加

 slim_enable="YES"

 ④ 日本語化します

    日本語フォントを導入します。pkgからお好みで(以下一例)

 # pkg install ja-font-std ja-font-vlgothic ja-font-takao 

   日本語入力環境 を導入します

 # pkg install ja-fcitx-mozc

   各ユーザーのホームディレクトリの .xinitrcファイルを以下のように設定  

 #!/bin/sh
 # set locale
 export LC_ALL=ja_JP.UTF-8
 export LANGUAGE=ja_JP.UTF-8
 export LANG=ja_JP.UTF-8
 export GTK_IM_MODULE=fcitx
 export QT_IM_MODULE=xim
 export XMODIFIERS=@im=fcitx
 /usr/local/bin/mozc start
 fcitx -r -d
 #
 setxkbmap -layout jp
 #
 . /usr/local/etc/xdg/xfce4/xinitrc

 ⑤ ついでなので、ブラウザ(firefox) も導入

 # pkg install firefox-esr

(8) USBからブートするには

Raspberry Pi OS で遊ぼうを参考にして ブートローダーの更新し、ブート順を変更してください

あとは、SDカードの書き込みと同様にUSBに書き込むだけです


(9) Raspi5で遊ぶには

(a) 必要な持ち物

  前節5.3.3で示した通常の持ち物に加え

   ・ UEFI起動専用の小さいUSBスティック

   ・ USB→有線LANアダプタ(※FreeBSD対応品)

(b) 母艦での作業1

  まずは、UEFI起動専用の小さいUSBスティックから作ります

  あらかじめ上記USBは、全容量をFAT32でフォーマットして中身をクリアにしておきます

  母艦(Linux可)に上記USBをさします

  ここからRaspi5 用UEFIをダウンロード

(RPi用UEFIイメージ取得し、展開)
 $ wget https://github.com/worproject/rpi5-uefi/releases/download/v0.3/RPi5_UEFI_Release_v0.3.zip
 $  unzip -d uefi RPi5_UEFI_Release_v0.3.zip (※ファイルが混じると面倒なので、uefiディレクトを切って中に展開)

  次に、上記USBをマウントして、できたファイルを流し込み

(Fat32でフォーマットされたUSBをマウント)
 $ sudo mount -o iocharset=utf8 -t vfat /dev/sdb1 /mnt/ (※デバイス名や、マウント先は自身の環境に合わせて読み替えてください)
 (ファイルの流し込み)
 $ cd uefi
 $ sudo cp * /mnt (※ファイルをそのまま全て流し込み)
 $ sudo umount /dev/sdb1(※後片付け)

  上記USBを取り外してください

(c) 母艦での作業2

  続いて、OSをインストールする先のUSBまたはμSDカードを作ります

  ここは、上記(4)節と同じなので省略

  また、上記(8)節と同様にブート順を上記USBが優先になるようにしておいてください

(d) Raspberry Pi5 起動

  上記起動用USBと上記OSインストール先メディアの両方を刺し、有線LANアダプタも刺し起動

  (※本項執筆時点では、残念ながらRaspi5の内蔵LanチップのドライバがFreeBSDに無い)

  あとは、上記(4)節以降と同様に進みます



5.5.13.NetBSD10 で遊ぼう(RasPi4編)
5.5.11.Manjaro Arm で遊ぼう (RasPi4編)

ichmy本家サイト

ガジェットで遊ぼうのこーなー