ARCH UEFIブートとGPTハードディスク

まず、マルチブートの環境を整えるために、BOOTメニューを編集しなければならないが、OSをUEFIブートしなければ、それができない。しかし、うれしいことに、Arch LinuxのISOではEFIブートがサポートされている。
Unified Extensible Firmware Interface
https://wiki.archlinux.org/index.php/Unified_Extensible_Firmware_Interface#Create_UEFI_bootable_USB_from_ISO
上記のページに詳しく記載されているが、実際に行ったのは以下の通り。
1)UEFIブートのUSBメモリを作成する
USBメモリをFAT32でフォーマットする。HDD形式でもFD形式でもOK。
その後、ISOイメージの中身をコピーする。大文字と小文字を識別するので、Windowsでのコピーは要注意。
これだけで、UEFIブートできるが、Arch Linuxの読み込みのため、ボリュームラベルをARCH_201303などに変更しておく。
2)Arch Linuxのインストール
E130のハードディスクのwindows 8のパーティションをあらかじめ縮小して開けておく。
loadkeys jp106でキーマップの変更。
gdiskでインストール用パーティションを確保する。今回は、ルート用パーティションのみ作成した。
mkfs.ext4 /dev/sda5でフォーマットするが、その前にリブートしておかないとパーティションのサイズを正しく認識しないことがある。
mount /dev/sda5 /mnt
wifi-menu wlp3s0 インターネットへの接続
pacstrap /mnt base base-devel
genfstab -p /mnt >> /mnt/etc/fstab
arch-chroot /mnt ターゲットに切り替え
echo KEYMAP=jp106 > /etc/vconsole
ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
echo ホスト名 > /etc/hostname
vi /etc/locale.gen 日本語のja_JP.UTF-8などをコメントアウト
locale-gen
pacman -Syu
pacman -S grub-efi-x86_64
mount /dev/sda2 /boot/efi
grub-install
grub-mkconfig -o /boot/grub/grub.cfg
これで、リブートできるのですが、rootにパスワードを設定しておかないとログインできません。
また、インターネットへの接続のためのパッケージをここでダウンロードしておかないと、何もできないので、とりあえず、netcfg, wpa_supplicant, dialog, wireless_toolsなどをインストールしておきます。
また、grub2はwindows 8のブートには失敗するので、windows boot manegerをgrub2のメニューに加えるために、/boot/grub/custom.cfgを作成しておくと、/etc/grub.d/41_customで取り込んでくれます。
vi /boot/grub/custom.cfg
menuentry “windows boot maneger” {
efiboot=/EFI/Boot/bootx64.efi
search –set=root –file $efiboot
chainloader $efiboot
}
これなら、windows 8は高速起動のままで、Arch Linuxに切りかえることができます。
ノートとのmultibootなので、システムクロックをUTCとした。
Windows 8のレジストリを変更
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
RealTimeIsUniversal=(DWORD)1
Linuxでは、timedatectlで確認できる
timedatectl set-local-rtc 0でUTCに設定

コメント