[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: installboot (Re: boot.fs.gz (Re: http://www.ceres.dti.ne.jp/~tsutsui/netbsd/))



筒井です。

> ( /usr と /var は mount してくれますが) / については、
> mount_ffs: /dev/sd0a on /: specified device does not match mounted device
> ということを言われて、良く分りません。     

#installboot の書式についてはつばいさんが回答されてますので…

kernel が起動時に
root on md0a
とか言って mount したデバイスと違うところを / に mount しようとすると
文句を言われるみたいです。 ofwboot の Boot: の prompt で
-a を指定してやると起動時に root device を指定できるので
md が root に config されてる kernel から起動しても sd0a 等を
root にしてたちあげられます。

#thorpej のように細工して chroot する、という手もあるんでしょうけど…

> installboot に関するドキュメントってあまり見たことがないので、

/usr/share/man/cat8/*/installboot.0
くらいでしょうか。どっちにしろわからない人には
さっぱりわからない説明ですけど。

たいていの arch で installboot がするのは

1. PROM 等が読み込む primary boot code (これが bootxx) を
   指定したデバイス (これが /dev/rsd0a) のしかるべき場所
   (つまり PROM が boot 時に読むところ)に書き込む

2. primary boot code が secondary boot code (これが ofwboot とか)
   を読み込めるように secondary boot code が filesystem 中のどの位置に
   書かれているかの情報を primary boot code の中に埋め込む

で、 2. の操作をするために secondary boot code の書かれている
filesystem はどこかに mount されている必要があって、かつ
そのファイル名を path 付きで指定するわけです。
また、secondary boot code をいじった場合は必ず installboot を
しなおす必要があります。

こんなとこでしょうか。
---
tsutsui@ceres.dti.ne.jp