PCで遊んだ日々の備忘録

Making PC and Customization PC

マルチブート環境を構築 «ノートPC編»

先だってノートPC(HP EliteBook 2560p)をカスタマイズしました。その中で マルチブート構築の前準備 を行いました。今回は実際にマルチブート環境を構築していきます(2017/05)

追加する OS(Operating System)

現在ノートPCにインストールされている OSは Windows 7だけです。ここに次の OSを追加インストールします。

  • Windows 10 Insider Preview 64-bit
  • Ubuntu 14.04 LTS 64-bit

この 3つの OSを起動するためにフリーウェアのマルチブートマネージャー MBM(Multiple Boot Manager)を用いて各々のブートローダーをチェーンロードします。

チェーンローダーにMBMを使う理由

マルチブート構築に使用するアプリケーションソフト

以下の 3つはマルチブート環境の構築には欠かせないアプリです。

アプリケーションソフト名 使用目的と使用したメディア形態 費用
MBM(Multiple Boot Manager) チェーンローダー|CDブータブル 無料
GParted(GNOME Partition Editor) パーティションエディタ|CDブータブル 無料
Acronis True Image Home 2012 Plus イメージバックアップ| CDブータブル 有料

何れのアプリも CD-Rから起動するようにライブCDを作成します。MBMと GPartedはそれぞれ ISOイメージファイルが以下のサイトで無償配布されています。

  • MBM|マルチ・ブート・マネージャ
http://elm-chan.org/fsw/mbm/mbm.html
 Multiple Boot Manager R0.3

ISOイメージファイルを CD-Rに焼くアプリには、例えば

  • Windows|ImgBurn
  • Linux(Ubuntu)|Furius ISO Mount

があります。他にもいろいろあるようですがこれら以外のアプリは使用したことがありません。

Acronis True ImageのライブCDは、一旦 Acronisを Windowsにインストールし、同梱されている Acronisメディアビルダで作成します。

Acronis True Imageは商用なので購入するしかありません。無料版(体験版ではない)もありますが特定のメーカーの HDDにバンドルされていたり、ネットワークを認識するかどうかも分かりません。

なお Acronis True Imageは世代間の互換性はありません。つまり 2012年版で作成したバックアップイメージは 2012年版以外ではリカバリー(レストア、復元)できないわけです。

ノートPC の HDDにパーティションを作成する

HP EliteBook 2560pカスタマイズのページで HDDのパーティションの構成を変更した時と同様に今回も OSを保持した状態での作業になります。

パーティション構成変更前と変更後

現在のパーティションの構成は

パーティションの構成変更前

HDD|セクターサイズ(論理 / 物理)512bytes / 512bytes

パーティションテーブル:MBR システム ファイルシステム フラグ
第1パーティション(70GiB) Windows 7 Pro. 32bit NTFS boot
第2パーティション(228GiB) 未割り当て - -
 

のようになっているのでこれを

パーティションの構成変更後

HDD|セクターサイズ(論理 / 物理)512bytes / 512bytes

パーティションテーブル:MBR システム ファイルシステム フラグ
ブートストラップローダ Multiple Boot Manager - -
第1パーティション(70GiB) Windows 7 Pro.32bit NTFS boot
第2パーティション(60GiB) Windows 10 NTFS -
第3パーティション(60GiB) Ubuntu 14.04 LTS 64bit EXT-4 -
第4パーティション(拡張) - - -
 第5パーティション(8GiB) SWAP Linux-swap -
 第6パーティション(100GiB) データ保存領域 NTFS -

のように変更し Windows 10、Ubuntuのインストール領域とスワップ領域を確保します。

1 GiB(2進表記)= 1.07374 GB(10進表記)|e.g. 100 GiB ≅ 107.4 GB となり実効値(2進表記)より大きい値になるため商用には GB が用いられる。ギビバイトと読む。

Linux-swap を 8GiB に設定した理由

Linux-swap(スワップ)とは物理メモリーが不足した時にHDDをメモリーとして代用する領域のことで Windowsで言うところのページファイルです。今回のノートPCには 8GBの物理メモリーを実装しているので本来ならば不要または 2GBもあれば良いと思われます。

しかし今回はノートPCなのでサスペンド(Suspend to RAM)またはハイバネート(Suspend to disk)時のシステム保存先として使用します。

サスペンド、ハイバネートについては ArchWiki サスペンドとハイバネート を参照してください

スワップサイズについては RedHat Linuxのサービスページ によれば

Swapは、物理 RAMサイズが 2GBまでは物理 RAMの 2倍として 2GBを超えると 1物理 RAMごとに同量を追加します。ただし 32MBを下回ることはできません。

中略

極めて大容量の RAM(32GB以上)を持つシステムでは、多分上記基準より少なめの swapパーティション(物理 RAMの 1倍またはそれ以下)で十分でしょう。

と言うことで今回の物理メモリーは 2GBを超えているので 8GB + 2GBとなりスワップサイズは 10GBです。本来は 10GB(9.3GiB)にするべきなのでしょうけれど中途半端なパーティションサイズになるのがイヤなので 8GiBにした次第です。

パーティションを変更する

それではパーティションを変更していきます。その前に現在 HDDの第1パーティションにインストールしている Windows 7のバックアップイメージを Acronis True Imageで作成しておきます。

次に GPartedをライブCDから起動し、上表のパーティションサイズを設定して実行します。作業としてはこれだけです。

ノートPC-HDDパーティション変更前の画像

fig1. 変更前

GPartedの画像

fig2. パーティション設定

ノートPC-HDDパーティション変更後の画像

fig3. 変更後

ここで OSをインストールするパーティションには上の画像のようにそれぞれ任意のラベル名を設定しておくとよいです。後々 Windowsのインストーラーやエクスプローラにドライブレターとして継承されていきます。

ラベル名は設定しなくても問題ありませんが作業の効率が良くなりミスを防ぐ効果もあると思います。

以上で Windows 10 と Ubuntuのインストール先パーティションの作成完了です。

マルチブートマネージャー MBM|インストールとメニューのリネーム

Windows 10をインストールする前に MBMをインストールしておきます。

MBMのインストール先は HDDの MBR(Master Boot Record)です。詳細は次のリンク先を参照して下さい。

ASUS EeePC 1025C のカスタマイズ|マルチブート環境の構築 2-2

リンク先では EeePC 1025Cへインストールしていますが HP EliteBook 2560pにおいても手順は同じです。インストールの様子をビデオキャプチャした動画も掲載しているので参考にしてください。

メニューのリネーム

  • fig4|MBMインストール以降ノートPCを起動するとメニュー画面が表示される
  • fig5|< F4 > キーで詳細メニュー表示、< F2 > キーでリネーム
  • fig6|最終的にこのメニュー表示に設定した。ノートPCに電源を入れるとこのメニューが表示されるので起動したい OSを選択する。

MBMが初回起動した時のメニューの画像

fig4. 初回起動時のメニュー

MBMのメニューをリネームした画像

fig5. メニューリネーム

最終的に設定したメニューの画像

fig6. リネーム後のメニュー

MBMのその他の使用方法は、当サイトのマルチブート環境を構築 HDD 1台編の Addition|MBM(Multiple Boot Manager) に掲載しています。

マニュアルは MBMフロッピーディスクインストール版 mbm039.zipに同梱されています(mbm039.iso.gzではありません。)

このセクションでメニューのリネーム方法を説明していますが、後ほど Windows 10をインストールした段階で MBMは消されてしまうためもう一度インストールすることになります。

しかしリネームしたメニューは削除されることはありません。MBMを再びインストールすれば復活します。なお必ずしもこの段階でリネームしなくてもマルチブート環境を構築した後にリネームしてもよいです。

Windows 10 Insider Preview 64-bit をインストールする

それでは Windows 10をインストールしていきますがその前に 1つやることがあります。それは現在ノートPC - HDDの第1パーティションに存在している Windows 7の取扱いです。

このまま Windows 10をインストールすると Windows 10のブートローダー設定ファイルに Winodws 7が記述されてしまうのでこれを回避する必要があります。

そこで前のセクションでインストールした MBMのマスク機能を使ってあたかも Winodws 7が存在しないかのように偽装します。

偽装とは具体的にどういうことかと言うと HDDの MBR内パーティションテーブルの OS識別コードを一時的に別のものに置き換えて windows 10が認識できないようにする訳です。

その方法は

  • MBM メニュー画面から < F4 > キーで詳細表示モードに切換え
  • < F5 > キーで Windows 7の [a] を消し、< F7 > キーで [m] を表示する
  • < F5 > キーで Windows 10に [a] を表示する
1.[--m-] 70.0G 17 win 7      ←インストール済Windows7をマスク
2.[a---] 60.0G 07 win10      ←ここにWindows10をインストールする
3.[----] 60.0G 83 ubuntu     ←ここにUbuntuをインストールする
4.[----]  108G 05+DOS Extend ←拡張(swap,DATA)
5.                Diskette   ←フロッピーディスクから起動

これで Windows 7パーティションに hiddenフラグを、Windows 10パーティションに bootフラグを立てた事になります。

下の画像はマスク設定後の写真です。< F1 > キーでヘルプが表示されている状態です。

なお Ubuntuをインストールする時はマスクしてもしなくてもよいです。

Windows 10 をインストール

・バージョン|Windows 10 Insider Preview ver.1703 64-bit

Windows 10 Insider Preview のインストール方法などに関してはネット上に情報が溢れているのでここでは割愛しました。以下はインストール時選択した項目その他です。

  • インストール先 → アクティブパーティション(第2パーティション)
  • Windows単体でインストール
  • エディション Home or Pro → Pro
  • プロダクトキー → ありません
  • インストール時間 → 約20分
  • ログイン → MSアカウント
  • Windowsのアクティブ化(デジタルライセンス認証)→ 不可

Win10のデスクトップ画像

fig7. デスクトップ

Win10のバージョン情報の画像

fig8. バージョン情報

Win7にWin10が認識されている画像

fig9. Win7エクスプローラ

上の画像 fig7,8はインストール直後のデスクトップのスクリーンショットです。ちょっと触っただけですが動作はエフェクトがかかっているのか少し緩慢な感じです。

fig9は Windows 7のデスクトップのスクリーンショットです。エクスプローラを開くと Windows 10を認識し表示しています。Windows 10側でも同様に Windows 7が表示されます。

これは見た目にも機能的にもスマートではないので次のパートで MBMの機能を使ってこれらを非表示つまりお互いを認識できないようにします。

MBM を再インストールしマスクを設定する

Windows 10をインストールすると現在 ノートPC-HDDのMBRにインストールしている MBMは Windows 10のブートローダーに上書きされ消えてしまうので再度 MBMをインストールします。

この時 MBMが Windowsのブートローダーを上書きするようなことはありません。

オートマスクグループを設定する

起動しているOSから他のOSのシステムが見えない様に各OSの起動時に自動的に切り替える自動マスク機能です。< F8 > キーで設定します。

Windows 7起動時

1.[a--1] 70.0G 07 win 7     ←Windows7を起動(a:アクティブ)
2.[--m2] 60.0G 17 win10  ←Windows10を隠す (m:マスク)
3.[----] 60.0G 83 ubuntu
4.[----]  108G 05+DOS Extend
5.                Diskette
 

Windows 10起動時

1.[--m1] 70.0G 17 win 7     ←Windows7を隠す(m:マスク)
2.[a--2] 60.0G 07 win10  ←Windows10を起動 (a:アクティブ)
3.[----] 60.0G 83 ubuntu
4.[----]  108G 05+DOS Extend
5.                Diskette
 

下の画像はオートマスクグループ設定後の Windows 10のデスクトップのスクリーンショットです。

Windows 7のシステムが表示されていない(認識していない)のが分かります。

なお Ubuntuにオートマスクを設定していないのは一般的に Windowsは Ubuntuのファイルシステム EXT4を認識しないためです。

Ubuntuは Windowsのファイルシステムを認識するので Windows 7,10共に ディレクトリ(フォルダーのようなもの)として表示されます。もしも表示させたくなければ Ubuntuに [3] を設定します。

Ubuntu 起動時

1.[--m1] 70.0G 17 win 7     ←Windows7を隠す(m:マスク)
2.[--m2] 60.0G 07 win10    ←Windows10を隠す(m:マスク)
3.[a--3] 60.0G 83 ubuntu ←Ubuntuを起動 (a:アクティブ)
4.[----]  108G 05+DOS Extend
5.                Diskette
 

以上で 2つ目の OS導入の完了です。次は Ubuntuをインストールします。

Windows10 をインストールした翌日 Skype から登録勧誘のメールが、その1時間後に PeyPal から「ペイパルが使えるお店のご紹介」でスカイプ勧誘メールが届きました

2020年1月追記|Windows 10 電源オプションを切る理由

Windows 10 電源オプションの 「高速スタートアップを有効にする」は Windows 7 起動の際 CHKDSK を防ぐため無効にしています。最近になってそれ以外の理由があることを知ったので紹介します。

Ubuntu と Windowsでデータ共有するパーティションのファイルシステムは NTFS です。Ubuntuには ntfs-3g(Third Generation Read/Write NTFS Driver)というアプリケーションパケージがデフォルトでインストールされているので何もしなくても読み書きできます。

下記は Synapticパッケージマネージャーからの抜粋です。

NTFS-3G は FUSE(Filesystem in Userspace)用の読み書き可能なNTFSドライバーです。FUSE を用いて Microsoft Windows で使われている NTFS ファイルシステム用のサポートを提供します。

で、NTFS-3Gのコミュニティーサイト に次のような記述がありました。

Windows hibernation and fast restarting

On computers which can be dual-booted into Windows or Linux, Windows has to be fully shut down before booting into Linux, otherwise the NTFS file systems on internal disks may be left in an inconsistent state and changes made by Linux may be ignored by Windows.

So, Windows may not be left in hibernation when starting Linux, in order to avoid inconsistencies.

Moreover, the fast restart feature available on recent Windows systems has to be disabled.

This can be achieved by issuing as an Administrator the Windows command which disables both hibernation and fast restarting :

powercfg /h off

これを Google翻訳すると

Windowsの休止状態と高速再起動

WindowsまたはLinuxをデュアルブートできるコンピューターでは、Linuxをブートする前にWindowsを完全にシャットダウンする必要があります。

そうしないと、内部ディスク上のNTFSファイルシステムが一貫性のない状態のままになり、Linuxによる変更がWindowsによって無視される場合があります。

したがって、矛盾を避けるために、Linuxの起動時にWindowsが休止状態にならない場合があります。 さらに、最近のWindowsシステムで利用可能な高速再起動機能を無効にする必要があります。

これは、休止状態と高速再起動の両方を無効にするWindowsコマンドを管理者として発行することで実現できます。

powercfg /h off

訳中の 高速再起動機能 が 高速スタートアップ を指しているようです。要するに下の画像のように設定変更しろということですね。

このノートPCでは 3年前からマルチブート環境で運用していますがデータ共有領域でこれといった不具合は起きていません。その他、数台の PC(OptiPlex 755, メインPC, スリムPC, HP xw8400, ThinkPad x121e, Inspiron 3162)も同様です。

ただ NAS(自作 したので ext4)の使用率が高いという事もありますけどね。

2020年10月追記|WIP 6th 記念壁紙が届いた

Windows 10 October 2020 Update(20H2)リリース記念の壁紙が送られてきました。Windows Insiderの参加者に送っているとのことです。

壁紙の画像

light と dark の 2種類です。

Ubuntu 14.04 LTS 64-bit をインストールする

それでは Ubuntuをインストールしていきますがここで重要なことはマルチブート環境におけるブートローダー GRUB2のインストール先です。

この 1点のみ注意すれば後は簡単です。

16.04LTS にアップグレードしました(2019/04)↓

Ubuntu Dsktop 主な仕様

下の画像はデフォルトのデスクトップのスクリーンショットです。画面右上に表示しているのはシステムモニター Conkyです。

  • コードネーム Trusty Tahr
  • 64bit|x86_64 PC
  • 32bit|x86 and x86_64 PC, with PAE(Physical Address Extensions)
  • kernel 4.2.0
  • 無料
  • 推奨動作環境
    • Dual Core processor with 1 GB of RAM
    • 10GB of HDD or SSD
    • Graphics with OpenGL 1.4・Intel GMA 900以降
    • Internet access
  • セキュリティサポート:2019年4月終了

デバイスの動作状況

各デバイスの動作については ArchWiki HP ElteBook 2560p によると指紋リーダーは完全にアウト、 eSATAポートは未確認とのことでそれ以外は動作するようです。当方では確認していません。

Ubuntu 64-bit をインストールする

Ubuntuの ISOイメージファイルを Ubuntu 14.04 LTS 日本語 Remix リリース からダウンロードしライブDVDを作成します。

今回のノートPC(HP EliteBook 2560P)には光学ドライブが搭載されているので Windows 7上の ImageBurnでライブDVDを作成しました。

本家英語版は Ubuntu 14.04.5 LTS(Trusty Tahr) からダウンロードします。こちらはインストール後 Ubuntu Japanese Team のリポジトリをインストールすれば日本語 Remix同等にする事もできます。

ブートローダー GRUB2 のインストール先

Ubunntuをインストールする課程でブートローダー GRUB2のインストール先を指定する必要があります。デフォルトでは HDDの MBR(Master Boot Record)に設定されています。

今回の場合 GRUB2のインストール先は MBRではなく Ubuntuをインストールしたパーティションの PBR(Partition Boot Record)です。

Ubuntuのインストーラーでは / dev / sda3 となります。

下の画像は VirtualBoxで Ubuntuをインストールするシミュレーションをした時のスクリーンショットです。

パーティションの構成は今回と同じですがパーティションサイズは適当な数値なので無視して下さい。

もしも MBR(/ dve / sda)にインストールすると MBMを上書きするので GRUB2がチェーンローダーになってしまいます。これはこれでマルチブートは成立しますが HDDのパーティション構成が変わると設定ファイルの編集が必要になります。

元に戻すには MBMを MBRにインストールし、ライブDVDから Ubuntuをライブセッションで起動し端末エミュレータから GRUB2を PBRにインストールします。順番はどちらが先でもかまいません。

以下の作業はやってもやらなくてもかまいません

GRUB2 メニューの表示を変更する

GRUBメニューの表示時間(TIME OUT)はデフォルトで 10秒に設定されています。10秒は長いので短縮します。また GRUB2メニューに表示(検索)される Windows 7,10を表示しない(検索しない)ように設定します。

この 2つを端末エミュレーターで次のコマンドを実行し GRUB2の設定ファイル grub を編集します。

 $ sudo nano /etc/default/gurb

を実行してテキストエディタを起動します。

TIME OUT時間

GRUB2のメニューが表示されてから Ubuntuのブートシーケンスが開始されるまでの TIME OUT時間を 10秒から 5秒に変更します。デフォルトのコードは削除するかコメントアウトします。(10行目辺り)

#GRUB_TIMEOUT=10               (デフォルト)
GRUB_TIMEOUT=5                 (grubメニューの表示時間 5秒)
 
その他のOS非表示

GRUB2のメニューに表示されるその他のOSを非表示にします。デフォルトではこのコードは記述されていないので追記します。

GRUB_DISABLE_OS_PROBER=true  (その他のOSを検索・表示しない)
 
設定を反映する

下の画像は編集後の設定ファイルのスクリーンショットです。水色下線部が編集したコードです。

編集したら保存してテキストエディタを閉じて grubをアップデートします。端末から次のコマンドを実行します。

 $ sudo update-gurb

このコマンドを実行することで設定が反映されます。


以上で Ubuntu 14.04 LTS 64-bit のインストール完了です。

HP EliteBook-Ubuntu にお勧めのアプリとデスクトップ設定

Ubuntu 16.04LTS にアップグレード(2019年4月)

14.04LTSの End Of Life(サポート終了)に伴い 16.04LTSにアップグレードしました。サポート期間は2021年4月までです。

下の画像はデスクトップのスクリーンショットです。

Unity環境最後のデスクトップとなります。Conkyのデザインを壁紙に合わせて変更しました。

アップグレードの手順は以下の通りです。

  1. システムモニター Conkyを停止する
  2. ソフトウェアの更新アプリを使用する

下の画像はアップグレードの間に表示されていたダイアログボックスのスクリーンショットを時系列に並べたものです。

但し、スナップショットアプリが機能している時だけなので抜け落ちているダイアログもあります。

アップグレード中のダイアログボックスの画像

この画像は クリエイティブ・コモンズ・ライセンス の提供です

  1. ソフトウェアの更新
  2. リリースノート
  3. アップグレードを開始しますか?
  4. ディストリビュージョンのアップグレード
  5. Ubuntu 18.04LTS のアップグレードが利用可能です
  6. unattended-upgrade を設定しています
  7. サポートが中止された(あるいはリポジトリに存在しない)パッケージを削除しますか?
  8. アップグレードを完了するには再起動してください
不具合発生!

アップグレードのプロセスは問題なく完了しアプリも問題なく継承されました。しかし、それ以外のところで 3つの不具合が発生しました。

調査の結果、全て解消しました。詳細は下記リンクを参照ください。

Elitebook-Ubuntu アップグレードの不具合を解消する

雑感

今回ノートPCにマルチブート環境を構築したわけですが、これがデスクトップであっても デバイスが SSDであってもその方法になんら変わるところはありません。

基本的に HDDの理解と Legacy BIOS、マルチブートマネージャーを使用することです。マルチブートマネージャーに必ずしも MBMを使う必要もありません。管理人は MBM以外使ったことはありませんが。

それとライブメディアから起動かつネットワーク接続できるイメージバックアップアプリも忘れずに。

マルチブートスクリーンショット

下の画像(fig10~fig15)は本文中で紹介しきれなかったノートPCの写真や Windowsと Ubuntuのデスクトップスクリーンショットです。

fig10.EliteBook 2560Pセットアップメニューの画像

fig10.セットアップメニュー

fig11.MBM起動時のOS選択メニューの画像

fig11.MBM OS メニュー

Windows 7 Professional 32-bitのデスクトップ画像

fig12.Windows 7

fig13. Windows 10 Insider Preview 64-bit Proのデスクトップ画像

fig13.Windows 10

fig14 Ubuntu 14.04 LTS 64-bitのデスクトップ画像

fig14.Ubuntu

Ubuntuのデスクトップに HDDの温度を表示している画像

fig15.HDD の温度

上の画像の HDD の温度表示(fig15)は今回のマルチブートには直接関係ありません。6枚目に貼る画像が無く空いているのでシステムモニターのスクリーンショットを貼ってみました。で、何をしたのかと言うと

現状ノートPC - HDDの温度情報を取得するアプリが S.M.A.R.Tの温度情報を認識できず、そのアプリの情報を拾っているシステムモニターに N/A℃と表示されています。

これを正しく表示するように設定したわけです。その方法は下のリンク先で紹介しています。

システムモニター Conky に HDD温度が表示されない時の対処法

Windows 10 動作報告

2018年9月現在のバージョンは Windows 10 Insider Preview ver.1809 64-bit です

Windows Helloによる指紋認証でサインイン(ログイン)できました

その方法は HP EliteBooK 2560pの生体認証デバイスドライバーを削除して Lenovo ThinkPadの Validity生体認証ドライバーをインストールすることで Windows Helloが有効になります。

下の画像は生体認証ドライバー導入後のデバイスマネージャーのスクリーンショットです。

参考.Validity Fingerprint Common Driver for Windows 10

Build 17046 以降 Windows Helloの設定が出来なくなった

地デジチューナーが導入できました

第1パーティションの Windows 7に導入した USB2.0接続の地上デジタル放送チューナーと同じドライバーを Windows 10及び Windows 11にインストールして正常に動作することを確認しました。

下の画像は地デジ放送を PCastTV for 地デジ Lite と云うビューワで表示しいている様子のスクリーンショットです。

地デジチューナーを導入する方法は HP EliteBook 2560p Notebook PC のカスタマイズ のページで紹介しています。

2020年7月追記|Windows 7 に Edge が自動インストールされた

2020年1月にサポート終了した Windows 7(32-bit)の Windows Update をオンのままにしていたら Chromium ベースの Microsoft Edge バージョン83.x が自動的にインストールされていました。

Windows 7の Microsoft Edge

その後、バージョン84.x に更新されました。

クリエイティブ・コモンズ・ライセンス
Top of Pageの画像
sidemenuの画像