Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

Question:

Question: diskutil: The partition cannot be resized but there is plenty of space

This is the error I get: The partition cannot be resized. Try reducing the amount of change in the size of the partition.

First of all, this is really not a helpful message. Why can't diskutil tell me how much change I need?

But worse of all, there is plenty of space. Situation before the resize:
* disk size: 1TB
* GUID partition table
* one partition using all disk
* the partition has a HFS+ volume with about 360GB occupied

Now, using Disk Utility I want reduce the partition to 500GB. It tells me that (after the resize) there will be 222GB space available. When I select Apply it starts to process. First it takes a looooong time to verify (the disk?, the partition?). And in the end it comes up with this famous error. "Try reducing the amount of change in the size of the partition.". Huh? Why?

Let me also say that the HFS+ volume is used for TimeMachine. But I have been careful to stop TM, I even tried after a reboot, and I even tried using Disk Utility from the installation DVD. And all the time it gives me that same error message. OK. I haven't tried to change the resize amount, because I simply don't know how much. And it is really not an option to just try, because it takes forever. Live is too short.

Has anyone successfully resized a partition with a HFS+ volume on it AND used for TM?

MacPro, Mac OS X (10.6.2)

Posted on

Reply

Page content loaded

Apr 11, 2011 12:30 PM in response to keestux In response to keestux

Firstly, consider that a resize requires that the new partition requires a contiguous amount of space. The error generally means the drive is fragmented such that it cannot be resized as you have requested.

Secondly, your TM volume needs to be at least twice the capacity of the drive you are backing up.

I assume that currently this drive has one partition - 1 TB. If that's not the case then you need to tell us just exactly how the drive is now partitioned and which partition you are trying to resize.

Apr 11, 2011 12:30 PM

Reply Helpful

Apr 11, 2011 12:47 PM in response to Kappy In response to Kappy

Hi Kappy, thanks for replying so quickly.

I understand that the diskspace for the new partition must be contiguous. But that is what I expect from a tool that can resize (shrink) a volume/partition. Are you suggesting that diskutil cannot do this for me? If so then diskutil would almost never be able to shrink a volume/partition. It would be severely limited.

Hmm. my TM volume is certainly not twice the size of the volume it is used for. Do you know where I can read more about this requirement?

As I mentioned in my post, yes, the (1TB) disk has only one partition. And that is the partition I am trying to shrink to 500GB.

Apr 11, 2011 12:47 PM

Reply Helpful

Apr 11, 2011 1:02 PM in response to keestux In response to keestux

Let me give more details reported by the diskutil command. (Probably it won't format well. We need a non-proportional font!)

profit:~ root# diskutil list /dev/disk2
/dev/disk2
#: TYPE NAME SIZE IDENTIFIER
0: GUID partitionscheme *1.0 TB disk2
1: EFI 209.7 MB disk2s1
2: Apple_HFS HD 2 999.9 GB disk2s2


profit:~ root# diskutil resizeVolume /dev/disk2s2 limits
For device disk2s2 HD 2:
Current size: 999.9 GB (999860912128 Bytes)
Minimum size: 277.5 GB (277545537536 Bytes)
Maximum size: 999.9 GB (999860912128 Bytes)

BTW, just to be sure, I have just completed a "verify volume", and all was OK.

Apr 11, 2011 1:02 PM

Reply Helpful

Apr 11, 2011 2:23 PM in response to keestux In response to keestux

And, how much free space is reported? Are you using Disk Utility to resize? Or are you trying to do this in the Terminal? Here's what I generally do:

To resize the drive do the following:

1. Open Disk Utility and select the drive entry (mfgr.'s ID and size) from the left side list.

2. Click on the Partition tab in the DU main window. You should see the graphical sizing window showing the existing partitions. A portion may appear as a blue rectangle representing the used space on a partition.

3. In the lower right corner of the sizing rectangle for each partition is a resizing gadget. Select it with the mouse and move the bottom of the rectangle upwards until you have reduced the existing partition enough to create the desired new volume's size. The space below the resized partition will appear gray. Click on the Apply button and wait until the process has completed. +(Note: You can only make a partition smaller in order to create new free space.)+

4. Click on the [+] button below the sizing window to add a new partition in the gray space you freed up. Give the new volume a name, if you wish, then click on the Apply button. Wait until the process has completed.

You should now have a new volume on the drive.

Also, here's a help article: OS X 10.5- About resizing disk partitions.

As for TM backup drive space. There's no specific document about size. However, from mine and other's experiences the TM drive needs to be much larger than the drive backed up. This is because every hour TM is adding new stuff to the backup which takes up more storage space. If the drive space isn't large enough you could run out of space quickly. Although even with a large enough backup drive you will run out of space eventually, if the drive is large enough that will take some time.

Apr 11, 2011 2:23 PM

Reply Helpful

Apr 12, 2011 2:25 AM in response to Kappy In response to Kappy

Kappy wrote:
And, how much free space is reported?


In my post you can read that the free space before is about 720GB. And after the shrink (1TB => 500GB) the free space would have been about 220GB. In other words: plenty of space.

Are you using Disk Utility to resize?
Or are you trying to do this in the Terminal?


Both, in Terminal and using Disk Utility(.app)

Here's what I generally do:

To resize the drive do the following:

1. Open Disk Utility and select the drive entry (mfgr.'s ID and size) from the left side list.

2. Click on the Partition tab in the DU main window. You should see the graphical sizing window showing the existing partitions. A portion may appear as a blue rectangle representing the used space on a partition.

3. In the lower right corner of the sizing rectangle for each partition is a resizing gadget. Select it with the mouse and move the bottom of the rectangle upwards until you have reduced the existing partition enough to create the desired new volume's size. The space below the resized partition will appear gray. Click on the Apply button and wait until the process has completed. +(Note: You can only make a partition smaller in order to create new free space.)+

4. Click on the [+] button below the sizing window to add a new partition in the gray space you freed up. Give the new volume a name, if you wish, then click on the Apply button. Wait until the process has completed.

You should now have a new volume on the drive.


Well, yeah that's what I'm doing, except for step 4. But +Disk Utility+ (and the diskutil command line) does not require the addition of a new partition. It's documented as can be read in the man page.

If the whole process wouldn't take so awfully long, I would try a few more options. I wish there was a diskutil command option that would skip the fsck_hfs (that is the long part) when doing resizeVolume.

Also, here's a help article: OS X 10.5- About resizing disk partitions.


This is just about MBR partition. And as you can read in my post I have a GUID Partition Table.

As for TM backup drive space. There's no specific document about size. However, from mine and other's experiences the TM drive needs to be much larger than the drive backed up. This is because every hour TM is adding new stuff to the backup which takes up more storage space. If the drive space isn't large enough you could run out of space quickly. Although even with a large enough backup drive you will run out of space eventually, if the drive is large enough that will take some time.


Thanks for sharing. However, it's not relevant for my diskutil problem.

BTW. In the past there were more people who asked about this same error message, and they never got a solution.

Apr 12, 2011 2:25 AM

Reply Helpful

Apr 12, 2011 8:28 AM in response to keestux In response to keestux

Ultimately when I've had this problem occur I try the following which worked for me:

1. Clone the drive to an external or other internal drive that can be erased.
2. Erase the problem drive.
3. Restore the clone to the problem drive.

This eliminates any fragmentation that may cause the problem.

Apr 12, 2011 8:28 AM

Reply Helpful

Apr 12, 2011 11:11 AM in response to Kappy In response to Kappy

My next attempt will be to use parted. I'm beginning to loose faith in diskutil. It probably has no sense to try hdiutil either, because I think that that is what diskutil is using.

I'll think about making a clone (I have another 1TB drive, but I'm not sure about its quality), but maybe I will take my chance.

Apr 12, 2011 11:11 AM

Reply Helpful

Apr 21, 2014 11:29 AM in response to Kurt Lang In response to Kurt Lang

Why? There are many topics on these forums that have never been effectively solved. This is one of them.


Personally, I really appreciate it when someone points me to a solution to a tough problem, no matter what year it is. Many of the foundational frameworks for Mac OSX do not change much over the years. Diskutil is one of them.

Apr 21, 2014 11:29 AM

Reply Helpful

Apr 21, 2014 12:53 PM in response to Kurt Lang In response to Kurt Lang

Interesting, but I guess I don't understand why you believe this. The way I got to this topic and several similar topics was via a google search on the error message produced by diskutil. None of the threads I found had solved the problem, except in a very brute force sort of way (i.e., back-up the partition and then reclone it using Carbon Copy or some other utility, or purchase a third-party tool to defragment the partition).


So many people were asking, but there were no great answers, or at least none that solved my problem.


I did eventually find a solution, but it took several hours of digging. So I thought, maybe I could save someone time by posting the answer in the places that google is going to send them.


However, sounds like you and others access this forum in a different way, and find it to be bad etiquette to post a solution on a "cold case", as it were. Can you explain why this is? Is it better to create a new topic and back-link to all of the old topics?

Apr 21, 2014 12:53 PM

Reply Helpful

Apr 21, 2014 1:55 PM in response to russtman In response to russtman

For a fixed solution that can address such an issue in a current topic, a very good place to put it is in the User Tips Contributions > User Tips section. Make sure to click the link at the right to Create a user tip, and not Start a discussion.


When done, it will look like a notepad item, like this. These types of contributions can be updated so you don't have to tack on addendum as they need updated information. In this example, you can see it's designated as VERSION 3. Which means a brody has updated the info twice since the initial post.


With the User Tip in place, you can provide a link to it when a user has the same issue. Or, you could just save your text as a boilerplate and post it directly in such a topic when appropriate.


But yes, the hosts don't really like it when a user dredges up years old posts on a common topic to post the same thing over and over. This is one of, if not the most heavily used forum on the planet. Extra posts like this which do not serve the original poster any good after such a long period since the last post just adds to the load.

Apr 21, 2014 1:55 PM

Reply Helpful
User profile for user: keestux

Question: diskutil: The partition cannot be resized but there is plenty of space