I have an Alienware M17x that dual boots into Ubuntu 11.04 and Windows 7 Home Premium. Currently, the computer starts at the GRUB loader and will boot into Ubuntu, but if I try to boot into Windows, I immediately get a black screen with a blinking cursor in the upper left corner.

The output of fdisk -l is

     Device Boot      Start         End      Blocks   Id  System
/dev/dm-0p1               1           5       40131   de  Dell Utility
Partition 1 does not start on physical sector boundary.
/dev/dm-0p2               6        1918    15360000    7  HPFS/NTFS
Partition 2 does not start on physical sector boundary.
/dev/dm-0p3   *        1918       64772   504878877+   7  HPFS/NTFS
Partition 3 does not start on physical sector boundary.
/dev/dm-0p4           64772       77827   104858625    5  Extended
Partition 4 does not start on physical sector boundary.
/dev/dm-0p5           64772       67204    19531008   83  Linux
/dev/dm-0p6           67204       74498    58593536   83  Linux
/dev/dm-0p7           74498       77577    24731648   83  Linux
/dev/dm-0p8           77578       77827     2000128   82  Linux swap / Solaris

I have used the Windows rescue CD, and run the automatic error fixer until it finds no errors. I have run chkdsk /R on both the main Windows 7 (/dev/dm-0p3) partition and the recovery partition (/dev/dm-0p2). I set the main Windows 7 partition to be active. I also tried running in the recovery console the commands

bootrec /fixmbr
bootrec /fixboot
bootrec /rebuildbcd

None of these helped and the last set of commands deletes grub, which I then have to reinstall from Ubuntu.

I think the last thing I did in windows before this started was install the newest ATI driver for my video card. This would suggest using system restore, and I actually had a restore point earlier (after the problem started), but after whatever I did that restore point does not appear in the list on the recovery disk any more, so I cannot do a system restore.

Is there anything else I can try to make Windows boot properly again?

Edit: Running the suggested commands

bootsect /nt60 c:
bcdboot c:\windows /s c:

was also ineffective.

  • 1
    So many things can cause a black screen, here is one...support.microsoft.com/kb/981275?sd=dell – Moab Feb 13 '12 at 21:11
  • 3
    @Moab I do not think I can install the hotfix without booting into Windows. – murgatroid99 Feb 13 '12 at 21:34
  • How did you run fdisk if you can't use it? – Cole Johnson Dec 12 '12 at 23:37
  • It's a bit hard to remember exactly what I did 10 months ago, but I'm pretty sure I booted into a Windows recovery CD and started a terminal to get to fdisk. – murgatroid99 Dec 12 '12 at 23:39
  • 1
    Did you try updating grub from the Ubuntu recovery mode? I had the same problem once, this fixed it up. Or you MUST try this - help.ubuntu.com/community/Boot-Repair – user3459110 Mar 30 '14 at 14:25

With this setup, an in-place upgrade of windows 7 should recover it. It installs a new win7 OS on top of the existing Win7, keeping any user settings and application installs. That will again load the Windows boot loader over grub. You can recover grub without reinstalling linux. Search for "recover grub2" for your favorite author blog.

  • I don't think I can do this because my Windows 7 installation CD does not seem to have an upgrade option. – murgatroid99 Feb 13 '12 at 21:32
  • Its on all Windows 7 install discs, but not presented as an option until you start the install. Look at the Microsoft instructions for this under "Using the upgrade option" : windows.microsoft.com/en-us/windows7/… – jdh Feb 13 '12 at 22:34
  • The first step in that article is "Turn on your computer so that Windows starts normally. (To perform an upgrade, you can't start, or boot, your computer from the Windows 7 installation media.)" My whole problem is that I cannot do that in the first place. – murgatroid99 Feb 13 '12 at 22:57
  • Boot from the W7 DVD, not the hard drive. – Moab Feb 14 '12 at 4:29
  • As I said, when I boot from the DVD I do not have the upgrade option – murgatroid99 Feb 14 '12 at 6:44

You can try fixing Windows 7 manually on command prompt.

  1. Start Recovery CD (or Installation DVD) and go to recovery, command prompt.
  2. Do not fix MBR ! Let it be GRUB based.
  3. Iterating c:, d:, e: .... find your Windows 7 drive letter.
  4. Type bootsect /nt60 drive_letter_for_Windows7 - This will write Windows PBR (partition boot record).
  5. Type bcdboot c:\windows /s c: - replace drive letter c: with drive_letter_for_Windows7 - This will fix Windows bootmgr and BCD store.

Reboot and select Windows 7 from GRUB2 menu - this should chainload the partition boot record (PBR) and Windows boot manager.

If it is still not loading Windows 7 boot manager run again "grub-install" in Ubuntu to update GRUB menu entries and try again.

All you have to "say" to GRUB is that it should chainload the Windows 7 partition for "Windows7 menu entry"

  • Just to check, when you say "find your Windows 7 drive letter", do you mean the one with all of the programs and files, as opposed to the recovery partition? – murgatroid99 Feb 14 '12 at 5:34
  • This does not seem to have worked. After running the commands and re-running grub-install, I have two items in the grub loader for Windows 7, one for partition 2 and one for partition 3, and both boot to the screen I described. – murgatroid99 Feb 14 '12 at 6:42
  • Is the first partition on disk a so called "System Reserved" partition ? If yes then Windows bootmanager(bootmgr) and BCD is there so read the help for commands bootsect and bcdboot and put parameters to reflect your partitioning. When starting Windows 7 tap several times on F8 key to get Advanced Boot Options and select VGA resolution for display. – snayob Feb 20 '12 at 16:38
  • Putting the bcd on the other partition did not help at all, and Windows 7 does not seem to boot far enough for F8 to do anything. On the screen I described I tried tapping it several dozen times to no effect. – murgatroid99 Feb 20 '12 at 23:23

I recently had the very same issue after creating some new partitions, causing Windows 7 to shift from sda1 to sda2.

Turns out, Windows is a real Black Intelligence Test of Cultural Homogeneity about it. My blood boils just remembering those hours I wasted.

I bootsect.exe'd and bootrec.exe'd all I wanted, but when I finally removed the partition before the Windows partition, so that the partitions were reordered, Windows booted again.

You can also fix this with a very dangerous procedure where you manually swap the partitions in the partition table using fdisk, so that they are listed in a different order than they are actually physically on the disk.

Windows actually does this on purpose to punish you for fiddling with a working Windows installation.

  • I have not created any partitions for a while, so I don't think this is the cause. – murgatroid99 Feb 14 '12 at 15:03

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.