1 (edited by shem 2009-11-10 23:08:24)

Topic: [SOLVED] File system larger than partition

System Info: Dell PowerEdge 2600, Windows Server 2003 SP2

Qty (6) 36GB SCSI drives on Raid controller
Original configuration: 2 drives on Raid 1, 4 drives on Raid 5.
Raid 1 array partitioned in two volumes, C: (Boot) 12GB and D: (Apps and page file) 24GB
Raid 5 array partitioned in one volume, E: (Data) 108GB
All volumes are NTFS.

Initial problem: C: is nearly full. D: and E: both have some space available.

Steps:
Successfully unmirrored 2 drives on Raid 1 using BIOS Raid configuration tool.
New problem: Parted Magic normal configuration fails linux startup at APCI call.
Successfully started GParted in LiveCD in low memory mode.
Successfully removed partions from 2nd unmirrored drive using GParted.
Failed to copy partition D: to empty 2nd unmirrored drive using GParted.
Successfully created new 36GB NTFS partition in 2nd unmirrored drive using Windows Disk Management.
Successfully copied data from D: to new NTFS volume using Windows Explorer.
Successfully removed original D: partition using GParted.
Successfully reassigned D: to the new NTFS volume using Windows Disk Management.
At this point everything boots normally, D: is now 36GB, but C: is still 12GB.
Successfully grow C: volume to fill 1st unmirrored drive using GParted.
Windows boots ok.
New problem: Windows Disk Management shows that the C: partition size is 36GB, but the capacity is still 12GB.
Successfully shrink C: partition by 9MB using Gparted.
New problem: Windows BSOD shortly after startup screen with progress bar.
Upon starting Gparted, there is now a warning icon next to sda. The info for the warning indicates that the file system is now larger than the partition and Gparted will no longer resize this partition.

So the server is stuck unbootable and we're in bad shape.

Any suggestions on repairing the partion/file system size mismatch?
Any suggestions on why Windows was reporting the old file system size even though Gparted had resized the partition and the file system both at once?

Thanks a bunch,
Shem

2

Re: [SOLVED] File system larger than partition

The message "ERROR: Current NTFS volume size is bigger than the device size!" indicates that either the containing partition is too small, or that the volume size is too large.

Unfortunately I have been unable to find a repeatable series of steps that will reproduce this problem and hence allow me to determine the root cause and perhaps code a work-around into GParted.

Details on where these values are stored can be found at the following links:
Master Boot Record
Extended Boot Record
NTFS Boot Record Secrets

In the NTFS Partition Boot Record, is is the value at 28hex that is important.

At the moment I am quite busy with other requests.  Hopefully I have provided you enough information to triage the problem yourself, or perhaps another forum member might be able to help you.

EDIT:
To be able to start solving this problem, at a minimum the output from the following two commands is needed:

fdisk -l -u

where one of the options is a lower case "L" and not a one.

parted /path-to-your-device unit s print

where /path-to-your-device is something like /dev/sda.

3

Re: [SOLVED] File system larger than partition

gedakc,

Thank you for your reply. I was able to recover by booting to Parted Magic console and using parted to remove and recreate the partition to span the whole disk. It was a sleepless night, but my client didn't notice...

I too am puzzled at what specific sequence would cause this behavior. Perhaps of value to you in your debugging is my observation that Windows appeared to be using the previous file system size information along with the present partion information. I wonder if there are one or more caches or backups of the file system structure that Windows is restoring when only the primary structure changes.

I started with 12GB. When I used GParted-grow to increase to 36GB, everything completed correctly in GParted, but then Windows started with the new partition and old file system. Then I resized in GParted from 36GB to 35.2GB, and everything once again looked good. It was only after booting Windows that the synchronization between partion size and file system size was again lost. I speculate wildly that Windows crashed on startup only after confidently attempting to write to a location outside the partition. I suspect this is the case because when I used parted, that only changed the partion to its former size and left the 36GB file system untouched so they were once again synchronized and everything works fine.

One other note, after each change, Windows did not run CHKDSK. When I ran into the non-boot condition, I ran GParted again and tried to use the Check function, but it failed. Then I used parted to correct the partition. One of these two actions caused Windows to finally run CHKDSK, which at that point gave no indication of a problem. However, after the first resize from 12GB to 36GB and first reboot to Windows, I did force a CHKDSK, and that did not correct the first mismatch.

Finally, I would like to say that GParted and Parted Magic are incedible tools. Windows treats its partitions as if it was a squatter on the user's hard disk property, and the other tools out there capable of working on a server behave like greedy real-estate agents. I applaud all efforts to permit me my rights of ownership.

Thanks,
Shem

4

Re: [SOLVED] File system larger than partition

I am glad to hear that you discovered a solution to the problem.  smile

Your detailed description of the steps you took and your hypothesis regarding the source of the problem are appreciated.

If you have an unfortunate recurrence of this problem, please save the log file gparted_details.htm and post it on this forum along with the output from the above listed two commands.  The gparted_details.htm file contains additional information that might prove useful to diagnose the root cause.