2

I just finished messing with Windows 7 + Linux Mint dualboot and finally got it to work. Grub handles the booting. It works as expected as long as I have only my main hard drive connected.

When I connect my second drive and start the laptop, the intro screen appears and then, instead of grub, only blank screen (and for some reason the laptop's fan goes crazy). Nothing else. When I first start the PC, boot to an OS and only then connect the second hard drive, it gets recognized without a hitch.

I tried running boot-repair with both drives connected, but the problem persists. What can be causing this?

Both drives are SATA.

Content of /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 [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

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 {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod ext2
set root='hd0,msdos5'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  f6737ea4-0fee-4215-81d7-917a4fe2f082
else
  search --no-floppy --fs-uuid --set=root f6737ea4-0fee-4215-81d7-917a4fe2f082
fi
    font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_US
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ]; then
  set timeout=10
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 ###
function gfxmode {
    set gfxpayload="$1"
    if [ "$1" = "keep" ]; then
        set vt_handoff=vt.handoff=7
    else
        set vt_handoff=
    fi
}
if [ ${recordfail} != 1 ]; then
  if [ -e ${prefix}/gfxblacklist.txt ]; then
    if hwmatch ${prefix}/gfxblacklist.txt 3; then
      if [ ${match} = 0 ]; then
        set linux_gfx_mode=keep
      else
        set linux_gfx_mode=text
      fi
    else
      set linux_gfx_mode=text
    fi
  else
    set linux_gfx_mode=keep
  fi
else
  set linux_gfx_mode=text
fi
export linux_gfx_mode
if [ "$linux_gfx_mode" != "text" ]; then load_video; fi
menuentry 'Linux Mint 16 Cinnamon 64-bit, 3.11.0-18-generic (/dev/sda5)' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    gfxmode $linux_gfx_mode
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='hd0,msdos5'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  f6737ea4-0fee-4215-81d7-917a4fe2f082
    else
      search --no-floppy --fs-uuid --set=root f6737ea4-0fee-4215-81d7-917a4fe2f082
    fi
    linux   /boot/vmlinuz-3.11.0-18-generic root=UUID=f6737ea4-0fee-4215-81d7-917a4fe2f082 ro   quiet splash $vt_handoff
    initrd  /boot/initrd.img-3.11.0-18-generic
}
menuentry 'Linux Mint 16 Cinnamon 64-bit, 3.11.0-18-generic (/dev/sda5) -- recovery mode' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='hd0,msdos5'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  f6737ea4-0fee-4215-81d7-917a4fe2f082
    else
      search --no-floppy --fs-uuid --set=root f6737ea4-0fee-4215-81d7-917a4fe2f082
    fi
    echo    'Loading Linux 3.11.0-18-generic ...'
    linux   /boot/vmlinuz-3.11.0-18-generic root=UUID=f6737ea4-0fee-4215-81d7-917a4fe2f082 ro recovery nomodeset 
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initrd.img-3.11.0-18-generic
}
submenu "Previous Linux versions" {
menuentry 'Linux Mint 16 Cinnamon 64-bit, 3.11.0-12-generic (/dev/sda5)' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    gfxmode $linux_gfx_mode
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='hd0,msdos5'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  f6737ea4-0fee-4215-81d7-917a4fe2f082
    else
      search --no-floppy --fs-uuid --set=root f6737ea4-0fee-4215-81d7-917a4fe2f082
    fi
    linux   /boot/vmlinuz-3.11.0-12-generic root=UUID=f6737ea4-0fee-4215-81d7-917a4fe2f082 ro   quiet splash $vt_handoff
    initrd  /boot/initrd.img-3.11.0-12-generic
}
menuentry 'Linux Mint 16 Cinnamon 64-bit, 3.11.0-12-generic (/dev/sda5) -- recovery mode' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='hd0,msdos5'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  f6737ea4-0fee-4215-81d7-917a4fe2f082
    else
      search --no-floppy --fs-uuid --set=root f6737ea4-0fee-4215-81d7-917a4fe2f082
    fi
    echo    'Loading Linux 3.11.0-12-generic ...'
    linux   /boot/vmlinuz-3.11.0-12-generic root=UUID=f6737ea4-0fee-4215-81d7-917a4fe2f082 ro recovery nomodeset 
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initrd.img-3.11.0-12-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/30_os-prober ###
menuentry 'Windows 7 (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-1AD8136CD8134603' {
    insmod part_msdos
    insmod ntfs
    set root='hd0,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  1AD8136CD8134603
    else
      search --no-floppy --fs-uuid --set=root 1AD8136CD8134603
    fi
    chainloader +1
}
menuentry 'Windows 7 (loader) (on /dev/sda2)' --class windows --class os $menuentry_id_option 'osprober-chain-E07A20FD7A20D258' {
    insmod part_msdos
    insmod ntfs
    set root='hd0,msdos2'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2  E07A20FD7A20D258
    else
      search --no-floppy --fs-uuid --set=root E07A20FD7A20D258
    fi
    chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### 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  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

Edit2 - I tried a different secondary hard drive. That drive I formatted and it doesn't have any partitions on it. Only unallocated space. Yet the pc still won't boot.

I am open to any suggestions, I am willing to format/wipe anything just to get this working.

Also, when installing, Linux Mint did not recognize existing Windows installation, so I had to manually partition the drive and then run boot-repair to get it working.

10
  • Sounds like your machine is trying to boot from the USB. What is the boot device order set to in the BIOS?
    – terdon
    Mar 8 '14 at 22:41
  • USB? I don't have any USB connected. Both drives are SATA. Mar 8 '14 at 22:42
  • Ah, since you were connecting it I assumed it was external. Could you please edit your post and clarify? Also explain which hard drive you have installed grub to (presumably the main, but is thaht the st drive, the master, as well?), if you're using GPT or MBR partition tables and also post your /boot/grub/grub.cfg. Finally, verify that the problem persists after running sudo update-grub`.
    – terdon
    Mar 8 '14 at 22:44
  • Edited the question. I installed grub to the main drive, but I am not sure how to find the info you want from me. I don't see any of it in gparted, fdisk, or anywhere Mar 8 '14 at 22:56
  • Damn, sorry, I messed up the backticks in my last comment. I am guessing that what you call your secondary drive is actually the 1st as far as the PC is concerned and when you plug it in, it becomes hd0 in grub. Try plugging the drive in, then running sudo update-grub.
    – terdon
    Mar 8 '14 at 23:14
0

This can happen if you have boot loader data in the bootstrap area of the MBR on the second hard drive (even if the boot order in the BIOS is correctly set up).

If you have no need to boot from the second drive now or in the future, you can safely wipe out the first 446 bytes using this command:

dd if=/dev/zero of=/dev/{second drive} bs=446 count=1

You'll need to substitute {second drive} above for the correct corresponding entry in /dev, such as /dev/sdb

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.