Raspberry Pi4B / openSUSE leap 15.2 rootfsをUSB storageに移動させる
できた。
基本的な手順はcubietruckのとかわらないが、openSUSEらしくyastで解決できるところはyastで解決する。
yast diskでbtrfsで切るにしてもなぜかdosfstoolsがいるので先にインストールしておいたほうがいい。
・kexec-toolsとyast2-bootloaderのインストール
rootfs/boot移動後にyast bootloaderでgrub2.cfg系を自動で書き換える時に必要。手動なら要らない。
だいたいこんな感じ
1.USBストレージ上にroofsになるパーティション作る。
mdraid+lvmでも可。必要ならsawpも
2.uSDにbootパーティションを確保する。
すでにuSD上にあるp3を縮小してp4を作りp3の/bootをp4/にcpするのがいい。RasPi単機でするのが難しいなら母艦を使うとサクサク。
3.USB上のrootfsを/mnt。uSD上のrootfsをcp -ax / /mnt
ついでにuSDのbootになるuSDp4も/mnt/bootにmountしてcpするよろし
4.chroot準備
$ mount --bind /proc /mnt/proc
$ mount --bind /dev /mnt/dev
$ mount --bind /sys /mnt/sys
$ chroot /mnt
5.chroot後にboot and efiパーティションをマウント
/bootはuSDp4、/boot/efiは最初からあるuSDp1をマウントできれいてれば方法はなんでもいい
6./etc/fstabの書き換え
主に
swapをUSB上のswapに変更
rootfsもUSBに
/bootマウントはuSDのp4にするように追記
/boot/efiは変更しなくていい
7.yast bootloader
これを起動してそのまま終了させて書き出すと
/boot/grub2/grub.cfg
の必要箇所の変更とinitrdにmd/lvm等のappedを勝手に追記しれくれるのめちゃくちゃ便利。
視力が落ちてきたのでこないだ買った40インチの4Kテレビが便利だぜ/(^o^)\