3

Situation:
My older Win7 laptop died (power issues). My new Kubuntu computer has an extra drive bay, so I'm trying to get dual boot to make them play nice together in the same machine. Both drives boot fine if they are /sda, and both OS show up on GRUB2.
The Kubuntu is expendable, the win7 is not (school stuff, solidworks and all that jazz). I am on a HP Pavillion dv7 from 3 years ago.

Problems:
When Ubuntu is /sda, the computer boots to GRUB. I can boot Kubuntu fine, but if win7 is selected (/sdb), it prints the "A disk read error occurred" error.
When win7 is /sda, it boots win7 fine, but with no option for Kubuntu.
Not sure what happens if boot order is switched, as my BIOS only has an option for Internal Notebook Drive. It does know that there are two drives that can be memchecked though.

I think part of the problem may come from this (full log here):

sdb1: __________________________________________

File system:       ntfs
Boot sector type:  Windows 7/2008: NTFS
Boot sector info:  According to the info in the boot sector, sdb1 starts 
                   at sector 2048. But according to the info from fdisk, 
                   sdb1 starts at sector 63. The info in boot sector on 
                   the starting sector of the MFT is wrong. According to 
                   the info in the boot sector, sdb1 has 407551 sectors, 
                   but according to the info from fdisk, it has 1984 
                   sectors.
Operating System:  
Boot files:        /bootmgr /Boot/BCD

But I don't know enough about Ubuntu to fix it, and I'm certain I'd break my Windows forever. Should I reinstall Kubuntu when both drives are present? What other info would be helpful? Any help would be very appreciated.

  • 2
    Have you tried running sudo update-grub with /sdb mounted? Chances are, GRUB expects to find Windows where it did from the last drive, say /sda2. It looks there, but doesn't find a bootloader, so it says it failed to read the partition. Running sudo update-grub would tell GRUB to remap it's description of your environment, which could solve your issue. – Dillmo Jan 24 '14 at 1:34
  • Tried that again, it still sees win7 on /sdb1 but the error is the same. – Traceless Jan 25 '14 at 4:17
  • Can you boot Windows 7 and run a chkdsk? Something is awry. – Elder Geek Jun 12 '14 at 22:45
  • update-grub doesn't change the bootloader, just the menu in /boot/grub. The bootloader(s) are installed in the mbr of the boot drive, and are installed using grub-install, which specifies both which mbr to install to, and which partition contains the menu in /boot/grub. The grub rescue disk will probably fix this automatically. – Marty Fried Jun 12 '14 at 23:11
0

I suggest you put the Windows disk as the 1st one (sda) if it works (windows if the most tricky to boot). Then boot to your Ubuntu system (using a live cd or usb key if necessary), and run

sudo update-grub 

and

sudo grub-install /dev/sda

That will install grub in the mbr of your windows disk, and you will be able to boot windows and ubuntu/kubuntu from the grub startup menu.

If you had to boot from a livecd or usb key, you need to chroot first:

sudo mount /dev/sdb? /mnt (replace sdb? with the partition containing your root fs)
sudo chroot /mnt
#if necessary: mount /boot
mount /dev
mount /proc
mount /sys
update-grub 
grub-install /dev/sda

Restart and it should work

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.