先輩方の記事を見て自分の試行錯誤もまとめておこうと思った。
自分の機種も大学で推奨されていたPCである。
(実はそれ以外のPCを買うならデュアルブート可能な機種にしてくださいと言われたのに
推奨PCがデュアルブートできなかったというオチがついてしまったことは黙っておく。
結果VMware Playerを使用して講義を行っていた。)
実は発見したのは数年前でWindows8の段階でも同じ結果を得ており、こんなところに書き込んだことがある。
というか記事の内容はかつてWindows8とUbuntu14.04で起きたことをまとめたものである。
しかしWindows10とUbuntu MATE16.04で実験しても全く結果が同じであったため問題はないと思われる…。
だいたいのことは上の掲示板に書き込んだとおりなのだが、ここに再びまとめ直すことにする。
ゴタゴタしてるのが嫌な方は"具体的な方法"のところまで飛ばして欲しい。
#環境
PC:東芝 Dynabook R632/H (PR632HEWX4FA71)
OS:Windows10(Window8からのアップデート)
OS:Ubuntu MATE 16.04(デュアルブートさせようとしたOS)
どちらもuefiでブートできるようにすることを目指す。
#試したこと
##最初にしたこと
- パーティション分け
- 高速スタートアップとSecure Bootの無効化
- Ubuntu MATE(以下Ubuntuと略す)のLiveUSBの作成
- LiveUSBからブートし開けたパーティションにUbuntuをインストール
ぶっちゃけその辺でググって出てくるようなことをしただけ。
パーティションはWindowsが入っているところを24GBほど削り、
4GBをスワップに、残りをUbuntu(ext4)に割り当てている。
しかしインストール後再起動すると、
Insert system disk in drive.
Press any key when ready...
と表示されWindowsのブートすらできなくなる。
grub2のブートができていないようだ。
…ここでWindowsが起動できてしまった人は具体的な手順の7へ飛んで欲しい。
##次にやったこと
###再度LiveUSBからブートし、以下のコマンドを入力してBoot-Repairをインストール、起動する。
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update && sudo apt-get install -y boot-repair && boot-repair
当然ネットワークに接続しないといけないので設定が必要なら先に行っておく。
###とりあえずおすすめの修復とやらを試す。
英語版なら"Recommended repair"とあるはずだ。
起動後そのまま上のボタンをクリックすれば良い。
再起動後
Insert system disk in drive.
Press any key when ready...
動かない。
###再度LiveUSBからブート、もう一度Boot-Repairを試す。
おそらく作業内容は保存されていないはずなので上記のコマンドをもう一度入力する必要がある。
今度は"高度なオプション"から"主なオプション"タブの"GRUBの再インストール"のチェックを外し、"MBR復元"にチェックを入れて"適応"。
英語版なら"Advanced options"から"Main options"タブの"Reinstall GRUB"のチェックを外し、"Restore MBR"にチェックを入れて"Apply"。
再起動後、Windowsが起動できる状態に戻った。
とりあえず一息入れる。
さて、ここでしばらくgoogle先生の力を借りて同じ症状の方を探した。
uefiでもWindows Boot Managerからgrubをチェインブートできれば良いがその方法も見つからなかった。
ここにも同じ症状と思われる方がおられたが、uefiでブートすることは断念している。
ひたすら調べるが解決策が一向に出てこない。
どうも東芝製ノートPC特有の問題のようだが確証はない。
調べるのに疲れて一旦休憩しようとWindowsでとあることをした。ついいつもの癖で。
最近のWindowsでは休止状態(ハイバネート)はデフォルトで使用できなくなっている。
しかし無くなった訳ではなく、設定で使用可能にすることができる。
方法はググれば出てくるので省略する。
自分は一々シャットダウンするのが面倒だが電池持ちも気にしていたので、
作業を終えるときには休止状態にする癖がついていたのである。
さて、休憩を終えて再度電源を入れる。
すると画面に現れたのはgrub2であった。
##あ…ありのまま 今 起こった事を話すぜ!
休憩を終えてgrub2をブートする方法もう一度調べ直そうと思ったら
画面に現れたのはgrub2だった。
な… 何を言っているのか わからねーと思うが(以下略
勿論そのままUbuntuの起動にも成功。
Windowsは休止状態なのでCドライブにはアクセスできないが、それ以外は全く問題なく動作する。
Ubuntu側でシャットダウン後再起動するとWindowsが休止状態から復帰する。
Windows側でシャットダウン後、再度起動するとWindowsしか起動しない。
もう一度Ubuntuを起動するにはWindows側で休止状態にする必要がある。
何故こうなったのかは上記の通りさっぱりわからない。
ただ休止状態から復帰すると何故か起動できるというのは間違いなさそうだ。
こうして奇妙なデュアルブートが構築されることになった。
#具体的な方法
この不完全なデュアルブートの構築方法をまとめる。
ただし何時起動できなくなるかわからない(後述)ためお勧めはしない。
実行するときはWindowsがインストールされていることが前提条件である点に注意して欲しい。
1_ 普通にデュアルブートを構築する手順を実行する。
2_ 再起動し、Windowsが起動できないことを確認。起動できた場合は手順7へ飛ぶ
3_ LiveUSB(CD)から起動しネットワークに接続後、以下のコマンドを実行してBoot Repairをインストール、実行する。
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update && sudo apt-get install -y boot-repair && boot-repair
4_ "おすすめの修復"を実行、再起動する。
;;; 英語版なら"Recommended repair"だ。
5_ 再度LiveUSB(CD)から起動しネットワークに接続、再度上記のコマンドを実行しBoot Repairを実行する。
6_ "高度なオプション"から"主なオプション"タブの"GRUBの再インストール"のチェックを外す。"MBR復元"にチェックをいれ、"適応"、再起動する。
;;; 英語版なら"Advanced options"から"Main options"タブの"Reinstall GRUB"のチェックを外し、"Restore MBR"にチェックを入れて"Apply"。
7_ Windowsから休止状態にする。
8_ 再度起動するとgrub2が起動できる。
方法は以上である。
##注意事項
この方法でUbuntuをブートする際にも
Insert system disk in drive.
Press any key when ready...
と表示されてしまうことがある。
体感だがUSBメモリ等を接続したまま起動しようとすると高確率で発生する(SDカードは問題ないようだ)。
こうなると上記の手順の3からやり直さないとUbuntuが起動できなくなる。
つまるところ割と不安定で結局LiveUSB(CD)を持ち歩かないと何時起動できなくなるかわからないシロモノである。
一々このページ見に来るのも面倒なので、上記の手順をUTF-8でテキストファイルにコピペしてSDカードにでも突っ込んどくと良い。
Windows側は休止状態であるため、Linux側から
WindowsでいうCドライブにはアクセスできないことに注意である。
重要なファイルでないならSDカードやクラウドサービスを使って共有すると良い。
共有用に別のパーティションを作るのもアリだが、テストしていないのでちゃんと動作するかはわからない。
USBメモリだと前述の通り接続したままLinuxを起動しようとした際に高確率で起動できなくなるので細心の注意を払うこと。
##その他
この記事の内容は試行錯誤の結果のもの、憶測や推測によるものも多く含まれておりますので正確性は保証できかねます。
この記事の作成者は閲覧者が被った如何なる被害にも責任を負いません。
PC上の全データのバックアップ等を済ませたうえで実験することを強く推奨します。
###7/17追記
高速スタートアップ機能が有効だとシャットダウンからでもgrub2をブート可能なことが判明。
わけがわからないよ…と言いたいところだが、高速スタートアップの実態は
カーネル等の一部に限定した休止状態であるらしいので同じ挙動を示すのもうなずける。
当然だが、高速スタートアップの影響を受けない再起動ではブートできない。
…でもやっぱりわけがわからないよ。
###8/18追記
ちょっと確認しに来てみたらこんな需要なさそうな記事なのに300viewを越えててストックやツイートまで頂いてしまいました。
先輩方にもリンクを貼っていただいてどうしてこうなった状態。本当にありがとうございます。
どうせ需要ないしと適当に端折ってた不親切なところがあったのでちょこちょこ訂正。
ついでに手順のとこの番号リストの間にコード挟むと番号がまた1から始まってしまうようなので汚い修正をした。
また、最近はUbuntuのインストール後そのままWindowsが起動できてしまうようで、
その場合の手順も追記。といっても手順の3~6までをバッサリ飛ばしてしまえばOK。
恐らくそのまま手順どおりに実行しても問題はないはず。起動できなくなった際には同様の手順が必要になる。