
Estávamos reparticionando um disco virtual para aumentar o tamanho do volume físico de um LVM.
Foi assim que realizamos inicialmente:
$ 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
Isso fez com que o LVM não fosse reconhecido pelo Linux. Fiquei intrigado e olhei para um backup. As tabelas de partição começaram em 1, então isso não parecia ser o problema. Porém, se eu mudei as unidades (comando fdisk u
) de cilindros para setores, percebi que o backup começou no setor 13, mas a nova partição começou no setor 128.
Quando corrigimos o início da partição, tudo correu bem.
Não consigo entender a discrepância na conversão de unidades. Alguém pode me ajudar a entender?
Responder1
fdisk é uma ferramenta antiga e usa o esquema de cilindro antigo como padrão. Este valor será calculado com base nofalsodados de cilindro/faixa/cabeça fornecidos pelo firmware do disco rígido. A maioria das ferramentas (desde a existência do particionamento LBA) não tem nada a ver com isso.
Você pode alternar para o modo baseado em setor com o comando u
.
Sua tabela de partições provavelmente foi gerada por outra ferramenta (provavelmente por um recurso de reparticionamento de um instalador), que usava esse particionamento baseado em setor por padrão.
Gpart, parted e ainda muitas ferramentas fazem isso melhor, embora nenhuma delas tenha a precisão pura e limpa do antigo fdisk.