Estou tentando estender a partição / dev / sda5 que é a partição lógica na partição estendida / dev / sda2.
Quero usar fdisk .
O procedimento deve ser deletar ambas as partições e então recriá-las com exatamente os mesmos setores iniciais (1001470 & 1001472). Vai bem até a criação de 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.
Fiz isso com parted , mas deve ser possível com fdisk de alguma forma.
$ fdisk -V fdisk from util-linux 2.27.1
Resposta
Na interface normal, o fdisk do Linux aplica restrições de alinhamento às partições. Quais restrições dependem da versão do fdisk. Versões mais antigas padronizadas para alinhamento de cilindro, para compatibilidade com sistemas operacionais mais antigos que eram incompatíveis com 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, mudou para o alinhamento de 1 MB, o que dá melhor desempenho em mídias de armazenamento modernas.
Nas versões atuais do fdisk, para crie partições com qualquer alinhamento de setor (512B), você precisa primeiro criar a partição com o ponto final desejado, então vá para o menu especialista (x
) e use o comando b
para ajustar o início da partição (isso muda o tamanho da partição, não onde termina). Parece um pouco desajeitado.
Comentários
- Funcionou perfeitamente. Você pode explicar por que o modo especialista não foi necessário neste caso ?
- @ A.D. Porque nesse caso a partição estava alinhada em 1 MB.
- Verdade, eu tentei estender as partições alinhadas e funcionou mesmo sem o modo especialista.
Resposta
Etapas realizadas de acordo com Gilles “ resposta:
$ 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
Em seguida, r (retornar ao menu principal) e w (gravar tabela no disco).
Resposta
Fdisk é um programa antigo, ele entende apenas partições MBR. Acho que seu problema está na geometria do disco alterada (cabeças, setores por trilha e trilhas). Após a duplicação de dados de disco antigo para o novo disco através do comando dd (cópia de setor para setor) você tem partições não alinhadas com os setores iniciais da trilha. É por isso que o fdisk não permite que você crie o setor de partição inicial antes de alinhado ao início do setor da trilha onde estava no disco antigo.
Você pode tentar alterar a geometria do novo disco no programa fdisk via comando no menu estendido, mas é o caminho errado. Use os programas parted e gparted em vez do fdisk antigo.
Agora lendo e as velocidades de gravação não dependem do alinhamento para iniciar o setor de trilha de cada partição.
Comentários
- As versões modernas do fdisk também entendem GPT, mas isso ‘ é irrelevante aqui. O problema não ‘ não mudou necessariamente a geometria do disco, apenas limitações da interface não especializada do fdisk ‘.
- Este é o MBR:
Disklabel type: dos
. Lembro que parted reclamou que ‘ não está alinhado, então posso tentar alinhá-lo e depois estender. Eu ‘ tenho certeza de que vi o mesmo procedimento feito no fdisk e estava funcionando.