Raspberry Pi 4B で FreeBSD 13.0-RELEASE を USB接続した SSD にインストールしてみました
結構手間がかかります
1.準備
インストールイメージファイルをSSDに書き込むパソコンまたは Raspberry Pi OS からもできます
ラズパイで書き込む場合はラズパイOSのSDカードで立ち上げて、SSDを接続して書き込みます
ラズパイのファームウェアを最新にしておきます
コンセントから電源供給できるUSBハブ(ラズパイからSSDへ電源供給するとラズパイが電源容量不足になる場合があります)
USB接続できるSSD
ラズパイは4Gか8G、無線LANは使用できないのでLANケーブルを接続します
2.インストールイメージを書き込むツールは Raspberry Pi Imager を使用します
https://www.raspberrypi.org/software/
を参照してください
3.インストールイメージファイルのダウンロード
https://download.freebsd.org/ftp/releases/arm64/aarch64/ISO-IMAGES/13.0/FreeBSD-13.0-RELEASE-arm64-aarch64-RPI.img.xz
4.イメージファイルの書き込み
SSD をパソコンまたはラズパイに接続して Raspberry Pi Imager を起動します
CHOOSE OS を選択します
Operating System で一番下の Use custom を選択します
ダウンロードのフォルダーへ移動し FreeBSD-13.0-RELEASE-arm64-aarch64-RPI.img.xz を選択します
CHOOSE STRAGE を選択します
接続したSSDが表示されていると思いますので選択してください
WRITE を選択します
確認のメッセージが表示されますのでYESを選択します
Writing Verifying が終了すると Write Successful が表示されますので CONTINUE を選択します
このルールを使うとラズパイ用イメージの書き込みには便利です
5.FreeBSDの起動
いよいよ、FreeBSDが無事起動するか、という段階がきました
SSDをUSBハブ経由でラズパイに接続し、SDカードがセットされていないことを確認し電源投入
画面表示の最後のほうが
FreeBSD/arm64 (generic) (ttyv0)
login:
と表示されていれば、とりあえずブート成功です
マウスが接続されていばマウスの矢印も動くと思います
Enterキーを入力するとlogin:が新たに表示されるとキーボードにも反応しています
6.Loginします
仮想コンソールになっていてAltキーを押しながらF2キーを入力すると(Alt+F2)
FreeBSD/arm64 (generic) (ttyv1)
login:
という表示 ttyv1 に変わっていると思います
Alt+F1を入力すると ttyv0 に変わっていると思います
ここでUSBキーボードを抜いたり、差したりするとシステムメッセージが表示されると思います
ttyv0はシステムコンソールも兼ねているので、通常は使用しないで ttyv1~ttyv7で作業してください
login:のところでrootと入力しEnterキーを入力します
Password:のところでrootと入力しEnterキーを入力します
正しく入力できると、いろいろ表示されて
root@generic:~#が最後に表示されているとログイン成功です
7.いろいろ設定をしていきます
とりあえず日本語キーボードの設定をします
kbdcontrol -l jp
kbdcまで入力してTabキーを入力するとkbdcontrolと表示されます
タイムゾーンを日本時間(JST)に設定します
タイムゾーンを設定するコマンドは tzsetup というのがあります
tzsetup
Yesが選択されているのでEnterキーを入力します
下矢印キーで 4 Asia を選択してEnterキーを入力しましす
下矢印キーで 18 Japan を選択してEnterキーを入力します
ConfirnationでYesが選択してあるのでEnterキーを入力します
現在の日時を設定します
ntpdate ntp.nict.jp
日時が正しく設定できたか確認します
date
Cpuクロックの確認
sysctl -a | grep freq
いろいろ表示されますが dev.cpu.0.freq: 600 となっていると cpu速度が600Mhzに設定されています
だんだんややこしくなってきましたが、タイムゾーン以外は応急処置的な設定をしましたので
設定ファイルに定義します
/etc/rc.conf というファイルに以下の3行を追加します
keymap="jp"
ntpdate_enable="YES"
powerd_enable="YES"
疲れてきましたので、ここでシャットダウンして休憩しましよう
shutdown -p now または poweroff でシャットダウンできます
8.FreeBSDの設定確認
今までの設定が正しく行われたか確認してみましょう
ラズパイの電源をいれます
FreeBSDが起動できたらttyv1でroot/rootでログインします
date
で表示された日時を確認します
@キーを入力して@が表示されたか確認します
sysctl -a | grep freq
で dev.cpu.0.freq: 1500 となっているか確認します
9.FreeBSDのアップデート
13.0-RELEASEが公開されてから、多少アップデートされていますので、最新の状態へアップデートしてみます
pkg update
と入力するとメッセージが表示されますので y を入力してください
パッケージ管理情報の取得
pkg install git
と入力するとメッセージが表示されますので y を入力してください
いろいろメッセージが表示されますが git というアプリケーションがインストールされます
git clone -b releng/13.0 --depth 1 https://git.freebsd.org/src.git /usr/src
ソースコードの取得
このコマンドは初めてソースコードを取得するときに使います
ここまでが準備で、これからアップデートします
freebsd-update fetch
アップデートするファイル名が表示されています
スペースキーを入力して最後まで表示されたら q を入力します
freebsd-update install
アップデートをインストールします
reboot
再起動します
rootでログインすると 13.0-RELEASE-p3 になっていました
10.パッケージソフトのインストール
パケージソフトは好みで自由にインストールしてください
とりあえずGUI環境をインストールしてみます
pkg install xorg mate firefox-esr ja-font-std
メッセージが表示されるので y を入力します
/etc/rc.conf に dbus_enable="YES" を追加します
インストールはrootで行いますが、使用するのはfreebsdというユーザでやってみます
普通は adduser でユーザを登録するのでしょう
Alt+F? で使っていないttyに切り替えて freebsd/freebsd でログインします
.xinitrc というファイル(多分、新規作成になると思います)に
export LANG=ja_JP.UTF-8
exec mate-session
という2行を書き込みます
11.mateの起動
startx
でウィンドウシステムが起動されると思います
解像度がおかしいですね
システムー>設定ー>ハードウェアー>ディスプレイを選択すると
解像度が592x448ですね
閉じる を選択して システムー>freebsdのログアウト を選択して ロクアウト を選択します
12.解像度の調整
Alt+F? で root のttyへ移動します
cd /boot/msdos へ移動します
config.txt というファイルで
[pi4]
hdmi_safe=1
のところで hdmi_safe=1 をコメント化します
先頭に # をつけます
#hdmi_safe=1 このように変更できたら保存します
reboot
再起動します
画面の文字が小さくなっていますね
freebsd でログインして解像度を確認してみます
1824x984ですね
Alt+F? でログインできるttyへ移動し root でログインします
/boot/msdos/config.txt に修正を加えます
[pi4]
#hdmi_safe=1
disable_overscan=1 <ー 追加して保存します
reboot
再起動します
これで正しい解像度になりました
13.パスワードの変更
root と freebsd のパスワードを変更します
rootでログインします
passwd
New Password: 新たなパスワードを入力します
Retype New Password: もう一度新たなパスワードを入力します
freebsd のパスワードを変更するときは freebsd でログインして passwd で変更してもいいですが
rooot で passwd freebsd と入力して変更することもできます
14.この先は
あと、日本語入力とか環境構築についてはネット検索でいろいろ見つかると思います
freebsd-update fetch
freebsd-update install
pkg update
pkg upgrade
で、たまには最新にしてください
hirsute-preinstalled-desktop-arm64+raspi.img.xz のSSDインストールにtryしてみようと
思いますので、ここらへんで失礼します