[FreeBSD-users-jp 96354] Re: ブートディスクの構造

Naomichi Nonaka nao @ enuenu.org
2018年 12月 10日 (月) 10:48:56 UTC


野中です。

大昔に調べたことはあるのですがすっかり忘れていたので、改めて
man gpartのBOOTSTRAPPINGの項を読むと、

A BSD disklabel is usually created inside an MBR partition (slice) with
type freebsd (see the PARTITION TYPES section).  It uses 8 KB size
bootstrap code image /boot/boot, embedded into the partition table's
metadata area.

とあるので、ディスクラベル中にブートコードは埋め込まれてるようですね。



On 2018/12/10 17:02, osawa.hisao @ tbd.t-com.ne.jp wrote:
> 大澤です。
> 
> なぜかSpamAssassinに引っかかってしまったので、
> 書き換えたうえメーラーも変えて再送です。
> 
> ブートパーティションの構造について文献があれば紹介していただきたく。
> 明確に書かれたものを見つけられないでいるので。
> 
> というのは、
> 現行PCはちょっと古いことからレガシーBIOSなので、
> ブートディスクの先頭セクタの boot0 が
> ブートスライスの先頭セクタにある boot1 を読み、
> boot1 が一つスキップしたセクタ以降にある boot2 を読み、
> boot2 が /boot/loader を起動する。
> なので、'bsdlabel -w'といった具合にディスクラベルを作成すると、
> offsetが16セクタ取られる。
> 
> だと思っていたのですが、
> 現在使用中のブートパーティション(ada0s1a)のラベルをみると
> offsetが0になっています。なぜ、0にしたのかは覚えていませんが、
> 最近気がつくまで数ヶ月間問題は起こっていません。
> 
> これは、たまたま動いているだけなのでしょうか。
> パーティション a の先頭セクタをddで読み出して見るとboot1 が
> 同 3セクタ目からはboot2 が入っていることが確認できます。
> 
> _______________________________________________
> freebsd-users-jp @ freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-users-jp
> To unsubscribe, send any mail to "freebsd-users-jp-unsubscribe @ freebsd.org"
> 



freebsd-users-jp メーリングリストの案内