EBUGの原稿 *OpenBSDでLive CDをつくる [#t51994f1] **Why OpenBSD?, Why Live CD? [#e2ba0579] -Other BSD / Linux では? --Linuxでも昔1FDとかいじっていた。 --一番慣れたBSD → make releaseが昂じてやってみたくなった --OpenBSDには定番がない ---Linux ... http://www.frozentech.com/content/livecd.php によると295種類 ---FreeBSD ... FreeSBIE ---NetBSD ... pkgsrc - sysutils/mklivecd ---以前 OpenBSD を使った 1CD snortがあったがobsolete // -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...)| >~ #ref(BootSeq.gif,center) **方針 [#ke7c2074] -実環境をなるべく弄らないで載せたい。 --常用環境を持ち歩きたい --実環境のバックアップシステム **実際 [#t0c1505a] ***アプローチ1 [#b56439b6] -CD-ROMを直接マウントする。 --kernel config~ ''config bsd root on cd0c'' --書き込み可能な領域の確保 ... union FSを使ってCDにmfsを被せる。 --CDの作成手順 +++vnデバイス上にターゲットシステムのFile Tree作成 +++ISOイメージ作成~ ''mkhybrid -R -o'' '''output''' ''-b'' '''boot-record''' ''-c'' '''boot-catalog''' '''tree-dir''' +++CD-ROM書込~ ''cdrecord dev=/dev/rcd0c'' '''output''' -欠点 --「実環境をなるべくいじらない」にちょっと反する; ---mfs + union mount の準備のため、ターゲットシステムでの/etc/rcの改造が必要 --Union FSが不安定 (OpenBSD 3.8 でレイヤー系のファイルシステムは削除されてしまった) ***アプローチ2 [#w2b10a7b] -rd (RAM Disk)デバイスをrootとしてマウント ... インストーラが使っている方法 --kernel config~ option RAMDISK_HOOKS option MINIROOTSIZE=3800 ← 512byte block config bsd root on rd0a pseudo-device rd 1 # ram disk --rdsetrootコマンドでroot FSイメージをカーネルに組込む。 ---rd layout ... 必要なコマンドのみ, /etc/rc ---/etc/rcの構造 -欠点 --Read Onlyのサブディレクトリ以下を一部分書き込み可能にするのが繁雑 ---一部RWでないと動かない部分があった ... /usr/X11R6/X11/lib/xdm/authdir/* ---mfs+nullfs ... UnionFSよりは若干安定 ---lndirによる方法 ... symlink NGなものもあり ... /usr/lib/exec/auth/* **雑感 [#l36bc2da] -セキュリティに注意 --ホスト固有の情報を入れると紛失した場合危険 ... 端末的使用が無難 --mfs上の情報は消えると復帰できない。 **参考文献等 [#a2f27536] -manpage --boot(8), biosboot(8), boot_i386(8), cdboot(8), installboot(8), release(8) -Books --BSD MagazineのRD, MFS関係の諸記事 --Unix Magazine の Linux boot 周り (MBR~LILO) のあたり -Links --Building an OpenBSD Live CD~ http://www.onlamp.com/pub/a/bsd/2005/07/14/openbsd_live.html --How to Make a Bootable, Full System OpenBSD 3.2 CDROM~ http://www.blackant.net/other/docs/howto-bootable-cdrom-openbsd.php --CD Bootable OpenBSD firewall~ http://www.jtan.com/jtanoss/cdboot/ --Construccion de un OpenBSD LiveCD~ http://ieee.udistrital.edu.co/computer/docs/manuales/2004.05.04.manual_livecd_openbsd/html/manual-livecd-openbsd.html --FrozenTech's LiveCD List~ http://www.frozentech.com/content/livecd.php --ライブCDの部屋~ http://www12.tok2.com/home2/sachs/ -kaw.ath.cxの配布URL~ http://kaw.ath.cx/dl/pub/OpenBSD/LiveCD/