VAIO Pro11 [red edition] SVP1121A2J をUEFIでトリプルブートにしてみた

昨年11月に導入したPro11にパーティションを切ってLinux MintとArch Linuxを入れてみました。

Windows,LinuxでUEFIのデュアルブート、トリプルブートする手順をまとめておきます。

準備するもの

  • USBフラッシュメモリ
  • Plannex UE-1000T-U3 (USB-Ethernetアダプタ) このアダプタインストール用途以外にも高速で結構使えます。
  • リカバリBD/DVDとドライブ若しくはUSBフラッシュメモリなどリカバリ類一式 (必要であれば)

Windows領域のリサイズ

SSD256GBバイト仕様のPro11は出荷時設定で約200GBのWindows領域、所謂Cドライブが割り当てられています。パーディション管理ソフトなどで、これを128GBにリサイズします。変更サイズについてはWindowsをどのように使うかによると思うので、必要なサイズを割り当ててください。当記事はリカバリ状態での改造を起点として、パーティション割り当てを記述しています。クリーンインストールによるパーティションはディスク番号の割り当てが異なります。ご注意ください。

他OSのインストール

UEFIのマルチブートをやりたかったので、事前に幾つかのディストリビューション等を仮インストールして試しました。(いずれもAMD64版です。)
ハードウエアはVAIO Pro11 SVP1121A2Jです。同系であっても他の環境、例えばでは前身の夏モデルでは結果が異なるかもしれません。

  • Debian(7.4) △ インストールは完了するがXの起動が失敗する
  • Ubuntu(13.10) ○
  • Linux Mint(16 “Petra”) ○ ほぼ順調にインストールが可能
  • Arch Linux(Release: 2014.02.01) ○
  • Vine Linux(6.2) × UEFI 非対応
  • Chakra(Curie) × UEFI非対応
  • Soralis(11.11) × インストールメディア起動失敗

ということで相性がよさそうなLinux Mintをまずインストールします。ライブCDを焼いたUSBフラッシュメモリからVAIOを起動します。
事前のBIOS設定画面で次を変更しておきます。

  • Secure Boot = Disabled
  • External Device Boot = Enabled

電源オフ状態からASSISTボタンを押し、VAIO Care (レスキューモード)に入ります。
メニューから「USBやフラッシュメモリから起動」を選択します。
(BIOS設定で起動プライオリティを変更しても構いません。私は後で設定を戻すのが面倒だったので、この方式にしました。)

インストール完了後、再起動でWindowsが単独起動します。が、起動オプションは出てきません。
(レガシーなBIOSなら、インストール最終段階でGRUBを弄りますか?等の案内が出て、パワーオン時にGRUBのOSセレクタが出ます。)
GRUBを補正します。

ここの記事「VAIO Pro 11でDebian GNU/Linuxをインストール」を参考にしました。

DebianインストールDVDを焼いたUSBフラッシュメモリを挿します。
電源オフ状態からASSISTボタンを押し、VAIO Care (レスキューモード)に入ります。
メニューから「USBやフラッシュメモリから起動」を選択します。
Debian Rescueモード起動、SSDのMintにログインします。
下記のコマンドを実行。efiファイルをGRUB由来のものにすげ替えます。

Linux Mintの場合参考記事のdebianをubuntuに置き換えてコマンド入力します。
ブートパーティションは、プリインストールの構成では/dev/sda3
クリーンインストールでは/dev/sda2となるはずです。





# mount -t vfat /dev/sda3 /boot/efi
# cd /boot/efi/EFI/Microsoft/Boot
# cp bootmgfw.efi bootmgfw.efi.org
# cp ../../ubuntu/grubx64.efi bootmgfw.efi
# cd /
# umount /boot/efi
# exit

これだけでは、Windowsのほうが起動できなくなるので、次にGRUBメニューの編集を行います。
Linux Mint通常起動で端末を開きます。
blkidコマンドで確認、/dev/sda3のUUIDをメモっておきます。
# blkid
/dev/sda1: LABEL="SONYSYS" UUID="FEE2-67F6" TYPE="vfat"
/dev/sda2: LABEL="Windows RE tools" UUID="52CAE2A0CAE27F99" TYPE="ntfs"
/dev/sda3: UUID="DEE2-99E7" TYPE="vfat"
/dev/sda5: UUID="01CF2E304BAE0F40" TYPE="ntfs"
/dev/sda6: LABEL="Recovery" UUID="B0ACE388ACE34804" TYPE="ntfs"
/dev/sda7: UUID="c8567096-2c32-4855-87e2-d0564db37113" TYPE="swap"
/dev/sda8: UUID="d1ef64d5-1b35-4031-8a3f-c94eb3f50618" TYPE="ext4"
/dev/sda9: UUID="14b30342-1bd4-45f4-b7d6-9e72b7a7f824" TYPE="ext4"
/dev/mmcblk0p1: UUID="9C33-6BBD" TYPE="exfat"
/dev/sdb1: LABEL="Debian 7.4.0 amd64 1" TYPE="iso9660"
/dev/sdb2: SEC_TYPE="msdos" UUID="5A50-D72C" TYPE="vfat"


先のUUIDを検索先の値にします。

# vi /etc/grub.d/40_custom

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
menuentry "Windows Boot Manager (SONY Original)" {
insmod part_gpt
insmod fat
set root='(hd0,gpt3)'
search --no-floppy --fs-uuid --set=root DEE2-99E7
chainloader /EFI/Microsoft/Boot/bootmgfw.efi.org
}

# update-grub

shellおよび40_customのソースは参考記事をほぼそのまま使用しています。
UEFI環境下におけるGRUBの編集についてはArch Linux – GRUB (日本語)Ubuntu日本語フォーラム – Grub 2 入門 に詳しい解説があります。
Linux Mint本体のインストールはほぼ自動でインストールできました。USB経由の有線LAN、内蔵の無線LANも自動で認識しました。 Arch Linuxはコマンドベースのインストール方式なので、ちょっと手間取りました。(ちなみに筆者はLinux初級スキルです。)
下記を参考にしました。
VAIO Pro に Arch Linux をインストールするにあるArch LinuxインストールCD起動時の設定でlibata.force = noncq を先頭に書き加えるとありますが、私の環境では設定しないほうが正しくSSDを読みました。 ディスプレイ(ログイン)マネージャはSLiM、ウィンドウマネージャはAwesomeにしました。Arch Linuxのインストールは大変手間がかかりますがその分成功したときの感動は大きいです。そしてなによりコンピュータやオペレーティングシステムの勉強になりとても有意義です。 Windowsを8から8.1にアップグレードすると、ふたたびGRUBが消されるので上記手順でもう一度OSローダをGRUBに差し替える必要があります。 マルチ、トリプルブートが何らかのきっかけで上手くいかなくなっても、
まずWindowsスタートアップの修復から始めて、Windows単独のブート、次にefiのすげ替えと・・・
という手順を追えば、ほぼ間違いなく修復できます。 ちなみにGRUBを使わないでWindowsのブートローダを使う方法は、EasyBCDを使って確認しましたがうまくいきませんでした。
GRUB画面
Archのログイン画面
ArchのGUI画面
137GBというのがWindows、次にSwap、Ext4、Ext4

更新

2014/02/23 1st
2014/02/24 shellの内容追加