summaryrefslogtreecommitdiffstats
path: root/perl/examples/lvs.pl
diff options
context:
space:
mode:
Diffstat (limited to 'perl/examples/lvs.pl')
-rwxr-xr-xperl/examples/lvs.pl29
1 files changed, 29 insertions, 0 deletions
diff --git a/perl/examples/lvs.pl b/perl/examples/lvs.pl
new file mode 100755
index 00000000..152db088
--- /dev/null
+++ b/perl/examples/lvs.pl
@@ -0,0 +1,29 @@
+#!/usr/bin/perl -w
+
+use strict;
+
+use Sys::Guestfs;
+
+# Look for LVM LVs, VGs and PVs in a guest image.
+
+die "Usage: lvs.pl guest.img\n" if @ARGV != 1 || ! -f $ARGV[0];
+
+print "Creating the libguestfs handle\n";
+my $h = Sys::Guestfs->new ();
+$h->add_drive ($ARGV[0]);
+
+print "Launching, this can take a few seconds\n";
+$h->launch ();
+$h->wait_ready ();
+
+print "Looking for PVs on the disk image\n";
+my @pvs = $h->pvs ();
+print "PVs found: (", join (", ", @pvs), ")\n";
+
+print "Looking for VGs on the disk image\n";
+my @vgs = $h->vgs ();
+print "VGs found: (", join (", ", @vgs), ")\n";
+
+print "Looking for LVs on the disk image\n";
+my @lvs = $h->lvs ();
+print "LVs found: (", join (", ", @lvs), ")\n";