Como faço para clonar um SSD contendo LVM LV e / root para um maior?

0

Este é o meu volume de raiz, é de 32GB e contém / boot, e no LVM LV's são / e swap.

sdb                           8:16   0 29.8G  0 disk 
├─sdb1                        8:17   0  200M  0 part /boot/efi
├─sdb2                        8:18   0  256M  0 part /boot
└─sdb3                        8:19   0 29.4G  0 part 
  ├─AntergosVG-AntergosRoot 254:0    0 26.4G  0 lvm  /
  └─AntergosVG-AntergosSwap 254:1    0    3G  0 lvm  [SWAP]

Eu quero clonar isso em um SSD maior. O seguinte é o procedimento correto? Estarei usando outro computador para que meu computador original não tenha discos antigos e novos ao mesmo tempo

  1. dd, onde if = old_ssd e de = new_ssd
  2. Aumenta o tamanho da partição sdb3 (LVM PV) para preencher o novo espaço usando gparted
  3. Inicialize no novo sistema, o uso lvresize para expandir AntergosRoot para todo o espaço do PV recentemente redimensionado
  4. Redimensione o sistema de arquivos (ext4) de / para o espaço inteiro do LV previamente redimensionado

Meu problema principal é que não sei quais comandos usar e, em segundo lugar, ao redimensionar o LV AntergosRoot, o volume de swap fará com que ele se torne não contíguo?

    
por test 28.06.2018 / 07:53

1 resposta

0

Você está perdendo um passo. Após redimensionar a partição sdb3 e inicializar no novo sistema, você precisará usar o comando pvresize para informar ao LVM que é permitido usar o novo espaço dentro do estendido sdb3 .

Então:

2.5. Inicialize no novo sistema e, em seguida, pvresize /dev/sdb3

No passo 3, eu geralmente preferiria usar lvextend em vez de lvresize - apenas como um à prova de falhas: se eu acidentalmente digitar incorretamente o novo tamanho, lvresize poderia diminuir o LV em vez de estendê-lo, enquanto lvextend apenas me diria que o novo tamanho especificado é menor que o atual. Mais seguro assim.

Mas se você quiser usar todo o novo espaço imediatamente, você pode fazer assim:

  1. lvextend -l +100%FREE /dev/mapper/AntergosVG-AntergosRoot

O passo 4 é simplesmente:

  1. resize2fs /dev/mapper/AntergosVG-AntergosRoot

Todos estes passos (2.5 ... 4) podem ser feitos enquanto o sistema de arquivos raiz está montado e gravável.

E sim, o sistema de arquivos raiz ficaria fisicamente não contíguo no disco - mas isso não é um problema: quando visto como um LVM LV, ele é acessível como um conjunto contíguo de números de blocos, e o LVM oculta o salto sobre a partição swap. E em termos de desempenho, uma única descontinuidade não é um grande problema.

Se houver um requisito real para manter um LV fisicamente contíguo no disco, você pode definir lvchange -C y <name of LV> para informar isso ao LVM. Mas, então, você não pode estender o LV tão facilmente: você teria que garantir que haja espaço livre após o final atual do LV (usando pvdisplay --maps e, se necessário, pvmove para reorganizar as coisas) antes de estender. Na maioria dos casos, isso não é necessário.

    
por 28.06.2018 / 09:05