[FreeBSD-users-jp 95213] Re: multi boot env. on GPT HDD
Katsurajima Naoto
raven at katsurajima.seya.yokohama.jp
Wed Jun 4 13:57:52 UTC 2014
On Tue, 3 Jun 2014 14:51:05 +0900
KAWAGUTI Ginga <ginga-freebsd at ginganet.org> 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: raven at katsurajima.jp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: alter.4th
Type: application/octet-stream
Size: 1209 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-users-jp/attachments/20140604/1ae5dc41/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: menu.rc
Type: application/octet-stream
Size: 4398 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-users-jp/attachments/20140604/1ae5dc41/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: loader.conf
Type: application/octet-stream
Size: 351 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-users-jp/attachments/20140604/1ae5dc41/attachment-0002.obj>
More information about the freebsd-users-jp
mailing list