web-dev-qa-db-ja.com

Windows 8.1がブートローダーを上書きしないようにするにはどうすればよいですか?

GRUBブートローダーを使用して、Trisquel GNU/LinuxとWindows8.1を備えたデュアルブートシステムを使用しています。しかし、Windowsを起動するたびに、次のように見えるという問題があります。 GRUBを上書きして、後続の起動時にWindowsで直接起動するようにします。ライブUSBで起動してGRUBを再インストールする方法は知っていますが、Windowsを起動するたびにそれを実行する必要があるのは非常に困難です。I Windowsがブートローダーを上書きしないようにするための長期的なソリューションが必要です。

私はUnixとLinuxSEでこの既存の質問を知っています:

https://unix.stackexchange.com/questions/68581/how-can-i-prevent-windows-from-overwriting-grub-when-using-a-dual-boot-machine

しかし、そこでの答えは私を助けませんでした(そして時代遅れかもしれません)。 Windowsの自動更新を無効にし、昨年からWindowsUpdateが実行されていないことを確認しました。 (私はU&L SEにフォローアップを投稿し、代わりにここで試すことを勧めました)。

それで、私の許可なしにWindowsが私のブートローダーを上書きするのを絶対に防ぐ方法を誰かが知っていますか?

私はではなくGRUBを再インストールする方法についてのアドバイスを探していることに注意してください。私はそれを行う方法を知っており、何度もそれを行ってきました。そもそもWindowsがブートセクタを台無しにするのを防ぐために、より持続可能なソリューションが必要です。

2
Time4Tea

コメントでのマイケルベイのアドバイスに従って、私は問題が何であったかを理解したと思います。起動時に、WindowsはUEFIブート設定を変更して、Windowsブートマネージャーをデフォルトのブートローダーに設定していたようです。 UEFIブートがどのように機能するかについては少し知らなかったことを認めなければなりませんが、このページは非常に役立つことがわかりました。

https://www.happyassassin.net/2014/01/25/uefi-boot-how-does-that-actually-work-then/

問題は本質的にこの質問と同じでした:

Windows 8は起動順序を変更します

私のマシンはDellInspiron 660デスクトップですが、残念ながら、そのUEFIファームウェアUIは基本的にゴミのようです。ただし、Windowsコマンドプロンプトで次のコマンドを使用して、ブートローダーをGRUBに戻すことができました。

bcdedit /set {bootmgr} path \EFI\trisquel\grubx64.efi
bcdedit /set {bootmgr} description GRUB

これを行ったので、Windowsは設定を変更しようとしていないようで、GRUBは毎回読み込まれます。問題は解決しました!

2
Time4Tea