Como estender a partição lógica e estendida com o fdisk

10

Estou tentando estender a partição / dev / sda5, que é uma partição lógica sob a partição estendida / dev / sda2.

Eu quero usar fdisk .

O procedimento deve ser o de excluir ambas as partições e, em seguida, recriá-las exatamente com os mesmos setores iniciais (1001470 e 1001472). Ele vai bem até criar partição lógica onde o setor inicial mínimo é maior ( 1003518 ) do que precisa ser.

$ sudo fdisk /dev/sda
Command (m for help): p
Disk /dev/sda: 9.8 GiB, 10485760000 bytes, 20480000 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
Disklabel type: dos
Disk identifier: 0x0cd7105f

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sda1  *       2048   999423   997376  487M 83 Linux
/dev/sda2       1001470 16775167 15773698  7.5G  5 Extended
/dev/sda5       1001472 16775167 15773696  7.5G 83 Linux


Partition 5 has been deleted.
Partition 2 has been deleted.

Command (m for help): n
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)

Select (default p): e
Partition number (2-4, default 2):
First sector (999424-20479999, default 999424): 1001470
Last sector, +sectors or +size{K,M,G,T,P} (1001470-20479999, default 20479999):
Created a new partition 2 of type 'Extended' and of size 9.3 GiB.

Command (m for help): n
All space for primary partitions is in use.
Adding logical partition 5
First sector (1003518-20479999, default 1003520): 1001472

Value out of range.

Eu fiz isso com o parted , mas deve ser possível com o fdisk de alguma forma.

$ fdisk -V
fdisk from util-linux 2.27.1
    
por A.D. 01.11.2016 / 02:15

3 respostas

7

Na interface normal, o fdisk do Linux aplica restrições de alinhamento às partições. Quais restrições dependem da versão do fdisk. As versões mais antigas tinham como padrão o alinhamento de cilindros, para compatibilidade com sistemas operacionais mais antigos que eram incompatíveis com o LBA . Quando o LBA tinha pouco mais de duas décadas, o fdisk parou de atender a esses sistemas antigos por padrão e, em vez disso, passou para o alinhamento de 1 MB, o que oferece melhor desempenho em mídias de armazenamento modernas.

Nas versões atuais do fdisk, para criar partições com qualquer alinhamento de setor (512B), primeiro é necessário criar a partição com o ponto final desejado, depois vá para o menu expert ( x ) e use o comando b para ajustar o início da partição (isso altera o tamanho da partição, não onde ela termina). Parece um pouco desajeitado.

    
por 02.11.2016 / 02:01
9

Passos tomados de acordo com a resposta de Gilles :

$ sudo fdisk /dev/sda

Welcome to fdisk (util-linux 2.27.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): p
Disk /dev/sda: 9.8 GiB, 10485760000 bytes, 20480000 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
Disklabel type: dos
Disk identifier: 0x0cd7105f

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sda1  *       2048   999423   997376  487M 83 Linux
/dev/sda2       1001470 16775167 15773698  7.5G  5 Extended
/dev/sda5       1001472 16775167 15773696  7.5G 83 Linux

Command (m for help): d
Partition number (1,2,5, default 5): 2

Partition 2 has been deleted.

Command (m for help): n
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)
Select (default p): e
Partition number (2-4, default 2):
First sector (999424-20479999, default 999424): 1001470
Last sector, +sectors or +size{K,M,G,T,P} (1001470-20479999, default 20479999):

Created a new partition 2 of type 'Extended' and of size 9.3 GiB.

Command (m for help): n
All space for primary partitions is in use.
Adding logical partition 5
First sector (1003518-20479999, default 1003520):
Last sector, +sectors or +size{K,M,G,T,P} (1003520-20479999, default 20479999):

Created a new partition 5 of type 'Linux' and of size 9.3 GiB.

Command (m for help): x


Expert command (m for help): b
Partition number (1,2,5, default 5):
New beginning of data (1001471-20479999, default 1003520): 1001472

Expert command (m for help): p

Disk /dev/sda: 9.8 GiB, 10485760000 bytes, 20480000 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
Disklabel type: dos
Disk identifier: 0x0cd7105f

Device     Boot   Start      End  Sectors Id Type    Start-C/H/S  End-C/H/S Attrs
/dev/sda1  *       2048   999423   997376 83 Linux       0/33/32   62/55/53    80
/dev/sda2       1001470 20479999 19478530  5 Extende    62/23/86 250/23/209
/dev/sda5       1001472 20479999 19478528 83 Linux     62/57/118 250/23/209

Então r (retorna ao menu principal) e w (escreve a tabela no disco).

    
por 02.11.2016 / 03:45
-1

Fdisk é um programa antigo, ele entende apenas partições MBR. Eu acho que seu problema está na geometria do disco (cabeças, setores por trilha e trilhas). Após a duplicação de dados do disco antigo para o novo disco via comando dd (setor para cópia de setor) você tem partições não alinhadas para iniciar setores de trilha. É por isso que o fdisk não permite que você crie o setor de partição inicial antes de primeiro alinhar ao início do setor de trilha onde ele estava no disco antigo.

Você pode tentar alterar a geometria do novo disco no programa fdisk via comando no menu estendido, mas é errado. Use programas parted e gparted em vez de fdisk antigo.

Agora, as velocidades de leitura e gravação não dependem do alinhamento para iniciar o setor de rastreamento de cada partição.

    
por 01.11.2016 / 20:20