Win10とのデュアルブート

よく聞かれる問題とその回答

モデレータ: 暇人, YoN, nyu

返信する
yuknak
記事: 38
登録日時: 21/05/15(土) 12:11

Win10とのデュアルブート

投稿記事 by yuknak »

いつもお世話になっています。
初心者のヘルプでアドバイスいただいて Puppy(FossaPup64 9.5)を
モバイル用にUSBメモリと デスクトップ機のHDD(+USB SSD)に
インストールしてBIOSの起動ドライブ選択で起動できるようになりました。
出きるようになるとさらに欲が出てきて、HDDにインストールした
Puppyを Windowsのブートローダー(BCD)からWindowsと
デュアルブートで 使いたいと色々調べてみました。
しかし、UEFI で Grub2での起動はできないとか、
UBUNTSでデュアルブートするインストール情報などが混在していて、
しかも 2010年ころの古いバージョンの情報も多くて、自分でも
それらの情報を元に bcdeditと1W以上格闘してみましたが、
あいにく Linux の知識不足で現時点で果たせていません。
(主に C:¥直下に grldr.mbr や 下記 sdc1の先頭 512byteの
イメージファイルを置いて、bcdeditで pathに指定する方法です)
以下のような環境・条件で, デュアルブートする具体的な
手順に関する 情報をお持ちの方がいらっしゃったら、お教えいただけませんか。
環境:
M/B: ASUS P8Z68-M Pro(UEFIで起動)
HDD/SSD: sda/500GB SSD sdb/ 1TB HDD sdc/300GB HDD (全て GPTフォーマット)
現時点は sda 上に Windows10,
    sdc1 に Grub2 sdc2に Puppy(Frugal install)本体 sdc3 にSwap
できれば、ブートローダーは Windowsの bootmgrを使いたいと思っています。
UEFIで起動できれば Grub2にはあまりこだわっていません。
よろしくお願いいたします。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Fossapup64/9.5 on ASUS P8Z68-M Pro &
Sony-Vaio SVT13128CJS/ i5-3317U 1.7GHz / 8GB
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
thinkpadnerd
記事: 2050
登録日時: 15/10/25(日) 14:00

Re: Win10とのデュアルブート

投稿記事 by thinkpadnerd »

FAQ のコーナーは、本当は質問をする場所ではないです。 :)

ところで、UEFI のパソコンで sda に windows があるとのことですが、sda1 が UEFI のブートパーティションになっているはずです。まれに、パソコンによっては sda2 がブートパーティションになっています。

UEFI のパソコンでは電源を入れると、このブートパーティションを最初に読みにいきます。
デュアルブートを構成するのなら、専用のツールに任せたほうが安心だと思います。

Grub2config
viewtopic.php?f=25&t=3634

Grub2config は一部の puppy には最初から搭載されています。追加インストールして使うこともできます。
windows や puppy を自動検出してブートローダを構成してくれます。
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
yuknak
記事: 38
登録日時: 21/05/15(土) 12:11

Re: Win10とのデュアルブート

投稿記事 by yuknak »

thinkpadnerdさん、いつもありがとうございます。
>FAQ のコーナーは、本当は質問をする場所ではないです。
失礼しました。
初心者は卒業した・・・と思ったわけではありませんが
どこの板がいいのか?とあちこち探しているうちに、つい
FAQのところで投稿してしまいました。
お手数ですが問題あれば適切な板に移動下さい<管理者の方
さて、私の質問の仕方が少し分かりづらかったと思いますが、
>Puppyを Windowsのブートローダー(BCD)からWindowsと
デュアルブートで 使いたいと色々調べてみました。
の主旨は
画像
から起動できないか?ということでした。
教えていただいた Grub2configを使う方法は、何となくできそうな
イメージが有りましたが、今回やってみてやはり
画像
が立ち上がりました。
機能的には変わりませんし、単なる個人的興味でしかありませんが
Windows側から起動できないのか?と思ったものですから質問してみました。
ubunts等に関する記事ではできそうな気がして試行錯誤したのですが
やはり無理なんでしょうか?
>デュアルブートを構成するのなら、専用のツールに任せたほうが安心だと思います。
easyBCDはちょっとだけ試しましたが、Puppyがリストされず
Puppyに関しては情報もなかったもので諦めました。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Fossapup64/9.5 on ASUS P8Z68-M Pro &
Sony-Vaio SVT13128CJS/ i5-3317U 1.7GHz / 8GB
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
thinkpadnerd
記事: 2050
登録日時: 15/10/25(日) 14:00

Re: Win10とのデュアルブート

投稿記事 by thinkpadnerd »

FAQ の意味は frequently asked questions (よくある質問) なので、予め Q & A を書いておく場所です。実際には、ここに質問のためのスレッドが立てられることが多いのですが... :?
高度な質問ということなら、「ユーザの話し合い」あたりでしょうか。

すでに参照されたかどうか分かりませんが、以下のような記事がありました。

ブートローダーはWindows Boot Managerのまま、WindowsとLinuxでデュアルブート
https://w.atwiki.jp/linuxjapanwiki/pages/116.html

上記の記事には、「休止状態」に関する記述がありますが、基本的には、Linux を使う場合は「休止状態」は使うべきではないと考えています。(「高速スタートアップ」も仕組みは「休止状態」と同じなのでオフにしておくのが吉)
yuknak さんが書きました: 23/11/12(日) 18:39 Windows側から起動できないのか?と思ったものですから質問してみました。
趣旨は分かります。私は legacy bios のマシンで windows 8.1 の boot manager から grub4dos を呼び出して使っていたことがあります。しかし、uefi のマシンでは試したことがありません。
windows はほとんど使いませんが、失敗して windows が起動不能な状態に陥るのは好ましくないので...

実践された方が投稿してくれるといいですね。 :)

追記
ディスクはすべてGPTフォーマットと書かれていたと思いますが、GPT と MBR は互換性がないのでは?
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
yuknak
記事: 38
登録日時: 21/05/15(土) 12:11

Re: Win10とのデュアルブート

投稿記事 by yuknak »

thinkpadnerdさん
いつも素早いご回答恐れ入ります。
ご案内のURLは一応見ておりました。
その中で、一旦先頭パーティション(Fat32)に Grub2をインストールして、
その Grubが 第2パーティションの Puppyを起動する状態にして
その先頭パーティションの ddイメージを Windowsの C:\直下にコピーして・・・
という方法も試しましたが、Puppyを選択しても起動しませんでした。
(Error 0Xc000007b とか 0Xc000000f が返されました)
多くのケースが NotePCの例で(しかも Puppy以外の Linux)
Windwosと物理的な同一 ディスクに Puppyをインストールしていると思われ
実は私も、一旦 Windows側の SSDの第1パーティションの ddイメージを保存してから
そこに Grub2をクリーンインストールして、その ddイメージを使っても
試しましたが結果は 残念ながら同じでした。
私の手順のどこかに間違いがあるのではと思いますが、
悲しいかな Linuxの知識不足で原因追究に至っていません。
ただ、今回ご案内先の URLページにコメント機能があるのに気づいたので
そちらにも質問してみたいと思います。
いずれにしても成功したら 結果は書き込ませていただきます。
ありがとうございました。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Fossapup64/9.5 on ASUS P8Z68-M Pro &
Sony-Vaio SVT13128CJS/ i5-3317U 1.7GHz / 8GB
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
thinkpadnerd
記事: 2050
登録日時: 15/10/25(日) 14:00

Re: Win10とのデュアルブート

投稿記事 by thinkpadnerd »

まず、grub4dos は GPT に対応していないので、これは選択肢から外れます。

参照先の記事では、「MBRを取得する」と言っていますが、私の理解では GPT と MBR は相容れないものではないかと思います。
不可解なのは、UEFI の場合は grub2 を使うと言っておきながら、添えられた GParted の図というか、画面を見ると、legacy bios マシンの構成になっていることです。
そして、筆者さんが参考にしたという、nyacom.net の記事を見ても、GParted の画面は legacy bios マシンの構成です。これでは全く説得力がありません。

そういうわけで、私は上記の記事を鵜呑みにはできないと考えています。この辺、もっと詳しく知っている方がいらっしゃいましたら、教えていただきたいと思います。
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
thinkpadnerd
記事: 2050
登録日時: 15/10/25(日) 14:00

Re: Win10とのデュアルブート

投稿記事 by thinkpadnerd »

yuknak さんが書きました: 23/11/12(日) 23:26 参照先の記事では、「MBRを取得する」と言っていますが、私の理解では GPT と MBR は相容れないものではないかと思います。
不可解なのは、UEFI の場合は grub2 を使うと言っておきながら、添えられた GParted の図というか、画面を見ると、legacy bios マシンの構成になっていることです。
そして、筆者さんが参考にしたという、nyacom.net の記事を見ても、GParted の画面は legacy bios マシンの構成です。これでは全く説得力がありません。
MBR のディスクなら可能なのかもしれません。しかし、UEFI のシステムは GPT のディスクを前提にしているので、UEFI のシステムではうまくいかないのではないでしょうか。

GPT のディスクの最初のセクタをコピーしても、そこにはパーティション情報は格納されていないと思います。その解釈は間違っているよ、という場合は、どなたでも結構ですのでコメントいただければと思います。
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
yuknak
記事: 38
登録日時: 21/05/15(土) 12:11

Re: Win10とのデュアルブート

投稿記事 by yuknak »

参照先の記事では、「MBRを取得する」と言っていますが、私の理解では GPT と MBR は相容れないものではないかと思います。
当該ページの筆者さんは下記部分を読むと
>そのパーティションのMBRを取得します。
>・・・・・
>dd if=/dev/sda4 of=grub.dd bs=512 count=1
とあり「MBR」=Master Boot Record =HDDの先頭領域 ではなくて、単に パーティションの先頭領域のことだと
理解していました。
しかし正直に言って 私は Linux/Grub に無知で、ブートローダーインストールパーティションの先頭領域のコピーを
C:\ ドライブ直下に置いて Windows側の bootmgr に指示すると、なぜ Linuxが起動するのか? 分かりません。
若かりし頃(歳がバレますね!)、Windows2k/Xp に何度も余分な操作をしてしまい、MBRシステムについては
泣く泣く表面的に勉強しましたが、UEFIは最初から勉強しなおさないと・・・と感じています。
さらに Linux も となると絶望的ですが、せめて処理が vmlinuz? に渡されるまでのブートプロセス
(Grubのパーティションを見ると、grldr 以外に grubx64.efi /mmx64.efi/bootx64.efi などが見えますが)
に関する<やさしい>説明資料があればなぁ〜と思い始めました。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Fossapup64/9.5 on ASUS P8Z68-M Pro &
Sony-Vaio SVT13128CJS/ i5-3317U 1.7GHz / 8GB
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
thinkpadnerd
記事: 2050
登録日時: 15/10/25(日) 14:00

Re: Win10とのデュアルブート

投稿記事 by thinkpadnerd »

legacy bios マシンの起動プロセスは
MBRを読む→boot フラグの付いたパーティションのPBRを読む→OSを起動
という順番だと思われます。

私はなぜパーティションの先頭にMBRがあるのだろう、と考えていました。
おそらく参照記事の言葉の使い方が間違っています。「PBRを取得する」が正しいと思います。

しかし、GPT のディスクはディスク管理の方法が異なるので、パーティションの先頭のセクタをコピーしてもうまくいかないのではないかと思います。

2番目以降のディスクが MBR フォーマットのディスクだったら、MBR も PBR も存在するはずなので、ひょっとしたら、と思いますが、自分の環境では試すことができません。仮に試すとしてもリスクが伴うことなので躊躇します。
yuknak さんが書きました: 23/11/14(火) 13:40 Grubのパーティションを見ると、grldr 以外に grubx64.efi /mmx64.efi/bootx64.efi などが見えますが
拡張子 efi のファイルは UEFI システム用のブートローダです。grubx64.efi 以外にあるのは、ブートローダが消されたり壊れたりした場合の予備? 実はよく分かりません。 :)
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
きりん
記事: 553
登録日時: 08/02/24(日) 21:49
連絡する:

Re: Win10とのデュアルブート

投稿記事 by きりん »

横から、すみません。
3番目のポスト内容から推察して、
元々の Windows のローダーから、puppy のローダー選択を経由操作せずに puppy を起動出来ないか?
と捉えました。

もし、そうであるなら、grub.cfg の記述で、"menuentry" 内のブロックを直接実行出来るように指定することで、目的が達成出来ませんか?

実際の実験は行っていませんが、アイディアです・・・。
yuknak
記事: 38
登録日時: 21/05/15(土) 12:11

Re: Win10とのデュアルブート

投稿記事 by yuknak »

thinkpadnerd さん、きりんさん
コメントありがとうございます。
元々の Windows のローダーから、puppy のローダー選択を経由操作せずに puppy を起動出来ないか?
実は最初の頃、私もそう思い bcdに直に grldr などのデバイス+pathを登録してみました。
しかし、私の知識不足か 同じようなエラーで起動できませんでした。
また、どこかで読んだ情報では Windows10の UEFIブートプロセスは
Windows以外の UEFIを無視してしまう・・・・(正確な表現は忘れました)
だから PBRの ddイメージのコピーで「騙す」というような記述を見て諦めました。
いずれにしろ Linuxのブートプロセスが分かっていないものにはハードルが高すぎるようです。
せめてブートログがとれれば・・・(ため息)
「ジタバタせずに、技術的興味は捨てて、HDD切替器(電源切り替えスイッチ)にしろ」という
悪魔の囁きが聞こえはじめました。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Fossapup64/9.5 on ASUS P8Z68-M Pro &
Sony-Vaio SVT13128CJS/ i5-3317U 1.7GHz / 8GB
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
きりん
記事: 553
登録日時: 08/02/24(日) 21:49
連絡する:

Re: Win10とのデュアルブート

投稿記事 by きりん »

既に酔っ払いモードsなっているので、正確性に欠けますがポストします。
再インストールの覚悟が必要です。

1.まず、Windows上で、ディスクの利用方法を確認します。"ディスクの管理"からかな?
(ポイント)
・各パーティションの並びと容量
・そのパーティションのフォーマット
・windows上でのドライブ割付状態

2.USBメモリーからPuppyさんを起動。windowsから見えない起動パーテイションもドライブとして認識されているはず。
・ここのファイルリストを取ってみる。→windowsのローダーが何か確認出るはず。

3.USBメモリー上からPuppyさんのローダーを確認。多分、/BOOT とか /EFI がポイント

4.Puppy 上から、内蔵ドライブのローダーのあるパーティションに、USBメモリーにあるローダー関係のファイルをコピーする。
・grub.cfg のドライブ指定等を実際の配置に修正しておく。

5.(いったんシャットダウン後)再起動し、[ESC]連打などでBIOSの起動メニューに入る。
・確か、"Bootエントリー指定"のような項目があったような・・・。ここで、Puppyさんのローダーを追加指定する。

6.(いったんシャットダウン後)再起動し、[ESC]連打などでBIOSの起動メニューに入る。
・boot指定で、windows または puppy のローダーを指定する。

の流れでは目的にかなわないでしょうか?

個人的には、windowsのローダーに手を加えることはお勧めしません。アップデート後の再起動で混乱することがあるので。
yuknak
記事: 38
登録日時: 21/05/15(土) 12:11

Re: Win10とのデュアルブート

投稿記事 by yuknak »

きりんさん  何度も恐れ入ります。
きりん さんが書きました: 23/11/15(水) 20:23 既に酔っ払いモードsなっているので、正確性に欠けますがポストします。
再インストールの覚悟が必要です。
・・・・・・・
の流れでは目的にかなわないでしょうか?

個人的には、windowsのローダーに手を加えることはお勧めしません。アップデート後の再起動で混乱することがあるので。
どんな状況でもコメントいただければ感謝です。
1〜6 の手順は何度繰り返したことか!
Puppy 再インストールももう20回くらい(Puppyは軽いので助かります)
Windows EFI パーティションのリカバリーも数回。怖いものはありません(強がり!)
ただ、最初に説明を省きましたが 実は私の特殊な環境で デスクトップ機 2台を、
1つのモニター、K/B、マウスで使っており、モニターは自動で切り替わりますが、
K/B・マウスは USB切替器で手動切り替えしています。
Puppyをインストールしようとしているのはサブ機のほうで、USB切替器が電源投入時は
メイン機側になっており、気づかずに UEFI設定画面を表示させようとして「Del」キーを
押しても反応しません。
慌てて少し奥まった所にある 切替器に手を伸ばしているうちに デフォルトのWindowsが立ち上がる・・・
ということが多く、ストレスです。
もちろん、待ち時間を伸ばしたり、デフォルトを変えればある程度改善されるのでしょうが
「思いついたら試さずにはいられない」困った性格が災いしています。
とはいえ、インストールするのが目的ではなく 永続的に使える O/S環境を構築するのが
最終目的ですので 当面 Grub2をデフォルトの設定にして使っていこうと思います。
万が一 Win Updateで書き換わったらパーティションのリカバリーで凌ぎます。
皆様 いろいろ情報をありがとうございました。
今後何か思いついて、Windows bootmgr 側からのデュアルブートに成功したら
結果をご報告させていただきます。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
Fossapup64/9.5 on ASUS P8Z68-M Pro &
Sony-Vaio SVT13128CJS/ i5-3317U 1.7GHz / 8GB
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
返信する