Ein ext2/3/4 Filesystem offline verkleinern

Ein Linux-Filesystem vom Typ ext2, ext3 oder ext4 in einem LVM2 kann online, d.h. während es gemounted ist und benutzt wird, vergrößert werden. Ein Verkleinern ist jedoch nur offline möglich.

Zunächst wird, wie bei allen Operationen am Storage-Subsystem, ein Backup aller Daten auf dem zu verkleinernden Device erstellt! Bitte beachtet auch den Hinweis zum Gewährleistungsausschluss im Impressum.

Zum Verkleinern werden Tools aus den Debian-Paketen e2fsprogs und lvm2 benötigt. Zunächst muss das Filesystem ausgehängt (umount) und geprüft (fsck) werden. Danach wird es auf eine Größe verkleinert (resize2fs), die etwas kleiner als die Zielgröße des Volumes ist. Dadurch soll verhindert werden, dass das Volume kleiner als das Filesystem wird; selbst wenige Bytes würden genügen, um das Filesystem zu beschädigen.

Danach kann dann das logische Volume auf seine Zielgröße verkleinert werden (lvresize). Das abschließende resize2fs vergrößert das Filesystem wieder etwas, so dass es genau zur Volumegröße passt.

#!/bin/sh

set -x

DEVICE=/dev/vgname/lvname
MOUNTPOINT=/srv/myvolume
SIZE=5G
TMPSIZE=4G

umount $MOUNTPOINT
fsck -f $DEVICE
resize2fs -p $DEVICE $TMPSIZE
lvresize -L $SIZE $DEVICE
resize2fs -p $DEVICE
mount $MOUNTPOINT