Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We were re-partitioning a virtual disk to increase the size of an LVM's physical volume.

This is how we initially performed this:

$ fdisk /dev/sdb
# delete partition
fdisk> d
? 1
# create new partition
fdisk> n
? p
? 1
first cylinder? [ENTER]
last cylinder? [ENTER]
# set LVM type
fdisk> t
? 8e
fdisk> w

This led to the LVM not being recognized by Linux. I was puzzled and looked at a backup. The partition tables both started at 1 so that didn't seem like the problem. However, if I changed units (fdisk command u) from cylinders to sectors, I noticed that the backup begun at sector 13 but the new partition started at sector 128.

When we corrected the beginning of the partition, everything went fine.

Can't get my head around the discrepancy in the conversion of units. Can someone help me understand?

share|improve this question
up vote 1 down vote accepted

fdisk is an old tool, and uses the oldstyle cylinder schema be default. This will be calculated based on the fake cilinder/track/head data provided by the firmware of the hard disk. Most tool (since the existence of the LBA partitioning) doesn't have anything with it to do.

You can switch to sector-based mode with it with the command u .

Your partition table was probably generated by another tool (probably by a repartitioning feature of an installer), which used this sector-based partitioning by default.

Gpart, parted and yet a lot of tools does this better, although none of them have the pure clean precision of the old fdisk.

share|improve this answer

Your Answer


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.