PDA

View Full Version : [SOLVED] GRUB? lost windows XP shortly after 10.10 installation



Fordson_major
December 7th, 2010, 05:26 PM
Hi, as a newbie I installed 10.10 alongside XP home ed. having resized the windows partition during the installation.All worked perfectly for a few days but then the option to load XP disappeared from the grub start up screen so I have no way that I know of of starting windows. I have prepared the boot info script, pasted below:
I updated grub as previously suggested , to no avail, then upgraded grub to version 2 from Debian and updated that. The Grub options on startup include various versions of Ubuntu and memory tests but no longer, XP. I would be grateful for ideas please.


Boot Info Script 0.55 dated February 15th, 2010

============================= Boot Info Summary: ==============================

=> Grub 2 is installed in the MBR of /dev/sda and looks on the same drive in
partition #5 for (,msdos5)/boot/grub.

sda1: __________________________________________________ _______________________

File system: ntfs
Boot sector type: Windows XP
Boot sector info: No errors found in the Boot Parameter Block.
Operating System: Windows XP
Boot files/dirs: /boot.ini /ntldr /NTDETECT.COM

sda2: __________________________________________________ _______________________

File system: Extended Partition
Boot sector type: -
Boot sector info:

sda5: __________________________________________________ _______________________

File system: ext4
Boot sector type: -
Boot sector info:
Operating System: Ubuntu 10.10
Boot files/dirs: /boot/grub/grub.cfg /etc/fstab /boot/grub/core.img

sda6: __________________________________________________ _______________________

File system: swap
Boot sector type: -
Boot sector info:

=========================== Drive/Partition Info: =============================

Drive: sda ___________________ __________________________________________________ ___

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes

Partition Boot Start End Size Id System

/dev/sda1 * 63 147,208,191 147,208,129 7 HPFS/NTFS
/dev/sda2 147,214,334 312,580,095 165,365,762 5 Extended
/dev/sda5 147,214,336 295,002,111 147,787,776 83 Linux
/dev/sda6 300,863,488 312,580,095 11,716,608 82 Linux swap / Solaris


blkid -c /dev/null: __________________________________________________ __________

Device UUID TYPE LABEL

/dev/sda1 3844C82F44C7EE26 ntfs
/dev/sda2: PTTYPE="dos"
/dev/sda5 dbfbe2fd-9c4a-4c05-90b0-d49de32675c7 ext4
/dev/sda6 07ac7a18-3a33-4676-9c8c-e872822d4e4f swap
/dev/sda: PTTYPE="dos"

============================ "mount | grep ^/dev output: ===========================

Device Mount_Point Type Options

/dev/sda5 / ext4 (rw,errors=remount-ro,commit=0)


================================ sda1/boot.ini: ================================

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOW S
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect

=========================== sda5/boot/grub/grub.cfg: ===========================

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
set have_grubenv=true
load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}

function recordfail {
set recordfail=1
if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
}

function load_video {
insmod vbe
insmod vga
}

insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set dbfbe2fd-9c4a-4c05-90b0-d49de32675c7
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
load_video
insmod gfxterm
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set dbfbe2fd-9c4a-4c05-90b0-d49de32675c7
set locale_dir=($root)/boot/grub/locale
set lang=en
insmod gettext
if [ "${recordfail}" = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set dbfbe2fd-9c4a-4c05-90b0-d49de32675c7
insmod png
if background_image /boot/grub/moreblue-orbit-grub.png ; then
set color_normal=black/black
set color_highlight=magenta/black
else
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.35-23-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set dbfbe2fd-9c4a-4c05-90b0-d49de32675c7
linux /boot/vmlinuz-2.6.35-23-generic root=UUID=dbfbe2fd-9c4a-4c05-90b0-d49de32675c7 ro quiet splash
initrd /boot/initrd.img-2.6.35-23-generic
}
menuentry 'Ubuntu, with Linux 2.6.35-23-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set dbfbe2fd-9c4a-4c05-90b0-d49de32675c7
echo 'Loading Linux 2.6.35-23-generic ...'
linux /boot/vmlinuz-2.6.35-23-generic root=UUID=dbfbe2fd-9c4a-4c05-90b0-d49de32675c7 ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.35-23-generic
}
menuentry 'Ubuntu, with Linux 2.6.35-22-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set dbfbe2fd-9c4a-4c05-90b0-d49de32675c7
linux /boot/vmlinuz-2.6.35-22-generic root=UUID=dbfbe2fd-9c4a-4c05-90b0-d49de32675c7 ro quiet splash
initrd /boot/initrd.img-2.6.35-22-generic
}
menuentry 'Ubuntu, with Linux 2.6.35-22-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set dbfbe2fd-9c4a-4c05-90b0-d49de32675c7
echo 'Loading Linux 2.6.35-22-generic ...'
linux /boot/vmlinuz-2.6.35-22-generic root=UUID=dbfbe2fd-9c4a-4c05-90b0-d49de32675c7 ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.35-22-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set dbfbe2fd-9c4a-4c05-90b0-d49de32675c7
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set dbfbe2fd-9c4a-4c05-90b0-d49de32675c7
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

=============================== sda5/etc/fstab: ===============================

# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc nodev,noexec,nosuid 0 0
# / was on /dev/sda5 during installation
UUID=dbfbe2fd-9c4a-4c05-90b0-d49de32675c7 / ext4 errors=remount-ro 0 1
# swap was on /dev/sda6 during installation
UUID=07ac7a18-3a33-4676-9c8c-e872822d4e4f none swap sw 0 0

=================== sda5: Location of files loaded by Grub: ===================


105.5GB: boot/grub/core.img
97.1GB: boot/grub/grub.cfg
76.4GB: boot/initrd.img-2.6.35-22-generic
80.6GB: boot/initrd.img-2.6.35-23-generic
105.5GB: boot/vmlinuz-2.6.35-22-generic
105.5GB: boot/vmlinuz-2.6.35-23-generic
80.6GB: initrd.img
76.4GB: initrd.img.old
105.5GB: vmlinuz
105.5GB: vmlinuz.old

searchfgold6789
December 7th, 2010, 05:38 PM
Google: Grub2 Guide.
There are instructions there on how to manually add a menu entry to grub.

Quackers
December 7th, 2010, 05:47 PM
I don't see anything wrong with the boot script output apart from the fact that the os-prober is not detecting any other OS.
All I can think of is to re-install grub by using the following commands.


sudo mount /dev/sda5 /mnt
sudo grub-install --root-directory=/mnt /dev/sda
sudo update-grub

After entering the last command watch to see if Windows XP is detected as grub.cfg is configured.
I have no explanation for XP disappearing from the grub menu unless grub has been updated.

Fordson_major
December 7th, 2010, 05:57 PM
Thanks for that. I tried it but windows did not appear on the list as it ran through the update. I can see the contents of the windows partition and as far as I can tell all the necessary files are present and correct!

Quackers
December 7th, 2010, 06:05 PM
If XP is not being detected it seems to be that there may be something wrong with XP boot files. They appear to be present and in the correct place, but something isn't working.
You can wait for other suggestions ( and try searchfgold6789's suggestion) but I suspect it may be that XP needs fixing. You could do that by running fixmbr from the command prompt in the XP repair disc, but be aware that it will over-write grub! But at least you would be able to confirm that XP boots again.
Obviously you would then need to re-install grub from the Live cd afterwards.

oldfred
December 7th, 2010, 06:08 PM
I had trouble with gparted seeing my sda drive. I could boot XP ok, but after running chkdsk in windows then gparted saw it. I know Ubuntu often will not mount a NTFS partition if it needs chkdsk, so perhaps the osprober does not see it either.

Try chkdsk on your sda1 c: drive. Run chkdsk several times, until no more errors are detected. It does not fix everything on one pass.

XP CHKDSK
chkdsk drive /p /r
The chkdsk command checks the specified drive and repairs or recovers the drive if the drive requires it. The command also marks any bad sectors and it recovers readable information. Run chkdsk several times, until no more errors are detected.
chkdsk c: /r
You can use the following options:
/p Does an exhaustive check of the drive and corrects any errors.
/r Locates bad sectors and recovers readable information.
Note If you specify the /r option, the /p option is implied. When you specify the chkdsk command without arguments, the command checks the current drive with no options in effect.
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/chkdsk.mspx?mfr=true

Fordson_major
December 8th, 2010, 10:04 AM
Thanks to all for your support. I did something to GRUB which left me with a "GRUBRESCUE>" prompt upon booting, so I removed GRUB using the Ubuntu software centre. This did not solve the problem on reinstalling so i "purged" it from the system and reinstalled it on to sda. I now seems to be working fine again many thanks to http://ubuntuforums.org/showthread.php?t=1195275. I now have XP and 10.10 working as they should.