web-dev-qa-db-ja.com

Windows 7のインストール後にGRUBを回復しますか?

可能性のある複製:
GRUBを修復するにはどうすればよいですか?(Windowsのインストール後にUbuntuを元に戻す方法は?)

クラッシュした後にWindows 7をインストールしましたが、Ubuntuを起動できません。 Ubuntuパーティションはまだあります。 Boot-Repair を使用しようとしましたが、機能しませんでした!

63
Nilav

ディストリビューションバージョンのLiveCDを使用して、マスターブートレコードにgrubを再インストールできます。

こんなふうになります:

  • LiveCDから起動しますinstalledインストールされているバージョンと同じバージョンのGrub2を持つLiveCDを使用してみてください

  • インストールしたUbuntuのルートを/ mntにマウントします

  • ルートを変更

  • GRUBを更新する

  • GRUBをインストールする

  • リブート

上記の手順は Grub2のUbuntu Community Documentationの下部にあります

LiveCDから起動した後(オープニング画面で「Ubuntuを試す」を選択)

次に、ターミナル(ダッシュ、タイプインターミナル、…)を起動します…

  • LiveCDの実行中にこのWebページを開く方が簡単な場合があります。 Firefoxはこれを可能にします。

端末にSudo fdisk -lと入力し、求められたらパスワードを入力します。これは小文字のLです。インストールされているUbuntuパーティションを見つけます(他のディスクを切り取ったものから、ここから)。

me@mycomputer:~$Sudo fdisk -l
...
Disk /dev/sde: 300.1 GB, 300089646592 bytes
255 heads, 63 sectors/track, 36483 cylinders, total 586112591 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xc3f5ebeb

Device    Boot      Start         End      Blocks   Id  System
/dev/sde2       138464296   586110975   223823340    5  Extended
/dev/sde3   *        2048   138463231    69230592   83  Linux
/dev/sde5       138464298   313460279    87497991    7  HPFS/NTFS/exFAT
/dev/sde6       313460736   317650943     2095104   82  Linux swap / Solaris
/dev/sde7       317652992   581922815   132134912   83  Linux
/dev/sde8       581924864   586110975     2093056   82  Linux swap / Solaris

Partition table entries are not in disk order

Linuxインストールを見つけます(Id = 83、System = Linux0を入力します

Sudo mount /dev/sde3 /mnt

ただし、/dev/sde3(私のルートパーティションはsde3、sde7は私のホームパーティション)の代わりにパーティションを使用します。

これは、別個の/bootパーティションがないことを前提としています。その場合、次のように入力してマウントする必要があります。

Sudo mount /dev/sd·· /mnt/boot

ここで、sd··は、個別のブートディレクトリをインストールしたパーティションです。

ls /mnt-正しいかどうかを確認するだけです:

me@mycomputer:~$ Sudo mount /dev/sde3 /mnt
me@mycomputer:~$ ls /mnt
bin   cdrom  etc   initrd.img      lib         media  opt   root  sbin     srv  tmp  var      vmlinuz.old
boot  dev    home  initrd.img.old  lost+found  mnt    proc  run   selinux  sys  usr  vmlinuz

ブートディレクトリが正しくインストールされているかどうかをテストする必要があります。 ls /mnt/bootと入力し、空の場合、ブートディレクトリはインストールされません。次のようになります。

me@mycomputer:~$ ls /boot
abi-2.6.35-30-generic     initrd.img-2.6.35-30-generic  System.map-2.6.35-31-generic
abi-2.6.35-31-generic     initrd.img-2.6.35-31-generic  vmcoreinfo-2.6.35-30-generic
config-2.6.35-30-generic  memtest86+.bin                vmcoreinfo-2.6.35-31-generic
config-2.6.35-31-generic  memtest86+_multiboot.bin      vmlinuz-2.6.35-30-generic
grub                      System.map-2.6.35-30-generic  vmlinuz-2.6.35-31-generic

次に:

for i in /dev /dev/pts /proc /sys; do Sudo mount -B $i /mnt$i; done
Sudo chroot /mnt #change the root
Sudo update-grub # now update grub

例:

me@mycomputer:~$ Sudo for i in /dev /dev/pts /proc /sys; do Sudo mount -B $i /mnt$i; done
me@mycomputer:~$ Sudo chroot /mnt
me@mycomputer:~$ Sudo update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-3.0.0-13-generic
Found initrd image: /boot/initrd.img-3.0.0-13-generic
Found linux image: /boot/vmlinuz-3.0.0-12-generic
Found initrd image: /boot/initrd.img-3.0.0-12-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP Professional on /dev/sdc1
done

次に、MBRにgrubを再インストールします。システムがどのディスクから起動するかを知る必要があり、すでに行ったfdisk -lリストで見つける必要があります。次に、Sudo grub-install /dev/sdを入力し、sd·をブート元のディスクに置き換えます。

me@mycomputer:~$ Sudo grub-install /dev/sd·

次に、Crtl-Dと入力して、chrootを終了します。

次にSudo for i in /sys /proc /dev/pts /dev; do Sudo umount /mnt$i; done-を1行で入力します

me@mycomputer:~$ Sudo for i in /sys /proc /dev/pts /dev; do Sudo umount /mnt$i; done

別の/ bootパーティションをマウントした場合は、Sudo umount /mnt/bootと入力します

me@mycomputer:~$ Sudo umount /mnt/boot

次にSudo umount /mntと入力します

me@mycomputer:~$ Sudo umount /mnt

次に、Sudo rebootと入力してシス​​テムを再起動します(LiveCDを削除することを忘れないでください)。

me@mycomputer:~$ Sudo reboot

うまくいけば、grubがインストールされます。

55

これを試して...

GRUBを回復するには:

  1. ライブバージョンを開きます。
  2. ターミナルを開き、Sudo fdisk -lを実行して、Linuxがインストールされている場所を確認します。
  3. Sudo mount /dev/sdaX /mntを実行します。xは、Linux Wordを見つけた番号です
  4. Sudo grub-install --root-directory=/mnt /dev/sdaを実行してgrubをインストールします。
  5. Sudo update-grubを実行してgrubを更新し、このコマンドが機能しない場合は、再起動後に実行します。
  6. リブート。
40
Black Block

Boot-Repairは、Windowsまたは別のLinuxディストリビューションのインストール後にUbuntuを起動できない場合、Ubuntuのインストール後にWindowsを起動できない場合、またはGRUBは表示されなくなり、一部のアップグレードではGRUBが壊れます。

enter image description here

注:これは、ライブCDまたはライブUSBからも実行できます。

Software Centerを介してソフトウェアソースに「ppa:yannubuntu/boot-repair」を追加するか、速度を重視する場合は、新しいターミナルセッションを使用して追加します。

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

ブート修復は、Ubuntuセッション(通常のセッション、ライブCD、またはライブUSB)からインストールして使用できます。 PPAパッケージは、Ubuntu 10.04、10.10、11.04、11.10、12.04および12.10で使用できます。 ソース

17
Ringtail

Windows 7のインストール後、WindowsブートローダーがMBRを上書きしました。

これを修正するには、Windowsにプログラム「EasyBCD」をインストールします

EasyBCDのインストール後、次の手順に従ってGRUBを復元します。

  1. プログラムを起動し、EasyBCDツールボックスから[新しいエントリを追加]を選択します

  2. オペレーティングシステムの列から「Linux/BSD」を選択します

  3. タイプでGRUB(レガシー)を選択し、[エントリの追加]アイコンをクリックします

  4. [はい]を選択して再起動プロンプトを表示します

  5. GRUBは再起動後に表示され、Ubuntuを起動できるようにUbuntuパーティションが検出されます

幸運を

ダウンロードリンク: http://neosmart.net/download.php?id=1

12
Mysterio

ブート修復 動作:

  • PCにWindows UbuntuXPとUbuntuがありました。
  • Windows 7をインストールした結果、Ubuntuなしで新しいブートローダーが作成されました。
  • 起動ディスクにBoot-Repairをインストールし、GRUBがWindows 7およびWindows XPと共に更新されました。
2
Vaibhav Dubey

注意が必要な微妙な点-指示では、別のブートパーティションがあるかどうかを確認し、もしそうなら、Sudoは/ dev/sd··/ mnt/bootをマウントします。私はここで混乱しました-私のLinuxではなく、ベースパーティション(/ sda0)であるブートパーティションがありました。そのため、私はそのコマンドを実行し、Windowsブートのみを表示するgrubメニューを取得しました。 Sudoマウント/ dev/sd・//mnt/bootを実行せずに手順を再実行したところ、うまく機能しました。古いGRUBメニューがすべてのLinuxオプションとWindowsとともに戻ってきました。手順は、ブートパーティションがLinuxでない場合ではなく、個別のLinuxブートパーティションのみを参照しています。

1
Andy Weinstein