I created an external volume with macOS High Sierra. When I try to convert it to APFS with Disk Utility, the "convert to APFS" is greyed out. I tried unmounting the volume first, then it's not greyed out, but when I try to convert, I get this error: The operation couldn’t be completed. (com.apple.DiskManagement error -69546.).

I heard that having "cloned" a volume may prevent it from being converted to APFS. I don't remember if I cloned it or not. I created it with El Capitan, then upgraded it to High Sierra. Now it won't convert to APFS.

Any way to do the conversion? such as terminal command or something?

  • How much space is free on your external HFS+ volume? – dan Apr 29 '18 at 10:13
  • Is it GUID or MBR? – Tetsujin Apr 29 '18 at 10:34
  • An attempted Terminal conversion at least explains the error: "Error: -69546: Conversion to APFS of a macOS system volume is only allowed in the OS Installer Environment". – Redarm Apr 29 '18 at 12:42
  • You are trying to convert a HS boot volume (booted to another HS volume). Boot to the external volume and re-try on the command line (diskutil ap convert... - check the man page of diskutil)! – klanomath Apr 29 '18 at 13:02
  • @klanomath: You'll get the same error, i.e. "conversion is only allowed in the OS Installer Environment" (see my comment above).<br> – Redarm Apr 29 '18 at 14:20

According to this and this article the post-install conversion to APFS should work in Recovery Mode:

  1. Boot the Mac into Recovery Mode by holding down the Command and R keys until you see the macOS Utilities screen.
  2. Open Disk utility.
  3. Choose your boot volume [the external boot drive].1
  4. Click on the Edit menu
  5. Click on Convert to APFS
  6. When prompted with “Would you like to convert to APFS?”
  7. click on the Convert button. When the process is finished, click on the Done button.

1: According to Redarm's comment you have to unmount the volume additionally!

I can't test this myself - your mileage may vary.

  • 1
    If you add "unmount the volume" after step 3, I can upvote your answer. – Redarm Apr 29 '18 at 21:29
  • @Redarm Did you test this? – klanomath Apr 29 '18 at 21:32
  • 1
    I spoke too soon: while unmounting the volume in Recovery does let me convert it to APFS, it then does not boot: "Running bless to place boot files failed." Option booting also does not list the volume. The container seems malformed with no Preboot, VM, or Recovery volumes included. Maybe if I run the install assistant over it? – Redarm Apr 29 '18 at 22:14
  • Yes, I'm testing it and am in the process of running the install assistant (aka full installer) over the installation, to hopefully create the Preboot, Recovery and VM volumes within the container, as they are missing. That will hopefully leave me with a bootable volume and an additional "Recovery" from the old HFS+ volume. – Redarm Apr 29 '18 at 22:25
  • 2
    Thanks, it worked, here's a summary of what I did: - Boot to recovery partition (Start and hold Command + R) - From Disk Utility, unmount the volume you want to convert to APFS - Convert to APFS (Edit > convert to APFS) (this renders the volume unbootable)…to make it bootable again: - Install High Sierra on it, it won’t delete anything (I did so by using the 10.13 installer volume I had in the same SSD) - It worked! – Antonio23249 Apr 30 '18 at 21:41

To add to klanomath's answer, which does convert the system volume to APFS, but leaves it in an un-bootable state: download the High Sierra install assistant (aka full installer) and either create a bootable installation volume, or use it from a different High Sierra volume, if available.

Then run the installer over the newly converted APFS volume.

This is non-destructive and will leave all user files in place, but it will create the missing "Preboot", "Recovery" and "VM" volumes within the APFS container, which makes the volume bootable and cleans up any left-over Recovery HD from the previous (HFS+ formatted) installation.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .