diff options
author | Richard Jones <rjones@redhat.com> | 2010-04-10 13:14:12 +0100 |
---|---|---|
committer | Richard Jones <rjones@redhat.com> | 2010-04-10 13:41:45 +0100 |
commit | 9752039e52d190c7d62281346fd2170a98434c86 (patch) | |
tree | 9d25e5b0c880bfdffddd8aa6d7e65502735b27be | |
parent | f8210da95888f0060b25dcca2ae299d5c16ff814 (diff) | |
download | libguestfs-9752039e52d190c7d62281346fd2170a98434c86.tar.gz libguestfs-9752039e52d190c7d62281346fd2170a98434c86.tar.xz libguestfs-9752039e52d190c7d62281346fd2170a98434c86.zip |
New API: vgscan
Implement vgscan to allow for a full rescan of all LVM
PVs, VGs and LVs.
-rw-r--r-- | daemon/lvm.c | 18 | ||||
-rwxr-xr-x | src/generator.ml | 8 |
2 files changed, 26 insertions, 0 deletions
diff --git a/daemon/lvm.c b/daemon/lvm.c index e4fa54e8..20f2fb33 100644 --- a/daemon/lvm.c +++ b/daemon/lvm.c @@ -594,3 +594,21 @@ do_vglvuuids (const char *vgname) { return get_lvm_fields ("vgs", "lv_uuid", vgname); } + +int +do_vgscan (void) +{ + char *err; + int r; + + r = command (NULL, &err, + "lvm", "vgscan", NULL); + if (r == -1) { + reply_with_error ("%s", err); + free (err); + return -1; + } + + free (err); + return 0; +} diff --git a/src/generator.ml b/src/generator.ml index 24b9bc0b..b423025c 100755 --- a/src/generator.ml +++ b/src/generator.ml @@ -4381,6 +4381,14 @@ This command resizes an NTFS filesystem, expanding or shrinking it to the size of the underlying device. See also L<ntfsresize(8)>."); + ("vgscan", (RErr, []), 232, [], + [InitEmpty, Always, TestRun ( + [["vgscan"]])], + "rescan for LVM physical volumes, volume groups and logical volumes", + "\ +This rescans all block devices and rebuilds the list of LVM +physical volumes, volume groups and logical volumes."); + ] let all_functions = non_daemon_functions @ daemon_functions |