デュアル(マルチ)ブートについて

受付中

回答 2

投稿

  • 評価
  • クリップ 1
  • VIEW 3,379

p0202

score 4

 前提・実現したいこと

windows10、centos7、ubuntu18の3構成にて、デュアル(マルチ)ブート機能を実現したいと考えております。

[ドライブ]
SATA1:CD/DVD
SATA2:SSD1(40GB) [sda1:boot100MB、sda2:残り]
SATA3:HDD1(160GB) [sdb1:boot512MB、sdb2:swap 8GB、sdb3:残り]
SATA4:HDD2(160GB) [sdc1:boot512MB、sdc2:swap 8GB、sdc3:残り]

現状は、
SSD1にcentos7インストール
HDD1にwindows10インストール
SSD1にcentos7再インストール
HDD2にubuntuインストール
という順序でOSをそれぞれ別のドライブにインストールしている段階です。

UEFI画面に入った後、それぞれのドライブを選択してから起動する分にはきちんと起動もできるので問題ありませんが、
ブートマネージャが起動した後で上手く起動ができず困っております。

■■な機能を実装中に以下のエラーメッセージが発生しました。

 発生している問題・エラーメッセージ

ubuntuを最後にいれたでおりますので、
ubuntuのブートマネージャにて
・ubuntu
・windows10
・centos7

●ubuntuを選択した場合→起動

●windows10を選択した場合→真っ暗な画面から進まず、エラーもでず止まってしまいます。
(ubuntuをいれるまえのcentos7からwindows10を起動した場合は、error invalid signature と出てこちらも正しくブートできませんでした)

●centosを選択した場合→起動

これを、windows10を選択した場合にも起動できるように改善していきたい所存です。

 試したこと

[ubuntu]
grub2を使用し、
/etc/grub.d/40_custom に下記を追記しました。

menuentry "Windows 10" {
set root='(hd0,1)'
chainloader +1
}

結果の反映
grub2-mkconfig -o /boot/grub2/grub.cfg

以上を実施した上で再起動し、その後ブートマネージャーから起動しても結果は変わりませんでした。

 補足情報(FW/ツールのバージョンなど)

centos7・・・version7.5
windows・・・version10 (ライブCD)
ubuntu・・・version18

現在ブートローダ周辺を勉強中であり、試行錯誤しておりますが、
上記の内容にて作業が滞っております。

上記内容にて改善策等ご存知の方がいらっしゃいましたら、ご指導の程宜しくお願いいたします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

+1

検索すると、http://sharply.hatenablog.com/entry/2017/04/25/001050 で、UEFI-GPT / BIOS-MBR の問題があるそうです。
UEFI からそれぞれの OS が起動できるとのことですので、大丈夫なのかもしれませんが、CentOS や Ubuntu を UEFI から起動するようインストールすると、grub.cfg は /boot/efi/EFI/centos/grub.cfg や /boot/efi/EFI/ubuntu/grub.cfg になりませんか?

また、ubuntu の grub2 から見える hd0 は HDD1 で合っていますか?
grub.cfg と同じディレクトリの device.map を確認ください。
ubuntu から HDD1 = /dev/sdb に見えているのであれば、grub.cfg では (hd1,1) になると思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/09/30 01:37

    ご丁寧にありがとうござます。
    頂いた情報を元に、月曜日に確認してみます。
    また、確認結果の方を記載いたしますね。

    キャンセル

  • 2018/10/01 10:38 編集

    何点か、確認致しました。

    >grub.cfg は /boot/efi/EFI/centos/grub.cfg や /boot/efi/EFI/ubuntu/grub.cfg になりませんか?
    →ubuntu18側のgrub.cfgの場所ですが、ご指摘頂いた場所とは別のところにあり、
    /boot/grub/grub.cfg にございました。

    >また、ubuntu の grub2 から見える hd0 は HDD1 で合っていますか?
    >grub.cfg と同じディレクトリの device.map を確認ください。
    → grub.cfgの同階層にdevice.mapが見つからず、
    locate 機能を使って検索をかけましたが、device.map というファイル自体が存在しておりませんでした。

    現状まだいろいろと試しておりますが、解決に至っておりません。

    また、ubuntu18 のgrub.cfgのwindows10ブート記載の箇所は下記のようになっておりました。

    menuentry 'Windows 10 (on /dev/sdb1)' --class windows --class os $menuentry_id_option 'osprober-chain-【ここにはUUIDが入っていました】' {
    insmod part_msdos
    insmod ntfs
    set root='hd1,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
    search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1 【ここにはUUIDが入っていました】
    else
    search --no-floppy --fs-uuid --set=root 【ここにはUUIDが入っていました】
    fi
    parttool ${root} hidden-
    drivemap -s (hd0) ${root}
    chainloader +1
    }

    記載方法がおかしいのか、ブートローダーがおかしいのか、現状よくわからなくなってきましたが、何かわかりましたらご指導ご鞭撻の程宜しくお願い致します。

    キャンセル

0

明確な根拠に基づいた指針ではないのですが、同様な経験を何回かしています。

おかしくなるのは、UEFI BIOSマシンで、Windows 10を入れていて、WindowsやLinuxのブートマネージャーを使ったマルチブート環境です。MBRが飛んで、ディスクごと中身が消えて復旧出来なかった事が3回あります。Windows 8.1までと非UEFI BIOSマシンでは発生しません。

現在は知りませんが、どうも以前のWindows 10はUEFI BIOSマシンで起動すると接続している全ドライブを調べて勝手にGPTパーティションに変換する様な動きをする様です。

これ以上の被害はまっぴらなので、UEFI BIOSマシンでWindows 10をインストールしていてマルチブート環境したい時は、ご指摘の通り、UEFI画面でそれぞれのドライブを選択して起動する様にしています。

回答になっていなくて申し訳ないのですが、深入りしない方が良いと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.21%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる