As of 10.4.6, if you’ve got a GPT partitioned disk, you can use diskutil from the command line to resize volumes…
<code> [email protected]: ~ $ diskutil resizeVolume Disk Utility Tool Usage: diskutil resizeVolume [Mount Point|Disk Identifier|Device Node] size <part1Format part1Name part1Size> <part2Format part2Name part2Size> ... Non-destructively resize a disk. You may increase or decrease its size. When decreasing size, you may optionally supply a list of new partitions to create. Ownership of the affected disk is required. Valid partition sizes are in the format of <number><size>. Valid sizes are B(ytes), K(ilobytes), M(egabytes), G(igabytes), T(erabytes) Example: 10G (10 gigabytes), 4.23T (4.23 terabytes), 5M (5 megabytes) resizeVolume is only supported on GPT media with a Journaled HFS+ filesystem. A size of "limits" will print the range of valid values for the current filesystem. Example: diskutil resizeVolume disk1s3 10G JHFS+ HDX1 5G MS-DOS HDX2 5G Valid filesystems: "Case-sensitive HFS+" "Journaled HFS+" "Case-sensitive Journaled HFS+" "HFS+" "HFS" "MS-DOS FAT32" "MS-DOS FAT16" "MS-DOS" "MS-DOS FAT12" "UFS" "Linux" "Swap" </code>
Is there a way to delete partitions? Doesn’t seem obvious from the help text.
I had reparitioned my drive to install XP the third party way, but BootCamp
has shown up before I had a chance. However, BootCamp won’t run unless I
have one big partition. Looks like I can’t go back to one partition without
wiping the disk.
In that case, you’re probably better off looking at something like Parallels which lets you run any
number of OSes simultaneously, while booted in OS X. It is still in beta,
though, so a few things don’t work quite right (or at all). It is a step in the
right direction, though, and certainly worth taking a look at. It’s just not
production-ready quite yet 🙂
~Ian
Other news:
1.) 10.4.6’s disk utility allows to format disks with GPT
2.) a PPC mac can boot off a GPT disk with 10.4.6
i just did both of those things on my PPC mac (quad G5). sweet.
Regarding:
2.) a PPC mac can boot off a GPT disk with 10.4.6
Only a few models of ppc macs can boot from a GPT disk. Most of them cannot
thanks for the clarification!
i couldn’t get resizing to work at this time… :-/
[Quadzilla:/Volumes] boli% diskutil resizeVolume /Volumes/
bonsai
5G
Started resizing on disk disk3s2 bonsai
Verifying
Resizing Volume
Resizing encountered error No space left on device (28) on disk
disk3s2
bonsai
i did check the minimum and maximum size beforehand:
[Quadzilla:/Volumes] boli% diskutil resizeVolume /Volumes/
bonsai
limits
For device disk3s2 bonsai:
Current size: 79716450304 bytes
Minimum size: 3515957248 bytes
Maximum size: 79716450304 bytes
There’s only 2.27 GiB of data on that disk, and according to iDefrag
there’s
no data beyond block 756709 (that’s byte 3099480064 with 4 KiB
blocks).
hmm, this article states:
The following is highly suspected to be functional only on Intel Macs.
well, it didn’t work on my PPC mac (post above), so it looks like his suspicion is confirmed. did anyone else try?
I played with diskutil on 10.4.6 on a Powerbook using an external drive.
I used the following Command to lay down a new GPTPartition table:
diskutil partitionDisk disk2 1 JHFS+ Part1 20G
It produced the following output:
Started partitioning on disk disk2
Creating Partition Map
5% ..Formatting Disk 100% ..
Finished partitioning on disk disk2
/dev/disk2
#: type name size identifier
0: GUID_partition_scheme *44.7 GB disk2
1: EFI 200.0 MB disk2s1
2: Apple_HFS Part1 44.4 GB disk2s2
At this point diskutil info and the Disk Utility GUI both reflect the
GUID partition table and the correct filesystem type.
The Disk Utility App, cannot be used to break the drive into multiple
partitions. When it does so, it writes an Apple style partition table.
Using, diskutil resizeVolume disk2s2 15GB (or the same command with
args specifying additional FSType/Name/Size triplets) fail.
The failure does not indicate lack of space. I get the following output:
Started resizing on disk disk2s2 Part1
Verifying
Resizing Volume
Resizing encountered error Invalid argument (22) on disk disk2s2 Part1
Given the possible coincidence of disk2s2 and the argument ’22’ I created
a GUIDPartition with 2 partitions and tried to resize the second partition on
disk2s3. I still failed with Invalid argument (22).
Only then did I ‘Doh!’ and remember that 22 is the standard EINVAL error
return code in /usr/include/sys/errno.h. So it is calling some library function to
perform the resize, and returning a failure. I have not investigated further.
I think that further attempts to run on PowerPC are likely to fail unless
the test is run on a system which has been hacked together (via radmind,
etc.) as a Universal build.
One final bit.
I suggested that it was failing during a call to some library function which
attempted to perform the resize. This is incorrect.
disukutil makes a call to an Objective C method in the DiskManagement
framework. This in turn will call a standalone executable Resources/
resizeVolume.
On my system, the failure occurs before resizeVolume would even be
attempted.
So some function called before this, is failing.
no, it’s not calling the resizevolume tool in the diskmanagment framework. The
issue is resizevolume only works on Intel macs. It specifically will not work on
ppc, and nor APM maps.
The Disk Utility App, cannot be used to break the drive into multiple
partitions. When it does so, it writes an Apple style partition table.
that’s not true for me. i used (10.4.6’s) DiskUtility to create a single or
multiple partitions that use GPT (using the
“Options…” button to select GPT, see picture).
disk[Quadzilla:~] oli% diskutil list
/dev/disk3
#: type name size identifier
0: GUID_partition_scheme *74.6 GB disk3
1: EFI 200.0 MB disk3s1
2: Apple_HFS Untitled 1 37.2 GB disk3s2
3: Apple_HFS Untitled 2 37.0 GB disk3s3
There are two cases where this will fail:
-Your volume fails a verify. Before resizing, resizevolume does a fsck of the
volume in question. If that fails, the resize will fail, and you’ll need to use
diskutility to repair it.
-There are files can cannot be moved in order to accommodate your resizing
request. The filesystem resizing routines have some limitations on what files it
can move. There are a few metadata files that can’t be moved, so if they
happen to be in the space you’re trying to free up, the resize will fail. Note
that in some cases the filesystem doesn’t know if there are files it can’t move
before it starts. Thus, there will be cases where it actually moves some
number of files before exiting. In these cases, the disk should still be ok.
I have a problem with this resizing thing!
I used bootcamp to resize my single-volume HD into a 70gb and a smaller
5gb partition. Instead of installing windows, I used disk util to format the
volume as HFS+.
I then decided to merge back to partition into a single Volumen (the 5gb was
empty) but bootcamp refused to recognise the partition so it wouldn’t merge
them.
diskutil resizeVolume did not work because of this second 5gb partition
(disk0s3) being present.
I used gpt to delete the 5gb partition and I now have about 5gb of free
unpartioned space on my hard drive. However, diskutil resizeVolume still
refuses to adjust the size of my main macintosh volume (disk0s2)
I really don’t know what to do. I installed tiger like 3 days ago and i don’t
really want to go thorugh all the installation process again :S