15 partition limit on SCSI/SATA drives

James Wilkinson fedora at aprilcottage.co.uk
Mon Oct 30 17:47:08 UTC 2006


Tom Horsley wrote:
> In an excess of energy I decided to see how many different OSes I
> could install to compare their behavior with a weird X bug I
> encountered in FC6:
> 
> https://bugs.freedesktop.org/show_bug.cgi?id=8790
> 
> I figured 20 gig was about enough for each root, and decided to
> create 7 small /boot partitions near the front of the disk (since
> so many boot loaders have problems with big addresses) and 7 20
> gig partitions after that for different kernels (my disk is a 160
> gig sata drive).
> 
> Windows has no problems doing this, but fdisk -l won't print any
> info about partitions after /dev/sda15 and if I try to install
> FC5 on a system that actually has an sda16 and sda17 partition
> (even if I don't try to use them for anything), anaconda blows up
> at the partitioning stage when it is about to try to partition
> and install.
> 
> If I go back to windows, delete the last two partitions, and
> re-install, all goes smoothly.
> 
> Is there some rule I don't know about on the number of
> partitions? Or is it a rule about the starting address of a
> partition (can't be too big maybe)?

I don't know -- you seem to have worked it out pretty well for yourself.
Linux can't cope with anything more than sdx15.

This is basically because Linux's SATA support is based on its SCSI
support, which means it inherits the SCSI device numbers. And the SCSI
device numbers were designed for large computers, with lots of
relatively small disks.

As a result, the current device numbering (which goes back to the
beginning of Linux) allows for 128 disks, but only sixteen "minor"
numbers per disk -- one for the whole disk, four for the primary
partitions, and eleven (sdx5 to sdx15) for logical partitions.

The 2.6.x kernel in theory would support "larger" device numbers, which
could allow for even more SCSI disks and more partitions per disk -- but
that would leave incompatibilities with stuff that expected old-style
device numbers. Last I heard, the kernel team were planning to switch
during the 2.7.x development tree -- which shows how long ago that was.
Since the plans for 2.7 were dropped, everything seems to have gone
quiet. http://lwn.net/Articles/54837/ from 2003 is about the most recent
status update I can find.

Sorry.

James.

-- 
E-mail:     james@ | 'Short for "Sic Transit Gloria Humanorum", which is Latin
aprilcottage.co.uk | for "There goes the neighbourhood!"'
                   |     -- Menno Willemse




More information about the fedora-list mailing list