[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 メーリングリストの案内