After I moved my iMac move volume to an SSD, I was left with an internal hard disk drive full of data. Rather than blowing away and start again, I decided to repartition it using CoreStorage. After resizing the existing volume, I decided to create a new drive to store Final Cut Pro data. The CoreStorage createVolume command made short work of this task!
Preliminary Steps
Before you can create a new CoreStorage volume, you must convert the disk to CoreStorage and free up some space by either resizing the existing volumes or deleting them. You should also consider rebooting the Mac to make sure the CoreStorage volume is up and running correctly.
Get the UUID of the Logical Volume Group
We must supply diskutil with two critical pieces of information: The Logical Volume Group UUID and the desired size of our new Logical Volume.
It is important to get the correct UUID: Each element in the CoreStorage stack (Logical Volume Group, Physical Volume, Logical Volume Family, and Logical Volume) has its own UUID and we must use the correct one for each command!
Create a New Logical Volume
I decided to create a new Logical Volume in the Logical Volume Group on my “Macintosh HD” using all the available space. I named this new LV “New LV” and stuck with the journaled HFS+ volume type (jhfs+). I copied and pasted the exact number of bytes from the “diskinfo corestorage list” command above.
diskutil coreStorage createVolume E8A912ED-6B22-471E-96A9-65851A48121F jhfs+ "New LV" 149026357248b
In just a few minutes, diskutil created a new CoreStorage Logical Volume (including a new Logical Volume Family to contain it), formatted it as journaled HFS+, and mounted it for me to use!
Geoff Arnold says
How do you “petition” a drive? 😉
Spelling correctors are evil.
sfoskett says
Thanks for the correction! Fixed!
Karianne says
I have this situation:
+– Logical Volume Group 6683F4BE-ECD4-42D5-A96F-7E10E0677EDE
=========================================================
Name: FusionDrive
Size: 821504065536 B (821.5 GB)
Free Space: 17754071040 B (17.8 GB)
How can I add the 17.8GB to my existing Logical Volume of this Logical Volume Group?
Karianne says
Ok, I’ve got it.
diskutil coreStorage resizeVolume lvUUID size
did the trick. Thanks!
Adam Muriello says
Have you figured out a way to merge coreStorage partitions?
Kirk says
I’ve temporarily split a 1.1TB Fusion drive’s lowest level LV into two parts using:
diskutil cs resizeStack 985g JHFS+ Temp 15g
and that resized the Fusion volume ok and appears to have created Temp as a free-standing partition. The new Temp isn’t listed in “diskutil cs list” but is shown in “diskutil list” output. Now I’d like to merge Temp space back into the Fusion LV – something akin to the “diskutil mergePartitions …” command/verb. The mergePartition verb complains that the Fusion volume and Temp are on different whole disks. Re-invoking with the resizeStack verb and the original size complains that the disk isn’t big enough.
Suggestions for how to give the Temp space back to the Fusion volume?
Maybe delete the Temp partition and then resizeStack?