20

I have three external HDDs in a USB enclosure. After a recent upgrade to Windows 7, during which these three drives were actually installed inside the PC tower, two of the three drives now have a 200 MB EFI partition, and the two drives do not show up as usable drives under either Windows 7 or Snow Leopard. One of the drives is empty; the other one, however, has a bunch of stuff on it that I want to save if possible.

How can I get back to this data? Can I simply delete the EFI partition, and all will be well? Or do I have to do something trickier? Or am I just hosed?

Andy
  • 341

5 Answers5

19

I am assuming that you originally formatted these drives on an Intel Mac (OS X) system.

Rather than paraphrasing what I've heard in other places I'll simply quote from the Wikipedia article for EFI System partition.

On Apple–Intel architecture Macintosh computers, the EFI partition is initially blank and not used for booting.

However, the EFI partition is used as a staging area for firmware updates; specifically it places a firmware flash utility (EFI binary) and data file (FD – "Firmware Device") in the directory EFI/APPLE/FIRMWARE which is then run when rebooting the system in "flash firmware" mode.

If deleted, the system will still boot, and the boot manager will still allow users to choose whether to start a Boot Camp partition or the default Mac OS X, but firmware updates will fail.

As I believe has been pointed out in other answers, the EFI partition is not used by Windows 7 and is not created when using a system which does not use EFI. In other words, if you are not going to use these drives as anything other than data drives then, yes, you can delete the EFI partition.

I'm afraid I did not take the time to experiment and find out if deleting the EFI partition will resolve the problems you are having with Windows 7 "seeing" your NTFS partitions on the drive. But it seems like it would be worth trying.

If I recall correctly you will not be able to delete the EFI partition from the Windows Disk Management utility. One way you could delete the EFI partition(s) is by running DISKPART from a (elevated) Window's command prompt.

I do this by first selecting the partition I want to delete and then verifying that I've selected the correct partition. Below is an example with one of my drives.

After you are sure you have selected the partition you want to delete, the command
delete part override
should delete it.

(If you don't care about any of the data on the drive and just want to repartition it, you could also use the clean command. For more info about it, type HELP CLEAN in DISKPART.)

Hope this helps.

DISKPART> list disk
  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  Disk 0    Online           76 GB      0 B
  Disk 1    Online          372 GB    32 GB
  Disk 2    Online          465 GB      0 B
  Disk 3    Online          931 GB      0 B
  Disk 4    Online          149 GB   255 MB        *

DISKPART> select disk 4 Disk 4 is now the selected disk.

DISKPART> list part Partition ### Type Size Offset


Partition 1 System 200 MB 20 KB Partition 2 Unknown 37 GB 200 MB Partition 3 Unknown 111 GB 37 GB

DISKPART> select part 1 Partition 1 is now the selected partition.

DISKPART> detail part Partition 1 Type : c12a7328-f81f-11d2-ba4b-00a0c93ec93b Hidden : Yes Required: No Attrib : 0000000000000000 Offset in Bytes: 20480

Volume ### Ltr Label Fs Type Size Status Info


  • Volume 15 EFI FAT32 Partition 200 MB Healthy Hidden

irrational John
  • 3,353
  • 4
  • 29
  • 38
2

I just had a similar problem and delete part or delete volume were actually crashing diskpart!

On another forum I found the command "clean" which cleans the currently selected disk.

> list disk
....
> select disk 1
> clean

and now the disk is VERY clean. It does not have an MBR or GPT. In my case I wanted to install Server 2008 (not R2) and so I had to remove the GPT from a disk which had previously run Windows 7

1

I faced a problem with my Iomega iConnect "seeing" one of the NTFS partitions on my external HDD.

I had to delete the EFI partition on the drive (it used to be my MBP internal drive before I replaced it) and then everything worked fine.

If you are having problems with Windows 7 reading the NTFS drive, this could be a possible solution.

Gareth
  • 19,080
CAC
  • 11
0

A 200 MB partition is nothing significant by today's standard. If I were you, I wouldn't mess with it.

But, I have had an experience regarding deleting an EFI partition. I tried to delete the EFI in a Mac OS X partition. It turns out Mac OS X will not be able to read the NTFS partitions existing in the EFI harddisk. I got it fixed when I reformatted the whole harddisk to use a GUID Partition Table (GPT).

Also, I doubt there is any significant data in the EFI partition, but anyway here is how you mount it in Mac OS X:

mkdir /Volumes/EFI
mount_hfs /dev/disk0s1 /Volumes/EFI
deddebme
  • 3,814
0

Did you try plugging the drive with the inaccessible data into the Windows 7 PC internally after discovering your issue?

I don't think it's likely that you could have somehow created an EFI partition on a drive without issuing a command to do so. Either those partitions were there before your upgrade, or you told the installer for Windows 7 to do something to create them. Check out the article Installing Windows to an EFI-Based Computer regarding systems that support both EFI and BIOS:

If Windows Setup starts in BIOS mode on a combined EFI/BIOS system, the ESP and MSR partitions are not created. After Windows Setup completes, use the Diskpart command to verify that the ESP and MSR partitions were created.