3 char *guestfs_cat (guestfs_h *handle,
6 Return the contents of the file named C<path>.
8 Note that this function cannot correctly handle binary files
9 (specifically, files containing C<\0> character which is treated
10 as end of string). For those you need to use the C<guestfs_read_file>
11 function which has a more complex interface.
13 This function returns a string or NULL on error.
14 I<The caller must free the returned string after use>.
16 Because of the message protocol, there is a transfer limit
17 of somewhere between 2MB and 4MB. To transfer large files you should use
20 =head2 guestfs_list_devices
22 char **guestfs_list_devices (guestfs_h *handle);
24 List all the block devices.
26 The full block device names are returned, eg. C</dev/sda>
29 This function returns a NULL-terminated array of strings
30 (like L<environ(3)>), or NULL if there was an error.
31 I<The caller must free the strings and the array after use>.
33 =head2 guestfs_list_partitions
35 char **guestfs_list_partitions (guestfs_h *handle);
37 List all the partitions detected on all block devices.
39 The full partition device names are returned, eg. C</dev/sda1>
41 This does not return logical volumes. For that you will need to
44 This function returns a NULL-terminated array of strings
45 (like L<environ(3)>), or NULL if there was an error.
46 I<The caller must free the strings and the array after use>.
50 char *guestfs_ll (guestfs_h *handle,
51 const char *directory);
53 List the files in C<directory> (relative to the root directory,
54 there is no cwd) in the format of 'ls -la'.
56 This command is mostly useful for interactive sessions. It
57 is I<not> intended that you try to parse the output string.
59 This function returns a string or NULL on error.
60 I<The caller must free the returned string after use>.
64 char **guestfs_ls (guestfs_h *handle,
65 const char *directory);
67 List the files in C<directory> (relative to the root directory,
68 there is no cwd). The '.' and '..' entries are not returned, but
69 hidden files are shown.
71 This command is mostly useful for interactive sessions. Programs
72 should probably use C<guestfs_readdir> instead.
74 This function returns a NULL-terminated array of strings
75 (like L<environ(3)>), or NULL if there was an error.
76 I<The caller must free the strings and the array after use>.
78 =head2 guestfs_lvs_full
80 struct guestfs_lvm_lv_list *guestfs_lvs_full (guestfs_h *handle);
82 List all the logical volumes detected. This is the equivalent
83 of the L<lvs(8)> command.
85 This function returns a C<struct guestfs_lvm_lv_list>.
86 I<The caller must call C<guestfs_free_lvm_lv_list> after use.>.
90 int guestfs_mount (guestfs_h *handle,
92 const char *mountpoint);
94 Mount a guest disk at a position in the filesystem. Block devices
95 are named C</dev/sda>, C</dev/sdb> and so on, as they were added to
96 the guest. If those block devices contain partitions, they will have
97 the usual names (eg. C</dev/sda1>). Also LVM C</dev/VG/LV>-style
100 The rules are the same as for L<mount(2)>: A filesystem must
101 first be mounted on C</> before others can be mounted. Other
102 filesystems can only be mounted on directories which already
105 The mounted filesystem is writable, if we have sufficient permissions
106 on the underlying device.
108 The filesystem options C<sync> and C<noatime> are set with this
109 call, in order to improve reliability.
111 This function returns 0 on success or -1 on error.
113 =head2 guestfs_pvs_full
115 struct guestfs_lvm_pv_list *guestfs_pvs_full (guestfs_h *handle);
117 List all the physical volumes detected. This is the equivalent
118 of the L<pvs(8)> command.
120 This function returns a C<struct guestfs_lvm_pv_list>.
121 I<The caller must call C<guestfs_free_lvm_pv_list> after use.>.
125 int guestfs_sync (guestfs_h *handle);
127 This syncs the disk, so that any writes are flushed through to the
128 underlying disk image.
130 You should always call this if you have modified a disk image, before
131 calling C<guestfs_close>.
133 This function returns 0 on success or -1 on error.
137 int guestfs_touch (guestfs_h *handle,
140 Touch acts like the L<touch(1)> command. It can be used to
141 update the timestamps on a file, or, if the file does not exist,
142 to create a new zero-length file.
144 This function returns 0 on success or -1 on error.
146 =head2 guestfs_vgs_full
148 struct guestfs_lvm_vg_list *guestfs_vgs_full (guestfs_h *handle);
150 List all the volumes groups detected. This is the equivalent
151 of the L<vgs(8)> command.
153 This function returns a C<struct guestfs_lvm_vg_list>.
154 I<The caller must call C<guestfs_free_lvm_vg_list> after use.>.