3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Raspberry Pi 4B 8G に FreeBSD 13.0 ARM64を入れて zfs raidz (SSDを4個)からブート

Last updated at Posted at 2021-08-17

Raspberry Pi 4B 8G で zfs raidz を構築してみました
実験段階なので、多少手抜きしています

1.準備したもの
  Raspberry Pi 4B 8G 本体
  コンセントから電源供給できる4ポートのUSBハブ
  USB接続できるSSD4個、4個とも同一サイズが理想ですが、256GB2個と240GB2個でやってみました
  zfs環境を構築するためのSDカード1個、128GBが余っていたので、FreeBSDがインストールできればOKです

2.イメージファイルの書き込み
  FreeBSD-13.0-RELEASE-arm64-aarch64-RPI.img.xzをSDカードとSSD4個に書き込みます
  私は Raspberry Pi Imager を使いました

3.ブート確認
  SDカードと4個のSSDを順番に1つだけセットしてブートするか確認します
  次に、SDカードとSSD1個を接続してSDカードからブートするか確認します
  ファームウェアのの起動順序の設定を変更していなければ、SDカードからブートすると思います

3.環境構築
  SDカードと4個のSSDを接続して、SDカードから起動します
  /etc/rc.conf に設定を追加します
  powerd_enable="YES"
  ntpdate_enable="YES"
  keymap="jp"

  /boot/loader.conf の内容を zfs_load="YES" だけにします

  再起動し、無事ブートするか確認します
  アップデートします
  freebsd-update fetch
  freebsd-update install

4.ストレージプールの作成
  zpool create -f zroot raidz da0s2a da1s2a da2s2a da3s2a

  ファイルシステムの作成
  zroot/F1 が実際の / になります
  zfs set mountpoint=legacy zroot
  zfs set atime=off zroot
  zfs create zroot/F1
  zfs create zroot/F1/usr
  zfs create zroot/F1/usr/src
  zfs create zroot/F1/usr/obj
  zfs create zroot/F1/usr/ports
  zfs create zroot/F1/tmp
  zfs create zroot/F1/var  

  システムのコピー
  zfs set mountpoint=/mnt zroot/F1
  tar cf - --one-file-system / |(cd /mnt;tar xvf -)
  ブートするファイルシステムを設定します
  zpool set bootfs=zroot/F1 zroot

  /mnt/etc/fstab の内容を以下のように変更します
  zroot/F1 / zfs rw 0 0
  zroot/F1/usr /usr zfs rw 0 0
  zroot/F1/usr/src /usr/src zfs rw 0 0
  zroot/F1/usr/ports /usr/ports zfs rw 0 0
  zroot/F1/usr/obj /usr/obj zfs rw 0 0
  zroot/F1/tmp /tmp zfs rw 0 0
  zroot/F1/var /var zfs rw 0 0
  /dev/da0s1 /boot/msdos msdosfs rw,noatime 0 0
  tmpfs /tmp tmpfs rw,mode=1777,size=50m 0 0

  /mnt/boot/loader.conf に vfs.root.mountfrom="zfs:zroot/F1" を追加します

5.zfsファイルシステムから起動する準備
   zfs set mountpoint=legacy zroot/F1
  zpool export zroot

  シャットダウンします
  poweroff

  ラズパイを電源OFF
  SDカード取り出し

6.zfsからブート
  ラズパイの電源ON

  無事、起動しましたでしょうか
  以上です

3
3
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?