partmap 15 limit

Geert Janssens yellowdog-general@lists.terrasoftsolutions.com
Fri Jun 4 08:30:01 2004


I have never seen two separate partitions next to one another as free. 
When I free a partition with pdisk, it is always merged automatically 
with the adjacent free partition. Have you been using a macos 
partitioner ? In any case, I believe partition 9 and 10 could form 1 
free block. The other free blocks can only be merged by relocating the 
partitions in between.

I don't know a particular tool that does this with a single click of the 
mouse. The manual way involves creating new partitions and copying all 
data from the old to the new partition, all while ensuring that the 
operating system in question can keep track of which partition has moved 
where. I know how to do this in Linux, I have relocated my root 
partition several times because of disk space limitations, as well as my 
home partition. I don't know how I should go about performing the same 
task under OS X though (I never got further than mac os 9).


On a related note, it may be interesting to know that the 15 partitions 
limit is an old myth by now. I all has to do with the availability of 
the right device files in /dev. It used to be that several popular Linux 
distributions only provided 15 such device files for each possible hard 
disk.

For example, for the first hard disk (on a IDE based system), you had 
/dev/hda1 up until /dev/hda15. The kernel uses these device files to 
access a partition on that disk:
/dev/hda1 is used to access the first partition,
/dev/hda2 for the second, and so on.

Or if there are less than 15 partitions, the device files for which 
there is no corresponding partition point to nothing. The kernel simply 
gives an error if you try to use them.

Having more partitions than device files for a given disk is more of a 
problem, because without a device file, the kernel has no way to access 
the corresponding partition.

But, don't panic just yet. I see in my /dev directory that YDL 3.0 
apparently provides for 32 partitions per disk, so in your situation, 
you don't have to worry yet.

Should you happen to come one day to the point that you have more than 
32 partitions, then with the mknod command you can create more device 
files, up until 63 per disk. To understand mknod, see man mknod and also 
read file /usr/src/linux/Documentation/devices.txt. The latter is only 
available if you have installed the kernel sources.

So, what linux is concerned, the sky is the limit :-)

On afterthought, I don't know how well OsX handles more than 15 
partitions and in particular, how well it handles when one of it's own 
partitions (be it system or data) is beyond 15. Anyone else has info on 
this ?

Hope this helps.

Cheers,
Geert

mascarasnake wrote:
> Just a quick question.
> I've been following the 15 partition thread for a while now. I've 
> reformatted my main drive now in several different ways and keep getting 
> extraneous free parts that will take me above the 15 part limit.
> 
> thinking about YDL 4 on this machine
> 
> I'm running 10.3.4 on a B&W G3 rev2, all disks running on the internal 
> ATA bus(s)
> 
> here's my part map for the drive I want to install YDL 4 on:
> 
>    1:  Apple_partition_map Apple                     63 @ 1
>    2:       Apple_Driver43*Macintosh                 56 @ 64
>    3:       Apple_Driver43*Macintosh                 56 @ 120
>    4:     Apple_Driver_ATA*Macintosh                 56 @ 176
>    5:     Apple_Driver_ATA*Macintosh                 56 @ 232
>    6:       Apple_FWDriver Macintosh                512 @ 288
>    7:   Apple_Driver_IOKit Macintosh                512 @ 800
>    8:        Apple_Patches Patch Partition          512 @ 1312
>    9:           Apple_Free                     19369792 @ 1824      ( 9.2G)
>   10:           Apple_Free                            0+@ 19371616
>   11:            Apple_HFS Apple_HFS_Untitled_3  41680896 @ 19633760  ( 
> 19.9G)
>   12:           Apple_Free                            0+@ 61314656
>   13:            Apple_HFS Apple_HFS_Untitled_4   6029312 @ 61576800  ( 
>  2.9G)
>   14:           Apple_Free                            0+@ 67606112
>   15:            Apple_HFS Apple_HFS_Untitled_5  88499744 @ 67868256  ( 
> 42.2G)
>   16:           Apple_Free                            0+@ 156368000
> 
> my question is can I combine the empty (9, 10, 12, 14, and 16) without 
> killing it all?
>