EBUGの原稿 *OpenBSDでLive CDをつくる [#t51994f1] **Why OpenBSD?, Why Live CD? [#e2ba0579] -Other BSD / Linux では? --Linuxでも昔1FDとかいじっていた。 --一番慣れたBSD → make releaseが昂じてやってみたくなった --OpenBSDには定番がない ---Linux ... 非常に沢山 ---FreeBSD ... FreeSBIE ---NetBSD ... pkgsrc - sysutils/mklivecd ---以前 OpenBSD を使った 1CD snortがあった -Live CDの利点 --利用の容易さ **Boot手順の概要 [#e2b049ba] |BIOS| CENTER:↓ ||HDD|FD|CD| |boot&br;sector|MBR|1st sector|El-Torito| |1st stage&br;boot|PBR(biosboot)|biosboot|cdbr| |2nd stage&br;boot|/boot|/boot|/cdboot| CENTER:↓ |kernel|/bsd| |~|mount root fs| CENTER:↓ |user&br;land|/sbin/init| |~|/etc/rc| |~|(fork gettys, etc...)| **方針 [#ke7c2074] -実環境をなるべく弄らないで載せたい。 --常用環境を持ち歩きたい --実環境のバックアップシステム **実際 [#t0c1505a] ***アプローチ1 [#b56439b6] -CD-ROMを直接マウントする。 --kernel config ... ''config bsd root on cd0c'' --RWな領域の確保 ---mfs ---union FSを使ってCDにmfsを被せる。 --CDの作成 ---vnデバイスでファイルシステム作成 ---ISOイメージ作成 ... mkhybrid ---CD-ROM書込 ... cdrecord -欠点 --「実環境をなるべくいじらない」にちょっと反する; ---/etc/rcの改造が必要 ---mfsのためのディレクトリをあらかじめ作成する必要あり --Union FSが不安定 ... OpenBSD 3.8 でレイヤー系のファイルシステムは削除されてしまった。 ***アプローチ2 [#w2b10a7b] -rd (RAM Disk)デバイスをrootとしてマウント ... インストーラが使っている方法 --kernel config ... config*** option??? MFSROOT/MFSROOTSIZE / pseudo-device??? rd 1 --rdsetrootでroot FSイメージをカーネルに組込む。 ---rd layout ... 必要なコマンドのみ, /etc/rc ---/etc/rcの構造 -欠点 --Read Onlyの部分でRWをエミュレートするのが繁雑 ---一部RWでないと動かない部分があった ... /usr/X11R6/X11/lib/xdm/authdir ---mfs+nullfs ... UnionFSよりは若干安定 ---lndirを試してみる ... symlink NGなものもあり ... /usr/lib/exec/auth/* **雑感 [#l36bc2da] -Security Issues --ホスト固有の情報を入れると危険 --mfs上の情報は消えると復帰できない。 **参考文献等 [#a2f27536] -manpage --boot, biosboot, installboot, release -Books --BSD MagazineのRD, MFS関係の諸記事 --Unix Magazine の Linux boot 周り (MBR~LILO) のあたり -Links --kaw.ath.cxの[[LiveCDを作ってみる]]に載せたもの。 --LinuxのLive CD一覧集 -kaw.ath.cxの配布URL