Quiero que mis datos de /dev/sda1
la partición se "desborden" automáticamente a la /dev/vda
partición. Entonces creo que mi pregunta es: ¿cómo combino las 2 particiones para que /
tengan un tamaño de 138 GB?
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
Y estos son los discos disponibles:
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
No tengo mucho conocimiento sobre esto, por lo que es posible que no haga las preguntas correctas.
Respuesta1
Dado que se trata de dos dispositivos físicos, no podrá combinar las particiones a nivel físico. Pero puede usar LVM (administrador de volúmenes lógicos) para crear lo que equivale a un dispositivo de bloque virtual que consta de múltiplesrealdispositivos de bloqueo. Eso simularía una partición de ~138GB. También es posible hacer algo similar a nivel del sistema de archivos usando BTRFS, pero esto es lo que puedes hacer con LVM:
NOTA: Además de la compatibilidad con LVM, su sistema necesitará la capacidad de arrancar desde LVM, lo que depende de su cargador de arranque y de cómo esté configurado.
Convirtiendo a LVM
Obviamente, primero asegúrese de hacer una copia de seguridad de su sistema, ya que este proceso se borrará /dev/sda1
y /dev/vda
. Luego inicie Linux desde una unidad Live CD/USB y...
- Ejecute
wipefs /dev/vda
para borrar rápidamente la partición. - Cree un volumen físico LVM ejecutando
pvcreate /dev/vda
- Cree un grupo de volúmenes:
vgcreate vg0 /dev/vda
- Cree un volumen lógico para su sistema de archivos raíz:
lvcreate -L80G -n rootfs vg0
. No te preocupes por el tamaño de 80 GB; eso se incrementará más adelante. - Coloque un sistema de archivos en el volumen lógico, digamos... ext4:
mkfs.ext4 -L ROOTFS /dev/vg0/rootfs
- Monte el nuevo sistema de archivos para decir... /mnt/newroot:
mount -L ROOTFS /mnt/newroot
- Dado que estarías haciendo esto desde un CD en vivo, necesitarás montar el archivo real
/
en algún lugar, digamos... /mnt/oldroot:mount /dev/sda1 -o ro /mnt/oldroot
- Copia elraíz viejaa lo que se convertirá en elnueva raíz:
cp -aR /mnt/oldroot/* /mnt/newroot/
Ahora, hasta ahora, aparte de perder lo que había dentro /dev/vda
, no ha sucedido nada irreversible. Así que esta es la oportunidad perfecta para configurar su gestor de arranque (por ejemplo, GRUB2) para arrancar /dev/vg0/rootfs
y asegurarse de que puede arrancar. Todo debería ser igual, excepto que la salida df debería verse así:
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 ?% /
Si llegas tan lejos, puedes continuar con lo siguiente para aprovechar los poderes mágicos de LVM. Con algunos sistemas de archivos, como EXT4, se puede hacer lo siguiente en el sistema en vivo; no se necesita CD en vivo.
- Elimina la antigua raíz:
wipefs /dev/sda1
- Cree un nuevo volumen físico:
pvcreate /dev/sda1
- Agregue el nuevo volumen físico a LVM:
vgextend vg0 /dev/sda1
En este punto, las dos particiones están disponibles para el uso de LVM, pero aún no se utilizan. Para usar ambas particiones (en realidad ahora son volúmenes físicos LVM) para su /
, extienda el volumen lógico raíz para consumir todo el espacio disponible:
- Ampliar el volumen lógico:
lvextend -l 100%FREE /dev/vg0/rootfs
- Ampliar el sistema de archivos:
resize2fs /dev/vg0/rootfs
Eso debería darle un sistema de archivos raíz de ~138 GB de tamaño :)