Hoy probé esto en mi máquina con OpenSUSE 12.3 (kernel 3.7):
# resize2fs /dev/mapper/system-srv 2G
resize2fs 1.42.6 (21-Sep-2012)
Filesystem at /dev/mapper/system-srv is mounted on /srv; on-line resizing required
resize2fs: On-line shrinking not supported
/dev/mapper/system-srv
es un volumen EXT4.
¿Es realmente incompatible o me falta algo?
linux
lvm
hard-drive
ext4
Alicia
fuente
fuente
Sí, puede reducir / mover / hacer crecer una partición raíz sin reiniciar (ni livecd, ni usbkey): consulte esta respuesta . Está muy bien escrito y es fácil de seguir, aunque bastante largo y un poco arriesgado.
resize2fs
no puede reducir lasext4
particiones en línea . Esta limitación, cuando se aplica en la partición raíz, puede llevarlo a pensar que no puede evitar reiniciar el host para permitir reducir laroot
partición, lo que podría ser algo que desea evitar. El proceso vinculado le permitirá desmontar la partición raíz sin reiniciar. Por lo tanto, desde este punto de vista, no se trata estrictamente de cambio de tamaño en línea con respecto al estado montado de la partición, sin embargo, sigue siendo un cambio de tamaño en línea con respecto al estado en línea de la red o al alcance del host.Por supuesto, si solo desea aumentar su partición ext4, debe apegarse a las
resize2fs
soluciones de trabajo convencionales .La solución general que he vinculado funcionará en cualquier tipo de solución dedicada o VPS, por ejemplo.
TLDR; Esta solución implica a
pivot_root
paratmpfs
que puedaumount
vivir de forma segura su partición raíz y jugar con ella. Una vez hecho esto, volveráspivot_root
a tu nueva partición raíz.Esto permite prácticamente cualquier manipulación en el sistema de archivos raíz (moverlo, cambiar el sistema de archivos, cambiar su dispositivo físico ...).
Personalmente, he usado esto, y también funciona muy bien en el sistema Debian, pero la guía se escribió inicialmente en 2007 para redhat, la respuesta que he vinculado se actualizó para CentOS7. Es muy probable que funcione en su OpenSUSE, aunque probablemente con alguna adaptación.
fuente
Si el caso es un servidor remoto sin consola, puede reducir el sistema de archivos usando initramfs mientras reinicia. Debe agregar resize2fs a initramfs y ejecutarlo antes de montar root.
Ejemplo de Debian / Ubuntu:
/ etc / initramfs-tools / hooks / resizefs (ejecutable):
/ etc / initramfs-tools / scripts / local-premount / resizefs (ejecutable)
Ahora ejecute update-initramfs, reinicie, verifique el tamaño, elimine estos scripts y actualice-intiramfs nuevamente.
Para dracut (Fedora, CentOS) use la misma lógica (/usr/lib/dracut/modules.d).
Esto es muy útil para encriptar o mover rootfs, sin espacio libre disponible para la nueva partición.
fuente
update-grub
.