Se você só precisa de outro sistema de arquivos separado, você não precisa criar uma nova partição: você pode criar outro volume lógico LVM dentro do grupo de volumes existente usando o espaço não alocado no PV. Mas se você precisa especificamente de uma nova partição , faça o que planejou originalmente.
OGParted é uma ferramenta GUI que pode fazer toda a operação de redimensionamento da partição PV + para você. Você provavelmente encontrará na coleção de pacotes da sua distribuição.
Mas se você não puder ou não quiser usá-lo por algum motivo, continue a ler ...
Reduzir um volume físico LVM que tenha espaço não alocado é bem simples. Por exemplo, para reduzir o tamanho de / dev / sda1 para 40 GiB:
# pvresize --setphysicalvolumesize 40G /dev/sda1
Este comando é seguro, pois ele se recusará a fazer qualquer coisa se a parte do PV que ele irá cortar contiver extensões alocadas.
Mas esse é apenas o primeiro passo. O segundo passo será reduzir o tamanho da própria partição.
Por segurança, é recomendável reduzir inicialmente o PV um pouco mais do que o planejado para reduzir a partição, de modo que, após encolher a partição, você possa estender explicitamente o PV para cobrir o tamanho total da partição. Se a operação de extensão falhar, você saberá imediatamente que algo deu errado ao redimensionar a partição e não estará deixando erros ocultos para prender você ou outra pessoa no futuro.
Você pode reduzir uma partição usando um comando simples do Linux fdisk
, mas deve ter em mente algumas coisas:
- Ao usar
fdisk
para redimensionar uma partição, defina-a para exibir todos os tamanhos de partição e os locais iniciais em setores primeiro. Durante o histórico do Linuxfdisk
, seu comportamento variou aqui: versões modernas fazem isso por padrão, versões mais antigas podem precisar de uma opção-u
ou-u=sectors
para fazer isso. - Ao redimensionar uma partição existente, não é possível mover o ponto inicial da partição. (Se você mover o ponto de partida, não será mais uma operação de redimensionamento simples, mas uma operação de movimentação de partição mais complexa.)
Ao usar fdisk
, quaisquer alterações serão gravadas no disco somente quando você usar o comando w
. Então eu sugiro continuar assim:
- use
sfdisk -d /dev/sda > /safe/location/partition_table_backup.dump
para fazer backup da tabela de partições existente. - inicie
fdisk /dev/sda
no modo interativo - use o comando
p
para visualizar a tabela de partições atual e verificar se os valores "start" e "end" são exibidos como setores. Anote o valor de "início". - use o comando
d
para excluir a entrada da partição atual parasda1
. - use o comando
n
para recriar a entrada de partição primária 1 parasda1
no tamanho desejado, tomando o cuidado de especificar a localização do primeiro setor exatamente como estava (ou seja, o mesmo número que foi exibido no início "valor do comandop
). - use o comando
t
para definir o tipo da partição 1 como "Linux LVM". - verifique seu trabalho
- use o comando
w
para gravar a tabela de partições atualizada e sair emfdisk
.
Preste atenção à mensagem exibida por fdisk
no final. Se ele disser "O kernel ainda usa a tabela antiga", algo está bloqueando a atualização da tabela de partição on-line. Você pode tentar partprobe /dev/sda
dizer ao kernel para reler a tabela de partições (usando uma interface mais nova do que algumas versões antigas de fdisk
use, então isso pode ajudar e certamente não vai doer) e então veja cat /proc/partitions
para ver se a partição é agora reconhecida pelo kernel no tamanho esperado.
Se o redimensionamento da partição for bem-sucedido, você poderá executar pvresize /dev/sda1
. Se você seguiu meu conselho e redimensionou o PV inicialmente um pouco menor do que o novo tamanho desejado da partição, agora ele deve estender com sucesso o PV um pouco para cobrir totalmente a partição redimensionada automaticamente. Se este comando relatar um erro, você provavelmente cometeu um erro ao especificar o novo tamanho e deve usar sfdisk /dev/sda < /safe/location/partition_table_backup.dump
para restaurar a tabela de partição para o que era inicialmente e, em seguida, tente novamente.
(Em sistemas muito antigos, você pode ter que desativar o VG antes de executar partprobe
ou mesmo reinicializar para permitir que o sistema leia novamente a tabela de partições atualizada.)
Quando a operação de redimensionamento estiver concluída, você poderá usar fdisk
novamente para criar a segunda partição necessária. Sim, você também pode fazer isso juntos enquanto redimensiona a partição, mas fazer apenas uma coisa de cada vez é mais seguro e garante que você possa reverter suas alterações facilmente, se necessário.