Combina a segunda partição com a raiz

2

Eu quero que meus dados da partição /dev/sda1 automaticamente "estourem" para a partição /dev/vda . Então, eu acho que a minha pergunta é: como eu combino as 2 partições, então / se torna 138GB 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

Eu não tenho muito conhecimento disso, então eu não posso fazer as perguntas certas.

    
por Bob 14.04.2017 / 00:14

1 resposta

2

Considerando 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ários dispositivos de bloco real . Isso simularia uma partição de ~ 138GB. Também é possível fazer algo semelhante no nível do sistema de arquivos usando o BTRFS, mas aqui está o que você pode fazer com o LVM:

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

Convertendo para o LVM

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

  1. Execute wipefs /dev/vda para limpar rapidamente a partição.
  2. Crie um volume físico LVM executando pvcreate /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 deve 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 CD ao vivo, você precisará montar o / real em algum lugar, digamos ... / mnt / oldroot: mount /dev/sda1 -o ro /mnt/oldroot
  8. Copie a raiz antiga para o que será a nova raiz : cp -aR /mnt/oldroot/* /mnt/newroot/

Agora, até agora, além de perder o que estava em /dev/vda , nada irreversível ocorreu. Portanto, esta é a oportunidade perfeita para configurar seu gerenciador de inicialização (ex. GRUB2) para inicializar a partir de /dev/vg0/rootfs e garantir que você possa inicializar. Tudo deve ser o mesmo, exceto que sua saída do df deve ser algo como isto:

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, então você pode prosseguir com o seguinte para alavancar os poderes mágicos do LVM. Com alguns sistemas de arquivos, como o 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 as duas partições (na verdade, elas são volumes físicos de LVM agora) para o seu / , estenda o volume lógico da raiz para consumir todo o espaço disponível:

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

Isso deve dar a você um sistema de arquivos raiz de até 138GB:

    
por 14.04.2017 / 02:57

Tags