Combine a segunda partição com a raiz

Combine a segunda partição com a raiz

Quero que meus dados da /dev/sda1partição "transbordem" automaticamente para a /dev/vdapartição. Então acho que minha pergunta é: como faço para combinar as 2 partições para /ter 138 GB de tamanho?

root@vps:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            3.8G     0  3.8G   0% /dev
tmpfs           780M   34M  747M   5% /run
/dev/sda1        39G  7.7G   32G  20% /
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
tmpfs           780M     0  780M   0% /run/user/1000
/dev/vda         99G   60M   94G   1% /mnt/vda

E estes são os discos disponíveis:

root@vps:/# fdisk -l
Disk /dev/vda: 100 GiB, 107374182400 bytes, 209715200 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


Disk /dev/sda: 40 GiB, 42949672960 bytes, 83886080 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: 0xffcebafc

Device     Boot Start      End  Sectors Size Id Type
/dev/sda1  *     2048 83886046 83883999  40G 83 Linux

Não tenho muito conhecimento sobre isso, então posso não fazer as perguntas certas.

Responder1

Dado que você está lidando com dois dispositivos físicos, não será possível combinar as partições no nível físico. Mas você pode usar o LVM (gerenciador de volume lógico) para criar o que equivale a um dispositivo de bloco virtual que consiste em váriosrealdispositivos de bloqueio. Isso simularia uma partição de aproximadamente 138 GB. Também é possível fazer algo semelhante no nível do sistema de arquivos usando BTRFS, mas aqui está o que você pode fazer com o LVM:

NOTA: Além do suporte ao LVM, seu sistema precisará da capacidade de inicializar a partir do LVM, o que depende do seu carregador de boot e de como ele está configurado.

Convertendo para LVM

Obviamente, certifique-se de fazer backup do seu sistema primeiro, pois esse processo eliminará /dev/sda1e /dev/vda. Em seguida, inicialize o Linux a partir de uma unidade Live CD/USB e...

  1. Execute wipefs /dev/vdapara limpar rapidamente a partição.
  2. Crie um volume físico LVM executandopvcreate /dev/vda
  3. Crie um grupo de volumes:vgcreate vg0 /dev/vda
  4. Crie um volume lógico para seu sistema de arquivos raiz: lvcreate -L80G -n rootfs vg0. Não se preocupe com o tamanho de 80 GB; isso será aumentado mais tarde.
  5. Coloque um sistema de arquivos no volume lógico, digamos... ext4:mkfs.ext4 -L ROOTFS /dev/vg0/rootfs
  6. Monte o novo sistema de arquivos para dizer... /mnt/newroot:mount -L ROOTFS /mnt/newroot
  7. Como você faria isso a partir de um live CD, você precisará montar o real /em algum lugar, digamos... /mnt/oldroot:mount /dev/sda1 -o ro /mnt/oldroot
  8. Copie oraiz antigapara o que se tornará onova raiz:cp -aR /mnt/oldroot/* /mnt/newroot/

Agora, até agora, além de perder tudo o que havia /dev/vda, nada de irreversível aconteceu. Portanto, esta é a oportunidade perfeita para configurar seu gerenciador de inicialização (ex. GRUB2) para inicializar /dev/vg0/rootfse certificar-se de que você pode inicializar. Tudo deve ser igual, exceto que a saída do df deve ser semelhante a esta:

root@vps:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            3.8G     0  3.8G   0% /dev
tmpfs           780M   34M  747M   5% /run
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
tmpfs           780M     0  780M   0% /run/user/1000
/dev/vg0/rootfs  99G  7.7G   92G   ?% /

Se você chegar tão longe, poderá prosseguir com o seguinte para aproveitar os poderes mágicos do LVM. Com alguns sistemas de arquivos, como EXT4, o seguinte pode ser feito no sistema ativo; nenhum CD ao vivo necessário.

  1. Limpe a raiz antiga:wipefs /dev/sda1
  2. Crie um novo volume físico:pvcreate /dev/sda1
  3. Adicione o novo volume físico ao LVM:vgextend vg0 /dev/sda1

Neste ponto, as duas partições estão disponíveis para uso do LVM, mas ainda não utilizadas. Para usar ambas as partições (na verdade, agora são volumes físicos LVM) para o seu /, estenda o volume lógico raiz para consumir todo o espaço disponível:

  1. Amplie o volume lógico:lvextend -l 100%FREE /dev/vg0/rootfs
  2. Amplie o sistema de arquivos:resize2fs /dev/vg0/rootfs

Isso deve fornecer um sistema de arquivos raiz com aproximadamente 138 GB de tamanho :)

informação relacionada