On Tue, 3 Jun 2014 14:51:05 +0900 KAWAGUTI Ginga <[email protected]> wrote:
> [やりたいこと] > * GPT な HDD のPC(thinkpad X240)で, > FreeBSD を native にインストールしたい. > (note PC で windows との共存を図りたい) > > [希望条件] > * OS本体は HDDのGPTパーティション上で動かしたい. > * HDD単体で済めばそれにこしたことはないが, > USBメモリ等にブートセレクタ・ローダ等だけを入れて > HDDの方に入っているkernelを起こす方法でも全く問題ない. > - (起動後 USB メモリを抜いていい方がありがたいが刺さりっ放しも許容) > > * ZFS のほうが扱いやすそうに思えるが, > UFS でできるならそれでもOK 現在丁度, VAIO Pro11にWindows8.1とStable-10をGPT上でデュアルブートする 環境を構築中です. 今のところ内蔵SSDにUFSでシステムを格納し, USBメモリから起動後, ドライブ を内蔵側に切り替え, 内蔵側からカーネルブート以降の処理を行うようにしてい ます. この際 ・USBメモリ上にはMBR形式でFreeBSDシステムを構築する ・PC側はBIOSの動作モードをUEFIではなく, 従来のBIOSと互換モードとする ことが必要でした. ここでbootメニューまで起動できれば, 一旦[Esc]キーを押してbootコマンド プロンプトに抜けます. bootコマンドプロンプトで lsdev[Enter] と入力すると, ブートローダから認識されているディスクデバイス(パーティション) の一覧が表示されます. USBメモリについてはdisk0*という形で表示され, GPTパーティションで割り当てた内蔵ディスクはdisk1p*という形で表示されます. UFSでブートする場合, 例えばdisk1p8というパーティションにシステムが格納 され, ルートファイルシステムに"System"というラベルが付けられている場合には 次の様な一連のbootコマンドを入力することで内蔵ディスクからシステムを 起動できます. set currdev=disk1p8[Enter] set rootdev=disk1p8[Enter] set module_path=/boot/kernel;/boot/modules set vfs.root.mountfrom=/dev/ufs/System[Enter] unload[Enter] unset kernel[Enter] boot[Enter] 実用的にはこの一連の処理はUSBメモリのbootスクリプトで自動化できます. 切り替え/起動用のスクリプトを添付しておきますので, 参考にしてみてください. この方法は取り合えず動くことは確かなのですが ・起動毎にUSBメモリから起動するための特別な操作が必要になる ・FreeBSDのブートローダがUEFIに対応していないため, Windowsと切り替える 際にBIOSの動作モードの変更が必要 という欠点があります. ということでUSBメモリを使わずに内蔵ディスクのみでデュアルブートする方法 ですが, Windowsのブートマネージャを使う方法がエレガントな気がします. 具体的な方法は"bcdedit"というコマンド名をキーにして検索をかけると, いろいろ 出てきます. また, この際にはFreeBSDのブートローダもUEFI対応の物を使う 必要がありますが, UEFI対応ブートローダは2ヵ月ほど前にcurrentに入りました ので(詳しくはhttps://wiki.freebsd.org/UEFI), それを持ってくれば動くんじゃ ないかと思います. -- Katsurajima "Raven" Naoto(桂島 直人) Family Emblem: Circle and Left 3 Clove-TOMOE(丸に左三つ丁子巴) e-mail: [email protected]
alter.4th
Description: Binary data
menu.rc
Description: Binary data
loader.conf
Description: Binary data
_______________________________________________ [email protected] mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-users-jp To unsubscribe, send any mail to "[email protected]"
