Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I had two drives partitioned the same and running 2 raid partitions on each.

One died and I replaced it under warranty for the same model.

While trying to partition it, the first partition can only start on sector 2048, instead of 63 that was before. Driver have different geometry as previous and remaining ones. (Fewer heads/more cylinders)

old drive:

$ sudo fdisk -c -u -l /dev/sdb 

Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 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: 0x000aa189

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *          63   174080339    87040138+  83  Linux
/dev/sdb2       174080340   182482334     4200997+  82  Linux swap / Solaris
/dev/sdb3       182482335  3907024064  1862270865   fd  Linux raid autodetect

remanufactured drive received from warranty:

$ sudo fdisk -c -u -l /dev/sda

Disk /dev/sda: 2000.4 GB, 2000398934016 bytes
81 heads, 63 sectors/track, 765633 cylinders, total 3907029168 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: 0x000d0b5d

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048  ...

why is that?

share|improve this question
    
The output does not indicate that this is an Advanced Format 4K drive: Sector size (logical/physical): 512 bytes / 512 bytes. –  DragonLord Oct 31 '11 at 23:07
    
Why was this downvoted? –  DragonLord Oct 31 '11 at 23:35
    
I disagree with the downvote, I was also not aware of the track-alignment misconception and JdeBP's info is useful and relevant to a valid question. –  Garrett Oct 31 '11 at 23:39

5 Answers 5

up vote 17 down vote accepted

Because your old disc was partitioned with a old utility, such as the Linux fdisk, that uselessly implemented track-alignment using the entirely fake disc geometry that you see reported, and your new disc has been or is being partitioned by a newer utility that (by default) aligns to 1MiB boundaries instead.

Further reading

share|improve this answer
    
In other words, the LBA sector number 63 corresponds to cylinder 0, head 1, sector 1 in the CHS format, which is the first sector you can use in the MBR format. However, the number 63 is not divisible by 8, which causes a problem with 4K drives, so some modern tools starts the first partition at 2048 which also provides future GPT compatibility. –  billc.cn Oct 31 '11 at 23:48
3  
There are times when one yearns for a way to mark down comments, especially comments where others try to put outright errors into one's mouth. Those "other words" are incorrect, which is why they are not what I wrote. The first sector that one can use (as several people have) for a primary partition with an MBR partition table is LB# 2, or even LB# 1 if one doesn't need compatibility with things like IBM's LVM. And the 1MiB alignment is nothing to do with EFI partition table compatibility. –  JdeBP Oct 31 '11 at 23:59
    
Right I guess I made a mistake about the first part, but for the second bit I meant that if you start at 2048, you will have no problem converting the drive to GPT in the future, hence the word "also" and "future". –  billc.cn Nov 1 '11 at 3:59
    
+1: That was a great read JdeBP. I'm pretty sure I've read this else where, just not sure where. . . –  surfasb Nov 1 '11 at 14:24
    
That's still incorrect . One will have no problem anyway. Do the arithmetic. Even the original alignment to a (fake) track boundary provides more than enough room. Those 60 512-byte sectors can hold 240 EFI partition table entries. Again: The 1MiB alignment is nothing to do with EFI partition table compatibility. –  JdeBP Nov 1 '11 at 18:48
fdisk -c=dos

You used the old DOS partition table when creating your partition. Newer versions of fdisk do not use dos compatibility mode by default.

share|improve this answer
    
The accepted answer has some valuable information but this answer has the gem that I needed to fix my problem. –  jacobwalker0814 Aug 13 '13 at 13:05
    
fdisk wouldn't let me recreate a partition starting at sector 2048 without this argument - I got First sector (3072-314572799, default 3072): –  tomfanning Apr 25 at 14:40

Maybe it will be useful to add a comment here. For LUKS partition, it is said to delete and re-create the partition at the same place, but larger before calling cryptsetup resize. But when you created your partition long time ago, it start at the sector 63. Using fdisk, the partition will be recreated at the wrong offset, resulting in a lost partition.

I've managed to recover it using fdisk -c=dos to be able to create partition from sector 63, without troubles.

share|improve this answer

Not sure why it started on 63 in the first place, but according to fdisk, your sector sizes are 512.

So if you want your partitions, and thus clusters to be aligned, your starting offset should be divisible by 512. 2048 is pretty common these days.

If you prefer misaligned sectors, then you can always get GPart to move your partition back to 63.

Edit:

Ooops. Didn't see that you have a RAID. You should probably post your RAID and stripe size.

share|improve this answer

While I realize that the actual question was answered, a quick fix for the 63 vs 2048 first cylinder issue is something like:

sfdisk -d /dev/sdb | sfdisk --force /dev/sda

(if you're sure you've got drives that are the same size)

You can then proceed with adding the various partitions back into the RAIDs where you got complaints about the partitions not being the same size due to the 63/2048 start cylinder difference throwing off the eventual partition sizes.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.