PDA

View Full Version : [ubuntu] Vista BSOD After Ubuntu Install on External HD



Tracekill
January 3rd, 2011, 04:54 AM
Hey, all. Been having a bit of an issue with my Ubuntu/Vista dual-boot installation as of late and I'm hoping I can get it resolved as my work is now requiring me to use some software which runs solely on Vista -- otherwise I wouldn't mind just sticking with Ubuntu.

The internal hard drive in my laptop has Vista installed on it native and I have Ubuntu installed on an external Iomega USB hard drive. I ran a boot configuration script provided in another thread which produced the following output so you can get an idea of how I'm set up:


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 #1 for (,msdos1)/boot/grub.
=> No boot loader is installed in the MBR of /dev/sdb

sda1: __________________________________________________ _______________________

File system: ntfs
Boot sector type: Windows Vista/7
Boot sector info: No errors found in the Boot Parameter Block.
Operating System: Windows Vista
Boot files/dirs: /bootmgr /Boot/BCD /Windows/System32/winload.exe

sdb1: __________________________________________________ _______________________

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

sdb2: __________________________________________________ _______________________

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

sdb5: __________________________________________________ _______________________

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

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

Drive: sda ___________________ __________________________________________________ ___

Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 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 * 2,048 625,139,711 625,137,664 7 HPFS/NTFS


Drive: sdb ___________________ __________________________________________________ ___

Disk /dev/sdb: 499.4 GB, 499363373056 bytes
255 heads, 63 sectors/track, 60710 cylinders, total 975319088 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes

Partition Boot Start End Size Id System

/dev/sdb1 2,048 950,745,087 950,743,040 83 Linux
/dev/sdb2 950,747,134 975,316,991 24,569,858 5 Extended
/dev/sdb5 950,747,136 975,316,991 24,569,856 82 Linux swap / Solaris


blkid -c /dev/null: __________________________________________________ __________

Device UUID TYPE LABEL

/dev/sda1 388626E48626A1FC ntfs
/dev/sda: PTTYPE="dos"
/dev/sdb1 35949a96-1137-4af2-b7ad-a0dbc5c02fde ext4
/dev/sdb2: PTTYPE="dos"
/dev/sdb5 73fbe6ef-eb59-49f1-8344-275f8aa03618 swap
/dev/sdb: PTTYPE="dos"

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

Device Mount_Point Type Options

/dev/sdb1 / ext4 (rw,errors=remount-ro,commit=0)
/dev/sr1 /media/Iomega_CD iso9660 (ro,nosuid,nodev,uhelper=udisks,uid=1000,gid=1000, iocharset=utf8,mode=0400,dmode=0500)


=========================== sdb1/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='(hd1,msdos1)'
search --no-floppy --fs-uuid --set 35949a96-1137-4af2-b7ad-a0dbc5c02fde
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='(hd1,msdos1)'
search --no-floppy --fs-uuid --set 35949a96-1137-4af2-b7ad-a0dbc5c02fde
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 ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.35-24-generic-pae' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd1,msdos1)'
search --no-floppy --fs-uuid --set 35949a96-1137-4af2-b7ad-a0dbc5c02fde
linux /boot/vmlinuz-2.6.35-24-generic-pae root=UUID=35949a96-1137-4af2-b7ad-a0dbc5c02fde ro quiet splash
initrd /boot/initrd.img-2.6.35-24-generic-pae
}
menuentry 'Ubuntu, with Linux 2.6.35-24-generic-pae (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd1,msdos1)'
search --no-floppy --fs-uuid --set 35949a96-1137-4af2-b7ad-a0dbc5c02fde
echo 'Loading Linux 2.6.35-24-generic-pae ...'
linux /boot/vmlinuz-2.6.35-24-generic-pae root=UUID=35949a96-1137-4af2-b7ad-a0dbc5c02fde ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.35-24-generic-pae
}
menuentry 'Ubuntu, with Linux 2.6.35-23-generic-pae' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd1,msdos1)'
search --no-floppy --fs-uuid --set 35949a96-1137-4af2-b7ad-a0dbc5c02fde
linux /boot/vmlinuz-2.6.35-23-generic-pae root=UUID=35949a96-1137-4af2-b7ad-a0dbc5c02fde ro quiet splash
initrd /boot/initrd.img-2.6.35-23-generic-pae
}
menuentry 'Ubuntu, with Linux 2.6.35-23-generic-pae (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd1,msdos1)'
search --no-floppy --fs-uuid --set 35949a96-1137-4af2-b7ad-a0dbc5c02fde
echo 'Loading Linux 2.6.35-23-generic-pae ...'
linux /boot/vmlinuz-2.6.35-23-generic-pae root=UUID=35949a96-1137-4af2-b7ad-a0dbc5c02fde ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.35-23-generic-pae
}
### 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='(hd1,msdos1)'
search --no-floppy --fs-uuid --set 35949a96-1137-4af2-b7ad-a0dbc5c02fde
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod part_msdos
insmod ext2
set root='(hd1,msdos1)'
search --no-floppy --fs-uuid --set 35949a96-1137-4af2-b7ad-a0dbc5c02fde
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows Vista (loader) (on /dev/sda1)" {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos1)'
search --no-floppy --fs-uuid --set 388626e48626a1fc
chainloader +1
}
### 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 ###

=============================== sdb1/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
/dev/sdb1 / ext4 errors=remount-ro 0 1
# swap was on /dev/sdb5 during installation
UUID=73fbe6ef-eb59-49f1-8344-275f8aa03618 none swap sw 0 0

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


412.4GB: boot/grub/core.img
4.6GB: boot/grub/grub.cfg
1.1GB: boot/initrd.img-2.6.35-23-generic-pae
412.7GB: boot/initrd.img-2.6.35-24-generic-pae
412.4GB: boot/vmlinuz-2.6.35-23-generic-pae
412.7GB: boot/vmlinuz-2.6.35-24-generic-pae
412.7GB: initrd.img
1.1GB: initrd.img.old
412.7GB: vmlinuz
412.4GB: vmlinuz.old


I saw no immediate errors in the output, but for a while now I've been having an issue whenever I restart my system where GRUB gives an "Error: No such device (device ID)" and drops to the GRUB rescue prompt. Usually I can repair it temporarily by restarting, changing my BIOS boot priority to boot from the external (which does nothing since there's no boot loader), then restarting again and changing it back to the internal. Suddenly, GRUB works fine and allows me to select from either the Vista or Ubuntu installations. Like I said, this was only ever a temporary fix but now, when I go to select the Vista installation, it does the loading bar animation with "Starting Windows..." and then suddenly bluescreens and restarts (far too quickly for me to catch the BSOD code). Really appreciate any help you can give as I'm feeling the pressure of my work deadlines and have no idea where to start since all the diagnostics I've used show that the Vista partition is perfectly fine. If you need any more information about my system, I'll be checking the thread frequently and would be happy to run anything you need me to. Thanks again, guys!

ephexeve
January 3rd, 2011, 05:44 AM
Try using Windows Vista Recovery CD, might help, ask windows forum too, they might know about which BS you got and how to fix it.

Tracekill
January 3rd, 2011, 05:52 AM
Try using Windows Vista Recovery CD, might help, ask windows forum too, they might know about which BS you got and how to fix it.

Wouldn't running the Vista Recovery disc overwrite GRUB since Vista will superimpose its own bootloader?

wilee-nilee
January 3rd, 2011, 05:53 AM
Grub 2 is installed in the MBR of /dev/sda and looks on the same drive in
partition #1 for (,msdos1)/boot/grub.
=> No boot loader is installed in the MBR of /dev/sdb


You should have the sdb booting first and the grub bootloader there. You can reinstall the MS bootloader to sda we might try that first to see if it boots.

Not sure of the bsod though might be any number of reasons.

Can you boot to Ubuntu per chance at this point?

Tracekill
January 3rd, 2011, 06:38 AM
Grub 2 is installed in the MBR of /dev/sda and looks on the same drive in
partition #1 for (,msdos1)/boot/grub.
=> No boot loader is installed in the MBR of /dev/sdb


You should have the sdb booting first and the grub bootloader there. You can reinstall the MS bootloader to sda we might try that first to see if it boots.

Not sure of the bsod though might be any number of reasons.

Can you boot to Ubuntu per chance at this point?

Yessir, Ubuntu boots without problem. I assume you want me to use Ubuntu to install GRUB onto the external? If so, what commands do I use to do so?

wilee-nilee
January 3rd, 2011, 06:54 AM
We might try reloading the MS bootloader to the sda bootloader first and see if we can get Vista to boot. You just need a recovery or install disc, here is a recoverey ISO link.
http://neosmart.net/blog/2008/windows-vista-recovery-disc-download/

Follow these instructions and use the one command to see if the Vista will boot.
1) Boot with your Vista/Windows 7 installation disk. Hit <Enter> at the language selection prompt then hit <R> for Repair to get to the Repair section.
2) Select the command prompt (console) and type in the following commands:
BootRec.exe /fixmbr

The loading of the grub2 to the mbr of the external is from a live cd of the same distro here is a link.
https://help.ubuntu.com/community/Grub2#Reinstalling%20GRUB%202

Just the two commands we know from the script that sdXY=sdb1 and sdX=sdb.

Edit had one wrong example in the last stanza was sdbXY should have been sdXY

Feel free to ask any questions.:)

peterfernandes238
January 3rd, 2011, 07:28 AM
Not sure of the bsod though might be any number of reasons.
---------
Peter Fernandes

Tracekill
January 3rd, 2011, 07:44 AM
We might try reloading the MS bootloader to the sda bootloader first and see if we can get Vista to boot. You just need a recovery or install disc, here is a recoverey ISO link.
http://neosmart.net/blog/2008/windows-vista-recovery-disc-download/

Follow these instructions and use the one command to see if the Vista will boot.
1) Boot with your Vista/Windows 7 installation disk. Hit <Enter> at the language selection prompt then hit <R> for Repair to get to the Repair section.
2) Select the command prompt (console) and type in the following commands:
BootRec.exe /fixmbr

The loading of the grub2 to the mbr of the external is from a live cd of the same distro here is a link.
https://help.ubuntu.com/community/Grub2#Reinstalling%20GRUB%202

Just the two commands we know from the script that sdXY=sdb1 and sdX=sdb.

Edit had one wrong example in the last stanza was sdbXY should have been sdXY

Feel free to ask any questions.:)

Thank you so much for the help thus far. Let me dig out my repair disc really quick and I'll give this suggestion a shot and tell you how it goes. Must GRUB be installed using my Ubuntu Live CD? Why can it not be installed from within the Ubuntu installation I have going? Not questioning the advice at all, I'll do whatever you suggest, but just wondering why it works out this way at the HDD level (since I'm free to ask questions :)).

wilee-nilee
January 3rd, 2011, 08:28 AM
Thank you so much for the help thus far. Let me dig out my repair disc really quick and I'll give this suggestion a shot and tell you how it goes. Must GRUB be installed using my Ubuntu Live CD? Why can it not be installed from within the Ubuntu installation I have going? Not questioning the advice at all, I'll do whatever you suggest, but just wondering why it works out this way at the HDD level (since I'm free to ask questions :)).

You are going to remove grub from the sda mbr and put the MS bootloader in there with the bootrec.exe /fixmbr command. You may have to run a chkdsk /r if the bluescreen is still there with the MS bootloader booting you straight to Vista.

You will need to use the live cd to put grub in the externals mbr. Make sure the extenal is unplugged when you do the commands in the above paragraph.

We know Ubuntu works and loading grub is easy, at this point we are trying to get Vista back on its feet so to speak.

Tracekill
January 3rd, 2011, 08:30 PM
You are going to remove grub from the sda mbr and put the MS bootloader in there with the bootrec.exe /fixmbr command. You may have to run a chkdsk /r if the bluescreen is still there with the MS bootloader booting you straight to Vista.

You will need to use the live cd to put grub in the externals mbr. Make sure the extenal is unplugged when you do the commands in the above paragraph.

We know Ubuntu works and loading grub is easy, at this point we are trying to get Vista back on its feet so to speak.

Alright, spent a good portion of last night trying just about everything. First, I did your suggestion and reloaded the MBR, but that still caused Vista to BSOD. Then I tried using an earlier restore point which did absolutely nothing either. Worst part is, since I rewrote the MBR, GRUB is completely gone and I can't boot to my Ubuntu now :P. How do I install GRUB on my external properly so I can get back into Ubuntu and, after that, would there not be a way for me to find the BSOD error code in the Vista error logs? Really really appreciate the help once again.

wilee-nilee
January 3rd, 2011, 08:41 PM
Post 6 had that information from this link in that post, putting grub in the external mbr.
https://help.ubuntu.com/community/Grub2#Reinstalling%20GRUB%202

Boot the live cd of the installed ubuntu in the external have it plugged in run these two commands.

sudo mount /dev/sdb1 /mnt
then
sudo grub-install --root-directory=/mnt/ /dev/sdb


reboot with the external being read first in the bios or with the per-session key prompt, for the out of the bios boot from menu and in Ubuntu run

sudo update-grub

Have you run a chkdsk /f/r on the vista?

wilee-nilee
January 3rd, 2011, 09:16 PM
Here is additional information on how to run a chkdsk /f/r from a recovery disc. It will most likely say ask at reboot y/n say y and reboot to Vista and see if it runs this.

1) Boot with your Vista/Windows 7 installation disk. Hit <Enter> at the language selection prompt then hit <R> for Repair to get to the Repair section.
2) Select the command prompt (console) and type in the following commands:
chkdsk /f/r
http://www.sevenforums.com/tutorials/20864-mbr-restore-windows-7-master-boot-record.html

presence1960
January 3rd, 2011, 11:18 PM
from the command prompt in Vista Recovery Disc try running first
bootrec.exe /fixboot

When that is completed run
bootrec.exe /fixmbr

Then run
chkdsk C: /r
Run that until no more errors are shown in the output. It may take some time, however do not interrupt the process.

wilee-nilee
January 3rd, 2011, 11:20 PM
from the command prompt in Vista Recovery Disc try running first
bootrec.exe /fixboot

When that is completed run
bootrec.exe /fixmbr

Then run
chkdsk C: /r
Run that until no more errors are shown in the output. It may take some time, however do not interrupt the process.

Thanks for your help, nice to see you on.:)

Tracekill
January 4th, 2011, 06:13 AM
Thanks for your help, nice to see you on.:)

Yes, thank you both for your help so far. Can't tell you how much I appreciate this. I ran chkdsk which found a few inconsistencies and corrected them, though it was mostly just orphaned files. Also, holy hell I don't remember chkdsk taking that long but I guess the last time I really used it was back when I had a 50GB HDD and thought it was incredible. Anyway, after doing all of the Vista recovery console steps you suggested, Vista still refuses to boot and bluescreens at every attempt. Thankfully, your suggestions regarding the installation of grub on the external have worked perfectly so I at least have access to my Ubuntu installation again. Now that I'm back, is there a way to check the Vista error logs since my Vista file system is mounted in Ubuntu and find out what the BSOD code is I keep getting?

wilee-nilee
January 4th, 2011, 06:57 AM
Vista logs would be beyond me. You might also try a Windows forum as well, you never know.:)

Tracekill
January 6th, 2011, 11:24 AM
Vista logs would be beyond me. You might also try a Windows forum as well, you never know.:)

Thanks again, so very much, for your help with this issue. Now I won't get fired!

I've since managed to figure out the source of my problem by tinkering around a bit. It turns out, in my original quest to get Ubuntu to dual-boot successfully with my Vista installation, I had set the "Installed OS" option in my BIOS to "Other" from "Vista". This inadvertently disabled the AHCI support for my SATA HD which subsequently caused Windows to present an inaccessible or unrecognized boot device error (the BSOD never stayed long enough for me to get the exact language of the error, but this seems the most likely one). So for those with the same issue, check your BIOS options for AHCI support and make sure it is enabled. Some BIOS menus allow you to toggle between AHCI and IDE which may also cause similar problems. Hope this helps somebody!