UbuntuPCに後からWindows8(10)を入れる2015-11-15
Ubuntuの自作PCを2年半ほど使ってきて満足していましたが、特定のアプリを使う為にWindowsを導入する事にしました。そのアプリの筆頭は、今年買ったヤマハのシンセに付いていたCubaseAIですが、他にもSketchUPとかPicasaとかGoogleのアプリが意外とLinuxに対応してないんですよね。
そこで今回は、Ubuntuが入っているPC(同じHDD)に後からWindowsを入れてデュアルブート環境を構築するという、トラブルの香りがプンプンする作業をしたのでレポートをお届けします。
Windows8か10か?
先ず通常版のWindowsは以前のバージョン(XPや7など)が入ってるPCにしか使えないので、自作PCなどで新規にインストールする場合はDSP版が必要です。
Win8はDSP版が単体で購入できますが、ご存知の通りOSとしての評判がすこぶる悪いので、次のWin10が出るまで待っていました。ところが発売されたWin10のDSP版はプリインストール方式(パーツとの抱き合わせ販売)が復活し、一番安くても必要のないUSB拡張ボードが付いたWin10が1.3万円くらいします。
なので結局、1万円くらいのWin8 DSP単体を買って、それをWin10に無償アップグレードすることにしました。何らかのトラブルでOSを再インストールした場合にはまた8に戻ってしまうことになりますが、10にアップグレードしたディスクイメージを保存する方法があるらしいので、後々試したいと思います。
Ubuntu&Windowsデュアルブート環境の構築
さて、ようやくここからが本題です。UbuntuはWindowsとの共存を念頭に作られているので、Windows PCに後からUbuntuを導入するのは割と簡単(基本的にウィザードに従うだけ)です。しかし、その逆にUbuntu PCに後からWindowsを入れるのはレアケースなようで、情報も少ないし難易度が高そうです。
そこで僕が参考にしたのは、この記事です(多分本件で最も多く読まれている)。結論から言うと、大筋ではこの手順で成功しましたが、ここに書いていない幾つかの障害があったので、それを含めて報告します。
まず改めて、今回行った手順をまとめると、次のようになります。
- Ubuntuが入ったドライブに、Windows用のパーティションを新たに作る。
- 上で作ったパーティションにWindows8をインストールする。
- Windows8を10にアップグレードする。
- UbuntuのLive DVDでPCを起動開始(下準備が必要)
- 上記起動中に起動コマンドを修正し、HDDに入ってる元のUbuntuで起動。
- ターミナル(Windowsでいうとコマンドプロンプト)を起動し、コマンドを入れてGrub(ブートローダー)を再構築する。
1.パーティションの新規作成
UbuntuのLiveDVD(インストールディスク)でPCを起動し、標準装備のツールでパーティションを作ります。上の記事の通りタイプはプライマリ、ファイル形式はNTFSを選択しました。作業時間は、撮り貯めた画像ファイルなどが100GBくらいあったせいか数時間かかりましたが、最後まで問題なく進みました。
2. Windows8のインストール
買ってきたWindows8のインストールディスクでPCを起動すると、どのパーティションにインストールするか聞いてきます。パーティションの表記がUbuntuで確認したものとは違うので一瞬迷いますが、選択できるパーティションは一つしかないのでそこを指定しました^^;
因みにここでエラーが出て、インストール出来ないという記事がありましたが、僕の環境では全く問題ありませんでした(何が違うのか判りません)。ウィザードで簡単な設定をした後、自動的にインストールが進みます。時間は意外と短くて、20-30分ほどで完了したでしょうか。
3. Windows8から10のアップグレード
再起動すると、いよいよWin8の登場です。するといきなり10へのアップグレードを薦めてきます。後で考えると、これは一番最後にやった方が良かったかも知れません。しかし、デスクトップの出し方にも迷うタイルメニューや、Win独自のスカスカ・ギザギザのフォントを久しぶりに見て辟易してたので、薦められるままにアップグレードしてしまいました。意外にも1時間以上かかってようやく完了。
4.Ubuntu LiveDVDで起動
この時点でWindowsは使えるようになりましたが、代わりにUbuntuが起動しなくなっています。そこでPC起動時に、元通りGRUBというブートローダーが立ち上がり、OSを選択できるように設定していく必要があります。
そこで先ず、先ほどのUbuntu Live DVDでPCを起動します。ところが、BIOSのブートメニューでDVDドライブを選択したのにそれは無視され、何故かWindowsが起動してしまうではないですか!
これについてネットを調べると、どうやらWindows8以降が入ったUEFI(新型BIOS)のPCでは、次のような設定が必要みたいなのです。
- Windowsの「高速スタートアップ」の機能をOFFにする(参考記事)。
- UEFIで「セキュア・ブート」機能をOFFにする。又はセキュアブート対応OS(Ubuntu14以降?)をインストールする。
これに従って両方やってみましたが、やはりWindowsが立ち上がってしまいます。そこで新たにLiveUSBスティックを作って試したら上手く行きました(^^) 元のLiveDVDというかCDに入ってたのがどうも古いバージョンのUbuntuだったのと、ディスク自体も調子が悪かったのかも知れません。
5.元のUbuntuで起動する
LiveDVD(USB)が認識されたからといって、そのままそのメディアで起動してもダメです。冒頭の記事に従えば、「人型+キーボード」アイコンが出てるうちに何かのキーを押して起動を中断します。すると下の左図のような言語選択画面になります。
一番下の行にあるように、F6キーでその他の設定が出来るようなので、押しましたが反応しません(反応するのはF1のメニューだけ)。悩んだ挙句、一旦Enterキーを押してみると、上の右のような画面が出てきました。そこですかさずF6を押すと起動オプションが現れたので、記事に従い文字列の「boot=casper」の部分を「root=/dev/sda1」に修正しました。
するとしばらく、ディバイスチェックのような文字列が沢山現れた後、遂にあの見慣れたデスクトップが現れました!元のUbuntuが起動したのです。そこで次はターミナルでの設定ですが、マウスが全然効かないので一旦シャットダウンする事にしました。
実はマウスが効かないのは普通みたいなので、ターミナルを出すショートカットを確認してから、再び同じ手順でUbuntuの起動にトライ。ところが今度は「人型+キーボード」アイコンは現れず、Grubのメニューが現れるだけです。そのまま進んでも当然Liveメディアで起動するだけ。再起動しても同じ状況です。
そこでこのGrubメニューの下に「press ‘e’ to edit」とか書いてあるので、eキーを押してみると起動ディバイスの場所を指定するような文字列が現れました。なので先程と同じように「boot=casper」の部分を修正してEnterすると、めでたく元のUbuntuが起動しました!
6.Grubの再構築
ここまで来たら、ショートカットでターミナルを立ち上げて、記事にある次のコマンドを打ちこむだけです。
$ sudo update-grub2
$ sudo grub-install /dev/sda
ただ、この人の環境ではGrubをインストールする先は「/dev/sda」(パーティションsda)とありますが、僕の場合はsda1なのかsda2なのか判りません。そこで別の記事を調べたら、どうやら普通はsdaにインストールするみたいです。そこで、上記のまま打ち込むと、正常に実行完了。
Grubメニューの確認
あとはいよいよ苦労の成果を確認する時です。今度は普通にHDDからPCを起動します・・・・すると遂に見慣れたGrubのOS選択メニューが出てきました!
ところが・・・選択肢はUbuntuしかありません(*_*; 上の記事ではWindowsもUbuntuも選択出来るようになるとありますが、考えてみたら元のGrubを復活させただけなので、Windowsが含まれる筈がないのではないかと・・・
Grubの更新
そこでGrubメニューに新たな選択肢に加える方法を探してみると、こんな記事を見つけました。何かの設定ファイルを編集して、選択肢の表記とそのOSがあるパーティションのIDを追記するようです。そこで書かれた通りに「Windows10」を追加して、再起動してみました。
すると、起動メニューでちゃんとWindows10の選択肢が出てきました!ただ、古いHDDに入ってるWinXPとか別の選択肢も増えてますね^^; よくわからないけど、取り敢えずWindows10を選んで起動!・・・ところが「そんなものは見つからない」みたいな感じでエラーになってしまいます(*_*;
どうも余計な事をしてしまったようなので、編集した設定ファイルを元に戻し再起動しました。Grubメニューでは当然Windows10は消えていましたが、代わりにWindows8があったのでそれを選択してみました(右図)。
すると、ちゃんとWindows10が起動するではないですか!最初にインストールしたのは確かにWin8なので、そのように記録されてる訳ですね。やはりブートメニューを手動で書き換える必要はなかったようです。
恐らく上述のコマンド「update-grub2」でOS一覧情報がリフレッシュされるのでしょう。ただこれを2回やらないと、Grubに反映されないという事でしょうか?
何れにせよ、無事にUbuntuとWindows10のデュアルブート環境を構築することが出来ました。延べ6時間近くかかってしまいましたが、すんなり行くはずはないと思ってたので想定の範囲内です^^; いやむしろ、ドツボにハマってクリーンインストール(元のUbuntuとファイルを失う)はめになることを思えば上出来と言えるでしょう。