X86 11.10デスクトップの新規クリーンインストール。 Windows XPとLinuxを別々のドライブに搭載したデュアルブート。
インストール後、grubはWindowsを起動しませんが、起動ドライブを変更することで正常に起動します。
これを修正しようとすると、 http://bootinfoscript.sourceforge.net/ と http://sourceforge.net/apps/mediawiki/bootinfoscript/index。 php?title = Boot_Problems:search 私の問題、grubブートエラー画面のメッセージ:
error: no such device: 6⋯⋯⋯⋯⋯⋯⋯
そこで、Step2に従って、以下の出力を比較します。
Sudo blkid
および
Sudo nano /boot/grub/grub.cfg
両方のUUIDがWindowsドライブと一致するため、/ usr/lib/grub/grub-mkconfig_libのステップ4「…の検索行を削除」で修正を行い、以前のように3行をコメントアウトします⋯
# if fs_uuid="`${grub_probe} --device ${device} --target=fs_uuid 2> /dev/null`" ; then
# echo "search --no-floppy --fs-uuid --set ${fs_uuid}"
# fi
Sudo update-grub
を実行して/etc/default/grub.cfgをチェックすると、UUIDではなくWindowsパーティションが識別されていることがわかります。これは回避策と思われます。
しかし、11.10デスクトップを起動しようとすると、次のようになります。
error: no such partition… …
そして、Windowsを起動しようとすると、次のようになります:
error: invalid signature.
だから今、これをどのように修正しますか…
ブートの問題と動作する回避策を見つけますか?
まあ、それは本当に2つの部分からなる質問なので、少なくともgub2を少なくともubuntuを起動する方法についての暗黙の最初の質問に答えることができます。
こんなふうになります:
LiveCD(x86 11.10デスクトップ)から起動
Ubuntu 10.10のルートを/ mntにマウントします
ルートを変更
/ usr/lib/grub/grub-mkconfig_libへの回避策の変更を削除します
Update-grubを実行します
リブート
上記の手順は Grub2のUbuntu Community Documentationの下部にあります
particular詳細はby example
です。CDから起動し、ターミナルで実行した後…
Sudo -i
⋯suとして何年も費やしましたが、use "Sudo …
"各コマンドの前に
ubuntu@ubuntu:~$ Sudo -i
fdisk -l
⋯これは小文字のL⋯ )
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
mount /dev/sde3 /mnt
⋯ルートパーティション、sde7はホームパーティションです
ls /mnt
⋯正しいかどうかを確認するだけです
root@ubuntu:~# mount /dev/sde3 /mnt
root@ubuntu:~# 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
for i in /dev /dev/pts /proc /sys; do Sudo mount -B $i /mnt$i; done
⋯do as one line
chroot /mnt
⋯ルートを変更
sudoedit /usr/lib/grub/grub-mkconfig_lib
⋯ここで変更を元に戻します
update-grub
⋯grubを更新
root@ubuntu:~# for i in /dev /dev/pts /proc /sys; do Sudo mount -B $i /mnt$i; done
root@ubuntu:~# chroot /mnt
root@ubuntu:/# sudoedit /usr/lib/grub/grub-mkconfig_lib
root@ubuntu:/# 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
sudoedit /etc/default/grub
⋯変更されたかどうかを確認します(元のものと同じでなければなりません)
sudoedit /boot/grub/grub.cfg
⋯UUIDによるマウントが元どおりかどうかを確認します
そしてそうだった。
ブート失敗のバグレポートを提出します…
Grubは期待どおりに機能するようになり、WinXPとUbuntu 11.10の両方が正しく起動するようになりました。
通常のアップグレードを除き、Grubに変更が加えられていないため、これは説明できません。