Vista Ultimate x86 Fails to Boot After Partition Resizing

#1
I have a Lenovo T61p laptop, on which I had previously shrunk my Vista partition to about half of the drive, so as to dual boot with Debian. Using GParted, I shoved the recovery partition to the left (1 MB space was at the start of the drive), shoved the Vista partition directly following it left, and increased the size of the Vista partition by about 25 GB. (It sure looks like moving that 1 MB didn't help me much!)

The immediate result was that Vista was unbootable, while GRUB and Debian continued to work fine. The NTFS partition's data remained intact and accessible through a mount. I have attempted fixes with the Vista recovery disk available for download, though to no avail (And to the disability to reach GRUB!). I have received errors of "Disk Read Error, press ctrl+alt+del to restart", as well as blank screens after GRUB used its chainloader +1 command, as well as failures by the BIOS to find an operating system or a non-corrupt file system.

I have attempted the four fixes in the main Vista recovery guide--even the "Nuclear Holocaust" method is fruitless, most likely for the reason that BootRec.exe cannot actually detect any Windows installations! The Vista RE can find my Vista partition just fine, and it claims that the partition should be bootable. I have attempted to correct the issue by changing the amount of hidden sectors in the MBR at bytes 28-31 to both the start of my recovery partition and the start of my Vista partition (with the corresponding partitions set to have the "boot" flag in each attempt) to no avail; the BIOS complains that it cannot find an operating system.

I appear to have run myself out of ideas--why would BootRec.exe be unable to find any Vista-compatible Windows installations, when the recovery environment can clearly find one? Does anyone have any ideas as to how I could repair my Vista installation to become bootable? All of the partitions on my drive are readable (and they do not overlap each other at all), and disk checking utilities like chkdsk find zero bad sectors, so I would prefer not to re-image the drive. Of course, not that I could, when Lenovo gives its customers a recovery partition instead of a Vista DVD; I cannot boot to the recovery partition either.
 
#2
Hello Oblivion, welcome to NST.
Your problem sounds remarkably similar to the problem by the user "msv" in another thread. He used Gparted on an NTFS partition, and was unable to boot Vista afterwards. See [post=35249]this post[/post] for the resolution.

Jake
 
#3
As an update, I have gotten a fresh, updated Debian install functioning, with Grub restored to the MBR, but I continue to be incapable of booting to Windows Vista. Grub is referencing the correct drive, but it fails to recognize the file system on the NTFS drive, and Windows Vista does not begin to boot when it is chainloaded.

The MBR has its hidden sector offset pointing at the first sector of the Vista partition, which is also marked as the bootable partition. I am still able to mount and read the drive in Linux, and the recovery disk still fails to find any Vista installations with "bootrec /scanos".

Message from GRUB:
filesystem type unknown, partition type 0x7
GRUB Commands:
Code:
root (hd0,1)
savedefault
makeactive
chainloader +1

So, I doubt that there are any issues remaining with the MBR, but something is still up with the start of Vista's partition.
 
Last edited:

JustinW

Super Moderator
Staff member
#4
Specify the bootmgr directly so you don't need to worry about whether or not the correct boot code for Windows is installed if you want to continue to have grub in charge first thing when you startup your computer:

title Windows Vista
root (hd0,1)
kernel /bootmgr
chainloader /bootmgr
 
#5
Tried that, but unfortunately, I got an error out of grub.

"Error 17: cannot mount selected partition"

However, I can definitely mount the partition--both the Vista recovery disc and my Linux environments can mount it just fine. For some reason, grub is not recognizing the filesystem correctly, and I would suspect that bootrec.exe can't recognize it either.
 
Last edited:

Terry60

Knows where his towel is.
Staff member
#6
Error 17 from grub normally means you've incorrectly identified the disk and/or partition number.
Use the grub in-line edit feature (hit e instead of choosing a boot option), and then make use of the "tab" function (position the cursor on the disk or partition number and hit tab - it will give you the possible valid values, pick the one you want)
Then edit your menu.lst to reflect the numbers you just used.
 
#7
Unfortunately, in this case, the disk and partition numbers are both correct. I get an error 17 trying to mount either my recovery partition or my Vista partition.
 

JustinW

Super Moderator
Staff member
#8
You sure about that? Different OSes, boot managers, and the BIOS can all see your disk layout differently based on thier design. If you're postively sure its on partition 1 and you've got more than one hard drive in the system give (hd1,1) a try.
 
#9
I am very certain that it's at that location, and I only have one hard drive in my system. You are certainly correct that it is denoted differently (sda for Linux after I boot in, for example), but I definitely have GRUB referring to the correct partition.

(hd0,0) - Recovery partition (Hidden NTFS recovery partition, 0x27)
(hd0,1) - Vista (NTFS, 0x7)
(hd0,2) - GRUB (Ext3, 0x83)
(hd0,3) - Extended Partition
(hd0,4) - Swap (Linux-swap, 0x82)
(hd0,5) - Root for Debian linux (Ext3, 0x83)
(hd0,6) - Shared drive / storage (FAT32, 0xB)

(hd1,0) - USB flash drive
 

JustinW

Super Moderator
Staff member
#10
Ok, well other than trying out different numbers til you find what it considers to be the correct place or repairing the computer to boot with Vista's bootmgr in charge using startup repair from a Vista DVD or the recovery disc we offer on this site thats about all you can do...

The problem may be a combination of things, like the usb drive you've got attached at boot or the extended partition that may be messing up the numbering scheme. I had this problem and one day when I wanted W7 on my laptop I went ahead and converted all my partitions to primaries, but for you you've got more than four partitions there so its not possible.

How about this, using the find command to automatically locate it?

title Windows Vista
find --set-root /bootmgr
makeactive
kernel /bootmgr
chainloader /bootmgr
 
Last edited:
#11
No dice. Error 15: File not found.

The problem isn't so much that GRUB doesn't know where to look for Vista; the problem is that GRUB can't seem to read the filesystem on the drive. Would using GRUB 2 instead of GRUB Legacy be of use here?
 
#12
A better place to get help with this issue would be the Gparted forum, or the Ubuntu forums...
There's lots of knowledgeable people at both, that understand the fine details of how Grub and Gparted works that could likely tell you what is up. :wink: These forums are mainly for supporting NST-based software issues, such as problems with [thread=642]EasyBCD[/thread], Hn'S, etc.
If I were to make a guess at the cause of your problem, I would say Gparted most likely messed something up with where the Vista partition starts, the cylinder boundaries, etc. Since Vista makes use of different partitioning schemes (based on newer, larger hard drives), there are often utilites that fail to measure up to these new standards, resulting in failure to boot.
If you followed the links in the link in my last post, you would have likely discovered something was wrong with the partition when checking it with the utility mentioned in one of the links.
 
#13
The "TestDisk" utility actually did not find any problems, and it instead caused the new problem that GParted now thinks my hard drive has 255 heads instead of 240, for some reason (Yes, I changed the amount in testdisk before saving). However, I have now posted on the GParted and Ubuntu forums, and will hopefully find someone on one of those forums who can figure out my strange Vista issue.

Thanks for the attempts to help.
 
#14
The "TestDisk" utility actually did not find any problems, and it instead caused the new problem that GParted now thinks my hard drive has 255 heads instead of 240, for some reason (Yes, I changed the amount in testdisk before saving). However, I have now posted on the GParted and Ubuntu forums, and will hopefully find someone on one of those forums who can figure out my strange Vista issue.

Thanks for the attempts to help.
If you had actually followed the links, you would found out the utility I was referring to is not Testdisk. Rather, I meant "MC_HxEd". MSV had success with this utility in this thread, and it helped him solve the problem.
 
Last edited:
#16
If you had actually followed the links, you would found out the utility I was referring to is not Testdisk. Rather, I meant "MC_HxEd". MSV had success with this utility in this thread, and it helped him solve the problem.
Oh! In that case, I referred to use of that utility in my original post, albeit indirectly:
I have attempted to correct the issue by changing the amount of hidden sectors in the MBR at bytes 28-31 to both the start of my recovery partition and the start of my Vista partition (with the corresponding partitions set to have the "boot" flag in each attempt) to no avail; the BIOS complains that it cannot find an operating system.
However, my threads on the GParted and Ubuntu forums have gotten the attention of some of the regular posters at those forums, and it is looking like they may be able to help me find a solution to this problem.
 
#17