Windows 10のアップグレードはgrubを強制終了し、ブート修復は役に立たない


83

Ubuntu 14.04がインストールされているパーティションラップトップで、Windows 8.1からWindows 10にアップグレードしました。Grubはブート時に表示されなくなったため、Ubuntu liveUSBからブート修復を実行しました。これには何の効果もなかったようです。確認しましたが、セキュアブートはまだ無効になっています。
boot-repairからのログ:http : //paste.ubuntu.com/11972534/
それでは、次は何ですか?

更新:chrootを使用してUbuntuパーティションからgrubを更新しようとしました。update-grubは、LinuxとWindowsの両方のブートマネージャーを見つけて正常に実行されますが、プロセスはまだ効果がありません。grub-installは、EFIディレクトリが見つからないと文句を言います(しかし、すべてを正しくマウントしました)。

Update2:ただ、chrootからubuntuに移行した後にefibootmgrを実行すると、ubuntuがブート順序にまったく含まれていないことがわかりました。順序を手動で変更し、再起動して、ブート順序がリセットされたことを発見しました。私はWindowsで実行します:bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efiしかし、これは「Operation Successful」を報告した後でも効果がありません。


次に、バグレポートを提出します。
リンツウィンド

@Rinzwindログをboot.repair@gmail.comに送信して、状況を説明しました。
ニコラスVerstegen

ESPでgrubのファイルを更新した場合は、ACER UEFIにアクセスし、それらのファイルの信頼を有効にしてください。そのためにはシステムパスワードを設定する必要があります。 askubuntu.com/questions/597213/...
oldfred

両方に対して2つの個別のESPを保持します。そうしないと、Windowsは各BOOTMGR更新でGRUBを消去します。
エルキンアルプゲニー

この短いメモ(linuxbsdos.com/2015/07/29/…)は、ESPがUEFIパーティションにある場合、アップグレードしても何も中断しないことを指摘しています。
カールズアラガス

回答:


114

私は管理者としてWindowsでこれを実行する必要がありました:

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

または、PowerShellを使用している場合:

bcdedit /set "{bootmgr}" path \EFI\ubuntu\grubx64.efi

GRUBは起動時に正常に表示され、UbuntuおよびWindows 10で正常に起動できます。


2
@bheeshmar:それだけで答えに値する! ;-)
ファビー

3
これは私のために働いた、どうもありがとう。そのコマンドが実際に何をしたのか知っていますか?
エホシュア

3
参考:Windows PowerShellでは動作しません。動作するには、管理者としてcmdを実行する必要があります
William Saunders

2
@Jehoshuah Windowsブートマネージャーの代わりにGrubをシステムブートマネージャーとして設定します。つまり、システムの起動時にGrubが実行されます。BCDは「ブート構成データ」の略です。
wjandrea

7
注:そのコマンドの最後の引数のパスを見つけるには、を使用できますbcdedit /enum firmware。これは、別のLinuxディストリビューションを使用していて、検索エンジンがここに到着した場合に役立ちます:
David Faure

19

私のために働いた唯一の解決策は 、Googleでこのスレッドを見つけるのが簡単だからといって、私がここに再び持ってきたリンクに記載されています。

基本的に手順は次のとおりです。

  1. Ubuntu Liveを使用して「Try Ubuntu」モードで起動します。
  2. GPartedを使用して、正しいLinuxパーティションを確認します(例:)/dev/sda2
  3. Linuxパーティションをマウントします。

    sudo mount /dev/sda2 /mnt  #Replace sda2 with your partition number
    
  4. 他のすべてのLinuxシステムフォルダーをマウントします。

    for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done
    

    UEFIシステムを実行している場合は、次のコマンドを使用してEFIディレクトリをマウントする必要もあります。

    sudo mount /dev/sda1 /mnt/boot/efi
    
  5. インストールにchroot

    sudo chroot /mnt
    
  6. Ubuntu Liveではなくインストールにログインしました。

    update-grub
    grub-install /dev/sda
    update-grub
    exit
    sudo reboot
    

以上です !上記のリンクで、Scott Severanceがクレジットを取得します。


1
部分的には私のために働いた..今では、ブートメニューを表示せずにLinuxを直接起動します
PowerAktar

@PowerAktar「ESC」を押してグラブメニューを表示しようとしましたか?
InitializeSahib

答えは私を助けました。基本的に、PCを「Try Ubuntu」モードで起動し、ブート修復をインストールしてgrubを修正しました。Linuxパーティションが回復されました。しかし、修正後にWindowsパーティションを失います。そこで、ステップ4から6を実行しようとしました。これらのステップは、Windows 10パーティションを回復するのに役立ちました。ありがとうNir
r0ng

2
この回答は、リンクされた質問のこの回答とほぼ同じですが、書式と文法が劣っています。あなたの答えが本質的に別の質問のコピーである場合、15評判獲得したら、この質問に他の質問の複製としてフラグ立てることをお勧めます。役に立つと思う答えに投票することを忘れないでください!
デビッドフォースター

それは私のために働いた唯一のものです。(L)ubuntuがsda1 / EFI / boot / ...に何も作成しないことに気付きましたが、手動で実行して修正しました。ありがとう!
user2084865

4

ここで同じ問題、デュアルブートPCでwindows7から10にアップグレードしています...私はこの方法で解決しました:

  1. Windowsをアップグレードする
  2. インストールプロセス中、最初の再起動後、grubレスキュープロンプトが表示され、USBスティックのBootRepairでこれを修正しました
  3. Windowsのインストールが完了し、GRUBがなくなり、gpartedのライブCDを使用して、すべてのパーティションがまだ存在していることに気付きましたが、それらはすべてNTFSでした
  4. Windowsから使用したTestDiskがLinuxパーティションを回復しました
  5. BootRepairをもう一度実行すると、すべてが問題ないように見えます(GRUBメニューでWindowsの音声が重複しています。理由はわかりませんが、今ではすべて問題ありません!)

それが誰かに役立つことを願っています!


ステップバイステップの詳細が役立ちます
ベリディアン

この解決策も私にとってはうまくいきました。役立つかもしれないステップによってこのステップ:cgsecurity.org/wiki/TestDisk_Step_By_Step
グッドジャイアント

1
TestDiskはどのようにLinuxパーティションを回復しましたか?パーティションの種類を変更するためだけに使用しましたか?
グレッグベル

Windowsセットアップがext4パーティションをNFTSに変換すると言っていますか?ファイルのアクセス許可やシンボリックリンクなど、NTFSでも100%表現できないものはどうなりましたか?ファイル情報が部分的に失われると予想されます。
bluenote10

4

私の妻のマシンは古い(UEFI以外)で、Ubuntuを論理拡張パーティションにインストールしていました。Windows 10にアップグレードすると最初にgrubが強制終了されたため、再起動すると「grub rescue」プロンプトが表示され、LiveUSBからBootRepairで復元しましたが、Linuxパーティションがありませんでした!これをLiveUSBから別れたレスキューで復元し、パーティションを見つけて復元しました。そこから、LiveUSBからパーティションをマウントし、grub-installを実行して、復元されたUbuntuとWin10を再起動することができました。これが他の人に役立つことを願っています。


3
注:BIOSでWindows 7を使用しているすべてのユーザーは、MBR(msdos)パーティションドライブおよびUbuntuで論理パーティションを起動すると、この問題が発生する可能性があります。最初にパーティションテーブルを個別にバックアップすることをお勧めします。パーティションテーブルを変更していない場合は、直接復元できます。askubuntu.com/questions/654386/…Windowsは、パーティションテーブルを書き換えるときに、Linuxパーティションを含めることを常に「忘れ」ていました。
オールドフレッド

妻のマシンで[Windows 10に更新]ボタンを押す前にこれを読んでいたらいいのですが。:)
bheeshmar

2
「BootRepair」と「parted rescue」および/または「LiveUSB」へのリンクを提供してください。これらのことはたくさんあり、人々はあなたがしたことを正確に使うことに興味があるかもしれません(Googleでそれらを明確に見つけることができませんでした)。
グレッグベル

@oldfred Windowsはアップグレード時にテーブルを書き換えますか?それが怖いです。
Android開発

2

ブートシーケンスの順序を確認しましたか?Microsoftブートローダーの番号が2の場合は、一番下に移動して再起動します。

sudo efibootmgr -vターミナルで実行することにより、Ubuntu内から確認できます。


2

ここでは、問題の解決方法(最新のWin10更新によるGrubメニューの損失)を修正する手順を提供する多数の回答があります。さまざまな答えは、マシン構成が一意ではないため、ソリューションが一意ではないことを証明しています。

私のシステム(Acer E5-575G-57D4)では、以下が修正されます:

短い答え

1)Windowsでは、Nicholasの回答で述べたように、Windowsコマンドプロンプトで管理者として次のコマンドを入力します。

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

2)Live Ubuntu CD / USBでブート修復ユーティリティを実行します

長い答え:

1)Windowsにログインします。

2)(Ubuntuバージョンで)起動可能なUSBスティックを作成し、プラグインします。

3)コマンドプロンプトで管理者として次のコマンドを入力します。

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

再起動します。

4)起動中にF12押して起動メニューを表示します。「Linux」を選択します。注:このためには、BIOS設定で「F12ブートメニュー」を有効にする必要があります(ブート中にF2を押します)。

5)メニューで、ライブUbuntuセッションの「インストールせずにubuntuを試す」を選択します。

6)WiFiに接続します。次のコマンドを使用して、ブート修復ダウンロードして実行します。

sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair

grubが修正されたというメッセージが表示されるまで、プロンプトに従ってください。それは私のために働いた。

ありがとう:)


1

それが関連しているのかどうかはわかりませんが、Windows 8.1 / debianデュアルブートからWindows 10にアップグレードしようとすると、少し問題が発生しました。

基本的に、アップグレードのある時点で、grubがレスキューモードになりました。これは、プロセスでdebianパーティションが消去されたため、ブートファイルが含まれていたためです(通常は別のブートパーティションがありますが、今回は... )。このリンクを見ると:Windows 10のアップグレードはGRUBレスキューにつながった

問題は、アップグレードプロセス中にWindowsがパーティションテーブルを正しく書き込まなかったことです。

とにかく、Win8.1インストール外部hddで起動することで問題を修正し、次の指示に従いました:https : //neosmart.net/wiki/fix-mbr/(win8 / 8.1までスクロールダウン)。それはgrubを消去し、mSoftのブートローダーを再インストールしました。それからアップグレードを完了し、debianを再インストールしました。それは、パーティションテーブルが正しく書き込まれていないという単純な問題に気付いていなかったからです。しかし、より良い解決策は、(testdiskを使用して)パーティションテーブルを復元してから、grubを再インストール/更新することです。

それが役に立てば幸いです。

PS:デュアルブート構成を持っている人について気にしないでくれてありがとう


私も、アップグレードでパーティションが消去されました。
ルイスゴダード

私が理解していないのは、/ optとlinux-swapに他の2つの論理パーティションが残っていたときに、ルートLinuxパーティションだけが消去された理由です。窓が本当に困っテーブルに論理パーティションを書いていた確かにあれば、それらの...あまりにも苦戦している必要があります
ジェレミーリヴィエール

1
UEFI / gptシステムがパーティションテーブルを正しく書き込まない問題は見られません。しかし、論理パーティションにBIOS / MBRおよびLinuxを搭載したWindows 7または8には問題があるようです。askubuntu.com/questions/654386/…パーティションが見つからないという問題がある他のすべての論理パーティションには、1つのLInuxパーティションしかありませんでした。しかし今では、Windowsが/(ルート)パーティションの書き込みを「忘れる」だけのことは非常に奇妙に思えます。そして、Windows 7の再インストールでも長年にわたってそれを見てきました。
オールドフレッド

1
@oldfred論理パーティションに順番に番号が付けられていない場合、つまり、sda6は拡張パーティション内のsda5の前にあり、Linuxパーティション(私の場合はLinuxスワップとNTFSが削除されている)だけではありません。Windows 10アップグレードでは、ブートパーティションに収まらない場合、リカバリ環境用の新しいパーティションが作成されることがあります。
マーティンソーントン

1

私はrescuetux / supergrubdiskを使用しました。AndroidタブレットのDriveDroidから起動しました。次に、rescuetuxの自動検出を使用しました。WINDOWSボタンに行って、betaWindowsMBR修復ボタンを押してください。そして、/ dev / sda2 ok ok ok okを選択しました。それからそれは成功したと言いました。今、私はちょうどWindows UEFIメニューに戻って起動しました。


1

私の修正は@Francescoに近かったが、少し異なっていた。

  1. Windowsを7から10にアップグレードします。
  2. インストールプロセス中、最初の再起動後、grubレスキュープロンプトが表示され、USBスティックのBootRepairでこれを修正しました。
  3. Grubは現在表示されていますが、WindowsではなくUbuntuパーティションのみを表示しています。
  4. Ubuntuにログインし、ターミナルに移動して入力します update-grub
  5. Windowsがgrubメニューに戻って表示されるようになりました。Windows10のアップグレードを続行してください。

私の場合、システムはBootRepairの後にWindowsで起動します。
tbear

1
さらに、すべてのLinuxパーティションはFrancescoのようになくなっていました。あなたは幸運だった。
tbear

@tbearでは、どのように回復しましたか?
グレッグベル

1

Win10インストールメディアがある場合は、これを使用して新しい新しいMBRをインストールできます。「今すぐインストール」(または同様の)が表示されるまで起動しますが、クリックしないでください。「修復ツール」(または何か)と言う小さなリンクがあります。これから、コマンドプロンプトを入力できます。

cd c:\windows\system32
bootrec /fixmbr

たぶん

bootrec /fixboot

これで問題が解決するはずです。しかし、あなたのLinuxは、Microsoftが人々の選択に無知であるためになくなっています。彼らはあなたのHDDで利用できるものは何でも好きではないものを削除しても大丈夫だと判断しました。そのため、私たちはMSが一団の不法行為であると法的に決定するかもしれません...

Win10インストールメディア作成ツールは、https: //www.microsoft.com/en-us/software-download/windows10から無料で入手できます


0

8/8/15 Windows 7からWindows 10にアップグレードし、Windows10をインストールした後、FirefoxをデフォルトのブラウザにしてPCをシャットダウンし、15秒待ってPCの電源を入れましたが、 5秒以内にUbuntuを選択するオプション。Ubuntuをクリックすると、永遠と思われるものが灰色の画面でぐらついたように見えましたが、キーボードのEnterボタンをタップして何かを起こそうとする以外は何もしませんでしたそして待っていた、そしてついにUbuntuまたは高度なオプションを選択するおなじみの黒い画面が現れました。Ubuntuで問題なく起動しました。Windows 10で電源を切って電源を入れた後、Windows 7でUbuntu、LOLを使用した後と同じように、Windowsの時刻と日付が5時間速く表示されました。次回、Ubuntuを選択してブートアップブートを開始したときは、はるかに短い時間でした。


0

私にとってプロセスは非常に複雑でした。USBスティックからブート修復を使用し、USBスティックを取り外してコンピューターを再起動すると、ubuntuログインオプションのみが表示されます。コンピューターのハードディスクにインストールされたUbuntuにログインし、再度ブート修復を使用します。その後、コンピューターを再起動すると、Unbuntとwinsows 10の両方にログインするオプションがあり、正常に機能しています。


-2

Acer Aspire-AXC-605でWindows 10にアップグレードした後、ubuntuを起動できず、F2キーでBIOS画面が表示されないため、USB ubuntuからライブで起動できませんでした。

起動中にEscキーを使用しなければならなかったため、「Diagnose PC」画面が表示され、そこからUSBを起動できました。


これは本当に質問に答えません。
-TheWanderer

@ Zacharee1ユーザーが提案する解決策は、「PCの診断画面を表示するためのエスケープヒット、USBブートオプションの提供」です。それは良い答えではありませんが、答える試みです。
トーマスウォード

しゅう OK。私は本当にそれを見ません。
-TheWanderer

@ Zacharee1は私の編集を参照してください-それは少しそれを分割しますが、ポイントは、それが答えだが、それは本当の良いものではありません、それがないということです、本当に偉大な答えを提供
トーマス・ウォード
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.