Forum Discussion
Sep 22, 2016
The partitions are actually each a set of logical volumes. Before the free space on a logical volume can be checked it's need to be mounted. I wrote a little perl script that can help you get this info.
!/usr/bin/perl -W
use strict;
my $lvs = '/sbin/lvs';
open(FH,"$lvs|");
while() {
if(/([A-Za-z0-9\.-_]+)\s+([A-Za-z0-9\.\-_]+)\s+([a-z\-]+)/) {
if($3 eq "-wi-a----") {
lv_usage($1,$2);
}
else {
df_usage($1,$2);
}
}
}
close FH;
sub lv_usage {
my $lv = shift;
my $vg = shift;
print "\nDisk usage for $lv\n";
mkdir "/mnt/$lv";
system("/bin/mount /dev/$vg/$lv /mnt/$lv -o ro,user");
system("/bin/df -h /mnt/$lv");
system("/bin/umount /mnt/$lv");
rmdir "/mnt/$lv";
}
sub df_usage {
my $lv = shift;
my $vg = shift;
print "\nDisk usage for $lv\n";
system("/bin/df -h /dev/$vg/$lv");
}
The output shows something like this:
[root@nielsvs-bigip:ModuleNotLicensed:Active:Standalone] ~ ./lvm-check-free-space.pl
Disk usage for app.ASWADB.set.1.mysqldb
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-app.ASWADB.set.1.mysqldb
12G 680M 11G 6% /mnt/app.ASWADB.set.1.mysqldb
Disk usage for app.ASWADB.set.2.mysqldb
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-app.ASWADB.set.2.mysqldb
12G 753M 11G 7% /var/lib/mysql
Disk usage for app.afm.dat.afmdata
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-app.afm.dat.afmdata
3.8G 65M 3.5G 2% /shared/avr_afm
Disk usage for app.asm.dat.asmdata
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-app.asm.dat.asmdata
3.8G 65M 3.5G 2% /var/asm
Disk usage for app.avr.dat.avrdata
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-app.avr.dat.avrdata
3.8G 65M 3.5G 2% /shared/avr
Disk usage for dat.log.1
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-dat.log.1
485M 68M 392M 15% /var/log
Disk usage for dat.maint.1
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-dat.maint.1
291M 11M 266M 4% /mnt/dat.maint.1
Disk usage for dat.share.1
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-dat.share.1
20G 3.5G 16G 19% /shared
Disk usage for dat.swapvol.1
Filesystem Size Used Avail Use% Mounted on
- 4.0G 212K 4.0G 1% /dev
Disk usage for set.1._config
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-set.1._config
3.1G 367M 2.6G 13% /mnt/set.1._config
Disk usage for set.1._usr
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-set.1._usr
3.2G 1.9G 1.2G 62% /mnt/set.1._usr
Disk usage for set.1._var
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-set.1._var
3.1G 1.1G 1.9G 36% /mnt/set.1._var
Disk usage for set.1.root
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-set.1.root
380M 212M 149M 59% /mnt/set.1.root
Disk usage for set.2._config
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-set.2._config
3.2G 373M 2.6G 13% /config
Disk usage for set.2._usr
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-set.2._usr
3.3G 2.2G 970M 70% /usr
Disk usage for set.2._var
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-set.2._var
3.0G 1.9G 995M 66% /var
Disk usage for set.2.root
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg--db--sda-set.2.root
427M 179M 226M 45% /
[root@nielsvs-bigip:ModuleNotLicensed:Active:Standalone] ~
DISCLAIMER: Use at own risk 😉