I broke my 1 TB drive into 17 partitions
OP, just for curiosity , I would like to know how you did that, as
when I used Gparted LiveCD, the maximum I could get to was 14.
If I tried 15, I got an error message.
Tried it twice.
Once with the 1T which is in my Desktop and once with my 1T backup.
Both are Western Digital drives
Your thoughts will be appreciated.
Xena
There used to be a 15 partition limit on SCSI drives and a 63 partition limit on IDE drives. Like most limits they were programed limits not physical. When the kernels IDE tree was abandoned, and all drives were seen as SCSI drives that meant all drives had a 15 partition limit, which seemed rather silly to some of us, as an old 20 GB IDE drive could have 63 partitions while a new 1TB SATA drive only 15. Also IDE drives with more than 15 partitions suddenly seemed to lose those partitions past the first 15.
This derives from the major and minor numbers associated with the devices on a Linux system. All SCSI hard drives have the major number 8. The first SCSI drive has the major number 8 and the minor numbers 0-15 assigned to it. The drive itself is major 8 minor 0, or M-8 m-0, which to the kernel is the definition of /dev/sda. That leaves the remaining minor numbers available to describe 15 partitions. The second SCSI drive will again have the major number 8 but minor numbers from 16 - 31. Each additional drive will have another 16 number block of minor numbers that define the drive letter as well as the partition numbers. One must remember that this system was derived when hard drives were still measured in MB, so 15 partitions seemed rather large and possibly excessive.
IDE hard drives had the major number 3 but the minor numbers were assigned in blocks of 64; ie M-3 m-0 defined /dev/hda and the remaining minor numbers set the limit for the number of partitions (63). M-3 m-64 defined /dev/hdb, and so on.
Sometime in the last two years, or so, the kernel code was rewritten to raise the partition limit, and some of the partitioning tools were rewritten to take advantage of this, as well as change their code to properly align partitions on the new 4 KB sector hard drives now being produced. Partitions beyond the previously defined limit of 15 are added with the major number 259 and minor numbers starting at 0, as seen here;
[root@fatman ~]# ls -l /dev |grep sdabrw-rw---- 1 root disk 8, 0 Mar 28 03:33 sda
brw-rw---- 1 root disk 8, 1 Mar 28 03:33 sda1
brw-rw---- 1 root disk 8, 10 Mar 28 03:33 sda10
brw-rw---- 1 root disk 8, 11 Mar 28 03:33 sda11
brw-rw---- 1 root disk 8, 12 Mar 28 03:33 sda12
brw-rw---- 1 root disk 8, 13 Mar 28 03:33 sda13
brw-rw---- 1 root disk 8, 14 Mar 28 03:33 sda14
brw-rw---- 1 root disk 8, 15 Mar 28 03:33 sda15
brw-rw---- 1 root disk
259, 0 Mar 28 03:33
sda16brw-rw---- 1 root disk
259, 1 Mar 28 03:33
sda17brw-rw---- 1 root disk 8, 2 Mar 28 03:33 sda2
brw-rw---- 1 root disk 8, 3 Mar 28 03:33 sda3
brw-rw---- 1 root disk 8, 4 Mar 28 03:33 sda4
brw-rw---- 1 root disk 8, 5 Mar 28 03:33 sda5
brw-rw---- 1 root disk 8, 6 Mar 28 03:33 sda6
brw-rw---- 1 root disk 8, 7 Mar 28 03:33 sda7
brw-rw---- 1 root disk 8, 8 Mar 28 03:33 sda8
brw-rw---- 1 root disk 8, 9 Mar 28 03:33 sda9
In my case I used Linux fdisk to do the partitioning. One can tell the original partitioning was done with the older version of fdisk, because the first partition starts at sector 63.
[root@fatman ~]# fdisk -l /dev/sdaDisk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0000d21c
Device Boot Start End Blocks Id System
/dev/sda1 63 626534 313236 83 Linux
/dev/sda2 626535 16820054 8096760 82 Linux swap / Solaris
/dev/sda3 16820055 114495254 48837600 83 Linux
/dev/sda4 114495255 1953520064 919512405 5 Extended
/dev/sda5 114495318 329332499 107418591 83 Linux
/dev/sda6 329332563 534434354 102550896 83 Linux
/dev/sda7 534434418 596943269 31254426 83 Linux
/dev/sda8 596943333 659452184 31254426 83 Linux
/dev/sda9 659452248 721961099 31254426 83 Linux
/dev/sda10 721961163 784470014 31254426 83 Linux
/dev/sda11 784470078 994198589 104864256 83 Linux
/dev/sda12 994198653 1623368249 314584798+ 83 Linux
/dev/sda13 1623368313 1685893229 31262458+ 83 Linux
/dev/sda14 1685893293 1749366044 31736376 83 Linux
/dev/sda15 1749366108 1816485614 33559753+ 83 Linux
/dev/sda16 1816487663 1889887982 36700160 83 Linux
/dev/sda17 1889892080 1953520064 31813992+ 83 Linux
With the new version of fdisk the first partition would start at sector 2048. However, the new version recognizes and can work with the older partitioning scheme if it already exists, and allows for the creation of the additional partitions past the previous 15 limit, so I added those two partitions when the new fdisk version became available.
While the new fdisk will work with the existing partitions as they are, it will not recreate them in the older manner should you delete a partition and then try to recreate it with the same start and end sectors. For that one would need the older version of fdisk which I still have available on some older liveCDs, but they, in turn, cannot see the last two partitions.
For this reason I will be relocating everything on the 1 TB drive to my new 2 TB drive, using rsync, then repartition the 1 TB drive entirely with the new version fdisk, then rsync everything back from the 2 TB drive to the new partitions on the 1 TB drive.