25/10/28 16:35:16.63 .net
OpenBSD についてまったり語るスレ。
URLリンク(www.openbsd.org)
2:名無しさん@お腹いっぱい。
25/10/28 16:37:31.73 .net
前スレ
OpenBSDユーザーコーナー Part10
スレリンク(unix板)
3:名無しさん@お腹いっぱい。
25/10/28 16:38:02.54 .net
過去スレ一覧
OpenBSDユーザーコーナー
URLリンク(pc.2ch.net)
OpenBSDユーザーコーナー Part2
スレリンク(unix板)
OpenBSDユーザーコーナー Part3
スレリンク(unix板)
OpenBSDユーザーコーナー Part4
スレリンク(unix板)
OpenBSDユーザーコーナー Part5
スレリンク(unix板)
OpenBSDユーザーコーナー Part6
スレリンク(unix板)
OpenBSDユーザーコーナー Part7
スレリンク(unix板)
OpenBSDユーザーコーナー Part8
スレリンク(unix板)
OpenBSDユーザーコーナー Part9
スレリンク(unix板)
OpenBSDユーザーコーナー Part10
スレリンク(unix板)
4:名無しさん@お腹いっぱい。
25/10/28 17:40:22.40 .net
スレ立てありがとうございます。
夕ご飯食べ終わったらビルド実況続けます。
5:名無しさん@お腹いっぱい。
25/10/28 18:25:46.54 .net
実況、よろしくお願いします
6:名無しさん@お腹いっぱい。
25/10/28 20:27:51.19 .net
承知しました。
... i386のISOイメージもOK。
twm, w3m, Fcitx-Anthy, LeafPadという構成でここに書き込もうとしてみたけど、submitしても反映されないな。
システムの動作自体はOK。
7:名無しさん@お腹いっぱい。
25/10/28 20:39:44.99 .net
あとはLiveUSBの作成とテスト。
LiveUSBのイメージファイルは、ビルドシステムから直接ではなくて、河豚板の中にあるusbfadmというコマンドでリマスタリングするようになってる。
詳しくは、
fuguita.org/?EBUG%E5%8B%89%E5%BC%B7%E4%BC%9A/20240217_BuildFuguIta#jb17e51e
あたりをどうぞ。
まぁ、それはともかく、usbfadm newdrive ですな。
8:名無しさん@お腹いっぱい。
25/10/29 01:10:59.42 .net
ちょっと横になるつもりが、がっつり寝てた...
で、さっきの資料にもあるように、一回usbfam newdriveでLiveUSBイメージを作ると、
それをビルドシステムにリサイクルして、今度は make liveusb (または、make all)で
ビルドシステムから直接LiveUSBイメージを生成できるようになる。
ここまでがワンセットで、i386/amd64では実施済み。
arm64は、まだLLVMやってる(笑)
9:名無しさん@お腹いっぱい。
25/10/29 02:39:57.74 .net
あとは、いま常用しているこの環境を7.8に置き換えて「暮らして」みる。
7.7:常用と7.8:試用のデュアルブート。
それでしばらく使ってみて不具合なければベータかRC版として公開かな。
10:名無しさん@お腹いっぱい。
25/10/29 08:59:14.96 .net
patch002~004きた
今度はガチだわ
11:名無しさん@お腹いっぱい。
25/10/29 11:33:39.54 .net
パッチは置いといて、テスト環境。
7.7/7.8のデュアルブートって言ったけど、やめて基本に忠実にUSBメモリ一本で行く。
本体:Mac mini (2011頃), メモリ12GB, SSD 1TB(今回使わないけど)
USBメモリ: シリコンパワー 32GB
12:名無しさん@お腹いっぱい。
25/10/29 11:42:21.31 .net
手順は定石どおり
1. USBにイメージ書き込み
2. モード0で起動し初期設定
3. rootでログイン、doas.confと普通のユーザ作る
4. 作ったユーザでログイン
5. usbfadmでUSBの保存領域を拡張して、ベース環境を保存
6. dtjsetupでデスクトップ・日本語環境・定番アプリを
リストから選択してインストール&設定
7. その他使いたい奴をpkg_add
8. 使いながら細かい手直し
9. usbfadmで運用環境として保存
こんな感じ。
13:名無しさん@お腹いっぱい。
25/10/29 11:46:55.69 .net
入れたのは、audacious, chromium, emacs, evince(PDFビューワ), fcitx-anthy,
firefox, icewm, libreoffice, mlterm, obsdfreqd, pavucontrol(音量調整),
rox-filer, sshfs-fuse, viewnior(画像ビューワ)
こんなところ。あとフォント諸々
SSHFSでリモートファイルをマウントして、午前中のお仕事しました。
14:名無しさん@お腹いっぱい。
25/10/29 20:29:26.45 .net
patch002.003,004対応
xserver, unbound, libssl ... 常連さんですねw
以前書いたように河豚板ではsyspatchとか使えないのでソースレベルでの対応に:
- 該当部分をcvs update
- errataページの説明どおりにコンパイル、インストール
- インストールされたファイルをtar ballにして
河豚板ビルドシステムの install_patches ディレクトリにコピー
しておくと、ビルド時にこのtar ballをOSのファイルツリーに上書きする
カーネルのerrata場合は、/usr/src/sys以下をcvs updateして
河豚板をビルドし直せばOK
15:名無しさん@お腹いっぱい。
25/10/29 20:47:12.65 .net
で、今回ビルドに使ったソースはpatch-003, -004の
修正がすでに入ってるぽいのに気がついた。
が、めんどくさいので、対応作業ひととおり全部やる。
16:名無しさん@お腹いっぱい。
25/10/29 23:34:38.63 .net
実は一連の作業と併行して、i386とamd64の新しいビルド環境を河豚板7.7のvmm/vmd上で動く仮想ホストとして
構築していた。前スレで
「リリース作業と併行して最初からOpenBSDフルビルドやっといたほうがいいかも」
って言ってたやつ。Errata対応はこの環境でやった
tmuxでi386とamd64の作業画面を並べて、tmuxのset-window-option synchronize-panes onで両方一緒に操作。
こりゃ捗るわ
ただ、同一タイミングででかいファイルの操作とかやると、ストレージのI/O性能が如実に現れるね。特にHDD
i386とamd64のテスト版ミラーに上げました
17:名無しさん@お腹いっぱい。
25/10/30 00:20:09.11 .net
重い腰上げて借りてたRPi400出してきたけどこれがまた無理ゲー
- 電源入れても画像が出ない → 付属のHDMImini〜HDMIケーブルがNGでした → 手持ちので代替
- install78.imgがinsufficient file formatとか言ってカーネルロードできない → miniroot78.imgでOK
- 有線LANが繋がらない、WiFiはfwがないので使えず
→ fwダウンロードしてきてマイクロSDに書こうとしたらパーティション小さすぎて入らず
→ fdisk,disklabel,growfsして広げて入れてみたけど読まない(rdroot(Linuxでいうinitrd)に入れないと意味ないと後で気づく)
→ 有線はオートネゴに失敗してた。手動でifconfig bse0 media 100baseTXとかやって解決(でもなんか遅い)
まぁなんとかビルドが動くとこまでごきつけました
還暦過ぎの年寄りには酷じゃわい
18:名無しさん@お腹いっぱい。
25/10/30 09:35:45.02 .net
i386/amd64は一段落したので、arm64。
RPi3B/400どっちもちゃんと動いてる
見たところ、RPi3Bは-j1で1GB足りず、RPi400は-j2で試行してるけど、-j3位までいけそう
マルチコアが活かされてないなぁ。もったいない
- LLVMのビルドだけ、-j1でやるようにMakefile改造
- スワップデバイスがHDDなので、より高速なものにするとか
(メモリがいっぱいある他ホストでMFS上にスワップファイル作ってNFSとかで共有
...とかの方がシークがなくて意外と高速かも)
あと、せっかく2台あるから、distccでトータルの処理時間減らせるかな
packages検索したら見つかったから、これもアリかも
19:名無しさん@お腹いっぱい。
25/10/30 11:58:02.03 .net
armのビルド完了待ち
amd64の試用環境(今これ書いてるやつ)も、問題なく動いてて
テスト環境なのを忘れそう
20:名無しさん@お腹いっぱい。
25/10/30 12:07:37.10 .net
なのでちょっと雑談
河豚板はOpenBSDのLiveDVD/LiveUSBなのはそのとおりなのですが、
その本質は、OS本体とユーザ環境が分離されてるところにあります
例えばこのデモ
youtu.be/r9brzQClCCY?si=lshumFAwykdNGIP9
4本のUSBメモリには、それぞれ
- カーネルとブートローダ
- OSのファイルツリー
- ユーザ環境
- スワップパーティション
が入ってますが、起動時に自動検出、あるいはユーザの指定により
動的に読み込んで動作します。
このうち、前の2つは、LiveDVDを使うことも可能です
21:名無しさん@お腹いっぱい。
25/10/30 20:54:34.31 .net
夕食いただいたら、まったりと作業再開
確認作業、こんどはメディアのリマスタリング
>>7 で書いたように、LiveUSBのリマスタリング自体はすでにやってるので、
- リマスタリングしたLiveUSBからさらにリマスタリングして、それがちゃんと
起動するか
- LiveDVDのリマスタリングで作成したISOイメージもちゃんと起動するか
(これはusbfadmとは別の、remaster_dvdというツールを使用)
テストはどちらもvmm/vmd上で実施
OK
22:名無しさん@お腹いっぱい。
25/10/30 21:06:11.00 .net
USBメモリ管理ツールのusbfadm
実はOpenBSD 7.7→7.8になった時点でエンバグしてた(修正済)
www.openbsd.org/78.htmlにfdiskの表示形式が変わったみたいなことが
書いてあってやな予感したんだけど、案の定。
ユーザ環境保存用のパーティションを拡張する機能で、
パーティションがGPTの場合、ちゃんと動かなくなってた
原因はfdisk -vの出力、GPTのUsable LBA行のスペースがひとつ、TABになってた
最もやらしいパターン
インタラクディブなコマンドをスクリプト中で無理やり使うとおきがち
過去にも何度か経験した
(OpenBSDのインストールスクリプトでも同じようなことはやってるんだけど)
23:名無しさん@お腹いっぱい。
25/10/30 22:51:44.42 .net
さて、OpenBSD/arm64ビルド中のふたりは、
...どっちもまだLLVM(笑)。一日経過したのに。
次のアクションは、これの終わり待ちですな
ちょっと宣伝
今回の件を含めOpenBSDの動作のモニタリングには、
拙作のSAG (System Activity Grapher)
fuguita.org/?SAG
というのを使ってます。
簡単なものですが
OpenBSDサーバのモニタとチューニングのお供にどうぞ
おやすみなさい
24:名無しさん@お腹いっぱい。
25/10/31 08:29:31.40 .net
おはようございます。
Patch-005 ... OpenSMTPDかー
25:名無しさん@お腹いっぱい。
25/10/31 12:08:06.22 .net
昨日のpatch-002,003,004と同じ手順で適用、河豚板のリビルド実施
現在ミラー中
問題はarm64
OpenBSDのビルド完了まで多分まだ1日~2日かかりそうなので、
その間を利用して、Errata部分のソースがどうなってるかチェックするかー
→直ってなかったらcvs updateしてバイナリパッチtarball作る
26:名無しさん@お腹いっぱい。
25/10/31 22:34:13.81 .net
arm64
patch-002 ... これからビルドされる中でcvs update→コンパイルされるので放っとく
patch-003,004 ... 修正済みのソースでビルドされた後だった
patch-005 ... 手付かず
だったので、patch-005のみ手動でcvs update→make→バイナリパッチ用tarball作った
005のtarballは、河豚板作るときに忘れずに適用しないと
27:名無しさん@お腹いっぱい。
25/10/31 22:58:12.53 .net
実況してきた中で質問ありますか?
28:名無しさん@お腹いっぱい。
25/11/01 01:43:46.41 .net
ジェネリックカーネルのコンパイル中
インストールカーネル、xenocara、portsと進んでおわり
朝起きたらどこまで進んでるかな
29:名無しさん@お腹いっぱい。
25/11/01 09:38:54.70 .net
朝、tmux attachしてみたら、ちょうどOpenBSD/arm64のビルドが終わるところだった(RPi400の方ね)
これから河豚板のビルド
ちょっと詳しく書いてみる
30:名無しさん@お腹いっぱい。
25/11/01 09:50:47.07 .net
手順は概ねgithub.com/ykaw/FuguItaのREADME.txtどおりなんだけど、
リリース初回なので、もう少しやることがある
RPi400での河豚板ビルドは初めてなので、リポジトリからcheckout
- make initでディレクトリ作成
- lib/fioptでrsync, pv, rlwrap作成
(portsを汚さないように、独自ビルド&インストールになってる)
- install-setsに*78.tgz, fiopt.tgz(今作ったやつ)入れる
make setup && make livedvd
31:名無しさん@お腹いっぱい。
25/11/01 10:30:42.86 .net
sysmedia/cdbrターゲットをmake中にエラー発生
arm64はcdbr (CD boot record)を作っておかないといけないの忘れてた
i386/amd64は/usr/mdecからコピーすればいいだけだが
そのためのセットアップスクリプト FIBUILD/lib/makebootarc_arm64.sh を走らせて
再挑戦
32:名無しさん@お腹いっぱい。
25/11/01 13:54:56.77 .net
一応ISOイメージできた
実機ではISOイメージから起動できないので、仮想環境が要る
めんどくさいので、pkg_add qemuで。
遅いけど、運用環境として使うわけじゃないから、これでいいか
エラーで動かん
「qemu-system-aarch64: cannot set up guest memory 'mach-virt.ram'」
しばし調査
.... って、またlogin.confかい(脱力)
33:名無しさん@お腹いっぱい。
25/11/01 14:10:38.75 .net
./qemu_aarch64.sh FuguIta-7.8-arm64-202511011.iso &
↑
EFIファームウェア(QEMU_EFI.fd)読み込んだり、シリアルコンソールを
telnetに設定したりとか色々やってqemu起動するラッパースクリプト
telnet localhost 10023
Trying ::1...
Connected to localhost.
Escape character is '^]'.
.
ん、「.」がでただけでだんまり
ブート廻り失敗してるっぽい
34:名無しさん@お腹いっぱい。
25/11/01 14:24:08.79 .net
>>31 のmakebootarc_arm64.sh をチェック
これはESP (EFI System Partition)の中身をリマスタリングのために
tarballにするスクリプトなんだけど、
これは、gen_makebootarc_arm64.shというスクリプトが生成する
gen_makebootarc_arm64.shはpkg_addで入れたラズパイファームウェアとu-boot、
それと実際にインストールされているESP (EFI System Partition)の中身を
付き合わせてmakebootarc_arm64.shを生成する
改めてgen_makebootarc_arm64.sh走らせてみたら、7.7から使い回してきた
makebootarc_arm64.shとかなり違っていた(RPi5用のファーム/設定が追加されてたとか)
35:名無しさん@お腹いっぱい。
25/11/01 14:31:13.79 .net
気を取り直して make setup && make livedvd
>> と同じエラー「vnd3d: Device Busy」
あ、
36:名無しさん@お腹いっぱい。
25/11/01 14:35:07.85 .net
OpenBSDをフルビルドする時は、生成物の置き場所として別にパーティションが必要
(特別なマウントオプションを指定するため)
今回、パーティション切り直すのが面倒だったので6GBくらいのファイル作って
それをvnconfig && mountしてた
これが河豚板のMakefileの中のvnd3使ってる処理とコンフリクト
とりあえず、umount && vnconfig -u vnd3で再試行
37:名無しさん@お腹いっぱい。
25/11/01 18:00:44.50 .net
とりあえず生成したISOイメージでQEMUから起動成功
ただ、それでリマスタリングしたLiveUSBイメージが正常に起動しない
起動時にlndirでシャドウディレクトリを作るフェーズで、iノード番号がおかしいとか言われまくる
38:名無しさん@お腹いっぱい。
25/11/01 21:31:32.53 .net
判明
これ↓
fuguita.org/?%E6%B2%B3%E8%B1%9A%E6%9D%BF%E3%82%AC%E3%82%A4%E3%83%89/4-%E9%96%8B%E7%99%BA%E7%B7%A8#tfa3add4
やるの忘れてた。
ISOイメージが動いたのがうれしすぎてw
test# df -h
Filesystem Size Used Avail Capacity Mounted on
/dev/rd0a 3.7M 1.7M 2.0M 46% /
/dev/sd0a 1.2G 1.1G 9.4M 100% /sysmedia ←これが小さすぎてあふれてた
/dev/vnd5a 1.1G 1.1G 4.5M 100% /fuguita
mfs:30822 736M 30.5M 668M 5% /ram
fuguita_sys_mbに適正値を設定してOK
あとは実機での確認。
arm64の場合、QEMUではQEMU_EFI.fd、実機(ラズパイ)ではRPi FW+U-Bootと起動のしくみが
全然ちがうので
39:名無しさん@お腹いっぱい。
25/11/02 00:07:19.95 .net
実機確認、RPi400でXfceが動作するところまでOK
RPi3Bは未確認(まだLLVMコンパイルしてるのでw)、多分大丈夫でしょう
あとは細かい確認・手直しをやって、OKなら河豚板 7.8の正式リリースですかね
リリースごとに毎回違うところでハマるんですが、今回ははarm64に予想以上にてこずりました。
河豚板では普通やらないようなコマンドの使い方をしたりもするので、
レアなバグを踏んでしまい、後本家に報告して直してもらったことも何回かありました
最後にちょっとだけ宣伝
>>12 で書いたような、河豚板のデスクトップ環境の構築法をQiitaで解説しています
qiita.com/ykaw/items/ff6e3490cf79c3351f92
現在、全四回の二回まで公開済み。よろしければどうぞ
長い連投になりましたが、読んでいただきありがとうございました。
40:名無しさん@お腹いっぱい。
25/11/02 18:46:49.41 .net
読んでません
読みません
お疲れさまでした
41:名無しさん@お腹いっぱい。
25/11/10 00:12:45.50 .net
ポスターってもう買えないの?