Windows10をインストールしたハードディスクの後方に、新たに空領域を作成し、
次のようにディレクトリに対するパーティションを作成しCentOS 7をインストールした。
/boot 500MB最終的には、次のような構成となる。
swap 4GB
/ 35GB
(ただし、別マシンの状態なので、各領域のサイズは違う。)
インストール後、インストーラーに従い再起動すると、
ブートメニューが表示されたものの、Windowsの選択枝がなかった。
このままでは、先に導入されていたWindowsを起動できない。
■ディスクのパーティションの構成を表示した。
インストールしたCentOS 7 を起動してfdiskでディスクの状態を表示させた。
次のように、パーティション 1、2 がWindowsのものであり、
パーティション 3 以降が導入した CentOS 7 関係のものだとわかる。
(ただしパーティション 4 は拡張パーティション利用のためのもの)
# fdisk -l
Disk /dev/sda: 120.0 GB, 120034123776 bytes, 234441648 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子:
デバイス ブート 始点 終点 ブロック Id システム
/dev/sda1 * 2048 1026047 512000 7 HPFS/NTFS/exFAT
/dev/sda2 1026048 152518655 75746304 7 HPFS/NTFS/exFAT
/dev/sda3 152518656 153493503 487424 83 Linux
/dev/sda4 153493504 234440703 40473600 5 Extended
/dev/sda5 153495552 161306623 3905536 82 Linux swap / Solaris
/dev/sda6 161308672 234440703 36566016 83 Linux
この環境の場合、上記の sda2(Cドライブに相当) をWindowsの起動パーティションとして次の方法で設定するとうまく動作した。
■ブートメニューにWindowsパーティションの選択枝を追加した。
設定ファイルを編集して、メニューエントリーを作成した。
(hd0,1)は、上記リストのsda2を表している。
# 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 10 pro 64bit" {
set root=(hd0,1)
chainloader +1
}
編集後、次のコマンドを実行した。
# grub2-mkconfig -o /boot/grub2/grub.cfg
ファイル「/boot/grub2/grub.cfg」の内容を確認すると、上記エントリーが作成されていた。
システムを再起動すると、ブートメニューに作成したエントリーが表示された。
それを選択すると、Windows10を起動することができるようになった。
# reboot
<参考>
・CentOS 7 と Windows 7 でデュアルブートするには
< http://linux-junkie.at.webry.info/201411/article_1.html > 2016年11月14日
・GRUB2で知っておくとよいこと
< http://enakai00.hatenablog.com/entry/2015/11/27/152442 > 2016年11月14日