Вы хотите добавить новый раздел или файл контейнера в существующий раздел?
В первом случае вам действительно нужно изменить размер существующего раздела HFS с помощью diskutil resizeVolume
который перемещает данные с конца диска в другое место, поэтому его можно сжать:
Usage: diskutil resizeVolume MountPoint|DiskIdentifier|DeviceNode size
[part1Format part1Name part1Size part2Format part2Name part2Size
part3Format part3Name part3Size ...]
Non-destructively resize a disk. You may increase or decrease its size.
When decreasing size, you may optionally specify new partitions to create
to fill the newly-freed space. Specify these new partitions as in the
diskutil partitionDisk command. A size of zero will cause a grow fit-to-fill.
Ownership of the affected disk is required.
Valid sizes are floating-point numbers with a suffix of B(ytes), S(512-byte-
blocks), K(ilobytes), M(egabytes), G(igabytes), T(erabytes), P(etabytes),
or (%)percentage of the total size of the whole disk.
A size of "limits" will print the valid range for the current conditions of
the file system and room to grow up to an immovable object (next partition).
A size of "R" for the target partition will resize it to the maximum
possible; "R" cannot be used for the size of new partition triples, if any.
resizeVolume is only supported on a Journaled HFS+ file system.
Теоретически вы можете использовать это для сокращения раздела до занятого пространства, а затем снова развернуть его, создавая непрерывную свободную область в существующем разделе для использования файлом контейнера, если вы имели в виду последнее.