Let's Note SX4にFreeBSDをインストールする(失敗)
Let's Note SX4FDKBPに入っているWindows 8.1 Pro 64bitの領域を縮小し、
空き領域にFreeBSD 10.1を入れてデュアルブートするのが目的。
Windowsでの作業
高速スタートアップ解除
高速スタートアップを無効にする。
http://www.eightforums.com/tutorials/6320-fast-startup-turn-off-windows-8-a.html
ecoモードにする
ecoモード(80%までしか充電しない; 電池の寿命が延びる)にする。
ディスクを縮小する
ディスクを縮小する。
思ったよりサイズが小さくできない場合は、いったんシステムの復元を無効化するとよい。
復元の無効化
システムのプロパティ→システムの保護
「保護設定」の「構成」→システム保護対象
で「システムの保護を無効にする」を選択
終ったら元に戻しておく。
別のFreeBSDマシンでの作業
ブートイメージを使ってインストールメディアを作成するわけだが、
UEFIでブートしたいので、ファイル名にuefiという文字が入っているイメージファイルをとってくること。
CDではなぜかうまくいかなかったので、今回はUSBメモリースティックのための以下のイメージを使用した。
# dd if=Downloads/FreeBSD-10.1-STABLE-amd64-20150520-r283161-uefi-memstick.img of=/dev/da0 bs=64k
などとして書き込み。
Let's Noteでの作業
USBメモリを差した状態で起動し、起動時にF2を押してファームウェア設定画面に入る。
UEFIの起動順序にUSBメモリスティックの選択が現れるので、それを先頭に持ってくる。
すると、リブート後にインストーラが立ち上がるので、インストールを進める。
終ったらリブートする。Windowsが立ち上がるが、心配ない。
コマンドプロンプトを右クリックして管理者として実行する。
> bcdedit.exe /copy {bootmgr} /d "FreeBSD"
得られたUUIDをコピーしておく。
EFIパーティションをマウント。
> mountvol.exe e: /S
中を見る
> dir e:\ > dir e:\EFI\Boot
これで、e:\EFI\Boot\bootx64.efiというファイルがあることが分かった。
というか、よく見たら https://wiki.freebsd.org/UEFI に書いてあった。
> bcdedit /set {得られたUUID} path \EFI\Boot\bootx64.efi > bcdedit /set {fwbootmgr} displayorder {得られたUUID} /addlast
(いろいろあって、この間リブートしている)
> diskpart.exe DISKPART> select disk 0 DISKPART> list partition DISKPART> select partition 6 DISKPART> list volume DISKPART> assign letter=U DISKPART> exit
> bcdedit.exe /set {得られたUUID} device partition=U:
これでRebootしてF2を押してファームウェア設定画面に入ると、起動オプションにFreeBSDという選択肢が出てきます。
これを先頭に持ってきます。設定を保存して終了します。
すると、次回の起動時からは、FreeBSDが起動する、、、ようです。
ところが、今度はWindowsの起動に問題が起きて、
ファームウェア設定画面から直接Windows Boot Managerを選択しても、起動しなくなりました。
こまった。