Mehre LVMS Volumes online zu einem Zusammen führen
Beschreibung:
Unglücklicher weise, wurde ien System aus mehreren LVM Volumes a 4GB Größe gebaut.
Das eigentliche root System aht dadurch viel zu wenig Platz.
jetzt wollen wir die anderen LVM Volumes wieder Auflösen und die Daten migrieren auf das root Laufwerk.
Ausgangspunkt:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 72G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 8G 0 part [SWAP]
└─sda3 8:3 0 63G 0 part
├─rootvg-lvroot 253:0 0 3G 0 lvm /
├─rootvg-lvusr 253:1 0 6G 0 lvm /usr
├─rootvg-lvhome 253:2 0 1G 0 lvm /home
├─rootvg-lvsrv 253:3 0 1G 0 lvm /srv
├─rootvg-lvopt 253:4 0 1G 0 lvm /opt
├─rootvg-lvvar 253:5 0 4G 0 lvm /var
├─rootvg-lvlog 253:6 0 4G 0 lvm /var/log
└─rootvg-lvtmp 253:7 0 4G 0 lvm /tmp
Wir wollen alle lvs-* loswerden bis auf lvroot und das mit der Gesamtkapazität wachsen lassen.
Durchführung:
Wir starten mit dem TMP Laufwerk.
Dazu erst die Daten in ein Zwischenverzeichnis kopieren.
Hoffentlich ist auf root dann dafür auch noch genug Platz....
rsync -aAXv /tmp/ /home/tmp_backup/
Nun das Laufwerk aushängen. Da es ja benutzt wird mit dem befehl -l für lazy
umount /tmp -l
Nun die Daten aus unserem zwischenverzeichnis in das ursprüngliche Verzeichnis zurückkopieren.
rsync -aAXv /home/tmp_backup/ /tmp/
Falls in der fstab das Laufwerk zum Automount drin steht dieses entfernen und das System neustarten.
nano /etc/fstab
Nun folgendes abändern bzw auskommentieren, hier unser TMP Verzeichnis
/dev/mapper/rootvg-lvopt /opt xfs defaults 0 0
/dev/mapper/rootvg-lvsrv /srv xfs defaults 0 0
/dev/mapper/rootvg-lvtmp /tmp xfs defaults 0 0
/dev/mapper/rootvg-lvusr /usr xfs defaults 0 0
/dev/mapper/rootvg-lvvar /var xfs defaults 0 0
zu
/dev/mapper/rootvg-lvopt /opt xfs defaults 0 0
/dev/mapper/rootvg-lvsrv /srv xfs defaults 0 0
# /dev/mapper/rootvg-lvtmp /tmp xfs defaults 0 0
/dev/mapper/rootvg-lvusr /usr xfs defaults 0 0
/dev/mapper/rootvg-lvvar /var xfs defaults 0 0
Nun das System neustarten.
reboot
Nun kann das LV Volume gelöscht werden.
Vorher aber noch überpüfen, ob es gemountet ist, falls der unmount Befehl nicht gegriffen ahben sollte.
Wenn eine leere Ausgabe zurück kommt.
Wurde das Laufwerk ausgehängt
mount | grep lvtmp
Nun löschen, mit dem Paramter -f nutzen wir die zwingen Methode. Sicher ist sicher
lvremove -f /dev/rootvg/lvtmp
Ausgabe
Logical volume "lvtmp" successfully removed
Nun das lvroot erweitern
lvextend -l +100%FREE /dev/rootvg/lvroot
Nun nun ahben wir auch noch den restlichen freien Speicher der keinem Volume zugefügt wurde auch noch mit dran gehangen.
Siehe lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 72G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 8G 0 part [SWAP]
└─sda3 8:3 0 63G 0 part
├─rootvg-lvroot 253:0 0 45.8G 0 lvm /
├─rootvg-lvusr 253:1 0 6G 0 lvm /usr
├─rootvg-lvhome 253:2 0 1G 0 lvm /home
├─rootvg-lvsrv 253:3 0 1G 0 lvm /srv
├─rootvg-lvopt 253:4 0 1G 0 lvm /opt
├─rootvg-lvvar 253:5 0 4G 0 lvm /var
└─rootvg-lvlog 253:6 0 4G 0 lvm /var/log
Nun noch das Dateisystem vergößern.
mit df -h sehen wir die Zuordnung
[root@catl02v406 tmp]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 8.0K 3.9G 1% /dev/shm
tmpfs 3.9G 8.7M 3.9G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/mapper/rootvg-lvroot 3.0G 2.0G 1.1G 67% /
/dev/mapper/rootvg-lvusr 6.0G 6.0G 20K 100% /usr
/dev/mapper/rootvg-lvopt 1014M 40M 975M 4% /opt
/dev/mapper/rootvg-lvhome 1014M 927M 88M 92% /home
/dev/sda1 976M 202M 708M 23% /boot
/dev/mapper/rootvg-lvvar 4.0G 3.7G 354M 92% /var
/dev/mapper/rootvg-lvsrv 1014M 40M 975M 4% /srv
/dev/mapper/rootvg-lvlog 4.0G 345M 3.7G 9% /var/log
Dateisystem erweitern:
Überprüfen welches Dateisystem vorhanden ist:
file -sL /dev/rootvg/lvroot
Ausgabe, wie wir sehen XFS:
/dev/rootvg/lvroot: SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)
Asugabe: Wie wir sehen EXT2,EXT3,EXT4
/dev/rootvg/lvroot: Linux rev 1.0 ext4 filesystem data, UUID=[unique-UUID], volume name "lvroot" (needs journal recovery) (extents) (64bit) (large files) (huge files)
bei EXT2,EXt3,EXT4 benutzen wir e2fsck zum vergrößern
e2fsck -f /dev/rootvg/lvroot
Und bei XFS benutzen wir
xfs_growfs /dev/rootvg/lvroot
Nun sehen wir wieder mit df- h das, das Volume vergößert wurde.
[root@catl02v406 dev]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 8.0K 3.9G 1% /dev/shm
tmpfs 3.9G 8.7M 3.9G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/mapper/rootvg-lvroot 46G 2.3G 44G 6% /
/dev/mapper/rootvg-lvusr 6.0G 6.0G 20K 100% /usr
/dev/mapper/rootvg-lvopt 1014M 40M 975M 4% /opt
/dev/mapper/rootvg-lvhome 1014M 927M 88M 92% /home
/dev/sda1 976M 202M 708M 23% /boot
/dev/mapper/rootvg-lvvar 4.0G 3.7G 364M 92% /var
/dev/mapper/rootvg-lvsrv 1014M 40M 975M 4% /srv
/dev/mapper/rootvg-lvlog 4.0G 345M 3.7G 9% /var/log
Das ganze wiederholen wir für die anderen Volumes auch.