丸山です。

Tue, 19 Apr 2016 02:44:43 +0900 (JST)
n-kog...@syd.odn.ne.jp (Nobuyuki Koganemaru) writes:

>MBR でディスクを作成するのには、8.4-RELEASE の fdisk で構築するのが
>最も簡単なのですが、いつまでも fdisk を使用するわけにはいきませんので、

うーん、理解できません。「MRBは捨てるべし」と私は言いましたが、でももし
どうしてMBRを使いたいのであれば /sbin/fdisk を使って何の問題もないと思い
ます。実際FreeBSD10.3にも /sbin/fdiskはありますし。

以下の理由により、例え MBR がFreeBSDの世界で滅んでも、 /sbin/fdisk は生
き続けると考えています。

まず GPT スキームでレイアウトされたディスクを fdisk で見てみましょう。先
ほどの実験で用いたUSBメモリスティックですが、

# fdisk da0
******* Working on device /dev/da0 *******
parameters extracted from in-core disklabel are:
cylinders=941 heads=255 sectors/track=63 (16065 blks/cyl)

parameters to be used for BIOS calculations are:
cylinders=941 heads=255 sectors/track=63 (16065 blks/cyl)

Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 238 (0xee),(EFI GPT)
    start 1, size 15124991 (7385 Meg), flag 0
        beg: cyl 0/ head 0/ sector 2;
        end: cyl 1023/ head 255/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>

となります。つまり GPT ディスクを「Microsoft slice」の観点から見ると、そ
れは全体で一個のスライス(識別子 238)に見えます。何故こうなっているか?そ
れを理解するには、FreeBSDとWindowsの戦いの歴史を思い出す必要があります。

FreeBSDでは伝統的なBSD label によってdiskを分割していましたが、
MSDOS/Windowsの普及により、MSDOS/WindowsマシンにFreeBSDを載せる/同居させ
る必要が生じて、それで(Microsoft slice)+(BSD label)の方式が考え出された
わけですが、伝統的なBSD支持者の中にはそれが気に入らなかった人達は当然い
たわけで、MSDOS/Windowsは使わないからMiscorsoft sliceは不要ということで、
BSD labelをディスクの最上位構造にしてMicrosoft sliceは無視したディスクレ
イアウトを使う方法が暫くの間可能でした。実際 FreeBSDの4.xとか5xの時代ま
ではインストーラーでそのようなレイアウトは選択できました。ところがそれを
やると「事件」が起ってしまったのです。それは、そのようなディスクを装備し
たマシンでWindows を起動すると、その BSD labelを勝手に壊してしまったので
す。BSD labelが最上位構造のディスクを Microsoft slice的な観点で見ると、
それは「出鱈目なデータが書かれた壊れたディスク」に見えるのでしょうね。で
も勝手にデータを書き換えるなんて何様じゃ!と私を含めて多くのFreeBSD愛好
家は怒りを感じたわけですが、泣く子と Microsoftには勝てなかったわけです。

Windows8の時代になって、プリインストールWindowsは GPT ディスクになりまし
たが、それでもリムーバブルメディアのWindows標準は(Microsoft slice)
+(FAT16,FAT32,exFAT)です。Microsoft slice情報をメディアの先頭に持たない
メディアはいつでも、この「Windowsによる傍若無人な破壊」の危険に晒されて
います。そこでこれを回避するために、GPT では形式的にMicrosoft slice情報
をつけている、というわけです。

そういう事情ですので、例え MBRが使われなくなっても、「Windowsによる傍若
無人な破壊の危険がないか」を確認するために、今後長きにわたり /sbin/fdisk
コマンドは必要です。

私の主張は「MBRは捨てるべし」であって「fdiskを捨てるべし」ではないのです。
gpart であっても MBRはやめるべきです。

--------
丸山直昌@統計数理研究所
_______________________________________________
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-unsubscr...@freebsd.org"

メールによる返信