Jump to content

msftres - Gparted killed partition


10 posts in this topic

Recommended Posts

Mods, please forgive this essentially double post that is also on Instilation thread.

 

I have googled the behind off this one and not found an answer. I know it's a common enough problem and about half a year ago I had the same problem and I think found a Terminal workaround but... can't find it, now.

 

I have three - pardon me four - partitions on my laptop's GUID partitioned hard drive. EFI MBR/Vista/Leopard/Leopard. I sacrificed that last partition to put XP on for the sole reason that there was no way to update my bios through Vista. Having updated the bios, I erased the NTFS partition in gparted and put it back to FAT32. In Disk Utility I tried to format that as HFS+ Journalled. No joy. The partition was greyed out and not mountable. I went back into Gparted and found that the partition was flagged as 'msftres'.

 

There is no way to change it. I tried marking said partition as boot, but it still won't show. Tried flagging it as an HP service partition. Didn't work. I'm really hacked off because XP seems to have damaged Vista's boot. I tried to repair the latter with Vista DVD but it couldn't repair it, even with Vista flagged boot.

 

Any suggestions very welcome. Otherwise the moral is, don't use Gparted on your hard dive post originally setting it up with it.

Link to comment
Share on other sites

I am still searching for an answer to this one. I think after installing everything, few people go back into gparted unless they're going to format the whole drive and start over. Anyone find a solution to this one?

Link to comment
Share on other sites

As people are likely to google their way to this one and it's not something I have seen answered, here is the only working solution that I was able to come up with, through trial and error.

 

My drive is formated as GUID but I think the same would apply even were it not.

 

For whatever reason, you had to scrap your second HFS+ partition with iATKOS or whatever on it, to put XP on it to do a bios update that couldn't be done through Vista, or you didn't have a USB dongle, whatever... Once done, you went back into good old gparted and formated the partition as FAT32 so that Disk Utility could then see it to format it to HFS+/Mac journaled. You notice that having formated, the partition's flag is now set to 'msftres' and you can't deselect it, not even setting the flag to boot works, even though 'msftres' appears then to be deselected. Disk Utility isn't going to like your 'msftres' FAT32 partition, at all... the partition hard drive icon will appear grayed out in Disk Utility. You can right click on it and try and get it to mount as suggested elsewhere, but it won't.

 

Here, then, is what I did. Convoluted but it has worked for me and two others in the same position.

 

In Disk Utility I clicked not on the partition in question but on the whole hard drive. I then clicked on Partition. I then carefully selected the partition in question and clicked on the minus symbol. I then clicked on Apply. No error messages. I then went to the Erase tab. The partition still won't mount and when erasing you can't name it but it does otherwise seem to erase/format to Mac, as you will see when you boot into gparted, in this case via the live CD of Ubuntu 8.04. Use it's version of gparted 0.3.5. The HFS+ partition still shows as msftres but you can get rid of that flag, now!!

 

You need then to boot up iATKOS or what have you, go to Disk Utility. Erase the said partition as Mac Journalled again (you might be able to avoid this step and simply carry on with the installer, or... your partition might show as a file or folder icon, rather than the expected hard drive icon, I have no idea why but I once tried to install on such and the installer crapped out three quarters of the way in) . It won't let you erase it, but try and do so. Then right click on the said partition and select Mount. This time it will mount, as it should. You can erase it again and the installer will recognize it as an icon identified partition rather than a folder/file icon.

 

Convoluted and your degree of phaffing around may vary but it did work for me.

 

Now, if I can just rescue the Vista partition from whatever installing XP did... Repair on the Vista DVD doesn't work. Reinstalling iATKOS, or whatever, is a doddle, whereas Vista...

Link to comment
Share on other sites

I am just throwing this in but isn't this problem because you used GUID and not MBR for partitioning initially? Is that so? Anyone?
I experienced the same problem a year ago, before I started using GUID so, unless a fluke, I'm fairly sure it's not GUID exclusive. Certainly I found a lot of people who had fallen into the same retropective gparted hole but no solution. I think most gave up and reformated. I need to start backup imaging my rigs in full, though I could do without buying another hard drive. The latest version of Parted lists in the changelog (June 6th) that the problem has been resolved, but I couldn't find a live CD ISO for it. Gparted on Ubuntu 8.04 worked for me where the stand alone iso wasn't.
Link to comment
Share on other sites

Managed to repair Vista by reinstalling the Darwin bootloader. Details on how to do that can be found on uphucks forum. Off the top of my head, with the iATKOSv2.0i disc in your DVD drive, bootup vista in single user prompt, or in English... Press F8 then type in -s and press enter. Wait a minute or so and then type DARWIN press enter. Then follow the prompts on where to put the bootloader. As a tip, it is likely your primary hard drive is 0 ... but do some detective work and be sure.

Link to comment
Share on other sites

  • 10 months later...

A simple solution to the extremely annoying msftres flag problem in the otherwise exceptional and free Gparted, which sometimes occurs when you do post editing work on your partitions using Gparted, is to format your apparently stuck msftres-flagged partition in Gparted as 'reiserFS'. Why? Gparted doesn't set a flag on the reiserFS partitions that it creates. Bye bye damn msftres - you can then fire up Disk Utility and this time, finally, truly, erase the (reiserFS) partition as FAT32, etc. It will format, show up and mount. Fret and scream no more!

Link to comment
Share on other sites

  • 4 weeks later...

The "msftres" flag problem is actually a bug in Parted, not exclusively GParted. GParted (or QtParted etc.) just provides the GUI to Parted. For those of you who work with source codes, check for the following lines in (parted-source-dir)/libparted/labels/gpt.c :-

 

if (strncmp (fs_type->name, "fat", 3) == 0

|| strcmp (fs_type->name, "ntfs") == 0) {

gpt_part_data->type = PARTITION_MSFT_RESERVED_GUID;

return 1;

}

 

Because of this code parted sets any FAT(12,16,32) and NTFS partition in GPT as "Microsoft Reserved", not as "Basic Data" as it should have been. Either delete those lines from gpt.c file or modify them as follows :-

 

if (strncmp (fs_type->name, "fat", 3) == 0

|| strcmp (fs_type->name, "ntfs") == 0) {

gpt_part_data->type = PARTITION_BASIC_DATA_GUID;

return 1;

}

 

before compiling parted. Then reinstalling parted will solve the problem. As for those who are struck up with the problem try this software to correct the problem :-

 

http://www.rodsbooks.com/gdisk/

http://sourceforge.net/projects/gptfdisk/

 

You need to compile this software before using it. Just download the gdisk*.tar.gz file, decompress it, cd into that folder, type make.

 

If "make" command gives an error like "g++ not found", then you need to install "GCC and, G++ or GCC-C++" depending on the package name before compiling it. Follow the Read me file in gdisk folder on how to use the software.

 

This software is modelled along Linux FDisk (for MBR disks).

 

Usage (for correcting the msftres flag only) :-

 

Type the command in order in a terminal

 

1. su

2. Type the root password

3. gdisk /dev/sda (or /dev/sdb or sdc etc. - check GParted for your disk)

4. At the prompt Command (m for help): type p

 

Number Start (block) End (block) Size Code Name

1 62 3980213 1.9 GiB 0c01

 

5. Note down the numbers of the partition(s) marked msftres ( all partitions with codes 0c01)

6. At the prompt Command (m for help): type t , then at the next prompt type the partition number for which you want to remove msftres :-

Current type is 'Microsoft Reserved'

Hex code (L to show codes, 0 to enter raw code):

 

7. To change the partition type to "Linux/Windows data" (Basic Data Partition) type 0700 at the prompt.

 

Hex code (L to show codes, 0 to enter raw code): 0700

Changed system type of partition to 'Linux/Windows data'

 

8. Now at the prompt Command (m for help): type w . This is very important as the changes will not be made to the disk until you do this. All the changes are done by gdisk by copying the GPT table into RAM and working from there. Only this step saves the changes to the GPT table in the disk and then the program exits.

 

9. If at any stage you want to exit the program without changing anything in the disk, type

 

Command (m for help): q

 

Note: I did not write this program and I take no responsibility whatsoever if anything goes wrong while using this. Follow step 9 if you want to exit without making changes.

 

Also check this out : http://www.insanelymac.com/forum/lofiversi...dex.php/t186440

Link to comment
Share on other sites

What is a Microsoft Reserved Partition?

 

The Microsoft Reserved Partition reserves space on each disk drive for subsequent use by operating system software. GUID Partition Table disks do not allow hidden sectors. Software components that formerly used hidden sectors now allocate portions of the Microsoft Reserved Partition for component-specific partitions. For example, converting a basic disk to a dynamic disk causes the Microsoft Reserved Partition on that disk to be reduced in size and a newly created partition holds the dynamic disk database.

 

Will end users see the Extensible Firmware Interface System Partition, Microsoft Reserved Partition, and OEM-specific partitions?

 

The user won't see these partitions exposed in Windows Explorer, nor is any recognized file system exposed to legacy programs such as Context Indexing. The Extensible Firmware Interface System Partition, OEM-specific, and other unrecognized partitions will be visible only in the Disk Management MMC snap-in.

 

What partitions are mounted by default by Windows?

 

Windows exposes only basic data partitions. Other partitions with FAT file systems may be mounted, but not exposed (only programmatically). Only basic data partitions are assigned drive letters or mount points.

 

The Microsoft Reserved Partition (and any partitions that are created from the Microsoft Reserved Partition) could have recognizable file systems; none are exposed.

 

What happens when a basic disk is converted to dynamic?

 

For a drive to be eligible for conversion to dynamic, all basic data partitions on the drive must be contiguous. If other unrecognized partitions separate basic data partitions, the disk cannot be converted. This is one of the reasons that the Microsoft Reserved Partition must be created before any basic data partitions.

 

The first step in conversion is to separate a portion of the Microsoft Reserved Partition to create the configuration database partition. All non-bootable basic partitions are then combined into a single data container partition. Boot partitions are retained as separate data container partitions. This is analogous to conversion of primary partitions.

 

Retrieved from http://support.microsoft.com/kb/302873 - FAQ about GPT Disk Architecture

Link to comment
Share on other sites

  • 2 months later...
 Share

×
×
  • Create New...