Windows専用ブート用のGrubブートローダの修正(デュアルブートからLinuxをアンインストールした後)

Windows専用ブート用のGrubブートローダの修正(デュアルブートからLinuxをアンインストールした後)

私のラップトップ(シングルディスク)にデュアルブート(Ubuntu + Win10)設定があります。スペースの制約により、Ubuntuパーティション(拡張パーティションのルート、ホーム、スワップ)を削除し、大容量NTFSパーティションをディスク全体に拡張する必要がありました。残念ながら、Grub設定はUbuntuセクションに保存されます。だからもう起動できません。ちょうどグラブ修理CLIに入った。

Ubuntu 20.04ライブUSBスティックを使用してリカバリしようとしている間、sda1(NTFS 500MB)、sda2(Windows 10、250GB)、sda3(Windowsリカバリ)、およびsda4(300MB ext4、/ bootパーティションgrubとして指定)があります。後者の場合、既存の構成を修正してみました。grub-install --root-directory /mnt/sda4 /dev/sda以下を使用して grub をインストールしました。この投稿

Grub CLI(2.04)から起動できます。次のコマンドを使用します。この投稿、Win10で再起動できます。

insmod chain
insmod ntfs
set root=(hd0,msdos1)
chainloader +1
boot

しかし、この時点で私は詰まっています。 grubメニューを再び永久にインストールする方法がわかりません。update-grubまたは(ライブジョイスティックで実行)などのコマンドは、grub2-mkconfigライブジョイスティックで実行する必要はありません。試してみましたがchroot成功しませんでした。私が見つけたすべてのマニュアルでは、まだLinuxオペレーティングシステムがインストールされていると仮定していますが、chrootWindowsのみを実行する設定が必要なようです。もうGrubブートローダーしかなかったら。 Windowsブートローダを使用すると良いでしょうが、Windowsの起動時にF8を押しても回復モードで起動できないようで、Windowsの回復メディアもありません。

それでは、この場合、WindowsのスタートアップエントリをGrubに永久に追加する方法を知っている人はいますか?起動するたびに5つのコマンドを入力する必要がないクイック回避策も良いでしょう。ありがとうございます:-)

答え1

grub-installライブメディアとして実行され、マウントされたファイルシステムをルートファイルシステムとして指定しているため、少なくとも1つのサブディレクトリを持つディレクトリが/mnt/sda4必要grub-installです。そして/または同じものがあるかもしれません。/mnt/sda4/boot/grub/i386-pcdevice.mapgrubenv

この5つのWindowsスタートアップコマンドをテキストファイルに入力し(Linuxテキストエディタを使用できるようにLinuxスタイルの行末を使用することをお勧めします)、ファイルをに配置することで簡単に/mnt/sda4/boot/grub/grub.cfg修正できます。

単純化された設定ファイルを解析し、他のオペレーティングシステムを自動的に検出し、結果に応じてクールなメニューシステムを使用してファイルを自動的に生成するなど、ユーティリティスクリプトを選択的に実行するスクリプトを実行するgrub2-mkconfigためにのみ使用されます。本質的にはDebian / Ubuntu固有のエイリアスです。/etc/grub.d//etc/default/grubos-probergrub.cfgupdate-grubgrub2-mkconfig

grub.cfgより複雑なメニュー構造を作成したい場合は、かなり退屈である可能性があることを除いて、中間ステップをスキップして実際のファイルを最初から直接作成するのを防ぐことはできません。

関連情報