Como posso adicionar espaço a uma partição que não é a última?

0

Eu tenho um servidor Ubuntu virtualizado (versão Servidor Linux 3.2.0-58-genérico # 88-Ubuntu SMP x86_64 GNU / Linux) em um VMWare, assim:

disco rígido SCSI 1 (0: 0) - > 11 Gb / dev / sda1
disco rígido2 SCSI (0: 1) - > 30 Gb / dev / sdb1

Esta máquina tem esta ocupação:

fdiks-l

Disk /dev/sda: 11.8 GB, 11811160064 bytes
255 heads, 63 sectors/track, 1435 cylinders, total 23068672 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 identifier: 0x0001ce75

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048    15958015     7977984   83  Linux
/dev/sda2        15960062    16775167      407553    5  Extended
/dev/sda5        15960064    16775167      407552   82  Linux swap / Solaris

Disk /dev/sdb: 32.2 GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders, total 62914560 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 identifier: 0x2666a626

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1              63    41961779    20980858+  83  Linux
/dev/sdb2        41961780    62910539    10474380   83  Linux

Então, meu objetivo é:

  1. Criar spce em VMware para HD2 (SCSI (0: 1))
  2. Conceda esse espaço para / var (/ dev / sdb1)

Meu espaço livre é: df -k

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       8,1G  6,7G  944M  88% /
udev            3,2G  4,1k  3,2G   1% /dev
tmpfs           1,3G  500k  1,3G   1% /run
none            5,3M     0  5,3M   0% /run/lock
none            3,2G     0  3,2G   0% /run/shm
/dev/sdb1        22G   19G  1,3G  94% /var
/dev/sdb2        11G  7,4G  2,8G  73% /home

Estou lendo coisas como this , mas eu acho que não consigo redimensionar / dev / sdb1 (/ var) se eu tivesse / dev / sdb2 (/ home) na porta ao lado, o último bloco de sdb1 é o próximo em sdb2. Quais são minhas opções? Eu penso em:

  1. Mesclar sdb1 e sdb2
  2. Adicione espaço a essa nova partição
  3. Divida novamente / var e / home, mas deixe o espaço máximo para / var

Mas eu não sei ... Tudo isso, sem perda de dados ... alguma idéia?

    
por Aitor 13.03.2018 / 18:14

2 respostas

2

Você deve fazer backup antes de qualquer solução, pois qualquer solução vem com risco.

Você tem muitas opções, dependendo de quanto tempo ocioso é / espaço em disco / fazendo a correção certa / futura.

  1. A opção mais simples pode ser criar uma nova partição no final de / sdb e montá-la onde você precisa do espaço adicional. Usando links simbólicos pode ajudá-lo a mover vários diretórios por trás dele. Muito pouco, se houver, tempo de inatividade e nenhum dado em movimento. Mover / home para um novo / dev / sdb3 não é tão difícil - apenas (sem ninguém além de você poder acessar / home enquanto estiver em movimento) monte / dev / sdb3 em um novo lugar, mova / home para a nova partição, desmonte edite / etc / fstab para montar o novo disco em / home. -Problema é desperdício porque não divide espaço entre / home e o resto do sistema.

  2. Você pode mesclar e desmembrar dados conforme sugerido, mas também pode usar o gparted para mover a partição. Espero que demore um pouco.

  3. Você poderia reconstruir a VM "melhor" usando LVM - o que lhe permitirá muito mais flexibilidade para adicionar discos e redimensionar dispositivos de bloco no futuro. Infelizmente, a conversão para o LVM não é trivial e provavelmente significa reconstruir a VM.

por 14.03.2018 / 06:35
1

A resposta de Davidgo é boa. Mais uma opção: use Btrfs .

  1. Em teoria, você pode converter de desmontado ext3 / ext4 em Btrfs no lugar:

    fsck.ext4 -f /dev/sdb1
    btrfs-convert /dev/sdb1
    

    Na prática, você deve fazer backup de seus dados antes de qualquer maneira.

  2. Ajuste seu fstab para que ele funcione com o Btrfs e /var monta muito bem.

  3. Crie uma nova partição ou talvez um dispositivo separado, o que mais lhe convier.
  4. Adicione a nova partição / dispositivo ao seu sistema de arquivos (montado) do Btrfs:

    btrfs device add /dev/sdb3 /var   # (partition)
    # or
    btrfs device add /dev/sdc /var    # (entire device)
    
por 14.03.2018 / 07:44