summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--daemon/lvm.c18
-rwxr-xr-xsrc/generator.ml8
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