Ubuntuのブートファイルを食べたWindows7をインストールしました。コンピューターを起動すると、Ubuntuを起動するオプションが表示されずに、Windowsに直接アクセスできるようになりました。
Ubuntuを取り戻すにはどうすればよいですか?
承認された回答:
Windowsをインストールすると、Windowsはそれがマシン上の唯一のオペレーティングシステム(OS)であるか、少なくともLinuxを考慮していないと見なします。そのため、GRUBを独自のブートローダーに置き換えます。あなたがしなければならないことは、WindowsブートローダーをGRUBに置き換えることです。 GRUBコマンドなどをいじってGRUBを置き換えるためのさまざまな手順を見てきましたが、私にとって最も簡単な方法は、単に chrootすることです。 インストールに挿入し、 update-grubを実行します 。 chroot あちこちにリダイレクトしようとするのではなく、実際のインストールで作業できるので素晴らしいです。本当にきれいです。
方法は次のとおりです。
- 「Ubuntuを試す」モードで、ライブCDまたはライブUSBから起動します。
-
メインパーティションのパーティション番号を決定します。
sudo fdisk -l </ code> 、sudo blkidまたはGParted(デフォルトではライブセッションにすでにインストールされているはずです)がここで役に立ちます。この回答では、/ dev / sda2であると想定します。 、ただし、システムに正しいパーティション番号を使用していることを確認してください!メインパーティションがLVMにある場合 、代わりにデバイスは
/ dev / mapper /に配置されます 、おそらく、/ dev / mapper / {volume}-{os} -rootここで、{volume}LVMボリューム名と{os}です。 オペレーティングシステムです。ls / dev / mapperを実行します 正確な名前。 -
パーティションをマウントします:
sudo mount /dev/sda2 /mnt #Replace sda2 with the partition from step 2別の
/bootがある場合 、/ varまたは/usrパーティション 、手順2と3を繰り返して、これらのパーティションを/ mnt / bootにマウントします。 、/ mnt / varおよび/mnt / usrそれぞれ。たとえば、sudo mount /dev/sdXW /mnt/boot sudo mount /dev/sdXY /mnt/var sudo mount /dev/sdXZ /mnt/usrsdXWを置き換える 、sdXY、およびsdXZそれぞれのパーティション番号で。 -
他の必要なものをバインドマウントします:
for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done -
UbuntuがEFIモードでインストールされている場合(不明な場合はこの回答を参照してください)、
sudo fdisk-l|を使用します。 grep -i efiまたはGPartedを使用してEFIパーティションを検索します。EFIのラベルが付けられます 。sdXYを置き換えて、このパーティションをマウントします システムの実際のパーティション番号:sudo mount /dev/sdXY /mnt/boot/efi -
chrootUbuntuインストールに:sudo chroot /mnt -
この時点で、ライブセッションではなくインストールが行われ、rootとして実行されています。 grubを更新する:
update-grubエラーが発生した場合、または手順7に進んでも問題が解決しない場合は、手順8に進みます(それ以外の場合はオプションです)。
-
状況によっては、grubを再インストールする必要がある場合があります:
grub-install /dev/sda update-grub # In order to find and add windows to grub menu. -
UbuntuがEFIモードでインストールされていて、EFIパーティションのUUIDが変更されている場合は、
/ etc / fstabで更新する必要があります。 。比較してください:blkid | grep -i efi grep -i efi /etc/fstab現在のEFIパーティションUUIDの場合(
blkidから) )/ etc / fstabのものとは異なります 、/ etc / fstabを更新します 現在のUUIDを使用します。 -
すべてがエラーなしで機能した場合は、すべて設定されています:
exit sudo reboot -
この時点で、正常に起動できるはずです。
正常に起動できず、エラーメッセージが表示されなかったために手順8を実行しなかった場合は、手順8で再試行してください。
- GRUB2に正しい構成を与えることがあります パーティションは十分ではないため、実際にマスターブートレコードにインストール(または再インストール)する必要があります。これはステップ8で行われます。チャットでユーザーを支援した経験から、エラーメッセージが表示されていない場合でも、手順8が必要になることがあります。