#はじめに
個人用メモです. あくまで私の環境で動作しただけなので,
「パソコンこわれた(´・ω・`)」
と言われても責任は取れません. あしからず.
まぁそこまで深刻な事態にはならないと思いますが
動機
デュアルブートをしている PC でついてくる問題として, 電源ボタンを押した時に どの OS を起動させようかな, というのがあります. 例えば標準を Linux にして Windows を起動するときだけ Boot メニューから, というのは, 特定のキー(私の場合はF9)を連打したりしないといけないのでちょっと面倒です. そこで, Linux を起動する時に用いる GRUB のメニューから Windows を起動できないかな〜って思ったわけです(本当は違う理由があったりなかったり).
環境
- GRUB2
- UEFI環境
- Windows10, ArchLinux(Ubuntu とかでも大丈夫だと思います)
特に UEFI 未対応の方には, あまりためにならないかも
どうやんの?
以下のファイルを, /etc/grub.d/42_windows
として保存します.
ディスク名, パーティション名については人それぞれだと思うので, ご自身で調べてください.
(GRUB の shell にて, ls -l
で確認できます.)
#!/bin/sh
exec tail -n +3 $0
menuentry 'Windows' {
insmod ntfs
set root=(hd1,gpt1) # ここに Windows のディスク名, boot パーティション名 を入れる
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}
続いて, このファイルのパーミッションを -rwxr-xr-x
に変更してください(少なくとも実行できれば大丈夫だと思います).
$ sudo chmod 755 /etc/grub.d/42_windows
続いて, /boot/grub/grub.cfg のバックアップをとりましょう.
$ sudo cp /boot/grub/grub.cfg /file/to/backup/grub.cfg.bak
そして, grub-mkconfig1 コマンドで /boot/grub/grub.cfg に上書き保存をします.
$ sudo grub-mkconfig -o /boot/grub/grub.cfg
最後に reboot し, 再び GRUB のメニューに入ると Windows の文字が見えると思うので, それを選択すると Windows が起動するはずです.
起動した方, お疲れ様でした.
起動しなかった方, ごめんなさい:;(∩´﹏`∩);:
参考文献
24.5. GRUB 2 設定ファイルのカスタマイズ - Red Hat Customer Portal
How can I manually boot Windows from the Grub2 terminal? - Ask Ubuntu
-
grub2-mkconfig の方もいらっしゃるかもしれませんが, 大丈夫だと思います. ↩