+#. type: textblock
+#: ../src/guestfs-actions.pod:7257 ../fish/guestfish-actions.pod:4815
+msgid ""
+"C<mtsecs, mtnsecs> are the last modification time (mtime) in secs and "
+"nanoseconds from the epoch."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7260 ../fish/guestfish-actions.pod:4818
+msgid ""
+"If the C<*nsecs> field contains the special value C<-1> then the "
+"corresponding timestamp is set to the current time. (The C<*secs> field is "
+"ignored in this case)."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7264 ../fish/guestfish-actions.pod:4822
+msgid ""
+"If the C<*nsecs> field contains the special value C<-2> then the "
+"corresponding timestamp is left unchanged. (The C<*secs> field is ignored "
+"in this case)."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7272 ../src/guestfs-structs.pod:175
+msgid "guestfs_version"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7274
+#, no-wrap
+msgid ""
+" struct guestfs_version *\n"
+" guestfs_version (guestfs_h *g);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7277 ../fish/guestfish-actions.pod:4830
+msgid "Return the libguestfs version number that the program is linked against."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7280 ../fish/guestfish-actions.pod:4833
+msgid ""
+"Note that because of dynamic linking this is not necessarily the version of "
+"libguestfs that you compiled against. You can compile the program, and then "
+"at runtime dynamically link against a completely different C<libguestfs.so> "
+"library."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7285 ../fish/guestfish-actions.pod:4838
+msgid ""
+"This call was added in version C<1.0.58>. In previous versions of "
+"libguestfs there was no way to get the version number. From C code you can "
+"use dynamic linker functions to find out if this symbol exists (if it "
+"doesn't, then it's an earlier version)."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7291 ../fish/guestfish-actions.pod:4844
+msgid ""
+"The call returns a structure with four elements. The first three (C<major>, "
+"C<minor> and C<release>) are numbers and correspond to the usual version "
+"triplet. The fourth element (C<extra>) is a string and is normally empty, "
+"but may be used for distro-specific information."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7297 ../fish/guestfish-actions.pod:4850
+msgid "To construct the original version string: C<$major.$minor.$release$extra>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7300 ../fish/guestfish-actions.pod:4853
+msgid "See also: L<guestfs(3)/LIBGUESTFS VERSION NUMBERS>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7302
+msgid ""
+"I<Note:> Don't use this call to test for availability of features. In "
+"enterprise distributions we backport features from later versions into "
+"earlier versions, making this an unreliable way to test for features. Use "
+"C<guestfs_available> instead."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7308
+msgid ""
+"This function returns a C<struct guestfs_version *>, or NULL if there was an "
+"error. I<The caller must call C<guestfs_free_version> after use>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7312
+msgid "(Added in 1.0.58)"
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7314
+msgid "guestfs_vfs_label"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7316
+#, no-wrap
+msgid ""
+" char *\n"
+" guestfs_vfs_label (guestfs_h *g,\n"
+" const char *device);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7320 ../fish/guestfish-actions.pod:4865
+msgid "This returns the filesystem label of the filesystem on C<device>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7323 ../fish/guestfish-actions.pod:4868
+msgid "If the filesystem is unlabeled, this returns the empty string."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7325
+msgid "To find a filesystem from the label, use C<guestfs_findfs_label>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7330 ../src/guestfs-actions.pod:7367
+msgid "(Added in 1.3.18)"
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7332
+msgid "guestfs_vfs_type"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7334
+#, no-wrap
+msgid ""
+" char *\n"
+" guestfs_vfs_type (guestfs_h *g,\n"
+" const char *device);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7338 ../fish/guestfish-actions.pod:4876
+msgid ""
+"This command gets the filesystem type corresponding to the filesystem on "
+"C<device>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7341 ../fish/guestfish-actions.pod:4879
+msgid ""
+"For most filesystems, the result is the name of the Linux VFS module which "
+"would be used to mount this filesystem if you mounted it without specifying "
+"the filesystem type. For example a string such as C<ext3> or C<ntfs>."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7351
+msgid "guestfs_vfs_uuid"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7353
+#, no-wrap
+msgid ""
+" char *\n"
+" guestfs_vfs_uuid (guestfs_h *g,\n"
+" const char *device);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7357 ../fish/guestfish-actions.pod:4888
+msgid "This returns the filesystem UUID of the filesystem on C<device>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7360 ../fish/guestfish-actions.pod:4891
+msgid "If the filesystem does not have a UUID, this returns the empty string."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7362
+msgid "To find a filesystem from the UUID, use C<guestfs_findfs_uuid>."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7369
+msgid "guestfs_vg_activate"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7371
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_vg_activate (guestfs_h *g,\n"
+" int activate,\n"
+" char *const *volgroups);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7376 ../fish/guestfish-actions.pod:4899
+msgid ""
+"This command activates or (if C<activate> is false) deactivates all logical "
+"volumes in the listed volume groups C<volgroups>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7379 ../fish/guestfish-actions.pod:4902
+msgid "This command is the same as running C<vgchange -a y|n volgroups...>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7381 ../fish/guestfish-actions.pod:4904
+msgid ""
+"Note that if C<volgroups> is an empty list then B<all> volume groups are "
+"activated or deactivated."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7388
+msgid "guestfs_vg_activate_all"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7390
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_vg_activate_all (guestfs_h *g,\n"
+" int activate);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7394 ../fish/guestfish-actions.pod:4911
+msgid ""
+"This command activates or (if C<activate> is false) deactivates all logical "
+"volumes in all volume groups."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7397 ../fish/guestfish-actions.pod:4914
+msgid "This command is the same as running C<vgchange -a y|n>"
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7403
+msgid "guestfs_vgcreate"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7405
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_vgcreate (guestfs_h *g,\n"
+" const char *volgroup,\n"
+" char *const *physvols);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7410 ../fish/guestfish-actions.pod:4920
+msgid ""
+"This creates an LVM volume group called C<volgroup> from the non-empty list "
+"of physical volumes C<physvols>."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7417
+msgid "guestfs_vglvuuids"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7419
+#, no-wrap
+msgid ""
+" char **\n"
+" guestfs_vglvuuids (guestfs_h *g,\n"
+" const char *vgname);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7423 ../fish/guestfish-actions.pod:4927
+msgid ""
+"Given a VG called C<vgname>, this returns the UUIDs of all the logical "
+"volumes created in this volume group."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7426
+msgid ""
+"You can use this along with C<guestfs_lvs> and C<guestfs_lvuuid> calls to "
+"associate logical volumes and volume groups."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7429
+msgid "See also C<guestfs_vgpvuuids>."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7437
+msgid "guestfs_vgpvuuids"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7439
+#, no-wrap
+msgid ""
+" char **\n"
+" guestfs_vgpvuuids (guestfs_h *g,\n"
+" const char *vgname);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7443 ../fish/guestfish-actions.pod:4939
+msgid ""
+"Given a VG called C<vgname>, this returns the UUIDs of all the physical "
+"volumes that this volume group resides on."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7446
+msgid ""
+"You can use this along with C<guestfs_pvs> and C<guestfs_pvuuid> calls to "
+"associate physical volumes and volume groups."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7449
+msgid "See also C<guestfs_vglvuuids>."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7457
+msgid "guestfs_vgremove"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7459
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_vgremove (guestfs_h *g,\n"
+" const char *vgname);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7463 ../fish/guestfish-actions.pod:4951
+msgid "Remove an LVM volume group C<vgname>, (for example C<VG>)."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7465 ../fish/guestfish-actions.pod:4953
+msgid "This also forcibly removes all logical volumes in the volume group (if any)."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7472
+msgid "guestfs_vgrename"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7474
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_vgrename (guestfs_h *g,\n"
+" const char *volgroup,\n"
+" const char *newvolgroup);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7479 ../fish/guestfish-actions.pod:4960
+msgid "Rename a volume group C<volgroup> with the new name C<newvolgroup>."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7485
+msgid "guestfs_vgs"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7487
+#, no-wrap
+msgid ""
+" char **\n"
+" guestfs_vgs (guestfs_h *g);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7490 ../fish/guestfish-actions.pod:4966
+msgid ""
+"List all the volumes groups detected. This is the equivalent of the "
+"L<vgs(8)> command."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7493 ../fish/guestfish-actions.pod:4969
+msgid ""
+"This returns a list of just the volume group names that were detected "
+"(eg. C<VolGroup00>)."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7496
+msgid "See also C<guestfs_vgs_full>."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7504
+msgid "guestfs_vgs_full"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7506
+#, no-wrap
+msgid ""
+" struct guestfs_lvm_vg_list *\n"
+" guestfs_vgs_full (guestfs_h *g);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7509 ../fish/guestfish-actions.pod:4978
+msgid ""
+"List all the volumes groups detected. This is the equivalent of the "
+"L<vgs(8)> command. The \"full\" version includes all fields."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7512
+msgid ""
+"This function returns a C<struct guestfs_lvm_vg_list *>, or NULL if there "
+"was an error. I<The caller must call C<guestfs_free_lvm_vg_list> after "
+"use>."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7518
+msgid "guestfs_vgscan"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7520
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_vgscan (guestfs_h *g);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7523 ../fish/guestfish-actions.pod:4985
+msgid ""
+"This rescans all block devices and rebuilds the list of LVM physical "
+"volumes, volume groups and logical volumes."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7530
+msgid "guestfs_vguuid"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7532
+#, no-wrap
+msgid ""
+" char *\n"
+" guestfs_vguuid (guestfs_h *g,\n"
+" const char *vgname);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7536 ../fish/guestfish-actions.pod:4992
+msgid "This command returns the UUID of the LVM VG named C<vgname>."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7543
+msgid "guestfs_wait_ready"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7545
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_wait_ready (guestfs_h *g);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7548
+msgid "This function is a no op."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7550
+msgid ""
+"In versions of the API E<lt> 1.0.71 you had to call this function just after "
+"calling C<guestfs_launch> to wait for the launch to complete. However this "
+"is no longer necessary because C<guestfs_launch> now does the waiting."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7555
+msgid ""
+"If you see any calls to this function in code then you can just remove them, "
+"unless you want to retain compatibility with older versions of the API."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7561
+msgid "This function is deprecated. In new code, use the C<launch> call instead."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7570
+msgid "guestfs_wc_c"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7572
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_wc_c (guestfs_h *g,\n"
+" const char *path);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7576 ../fish/guestfish-actions.pod:4998
+msgid ""
+"This command counts the characters in a file, using the C<wc -c> external "
+"command."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7583
+msgid "guestfs_wc_l"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7585
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_wc_l (guestfs_h *g,\n"
+" const char *path);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7589 ../fish/guestfish-actions.pod:5005
+msgid ""
+"This command counts the lines in a file, using the C<wc -l> external "
+"command."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7596
+msgid "guestfs_wc_w"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7598
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_wc_w (guestfs_h *g,\n"
+" const char *path);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7602 ../fish/guestfish-actions.pod:5012
+msgid ""
+"This command counts the words in a file, using the C<wc -w> external "
+"command."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7609
+msgid "guestfs_write"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7611
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_write (guestfs_h *g,\n"
+" const char *path,\n"
+" const char *content,\n"
+" size_t content_size);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7617 ../fish/guestfish-actions.pod:5019
+msgid ""
+"This call creates a file called C<path>. The content of the file is the "
+"string C<content> (which can contain any 8 bit data)."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7627
+msgid "guestfs_write_file"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7629
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_write_file (guestfs_h *g,\n"
+" const char *path,\n"
+" const char *content,\n"
+" int size);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7635 ../fish/guestfish-actions.pod:5029
+msgid ""
+"This call creates a file called C<path>. The contents of the file is the "
+"string C<content> (which can contain any 8 bit data), with length C<size>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7639 ../fish/guestfish-actions.pod:5033
+msgid ""
+"As a special case, if C<size> is C<0> then the length is calculated using "
+"C<strlen> (so in this case the content cannot contain embedded ASCII NULs)."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7643 ../fish/guestfish-actions.pod:5037
+msgid ""
+"I<NB.> Owing to a bug, writing content containing ASCII NUL characters does "
+"I<not> work, even if the length is specified."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7651 ../fish/guestfish-actions.pod:5043
+msgid "This function is deprecated. In new code, use the C<write> call instead."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7660
+msgid "guestfs_zegrep"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7662
+#, no-wrap
+msgid ""
+" char **\n"
+" guestfs_zegrep (guestfs_h *g,\n"
+" const char *regex,\n"
+" const char *path);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7667 ../fish/guestfish-actions.pod:5054
+msgid "This calls the external C<zegrep> program and returns the matching lines."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7679
+msgid "guestfs_zegrepi"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7681
+#, no-wrap
+msgid ""
+" char **\n"
+" guestfs_zegrepi (guestfs_h *g,\n"
+" const char *regex,\n"
+" const char *path);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7686 ../fish/guestfish-actions.pod:5064
+msgid "This calls the external C<zegrep -i> program and returns the matching lines."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7698
+msgid "guestfs_zero"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7700
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_zero (guestfs_h *g,\n"
+" const char *device);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7704 ../fish/guestfish-actions.pod:5074
+msgid "This command writes zeroes over the first few blocks of C<device>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7706 ../fish/guestfish-actions.pod:5076
+msgid ""
+"How many blocks are zeroed isn't specified (but it's I<not> enough to "
+"securely wipe the device). It should be sufficient to remove any partition "
+"tables, filesystem superblocks and so on."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7710
+msgid ""
+"See also: C<guestfs_zero_device>, C<guestfs_scrub_device>, "
+"C<guestfs_is_zero_device>"
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7722
+msgid "guestfs_zero_device"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7724
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_zero_device (guestfs_h *g,\n"
+" const char *device);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7728
+msgid ""
+"This command writes zeroes over the entire C<device>. Compare with "
+"C<guestfs_zero> which just zeroes the first few blocks of a device."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7742
+msgid "(Added in 1.3.1)"
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7744
+msgid "guestfs_zerofree"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7746
+#, no-wrap
+msgid ""
+" int\n"
+" guestfs_zerofree (guestfs_h *g,\n"
+" const char *device);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7750 ../fish/guestfish-actions.pod:5098
+msgid ""
+"This runs the I<zerofree> program on C<device>. This program claims to zero "
+"unused inodes and disk blocks on an ext2/3 filesystem, thus making it "
+"possible to compress the filesystem more effectively."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7755 ../fish/guestfish-actions.pod:5103
+msgid "You should B<not> run this program if the filesystem is mounted."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7758 ../fish/guestfish-actions.pod:5106
+msgid ""
+"It is possible that using this program can damage the filesystem or data on "
+"the filesystem."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7765
+msgid "guestfs_zfgrep"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7767
+#, no-wrap
+msgid ""
+" char **\n"
+" guestfs_zfgrep (guestfs_h *g,\n"
+" const char *pattern,\n"
+" const char *path);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7772 ../fish/guestfish-actions.pod:5113
+msgid "This calls the external C<zfgrep> program and returns the matching lines."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7784
+msgid "guestfs_zfgrepi"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7786
+#, no-wrap
+msgid ""
+" char **\n"
+" guestfs_zfgrepi (guestfs_h *g,\n"
+" const char *pattern,\n"
+" const char *path);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7791 ../fish/guestfish-actions.pod:5123
+msgid "This calls the external C<zfgrep -i> program and returns the matching lines."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7803
+msgid "guestfs_zfile"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7805
+#, no-wrap
+msgid ""
+" char *\n"
+" guestfs_zfile (guestfs_h *g,\n"
+" const char *meth,\n"
+" const char *path);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7810 ../fish/guestfish-actions.pod:5133
+msgid "This command runs C<file> after first decompressing C<path> using C<method>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7813 ../fish/guestfish-actions.pod:5136
+msgid "C<method> must be one of C<gzip>, C<compress> or C<bzip2>."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7815
+msgid ""
+"Since 1.0.63, use C<guestfs_file> instead which can now process compressed "
+"files."
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7821 ../fish/guestfish-actions.pod:5141
+msgid "This function is deprecated. In new code, use the C<file> call instead."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7830
+msgid "guestfs_zgrep"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7832
+#, no-wrap
+msgid ""
+" char **\n"
+" guestfs_zgrep (guestfs_h *g,\n"
+" const char *regex,\n"
+" const char *path);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7837 ../fish/guestfish-actions.pod:5152
+msgid "This calls the external C<zgrep> program and returns the matching lines."
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-actions.pod:7849
+msgid "guestfs_zgrepi"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-actions.pod:7851
+#, no-wrap
+msgid ""
+" char **\n"
+" guestfs_zgrepi (guestfs_h *g,\n"
+" const char *regex,\n"
+" const char *path);\n"
+"\n"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-actions.pod:7856 ../fish/guestfish-actions.pod:5162
+msgid "This calls the external C<zgrep -i> program and returns the matching lines."
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:3
+msgid "B<augeas>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:5
+msgid ""
+"The following functions: L</guestfs_aug_clear> L</guestfs_aug_close> "
+"L</guestfs_aug_defnode> L</guestfs_aug_defvar> L</guestfs_aug_get> "
+"L</guestfs_aug_init> L</guestfs_aug_insert> L</guestfs_aug_load> "
+"L</guestfs_aug_ls> L</guestfs_aug_match> L</guestfs_aug_mv> "
+"L</guestfs_aug_rm> L</guestfs_aug_save> L</guestfs_aug_set>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:21
+msgid "B<btrfs>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:23
+msgid "The following functions: L</guestfs_btrfs_filesystem_resize>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:26
+msgid "B<inotify>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:28
+msgid ""
+"The following functions: L</guestfs_inotify_add_watch> "
+"L</guestfs_inotify_close> L</guestfs_inotify_files> L</guestfs_inotify_init> "
+"L</guestfs_inotify_read> L</guestfs_inotify_rm_watch>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:36
+msgid "B<linuxfsuuid>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:38
+msgid ""
+"The following functions: L</guestfs_mke2fs_JU> L</guestfs_mke2journal_U> "
+"L</guestfs_mkswap_U> L</guestfs_swapoff_uuid> L</guestfs_swapon_uuid>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:45
+msgid "B<linuxmodules>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:47
+msgid "The following functions: L</guestfs_modprobe>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:50
+msgid "B<linuxxattrs>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:52
+msgid ""
+"The following functions: L</guestfs_getxattr> L</guestfs_getxattrs> "
+"L</guestfs_lgetxattr> L</guestfs_lgetxattrs> L</guestfs_lremovexattr> "
+"L</guestfs_lsetxattr> L</guestfs_lxattrlist> L</guestfs_removexattr> "
+"L</guestfs_setxattr>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:63
+msgid "B<luks>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:65
+msgid ""
+"The following functions: L</guestfs_luks_add_key> L</guestfs_luks_close> "
+"L</guestfs_luks_format> L</guestfs_luks_format_cipher> "
+"L</guestfs_luks_kill_slot> L</guestfs_luks_open> L</guestfs_luks_open_ro>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:74
+msgid "B<lvm2>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:76
+msgid ""
+"The following functions: L</guestfs_is_lv> L</guestfs_lvcreate> "
+"L</guestfs_lvm_remove_all> L</guestfs_lvm_set_filter> L</guestfs_lvremove> "
+"L</guestfs_lvresize> L</guestfs_lvresize_free> L</guestfs_lvs> "
+"L</guestfs_lvs_full> L</guestfs_pvcreate> L</guestfs_pvremove> "
+"L</guestfs_pvresize> L</guestfs_pvresize_size> L</guestfs_pvs> "
+"L</guestfs_pvs_full> L</guestfs_vg_activate> L</guestfs_vg_activate_all> "
+"L</guestfs_vgcreate> L</guestfs_vgremove> L</guestfs_vgs> "
+"L</guestfs_vgs_full>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:99
+msgid "B<mknod>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:101
+msgid ""
+"The following functions: L</guestfs_mkfifo> L</guestfs_mknod> "
+"L</guestfs_mknod_b> L</guestfs_mknod_c>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:107
+msgid "B<ntfs3g>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:109
+msgid "The following functions: L</guestfs_ntfs_3g_probe>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:112
+msgid "B<ntfsprogs>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:114
+msgid ""
+"The following functions: L</guestfs_ntfsresize> L</guestfs_ntfsresize_opts> "
+"L</guestfs_ntfsresize_size>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:119
+msgid "B<realpath>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:121
+msgid "The following functions: L</guestfs_realpath>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:124
+msgid "B<scrub>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:126
+msgid ""
+"The following functions: L</guestfs_scrub_device> L</guestfs_scrub_file> "
+"L</guestfs_scrub_freespace>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:131
+msgid "B<selinux>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:133
+msgid "The following functions: L</guestfs_getcon> L</guestfs_setcon>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:137
+msgid "B<xz>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:139
+msgid "The following functions: L</guestfs_txz_in> L</guestfs_txz_out>"
+msgstr ""
+
+#. type: =item
+#: ../src/guestfs-availability.pod:143
+msgid "B<zerofree>"
+msgstr ""
+
+#. type: textblock
+#: ../src/guestfs-availability.pod:145
+msgid "The following functions: L</guestfs_zerofree>"
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-structs.pod:1
+msgid "guestfs_int_bool"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:3
+#, no-wrap
+msgid ""
+" struct guestfs_int_bool {\n"
+" int32_t i;\n"
+" int32_t b;\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:8
+#, no-wrap
+msgid ""
+" struct guestfs_int_bool_list {\n"
+" uint32_t len; /* Number of elements in list. */\n"
+" struct guestfs_int_bool *val; /* Elements. */\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:13
+#, no-wrap
+msgid ""
+" void guestfs_free_int_bool (struct guestfs_free_int_bool *);\n"
+" void guestfs_free_int_bool_list (struct guestfs_free_int_bool_list *);\n"
+"\n"
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-structs.pod:16
+msgid "guestfs_lvm_pv"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:18
+#, no-wrap
+msgid ""
+" struct guestfs_lvm_pv {\n"
+" char *pv_name;\n"
+" /* The next field is NOT nul-terminated, be careful when printing it: "
+"*/\n"
+" char pv_uuid[32];\n"
+" char *pv_fmt;\n"
+" uint64_t pv_size;\n"
+" uint64_t dev_size;\n"
+" uint64_t pv_free;\n"
+" uint64_t pv_used;\n"
+" char *pv_attr;\n"
+" int64_t pv_pe_count;\n"
+" int64_t pv_pe_alloc_count;\n"
+" char *pv_tags;\n"
+" uint64_t pe_start;\n"
+" int64_t pv_mda_count;\n"
+" uint64_t pv_mda_free;\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:36
+#, no-wrap
+msgid ""
+" struct guestfs_lvm_pv_list {\n"
+" uint32_t len; /* Number of elements in list. */\n"
+" struct guestfs_lvm_pv *val; /* Elements. */\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:41
+#, no-wrap
+msgid ""
+" void guestfs_free_lvm_pv (struct guestfs_free_lvm_pv *);\n"
+" void guestfs_free_lvm_pv_list (struct guestfs_free_lvm_pv_list *);\n"
+"\n"
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-structs.pod:44
+msgid "guestfs_lvm_vg"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:46
+#, no-wrap
+msgid ""
+" struct guestfs_lvm_vg {\n"
+" char *vg_name;\n"
+" /* The next field is NOT nul-terminated, be careful when printing it: "
+"*/\n"
+" char vg_uuid[32];\n"
+" char *vg_fmt;\n"
+" char *vg_attr;\n"
+" uint64_t vg_size;\n"
+" uint64_t vg_free;\n"
+" char *vg_sysid;\n"
+" uint64_t vg_extent_size;\n"
+" int64_t vg_extent_count;\n"
+" int64_t vg_free_count;\n"
+" int64_t max_lv;\n"
+" int64_t max_pv;\n"
+" int64_t pv_count;\n"
+" int64_t lv_count;\n"
+" int64_t snap_count;\n"
+" int64_t vg_seqno;\n"
+" char *vg_tags;\n"
+" int64_t vg_mda_count;\n"
+" uint64_t vg_mda_free;\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:69
+#, no-wrap
+msgid ""
+" struct guestfs_lvm_vg_list {\n"
+" uint32_t len; /* Number of elements in list. */\n"
+" struct guestfs_lvm_vg *val; /* Elements. */\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:74
+#, no-wrap
+msgid ""
+" void guestfs_free_lvm_vg (struct guestfs_free_lvm_vg *);\n"
+" void guestfs_free_lvm_vg_list (struct guestfs_free_lvm_vg_list *);\n"
+"\n"
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-structs.pod:77
+msgid "guestfs_lvm_lv"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:79
+#, no-wrap
+msgid ""
+" struct guestfs_lvm_lv {\n"
+" char *lv_name;\n"
+" /* The next field is NOT nul-terminated, be careful when printing it: "
+"*/\n"
+" char lv_uuid[32];\n"
+" char *lv_attr;\n"
+" int64_t lv_major;\n"
+" int64_t lv_minor;\n"
+" int64_t lv_kernel_major;\n"
+" int64_t lv_kernel_minor;\n"
+" uint64_t lv_size;\n"
+" int64_t seg_count;\n"
+" char *origin;\n"
+" /* The next field is [0..100] or -1 meaning 'not present': */\n"
+" float snap_percent;\n"
+" /* The next field is [0..100] or -1 meaning 'not present': */\n"
+" float copy_percent;\n"
+" char *move_pv;\n"
+" char *lv_tags;\n"
+" char *mirror_log;\n"
+" char *modules;\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:101
+#, no-wrap
+msgid ""
+" struct guestfs_lvm_lv_list {\n"
+" uint32_t len; /* Number of elements in list. */\n"
+" struct guestfs_lvm_lv *val; /* Elements. */\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:106
+#, no-wrap
+msgid ""
+" void guestfs_free_lvm_lv (struct guestfs_free_lvm_lv *);\n"
+" void guestfs_free_lvm_lv_list (struct guestfs_free_lvm_lv_list *);\n"
+"\n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:111
+#, no-wrap
+msgid ""
+" struct guestfs_stat {\n"
+" int64_t dev;\n"
+" int64_t ino;\n"
+" int64_t mode;\n"
+" int64_t nlink;\n"
+" int64_t uid;\n"
+" int64_t gid;\n"
+" int64_t rdev;\n"
+" int64_t size;\n"
+" int64_t blksize;\n"
+" int64_t blocks;\n"
+" int64_t atime;\n"
+" int64_t mtime;\n"
+" int64_t ctime;\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:127
+#, no-wrap
+msgid ""
+" struct guestfs_stat_list {\n"
+" uint32_t len; /* Number of elements in list. */\n"
+" struct guestfs_stat *val; /* Elements. */\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:132
+#, no-wrap
+msgid ""
+" void guestfs_free_stat (struct guestfs_free_stat *);\n"
+" void guestfs_free_stat_list (struct guestfs_free_stat_list *);\n"
+"\n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:137
+#, no-wrap
+msgid ""
+" struct guestfs_statvfs {\n"
+" int64_t bsize;\n"
+" int64_t frsize;\n"
+" int64_t blocks;\n"
+" int64_t bfree;\n"
+" int64_t bavail;\n"
+" int64_t files;\n"
+" int64_t ffree;\n"
+" int64_t favail;\n"
+" int64_t fsid;\n"
+" int64_t flag;\n"
+" int64_t namemax;\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:151
+#, no-wrap
+msgid ""
+" struct guestfs_statvfs_list {\n"
+" uint32_t len; /* Number of elements in list. */\n"
+" struct guestfs_statvfs *val; /* Elements. */\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:156
+#, no-wrap
+msgid ""
+" void guestfs_free_statvfs (struct guestfs_free_statvfs *);\n"
+" void guestfs_free_statvfs_list (struct guestfs_free_statvfs_list *);\n"
+"\n"
+msgstr ""
+
+#. type: =head2
+#: ../src/guestfs-structs.pod:159
+msgid "guestfs_dirent"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:161
+#, no-wrap
+msgid ""
+" struct guestfs_dirent {\n"
+" int64_t ino;\n"
+" char ftyp;\n"
+" char *name;\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:167
+#, no-wrap
+msgid ""
+" struct guestfs_dirent_list {\n"
+" uint32_t len; /* Number of elements in list. */\n"
+" struct guestfs_dirent *val; /* Elements. */\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:172
+#, no-wrap
+msgid ""
+" void guestfs_free_dirent (struct guestfs_free_dirent *);\n"
+" void guestfs_free_dirent_list (struct guestfs_free_dirent_list *);\n"
+"\n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:177
+#, no-wrap
+msgid ""
+" struct guestfs_version {\n"
+" int64_t major;\n"
+" int64_t minor;\n"
+" int64_t release;\n"
+" char *extra;\n"
+" };\n"
+" \n"
+msgstr ""
+
+#. type: verbatim
+#: ../src/guestfs-structs.pod:184
+#, no-wrap
+msgid ""
+" struct guestfs_version_list {\n"
+" uint32_t len; /* Number of elements in list. */\n"
+" struct guestfs_version *val; /* Elements. */\n"
+" };\n"
+" \n"