なんだかんだで、リプレースは完了しています。思いついてから納品まで 2 週間くらいでした。これから、ゆっくりと運用プロセスを考えますが、これは本当に趣味だからできることだと思います。
さて、未来の自分はきっとこんなところで行き詰まったりしないと思いますが、念のため残しておきます。基本的に Handbook を見ていれば間違いありません。Stage 3 で使うイメージには systemd の名前が入ったものを使いましょう。あとでユーザランドを作り替えるのは大変です。あとは、 OpenRC が呼び出すけど systemd に標準で入っているものも、インストールする必要はありません。いろいろ思い浮かぶけど、きっと見ればわかる。
Handbook:Main Page
https://wiki.gentoo.org/wiki/Handbook:Main_Page
今回の特徴として、 boot するストレージデバイスは NVMe を使うんですね。NVMe でも SATA インターフェスのものと PCIe のものと、形が似ているから本当に注意した方がいいです、というか間違えて買いましたよ。安いな〜、って思ったんですよ、ほんと、認識しませんでした orz。認識したところで試してみたベンチマークがこちらです、好き。
# hdparm -tT --direct /dev/nvme0n1 /dev/nvme0n1: Timing O_DIRECT cached reads: 4684 MB in 2.00 seconds = 2341.84 MB/sec Timing O_DIRECT disk reads: 8424 MB in 3.00 seconds = 2807.81 MB/sec
こちらの製品を使いました。きっと数年後に参照する。
Transcend TS256GMTE220S
https://jp.transcend-info.com/Products/No-991
OS まわりの話は、この辺を起点にするとちょいちょい知識を得ることができます。
NVMe
https://wiki.gentoo.org/wiki/NVMe
さらに、今回は初めて F2FS というファイルシステムを使ってみました。フラッシュメモリの特性を考慮した、ことになっているファイルシステムということで、特に大事なデータを置くわけではないので、トライします。
F2FS
https://wiki.gentoo.org/wiki/F2FS
実際、 Android 端末でもいくつか採用されているようです。Linux カーネルのリポジトリも少し覗きましたが、全く放置されているわけではないようです。動かしてみたくなりますよね。
今回採用したマザーボードはこちら。
ASRock B460M Pro4
https://www.asrock.com/MB/Intel/B460M%20Pro4/index.jp.asp
このマザーボードに載っている Ethernet card がですね、Intel の I219V というチップを使っていて、安心のインテルと思っていたわけですよ。はい、新しいバージョンのドライバでないと認識されません。ここから落としてきて、 make install && modprobe e1000e してください。
このファイルをブート後にコピーするのがちょっと面倒だったので、ブートイメージの /boot/boot/grub の下にあらかじめ置くようにしておきました。さらに、このドライバかデバイスがまた不安定で、しばらくするとおかしなフレームを吐くのか所属する L2 ネットワークが死にます。てっきり L2 スイッチが寿命を迎えたと思って、新しく買ってしまいましたよ。ですので、このデバイスが正気を保っているうちに sshd をあげてリモートで作業する必要があります。
ちょっと苦労したのは、ブートローダーですね。440byte から boot する BIOS を卒業して、いよいよ UEFI を使うわけですが、理解することが少しあります。だいたい、以下のドキュメントを読んでおけばなんとかなります。
EFI System Partition
https://wiki.gentoo.org/wiki/EFI_System_Partition
Efibootmgr
https://wiki.gentoo.org/wiki/Efibootmgr
EFI stub kernel
https://wiki.gentoo.org/wiki/EFI_stub_kernel
具体的な話はまた今度です。つづきます。