Version 1.12.0.
[libguestfs.git] / po-docs / libguestfs-docs.pot
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Red Hat Inc.
3 # This file is distributed under the same license as the libguestfs package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 #, fuzzy
7 msgid ""
8 msgstr ""
9 "Project-Id-Version: libguestfs 1.12.0\n"
10 "Report-Msgid-Bugs-To: libguestfs@redhat.com\n"
11 "POT-Creation-Date: 2011-07-20 17:31+0200\n"
12 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14 "Language-Team: LANGUAGE <LL@li.org>\n"
15 "Language: \n"
16 "MIME-Version: 1.0\n"
17 "Content-Type: text/plain; charset=UTF-8\n"
18 "Content-Transfer-Encoding: 8bit\n"
19
20 #. type: =head1
21 #: ../cat/virt-cat.pod:3 ../cat/virt-filesystems.pod:3 ../cat/virt-ls.pod:3 ../df/virt-df.pod:3 ../edit/virt-edit.pod:3 ../examples/guestfs-examples.pod:3 ../examples/guestfs-recipes.pod:14 ../fish/guestfish.pod:3 ../fish/virt-copy-in.pod:3 ../fish/virt-copy-out.pod:3 ../fish/virt-tar-in.pod:3 ../fish/virt-tar-out.pod:3 ../fuse/guestmount.pod:3 ../inspector/virt-inspector.pod:3 ../java/examples/guestfs-java.pod:3 ../ocaml/examples/guestfs-ocaml.pod:3 ../perl/examples/guestfs-perl.pod:3 ../python/examples/guestfs-python.pod:3 ../rescue/virt-rescue.pod:3 ../resize/virt-resize.pod:3 ../ruby/examples/guestfs-ruby.pod:3 ../src/guestfs.pod:3 ../test-tool/libguestfs-test-tool.pod:3 ../tools/virt-list-filesystems.pl:30 ../tools/virt-list-partitions.pl:30 ../tools/virt-make-fs.pl:35 ../tools/virt-tar.pl:31 ../tools/virt-win-reg.pl:35
22 msgid "NAME"
23 msgstr ""
24
25 #. type: textblock
26 #: ../cat/virt-cat.pod:5
27 msgid "virt-cat - Display files in a virtual machine"
28 msgstr ""
29
30 #. type: =head1
31 #: ../cat/virt-cat.pod:7 ../cat/virt-filesystems.pod:7 ../cat/virt-ls.pod:7 ../df/virt-df.pod:7 ../edit/virt-edit.pod:7 ../examples/guestfs-examples.pod:7 ../fish/guestfish.pod:7 ../fish/virt-copy-in.pod:7 ../fish/virt-copy-out.pod:7 ../fish/virt-tar-in.pod:7 ../fish/virt-tar-out.pod:7 ../fuse/guestmount.pod:7 ../inspector/virt-inspector.pod:7 ../java/examples/guestfs-java.pod:7 ../ocaml/examples/guestfs-ocaml.pod:7 ../perl/examples/guestfs-perl.pod:7 ../python/examples/guestfs-python.pod:7 ../rescue/virt-rescue.pod:7 ../resize/virt-resize.pod:7 ../ruby/examples/guestfs-ruby.pod:7 ../src/guestfs.pod:7 ../test-tool/libguestfs-test-tool.pod:7 ../tools/virt-list-filesystems.pl:34 ../tools/virt-list-partitions.pl:34 ../tools/virt-make-fs.pl:39 ../tools/virt-tar.pl:35 ../tools/virt-win-reg.pl:39
32 msgid "SYNOPSIS"
33 msgstr ""
34
35 #. type: verbatim
36 #: ../cat/virt-cat.pod:9
37 #, no-wrap
38 msgid ""
39 " virt-cat [--options] -d domname file [file ...]\n"
40 "\n"
41 msgstr ""
42
43 #. type: verbatim
44 #: ../cat/virt-cat.pod:11
45 #, no-wrap
46 msgid ""
47 " virt-cat [--options] -a disk.img [-a disk.img ...] file [file ...]\n"
48 "\n"
49 msgstr ""
50
51 #. type: textblock
52 #: ../cat/virt-cat.pod:13 ../edit/virt-edit.pod:15 ../inspector/virt-inspector.pod:13
53 msgid "Old-style:"
54 msgstr ""
55
56 #. type: verbatim
57 #: ../cat/virt-cat.pod:15
58 #, no-wrap
59 msgid ""
60 " virt-cat domname file\n"
61 "\n"
62 msgstr ""
63
64 #. type: verbatim
65 #: ../cat/virt-cat.pod:17
66 #, no-wrap
67 msgid ""
68 " virt-cat disk.img file\n"
69 "\n"
70 msgstr ""
71
72 #. type: =head1
73 #: ../cat/virt-cat.pod:19 ../cat/virt-filesystems.pod:13 ../cat/virt-ls.pod:19 ../df/virt-df.pod:21 ../edit/virt-edit.pod:27 ../examples/guestfs-examples.pod:19 ../examples/guestfs-recipes.pod:18 ../fish/guestfish.pod:30 ../fish/virt-copy-in.pod:19 ../fish/virt-copy-out.pod:13 ../fish/virt-tar-in.pod:21 ../fish/virt-tar-out.pod:15 ../fuse/guestmount.pod:20 ../inspector/virt-inspector.pod:19 ../java/examples/guestfs-java.pod:15 ../ocaml/examples/guestfs-ocaml.pod:25 ../perl/examples/guestfs-perl.pod:18 ../python/examples/guestfs-python.pod:14 ../rescue/virt-rescue.pod:29 ../resize/virt-resize.pod:13 ../ruby/examples/guestfs-ruby.pod:15 ../src/guestfs.pod:23 ../test-tool/libguestfs-test-tool.pod:11 ../tools/virt-list-filesystems.pl:40 ../tools/virt-list-partitions.pl:40 ../tools/virt-make-fs.pl:47 ../tools/virt-tar.pl:77 ../tools/virt-win-reg.pl:63
74 msgid "DESCRIPTION"
75 msgstr ""
76
77 #. type: textblock
78 #: ../cat/virt-cat.pod:21
79 msgid ""
80 "C<virt-cat> is a command line tool to display the contents of C<file> where "
81 "C<file> exists in the named virtual machine (or disk image)."
82 msgstr ""
83
84 #. type: textblock
85 #: ../cat/virt-cat.pod:24
86 msgid ""
87 "Multiple filenames can be given, in which case they are concatenated "
88 "together.  Each filename must be a full path, starting at the root directory "
89 "(starting with '/')."
90 msgstr ""
91
92 #. type: textblock
93 #: ../cat/virt-cat.pod:28
94 msgid ""
95 "C<virt-cat> can be used to quickly view a file.  To edit a file, use "
96 "C<virt-edit>.  For more complex cases you should look at the L<guestfish(1)> "
97 "tool (see L</USING GUESTFISH> below)."
98 msgstr ""
99
100 #. type: =head1
101 #: ../cat/virt-cat.pod:32 ../cat/virt-ls.pod:35 ../df/virt-df.pod:43 ../edit/virt-edit.pod:44 ../fish/guestfish.pod:41 ../fish/guestfish.pod:1007 ../fish/virt-copy-in.pod:29 ../fish/virt-copy-out.pod:21 ../fish/virt-tar-in.pod:30 ../fish/virt-tar-out.pod:24 ../fuse/guestmount.pod:39 ../resize/virt-resize.pod:27 ../tools/virt-tar.pl:50
102 msgid "EXAMPLES"
103 msgstr ""
104
105 #. type: textblock
106 #: ../cat/virt-cat.pod:34
107 msgid "Display C</etc/fstab> file from inside the libvirt VM called C<mydomain>:"
108 msgstr ""
109
110 #. type: verbatim
111 #: ../cat/virt-cat.pod:37
112 #, no-wrap
113 msgid ""
114 " virt-cat -d mydomain /etc/fstab\n"
115 "\n"
116 msgstr ""
117
118 #. type: textblock
119 #: ../cat/virt-cat.pod:39
120 msgid "List syslog messages from a VM disk image file:"
121 msgstr ""
122
123 #. type: verbatim
124 #: ../cat/virt-cat.pod:41
125 #, no-wrap
126 msgid ""
127 " virt-cat -a disk.img /var/log/messages | tail\n"
128 "\n"
129 msgstr ""
130
131 #. type: textblock
132 #: ../cat/virt-cat.pod:43
133 msgid "Find out what DHCP IP address a VM acquired:"
134 msgstr ""
135
136 #. type: verbatim
137 #: ../cat/virt-cat.pod:45
138 #, no-wrap
139 msgid ""
140 " virt-cat -d mydomain /var/log/messages | \\\n"
141 "   grep 'dhclient: bound to' | tail\n"
142 "\n"
143 msgstr ""
144
145 #. type: textblock
146 #: ../cat/virt-cat.pod:48
147 msgid "Find out what packages were recently installed:"
148 msgstr ""
149
150 #. type: verbatim
151 #: ../cat/virt-cat.pod:50
152 #, no-wrap
153 msgid ""
154 " virt-cat -d mydomain /var/log/yum.log | tail\n"
155 "\n"
156 msgstr ""
157
158 #. type: textblock
159 #: ../cat/virt-cat.pod:52
160 msgid "Find out who is logged on inside a virtual machine:"
161 msgstr ""
162
163 #. type: verbatim
164 #: ../cat/virt-cat.pod:54
165 #, no-wrap
166 msgid ""
167 " virt-cat -d mydomain /var/run/utmp > /tmp/utmp\n"
168 " who /tmp/utmp\n"
169 "\n"
170 msgstr ""
171
172 #. type: textblock
173 #: ../cat/virt-cat.pod:57
174 msgid "or who was logged on:"
175 msgstr ""
176
177 #. type: verbatim
178 #: ../cat/virt-cat.pod:59
179 #, no-wrap
180 msgid ""
181 " virt-cat -d mydomain /var/log/wtmp > /tmp/wtmp\n"
182 " last -f /tmp/wtmp\n"
183 "\n"
184 msgstr ""
185
186 #. type: =head1
187 #: ../cat/virt-cat.pod:62 ../cat/virt-filesystems.pod:91 ../cat/virt-ls.pod:261 ../df/virt-df.pod:59 ../edit/virt-edit.pod:62 ../fish/guestfish.pod:148 ../fish/virt-copy-in.pod:45 ../fish/virt-copy-out.pod:34 ../fish/virt-tar-in.pod:42 ../fish/virt-tar-out.pod:36 ../fuse/guestmount.pod:83 ../inspector/virt-inspector.pod:55 ../rescue/virt-rescue.pod:84 ../resize/virt-resize.pod:241 ../test-tool/libguestfs-test-tool.pod:37 ../tools/virt-list-filesystems.pl:53 ../tools/virt-list-partitions.pl:54 ../tools/virt-make-fs.pl:153 ../tools/virt-tar.pl:103 ../tools/virt-win-reg.pl:96
188 msgid "OPTIONS"
189 msgstr ""
190
191 #. type: =item
192 #: ../cat/virt-cat.pod:66 ../cat/virt-filesystems.pod:95 ../cat/virt-ls.pod:265 ../df/virt-df.pod:63 ../edit/virt-edit.pod:66 ../fish/guestfish.pod:152 ../fuse/guestmount.pod:151 ../inspector/virt-inspector.pod:59 ../rescue/virt-rescue.pod:88 ../resize/virt-resize.pod:245 ../tools/virt-list-filesystems.pl:61 ../tools/virt-list-partitions.pl:62 ../tools/virt-make-fs.pl:161 ../tools/virt-tar.pl:111 ../tools/virt-win-reg.pl:104
193 msgid "B<--help>"
194 msgstr ""
195
196 #. type: textblock
197 #: ../cat/virt-cat.pod:68 ../cat/virt-filesystems.pod:97 ../cat/virt-ls.pod:267 ../df/virt-df.pod:65 ../edit/virt-edit.pod:68 ../inspector/virt-inspector.pod:61 ../rescue/virt-rescue.pod:90 ../tools/virt-list-filesystems.pl:63 ../tools/virt-list-partitions.pl:64 ../tools/virt-make-fs.pl:163 ../tools/virt-tar.pl:113 ../tools/virt-win-reg.pl:106
198 msgid "Display brief help."
199 msgstr ""
200
201 #. type: =item
202 #: ../cat/virt-cat.pod:70 ../cat/virt-filesystems.pod:99 ../cat/virt-ls.pod:269 ../df/virt-df.pod:67 ../edit/virt-edit.pod:70 ../inspector/virt-inspector.pod:63 ../rescue/virt-rescue.pod:92
203 msgid "B<-a> file"
204 msgstr ""
205
206 #. type: =item
207 #: ../cat/virt-cat.pod:72 ../cat/virt-filesystems.pod:101 ../cat/virt-ls.pod:271 ../df/virt-df.pod:69 ../edit/virt-edit.pod:72 ../inspector/virt-inspector.pod:65 ../rescue/virt-rescue.pod:94
208 msgid "B<--add> file"
209 msgstr ""
210
211 #. type: textblock
212 #: ../cat/virt-cat.pod:74 ../cat/virt-filesystems.pod:103 ../cat/virt-ls.pod:273 ../df/virt-df.pod:71 ../edit/virt-edit.pod:74 ../inspector/virt-inspector.pod:67 ../rescue/virt-rescue.pod:96
213 msgid ""
214 "Add I<file> which should be a disk image from a virtual machine.  If the "
215 "virtual machine has multiple block devices, you must supply all of them with "
216 "separate I<-a> options."
217 msgstr ""
218
219 #. type: textblock
220 #: ../cat/virt-cat.pod:78 ../cat/virt-filesystems.pod:107 ../cat/virt-ls.pod:277 ../df/virt-df.pod:75 ../edit/virt-edit.pod:78 ../fish/guestfish.pod:174 ../fuse/guestmount.pod:93 ../inspector/virt-inspector.pod:71 ../rescue/virt-rescue.pod:100
221 msgid ""
222 "The format of the disk image is auto-detected.  To override this and force a "
223 "particular format use the I<--format=..> option."
224 msgstr ""
225
226 #. type: =item
227 #: ../cat/virt-cat.pod:81 ../cat/virt-filesystems.pod:125 ../cat/virt-ls.pod:291 ../df/virt-df.pod:78 ../rescue/virt-rescue.pod:107
228 msgid "B<-c> URI"
229 msgstr ""
230
231 #. type: =item
232 #: ../cat/virt-cat.pod:83 ../cat/virt-filesystems.pod:127 ../cat/virt-ls.pod:293 ../df/virt-df.pod:80 ../rescue/virt-rescue.pod:109
233 msgid "B<--connect> URI"
234 msgstr ""
235
236 #. type: textblock
237 #: ../cat/virt-cat.pod:85 ../cat/virt-filesystems.pod:129 ../cat/virt-ls.pod:295 ../df/virt-df.pod:82 ../edit/virt-edit.pod:99 ../inspector/virt-inspector.pod:78 ../rescue/virt-rescue.pod:111 ../tools/virt-list-filesystems.pl:81 ../tools/virt-list-partitions.pl:82 ../tools/virt-tar.pl:131 ../tools/virt-win-reg.pl:132
238 msgid ""
239 "If using libvirt, connect to the given I<URI>.  If omitted, then we connect "
240 "to the default libvirt hypervisor."
241 msgstr ""
242
243 #. type: textblock
244 #: ../cat/virt-cat.pod:88 ../cat/virt-filesystems.pod:132 ../cat/virt-ls.pod:298 ../df/virt-df.pod:85 ../rescue/virt-rescue.pod:114
245 msgid ""
246 "If you specify guest block devices directly (I<-a>), then libvirt is not "
247 "used at all."
248 msgstr ""
249
250 #. type: =item
251 #: ../cat/virt-cat.pod:91 ../cat/virt-filesystems.pod:141 ../cat/virt-ls.pod:307 ../df/virt-df.pod:88 ../edit/virt-edit.pod:105 ../inspector/virt-inspector.pod:85 ../rescue/virt-rescue.pod:117
252 msgid "B<-d> guest"
253 msgstr ""
254
255 #. type: =item
256 #: ../cat/virt-cat.pod:93 ../cat/virt-filesystems.pod:143 ../cat/virt-ls.pod:309 ../df/virt-df.pod:90 ../edit/virt-edit.pod:107 ../inspector/virt-inspector.pod:87 ../rescue/virt-rescue.pod:119
257 msgid "B<--domain> guest"
258 msgstr ""
259
260 #. type: textblock
261 #: ../cat/virt-cat.pod:95 ../cat/virt-filesystems.pod:145 ../cat/virt-ls.pod:311 ../df/virt-df.pod:92 ../edit/virt-edit.pod:109 ../inspector/virt-inspector.pod:89 ../rescue/virt-rescue.pod:121
262 msgid ""
263 "Add all the disks from the named libvirt guest.  Domain UUIDs can be used "
264 "instead of names."
265 msgstr ""
266
267 #. type: =item
268 #: ../cat/virt-cat.pod:98 ../cat/virt-filesystems.pod:148 ../cat/virt-ls.pod:314 ../edit/virt-edit.pod:112 ../fish/guestfish.pod:217 ../fuse/guestmount.pod:126 ../inspector/virt-inspector.pod:92
269 msgid "B<--echo-keys>"
270 msgstr ""
271
272 #. type: textblock
273 #: ../cat/virt-cat.pod:100
274 msgid ""
275 "When prompting for keys and passphrases, virt-cat normally turns echoing off "
276 "so you cannot see what you are typing.  If you are not worried about Tempest "
277 "attacks and there is no one else in the room you can specify this flag to "
278 "see what you are typing."
279 msgstr ""
280
281 #. type: =item
282 #: ../cat/virt-cat.pod:105 ../cat/virt-filesystems.pod:170 ../cat/virt-ls.pod:328 ../df/virt-df.pod:95 ../fish/guestfish.pod:233 ../fuse/guestmount.pod:133 ../inspector/virt-inspector.pod:99 ../rescue/virt-rescue.pod:124
283 msgid "B<--format=raw|qcow2|..>"
284 msgstr ""
285
286 #. type: =item
287 #: ../cat/virt-cat.pod:107 ../cat/virt-filesystems.pod:172 ../cat/virt-ls.pod:330 ../df/virt-df.pod:97 ../edit/virt-edit.pod:134 ../fish/guestfish.pod:235 ../fuse/guestmount.pod:135 ../inspector/virt-inspector.pod:101 ../rescue/virt-rescue.pod:126
288 msgid "B<--format>"
289 msgstr ""
290
291 #. type: textblock
292 #: ../cat/virt-cat.pod:109 ../cat/virt-filesystems.pod:174 ../cat/virt-ls.pod:332 ../df/virt-df.pod:99 ../edit/virt-edit.pod:136 ../fish/guestfish.pod:237 ../fuse/guestmount.pod:137 ../rescue/virt-rescue.pod:128
293 msgid ""
294 "The default for the I<-a> option is to auto-detect the format of the disk "
295 "image.  Using this forces the disk format for I<-a> options which follow on "
296 "the command line.  Using I<--format> with no argument switches back to "
297 "auto-detection for subsequent I<-a> options."
298 msgstr ""
299
300 #. type: textblock
301 #: ../cat/virt-cat.pod:114 ../cat/virt-filesystems.pod:179 ../cat/virt-ls.pod:337 ../df/virt-df.pod:104 ../edit/virt-edit.pod:141 ../fish/guestfish.pod:242 ../fish/guestfish.pod:673 ../inspector/virt-inspector.pod:335 ../rescue/virt-rescue.pod:133 ../src/guestfs.pod:2652
302 msgid "For example:"
303 msgstr ""
304
305 #. type: verbatim
306 #: ../cat/virt-cat.pod:116
307 #, no-wrap
308 msgid ""
309 " virt-cat --format=raw -a disk.img file\n"
310 "\n"
311 msgstr ""
312
313 #. type: textblock
314 #: ../cat/virt-cat.pod:118 ../cat/virt-filesystems.pod:183 ../cat/virt-ls.pod:341 ../df/virt-df.pod:108 ../edit/virt-edit.pod:145 ../fish/guestfish.pod:246 ../rescue/virt-rescue.pod:137
315 msgid "forces raw format (no auto-detection) for C<disk.img>."
316 msgstr ""
317
318 #. type: verbatim
319 #: ../cat/virt-cat.pod:120
320 #, no-wrap
321 msgid ""
322 " virt-cat --format=raw -a disk.img --format -a another.img file\n"
323 "\n"
324 msgstr ""
325
326 #. type: textblock
327 #: ../cat/virt-cat.pod:122 ../cat/virt-filesystems.pod:187 ../cat/virt-ls.pod:345 ../df/virt-df.pod:112 ../edit/virt-edit.pod:149 ../fish/guestfish.pod:250 ../rescue/virt-rescue.pod:141
328 msgid ""
329 "forces raw format (no auto-detection) for C<disk.img> and reverts to "
330 "auto-detection for C<another.img>."
331 msgstr ""
332
333 #. type: textblock
334 #: ../cat/virt-cat.pod:125 ../cat/virt-filesystems.pod:190 ../cat/virt-ls.pod:348 ../df/virt-df.pod:115 ../edit/virt-edit.pod:152 ../rescue/virt-rescue.pod:144
335 msgid ""
336 "If you have untrusted raw-format guest disk images, you should use this "
337 "option to specify the disk format.  This avoids a possible security problem "
338 "with malicious guests (CVE-2010-3851)."
339 msgstr ""
340
341 #. type: =item
342 #: ../cat/virt-cat.pod:129 ../cat/virt-filesystems.pod:200 ../cat/virt-ls.pod:361 ../edit/virt-edit.pod:156 ../fish/guestfish.pod:289 ../fuse/guestmount.pod:163 ../inspector/virt-inspector.pod:114
343 msgid "B<--keys-from-stdin>"
344 msgstr ""
345
346 #. type: textblock
347 #: ../cat/virt-cat.pod:131 ../cat/virt-filesystems.pod:202 ../cat/virt-ls.pod:363 ../edit/virt-edit.pod:158 ../fish/guestfish.pod:291 ../fuse/guestmount.pod:165 ../inspector/virt-inspector.pod:116
348 msgid ""
349 "Read key or passphrase parameters from stdin.  The default is to try to read "
350 "passphrases from the user by opening C</dev/tty>."
351 msgstr ""
352
353 #. type: =item
354 #: ../cat/virt-cat.pod:134 ../cat/virt-filesystems.pod:261 ../cat/virt-ls.pod:425 ../df/virt-df.pod:167 ../edit/virt-edit.pod:161 ../fish/guestfish.pod:390 ../fuse/guestmount.pod:257 ../inspector/virt-inspector.pod:119 ../rescue/virt-rescue.pod:178
355 msgid "B<-v>"
356 msgstr ""
357
358 #. type: =item
359 #: ../cat/virt-cat.pod:136 ../cat/virt-filesystems.pod:263 ../cat/virt-ls.pod:427 ../df/virt-df.pod:169 ../edit/virt-edit.pod:163 ../fish/guestfish.pod:392 ../fuse/guestmount.pod:259 ../inspector/virt-inspector.pod:121 ../rescue/virt-rescue.pod:180
360 msgid "B<--verbose>"
361 msgstr ""
362
363 #. type: textblock
364 #: ../cat/virt-cat.pod:138 ../cat/virt-filesystems.pod:265 ../cat/virt-ls.pod:429 ../df/virt-df.pod:171 ../edit/virt-edit.pod:165 ../inspector/virt-inspector.pod:123 ../rescue/virt-rescue.pod:182
365 msgid "Enable verbose messages for debugging."
366 msgstr ""
367
368 #. type: =item
369 #: ../cat/virt-cat.pod:140 ../cat/virt-filesystems.pod:267 ../cat/virt-ls.pod:431 ../df/virt-df.pod:173 ../edit/virt-edit.pod:167 ../fish/guestfish.pod:397 ../fuse/guestmount.pod:263 ../inspector/virt-inspector.pod:125 ../rescue/virt-rescue.pod:184 ../resize/virt-resize.pod:478
370 msgid "B<-V>"
371 msgstr ""
372
373 #. type: =item
374 #: ../cat/virt-cat.pod:142 ../cat/virt-filesystems.pod:269 ../cat/virt-ls.pod:433 ../df/virt-df.pod:175 ../edit/virt-edit.pod:169 ../fish/guestfish.pod:399 ../fuse/guestmount.pod:265 ../inspector/virt-inspector.pod:127 ../rescue/virt-rescue.pod:186 ../resize/virt-resize.pod:480 ../tools/virt-list-filesystems.pl:69 ../tools/virt-list-partitions.pl:70 ../tools/virt-make-fs.pl:169 ../tools/virt-tar.pl:119 ../tools/virt-win-reg.pl:112
375 msgid "B<--version>"
376 msgstr ""
377
378 #. type: textblock
379 #: ../cat/virt-cat.pod:144 ../cat/virt-filesystems.pod:271 ../cat/virt-ls.pod:435 ../df/virt-df.pod:177 ../edit/virt-edit.pod:171 ../inspector/virt-inspector.pod:129 ../rescue/virt-rescue.pod:188 ../resize/virt-resize.pod:482 ../tools/virt-list-filesystems.pl:71 ../tools/virt-list-partitions.pl:72 ../tools/virt-make-fs.pl:171 ../tools/virt-tar.pl:121 ../tools/virt-win-reg.pl:114
380 msgid "Display version number and exit."
381 msgstr ""
382
383 #. type: =item
384 #: ../cat/virt-cat.pod:146 ../cat/virt-filesystems.pod:281 ../cat/virt-ls.pod:437 ../df/virt-df.pod:179 ../edit/virt-edit.pod:173 ../fish/guestfish.pod:412 ../fuse/guestmount.pod:278 ../inspector/virt-inspector.pod:131 ../rescue/virt-rescue.pod:199 ../tools/virt-tar.pl:158
385 msgid "B<-x>"
386 msgstr ""
387
388 #. type: textblock
389 #: ../cat/virt-cat.pod:148 ../cat/virt-filesystems.pod:283 ../cat/virt-ls.pod:439 ../df/virt-df.pod:181 ../edit/virt-edit.pod:175 ../inspector/virt-inspector.pod:133 ../rescue/virt-rescue.pod:201
390 msgid "Enable tracing of libguestfs API calls."
391 msgstr ""
392
393 #. type: =head1
394 #: ../cat/virt-cat.pod:152 ../cat/virt-ls.pod:443 ../edit/virt-edit.pod:179 ../inspector/virt-inspector.pod:137 ../rescue/virt-rescue.pod:205
395 msgid "OLD-STYLE COMMAND LINE ARGUMENTS"
396 msgstr ""
397
398 #. type: textblock
399 #: ../cat/virt-cat.pod:154
400 msgid "Previous versions of virt-cat allowed you to write either:"
401 msgstr ""
402
403 #. type: verbatim
404 #: ../cat/virt-cat.pod:156
405 #, no-wrap
406 msgid ""
407 " virt-cat disk.img [disk.img ...] file\n"
408 "\n"
409 msgstr ""
410
411 #. type: textblock
412 #: ../cat/virt-cat.pod:158 ../cat/virt-ls.pod:449 ../edit/virt-edit.pod:185 ../inspector/virt-inspector.pod:143 ../rescue/virt-rescue.pod:211
413 msgid "or"
414 msgstr ""
415
416 #. type: verbatim
417 #: ../cat/virt-cat.pod:160
418 #, no-wrap
419 msgid ""
420 " virt-cat guestname file\n"
421 "\n"
422 msgstr ""
423
424 #. type: textblock
425 #: ../cat/virt-cat.pod:162 ../cat/virt-ls.pod:453 ../edit/virt-edit.pod:189 ../inspector/virt-inspector.pod:147 ../rescue/virt-rescue.pod:215
426 msgid ""
427 "whereas in this version you should use I<-a> or I<-d> respectively to avoid "
428 "the confusing case where a disk image might have the same name as a guest."
429 msgstr ""
430
431 #. type: textblock
432 #: ../cat/virt-cat.pod:166 ../cat/virt-ls.pod:457 ../edit/virt-edit.pod:193 ../inspector/virt-inspector.pod:151 ../rescue/virt-rescue.pod:219
433 msgid "For compatibility the old style is still supported."
434 msgstr ""
435
436 #. type: =head1
437 #: ../cat/virt-cat.pod:168 ../edit/virt-edit.pod:297
438 msgid "USING GUESTFISH"
439 msgstr ""
440
441 #. type: textblock
442 #: ../cat/virt-cat.pod:170
443 msgid ""
444 "L<guestfish(1)> is a more powerful, lower level tool which you can use when "
445 "C<virt-cat> doesn't work."
446 msgstr ""
447
448 #. type: textblock
449 #: ../cat/virt-cat.pod:173
450 msgid "Using C<virt-cat> is approximately equivalent to doing:"
451 msgstr ""
452
453 #. type: verbatim
454 #: ../cat/virt-cat.pod:175
455 #, no-wrap
456 msgid ""
457 " guestfish --ro -i -d domname download file -\n"
458 "\n"
459 msgstr ""
460
461 #. type: textblock
462 #: ../cat/virt-cat.pod:177
463 msgid ""
464 "where C<domname> is the name of the libvirt guest, and C<file> is the full "
465 "path to the file.  Note the final C<-> (meaning \"output to stdout\")."
466 msgstr ""
467
468 #. type: textblock
469 #: ../cat/virt-cat.pod:181
470 msgid ""
471 "The command above uses libguestfs's guest inspection feature and so does not "
472 "work on guests that libguestfs cannot inspect, or on things like arbitrary "
473 "disk images that don't contain guests.  To display a file from a disk image "
474 "directly, use:"
475 msgstr ""
476
477 #. type: verbatim
478 #: ../cat/virt-cat.pod:186
479 #, no-wrap
480 msgid ""
481 " guestfish --ro -a disk.img -m /dev/sda1 download file -\n"
482 "\n"
483 msgstr ""
484
485 #. type: textblock
486 #: ../cat/virt-cat.pod:188
487 msgid ""
488 "where C<disk.img> is the disk image, C</dev/sda1> is the filesystem within "
489 "the disk image to edit, and C<file> is the full path to the file."
490 msgstr ""
491
492 #. type: =head1
493 #: ../cat/virt-cat.pod:192 ../cat/virt-filesystems.pod:365 ../cat/virt-ls.pod:483 ../df/virt-df.pod:209 ../edit/virt-edit.pod:342 ../inspector/virt-inspector.pod:349 ../rescue/virt-rescue.pod:262 ../resize/virt-resize.pod:543 ../tools/virt-list-filesystems.pl:188 ../tools/virt-list-partitions.pl:258 ../tools/virt-make-fs.pl:532 ../tools/virt-tar.pl:289 ../tools/virt-win-reg.pl:733
494 msgid "SHELL QUOTING"
495 msgstr ""
496
497 #. type: textblock
498 #: ../cat/virt-cat.pod:194 ../cat/virt-filesystems.pod:367 ../cat/virt-ls.pod:485 ../df/virt-df.pod:211 ../edit/virt-edit.pod:344 ../inspector/virt-inspector.pod:351 ../rescue/virt-rescue.pod:264 ../resize/virt-resize.pod:545 ../tools/virt-list-filesystems.pl:190 ../tools/virt-list-partitions.pl:260 ../tools/virt-make-fs.pl:534 ../tools/virt-tar.pl:291 ../tools/virt-win-reg.pl:741
499 msgid ""
500 "Libvirt guest names can contain arbitrary characters, some of which have "
501 "meaning to the shell such as C<#> and space.  You may need to quote or "
502 "escape these characters on the command line.  See the shell manual page "
503 "L<sh(1)> for details."
504 msgstr ""
505
506 #. type: =head1
507 #: ../cat/virt-cat.pod:199 ../cat/virt-filesystems.pod:372 ../cat/virt-ls.pod:490 ../df/virt-df.pod:216 ../edit/virt-edit.pod:349 ../examples/guestfs-examples.pod:33 ../examples/guestfs-recipes.pod:384 ../fish/guestfish.pod:1214 ../fish/virt-copy-in.pod:50 ../fish/virt-copy-out.pod:39 ../fish/virt-tar-in.pod:47 ../fish/virt-tar-out.pod:41 ../fuse/guestmount.pod:303 ../inspector/virt-inspector.pod:372 ../java/examples/guestfs-java.pod:45 ../ocaml/examples/guestfs-ocaml.pod:78 ../perl/examples/guestfs-perl.pod:39 ../python/examples/guestfs-python.pod:42 ../rescue/virt-rescue.pod:284 ../resize/virt-resize.pod:550 ../ruby/examples/guestfs-ruby.pod:36 ../src/guestfs.pod:3016 ../test-tool/libguestfs-test-tool.pod:87 ../tools/virt-list-filesystems.pl:195 ../tools/virt-list-partitions.pl:265 ../tools/virt-make-fs.pl:539 ../tools/virt-tar.pl:296 ../tools/virt-win-reg.pl:746
508 msgid "SEE ALSO"
509 msgstr ""
510
511 #. type: textblock
512 #: ../cat/virt-cat.pod:201
513 msgid ""
514 "L<guestfs(3)>, L<guestfish(1)>, L<virt-copy-out(1)>, L<virt-edit(1)>, "
515 "L<virt-tar-out(1)>, L<http://libguestfs.org/>."
516 msgstr ""
517
518 #. type: =head1
519 #: ../cat/virt-cat.pod:208 ../cat/virt-filesystems.pod:383 ../cat/virt-ls.pod:502 ../df/virt-df.pod:224 ../edit/virt-edit.pod:363 ../rescue/virt-rescue.pod:292 ../resize/virt-resize.pod:571 ../tools/virt-list-filesystems.pl:208 ../tools/virt-list-partitions.pl:277 ../tools/virt-make-fs.pl:564 ../tools/virt-tar.pl:311 ../tools/virt-win-reg.pl:772
520 msgid "AUTHOR"
521 msgstr ""
522
523 #. type: textblock
524 #: ../cat/virt-cat.pod:210 ../cat/virt-filesystems.pod:385 ../cat/virt-ls.pod:504 ../df/virt-df.pod:226 ../edit/virt-edit.pod:365 ../inspector/virt-inspector.pod:386 ../rescue/virt-rescue.pod:294 ../resize/virt-resize.pod:573 ../tools/virt-list-filesystems.pl:210 ../tools/virt-list-partitions.pl:279 ../tools/virt-make-fs.pl:566 ../tools/virt-tar.pl:313 ../tools/virt-win-reg.pl:774
525 msgid "Richard W.M. Jones L<http://people.redhat.com/~rjones/>"
526 msgstr ""
527
528 #. type: =head1
529 #: ../cat/virt-cat.pod:212 ../cat/virt-filesystems.pod:387 ../cat/virt-ls.pod:506 ../df/virt-df.pod:228 ../edit/virt-edit.pod:367 ../examples/guestfs-examples.pod:48 ../examples/guestfs-recipes.pod:400 ../fish/guestfish.pod:1242 ../fish/virt-copy-in.pod:64 ../fish/virt-copy-out.pod:53 ../fish/virt-tar-in.pod:62 ../fish/virt-tar-out.pod:55 ../fuse/guestmount.pod:318 ../inspector/virt-inspector.pod:394 ../java/examples/guestfs-java.pod:61 ../ocaml/examples/guestfs-ocaml.pod:94 ../perl/examples/guestfs-perl.pod:55 ../python/examples/guestfs-python.pod:57 ../rescue/virt-rescue.pod:296 ../resize/virt-resize.pod:575 ../ruby/examples/guestfs-ruby.pod:51 ../src/guestfs.pod:3091 ../test-tool/libguestfs-test-tool.pod:97 ../tools/virt-list-filesystems.pl:212 ../tools/virt-list-partitions.pl:281 ../tools/virt-make-fs.pl:568 ../tools/virt-tar.pl:315 ../tools/virt-win-reg.pl:776
530 msgid "COPYRIGHT"
531 msgstr ""
532
533 #. type: textblock
534 #: ../cat/virt-cat.pod:214 ../inspector/virt-inspector.pod:396 ../resize/virt-resize.pod:577
535 msgid "Copyright (C) 2010-2011 Red Hat Inc."
536 msgstr ""
537
538 #. type: textblock
539 #: ../cat/virt-cat.pod:216 ../cat/virt-filesystems.pod:391 ../cat/virt-ls.pod:510 ../df/virt-df.pod:232 ../edit/virt-edit.pod:371 ../fish/guestfish.pod:1247 ../fish/virt-copy-in.pod:69 ../fish/virt-copy-out.pod:58 ../fish/virt-tar-in.pod:67 ../fish/virt-tar-out.pod:60 ../fuse/guestmount.pod:323 ../inspector/virt-inspector.pod:398 ../rescue/virt-rescue.pod:300 ../resize/virt-resize.pod:579 ../test-tool/libguestfs-test-tool.pod:102 ../tools/virt-list-filesystems.pl:216 ../tools/virt-list-partitions.pl:285 ../tools/virt-make-fs.pl:572 ../tools/virt-tar.pl:319 ../tools/virt-win-reg.pl:780
540 msgid ""
541 "This program is free software; you can redistribute it and/or modify it "
542 "under the terms of the GNU General Public License as published by the Free "
543 "Software Foundation; either version 2 of the License, or (at your option) "
544 "any later version."
545 msgstr ""
546
547 #. type: textblock
548 #: ../cat/virt-cat.pod:221 ../cat/virt-filesystems.pod:396 ../cat/virt-ls.pod:515 ../df/virt-df.pod:237 ../edit/virt-edit.pod:376 ../fish/guestfish.pod:1252 ../fish/virt-copy-in.pod:74 ../fish/virt-copy-out.pod:63 ../fish/virt-tar-in.pod:72 ../fish/virt-tar-out.pod:65 ../fuse/guestmount.pod:328 ../inspector/virt-inspector.pod:403 ../rescue/virt-rescue.pod:305 ../resize/virt-resize.pod:584 ../test-tool/libguestfs-test-tool.pod:107 ../tools/virt-list-filesystems.pl:221 ../tools/virt-list-partitions.pl:290 ../tools/virt-make-fs.pl:577 ../tools/virt-tar.pl:324 ../tools/virt-win-reg.pl:785
549 msgid ""
550 "This program is distributed in the hope that it will be useful, but WITHOUT "
551 "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
552 "FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for "
553 "more details."
554 msgstr ""
555
556 #. type: textblock
557 #: ../cat/virt-cat.pod:226 ../cat/virt-filesystems.pod:401 ../cat/virt-ls.pod:520 ../df/virt-df.pod:242 ../edit/virt-edit.pod:381 ../fish/guestfish.pod:1257 ../fish/virt-copy-in.pod:79 ../fish/virt-copy-out.pod:68 ../fish/virt-tar-in.pod:77 ../fish/virt-tar-out.pod:70 ../fuse/guestmount.pod:333 ../inspector/virt-inspector.pod:408 ../rescue/virt-rescue.pod:310 ../resize/virt-resize.pod:589 ../test-tool/libguestfs-test-tool.pod:112 ../tools/virt-list-filesystems.pl:226 ../tools/virt-list-partitions.pl:295 ../tools/virt-make-fs.pl:582 ../tools/virt-tar.pl:329 ../tools/virt-win-reg.pl:790
558 msgid ""
559 "You should have received a copy of the GNU General Public License along with "
560 "this program; if not, write to the Free Software Foundation, Inc., 675 Mass "
561 "Ave, Cambridge, MA 02139, USA."
562 msgstr ""
563
564 #. type: textblock
565 #: ../cat/virt-filesystems.pod:5
566 msgid ""
567 "virt-filesystems - List filesystems, partitions, block devices, LVM in a "
568 "virtual machine or disk image"
569 msgstr ""
570
571 #. type: verbatim
572 #: ../cat/virt-filesystems.pod:9
573 #, no-wrap
574 msgid ""
575 " virt-filesystems [--options] -d domname\n"
576 "\n"
577 msgstr ""
578
579 #. type: verbatim
580 #: ../cat/virt-filesystems.pod:11
581 #, no-wrap
582 msgid ""
583 " virt-filesystems [--options] -a disk.img [-a disk.img ...]\n"
584 "\n"
585 msgstr ""
586
587 #. type: textblock
588 #: ../cat/virt-filesystems.pod:15
589 msgid ""
590 "This tool allows you to discover filesystems, partitions, logical volumes, "
591 "and their sizes in a disk image or virtual machine.  It is a replacement for "
592 "L<virt-list-filesystems(1)> and L<virt-list-partitions(1)>."
593 msgstr ""
594
595 #. type: textblock
596 #: ../cat/virt-filesystems.pod:20
597 msgid ""
598 "One use for this tool is from shell scripts to iterate over all filesystems "
599 "from a disk image:"
600 msgstr ""
601
602 #. type: verbatim
603 #: ../cat/virt-filesystems.pod:23
604 #, no-wrap
605 msgid ""
606 " for fs in $(virt-filesystems -a disk.img); do\n"
607 "   # ...\n"
608 " done\n"
609 "\n"
610 msgstr ""
611
612 #. type: textblock
613 #: ../cat/virt-filesystems.pod:27
614 msgid ""
615 "Another use is to list partitions before using another tool to modify those "
616 "partitions (such as L<virt-resize(1)>).  If you are curious about what an "
617 "unknown disk image contains, use this tool along with L<virt-inspector(1)>."
618 msgstr ""
619
620 #. type: textblock
621 #: ../cat/virt-filesystems.pod:32
622 msgid ""
623 "Various command line options control what this program displays.  You need "
624 "to give either I<-a> or I<-d> options to specify the disk image or libvirt "
625 "guest respectively.  If you just specify that then the program shows "
626 "filesystems found, one per line, like this:"
627 msgstr ""
628
629 #. type: verbatim
630 #: ../cat/virt-filesystems.pod:37
631 #, no-wrap
632 msgid ""
633 " $ virt-filesystems -a disk.img\n"
634 " /dev/sda1\n"
635 " /dev/vg_guest/lv_root\n"
636 "\n"
637 msgstr ""
638
639 #. type: textblock
640 #: ../cat/virt-filesystems.pod:41
641 msgid "If you add I<-l> or I<--long> then the output includes extra information:"
642 msgstr ""
643
644 #. type: verbatim
645 #: ../cat/virt-filesystems.pod:44
646 #, no-wrap
647 msgid ""
648 " $ virt-filesystems -a disk.img -l\n"
649 " Name                   Type         VFS   Label  Size\n"
650 " /dev/sda1              filesystem   ext4  boot   524288000\n"
651 " /dev/vg_guest/lv_root  filesystem   ext4  root   10212081664\n"
652 "\n"
653 msgstr ""
654
655 #. type: textblock
656 #: ../cat/virt-filesystems.pod:49
657 msgid ""
658 "If you add I<--extra> then non-mountable (swap, unknown) filesystems are "
659 "shown as well:"
660 msgstr ""
661
662 #. type: verbatim
663 #: ../cat/virt-filesystems.pod:52
664 #, no-wrap
665 msgid ""
666 " $ virt-filesystems -a disk.img --extra\n"
667 " /dev/sda1\n"
668 " /dev/vg_guest/lv_root\n"
669 " /dev/vg_guest/lv_swap\n"
670 " /dev/vg_guest/lv_data\n"
671 "\n"
672 msgstr ""
673
674 #. type: textblock
675 #: ../cat/virt-filesystems.pod:58
676 msgid "If you add I<--partitions> then partitions are shown instead of filesystems:"
677 msgstr ""
678
679 #. type: verbatim
680 #: ../cat/virt-filesystems.pod:60
681 #, no-wrap
682 msgid ""
683 " $ virt-filesystems -a disk.img --partitions\n"
684 " /dev/sda1\n"
685 " /dev/sda2\n"
686 "\n"
687 msgstr ""
688
689 #. type: textblock
690 #: ../cat/virt-filesystems.pod:64
691 msgid ""
692 "Similarly you can use I<--logical-volumes>, I<--volume-groups>, "
693 "I<--physical-volumes>, I<--block-devices> to list those items."
694 msgstr ""
695
696 #. type: textblock
697 #: ../cat/virt-filesystems.pod:67
698 msgid ""
699 "You can use these options in combination as well (if you want a combination "
700 "including filesystems, you have to add I<--filesystems>).  Notice that some "
701 "items fall into several categories (eg. C</dev/sda1> might be both a "
702 "partition and a filesystem).  These items are listed several times.  To get "
703 "a list which includes absolutely everything that virt-filesystems knows "
704 "about, use the I<--all> option."
705 msgstr ""
706
707 #. type: textblock
708 #: ../cat/virt-filesystems.pod:74
709 msgid ""
710 "UUIDs (because they are quite long) are not shown by default.  Add the "
711 "I<--uuid> option to display device and filesystem UUIDs in the long output."
712 msgstr ""
713
714 #. type: textblock
715 #: ../cat/virt-filesystems.pod:78
716 msgid ""
717 "I<--all --long --uuid> is a useful combination to display all possible "
718 "information about everything."
719 msgstr ""
720
721 #. type: verbatim
722 #: ../cat/virt-filesystems.pod:81
723 #, no-wrap
724 msgid ""
725 " $ virt-filesystems -a win.img --all --long --uuid -h\n"
726 " Name      Type       VFS  Label           Size Parent   UUID\n"
727 " /dev/sda1 filesystem ntfs System Reserved 100M -        F81C92571C92112C\n"
728 " /dev/sda2 filesystem ntfs -               20G  -        F2E8996AE8992E3B\n"
729 " /dev/sda1 partition  -    -               100M /dev/sda -\n"
730 " /dev/sda2 partition  -    -               20G  /dev/sda -\n"
731 " /dev/sda  device     -    -               20G  -        -\n"
732 "\n"
733 msgstr ""
734
735 #. type: textblock
736 #: ../cat/virt-filesystems.pod:89
737 msgid "For machine-readable output, use I<--csv> to get Comma-Separated Values."
738 msgstr ""
739
740 #. type: =item
741 #: ../cat/virt-filesystems.pod:110 ../tools/virt-list-filesystems.pl:121
742 msgid "B<--all>"
743 msgstr ""
744
745 #. type: textblock
746 #: ../cat/virt-filesystems.pod:112
747 msgid ""
748 "Display everything.  This is currently the same as specifying these options: "
749 "I<--filesystems>, I<--extra>, I<--partitions>, I<--block-devices>, "
750 "I<--logical-volumes>, I<--volume-groups>, I<--physical-volumes>.  (More may "
751 "be added to this list in future)."
752 msgstr ""
753
754 #. type: textblock
755 #: ../cat/virt-filesystems.pod:117
756 msgid "See also I<--long>."
757 msgstr ""
758
759 #. type: =item
760 #: ../cat/virt-filesystems.pod:119
761 msgid "B<--blkdevs>"
762 msgstr ""
763
764 #. type: =item
765 #: ../cat/virt-filesystems.pod:121
766 msgid "B<--block-devices>"
767 msgstr ""
768
769 #. type: textblock
770 #: ../cat/virt-filesystems.pod:123
771 msgid "Display block devices."
772 msgstr ""
773
774 #. type: =item
775 #: ../cat/virt-filesystems.pod:135 ../cat/virt-ls.pod:301
776 msgid "B<--csv>"
777 msgstr ""
778
779 #. type: textblock
780 #: ../cat/virt-filesystems.pod:137 ../cat/virt-ls.pod:303
781 msgid ""
782 "Write out the results in CSV format (comma-separated values).  This format "
783 "can be imported easily into databases and spreadsheets, but read L</NOTE "
784 "ABOUT CSV FORMAT> below."
785 msgstr ""
786
787 #. type: textblock
788 #: ../cat/virt-filesystems.pod:150
789 msgid ""
790 "When prompting for keys and passphrases, virt-filesystems normally turns "
791 "echoing off so you cannot see what you are typing.  If you are not worried "
792 "about Tempest attacks and there is no one else in the room you can specify "
793 "this flag to see what you are typing."
794 msgstr ""
795
796 #. type: =item
797 #: ../cat/virt-filesystems.pod:155
798 msgid "B<--extra>"
799 msgstr ""
800
801 #. type: textblock
802 #: ../cat/virt-filesystems.pod:157
803 msgid ""
804 "This causes filesystems that are not ordinary, mountable filesystems to be "
805 "displayed.  This category includes swapspace, and filesystems that are empty "
806 "or contain unknown data."
807 msgstr ""
808
809 #. type: textblock
810 #: ../cat/virt-filesystems.pod:161
811 msgid "This option implies I<--filesystems>."
812 msgstr ""
813
814 #. type: =item
815 #: ../cat/virt-filesystems.pod:163
816 msgid "B<--filesystems>"
817 msgstr ""
818
819 #. type: textblock
820 #: ../cat/virt-filesystems.pod:165
821 msgid ""
822 "Display mountable filesystems.  If no display option was selected then this "
823 "option is implied."
824 msgstr ""
825
826 #. type: textblock
827 #: ../cat/virt-filesystems.pod:168
828 msgid "With I<--extra>, non-mountable filesystems are shown too."
829 msgstr ""
830
831 #. type: verbatim
832 #: ../cat/virt-filesystems.pod:181
833 #, no-wrap
834 msgid ""
835 " virt-filesystems --format=raw -a disk.img\n"
836 "\n"
837 msgstr ""
838
839 #. type: verbatim
840 #: ../cat/virt-filesystems.pod:185
841 #, no-wrap
842 msgid ""
843 " virt-filesystems --format=raw -a disk.img --format -a another.img\n"
844 "\n"
845 msgstr ""
846
847 #. type: =item
848 #: ../cat/virt-filesystems.pod:194 ../cat/virt-ls.pod:352 ../df/virt-df.pod:119 ../fish/guestfish.pod:156 ../tools/virt-list-partitions.pl:109
849 msgid "B<-h>"
850 msgstr ""
851
852 #. type: =item
853 #: ../cat/virt-filesystems.pod:196 ../cat/virt-ls.pod:354 ../df/virt-df.pod:121 ../tools/virt-list-partitions.pl:111
854 msgid "B<--human-readable>"
855 msgstr ""
856
857 #. type: textblock
858 #: ../cat/virt-filesystems.pod:198
859 msgid "In I<--long> mode, display sizes in human-readable format."
860 msgstr ""
861
862 #. type: =item
863 #: ../cat/virt-filesystems.pod:205 ../cat/virt-ls.pod:366 ../tools/virt-list-filesystems.pl:108 ../tools/virt-list-partitions.pl:119
864 msgid "B<-l>"
865 msgstr ""
866
867 #. type: =item
868 #: ../cat/virt-filesystems.pod:207 ../cat/virt-ls.pod:368 ../tools/virt-list-filesystems.pl:110 ../tools/virt-list-partitions.pl:121
869 msgid "B<--long>"
870 msgstr ""
871
872 #. type: textblock
873 #: ../cat/virt-filesystems.pod:209
874 msgid "Display extra columns of data (\"long format\")."
875 msgstr ""
876
877 #. type: textblock
878 #: ../cat/virt-filesystems.pod:211
879 msgid "A title row is added unless you also specify I<--no-title>."
880 msgstr ""
881
882 #. type: textblock
883 #: ../cat/virt-filesystems.pod:213
884 msgid ""
885 "The extra columns displayed depend on what output you select, and the "
886 "ordering of columns may change in future versions.  Use the title row, "
887 "I<--csv> output and/or L<csvtool(1)> to match columns to data in external "
888 "programs."
889 msgstr ""
890
891 #. type: textblock
892 #: ../cat/virt-filesystems.pod:218
893 msgid ""
894 "Use I<-h> if you want sizes to be displayed in human-readable format.  The "
895 "default is to show raw numbers of I<bytes>."
896 msgstr ""
897
898 #. type: textblock
899 #: ../cat/virt-filesystems.pod:221
900 msgid "Use I<--uuid> to display UUIDs too."
901 msgstr ""
902
903 #. type: =item
904 #: ../cat/virt-filesystems.pod:223
905 msgid "B<--lvs>"
906 msgstr ""
907
908 #. type: =item
909 #: ../cat/virt-filesystems.pod:225
910 msgid "B<--logvols>"
911 msgstr ""
912
913 #. type: =item
914 #: ../cat/virt-filesystems.pod:227
915 msgid "B<--logical-volumes>"
916 msgstr ""
917
918 #. type: textblock
919 #: ../cat/virt-filesystems.pod:229
920 msgid ""
921 "Display LVM logical volumes.  In this mode, these are displayed irrespective "
922 "of whether the LVs contain filesystems."
923 msgstr ""
924
925 #. type: =item
926 #: ../cat/virt-filesystems.pod:232
927 msgid "B<--no-title>"
928 msgstr ""
929
930 #. type: textblock
931 #: ../cat/virt-filesystems.pod:234
932 msgid "In I<--long> mode, don't add a title row."
933 msgstr ""
934
935 #. type: textblock
936 #: ../cat/virt-filesystems.pod:236
937 msgid ""
938 "Note that the order of the columns is not fixed, and may change in future "
939 "versions of virt-filesystems, so using this option may give you unexpected "
940 "surprises."
941 msgstr ""
942
943 #. type: =item
944 #: ../cat/virt-filesystems.pod:240
945 msgid "B<--parts>"
946 msgstr ""
947
948 #. type: =item
949 #: ../cat/virt-filesystems.pod:242
950 msgid "B<--partitions>"
951 msgstr ""
952
953 #. type: textblock
954 #: ../cat/virt-filesystems.pod:244
955 msgid ""
956 "Display partitions.  In this mode, these are displayed irrespective of "
957 "whether the partitions contain filesystems."
958 msgstr ""
959
960 #. type: =item
961 #: ../cat/virt-filesystems.pod:247
962 msgid "B<--pvs>"
963 msgstr ""
964
965 #. type: =item
966 #: ../cat/virt-filesystems.pod:249
967 msgid "B<--physvols>"
968 msgstr ""
969
970 #. type: =item
971 #: ../cat/virt-filesystems.pod:251
972 msgid "B<--physical-volumes>"
973 msgstr ""
974
975 #. type: textblock
976 #: ../cat/virt-filesystems.pod:253
977 msgid "Display LVM physical volumes."
978 msgstr ""
979
980 #. type: =item
981 #: ../cat/virt-filesystems.pod:255 ../df/virt-df.pod:157
982 msgid "B<--uuid>"
983 msgstr ""
984
985 #. type: =item
986 #: ../cat/virt-filesystems.pod:257
987 msgid "B<--uuids>"
988 msgstr ""
989
990 #. type: textblock
991 #: ../cat/virt-filesystems.pod:259
992 msgid "In I<--long> mode, display UUIDs as well."
993 msgstr ""
994
995 #. type: =item
996 #: ../cat/virt-filesystems.pod:273
997 msgid "B<--vgs>"
998 msgstr ""
999
1000 #. type: =item
1001 #: ../cat/virt-filesystems.pod:275
1002 msgid "B<--volgroups>"
1003 msgstr ""
1004
1005 #. type: =item
1006 #: ../cat/virt-filesystems.pod:277
1007 msgid "B<--volume-groups>"
1008 msgstr ""
1009
1010 #. type: textblock
1011 #: ../cat/virt-filesystems.pod:279
1012 msgid "Display LVM volume groups."
1013 msgstr ""
1014
1015 #. type: =head1
1016 #: ../cat/virt-filesystems.pod:287
1017 msgid "COLUMNS"
1018 msgstr ""
1019
1020 #. type: textblock
1021 #: ../cat/virt-filesystems.pod:289
1022 msgid ""
1023 "Note that columns in the output are subject to reordering and change in "
1024 "future versions of this tool."
1025 msgstr ""
1026
1027 #. type: =item
1028 #: ../cat/virt-filesystems.pod:294
1029 msgid "B<Name>"
1030 msgstr ""
1031
1032 #. type: textblock
1033 #: ../cat/virt-filesystems.pod:296
1034 msgid "The filesystem, partition, block device or LVM name."
1035 msgstr ""
1036
1037 #. type: textblock
1038 #: ../cat/virt-filesystems.pod:298
1039 msgid ""
1040 "For device and partition names these are displayed as canonical libguestfs "
1041 "names, so that for example C</dev/sda2> is the second partition on the first "
1042 "device."
1043 msgstr ""
1044
1045 #. type: textblock
1046 #: ../cat/virt-filesystems.pod:302
1047 msgid ""
1048 "If the I<--long> option is B<not> specified, then only the name column is "
1049 "shown in the output."
1050 msgstr ""
1051
1052 #. type: =item
1053 #: ../cat/virt-filesystems.pod:305
1054 msgid "B<Type>"
1055 msgstr ""
1056
1057 #. type: textblock
1058 #: ../cat/virt-filesystems.pod:307
1059 msgid "The object type, for example C<filesystem>, C<lv>, C<device> etc."
1060 msgstr ""
1061
1062 #. type: =item
1063 #: ../cat/virt-filesystems.pod:309
1064 msgid "B<VFS>"
1065 msgstr ""
1066
1067 #. type: textblock
1068 #: ../cat/virt-filesystems.pod:311
1069 msgid ""
1070 "If there is a filesystem, then this column displays the filesystem type if "
1071 "one could be detected, eg. C<ext4>."
1072 msgstr ""
1073
1074 #. type: =item
1075 #: ../cat/virt-filesystems.pod:314
1076 msgid "B<Label>"
1077 msgstr ""
1078
1079 #. type: textblock
1080 #: ../cat/virt-filesystems.pod:316
1081 msgid ""
1082 "If the object has a label (used for identifying and mounting filesystems) "
1083 "then this column contains the label."
1084 msgstr ""
1085
1086 #. type: =item
1087 #: ../cat/virt-filesystems.pod:319
1088 msgid "B<Size>"
1089 msgstr ""
1090
1091 #. type: textblock
1092 #: ../cat/virt-filesystems.pod:321
1093 msgid ""
1094 "The size of the object in bytes.  If the I<--human> option is used then the "
1095 "size is displayed in a human-readable form."
1096 msgstr ""
1097
1098 #. type: =item
1099 #: ../cat/virt-filesystems.pod:324
1100 msgid "B<Parent>"
1101 msgstr ""
1102
1103 #. type: textblock
1104 #: ../cat/virt-filesystems.pod:326
1105 msgid ""
1106 "The parent column records the parent relationship between objects.  For "
1107 "example, if the object is a partition, then this column contains the name of "
1108 "the containing device.  If the object is a logical volume, then this column "
1109 "is the name of the volume group."
1110 msgstr ""
1111
1112 #. type: =item
1113 #: ../cat/virt-filesystems.pod:331
1114 msgid "B<UUID>"
1115 msgstr ""
1116
1117 #. type: textblock
1118 #: ../cat/virt-filesystems.pod:333
1119 msgid ""
1120 "If the object has a UUID (used for identifying and mounting filesystems and "
1121 "block devices) then this column contains the UUID as a string."
1122 msgstr ""
1123
1124 #. type: textblock
1125 #: ../cat/virt-filesystems.pod:337
1126 msgid "The UUID is only displayed if the I<--uuid> option is given."
1127 msgstr ""
1128
1129 #. type: =head1
1130 #: ../cat/virt-filesystems.pod:341 ../cat/virt-ls.pod:459 ../df/virt-df.pod:185
1131 msgid "NOTE ABOUT CSV FORMAT"
1132 msgstr ""
1133
1134 #. type: textblock
1135 #: ../cat/virt-filesystems.pod:343 ../cat/virt-ls.pod:461 ../df/virt-df.pod:187
1136 msgid ""
1137 "Comma-separated values (CSV) is a deceptive format.  It I<seems> like it "
1138 "should be easy to parse, but it is definitely not easy to parse."
1139 msgstr ""
1140
1141 #. type: textblock
1142 #: ../cat/virt-filesystems.pod:346 ../cat/virt-ls.pod:464 ../df/virt-df.pod:190
1143 msgid ""
1144 "Myth: Just split fields at commas.  Reality: This does I<not> work "
1145 "reliably.  This example has two columns:"
1146 msgstr ""
1147
1148 #. type: verbatim
1149 #: ../cat/virt-filesystems.pod:349 ../cat/virt-ls.pod:467 ../df/virt-df.pod:193
1150 #, no-wrap
1151 msgid ""
1152 " \"foo,bar\",baz\n"
1153 "\n"
1154 msgstr ""
1155
1156 #. type: textblock
1157 #: ../cat/virt-filesystems.pod:351 ../cat/virt-ls.pod:469 ../df/virt-df.pod:195
1158 msgid ""
1159 "Myth: Read the file one line at a time.  Reality: This does I<not> work "
1160 "reliably.  This example has one row:"
1161 msgstr ""
1162
1163 #. type: verbatim
1164 #: ../cat/virt-filesystems.pod:354 ../cat/virt-ls.pod:472 ../df/virt-df.pod:198
1165 #, no-wrap
1166 msgid ""
1167 " \"foo\n"
1168 " bar\",baz\n"
1169 "\n"
1170 msgstr ""
1171
1172 #. type: textblock
1173 #: ../cat/virt-filesystems.pod:357 ../cat/virt-ls.pod:475 ../df/virt-df.pod:201
1174 msgid ""
1175 "For shell scripts, use C<csvtool> (L<http://merjis.com/developers/csv> also "
1176 "packaged in major Linux distributions)."
1177 msgstr ""
1178
1179 #. type: textblock
1180 #: ../cat/virt-filesystems.pod:360 ../cat/virt-ls.pod:478 ../df/virt-df.pod:204
1181 msgid ""
1182 "For other languages, use a CSV processing library (eg. C<Text::CSV> for Perl "
1183 "or Python's built-in csv library)."
1184 msgstr ""
1185
1186 #. type: textblock
1187 #: ../cat/virt-filesystems.pod:363 ../cat/virt-ls.pod:481 ../df/virt-df.pod:207
1188 msgid "Most spreadsheets and databases can import CSV directly."
1189 msgstr ""
1190
1191 #. type: textblock
1192 #: ../cat/virt-filesystems.pod:374
1193 msgid ""
1194 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-df(1)>, "
1195 "L<virt-list-filesystems(1)>, L<virt-list-partitions(1)>, L<csvtool(1)>, "
1196 "L<http://libguestfs.org/>."
1197 msgstr ""
1198
1199 #. type: textblock
1200 #: ../cat/virt-filesystems.pod:389 ../tools/virt-make-fs.pl:570 ../tools/virt-win-reg.pl:778
1201 msgid "Copyright (C) 2010 Red Hat Inc."
1202 msgstr ""
1203
1204 #. type: textblock
1205 #: ../cat/virt-ls.pod:5
1206 msgid "virt-ls - List files in a virtual machine"
1207 msgstr ""
1208
1209 #. type: verbatim
1210 #: ../cat/virt-ls.pod:9
1211 #, no-wrap
1212 msgid ""
1213 " virt-ls [--options] -d domname directory [directory ...]\n"
1214 "\n"
1215 msgstr ""
1216
1217 #. type: verbatim
1218 #: ../cat/virt-ls.pod:11
1219 #, no-wrap
1220 msgid ""
1221 " virt-ls [--options] -a disk.img [-a disk.img ...] directory [directory "
1222 "...]\n"
1223 "\n"
1224 msgstr ""
1225
1226 #. type: textblock
1227 #: ../cat/virt-ls.pod:13 ../df/virt-df.pod:15 ../rescue/virt-rescue.pod:13
1228 msgid "Old style:"
1229 msgstr ""
1230
1231 #. type: verbatim
1232 #: ../cat/virt-ls.pod:15
1233 #, no-wrap
1234 msgid ""
1235 " virt-ls [--options] domname directory\n"
1236 "\n"
1237 msgstr ""
1238
1239 #. type: verbatim
1240 #: ../cat/virt-ls.pod:17
1241 #, no-wrap
1242 msgid ""
1243 " virt-ls [--options] disk.img [disk.img ...] directory\n"
1244 "\n"
1245 msgstr ""
1246
1247 #. type: textblock
1248 #: ../cat/virt-ls.pod:21
1249 msgid ""
1250 "C<virt-ls> lists filenames, file sizes, checksums, extended attributes and "
1251 "more from a virtual machine or disk image."
1252 msgstr ""
1253
1254 #. type: textblock
1255 #: ../cat/virt-ls.pod:24
1256 msgid ""
1257 "Multiple directory names can be given, in which case the output from each is "
1258 "concatenated."
1259 msgstr ""
1260
1261 #. type: textblock
1262 #: ../cat/virt-ls.pod:27
1263 msgid ""
1264 "To list directories from a libvirt guest use the I<-d> option to specify the "
1265 "name of the guest.  For a disk image, use the I<-a> option."
1266 msgstr ""
1267
1268 #. type: textblock
1269 #: ../cat/virt-ls.pod:31
1270 msgid ""
1271 "C<virt-ls> can do many simple file listings.  For more complicated cases you "
1272 "may need to use L<guestfish(1)>, or write a program directly to the "
1273 "L<guestfs(3)> API."
1274 msgstr ""
1275
1276 #. type: textblock
1277 #: ../cat/virt-ls.pod:37
1278 msgid "Get a list of all files and directories in a virtual machine:"
1279 msgstr ""
1280
1281 #. type: verbatim
1282 #: ../cat/virt-ls.pod:39
1283 #, no-wrap
1284 msgid ""
1285 " virt-ls -R -d guest /\n"
1286 "\n"
1287 msgstr ""
1288
1289 #. type: textblock
1290 #: ../cat/virt-ls.pod:41
1291 msgid "List all setuid or setgid programs in a Linux virtual machine:"
1292 msgstr ""
1293
1294 #. type: verbatim
1295 #: ../cat/virt-ls.pod:43
1296 #, no-wrap
1297 msgid ""
1298 " virt-ls -lR -d guest / | grep '^- [42]'\n"
1299 "\n"
1300 msgstr ""
1301
1302 #. type: textblock
1303 #: ../cat/virt-ls.pod:45
1304 msgid "List all public-writable directories in a Linux virtual machine:"
1305 msgstr ""
1306
1307 #. type: verbatim
1308 #: ../cat/virt-ls.pod:47
1309 #, no-wrap
1310 msgid ""
1311 " virt-ls -lR -d guest / | grep '^d ...7'\n"
1312 "\n"
1313 msgstr ""
1314
1315 #. type: textblock
1316 #: ../cat/virt-ls.pod:49
1317 msgid "List all Unix domain sockets in a Linux virtual machine:"
1318 msgstr ""
1319
1320 #. type: verbatim
1321 #: ../cat/virt-ls.pod:51
1322 #, no-wrap
1323 msgid ""
1324 " virt-ls -lR -d guest / | grep '^s'\n"
1325 "\n"
1326 msgstr ""
1327
1328 #. type: textblock
1329 #: ../cat/virt-ls.pod:53
1330 msgid "List all regular files with filenames ending in '.png':"
1331 msgstr ""
1332
1333 #. type: verbatim
1334 #: ../cat/virt-ls.pod:55
1335 #, no-wrap
1336 msgid ""
1337 " virt-ls -lR -d guest / | grep -i '^-.*\\.png$'\n"
1338 "\n"
1339 msgstr ""
1340
1341 #. type: textblock
1342 #: ../cat/virt-ls.pod:57
1343 msgid "To display files larger than 10MB in home directories:"
1344 msgstr ""
1345
1346 #. type: verbatim
1347 #: ../cat/virt-ls.pod:59
1348 #, no-wrap
1349 msgid ""
1350 " virt-ls -lR -d guest /home | awk '$3 > 10*1024*1024'\n"
1351 "\n"
1352 msgstr ""
1353
1354 #. type: textblock
1355 #: ../cat/virt-ls.pod:61
1356 msgid "Find everything modified in the last 7 days:"
1357 msgstr ""
1358
1359 #. type: verbatim
1360 #: ../cat/virt-ls.pod:63
1361 #, no-wrap
1362 msgid ""
1363 " virt-ls -lR -d guest --time-days / | awk '$6 <= 7'\n"
1364 "\n"
1365 msgstr ""
1366
1367 #. type: textblock
1368 #: ../cat/virt-ls.pod:65
1369 msgid "Find regular files modified in the last 24 hours:"
1370 msgstr ""
1371
1372 #. type: verbatim
1373 #: ../cat/virt-ls.pod:67
1374 #, no-wrap
1375 msgid ""
1376 " virt-ls -lR -d guest --time-days / | grep '^-' | awk '$6 < 1'\n"
1377 "\n"
1378 msgstr ""
1379
1380 #. type: =head2
1381 #: ../cat/virt-ls.pod:69
1382 msgid "DIFFERENCES IN SNAPSHOTS AND BACKING FILES"
1383 msgstr ""
1384
1385 #. type: textblock
1386 #: ../cat/virt-ls.pod:71
1387 msgid ""
1388 "Find the differences between files in a guest and an earlier snapshot of the "
1389 "same guest."
1390 msgstr ""
1391
1392 #. type: verbatim
1393 #: ../cat/virt-ls.pod:74
1394 #, no-wrap
1395 msgid ""
1396 " virt-ls -lR -a snapshot.img / --uids --time-t > old\n"
1397 " virt-ls -lR -a current.img / --uids --time-t > new\n"
1398 " diff -u old new | less\n"
1399 "\n"
1400 msgstr ""
1401
1402 #. type: textblock
1403 #: ../cat/virt-ls.pod:78
1404 msgid ""
1405 "The commands above won't find files where the content has changed but the "
1406 "metadata (eg. file size and modification date) is the same.  To do that, you "
1407 "need to add the I<--checksum> parameter to both C<virt-ls> commands.  "
1408 "I<--checksum> can be quite slow since it has to read and compute a checksum "
1409 "of every regular file in the virtual machine."
1410 msgstr ""
1411
1412 #. type: =head1
1413 #: ../cat/virt-ls.pod:84
1414 msgid "OUTPUT MODES"
1415 msgstr ""
1416
1417 #. type: textblock
1418 #: ../cat/virt-ls.pod:86
1419 msgid ""
1420 "C<virt-ls> has four output modes, controlled by different combinations of "
1421 "the I<-l> and I<-R> options."
1422 msgstr ""
1423
1424 #. type: =head2
1425 #: ../cat/virt-ls.pod:89
1426 msgid "SIMPLE LISTING"
1427 msgstr ""
1428
1429 #. type: textblock
1430 #: ../cat/virt-ls.pod:91
1431 msgid "A simple listing is like the ordinary L<ls(1)> command:"
1432 msgstr ""
1433
1434 #. type: verbatim
1435 #: ../cat/virt-ls.pod:93
1436 #, no-wrap
1437 msgid ""
1438 " $ virt-ls -d guest /\n"
1439 " bin\n"
1440 " boot\n"
1441 " [etc.]\n"
1442 "\n"
1443 msgstr ""
1444
1445 #. type: =head2
1446 #: ../cat/virt-ls.pod:98
1447 msgid "LONG LISTING"
1448 msgstr ""
1449
1450 #. type: textblock
1451 #: ../cat/virt-ls.pod:100
1452 msgid ""
1453 "With the I<-l> (I<--long>) option, the output is like the C<ls -l> command "
1454 "(more specifically, like the C<guestfs_ll> function)."
1455 msgstr ""
1456
1457 #. type: verbatim
1458 #: ../cat/virt-ls.pod:103
1459 #, no-wrap
1460 msgid ""
1461 " $ virt-ls -l -d guest /\n"
1462 " total 204\n"
1463 " dr-xr-xr-x.   2 root root   4096 2009-08-25 19:06 bin\n"
1464 " dr-xr-xr-x.   5 root root   3072 2009-08-25 19:06 boot\n"
1465 " [etc.]\n"
1466 "\n"
1467 msgstr ""
1468
1469 #. type: textblock
1470 #: ../cat/virt-ls.pod:109
1471 msgid ""
1472 "Note that while this is useful for displaying a directory, do not try "
1473 "parsing this output in another program.  Use L</RECURSIVE LONG LISTING> "
1474 "instead."
1475 msgstr ""
1476
1477 #. type: =head2
1478 #: ../cat/virt-ls.pod:113
1479 msgid "RECURSIVE LISTING"
1480 msgstr ""
1481
1482 #. type: textblock
1483 #: ../cat/virt-ls.pod:115
1484 msgid ""
1485 "With the I<-R> (I<--recursive>) option, C<virt-ls> lists the names of files "
1486 "and directories recursively:"
1487 msgstr ""
1488
1489 #. type: verbatim
1490 #: ../cat/virt-ls.pod:118
1491 #, no-wrap
1492 msgid ""
1493 " $ virt-ls -R -d guest /tmp\n"
1494 " foo\n"
1495 " foo/bar\n"
1496 " [etc.]\n"
1497 "\n"
1498 msgstr ""
1499
1500 #. type: textblock
1501 #: ../cat/virt-ls.pod:123
1502 msgid ""
1503 "To generate this output, C<virt-ls> runs the C<guestfs_find0> function and "
1504 "converts C<\\0> characters to C<\\n>."
1505 msgstr ""
1506
1507 #. type: =head2
1508 #: ../cat/virt-ls.pod:126
1509 msgid "RECURSIVE LONG LISTING"
1510 msgstr ""
1511
1512 #. type: textblock
1513 #: ../cat/virt-ls.pod:128
1514 msgid ""
1515 "Using I<-lR> options together changes the output to display directories "
1516 "recursively, with file stats, and optionally other features such as "
1517 "checksums and extended attributes."
1518 msgstr ""
1519
1520 #. type: textblock
1521 #: ../cat/virt-ls.pod:132
1522 msgid ""
1523 "Most of the interesting features of C<virt-ls> are only available when using "
1524 "I<-lR> mode."
1525 msgstr ""
1526
1527 #. type: textblock
1528 #: ../cat/virt-ls.pod:135
1529 msgid ""
1530 "The fields are normally space-separated.  Filenames are B<not> quoted, so "
1531 "you cannot use the output in another program (because filenames can contain "
1532 "spaces and other unsafe characters).  If the guest was untrusted and someone "
1533 "knew you were using C<virt-ls> to analyze the guest, they could play tricks "
1534 "on you by creating filenames with embedded newline characters.  To B<safely> "
1535 "parse the output in another program, use the I<--csv> (Comma-Separated "
1536 "Values) option."
1537 msgstr ""
1538
1539 #. type: textblock
1540 #: ../cat/virt-ls.pod:143
1541 msgid ""
1542 "Note that this output format is completely unrelated to the C<ls -lR> "
1543 "command."
1544 msgstr ""
1545
1546 #. type: verbatim
1547 #: ../cat/virt-ls.pod:146
1548 #, no-wrap
1549 msgid ""
1550 " $ virt-ls -lR -d guest /bin\n"
1551 " d 0555       4096 /bin\n"
1552 " - 0755        123 /bin/alsaunmute\n"
1553 " - 0755      28328 /bin/arch\n"
1554 " l 0777          4 /bin/awk -> gawk\n"
1555 " - 0755      27216 /bin/basename\n"
1556 " - 0755     943360 /bin/bash\n"
1557 " [etc.]\n"
1558 "\n"
1559 msgstr ""
1560
1561 #. type: textblock
1562 #: ../cat/virt-ls.pod:155
1563 msgid "These basic fields are always shown:"
1564 msgstr ""
1565
1566 #. type: =item
1567 #: ../cat/virt-ls.pod:159
1568 msgid "type"
1569 msgstr ""
1570
1571 #. type: textblock
1572 #: ../cat/virt-ls.pod:161
1573 msgid ""
1574 "The file type, one of: C<-> (regular file), C<d> (directory), C<c> "
1575 "(character device), C<b> (block device), C<p> (named pipe), C<l> (symbolic "
1576 "link), C<s> (socket) or C<u> (unknown)."
1577 msgstr ""
1578
1579 #. type: =item
1580 #: ../cat/virt-ls.pod:171
1581 msgid "permissions"
1582 msgstr ""
1583
1584 #. type: textblock
1585 #: ../cat/virt-ls.pod:173
1586 msgid "The Unix permissions, displayed as a 4 digit octal number."
1587 msgstr ""
1588
1589 #. type: =item
1590 #: ../cat/virt-ls.pod:175
1591 msgid "size"
1592 msgstr ""
1593
1594 #. type: textblock
1595 #: ../cat/virt-ls.pod:177
1596 msgid ""
1597 "The size of the file.  This is shown in bytes unless I<-h> or "
1598 "I<--human-readable> option is given, in which case this is shown as a "
1599 "human-readable number."
1600 msgstr ""
1601
1602 #. type: =head2
1603 #: ../cat/virt-ls.pod:181 ../fish/guestfish-actions.pod:4183
1604 msgid "path"
1605 msgstr ""
1606
1607 #. type: textblock
1608 #: ../cat/virt-ls.pod:183
1609 msgid "The full path of the file or directory."
1610 msgstr ""
1611
1612 #. type: =item
1613 #: ../cat/virt-ls.pod:185
1614 msgid "link"
1615 msgstr ""
1616
1617 #. type: textblock
1618 #: ../cat/virt-ls.pod:187
1619 msgid "For symbolic links only, the link target."
1620 msgstr ""
1621
1622 #. type: textblock
1623 #: ../cat/virt-ls.pod:191
1624 msgid ""
1625 "In I<-lR> mode, additional command line options enable the display of more "
1626 "fields."
1627 msgstr ""
1628
1629 #. type: textblock
1630 #: ../cat/virt-ls.pod:194
1631 msgid ""
1632 "With the I<--uids> flag, these additional fields are displayed before the "
1633 "path:"
1634 msgstr ""
1635
1636 #. type: =item
1637 #: ../cat/virt-ls.pod:199
1638 msgid "uid"
1639 msgstr ""
1640
1641 #. type: =item
1642 #: ../cat/virt-ls.pod:201
1643 msgid "gid"
1644 msgstr ""
1645
1646 #. type: textblock
1647 #: ../cat/virt-ls.pod:203
1648 msgid ""
1649 "The UID and GID of the owner of the file (displayed numerically).  Note "
1650 "these only make sense in the context of a Unix-like guest."
1651 msgstr ""
1652
1653 #. type: textblock
1654 #: ../cat/virt-ls.pod:208
1655 msgid "With the I<--times> flag, these additional fields are displayed:"
1656 msgstr ""
1657
1658 #. type: =item
1659 #: ../cat/virt-ls.pod:212
1660 msgid "atime"
1661 msgstr ""
1662
1663 #. type: textblock
1664 #: ../cat/virt-ls.pod:214
1665 msgid "The time of last access."
1666 msgstr ""
1667
1668 #. type: =item
1669 #: ../cat/virt-ls.pod:216
1670 msgid "mtime"
1671 msgstr ""
1672
1673 #. type: textblock
1674 #: ../cat/virt-ls.pod:218
1675 msgid "The time of last modification."
1676 msgstr ""
1677
1678 #. type: =item
1679 #: ../cat/virt-ls.pod:220
1680 msgid "ctime"
1681 msgstr ""
1682
1683 #. type: textblock
1684 #: ../cat/virt-ls.pod:222
1685 msgid "The time of last status change."
1686 msgstr ""
1687
1688 #. type: textblock
1689 #: ../cat/virt-ls.pod:226
1690 msgid ""
1691 "The time fields are displayed as string dates and times, unless one of the "
1692 "I<--time-t>, I<--time-relative> or I<--time-days> flags is given."
1693 msgstr ""
1694
1695 #. type: textblock
1696 #: ../cat/virt-ls.pod:229
1697 msgid "With the I<--extra-stats> flag, these additional fields are displayed:"
1698 msgstr ""
1699
1700 #. type: =item
1701 #: ../cat/virt-ls.pod:233
1702 msgid "device"
1703 msgstr ""
1704
1705 #. type: textblock
1706 #: ../cat/virt-ls.pod:235
1707 msgid ""
1708 "The device containing the file (displayed as major:minor).  This may not "
1709 "match devices as known to the guest."
1710 msgstr ""
1711
1712 #. type: =item
1713 #: ../cat/virt-ls.pod:238
1714 msgid "inode"
1715 msgstr ""
1716
1717 #. type: textblock
1718 #: ../cat/virt-ls.pod:240
1719 msgid "The inode number."
1720 msgstr ""
1721
1722 #. type: =item
1723 #: ../cat/virt-ls.pod:242
1724 msgid "nlink"
1725 msgstr ""
1726
1727 #. type: textblock
1728 #: ../cat/virt-ls.pod:244
1729 msgid "The number of hard links."
1730 msgstr ""
1731
1732 #. type: =item
1733 #: ../cat/virt-ls.pod:246
1734 msgid "rdev"
1735 msgstr ""
1736
1737 #. type: textblock
1738 #: ../cat/virt-ls.pod:248
1739 msgid "For block and char special files, the device (displayed as major:minor)."
1740 msgstr ""
1741
1742 #. type: =item
1743 #: ../cat/virt-ls.pod:251
1744 msgid "blocks"
1745 msgstr ""
1746
1747 #. type: textblock
1748 #: ../cat/virt-ls.pod:253
1749 msgid "The number of 512 byte blocks allocated to the file."
1750 msgstr ""
1751
1752 #. type: textblock
1753 #: ../cat/virt-ls.pod:257
1754 msgid ""
1755 "With the I<--checksum> flag, the checksum of the file contents is shown "
1756 "(only for regular files).  Computing file checksums can take a considerable "
1757 "amount of time."
1758 msgstr ""
1759
1760 #. type: =item
1761 #: ../cat/virt-ls.pod:280
1762 msgid "B<--checksum>"
1763 msgstr ""
1764
1765 #. type: =item
1766 #: ../cat/virt-ls.pod:282
1767 msgid "B<--checksum=crc|md5|sha1|sha224|sha256|sha384|sha512>"
1768 msgstr ""
1769
1770 #. type: textblock
1771 #: ../cat/virt-ls.pod:284
1772 msgid ""
1773 "Display checksum over file contents for regular files.  With no argument, "
1774 "this defaults to using I<md5>.  Using an argument, you can select the "
1775 "checksum type to use."
1776 msgstr ""
1777
1778 #. type: textblock
1779 #: ../cat/virt-ls.pod:288 ../cat/virt-ls.pod:325 ../cat/virt-ls.pod:358 ../cat/virt-ls.pod:391 ../cat/virt-ls.pod:401 ../cat/virt-ls.pod:408 ../cat/virt-ls.pod:415 ../cat/virt-ls.pod:422
1780 msgid ""
1781 "This option only has effect in I<-lR> output mode.  See L</RECURSIVE LONG "
1782 "LISTING> above."
1783 msgstr ""
1784
1785 #. type: textblock
1786 #: ../cat/virt-ls.pod:316
1787 msgid ""
1788 "When prompting for keys and passphrases, virt-ls normally turns echoing off "
1789 "so you cannot see what you are typing.  If you are not worried about Tempest "
1790 "attacks and there is no one else in the room you can specify this flag to "
1791 "see what you are typing."
1792 msgstr ""
1793
1794 #. type: =item
1795 #: ../cat/virt-ls.pod:321
1796 msgid "B<--extra-stats>"
1797 msgstr ""
1798
1799 #. type: textblock
1800 #: ../cat/virt-ls.pod:323
1801 msgid "Display extra stats."
1802 msgstr ""
1803
1804 #. type: verbatim
1805 #: ../cat/virt-ls.pod:339
1806 #, no-wrap
1807 msgid ""
1808 " virt-ls --format=raw -a disk.img /dir\n"
1809 "\n"
1810 msgstr ""
1811
1812 #. type: verbatim
1813 #: ../cat/virt-ls.pod:343
1814 #, no-wrap
1815 msgid ""
1816 " virt-ls --format=raw -a disk.img --format -a another.img /dir\n"
1817 "\n"
1818 msgstr ""
1819
1820 #. type: textblock
1821 #: ../cat/virt-ls.pod:356
1822 msgid "Display file sizes in human-readable format."
1823 msgstr ""
1824
1825 #. type: =item
1826 #: ../cat/virt-ls.pod:370
1827 msgid "B<-R>"
1828 msgstr ""
1829
1830 #. type: =item
1831 #: ../cat/virt-ls.pod:372
1832 msgid "B<--recursive>"
1833 msgstr ""
1834
1835 #. type: textblock
1836 #: ../cat/virt-ls.pod:374
1837 msgid ""
1838 "Select the mode.  With neither of these options, C<virt-ls> produces a "
1839 "simple, flat list of the files in the named directory.  See L</SIMPLE "
1840 "LISTING>."
1841 msgstr ""
1842
1843 #. type: textblock
1844 #: ../cat/virt-ls.pod:378
1845 msgid ""
1846 "C<virt-ls -l> produces a \"long listing\", which shows more detail.  See "
1847 "L</LONG LISTING>."
1848 msgstr ""
1849
1850 #. type: textblock
1851 #: ../cat/virt-ls.pod:381
1852 msgid ""
1853 "C<virt-ls -R> produces a recursive list of files starting at the named "
1854 "directory.  See L</RECURSIVE LISTING>."
1855 msgstr ""
1856
1857 #. type: textblock
1858 #: ../cat/virt-ls.pod:384
1859 msgid ""
1860 "C<virt-ls -lR> produces a recursive long listing which can be more easily "
1861 "parsed.  See L</RECURSIVE LONG LISTING>."
1862 msgstr ""
1863
1864 #. type: =item
1865 #: ../cat/virt-ls.pod:387
1866 msgid "B<--times>"
1867 msgstr ""
1868
1869 #. type: textblock
1870 #: ../cat/virt-ls.pod:389
1871 msgid "Display time fields."
1872 msgstr ""
1873
1874 #. type: =item
1875 #: ../cat/virt-ls.pod:394
1876 msgid "B<--time-days>"
1877 msgstr ""
1878
1879 #. type: textblock
1880 #: ../cat/virt-ls.pod:396
1881 msgid "Display time fields as days before now (negative if in the future)."
1882 msgstr ""
1883
1884 #. type: textblock
1885 #: ../cat/virt-ls.pod:398
1886 msgid ""
1887 "Note that C<0> in output means \"up to 1 day before now\", or that the age "
1888 "of the file is between 0 and 86399 seconds."
1889 msgstr ""
1890
1891 #. type: =item
1892 #: ../cat/virt-ls.pod:404
1893 msgid "B<--time-relative>"
1894 msgstr ""
1895
1896 #. type: textblock
1897 #: ../cat/virt-ls.pod:406
1898 msgid "Display time fields as seconds before now (negative if in the future)."
1899 msgstr ""
1900
1901 #. type: =item
1902 #: ../cat/virt-ls.pod:411
1903 msgid "B<--time-t>"
1904 msgstr ""
1905
1906 #. type: textblock
1907 #: ../cat/virt-ls.pod:413
1908 msgid "Display time fields as seconds since the Unix epoch."
1909 msgstr ""
1910
1911 #. type: =item
1912 #: ../cat/virt-ls.pod:418
1913 msgid "B<--uids>"
1914 msgstr ""
1915
1916 #. type: textblock
1917 #: ../cat/virt-ls.pod:420
1918 msgid "Display UID and GID fields."
1919 msgstr ""
1920
1921 #. type: textblock
1922 #: ../cat/virt-ls.pod:445
1923 msgid "Previous versions of virt-ls allowed you to write either:"
1924 msgstr ""
1925
1926 #. type: verbatim
1927 #: ../cat/virt-ls.pod:447
1928 #, no-wrap
1929 msgid ""
1930 " virt-ls disk.img [disk.img ...] /dir\n"
1931 "\n"
1932 msgstr ""
1933
1934 #. type: verbatim
1935 #: ../cat/virt-ls.pod:451
1936 #, no-wrap
1937 msgid ""
1938 " virt-ls guestname /dir\n"
1939 "\n"
1940 msgstr ""
1941
1942 #. type: textblock
1943 #: ../cat/virt-ls.pod:492
1944 msgid ""
1945 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-out(1)>, "
1946 "L<virt-tar-out(1)>, L<Sys::Guestfs(3)>, L<Sys::Guestfs::Lib(3)>, "
1947 "L<Sys::Virt(3)>, L<http://libguestfs.org/>."
1948 msgstr ""
1949
1950 #. type: textblock
1951 #: ../cat/virt-ls.pod:508 ../df/virt-df.pod:230 ../edit/virt-edit.pod:369 ../rescue/virt-rescue.pod:298
1952 msgid "Copyright (C) 2009-2011 Red Hat Inc."
1953 msgstr ""
1954
1955 #. type: textblock
1956 #: ../df/virt-df.pod:5
1957 msgid "virt-df - Display free space on virtual filesystems"
1958 msgstr ""
1959
1960 #. type: verbatim
1961 #: ../df/virt-df.pod:9
1962 #, no-wrap
1963 msgid ""
1964 " virt-df [--options]\n"
1965 "\n"
1966 msgstr ""
1967
1968 #. type: verbatim
1969 #: ../df/virt-df.pod:11
1970 #, no-wrap
1971 msgid ""
1972 " virt-df [--options] -d domname\n"
1973 "\n"
1974 msgstr ""
1975
1976 #. type: verbatim
1977 #: ../df/virt-df.pod:13
1978 #, no-wrap
1979 msgid ""
1980 " virt-df [--options] -a disk.img [-a disk.img ...]\n"
1981 "\n"
1982 msgstr ""
1983
1984 #. type: verbatim
1985 #: ../df/virt-df.pod:17
1986 #, no-wrap
1987 msgid ""
1988 " virt-df [--options] domname\n"
1989 "\n"
1990 msgstr ""
1991
1992 #. type: verbatim
1993 #: ../df/virt-df.pod:19
1994 #, no-wrap
1995 msgid ""
1996 " virt-df [--options] disk.img [disk.img ...]\n"
1997 "\n"
1998 msgstr ""
1999
2000 #. type: textblock
2001 #: ../df/virt-df.pod:23
2002 msgid ""
2003 "C<virt-df> is a command line tool to display free space on virtual machine "
2004 "filesystems.  Unlike other tools, it doesn't just display the size of disk "
2005 "allocated to a virtual machine, but can look inside disk images to see how "
2006 "much space is really being used."
2007 msgstr ""
2008
2009 #. type: textblock
2010 #: ../df/virt-df.pod:28
2011 msgid ""
2012 "If used without any I<-a> or I<-d> arguments, C<virt-df> checks with libvirt "
2013 "to get a list of all active and inactive guests, and performs a C<df>-type "
2014 "operation on each one in turn, printing out the results."
2015 msgstr ""
2016
2017 #. type: textblock
2018 #: ../df/virt-df.pod:32
2019 msgid ""
2020 "If any I<-a> or I<-d> arguments are specified, C<virt-df> performs a "
2021 "C<df>-type operation on either the single named libvirt domain, or on the "
2022 "disk image(s) listed on the command line (which must all belong to a single "
2023 "VM).  In this mode (with arguments), C<virt-df> will I<only work for a "
2024 "single guest>.  If you want to run on multiple guests, then you have to "
2025 "invoke C<virt-df> multiple times."
2026 msgstr ""
2027
2028 #. type: textblock
2029 #: ../df/virt-df.pod:39
2030 msgid ""
2031 "Use the I<--csv> option to get a format which can be easily parsed by other "
2032 "programs.  Other options are similar to the standard L<df(1)> command."
2033 msgstr ""
2034
2035 #. type: textblock
2036 #: ../df/virt-df.pod:45
2037 msgid ""
2038 "Show disk usage for a single libvirt guest called C<F14x64>.  Make the "
2039 "output human-readable:"
2040 msgstr ""
2041
2042 #. type: verbatim
2043 #: ../df/virt-df.pod:48
2044 #, no-wrap
2045 msgid ""
2046 " # virt-df -d F14x64 -h\n"
2047 " Filesystem                       Size     Used  Available  Use%\n"
2048 " F14x64:/dev/sda1                 484M      66M       393M   14%\n"
2049 " F14x64:/dev/vg_f13x64/lv_root    7.4G     3.4G       4.0G   46%\n"
2050 "\n"
2051 msgstr ""
2052
2053 #. type: textblock
2054 #: ../df/virt-df.pod:53
2055 msgid "Show disk usage for a disk image file called C<test.img>:"
2056 msgstr ""
2057
2058 #. type: verbatim
2059 #: ../df/virt-df.pod:55
2060 #, no-wrap
2061 msgid ""
2062 " $ virt-df -a test1.img\n"
2063 " Filesystem                  1K-blocks     Used  Available  Use%\n"
2064 " test1.img:/dev/sda1             99099     1551      92432    2%\n"
2065 "\n"
2066 msgstr ""
2067
2068 #. type: verbatim
2069 #: ../df/virt-df.pod:106
2070 #, no-wrap
2071 msgid ""
2072 " virt-df --format=raw -a disk.img\n"
2073 "\n"
2074 msgstr ""
2075
2076 #. type: verbatim
2077 #: ../df/virt-df.pod:110
2078 #, no-wrap
2079 msgid ""
2080 " virt-df --format=raw -a disk.img --format -a another.img\n"
2081 "\n"
2082 msgstr ""
2083
2084 #. type: textblock
2085 #: ../df/virt-df.pod:123
2086 msgid "Print sizes in human-readable format."
2087 msgstr ""
2088
2089 #. type: textblock
2090 #: ../df/virt-df.pod:125
2091 msgid "You are not allowed to use I<-h> and I<--csv> at the same time."
2092 msgstr ""
2093
2094 #. type: =item
2095 #: ../df/virt-df.pod:127 ../fish/guestfish.pod:258 ../fuse/guestmount.pod:155
2096 msgid "B<-i>"
2097 msgstr ""
2098
2099 #. type: =item
2100 #: ../df/virt-df.pod:129
2101 msgid "B<--inodes>"
2102 msgstr ""
2103
2104 #. type: textblock
2105 #: ../df/virt-df.pod:131
2106 msgid "Print inodes instead of blocks."
2107 msgstr ""
2108
2109 #. type: =item
2110 #: ../df/virt-df.pod:133
2111 msgid "B<--one-per-guest>"
2112 msgstr ""
2113
2114 #. type: textblock
2115 #: ../df/virt-df.pod:135
2116 msgid ""
2117 "Run one libguestfs appliance per guest.  Normally C<virt-df> will add the "
2118 "disks from several guests to a single libguestfs appliance."
2119 msgstr ""
2120
2121 #. type: textblock
2122 #: ../df/virt-df.pod:138
2123 msgid "You might use this option in the following circumstances:"
2124 msgstr ""
2125
2126 #. type: =item
2127 #: ../df/virt-df.pod:142 ../df/virt-df.pod:148 ../edit/virt-edit.pod:266 ../edit/virt-edit.pod:271 ../edit/virt-edit.pod:276 ../edit/virt-edit.pod:287 ../edit/virt-edit.pod:291 ../examples/guestfs-recipes.pod:98 ../examples/guestfs-recipes.pod:102 ../examples/guestfs-recipes.pod:106 ../examples/guestfs-recipes.pod:132 ../examples/guestfs-recipes.pod:137 ../examples/guestfs-recipes.pod:227 ../examples/guestfs-recipes.pod:231 ../examples/guestfs-recipes.pod:235 ../examples/guestfs-recipes.pod:239 ../examples/guestfs-recipes.pod:243 ../fish/guestfish-actions.pod:13 ../fish/guestfish-actions.pod:20 ../fish/guestfish-actions.pod:385 ../fish/guestfish-actions.pod:393 ../fish/guestfish-actions.pod:400 ../fish/guestfish-actions.pod:407 ../fish/guestfish-actions.pod:1099 ../fish/guestfish-actions.pod:1103 ../fish/guestfish-actions.pod:1107 ../fish/guestfish-actions.pod:1111 ../fish/guestfish-actions.pod:1119 ../fish/guestfish-actions.pod:1123 ../fish/guestfish-actions.pod:1127 ../fish/guestfish-actions.pod:1137 ../fish/guestfish-actions.pod:1141 ../fish/guestfish-actions.pod:1145 ../fish/guestfish-actions.pod:1235 ../fish/guestfish-actions.pod:1239 ../fish/guestfish-actions.pod:1244 ../fish/guestfish-actions.pod:1249 ../fish/guestfish-actions.pod:1291 ../fish/guestfish-actions.pod:1295 ../fish/guestfish-actions.pod:1300 ../fish/guestfish-actions.pod:1933 ../fish/guestfish-actions.pod:1939 ../fish/guestfish-actions.pod:1947 ../fish/guestfish-actions.pod:1954 ../fish/guestfish-actions.pod:1961 ../fish/guestfish.pod:445 ../fish/guestfish.pod:449 ../fish/guestfish.pod:453 ../fish/guestfish.pod:457 ../inspector/virt-inspector.pod:384 ../inspector/virt-inspector.pod:388 ../resize/virt-resize.pod:282 ../resize/virt-resize.pod:286 ../resize/virt-resize.pod:295 ../resize/virt-resize.pod:301 ../src/guestfs-actions.pod:15 ../src/guestfs-actions.pod:22 ../src/guestfs-actions.pod:583 ../src/guestfs-actions.pod:591 ../src/guestfs-actions.pod:598 ../src/guestfs-actions.pod:605 ../src/guestfs-actions.pod:1662 ../src/guestfs-actions.pod:1666 ../src/guestfs-actions.pod:1670 ../src/guestfs-actions.pod:1674 ../src/guestfs-actions.pod:1682 ../src/guestfs-actions.pod:1686 ../src/guestfs-actions.pod:1690 ../src/guestfs-actions.pod:1700 ../src/guestfs-actions.pod:1704 ../src/guestfs-actions.pod:1708 ../src/guestfs-actions.pod:1846 ../src/guestfs-actions.pod:1850 ../src/guestfs-actions.pod:1855 ../src/guestfs-actions.pod:1860 ../src/guestfs-actions.pod:1921 ../src/guestfs-actions.pod:1925 ../src/guestfs-actions.pod:1930 ../src/guestfs-actions.pod:2859 ../src/guestfs-actions.pod:2865 ../src/guestfs-actions.pod:2873 ../src/guestfs-actions.pod:2880 ../src/guestfs-actions.pod:2887 ../src/guestfs.pod:388 ../src/guestfs.pod:393 ../src/guestfs.pod:398 ../src/guestfs.pod:402 ../src/guestfs.pod:407 ../src/guestfs.pod:411 ../src/guestfs.pod:416 ../src/guestfs.pod:421 ../src/guestfs.pod:1064 ../src/guestfs.pod:1068 ../src/guestfs.pod:1072 ../src/guestfs.pod:1077 ../src/guestfs.pod:1085 ../src/guestfs.pod:1104 ../src/guestfs.pod:1112 ../src/guestfs.pod:1134 ../src/guestfs.pod:1138 ../src/guestfs.pod:1142 ../src/guestfs.pod:1146 ../src/guestfs.pod:1150 ../src/guestfs.pod:1154 ../src/guestfs.pod:1643 ../src/guestfs.pod:1648 ../src/guestfs.pod:1652 ../src/guestfs.pod:1754 ../src/guestfs.pod:1759 ../src/guestfs.pod:1763 ../src/guestfs.pod:1773 ../src/guestfs.pod:2047 ../src/guestfs.pod:2052 ../src/guestfs.pod:2058 ../src/guestfs.pod:2066 ../src/guestfs.pod:2420 ../src/guestfs.pod:2426 ../src/guestfs.pod:2431 ../src/guestfs.pod:2437 ../src/guestfs.pod:2818 ../src/guestfs.pod:2823 ../src/guestfs.pod:2827 ../src/guestfs.pod:2831 ../src/guestfs.pod:2835 ../src/guestfs.pod:2849 ../src/guestfs.pod:2854 ../src/guestfs.pod:3068 ../src/guestfs.pod:3072 ../src/guestfs.pod:3076 ../src/guestfs.pod:3080 ../tools/virt-win-reg.pl:197 ../tools/virt-win-reg.pl:202 ../tools/virt-win-reg.pl:208 ../tools/virt-win-reg.pl:710 ../tools/virt-win-reg.pl:716 ../tools/virt-win-reg.pl:722
2128 msgid "*"
2129 msgstr ""
2130
2131 #. type: textblock
2132 #: ../df/virt-df.pod:144
2133 msgid ""
2134 "If you think an untrusted guest might actively try to exploit the libguestfs "
2135 "appliance kernel, then this prevents one guest from interfering with the "
2136 "stats printed for another guest."
2137 msgstr ""
2138
2139 #. type: textblock
2140 #: ../df/virt-df.pod:150
2141 msgid ""
2142 "If the kernel has a bug which stops it from accessing a filesystem in one "
2143 "guest (see for example RHBZ#635373) then this allows libguestfs to continue "
2144 "and report stats for further guests."
2145 msgstr ""
2146
2147 #. type: textblock
2148 #: ../df/virt-df.pod:159
2149 msgid ""
2150 "Print UUIDs instead of names.  This is useful for following a guest even "
2151 "when the guest is migrated or renamed, or when two guests happen to have the "
2152 "same name."
2153 msgstr ""
2154
2155 #. type: textblock
2156 #: ../df/virt-df.pod:163
2157 msgid ""
2158 "Note that only domains that we fetch from libvirt come with UUIDs.  For disk "
2159 "images, we still print the disk image name even when this option is "
2160 "specified."
2161 msgstr ""
2162
2163 #. type: textblock
2164 #: ../df/virt-df.pod:218
2165 msgid ""
2166 "L<df(1)>, L<guestfs(3)>, L<guestfish(1)>, L<virt-filesystems(1)>, "
2167 "L<http://libguestfs.org/>."
2168 msgstr ""
2169
2170 #. type: textblock
2171 #: ../edit/virt-edit.pod:5
2172 msgid "virt-edit - Edit a file in a virtual machine"
2173 msgstr ""
2174
2175 #. type: verbatim
2176 #: ../edit/virt-edit.pod:9
2177 #, no-wrap
2178 msgid ""
2179 " virt-edit [--options] -d domname file [file ...]\n"
2180 "\n"
2181 msgstr ""
2182
2183 #. type: verbatim
2184 #: ../edit/virt-edit.pod:11
2185 #, no-wrap
2186 msgid ""
2187 " virt-edit [--options] -a disk.img [-a disk.img ...] file [file ...]\n"
2188 "\n"
2189 msgstr ""
2190
2191 #. type: verbatim
2192 #: ../edit/virt-edit.pod:13
2193 #, no-wrap
2194 msgid ""
2195 " virt-edit [-d domname|-a disk.img] file -e 'expr'\n"
2196 "\n"
2197 msgstr ""
2198
2199 #. type: verbatim
2200 #: ../edit/virt-edit.pod:17
2201 #, no-wrap
2202 msgid ""
2203 " virt-edit domname file\n"
2204 "\n"
2205 msgstr ""
2206
2207 #. type: verbatim
2208 #: ../edit/virt-edit.pod:19 ../edit/virt-edit.pod:183
2209 #, no-wrap
2210 msgid ""
2211 " virt-edit disk.img [disk.img ...] file\n"
2212 "\n"
2213 msgstr ""
2214
2215 #. type: =head1
2216 #: ../edit/virt-edit.pod:21 ../fish/guestfish.pod:23 ../fish/virt-copy-in.pod:13 ../fish/virt-tar-in.pod:15 ../fuse/guestmount.pod:15 ../rescue/virt-rescue.pod:19 ../tools/virt-tar.pl:64 ../tools/virt-win-reg.pl:51
2217 msgid "WARNING"
2218 msgstr ""
2219
2220 #. type: textblock
2221 #: ../edit/virt-edit.pod:23
2222 msgid ""
2223 "You must I<not> use C<virt-edit> on live virtual machines.  If you do this, "
2224 "you risk disk corruption in the VM.  C<virt-edit> tries to stop you from "
2225 "doing this, but doesn't catch all cases."
2226 msgstr ""
2227
2228 #. type: textblock
2229 #: ../edit/virt-edit.pod:29
2230 msgid ""
2231 "C<virt-edit> is a command line tool to edit C<file> where each C<file> "
2232 "exists in the named virtual machine (or disk image)."
2233 msgstr ""
2234
2235 #. type: textblock
2236 #: ../edit/virt-edit.pod:32
2237 msgid ""
2238 "Multiple filenames can be given, in which case they are each edited in "
2239 "turn.  Each filename must be a full path, starting at the root directory "
2240 "(starting with '/')."
2241 msgstr ""
2242
2243 #. type: textblock
2244 #: ../edit/virt-edit.pod:36
2245 msgid "If you want to just view a file, use L<virt-cat(1)>."
2246 msgstr ""
2247
2248 #. type: textblock
2249 #: ../edit/virt-edit.pod:38
2250 msgid ""
2251 "For more complex cases you should look at the L<guestfish(1)> tool (see "
2252 "L</USING GUESTFISH> below)."
2253 msgstr ""
2254
2255 #. type: textblock
2256 #: ../edit/virt-edit.pod:41
2257 msgid ""
2258 "C<virt-edit> cannot be used to create a new file.  L<guestfish(1)> can do "
2259 "that and much more."
2260 msgstr ""
2261
2262 #. type: textblock
2263 #: ../edit/virt-edit.pod:46
2264 msgid "Edit the named files interactively:"
2265 msgstr ""
2266
2267 #. type: verbatim
2268 #: ../edit/virt-edit.pod:48
2269 #, no-wrap
2270 msgid ""
2271 " virt-edit -d mydomain /boot/grub/grub.conf\n"
2272 "\n"
2273 msgstr ""
2274
2275 #. type: verbatim
2276 #: ../edit/virt-edit.pod:50
2277 #, no-wrap
2278 msgid ""
2279 " virt-edit -d mydomain /etc/passwd\n"
2280 "\n"
2281 msgstr ""
2282
2283 #. type: textblock
2284 #: ../edit/virt-edit.pod:52
2285 msgid "For Windows guests, some Windows paths are understood:"
2286 msgstr ""
2287
2288 #. type: verbatim
2289 #: ../edit/virt-edit.pod:54
2290 #, no-wrap
2291 msgid ""
2292 " virt-edit -d mywindomain 'c:\\autoexec.bat'\n"
2293 "\n"
2294 msgstr ""
2295
2296 #. type: textblock
2297 #: ../edit/virt-edit.pod:56
2298 msgid ""
2299 "If Perl is installed, you can also edit files non-interactively (see "
2300 "L</NON-INTERACTIVE EDITING> below).  To change the init default level to 5:"
2301 msgstr ""
2302
2303 #. type: verbatim
2304 #: ../edit/virt-edit.pod:60
2305 #, no-wrap
2306 msgid ""
2307 " virt-edit -d mydomain /etc/inittab -e 's/^id:.*/id:5:initdefault:/'\n"
2308 "\n"
2309 msgstr ""
2310
2311 #. type: =item
2312 #: ../edit/virt-edit.pod:81
2313 msgid "B<-b> extension"
2314 msgstr ""
2315
2316 #. type: =item
2317 #: ../edit/virt-edit.pod:83
2318 msgid "B<--backup> extension"
2319 msgstr ""
2320
2321 #. type: textblock
2322 #: ../edit/virt-edit.pod:85
2323 msgid ""
2324 "Create a backup of the original file I<in the guest disk image>.  The backup "
2325 "has the original filename with C<extension> added."
2326 msgstr ""
2327
2328 #. type: textblock
2329 #: ../edit/virt-edit.pod:88
2330 msgid ""
2331 "Usually the first character of C<extension> would be a dot C<.> so you would "
2332 "write:"
2333 msgstr ""
2334
2335 #. type: verbatim
2336 #: ../edit/virt-edit.pod:91
2337 #, no-wrap
2338 msgid ""
2339 " virt-edit -b .orig [etc]\n"
2340 "\n"
2341 msgstr ""
2342
2343 #. type: textblock
2344 #: ../edit/virt-edit.pod:93
2345 msgid "By default, no backup file is made."
2346 msgstr ""
2347
2348 #. type: =item
2349 #: ../edit/virt-edit.pod:95 ../fish/guestfish.pod:181 ../fuse/guestmount.pod:96 ../inspector/virt-inspector.pod:74 ../tools/virt-list-filesystems.pl:77 ../tools/virt-list-partitions.pl:78 ../tools/virt-tar.pl:127 ../tools/virt-win-reg.pl:128
2350 msgid "B<-c URI>"
2351 msgstr ""
2352
2353 #. type: =item
2354 #: ../edit/virt-edit.pod:97 ../fish/guestfish.pod:183 ../fuse/guestmount.pod:98 ../inspector/virt-inspector.pod:76 ../tools/virt-list-filesystems.pl:79 ../tools/virt-list-partitions.pl:80 ../tools/virt-tar.pl:129 ../tools/virt-win-reg.pl:130
2355 msgid "B<--connect URI>"
2356 msgstr ""
2357
2358 #. type: textblock
2359 #: ../edit/virt-edit.pod:102 ../tools/virt-list-filesystems.pl:84 ../tools/virt-list-partitions.pl:85 ../tools/virt-tar.pl:134 ../tools/virt-win-reg.pl:135
2360 msgid ""
2361 "If you specify guest block devices directly, then libvirt is not used at "
2362 "all."
2363 msgstr ""
2364
2365 #. type: textblock
2366 #: ../edit/virt-edit.pod:114
2367 msgid ""
2368 "When prompting for keys and passphrases, virt-edit normally turns echoing "
2369 "off so you cannot see what you are typing.  If you are not worried about "
2370 "Tempest attacks and there is no one else in the room you can specify this "
2371 "flag to see what you are typing."
2372 msgstr ""
2373
2374 #. type: =item
2375 #: ../edit/virt-edit.pod:119
2376 msgid "B<-e> EXPR"
2377 msgstr ""
2378
2379 #. type: =item
2380 #: ../edit/virt-edit.pod:121
2381 msgid "B<--expr> EXPR"
2382 msgstr ""
2383
2384 #. type: textblock
2385 #: ../edit/virt-edit.pod:123
2386 msgid ""
2387 "Instead of launching the external editor, non-interactively apply the Perl "
2388 "expression C<EXPR> to each line in the file.  See L</NON-INTERACTIVE "
2389 "EDITING> below."
2390 msgstr ""
2391
2392 #. type: textblock
2393 #: ../edit/virt-edit.pod:127
2394 msgid ""
2395 "Be careful to properly quote the expression to prevent it from being altered "
2396 "by the shell."
2397 msgstr ""
2398
2399 #. type: textblock
2400 #: ../edit/virt-edit.pod:130
2401 msgid "Note that this option is only available when Perl 5 is installed."
2402 msgstr ""
2403
2404 #. type: =item
2405 #: ../edit/virt-edit.pod:132
2406 msgid "B<--format> raw|qcow2|..."
2407 msgstr ""
2408
2409 #. type: verbatim
2410 #: ../edit/virt-edit.pod:143
2411 #, no-wrap
2412 msgid ""
2413 " virt-edit --format=raw -a disk.img file\n"
2414 "\n"
2415 msgstr ""
2416
2417 #. type: verbatim
2418 #: ../edit/virt-edit.pod:147
2419 #, no-wrap
2420 msgid ""
2421 " virt-edit --format=raw -a disk.img --format -a another.img file\n"
2422 "\n"
2423 msgstr ""
2424
2425 #. type: textblock
2426 #: ../edit/virt-edit.pod:181
2427 msgid "Previous versions of virt-edit allowed you to write either:"
2428 msgstr ""
2429
2430 #. type: verbatim
2431 #: ../edit/virt-edit.pod:187
2432 #, no-wrap
2433 msgid ""
2434 " virt-edit guestname file\n"
2435 "\n"
2436 msgstr ""
2437
2438 #. type: =head1
2439 #: ../edit/virt-edit.pod:195
2440 msgid "NON-INTERACTIVE EDITING"
2441 msgstr ""
2442
2443 #. type: textblock
2444 #: ../edit/virt-edit.pod:197
2445 msgid ""
2446 "C<virt-edit> normally calls out to C<$EDITOR> (or vi) so the system "
2447 "administrator can interactively edit the file."
2448 msgstr ""
2449
2450 #. type: textblock
2451 #: ../edit/virt-edit.pod:200
2452 msgid ""
2453 "There are two ways also to use C<virt-edit> from scripts in order to make "
2454 "automated edits to files.  (Note that although you I<can> use C<virt-edit> "
2455 "like this, it's less error-prone to write scripts directly using the "
2456 "libguestfs API and Augeas for configuration file editing.)"
2457 msgstr ""
2458
2459 #. type: textblock
2460 #: ../edit/virt-edit.pod:206
2461 msgid ""
2462 "The first method is to temporarily set C<$EDITOR> to any script or program "
2463 "you want to run.  The script is invoked as C<$EDITOR tmpfile> and it should "
2464 "update C<tmpfile> in place however it likes."
2465 msgstr ""
2466
2467 #. type: textblock
2468 #: ../edit/virt-edit.pod:210
2469 msgid ""
2470 "The second method is to use the I<-e> parameter of C<virt-edit> to run a "
2471 "short Perl snippet in the style of L<sed(1)>.  For example to replace all "
2472 "instances of C<foo> with C<bar> in a file:"
2473 msgstr ""
2474
2475 #. type: verbatim
2476 #: ../edit/virt-edit.pod:214
2477 #, no-wrap
2478 msgid ""
2479 " virt-edit -d domname filename -e 's/foo/bar/'\n"
2480 "\n"
2481 msgstr ""
2482
2483 #. type: textblock
2484 #: ../edit/virt-edit.pod:216
2485 msgid ""
2486 "The full power of Perl regular expressions can be used (see L<perlre(1)>).  "
2487 "For example to delete root's password you could do:"
2488 msgstr ""
2489
2490 #. type: verbatim
2491 #: ../edit/virt-edit.pod:219
2492 #, no-wrap
2493 msgid ""
2494 " virt-edit -d domname /etc/passwd -e 's/^root:.*?:/root::/'\n"
2495 "\n"
2496 msgstr ""
2497
2498 #. type: textblock
2499 #: ../edit/virt-edit.pod:221
2500 msgid ""
2501 "What really happens is that the snippet is evaluated as a Perl expression "
2502 "for each line of the file.  The line, including the final C<\\n>, is passed "
2503 "in C<$_> and the expression should update C<$_> or leave it unchanged."
2504 msgstr ""
2505
2506 #. type: textblock
2507 #: ../edit/virt-edit.pod:226
2508 msgid ""
2509 "To delete a line, set C<$_> to the empty string.  For example, to delete the "
2510 "C<apache> user account from the password file you can do:"
2511 msgstr ""
2512
2513 #. type: verbatim
2514 #: ../edit/virt-edit.pod:229
2515 #, no-wrap
2516 msgid ""
2517 " virt-edit -d mydomain /etc/passwd -e '$_ = \"\" if /^apache:/'\n"
2518 "\n"
2519 msgstr ""
2520
2521 #. type: textblock
2522 #: ../edit/virt-edit.pod:231
2523 msgid ""
2524 "To insert a line, prepend or append it to C<$_>.  However appending lines to "
2525 "the end of the file is rather difficult this way since there is no concept "
2526 "of \"last line of the file\" - your expression just doesn't get called "
2527 "again.  You might want to use the first method (setting C<$EDITOR>) if you "
2528 "want to do this."
2529 msgstr ""
2530
2531 #. type: textblock
2532 #: ../edit/virt-edit.pod:237
2533 msgid ""
2534 "The variable C<$lineno> contains the current line number.  As is "
2535 "traditional, the first line in the file is number C<1>."
2536 msgstr ""
2537
2538 #. type: textblock
2539 #: ../edit/virt-edit.pod:240
2540 msgid ""
2541 "The return value from the expression is ignored, but the expression may call "
2542 "C<die> in order to abort the whole program, leaving the original file "
2543 "untouched."
2544 msgstr ""
2545
2546 #. type: textblock
2547 #: ../edit/virt-edit.pod:244
2548 msgid ""
2549 "Remember when matching the end of a line that C<$_> may contain the final "
2550 "C<\\n>, or (for DOS files) C<\\r\\n>, or if the file does not end with a "
2551 "newline then neither of these.  Thus to match or substitute some text at the "
2552 "end of a line, use this regular expression:"
2553 msgstr ""
2554
2555 #. type: verbatim
2556 #: ../edit/virt-edit.pod:249
2557 #, no-wrap
2558 msgid ""
2559 " /some text(\\r?\\n)?$/\n"
2560 "\n"
2561 msgstr ""
2562
2563 #. type: textblock
2564 #: ../edit/virt-edit.pod:251
2565 msgid ""
2566 "Alternately, use the perl C<chomp> function, being careful not to chomp "
2567 "C<$_> itself (since that would remove all newlines from the file):"
2568 msgstr ""
2569
2570 #. type: verbatim
2571 #: ../edit/virt-edit.pod:255
2572 #, no-wrap
2573 msgid ""
2574 " my $m = $_; chomp $m; $m =~ /some text$/\n"
2575 "\n"
2576 msgstr ""
2577
2578 #. type: =head1
2579 #: ../edit/virt-edit.pod:257 ../fish/guestfish.pod:858
2580 msgid "WINDOWS PATHS"
2581 msgstr ""
2582
2583 #. type: textblock
2584 #: ../edit/virt-edit.pod:259
2585 msgid ""
2586 "C<virt-edit> has a limited ability to understand Windows drive letters and "
2587 "paths (eg. C<E:\\foo\\bar.txt>)."
2588 msgstr ""
2589
2590 #. type: textblock
2591 #: ../edit/virt-edit.pod:262
2592 msgid "If and only if the guest is running Windows then:"
2593 msgstr ""
2594
2595 #. type: textblock
2596 #: ../edit/virt-edit.pod:268
2597 msgid ""
2598 "Drive letter prefixes like C<C:> are resolved against the Windows Registry "
2599 "to the correct filesystem."
2600 msgstr ""
2601
2602 #. type: textblock
2603 #: ../edit/virt-edit.pod:273
2604 msgid ""
2605 "Any backslash (C<\\>) characters in the path are replaced with forward "
2606 "slashes so that libguestfs can process it."
2607 msgstr ""
2608
2609 #. type: textblock
2610 #: ../edit/virt-edit.pod:278
2611 msgid ""
2612 "The path is resolved case insensitively to locate the file that should be "
2613 "edited."
2614 msgstr ""
2615
2616 #. type: textblock
2617 #: ../edit/virt-edit.pod:283
2618 msgid "There are some known shortcomings:"
2619 msgstr ""
2620
2621 #. type: textblock
2622 #: ../edit/virt-edit.pod:289
2623 msgid "Some NTFS symbolic links may not be followed correctly."
2624 msgstr ""
2625
2626 #. type: textblock
2627 #: ../edit/virt-edit.pod:293
2628 msgid "NTFS junction points that cross filesystems are not followed."
2629 msgstr ""
2630
2631 #. type: textblock
2632 #: ../edit/virt-edit.pod:299
2633 msgid ""
2634 "L<guestfish(1)> is a more powerful, lower level tool which you can use when "
2635 "C<virt-edit> doesn't work."
2636 msgstr ""
2637
2638 #. type: textblock
2639 #: ../edit/virt-edit.pod:302
2640 msgid "Using C<virt-edit> is approximately equivalent to doing:"
2641 msgstr ""
2642
2643 #. type: verbatim
2644 #: ../edit/virt-edit.pod:304
2645 #, no-wrap
2646 msgid ""
2647 " guestfish --rw -i -d domname edit /file\n"
2648 "\n"
2649 msgstr ""
2650
2651 #. type: textblock
2652 #: ../edit/virt-edit.pod:306
2653 msgid ""
2654 "where C<domname> is the name of the libvirt guest, and C</file> is the full "
2655 "path to the file."
2656 msgstr ""
2657
2658 #. type: textblock
2659 #: ../edit/virt-edit.pod:309
2660 msgid ""
2661 "The command above uses libguestfs's guest inspection feature and so does not "
2662 "work on guests that libguestfs cannot inspect, or on things like arbitrary "
2663 "disk images that don't contain guests.  To edit a file on a disk image "
2664 "directly, use:"
2665 msgstr ""
2666
2667 #. type: verbatim
2668 #: ../edit/virt-edit.pod:314
2669 #, no-wrap
2670 msgid ""
2671 " guestfish --rw -a disk.img -m /dev/sda1 edit /file\n"
2672 "\n"
2673 msgstr ""
2674
2675 #. type: textblock
2676 #: ../edit/virt-edit.pod:316
2677 msgid ""
2678 "where C<disk.img> is the disk image, C</dev/sda1> is the filesystem within "
2679 "the disk image to edit, and C</file> is the full path to the file."
2680 msgstr ""
2681
2682 #. type: textblock
2683 #: ../edit/virt-edit.pod:320
2684 msgid ""
2685 "C<virt-edit> cannot create new files.  Use the guestfish commands C<touch>, "
2686 "C<write> or C<upload> instead:"
2687 msgstr ""
2688
2689 #. type: verbatim
2690 #: ../edit/virt-edit.pod:323
2691 #, no-wrap
2692 msgid ""
2693 " guestfish --rw -i -d domname touch /newfile\n"
2694 "\n"
2695 msgstr ""
2696
2697 #. type: verbatim
2698 #: ../edit/virt-edit.pod:325
2699 #, no-wrap
2700 msgid ""
2701 " guestfish --rw -i -d domname write /newfile \"new content\"\n"
2702 "\n"
2703 msgstr ""
2704
2705 #. type: verbatim
2706 #: ../edit/virt-edit.pod:327
2707 #, no-wrap
2708 msgid ""
2709 " guestfish --rw -i -d domname upload localfile /newfile\n"
2710 "\n"
2711 msgstr ""
2712
2713 #. type: =head1
2714 #: ../edit/virt-edit.pod:329 ../fish/guestfish.pod:1075 ../rescue/virt-rescue.pod:257 ../src/guestfs.pod:2965 ../test-tool/libguestfs-test-tool.pod:82
2715 msgid "ENVIRONMENT VARIABLES"
2716 msgstr ""
2717
2718 #. type: =item
2719 #: ../edit/virt-edit.pod:333
2720 msgid "C<EDITOR>"
2721 msgstr ""
2722
2723 #. type: textblock
2724 #: ../edit/virt-edit.pod:335
2725 msgid ""
2726 "If set, this string is used as the editor.  It may contain arguments, "
2727 "eg. C<\"emacs -nw\">"
2728 msgstr ""
2729
2730 #. type: textblock
2731 #: ../edit/virt-edit.pod:338
2732 msgid "If not set, C<vi> is used."
2733 msgstr ""
2734
2735 #. type: textblock
2736 #: ../edit/virt-edit.pod:351
2737 msgid ""
2738 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, "
2739 "L<virt-tar-in(1)>, L<Sys::Guestfs(3)>, L<Sys::Guestfs::Lib(3)>, "
2740 "L<Sys::Virt(3)>, L<http://libguestfs.org/>, L<perl(1)>, L<perlre(1)>."
2741 msgstr ""
2742
2743 #. type: textblock
2744 #: ../examples/guestfs-examples.pod:5
2745 msgid "guestfs-examples - Examples of using libguestfs from C"
2746 msgstr ""
2747
2748 #. type: verbatim
2749 #: ../examples/guestfs-examples.pod:9 ../src/guestfs.pod:9
2750 #, no-wrap
2751 msgid ""
2752 " #include <guestfs.h>\n"
2753 " \n"
2754 msgstr ""
2755
2756 #. type: verbatim
2757 #: ../examples/guestfs-examples.pod:11
2758 #, no-wrap
2759 msgid ""
2760 " guestfs_h *g = guestfs_create ();\n"
2761 " guestfs_add_drive_ro (g, \"disk.img\");\n"
2762 " guestfs_launch (g);\n"
2763 "\n"
2764 msgstr ""
2765
2766 #. type: verbatim
2767 #: ../examples/guestfs-examples.pod:15 ../src/guestfs.pod:19
2768 #, no-wrap
2769 msgid ""
2770 " cc prog.c -o prog -lguestfs\n"
2771 "or:\n"
2772 " cc prog.c -o prog `pkg-config libguestfs --cflags --libs`\n"
2773 "\n"
2774 msgstr ""
2775
2776 #. type: textblock
2777 #: ../examples/guestfs-examples.pod:21
2778 msgid ""
2779 "This manual page contains examples of calling libguestfs from the C "
2780 "programming language.  If you are not familiar with using libguestfs, you "
2781 "also need to read L<guestfs(3)>."
2782 msgstr ""
2783
2784 #. type: =head1
2785 #: ../examples/guestfs-examples.pod:25 ../java/examples/guestfs-java.pod:37 ../ocaml/examples/guestfs-ocaml.pod:70 ../perl/examples/guestfs-perl.pod:31 ../python/examples/guestfs-python.pod:34 ../ruby/examples/guestfs-ruby.pod:28
2786 msgid "EXAMPLE 1: CREATE A DISK IMAGE"
2787 msgstr ""
2788
2789 #. type: textblock
2790 #: ../examples/guestfs-examples.pod:27 ../java/examples/guestfs-java.pod:39 ../ocaml/examples/guestfs-ocaml.pod:72 ../perl/examples/guestfs-perl.pod:33 ../python/examples/guestfs-python.pod:36 ../ruby/examples/guestfs-ruby.pod:30
2791 msgid "@EXAMPLE1@"
2792 msgstr ""
2793
2794 #. type: =head1
2795 #: ../examples/guestfs-examples.pod:29 ../java/examples/guestfs-java.pod:41 ../ocaml/examples/guestfs-ocaml.pod:74 ../perl/examples/guestfs-perl.pod:35 ../python/examples/guestfs-python.pod:38 ../ruby/examples/guestfs-ruby.pod:32
2796 msgid "EXAMPLE 2: INSPECT A VIRTUAL MACHINE DISK IMAGE"
2797 msgstr ""
2798
2799 #. type: textblock
2800 #: ../examples/guestfs-examples.pod:31 ../java/examples/guestfs-java.pod:43 ../ocaml/examples/guestfs-ocaml.pod:76 ../perl/examples/guestfs-perl.pod:37 ../python/examples/guestfs-python.pod:40 ../ruby/examples/guestfs-ruby.pod:34
2801 msgid "@EXAMPLE2@"
2802 msgstr ""
2803
2804 #. type: textblock
2805 #: ../examples/guestfs-examples.pod:35
2806 msgid ""
2807 "L<guestfs(3)>, L<guestfs-java(3)>, L<guestfs-ocaml(3)>, L<guestfs-perl(3)>, "
2808 "L<guestfs-python(3)>, L<guestfs-recipes(1)>, L<guestfs-ruby(3)>, "
2809 "L<http://libguestfs.org/>."
2810 msgstr ""
2811
2812 #. type: =head1
2813 #: ../examples/guestfs-examples.pod:44 ../examples/guestfs-recipes.pod:396 ../fish/guestfish.pod:1238 ../fish/virt-copy-in.pod:60 ../fish/virt-copy-out.pod:49 ../fish/virt-tar-in.pod:58 ../fish/virt-tar-out.pod:51 ../fuse/guestmount.pod:314 ../inspector/virt-inspector.pod:380 ../java/examples/guestfs-java.pod:57 ../ocaml/examples/guestfs-ocaml.pod:90 ../perl/examples/guestfs-perl.pod:51 ../python/examples/guestfs-python.pod:53 ../ruby/examples/guestfs-ruby.pod:47 ../src/guestfs.pod:3087 ../test-tool/libguestfs-test-tool.pod:93
2814 msgid "AUTHORS"
2815 msgstr ""
2816
2817 #. type: textblock
2818 #: ../examples/guestfs-examples.pod:46 ../examples/guestfs-recipes.pod:398 ../fish/guestfish.pod:1240 ../fish/virt-copy-in.pod:62 ../fish/virt-copy-out.pod:51 ../fish/virt-tar-in.pod:60 ../fish/virt-tar-out.pod:53 ../fuse/guestmount.pod:316 ../java/examples/guestfs-java.pod:59 ../ocaml/examples/guestfs-ocaml.pod:92 ../perl/examples/guestfs-perl.pod:53 ../python/examples/guestfs-python.pod:55 ../ruby/examples/guestfs-ruby.pod:49 ../src/guestfs.pod:3089 ../test-tool/libguestfs-test-tool.pod:95
2819 msgid "Richard W.M. Jones (C<rjones at redhat dot com>)"
2820 msgstr ""
2821
2822 #. type: textblock
2823 #: ../examples/guestfs-examples.pod:50 ../ocaml/examples/guestfs-ocaml.pod:96 ../python/examples/guestfs-python.pod:59 ../ruby/examples/guestfs-ruby.pod:53
2824 msgid "Copyright (C) 2010 Red Hat Inc. L<http://libguestfs.org/>"
2825 msgstr ""
2826
2827 #. type: textblock
2828 #: ../examples/guestfs-examples.pod:52 ../examples/guestfs-recipes.pod:404 ../java/examples/guestfs-java.pod:65 ../ocaml/examples/guestfs-ocaml.pod:98 ../perl/examples/guestfs-perl.pod:59 ../python/examples/guestfs-python.pod:61 ../ruby/examples/guestfs-ruby.pod:55
2829 msgid ""
2830 "The examples in this manual page may be freely copied, modified and "
2831 "distributed without any restrictions."
2832 msgstr ""
2833
2834 #. type: textblock
2835 #: ../examples/guestfs-examples.pod:55 ../examples/guestfs-recipes.pod:407 ../java/examples/guestfs-java.pod:68 ../ocaml/examples/guestfs-ocaml.pod:101 ../perl/examples/guestfs-perl.pod:62 ../python/examples/guestfs-python.pod:64 ../ruby/examples/guestfs-ruby.pod:58 ../src/guestfs.pod:3096
2836 msgid ""
2837 "This library is free software; you can redistribute it and/or modify it "
2838 "under the terms of the GNU Lesser General Public License as published by the "
2839 "Free Software Foundation; either version 2 of the License, or (at your "
2840 "option) any later version."
2841 msgstr ""
2842
2843 #. type: textblock
2844 #: ../examples/guestfs-examples.pod:60 ../examples/guestfs-recipes.pod:412 ../java/examples/guestfs-java.pod:73 ../ocaml/examples/guestfs-ocaml.pod:106 ../perl/examples/guestfs-perl.pod:67 ../python/examples/guestfs-python.pod:69 ../ruby/examples/guestfs-ruby.pod:63 ../src/guestfs.pod:3101
2845 msgid ""
2846 "This library is distributed in the hope that it will be useful, but WITHOUT "
2847 "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
2848 "FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License "
2849 "for more details."
2850 msgstr ""
2851
2852 #. type: textblock
2853 #: ../examples/guestfs-examples.pod:65 ../examples/guestfs-recipes.pod:417 ../java/examples/guestfs-java.pod:78 ../ocaml/examples/guestfs-ocaml.pod:111 ../perl/examples/guestfs-perl.pod:72 ../python/examples/guestfs-python.pod:74 ../ruby/examples/guestfs-ruby.pod:68 ../src/guestfs.pod:3106
2854 msgid ""
2855 "You should have received a copy of the GNU Lesser General Public License "
2856 "along with this library; if not, write to the Free Software Foundation, "
2857 "Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA"
2858 msgstr ""
2859
2860 #. type: =end
2861 #: ../examples/guestfs-recipes.pod:3 ../examples/guestfs-recipes.pod:12
2862 msgid "comment"
2863 msgstr ""
2864
2865 #. type: textblock
2866 #: ../examples/guestfs-recipes.pod:5
2867 msgid ""
2868 "pod2man and pod2html have differing bugs which makes it hard to write URLs "
2869 "here.  The only way which works for both sorts of output is to just write "
2870 "the URL directly.  Do NOT use L<...> for URLs."
2871 msgstr ""
2872
2873 #. type: textblock
2874 #: ../examples/guestfs-recipes.pod:9
2875 msgid ""
2876 "We break with tradition here and don't use ALL CAPS for the section "
2877 "headings, as this makes them much easier to read."
2878 msgstr ""
2879
2880 #. type: textblock
2881 #: ../examples/guestfs-recipes.pod:16
2882 msgid "guestfs-recipes - libguestfs, guestfish and virt tools recipes"
2883 msgstr ""
2884
2885 #. type: textblock
2886 #: ../examples/guestfs-recipes.pod:20
2887 msgid ""
2888 "This page contains recipes for and links to things you can do using "
2889 "libguestfs, L<guestfish(1)> and the virt tools."
2890 msgstr ""
2891
2892 #. type: =head1
2893 #: ../examples/guestfs-recipes.pod:23
2894 msgid "Audit a virtual machine for setuid files"
2895 msgstr ""
2896
2897 #. type: textblock
2898 #: ../examples/guestfs-recipes.pod:25
2899 msgid ""
2900 "The link below contains a small program which can be used to audit a Linux "
2901 "virtual machine to see what setuid and setgid files it contains."
2902 msgstr ""
2903
2904 #. type: textblock
2905 #: ../examples/guestfs-recipes.pod:28
2906 msgid "https://rwmj.wordpress.com/2010/12/15/tip-audit-virtual-machine-for-setuid-files/#content"
2907 msgstr ""
2908
2909 #. type: =head1
2910 #: ../examples/guestfs-recipes.pod:30
2911 msgid "Change the background image in a Windows XP VM"
2912 msgstr ""
2913
2914 #. type: textblock
2915 #: ../examples/guestfs-recipes.pod:32
2916 msgid ""
2917 "The links below explain how to use L<guestfish(1)> to change the background "
2918 "image for a user of a Windows XP VM.  Unfortunately the technique appears to "
2919 "be substantially different for each version of Windows."
2920 msgstr ""
2921
2922 #. type: textblock
2923 #: ../examples/guestfs-recipes.pod:37
2924 msgid ""
2925 "https://lists.fedoraproject.org/pipermail/virt/2011-May/002655.html "
2926 "https://lists.fedoraproject.org/pipermail/virt/2011-May/002658.html"
2927 msgstr ""
2928
2929 #. type: =head1
2930 #: ../examples/guestfs-recipes.pod:40
2931 msgid "Cloning a virtual machine (Linux)"
2932 msgstr ""
2933
2934 #. type: textblock
2935 #: ../examples/guestfs-recipes.pod:42
2936 msgid ""
2937 "The guestfish technique described in the link below works well for most "
2938 "Linux VMs.  Depending on the Linux distro you may need to change the paths "
2939 "slightly."
2940 msgstr ""
2941
2942 #. type: textblock
2943 #: ../examples/guestfs-recipes.pod:46
2944 msgid "https://rwmj.wordpress.com/2010/09/24/tip-my-procedure-for-cloning-a-fedora-vm/#content"
2945 msgstr ""
2946
2947 #. type: textblock
2948 #: ../examples/guestfs-recipes.pod:48
2949 msgid ""
2950 "Avoid L<virt-clone(1)>.  Currently what to do about virt-clone is under "
2951 "discussion."
2952 msgstr ""
2953
2954 #. type: textblock
2955 #: ../examples/guestfs-recipes.pod:51
2956 msgid "https://www.redhat.com/archives/virt-tools-list/2011-May/msg00019.html"
2957 msgstr ""
2958
2959 #. type: =head1
2960 #: ../examples/guestfs-recipes.pod:53
2961 msgid "Cloning a virtual machine (Windows)"
2962 msgstr ""
2963
2964 #. type: textblock
2965 #: ../examples/guestfs-recipes.pod:55
2966 msgid ""
2967 "It is possible to do a \"sysprep\" using libguestfs alone, although not "
2968 "straightforward.  Currently there is code in the Aeolus Oz project which "
2969 "does this (using libguestfs).  As part of our review of the virt-clone tool, "
2970 "we may add sysprepping ability."
2971 msgstr ""
2972
2973 #. type: textblock
2974 #: ../examples/guestfs-recipes.pod:60
2975 msgid ""
2976 "https://github.com/clalancette/oz "
2977 "https://www.redhat.com/archives/virt-tools-list/2011-May/msg00019.html"
2978 msgstr ""
2979
2980 #. type: =head1
2981 #: ../examples/guestfs-recipes.pod:63
2982 msgid "Convert a CD-ROM / DVD / ISO to a tarball"
2983 msgstr ""
2984
2985 #. type: textblock
2986 #: ../examples/guestfs-recipes.pod:65
2987 msgid "This converts input C<cd.iso> to output C<cd.tar.gz>:"
2988 msgstr ""
2989
2990 #. type: verbatim
2991 #: ../examples/guestfs-recipes.pod:67
2992 #, no-wrap
2993 msgid ""
2994 " guestfish --ro -a cd.iso -m /dev/sda tgz-out / cd.tar.gz\n"
2995 "\n"
2996 msgstr ""
2997
2998 #. type: textblock
2999 #: ../examples/guestfs-recipes.pod:69
3000 msgid "To export just a subdirectory, eg. C</files>, do:"
3001 msgstr ""
3002
3003 #. type: verbatim
3004 #: ../examples/guestfs-recipes.pod:71
3005 #, no-wrap
3006 msgid ""
3007 " guestfish --ro -a cd.iso -m /dev/sda tgz-out /files cd.tar.gz\n"
3008 "\n"
3009 msgstr ""
3010
3011 #. type: =head1
3012 #: ../examples/guestfs-recipes.pod:73
3013 msgid "Create empty disk images"
3014 msgstr ""
3015
3016 #. type: textblock
3017 #: ../examples/guestfs-recipes.pod:75
3018 msgid ""
3019 "You can use the L<guestfish(1)> I<-N> option to create empty disk images.  "
3020 "The useful guide below explains the options available."
3021 msgstr ""
3022
3023 #. type: textblock
3024 #: ../examples/guestfs-recipes.pod:78
3025 msgid "https://rwmj.wordpress.com/2010/09/08/new-guestfish-n-options-in-1-5-9/#content"
3026 msgstr ""
3027
3028 #. type: =head1
3029 #: ../examples/guestfs-recipes.pod:80
3030 msgid "Dump raw filesystem content from inside a disk image or VM"
3031 msgstr ""
3032
3033 #. type: textblock
3034 #: ../examples/guestfs-recipes.pod:82
3035 msgid ""
3036 "You can use the L<guestfish(1)> C<download> command to extract the raw "
3037 "filesystem content from any filesystem in a disk image or a VM (even one "
3038 "which is encrypted or buried inside an LV):"
3039 msgstr ""
3040
3041 #. type: verbatim
3042 #: ../examples/guestfs-recipes.pod:86
3043 #, no-wrap
3044 msgid ""
3045 " guestfish --ro -a disk.img run : download /dev/sda1 sda1.img\n"
3046 "\n"
3047 msgstr ""
3048
3049 #. type: verbatim
3050 #: ../examples/guestfs-recipes.pod:88
3051 #, no-wrap
3052 msgid ""
3053 " guestfish --ro -d Guest run : download /dev/vg_guest/lv_root lv.img\n"
3054 "\n"
3055 msgstr ""
3056
3057 #. type: textblock
3058 #: ../examples/guestfs-recipes.pod:90
3059 msgid "To list the filesystems in a disk image, use L<virt-filesystems(1)>."
3060 msgstr ""
3061
3062 #. type: =head1
3063 #: ../examples/guestfs-recipes.pod:92
3064 msgid "Edit grub configuration in a VM"
3065 msgstr ""
3066
3067 #. type: textblock
3068 #: ../examples/guestfs-recipes.pod:94
3069 msgid "You can use this to:"
3070 msgstr ""
3071
3072 #. type: textblock
3073 #: ../examples/guestfs-recipes.pod:100
3074 msgid "Fix a virtual machine that does not boot."
3075 msgstr ""
3076
3077 #. type: textblock
3078 #: ../examples/guestfs-recipes.pod:104
3079 msgid "Change which kernel is used to boot the VM."
3080 msgstr ""
3081
3082 #. type: textblock
3083 #: ../examples/guestfs-recipes.pod:108
3084 msgid "Change kernel command line options."
3085 msgstr ""
3086
3087 #. type: textblock
3088 #: ../examples/guestfs-recipes.pod:112
3089 msgid "Use L<virt-edit(1)> to edit the grub configuration:"
3090 msgstr ""
3091
3092 #. type: verbatim
3093 #: ../examples/guestfs-recipes.pod:114
3094 #, no-wrap
3095 msgid ""
3096 " virt-edit -d BrokenGuest /boot/grub/grub.conf\n"
3097 "\n"
3098 msgstr ""
3099
3100 #. type: textblock
3101 #: ../examples/guestfs-recipes.pod:116
3102 msgid ""
3103 "or for general tinkering inside an unbootable VM use L<virt-rescue(1)> like "
3104 "this:"
3105 msgstr ""
3106
3107 #. type: verbatim
3108 #: ../examples/guestfs-recipes.pod:119
3109 #, no-wrap
3110 msgid ""
3111 " virt-rescue -d BrokenGuest\n"
3112 "\n"
3113 msgstr ""
3114
3115 #. type: =head1
3116 #: ../examples/guestfs-recipes.pod:121
3117 msgid "Export any directory from a VM"
3118 msgstr ""
3119
3120 #. type: textblock
3121 #: ../examples/guestfs-recipes.pod:123
3122 msgid "To export C</home> from a VM into a local directory use L<virt-copy-out(1)>:"
3123 msgstr ""
3124
3125 #. type: verbatim
3126 #: ../examples/guestfs-recipes.pod:126
3127 #, no-wrap
3128 msgid ""
3129 " virt-copy-out -d Guest /home .\n"
3130 "\n"
3131 msgstr ""
3132
3133 #. type: textblock
3134 #: ../examples/guestfs-recipes.pod:128 ../fish/guestfish-actions.pod:9 ../fish/guestfish-actions.pod:1287 ../fish/guestfish-actions.pod:1929 ../src/guestfs-actions.pod:11 ../src/guestfs-actions.pod:1917 ../src/guestfs-actions.pod:2855 ../src/guestfs.pod:1639 ../tools/virt-win-reg.pl:706
3135 msgid "Notes:"
3136 msgstr ""
3137
3138 #. type: textblock
3139 #: ../examples/guestfs-recipes.pod:134
3140 msgid ""
3141 "The final dot of the command is not a printing error.  It means we want to "
3142 "copy out to the current directory."
3143 msgstr ""
3144
3145 #. type: textblock
3146 #: ../examples/guestfs-recipes.pod:139
3147 msgid "This creates a directory called C<home> under the current directory."
3148 msgstr ""
3149
3150 #. type: textblock
3151 #: ../examples/guestfs-recipes.pod:143
3152 msgid ""
3153 "If the guest is a Windows guest then you can use drive letters and "
3154 "backslashes, but you must prefix the path with C<win:> and quote it to "
3155 "protect it from the shell, like this:"
3156 msgstr ""
3157
3158 #. type: verbatim
3159 #: ../examples/guestfs-recipes.pod:147
3160 #, no-wrap
3161 msgid ""
3162 " virt-copy-out -d WinGuest 'win:c:\\windows\\system32\\config' .\n"
3163 "\n"
3164 msgstr ""
3165
3166 #. type: textblock
3167 #: ../examples/guestfs-recipes.pod:149
3168 msgid "To get the output as a compressed tarball, do:"
3169 msgstr ""
3170
3171 #. type: verbatim
3172 #: ../examples/guestfs-recipes.pod:151
3173 #, no-wrap
3174 msgid ""
3175 " virt-tar-out -d Guest /home - | gzip --best > home.tar.gz\n"
3176 "\n"
3177 msgstr ""
3178
3179 #. type: textblock
3180 #: ../examples/guestfs-recipes.pod:153
3181 msgid ""
3182 "Although it sounds tempting, this is usually not a reliable way to get a "
3183 "backup from a running guest.  See the entry in the FAQ: "
3184 "http://libguestfs.org/FAQ.html#backup"
3185 msgstr ""
3186
3187 #. type: =head1
3188 #: ../examples/guestfs-recipes.pod:157
3189 msgid "Find out which user is using the most space"
3190 msgstr ""
3191
3192 #. type: textblock
3193 #: ../examples/guestfs-recipes.pod:159
3194 msgid ""
3195 "This simple script examines a Linux guest to find out which user is using "
3196 "the most space in their home directory:"
3197 msgstr ""
3198
3199 #. type: verbatim
3200 #: ../examples/guestfs-recipes.pod:162
3201 #, no-wrap
3202 msgid ""
3203 " #!/bin/sh -\n"
3204 " \n"
3205 msgstr ""
3206
3207 #. type: verbatim
3208 #: ../examples/guestfs-recipes.pod:164
3209 #, no-wrap
3210 msgid ""
3211 " set -e\n"
3212 " \n"
3213 msgstr ""
3214
3215 #. type: verbatim
3216 #: ../examples/guestfs-recipes.pod:166
3217 #, no-wrap
3218 msgid ""
3219 " vm=\"$1\"\n"
3220 " dir=/home\n"
3221 " \n"
3222 msgstr ""
3223
3224 #. type: verbatim
3225 #: ../examples/guestfs-recipes.pod:169
3226 #, no-wrap
3227 msgid ""
3228 " eval $(guestfish --ro -d \"$vm\" -i --listen)\n"
3229 " \n"
3230 msgstr ""
3231
3232 #. type: verbatim
3233 #: ../examples/guestfs-recipes.pod:171
3234 #, no-wrap
3235 msgid ""
3236 " for d in $(guestfish --remote ls \"$dir\"); do\n"
3237 "     echo -n \"$dir/$d\"\n"
3238 "     echo -ne '\\t'\n"
3239 "     guestfish --remote du \"$dir/$d\";\n"
3240 " done | sort -nr -k 2\n"
3241 " \n"
3242 msgstr ""
3243
3244 #. type: verbatim
3245 #: ../examples/guestfs-recipes.pod:177 ../fish/guestfish.pod:941
3246 #, no-wrap
3247 msgid ""
3248 " guestfish --remote exit\n"
3249 "\n"
3250 msgstr ""
3251
3252 #. type: =head1
3253 #: ../examples/guestfs-recipes.pod:179
3254 msgid "Get DHCP address from a VM"
3255 msgstr ""
3256
3257 #. type: textblock
3258 #: ../examples/guestfs-recipes.pod:181
3259 msgid ""
3260 "The link below explains the many different possible techniques for getting "
3261 "the last assigned DHCP address of a virtual machine."
3262 msgstr ""
3263
3264 #. type: textblock
3265 #: ../examples/guestfs-recipes.pod:184
3266 msgid "https://rwmj.wordpress.com/2011/03/31/tip-code-for-getting-dhcp-address-from-a-virtual-machine-disk-image/#content"
3267 msgstr ""
3268
3269 #. type: textblock
3270 #: ../examples/guestfs-recipes.pod:186
3271 msgid ""
3272 "In the libguestfs source examples directory you will find the latest version "
3273 "of the C<virt-dhcp-address.c> program."
3274 msgstr ""
3275
3276 #. type: =head1
3277 #: ../examples/guestfs-recipes.pod:189
3278 msgid "Get the operating system product name string"
3279 msgstr ""
3280
3281 #. type: textblock
3282 #: ../examples/guestfs-recipes.pod:191
3283 msgid "Save the following script into a file called C<product-name.sh>:"
3284 msgstr ""
3285
3286 #. type: verbatim
3287 #: ../examples/guestfs-recipes.pod:193
3288 #, no-wrap
3289 msgid ""
3290 " #!/bin/sh -\n"
3291 " set -e\n"
3292 " eval \"$(guestfish --ro -d \"$1\" --i --listen)\"\n"
3293 " root=\"$(guestfish --remote inspect-get-roots)\"\n"
3294 " guestfish --remote inspect-get-product-name \"$root\"\n"
3295 " guestfish --remote exit\n"
3296 "\n"
3297 msgstr ""
3298
3299 #. type: textblock
3300 #: ../examples/guestfs-recipes.pod:200
3301 msgid "Make the script executable and run it on a named guest:"
3302 msgstr ""
3303
3304 #. type: verbatim
3305 #: ../examples/guestfs-recipes.pod:202
3306 #, no-wrap
3307 msgid ""
3308 " # product-name.sh RHEL60x64\n"
3309 " Red Hat Enterprise Linux Server release 6.0 (Santiago)\n"
3310 "\n"
3311 msgstr ""
3312
3313 #. type: textblock
3314 #: ../examples/guestfs-recipes.pod:205
3315 msgid ""
3316 "You can also use an XPath query on the L<virt-inspector(1)> XML using the "
3317 "C<xpath> command line tool or from your favourite programming language:"
3318 msgstr ""
3319
3320 #. type: verbatim
3321 #: ../examples/guestfs-recipes.pod:209
3322 #, no-wrap
3323 msgid ""
3324 " # virt-inspector RHEL60x64 > xml\n"
3325 " # xpath '//product_name' < xml\n"
3326 " Found 1 nodes:\n"
3327 " -- NODE --\n"
3328 " <product_name>Red Hat Enterprise Linux Server release 6.0 "
3329 "(Santiago)</product_name>\n"
3330 "\n"
3331 msgstr ""
3332
3333 #. type: =head1
3334 #: ../examples/guestfs-recipes.pod:215
3335 msgid "Get the default boot kernel for a Linux VM"
3336 msgstr ""
3337
3338 #. type: textblock
3339 #: ../examples/guestfs-recipes.pod:217
3340 msgid ""
3341 "The link below contains a program to print the default boot kernel for a "
3342 "Linux VM."
3343 msgstr ""
3344
3345 #. type: textblock
3346 #: ../examples/guestfs-recipes.pod:220
3347 msgid "https://rwmj.wordpress.com/2010/10/30/tip-use-augeas-to-get-the-default-boot-kernel-for-a-vm/#content"
3348 msgstr ""
3349
3350 #. type: textblock
3351 #: ../examples/guestfs-recipes.pod:222
3352 msgid ""
3353 "It uses Augeas, and the technique is generally applicable for many different "
3354 "tasks, such as:"
3355 msgstr ""
3356
3357 #. type: textblock
3358 #: ../examples/guestfs-recipes.pod:229
3359 msgid "listing the user accounts in the guest"
3360 msgstr ""
3361
3362 #. type: textblock
3363 #: ../examples/guestfs-recipes.pod:233
3364 msgid "what repositories is it configured to use"
3365 msgstr ""
3366
3367 #. type: textblock
3368 #: ../examples/guestfs-recipes.pod:237
3369 msgid "what NTP servers does it connect to"
3370 msgstr ""
3371
3372 #. type: textblock
3373 #: ../examples/guestfs-recipes.pod:241
3374 msgid "what were the boot messages last time it booted"
3375 msgstr ""
3376
3377 #. type: textblock
3378 #: ../examples/guestfs-recipes.pod:245
3379 msgid "listing who was logged in recently"
3380 msgstr ""
3381
3382 #. type: textblock
3383 #: ../examples/guestfs-recipes.pod:249
3384 msgid "http://augeas.net/"
3385 msgstr ""
3386
3387 #. type: =head1
3388 #: ../examples/guestfs-recipes.pod:251
3389 msgid "Install RPMs in a guest"
3390 msgstr ""
3391
3392 #. type: textblock
3393 #: ../examples/guestfs-recipes.pod:253
3394 msgid ""
3395 "The link below contains a method to install RPMs in a guest.  In fact the "
3396 "RPMs are just uploaded to the guest along with a \"firstboot\" script that "
3397 "installs them next time the guest is booted.  You could use this technique "
3398 "to install vital security updates in an offline guest."
3399 msgstr ""
3400
3401 #. type: textblock
3402 #: ../examples/guestfs-recipes.pod:259
3403 msgid "https://rwmj.wordpress.com/2010/12/01/tip-install-rpms-in-a-guest/#content"
3404 msgstr ""
3405
3406 #. type: =head1
3407 #: ../examples/guestfs-recipes.pod:261
3408 msgid "List applications installed in a VM"
3409 msgstr ""
3410
3411 #. type: textblock
3412 #: ../examples/guestfs-recipes.pod:263
3413 msgid "Save the following to a file C<list-apps.sh>:"
3414 msgstr ""
3415
3416 #. type: verbatim
3417 #: ../examples/guestfs-recipes.pod:265
3418 #, no-wrap
3419 msgid ""
3420 " #!/bin/sh -\n"
3421 " set -e\n"
3422 " eval \"$(guestfish --ro -d \"$1\" --i --listen)\"\n"
3423 " root=\"$(guestfish --remote inspect-get-roots)\"\n"
3424 " guestfish --remote inspect-list-applications \"$root\"\n"
3425 " guestfish --remote exit\n"
3426 "\n"
3427 msgstr ""
3428
3429 #. type: textblock
3430 #: ../examples/guestfs-recipes.pod:272
3431 msgid ""
3432 "Make the file executable and then you can run it on any named virtual "
3433 "machine:"
3434 msgstr ""
3435
3436 #. type: verbatim
3437 #: ../examples/guestfs-recipes.pod:275
3438 #, no-wrap
3439 msgid ""
3440 " # list-apps.sh WinGuest\n"
3441 " [0] = {\n"
3442 "   app_name: Mozilla Firefox (3.6.12)\n"
3443 "   app_display_name: Mozilla Firefox (3.6.12)\n"
3444 "   app_epoch: 0\n"
3445 "   app_version: 3.6.12 (en-GB)\n"
3446 "   app_release:\n"
3447 "   app_install_path: C:\\Program Files\\Mozilla Firefox\n"
3448 "   app_trans_path:\n"
3449 "   app_publisher: Mozilla\n"
3450 "   app_url: http://www.mozilla.com/en-GB/\n"
3451 "   app_source_package:\n"
3452 "   app_summary:\n"
3453 "   app_description: Mozilla Firefox\n"
3454 " }\n"
3455 " [1] = {\n"
3456 "   app_name: VLC media player\n"
3457 "   app_display_name: VLC media player 1.1.5\n"
3458 "   app_epoch: 0\n"
3459 "   app_version: 1.1.5\n"
3460 "   app_release:\n"
3461 "   app_install_path: C:\\Program Files\\VideoLAN\\VLC\n"
3462 "   app_trans_path:\n"
3463 "   app_publisher: VideoLAN\n"
3464 "   app_url: http://www.videolan.org/\n"
3465 "   app_source_package:\n"
3466 "   app_summary:\n"
3467 "   app_description:\n"
3468 " }\n"
3469 "\n"
3470 msgstr ""
3471
3472 #. type: textblock
3473 #: ../examples/guestfs-recipes.pod:305
3474 msgid ""
3475 "If you want to run the script on disk images (instead of libvirt virtual "
3476 "machines), change C<-d \"$1\"> to C<-a \"$1\">.  See also "
3477 "L<virt-inspector(1)>."
3478 msgstr ""
3479
3480 #. type: =head1
3481 #: ../examples/guestfs-recipes.pod:309
3482 msgid "List files and directories in a VM"
3483 msgstr ""
3484
3485 #. type: textblock
3486 #: ../examples/guestfs-recipes.pod:311
3487 msgid "This involves using the L<guestfish(1)> C<find0> command like this:"
3488 msgstr ""
3489
3490 #. type: verbatim
3491 #: ../examples/guestfs-recipes.pod:313
3492 #, no-wrap
3493 msgid ""
3494 " guestfish --ro -d Guest -i find0 / - | tr '\\0' '\\n' | sort\n"
3495 "\n"
3496 msgstr ""
3497
3498 #. type: =head1
3499 #: ../examples/guestfs-recipes.pod:315
3500 msgid "List services in a Windows VM"
3501 msgstr ""
3502
3503 #. type: textblock
3504 #: ../examples/guestfs-recipes.pod:317
3505 msgid ""
3506 "The link below contains a script that can be used to list out the services "
3507 "from a Windows VM, and whether those services run at boot time or are loaded "
3508 "on demand."
3509 msgstr ""
3510
3511 #. type: textblock
3512 #: ../examples/guestfs-recipes.pod:321
3513 msgid "https://rwmj.wordpress.com/2010/12/10/tip-list-services-in-a-windows-guest/#content"
3514 msgstr ""
3515
3516 #. type: =head1
3517 #: ../examples/guestfs-recipes.pod:323
3518 msgid "Make a disk image sparse"
3519 msgstr ""
3520
3521 #. type: textblock
3522 #: ../examples/guestfs-recipes.pod:325
3523 msgid ""
3524 "The link below contains some guides for making a disk image sparse (or "
3525 "reintroducing sparseness)."
3526 msgstr ""
3527
3528 #. type: textblock
3529 #: ../examples/guestfs-recipes.pod:328
3530 msgid "https://rwmj.wordpress.com/2010/10/19/tip-making-a-disk-image-sparse/#content"
3531 msgstr ""
3532
3533 #. type: =head1
3534 #: ../examples/guestfs-recipes.pod:330
3535 msgid "Monitor disk usage over time"
3536 msgstr ""
3537
3538 #. type: textblock
3539 #: ../examples/guestfs-recipes.pod:332
3540 msgid ""
3541 "You can use L<virt-df(1)> to monitor disk usage of your guests over time.  "
3542 "The link below contains a guide."
3543 msgstr ""
3544
3545 #. type: textblock
3546 #: ../examples/guestfs-recipes.pod:335
3547 msgid "http://virt-tools.org/learning/advanced-virt-df/"
3548 msgstr ""
3549
3550 #. type: =head1
3551 #: ../examples/guestfs-recipes.pod:337
3552 msgid "Reading the Windows Event Log from Windows Vista (or later)"
3553 msgstr ""
3554
3555 #. type: textblock
3556 #: ../examples/guestfs-recipes.pod:339
3557 msgid ""
3558 "L<guestfish(1)> plus the tools described in the link below can be used to "
3559 "read out the Windows Event Log from any virtual machine running Windows "
3560 "Vista or a later version."
3561 msgstr ""
3562
3563 #. type: textblock
3564 #: ../examples/guestfs-recipes.pod:343
3565 msgid "https://rwmj.wordpress.com/2011/04/17/decoding-the-windows-event-log-using-guestfish/#content"
3566 msgstr ""
3567
3568 #. type: =head1
3569 #: ../examples/guestfs-recipes.pod:345
3570 msgid "Remove root password (Linux)"
3571 msgstr ""
3572
3573 #. type: textblock
3574 #: ../examples/guestfs-recipes.pod:347
3575 msgid ""
3576 "Using the L<virt-edit(1)> I<-e> option you can do simple replacements on "
3577 "files.  One use is to remove the root password from a Linux guest:"
3578 msgstr ""
3579
3580 #. type: verbatim
3581 #: ../examples/guestfs-recipes.pod:350
3582 #, no-wrap
3583 msgid ""
3584 " virt-edit domname /etc/passwd -e 's/^root:.*?:/root::/'\n"
3585 "\n"
3586 msgstr ""
3587
3588 #. type: =head1
3589 #: ../examples/guestfs-recipes.pod:352
3590 msgid "Remove Administrator password (Windows)"
3591 msgstr ""
3592
3593 #. type: textblock
3594 #: ../examples/guestfs-recipes.pod:354
3595 msgid ""
3596 "The link below contains one technique for removing the Administrator "
3597 "password from a Windows VM, or to be more precise, it gives you a command "
3598 "prompt the next time you log in which you can use to bypass any security:"
3599 msgstr ""
3600
3601 #. type: textblock
3602 #: ../examples/guestfs-recipes.pod:359
3603 msgid "https://mdbooth.wordpress.com/2010/10/18/resetting-a-windows-guests-administrator-password-with-guestfish/"
3604 msgstr ""
3605
3606 #. type: =head1
3607 #: ../examples/guestfs-recipes.pod:361
3608 msgid "Unpack a live CD"
3609 msgstr ""
3610
3611 #. type: textblock
3612 #: ../examples/guestfs-recipes.pod:363
3613 msgid ""
3614 "Linux live CDs often contain multiple layers of disk images wrapped like a "
3615 "Russian doll.  You can use L<guestfish(1)> to look inside these multiple "
3616 "layers, as outlined in the guide below."
3617 msgstr ""
3618
3619 #. type: textblock
3620 #: ../examples/guestfs-recipes.pod:367
3621 msgid "https://rwmj.wordpress.com/2009/07/15/unpack-the-russian-doll-of-a-f11-live-cd/#content"
3622 msgstr ""
3623
3624 #. type: =head1
3625 #: ../examples/guestfs-recipes.pod:369
3626 msgid "Uploading and downloading files"
3627 msgstr ""
3628
3629 #. type: textblock
3630 #: ../examples/guestfs-recipes.pod:371
3631 msgid ""
3632 "The link below contains general tips on uploading (copying in)  and "
3633 "downloading (copying out) files from VMs."
3634 msgstr ""
3635
3636 #. type: textblock
3637 #: ../examples/guestfs-recipes.pod:374
3638 msgid "https://rwmj.wordpress.com/2010/12/02/tip-uploading-and-downloading/#content"
3639 msgstr ""
3640
3641 #. type: =head1
3642 #: ../examples/guestfs-recipes.pod:376
3643 msgid "Use libguestfs tools on VMware ESX guests"
3644 msgstr ""
3645
3646 #. type: textblock
3647 #: ../examples/guestfs-recipes.pod:378
3648 msgid ""
3649 "The link below explains how to use libguestfs, L<guestfish(1)> and the virt "
3650 "tools on any VMware ESX guests, by first sharing the VMware VMFS over sshfs."
3651 msgstr ""
3652
3653 #. type: textblock
3654 #: ../examples/guestfs-recipes.pod:382
3655 msgid "https://rwmj.wordpress.com/2011/05/10/tip-use-libguestfs-on-vmware-esx-guests/#content"
3656 msgstr ""
3657
3658 #. type: textblock
3659 #: ../examples/guestfs-recipes.pod:386
3660 msgid ""
3661 "L<guestfs(3)>, L<guestfish(1)>, L<guestfs-examples(3)>, L<guestfs-java(3)>, "
3662 "L<guestfs-ocaml(3)>, L<guestfs-perl(3)>, L<guestfs-python(3)>, "
3663 "L<guestfs-ruby(3)>, L<http://libguestfs.org/>."
3664 msgstr ""
3665
3666 #. type: textblock
3667 #: ../examples/guestfs-recipes.pod:402
3668 msgid "Copyright (C) 2009-2011 Red Hat Inc. L<http://libguestfs.org/>"
3669 msgstr ""
3670
3671 #. type: =head2
3672 #: ../fish/guestfish-actions.pod:1
3673 msgid "add-cdrom"
3674 msgstr ""
3675
3676 #. type: verbatim
3677 #: ../fish/guestfish-actions.pod:3
3678 #, no-wrap
3679 msgid ""
3680 " add-cdrom filename\n"
3681 "\n"
3682 msgstr ""
3683
3684 #. type: textblock
3685 #: ../fish/guestfish-actions.pod:5 ../src/guestfs-actions.pod:7
3686 msgid "This function adds a virtual CD-ROM disk image to the guest."
3687 msgstr ""
3688
3689 #. type: textblock
3690 #: ../fish/guestfish-actions.pod:7 ../src/guestfs-actions.pod:9
3691 msgid "This is equivalent to the qemu parameter I<-cdrom filename>."
3692 msgstr ""
3693
3694 #. type: textblock
3695 #: ../fish/guestfish-actions.pod:15
3696 msgid ""
3697 "This call checks for the existence of C<filename>.  This stops you from "
3698 "specifying other types of drive which are supported by qemu such as C<nbd:> "
3699 "and C<http:> URLs.  To specify those, use the general L</config> call "
3700 "instead."
3701 msgstr ""
3702
3703 #. type: textblock
3704 #: ../fish/guestfish-actions.pod:22
3705 msgid ""
3706 "If you just want to add an ISO file (often you use this as an efficient way "
3707 "to transfer large files into the guest), then you should probably use "
3708 "L</add-drive-ro> instead."
3709 msgstr ""
3710
3711 #. type: textblock
3712 #: ../fish/guestfish-actions.pod:28 ../fish/guestfish-actions.pod:163 ../fish/guestfish-actions.pod:177 ../src/guestfs-actions.pod:32 ../src/guestfs-actions.pod:254 ../src/guestfs-actions.pod:275
3713 msgid ""
3714 "This function is deprecated.  In new code, use the C<add_drive_opts> call "
3715 "instead."
3716 msgstr ""
3717
3718 #. type: textblock
3719 #: ../fish/guestfish-actions.pod:31 ../fish/guestfish-actions.pod:166 ../fish/guestfish-actions.pod:180 ../fish/guestfish-actions.pod:986 ../fish/guestfish-actions.pod:1346 ../fish/guestfish-actions.pod:1360 ../fish/guestfish-actions.pod:3085 ../fish/guestfish-actions.pod:3292 ../fish/guestfish-actions.pod:3406 ../fish/guestfish-actions.pod:3454 ../fish/guestfish-actions.pod:4355 ../fish/guestfish-actions.pod:4378 ../fish/guestfish-actions.pod:4400 ../fish/guestfish-actions.pod:4438 ../fish/guestfish-actions.pod:5087 ../fish/guestfish-actions.pod:5185 ../src/guestfs-actions.pod:35 ../src/guestfs-actions.pod:257 ../src/guestfs-actions.pod:278 ../src/guestfs-actions.pod:1513 ../src/guestfs-actions.pod:2008 ../src/guestfs-actions.pod:2029 ../src/guestfs-actions.pod:4628 ../src/guestfs-actions.pod:4947 ../src/guestfs-actions.pod:5165 ../src/guestfs-actions.pod:5255 ../src/guestfs-actions.pod:6544 ../src/guestfs-actions.pod:6574 ../src/guestfs-actions.pod:6607 ../src/guestfs-actions.pod:6666 ../src/guestfs-actions.pod:7602 ../src/guestfs-actions.pod:7714 ../src/guestfs-actions.pod:7884
3720 msgid ""
3721 "Deprecated functions will not be removed from the API, but the fact that "
3722 "they are deprecated indicates that there are problems with correct use of "
3723 "these functions."
3724 msgstr ""
3725
3726 #. type: =head2
3727 #: ../fish/guestfish-actions.pod:35
3728 msgid "add-domain"
3729 msgstr ""
3730
3731 #. type: =head2
3732 #: ../fish/guestfish-actions.pod:37
3733 msgid "domain"
3734 msgstr ""
3735
3736 #. type: verbatim
3737 #: ../fish/guestfish-actions.pod:39
3738 #, no-wrap
3739 msgid ""
3740 " add-domain dom [libvirturi:..] [readonly:..] [iface:..] [live:..] "
3741 "[allowuuid:..]\n"
3742 "\n"
3743 msgstr ""
3744
3745 #. type: textblock
3746 #: ../fish/guestfish-actions.pod:41
3747 msgid ""
3748 "This function adds the disk(s) attached to the named libvirt domain C<dom>.  "
3749 "It works by connecting to libvirt, requesting the domain and domain XML from "
3750 "libvirt, parsing it for disks, and calling L</add-drive-opts> on each one."
3751 msgstr ""
3752
3753 #. type: textblock
3754 #: ../fish/guestfish-actions.pod:46 ../src/guestfs-actions.pod:64
3755 msgid ""
3756 "The number of disks added is returned.  This operation is atomic: if an "
3757 "error is returned, then no disks are added."
3758 msgstr ""
3759
3760 #. type: textblock
3761 #: ../fish/guestfish-actions.pod:49 ../src/guestfs-actions.pod:67
3762 msgid ""
3763 "This function does some minimal checks to make sure the libvirt domain is "
3764 "not running (unless C<readonly> is true).  In a future version we will try "
3765 "to acquire the libvirt lock on each disk."
3766 msgstr ""
3767
3768 #. type: textblock
3769 #: ../fish/guestfish-actions.pod:53 ../src/guestfs-actions.pod:71
3770 msgid ""
3771 "Disks must be accessible locally.  This often means that adding disks from a "
3772 "remote libvirt connection (see L<http://libvirt.org/remote.html>)  will fail "
3773 "unless those disks are accessible via the same device path locally too."
3774 msgstr ""
3775
3776 #. type: textblock
3777 #: ../fish/guestfish-actions.pod:58 ../src/guestfs-actions.pod:76
3778 msgid ""
3779 "The optional C<libvirturi> parameter sets the libvirt URI (see "
3780 "L<http://libvirt.org/uri.html>).  If this is not set then we connect to the "
3781 "default libvirt URI (or one set through an environment variable, see the "
3782 "libvirt documentation for full details)."
3783 msgstr ""
3784
3785 #. type: textblock
3786 #: ../fish/guestfish-actions.pod:64 ../src/guestfs-actions.pod:82
3787 msgid ""
3788 "The optional C<live> flag controls whether this call will try to connect to "
3789 "a running virtual machine C<guestfsd> process if it sees a suitable "
3790 "E<lt>channelE<gt> element in the libvirt XML definition.  The default (if "
3791 "the flag is omitted) is never to try.  See L<guestfs(3)/ATTACHING TO RUNNING "
3792 "DAEMONS> for more information."
3793 msgstr ""
3794
3795 #. type: textblock
3796 #: ../fish/guestfish-actions.pod:71 ../src/guestfs-actions.pod:89
3797 msgid ""
3798 "If the C<allowuuid> flag is true (default is false) then a UUID I<may> be "
3799 "passed instead of the domain name.  The C<dom> string is treated as a UUID "
3800 "first and looked up, and if that lookup fails then we treat C<dom> as a name "
3801 "as usual."
3802 msgstr ""
3803
3804 #. type: textblock
3805 #: ../fish/guestfish-actions.pod:76
3806 msgid ""
3807 "The other optional parameters are passed directly through to "
3808 "L</add-drive-opts>."
3809 msgstr ""
3810
3811 #. type: textblock
3812 #: ../fish/guestfish-actions.pod:79 ../fish/guestfish-actions.pod:143 ../fish/guestfish-actions.pod:568 ../fish/guestfish-actions.pod:1968 ../fish/guestfish-actions.pod:3134 ../fish/guestfish-actions.pod:3307 ../fish/guestfish-actions.pod:3442
3813 msgid ""
3814 "This command has one or more optional arguments.  See L</OPTIONAL "
3815 "ARGUMENTS>."
3816 msgstr ""
3817
3818 #. type: =head2
3819 #: ../fish/guestfish-actions.pod:81
3820 msgid "add-drive"
3821 msgstr ""
3822
3823 #. type: verbatim
3824 #: ../fish/guestfish-actions.pod:83
3825 #, no-wrap
3826 msgid ""
3827 " add-drive filename\n"
3828 "\n"
3829 msgstr ""
3830
3831 #. type: textblock
3832 #: ../fish/guestfish-actions.pod:85
3833 msgid ""
3834 "This function is the equivalent of calling L</add-drive-opts> with no "
3835 "optional parameters, so the disk is added writable, with the format being "
3836 "detected automatically."
3837 msgstr ""
3838
3839 #. type: textblock
3840 #: ../fish/guestfish-actions.pod:89
3841 msgid ""
3842 "Automatic detection of the format opens you up to a potential security hole "
3843 "when dealing with untrusted raw-format images.  See CVE-2010-3851 and "
3844 "RHBZ#642934.  Specifying the format closes this security hole.  Therefore "
3845 "you should think about replacing calls to this function with calls to "
3846 "L</add-drive-opts>, and specifying the format."
3847 msgstr ""
3848
3849 #. type: =head2
3850 #: ../fish/guestfish-actions.pod:96
3851 msgid "add-drive-opts"
3852 msgstr ""
3853
3854 #. type: =head2
3855 #: ../fish/guestfish-actions.pod:98
3856 msgid "add"
3857 msgstr ""
3858
3859 #. type: verbatim
3860 #: ../fish/guestfish-actions.pod:100
3861 #, no-wrap
3862 msgid ""
3863 " add-drive-opts filename [readonly:..] [format:..] [iface:..]\n"
3864 "\n"
3865 msgstr ""
3866
3867 #. type: textblock
3868 #: ../fish/guestfish-actions.pod:102 ../src/guestfs-actions.pod:160
3869 msgid ""
3870 "This function adds a virtual machine disk image C<filename> to libguestfs.  "
3871 "The first time you call this function, the disk appears as C</dev/sda>, the "
3872 "second time as C</dev/sdb>, and so on."
3873 msgstr ""
3874
3875 #. type: textblock
3876 #: ../fish/guestfish-actions.pod:107 ../src/guestfs-actions.pod:165
3877 msgid ""
3878 "You don't necessarily need to be root when using libguestfs.  However you "
3879 "obviously do need sufficient permissions to access the filename for whatever "
3880 "operations you want to perform (ie. read access if you just want to read the "
3881 "image or write access if you want to modify the image)."
3882 msgstr ""
3883
3884 #. type: textblock
3885 #: ../fish/guestfish-actions.pod:113 ../src/guestfs-actions.pod:171
3886 msgid "This call checks that C<filename> exists."
3887 msgstr ""
3888
3889 #. type: textblock
3890 #: ../fish/guestfish-actions.pod:115 ../fish/guestfish-actions.pod:3096 ../src/guestfs-actions.pod:173 ../src/guestfs-actions.pod:4655
3891 msgid "The optional arguments are:"
3892 msgstr ""
3893
3894 #. type: =item
3895 #: ../fish/guestfish-actions.pod:119 ../src/guestfs-actions.pod:177
3896 msgid "C<readonly>"
3897 msgstr ""
3898
3899 #. type: textblock
3900 #: ../fish/guestfish-actions.pod:121 ../src/guestfs-actions.pod:179
3901 msgid ""
3902 "If true then the image is treated as read-only.  Writes are still allowed, "
3903 "but they are stored in a temporary snapshot overlay which is discarded at "
3904 "the end.  The disk that you add is not modified."
3905 msgstr ""
3906
3907 #. type: =item
3908 #: ../fish/guestfish-actions.pod:125 ../src/guestfs-actions.pod:183
3909 msgid "C<format>"
3910 msgstr ""
3911
3912 #. type: textblock
3913 #: ../fish/guestfish-actions.pod:127
3914 msgid ""
3915 "This forces the image format.  If you omit this (or use L</add-drive> or "
3916 "L</add-drive-ro>) then the format is automatically detected.  Possible "
3917 "formats include C<raw> and C<qcow2>."
3918 msgstr ""
3919
3920 #. type: textblock
3921 #: ../fish/guestfish-actions.pod:131 ../src/guestfs-actions.pod:189
3922 msgid ""
3923 "Automatic detection of the format opens you up to a potential security hole "
3924 "when dealing with untrusted raw-format images.  See CVE-2010-3851 and "
3925 "RHBZ#642934.  Specifying the format closes this security hole."
3926 msgstr ""
3927
3928 #. type: =item
3929 #: ../fish/guestfish-actions.pod:136 ../src/guestfs-actions.pod:194
3930 msgid "C<iface>"
3931 msgstr ""
3932
3933 #. type: textblock
3934 #: ../fish/guestfish-actions.pod:138
3935 msgid ""
3936 "This rarely-used option lets you emulate the behaviour of the deprecated "
3937 "L</add-drive-with-if> call (q.v.)"
3938 msgstr ""
3939
3940 #. type: =head2
3941 #: ../fish/guestfish-actions.pod:145
3942 msgid "add-drive-ro"
3943 msgstr ""
3944
3945 #. type: =head2
3946 #: ../fish/guestfish-actions.pod:147
3947 msgid "add-ro"
3948 msgstr ""
3949
3950 #. type: verbatim
3951 #: ../fish/guestfish-actions.pod:149
3952 #, no-wrap
3953 msgid ""
3954 " add-drive-ro filename\n"
3955 "\n"
3956 msgstr ""
3957
3958 #. type: textblock
3959 #: ../fish/guestfish-actions.pod:151
3960 msgid ""
3961 "This function is the equivalent of calling L</add-drive-opts> with the "
3962 "optional parameter C<GUESTFS_ADD_DRIVE_OPTS_READONLY> set to 1, so the disk "
3963 "is added read-only, with the format being detected automatically."
3964 msgstr ""
3965
3966 #. type: =head2
3967 #: ../fish/guestfish-actions.pod:156
3968 msgid "add-drive-ro-with-if"
3969 msgstr ""
3970
3971 #. type: verbatim
3972 #: ../fish/guestfish-actions.pod:158
3973 #, no-wrap
3974 msgid ""
3975 " add-drive-ro-with-if filename iface\n"
3976 "\n"
3977 msgstr ""
3978
3979 #. type: textblock
3980 #: ../fish/guestfish-actions.pod:160
3981 msgid ""
3982 "This is the same as L</add-drive-ro> but it allows you to specify the QEMU "
3983 "interface emulation to use at run time."
3984 msgstr ""
3985
3986 #. type: =head2
3987 #: ../fish/guestfish-actions.pod:170
3988 msgid "add-drive-with-if"
3989 msgstr ""
3990
3991 #. type: verbatim
3992 #: ../fish/guestfish-actions.pod:172
3993 #, no-wrap
3994 msgid ""
3995 " add-drive-with-if filename iface\n"
3996 "\n"
3997 msgstr ""
3998
3999 #. type: textblock
4000 #: ../fish/guestfish-actions.pod:174
4001 msgid ""
4002 "This is the same as L</add-drive> but it allows you to specify the QEMU "
4003 "interface emulation to use at run time."
4004 msgstr ""
4005
4006 #. type: =head2
4007 #: ../fish/guestfish-actions.pod:184
4008 msgid "aug-clear"
4009 msgstr ""
4010
4011 #. type: verbatim
4012 #: ../fish/guestfish-actions.pod:186
4013 #, no-wrap
4014 msgid ""
4015 " aug-clear augpath\n"
4016 "\n"
4017 msgstr ""
4018
4019 #. type: textblock
4020 #: ../fish/guestfish-actions.pod:188 ../src/guestfs-actions.pod:290
4021 msgid ""
4022 "Set the value associated with C<path> to C<NULL>.  This is the same as the "
4023 "L<augtool(1)> C<clear> command."
4024 msgstr ""
4025
4026 #. type: =head2
4027 #: ../fish/guestfish-actions.pod:191
4028 msgid "aug-close"
4029 msgstr ""
4030
4031 #. type: verbatim
4032 #: ../fish/guestfish-actions.pod:193
4033 #, no-wrap
4034 msgid ""
4035 " aug-close\n"
4036 "\n"
4037 msgstr ""
4038
4039 #. type: textblock
4040 #: ../fish/guestfish-actions.pod:195
4041 msgid ""
4042 "Close the current Augeas handle and free up any resources used by it.  After "
4043 "calling this, you have to call L</aug-init> again before you can use any "
4044 "other Augeas functions."
4045 msgstr ""
4046
4047 #. type: =head2
4048 #: ../fish/guestfish-actions.pod:200
4049 msgid "aug-defnode"
4050 msgstr ""
4051
4052 #. type: verbatim
4053 #: ../fish/guestfish-actions.pod:202
4054 #, no-wrap
4055 msgid ""
4056 " aug-defnode name expr val\n"
4057 "\n"
4058 msgstr ""
4059
4060 #. type: textblock
4061 #: ../fish/guestfish-actions.pod:204 ../src/guestfs-actions.pod:319
4062 msgid "Defines a variable C<name> whose value is the result of evaluating C<expr>."
4063 msgstr ""
4064
4065 #. type: textblock
4066 #: ../fish/guestfish-actions.pod:207
4067 msgid ""
4068 "If C<expr> evaluates to an empty nodeset, a node is created, equivalent to "
4069 "calling L</aug-set> C<expr>, C<value>.  C<name> will be the nodeset "
4070 "containing that single node."
4071 msgstr ""
4072
4073 #. type: textblock
4074 #: ../fish/guestfish-actions.pod:211 ../src/guestfs-actions.pod:326
4075 msgid ""
4076 "On success this returns a pair containing the number of nodes in the "
4077 "nodeset, and a boolean flag if a node was created."
4078 msgstr ""
4079
4080 #. type: =head2
4081 #: ../fish/guestfish-actions.pod:215
4082 msgid "aug-defvar"
4083 msgstr ""
4084
4085 #. type: verbatim
4086 #: ../fish/guestfish-actions.pod:217
4087 #, no-wrap
4088 msgid ""
4089 " aug-defvar name expr\n"
4090 "\n"
4091 msgstr ""
4092
4093 #. type: textblock
4094 #: ../fish/guestfish-actions.pod:219 ../src/guestfs-actions.pod:343
4095 msgid ""
4096 "Defines an Augeas variable C<name> whose value is the result of evaluating "
4097 "C<expr>.  If C<expr> is NULL, then C<name> is undefined."
4098 msgstr ""
4099
4100 #. type: textblock
4101 #: ../fish/guestfish-actions.pod:223 ../src/guestfs-actions.pod:347
4102 msgid ""
4103 "On success this returns the number of nodes in C<expr>, or C<0> if C<expr> "
4104 "evaluates to something which is not a nodeset."
4105 msgstr ""
4106
4107 #. type: =head2
4108 #: ../fish/guestfish-actions.pod:226
4109 msgid "aug-get"
4110 msgstr ""
4111
4112 #. type: verbatim
4113 #: ../fish/guestfish-actions.pod:228
4114 #, no-wrap
4115 msgid ""
4116 " aug-get augpath\n"
4117 "\n"
4118 msgstr ""
4119
4120 #. type: textblock
4121 #: ../fish/guestfish-actions.pod:230 ../src/guestfs-actions.pod:360
4122 msgid ""
4123 "Look up the value associated with C<path>.  If C<path> matches exactly one "
4124 "node, the C<value> is returned."
4125 msgstr ""
4126
4127 #. type: =head2
4128 #: ../fish/guestfish-actions.pod:233
4129 msgid "aug-init"
4130 msgstr ""
4131
4132 #. type: verbatim
4133 #: ../fish/guestfish-actions.pod:235
4134 #, no-wrap
4135 msgid ""
4136 " aug-init root flags\n"
4137 "\n"
4138 msgstr ""
4139
4140 #. type: textblock
4141 #: ../fish/guestfish-actions.pod:237 ../src/guestfs-actions.pod:375
4142 msgid ""
4143 "Create a new Augeas handle for editing configuration files.  If there was "
4144 "any previous Augeas handle associated with this guestfs session, then it is "
4145 "closed."
4146 msgstr ""
4147
4148 #. type: textblock
4149 #: ../fish/guestfish-actions.pod:241
4150 msgid "You must call this before using any other L</aug-*> commands."
4151 msgstr ""
4152
4153 #. type: textblock
4154 #: ../fish/guestfish-actions.pod:244 ../src/guestfs-actions.pod:382
4155 msgid "C<root> is the filesystem root.  C<root> must not be NULL, use C</> instead."
4156 msgstr ""
4157
4158 #. type: textblock
4159 #: ../fish/guestfish-actions.pod:247 ../src/guestfs-actions.pod:385
4160 msgid ""
4161 "The flags are the same as the flags defined in E<lt>augeas.hE<gt>, the "
4162 "logical I<or> of the following integers:"
4163 msgstr ""
4164
4165 #. type: =item
4166 #: ../fish/guestfish-actions.pod:253 ../src/guestfs-actions.pod:391
4167 msgid "C<AUG_SAVE_BACKUP> = 1"
4168 msgstr ""
4169
4170 #. type: textblock
4171 #: ../fish/guestfish-actions.pod:255 ../src/guestfs-actions.pod:393
4172 msgid "Keep the original file with a C<.augsave> extension."
4173 msgstr ""
4174
4175 #. type: =item
4176 #: ../fish/guestfish-actions.pod:257 ../src/guestfs-actions.pod:395
4177 msgid "C<AUG_SAVE_NEWFILE> = 2"
4178 msgstr ""
4179
4180 #. type: textblock
4181 #: ../fish/guestfish-actions.pod:259 ../src/guestfs-actions.pod:397
4182 msgid ""
4183 "Save changes into a file with extension C<.augnew>, and do not overwrite "
4184 "original.  Overrides C<AUG_SAVE_BACKUP>."
4185 msgstr ""
4186
4187 #. type: =item
4188 #: ../fish/guestfish-actions.pod:262 ../src/guestfs-actions.pod:400
4189 msgid "C<AUG_TYPE_CHECK> = 4"
4190 msgstr ""
4191
4192 #. type: textblock
4193 #: ../fish/guestfish-actions.pod:264 ../src/guestfs-actions.pod:402
4194 msgid "Typecheck lenses (can be expensive)."
4195 msgstr ""
4196
4197 #. type: =item
4198 #: ../fish/guestfish-actions.pod:266 ../src/guestfs-actions.pod:404
4199 msgid "C<AUG_NO_STDINC> = 8"
4200 msgstr ""
4201
4202 #. type: textblock
4203 #: ../fish/guestfish-actions.pod:268 ../src/guestfs-actions.pod:406
4204 msgid "Do not use standard load path for modules."
4205 msgstr ""
4206
4207 #. type: =item
4208 #: ../fish/guestfish-actions.pod:270 ../src/guestfs-actions.pod:408
4209 msgid "C<AUG_SAVE_NOOP> = 16"
4210 msgstr ""
4211
4212 #. type: textblock
4213 #: ../fish/guestfish-actions.pod:272 ../src/guestfs-actions.pod:410
4214 msgid "Make save a no-op, just record what would have been changed."
4215 msgstr ""
4216
4217 #. type: =item
4218 #: ../fish/guestfish-actions.pod:274 ../src/guestfs-actions.pod:412
4219 msgid "C<AUG_NO_LOAD> = 32"
4220 msgstr ""
4221
4222 #. type: textblock
4223 #: ../fish/guestfish-actions.pod:276
4224 msgid "Do not load the tree in L</aug-init>."
4225 msgstr ""
4226
4227 #. type: textblock
4228 #: ../fish/guestfish-actions.pod:280
4229 msgid "To close the handle, you can call L</aug-close>."
4230 msgstr ""
4231
4232 #. type: textblock
4233 #: ../fish/guestfish-actions.pod:282 ../src/guestfs-actions.pod:420
4234 msgid "To find out more about Augeas, see L<http://augeas.net/>."
4235 msgstr ""
4236
4237 #. type: =head2
4238 #: ../fish/guestfish-actions.pod:284
4239 msgid "aug-insert"
4240 msgstr ""
4241
4242 #. type: verbatim
4243 #: ../fish/guestfish-actions.pod:286
4244 #, no-wrap
4245 msgid ""
4246 " aug-insert augpath label true|false\n"
4247 "\n"
4248 msgstr ""
4249
4250 #. type: textblock
4251 #: ../fish/guestfish-actions.pod:288 ../src/guestfs-actions.pod:434
4252 msgid ""
4253 "Create a new sibling C<label> for C<path>, inserting it into the tree before "
4254 "or after C<path> (depending on the boolean flag C<before>)."
4255 msgstr ""
4256
4257 #. type: textblock
4258 #: ../fish/guestfish-actions.pod:292 ../src/guestfs-actions.pod:438
4259 msgid ""
4260 "C<path> must match exactly one existing node in the tree, and C<label> must "
4261 "be a label, ie. not contain C</>, C<*> or end with a bracketed index C<[N]>."
4262 msgstr ""
4263
4264 #. type: =head2
4265 #: ../fish/guestfish-actions.pod:296
4266 msgid "aug-load"
4267 msgstr ""
4268
4269 #. type: verbatim
4270 #: ../fish/guestfish-actions.pod:298
4271 #, no-wrap
4272 msgid ""
4273 " aug-load\n"
4274 "\n"
4275 msgstr ""
4276
4277 #. type: textblock
4278 #: ../fish/guestfish-actions.pod:300 ../src/guestfs-actions.pod:451
4279 msgid "Load files into the tree."
4280 msgstr ""
4281
4282 #. type: textblock
4283 #: ../fish/guestfish-actions.pod:302 ../src/guestfs-actions.pod:453
4284 msgid "See C<aug_load> in the Augeas documentation for the full gory details."
4285 msgstr ""
4286
4287 #. type: =head2
4288 #: ../fish/guestfish-actions.pod:305
4289 msgid "aug-ls"
4290 msgstr ""
4291
4292 #. type: verbatim
4293 #: ../fish/guestfish-actions.pod:307
4294 #, no-wrap
4295 msgid ""
4296 " aug-ls augpath\n"
4297 "\n"
4298 msgstr ""
4299
4300 #. type: textblock
4301 #: ../fish/guestfish-actions.pod:309
4302 msgid ""
4303 "This is just a shortcut for listing L</aug-match> C<path/*> and sorting the "
4304 "resulting nodes into alphabetical order."
4305 msgstr ""
4306
4307 #. type: =head2
4308 #: ../fish/guestfish-actions.pod:312
4309 msgid "aug-match"
4310 msgstr ""
4311
4312 #. type: verbatim
4313 #: ../fish/guestfish-actions.pod:314
4314 #, no-wrap
4315 msgid ""
4316 " aug-match augpath\n"
4317 "\n"
4318 msgstr ""
4319
4320 #. type: textblock
4321 #: ../fish/guestfish-actions.pod:316 ../src/guestfs-actions.pod:481
4322 msgid ""
4323 "Returns a list of paths which match the path expression C<path>.  The "
4324 "returned paths are sufficiently qualified so that they match exactly one "
4325 "node in the current tree."
4326 msgstr ""
4327
4328 #. type: =head2
4329 #: ../fish/guestfish-actions.pod:320
4330 msgid "aug-mv"
4331 msgstr ""
4332
4333 #. type: verbatim
4334 #: ../fish/guestfish-actions.pod:322
4335 #, no-wrap
4336 msgid ""
4337 " aug-mv src dest\n"
4338 "\n"
4339 msgstr ""
4340
4341 #. type: textblock
4342 #: ../fish/guestfish-actions.pod:324 ../src/guestfs-actions.pod:498
4343 msgid ""
4344 "Move the node C<src> to C<dest>.  C<src> must match exactly one node.  "
4345 "C<dest> is overwritten if it exists."
4346 msgstr ""
4347
4348 #. type: =head2
4349 #: ../fish/guestfish-actions.pod:327
4350 msgid "aug-rm"
4351 msgstr ""
4352
4353 #. type: verbatim
4354 #: ../fish/guestfish-actions.pod:329
4355 #, no-wrap
4356 msgid ""
4357 " aug-rm augpath\n"
4358 "\n"
4359 msgstr ""
4360
4361 #. type: textblock
4362 #: ../fish/guestfish-actions.pod:331 ../src/guestfs-actions.pod:511
4363 msgid "Remove C<path> and all of its children."
4364 msgstr ""
4365
4366 #. type: textblock
4367 #: ../fish/guestfish-actions.pod:333 ../src/guestfs-actions.pod:513
4368 msgid "On success this returns the number of entries which were removed."
4369 msgstr ""
4370
4371 #. type: =head2
4372 #: ../fish/guestfish-actions.pod:335
4373 msgid "aug-save"
4374 msgstr ""
4375
4376 #. type: verbatim
4377 #: ../fish/guestfish-actions.pod:337
4378 #, no-wrap
4379 msgid ""
4380 " aug-save\n"
4381 "\n"
4382 msgstr ""
4383
4384 #. type: textblock
4385 #: ../fish/guestfish-actions.pod:339 ../src/guestfs-actions.pod:524
4386 msgid "This writes all pending changes to disk."
4387 msgstr ""
4388
4389 #. type: textblock
4390 #: ../fish/guestfish-actions.pod:341
4391 msgid ""
4392 "The flags which were passed to L</aug-init> affect exactly how files are "
4393 "saved."
4394 msgstr ""
4395
4396 #. type: =head2
4397 #: ../fish/guestfish-actions.pod:344
4398 msgid "aug-set"
4399 msgstr ""
4400
4401 #. type: verbatim
4402 #: ../fish/guestfish-actions.pod:346
4403 #, no-wrap
4404 msgid ""
4405 " aug-set augpath val\n"
4406 "\n"
4407 msgstr ""
4408
4409 #. type: textblock
4410 #: ../fish/guestfish-actions.pod:348 ../src/guestfs-actions.pod:540
4411 msgid "Set the value associated with C<path> to C<val>."
4412 msgstr ""
4413
4414 #. type: textblock
4415 #: ../fish/guestfish-actions.pod:350
4416 msgid ""
4417 "In the Augeas API, it is possible to clear a node by setting the value to "
4418 "NULL.  Due to an oversight in the libguestfs API you cannot do that with "
4419 "this call.  Instead you must use the L</aug-clear> call."
4420 msgstr ""
4421
4422 #. type: =head2
4423 #: ../fish/guestfish-actions.pod:355
4424 msgid "available"
4425 msgstr ""
4426
4427 #. type: verbatim
4428 #: ../fish/guestfish-actions.pod:357
4429 #, no-wrap
4430 msgid ""
4431 " available 'groups ...'\n"
4432 "\n"
4433 msgstr ""
4434
4435 #. type: textblock
4436 #: ../fish/guestfish-actions.pod:359 ../src/guestfs-actions.pod:557
4437 msgid ""
4438 "This command is used to check the availability of some groups of "
4439 "functionality in the appliance, which not all builds of the libguestfs "
4440 "appliance will be able to provide."
4441 msgstr ""
4442
4443 #. type: textblock
4444 #: ../fish/guestfish-actions.pod:363
4445 msgid ""
4446 "The libguestfs groups, and the functions that those groups correspond to, "
4447 "are listed in L<guestfs(3)/AVAILABILITY>.  You can also fetch this list at "
4448 "runtime by calling L</available-all-groups>."
4449 msgstr ""
4450
4451 #. type: textblock
4452 #: ../fish/guestfish-actions.pod:368 ../src/guestfs-actions.pod:566
4453 msgid ""
4454 "The argument C<groups> is a list of group names, eg: C<[\"inotify\", "
4455 "\"augeas\"]> would check for the availability of the Linux inotify functions "
4456 "and Augeas (configuration file editing) functions."
4457 msgstr ""
4458
4459 #. type: textblock
4460 #: ../fish/guestfish-actions.pod:373 ../src/guestfs-actions.pod:571
4461 msgid "The command returns no error if I<all> requested groups are available."
4462 msgstr ""
4463
4464 #. type: textblock
4465 #: ../fish/guestfish-actions.pod:375 ../src/guestfs-actions.pod:573
4466 msgid ""
4467 "It fails with an error if one or more of the requested groups is unavailable "
4468 "in the appliance."
4469 msgstr ""
4470
4471 #. type: textblock
4472 #: ../fish/guestfish-actions.pod:378 ../src/guestfs-actions.pod:576
4473 msgid ""
4474 "If an unknown group name is included in the list of groups then an error is "
4475 "always returned."
4476 msgstr ""
4477
4478 #. type: textblock
4479 #: ../fish/guestfish-actions.pod:381 ../src/guestfs-actions.pod:579
4480 msgid "I<Notes:>"
4481 msgstr ""
4482
4483 #. type: textblock
4484 #: ../fish/guestfish-actions.pod:387
4485 msgid "You must call L</launch> before calling this function."
4486 msgstr ""
4487
4488 #. type: textblock
4489 #: ../fish/guestfish-actions.pod:389 ../src/guestfs-actions.pod:587
4490 msgid ""
4491 "The reason is because we don't know what groups are supported by the "
4492 "appliance/daemon until it is running and can be queried."
4493 msgstr ""
4494
4495 #. type: textblock
4496 #: ../fish/guestfish-actions.pod:395 ../src/guestfs-actions.pod:593
4497 msgid ""
4498 "If a group of functions is available, this does not necessarily mean that "
4499 "they will work.  You still have to check for errors when calling individual "
4500 "API functions even if they are available."
4501 msgstr ""
4502
4503 #. type: textblock
4504 #: ../fish/guestfish-actions.pod:402 ../src/guestfs-actions.pod:600
4505 msgid ""
4506 "It is usually the job of distro packagers to build complete functionality "
4507 "into the libguestfs appliance.  Upstream libguestfs, if built from source "
4508 "with all requirements satisfied, will support everything."
4509 msgstr ""
4510
4511 #. type: textblock
4512 #: ../fish/guestfish-actions.pod:409
4513 msgid ""
4514 "This call was added in version C<1.0.80>.  In previous versions of "
4515 "libguestfs all you could do would be to speculatively execute a command to "
4516 "find out if the daemon implemented it.  See also L</version>."
4517 msgstr ""
4518
4519 #. type: =head2
4520 #: ../fish/guestfish-actions.pod:416
4521 msgid "available-all-groups"
4522 msgstr ""
4523
4524 #. type: verbatim
4525 #: ../fish/guestfish-actions.pod:418
4526 #, no-wrap
4527 msgid ""
4528 " available-all-groups\n"
4529 "\n"
4530 msgstr ""
4531
4532 #. type: textblock
4533 #: ../fish/guestfish-actions.pod:420
4534 msgid ""
4535 "This command returns a list of all optional groups that this daemon knows "
4536 "about.  Note this returns both supported and unsupported groups.  To find "
4537 "out which ones the daemon can actually support you have to call "
4538 "L</available> on each member of the returned list."
4539 msgstr ""
4540
4541 #. type: textblock
4542 #: ../fish/guestfish-actions.pod:426
4543 msgid "See also L</available> and L<guestfs(3)/AVAILABILITY>."
4544 msgstr ""
4545
4546 #. type: =head2
4547 #: ../fish/guestfish-actions.pod:428
4548 msgid "base64-in"
4549 msgstr ""
4550
4551 #. type: verbatim
4552 #: ../fish/guestfish-actions.pod:430
4553 #, no-wrap
4554 msgid ""
4555 " base64-in (base64file|-) filename\n"
4556 "\n"
4557 msgstr ""
4558
4559 #. type: textblock
4560 #: ../fish/guestfish-actions.pod:432 ../src/guestfs-actions.pod:644
4561 msgid "This command uploads base64-encoded data from C<base64file> to C<filename>."
4562 msgstr ""
4563
4564 #. type: textblock
4565 #: ../fish/guestfish-actions.pod:435 ../fish/guestfish-actions.pod:444 ../fish/guestfish-actions.pod:693 ../fish/guestfish-actions.pod:862 ../fish/guestfish-actions.pod:881 ../fish/guestfish-actions.pod:1255 ../fish/guestfish-actions.pod:4658 ../fish/guestfish-actions.pod:4670 ../fish/guestfish-actions.pod:4681 ../fish/guestfish-actions.pod:4692 ../fish/guestfish-actions.pod:4744 ../fish/guestfish-actions.pod:4753 ../fish/guestfish-actions.pod:4807 ../fish/guestfish-actions.pod:4830
4566 msgid "Use C<-> instead of a filename to read/write from stdin/stdout."
4567 msgstr ""
4568
4569 #. type: =head2
4570 #: ../fish/guestfish-actions.pod:437
4571 msgid "base64-out"
4572 msgstr ""
4573
4574 #. type: verbatim
4575 #: ../fish/guestfish-actions.pod:439
4576 #, no-wrap
4577 msgid ""
4578 " base64-out filename (base64file|-)\n"
4579 "\n"
4580 msgstr ""
4581
4582 #. type: textblock
4583 #: ../fish/guestfish-actions.pod:441 ../src/guestfs-actions.pod:658
4584 msgid ""
4585 "This command downloads the contents of C<filename>, writing it out to local "
4586 "file C<base64file> encoded as base64."
4587 msgstr ""
4588
4589 #. type: =head2
4590 #: ../fish/guestfish-actions.pod:446
4591 msgid "blockdev-flushbufs"
4592 msgstr ""
4593
4594 #. type: verbatim
4595 #: ../fish/guestfish-actions.pod:448
4596 #, no-wrap
4597 msgid ""
4598 " blockdev-flushbufs device\n"
4599 "\n"
4600 msgstr ""
4601
4602 #. type: textblock
4603 #: ../fish/guestfish-actions.pod:450 ../src/guestfs-actions.pod:671
4604 msgid "This tells the kernel to flush internal buffers associated with C<device>."
4605 msgstr ""
4606
4607 #. type: textblock
4608 #: ../fish/guestfish-actions.pod:453 ../fish/guestfish-actions.pod:464 ../fish/guestfish-actions.pod:473 ../fish/guestfish-actions.pod:483 ../fish/guestfish-actions.pod:495 ../fish/guestfish-actions.pod:508 ../fish/guestfish-actions.pod:516 ../fish/guestfish-actions.pod:527 ../fish/guestfish-actions.pod:535 ../fish/guestfish-actions.pod:543 ../src/guestfs-actions.pod:674 ../src/guestfs-actions.pod:691 ../src/guestfs-actions.pod:706 ../src/guestfs-actions.pod:722 ../src/guestfs-actions.pod:740 ../src/guestfs-actions.pod:759 ../src/guestfs-actions.pod:773 ../src/guestfs-actions.pod:791 ../src/guestfs-actions.pod:805 ../src/guestfs-actions.pod:819
4609 msgid "This uses the L<blockdev(8)> command."
4610 msgstr ""
4611
4612 #. type: =head2
4613 #: ../fish/guestfish-actions.pod:455
4614 msgid "blockdev-getbsz"
4615 msgstr ""
4616
4617 #. type: verbatim
4618 #: ../fish/guestfish-actions.pod:457
4619 #, no-wrap
4620 msgid ""
4621 " blockdev-getbsz device\n"
4622 "\n"
4623 msgstr ""
4624
4625 #. type: textblock
4626 #: ../fish/guestfish-actions.pod:459 ../src/guestfs-actions.pod:686
4627 msgid "This returns the block size of a device."
4628 msgstr ""
4629
4630 #. type: textblock
4631 #: ../fish/guestfish-actions.pod:461 ../fish/guestfish-actions.pod:524 ../src/guestfs-actions.pod:688 ../src/guestfs-actions.pod:788
4632 msgid ""
4633 "(Note this is different from both I<size in blocks> and I<filesystem block "
4634 "size>)."
4635 msgstr ""
4636
4637 #. type: =head2
4638 #: ../fish/guestfish-actions.pod:466
4639 msgid "blockdev-getro"
4640 msgstr ""
4641
4642 #. type: verbatim
4643 #: ../fish/guestfish-actions.pod:468
4644 #, no-wrap
4645 msgid ""
4646 " blockdev-getro device\n"
4647 "\n"
4648 msgstr ""
4649
4650 #. type: textblock
4651 #: ../fish/guestfish-actions.pod:470 ../src/guestfs-actions.pod:703
4652 msgid ""
4653 "Returns a boolean indicating if the block device is read-only (true if "
4654 "read-only, false if not)."
4655 msgstr ""
4656
4657 #. type: =head2
4658 #: ../fish/guestfish-actions.pod:475
4659 msgid "blockdev-getsize64"
4660 msgstr ""
4661
4662 #. type: verbatim
4663 #: ../fish/guestfish-actions.pod:477
4664 #, no-wrap
4665 msgid ""
4666 " blockdev-getsize64 device\n"
4667 "\n"
4668 msgstr ""
4669
4670 #. type: textblock
4671 #: ../fish/guestfish-actions.pod:479 ../src/guestfs-actions.pod:718
4672 msgid "This returns the size of the device in bytes."
4673 msgstr ""
4674
4675 #. type: textblock
4676 #: ../fish/guestfish-actions.pod:481
4677 msgid "See also L</blockdev-getsz>."
4678 msgstr ""
4679
4680 #. type: =head2
4681 #: ../fish/guestfish-actions.pod:485
4682 msgid "blockdev-getss"
4683 msgstr ""
4684
4685 #. type: verbatim
4686 #: ../fish/guestfish-actions.pod:487
4687 #, no-wrap
4688 msgid ""
4689 " blockdev-getss device\n"
4690 "\n"
4691 msgstr ""
4692
4693 #. type: textblock
4694 #: ../fish/guestfish-actions.pod:489 ../src/guestfs-actions.pod:734
4695 msgid ""
4696 "This returns the size of sectors on a block device.  Usually 512, but can be "
4697 "larger for modern devices."
4698 msgstr ""
4699
4700 #. type: textblock
4701 #: ../fish/guestfish-actions.pod:492
4702 msgid "(Note, this is not the size in sectors, use L</blockdev-getsz> for that)."
4703 msgstr ""
4704
4705 #. type: =head2
4706 #: ../fish/guestfish-actions.pod:497
4707 msgid "blockdev-getsz"
4708 msgstr ""
4709
4710 #. type: verbatim
4711 #: ../fish/guestfish-actions.pod:499
4712 #, no-wrap
4713 msgid ""
4714 " blockdev-getsz device\n"
4715 "\n"
4716 msgstr ""
4717
4718 #. type: textblock
4719 #: ../fish/guestfish-actions.pod:501 ../src/guestfs-actions.pod:752
4720 msgid ""
4721 "This returns the size of the device in units of 512-byte sectors (even if "
4722 "the sectorsize isn't 512 bytes ... weird)."
4723 msgstr ""
4724
4725 #. type: textblock
4726 #: ../fish/guestfish-actions.pod:504
4727 msgid ""
4728 "See also L</blockdev-getss> for the real sector size of the device, and "
4729 "L</blockdev-getsize64> for the more useful I<size in bytes>."
4730 msgstr ""
4731
4732 #. type: =head2
4733 #: ../fish/guestfish-actions.pod:510
4734 msgid "blockdev-rereadpt"
4735 msgstr ""
4736
4737 #. type: verbatim
4738 #: ../fish/guestfish-actions.pod:512
4739 #, no-wrap
4740 msgid ""
4741 " blockdev-rereadpt device\n"
4742 "\n"
4743 msgstr ""
4744
4745 #. type: textblock
4746 #: ../fish/guestfish-actions.pod:514 ../src/guestfs-actions.pod:771
4747 msgid "Reread the partition table on C<device>."
4748 msgstr ""
4749
4750 #. type: =head2
4751 #: ../fish/guestfish-actions.pod:518
4752 msgid "blockdev-setbsz"
4753 msgstr ""
4754
4755 #. type: verbatim
4756 #: ../fish/guestfish-actions.pod:520
4757 #, no-wrap
4758 msgid ""
4759 " blockdev-setbsz device blocksize\n"
4760 "\n"
4761 msgstr ""
4762
4763 #. type: textblock
4764 #: ../fish/guestfish-actions.pod:522 ../src/guestfs-actions.pod:786
4765 msgid "This sets the block size of a device."
4766 msgstr ""
4767
4768 #. type: =head2
4769 #: ../fish/guestfish-actions.pod:529
4770 msgid "blockdev-setro"
4771 msgstr ""
4772
4773 #. type: verbatim
4774 #: ../fish/guestfish-actions.pod:531
4775 #, no-wrap
4776 msgid ""
4777 " blockdev-setro device\n"
4778 "\n"
4779 msgstr ""
4780
4781 #. type: textblock
4782 #: ../fish/guestfish-actions.pod:533 ../src/guestfs-actions.pod:803
4783 msgid "Sets the block device named C<device> to read-only."
4784 msgstr ""
4785
4786 #. type: =head2
4787 #: ../fish/guestfish-actions.pod:537
4788 msgid "blockdev-setrw"
4789 msgstr ""
4790
4791 #. type: verbatim
4792 #: ../fish/guestfish-actions.pod:539
4793 #, no-wrap
4794 msgid ""
4795 " blockdev-setrw device\n"
4796 "\n"
4797 msgstr ""
4798
4799 #. type: textblock
4800 #: ../fish/guestfish-actions.pod:541 ../src/guestfs-actions.pod:817
4801 msgid "Sets the block device named C<device> to read-write."
4802 msgstr ""
4803
4804 #. type: =head2
4805 #: ../fish/guestfish-actions.pod:545
4806 msgid "btrfs-filesystem-resize"
4807 msgstr ""
4808
4809 #. type: verbatim
4810 #: ../fish/guestfish-actions.pod:547
4811 #, no-wrap
4812 msgid ""
4813 " btrfs-filesystem-resize mountpoint [size:..]\n"
4814 "\n"
4815 msgstr ""
4816
4817 #. type: textblock
4818 #: ../fish/guestfish-actions.pod:549 ../src/guestfs-actions.pod:839
4819 msgid "This command resizes a btrfs filesystem."
4820 msgstr ""
4821
4822 #. type: textblock
4823 #: ../fish/guestfish-actions.pod:551 ../src/guestfs-actions.pod:841
4824 msgid ""
4825 "Note that unlike other resize calls, the filesystem has to be mounted and "
4826 "the parameter is the mountpoint not the device (this is a requirement of "
4827 "btrfs itself)."
4828 msgstr ""
4829
4830 #. type: textblock
4831 #: ../fish/guestfish-actions.pod:555 ../fish/guestfish-actions.pod:3417 ../src/guestfs-actions.pod:845 ../src/guestfs-actions.pod:5189
4832 msgid "The optional parameters are:"
4833 msgstr ""
4834
4835 #. type: =item
4836 #: ../fish/guestfish-actions.pod:559 ../fish/guestfish-actions.pod:3421 ../src/guestfs-actions.pod:849 ../src/guestfs-actions.pod:5193
4837 msgid "C<size>"
4838 msgstr ""
4839
4840 #. type: textblock
4841 #: ../fish/guestfish-actions.pod:561 ../src/guestfs-actions.pod:851
4842 msgid ""
4843 "The new size (in bytes) of the filesystem.  If omitted, the filesystem is "
4844 "resized to the maximum size."
4845 msgstr ""
4846
4847 #. type: textblock
4848 #: ../fish/guestfish-actions.pod:566 ../src/guestfs-actions.pod:856
4849 msgid "See also L<btrfs(8)>."
4850 msgstr ""
4851
4852 #. type: =head2
4853 #: ../fish/guestfish-actions.pod:570
4854 msgid "case-sensitive-path"
4855 msgstr ""
4856
4857 #. type: verbatim
4858 #: ../fish/guestfish-actions.pod:572
4859 #, no-wrap
4860 msgid ""
4861 " case-sensitive-path path\n"
4862 "\n"
4863 msgstr ""
4864
4865 #. type: textblock
4866 #: ../fish/guestfish-actions.pod:574 ../src/guestfs-actions.pod:890
4867 msgid ""
4868 "This can be used to resolve case insensitive paths on a filesystem which is "
4869 "case sensitive.  The use case is to resolve paths which you have read from "
4870 "Windows configuration files or the Windows Registry, to the true path."
4871 msgstr ""
4872
4873 #. type: textblock
4874 #: ../fish/guestfish-actions.pod:579 ../src/guestfs-actions.pod:895
4875 msgid ""
4876 "The command handles a peculiarity of the Linux ntfs-3g filesystem driver "
4877 "(and probably others), which is that although the underlying filesystem is "
4878 "case-insensitive, the driver exports the filesystem to Linux as "
4879 "case-sensitive."
4880 msgstr ""
4881
4882 #. type: textblock
4883 #: ../fish/guestfish-actions.pod:584 ../src/guestfs-actions.pod:900
4884 msgid ""
4885 "One consequence of this is that special directories such as C<c:\\windows> "
4886 "may appear as C</WINDOWS> or C</windows> (or other things) depending on the "
4887 "precise details of how they were created.  In Windows itself this would not "
4888 "be a problem."
4889 msgstr ""
4890
4891 #. type: textblock
4892 #: ../fish/guestfish-actions.pod:590 ../src/guestfs-actions.pod:906
4893 msgid ""
4894 "Bug or feature? You decide: "
4895 "L<http://www.tuxera.com/community/ntfs-3g-faq/#posixfilenames1>"
4896 msgstr ""
4897
4898 #. type: textblock
4899 #: ../fish/guestfish-actions.pod:593 ../src/guestfs-actions.pod:909
4900 msgid ""
4901 "This function resolves the true case of each element in the path and returns "
4902 "the case-sensitive path."
4903 msgstr ""
4904
4905 #. type: textblock
4906 #: ../fish/guestfish-actions.pod:596
4907 msgid ""
4908 "Thus L</case-sensitive-path> (\"/Windows/System32\")  might return "
4909 "C<\"/WINDOWS/system32\"> (the exact return value would depend on details of "
4910 "how the directories were originally created under Windows)."
4911 msgstr ""
4912
4913 #. type: textblock
4914 #: ../fish/guestfish-actions.pod:601 ../src/guestfs-actions.pod:917
4915 msgid "I<Note>: This function does not handle drive names, backslashes etc."
4916 msgstr ""
4917
4918 #. type: textblock
4919 #: ../fish/guestfish-actions.pod:604
4920 msgid "See also L</realpath>."
4921 msgstr ""
4922
4923 #. type: =head2
4924 #: ../fish/guestfish-actions.pod:606
4925 msgid "cat"
4926 msgstr ""
4927
4928 #. type: verbatim
4929 #: ../fish/guestfish-actions.pod:608
4930 #, no-wrap
4931 msgid ""
4932 " cat path\n"
4933 "\n"
4934 msgstr ""
4935
4936 #. type: textblock
4937 #: ../fish/guestfish-actions.pod:610 ../fish/guestfish-actions.pod:3837 ../src/guestfs-actions.pod:933 ../src/guestfs-actions.pod:5832
4938 msgid "Return the contents of the file named C<path>."
4939 msgstr ""
4940
4941 #. type: textblock
4942 #: ../fish/guestfish-actions.pod:612
4943 msgid ""
4944 "Note that this function cannot correctly handle binary files (specifically, "
4945 "files containing C<\\0> character which is treated as end of string).  For "
4946 "those you need to use the L</read-file> or L</download> functions which have "
4947 "a more complex interface."
4948 msgstr ""
4949
4950 #. type: textblock
4951 #: ../fish/guestfish-actions.pod:617 ../fish/guestfish-actions.pod:752 ../fish/guestfish-actions.pod:764 ../fish/guestfish-actions.pod:940 ../fish/guestfish-actions.pod:950 ../fish/guestfish-actions.pod:1017 ../fish/guestfish-actions.pod:1027 ../fish/guestfish-actions.pod:1219 ../fish/guestfish-actions.pod:1526 ../fish/guestfish-actions.pod:1536 ../fish/guestfish-actions.pod:1564 ../fish/guestfish-actions.pod:1579 ../fish/guestfish-actions.pod:1589 ../fish/guestfish-actions.pod:1608 ../fish/guestfish-actions.pod:3707 ../fish/guestfish-actions.pod:3722 ../fish/guestfish-actions.pod:3798 ../fish/guestfish-actions.pod:3815 ../fish/guestfish-actions.pod:3830 ../fish/guestfish-actions.pod:4499 ../fish/guestfish-actions.pod:4545 ../fish/guestfish-actions.pod:4630 ../fish/guestfish-actions.pod:4645 ../fish/guestfish-actions.pod:5051 ../fish/guestfish-actions.pod:5063 ../fish/guestfish-actions.pod:5081 ../fish/guestfish-actions.pod:5098 ../fish/guestfish-actions.pod:5108 ../fish/guestfish-actions.pod:5157 ../fish/guestfish-actions.pod:5167 ../fish/guestfish-actions.pod:5196 ../fish/guestfish-actions.pod:5206 ../src/guestfs-actions.pod:943 ../src/guestfs-actions.pod:1122 ../src/guestfs-actions.pod:1142 ../src/guestfs-actions.pod:1438 ../src/guestfs-actions.pod:1457 ../src/guestfs-actions.pod:1560 ../src/guestfs-actions.pod:1579 ../src/guestfs-actions.pod:1825 ../src/guestfs-actions.pod:2296 ../src/guestfs-actions.pod:2315 ../src/guestfs-actions.pod:2358 ../src/guestfs-actions.pod:2382 ../src/guestfs-actions.pod:2399 ../src/guestfs-actions.pod:2428 ../src/guestfs-actions.pod:5614 ../src/guestfs-actions.pod:5640 ../src/guestfs-actions.pod:5771 ../src/guestfs-actions.pod:5797 ../src/guestfs-actions.pod:5821 ../src/guestfs-actions.pod:6772 ../src/guestfs-actions.pod:6827 ../src/guestfs-actions.pod:6973 ../src/guestfs-actions.pod:6997 ../src/guestfs-actions.pod:7662 ../src/guestfs-actions.pod:7682 ../src/guestfs-actions.pod:7708 ../src/guestfs-actions.pod:7734 ../src/guestfs-actions.pod:7753 ../src/guestfs-actions.pod:7839 ../src/guestfs-actions.pod:7858 ../src/guestfs-actions.pod:7904 ../src/guestfs-actions.pod:7923
4952 msgid ""
4953 "Because of the message protocol, there is a transfer limit of somewhere "
4954 "between 2MB and 4MB.  See L<guestfs(3)/PROTOCOL LIMITS>."
4955 msgstr ""
4956
4957 #. type: =head2
4958 #: ../fish/guestfish-actions.pod:620
4959 msgid "checksum"
4960 msgstr ""
4961
4962 #. type: verbatim
4963 #: ../fish/guestfish-actions.pod:622
4964 #, no-wrap
4965 msgid ""
4966 " checksum csumtype path\n"
4967 "\n"
4968 msgstr ""
4969
4970 #. type: textblock
4971 #: ../fish/guestfish-actions.pod:624 ../src/guestfs-actions.pod:955
4972 msgid "This call computes the MD5, SHAx or CRC checksum of the file named C<path>."
4973 msgstr ""
4974
4975 #. type: textblock
4976 #: ../fish/guestfish-actions.pod:627 ../src/guestfs-actions.pod:958
4977 msgid ""
4978 "The type of checksum to compute is given by the C<csumtype> parameter which "
4979 "must have one of the following values:"
4980 msgstr ""
4981
4982 #. type: =item
4983 #: ../fish/guestfish-actions.pod:632 ../src/guestfs-actions.pod:963
4984 msgid "C<crc>"
4985 msgstr ""
4986
4987 #. type: textblock
4988 #: ../fish/guestfish-actions.pod:634 ../src/guestfs-actions.pod:965
4989 msgid ""
4990 "Compute the cyclic redundancy check (CRC) specified by POSIX for the "
4991 "C<cksum> command."
4992 msgstr ""
4993
4994 #. type: =item
4995 #: ../fish/guestfish-actions.pod:637 ../src/guestfs-actions.pod:968
4996 msgid "C<md5>"
4997 msgstr ""
4998
4999 #. type: textblock
5000 #: ../fish/guestfish-actions.pod:639 ../src/guestfs-actions.pod:970
5001 msgid "Compute the MD5 hash (using the C<md5sum> program)."
5002 msgstr ""
5003
5004 #. type: =item
5005 #: ../fish/guestfish-actions.pod:641 ../src/guestfs-actions.pod:972
5006 msgid "C<sha1>"
5007 msgstr ""
5008
5009 #. type: textblock
5010 #: ../fish/guestfish-actions.pod:643 ../src/guestfs-actions.pod:974
5011 msgid "Compute the SHA1 hash (using the C<sha1sum> program)."
5012 msgstr ""
5013
5014 #. type: =item
5015 #: ../fish/guestfish-actions.pod:645 ../src/guestfs-actions.pod:976
5016 msgid "C<sha224>"
5017 msgstr ""
5018
5019 #. type: textblock
5020 #: ../fish/guestfish-actions.pod:647 ../src/guestfs-actions.pod:978
5021 msgid "Compute the SHA224 hash (using the C<sha224sum> program)."
5022 msgstr ""
5023
5024 #. type: =item
5025 #: ../fish/guestfish-actions.pod:649 ../src/guestfs-actions.pod:980
5026 msgid "C<sha256>"
5027 msgstr ""
5028
5029 #. type: textblock
5030 #: ../fish/guestfish-actions.pod:651 ../src/guestfs-actions.pod:982
5031 msgid "Compute the SHA256 hash (using the C<sha256sum> program)."
5032 msgstr ""
5033
5034 #. type: =item
5035 #: ../fish/guestfish-actions.pod:653 ../src/guestfs-actions.pod:984
5036 msgid "C<sha384>"
5037 msgstr ""
5038
5039 #. type: textblock
5040 #: ../fish/guestfish-actions.pod:655 ../src/guestfs-actions.pod:986
5041 msgid "Compute the SHA384 hash (using the C<sha384sum> program)."
5042 msgstr ""
5043
5044 #. type: =item
5045 #: ../fish/guestfish-actions.pod:657 ../src/guestfs-actions.pod:988
5046 msgid "C<sha512>"
5047 msgstr ""
5048
5049 #. type: textblock
5050 #: ../fish/guestfish-actions.pod:659 ../src/guestfs-actions.pod:990
5051 msgid "Compute the SHA512 hash (using the C<sha512sum> program)."
5052 msgstr ""
5053
5054 #. type: textblock
5055 #: ../fish/guestfish-actions.pod:663 ../src/guestfs-actions.pod:994
5056 msgid "The checksum is returned as a printable string."
5057 msgstr ""
5058
5059 #. type: textblock
5060 #: ../fish/guestfish-actions.pod:665
5061 msgid "To get the checksum for a device, use L</checksum-device>."
5062 msgstr ""
5063
5064 #. type: textblock
5065 #: ../fish/guestfish-actions.pod:667
5066 msgid "To get the checksums for many files, use L</checksums-out>."
5067 msgstr ""
5068
5069 #. type: =head2
5070 #: ../fish/guestfish-actions.pod:669
5071 msgid "checksum-device"
5072 msgstr ""
5073
5074 #. type: verbatim
5075 #: ../fish/guestfish-actions.pod:671
5076 #, no-wrap
5077 msgid ""
5078 " checksum-device csumtype device\n"
5079 "\n"
5080 msgstr ""
5081
5082 #. type: textblock
5083 #: ../fish/guestfish-actions.pod:673
5084 msgid ""
5085 "This call computes the MD5, SHAx or CRC checksum of the contents of the "
5086 "device named C<device>.  For the types of checksums supported see the "
5087 "L</checksum> command."
5088 msgstr ""
5089
5090 #. type: =head2
5091 #: ../fish/guestfish-actions.pod:677
5092 msgid "checksums-out"
5093 msgstr ""
5094
5095 #. type: verbatim
5096 #: ../fish/guestfish-actions.pod:679
5097 #, no-wrap
5098 msgid ""
5099 " checksums-out csumtype directory (sumsfile|-)\n"
5100 "\n"
5101 msgstr ""
5102
5103 #. type: textblock
5104 #: ../fish/guestfish-actions.pod:681 ../src/guestfs-actions.pod:1029
5105 msgid ""
5106 "This command computes the checksums of all regular files in C<directory> and "
5107 "then emits a list of those checksums to the local output file C<sumsfile>."
5108 msgstr ""
5109
5110 #. type: textblock
5111 #: ../fish/guestfish-actions.pod:685 ../src/guestfs-actions.pod:1033
5112 msgid ""
5113 "This can be used for verifying the integrity of a virtual machine.  However "
5114 "to be properly secure you should pay attention to the output of the checksum "
5115 "command (it uses the ones from GNU coreutils).  In particular when the "
5116 "filename is not printable, coreutils uses a special backslash syntax.  For "
5117 "more information, see the GNU coreutils info file."
5118 msgstr ""
5119
5120 #. type: =head2
5121 #: ../fish/guestfish-actions.pod:695
5122 msgid "chmod"
5123 msgstr ""
5124
5125 #. type: verbatim
5126 #: ../fish/guestfish-actions.pod:697
5127 #, no-wrap
5128 msgid ""
5129 " chmod mode path\n"
5130 "\n"
5131 msgstr ""
5132
5133 #. type: textblock
5134 #: ../fish/guestfish-actions.pod:699 ../src/guestfs-actions.pod:1052
5135 msgid ""
5136 "Change the mode (permissions) of C<path> to C<mode>.  Only numeric modes are "
5137 "supported."
5138 msgstr ""
5139
5140 #. type: textblock
5141 #: ../fish/guestfish-actions.pod:702 ../src/guestfs-actions.pod:1055
5142 msgid ""
5143 "I<Note>: When using this command from guestfish, C<mode> by default would be "
5144 "decimal, unless you prefix it with C<0> to get octal, ie. use C<0700> not "
5145 "C<700>."
5146 msgstr ""
5147
5148 #. type: textblock
5149 #: ../fish/guestfish-actions.pod:706 ../fish/guestfish-actions.pod:3060 ../fish/guestfish-actions.pod:3199 ../fish/guestfish-actions.pod:3209 ../fish/guestfish-actions.pod:3219 ../src/guestfs-actions.pod:1059 ../src/guestfs-actions.pod:4586 ../src/guestfs-actions.pod:4795 ../src/guestfs-actions.pod:4814 ../src/guestfs-actions.pod:4833
5150 msgid "The mode actually set is affected by the umask."
5151 msgstr ""
5152
5153 #. type: =head2
5154 #: ../fish/guestfish-actions.pod:708
5155 msgid "chown"
5156 msgstr ""
5157
5158 #. type: verbatim
5159 #: ../fish/guestfish-actions.pod:710
5160 #, no-wrap
5161 msgid ""
5162 " chown owner group path\n"
5163 "\n"
5164 msgstr ""
5165
5166 #. type: textblock
5167 #: ../fish/guestfish-actions.pod:712 ../src/guestfs-actions.pod:1073
5168 msgid "Change the file owner to C<owner> and group to C<group>."
5169 msgstr ""
5170
5171 #. type: textblock
5172 #: ../fish/guestfish-actions.pod:714 ../fish/guestfish-actions.pod:2495 ../src/guestfs-actions.pod:1075 ../src/guestfs-actions.pod:3657
5173 msgid ""
5174 "Only numeric uid and gid are supported.  If you want to use names, you will "
5175 "need to locate and parse the password file yourself (Augeas support makes "
5176 "this relatively easy)."
5177 msgstr ""
5178
5179 #. type: =head2
5180 #: ../fish/guestfish-actions.pod:718
5181 msgid "command"
5182 msgstr ""
5183
5184 #. type: verbatim
5185 #: ../fish/guestfish-actions.pod:720
5186 #, no-wrap
5187 msgid ""
5188 " command 'arguments ...'\n"
5189 "\n"
5190 msgstr ""
5191
5192 #. type: textblock
5193 #: ../fish/guestfish-actions.pod:722 ../src/guestfs-actions.pod:1089
5194 msgid ""
5195 "This call runs a command from the guest filesystem.  The filesystem must be "
5196 "mounted, and must contain a compatible operating system (ie. something "
5197 "Linux, with the same or compatible processor architecture)."
5198 msgstr ""
5199
5200 #. type: textblock
5201 #: ../fish/guestfish-actions.pod:727
5202 msgid ""
5203 "The single parameter is an argv-style list of arguments.  The first element "
5204 "is the name of the program to run.  Subsequent elements are parameters.  The "
5205 "list must be non-empty (ie. must contain a program name).  Note that the "
5206 "command runs directly, and is I<not> invoked via the shell (see L</sh>)."
5207 msgstr ""
5208
5209 #. type: textblock
5210 #: ../fish/guestfish-actions.pod:734 ../src/guestfs-actions.pod:1101
5211 msgid "The return value is anything printed to I<stdout> by the command."
5212 msgstr ""
5213
5214 #. type: textblock
5215 #: ../fish/guestfish-actions.pod:737 ../src/guestfs-actions.pod:1104
5216 msgid ""
5217 "If the command returns a non-zero exit status, then this function returns an "
5218 "error message.  The error message string is the content of I<stderr> from "
5219 "the command."
5220 msgstr ""
5221
5222 #. type: textblock
5223 #: ../fish/guestfish-actions.pod:741 ../src/guestfs-actions.pod:1108
5224 msgid ""
5225 "The C<$PATH> environment variable will contain at least C</usr/bin> and "
5226 "C</bin>.  If you require a program from another location, you should provide "
5227 "the full path in the first parameter."
5228 msgstr ""
5229
5230 #. type: textblock
5231 #: ../fish/guestfish-actions.pod:746 ../src/guestfs-actions.pod:1113
5232 msgid ""
5233 "Shared libraries and data files required by the program must be available on "
5234 "filesystems which are mounted in the correct places.  It is the caller's "
5235 "responsibility to ensure all filesystems that are needed are mounted at the "
5236 "right locations."
5237 msgstr ""
5238
5239 #. type: =head2
5240 #: ../fish/guestfish-actions.pod:755
5241 msgid "command-lines"
5242 msgstr ""
5243
5244 #. type: verbatim
5245 #: ../fish/guestfish-actions.pod:757
5246 #, no-wrap
5247 msgid ""
5248 " command-lines 'arguments ...'\n"
5249 "\n"
5250 msgstr ""
5251
5252 #. type: textblock
5253 #: ../fish/guestfish-actions.pod:759
5254 msgid "This is the same as L</command>, but splits the result into a list of lines."
5255 msgstr ""
5256
5257 #. type: textblock
5258 #: ../fish/guestfish-actions.pod:762
5259 msgid "See also: L</sh-lines>"
5260 msgstr ""
5261
5262 #. type: =head2
5263 #: ../fish/guestfish-actions.pod:767
5264 msgid "config"
5265 msgstr ""
5266
5267 #. type: verbatim
5268 #: ../fish/guestfish-actions.pod:769
5269 #, no-wrap
5270 msgid ""
5271 " config qemuparam qemuvalue\n"
5272 "\n"
5273 msgstr ""
5274
5275 #. type: textblock
5276 #: ../fish/guestfish-actions.pod:771 ../src/guestfs-actions.pod:1154
5277 msgid ""
5278 "This can be used to add arbitrary qemu command line parameters of the form "
5279 "I<-param value>.  Actually it's not quite arbitrary - we prevent you from "
5280 "setting some parameters which would interfere with parameters that we use."
5281 msgstr ""
5282
5283 #. type: textblock
5284 #: ../fish/guestfish-actions.pod:776 ../src/guestfs-actions.pod:1159
5285 msgid "The first character of C<param> string must be a C<-> (dash)."
5286 msgstr ""
5287
5288 #. type: textblock
5289 #: ../fish/guestfish-actions.pod:778 ../src/guestfs-actions.pod:1161
5290 msgid "C<value> can be NULL."
5291 msgstr ""
5292
5293 #. type: =head2
5294 #: ../fish/guestfish-actions.pod:780
5295 msgid "copy-size"
5296 msgstr ""
5297
5298 #. type: verbatim
5299 #: ../fish/guestfish-actions.pod:782
5300 #, no-wrap
5301 msgid ""
5302 " copy-size src dest size\n"
5303 "\n"
5304 msgstr ""
5305
5306 #. type: textblock
5307 #: ../fish/guestfish-actions.pod:784 ../src/guestfs-actions.pod:1175
5308 msgid ""
5309 "This command copies exactly C<size> bytes from one source device or file "
5310 "C<src> to another destination device or file C<dest>."
5311 msgstr ""
5312
5313 #. type: textblock
5314 #: ../fish/guestfish-actions.pod:787 ../src/guestfs-actions.pod:1178
5315 msgid ""
5316 "Note this will fail if the source is too short or if the destination is not "
5317 "large enough."
5318 msgstr ""
5319
5320 #. type: =head2
5321 #: ../fish/guestfish-actions.pod:790
5322 msgid "cp"
5323 msgstr ""
5324
5325 #. type: verbatim
5326 #: ../fish/guestfish-actions.pod:792
5327 #, no-wrap
5328 msgid ""
5329 " cp src dest\n"
5330 "\n"
5331 msgstr ""
5332
5333 #. type: textblock
5334 #: ../fish/guestfish-actions.pod:794 ../src/guestfs-actions.pod:1197
5335 msgid ""
5336 "This copies a file from C<src> to C<dest> where C<dest> is either a "
5337 "destination filename or destination directory."
5338 msgstr ""
5339
5340 #. type: =head2
5341 #: ../fish/guestfish-actions.pod:797
5342 msgid "cp-a"
5343 msgstr ""
5344
5345 #. type: verbatim
5346 #: ../fish/guestfish-actions.pod:799
5347 #, no-wrap
5348 msgid ""
5349 " cp-a src dest\n"
5350 "\n"
5351 msgstr ""
5352
5353 #. type: textblock
5354 #: ../fish/guestfish-actions.pod:801 ../src/guestfs-actions.pod:1211
5355 msgid ""
5356 "This copies a file or directory from C<src> to C<dest> recursively using the "
5357 "C<cp -a> command."
5358 msgstr ""
5359
5360 #. type: =head2
5361 #: ../fish/guestfish-actions.pod:804
5362 msgid "dd"
5363 msgstr ""
5364
5365 #. type: verbatim
5366 #: ../fish/guestfish-actions.pod:806
5367 #, no-wrap
5368 msgid ""
5369 " dd src dest\n"
5370 "\n"
5371 msgstr ""
5372
5373 #. type: textblock
5374 #: ../fish/guestfish-actions.pod:808 ../src/guestfs-actions.pod:1225
5375 msgid ""
5376 "This command copies from one source device or file C<src> to another "
5377 "destination device or file C<dest>.  Normally you would use this to copy to "
5378 "or from a device or partition, for example to duplicate a filesystem."
5379 msgstr ""
5380
5381 #. type: textblock
5382 #: ../fish/guestfish-actions.pod:813
5383 msgid ""
5384 "If the destination is a device, it must be as large or larger than the "
5385 "source file or device, otherwise the copy will fail.  This command cannot do "
5386 "partial copies (see L</copy-size>)."
5387 msgstr ""
5388
5389 #. type: =head2
5390 #: ../fish/guestfish-actions.pod:817
5391 msgid "df"
5392 msgstr ""
5393
5394 #. type: verbatim
5395 #: ../fish/guestfish-actions.pod:819
5396 #, no-wrap
5397 msgid ""
5398 " df\n"
5399 "\n"
5400 msgstr ""
5401
5402 #. type: textblock
5403 #: ../fish/guestfish-actions.pod:821 ../src/guestfs-actions.pod:1243
5404 msgid "This command runs the C<df> command to report disk space used."
5405 msgstr ""
5406
5407 #. type: textblock
5408 #: ../fish/guestfish-actions.pod:823 ../fish/guestfish-actions.pod:834
5409 msgid ""
5410 "This command is mostly useful for interactive sessions.  It is I<not> "
5411 "intended that you try to parse the output string.  Use L</statvfs> from "
5412 "programs."
5413 msgstr ""
5414
5415 #. type: =head2
5416 #: ../fish/guestfish-actions.pod:827
5417 msgid "df-h"
5418 msgstr ""
5419
5420 #. type: verbatim
5421 #: ../fish/guestfish-actions.pod:829
5422 #, no-wrap
5423 msgid ""
5424 " df-h\n"
5425 "\n"
5426 msgstr ""
5427
5428 #. type: textblock
5429 #: ../fish/guestfish-actions.pod:831 ../src/guestfs-actions.pod:1259
5430 msgid ""
5431 "This command runs the C<df -h> command to report disk space used in "
5432 "human-readable format."
5433 msgstr ""
5434
5435 #. type: =head2
5436 #: ../fish/guestfish-actions.pod:838
5437 msgid "dmesg"
5438 msgstr ""
5439
5440 #. type: verbatim
5441 #: ../fish/guestfish-actions.pod:840
5442 #, no-wrap
5443 msgid ""
5444 " dmesg\n"
5445 "\n"
5446 msgstr ""
5447
5448 #. type: textblock
5449 #: ../fish/guestfish-actions.pod:842 ../src/guestfs-actions.pod:1276
5450 msgid ""
5451 "This returns the kernel messages (C<dmesg> output) from the guest kernel.  "
5452 "This is sometimes useful for extended debugging of problems."
5453 msgstr ""
5454
5455 #. type: textblock
5456 #: ../fish/guestfish-actions.pod:846
5457 msgid ""
5458 "Another way to get the same information is to enable verbose messages with "
5459 "L</set-verbose> or by setting the environment variable C<LIBGUESTFS_DEBUG=1> "
5460 "before running the program."
5461 msgstr ""
5462
5463 #. type: =head2
5464 #: ../fish/guestfish-actions.pod:851
5465 msgid "download"
5466 msgstr ""
5467
5468 #. type: verbatim
5469 #: ../fish/guestfish-actions.pod:853
5470 #, no-wrap
5471 msgid ""
5472 " download remotefilename (filename|-)\n"
5473 "\n"
5474 msgstr ""
5475
5476 #. type: textblock
5477 #: ../fish/guestfish-actions.pod:855 ../fish/guestfish-actions.pod:868 ../src/guestfs-actions.pod:1297 ../src/guestfs-actions.pod:1322
5478 msgid ""
5479 "Download file C<remotefilename> and save it as C<filename> on the local "
5480 "machine."
5481 msgstr ""
5482
5483 #. type: textblock
5484 #: ../fish/guestfish-actions.pod:858 ../fish/guestfish-actions.pod:4803 ../src/guestfs-actions.pod:1300 ../src/guestfs-actions.pod:7232
5485 msgid "C<filename> can also be a named pipe."
5486 msgstr ""
5487
5488 #. type: textblock
5489 #: ../fish/guestfish-actions.pod:860
5490 msgid "See also L</upload>, L</cat>."
5491 msgstr ""
5492
5493 #. type: =head2
5494 #: ../fish/guestfish-actions.pod:864
5495 msgid "download-offset"
5496 msgstr ""
5497
5498 #. type: verbatim
5499 #: ../fish/guestfish-actions.pod:866
5500 #, no-wrap
5501 msgid ""
5502 " download-offset remotefilename (filename|-) offset size\n"
5503 "\n"
5504 msgstr ""
5505
5506 #. type: textblock
5507 #: ../fish/guestfish-actions.pod:871 ../src/guestfs-actions.pod:1325
5508 msgid ""
5509 "C<remotefilename> is read for C<size> bytes starting at C<offset> (this "
5510 "region must be within the file or device)."
5511 msgstr ""
5512
5513 #. type: textblock
5514 #: ../fish/guestfish-actions.pod:874
5515 msgid ""
5516 "Note that there is no limit on the amount of data that can be downloaded "
5517 "with this call, unlike with L</pread>, and this call always reads the full "
5518 "amount unless an error occurs."
5519 msgstr ""
5520
5521 #. type: textblock
5522 #: ../fish/guestfish-actions.pod:879
5523 msgid "See also L</download>, L</pread>."
5524 msgstr ""
5525
5526 #. type: =head2
5527 #: ../fish/guestfish-actions.pod:883
5528 msgid "drop-caches"
5529 msgstr ""
5530
5531 #. type: verbatim
5532 #: ../fish/guestfish-actions.pod:885
5533 #, no-wrap
5534 msgid ""
5535 " drop-caches whattodrop\n"
5536 "\n"
5537 msgstr ""
5538
5539 #. type: textblock
5540 #: ../fish/guestfish-actions.pod:887 ../src/guestfs-actions.pod:1350
5541 msgid ""
5542 "This instructs the guest kernel to drop its page cache, and/or dentries and "
5543 "inode caches.  The parameter C<whattodrop> tells the kernel what precisely "
5544 "to drop, see L<http://linux-mm.org/Drop_Caches>"
5545 msgstr ""
5546
5547 #. type: textblock
5548 #: ../fish/guestfish-actions.pod:892 ../src/guestfs-actions.pod:1355
5549 msgid "Setting C<whattodrop> to 3 should drop everything."
5550 msgstr ""
5551
5552 #. type: textblock
5553 #: ../fish/guestfish-actions.pod:894 ../src/guestfs-actions.pod:1357
5554 msgid ""
5555 "This automatically calls L<sync(2)> before the operation, so that the "
5556 "maximum guest memory is freed."
5557 msgstr ""
5558
5559 #. type: =head2
5560 #: ../fish/guestfish-actions.pod:897
5561 msgid "du"
5562 msgstr ""
5563
5564 #. type: verbatim
5565 #: ../fish/guestfish-actions.pod:899
5566 #, no-wrap
5567 msgid ""
5568 " du path\n"
5569 "\n"
5570 msgstr ""
5571
5572 #. type: textblock
5573 #: ../fish/guestfish-actions.pod:901 ../src/guestfs-actions.pod:1370
5574 msgid ""
5575 "This command runs the C<du -s> command to estimate file space usage for "
5576 "C<path>."
5577 msgstr ""
5578
5579 #. type: textblock
5580 #: ../fish/guestfish-actions.pod:904 ../src/guestfs-actions.pod:1373
5581 msgid ""
5582 "C<path> can be a file or a directory.  If C<path> is a directory then the "
5583 "estimate includes the contents of the directory and all subdirectories "
5584 "(recursively)."
5585 msgstr ""
5586
5587 #. type: textblock
5588 #: ../fish/guestfish-actions.pod:908 ../src/guestfs-actions.pod:1377
5589 msgid "The result is the estimated size in I<kilobytes> (ie. units of 1024 bytes)."
5590 msgstr ""
5591
5592 #. type: =head2
5593 #: ../fish/guestfish-actions.pod:911
5594 msgid "e2fsck-f"
5595 msgstr ""
5596
5597 #. type: verbatim
5598 #: ../fish/guestfish-actions.pod:913
5599 #, no-wrap
5600 msgid ""
5601 " e2fsck-f device\n"
5602 "\n"
5603 msgstr ""
5604
5605 #. type: textblock
5606 #: ../fish/guestfish-actions.pod:915 ../src/guestfs-actions.pod:1395
5607 msgid ""
5608 "This runs C<e2fsck -p -f device>, ie. runs the ext2/ext3 filesystem checker "
5609 "on C<device>, noninteractively (I<-p>), even if the filesystem appears to be "
5610 "clean (I<-f>)."
5611 msgstr ""
5612
5613 #. type: textblock
5614 #: ../fish/guestfish-actions.pod:919
5615 msgid ""
5616 "This command is only needed because of L</resize2fs> (q.v.).  Normally you "
5617 "should use L</fsck>."
5618 msgstr ""
5619
5620 #. type: =head2
5621 #: ../fish/guestfish-actions.pod:922
5622 msgid "echo-daemon"
5623 msgstr ""
5624
5625 #. type: verbatim
5626 #: ../fish/guestfish-actions.pod:924
5627 #, no-wrap
5628 msgid ""
5629 " echo-daemon 'words ...'\n"
5630 "\n"
5631 msgstr ""
5632
5633 #. type: textblock
5634 #: ../fish/guestfish-actions.pod:926 ../src/guestfs-actions.pod:1412
5635 msgid ""
5636 "This command concatenates the list of C<words> passed with single spaces "
5637 "between them and returns the resulting string."
5638 msgstr ""
5639
5640 #. type: textblock
5641 #: ../fish/guestfish-actions.pod:929 ../src/guestfs-actions.pod:1415
5642 msgid "You can use this command to test the connection through to the daemon."
5643 msgstr ""
5644
5645 #. type: textblock
5646 #: ../fish/guestfish-actions.pod:931
5647 msgid "See also L</ping-daemon>."
5648 msgstr ""
5649
5650 #. type: =head2
5651 #: ../fish/guestfish-actions.pod:933
5652 msgid "egrep"
5653 msgstr ""
5654
5655 #. type: verbatim
5656 #: ../fish/guestfish-actions.pod:935
5657 #, no-wrap
5658 msgid ""
5659 " egrep regex path\n"
5660 "\n"
5661 msgstr ""
5662
5663 #. type: textblock
5664 #: ../fish/guestfish-actions.pod:937 ../src/guestfs-actions.pod:1431
5665 msgid "This calls the external C<egrep> program and returns the matching lines."
5666 msgstr ""
5667
5668 #. type: =head2
5669 #: ../fish/guestfish-actions.pod:943
5670 msgid "egrepi"
5671 msgstr ""
5672
5673 #. type: verbatim
5674 #: ../fish/guestfish-actions.pod:945
5675 #, no-wrap
5676 msgid ""
5677 " egrepi regex path\n"
5678 "\n"
5679 msgstr ""
5680
5681 #. type: textblock
5682 #: ../fish/guestfish-actions.pod:947 ../src/guestfs-actions.pod:1450
5683 msgid "This calls the external C<egrep -i> program and returns the matching lines."
5684 msgstr ""
5685
5686 #. type: =head2
5687 #: ../fish/guestfish-actions.pod:953
5688 msgid "equal"
5689 msgstr ""
5690
5691 #. type: verbatim
5692 #: ../fish/guestfish-actions.pod:955
5693 #, no-wrap
5694 msgid ""
5695 " equal file1 file2\n"
5696 "\n"
5697 msgstr ""
5698
5699 #. type: textblock
5700 #: ../fish/guestfish-actions.pod:957 ../src/guestfs-actions.pod:1469
5701 msgid ""
5702 "This compares the two files C<file1> and C<file2> and returns true if their "
5703 "content is exactly equal, or false otherwise."
5704 msgstr ""
5705
5706 #. type: textblock
5707 #: ../fish/guestfish-actions.pod:960 ../src/guestfs-actions.pod:1472
5708 msgid "The external L<cmp(1)> program is used for the comparison."
5709 msgstr ""
5710
5711 #. type: =head2
5712 #: ../fish/guestfish-actions.pod:962
5713 msgid "exists"
5714 msgstr ""
5715
5716 #. type: verbatim
5717 #: ../fish/guestfish-actions.pod:964
5718 #, no-wrap
5719 msgid ""
5720 " exists path\n"
5721 "\n"
5722 msgstr ""
5723
5724 #. type: textblock
5725 #: ../fish/guestfish-actions.pod:966 ../src/guestfs-actions.pod:1484
5726 msgid ""
5727 "This returns C<true> if and only if there is a file, directory (or anything) "
5728 "with the given C<path> name."
5729 msgstr ""
5730
5731 #. type: textblock
5732 #: ../fish/guestfish-actions.pod:969
5733 msgid "See also L</is-file>, L</is-dir>, L</stat>."
5734 msgstr ""
5735
5736 #. type: =head2
5737 #: ../fish/guestfish-actions.pod:971
5738 msgid "fallocate"
5739 msgstr ""
5740
5741 #. type: verbatim
5742 #: ../fish/guestfish-actions.pod:973
5743 #, no-wrap
5744 msgid ""
5745 " fallocate path len\n"
5746 "\n"
5747 msgstr ""
5748
5749 #. type: textblock
5750 #: ../fish/guestfish-actions.pod:975 ../fish/guestfish-actions.pod:994 ../src/guestfs-actions.pod:1500 ../src/guestfs-actions.pod:1526
5751 msgid ""
5752 "This command preallocates a file (containing zero bytes) named C<path> of "
5753 "size C<len> bytes.  If the file exists already, it is overwritten."
5754 msgstr ""
5755
5756 #. type: textblock
5757 #: ../fish/guestfish-actions.pod:979 ../src/guestfs-actions.pod:1504
5758 msgid ""
5759 "Do not confuse this with the guestfish-specific C<alloc> command which "
5760 "allocates a file in the host and attaches it as a device."
5761 msgstr ""
5762
5763 #. type: textblock
5764 #: ../fish/guestfish-actions.pod:983 ../src/guestfs-actions.pod:1510
5765 msgid ""
5766 "This function is deprecated.  In new code, use the C<fallocate64> call "
5767 "instead."
5768 msgstr ""
5769
5770 #. type: =head2
5771 #: ../fish/guestfish-actions.pod:990
5772 msgid "fallocate64"
5773 msgstr ""
5774
5775 #. type: verbatim
5776 #: ../fish/guestfish-actions.pod:992
5777 #, no-wrap
5778 msgid ""
5779 " fallocate64 path len\n"
5780 "\n"
5781 msgstr ""
5782
5783 #. type: textblock
5784 #: ../fish/guestfish-actions.pod:998
5785 msgid ""
5786 "Note that this call allocates disk blocks for the file.  To create a sparse "
5787 "file use L</truncate-size> instead."
5788 msgstr ""
5789
5790 #. type: textblock
5791 #: ../fish/guestfish-actions.pod:1001
5792 msgid ""
5793 "The deprecated call L</fallocate> does the same, but owing to an oversight "
5794 "it only allowed 30 bit lengths to be specified, effectively limiting the "
5795 "maximum size of files created through that call to 1GB."
5796 msgstr ""
5797
5798 #. type: textblock
5799 #: ../fish/guestfish-actions.pod:1006 ../src/guestfs-actions.pod:1538
5800 msgid ""
5801 "Do not confuse this with the guestfish-specific C<alloc> and C<sparse> "
5802 "commands which create a file in the host and attach it as a device."
5803 msgstr ""
5804
5805 #. type: =head2
5806 #: ../fish/guestfish-actions.pod:1010
5807 msgid "fgrep"
5808 msgstr ""
5809
5810 #. type: verbatim
5811 #: ../fish/guestfish-actions.pod:1012
5812 #, no-wrap
5813 msgid ""
5814 " fgrep pattern path\n"
5815 "\n"
5816 msgstr ""
5817
5818 #. type: textblock
5819 #: ../fish/guestfish-actions.pod:1014 ../src/guestfs-actions.pod:1553
5820 msgid "This calls the external C<fgrep> program and returns the matching lines."
5821 msgstr ""
5822
5823 #. type: =head2
5824 #: ../fish/guestfish-actions.pod:1020
5825 msgid "fgrepi"
5826 msgstr ""
5827
5828 #. type: verbatim
5829 #: ../fish/guestfish-actions.pod:1022
5830 #, no-wrap
5831 msgid ""
5832 " fgrepi pattern path\n"
5833 "\n"
5834 msgstr ""
5835
5836 #. type: textblock
5837 #: ../fish/guestfish-actions.pod:1024 ../src/guestfs-actions.pod:1572
5838 msgid "This calls the external C<fgrep -i> program and returns the matching lines."
5839 msgstr ""
5840
5841 #. type: =head2
5842 #: ../fish/guestfish-actions.pod:1030
5843 msgid "file"
5844 msgstr ""
5845
5846 #. type: verbatim
5847 #: ../fish/guestfish-actions.pod:1032
5848 #, no-wrap
5849 msgid ""
5850 " file path\n"
5851 "\n"
5852 msgstr ""
5853
5854 #. type: textblock
5855 #: ../fish/guestfish-actions.pod:1034 ../src/guestfs-actions.pod:1590
5856 msgid ""
5857 "This call uses the standard L<file(1)> command to determine the type or "
5858 "contents of the file."
5859 msgstr ""
5860
5861 #. type: textblock
5862 #: ../fish/guestfish-actions.pod:1037 ../src/guestfs-actions.pod:1593
5863 msgid ""
5864 "This call will also transparently look inside various types of compressed "
5865 "file."
5866 msgstr ""
5867
5868 #. type: textblock
5869 #: ../fish/guestfish-actions.pod:1040 ../src/guestfs-actions.pod:1596
5870 msgid ""
5871 "The exact command which runs is C<file -zb path>.  Note in particular that "
5872 "the filename is not prepended to the output (the I<-b> option)."
5873 msgstr ""
5874
5875 #. type: textblock
5876 #: ../fish/guestfish-actions.pod:1044 ../src/guestfs-actions.pod:1600
5877 msgid ""
5878 "The output depends on the output of the underlying L<file(1)> command and it "
5879 "can change in future in ways beyond our control.  In other words, the output "
5880 "is not guaranteed by the ABI."
5881 msgstr ""
5882
5883 #. type: textblock
5884 #: ../fish/guestfish-actions.pod:1048
5885 msgid ""
5886 "See also: L<file(1)>, L</vfs-type>, L</lstat>, L</is-file>, L</is-blockdev> "
5887 "(etc), L</is-zero>."
5888 msgstr ""
5889
5890 #. type: =head2
5891 #: ../fish/guestfish-actions.pod:1051
5892 msgid "file-architecture"
5893 msgstr ""
5894
5895 #. type: verbatim
5896 #: ../fish/guestfish-actions.pod:1053
5897 #, no-wrap
5898 msgid ""
5899 " file-architecture filename\n"
5900 "\n"
5901 msgstr ""
5902
5903 #. type: textblock
5904 #: ../fish/guestfish-actions.pod:1055 ../src/guestfs-actions.pod:1618
5905 msgid ""
5906 "This detects the architecture of the binary C<filename>, and returns it if "
5907 "known."
5908 msgstr ""
5909
5910 #. type: textblock
5911 #: ../fish/guestfish-actions.pod:1058 ../src/guestfs-actions.pod:1621
5912 msgid "Currently defined architectures are:"
5913 msgstr ""
5914
5915 #. type: =item
5916 #: ../fish/guestfish-actions.pod:1062 ../src/guestfs-actions.pod:1625
5917 msgid "\"i386\""
5918 msgstr ""
5919
5920 #. type: textblock
5921 #: ../fish/guestfish-actions.pod:1064 ../src/guestfs-actions.pod:1627
5922 msgid ""
5923 "This string is returned for all 32 bit i386, i486, i586, i686 binaries "
5924 "irrespective of the precise processor requirements of the binary."
5925 msgstr ""
5926
5927 #. type: =item
5928 #: ../fish/guestfish-actions.pod:1067 ../src/guestfs-actions.pod:1630
5929 msgid "\"x86_64\""
5930 msgstr ""
5931
5932 #. type: textblock
5933 #: ../fish/guestfish-actions.pod:1069 ../src/guestfs-actions.pod:1632
5934 msgid "64 bit x86-64."
5935 msgstr ""
5936
5937 #. type: =item
5938 #: ../fish/guestfish-actions.pod:1071 ../src/guestfs-actions.pod:1634
5939 msgid "\"sparc\""
5940 msgstr ""
5941
5942 #. type: textblock
5943 #: ../fish/guestfish-actions.pod:1073 ../src/guestfs-actions.pod:1636
5944 msgid "32 bit SPARC."
5945 msgstr ""
5946
5947 #. type: =item
5948 #: ../fish/guestfish-actions.pod:1075 ../src/guestfs-actions.pod:1638
5949 msgid "\"sparc64\""
5950 msgstr ""
5951
5952 #. type: textblock
5953 #: ../fish/guestfish-actions.pod:1077 ../src/guestfs-actions.pod:1640
5954 msgid "64 bit SPARC V9 and above."
5955 msgstr ""
5956
5957 #. type: =item
5958 #: ../fish/guestfish-actions.pod:1079 ../src/guestfs-actions.pod:1642
5959 msgid "\"ia64\""
5960 msgstr ""
5961
5962 #. type: textblock
5963 #: ../fish/guestfish-actions.pod:1081 ../src/guestfs-actions.pod:1644
5964 msgid "Intel Itanium."
5965 msgstr ""
5966
5967 #. type: =item
5968 #: ../fish/guestfish-actions.pod:1083 ../src/guestfs-actions.pod:1646
5969 msgid "\"ppc\""
5970 msgstr ""
5971
5972 #. type: textblock
5973 #: ../fish/guestfish-actions.pod:1085 ../src/guestfs-actions.pod:1648
5974 msgid "32 bit Power PC."
5975 msgstr ""
5976
5977 #. type: =item
5978 #: ../fish/guestfish-actions.pod:1087 ../src/guestfs-actions.pod:1650
5979 msgid "\"ppc64\""
5980 msgstr ""
5981
5982 #. type: textblock
5983 #: ../fish/guestfish-actions.pod:1089 ../src/guestfs-actions.pod:1652
5984 msgid "64 bit Power PC."
5985 msgstr ""
5986
5987 #. type: textblock
5988 #: ../fish/guestfish-actions.pod:1093 ../src/guestfs-actions.pod:1656
5989 msgid "Libguestfs may return other architecture strings in future."
5990 msgstr ""
5991
5992 #. type: textblock
5993 #: ../fish/guestfish-actions.pod:1095 ../src/guestfs-actions.pod:1658
5994 msgid "The function works on at least the following types of files:"
5995 msgstr ""
5996
5997 #. type: textblock
5998 #: ../fish/guestfish-actions.pod:1101 ../src/guestfs-actions.pod:1664
5999 msgid "many types of Un*x and Linux binary"
6000 msgstr ""
6001
6002 #. type: textblock
6003 #: ../fish/guestfish-actions.pod:1105 ../src/guestfs-actions.pod:1668
6004 msgid "many types of Un*x and Linux shared library"
6005 msgstr ""
6006
6007 #. type: textblock
6008 #: ../fish/guestfish-actions.pod:1109 ../src/guestfs-actions.pod:1672
6009 msgid "Windows Win32 and Win64 binaries"
6010 msgstr ""
6011
6012 #. type: textblock
6013 #: ../fish/guestfish-actions.pod:1113 ../src/guestfs-actions.pod:1676
6014 msgid "Windows Win32 and Win64 DLLs"
6015 msgstr ""
6016
6017 #. type: textblock
6018 #: ../fish/guestfish-actions.pod:1115 ../src/guestfs-actions.pod:1678
6019 msgid "Win32 binaries and DLLs return C<i386>."
6020 msgstr ""
6021
6022 #. type: textblock
6023 #: ../fish/guestfish-actions.pod:1117 ../src/guestfs-actions.pod:1680
6024 msgid "Win64 binaries and DLLs return C<x86_64>."
6025 msgstr ""
6026
6027 #. type: textblock
6028 #: ../fish/guestfish-actions.pod:1121 ../src/guestfs-actions.pod:1684
6029 msgid "Linux kernel modules"
6030 msgstr ""
6031
6032 #. type: textblock
6033 #: ../fish/guestfish-actions.pod:1125 ../src/guestfs-actions.pod:1688
6034 msgid "Linux new-style initrd images"
6035 msgstr ""
6036
6037 #. type: textblock
6038 #: ../fish/guestfish-actions.pod:1129 ../src/guestfs-actions.pod:1692
6039 msgid "some non-x86 Linux vmlinuz kernels"
6040 msgstr ""
6041
6042 #. type: textblock
6043 #: ../fish/guestfish-actions.pod:1133 ../src/guestfs-actions.pod:1696
6044 msgid "What it can't do currently:"
6045 msgstr ""
6046
6047 #. type: textblock
6048 #: ../fish/guestfish-actions.pod:1139 ../src/guestfs-actions.pod:1702
6049 msgid "static libraries (libfoo.a)"
6050 msgstr ""
6051
6052 #. type: textblock
6053 #: ../fish/guestfish-actions.pod:1143 ../src/guestfs-actions.pod:1706
6054 msgid "Linux old-style initrd as compressed ext2 filesystem (RHEL 3)"
6055 msgstr ""
6056
6057 #. type: textblock
6058 #: ../fish/guestfish-actions.pod:1147 ../src/guestfs-actions.pod:1710
6059 msgid "x86 Linux vmlinuz kernels"
6060 msgstr ""
6061
6062 #. type: textblock
6063 #: ../fish/guestfish-actions.pod:1149 ../src/guestfs-actions.pod:1712
6064 msgid ""
6065 "x86 vmlinuz images (bzImage format) consist of a mix of 16-, 32- and "
6066 "compressed code, and are horribly hard to unpack.  If you want to find the "
6067 "architecture of a kernel, use the architecture of the associated initrd or "
6068 "kernel module(s) instead."
6069 msgstr ""
6070
6071 #. type: =head2
6072 #: ../fish/guestfish-actions.pod:1156
6073 msgid "filesize"
6074 msgstr ""
6075
6076 #. type: verbatim
6077 #: ../fish/guestfish-actions.pod:1158
6078 #, no-wrap
6079 msgid ""
6080 " filesize file\n"
6081 "\n"
6082 msgstr ""
6083
6084 #. type: textblock
6085 #: ../fish/guestfish-actions.pod:1160 ../src/guestfs-actions.pod:1730
6086 msgid "This command returns the size of C<file> in bytes."
6087 msgstr ""
6088
6089 #. type: textblock
6090 #: ../fish/guestfish-actions.pod:1162
6091 msgid ""
6092 "To get other stats about a file, use L</stat>, L</lstat>, L</is-dir>, "
6093 "L</is-file> etc.  To get the size of block devices, use "
6094 "L</blockdev-getsize64>."
6095 msgstr ""
6096
6097 #. type: =head2
6098 #: ../fish/guestfish-actions.pod:1166
6099 msgid "fill"
6100 msgstr ""
6101
6102 #. type: verbatim
6103 #: ../fish/guestfish-actions.pod:1168
6104 #, no-wrap
6105 msgid ""
6106 " fill c len path\n"
6107 "\n"
6108 msgstr ""
6109
6110 #. type: textblock
6111 #: ../fish/guestfish-actions.pod:1170 ../src/guestfs-actions.pod:1748
6112 msgid ""
6113 "This command creates a new file called C<path>.  The initial content of the "
6114 "file is C<len> octets of C<c>, where C<c> must be a number in the range "
6115 "C<[0..255]>."
6116 msgstr ""
6117
6118 #. type: textblock
6119 #: ../fish/guestfish-actions.pod:1174
6120 msgid ""
6121 "To fill a file with zero bytes (sparsely), it is much more efficient to use "
6122 "L</truncate-size>.  To create a file with a pattern of repeating bytes use "
6123 "L</fill-pattern>."
6124 msgstr ""
6125
6126 #. type: =head2
6127 #: ../fish/guestfish-actions.pod:1179
6128 msgid "fill-pattern"
6129 msgstr ""
6130
6131 #. type: verbatim
6132 #: ../fish/guestfish-actions.pod:1181
6133 #, no-wrap
6134 msgid ""
6135 " fill-pattern pattern len path\n"
6136 "\n"
6137 msgstr ""
6138
6139 #. type: textblock
6140 #: ../fish/guestfish-actions.pod:1183
6141 msgid ""
6142 "This function is like L</fill> except that it creates a new file of length "
6143 "C<len> containing the repeating pattern of bytes in C<pattern>.  The pattern "
6144 "is truncated if necessary to ensure the length of the file is exactly C<len> "
6145 "bytes."
6146 msgstr ""
6147
6148 #. type: =head2
6149 #: ../fish/guestfish-actions.pod:1188
6150 msgid "find"
6151 msgstr ""
6152
6153 #. type: verbatim
6154 #: ../fish/guestfish-actions.pod:1190
6155 #, no-wrap
6156 msgid ""
6157 " find directory\n"
6158 "\n"
6159 msgstr ""
6160
6161 #. type: textblock
6162 #: ../fish/guestfish-actions.pod:1192 ../src/guestfs-actions.pod:1794
6163 msgid ""
6164 "This command lists out all files and directories, recursively, starting at "
6165 "C<directory>.  It is essentially equivalent to running the shell command "
6166 "C<find directory -print> but some post-processing happens on the output, "
6167 "described below."
6168 msgstr ""
6169
6170 #. type: textblock
6171 #: ../fish/guestfish-actions.pod:1197 ../src/guestfs-actions.pod:1799
6172 msgid ""
6173 "This returns a list of strings I<without any prefix>.  Thus if the directory "
6174 "structure was:"
6175 msgstr ""
6176
6177 #. type: verbatim
6178 #: ../fish/guestfish-actions.pod:1200 ../src/guestfs-actions.pod:1802
6179 #, no-wrap
6180 msgid ""
6181 " /tmp/a\n"
6182 " /tmp/b\n"
6183 " /tmp/c/d\n"
6184 "\n"
6185 msgstr ""
6186
6187 #. type: textblock
6188 #: ../fish/guestfish-actions.pod:1204
6189 msgid "then the returned list from L</find> C</tmp> would be 4 elements:"
6190 msgstr ""
6191
6192 #. type: verbatim
6193 #: ../fish/guestfish-actions.pod:1207 ../src/guestfs-actions.pod:1809
6194 #, no-wrap
6195 msgid ""
6196 " a\n"
6197 " b\n"
6198 " c\n"
6199 " c/d\n"
6200 "\n"
6201 msgstr ""
6202
6203 #. type: textblock
6204 #: ../fish/guestfish-actions.pod:1212 ../src/guestfs-actions.pod:1814
6205 msgid "If C<directory> is not a directory, then this command returns an error."
6206 msgstr ""
6207
6208 #. type: textblock
6209 #: ../fish/guestfish-actions.pod:1215 ../src/guestfs-actions.pod:1817
6210 msgid "The returned list is sorted."
6211 msgstr ""
6212
6213 #. type: textblock
6214 #: ../fish/guestfish-actions.pod:1217
6215 msgid "See also L</find0>."
6216 msgstr ""
6217
6218 #. type: =head2
6219 #: ../fish/guestfish-actions.pod:1222
6220 msgid "find0"
6221 msgstr ""
6222
6223 #. type: verbatim
6224 #: ../fish/guestfish-actions.pod:1224
6225 #, no-wrap
6226 msgid ""
6227 " find0 directory (files|-)\n"
6228 "\n"
6229 msgstr ""
6230
6231 #. type: textblock
6232 #: ../fish/guestfish-actions.pod:1226 ../src/guestfs-actions.pod:1837
6233 msgid ""
6234 "This command lists out all files and directories, recursively, starting at "
6235 "C<directory>, placing the resulting list in the external file called "
6236 "C<files>."
6237 msgstr ""
6238
6239 #. type: textblock
6240 #: ../fish/guestfish-actions.pod:1230
6241 msgid "This command works the same way as L</find> with the following exceptions:"
6242 msgstr ""
6243
6244 #. type: textblock
6245 #: ../fish/guestfish-actions.pod:1237 ../src/guestfs-actions.pod:1848
6246 msgid "The resulting list is written to an external file."
6247 msgstr ""
6248
6249 #. type: textblock
6250 #: ../fish/guestfish-actions.pod:1241 ../src/guestfs-actions.pod:1852
6251 msgid ""
6252 "Items (filenames) in the result are separated by C<\\0> characters.  See "
6253 "L<find(1)> option I<-print0>."
6254 msgstr ""
6255
6256 #. type: textblock
6257 #: ../fish/guestfish-actions.pod:1246 ../src/guestfs-actions.pod:1857
6258 msgid "This command is not limited in the number of names that it can return."
6259 msgstr ""
6260
6261 #. type: textblock
6262 #: ../fish/guestfish-actions.pod:1251 ../src/guestfs-actions.pod:1862
6263 msgid "The result list is not sorted."
6264 msgstr ""
6265
6266 #. type: =head2
6267 #: ../fish/guestfish-actions.pod:1257
6268 msgid "findfs-label"
6269 msgstr ""
6270
6271 #. type: verbatim
6272 #: ../fish/guestfish-actions.pod:1259
6273 #, no-wrap
6274 msgid ""
6275 " findfs-label label\n"
6276 "\n"
6277 msgstr ""
6278
6279 #. type: textblock
6280 #: ../fish/guestfish-actions.pod:1261 ../src/guestfs-actions.pod:1876
6281 msgid ""
6282 "This command searches the filesystems and returns the one which has the "
6283 "given label.  An error is returned if no such filesystem can be found."
6284 msgstr ""
6285
6286 #. type: textblock
6287 #: ../fish/guestfish-actions.pod:1265
6288 msgid "To find the label of a filesystem, use L</vfs-label>."
6289 msgstr ""
6290
6291 #. type: =head2
6292 #: ../fish/guestfish-actions.pod:1267
6293 msgid "findfs-uuid"
6294 msgstr ""
6295
6296 #. type: verbatim
6297 #: ../fish/guestfish-actions.pod:1269
6298 #, no-wrap
6299 msgid ""
6300 " findfs-uuid uuid\n"
6301 "\n"
6302 msgstr ""
6303
6304 #. type: textblock
6305 #: ../fish/guestfish-actions.pod:1271 ../src/guestfs-actions.pod:1893
6306 msgid ""
6307 "This command searches the filesystems and returns the one which has the "
6308 "given UUID.  An error is returned if no such filesystem can be found."
6309 msgstr ""
6310
6311 #. type: textblock
6312 #: ../fish/guestfish-actions.pod:1275
6313 msgid "To find the UUID of a filesystem, use L</vfs-uuid>."
6314 msgstr ""
6315
6316 #. type: =head2
6317 #: ../fish/guestfish-actions.pod:1277
6318 msgid "fsck"
6319 msgstr ""
6320
6321 #. type: verbatim
6322 #: ../fish/guestfish-actions.pod:1279
6323 #, no-wrap
6324 msgid ""
6325 " fsck fstype device\n"
6326 "\n"
6327 msgstr ""
6328
6329 #. type: textblock
6330 #: ../fish/guestfish-actions.pod:1281 ../src/guestfs-actions.pod:1911
6331 msgid ""
6332 "This runs the filesystem checker (fsck) on C<device> which should have "
6333 "filesystem type C<fstype>."
6334 msgstr ""
6335
6336 #. type: textblock
6337 #: ../fish/guestfish-actions.pod:1284 ../src/guestfs-actions.pod:1914
6338 msgid ""
6339 "The returned integer is the status.  See L<fsck(8)> for the list of status "
6340 "codes from C<fsck>."
6341 msgstr ""
6342
6343 #. type: textblock
6344 #: ../fish/guestfish-actions.pod:1293 ../src/guestfs-actions.pod:1923
6345 msgid "Multiple status codes can be summed together."
6346 msgstr ""
6347
6348 #. type: textblock
6349 #: ../fish/guestfish-actions.pod:1297 ../src/guestfs-actions.pod:1927
6350 msgid ""
6351 "A non-zero return code can mean \"success\", for example if errors have been "
6352 "corrected on the filesystem."
6353 msgstr ""
6354
6355 #. type: textblock
6356 #: ../fish/guestfish-actions.pod:1302 ../src/guestfs-actions.pod:1932
6357 msgid "Checking or repairing NTFS volumes is not supported (by linux-ntfs)."
6358 msgstr ""
6359
6360 #. type: textblock
6361 #: ../fish/guestfish-actions.pod:1307 ../src/guestfs-actions.pod:1937
6362 msgid "This command is entirely equivalent to running C<fsck -a -t fstype device>."
6363 msgstr ""
6364
6365 #. type: =head2
6366 #: ../fish/guestfish-actions.pod:1309
6367 msgid "get-append"
6368 msgstr ""
6369
6370 #. type: verbatim
6371 #: ../fish/guestfish-actions.pod:1311
6372 #, no-wrap
6373 msgid ""
6374 " get-append\n"
6375 "\n"
6376 msgstr ""
6377
6378 #. type: textblock
6379 #: ../fish/guestfish-actions.pod:1313 ../src/guestfs-actions.pod:1948
6380 msgid ""
6381 "Return the additional kernel options which are added to the guest kernel "
6382 "command line."
6383 msgstr ""
6384
6385 #. type: textblock
6386 #: ../fish/guestfish-actions.pod:1316 ../src/guestfs-actions.pod:1951
6387 msgid "If C<NULL> then no options are added."
6388 msgstr ""
6389
6390 #. type: =head2
6391 #: ../fish/guestfish-actions.pod:1318
6392 msgid "get-attach-method"
6393 msgstr ""
6394
6395 #. type: verbatim
6396 #: ../fish/guestfish-actions.pod:1320
6397 #, no-wrap
6398 msgid ""
6399 " get-attach-method\n"
6400 "\n"
6401 msgstr ""
6402
6403 #. type: textblock
6404 #: ../fish/guestfish-actions.pod:1322
6405 msgid "Return the current attach method.  See L</set-attach-method>."
6406 msgstr ""
6407
6408 #. type: =head2
6409 #: ../fish/guestfish-actions.pod:1324
6410 msgid "get-autosync"
6411 msgstr ""
6412
6413 #. type: verbatim
6414 #: ../fish/guestfish-actions.pod:1326
6415 #, no-wrap
6416 msgid ""
6417 " get-autosync\n"
6418 "\n"
6419 msgstr ""
6420
6421 #. type: textblock
6422 #: ../fish/guestfish-actions.pod:1328 ../src/guestfs-actions.pod:1976
6423 msgid "Get the autosync flag."
6424 msgstr ""
6425
6426 #. type: =head2
6427 #: ../fish/guestfish-actions.pod:1330
6428 msgid "get-direct"
6429 msgstr ""
6430
6431 #. type: verbatim
6432 #: ../fish/guestfish-actions.pod:1332
6433 #, no-wrap
6434 msgid ""
6435 " get-direct\n"
6436 "\n"
6437 msgstr ""
6438
6439 #. type: textblock
6440 #: ../fish/guestfish-actions.pod:1334 ../src/guestfs-actions.pod:1987
6441 msgid "Return the direct appliance mode flag."
6442 msgstr ""
6443
6444 #. type: =head2
6445 #: ../fish/guestfish-actions.pod:1336
6446 msgid "get-e2label"
6447 msgstr ""
6448
6449 #. type: verbatim
6450 #: ../fish/guestfish-actions.pod:1338
6451 #, no-wrap
6452 msgid ""
6453 " get-e2label device\n"
6454 "\n"
6455 msgstr ""
6456
6457 #. type: textblock
6458 #: ../fish/guestfish-actions.pod:1340 ../src/guestfs-actions.pod:1999
6459 msgid "This returns the ext2/3/4 filesystem label of the filesystem on C<device>."
6460 msgstr ""
6461
6462 #. type: textblock
6463 #: ../fish/guestfish-actions.pod:1343 ../src/guestfs-actions.pod:2005
6464 msgid ""
6465 "This function is deprecated.  In new code, use the C<vfs_label> call "
6466 "instead."
6467 msgstr ""
6468
6469 #. type: =head2
6470 #: ../fish/guestfish-actions.pod:1350
6471 msgid "get-e2uuid"
6472 msgstr ""
6473
6474 #. type: verbatim
6475 #: ../fish/guestfish-actions.pod:1352
6476 #, no-wrap
6477 msgid ""
6478 " get-e2uuid device\n"
6479 "\n"
6480 msgstr ""
6481
6482 #. type: textblock
6483 #: ../fish/guestfish-actions.pod:1354 ../src/guestfs-actions.pod:2020
6484 msgid "This returns the ext2/3/4 filesystem UUID of the filesystem on C<device>."
6485 msgstr ""
6486
6487 #. type: textblock
6488 #: ../fish/guestfish-actions.pod:1357 ../src/guestfs-actions.pod:2026
6489 msgid "This function is deprecated.  In new code, use the C<vfs_uuid> call instead."
6490 msgstr ""
6491
6492 #. type: =head2
6493 #: ../fish/guestfish-actions.pod:1364
6494 msgid "get-memsize"
6495 msgstr ""
6496
6497 #. type: verbatim
6498 #: ../fish/guestfish-actions.pod:1366
6499 #, no-wrap
6500 msgid ""
6501 " get-memsize\n"
6502 "\n"
6503 msgstr ""
6504
6505 #. type: textblock
6506 #: ../fish/guestfish-actions.pod:1368 ../src/guestfs-actions.pod:2040
6507 msgid "This gets the memory size in megabytes allocated to the qemu subprocess."
6508 msgstr ""
6509
6510 #. type: textblock
6511 #: ../fish/guestfish-actions.pod:1371
6512 msgid ""
6513 "If L</set-memsize> was not called on this handle, and if "
6514 "C<LIBGUESTFS_MEMSIZE> was not set, then this returns the compiled-in default "
6515 "value for memsize."
6516 msgstr ""
6517
6518 #. type: textblock
6519 #: ../fish/guestfish-actions.pod:1375 ../fish/guestfish-actions.pod:1432 ../fish/guestfish-actions.pod:4163 ../fish/guestfish-actions.pod:4265 ../src/guestfs-actions.pod:2047 ../src/guestfs-actions.pod:2139 ../src/guestfs-actions.pod:6293 ../src/guestfs-actions.pod:6419
6520 msgid "For more information on the architecture of libguestfs, see L<guestfs(3)>."
6521 msgstr ""
6522
6523 #. type: =head2
6524 #: ../fish/guestfish-actions.pod:1378
6525 msgid "get-network"
6526 msgstr ""
6527
6528 #. type: verbatim
6529 #: ../fish/guestfish-actions.pod:1380
6530 #, no-wrap
6531 msgid ""
6532 " get-network\n"
6533 "\n"
6534 msgstr ""
6535
6536 #. type: textblock
6537 #: ../fish/guestfish-actions.pod:1382 ../src/guestfs-actions.pod:2059
6538 msgid "This returns the enable network flag."
6539 msgstr ""
6540
6541 #. type: =head2
6542 #: ../fish/guestfish-actions.pod:1384
6543 msgid "get-path"
6544 msgstr ""
6545
6546 #. type: verbatim
6547 #: ../fish/guestfish-actions.pod:1386
6548 #, no-wrap
6549 msgid ""
6550 " get-path\n"
6551 "\n"
6552 msgstr ""
6553
6554 #. type: textblock
6555 #: ../fish/guestfish-actions.pod:1388 ../src/guestfs-actions.pod:2070
6556 msgid "Return the current search path."
6557 msgstr ""
6558
6559 #. type: textblock
6560 #: ../fish/guestfish-actions.pod:1390 ../src/guestfs-actions.pod:2072
6561 msgid ""
6562 "This is always non-NULL.  If it wasn't set already, then this will return "
6563 "the default path."
6564 msgstr ""
6565
6566 #. type: =head2
6567 #: ../fish/guestfish-actions.pod:1393
6568 msgid "get-pgroup"
6569 msgstr ""
6570
6571 #. type: verbatim
6572 #: ../fish/guestfish-actions.pod:1395
6573 #, no-wrap
6574 msgid ""
6575 " get-pgroup\n"
6576 "\n"
6577 msgstr ""
6578
6579 #. type: textblock
6580 #: ../fish/guestfish-actions.pod:1397 ../src/guestfs-actions.pod:2085
6581 msgid "This returns the process group flag."
6582 msgstr ""
6583
6584 #. type: =head2
6585 #: ../fish/guestfish-actions.pod:1399
6586 msgid "get-pid"
6587 msgstr ""
6588
6589 #. type: =head2
6590 #: ../fish/guestfish-actions.pod:1401
6591 msgid "pid"
6592 msgstr ""
6593
6594 #. type: verbatim
6595 #: ../fish/guestfish-actions.pod:1403
6596 #, no-wrap
6597 msgid ""
6598 " get-pid\n"
6599 "\n"
6600 msgstr ""
6601
6602 #. type: textblock
6603 #: ../fish/guestfish-actions.pod:1405 ../src/guestfs-actions.pod:2096
6604 msgid ""
6605 "Return the process ID of the qemu subprocess.  If there is no qemu "
6606 "subprocess, then this will return an error."
6607 msgstr ""
6608
6609 #. type: textblock
6610 #: ../fish/guestfish-actions.pod:1408 ../src/guestfs-actions.pod:2099
6611 msgid "This is an internal call used for debugging and testing."
6612 msgstr ""
6613
6614 #. type: =head2
6615 #: ../fish/guestfish-actions.pod:1410
6616 msgid "get-qemu"
6617 msgstr ""
6618
6619 #. type: verbatim
6620 #: ../fish/guestfish-actions.pod:1412
6621 #, no-wrap
6622 msgid ""
6623 " get-qemu\n"
6624 "\n"
6625 msgstr ""
6626
6627 #. type: textblock
6628 #: ../fish/guestfish-actions.pod:1414 ../src/guestfs-actions.pod:2110
6629 msgid "Return the current qemu binary."
6630 msgstr ""
6631
6632 #. type: textblock
6633 #: ../fish/guestfish-actions.pod:1416 ../src/guestfs-actions.pod:2112
6634 msgid ""
6635 "This is always non-NULL.  If it wasn't set already, then this will return "
6636 "the default qemu binary name."
6637 msgstr ""
6638
6639 #. type: =head2
6640 #: ../fish/guestfish-actions.pod:1419
6641 msgid "get-recovery-proc"
6642 msgstr ""
6643
6644 #. type: verbatim
6645 #: ../fish/guestfish-actions.pod:1421
6646 #, no-wrap
6647 msgid ""
6648 " get-recovery-proc\n"
6649 "\n"
6650 msgstr ""
6651
6652 #. type: textblock
6653 #: ../fish/guestfish-actions.pod:1423 ../src/guestfs-actions.pod:2125
6654 msgid "Return the recovery process enabled flag."
6655 msgstr ""
6656
6657 #. type: =head2
6658 #: ../fish/guestfish-actions.pod:1425
6659 msgid "get-selinux"
6660 msgstr ""
6661
6662 #. type: verbatim
6663 #: ../fish/guestfish-actions.pod:1427
6664 #, no-wrap
6665 msgid ""
6666 " get-selinux\n"
6667 "\n"
6668 msgstr ""
6669
6670 #. type: textblock
6671 #: ../fish/guestfish-actions.pod:1429
6672 msgid ""
6673 "This returns the current setting of the selinux flag which is passed to the "
6674 "appliance at boot time.  See L</set-selinux>."
6675 msgstr ""
6676
6677 #. type: =head2
6678 #: ../fish/guestfish-actions.pod:1435
6679 msgid "get-state"
6680 msgstr ""
6681
6682 #. type: verbatim
6683 #: ../fish/guestfish-actions.pod:1437
6684 #, no-wrap
6685 msgid ""
6686 " get-state\n"
6687 "\n"
6688 msgstr ""
6689
6690 #. type: textblock
6691 #: ../fish/guestfish-actions.pod:1439 ../src/guestfs-actions.pod:2151
6692 msgid ""
6693 "This returns the current state as an opaque integer.  This is only useful "
6694 "for printing debug and internal error messages."
6695 msgstr ""
6696
6697 #. type: textblock
6698 #: ../fish/guestfish-actions.pod:1442 ../fish/guestfish-actions.pod:2362 ../fish/guestfish-actions.pod:2380 ../fish/guestfish-actions.pod:2418 ../fish/guestfish-actions.pod:2434 ../src/guestfs-actions.pod:2154 ../src/guestfs-actions.pod:3434 ../src/guestfs-actions.pod:3463 ../src/guestfs-actions.pod:3524 ../src/guestfs-actions.pod:3551
6699 msgid "For more information on states, see L<guestfs(3)>."
6700 msgstr ""
6701
6702 #. type: =head2
6703 #: ../fish/guestfish-actions.pod:1444
6704 msgid "get-trace"
6705 msgstr ""
6706
6707 #. type: verbatim
6708 #: ../fish/guestfish-actions.pod:1446
6709 #, no-wrap
6710 msgid ""
6711 " get-trace\n"
6712 "\n"
6713 msgstr ""
6714
6715 #. type: textblock
6716 #: ../fish/guestfish-actions.pod:1448 ../src/guestfs-actions.pod:2165
6717 msgid "Return the command trace flag."
6718 msgstr ""
6719
6720 #. type: =head2
6721 #: ../fish/guestfish-actions.pod:1450
6722 msgid "get-umask"
6723 msgstr ""
6724
6725 #. type: verbatim
6726 #: ../fish/guestfish-actions.pod:1452
6727 #, no-wrap
6728 msgid ""
6729 " get-umask\n"
6730 "\n"
6731 msgstr ""
6732
6733 #. type: textblock
6734 #: ../fish/guestfish-actions.pod:1454
6735 msgid ""
6736 "Return the current umask.  By default the umask is C<022> unless it has been "
6737 "set by calling L</umask>."
6738 msgstr ""
6739
6740 #. type: =head2
6741 #: ../fish/guestfish-actions.pod:1457
6742 msgid "get-verbose"
6743 msgstr ""
6744
6745 #. type: verbatim
6746 #: ../fish/guestfish-actions.pod:1459
6747 #, no-wrap
6748 msgid ""
6749 " get-verbose\n"
6750 "\n"
6751 msgstr ""
6752
6753 #. type: textblock
6754 #: ../fish/guestfish-actions.pod:1461 ../src/guestfs-actions.pod:2188
6755 msgid "This returns the verbose messages flag."
6756 msgstr ""
6757
6758 #. type: =head2
6759 #: ../fish/guestfish-actions.pod:1463
6760 msgid "getcon"
6761 msgstr ""
6762
6763 #. type: verbatim
6764 #: ../fish/guestfish-actions.pod:1465
6765 #, no-wrap
6766 msgid ""
6767 " getcon\n"
6768 "\n"
6769 msgstr ""
6770
6771 #. type: textblock
6772 #: ../fish/guestfish-actions.pod:1467 ../src/guestfs-actions.pod:2199
6773 msgid "This gets the SELinux security context of the daemon."
6774 msgstr ""
6775
6776 #. type: textblock
6777 #: ../fish/guestfish-actions.pod:1469
6778 msgid "See the documentation about SELINUX in L<guestfs(3)>, and L</setcon>"
6779 msgstr ""
6780
6781 #. type: =head2
6782 #: ../fish/guestfish-actions.pod:1472
6783 msgid "getxattr"
6784 msgstr ""
6785
6786 #. type: verbatim
6787 #: ../fish/guestfish-actions.pod:1474
6788 #, no-wrap
6789 msgid ""
6790 " getxattr path name\n"
6791 "\n"
6792 msgstr ""
6793
6794 #. type: textblock
6795 #: ../fish/guestfish-actions.pod:1476
6796 msgid ""
6797 "Get a single extended attribute from file C<path> named C<name>.  This call "
6798 "follows symlinks.  If you want to lookup an extended attribute for the "
6799 "symlink itself, use L</lgetxattr>."
6800 msgstr ""
6801
6802 #. type: textblock
6803 #: ../fish/guestfish-actions.pod:1480 ../fish/guestfish-actions.pod:2507
6804 msgid ""
6805 "Normally it is better to get all extended attributes from a file in one go "
6806 "by calling L</getxattrs>.  However some Linux filesystem implementations are "
6807 "buggy and do not provide a way to list out attributes.  For these "
6808 "filesystems (notably ntfs-3g)  you have to know the names of the extended "
6809 "attributes you want in advance and call this function."
6810 msgstr ""
6811
6812 #. type: textblock
6813 #: ../fish/guestfish-actions.pod:1487 ../fish/guestfish-actions.pod:2514 ../src/guestfs-actions.pod:2228 ../src/guestfs-actions.pod:3684
6814 msgid ""
6815 "Extended attribute values are blobs of binary data.  If there is no extended "
6816 "attribute named C<name>, this returns an error."
6817 msgstr ""
6818
6819 #. type: textblock
6820 #: ../fish/guestfish-actions.pod:1490
6821 msgid "See also: L</getxattrs>, L</lgetxattr>, L<attr(5)>."
6822 msgstr ""
6823
6824 #. type: =head2
6825 #: ../fish/guestfish-actions.pod:1492
6826 msgid "getxattrs"
6827 msgstr ""
6828
6829 #. type: verbatim
6830 #: ../fish/guestfish-actions.pod:1494
6831 #, no-wrap
6832 msgid ""
6833 " getxattrs path\n"
6834 "\n"
6835 msgstr ""
6836
6837 #. type: textblock
6838 #: ../fish/guestfish-actions.pod:1496 ../src/guestfs-actions.pod:2245
6839 msgid "This call lists the extended attributes of the file or directory C<path>."
6840 msgstr ""
6841
6842 #. type: textblock
6843 #: ../fish/guestfish-actions.pod:1499 ../src/guestfs-actions.pod:2248
6844 msgid ""
6845 "At the system call level, this is a combination of the L<listxattr(2)> and "
6846 "L<getxattr(2)> calls."
6847 msgstr ""
6848
6849 #. type: textblock
6850 #: ../fish/guestfish-actions.pod:1502
6851 msgid "See also: L</lgetxattrs>, L<attr(5)>."
6852 msgstr ""
6853
6854 #. type: =head2
6855 #: ../fish/guestfish-actions.pod:1504
6856 msgid "glob-expand"
6857 msgstr ""
6858
6859 #. type: verbatim
6860 #: ../fish/guestfish-actions.pod:1506
6861 #, no-wrap
6862 msgid ""
6863 " glob-expand pattern\n"
6864 "\n"
6865 msgstr ""
6866
6867 #. type: textblock
6868 #: ../fish/guestfish-actions.pod:1508 ../src/guestfs-actions.pod:2265
6869 msgid ""
6870 "This command searches for all the pathnames matching C<pattern> according to "
6871 "the wildcard expansion rules used by the shell."
6872 msgstr ""
6873
6874 #. type: textblock
6875 #: ../fish/guestfish-actions.pod:1512 ../src/guestfs-actions.pod:2269
6876 msgid "If no paths match, then this returns an empty list (note: not an error)."
6877 msgstr ""
6878
6879 #. type: textblock
6880 #: ../fish/guestfish-actions.pod:1515 ../src/guestfs-actions.pod:2272
6881 msgid ""
6882 "It is just a wrapper around the C L<glob(3)> function with flags "
6883 "C<GLOB_MARK|GLOB_BRACE>.  See that manual page for more details."
6884 msgstr ""
6885
6886 #. type: =head2
6887 #: ../fish/guestfish-actions.pod:1519
6888 msgid "grep"
6889 msgstr ""
6890
6891 #. type: verbatim
6892 #: ../fish/guestfish-actions.pod:1521
6893 #, no-wrap
6894 msgid ""
6895 " grep regex path\n"
6896 "\n"
6897 msgstr ""
6898
6899 #. type: textblock
6900 #: ../fish/guestfish-actions.pod:1523 ../src/guestfs-actions.pod:2289
6901 msgid "This calls the external C<grep> program and returns the matching lines."
6902 msgstr ""
6903
6904 #. type: =head2
6905 #: ../fish/guestfish-actions.pod:1529
6906 msgid "grepi"
6907 msgstr ""
6908
6909 #. type: verbatim
6910 #: ../fish/guestfish-actions.pod:1531
6911 #, no-wrap
6912 msgid ""
6913 " grepi regex path\n"
6914 "\n"
6915 msgstr ""
6916
6917 #. type: textblock
6918 #: ../fish/guestfish-actions.pod:1533 ../src/guestfs-actions.pod:2308
6919 msgid "This calls the external C<grep -i> program and returns the matching lines."
6920 msgstr ""
6921
6922 #. type: =head2
6923 #: ../fish/guestfish-actions.pod:1539
6924 msgid "grub-install"
6925 msgstr ""
6926
6927 #. type: verbatim
6928 #: ../fish/guestfish-actions.pod:1541
6929 #, no-wrap
6930 msgid ""
6931 " grub-install root device\n"
6932 "\n"
6933 msgstr ""
6934
6935 #. type: textblock
6936 #: ../fish/guestfish-actions.pod:1543 ../src/guestfs-actions.pod:2327
6937 msgid ""
6938 "This command installs GRUB (the Grand Unified Bootloader) on C<device>, with "
6939 "the root directory being C<root>."
6940 msgstr ""
6941
6942 #. type: textblock
6943 #: ../fish/guestfish-actions.pod:1546 ../src/guestfs-actions.pod:2330
6944 msgid ""
6945 "Note: If grub-install reports the error \"No suitable drive was found in the "
6946 "generated device map.\" it may be that you need to create a "
6947 "C</boot/grub/device.map> file first that contains the mapping between grub "
6948 "device names and Linux device names.  It is usually sufficient to create a "
6949 "file containing:"
6950 msgstr ""
6951
6952 #. type: verbatim
6953 #: ../fish/guestfish-actions.pod:1553 ../src/guestfs-actions.pod:2337
6954 #, no-wrap
6955 msgid ""
6956 " (hd0) /dev/vda\n"
6957 "\n"
6958 msgstr ""
6959
6960 #. type: textblock
6961 #: ../fish/guestfish-actions.pod:1555 ../src/guestfs-actions.pod:2339
6962 msgid "replacing C</dev/vda> with the name of the installation device."
6963 msgstr ""
6964
6965 #. type: =head2
6966 #: ../fish/guestfish-actions.pod:1557
6967 msgid "head"
6968 msgstr ""
6969
6970 #. type: verbatim
6971 #: ../fish/guestfish-actions.pod:1559
6972 #, no-wrap
6973 msgid ""
6974 " head path\n"
6975 "\n"
6976 msgstr ""
6977
6978 #. type: textblock
6979 #: ../fish/guestfish-actions.pod:1561 ../src/guestfs-actions.pod:2351
6980 msgid ""
6981 "This command returns up to the first 10 lines of a file as a list of "
6982 "strings."
6983 msgstr ""
6984
6985 #. type: =head2
6986 #: ../fish/guestfish-actions.pod:1567
6987 msgid "head-n"
6988 msgstr ""
6989
6990 #. type: verbatim
6991 #: ../fish/guestfish-actions.pod:1569
6992 #, no-wrap
6993 msgid ""
6994 " head-n nrlines path\n"
6995 "\n"
6996 msgstr ""
6997
6998 #. type: textblock
6999 #: ../fish/guestfish-actions.pod:1571 ../src/guestfs-actions.pod:2370
7000 msgid ""
7001 "If the parameter C<nrlines> is a positive number, this returns the first "
7002 "C<nrlines> lines of the file C<path>."
7003 msgstr ""
7004
7005 #. type: textblock
7006 #: ../fish/guestfish-actions.pod:1574 ../src/guestfs-actions.pod:2373
7007 msgid ""
7008 "If the parameter C<nrlines> is a negative number, this returns lines from "
7009 "the file C<path>, excluding the last C<nrlines> lines."
7010 msgstr ""
7011
7012 #. type: textblock
7013 #: ../fish/guestfish-actions.pod:1577 ../fish/guestfish-actions.pod:4643 ../src/guestfs-actions.pod:2376 ../src/guestfs-actions.pod:6991
7014 msgid "If the parameter C<nrlines> is zero, this returns an empty list."
7015 msgstr ""
7016
7017 #. type: =head2
7018 #: ../fish/guestfish-actions.pod:1582
7019 msgid "hexdump"
7020 msgstr ""
7021
7022 #. type: verbatim
7023 #: ../fish/guestfish-actions.pod:1584
7024 #, no-wrap
7025 msgid ""
7026 " hexdump path\n"
7027 "\n"
7028 msgstr ""
7029
7030 #. type: textblock
7031 #: ../fish/guestfish-actions.pod:1586 ../src/guestfs-actions.pod:2393
7032 msgid ""
7033 "This runs C<hexdump -C> on the given C<path>.  The result is the "
7034 "human-readable, canonical hex dump of the file."
7035 msgstr ""
7036
7037 #. type: =head2
7038 #: ../fish/guestfish-actions.pod:1592
7039 msgid "initrd-cat"
7040 msgstr ""
7041
7042 #. type: verbatim
7043 #: ../fish/guestfish-actions.pod:1594
7044 #, no-wrap
7045 msgid ""
7046 " initrd-cat initrdpath filename\n"
7047 "\n"
7048 msgstr ""
7049
7050 #. type: textblock
7051 #: ../fish/guestfish-actions.pod:1596 ../src/guestfs-actions.pod:2412
7052 msgid ""
7053 "This command unpacks the file C<filename> from the initrd file called "
7054 "C<initrdpath>.  The filename must be given I<without> the initial C</> "
7055 "character."
7056 msgstr ""
7057
7058 #. type: textblock
7059 #: ../fish/guestfish-actions.pod:1600 ../src/guestfs-actions.pod:2416
7060 msgid ""
7061 "For example, in guestfish you could use the following command to examine the "
7062 "boot script (usually called C</init>)  contained in a Linux initrd or "
7063 "initramfs image:"
7064 msgstr ""
7065
7066 #. type: verbatim
7067 #: ../fish/guestfish-actions.pod:1604 ../src/guestfs-actions.pod:2420
7068 #, no-wrap
7069 msgid ""
7070 " initrd-cat /boot/initrd-<version>.img init\n"
7071 "\n"
7072 msgstr ""
7073
7074 #. type: textblock
7075 #: ../fish/guestfish-actions.pod:1606
7076 msgid "See also L</initrd-list>."
7077 msgstr ""
7078
7079 #. type: =head2
7080 #: ../fish/guestfish-actions.pod:1611
7081 msgid "initrd-list"
7082 msgstr ""
7083
7084 #. type: verbatim
7085 #: ../fish/guestfish-actions.pod:1613
7086 #, no-wrap
7087 msgid ""
7088 " initrd-list path\n"
7089 "\n"
7090 msgstr ""
7091
7092 #. type: textblock
7093 #: ../fish/guestfish-actions.pod:1615 ../src/guestfs-actions.pod:2439
7094 msgid "This command lists out files contained in an initrd."
7095 msgstr ""
7096
7097 #. type: textblock
7098 #: ../fish/guestfish-actions.pod:1617 ../src/guestfs-actions.pod:2441
7099 msgid ""
7100 "The files are listed without any initial C</> character.  The files are "
7101 "listed in the order they appear (not necessarily alphabetical).  Directory "
7102 "names are listed as separate items."
7103 msgstr ""
7104
7105 #. type: textblock
7106 #: ../fish/guestfish-actions.pod:1621 ../src/guestfs-actions.pod:2445
7107 msgid ""
7108 "Old Linux kernels (2.4 and earlier) used a compressed ext2 filesystem as "
7109 "initrd.  We I<only> support the newer initramfs format (compressed cpio "
7110 "files)."
7111 msgstr ""
7112
7113 #. type: =head2
7114 #: ../fish/guestfish-actions.pod:1625
7115 msgid "inotify-add-watch"
7116 msgstr ""
7117
7118 #. type: verbatim
7119 #: ../fish/guestfish-actions.pod:1627
7120 #, no-wrap
7121 msgid ""
7122 " inotify-add-watch path mask\n"
7123 "\n"
7124 msgstr ""
7125
7126 #. type: textblock
7127 #: ../fish/guestfish-actions.pod:1629 ../src/guestfs-actions.pod:2462
7128 msgid "Watch C<path> for the events listed in C<mask>."
7129 msgstr ""
7130
7131 #. type: textblock
7132 #: ../fish/guestfish-actions.pod:1631 ../src/guestfs-actions.pod:2464
7133 msgid ""
7134 "Note that if C<path> is a directory then events within that directory are "
7135 "watched, but this does I<not> happen recursively (in subdirectories)."
7136 msgstr ""
7137
7138 #. type: textblock
7139 #: ../fish/guestfish-actions.pod:1635 ../src/guestfs-actions.pod:2468
7140 msgid ""
7141 "Note for non-C or non-Linux callers: the inotify events are defined by the "
7142 "Linux kernel ABI and are listed in C</usr/include/sys/inotify.h>."
7143 msgstr ""
7144
7145 #. type: =head2
7146 #: ../fish/guestfish-actions.pod:1639
7147 msgid "inotify-close"
7148 msgstr ""
7149
7150 #. type: verbatim
7151 #: ../fish/guestfish-actions.pod:1641
7152 #, no-wrap
7153 msgid ""
7154 " inotify-close\n"
7155 "\n"
7156 msgstr ""
7157
7158 #. type: textblock
7159 #: ../fish/guestfish-actions.pod:1643 ../src/guestfs-actions.pod:2481
7160 msgid ""
7161 "This closes the inotify handle which was previously opened by inotify_init.  "
7162 "It removes all watches, throws away any pending events, and deallocates all "
7163 "resources."
7164 msgstr ""
7165
7166 #. type: =head2
7167 #: ../fish/guestfish-actions.pod:1647
7168 msgid "inotify-files"
7169 msgstr ""
7170
7171 #. type: verbatim
7172 #: ../fish/guestfish-actions.pod:1649
7173 #, no-wrap
7174 msgid ""
7175 " inotify-files\n"
7176 "\n"
7177 msgstr ""
7178
7179 #. type: textblock
7180 #: ../fish/guestfish-actions.pod:1651
7181 msgid ""
7182 "This function is a helpful wrapper around L</inotify-read> which just "
7183 "returns a list of pathnames of objects that were touched.  The returned "
7184 "pathnames are sorted and deduplicated."
7185 msgstr ""
7186
7187 #. type: =head2
7188 #: ../fish/guestfish-actions.pod:1655
7189 msgid "inotify-init"
7190 msgstr ""
7191
7192 #. type: verbatim
7193 #: ../fish/guestfish-actions.pod:1657
7194 #, no-wrap
7195 msgid ""
7196 " inotify-init maxevents\n"
7197 "\n"
7198 msgstr ""
7199
7200 #. type: textblock
7201 #: ../fish/guestfish-actions.pod:1659 ../src/guestfs-actions.pod:2510
7202 msgid ""
7203 "This command creates a new inotify handle.  The inotify subsystem can be "
7204 "used to notify events which happen to objects in the guest filesystem."
7205 msgstr ""
7206
7207 #. type: textblock
7208 #: ../fish/guestfish-actions.pod:1663
7209 msgid ""
7210 "C<maxevents> is the maximum number of events which will be queued up between "
7211 "calls to L</inotify-read> or L</inotify-files>.  If this is passed as C<0>, "
7212 "then the kernel (or previously set)  default is used.  For Linux 2.6.29 the "
7213 "default was 16384 events.  Beyond this limit, the kernel throws away events, "
7214 "but records the fact that it threw them away by setting a flag "
7215 "C<IN_Q_OVERFLOW> in the returned structure list (see L</inotify-read>)."
7216 msgstr ""
7217
7218 #. type: textblock
7219 #: ../fish/guestfish-actions.pod:1673
7220 msgid ""
7221 "Before any events are generated, you have to add some watches to the "
7222 "internal watch list.  See: L</inotify-add-watch>, L</inotify-rm-watch> and "
7223 "L</inotify-watch-all>."
7224 msgstr ""
7225
7226 #. type: textblock
7227 #: ../fish/guestfish-actions.pod:1679
7228 msgid ""
7229 "Queued up events should be read periodically by calling L</inotify-read> (or "
7230 "L</inotify-files> which is just a helpful wrapper around L</inotify-read>).  "
7231 "If you don't read the events out often enough then you risk the internal "
7232 "queue overflowing."
7233 msgstr ""
7234
7235 #. type: textblock
7236 #: ../fish/guestfish-actions.pod:1686
7237 msgid ""
7238 "The handle should be closed after use by calling L</inotify-close>.  This "
7239 "also removes any watches automatically."
7240 msgstr ""
7241
7242 #. type: textblock
7243 #: ../fish/guestfish-actions.pod:1690 ../src/guestfs-actions.pod:2541
7244 msgid ""
7245 "See also L<inotify(7)> for an overview of the inotify interface as exposed "
7246 "by the Linux kernel, which is roughly what we expose via libguestfs.  Note "
7247 "that there is one global inotify handle per libguestfs instance."
7248 msgstr ""
7249
7250 #. type: =head2
7251 #: ../fish/guestfish-actions.pod:1695
7252 msgid "inotify-read"
7253 msgstr ""
7254
7255 #. type: verbatim
7256 #: ../fish/guestfish-actions.pod:1697
7257 #, no-wrap
7258 msgid ""
7259 " inotify-read\n"
7260 "\n"
7261 msgstr ""
7262
7263 #. type: textblock
7264 #: ../fish/guestfish-actions.pod:1699 ../src/guestfs-actions.pod:2555
7265 msgid ""
7266 "Return the complete queue of events that have happened since the previous "
7267 "read call."
7268 msgstr ""
7269
7270 #. type: textblock
7271 #: ../fish/guestfish-actions.pod:1702 ../src/guestfs-actions.pod:2558
7272 msgid "If no events have happened, this returns an empty list."
7273 msgstr ""
7274
7275 #. type: textblock
7276 #: ../fish/guestfish-actions.pod:1704 ../src/guestfs-actions.pod:2560
7277 msgid ""
7278 "I<Note>: In order to make sure that all events have been read, you must call "
7279 "this function repeatedly until it returns an empty list.  The reason is that "
7280 "the call will read events up to the maximum appliance-to-host message size "
7281 "and leave remaining events in the queue."
7282 msgstr ""
7283
7284 #. type: =head2
7285 #: ../fish/guestfish-actions.pod:1710
7286 msgid "inotify-rm-watch"
7287 msgstr ""
7288
7289 #. type: verbatim
7290 #: ../fish/guestfish-actions.pod:1712
7291 #, no-wrap
7292 msgid ""
7293 " inotify-rm-watch wd\n"
7294 "\n"
7295 msgstr ""
7296
7297 #. type: textblock
7298 #: ../fish/guestfish-actions.pod:1714
7299 msgid "Remove a previously defined inotify watch.  See L</inotify-add-watch>."
7300 msgstr ""
7301
7302 #. type: =head2
7303 #: ../fish/guestfish-actions.pod:1717
7304 msgid "inspect-get-arch"
7305 msgstr ""
7306
7307 #. type: verbatim
7308 #: ../fish/guestfish-actions.pod:1719
7309 #, no-wrap
7310 msgid ""
7311 " inspect-get-arch root\n"
7312 "\n"
7313 msgstr ""
7314
7315 #. type: textblock
7316 #: ../fish/guestfish-actions.pod:1721
7317 msgid ""
7318 "This returns the architecture of the inspected operating system.  The "
7319 "possible return values are listed under L</file-architecture>."
7320 msgstr ""
7321
7322 #. type: textblock
7323 #: ../fish/guestfish-actions.pod:1725 ../src/guestfs-actions.pod:2595
7324 msgid ""
7325 "If the architecture could not be determined, then the string C<unknown> is "
7326 "returned."
7327 msgstr ""
7328
7329 #. type: textblock
7330 #: ../fish/guestfish-actions.pod:1728 ../fish/guestfish-actions.pod:1811 ../fish/guestfish-actions.pod:1890 ../fish/guestfish-actions.pod:1902 ../fish/guestfish-actions.pod:1986 ../fish/guestfish-actions.pod:2047 ../fish/guestfish-actions.pod:2068 ../fish/guestfish-actions.pod:2082 ../fish/guestfish-actions.pod:2122 ../fish/guestfish-actions.pod:2154 ../fish/guestfish-actions.pod:2167 ../fish/guestfish-actions.pod:2180 ../fish/guestfish-actions.pod:2190 ../fish/guestfish-actions.pod:2200 ../fish/guestfish-actions.pod:2212 ../fish/guestfish-actions.pod:2308 ../fish/guestfish-actions.pod:2342 ../src/guestfs-actions.pod:2598 ../src/guestfs-actions.pod:2688 ../src/guestfs-actions.pod:2792 ../src/guestfs-actions.pod:2811 ../src/guestfs-actions.pod:2942 ../src/guestfs-actions.pod:3025 ../src/guestfs-actions.pod:3053 ../src/guestfs-actions.pod:3074 ../src/guestfs-actions.pod:3127 ../src/guestfs-actions.pod:3167 ../src/guestfs-actions.pod:3187 ../src/guestfs-actions.pod:3207 ../src/guestfs-actions.pod:3224 ../src/guestfs-actions.pod:3240 ../src/guestfs-actions.pod:3258 ../src/guestfs-actions.pod:3360 ../src/guestfs-actions.pod:3401
7331 msgid "Please read L<guestfs(3)/INSPECTION> for more details."
7332 msgstr ""
7333
7334 #. type: =head2
7335 #: ../fish/guestfish-actions.pod:1730
7336 msgid "inspect-get-distro"
7337 msgstr ""
7338
7339 #. type: verbatim
7340 #: ../fish/guestfish-actions.pod:1732
7341 #, no-wrap
7342 msgid ""
7343 " inspect-get-distro root\n"
7344 "\n"
7345 msgstr ""
7346
7347 #. type: textblock
7348 #: ../fish/guestfish-actions.pod:1734 ../src/guestfs-actions.pod:2611
7349 msgid "This returns the distro (distribution) of the inspected operating system."
7350 msgstr ""
7351
7352 #. type: textblock
7353 #: ../fish/guestfish-actions.pod:1737 ../src/guestfs-actions.pod:2614
7354 msgid "Currently defined distros are:"
7355 msgstr ""
7356
7357 #. type: =item
7358 #: ../fish/guestfish-actions.pod:1741 ../src/guestfs-actions.pod:2618
7359 msgid "\"archlinux\""
7360 msgstr ""
7361
7362 #. type: textblock
7363 #: ../fish/guestfish-actions.pod:1743 ../src/guestfs-actions.pod:2620
7364 msgid "Arch Linux."
7365 msgstr ""
7366
7367 #. type: =item
7368 #: ../fish/guestfish-actions.pod:1745 ../src/guestfs-actions.pod:2622
7369 msgid "\"centos\""
7370 msgstr ""
7371
7372 #. type: textblock
7373 #: ../fish/guestfish-actions.pod:1747 ../src/guestfs-actions.pod:2624
7374 msgid "CentOS."
7375 msgstr ""
7376
7377 #. type: =item
7378 #: ../fish/guestfish-actions.pod:1749 ../src/guestfs-actions.pod:2626
7379 msgid "\"debian\""
7380 msgstr ""
7381
7382 #. type: textblock
7383 #: ../fish/guestfish-actions.pod:1751 ../src/guestfs-actions.pod:2628
7384 msgid "Debian."
7385 msgstr ""
7386
7387 #. type: =item
7388 #: ../fish/guestfish-actions.pod:1753 ../src/guestfs-actions.pod:2630
7389 msgid "\"fedora\""
7390 msgstr ""
7391
7392 #. type: textblock
7393 #: ../fish/guestfish-actions.pod:1755 ../src/guestfs-actions.pod:2632
7394 msgid "Fedora."
7395 msgstr ""
7396
7397 #. type: =item
7398 #: ../fish/guestfish-actions.pod:1757 ../src/guestfs-actions.pod:2634
7399 msgid "\"gentoo\""
7400 msgstr ""
7401
7402 #. type: textblock
7403 #: ../fish/guestfish-actions.pod:1759 ../src/guestfs-actions.pod:2636
7404 msgid "Gentoo."
7405 msgstr ""
7406
7407 #. type: =item
7408 #: ../fish/guestfish-actions.pod:1761 ../src/guestfs-actions.pod:2638
7409 msgid "\"linuxmint\""
7410 msgstr ""
7411
7412 #. type: textblock
7413 #: ../fish/guestfish-actions.pod:1763 ../src/guestfs-actions.pod:2640
7414 msgid "Linux Mint."
7415 msgstr ""
7416
7417 #. type: =item
7418 #: ../fish/guestfish-actions.pod:1765 ../src/guestfs-actions.pod:2642
7419 msgid "\"mandriva\""
7420 msgstr ""
7421
7422 #. type: textblock
7423 #: ../fish/guestfish-actions.pod:1767 ../src/guestfs-actions.pod:2644
7424 msgid "Mandriva."
7425 msgstr ""
7426
7427 #. type: =item
7428 #: ../fish/guestfish-actions.pod:1769 ../src/guestfs-actions.pod:2646
7429 msgid "\"meego\""
7430 msgstr ""
7431
7432 #. type: textblock
7433 #: ../fish/guestfish-actions.pod:1771 ../src/guestfs-actions.pod:2648
7434 msgid "MeeGo."
7435 msgstr ""
7436
7437 #. type: =item
7438 #: ../fish/guestfish-actions.pod:1773 ../src/guestfs-actions.pod:2650
7439 msgid "\"pardus\""
7440 msgstr ""
7441
7442 #. type: textblock
7443 #: ../fish/guestfish-actions.pod:1775 ../src/guestfs-actions.pod:2652
7444 msgid "Pardus."
7445 msgstr ""
7446
7447 #. type: =item
7448 #: ../fish/guestfish-actions.pod:1777 ../src/guestfs-actions.pod:2654
7449 msgid "\"redhat-based\""
7450 msgstr ""
7451
7452 #. type: textblock
7453 #: ../fish/guestfish-actions.pod:1779 ../src/guestfs-actions.pod:2656
7454 msgid "Some Red Hat-derived distro."
7455 msgstr ""
7456
7457 #. type: =item
7458 #: ../fish/guestfish-actions.pod:1781 ../src/guestfs-actions.pod:2658
7459 msgid "\"rhel\""
7460 msgstr ""
7461
7462 #. type: textblock
7463 #: ../fish/guestfish-actions.pod:1783 ../src/guestfs-actions.pod:2660
7464 msgid "Red Hat Enterprise Linux."
7465 msgstr ""
7466
7467 #. type: =item
7468 #: ../fish/guestfish-actions.pod:1785 ../src/guestfs-actions.pod:2662
7469 msgid "\"scientificlinux\""
7470 msgstr ""
7471
7472 #. type: textblock
7473 #: ../fish/guestfish-actions.pod:1787 ../src/guestfs-actions.pod:2664
7474 msgid "Scientific Linux."
7475 msgstr ""
7476
7477 #. type: =item
7478 #: ../fish/guestfish-actions.pod:1789 ../src/guestfs-actions.pod:2666
7479 msgid "\"slackware\""
7480 msgstr ""
7481
7482 #. type: textblock
7483 #: ../fish/guestfish-actions.pod:1791 ../src/guestfs-actions.pod:2668
7484 msgid "Slackware."
7485 msgstr ""
7486
7487 #. type: =item
7488 #: ../fish/guestfish-actions.pod:1793 ../src/guestfs-actions.pod:2670
7489 msgid "\"ubuntu\""
7490 msgstr ""
7491
7492 #. type: textblock
7493 #: ../fish/guestfish-actions.pod:1795 ../src/guestfs-actions.pod:2672
7494 msgid "Ubuntu."
7495 msgstr ""
7496
7497 #. type: =item
7498 #: ../fish/guestfish-actions.pod:1797 ../fish/guestfish-actions.pod:1881 ../fish/guestfish-actions.pod:2145 ../src/guestfs-actions.pod:2674 ../src/guestfs-actions.pod:2783 ../src/guestfs-actions.pod:3158
7499 msgid "\"unknown\""
7500 msgstr ""
7501
7502 #. type: textblock
7503 #: ../fish/guestfish-actions.pod:1799 ../src/guestfs-actions.pod:2676
7504 msgid "The distro could not be determined."
7505 msgstr ""
7506
7507 #. type: =item
7508 #: ../fish/guestfish-actions.pod:1801 ../fish/guestfish-actions.pod:2137 ../src/guestfs-actions.pod:2678 ../src/guestfs-actions.pod:3150
7509 msgid "\"windows\""
7510 msgstr ""
7511
7512 #. type: textblock
7513 #: ../fish/guestfish-actions.pod:1803 ../src/guestfs-actions.pod:2680
7514 msgid ""
7515 "Windows does not have distributions.  This string is returned if the OS type "
7516 "is Windows."
7517 msgstr ""
7518
7519 #. type: textblock
7520 #: ../fish/guestfish-actions.pod:1808 ../fish/guestfish-actions.pod:1887 ../fish/guestfish-actions.pod:2151 ../src/guestfs-actions.pod:2685 ../src/guestfs-actions.pod:2789 ../src/guestfs-actions.pod:3164
7521 msgid ""
7522 "Future versions of libguestfs may return other strings here.  The caller "
7523 "should be prepared to handle any string."
7524 msgstr ""
7525
7526 #. type: =head2
7527 #: ../fish/guestfish-actions.pod:1813
7528 msgid "inspect-get-drive-mappings"
7529 msgstr ""
7530
7531 #. type: verbatim
7532 #: ../fish/guestfish-actions.pod:1815
7533 #, no-wrap
7534 msgid ""
7535 " inspect-get-drive-mappings root\n"
7536 "\n"
7537 msgstr ""
7538
7539 #. type: textblock
7540 #: ../fish/guestfish-actions.pod:1817 ../src/guestfs-actions.pod:2701
7541 msgid ""
7542 "This call is useful for Windows which uses a primitive system of assigning "
7543 "drive letters (like \"C:\") to partitions.  This inspection API examines the "
7544 "Windows Registry to find out how disks/partitions are mapped to drive "
7545 "letters, and returns a hash table as in the example below:"
7546 msgstr ""
7547
7548 #. type: verbatim
7549 #: ../fish/guestfish-actions.pod:1823 ../src/guestfs-actions.pod:2707
7550 #, no-wrap
7551 msgid ""
7552 " C      =>     /dev/vda2\n"
7553 " E      =>     /dev/vdb1\n"
7554 " F      =>     /dev/vdc1\n"
7555 "\n"
7556 msgstr ""
7557
7558 #. type: textblock
7559 #: ../fish/guestfish-actions.pod:1827 ../src/guestfs-actions.pod:2711
7560 msgid ""
7561 "Note that keys are drive letters.  For Windows, the key is case insensitive "
7562 "and just contains the drive letter, without the customary colon separator "
7563 "character."
7564 msgstr ""
7565
7566 #. type: textblock
7567 #: ../fish/guestfish-actions.pod:1831 ../src/guestfs-actions.pod:2715
7568 msgid ""
7569 "In future we may support other operating systems that also used drive "
7570 "letters, but the keys for those might not be case insensitive and might be "
7571 "longer than 1 character.  For example in OS-9, hard drives were named C<h0>, "
7572 "C<h1> etc."
7573 msgstr ""
7574
7575 #. type: textblock
7576 #: ../fish/guestfish-actions.pod:1836 ../src/guestfs-actions.pod:2720
7577 msgid ""
7578 "For Windows guests, currently only hard drive mappings are returned.  "
7579 "Removable disks (eg. DVD-ROMs) are ignored."
7580 msgstr ""
7581
7582 #. type: textblock
7583 #: ../fish/guestfish-actions.pod:1839 ../src/guestfs-actions.pod:2723
7584 msgid ""
7585 "For guests that do not use drive mappings, or if the drive mappings could "
7586 "not be determined, this returns an empty hash table."
7587 msgstr ""
7588
7589 #. type: textblock
7590 #: ../fish/guestfish-actions.pod:1842
7591 msgid ""
7592 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
7593 "L</inspect-get-mountpoints>, L</inspect-get-filesystems>."
7594 msgstr ""
7595
7596 #. type: =head2
7597 #: ../fish/guestfish-actions.pod:1846
7598 msgid "inspect-get-filesystems"
7599 msgstr ""
7600
7601 #. type: verbatim
7602 #: ../fish/guestfish-actions.pod:1848
7603 #, no-wrap
7604 msgid ""
7605 " inspect-get-filesystems root\n"
7606 "\n"
7607 msgstr ""
7608
7609 #. type: textblock
7610 #: ../fish/guestfish-actions.pod:1850 ../src/guestfs-actions.pod:2744
7611 msgid ""
7612 "This returns a list of all the filesystems that we think are associated with "
7613 "this operating system.  This includes the root filesystem, other ordinary "
7614 "filesystems, and non-mounted devices like swap partitions."
7615 msgstr ""
7616
7617 #. type: textblock
7618 #: ../fish/guestfish-actions.pod:1855 ../src/guestfs-actions.pod:2749
7619 msgid ""
7620 "In the case of a multi-boot virtual machine, it is possible for a filesystem "
7621 "to be shared between operating systems."
7622 msgstr ""
7623
7624 #. type: textblock
7625 #: ../fish/guestfish-actions.pod:1858
7626 msgid ""
7627 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
7628 "L</inspect-get-mountpoints>."
7629 msgstr ""
7630
7631 #. type: =head2
7632 #: ../fish/guestfish-actions.pod:1861
7633 msgid "inspect-get-format"
7634 msgstr ""
7635
7636 #. type: verbatim
7637 #: ../fish/guestfish-actions.pod:1863
7638 #, no-wrap
7639 msgid ""
7640 " inspect-get-format root\n"
7641 "\n"
7642 msgstr ""
7643
7644 #. type: textblock
7645 #: ../fish/guestfish-actions.pod:1865 ../src/guestfs-actions.pod:2767
7646 msgid ""
7647 "This returns the format of the inspected operating system.  You can use it "
7648 "to detect install images, live CDs and similar."
7649 msgstr ""
7650
7651 #. type: textblock
7652 #: ../fish/guestfish-actions.pod:1868 ../src/guestfs-actions.pod:2770
7653 msgid "Currently defined formats are:"
7654 msgstr ""
7655
7656 #. type: =item
7657 #: ../fish/guestfish-actions.pod:1872 ../src/guestfs-actions.pod:2774
7658 msgid "\"installed\""
7659 msgstr ""
7660
7661 #. type: textblock
7662 #: ../fish/guestfish-actions.pod:1874 ../src/guestfs-actions.pod:2776
7663 msgid "This is an installed operating system."
7664 msgstr ""
7665
7666 #. type: =item
7667 #: ../fish/guestfish-actions.pod:1876 ../src/guestfs-actions.pod:2778
7668 msgid "\"installer\""
7669 msgstr ""
7670
7671 #. type: textblock
7672 #: ../fish/guestfish-actions.pod:1878 ../src/guestfs-actions.pod:2780
7673 msgid ""
7674 "The disk image being inspected is not an installed operating system, but a "
7675 "I<bootable> install disk, live CD, or similar."
7676 msgstr ""
7677
7678 #. type: textblock
7679 #: ../fish/guestfish-actions.pod:1883 ../src/guestfs-actions.pod:2785
7680 msgid "The format of this disk image is not known."
7681 msgstr ""
7682
7683 #. type: =head2
7684 #: ../fish/guestfish-actions.pod:1892
7685 msgid "inspect-get-hostname"
7686 msgstr ""
7687
7688 #. type: verbatim
7689 #: ../fish/guestfish-actions.pod:1894
7690 #, no-wrap
7691 msgid ""
7692 " inspect-get-hostname root\n"
7693 "\n"
7694 msgstr ""
7695
7696 #. type: textblock
7697 #: ../fish/guestfish-actions.pod:1896 ../src/guestfs-actions.pod:2805
7698 msgid ""
7699 "This function returns the hostname of the operating system as found by "
7700 "inspection of the guest's configuration files."
7701 msgstr ""
7702
7703 #. type: textblock
7704 #: ../fish/guestfish-actions.pod:1899 ../src/guestfs-actions.pod:2808
7705 msgid ""
7706 "If the hostname could not be determined, then the string C<unknown> is "
7707 "returned."
7708 msgstr ""
7709
7710 #. type: =head2
7711 #: ../fish/guestfish-actions.pod:1904
7712 msgid "inspect-get-icon"
7713 msgstr ""
7714
7715 #. type: verbatim
7716 #: ../fish/guestfish-actions.pod:1906
7717 #, no-wrap
7718 msgid ""
7719 " inspect-get-icon root [favicon:..] [highquality:..]\n"
7720 "\n"
7721 msgstr ""
7722
7723 #. type: textblock
7724 #: ../fish/guestfish-actions.pod:1908 ../src/guestfs-actions.pod:2834
7725 msgid ""
7726 "This function returns an icon corresponding to the inspected operating "
7727 "system.  The icon is returned as a buffer containing a PNG image (re-encoded "
7728 "to PNG if necessary)."
7729 msgstr ""
7730
7731 #. type: textblock
7732 #: ../fish/guestfish-actions.pod:1912 ../src/guestfs-actions.pod:2838
7733 msgid ""
7734 "If it was not possible to get an icon this function returns a zero-length "
7735 "(non-NULL) buffer.  I<Callers must check for this case>."
7736 msgstr ""
7737
7738 #. type: textblock
7739 #: ../fish/guestfish-actions.pod:1915 ../src/guestfs-actions.pod:2841
7740 msgid ""
7741 "Libguestfs will start by looking for a file called C</etc/favicon.png> or "
7742 "C<C:\\etc\\favicon.png> and if it has the correct format, the contents of "
7743 "this file will be returned.  You can disable favicons by passing the "
7744 "optional C<favicon> boolean as false (default is true)."
7745 msgstr ""
7746
7747 #. type: textblock
7748 #: ../fish/guestfish-actions.pod:1921 ../src/guestfs-actions.pod:2847
7749 msgid ""
7750 "If finding the favicon fails, then we look in other places in the guest for "
7751 "a suitable icon."
7752 msgstr ""
7753
7754 #. type: textblock
7755 #: ../fish/guestfish-actions.pod:1924 ../src/guestfs-actions.pod:2850
7756 msgid ""
7757 "If the optional C<highquality> boolean is true then only high quality icons "
7758 "are returned, which means only icons of high resolution with an alpha "
7759 "channel.  The default (false) is to return any icon we can, even if it is of "
7760 "substandard quality."
7761 msgstr ""
7762
7763 #. type: textblock
7764 #: ../fish/guestfish-actions.pod:1935 ../src/guestfs-actions.pod:2861
7765 msgid ""
7766 "Unlike most other inspection API calls, the guest's disks must be mounted up "
7767 "before you call this, since it needs to read information from the guest "
7768 "filesystem during the call."
7769 msgstr ""
7770
7771 #. type: textblock
7772 #: ../fish/guestfish-actions.pod:1941 ../src/guestfs-actions.pod:2867
7773 msgid ""
7774 "B<Security:> The icon data comes from the untrusted guest, and should be "
7775 "treated with caution.  PNG files have been known to contain exploits.  "
7776 "Ensure that libpng (or other relevant libraries) are fully up to date before "
7777 "trying to process or display the icon."
7778 msgstr ""
7779
7780 #. type: textblock
7781 #: ../fish/guestfish-actions.pod:1949 ../src/guestfs-actions.pod:2875
7782 msgid ""
7783 "The PNG image returned can be any size.  It might not be square.  Libguestfs "
7784 "tries to return the largest, highest quality icon available.  The "
7785 "application must scale the icon to the required size."
7786 msgstr ""
7787
7788 #. type: textblock
7789 #: ../fish/guestfish-actions.pod:1956 ../src/guestfs-actions.pod:2882
7790 msgid ""
7791 "Extracting icons from Windows guests requires the external C<wrestool> "
7792 "program from the C<icoutils> package, and several programs (C<bmptopnm>, "
7793 "C<pnmtopng>, C<pamcut>)  from the C<netpbm> package.  These must be "
7794 "installed separately."
7795 msgstr ""
7796
7797 #. type: textblock
7798 #: ../fish/guestfish-actions.pod:1963 ../src/guestfs-actions.pod:2889
7799 msgid ""
7800 "Operating system icons are usually trademarks.  Seek legal advice before "
7801 "using trademarks in applications."
7802 msgstr ""
7803
7804 #. type: =head2
7805 #: ../fish/guestfish-actions.pod:1970
7806 msgid "inspect-get-major-version"
7807 msgstr ""
7808
7809 #. type: verbatim
7810 #: ../fish/guestfish-actions.pod:1972
7811 #, no-wrap
7812 msgid ""
7813 " inspect-get-major-version root\n"
7814 "\n"
7815 msgstr ""
7816
7817 #. type: textblock
7818 #: ../fish/guestfish-actions.pod:1974 ../src/guestfs-actions.pod:2930
7819 msgid "This returns the major version number of the inspected operating system."
7820 msgstr ""
7821
7822 #. type: textblock
7823 #: ../fish/guestfish-actions.pod:1977 ../src/guestfs-actions.pod:2933
7824 msgid ""
7825 "Windows uses a consistent versioning scheme which is I<not> reflected in the "
7826 "popular public names used by the operating system.  Notably the operating "
7827 "system known as \"Windows 7\" is really version 6.1 (ie. major = 6, minor = "
7828 "1).  You can find out the real versions corresponding to releases of Windows "
7829 "by consulting Wikipedia or MSDN."
7830 msgstr ""
7831
7832 #. type: textblock
7833 #: ../fish/guestfish-actions.pod:1984 ../fish/guestfish-actions.pod:1995 ../src/guestfs-actions.pod:2940 ../src/guestfs-actions.pod:2957
7834 msgid "If the version could not be determined, then C<0> is returned."
7835 msgstr ""
7836
7837 #. type: =head2
7838 #: ../fish/guestfish-actions.pod:1988
7839 msgid "inspect-get-minor-version"
7840 msgstr ""
7841
7842 #. type: verbatim
7843 #: ../fish/guestfish-actions.pod:1990
7844 #, no-wrap
7845 msgid ""
7846 " inspect-get-minor-version root\n"
7847 "\n"
7848 msgstr ""
7849
7850 #. type: textblock
7851 #: ../fish/guestfish-actions.pod:1992 ../src/guestfs-actions.pod:2954
7852 msgid "This returns the minor version number of the inspected operating system."
7853 msgstr ""
7854
7855 #. type: textblock
7856 #: ../fish/guestfish-actions.pod:1997
7857 msgid ""
7858 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
7859 "L</inspect-get-major-version>."
7860 msgstr ""
7861
7862 #. type: =head2
7863 #: ../fish/guestfish-actions.pod:2000
7864 msgid "inspect-get-mountpoints"
7865 msgstr ""
7866
7867 #. type: verbatim
7868 #: ../fish/guestfish-actions.pod:2002
7869 #, no-wrap
7870 msgid ""
7871 " inspect-get-mountpoints root\n"
7872 "\n"
7873 msgstr ""
7874
7875 #. type: textblock
7876 #: ../fish/guestfish-actions.pod:2004 ../src/guestfs-actions.pod:2972
7877 msgid ""
7878 "This returns a hash of where we think the filesystems associated with this "
7879 "operating system should be mounted.  Callers should note that this is at "
7880 "best an educated guess made by reading configuration files such as "
7881 "C</etc/fstab>.  I<In particular note> that this may return filesystems which "
7882 "are non-existent or not mountable and callers should be prepared to handle "
7883 "or ignore failures if they try to mount them."
7884 msgstr ""
7885
7886 #. type: textblock
7887 #: ../fish/guestfish-actions.pod:2013 ../src/guestfs-actions.pod:2981
7888 msgid ""
7889 "Each element in the returned hashtable has a key which is the path of the "
7890 "mountpoint (eg. C</boot>) and a value which is the filesystem that would be "
7891 "mounted there (eg. C</dev/sda1>)."
7892 msgstr ""
7893
7894 #. type: textblock
7895 #: ../fish/guestfish-actions.pod:2018 ../src/guestfs-actions.pod:2986
7896 msgid "Non-mounted devices such as swap devices are I<not> returned in this list."
7897 msgstr ""
7898
7899 #. type: textblock
7900 #: ../fish/guestfish-actions.pod:2021
7901 msgid ""
7902 "For operating systems like Windows which still use drive letters, this call "
7903 "will only return an entry for the first drive \"mounted on\" C</>.  For "
7904 "information about the mapping of drive letters to partitions, see "
7905 "L</inspect-get-drive-mappings>."
7906 msgstr ""
7907
7908 #. type: textblock
7909 #: ../fish/guestfish-actions.pod:2027
7910 msgid ""
7911 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
7912 "L</inspect-get-filesystems>."
7913 msgstr ""
7914
7915 #. type: =head2
7916 #: ../fish/guestfish-actions.pod:2030
7917 msgid "inspect-get-package-format"
7918 msgstr ""
7919
7920 #. type: verbatim
7921 #: ../fish/guestfish-actions.pod:2032
7922 #, no-wrap
7923 msgid ""
7924 " inspect-get-package-format root\n"
7925 "\n"
7926 msgstr ""
7927
7928 #. type: textblock
7929 #: ../fish/guestfish-actions.pod:2034
7930 msgid ""
7931 "This function and L</inspect-get-package-management> return the package "
7932 "format and package management tool used by the inspected operating system.  "
7933 "For example for Fedora these functions would return C<rpm> (package format) "
7934 "and C<yum> (package management)."
7935 msgstr ""
7936
7937 #. type: textblock
7938 #: ../fish/guestfish-actions.pod:2040 ../src/guestfs-actions.pod:3018
7939 msgid ""
7940 "This returns the string C<unknown> if we could not determine the package "
7941 "format I<or> if the operating system does not have a real packaging system "
7942 "(eg. Windows)."
7943 msgstr ""
7944
7945 #. type: textblock
7946 #: ../fish/guestfish-actions.pod:2044 ../src/guestfs-actions.pod:3022
7947 msgid ""
7948 "Possible strings include: C<rpm>, C<deb>, C<ebuild>, C<pisi>, C<pacman>.  "
7949 "Future versions of libguestfs may return other strings."
7950 msgstr ""
7951
7952 #. type: =head2
7953 #: ../fish/guestfish-actions.pod:2049
7954 msgid "inspect-get-package-management"
7955 msgstr ""
7956
7957 #. type: verbatim
7958 #: ../fish/guestfish-actions.pod:2051
7959 #, no-wrap
7960 msgid ""
7961 " inspect-get-package-management root\n"
7962 "\n"
7963 msgstr ""
7964
7965 #. type: textblock
7966 #: ../fish/guestfish-actions.pod:2053
7967 msgid ""
7968 "L</inspect-get-package-format> and this function return the package format "
7969 "and package management tool used by the inspected operating system.  For "
7970 "example for Fedora these functions would return C<rpm> (package format) and "
7971 "C<yum> (package management)."
7972 msgstr ""
7973
7974 #. type: textblock
7975 #: ../fish/guestfish-actions.pod:2059 ../src/guestfs-actions.pod:3044
7976 msgid ""
7977 "This returns the string C<unknown> if we could not determine the package "
7978 "management tool I<or> if the operating system does not have a real packaging "
7979 "system (eg. Windows)."
7980 msgstr ""
7981
7982 #. type: textblock
7983 #: ../fish/guestfish-actions.pod:2063 ../src/guestfs-actions.pod:3048
7984 msgid ""
7985 "Possible strings include: C<yum>, C<up2date>, C<apt> (for all Debian "
7986 "derivatives), C<portage>, C<pisi>, C<pacman>, C<urpmi>.  Future versions of "
7987 "libguestfs may return other strings."
7988 msgstr ""
7989
7990 #. type: =head2
7991 #: ../fish/guestfish-actions.pod:2070
7992 msgid "inspect-get-product-name"
7993 msgstr ""
7994
7995 #. type: verbatim
7996 #: ../fish/guestfish-actions.pod:2072
7997 #, no-wrap
7998 msgid ""
7999 " inspect-get-product-name root\n"
8000 "\n"
8001 msgstr ""
8002
8003 #. type: textblock
8004 #: ../fish/guestfish-actions.pod:2074 ../src/guestfs-actions.pod:3066
8005 msgid ""
8006 "This returns the product name of the inspected operating system.  The "
8007 "product name is generally some freeform string which can be displayed to the "
8008 "user, but should not be parsed by programs."
8009 msgstr ""
8010
8011 #. type: textblock
8012 #: ../fish/guestfish-actions.pod:2079 ../src/guestfs-actions.pod:3071
8013 msgid ""
8014 "If the product name could not be determined, then the string C<unknown> is "
8015 "returned."
8016 msgstr ""
8017
8018 #. type: =head2
8019 #: ../fish/guestfish-actions.pod:2084
8020 msgid "inspect-get-product-variant"
8021 msgstr ""
8022
8023 #. type: verbatim
8024 #: ../fish/guestfish-actions.pod:2086
8025 #, no-wrap
8026 msgid ""
8027 " inspect-get-product-variant root\n"
8028 "\n"
8029 msgstr ""
8030
8031 #. type: textblock
8032 #: ../fish/guestfish-actions.pod:2088 ../src/guestfs-actions.pod:3087
8033 msgid "This returns the product variant of the inspected operating system."
8034 msgstr ""
8035
8036 #. type: textblock
8037 #: ../fish/guestfish-actions.pod:2091 ../src/guestfs-actions.pod:3090
8038 msgid ""
8039 "For Windows guests, this returns the contents of the Registry key "
8040 "C<HKLM\\Software\\Microsoft\\Windows NT\\CurrentVersion> C<InstallationType> "
8041 "which is usually a string such as C<Client> or C<Server> (other values are "
8042 "possible).  This can be used to distinguish consumer and enterprise versions "
8043 "of Windows that have the same version number (for example, Windows 7 and "
8044 "Windows 2008 Server are both version 6.1, but the former is C<Client> and "
8045 "the latter is C<Server>)."
8046 msgstr ""
8047
8048 #. type: textblock
8049 #: ../fish/guestfish-actions.pod:2100 ../src/guestfs-actions.pod:3099
8050 msgid ""
8051 "For enterprise Linux guests, in future we intend this to return the product "
8052 "variant such as C<Desktop>, C<Server> and so on.  But this is not "
8053 "implemented at present."
8054 msgstr ""
8055
8056 #. type: textblock
8057 #: ../fish/guestfish-actions.pod:2104 ../src/guestfs-actions.pod:3103
8058 msgid ""
8059 "If the product variant could not be determined, then the string C<unknown> "
8060 "is returned."
8061 msgstr ""
8062
8063 #. type: textblock
8064 #: ../fish/guestfish-actions.pod:2107
8065 msgid ""
8066 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
8067 "L</inspect-get-product-name>, L</inspect-get-major-version>."
8068 msgstr ""
8069
8070 #. type: =head2
8071 #: ../fish/guestfish-actions.pod:2111
8072 msgid "inspect-get-roots"
8073 msgstr ""
8074
8075 #. type: verbatim
8076 #: ../fish/guestfish-actions.pod:2113
8077 #, no-wrap
8078 msgid ""
8079 " inspect-get-roots\n"
8080 "\n"
8081 msgstr ""
8082
8083 #. type: textblock
8084 #: ../fish/guestfish-actions.pod:2115
8085 msgid ""
8086 "This function is a convenient way to get the list of root devices, as "
8087 "returned from a previous call to L</inspect-os>, but without redoing the "
8088 "whole inspection process."
8089 msgstr ""
8090
8091 #. type: textblock
8092 #: ../fish/guestfish-actions.pod:2119
8093 msgid ""
8094 "This returns an empty list if either no root devices were found or the "
8095 "caller has not called L</inspect-os>."
8096 msgstr ""
8097
8098 #. type: =head2
8099 #: ../fish/guestfish-actions.pod:2124
8100 msgid "inspect-get-type"
8101 msgstr ""
8102
8103 #. type: verbatim
8104 #: ../fish/guestfish-actions.pod:2126
8105 #, no-wrap
8106 msgid ""
8107 " inspect-get-type root\n"
8108 "\n"
8109 msgstr ""
8110
8111 #. type: textblock
8112 #: ../fish/guestfish-actions.pod:2128 ../src/guestfs-actions.pod:3141
8113 msgid ""
8114 "This returns the type of the inspected operating system.  Currently defined "
8115 "types are:"
8116 msgstr ""
8117
8118 #. type: =item
8119 #: ../fish/guestfish-actions.pod:2133 ../src/guestfs-actions.pod:3146
8120 msgid "\"linux\""
8121 msgstr ""
8122
8123 #. type: textblock
8124 #: ../fish/guestfish-actions.pod:2135 ../src/guestfs-actions.pod:3148
8125 msgid "Any Linux-based operating system."
8126 msgstr ""
8127
8128 #. type: textblock
8129 #: ../fish/guestfish-actions.pod:2139 ../src/guestfs-actions.pod:3152
8130 msgid "Any Microsoft Windows operating system."
8131 msgstr ""
8132
8133 #. type: =item
8134 #: ../fish/guestfish-actions.pod:2141 ../src/guestfs-actions.pod:3154
8135 msgid "\"freebsd\""
8136 msgstr ""
8137
8138 #. type: textblock
8139 #: ../fish/guestfish-actions.pod:2143 ../src/guestfs-actions.pod:3156
8140 msgid "FreeBSD."
8141 msgstr ""
8142
8143 #. type: textblock
8144 #: ../fish/guestfish-actions.pod:2147 ../src/guestfs-actions.pod:3160
8145 msgid "The operating system type could not be determined."
8146 msgstr ""
8147
8148 #. type: =head2
8149 #: ../fish/guestfish-actions.pod:2156
8150 msgid "inspect-get-windows-current-control-set"
8151 msgstr ""
8152
8153 #. type: verbatim
8154 #: ../fish/guestfish-actions.pod:2158
8155 #, no-wrap
8156 msgid ""
8157 " inspect-get-windows-current-control-set root\n"
8158 "\n"
8159 msgstr ""
8160
8161 #. type: textblock
8162 #: ../fish/guestfish-actions.pod:2160 ../src/guestfs-actions.pod:3180
8163 msgid ""
8164 "This returns the Windows CurrentControlSet of the inspected guest.  The "
8165 "CurrentControlSet is a registry key name such as C<ControlSet001>."
8166 msgstr ""
8167
8168 #. type: textblock
8169 #: ../fish/guestfish-actions.pod:2163 ../src/guestfs-actions.pod:3183
8170 msgid ""
8171 "This call assumes that the guest is Windows and that the Registry could be "
8172 "examined by inspection.  If this is not the case then an error is returned."
8173 msgstr ""
8174
8175 #. type: =head2
8176 #: ../fish/guestfish-actions.pod:2169
8177 msgid "inspect-get-windows-systemroot"
8178 msgstr ""
8179
8180 #. type: verbatim
8181 #: ../fish/guestfish-actions.pod:2171
8182 #, no-wrap
8183 msgid ""
8184 " inspect-get-windows-systemroot root\n"
8185 "\n"
8186 msgstr ""
8187
8188 #. type: textblock
8189 #: ../fish/guestfish-actions.pod:2173 ../src/guestfs-actions.pod:3200
8190 msgid ""
8191 "This returns the Windows systemroot of the inspected guest.  The systemroot "
8192 "is a directory path such as C</WINDOWS>."
8193 msgstr ""
8194
8195 #. type: textblock
8196 #: ../fish/guestfish-actions.pod:2176 ../src/guestfs-actions.pod:3203
8197 msgid ""
8198 "This call assumes that the guest is Windows and that the systemroot could be "
8199 "determined by inspection.  If this is not the case then an error is "
8200 "returned."
8201 msgstr ""
8202
8203 #. type: =head2
8204 #: ../fish/guestfish-actions.pod:2182
8205 msgid "inspect-is-live"
8206 msgstr ""
8207
8208 #. type: verbatim
8209 #: ../fish/guestfish-actions.pod:2184
8210 #, no-wrap
8211 msgid ""
8212 " inspect-is-live root\n"
8213 "\n"
8214 msgstr ""
8215
8216 #. type: textblock
8217 #: ../fish/guestfish-actions.pod:2186
8218 msgid ""
8219 "If L</inspect-get-format> returns C<installer> (this is an install disk), "
8220 "then this returns true if a live image was detected on the disk."
8221 msgstr ""
8222
8223 #. type: =head2
8224 #: ../fish/guestfish-actions.pod:2192
8225 msgid "inspect-is-multipart"
8226 msgstr ""
8227
8228 #. type: verbatim
8229 #: ../fish/guestfish-actions.pod:2194
8230 #, no-wrap
8231 msgid ""
8232 " inspect-is-multipart root\n"
8233 "\n"
8234 msgstr ""
8235
8236 #. type: textblock
8237 #: ../fish/guestfish-actions.pod:2196
8238 msgid ""
8239 "If L</inspect-get-format> returns C<installer> (this is an install disk), "
8240 "then this returns true if the disk is part of a set."
8241 msgstr ""
8242
8243 #. type: =head2
8244 #: ../fish/guestfish-actions.pod:2202
8245 msgid "inspect-is-netinst"
8246 msgstr ""
8247
8248 #. type: verbatim
8249 #: ../fish/guestfish-actions.pod:2204
8250 #, no-wrap
8251 msgid ""
8252 " inspect-is-netinst root\n"
8253 "\n"
8254 msgstr ""
8255
8256 #. type: textblock
8257 #: ../fish/guestfish-actions.pod:2206
8258 msgid ""
8259 "If L</inspect-get-format> returns C<installer> (this is an install disk), "
8260 "then this returns true if the disk is a network installer, ie. not a "
8261 "self-contained install CD but one which is likely to require network access "
8262 "to complete the install."
8263 msgstr ""
8264
8265 #. type: =head2
8266 #: ../fish/guestfish-actions.pod:2214
8267 msgid "inspect-list-applications"
8268 msgstr ""
8269
8270 #. type: verbatim
8271 #: ../fish/guestfish-actions.pod:2216
8272 #, no-wrap
8273 msgid ""
8274 " inspect-list-applications root\n"
8275 "\n"
8276 msgstr ""
8277
8278 #. type: textblock
8279 #: ../fish/guestfish-actions.pod:2218 ../src/guestfs-actions.pod:3270
8280 msgid "Return the list of applications installed in the operating system."
8281 msgstr ""
8282
8283 #. type: textblock
8284 #: ../fish/guestfish-actions.pod:2220
8285 msgid ""
8286 "I<Note:> This call works differently from other parts of the inspection "
8287 "API.  You have to call L</inspect-os>, then L</inspect-get-mountpoints>, "
8288 "then mount up the disks, before calling this.  Listing applications is a "
8289 "significantly more difficult operation which requires access to the full "
8290 "filesystem.  Also note that unlike the other L</inspect-get-*> calls which "
8291 "are just returning data cached in the libguestfs handle, this call actually "
8292 "reads parts of the mounted filesystems during the call."
8293 msgstr ""
8294
8295 #. type: textblock
8296 #: ../fish/guestfish-actions.pod:2230 ../src/guestfs-actions.pod:3282
8297 msgid ""
8298 "This returns an empty list if the inspection code was not able to determine "
8299 "the list of applications."
8300 msgstr ""
8301
8302 #. type: textblock
8303 #: ../fish/guestfish-actions.pod:2233 ../src/guestfs-actions.pod:3285
8304 msgid "The application structure contains the following fields:"
8305 msgstr ""
8306
8307 #. type: =item
8308 #: ../fish/guestfish-actions.pod:2237 ../src/guestfs-actions.pod:3289
8309 msgid "C<app_name>"
8310 msgstr ""
8311
8312 #. type: textblock
8313 #: ../fish/guestfish-actions.pod:2239 ../src/guestfs-actions.pod:3291
8314 msgid ""
8315 "The name of the application.  For Red Hat-derived and Debian-derived Linux "
8316 "guests, this is the package name."
8317 msgstr ""
8318
8319 #. type: =item
8320 #: ../fish/guestfish-actions.pod:2242 ../src/guestfs-actions.pod:3294
8321 msgid "C<app_display_name>"
8322 msgstr ""
8323
8324 #. type: textblock
8325 #: ../fish/guestfish-actions.pod:2244 ../src/guestfs-actions.pod:3296
8326 msgid ""
8327 "The display name of the application, sometimes localized to the install "
8328 "language of the guest operating system."
8329 msgstr ""
8330
8331 #. type: textblock
8332 #: ../fish/guestfish-actions.pod:2247 ../src/guestfs-actions.pod:3299
8333 msgid ""
8334 "If unavailable this is returned as an empty string C<\"\">.  Callers needing "
8335 "to display something can use C<app_name> instead."
8336 msgstr ""
8337
8338 #. type: =item
8339 #: ../fish/guestfish-actions.pod:2250 ../src/guestfs-actions.pod:3302
8340 msgid "C<app_epoch>"
8341 msgstr ""
8342
8343 #. type: textblock
8344 #: ../fish/guestfish-actions.pod:2252 ../src/guestfs-actions.pod:3304
8345 msgid ""
8346 "For package managers which use epochs, this contains the epoch of the "
8347 "package (an integer).  If unavailable, this is returned as C<0>."
8348 msgstr ""
8349
8350 #. type: =item
8351 #: ../fish/guestfish-actions.pod:2255 ../src/guestfs-actions.pod:3307
8352 msgid "C<app_version>"
8353 msgstr ""
8354
8355 #. type: textblock
8356 #: ../fish/guestfish-actions.pod:2257 ../src/guestfs-actions.pod:3309
8357 msgid ""
8358 "The version string of the application or package.  If unavailable this is "
8359 "returned as an empty string C<\"\">."
8360 msgstr ""
8361
8362 #. type: =item
8363 #: ../fish/guestfish-actions.pod:2260 ../src/guestfs-actions.pod:3312
8364 msgid "C<app_release>"
8365 msgstr ""
8366
8367 #. type: textblock
8368 #: ../fish/guestfish-actions.pod:2262 ../src/guestfs-actions.pod:3314
8369 msgid ""
8370 "The release string of the application or package, for package managers that "
8371 "use this.  If unavailable this is returned as an empty string C<\"\">."
8372 msgstr ""
8373
8374 #. type: =item
8375 #: ../fish/guestfish-actions.pod:2266 ../src/guestfs-actions.pod:3318
8376 msgid "C<app_install_path>"
8377 msgstr ""
8378
8379 #. type: textblock
8380 #: ../fish/guestfish-actions.pod:2268 ../src/guestfs-actions.pod:3320
8381 msgid ""
8382 "The installation path of the application (on operating systems such as "
8383 "Windows which use installation paths).  This path is in the format used by "
8384 "the guest operating system, it is not a libguestfs path."
8385 msgstr ""
8386
8387 #. type: textblock
8388 #: ../fish/guestfish-actions.pod:2273 ../src/guestfs-actions.pod:3325
8389 msgid "If unavailable this is returned as an empty string C<\"\">."
8390 msgstr ""
8391
8392 #. type: =item
8393 #: ../fish/guestfish-actions.pod:2275 ../src/guestfs-actions.pod:3327
8394 msgid "C<app_trans_path>"
8395 msgstr ""
8396
8397 #. type: textblock
8398 #: ../fish/guestfish-actions.pod:2277 ../src/guestfs-actions.pod:3329
8399 msgid ""
8400 "The install path translated into a libguestfs path.  If unavailable this is "
8401 "returned as an empty string C<\"\">."
8402 msgstr ""
8403
8404 #. type: =item
8405 #: ../fish/guestfish-actions.pod:2280 ../src/guestfs-actions.pod:3332
8406 msgid "C<app_publisher>"
8407 msgstr ""
8408
8409 #. type: textblock
8410 #: ../fish/guestfish-actions.pod:2282 ../src/guestfs-actions.pod:3334
8411 msgid ""
8412 "The name of the publisher of the application, for package managers that use "
8413 "this.  If unavailable this is returned as an empty string C<\"\">."
8414 msgstr ""
8415
8416 #. type: =item
8417 #: ../fish/guestfish-actions.pod:2286 ../src/guestfs-actions.pod:3338
8418 msgid "C<app_url>"
8419 msgstr ""
8420
8421 #. type: textblock
8422 #: ../fish/guestfish-actions.pod:2288 ../src/guestfs-actions.pod:3340
8423 msgid ""
8424 "The URL (eg. upstream URL) of the application.  If unavailable this is "
8425 "returned as an empty string C<\"\">."
8426 msgstr ""
8427
8428 #. type: =item
8429 #: ../fish/guestfish-actions.pod:2291 ../src/guestfs-actions.pod:3343
8430 msgid "C<app_source_package>"
8431 msgstr ""
8432
8433 #. type: textblock
8434 #: ../fish/guestfish-actions.pod:2293 ../src/guestfs-actions.pod:3345
8435 msgid ""
8436 "For packaging systems which support this, the name of the source package.  "
8437 "If unavailable this is returned as an empty string C<\"\">."
8438 msgstr ""
8439
8440 #. type: =item
8441 #: ../fish/guestfish-actions.pod:2296 ../src/guestfs-actions.pod:3348
8442 msgid "C<app_summary>"
8443 msgstr ""
8444
8445 #. type: textblock
8446 #: ../fish/guestfish-actions.pod:2298 ../src/guestfs-actions.pod:3350
8447 msgid ""
8448 "A short (usually one line) description of the application or package.  If "
8449 "unavailable this is returned as an empty string C<\"\">."
8450 msgstr ""
8451
8452 #. type: =item
8453 #: ../fish/guestfish-actions.pod:2301 ../src/guestfs-actions.pod:3353
8454 msgid "C<app_description>"
8455 msgstr ""
8456
8457 #. type: textblock
8458 #: ../fish/guestfish-actions.pod:2303 ../src/guestfs-actions.pod:3355
8459 msgid ""
8460 "A longer description of the application or package.  If unavailable this is "
8461 "returned as an empty string C<\"\">."
8462 msgstr ""
8463
8464 #. type: =head2
8465 #: ../fish/guestfish-actions.pod:2310
8466 msgid "inspect-os"
8467 msgstr ""
8468
8469 #. type: verbatim
8470 #: ../fish/guestfish-actions.pod:2312
8471 #, no-wrap
8472 msgid ""
8473 " inspect-os\n"
8474 "\n"
8475 msgstr ""
8476
8477 #. type: textblock
8478 #: ../fish/guestfish-actions.pod:2314 ../src/guestfs-actions.pod:3373
8479 msgid ""
8480 "This function uses other libguestfs functions and certain heuristics to "
8481 "inspect the disk(s) (usually disks belonging to a virtual machine), looking "
8482 "for operating systems."
8483 msgstr ""
8484
8485 #. type: textblock
8486 #: ../fish/guestfish-actions.pod:2318 ../src/guestfs-actions.pod:3377
8487 msgid "The list returned is empty if no operating systems were found."
8488 msgstr ""
8489
8490 #. type: textblock
8491 #: ../fish/guestfish-actions.pod:2320 ../src/guestfs-actions.pod:3379
8492 msgid ""
8493 "If one operating system was found, then this returns a list with a single "
8494 "element, which is the name of the root filesystem of this operating system.  "
8495 "It is also possible for this function to return a list containing more than "
8496 "one element, indicating a dual-boot or multi-boot virtual machine, with each "
8497 "element being the root filesystem of one of the operating systems."
8498 msgstr ""
8499
8500 #. type: textblock
8501 #: ../fish/guestfish-actions.pod:2327
8502 msgid ""
8503 "You can pass the root string(s) returned to other L</inspect-get-*> "
8504 "functions in order to query further information about each operating system, "
8505 "such as the name and version."
8506 msgstr ""
8507
8508 #. type: textblock
8509 #: ../fish/guestfish-actions.pod:2332
8510 msgid ""
8511 "This function uses other libguestfs features such as L</mount-ro> and "
8512 "L</umount-all> in order to mount and unmount filesystems and look at the "
8513 "contents.  This should be called with no disks currently mounted.  The "
8514 "function may also use Augeas, so any existing Augeas handle will be closed."
8515 msgstr ""
8516
8517 #. type: textblock
8518 #: ../fish/guestfish-actions.pod:2338 ../src/guestfs-actions.pod:3397
8519 msgid ""
8520 "This function cannot decrypt encrypted disks.  The caller must do that first "
8521 "(supplying the necessary keys) if the disk is encrypted."
8522 msgstr ""
8523
8524 #. type: textblock
8525 #: ../fish/guestfish-actions.pod:2344 ../fish/guestfish-actions.pod:2542 ../fish/guestfish-actions.pod:2601
8526 msgid "See also L</list-filesystems>."
8527 msgstr ""
8528
8529 #. type: =head2
8530 #: ../fish/guestfish-actions.pod:2346
8531 msgid "is-blockdev"
8532 msgstr ""
8533
8534 #. type: verbatim
8535 #: ../fish/guestfish-actions.pod:2348
8536 #, no-wrap
8537 msgid ""
8538 " is-blockdev path\n"
8539 "\n"
8540 msgstr ""
8541
8542 #. type: textblock
8543 #: ../fish/guestfish-actions.pod:2350 ../src/guestfs-actions.pod:3417
8544 msgid ""
8545 "This returns C<true> if and only if there is a block device with the given "
8546 "C<path> name."
8547 msgstr ""
8548
8549 #. type: textblock
8550 #: ../fish/guestfish-actions.pod:2353 ../fish/guestfish-actions.pod:2371 ../fish/guestfish-actions.pod:2390 ../fish/guestfish-actions.pod:2399 ../fish/guestfish-actions.pod:2409 ../fish/guestfish-actions.pod:2443 ../fish/guestfish-actions.pod:2452
8551 msgid "See also L</stat>."
8552 msgstr ""
8553
8554 #. type: =head2
8555 #: ../fish/guestfish-actions.pod:2355
8556 msgid "is-busy"
8557 msgstr ""
8558
8559 #. type: verbatim
8560 #: ../fish/guestfish-actions.pod:2357
8561 #, no-wrap
8562 msgid ""
8563 " is-busy\n"
8564 "\n"
8565 msgstr ""
8566
8567 #. type: textblock
8568 #: ../fish/guestfish-actions.pod:2359 ../src/guestfs-actions.pod:3431
8569 msgid ""
8570 "This returns true iff this handle is busy processing a command (in the "
8571 "C<BUSY> state)."
8572 msgstr ""
8573
8574 #. type: =head2
8575 #: ../fish/guestfish-actions.pod:2364
8576 msgid "is-chardev"
8577 msgstr ""
8578
8579 #. type: verbatim
8580 #: ../fish/guestfish-actions.pod:2366
8581 #, no-wrap
8582 msgid ""
8583 " is-chardev path\n"
8584 "\n"
8585 msgstr ""
8586
8587 #. type: textblock
8588 #: ../fish/guestfish-actions.pod:2368 ../src/guestfs-actions.pod:3446
8589 msgid ""
8590 "This returns C<true> if and only if there is a character device with the "
8591 "given C<path> name."
8592 msgstr ""
8593
8594 #. type: =head2
8595 #: ../fish/guestfish-actions.pod:2373
8596 msgid "is-config"
8597 msgstr ""
8598
8599 #. type: verbatim
8600 #: ../fish/guestfish-actions.pod:2375
8601 #, no-wrap
8602 msgid ""
8603 " is-config\n"
8604 "\n"
8605 msgstr ""
8606
8607 #. type: textblock
8608 #: ../fish/guestfish-actions.pod:2377 ../src/guestfs-actions.pod:3460
8609 msgid ""
8610 "This returns true iff this handle is being configured (in the C<CONFIG> "
8611 "state)."
8612 msgstr ""
8613
8614 #. type: =head2
8615 #: ../fish/guestfish-actions.pod:2382
8616 msgid "is-dir"
8617 msgstr ""
8618
8619 #. type: verbatim
8620 #: ../fish/guestfish-actions.pod:2384
8621 #, no-wrap
8622 msgid ""
8623 " is-dir path\n"
8624 "\n"
8625 msgstr ""
8626
8627 #. type: textblock
8628 #: ../fish/guestfish-actions.pod:2386 ../src/guestfs-actions.pod:3475
8629 msgid ""
8630 "This returns C<true> if and only if there is a directory with the given "
8631 "C<path> name.  Note that it returns false for other objects like files."
8632 msgstr ""
8633
8634 #. type: =head2
8635 #: ../fish/guestfish-actions.pod:2392
8636 msgid "is-fifo"
8637 msgstr ""
8638
8639 #. type: verbatim
8640 #: ../fish/guestfish-actions.pod:2394
8641 #, no-wrap
8642 msgid ""
8643 " is-fifo path\n"
8644 "\n"
8645 msgstr ""
8646
8647 #. type: textblock
8648 #: ../fish/guestfish-actions.pod:2396 ../src/guestfs-actions.pod:3491
8649 msgid ""
8650 "This returns C<true> if and only if there is a FIFO (named pipe)  with the "
8651 "given C<path> name."
8652 msgstr ""
8653
8654 #. type: =head2
8655 #: ../fish/guestfish-actions.pod:2401
8656 msgid "is-file"
8657 msgstr ""
8658
8659 #. type: verbatim
8660 #: ../fish/guestfish-actions.pod:2403
8661 #, no-wrap
8662 msgid ""
8663 " is-file path\n"
8664 "\n"
8665 msgstr ""
8666
8667 #. type: textblock
8668 #: ../fish/guestfish-actions.pod:2405 ../src/guestfs-actions.pod:3506
8669 msgid ""
8670 "This returns C<true> if and only if there is a regular file with the given "
8671 "C<path> name.  Note that it returns false for other objects like "
8672 "directories."
8673 msgstr ""
8674
8675 #. type: =head2
8676 #: ../fish/guestfish-actions.pod:2411
8677 msgid "is-launching"
8678 msgstr ""
8679
8680 #. type: verbatim
8681 #: ../fish/guestfish-actions.pod:2413
8682 #, no-wrap
8683 msgid ""
8684 " is-launching\n"
8685 "\n"
8686 msgstr ""
8687
8688 #. type: textblock
8689 #: ../fish/guestfish-actions.pod:2415 ../src/guestfs-actions.pod:3521
8690 msgid ""
8691 "This returns true iff this handle is launching the subprocess (in the "
8692 "C<LAUNCHING> state)."
8693 msgstr ""
8694
8695 #. type: =head2
8696 #: ../fish/guestfish-actions.pod:2420
8697 msgid "is-lv"
8698 msgstr ""
8699
8700 #. type: verbatim
8701 #: ../fish/guestfish-actions.pod:2422
8702 #, no-wrap
8703 msgid ""
8704 " is-lv device\n"
8705 "\n"
8706 msgstr ""
8707
8708 #. type: textblock
8709 #: ../fish/guestfish-actions.pod:2424 ../src/guestfs-actions.pod:3536
8710 msgid ""
8711 "This command tests whether C<device> is a logical volume, and returns true "
8712 "iff this is the case."
8713 msgstr ""
8714
8715 #. type: =head2
8716 #: ../fish/guestfish-actions.pod:2427
8717 msgid "is-ready"
8718 msgstr ""
8719
8720 #. type: verbatim
8721 #: ../fish/guestfish-actions.pod:2429
8722 #, no-wrap
8723 msgid ""
8724 " is-ready\n"
8725 "\n"
8726 msgstr ""
8727
8728 #. type: textblock
8729 #: ../fish/guestfish-actions.pod:2431 ../src/guestfs-actions.pod:3548
8730 msgid ""
8731 "This returns true iff this handle is ready to accept commands (in the "
8732 "C<READY> state)."
8733 msgstr ""
8734
8735 #. type: =head2
8736 #: ../fish/guestfish-actions.pod:2436
8737 msgid "is-socket"
8738 msgstr ""
8739
8740 #. type: verbatim
8741 #: ../fish/guestfish-actions.pod:2438
8742 #, no-wrap
8743 msgid ""
8744 " is-socket path\n"
8745 "\n"
8746 msgstr ""
8747
8748 #. type: textblock
8749 #: ../fish/guestfish-actions.pod:2440 ../src/guestfs-actions.pod:3563
8750 msgid ""
8751 "This returns C<true> if and only if there is a Unix domain socket with the "
8752 "given C<path> name."
8753 msgstr ""
8754
8755 #. type: =head2
8756 #: ../fish/guestfish-actions.pod:2445
8757 msgid "is-symlink"
8758 msgstr ""
8759
8760 #. type: verbatim
8761 #: ../fish/guestfish-actions.pod:2447
8762 #, no-wrap
8763 msgid ""
8764 " is-symlink path\n"
8765 "\n"
8766 msgstr ""
8767
8768 #. type: textblock
8769 #: ../fish/guestfish-actions.pod:2449 ../src/guestfs-actions.pod:3578
8770 msgid ""
8771 "This returns C<true> if and only if there is a symbolic link with the given "
8772 "C<path> name."
8773 msgstr ""
8774
8775 #. type: =head2
8776 #: ../fish/guestfish-actions.pod:2454
8777 msgid "is-zero"
8778 msgstr ""
8779
8780 #. type: verbatim
8781 #: ../fish/guestfish-actions.pod:2456
8782 #, no-wrap
8783 msgid ""
8784 " is-zero path\n"
8785 "\n"
8786 msgstr ""
8787
8788 #. type: textblock
8789 #: ../fish/guestfish-actions.pod:2458 ../src/guestfs-actions.pod:3593
8790 msgid ""
8791 "This returns true iff the file exists and the file is empty or it contains "
8792 "all zero bytes."
8793 msgstr ""
8794
8795 #. type: =head2
8796 #: ../fish/guestfish-actions.pod:2461
8797 msgid "is-zero-device"
8798 msgstr ""
8799
8800 #. type: verbatim
8801 #: ../fish/guestfish-actions.pod:2463
8802 #, no-wrap
8803 msgid ""
8804 " is-zero-device device\n"
8805 "\n"
8806 msgstr ""
8807
8808 #. type: textblock
8809 #: ../fish/guestfish-actions.pod:2465 ../src/guestfs-actions.pod:3606
8810 msgid "This returns true iff the device exists and contains all zero bytes."
8811 msgstr ""
8812
8813 #. type: textblock
8814 #: ../fish/guestfish-actions.pod:2467 ../src/guestfs-actions.pod:3608
8815 msgid "Note that for large devices this can take a long time to run."
8816 msgstr ""
8817
8818 #. type: =head2
8819 #: ../fish/guestfish-actions.pod:2469
8820 msgid "kill-subprocess"
8821 msgstr ""
8822
8823 #. type: verbatim
8824 #: ../fish/guestfish-actions.pod:2471
8825 #, no-wrap
8826 msgid ""
8827 " kill-subprocess\n"
8828 "\n"
8829 msgstr ""
8830
8831 #. type: textblock
8832 #: ../fish/guestfish-actions.pod:2473 ../src/guestfs-actions.pod:3619
8833 msgid "This kills the qemu subprocess.  You should never need to call this."
8834 msgstr ""
8835
8836 #. type: =head2
8837 #: ../fish/guestfish-actions.pod:2475
8838 msgid "launch"
8839 msgstr ""
8840
8841 #. type: =head2
8842 #: ../fish/guestfish-actions.pod:2477
8843 msgid "run"
8844 msgstr ""
8845
8846 #. type: verbatim
8847 #: ../fish/guestfish-actions.pod:2479
8848 #, no-wrap
8849 msgid ""
8850 " launch\n"
8851 "\n"
8852 msgstr ""
8853
8854 #. type: textblock
8855 #: ../fish/guestfish-actions.pod:2481 ../src/guestfs-actions.pod:3630
8856 msgid ""
8857 "Internally libguestfs is implemented by running a virtual machine using "
8858 "L<qemu(1)>."
8859 msgstr ""
8860
8861 #. type: textblock
8862 #: ../fish/guestfish-actions.pod:2484 ../src/guestfs-actions.pod:3633
8863 msgid ""
8864 "You should call this after configuring the handle (eg. adding drives) but "
8865 "before performing any actions."
8866 msgstr ""
8867
8868 #. type: =head2
8869 #: ../fish/guestfish-actions.pod:2487
8870 msgid "lchown"
8871 msgstr ""
8872
8873 #. type: verbatim
8874 #: ../fish/guestfish-actions.pod:2489
8875 #, no-wrap
8876 msgid ""
8877 " lchown owner group path\n"
8878 "\n"
8879 msgstr ""
8880
8881 #. type: textblock
8882 #: ../fish/guestfish-actions.pod:2491
8883 msgid ""
8884 "Change the file owner to C<owner> and group to C<group>.  This is like "
8885 "L</chown> but if C<path> is a symlink then the link itself is changed, not "
8886 "the target."
8887 msgstr ""
8888
8889 #. type: =head2
8890 #: ../fish/guestfish-actions.pod:2499
8891 msgid "lgetxattr"
8892 msgstr ""
8893
8894 #. type: verbatim
8895 #: ../fish/guestfish-actions.pod:2501
8896 #, no-wrap
8897 msgid ""
8898 " lgetxattr path name\n"
8899 "\n"
8900 msgstr ""
8901
8902 #. type: textblock
8903 #: ../fish/guestfish-actions.pod:2503 ../src/guestfs-actions.pod:3673
8904 msgid ""
8905 "Get a single extended attribute from file C<path> named C<name>.  If C<path> "
8906 "is a symlink, then this call returns an extended attribute from the symlink."
8907 msgstr ""
8908
8909 #. type: textblock
8910 #: ../fish/guestfish-actions.pod:2517
8911 msgid "See also: L</lgetxattrs>, L</getxattr>, L<attr(5)>."
8912 msgstr ""
8913
8914 #. type: =head2
8915 #: ../fish/guestfish-actions.pod:2519
8916 msgid "lgetxattrs"
8917 msgstr ""
8918
8919 #. type: verbatim
8920 #: ../fish/guestfish-actions.pod:2521
8921 #, no-wrap
8922 msgid ""
8923 " lgetxattrs path\n"
8924 "\n"
8925 msgstr ""
8926
8927 #. type: textblock
8928 #: ../fish/guestfish-actions.pod:2523
8929 msgid ""
8930 "This is the same as L</getxattrs>, but if C<path> is a symbolic link, then "
8931 "it returns the extended attributes of the link itself."
8932 msgstr ""
8933
8934 #. type: =head2
8935 #: ../fish/guestfish-actions.pod:2527
8936 msgid "list-9p"
8937 msgstr ""
8938
8939 #. type: verbatim
8940 #: ../fish/guestfish-actions.pod:2529
8941 #, no-wrap
8942 msgid ""
8943 " list-9p\n"
8944 "\n"
8945 msgstr ""
8946
8947 #. type: textblock
8948 #: ../fish/guestfish-actions.pod:2531 ../src/guestfs-actions.pod:3716
8949 msgid ""
8950 "List all 9p filesystems attached to the guest.  A list of mount tags is "
8951 "returned."
8952 msgstr ""
8953
8954 #. type: =head2
8955 #: ../fish/guestfish-actions.pod:2534
8956 msgid "list-devices"
8957 msgstr ""
8958
8959 #. type: verbatim
8960 #: ../fish/guestfish-actions.pod:2536
8961 #, no-wrap
8962 msgid ""
8963 " list-devices\n"
8964 "\n"
8965 msgstr ""
8966
8967 #. type: textblock
8968 #: ../fish/guestfish-actions.pod:2538 ../src/guestfs-actions.pod:3730
8969 msgid "List all the block devices."
8970 msgstr ""
8971
8972 #. type: textblock
8973 #: ../fish/guestfish-actions.pod:2540 ../src/guestfs-actions.pod:3732
8974 msgid "The full block device names are returned, eg. C</dev/sda>."
8975 msgstr ""
8976
8977 #. type: =head2
8978 #: ../fish/guestfish-actions.pod:2544
8979 msgid "list-dm-devices"
8980 msgstr ""
8981
8982 #. type: verbatim
8983 #: ../fish/guestfish-actions.pod:2546
8984 #, no-wrap
8985 msgid ""
8986 " list-dm-devices\n"
8987 "\n"
8988 msgstr ""
8989
8990 #. type: textblock
8991 #: ../fish/guestfish-actions.pod:2548 ../src/guestfs-actions.pod:3747
8992 msgid "List all device mapper devices."
8993 msgstr ""
8994
8995 #. type: textblock
8996 #: ../fish/guestfish-actions.pod:2550
8997 msgid ""
8998 "The returned list contains C</dev/mapper/*> devices, eg. ones created by a "
8999 "previous call to L</luks-open>."
9000 msgstr ""
9001
9002 #. type: textblock
9003 #: ../fish/guestfish-actions.pod:2553
9004 msgid ""
9005 "Device mapper devices which correspond to logical volumes are I<not> "
9006 "returned in this list.  Call L</lvs> if you want to list logical volumes."
9007 msgstr ""
9008
9009 #. type: =head2
9010 #: ../fish/guestfish-actions.pod:2557
9011 msgid "list-filesystems"
9012 msgstr ""
9013
9014 #. type: verbatim
9015 #: ../fish/guestfish-actions.pod:2559
9016 #, no-wrap
9017 msgid ""
9018 " list-filesystems\n"
9019 "\n"
9020 msgstr ""
9021
9022 #. type: textblock
9023 #: ../fish/guestfish-actions.pod:2561 ../src/guestfs-actions.pod:3767
9024 msgid ""
9025 "This inspection command looks for filesystems on partitions, block devices "
9026 "and logical volumes, returning a list of devices containing filesystems and "
9027 "their type."
9028 msgstr ""
9029
9030 #. type: textblock
9031 #: ../fish/guestfish-actions.pod:2565 ../src/guestfs-actions.pod:3771
9032 msgid ""
9033 "The return value is a hash, where the keys are the devices containing "
9034 "filesystems, and the values are the filesystem types.  For example:"
9035 msgstr ""
9036
9037 #. type: verbatim
9038 #: ../fish/guestfish-actions.pod:2569 ../src/guestfs-actions.pod:3775
9039 #, no-wrap
9040 msgid ""
9041 " \"/dev/sda1\" => \"ntfs\"\n"
9042 " \"/dev/sda2\" => \"ext2\"\n"
9043 " \"/dev/vg_guest/lv_root\" => \"ext4\"\n"
9044 " \"/dev/vg_guest/lv_swap\" => \"swap\"\n"
9045 "\n"
9046 msgstr ""
9047
9048 #. type: textblock
9049 #: ../fish/guestfish-actions.pod:2574 ../src/guestfs-actions.pod:3780
9050 msgid ""
9051 "The value can have the special value \"unknown\", meaning the content of the "
9052 "device is undetermined or empty.  \"swap\" means a Linux swap partition."
9053 msgstr ""
9054
9055 #. type: textblock
9056 #: ../fish/guestfish-actions.pod:2578
9057 msgid ""
9058 "This command runs other libguestfs commands, which might include L</mount> "
9059 "and L</umount>, and therefore you should use this soon after launch and only "
9060 "when nothing is mounted."
9061 msgstr ""
9062
9063 #. type: textblock
9064 #: ../fish/guestfish-actions.pod:2582
9065 msgid ""
9066 "Not all of the filesystems returned will be mountable.  In particular, swap "
9067 "partitions are returned in the list.  Also this command does not check that "
9068 "each filesystem found is valid and mountable, and some filesystems might be "
9069 "mountable but require special options.  Filesystems may not all belong to a "
9070 "single logical operating system (use L</inspect-os> to look for OSes)."
9071 msgstr ""
9072
9073 #. type: =head2
9074 #: ../fish/guestfish-actions.pod:2590
9075 msgid "list-partitions"
9076 msgstr ""
9077
9078 #. type: verbatim
9079 #: ../fish/guestfish-actions.pod:2592
9080 #, no-wrap
9081 msgid ""
9082 " list-partitions\n"
9083 "\n"
9084 msgstr ""
9085
9086 #. type: textblock
9087 #: ../fish/guestfish-actions.pod:2594 ../src/guestfs-actions.pod:3809
9088 msgid "List all the partitions detected on all block devices."
9089 msgstr ""
9090
9091 #. type: textblock
9092 #: ../fish/guestfish-actions.pod:2596 ../src/guestfs-actions.pod:3811
9093 msgid "The full partition device names are returned, eg. C</dev/sda1>"
9094 msgstr ""
9095
9096 #. type: textblock
9097 #: ../fish/guestfish-actions.pod:2598
9098 msgid ""
9099 "This does not return logical volumes.  For that you will need to call "
9100 "L</lvs>."
9101 msgstr ""
9102
9103 #. type: =head2
9104 #: ../fish/guestfish-actions.pod:2603
9105 msgid "ll"
9106 msgstr ""
9107
9108 #. type: verbatim
9109 #: ../fish/guestfish-actions.pod:2605
9110 #, no-wrap
9111 msgid ""
9112 " ll directory\n"
9113 "\n"
9114 msgstr ""
9115
9116 #. type: textblock
9117 #: ../fish/guestfish-actions.pod:2607 ../src/guestfs-actions.pod:3830
9118 msgid ""
9119 "List the files in C<directory> (relative to the root directory, there is no "
9120 "cwd) in the format of 'ls -la'."
9121 msgstr ""
9122
9123 #. type: textblock
9124 #: ../fish/guestfish-actions.pod:2610 ../src/guestfs-actions.pod:3833
9125 msgid ""
9126 "This command is mostly useful for interactive sessions.  It is I<not> "
9127 "intended that you try to parse the output string."
9128 msgstr ""
9129
9130 #. type: =head2
9131 #: ../fish/guestfish-actions.pod:2613
9132 msgid "ln"
9133 msgstr ""
9134
9135 #. type: verbatim
9136 #: ../fish/guestfish-actions.pod:2615
9137 #, no-wrap
9138 msgid ""
9139 " ln target linkname\n"
9140 "\n"
9141 msgstr ""
9142
9143 #. type: textblock
9144 #: ../fish/guestfish-actions.pod:2617 ../src/guestfs-actions.pod:3848
9145 msgid "This command creates a hard link using the C<ln> command."
9146 msgstr ""
9147
9148 #. type: =head2
9149 #: ../fish/guestfish-actions.pod:2619
9150 msgid "ln-f"
9151 msgstr ""
9152
9153 #. type: verbatim
9154 #: ../fish/guestfish-actions.pod:2621
9155 #, no-wrap
9156 msgid ""
9157 " ln-f target linkname\n"
9158 "\n"
9159 msgstr ""
9160
9161 #. type: textblock
9162 #: ../fish/guestfish-actions.pod:2623 ../src/guestfs-actions.pod:3861
9163 msgid ""
9164 "This command creates a hard link using the C<ln -f> command.  The I<-f> "
9165 "option removes the link (C<linkname>) if it exists already."
9166 msgstr ""
9167
9168 #. type: =head2
9169 #: ../fish/guestfish-actions.pod:2626
9170 msgid "ln-s"
9171 msgstr ""
9172
9173 #. type: verbatim
9174 #: ../fish/guestfish-actions.pod:2628
9175 #, no-wrap
9176 msgid ""
9177 " ln-s target linkname\n"
9178 "\n"
9179 msgstr ""
9180
9181 #. type: textblock
9182 #: ../fish/guestfish-actions.pod:2630 ../src/guestfs-actions.pod:3875
9183 msgid "This command creates a symbolic link using the C<ln -s> command."
9184 msgstr ""
9185
9186 #. type: =head2
9187 #: ../fish/guestfish-actions.pod:2632
9188 msgid "ln-sf"
9189 msgstr ""
9190
9191 #. type: verbatim
9192 #: ../fish/guestfish-actions.pod:2634
9193 #, no-wrap
9194 msgid ""
9195 " ln-sf target linkname\n"
9196 "\n"
9197 msgstr ""
9198
9199 #. type: textblock
9200 #: ../fish/guestfish-actions.pod:2636 ../src/guestfs-actions.pod:3888
9201 msgid ""
9202 "This command creates a symbolic link using the C<ln -sf> command, The I<-f> "
9203 "option removes the link (C<linkname>) if it exists already."
9204 msgstr ""
9205
9206 #. type: =head2
9207 #: ../fish/guestfish-actions.pod:2639
9208 msgid "lremovexattr"
9209 msgstr ""
9210
9211 #. type: verbatim
9212 #: ../fish/guestfish-actions.pod:2641
9213 #, no-wrap
9214 msgid ""
9215 " lremovexattr xattr path\n"
9216 "\n"
9217 msgstr ""
9218
9219 #. type: textblock
9220 #: ../fish/guestfish-actions.pod:2643
9221 msgid ""
9222 "This is the same as L</removexattr>, but if C<path> is a symbolic link, then "
9223 "it removes an extended attribute of the link itself."
9224 msgstr ""
9225
9226 #. type: =head2
9227 #: ../fish/guestfish-actions.pod:2647
9228 msgid "ls"
9229 msgstr ""
9230
9231 #. type: verbatim
9232 #: ../fish/guestfish-actions.pod:2649
9233 #, no-wrap
9234 msgid ""
9235 " ls directory\n"
9236 "\n"
9237 msgstr ""
9238
9239 #. type: textblock
9240 #: ../fish/guestfish-actions.pod:2651 ../src/guestfs-actions.pod:3916
9241 msgid ""
9242 "List the files in C<directory> (relative to the root directory, there is no "
9243 "cwd).  The '.' and '..' entries are not returned, but hidden files are "
9244 "shown."
9245 msgstr ""
9246
9247 #. type: textblock
9248 #: ../fish/guestfish-actions.pod:2655
9249 msgid ""
9250 "This command is mostly useful for interactive sessions.  Programs should "
9251 "probably use L</readdir> instead."
9252 msgstr ""
9253
9254 #. type: =head2
9255 #: ../fish/guestfish-actions.pod:2658
9256 msgid "lsetxattr"
9257 msgstr ""
9258
9259 #. type: verbatim
9260 #: ../fish/guestfish-actions.pod:2660
9261 #, no-wrap
9262 msgid ""
9263 " lsetxattr xattr val vallen path\n"
9264 "\n"
9265 msgstr ""
9266
9267 #. type: textblock
9268 #: ../fish/guestfish-actions.pod:2662
9269 msgid ""
9270 "This is the same as L</setxattr>, but if C<path> is a symbolic link, then it "
9271 "sets an extended attribute of the link itself."
9272 msgstr ""
9273
9274 #. type: =head2
9275 #: ../fish/guestfish-actions.pod:2666
9276 msgid "lstat"
9277 msgstr ""
9278
9279 #. type: verbatim
9280 #: ../fish/guestfish-actions.pod:2668
9281 #, no-wrap
9282 msgid ""
9283 " lstat path\n"
9284 "\n"
9285 msgstr ""
9286
9287 #. type: textblock
9288 #: ../fish/guestfish-actions.pod:2670 ../fish/guestfish-actions.pod:4478 ../src/guestfs-actions.pod:3952 ../src/guestfs-actions.pod:6731
9289 msgid "Returns file information for the given C<path>."
9290 msgstr ""
9291
9292 #. type: textblock
9293 #: ../fish/guestfish-actions.pod:2672
9294 msgid ""
9295 "This is the same as L</stat> except that if C<path> is a symbolic link, then "
9296 "the link is stat-ed, not the file it refers to."
9297 msgstr ""
9298
9299 #. type: textblock
9300 #: ../fish/guestfish-actions.pod:2676 ../src/guestfs-actions.pod:3958
9301 msgid "This is the same as the C<lstat(2)> system call."
9302 msgstr ""
9303
9304 #. type: =head2
9305 #: ../fish/guestfish-actions.pod:2678
9306 msgid "lstatlist"
9307 msgstr ""
9308
9309 #. type: verbatim
9310 #: ../fish/guestfish-actions.pod:2680
9311 #, no-wrap
9312 msgid ""
9313 " lstatlist path 'names ...'\n"
9314 "\n"
9315 msgstr ""
9316
9317 #. type: textblock
9318 #: ../fish/guestfish-actions.pod:2682
9319 msgid ""
9320 "This call allows you to perform the L</lstat> operation on multiple files, "
9321 "where all files are in the directory C<path>.  C<names> is the list of files "
9322 "from this directory."
9323 msgstr ""
9324
9325 #. type: textblock
9326 #: ../fish/guestfish-actions.pod:2686 ../src/guestfs-actions.pod:3977
9327 msgid ""
9328 "On return you get a list of stat structs, with a one-to-one correspondence "
9329 "to the C<names> list.  If any name did not exist or could not be lstat'd, "
9330 "then the C<ino> field of that structure is set to C<-1>."
9331 msgstr ""
9332
9333 #. type: textblock
9334 #: ../fish/guestfish-actions.pod:2691
9335 msgid ""
9336 "This call is intended for programs that want to efficiently list a directory "
9337 "contents without making many round-trips.  See also L</lxattrlist> for a "
9338 "similarly efficient call for getting extended attributes.  Very long "
9339 "directory listings might cause the protocol message size to be exceeded, "
9340 "causing this call to fail.  The caller must split up such requests into "
9341 "smaller groups of names."
9342 msgstr ""
9343
9344 #. type: =head2
9345 #: ../fish/guestfish-actions.pod:2699
9346 msgid "luks-add-key"
9347 msgstr ""
9348
9349 #. type: verbatim
9350 #: ../fish/guestfish-actions.pod:2701
9351 #, no-wrap
9352 msgid ""
9353 " luks-add-key device keyslot\n"
9354 "\n"
9355 msgstr ""
9356
9357 #. type: textblock
9358 #: ../fish/guestfish-actions.pod:2703 ../src/guestfs-actions.pod:4005
9359 msgid ""
9360 "This command adds a new key on LUKS device C<device>.  C<key> is any "
9361 "existing key, and is used to access the device.  C<newkey> is the new key to "
9362 "add.  C<keyslot> is the key slot that will be replaced."
9363 msgstr ""
9364
9365 #. type: textblock
9366 #: ../fish/guestfish-actions.pod:2708
9367 msgid ""
9368 "Note that if C<keyslot> already contains a key, then this command will "
9369 "fail.  You have to use L</luks-kill-slot> first to remove that key."
9370 msgstr ""
9371
9372 #. type: textblock
9373 #: ../fish/guestfish-actions.pod:2712 ../fish/guestfish-actions.pod:2734 ../fish/guestfish-actions.pod:2747 ../fish/guestfish-actions.pod:2761 ../fish/guestfish-actions.pod:2787 ../fish/guestfish-actions.pod:2797
9374 msgid ""
9375 "This command has one or more key or passphrase parameters.  Guestfish will "
9376 "prompt for these separately."
9377 msgstr ""
9378
9379 #. type: =head2
9380 #: ../fish/guestfish-actions.pod:2715
9381 msgid "luks-close"
9382 msgstr ""
9383
9384 #. type: verbatim
9385 #: ../fish/guestfish-actions.pod:2717
9386 #, no-wrap
9387 msgid ""
9388 " luks-close device\n"
9389 "\n"
9390 msgstr ""
9391
9392 #. type: textblock
9393 #: ../fish/guestfish-actions.pod:2719
9394 msgid ""
9395 "This closes a LUKS device that was created earlier by L</luks-open> or "
9396 "L</luks-open-ro>.  The C<device> parameter must be the name of the LUKS "
9397 "mapping device (ie. C</dev/mapper/mapname>) and I<not> the name of the "
9398 "underlying block device."
9399 msgstr ""
9400
9401 #. type: =head2
9402 #: ../fish/guestfish-actions.pod:2725
9403 msgid "luks-format"
9404 msgstr ""
9405
9406 #. type: verbatim
9407 #: ../fish/guestfish-actions.pod:2727
9408 #, no-wrap
9409 msgid ""
9410 " luks-format device keyslot\n"
9411 "\n"
9412 msgstr ""
9413
9414 #. type: textblock
9415 #: ../fish/guestfish-actions.pod:2729 ../src/guestfs-actions.pod:4046
9416 msgid ""
9417 "This command erases existing data on C<device> and formats the device as a "
9418 "LUKS encrypted device.  C<key> is the initial key, which is added to key "
9419 "slot C<slot>.  (LUKS supports 8 key slots, numbered 0-7)."
9420 msgstr ""
9421
9422 #. type: textblock
9423 #: ../fish/guestfish-actions.pod:2737 ../fish/guestfish-actions.pod:2750 ../fish/guestfish-actions.pod:2837 ../fish/guestfish-actions.pod:3498 ../fish/guestfish-actions.pod:4024 ../fish/guestfish-actions.pod:4349 ../fish/guestfish-actions.pod:4372 ../fish/guestfish-actions.pod:4394 ../fish/guestfish-actions.pod:5132 ../src/guestfs-actions.pod:4053 ../src/guestfs-actions.pod:4076 ../src/guestfs-actions.pod:4219 ../src/guestfs-actions.pod:5322 ../src/guestfs-actions.pod:6110 ../src/guestfs-actions.pod:6538 ../src/guestfs-actions.pod:6568 ../src/guestfs-actions.pod:6601 ../src/guestfs-actions.pod:7799
9424 msgid ""
9425 "B<This command is dangerous.  Without careful use you can easily destroy all "
9426 "your data>."
9427 msgstr ""
9428
9429 #. type: =head2
9430 #: ../fish/guestfish-actions.pod:2740
9431 msgid "luks-format-cipher"
9432 msgstr ""
9433
9434 #. type: verbatim
9435 #: ../fish/guestfish-actions.pod:2742
9436 #, no-wrap
9437 msgid ""
9438 " luks-format-cipher device keyslot cipher\n"
9439 "\n"
9440 msgstr ""
9441
9442 #. type: textblock
9443 #: ../fish/guestfish-actions.pod:2744
9444 msgid ""
9445 "This command is the same as L</luks-format> but it also allows you to set "
9446 "the C<cipher> used."
9447 msgstr ""
9448
9449 #. type: =head2
9450 #: ../fish/guestfish-actions.pod:2753
9451 msgid "luks-kill-slot"
9452 msgstr ""
9453
9454 #. type: verbatim
9455 #: ../fish/guestfish-actions.pod:2755
9456 #, no-wrap
9457 msgid ""
9458 " luks-kill-slot device keyslot\n"
9459 "\n"
9460 msgstr ""
9461
9462 #. type: textblock
9463 #: ../fish/guestfish-actions.pod:2757 ../src/guestfs-actions.pod:4093
9464 msgid ""
9465 "This command deletes the key in key slot C<keyslot> from the encrypted LUKS "
9466 "device C<device>.  C<key> must be one of the I<other> keys."
9467 msgstr ""
9468
9469 #. type: =head2
9470 #: ../fish/guestfish-actions.pod:2764
9471 msgid "luks-open"
9472 msgstr ""
9473
9474 #. type: verbatim
9475 #: ../fish/guestfish-actions.pod:2766
9476 #, no-wrap
9477 msgid ""
9478 " luks-open device mapname\n"
9479 "\n"
9480 msgstr ""
9481
9482 #. type: textblock
9483 #: ../fish/guestfish-actions.pod:2768 ../src/guestfs-actions.pod:4113
9484 msgid ""
9485 "This command opens a block device which has been encrypted according to the "
9486 "Linux Unified Key Setup (LUKS) standard."
9487 msgstr ""
9488
9489 #. type: textblock
9490 #: ../fish/guestfish-actions.pod:2771 ../src/guestfs-actions.pod:4116
9491 msgid "C<device> is the encrypted block device or partition."
9492 msgstr ""
9493
9494 #. type: textblock
9495 #: ../fish/guestfish-actions.pod:2773 ../src/guestfs-actions.pod:4118
9496 msgid ""
9497 "The caller must supply one of the keys associated with the LUKS block "
9498 "device, in the C<key> parameter."
9499 msgstr ""
9500
9501 #. type: textblock
9502 #: ../fish/guestfish-actions.pod:2776 ../src/guestfs-actions.pod:4121
9503 msgid ""
9504 "This creates a new block device called C</dev/mapper/mapname>.  Reads and "
9505 "writes to this block device are decrypted from and encrypted to the "
9506 "underlying C<device> respectively."
9507 msgstr ""
9508
9509 #. type: textblock
9510 #: ../fish/guestfish-actions.pod:2780
9511 msgid ""
9512 "If this block device contains LVM volume groups, then calling L</vgscan> "
9513 "followed by L</vg-activate-all> will make them visible."
9514 msgstr ""
9515
9516 #. type: textblock
9517 #: ../fish/guestfish-actions.pod:2784
9518 msgid "Use L</list-dm-devices> to list all device mapper devices."
9519 msgstr ""
9520
9521 #. type: =head2
9522 #: ../fish/guestfish-actions.pod:2790
9523 msgid "luks-open-ro"
9524 msgstr ""
9525
9526 #. type: verbatim
9527 #: ../fish/guestfish-actions.pod:2792
9528 #, no-wrap
9529 msgid ""
9530 " luks-open-ro device mapname\n"
9531 "\n"
9532 msgstr ""
9533
9534 #. type: textblock
9535 #: ../fish/guestfish-actions.pod:2794
9536 msgid ""
9537 "This is the same as L</luks-open> except that a read-only mapping is "
9538 "created."
9539 msgstr ""
9540
9541 #. type: =head2
9542 #: ../fish/guestfish-actions.pod:2800
9543 msgid "lvcreate"
9544 msgstr ""
9545
9546 #. type: verbatim
9547 #: ../fish/guestfish-actions.pod:2802
9548 #, no-wrap
9549 msgid ""
9550 " lvcreate logvol volgroup mbytes\n"
9551 "\n"
9552 msgstr ""
9553
9554 #. type: textblock
9555 #: ../fish/guestfish-actions.pod:2804 ../src/guestfs-actions.pod:4167
9556 msgid ""
9557 "This creates an LVM logical volume called C<logvol> on the volume group "
9558 "C<volgroup>, with C<size> megabytes."
9559 msgstr ""
9560
9561 #. type: =head2
9562 #: ../fish/guestfish-actions.pod:2807
9563 msgid "lvm-canonical-lv-name"
9564 msgstr ""
9565
9566 #. type: verbatim
9567 #: ../fish/guestfish-actions.pod:2809
9568 #, no-wrap
9569 msgid ""
9570 " lvm-canonical-lv-name lvname\n"
9571 "\n"
9572 msgstr ""
9573
9574 #. type: textblock
9575 #: ../fish/guestfish-actions.pod:2811 ../src/guestfs-actions.pod:4180
9576 msgid ""
9577 "This converts alternative naming schemes for LVs that you might find to the "
9578 "canonical name.  For example, C</dev/mapper/VG-LV> is converted to "
9579 "C</dev/VG/LV>."
9580 msgstr ""
9581
9582 #. type: textblock
9583 #: ../fish/guestfish-actions.pod:2815 ../src/guestfs-actions.pod:4184
9584 msgid ""
9585 "This command returns an error if the C<lvname> parameter does not refer to a "
9586 "logical volume."
9587 msgstr ""
9588
9589 #. type: textblock
9590 #: ../fish/guestfish-actions.pod:2818
9591 msgid "See also L</is-lv>."
9592 msgstr ""
9593
9594 #. type: =head2
9595 #: ../fish/guestfish-actions.pod:2820
9596 msgid "lvm-clear-filter"
9597 msgstr ""
9598
9599 #. type: verbatim
9600 #: ../fish/guestfish-actions.pod:2822
9601 #, no-wrap
9602 msgid ""
9603 " lvm-clear-filter\n"
9604 "\n"
9605 msgstr ""
9606
9607 #. type: textblock
9608 #: ../fish/guestfish-actions.pod:2824
9609 msgid ""
9610 "This undoes the effect of L</lvm-set-filter>.  LVM will be able to see every "
9611 "block device."
9612 msgstr ""
9613
9614 #. type: textblock
9615 #: ../fish/guestfish-actions.pod:2827 ../fish/guestfish-actions.pod:2858 ../src/guestfs-actions.pod:4202 ../src/guestfs-actions.pod:4244
9616 msgid "This command also clears the LVM cache and performs a volume group scan."
9617 msgstr ""
9618
9619 #. type: =head2
9620 #: ../fish/guestfish-actions.pod:2830
9621 msgid "lvm-remove-all"
9622 msgstr ""
9623
9624 #. type: verbatim
9625 #: ../fish/guestfish-actions.pod:2832
9626 #, no-wrap
9627 msgid ""
9628 " lvm-remove-all\n"
9629 "\n"
9630 msgstr ""
9631
9632 #. type: textblock
9633 #: ../fish/guestfish-actions.pod:2834 ../src/guestfs-actions.pod:4214
9634 msgid ""
9635 "This command removes all LVM logical volumes, volume groups and physical "
9636 "volumes."
9637 msgstr ""
9638
9639 #. type: =head2
9640 #: ../fish/guestfish-actions.pod:2840
9641 msgid "lvm-set-filter"
9642 msgstr ""
9643
9644 #. type: verbatim
9645 #: ../fish/guestfish-actions.pod:2842
9646 #, no-wrap
9647 msgid ""
9648 " lvm-set-filter 'devices ...'\n"
9649 "\n"
9650 msgstr ""
9651
9652 #. type: textblock
9653 #: ../fish/guestfish-actions.pod:2844 ../src/guestfs-actions.pod:4230
9654 msgid ""
9655 "This sets the LVM device filter so that LVM will only be able to \"see\" the "
9656 "block devices in the list C<devices>, and will ignore all other attached "
9657 "block devices."
9658 msgstr ""
9659
9660 #. type: textblock
9661 #: ../fish/guestfish-actions.pod:2848 ../src/guestfs-actions.pod:4234
9662 msgid ""
9663 "Where disk image(s) contain duplicate PVs or VGs, this command is useful to "
9664 "get LVM to ignore the duplicates, otherwise LVM can get confused.  Note also "
9665 "there are two types of duplication possible: either cloned PVs/VGs which "
9666 "have identical UUIDs; or VGs that are not cloned but just happen to have the "
9667 "same name.  In normal operation you cannot create this situation, but you "
9668 "can do it outside LVM, eg.  by cloning disk images or by bit twiddling "
9669 "inside the LVM metadata."
9670 msgstr ""
9671
9672 #. type: textblock
9673 #: ../fish/guestfish-actions.pod:2861 ../src/guestfs-actions.pod:4247
9674 msgid "You can filter whole block devices or individual partitions."
9675 msgstr ""
9676
9677 #. type: textblock
9678 #: ../fish/guestfish-actions.pod:2863 ../src/guestfs-actions.pod:4249
9679 msgid ""
9680 "You cannot use this if any VG is currently in use (eg.  contains a mounted "
9681 "filesystem), even if you are not filtering out that VG."
9682 msgstr ""
9683
9684 #. type: =head2
9685 #: ../fish/guestfish-actions.pod:2867
9686 msgid "lvremove"
9687 msgstr ""
9688
9689 #. type: verbatim
9690 #: ../fish/guestfish-actions.pod:2869
9691 #, no-wrap
9692 msgid ""
9693 " lvremove device\n"
9694 "\n"
9695 msgstr ""
9696
9697 #. type: textblock
9698 #: ../fish/guestfish-actions.pod:2871 ../src/guestfs-actions.pod:4263
9699 msgid ""
9700 "Remove an LVM logical volume C<device>, where C<device> is the path to the "
9701 "LV, such as C</dev/VG/LV>."
9702 msgstr ""
9703
9704 #. type: textblock
9705 #: ../fish/guestfish-actions.pod:2874 ../src/guestfs-actions.pod:4266
9706 msgid ""
9707 "You can also remove all LVs in a volume group by specifying the VG name, "
9708 "C</dev/VG>."
9709 msgstr ""
9710
9711 #. type: =head2
9712 #: ../fish/guestfish-actions.pod:2877
9713 msgid "lvrename"
9714 msgstr ""
9715
9716 #. type: verbatim
9717 #: ../fish/guestfish-actions.pod:2879
9718 #, no-wrap
9719 msgid ""
9720 " lvrename logvol newlogvol\n"
9721 "\n"
9722 msgstr ""
9723
9724 #. type: textblock
9725 #: ../fish/guestfish-actions.pod:2881 ../src/guestfs-actions.pod:4280
9726 msgid "Rename a logical volume C<logvol> with the new name C<newlogvol>."
9727 msgstr ""
9728
9729 #. type: =head2
9730 #: ../fish/guestfish-actions.pod:2883
9731 msgid "lvresize"
9732 msgstr ""
9733
9734 #. type: verbatim
9735 #: ../fish/guestfish-actions.pod:2885
9736 #, no-wrap
9737 msgid ""
9738 " lvresize device mbytes\n"
9739 "\n"
9740 msgstr ""
9741
9742 #. type: textblock
9743 #: ../fish/guestfish-actions.pod:2887 ../src/guestfs-actions.pod:4293
9744 msgid ""
9745 "This resizes (expands or shrinks) an existing LVM logical volume to "
9746 "C<mbytes>.  When reducing, data in the reduced part is lost."
9747 msgstr ""
9748
9749 #. type: =head2
9750 #: ../fish/guestfish-actions.pod:2891
9751 msgid "lvresize-free"
9752 msgstr ""
9753
9754 #. type: verbatim
9755 #: ../fish/guestfish-actions.pod:2893
9756 #, no-wrap
9757 msgid ""
9758 " lvresize-free lv percent\n"
9759 "\n"
9760 msgstr ""
9761
9762 #. type: textblock
9763 #: ../fish/guestfish-actions.pod:2895 ../src/guestfs-actions.pod:4308
9764 msgid ""
9765 "This expands an existing logical volume C<lv> so that it fills C<pc>% of the "
9766 "remaining free space in the volume group.  Commonly you would call this with "
9767 "pc = 100 which expands the logical volume as much as possible, using all "
9768 "remaining free space in the volume group."
9769 msgstr ""
9770
9771 #. type: =head2
9772 #: ../fish/guestfish-actions.pod:2901
9773 msgid "lvs"
9774 msgstr ""
9775
9776 #. type: verbatim
9777 #: ../fish/guestfish-actions.pod:2903
9778 #, no-wrap
9779 msgid ""
9780 " lvs\n"
9781 "\n"
9782 msgstr ""
9783
9784 #. type: textblock
9785 #: ../fish/guestfish-actions.pod:2905 ../src/guestfs-actions.pod:4323
9786 msgid ""
9787 "List all the logical volumes detected.  This is the equivalent of the "
9788 "L<lvs(8)> command."
9789 msgstr ""
9790
9791 #. type: textblock
9792 #: ../fish/guestfish-actions.pod:2908 ../src/guestfs-actions.pod:4326
9793 msgid ""
9794 "This returns a list of the logical volume device names "
9795 "(eg. C</dev/VolGroup00/LogVol00>)."
9796 msgstr ""
9797
9798 #. type: textblock
9799 #: ../fish/guestfish-actions.pod:2911
9800 msgid "See also L</lvs-full>, L</list-filesystems>."
9801 msgstr ""
9802
9803 #. type: =head2
9804 #: ../fish/guestfish-actions.pod:2913
9805 msgid "lvs-full"
9806 msgstr ""
9807
9808 #. type: verbatim
9809 #: ../fish/guestfish-actions.pod:2915
9810 #, no-wrap
9811 msgid ""
9812 " lvs-full\n"
9813 "\n"
9814 msgstr ""
9815
9816 #. type: textblock
9817 #: ../fish/guestfish-actions.pod:2917 ../src/guestfs-actions.pod:4342
9818 msgid ""
9819 "List all the logical volumes detected.  This is the equivalent of the "
9820 "L<lvs(8)> command.  The \"full\" version includes all fields."
9821 msgstr ""
9822
9823 #. type: =head2
9824 #: ../fish/guestfish-actions.pod:2920
9825 msgid "lvuuid"
9826 msgstr ""
9827
9828 #. type: verbatim
9829 #: ../fish/guestfish-actions.pod:2922
9830 #, no-wrap
9831 msgid ""
9832 " lvuuid device\n"
9833 "\n"
9834 msgstr ""
9835
9836 #. type: textblock
9837 #: ../fish/guestfish-actions.pod:2924 ../src/guestfs-actions.pod:4357
9838 msgid "This command returns the UUID of the LVM LV C<device>."
9839 msgstr ""
9840
9841 #. type: =head2
9842 #: ../fish/guestfish-actions.pod:2926
9843 msgid "lxattrlist"
9844 msgstr ""
9845
9846 #. type: verbatim
9847 #: ../fish/guestfish-actions.pod:2928
9848 #, no-wrap
9849 msgid ""
9850 " lxattrlist path 'names ...'\n"
9851 "\n"
9852 msgstr ""
9853
9854 #. type: textblock
9855 #: ../fish/guestfish-actions.pod:2930 ../src/guestfs-actions.pod:4371
9856 msgid ""
9857 "This call allows you to get the extended attributes of multiple files, where "
9858 "all files are in the directory C<path>.  C<names> is the list of files from "
9859 "this directory."
9860 msgstr ""
9861
9862 #. type: textblock
9863 #: ../fish/guestfish-actions.pod:2934 ../src/guestfs-actions.pod:4375
9864 msgid ""
9865 "On return you get a flat list of xattr structs which must be interpreted "
9866 "sequentially.  The first xattr struct always has a zero-length C<attrname>.  "
9867 "C<attrval> in this struct is zero-length to indicate there was an error "
9868 "doing C<lgetxattr> for this file, I<or> is a C string which is a decimal "
9869 "number (the number of following attributes for this file, which could be "
9870 "C<\"0\">).  Then after the first xattr struct are the zero or more "
9871 "attributes for the first named file.  This repeats for the second and "
9872 "subsequent files."
9873 msgstr ""
9874
9875 #. type: textblock
9876 #: ../fish/guestfish-actions.pod:2944
9877 msgid ""
9878 "This call is intended for programs that want to efficiently list a directory "
9879 "contents without making many round-trips.  See also L</lstatlist> for a "
9880 "similarly efficient call for getting standard stats.  Very long directory "
9881 "listings might cause the protocol message size to be exceeded, causing this "
9882 "call to fail.  The caller must split up such requests into smaller groups of "
9883 "names."
9884 msgstr ""
9885
9886 #. type: =head2
9887 #: ../fish/guestfish-actions.pod:2952
9888 msgid "mkdir"
9889 msgstr ""
9890
9891 #. type: verbatim
9892 #: ../fish/guestfish-actions.pod:2954
9893 #, no-wrap
9894 msgid ""
9895 " mkdir path\n"
9896 "\n"
9897 msgstr ""
9898
9899 #. type: textblock
9900 #: ../fish/guestfish-actions.pod:2956 ../src/guestfs-actions.pod:4405
9901 msgid "Create a directory named C<path>."
9902 msgstr ""
9903
9904 #. type: =head2
9905 #: ../fish/guestfish-actions.pod:2958
9906 msgid "mkdir-mode"
9907 msgstr ""
9908
9909 #. type: verbatim
9910 #: ../fish/guestfish-actions.pod:2960
9911 #, no-wrap
9912 msgid ""
9913 " mkdir-mode path mode\n"
9914 "\n"
9915 msgstr ""
9916
9917 #. type: textblock
9918 #: ../fish/guestfish-actions.pod:2962 ../src/guestfs-actions.pod:4418
9919 msgid ""
9920 "This command creates a directory, setting the initial permissions of the "
9921 "directory to C<mode>."
9922 msgstr ""
9923
9924 #. type: textblock
9925 #: ../fish/guestfish-actions.pod:2965 ../src/guestfs-actions.pod:4421
9926 msgid ""
9927 "For common Linux filesystems, the actual mode which is set will be C<mode & "
9928 "~umask & 01777>.  Non-native-Linux filesystems may interpret the mode in "
9929 "other ways."
9930 msgstr ""
9931
9932 #. type: textblock
9933 #: ../fish/guestfish-actions.pod:2969
9934 msgid "See also L</mkdir>, L</umask>"
9935 msgstr ""
9936
9937 #. type: =head2
9938 #: ../fish/guestfish-actions.pod:2971
9939 msgid "mkdir-p"
9940 msgstr ""
9941
9942 #. type: verbatim
9943 #: ../fish/guestfish-actions.pod:2973
9944 #, no-wrap
9945 msgid ""
9946 " mkdir-p path\n"
9947 "\n"
9948 msgstr ""
9949
9950 #. type: textblock
9951 #: ../fish/guestfish-actions.pod:2975 ../src/guestfs-actions.pod:4437
9952 msgid ""
9953 "Create a directory named C<path>, creating any parent directories as "
9954 "necessary.  This is like the C<mkdir -p> shell command."
9955 msgstr ""
9956
9957 #. type: =head2
9958 #: ../fish/guestfish-actions.pod:2978
9959 msgid "mkdtemp"
9960 msgstr ""
9961
9962 #. type: verbatim
9963 #: ../fish/guestfish-actions.pod:2980
9964 #, no-wrap
9965 msgid ""
9966 " mkdtemp template\n"
9967 "\n"
9968 msgstr ""
9969
9970 #. type: textblock
9971 #: ../fish/guestfish-actions.pod:2982 ../src/guestfs-actions.pod:4450
9972 msgid ""
9973 "This command creates a temporary directory.  The C<template> parameter "
9974 "should be a full pathname for the temporary directory name with the final "
9975 "six characters being \"XXXXXX\"."
9976 msgstr ""
9977
9978 #. type: textblock
9979 #: ../fish/guestfish-actions.pod:2987 ../src/guestfs-actions.pod:4455
9980 msgid ""
9981 "For example: \"/tmp/myprogXXXXXX\" or \"/Temp/myprogXXXXXX\", the second one "
9982 "being suitable for Windows filesystems."
9983 msgstr ""
9984
9985 #. type: textblock
9986 #: ../fish/guestfish-actions.pod:2990 ../src/guestfs-actions.pod:4458
9987 msgid "The name of the temporary directory that was created is returned."
9988 msgstr ""
9989
9990 #. type: textblock
9991 #: ../fish/guestfish-actions.pod:2993 ../src/guestfs-actions.pod:4461
9992 msgid "The temporary directory is created with mode 0700 and is owned by root."
9993 msgstr ""
9994
9995 #. type: textblock
9996 #: ../fish/guestfish-actions.pod:2996 ../src/guestfs-actions.pod:4464
9997 msgid ""
9998 "The caller is responsible for deleting the temporary directory and its "
9999 "contents after use."
10000 msgstr ""
10001
10002 #. type: textblock
10003 #: ../fish/guestfish-actions.pod:2999 ../src/guestfs-actions.pod:4467
10004 msgid "See also: L<mkdtemp(3)>"
10005 msgstr ""
10006
10007 #. type: =head2
10008 #: ../fish/guestfish-actions.pod:3001
10009 msgid "mke2fs-J"
10010 msgstr ""
10011
10012 #. type: verbatim
10013 #: ../fish/guestfish-actions.pod:3003
10014 #, no-wrap
10015 msgid ""
10016 " mke2fs-J fstype blocksize device journal\n"
10017 "\n"
10018 msgstr ""
10019
10020 #. type: textblock
10021 #: ../fish/guestfish-actions.pod:3005 ../src/guestfs-actions.pod:4483
10022 msgid ""
10023 "This creates an ext2/3/4 filesystem on C<device> with an external journal on "
10024 "C<journal>.  It is equivalent to the command:"
10025 msgstr ""
10026
10027 #. type: verbatim
10028 #: ../fish/guestfish-actions.pod:3009 ../src/guestfs-actions.pod:4487
10029 #, no-wrap
10030 msgid ""
10031 " mke2fs -t fstype -b blocksize -J device=<journal> <device>\n"
10032 "\n"
10033 msgstr ""
10034
10035 #. type: textblock
10036 #: ../fish/guestfish-actions.pod:3011
10037 msgid "See also L</mke2journal>."
10038 msgstr ""
10039
10040 #. type: =head2
10041 #: ../fish/guestfish-actions.pod:3013
10042 msgid "mke2fs-JL"
10043 msgstr ""
10044
10045 #. type: verbatim
10046 #: ../fish/guestfish-actions.pod:3015
10047 #, no-wrap
10048 msgid ""
10049 " mke2fs-JL fstype blocksize device label\n"
10050 "\n"
10051 msgstr ""
10052
10053 #. type: textblock
10054 #: ../fish/guestfish-actions.pod:3017 ../src/guestfs-actions.pod:4504
10055 msgid ""
10056 "This creates an ext2/3/4 filesystem on C<device> with an external journal on "
10057 "the journal labeled C<label>."
10058 msgstr ""
10059
10060 #. type: textblock
10061 #: ../fish/guestfish-actions.pod:3020
10062 msgid "See also L</mke2journal-L>."
10063 msgstr ""
10064
10065 #. type: =head2
10066 #: ../fish/guestfish-actions.pod:3022
10067 msgid "mke2fs-JU"
10068 msgstr ""
10069
10070 #. type: verbatim
10071 #: ../fish/guestfish-actions.pod:3024
10072 #, no-wrap
10073 msgid ""
10074 " mke2fs-JU fstype blocksize device uuid\n"
10075 "\n"
10076 msgstr ""
10077
10078 #. type: textblock
10079 #: ../fish/guestfish-actions.pod:3026 ../src/guestfs-actions.pod:4522
10080 msgid ""
10081 "This creates an ext2/3/4 filesystem on C<device> with an external journal on "
10082 "the journal with UUID C<uuid>."
10083 msgstr ""
10084
10085 #. type: textblock
10086 #: ../fish/guestfish-actions.pod:3029
10087 msgid "See also L</mke2journal-U>."
10088 msgstr ""
10089
10090 #. type: =head2
10091 #: ../fish/guestfish-actions.pod:3031
10092 msgid "mke2journal"
10093 msgstr ""
10094
10095 #. type: verbatim
10096 #: ../fish/guestfish-actions.pod:3033
10097 #, no-wrap
10098 msgid ""
10099 " mke2journal blocksize device\n"
10100 "\n"
10101 msgstr ""
10102
10103 #. type: textblock
10104 #: ../fish/guestfish-actions.pod:3035 ../src/guestfs-actions.pod:4538
10105 msgid ""
10106 "This creates an ext2 external journal on C<device>.  It is equivalent to the "
10107 "command:"
10108 msgstr ""
10109
10110 #. type: verbatim
10111 #: ../fish/guestfish-actions.pod:3038 ../src/guestfs-actions.pod:4541
10112 #, no-wrap
10113 msgid ""
10114 " mke2fs -O journal_dev -b blocksize device\n"
10115 "\n"
10116 msgstr ""
10117
10118 #. type: =head2
10119 #: ../fish/guestfish-actions.pod:3040
10120 msgid "mke2journal-L"
10121 msgstr ""
10122
10123 #. type: verbatim
10124 #: ../fish/guestfish-actions.pod:3042
10125 #, no-wrap
10126 msgid ""
10127 " mke2journal-L blocksize label device\n"
10128 "\n"
10129 msgstr ""
10130
10131 #. type: textblock
10132 #: ../fish/guestfish-actions.pod:3044 ../src/guestfs-actions.pod:4555
10133 msgid "This creates an ext2 external journal on C<device> with label C<label>."
10134 msgstr ""
10135
10136 #. type: =head2
10137 #: ../fish/guestfish-actions.pod:3046
10138 msgid "mke2journal-U"
10139 msgstr ""
10140
10141 #. type: verbatim
10142 #: ../fish/guestfish-actions.pod:3048
10143 #, no-wrap
10144 msgid ""
10145 " mke2journal-U blocksize uuid device\n"
10146 "\n"
10147 msgstr ""
10148
10149 #. type: textblock
10150 #: ../fish/guestfish-actions.pod:3050 ../src/guestfs-actions.pod:4569
10151 msgid "This creates an ext2 external journal on C<device> with UUID C<uuid>."
10152 msgstr ""
10153
10154 #. type: =head2
10155 #: ../fish/guestfish-actions.pod:3052
10156 msgid "mkfifo"
10157 msgstr ""
10158
10159 #. type: verbatim
10160 #: ../fish/guestfish-actions.pod:3054
10161 #, no-wrap
10162 msgid ""
10163 " mkfifo mode path\n"
10164 "\n"
10165 msgstr ""
10166
10167 #. type: textblock
10168 #: ../fish/guestfish-actions.pod:3056
10169 msgid ""
10170 "This call creates a FIFO (named pipe) called C<path> with mode C<mode>.  It "
10171 "is just a convenient wrapper around L</mknod>."
10172 msgstr ""
10173
10174 #. type: =head2
10175 #: ../fish/guestfish-actions.pod:3062
10176 msgid "mkfs"
10177 msgstr ""
10178
10179 #. type: verbatim
10180 #: ../fish/guestfish-actions.pod:3064
10181 #, no-wrap
10182 msgid ""
10183 " mkfs fstype device\n"
10184 "\n"
10185 msgstr ""
10186
10187 #. type: textblock
10188 #: ../fish/guestfish-actions.pod:3066 ../src/guestfs-actions.pod:4599
10189 msgid ""
10190 "This creates a filesystem on C<device> (usually a partition or LVM logical "
10191 "volume).  The filesystem type is C<fstype>, for example C<ext3>."
10192 msgstr ""
10193
10194 #. type: =head2
10195 #: ../fish/guestfish-actions.pod:3070
10196 msgid "mkfs-b"
10197 msgstr ""
10198
10199 #. type: verbatim
10200 #: ../fish/guestfish-actions.pod:3072
10201 #, no-wrap
10202 msgid ""
10203 " mkfs-b fstype blocksize device\n"
10204 "\n"
10205 msgstr ""
10206
10207 #. type: textblock
10208 #: ../fish/guestfish-actions.pod:3074
10209 msgid ""
10210 "This call is similar to L</mkfs>, but it allows you to control the block "
10211 "size of the resulting filesystem.  Supported block sizes depend on the "
10212 "filesystem type, but typically they are C<1024>, C<2048> or C<4096> only."
10213 msgstr ""
10214
10215 #. type: textblock
10216 #: ../fish/guestfish-actions.pod:3079 ../fish/guestfish-actions.pod:3106 ../src/guestfs-actions.pod:4620 ../src/guestfs-actions.pod:4665
10217 msgid ""
10218 "For VFAT and NTFS the C<blocksize> parameter is treated as the requested "
10219 "cluster size."
10220 msgstr ""
10221
10222 #. type: textblock
10223 #: ../fish/guestfish-actions.pod:3082 ../src/guestfs-actions.pod:4625
10224 msgid ""
10225 "This function is deprecated.  In new code, use the C<mkfs_opts> call "
10226 "instead."
10227 msgstr ""
10228
10229 #. type: =head2
10230 #: ../fish/guestfish-actions.pod:3089
10231 msgid "mkfs-opts"
10232 msgstr ""
10233
10234 #. type: verbatim
10235 #: ../fish/guestfish-actions.pod:3091
10236 #, no-wrap
10237 msgid ""
10238 " mkfs-opts fstype device [blocksize:..] [features:..] [inode:..] "
10239 "[sectorsize:..]\n"
10240 "\n"
10241 msgstr ""
10242
10243 #. type: textblock
10244 #: ../fish/guestfish-actions.pod:3093 ../src/guestfs-actions.pod:4652
10245 msgid ""
10246 "This function creates a filesystem on C<device>.  The filesystem type is "
10247 "C<fstype>, for example C<ext3>."
10248 msgstr ""
10249
10250 #. type: =item
10251 #: ../fish/guestfish-actions.pod:3100 ../src/guestfs-actions.pod:4659
10252 msgid "C<blocksize>"
10253 msgstr ""
10254
10255 #. type: textblock
10256 #: ../fish/guestfish-actions.pod:3102 ../src/guestfs-actions.pod:4661
10257 msgid ""
10258 "The filesystem block size.  Supported block sizes depend on the filesystem "
10259 "type, but typically they are C<1024>, C<2048> or C<4096> for Linux ext2/3 "
10260 "filesystems."
10261 msgstr ""
10262
10263 #. type: textblock
10264 #: ../fish/guestfish-actions.pod:3109 ../src/guestfs-actions.pod:4668
10265 msgid "For UFS block sizes, please see L<mkfs.ufs(8)>."
10266 msgstr ""
10267
10268 #. type: =item
10269 #: ../fish/guestfish-actions.pod:3111 ../src/guestfs-actions.pod:4670
10270 msgid "C<features>"
10271 msgstr ""
10272
10273 #. type: textblock
10274 #: ../fish/guestfish-actions.pod:3113 ../src/guestfs-actions.pod:4672
10275 msgid "This passes the I<-O> parameter to the external mkfs program."
10276 msgstr ""
10277
10278 #. type: textblock
10279 #: ../fish/guestfish-actions.pod:3115 ../src/guestfs-actions.pod:4674
10280 msgid ""
10281 "For certain filesystem types, this allows extra filesystem features to be "
10282 "selected.  See L<mke2fs(8)> and L<mkfs.ufs(8)> for more details."
10283 msgstr ""
10284
10285 #. type: textblock
10286 #: ../fish/guestfish-actions.pod:3119 ../src/guestfs-actions.pod:4678
10287 msgid ""
10288 "You cannot use this optional parameter with the C<gfs> or C<gfs2> filesystem "
10289 "type."
10290 msgstr ""
10291
10292 #. type: =item
10293 #: ../fish/guestfish-actions.pod:3122 ../src/guestfs-actions.pod:4681
10294 msgid "C<inode>"
10295 msgstr ""
10296
10297 #. type: textblock
10298 #: ../fish/guestfish-actions.pod:3124 ../src/guestfs-actions.pod:4683
10299 msgid ""
10300 "This passes the I<-I> parameter to the external L<mke2fs(8)> program which "
10301 "sets the inode size (only for ext2/3/4 filesystems at present)."
10302 msgstr ""
10303
10304 #. type: =item
10305 #: ../fish/guestfish-actions.pod:3127 ../src/guestfs-actions.pod:4686
10306 msgid "C<sectorsize>"
10307 msgstr ""
10308
10309 #. type: textblock
10310 #: ../fish/guestfish-actions.pod:3129 ../src/guestfs-actions.pod:4688
10311 msgid ""
10312 "This passes the I<-S> parameter to external L<mkfs.ufs(8)> program, which "
10313 "sets sector size for ufs filesystem."
10314 msgstr ""
10315
10316 #. type: =head2
10317 #: ../fish/guestfish-actions.pod:3136
10318 msgid "mkmountpoint"
10319 msgstr ""
10320
10321 #. type: verbatim
10322 #: ../fish/guestfish-actions.pod:3138
10323 #, no-wrap
10324 msgid ""
10325 " mkmountpoint exemptpath\n"
10326 "\n"
10327 msgstr ""
10328
10329 #. type: textblock
10330 #: ../fish/guestfish-actions.pod:3140
10331 msgid ""
10332 "L</mkmountpoint> and L</rmmountpoint> are specialized calls that can be used "
10333 "to create extra mountpoints before mounting the first filesystem."
10334 msgstr ""
10335
10336 #. type: textblock
10337 #: ../fish/guestfish-actions.pod:3144 ../src/guestfs-actions.pod:4731
10338 msgid ""
10339 "These calls are I<only> necessary in some very limited circumstances, mainly "
10340 "the case where you want to mount a mix of unrelated and/or read-only "
10341 "filesystems together."
10342 msgstr ""
10343
10344 #. type: textblock
10345 #: ../fish/guestfish-actions.pod:3148 ../src/guestfs-actions.pod:4735
10346 msgid ""
10347 "For example, live CDs often contain a \"Russian doll\" nest of filesystems, "
10348 "an ISO outer layer, with a squashfs image inside, with an ext2/3 image "
10349 "inside that.  You can unpack this as follows in guestfish:"
10350 msgstr ""
10351
10352 #. type: verbatim
10353 #: ../fish/guestfish-actions.pod:3153 ../src/guestfs-actions.pod:4740
10354 #, no-wrap
10355 msgid ""
10356 " add-ro Fedora-11-i686-Live.iso\n"
10357 " run\n"
10358 " mkmountpoint /cd\n"
10359 " mkmountpoint /sqsh\n"
10360 " mkmountpoint /ext3fs\n"
10361 " mount /dev/sda /cd\n"
10362 " mount-loop /cd/LiveOS/squashfs.img /sqsh\n"
10363 " mount-loop /sqsh/LiveOS/ext3fs.img /ext3fs\n"
10364 "\n"
10365 msgstr ""
10366
10367 #. type: textblock
10368 #: ../fish/guestfish-actions.pod:3162 ../src/guestfs-actions.pod:4749
10369 msgid "The inner filesystem is now unpacked under the /ext3fs mountpoint."
10370 msgstr ""
10371
10372 #. type: textblock
10373 #: ../fish/guestfish-actions.pod:3164
10374 msgid ""
10375 "L</mkmountpoint> is not compatible with L</umount-all>.  You may get "
10376 "unexpected errors if you try to mix these calls.  It is safest to manually "
10377 "unmount filesystems and remove mountpoints after use."
10378 msgstr ""
10379
10380 #. type: textblock
10381 #: ../fish/guestfish-actions.pod:3168
10382 msgid ""
10383 "L</umount-all> unmounts filesystems by sorting the paths longest first, so "
10384 "for this to work for manual mountpoints, you must ensure that the innermost "
10385 "mountpoints have the longest pathnames, as in the example code above."
10386 msgstr ""
10387
10388 #. type: textblock
10389 #: ../fish/guestfish-actions.pod:3173 ../src/guestfs-actions.pod:4760
10390 msgid "For more details see L<https://bugzilla.redhat.com/show_bug.cgi?id=599503>"
10391 msgstr ""
10392
10393 #. type: textblock
10394 #: ../fish/guestfish-actions.pod:3175
10395 msgid ""
10396 "Autosync [see L</set-autosync>, this is set by default on handles] can cause "
10397 "L</umount-all> to be called when the handle is closed which can also trigger "
10398 "these issues."
10399 msgstr ""
10400
10401 #. type: =head2
10402 #: ../fish/guestfish-actions.pod:3179
10403 msgid "mknod"
10404 msgstr ""
10405
10406 #. type: verbatim
10407 #: ../fish/guestfish-actions.pod:3181
10408 #, no-wrap
10409 msgid ""
10410 " mknod mode devmajor devminor path\n"
10411 "\n"
10412 msgstr ""
10413
10414 #. type: textblock
10415 #: ../fish/guestfish-actions.pod:3183 ../src/guestfs-actions.pod:4779
10416 msgid ""
10417 "This call creates block or character special devices, or named pipes "
10418 "(FIFOs)."
10419 msgstr ""
10420
10421 #. type: textblock
10422 #: ../fish/guestfish-actions.pod:3186 ../src/guestfs-actions.pod:4782
10423 msgid ""
10424 "The C<mode> parameter should be the mode, using the standard constants.  "
10425 "C<devmajor> and C<devminor> are the device major and minor numbers, only "
10426 "used when creating block and character special devices."
10427 msgstr ""
10428
10429 #. type: textblock
10430 #: ../fish/guestfish-actions.pod:3191
10431 msgid ""
10432 "Note that, just like L<mknod(2)>, the mode must be bitwise OR'd with "
10433 "S_IFBLK, S_IFCHR, S_IFIFO or S_IFSOCK (otherwise this call just creates a "
10434 "regular file).  These constants are available in the standard Linux header "
10435 "files, or you can use L</mknod-b>, L</mknod-c> or L</mkfifo> which are "
10436 "wrappers around this command which bitwise OR in the appropriate constant "
10437 "for you."
10438 msgstr ""
10439
10440 #. type: =head2
10441 #: ../fish/guestfish-actions.pod:3201
10442 msgid "mknod-b"
10443 msgstr ""
10444
10445 #. type: verbatim
10446 #: ../fish/guestfish-actions.pod:3203
10447 #, no-wrap
10448 msgid ""
10449 " mknod-b mode devmajor devminor path\n"
10450 "\n"
10451 msgstr ""
10452
10453 #. type: textblock
10454 #: ../fish/guestfish-actions.pod:3205
10455 msgid ""
10456 "This call creates a block device node called C<path> with mode C<mode> and "
10457 "device major/minor C<devmajor> and C<devminor>.  It is just a convenient "
10458 "wrapper around L</mknod>."
10459 msgstr ""
10460
10461 #. type: =head2
10462 #: ../fish/guestfish-actions.pod:3211
10463 msgid "mknod-c"
10464 msgstr ""
10465
10466 #. type: verbatim
10467 #: ../fish/guestfish-actions.pod:3213
10468 #, no-wrap
10469 msgid ""
10470 " mknod-c mode devmajor devminor path\n"
10471 "\n"
10472 msgstr ""
10473
10474 #. type: textblock
10475 #: ../fish/guestfish-actions.pod:3215
10476 msgid ""
10477 "This call creates a char device node called C<path> with mode C<mode> and "
10478 "device major/minor C<devmajor> and C<devminor>.  It is just a convenient "
10479 "wrapper around L</mknod>."
10480 msgstr ""
10481
10482 #. type: =head2
10483 #: ../fish/guestfish-actions.pod:3221
10484 msgid "mkswap"
10485 msgstr ""
10486
10487 #. type: verbatim
10488 #: ../fish/guestfish-actions.pod:3223
10489 #, no-wrap
10490 msgid ""
10491 " mkswap device\n"
10492 "\n"
10493 msgstr ""
10494
10495 #. type: textblock
10496 #: ../fish/guestfish-actions.pod:3225 ../src/guestfs-actions.pod:4845
10497 msgid "Create a swap partition on C<device>."
10498 msgstr ""
10499
10500 #. type: =head2
10501 #: ../fish/guestfish-actions.pod:3227
10502 msgid "mkswap-L"
10503 msgstr ""
10504
10505 #. type: verbatim
10506 #: ../fish/guestfish-actions.pod:3229
10507 #, no-wrap
10508 msgid ""
10509 " mkswap-L label device\n"
10510 "\n"
10511 msgstr ""
10512
10513 #. type: textblock
10514 #: ../fish/guestfish-actions.pod:3231 ../src/guestfs-actions.pod:4858
10515 msgid "Create a swap partition on C<device> with label C<label>."
10516 msgstr ""
10517
10518 #. type: textblock
10519 #: ../fish/guestfish-actions.pod:3233 ../src/guestfs-actions.pod:4860
10520 msgid ""
10521 "Note that you cannot attach a swap label to a block device "
10522 "(eg. C</dev/sda>), just to a partition.  This appears to be a limitation of "
10523 "the kernel or swap tools."
10524 msgstr ""
10525
10526 #. type: =head2
10527 #: ../fish/guestfish-actions.pod:3237
10528 msgid "mkswap-U"
10529 msgstr ""
10530
10531 #. type: verbatim
10532 #: ../fish/guestfish-actions.pod:3239
10533 #, no-wrap
10534 msgid ""
10535 " mkswap-U uuid device\n"
10536 "\n"
10537 msgstr ""
10538
10539 #. type: textblock
10540 #: ../fish/guestfish-actions.pod:3241 ../src/guestfs-actions.pod:4875
10541 msgid "Create a swap partition on C<device> with UUID C<uuid>."
10542 msgstr ""
10543
10544 #. type: =head2
10545 #: ../fish/guestfish-actions.pod:3243
10546 msgid "mkswap-file"
10547 msgstr ""
10548
10549 #. type: verbatim
10550 #: ../fish/guestfish-actions.pod:3245
10551 #, no-wrap
10552 msgid ""
10553 " mkswap-file path\n"
10554 "\n"
10555 msgstr ""
10556
10557 #. type: textblock
10558 #: ../fish/guestfish-actions.pod:3247 ../src/guestfs-actions.pod:4887
10559 msgid "Create a swap file."
10560 msgstr ""
10561
10562 #. type: textblock
10563 #: ../fish/guestfish-actions.pod:3249
10564 msgid ""
10565 "This command just writes a swap file signature to an existing file.  To "
10566 "create the file itself, use something like L</fallocate>."
10567 msgstr ""
10568
10569 #. type: =head2
10570 #: ../fish/guestfish-actions.pod:3252
10571 msgid "modprobe"
10572 msgstr ""
10573
10574 #. type: verbatim
10575 #: ../fish/guestfish-actions.pod:3254
10576 #, no-wrap
10577 msgid ""
10578 " modprobe modulename\n"
10579 "\n"
10580 msgstr ""
10581
10582 #. type: textblock
10583 #: ../fish/guestfish-actions.pod:3256 ../src/guestfs-actions.pod:4902
10584 msgid "This loads a kernel module in the appliance."
10585 msgstr ""
10586
10587 #. type: textblock
10588 #: ../fish/guestfish-actions.pod:3258 ../src/guestfs-actions.pod:4904
10589 msgid ""
10590 "The kernel module must have been whitelisted when libguestfs was built (see "
10591 "C<appliance/kmod.whitelist.in> in the source)."
10592 msgstr ""
10593
10594 #. type: =head2
10595 #: ../fish/guestfish-actions.pod:3261
10596 msgid "mount"
10597 msgstr ""
10598
10599 #. type: verbatim
10600 #: ../fish/guestfish-actions.pod:3263
10601 #, no-wrap
10602 msgid ""
10603 " mount device mountpoint\n"
10604 "\n"
10605 msgstr ""
10606
10607 #. type: textblock
10608 #: ../fish/guestfish-actions.pod:3265 ../src/guestfs-actions.pod:4918
10609 msgid ""
10610 "Mount a guest disk at a position in the filesystem.  Block devices are named "
10611 "C</dev/sda>, C</dev/sdb> and so on, as they were added to the guest.  If "
10612 "those block devices contain partitions, they will have the usual names "
10613 "(eg. C</dev/sda1>).  Also LVM C</dev/VG/LV>-style names can be used."
10614 msgstr ""
10615
10616 #. type: textblock
10617 #: ../fish/guestfish-actions.pod:3271 ../src/guestfs-actions.pod:4924
10618 msgid ""
10619 "The rules are the same as for L<mount(2)>: A filesystem must first be "
10620 "mounted on C</> before others can be mounted.  Other filesystems can only be "
10621 "mounted on directories which already exist."
10622 msgstr ""
10623
10624 #. type: textblock
10625 #: ../fish/guestfish-actions.pod:3276 ../src/guestfs-actions.pod:4929
10626 msgid ""
10627 "The mounted filesystem is writable, if we have sufficient permissions on the "
10628 "underlying device."
10629 msgstr ""
10630
10631 #. type: textblock
10632 #: ../fish/guestfish-actions.pod:3279
10633 msgid ""
10634 "B<Important note:> When you use this call, the filesystem options C<sync> "
10635 "and C<noatime> are set implicitly.  This was originally done because we "
10636 "thought it would improve reliability, but it turns out that I<-o sync> has a "
10637 "very large negative performance impact and negligible effect on "
10638 "reliability.  Therefore we recommend that you avoid using L</mount> in any "
10639 "code that needs performance, and instead use L</mount-options> (use an empty "
10640 "string for the first parameter if you don't want any options)."
10641 msgstr ""
10642
10643 #. type: textblock
10644 #: ../fish/guestfish-actions.pod:3289 ../src/guestfs-actions.pod:4944
10645 msgid ""
10646 "This function is deprecated.  In new code, use the C<mount_options> call "
10647 "instead."
10648 msgstr ""
10649
10650 #. type: =head2
10651 #: ../fish/guestfish-actions.pod:3296
10652 msgid "mount-9p"
10653 msgstr ""
10654
10655 #. type: verbatim
10656 #: ../fish/guestfish-actions.pod:3298
10657 #, no-wrap
10658 msgid ""
10659 " mount-9p mounttag mountpoint [options:..]\n"
10660 "\n"
10661 msgstr ""
10662
10663 #. type: textblock
10664 #: ../fish/guestfish-actions.pod:3300 ../src/guestfs-actions.pod:4968
10665 msgid ""
10666 "Mount the virtio-9p filesystem with the tag C<mounttag> on the directory "
10667 "C<mountpoint>."
10668 msgstr ""
10669
10670 #. type: textblock
10671 #: ../fish/guestfish-actions.pod:3303 ../src/guestfs-actions.pod:4971
10672 msgid ""
10673 "If required, C<trans=virtio> will be automatically added to the options.  "
10674 "Any other options required can be passed in the optional C<options> "
10675 "parameter."
10676 msgstr ""
10677
10678 #. type: =head2
10679 #: ../fish/guestfish-actions.pod:3309
10680 msgid "mount-loop"
10681 msgstr ""
10682
10683 #. type: verbatim
10684 #: ../fish/guestfish-actions.pod:3311
10685 #, no-wrap
10686 msgid ""
10687 " mount-loop file mountpoint\n"
10688 "\n"
10689 msgstr ""
10690
10691 #. type: textblock
10692 #: ../fish/guestfish-actions.pod:3313 ../src/guestfs-actions.pod:5010
10693 msgid ""
10694 "This command lets you mount C<file> (a filesystem image in a file) on a "
10695 "mount point.  It is entirely equivalent to the command C<mount -o loop file "
10696 "mountpoint>."
10697 msgstr ""
10698
10699 #. type: =head2
10700 #: ../fish/guestfish-actions.pod:3317
10701 msgid "mount-options"
10702 msgstr ""
10703
10704 #. type: verbatim
10705 #: ../fish/guestfish-actions.pod:3319
10706 #, no-wrap
10707 msgid ""
10708 " mount-options options device mountpoint\n"
10709 "\n"
10710 msgstr ""
10711
10712 #. type: textblock
10713 #: ../fish/guestfish-actions.pod:3321
10714 msgid ""
10715 "This is the same as the L</mount> command, but it allows you to set the "
10716 "mount options as for the L<mount(8)> I<-o> flag."
10717 msgstr ""
10718
10719 #. type: textblock
10720 #: ../fish/guestfish-actions.pod:3325 ../src/guestfs-actions.pod:5030
10721 msgid ""
10722 "If the C<options> parameter is an empty string, then no options are passed "
10723 "(all options default to whatever the filesystem uses)."
10724 msgstr ""
10725
10726 #. type: =head2
10727 #: ../fish/guestfish-actions.pod:3329
10728 msgid "mount-ro"
10729 msgstr ""
10730
10731 #. type: verbatim
10732 #: ../fish/guestfish-actions.pod:3331
10733 #, no-wrap
10734 msgid ""
10735 " mount-ro device mountpoint\n"
10736 "\n"
10737 msgstr ""
10738
10739 #. type: textblock
10740 #: ../fish/guestfish-actions.pod:3333
10741 msgid ""
10742 "This is the same as the L</mount> command, but it mounts the filesystem with "
10743 "the read-only (I<-o ro>) flag."
10744 msgstr ""
10745
10746 #. type: =head2
10747 #: ../fish/guestfish-actions.pod:3336
10748 msgid "mount-vfs"
10749 msgstr ""
10750
10751 #. type: verbatim
10752 #: ../fish/guestfish-actions.pod:3338
10753 #, no-wrap
10754 msgid ""
10755 " mount-vfs options vfstype device mountpoint\n"
10756 "\n"
10757 msgstr ""
10758
10759 #. type: textblock
10760 #: ../fish/guestfish-actions.pod:3340
10761 msgid ""
10762 "This is the same as the L</mount> command, but it allows you to set both the "
10763 "mount options and the vfstype as for the L<mount(8)> I<-o> and I<-t> flags."
10764 msgstr ""
10765
10766 #. type: =head2
10767 #: ../fish/guestfish-actions.pod:3344
10768 msgid "mountpoints"
10769 msgstr ""
10770
10771 #. type: verbatim
10772 #: ../fish/guestfish-actions.pod:3346
10773 #, no-wrap
10774 msgid ""
10775 " mountpoints\n"
10776 "\n"
10777 msgstr ""
10778
10779 #. type: textblock
10780 #: ../fish/guestfish-actions.pod:3348
10781 msgid ""
10782 "This call is similar to L</mounts>.  That call returns a list of devices.  "
10783 "This one returns a hash table (map) of device name to directory where the "
10784 "device is mounted."
10785 msgstr ""
10786
10787 #. type: =head2
10788 #: ../fish/guestfish-actions.pod:3352
10789 msgid "mounts"
10790 msgstr ""
10791
10792 #. type: verbatim
10793 #: ../fish/guestfish-actions.pod:3354
10794 #, no-wrap
10795 msgid ""
10796 " mounts\n"
10797 "\n"
10798 msgstr ""
10799
10800 #. type: textblock
10801 #: ../fish/guestfish-actions.pod:3356 ../src/guestfs-actions.pod:5091
10802 msgid ""
10803 "This returns the list of currently mounted filesystems.  It returns the list "
10804 "of devices (eg. C</dev/sda1>, C</dev/VG/LV>)."
10805 msgstr ""
10806
10807 #. type: textblock
10808 #: ../fish/guestfish-actions.pod:3359 ../src/guestfs-actions.pod:5094
10809 msgid "Some internal mounts are not shown."
10810 msgstr ""
10811
10812 #. type: textblock
10813 #: ../fish/guestfish-actions.pod:3361
10814 msgid "See also: L</mountpoints>"
10815 msgstr ""
10816
10817 #. type: =head2
10818 #: ../fish/guestfish-actions.pod:3363
10819 msgid "mv"
10820 msgstr ""
10821
10822 #. type: verbatim
10823 #: ../fish/guestfish-actions.pod:3365
10824 #, no-wrap
10825 msgid ""
10826 " mv src dest\n"
10827 "\n"
10828 msgstr ""
10829
10830 #. type: textblock
10831 #: ../fish/guestfish-actions.pod:3367 ../src/guestfs-actions.pod:5111
10832 msgid ""
10833 "This moves a file from C<src> to C<dest> where C<dest> is either a "
10834 "destination filename or destination directory."
10835 msgstr ""
10836
10837 #. type: =head2
10838 #: ../fish/guestfish-actions.pod:3370
10839 msgid "ntfs-3g-probe"
10840 msgstr ""
10841
10842 #. type: verbatim
10843 #: ../fish/guestfish-actions.pod:3372
10844 #, no-wrap
10845 msgid ""
10846 " ntfs-3g-probe true|false device\n"
10847 "\n"
10848 msgstr ""
10849
10850 #. type: textblock
10851 #: ../fish/guestfish-actions.pod:3374 ../src/guestfs-actions.pod:5125
10852 msgid ""
10853 "This command runs the L<ntfs-3g.probe(8)> command which probes an NTFS "
10854 "C<device> for mountability.  (Not all NTFS volumes can be mounted "
10855 "read-write, and some cannot be mounted at all)."
10856 msgstr ""
10857
10858 #. type: textblock
10859 #: ../fish/guestfish-actions.pod:3378 ../src/guestfs-actions.pod:5129
10860 msgid ""
10861 "C<rw> is a boolean flag.  Set it to true if you want to test if the volume "
10862 "can be mounted read-write.  Set it to false if you want to test if the "
10863 "volume can be mounted read-only."
10864 msgstr ""
10865
10866 #. type: textblock
10867 #: ../fish/guestfish-actions.pod:3382 ../src/guestfs-actions.pod:5133
10868 msgid ""
10869 "The return value is an integer which C<0> if the operation would succeed, or "
10870 "some non-zero value documented in the L<ntfs-3g.probe(8)> manual page."
10871 msgstr ""
10872
10873 #. type: =head2
10874 #: ../fish/guestfish-actions.pod:3386
10875 msgid "ntfsresize"
10876 msgstr ""
10877
10878 #. type: verbatim
10879 #: ../fish/guestfish-actions.pod:3388
10880 #, no-wrap
10881 msgid ""
10882 " ntfsresize device\n"
10883 "\n"
10884 msgstr ""
10885
10886 #. type: textblock
10887 #: ../fish/guestfish-actions.pod:3390 ../fish/guestfish-actions.pod:3414 ../src/guestfs-actions.pod:5147 ../src/guestfs-actions.pod:5186
10888 msgid ""
10889 "This command resizes an NTFS filesystem, expanding or shrinking it to the "
10890 "size of the underlying device."
10891 msgstr ""
10892
10893 #. type: textblock
10894 #: ../fish/guestfish-actions.pod:3393 ../src/guestfs-actions.pod:5150
10895 msgid ""
10896 "I<Note:> After the resize operation, the filesystem is marked as requiring a "
10897 "consistency check (for safety).  You have to boot into Windows to perform "
10898 "this check and clear this condition.  Furthermore, ntfsresize refuses to "
10899 "resize filesystems which have been marked in this way.  So in effect it is "
10900 "not possible to call ntfsresize multiple times on a single filesystem "
10901 "without booting into Windows between each resize."
10902 msgstr ""
10903
10904 #. type: textblock
10905 #: ../fish/guestfish-actions.pod:3401 ../fish/guestfish-actions.pod:3440 ../src/guestfs-actions.pod:5158 ../src/guestfs-actions.pod:5212
10906 msgid "See also L<ntfsresize(8)>."
10907 msgstr ""
10908
10909 #. type: textblock
10910 #: ../fish/guestfish-actions.pod:3403 ../fish/guestfish-actions.pod:3451 ../src/guestfs-actions.pod:5162 ../src/guestfs-actions.pod:5252
10911 msgid ""
10912 "This function is deprecated.  In new code, use the C<ntfsresize_opts> call "
10913 "instead."
10914 msgstr ""
10915
10916 #. type: =head2
10917 #: ../fish/guestfish-actions.pod:3410
10918 msgid "ntfsresize-opts"
10919 msgstr ""
10920
10921 #. type: verbatim
10922 #: ../fish/guestfish-actions.pod:3412
10923 #, no-wrap
10924 msgid ""
10925 " ntfsresize-opts device [size:..] [force:..]\n"
10926 "\n"
10927 msgstr ""
10928
10929 #. type: textblock
10930 #: ../fish/guestfish-actions.pod:3423 ../src/guestfs-actions.pod:5195
10931 msgid ""
10932 "The new size (in bytes) of the filesystem.  If omitted, the filesystem is "
10933 "resized to fit the container (eg. partition)."
10934 msgstr ""
10935
10936 #. type: =item
10937 #: ../fish/guestfish-actions.pod:3426 ../src/guestfs-actions.pod:5198
10938 msgid "C<force>"
10939 msgstr ""
10940
10941 #. type: textblock
10942 #: ../fish/guestfish-actions.pod:3428 ../src/guestfs-actions.pod:5200
10943 msgid ""
10944 "If this option is true, then force the resize of the filesystem even if the "
10945 "filesystem is marked as requiring a consistency check."
10946 msgstr ""
10947
10948 #. type: textblock
10949 #: ../fish/guestfish-actions.pod:3431
10950 msgid ""
10951 "After the resize operation, the filesystem is always marked as requiring a "
10952 "consistency check (for safety).  You have to boot into Windows to perform "
10953 "this check and clear this condition.  If you I<don't> set the C<force> "
10954 "option then it is not possible to call L</ntfsresize-opts> multiple times on "
10955 "a single filesystem without booting into Windows between each resize."
10956 msgstr ""
10957
10958 #. type: =head2
10959 #: ../fish/guestfish-actions.pod:3444
10960 msgid "ntfsresize-size"
10961 msgstr ""
10962
10963 #. type: verbatim
10964 #: ../fish/guestfish-actions.pod:3446
10965 #, no-wrap
10966 msgid ""
10967 " ntfsresize-size device size\n"
10968 "\n"
10969 msgstr ""
10970
10971 #. type: textblock
10972 #: ../fish/guestfish-actions.pod:3448
10973 msgid ""
10974 "This command is the same as L</ntfsresize> except that it allows you to "
10975 "specify the new size (in bytes) explicitly."
10976 msgstr ""
10977
10978 #. type: =head2
10979 #: ../fish/guestfish-actions.pod:3458
10980 msgid "part-add"
10981 msgstr ""
10982
10983 #. type: verbatim
10984 #: ../fish/guestfish-actions.pod:3460
10985 #, no-wrap
10986 msgid ""
10987 " part-add device prlogex startsect endsect\n"
10988 "\n"
10989 msgstr ""
10990
10991 #. type: textblock
10992 #: ../fish/guestfish-actions.pod:3462
10993 msgid ""
10994 "This command adds a partition to C<device>.  If there is no partition table "
10995 "on the device, call L</part-init> first."
10996 msgstr ""
10997
10998 #. type: textblock
10999 #: ../fish/guestfish-actions.pod:3465 ../src/guestfs-actions.pod:5273
11000 msgid ""
11001 "The C<prlogex> parameter is the type of partition.  Normally you should pass "
11002 "C<p> or C<primary> here, but MBR partition tables also support C<l> (or "
11003 "C<logical>) and C<e> (or C<extended>) partition types."
11004 msgstr ""
11005
11006 #. type: textblock
11007 #: ../fish/guestfish-actions.pod:3470 ../src/guestfs-actions.pod:5278
11008 msgid ""
11009 "C<startsect> and C<endsect> are the start and end of the partition in "
11010 "I<sectors>.  C<endsect> may be negative, which means it counts backwards "
11011 "from the end of the disk (C<-1> is the last sector)."
11012 msgstr ""
11013
11014 #. type: textblock
11015 #: ../fish/guestfish-actions.pod:3474
11016 msgid ""
11017 "Creating a partition which covers the whole disk is not so easy.  Use "
11018 "L</part-disk> to do that."
11019 msgstr ""
11020
11021 #. type: =head2
11022 #: ../fish/guestfish-actions.pod:3477
11023 msgid "part-del"
11024 msgstr ""
11025
11026 #. type: verbatim
11027 #: ../fish/guestfish-actions.pod:3479
11028 #, no-wrap
11029 msgid ""
11030 " part-del device partnum\n"
11031 "\n"
11032 msgstr ""
11033
11034 #. type: textblock
11035 #: ../fish/guestfish-actions.pod:3481 ../src/guestfs-actions.pod:5296
11036 msgid "This command deletes the partition numbered C<partnum> on C<device>."
11037 msgstr ""
11038
11039 #. type: textblock
11040 #: ../fish/guestfish-actions.pod:3483 ../src/guestfs-actions.pod:5298
11041 msgid ""
11042 "Note that in the case of MBR partitioning, deleting an extended partition "
11043 "also deletes any logical partitions it contains."
11044 msgstr ""
11045
11046 #. type: =head2
11047 #: ../fish/guestfish-actions.pod:3487
11048 msgid "part-disk"
11049 msgstr ""
11050
11051 #. type: verbatim
11052 #: ../fish/guestfish-actions.pod:3489
11053 #, no-wrap
11054 msgid ""
11055 " part-disk device parttype\n"
11056 "\n"
11057 msgstr ""
11058
11059 #. type: textblock
11060 #: ../fish/guestfish-actions.pod:3491
11061 msgid ""
11062 "This command is simply a combination of L</part-init> followed by "
11063 "L</part-add> to create a single primary partition covering the whole disk."
11064 msgstr ""
11065
11066 #. type: textblock
11067 #: ../fish/guestfish-actions.pod:3495
11068 msgid ""
11069 "C<parttype> is the partition table type, usually C<mbr> or C<gpt>, but other "
11070 "possible values are described in L</part-init>."
11071 msgstr ""
11072
11073 #. type: =head2
11074 #: ../fish/guestfish-actions.pod:3501
11075 msgid "part-get-bootable"
11076 msgstr ""
11077
11078 #. type: verbatim
11079 #: ../fish/guestfish-actions.pod:3503
11080 #, no-wrap
11081 msgid ""
11082 " part-get-bootable device partnum\n"
11083 "\n"
11084 msgstr ""
11085
11086 #. type: textblock
11087 #: ../fish/guestfish-actions.pod:3505 ../src/guestfs-actions.pod:5334
11088 msgid ""
11089 "This command returns true if the partition C<partnum> on C<device> has the "
11090 "bootable flag set."
11091 msgstr ""
11092
11093 #. type: textblock
11094 #: ../fish/guestfish-actions.pod:3508
11095 msgid "See also L</part-set-bootable>."
11096 msgstr ""
11097
11098 #. type: =head2
11099 #: ../fish/guestfish-actions.pod:3510
11100 msgid "part-get-mbr-id"
11101 msgstr ""
11102
11103 #. type: verbatim
11104 #: ../fish/guestfish-actions.pod:3512
11105 #, no-wrap
11106 msgid ""
11107 " part-get-mbr-id device partnum\n"
11108 "\n"
11109 msgstr ""
11110
11111 #. type: textblock
11112 #: ../fish/guestfish-actions.pod:3514 ../src/guestfs-actions.pod:5350
11113 msgid ""
11114 "Returns the MBR type byte (also known as the ID byte) from the numbered "
11115 "partition C<partnum>."
11116 msgstr ""
11117
11118 #. type: textblock
11119 #: ../fish/guestfish-actions.pod:3517 ../fish/guestfish-actions.pod:3661
11120 msgid ""
11121 "Note that only MBR (old DOS-style) partitions have type bytes.  You will get "
11122 "undefined results for other partition table types (see "
11123 "L</part-get-parttype>)."
11124 msgstr ""
11125
11126 #. type: =head2
11127 #: ../fish/guestfish-actions.pod:3521
11128 msgid "part-get-parttype"
11129 msgstr ""
11130
11131 #. type: verbatim
11132 #: ../fish/guestfish-actions.pod:3523
11133 #, no-wrap
11134 msgid ""
11135 " part-get-parttype device\n"
11136 "\n"
11137 msgstr ""
11138
11139 #. type: textblock
11140 #: ../fish/guestfish-actions.pod:3525 ../src/guestfs-actions.pod:5367
11141 msgid ""
11142 "This command examines the partition table on C<device> and returns the "
11143 "partition table type (format) being used."
11144 msgstr ""
11145
11146 #. type: textblock
11147 #: ../fish/guestfish-actions.pod:3528
11148 msgid ""
11149 "Common return values include: C<msdos> (a DOS/Windows style MBR partition "
11150 "table), C<gpt> (a GPT/EFI-style partition table).  Other values are "
11151 "possible, although unusual.  See L</part-init> for a full list."
11152 msgstr ""
11153
11154 #. type: =head2
11155 #: ../fish/guestfish-actions.pod:3533
11156 msgid "part-init"
11157 msgstr ""
11158
11159 #. type: verbatim
11160 #: ../fish/guestfish-actions.pod:3535
11161 #, no-wrap
11162 msgid ""
11163 " part-init device parttype\n"
11164 "\n"
11165 msgstr ""
11166
11167 #. type: textblock
11168 #: ../fish/guestfish-actions.pod:3537 ../src/guestfs-actions.pod:5387
11169 msgid ""
11170 "This creates an empty partition table on C<device> of one of the partition "
11171 "types listed below.  Usually C<parttype> should be either C<msdos> or C<gpt> "
11172 "(for large disks)."
11173 msgstr ""
11174
11175 #. type: textblock
11176 #: ../fish/guestfish-actions.pod:3541
11177 msgid ""
11178 "Initially there are no partitions.  Following this, you should call "
11179 "L</part-add> for each partition required."
11180 msgstr ""
11181
11182 #. type: textblock
11183 #: ../fish/guestfish-actions.pod:3544 ../src/guestfs-actions.pod:5394
11184 msgid "Possible values for C<parttype> are:"
11185 msgstr ""
11186
11187 #. type: =item
11188 #: ../fish/guestfish-actions.pod:3548 ../src/guestfs-actions.pod:5398
11189 msgid "B<efi>"
11190 msgstr ""
11191
11192 #. type: =item
11193 #: ../fish/guestfish-actions.pod:3550 ../src/guestfs-actions.pod:5400
11194 msgid "B<gpt>"
11195 msgstr ""
11196
11197 #. type: textblock
11198 #: ../fish/guestfish-actions.pod:3552 ../src/guestfs-actions.pod:5402
11199 msgid "Intel EFI / GPT partition table."
11200 msgstr ""
11201
11202 #. type: textblock
11203 #: ../fish/guestfish-actions.pod:3554 ../src/guestfs-actions.pod:5404
11204 msgid ""
11205 "This is recommended for >= 2 TB partitions that will be accessed from Linux "
11206 "and Intel-based Mac OS X.  It also has limited backwards compatibility with "
11207 "the C<mbr> format."
11208 msgstr ""
11209
11210 #. type: =item
11211 #: ../fish/guestfish-actions.pod:3558 ../src/guestfs-actions.pod:5408
11212 msgid "B<mbr>"
11213 msgstr ""
11214
11215 #. type: =item
11216 #: ../fish/guestfish-actions.pod:3560 ../src/guestfs-actions.pod:5410
11217 msgid "B<msdos>"
11218 msgstr ""
11219
11220 #. type: textblock
11221 #: ../fish/guestfish-actions.pod:3562 ../src/guestfs-actions.pod:5412
11222 msgid ""
11223 "The standard PC \"Master Boot Record\" (MBR) format used by MS-DOS and "
11224 "Windows.  This partition type will B<only> work for device sizes up to 2 "
11225 "TB.  For large disks we recommend using C<gpt>."
11226 msgstr ""
11227
11228 #. type: textblock
11229 #: ../fish/guestfish-actions.pod:3569 ../src/guestfs-actions.pod:5419
11230 msgid "Other partition table types that may work but are not supported include:"
11231 msgstr ""
11232
11233 #. type: =item
11234 #: ../fish/guestfish-actions.pod:3574 ../src/guestfs-actions.pod:5424
11235 msgid "B<aix>"
11236 msgstr ""
11237
11238 #. type: textblock
11239 #: ../fish/guestfish-actions.pod:3576 ../src/guestfs-actions.pod:5426
11240 msgid "AIX disk labels."
11241 msgstr ""
11242
11243 #. type: =item
11244 #: ../fish/guestfish-actions.pod:3578 ../src/guestfs-actions.pod:5428
11245 msgid "B<amiga>"
11246 msgstr ""
11247
11248 #. type: =item
11249 #: ../fish/guestfish-actions.pod:3580 ../src/guestfs-actions.pod:5430
11250 msgid "B<rdb>"
11251 msgstr ""
11252
11253 #. type: textblock
11254 #: ../fish/guestfish-actions.pod:3582 ../src/guestfs-actions.pod:5432
11255 msgid "Amiga \"Rigid Disk Block\" format."
11256 msgstr ""
11257
11258 #. type: =item
11259 #: ../fish/guestfish-actions.pod:3584 ../src/guestfs-actions.pod:5434
11260 msgid "B<bsd>"
11261 msgstr ""
11262
11263 #. type: textblock
11264 #: ../fish/guestfish-actions.pod:3586 ../src/guestfs-actions.pod:5436
11265 msgid "BSD disk labels."
11266 msgstr ""
11267
11268 #. type: =item
11269 #: ../fish/guestfish-actions.pod:3588 ../src/guestfs-actions.pod:5438
11270 msgid "B<dasd>"
11271 msgstr ""
11272
11273 #. type: textblock
11274 #: ../fish/guestfish-actions.pod:3590 ../src/guestfs-actions.pod:5440
11275 msgid "DASD, used on IBM mainframes."
11276 msgstr ""
11277
11278 #. type: =item
11279 #: ../fish/guestfish-actions.pod:3592 ../src/guestfs-actions.pod:5442
11280 msgid "B<dvh>"
11281 msgstr ""
11282
11283 #. type: textblock
11284 #: ../fish/guestfish-actions.pod:3594 ../src/guestfs-actions.pod:5444
11285 msgid "MIPS/SGI volumes."
11286 msgstr ""
11287
11288 #. type: =item
11289 #: ../fish/guestfish-actions.pod:3596 ../src/guestfs-actions.pod:5446
11290 msgid "B<mac>"
11291 msgstr ""
11292
11293 #. type: textblock
11294 #: ../fish/guestfish-actions.pod:3598 ../src/guestfs-actions.pod:5448
11295 msgid "Old Mac partition format.  Modern Macs use C<gpt>."
11296 msgstr ""
11297
11298 #. type: =item
11299 #: ../fish/guestfish-actions.pod:3600 ../src/guestfs-actions.pod:5450
11300 msgid "B<pc98>"
11301 msgstr ""
11302
11303 #. type: textblock
11304 #: ../fish/guestfish-actions.pod:3602 ../src/guestfs-actions.pod:5452
11305 msgid "NEC PC-98 format, common in Japan apparently."
11306 msgstr ""
11307
11308 #. type: =item
11309 #: ../fish/guestfish-actions.pod:3604 ../src/guestfs-actions.pod:5454
11310 msgid "B<sun>"
11311 msgstr ""
11312
11313 #. type: textblock
11314 #: ../fish/guestfish-actions.pod:3606 ../src/guestfs-actions.pod:5456
11315 msgid "Sun disk labels."
11316 msgstr ""
11317
11318 #. type: =head2
11319 #: ../fish/guestfish-actions.pod:3610
11320 msgid "part-list"
11321 msgstr ""
11322
11323 #. type: verbatim
11324 #: ../fish/guestfish-actions.pod:3612
11325 #, no-wrap
11326 msgid ""
11327 " part-list device\n"
11328 "\n"
11329 msgstr ""
11330
11331 #. type: textblock
11332 #: ../fish/guestfish-actions.pod:3614 ../src/guestfs-actions.pod:5470
11333 msgid ""
11334 "This command parses the partition table on C<device> and returns the list of "
11335 "partitions found."
11336 msgstr ""
11337
11338 #. type: textblock
11339 #: ../fish/guestfish-actions.pod:3617 ../src/guestfs-actions.pod:5473
11340 msgid "The fields in the returned structure are:"
11341 msgstr ""
11342
11343 #. type: =item
11344 #: ../fish/guestfish-actions.pod:3621 ../src/guestfs-actions.pod:5477
11345 msgid "B<part_num>"
11346 msgstr ""
11347
11348 #. type: textblock
11349 #: ../fish/guestfish-actions.pod:3623 ../src/guestfs-actions.pod:5479
11350 msgid "Partition number, counting from 1."
11351 msgstr ""
11352
11353 #. type: =item
11354 #: ../fish/guestfish-actions.pod:3625 ../src/guestfs-actions.pod:5481
11355 msgid "B<part_start>"
11356 msgstr ""
11357
11358 #. type: textblock
11359 #: ../fish/guestfish-actions.pod:3627
11360 msgid ""
11361 "Start of the partition I<in bytes>.  To get sectors you have to divide by "
11362 "the device's sector size, see L</blockdev-getss>."
11363 msgstr ""
11364
11365 #. type: =item
11366 #: ../fish/guestfish-actions.pod:3630 ../src/guestfs-actions.pod:5486
11367 msgid "B<part_end>"
11368 msgstr ""
11369
11370 #. type: textblock
11371 #: ../fish/guestfish-actions.pod:3632 ../src/guestfs-actions.pod:5488
11372 msgid "End of the partition in bytes."
11373 msgstr ""
11374
11375 #. type: =item
11376 #: ../fish/guestfish-actions.pod:3634 ../src/guestfs-actions.pod:5490
11377 msgid "B<part_size>"
11378 msgstr ""
11379
11380 #. type: textblock
11381 #: ../fish/guestfish-actions.pod:3636 ../src/guestfs-actions.pod:5492
11382 msgid "Size of the partition in bytes."
11383 msgstr ""
11384
11385 #. type: =head2
11386 #: ../fish/guestfish-actions.pod:3640
11387 msgid "part-set-bootable"
11388 msgstr ""
11389
11390 #. type: verbatim
11391 #: ../fish/guestfish-actions.pod:3642
11392 #, no-wrap
11393 msgid ""
11394 " part-set-bootable device partnum true|false\n"
11395 "\n"
11396 msgstr ""
11397
11398 #. type: textblock
11399 #: ../fish/guestfish-actions.pod:3644 ../src/guestfs-actions.pod:5510
11400 msgid ""
11401 "This sets the bootable flag on partition numbered C<partnum> on device "
11402 "C<device>.  Note that partitions are numbered from 1."
11403 msgstr ""
11404
11405 #. type: textblock
11406 #: ../fish/guestfish-actions.pod:3647 ../src/guestfs-actions.pod:5513
11407 msgid ""
11408 "The bootable flag is used by some operating systems (notably Windows) to "
11409 "determine which partition to boot from.  It is by no means universally "
11410 "recognized."
11411 msgstr ""
11412
11413 #. type: =head2
11414 #: ../fish/guestfish-actions.pod:3651
11415 msgid "part-set-mbr-id"
11416 msgstr ""
11417
11418 #. type: verbatim
11419 #: ../fish/guestfish-actions.pod:3653
11420 #, no-wrap
11421 msgid ""
11422 " part-set-mbr-id device partnum idbyte\n"
11423 "\n"
11424 msgstr ""
11425
11426 #. type: textblock
11427 #: ../fish/guestfish-actions.pod:3655 ../src/guestfs-actions.pod:5529
11428 msgid ""
11429 "Sets the MBR type byte (also known as the ID byte) of the numbered partition "
11430 "C<partnum> to C<idbyte>.  Note that the type bytes quoted in most "
11431 "documentation are in fact hexadecimal numbers, but usually documented "
11432 "without any leading \"0x\" which might be confusing."
11433 msgstr ""
11434
11435 #. type: =head2
11436 #: ../fish/guestfish-actions.pod:3665
11437 msgid "part-set-name"
11438 msgstr ""
11439
11440 #. type: verbatim
11441 #: ../fish/guestfish-actions.pod:3667
11442 #, no-wrap
11443 msgid ""
11444 " part-set-name device partnum name\n"
11445 "\n"
11446 msgstr ""
11447
11448 #. type: textblock
11449 #: ../fish/guestfish-actions.pod:3669 ../src/guestfs-actions.pod:5551
11450 msgid ""
11451 "This sets the partition name on partition numbered C<partnum> on device "
11452 "C<device>.  Note that partitions are numbered from 1."
11453 msgstr ""
11454
11455 #. type: textblock
11456 #: ../fish/guestfish-actions.pod:3672 ../src/guestfs-actions.pod:5554
11457 msgid ""
11458 "The partition name can only be set on certain types of partition table.  "
11459 "This works on C<gpt> but not on C<mbr> partitions."
11460 msgstr ""
11461
11462 #. type: =head2
11463 #: ../fish/guestfish-actions.pod:3675
11464 msgid "part-to-dev"
11465 msgstr ""
11466
11467 #. type: verbatim
11468 #: ../fish/guestfish-actions.pod:3677
11469 #, no-wrap
11470 msgid ""
11471 " part-to-dev partition\n"
11472 "\n"
11473 msgstr ""
11474
11475 #. type: textblock
11476 #: ../fish/guestfish-actions.pod:3679 ../src/guestfs-actions.pod:5567
11477 msgid ""
11478 "This function takes a partition name (eg. \"/dev/sdb1\") and removes the "
11479 "partition number, returning the device name (eg. \"/dev/sdb\")."
11480 msgstr ""
11481
11482 #. type: textblock
11483 #: ../fish/guestfish-actions.pod:3683
11484 msgid ""
11485 "The named partition must exist, for example as a string returned from "
11486 "L</list-partitions>."
11487 msgstr ""
11488
11489 #. type: =head2
11490 #: ../fish/guestfish-actions.pod:3686
11491 msgid "ping-daemon"
11492 msgstr ""
11493
11494 #. type: verbatim
11495 #: ../fish/guestfish-actions.pod:3688
11496 #, no-wrap
11497 msgid ""
11498 " ping-daemon\n"
11499 "\n"
11500 msgstr ""
11501
11502 #. type: textblock
11503 #: ../fish/guestfish-actions.pod:3690 ../src/guestfs-actions.pod:5584
11504 msgid ""
11505 "This is a test probe into the guestfs daemon running inside the qemu "
11506 "subprocess.  Calling this function checks that the daemon responds to the "
11507 "ping message, without affecting the daemon or attached block device(s) in "
11508 "any other way."
11509 msgstr ""
11510
11511 #. type: =head2
11512 #: ../fish/guestfish-actions.pod:3695
11513 msgid "pread"
11514 msgstr ""
11515
11516 #. type: verbatim
11517 #: ../fish/guestfish-actions.pod:3697
11518 #, no-wrap
11519 msgid ""
11520 " pread path count offset\n"
11521 "\n"
11522 msgstr ""
11523
11524 #. type: textblock
11525 #: ../fish/guestfish-actions.pod:3699 ../src/guestfs-actions.pod:5602
11526 msgid ""
11527 "This command lets you read part of a file.  It reads C<count> bytes of the "
11528 "file, starting at C<offset>, from file C<path>."
11529 msgstr ""
11530
11531 #. type: textblock
11532 #: ../fish/guestfish-actions.pod:3702 ../fish/guestfish-actions.pod:3717 ../src/guestfs-actions.pod:5605 ../src/guestfs-actions.pod:5631
11533 msgid ""
11534 "This may read fewer bytes than requested.  For further details see the "
11535 "L<pread(2)> system call."
11536 msgstr ""
11537
11538 #. type: textblock
11539 #: ../fish/guestfish-actions.pod:3705
11540 msgid "See also L</pwrite>, L</pread-device>."
11541 msgstr ""
11542
11543 #. type: =head2
11544 #: ../fish/guestfish-actions.pod:3710
11545 msgid "pread-device"
11546 msgstr ""
11547
11548 #. type: verbatim
11549 #: ../fish/guestfish-actions.pod:3712
11550 #, no-wrap
11551 msgid ""
11552 " pread-device device count offset\n"
11553 "\n"
11554 msgstr ""
11555
11556 #. type: textblock
11557 #: ../fish/guestfish-actions.pod:3714 ../src/guestfs-actions.pod:5628
11558 msgid ""
11559 "This command lets you read part of a file.  It reads C<count> bytes of "
11560 "C<device>, starting at C<offset>."
11561 msgstr ""
11562
11563 #. type: textblock
11564 #: ../fish/guestfish-actions.pod:3720
11565 msgid "See also L</pread>."
11566 msgstr ""
11567
11568 #. type: =head2
11569 #: ../fish/guestfish-actions.pod:3725
11570 msgid "pvcreate"
11571 msgstr ""
11572
11573 #. type: verbatim
11574 #: ../fish/guestfish-actions.pod:3727
11575 #, no-wrap
11576 msgid ""
11577 " pvcreate device\n"
11578 "\n"
11579 msgstr ""
11580
11581 #. type: textblock
11582 #: ../fish/guestfish-actions.pod:3729 ../src/guestfs-actions.pod:5651
11583 msgid ""
11584 "This creates an LVM physical volume on the named C<device>, where C<device> "
11585 "should usually be a partition name such as C</dev/sda1>."
11586 msgstr ""
11587
11588 #. type: =head2
11589 #: ../fish/guestfish-actions.pod:3733
11590 msgid "pvremove"
11591 msgstr ""
11592
11593 #. type: verbatim
11594 #: ../fish/guestfish-actions.pod:3735
11595 #, no-wrap
11596 msgid ""
11597 " pvremove device\n"
11598 "\n"
11599 msgstr ""
11600
11601 #. type: textblock
11602 #: ../fish/guestfish-actions.pod:3737 ../src/guestfs-actions.pod:5665
11603 msgid ""
11604 "This wipes a physical volume C<device> so that LVM will no longer recognise "
11605 "it."
11606 msgstr ""
11607
11608 #. type: textblock
11609 #: ../fish/guestfish-actions.pod:3740 ../src/guestfs-actions.pod:5668
11610 msgid ""
11611 "The implementation uses the C<pvremove> command which refuses to wipe "
11612 "physical volumes that contain any volume groups, so you have to remove those "
11613 "first."
11614 msgstr ""
11615
11616 #. type: =head2
11617 #: ../fish/guestfish-actions.pod:3744
11618 msgid "pvresize"
11619 msgstr ""
11620
11621 #. type: verbatim
11622 #: ../fish/guestfish-actions.pod:3746
11623 #, no-wrap
11624 msgid ""
11625 " pvresize device\n"
11626 "\n"
11627 msgstr ""
11628
11629 #. type: textblock
11630 #: ../fish/guestfish-actions.pod:3748 ../src/guestfs-actions.pod:5682
11631 msgid ""
11632 "This resizes (expands or shrinks) an existing LVM physical volume to match "
11633 "the new size of the underlying device."
11634 msgstr ""
11635
11636 #. type: =head2
11637 #: ../fish/guestfish-actions.pod:3751
11638 msgid "pvresize-size"
11639 msgstr ""
11640
11641 #. type: verbatim
11642 #: ../fish/guestfish-actions.pod:3753
11643 #, no-wrap
11644 msgid ""
11645 " pvresize-size device size\n"
11646 "\n"
11647 msgstr ""
11648
11649 #. type: textblock
11650 #: ../fish/guestfish-actions.pod:3755
11651 msgid ""
11652 "This command is the same as L</pvresize> except that it allows you to "
11653 "specify the new size (in bytes) explicitly."
11654 msgstr ""
11655
11656 #. type: =head2
11657 #: ../fish/guestfish-actions.pod:3758
11658 msgid "pvs"
11659 msgstr ""
11660
11661 #. type: verbatim
11662 #: ../fish/guestfish-actions.pod:3760
11663 #, no-wrap
11664 msgid ""
11665 " pvs\n"
11666 "\n"
11667 msgstr ""
11668
11669 #. type: textblock
11670 #: ../fish/guestfish-actions.pod:3762 ../src/guestfs-actions.pod:5708
11671 msgid ""
11672 "List all the physical volumes detected.  This is the equivalent of the "
11673 "L<pvs(8)> command."
11674 msgstr ""
11675
11676 #. type: textblock
11677 #: ../fish/guestfish-actions.pod:3765 ../src/guestfs-actions.pod:5711
11678 msgid ""
11679 "This returns a list of just the device names that contain PVs "
11680 "(eg. C</dev/sda2>)."
11681 msgstr ""
11682
11683 #. type: textblock
11684 #: ../fish/guestfish-actions.pod:3768
11685 msgid "See also L</pvs-full>."
11686 msgstr ""
11687
11688 #. type: =head2
11689 #: ../fish/guestfish-actions.pod:3770
11690 msgid "pvs-full"
11691 msgstr ""
11692
11693 #. type: verbatim
11694 #: ../fish/guestfish-actions.pod:3772
11695 #, no-wrap
11696 msgid ""
11697 " pvs-full\n"
11698 "\n"
11699 msgstr ""
11700
11701 #. type: textblock
11702 #: ../fish/guestfish-actions.pod:3774 ../src/guestfs-actions.pod:5727
11703 msgid ""
11704 "List all the physical volumes detected.  This is the equivalent of the "
11705 "L<pvs(8)> command.  The \"full\" version includes all fields."
11706 msgstr ""
11707
11708 #. type: =head2
11709 #: ../fish/guestfish-actions.pod:3777
11710 msgid "pvuuid"
11711 msgstr ""
11712
11713 #. type: verbatim
11714 #: ../fish/guestfish-actions.pod:3779
11715 #, no-wrap
11716 msgid ""
11717 " pvuuid device\n"
11718 "\n"
11719 msgstr ""
11720
11721 #. type: textblock
11722 #: ../fish/guestfish-actions.pod:3781 ../src/guestfs-actions.pod:5742
11723 msgid "This command returns the UUID of the LVM PV C<device>."
11724 msgstr ""
11725
11726 #. type: =head2
11727 #: ../fish/guestfish-actions.pod:3783
11728 msgid "pwrite"
11729 msgstr ""
11730
11731 #. type: verbatim
11732 #: ../fish/guestfish-actions.pod:3785
11733 #, no-wrap
11734 msgid ""
11735 " pwrite path content offset\n"
11736 "\n"
11737 msgstr ""
11738
11739 #. type: textblock
11740 #: ../fish/guestfish-actions.pod:3787 ../src/guestfs-actions.pod:5758
11741 msgid ""
11742 "This command writes to part of a file.  It writes the data buffer C<content> "
11743 "to the file C<path> starting at offset C<offset>."
11744 msgstr ""
11745
11746 #. type: textblock
11747 #: ../fish/guestfish-actions.pod:3790 ../src/guestfs-actions.pod:5761
11748 msgid ""
11749 "This command implements the L<pwrite(2)> system call, and like that system "
11750 "call it may not write the full data requested.  The return value is the "
11751 "number of bytes that were actually written to the file.  This could even be "
11752 "0, although short writes are unlikely for regular files in ordinary "
11753 "circumstances."
11754 msgstr ""
11755
11756 #. type: textblock
11757 #: ../fish/guestfish-actions.pod:3796
11758 msgid "See also L</pread>, L</pwrite-device>."
11759 msgstr ""
11760
11761 #. type: =head2
11762 #: ../fish/guestfish-actions.pod:3801
11763 msgid "pwrite-device"
11764 msgstr ""
11765
11766 #. type: verbatim
11767 #: ../fish/guestfish-actions.pod:3803
11768 #, no-wrap
11769 msgid ""
11770 " pwrite-device device content offset\n"
11771 "\n"
11772 msgstr ""
11773
11774 #. type: textblock
11775 #: ../fish/guestfish-actions.pod:3805 ../src/guestfs-actions.pod:5785
11776 msgid ""
11777 "This command writes to part of a device.  It writes the data buffer "
11778 "C<content> to C<device> starting at offset C<offset>."
11779 msgstr ""
11780
11781 #. type: textblock
11782 #: ../fish/guestfish-actions.pod:3808 ../src/guestfs-actions.pod:5788
11783 msgid ""
11784 "This command implements the L<pwrite(2)> system call, and like that system "
11785 "call it may not write the full data requested (although short writes to disk "
11786 "devices and partitions are probably impossible with standard Linux kernels)."
11787 msgstr ""
11788
11789 #. type: textblock
11790 #: ../fish/guestfish-actions.pod:3813
11791 msgid "See also L</pwrite>."
11792 msgstr ""
11793
11794 #. type: =head2
11795 #: ../fish/guestfish-actions.pod:3818
11796 msgid "read-file"
11797 msgstr ""
11798
11799 #. type: verbatim
11800 #: ../fish/guestfish-actions.pod:3820
11801 #, no-wrap
11802 msgid ""
11803 " read-file path\n"
11804 "\n"
11805 msgstr ""
11806
11807 #. type: textblock
11808 #: ../fish/guestfish-actions.pod:3822 ../src/guestfs-actions.pod:5809
11809 msgid "This calls returns the contents of the file C<path> as a buffer."
11810 msgstr ""
11811
11812 #. type: textblock
11813 #: ../fish/guestfish-actions.pod:3825
11814 msgid ""
11815 "Unlike L</cat>, this function can correctly handle files that contain "
11816 "embedded ASCII NUL characters.  However unlike L</download>, this function "
11817 "is limited in the total size of file that can be handled."
11818 msgstr ""
11819
11820 #. type: =head2
11821 #: ../fish/guestfish-actions.pod:3833
11822 msgid "read-lines"
11823 msgstr ""
11824
11825 #. type: verbatim
11826 #: ../fish/guestfish-actions.pod:3835
11827 #, no-wrap
11828 msgid ""
11829 " read-lines path\n"
11830 "\n"
11831 msgstr ""
11832
11833 #. type: textblock
11834 #: ../fish/guestfish-actions.pod:3839 ../src/guestfs-actions.pod:5834
11835 msgid ""
11836 "The file contents are returned as a list of lines.  Trailing C<LF> and "
11837 "C<CRLF> character sequences are I<not> returned."
11838 msgstr ""
11839
11840 #. type: textblock
11841 #: ../fish/guestfish-actions.pod:3842
11842 msgid ""
11843 "Note that this function cannot correctly handle binary files (specifically, "
11844 "files containing C<\\0> character which is treated as end of line).  For "
11845 "those you need to use the L</read-file> function which has a more complex "
11846 "interface."
11847 msgstr ""
11848
11849 #. type: =head2
11850 #: ../fish/guestfish-actions.pod:3847
11851 msgid "readdir"
11852 msgstr ""
11853
11854 #. type: verbatim
11855 #: ../fish/guestfish-actions.pod:3849
11856 #, no-wrap
11857 msgid ""
11858 " readdir dir\n"
11859 "\n"
11860 msgstr ""
11861
11862 #. type: textblock
11863 #: ../fish/guestfish-actions.pod:3851 ../src/guestfs-actions.pod:5854
11864 msgid "This returns the list of directory entries in directory C<dir>."
11865 msgstr ""
11866
11867 #. type: textblock
11868 #: ../fish/guestfish-actions.pod:3853 ../src/guestfs-actions.pod:5856
11869 msgid ""
11870 "All entries in the directory are returned, including C<.> and C<..>.  The "
11871 "entries are I<not> sorted, but returned in the same order as the underlying "
11872 "filesystem."
11873 msgstr ""
11874
11875 #. type: textblock
11876 #: ../fish/guestfish-actions.pod:3857 ../src/guestfs-actions.pod:5860
11877 msgid ""
11878 "Also this call returns basic file type information about each file.  The "
11879 "C<ftyp> field will contain one of the following characters:"
11880 msgstr ""
11881
11882 #. type: =item
11883 #: ../fish/guestfish-actions.pod:3862 ../src/guestfs-actions.pod:5865
11884 msgid "'b'"
11885 msgstr ""
11886
11887 #. type: textblock
11888 #: ../fish/guestfish-actions.pod:3864 ../src/guestfs-actions.pod:5867
11889 msgid "Block special"
11890 msgstr ""
11891
11892 #. type: =item
11893 #: ../fish/guestfish-actions.pod:3866 ../src/guestfs-actions.pod:5869
11894 msgid "'c'"
11895 msgstr ""
11896
11897 #. type: textblock
11898 #: ../fish/guestfish-actions.pod:3868 ../src/guestfs-actions.pod:5871
11899 msgid "Char special"
11900 msgstr ""
11901
11902 #. type: =item
11903 #: ../fish/guestfish-actions.pod:3870 ../src/guestfs-actions.pod:5873
11904 msgid "'d'"
11905 msgstr ""
11906
11907 #. type: textblock
11908 #: ../fish/guestfish-actions.pod:3872 ../src/guestfs-actions.pod:5875
11909 msgid "Directory"
11910 msgstr ""
11911
11912 #. type: =item
11913 #: ../fish/guestfish-actions.pod:3874 ../src/guestfs-actions.pod:5877
11914 msgid "'f'"
11915 msgstr ""
11916
11917 #. type: textblock
11918 #: ../fish/guestfish-actions.pod:3876 ../src/guestfs-actions.pod:5879
11919 msgid "FIFO (named pipe)"
11920 msgstr ""
11921
11922 #. type: =item
11923 #: ../fish/guestfish-actions.pod:3878 ../src/guestfs-actions.pod:5881
11924 msgid "'l'"
11925 msgstr ""
11926
11927 #. type: textblock
11928 #: ../fish/guestfish-actions.pod:3880 ../src/guestfs-actions.pod:5883
11929 msgid "Symbolic link"
11930 msgstr ""
11931
11932 #. type: =item
11933 #: ../fish/guestfish-actions.pod:3882 ../src/guestfs-actions.pod:5885
11934 msgid "'r'"
11935 msgstr ""
11936
11937 #. type: textblock
11938 #: ../fish/guestfish-actions.pod:3884 ../src/guestfs-actions.pod:5887
11939 msgid "Regular file"
11940 msgstr ""
11941
11942 #. type: =item
11943 #: ../fish/guestfish-actions.pod:3886 ../src/guestfs-actions.pod:5889
11944 msgid "'s'"
11945 msgstr ""
11946
11947 #. type: textblock
11948 #: ../fish/guestfish-actions.pod:3888 ../src/guestfs-actions.pod:5891
11949 msgid "Socket"
11950 msgstr ""
11951
11952 #. type: =item
11953 #: ../fish/guestfish-actions.pod:3890 ../src/guestfs-actions.pod:5893
11954 msgid "'u'"
11955 msgstr ""
11956
11957 #. type: textblock
11958 #: ../fish/guestfish-actions.pod:3892 ../src/guestfs-actions.pod:5895
11959 msgid "Unknown file type"
11960 msgstr ""
11961
11962 #. type: =item
11963 #: ../fish/guestfish-actions.pod:3894 ../src/guestfs-actions.pod:5897
11964 msgid "'?'"
11965 msgstr ""
11966
11967 #. type: textblock
11968 #: ../fish/guestfish-actions.pod:3896 ../src/guestfs-actions.pod:5899
11969 msgid "The L<readdir(3)> call returned a C<d_type> field with an unexpected value"
11970 msgstr ""
11971
11972 #. type: textblock
11973 #: ../fish/guestfish-actions.pod:3901
11974 msgid ""
11975 "This function is primarily intended for use by programs.  To get a simple "
11976 "list of names, use L</ls>.  To get a printable directory for human "
11977 "consumption, use L</ll>."
11978 msgstr ""
11979
11980 #. type: =head2
11981 #: ../fish/guestfish-actions.pod:3905
11982 msgid "readlink"
11983 msgstr ""
11984
11985 #. type: verbatim
11986 #: ../fish/guestfish-actions.pod:3907
11987 #, no-wrap
11988 msgid ""
11989 " readlink path\n"
11990 "\n"
11991 msgstr ""
11992
11993 #. type: textblock
11994 #: ../fish/guestfish-actions.pod:3909 ../src/guestfs-actions.pod:5920
11995 msgid "This command reads the target of a symbolic link."
11996 msgstr ""
11997
11998 #. type: =head2
11999 #: ../fish/guestfish-actions.pod:3911
12000 msgid "readlinklist"
12001 msgstr ""
12002
12003 #. type: verbatim
12004 #: ../fish/guestfish-actions.pod:3913
12005 #, no-wrap
12006 msgid ""
12007 " readlinklist path 'names ...'\n"
12008 "\n"
12009 msgstr ""
12010
12011 #. type: textblock
12012 #: ../fish/guestfish-actions.pod:3915 ../src/guestfs-actions.pod:5934
12013 msgid ""
12014 "This call allows you to do a C<readlink> operation on multiple files, where "
12015 "all files are in the directory C<path>.  C<names> is the list of files from "
12016 "this directory."
12017 msgstr ""
12018
12019 #. type: textblock
12020 #: ../fish/guestfish-actions.pod:3919 ../src/guestfs-actions.pod:5938
12021 msgid ""
12022 "On return you get a list of strings, with a one-to-one correspondence to the "
12023 "C<names> list.  Each string is the value of the symbolic link."
12024 msgstr ""
12025
12026 #. type: textblock
12027 #: ../fish/guestfish-actions.pod:3923 ../src/guestfs-actions.pod:5942
12028 msgid ""
12029 "If the C<readlink(2)> operation fails on any name, then the corresponding "
12030 "result string is the empty string C<\"\">.  However the whole operation is "
12031 "completed even if there were C<readlink(2)> errors, and so you can call this "
12032 "function with names where you don't know if they are symbolic links already "
12033 "(albeit slightly less efficient)."
12034 msgstr ""
12035
12036 #. type: textblock
12037 #: ../fish/guestfish-actions.pod:3930 ../src/guestfs-actions.pod:5949
12038 msgid ""
12039 "This call is intended for programs that want to efficiently list a directory "
12040 "contents without making many round-trips.  Very long directory listings "
12041 "might cause the protocol message size to be exceeded, causing this call to "
12042 "fail.  The caller must split up such requests into smaller groups of names."
12043 msgstr ""
12044
12045 #. type: =head2
12046 #: ../fish/guestfish-actions.pod:3937
12047 msgid "realpath"
12048 msgstr ""
12049
12050 #. type: verbatim
12051 #: ../fish/guestfish-actions.pod:3939
12052 #, no-wrap
12053 msgid ""
12054 " realpath path\n"
12055 "\n"
12056 msgstr ""
12057
12058 #. type: textblock
12059 #: ../fish/guestfish-actions.pod:3941 ../src/guestfs-actions.pod:5968
12060 msgid ""
12061 "Return the canonicalized absolute pathname of C<path>.  The returned path "
12062 "has no C<.>, C<..> or symbolic link path elements."
12063 msgstr ""
12064
12065 #. type: =head2
12066 #: ../fish/guestfish-actions.pod:3944
12067 msgid "removexattr"
12068 msgstr ""
12069
12070 #. type: verbatim
12071 #: ../fish/guestfish-actions.pod:3946
12072 #, no-wrap
12073 msgid ""
12074 " removexattr xattr path\n"
12075 "\n"
12076 msgstr ""
12077
12078 #. type: textblock
12079 #: ../fish/guestfish-actions.pod:3948 ../src/guestfs-actions.pod:5983
12080 msgid "This call removes the extended attribute named C<xattr> of the file C<path>."
12081 msgstr ""
12082
12083 #. type: textblock
12084 #: ../fish/guestfish-actions.pod:3951
12085 msgid "See also: L</lremovexattr>, L<attr(5)>."
12086 msgstr ""
12087
12088 #. type: =head2
12089 #: ../fish/guestfish-actions.pod:3953
12090 msgid "resize2fs"
12091 msgstr ""
12092
12093 #. type: verbatim
12094 #: ../fish/guestfish-actions.pod:3955
12095 #, no-wrap
12096 msgid ""
12097 " resize2fs device\n"
12098 "\n"
12099 msgstr ""
12100
12101 #. type: textblock
12102 #: ../fish/guestfish-actions.pod:3957 ../src/guestfs-actions.pod:5998
12103 msgid ""
12104 "This resizes an ext2, ext3 or ext4 filesystem to match the size of the "
12105 "underlying device."
12106 msgstr ""
12107
12108 #. type: textblock
12109 #: ../fish/guestfish-actions.pod:3960
12110 msgid ""
12111 "I<Note:> It is sometimes required that you run L</e2fsck-f> on the C<device> "
12112 "before calling this command.  For unknown reasons C<resize2fs> sometimes "
12113 "gives an error about this and sometimes not.  In any case, it is always safe "
12114 "to call L</e2fsck-f> before calling this function."
12115 msgstr ""
12116
12117 #. type: =head2
12118 #: ../fish/guestfish-actions.pod:3966
12119 msgid "resize2fs-M"
12120 msgstr ""
12121
12122 #. type: verbatim
12123 #: ../fish/guestfish-actions.pod:3968
12124 #, no-wrap
12125 msgid ""
12126 " resize2fs-M device\n"
12127 "\n"
12128 msgstr ""
12129
12130 #. type: textblock
12131 #: ../fish/guestfish-actions.pod:3970
12132 msgid ""
12133 "This command is the same as L</resize2fs>, but the filesystem is resized to "
12134 "its minimum size.  This works like the I<-M> option to the C<resize2fs> "
12135 "command."
12136 msgstr ""
12137
12138 #. type: textblock
12139 #: ../fish/guestfish-actions.pod:3974
12140 msgid ""
12141 "To get the resulting size of the filesystem you should call L</tune2fs-l> "
12142 "and read the C<Block size> and C<Block count> values.  These two numbers, "
12143 "multiplied together, give the resulting size of the minimal filesystem in "
12144 "bytes."
12145 msgstr ""
12146
12147 #. type: =head2
12148 #: ../fish/guestfish-actions.pod:3979
12149 msgid "resize2fs-size"
12150 msgstr ""
12151
12152 #. type: verbatim
12153 #: ../fish/guestfish-actions.pod:3981
12154 #, no-wrap
12155 msgid ""
12156 " resize2fs-size device size\n"
12157 "\n"
12158 msgstr ""
12159
12160 #. type: textblock
12161 #: ../fish/guestfish-actions.pod:3983
12162 msgid ""
12163 "This command is the same as L</resize2fs> except that it allows you to "
12164 "specify the new size (in bytes) explicitly."
12165 msgstr ""
12166
12167 #. type: =head2
12168 #: ../fish/guestfish-actions.pod:3986
12169 msgid "rm"
12170 msgstr ""
12171
12172 #. type: verbatim
12173 #: ../fish/guestfish-actions.pod:3988
12174 #, no-wrap
12175 msgid ""
12176 " rm path\n"
12177 "\n"
12178 msgstr ""
12179
12180 #. type: textblock
12181 #: ../fish/guestfish-actions.pod:3990 ../src/guestfs-actions.pod:6050
12182 msgid "Remove the single file C<path>."
12183 msgstr ""
12184
12185 #. type: =head2
12186 #: ../fish/guestfish-actions.pod:3992
12187 msgid "rm-rf"
12188 msgstr ""
12189
12190 #. type: verbatim
12191 #: ../fish/guestfish-actions.pod:3994
12192 #, no-wrap
12193 msgid ""
12194 " rm-rf path\n"
12195 "\n"
12196 msgstr ""
12197
12198 #. type: textblock
12199 #: ../fish/guestfish-actions.pod:3996 ../src/guestfs-actions.pod:6062
12200 msgid ""
12201 "Remove the file or directory C<path>, recursively removing the contents if "
12202 "its a directory.  This is like the C<rm -rf> shell command."
12203 msgstr ""
12204
12205 #. type: =head2
12206 #: ../fish/guestfish-actions.pod:4000
12207 msgid "rmdir"
12208 msgstr ""
12209
12210 #. type: verbatim
12211 #: ../fish/guestfish-actions.pod:4002
12212 #, no-wrap
12213 msgid ""
12214 " rmdir path\n"
12215 "\n"
12216 msgstr ""
12217
12218 #. type: textblock
12219 #: ../fish/guestfish-actions.pod:4004 ../src/guestfs-actions.pod:6076
12220 msgid "Remove the single directory C<path>."
12221 msgstr ""
12222
12223 #. type: =head2
12224 #: ../fish/guestfish-actions.pod:4006
12225 msgid "rmmountpoint"
12226 msgstr ""
12227
12228 #. type: verbatim
12229 #: ../fish/guestfish-actions.pod:4008
12230 #, no-wrap
12231 msgid ""
12232 " rmmountpoint exemptpath\n"
12233 "\n"
12234 msgstr ""
12235
12236 #. type: textblock
12237 #: ../fish/guestfish-actions.pod:4010
12238 msgid ""
12239 "This calls removes a mountpoint that was previously created with "
12240 "L</mkmountpoint>.  See L</mkmountpoint> for full details."
12241 msgstr ""
12242
12243 #. type: =head2
12244 #: ../fish/guestfish-actions.pod:4014
12245 msgid "scrub-device"
12246 msgstr ""
12247
12248 #. type: verbatim
12249 #: ../fish/guestfish-actions.pod:4016
12250 #, no-wrap
12251 msgid ""
12252 " scrub-device device\n"
12253 "\n"
12254 msgstr ""
12255
12256 #. type: textblock
12257 #: ../fish/guestfish-actions.pod:4018 ../src/guestfs-actions.pod:6102
12258 msgid ""
12259 "This command writes patterns over C<device> to make data retrieval more "
12260 "difficult."
12261 msgstr ""
12262
12263 #. type: textblock
12264 #: ../fish/guestfish-actions.pod:4021 ../fish/guestfish-actions.pod:4036 ../fish/guestfish-actions.pod:4049 ../src/guestfs-actions.pod:6105 ../src/guestfs-actions.pod:6126 ../src/guestfs-actions.pod:6145
12265 msgid ""
12266 "It is an interface to the L<scrub(1)> program.  See that manual page for "
12267 "more details."
12268 msgstr ""
12269
12270 #. type: =head2
12271 #: ../fish/guestfish-actions.pod:4027
12272 msgid "scrub-file"
12273 msgstr ""
12274
12275 #. type: verbatim
12276 #: ../fish/guestfish-actions.pod:4029
12277 #, no-wrap
12278 msgid ""
12279 " scrub-file file\n"
12280 "\n"
12281 msgstr ""
12282
12283 #. type: textblock
12284 #: ../fish/guestfish-actions.pod:4031 ../src/guestfs-actions.pod:6121
12285 msgid ""
12286 "This command writes patterns over a file to make data retrieval more "
12287 "difficult."
12288 msgstr ""
12289
12290 #. type: textblock
12291 #: ../fish/guestfish-actions.pod:4034 ../src/guestfs-actions.pod:6124
12292 msgid "The file is I<removed> after scrubbing."
12293 msgstr ""
12294
12295 #. type: =head2
12296 #: ../fish/guestfish-actions.pod:4039
12297 msgid "scrub-freespace"
12298 msgstr ""
12299
12300 #. type: verbatim
12301 #: ../fish/guestfish-actions.pod:4041
12302 #, no-wrap
12303 msgid ""
12304 " scrub-freespace dir\n"
12305 "\n"
12306 msgstr ""
12307
12308 #. type: textblock
12309 #: ../fish/guestfish-actions.pod:4043
12310 msgid ""
12311 "This command creates the directory C<dir> and then fills it with files until "
12312 "the filesystem is full, and scrubs the files as for L</scrub-file>, and "
12313 "deletes them.  The intention is to scrub any free space on the partition "
12314 "containing C<dir>."
12315 msgstr ""
12316
12317 #. type: =head2
12318 #: ../fish/guestfish-actions.pod:4052
12319 msgid "set-append"
12320 msgstr ""
12321
12322 #. type: =head2
12323 #: ../fish/guestfish-actions.pod:4054
12324 msgid "append"
12325 msgstr ""
12326
12327 #. type: verbatim
12328 #: ../fish/guestfish-actions.pod:4056
12329 #, no-wrap
12330 msgid ""
12331 " set-append append\n"
12332 "\n"
12333 msgstr ""
12334
12335 #. type: textblock
12336 #: ../fish/guestfish-actions.pod:4058 ../src/guestfs-actions.pod:6158
12337 msgid ""
12338 "This function is used to add additional options to the guest kernel command "
12339 "line."
12340 msgstr ""
12341
12342 #. type: textblock
12343 #: ../fish/guestfish-actions.pod:4061 ../src/guestfs-actions.pod:6161
12344 msgid ""
12345 "The default is C<NULL> unless overridden by setting C<LIBGUESTFS_APPEND> "
12346 "environment variable."
12347 msgstr ""
12348
12349 #. type: textblock
12350 #: ../fish/guestfish-actions.pod:4064 ../src/guestfs-actions.pod:6164
12351 msgid ""
12352 "Setting C<append> to C<NULL> means I<no> additional options are passed "
12353 "(libguestfs always adds a few of its own)."
12354 msgstr ""
12355
12356 #. type: =head2
12357 #: ../fish/guestfish-actions.pod:4067
12358 msgid "set-attach-method"
12359 msgstr ""
12360
12361 #. type: =head2
12362 #: ../fish/guestfish-actions.pod:4069
12363 msgid "attach-method"
12364 msgstr ""
12365
12366 #. type: verbatim
12367 #: ../fish/guestfish-actions.pod:4071
12368 #, no-wrap
12369 msgid ""
12370 " set-attach-method attachmethod\n"
12371 "\n"
12372 msgstr ""
12373
12374 #. type: textblock
12375 #: ../fish/guestfish-actions.pod:4073 ../src/guestfs-actions.pod:6177
12376 msgid ""
12377 "Set the method that libguestfs uses to connect to the back end guestfsd "
12378 "daemon.  Possible methods are:"
12379 msgstr ""
12380
12381 #. type: =item
12382 #: ../fish/guestfish-actions.pod:4078 ../src/guestfs-actions.pod:6182 ../src/guestfs.pod:2687
12383 msgid "C<appliance>"
12384 msgstr ""
12385
12386 #. type: textblock
12387 #: ../fish/guestfish-actions.pod:4080 ../src/guestfs-actions.pod:6184
12388 msgid ""
12389 "Launch an appliance and connect to it.  This is the ordinary method and the "
12390 "default."
12391 msgstr ""
12392
12393 #. type: =item
12394 #: ../fish/guestfish-actions.pod:4083 ../src/guestfs-actions.pod:6187
12395 msgid "C<unix:I<path>>"
12396 msgstr ""
12397
12398 #. type: textblock
12399 #: ../fish/guestfish-actions.pod:4085 ../src/guestfs-actions.pod:6189
12400 msgid "Connect to the Unix domain socket I<path>."
12401 msgstr ""
12402
12403 #. type: textblock
12404 #: ../fish/guestfish-actions.pod:4087 ../src/guestfs-actions.pod:6191
12405 msgid ""
12406 "This method lets you connect to an existing daemon or (using virtio-serial) "
12407 "to a live guest.  For more information, see L<guestfs(3)/ATTACHING TO "
12408 "RUNNING DAEMONS>."
12409 msgstr ""
12410
12411 #. type: =head2
12412 #: ../fish/guestfish-actions.pod:4093
12413 msgid "set-autosync"
12414 msgstr ""
12415
12416 #. type: =head2
12417 #: ../fish/guestfish-actions.pod:4095
12418 msgid "autosync"
12419 msgstr ""
12420
12421 #. type: verbatim
12422 #: ../fish/guestfish-actions.pod:4097
12423 #, no-wrap
12424 msgid ""
12425 " set-autosync true|false\n"
12426 "\n"
12427 msgstr ""
12428
12429 #. type: textblock
12430 #: ../fish/guestfish-actions.pod:4099 ../src/guestfs-actions.pod:6207
12431 msgid ""
12432 "If C<autosync> is true, this enables autosync.  Libguestfs will make a best "
12433 "effort attempt to make filesystems consistent and synchronized when the "
12434 "handle is closed (also if the program exits without closing handles)."
12435 msgstr ""
12436
12437 #. type: textblock
12438 #: ../fish/guestfish-actions.pod:4104 ../src/guestfs-actions.pod:6212
12439 msgid ""
12440 "This is enabled by default (since libguestfs 1.5.24, previously it was "
12441 "disabled by default)."
12442 msgstr ""
12443
12444 #. type: =head2
12445 #: ../fish/guestfish-actions.pod:4107
12446 msgid "set-direct"
12447 msgstr ""
12448
12449 #. type: =head2
12450 #: ../fish/guestfish-actions.pod:4109
12451 msgid "direct"
12452 msgstr ""
12453
12454 #. type: verbatim
12455 #: ../fish/guestfish-actions.pod:4111
12456 #, no-wrap
12457 msgid ""
12458 " set-direct true|false\n"
12459 "\n"
12460 msgstr ""
12461
12462 #. type: textblock
12463 #: ../fish/guestfish-actions.pod:4113 ../src/guestfs-actions.pod:6225
12464 msgid ""
12465 "If the direct appliance mode flag is enabled, then stdin and stdout are "
12466 "passed directly through to the appliance once it is launched."
12467 msgstr ""
12468
12469 #. type: textblock
12470 #: ../fish/guestfish-actions.pod:4117
12471 msgid ""
12472 "One consequence of this is that log messages aren't caught by the library "
12473 "and handled by L</set-log-message-callback>, but go straight to stdout."
12474 msgstr ""
12475
12476 #. type: textblock
12477 #: ../fish/guestfish-actions.pod:4121 ../src/guestfs-actions.pod:6233
12478 msgid "You probably don't want to use this unless you know what you are doing."
12479 msgstr ""
12480
12481 #. type: textblock
12482 #: ../fish/guestfish-actions.pod:4124 ../src/guestfs-actions.pod:6236
12483 msgid "The default is disabled."
12484 msgstr ""
12485
12486 #. type: =head2
12487 #: ../fish/guestfish-actions.pod:4126
12488 msgid "set-e2label"
12489 msgstr ""
12490
12491 #. type: verbatim
12492 #: ../fish/guestfish-actions.pod:4128
12493 #, no-wrap
12494 msgid ""
12495 " set-e2label device label\n"
12496 "\n"
12497 msgstr ""
12498
12499 #. type: textblock
12500 #: ../fish/guestfish-actions.pod:4130 ../src/guestfs-actions.pod:6249
12501 msgid ""
12502 "This sets the ext2/3/4 filesystem label of the filesystem on C<device> to "
12503 "C<label>.  Filesystem labels are limited to 16 characters."
12504 msgstr ""
12505
12506 #. type: textblock
12507 #: ../fish/guestfish-actions.pod:4134
12508 msgid ""
12509 "You can use either L</tune2fs-l> or L</get-e2label> to return the existing "
12510 "label on a filesystem."
12511 msgstr ""
12512
12513 #. type: =head2
12514 #: ../fish/guestfish-actions.pod:4137
12515 msgid "set-e2uuid"
12516 msgstr ""
12517
12518 #. type: verbatim
12519 #: ../fish/guestfish-actions.pod:4139
12520 #, no-wrap
12521 msgid ""
12522 " set-e2uuid device uuid\n"
12523 "\n"
12524 msgstr ""
12525
12526 #. type: textblock
12527 #: ../fish/guestfish-actions.pod:4141 ../src/guestfs-actions.pod:6267
12528 msgid ""
12529 "This sets the ext2/3/4 filesystem UUID of the filesystem on C<device> to "
12530 "C<uuid>.  The format of the UUID and alternatives such as C<clear>, "
12531 "C<random> and C<time> are described in the L<tune2fs(8)> manpage."
12532 msgstr ""
12533
12534 #. type: textblock
12535 #: ../fish/guestfish-actions.pod:4146
12536 msgid ""
12537 "You can use either L</tune2fs-l> or L</get-e2uuid> to return the existing "
12538 "UUID of a filesystem."
12539 msgstr ""
12540
12541 #. type: =head2
12542 #: ../fish/guestfish-actions.pod:4149
12543 msgid "set-memsize"
12544 msgstr ""
12545
12546 #. type: =head2
12547 #: ../fish/guestfish-actions.pod:4151
12548 msgid "memsize"
12549 msgstr ""
12550
12551 #. type: verbatim
12552 #: ../fish/guestfish-actions.pod:4153
12553 #, no-wrap
12554 msgid ""
12555 " set-memsize memsize\n"
12556 "\n"
12557 msgstr ""
12558
12559 #. type: textblock
12560 #: ../fish/guestfish-actions.pod:4155
12561 msgid ""
12562 "This sets the memory size in megabytes allocated to the qemu subprocess.  "
12563 "This only has any effect if called before L</launch>."
12564 msgstr ""
12565
12566 #. type: textblock
12567 #: ../fish/guestfish-actions.pod:4159 ../src/guestfs-actions.pod:6289
12568 msgid ""
12569 "You can also change this by setting the environment variable "
12570 "C<LIBGUESTFS_MEMSIZE> before the handle is created."
12571 msgstr ""
12572
12573 #. type: =head2
12574 #: ../fish/guestfish-actions.pod:4166
12575 msgid "set-network"
12576 msgstr ""
12577
12578 #. type: =head2
12579 #: ../fish/guestfish-actions.pod:4168
12580 msgid "network"
12581 msgstr ""
12582
12583 #. type: verbatim
12584 #: ../fish/guestfish-actions.pod:4170
12585 #, no-wrap
12586 msgid ""
12587 " set-network true|false\n"
12588 "\n"
12589 msgstr ""
12590
12591 #. type: textblock
12592 #: ../fish/guestfish-actions.pod:4172 ../src/guestfs-actions.pod:6306
12593 msgid ""
12594 "If C<network> is true, then the network is enabled in the libguestfs "
12595 "appliance.  The default is false."
12596 msgstr ""
12597
12598 #. type: textblock
12599 #: ../fish/guestfish-actions.pod:4175 ../src/guestfs-actions.pod:6309
12600 msgid ""
12601 "This affects whether commands are able to access the network (see "
12602 "L<guestfs(3)/RUNNING COMMANDS>)."
12603 msgstr ""
12604
12605 #. type: textblock
12606 #: ../fish/guestfish-actions.pod:4178
12607 msgid "You must call this before calling L</launch>, otherwise it has no effect."
12608 msgstr ""
12609
12610 #. type: =head2
12611 #: ../fish/guestfish-actions.pod:4181
12612 msgid "set-path"
12613 msgstr ""
12614
12615 #. type: verbatim
12616 #: ../fish/guestfish-actions.pod:4185
12617 #, no-wrap
12618 msgid ""
12619 " set-path searchpath\n"
12620 "\n"
12621 msgstr ""
12622
12623 #. type: textblock
12624 #: ../fish/guestfish-actions.pod:4187 ../src/guestfs-actions.pod:6325
12625 msgid "Set the path that libguestfs searches for kernel and initrd.img."
12626 msgstr ""
12627
12628 #. type: textblock
12629 #: ../fish/guestfish-actions.pod:4189 ../src/guestfs-actions.pod:6327
12630 msgid ""
12631 "The default is C<$libdir/guestfs> unless overridden by setting "
12632 "C<LIBGUESTFS_PATH> environment variable."
12633 msgstr ""
12634
12635 #. type: textblock
12636 #: ../fish/guestfish-actions.pod:4192 ../src/guestfs-actions.pod:6330
12637 msgid "Setting C<path> to C<NULL> restores the default path."
12638 msgstr ""
12639
12640 #. type: =head2
12641 #: ../fish/guestfish-actions.pod:4194
12642 msgid "set-pgroup"
12643 msgstr ""
12644
12645 #. type: =head2
12646 #: ../fish/guestfish-actions.pod:4196
12647 msgid "pgroup"
12648 msgstr ""
12649
12650 #. type: verbatim
12651 #: ../fish/guestfish-actions.pod:4198
12652 #, no-wrap
12653 msgid ""
12654 " set-pgroup true|false\n"
12655 "\n"
12656 msgstr ""
12657
12658 #. type: textblock
12659 #: ../fish/guestfish-actions.pod:4200 ../src/guestfs-actions.pod:6342
12660 msgid ""
12661 "If C<pgroup> is true, child processes are placed into their own process "
12662 "group."
12663 msgstr ""
12664
12665 #. type: textblock
12666 #: ../fish/guestfish-actions.pod:4203 ../src/guestfs-actions.pod:6345
12667 msgid ""
12668 "The practical upshot of this is that signals like C<SIGINT> (from users "
12669 "pressing C<^C>) won't be received by the child process."
12670 msgstr ""
12671
12672 #. type: textblock
12673 #: ../fish/guestfish-actions.pod:4206 ../src/guestfs-actions.pod:6348
12674 msgid ""
12675 "The default for this flag is false, because usually you want C<^C> to kill "
12676 "the subprocess."
12677 msgstr ""
12678
12679 #. type: =head2
12680 #: ../fish/guestfish-actions.pod:4209
12681 msgid "set-qemu"
12682 msgstr ""
12683
12684 #. type: =head2
12685 #: ../fish/guestfish-actions.pod:4211
12686 msgid "qemu"
12687 msgstr ""
12688
12689 #. type: verbatim
12690 #: ../fish/guestfish-actions.pod:4213
12691 #, no-wrap
12692 msgid ""
12693 " set-qemu qemu\n"
12694 "\n"
12695 msgstr ""
12696
12697 #. type: textblock
12698 #: ../fish/guestfish-actions.pod:4215 ../src/guestfs-actions.pod:6361
12699 msgid "Set the qemu binary that we will use."
12700 msgstr ""
12701
12702 #. type: textblock
12703 #: ../fish/guestfish-actions.pod:4217 ../src/guestfs-actions.pod:6363
12704 msgid "The default is chosen when the library was compiled by the configure script."
12705 msgstr ""
12706
12707 #. type: textblock
12708 #: ../fish/guestfish-actions.pod:4220 ../src/guestfs-actions.pod:6366
12709 msgid ""
12710 "You can also override this by setting the C<LIBGUESTFS_QEMU> environment "
12711 "variable."
12712 msgstr ""
12713
12714 #. type: textblock
12715 #: ../fish/guestfish-actions.pod:4223 ../src/guestfs-actions.pod:6369
12716 msgid "Setting C<qemu> to C<NULL> restores the default qemu binary."
12717 msgstr ""
12718
12719 #. type: textblock
12720 #: ../fish/guestfish-actions.pod:4225 ../src/guestfs-actions.pod:6371
12721 msgid ""
12722 "Note that you should call this function as early as possible after creating "
12723 "the handle.  This is because some pre-launch operations depend on testing "
12724 "qemu features (by running C<qemu -help>).  If the qemu binary changes, we "
12725 "don't retest features, and so you might see inconsistent results.  Using the "
12726 "environment variable C<LIBGUESTFS_QEMU> is safest of all since that picks "
12727 "the qemu binary at the same time as the handle is created."
12728 msgstr ""
12729
12730 #. type: =head2
12731 #: ../fish/guestfish-actions.pod:4233
12732 msgid "set-recovery-proc"
12733 msgstr ""
12734
12735 #. type: =head2
12736 #: ../fish/guestfish-actions.pod:4235
12737 msgid "recovery-proc"
12738 msgstr ""
12739
12740 #. type: verbatim
12741 #: ../fish/guestfish-actions.pod:4237
12742 #, no-wrap
12743 msgid ""
12744 " set-recovery-proc true|false\n"
12745 "\n"
12746 msgstr ""
12747
12748 #. type: textblock
12749 #: ../fish/guestfish-actions.pod:4239
12750 msgid ""
12751 "If this is called with the parameter C<false> then L</launch> does not "
12752 "create a recovery process.  The purpose of the recovery process is to stop "
12753 "runaway qemu processes in the case where the main program aborts abruptly."
12754 msgstr ""
12755
12756 #. type: textblock
12757 #: ../fish/guestfish-actions.pod:4244
12758 msgid ""
12759 "This only has any effect if called before L</launch>, and the default is "
12760 "true."
12761 msgstr ""
12762
12763 #. type: textblock
12764 #: ../fish/guestfish-actions.pod:4247 ../src/guestfs-actions.pod:6397
12765 msgid ""
12766 "About the only time when you would want to disable this is if the main "
12767 "process will fork itself into the background (\"daemonize\" itself).  In "
12768 "this case the recovery process thinks that the main program has disappeared "
12769 "and so kills qemu, which is not very helpful."
12770 msgstr ""
12771
12772 #. type: =head2
12773 #: ../fish/guestfish-actions.pod:4253
12774 msgid "set-selinux"
12775 msgstr ""
12776
12777 #. type: =head2
12778 #: ../fish/guestfish-actions.pod:4255
12779 msgid "selinux"
12780 msgstr ""
12781
12782 #. type: verbatim
12783 #: ../fish/guestfish-actions.pod:4257
12784 #, no-wrap
12785 msgid ""
12786 " set-selinux true|false\n"
12787 "\n"
12788 msgstr ""
12789
12790 #. type: textblock
12791 #: ../fish/guestfish-actions.pod:4259 ../src/guestfs-actions.pod:6413
12792 msgid ""
12793 "This sets the selinux flag that is passed to the appliance at boot time.  "
12794 "The default is C<selinux=0> (disabled)."
12795 msgstr ""
12796
12797 #. type: textblock
12798 #: ../fish/guestfish-actions.pod:4262 ../src/guestfs-actions.pod:6416
12799 msgid ""
12800 "Note that if SELinux is enabled, it is always in Permissive mode "
12801 "(C<enforcing=0>)."
12802 msgstr ""
12803
12804 #. type: =head2
12805 #: ../fish/guestfish-actions.pod:4268
12806 msgid "set-trace"
12807 msgstr ""
12808
12809 #. type: =head2
12810 #: ../fish/guestfish-actions.pod:4270
12811 msgid "trace"
12812 msgstr ""
12813
12814 #. type: verbatim
12815 #: ../fish/guestfish-actions.pod:4272
12816 #, no-wrap
12817 msgid ""
12818 " set-trace true|false\n"
12819 "\n"
12820 msgstr ""
12821
12822 #. type: textblock
12823 #: ../fish/guestfish-actions.pod:4274 ../src/guestfs-actions.pod:6432
12824 msgid ""
12825 "If the command trace flag is set to 1, then libguestfs calls, parameters and "
12826 "return values are traced."
12827 msgstr ""
12828
12829 #. type: textblock
12830 #: ../fish/guestfish-actions.pod:4277 ../src/guestfs-actions.pod:6435
12831 msgid ""
12832 "If you want to trace C API calls into libguestfs (and other libraries) then "
12833 "possibly a better way is to use the external ltrace(1) command."
12834 msgstr ""
12835
12836 #. type: textblock
12837 #: ../fish/guestfish-actions.pod:4281 ../src/guestfs-actions.pod:6439
12838 msgid ""
12839 "Command traces are disabled unless the environment variable "
12840 "C<LIBGUESTFS_TRACE> is defined and set to C<1>."
12841 msgstr ""
12842
12843 #. type: textblock
12844 #: ../fish/guestfish-actions.pod:4284
12845 msgid ""
12846 "Trace messages are normally sent to C<stderr>, unless you register a "
12847 "callback to send them somewhere else (see L</set-event-callback>)."
12848 msgstr ""
12849
12850 #. type: =head2
12851 #: ../fish/guestfish-actions.pod:4288
12852 msgid "set-verbose"
12853 msgstr ""
12854
12855 #. type: =head2
12856 #: ../fish/guestfish-actions.pod:4290
12857 msgid "verbose"
12858 msgstr ""
12859
12860 #. type: verbatim
12861 #: ../fish/guestfish-actions.pod:4292
12862 #, no-wrap
12863 msgid ""
12864 " set-verbose true|false\n"
12865 "\n"
12866 msgstr ""
12867
12868 #. type: textblock
12869 #: ../fish/guestfish-actions.pod:4294 ../src/guestfs-actions.pod:6456
12870 msgid "If C<verbose> is true, this turns on verbose messages."
12871 msgstr ""
12872
12873 #. type: textblock
12874 #: ../fish/guestfish-actions.pod:4296 ../src/guestfs-actions.pod:6458
12875 msgid ""
12876 "Verbose messages are disabled unless the environment variable "
12877 "C<LIBGUESTFS_DEBUG> is defined and set to C<1>."
12878 msgstr ""
12879
12880 #. type: textblock
12881 #: ../fish/guestfish-actions.pod:4299
12882 msgid ""
12883 "Verbose messages are normally sent to C<stderr>, unless you register a "
12884 "callback to send them somewhere else (see L</set-event-callback>)."
12885 msgstr ""
12886
12887 #. type: =head2
12888 #: ../fish/guestfish-actions.pod:4303
12889 msgid "setcon"
12890 msgstr ""
12891
12892 #. type: verbatim
12893 #: ../fish/guestfish-actions.pod:4305
12894 #, no-wrap
12895 msgid ""
12896 " setcon context\n"
12897 "\n"
12898 msgstr ""
12899
12900 #. type: textblock
12901 #: ../fish/guestfish-actions.pod:4307 ../src/guestfs-actions.pod:6475
12902 msgid ""
12903 "This sets the SELinux security context of the daemon to the string "
12904 "C<context>."
12905 msgstr ""
12906
12907 #. type: textblock
12908 #: ../fish/guestfish-actions.pod:4310 ../src/guestfs-actions.pod:6478
12909 msgid "See the documentation about SELINUX in L<guestfs(3)>."
12910 msgstr ""
12911
12912 #. type: =head2
12913 #: ../fish/guestfish-actions.pod:4312
12914 msgid "setxattr"
12915 msgstr ""
12916
12917 #. type: verbatim
12918 #: ../fish/guestfish-actions.pod:4314
12919 #, no-wrap
12920 msgid ""
12921 " setxattr xattr val vallen path\n"
12922 "\n"
12923 msgstr ""
12924
12925 #. type: textblock
12926 #: ../fish/guestfish-actions.pod:4316 ../src/guestfs-actions.pod:6493
12927 msgid ""
12928 "This call sets the extended attribute named C<xattr> of the file C<path> to "
12929 "the value C<val> (of length C<vallen>).  The value is arbitrary 8 bit data."
12930 msgstr ""
12931
12932 #. type: textblock
12933 #: ../fish/guestfish-actions.pod:4320
12934 msgid "See also: L</lsetxattr>, L<attr(5)>."
12935 msgstr ""
12936
12937 #. type: =head2
12938 #: ../fish/guestfish-actions.pod:4322
12939 msgid "sfdisk"
12940 msgstr ""
12941
12942 #. type: verbatim
12943 #: ../fish/guestfish-actions.pod:4324
12944 #, no-wrap
12945 msgid ""
12946 " sfdisk device cyls heads sectors 'lines ...'\n"
12947 "\n"
12948 msgstr ""
12949
12950 #. type: textblock
12951 #: ../fish/guestfish-actions.pod:4326 ../src/guestfs-actions.pod:6513
12952 msgid ""
12953 "This is a direct interface to the L<sfdisk(8)> program for creating "
12954 "partitions on block devices."
12955 msgstr ""
12956
12957 #. type: textblock
12958 #: ../fish/guestfish-actions.pod:4329 ../src/guestfs-actions.pod:6516
12959 msgid "C<device> should be a block device, for example C</dev/sda>."
12960 msgstr ""
12961
12962 #. type: textblock
12963 #: ../fish/guestfish-actions.pod:4331 ../src/guestfs-actions.pod:6518
12964 msgid ""
12965 "C<cyls>, C<heads> and C<sectors> are the number of cylinders, heads and "
12966 "sectors on the device, which are passed directly to sfdisk as the I<-C>, "
12967 "I<-H> and I<-S> parameters.  If you pass C<0> for any of these, then the "
12968 "corresponding parameter is omitted.  Usually for 'large' disks, you can just "
12969 "pass C<0> for these, but for small (floppy-sized) disks, sfdisk (or rather, "
12970 "the kernel) cannot work out the right geometry and you will need to tell it."
12971 msgstr ""
12972
12973 #. type: textblock
12974 #: ../fish/guestfish-actions.pod:4339 ../src/guestfs-actions.pod:6526
12975 msgid ""
12976 "C<lines> is a list of lines that we feed to C<sfdisk>.  For more information "
12977 "refer to the L<sfdisk(8)> manpage."
12978 msgstr ""
12979
12980 #. type: textblock
12981 #: ../fish/guestfish-actions.pod:4342 ../src/guestfs-actions.pod:6529
12982 msgid ""
12983 "To create a single partition occupying the whole disk, you would pass "
12984 "C<lines> as a single element list, when the single element being the string "
12985 "C<,> (comma)."
12986 msgstr ""
12987
12988 #. type: textblock
12989 #: ../fish/guestfish-actions.pod:4346
12990 msgid "See also: L</sfdisk-l>, L</sfdisk-N>, L</part-init>"
12991 msgstr ""
12992
12993 #. type: textblock
12994 #: ../fish/guestfish-actions.pod:4352 ../fish/guestfish-actions.pod:4375 ../fish/guestfish-actions.pod:4397 ../src/guestfs-actions.pod:6541 ../src/guestfs-actions.pod:6571 ../src/guestfs-actions.pod:6604
12995 msgid "This function is deprecated.  In new code, use the C<part_add> call instead."
12996 msgstr ""
12997
12998 #. type: =head2
12999 #: ../fish/guestfish-actions.pod:4359
13000 msgid "sfdiskM"
13001 msgstr ""
13002
13003 #. type: verbatim
13004 #: ../fish/guestfish-actions.pod:4361
13005 #, no-wrap
13006 msgid ""
13007 " sfdiskM device 'lines ...'\n"
13008 "\n"
13009 msgstr ""
13010
13011 #. type: textblock
13012 #: ../fish/guestfish-actions.pod:4363
13013 msgid ""
13014 "This is a simplified interface to the L</sfdisk> command, where partition "
13015 "sizes are specified in megabytes only (rounded to the nearest cylinder) and "
13016 "you don't need to specify the cyls, heads and sectors parameters which were "
13017 "rarely if ever used anyway."
13018 msgstr ""
13019
13020 #. type: textblock
13021 #: ../fish/guestfish-actions.pod:4369
13022 msgid "See also: L</sfdisk>, the L<sfdisk(8)> manpage and L</part-disk>"
13023 msgstr ""
13024
13025 #. type: =head2
13026 #: ../fish/guestfish-actions.pod:4382
13027 msgid "sfdisk-N"
13028 msgstr ""
13029
13030 #. type: verbatim
13031 #: ../fish/guestfish-actions.pod:4384
13032 #, no-wrap
13033 msgid ""
13034 " sfdisk-N device partnum cyls heads sectors line\n"
13035 "\n"
13036 msgstr ""
13037
13038 #. type: textblock
13039 #: ../fish/guestfish-actions.pod:4386 ../src/guestfs-actions.pod:6591
13040 msgid ""
13041 "This runs L<sfdisk(8)> option to modify just the single partition C<n> "
13042 "(note: C<n> counts from 1)."
13043 msgstr ""
13044
13045 #. type: textblock
13046 #: ../fish/guestfish-actions.pod:4389
13047 msgid ""
13048 "For other parameters, see L</sfdisk>.  You should usually pass C<0> for the "
13049 "cyls/heads/sectors parameters."
13050 msgstr ""
13051
13052 #. type: textblock
13053 #: ../fish/guestfish-actions.pod:4392
13054 msgid "See also: L</part-add>"
13055 msgstr ""
13056
13057 #. type: =head2
13058 #: ../fish/guestfish-actions.pod:4404
13059 msgid "sfdisk-disk-geometry"
13060 msgstr ""
13061
13062 #. type: verbatim
13063 #: ../fish/guestfish-actions.pod:4406
13064 #, no-wrap
13065 msgid ""
13066 " sfdisk-disk-geometry device\n"
13067 "\n"
13068 msgstr ""
13069
13070 #. type: textblock
13071 #: ../fish/guestfish-actions.pod:4408
13072 msgid ""
13073 "This displays the disk geometry of C<device> read from the partition table.  "
13074 "Especially in the case where the underlying block device has been resized, "
13075 "this can be different from the kernel's idea of the geometry (see "
13076 "L</sfdisk-kernel-geometry>)."
13077 msgstr ""
13078
13079 #. type: textblock
13080 #: ../fish/guestfish-actions.pod:4413 ../fish/guestfish-actions.pod:4422 ../src/guestfs-actions.pod:6624 ../src/guestfs-actions.pod:6640
13081 msgid "The result is in human-readable format, and not designed to be parsed."
13082 msgstr ""
13083
13084 #. type: =head2
13085 #: ../fish/guestfish-actions.pod:4416
13086 msgid "sfdisk-kernel-geometry"
13087 msgstr ""
13088
13089 #. type: verbatim
13090 #: ../fish/guestfish-actions.pod:4418
13091 #, no-wrap
13092 msgid ""
13093 " sfdisk-kernel-geometry device\n"
13094 "\n"
13095 msgstr ""
13096
13097 #. type: textblock
13098 #: ../fish/guestfish-actions.pod:4420 ../src/guestfs-actions.pod:6638
13099 msgid "This displays the kernel's idea of the geometry of C<device>."
13100 msgstr ""
13101
13102 #. type: =head2
13103 #: ../fish/guestfish-actions.pod:4425
13104 msgid "sfdisk-l"
13105 msgstr ""
13106
13107 #. type: verbatim
13108 #: ../fish/guestfish-actions.pod:4427
13109 #, no-wrap
13110 msgid ""
13111 " sfdisk-l device\n"
13112 "\n"
13113 msgstr ""
13114
13115 #. type: textblock
13116 #: ../fish/guestfish-actions.pod:4429 ../src/guestfs-actions.pod:6654
13117 msgid ""
13118 "This displays the partition table on C<device>, in the human-readable output "
13119 "of the L<sfdisk(8)> command.  It is not intended to be parsed."
13120 msgstr ""
13121
13122 #. type: textblock
13123 #: ../fish/guestfish-actions.pod:4433
13124 msgid "See also: L</part-list>"
13125 msgstr ""
13126
13127 #. type: textblock
13128 #: ../fish/guestfish-actions.pod:4435 ../src/guestfs-actions.pod:6663
13129 msgid ""
13130 "This function is deprecated.  In new code, use the C<part_list> call "
13131 "instead."
13132 msgstr ""
13133
13134 #. type: =head2
13135 #: ../fish/guestfish-actions.pod:4442
13136 msgid "sh"
13137 msgstr ""
13138
13139 #. type: verbatim
13140 #: ../fish/guestfish-actions.pod:4444
13141 #, no-wrap
13142 msgid ""
13143 " sh command\n"
13144 "\n"
13145 msgstr ""
13146
13147 #. type: textblock
13148 #: ../fish/guestfish-actions.pod:4446 ../src/guestfs-actions.pod:6678
13149 msgid ""
13150 "This call runs a command from the guest filesystem via the guest's "
13151 "C</bin/sh>."
13152 msgstr ""
13153
13154 #. type: textblock
13155 #: ../fish/guestfish-actions.pod:4449
13156 msgid "This is like L</command>, but passes the command to:"
13157 msgstr ""
13158
13159 #. type: verbatim
13160 #: ../fish/guestfish-actions.pod:4451 ../src/guestfs-actions.pod:6683
13161 #, no-wrap
13162 msgid ""
13163 " /bin/sh -c \"command\"\n"
13164 "\n"
13165 msgstr ""
13166
13167 #. type: textblock
13168 #: ../fish/guestfish-actions.pod:4453 ../src/guestfs-actions.pod:6685
13169 msgid ""
13170 "Depending on the guest's shell, this usually results in wildcards being "
13171 "expanded, shell expressions being interpolated and so on."
13172 msgstr ""
13173
13174 #. type: textblock
13175 #: ../fish/guestfish-actions.pod:4457
13176 msgid "All the provisos about L</command> apply to this call."
13177 msgstr ""
13178
13179 #. type: =head2
13180 #: ../fish/guestfish-actions.pod:4459
13181 msgid "sh-lines"
13182 msgstr ""
13183
13184 #. type: verbatim
13185 #: ../fish/guestfish-actions.pod:4461
13186 #, no-wrap
13187 msgid ""
13188 " sh-lines command\n"
13189 "\n"
13190 msgstr ""
13191
13192 #. type: textblock
13193 #: ../fish/guestfish-actions.pod:4463
13194 msgid "This is the same as L</sh>, but splits the result into a list of lines."
13195 msgstr ""
13196
13197 #. type: textblock
13198 #: ../fish/guestfish-actions.pod:4466
13199 msgid "See also: L</command-lines>"
13200 msgstr ""
13201
13202 #. type: =head2
13203 #: ../fish/guestfish-actions.pod:4468
13204 msgid "sleep"
13205 msgstr ""
13206
13207 #. type: verbatim
13208 #: ../fish/guestfish-actions.pod:4470
13209 #, no-wrap
13210 msgid ""
13211 " sleep secs\n"
13212 "\n"
13213 msgstr ""
13214
13215 #. type: textblock
13216 #: ../fish/guestfish-actions.pod:4472 ../src/guestfs-actions.pod:6719
13217 msgid "Sleep for C<secs> seconds."
13218 msgstr ""
13219
13220 #. type: =head2
13221 #: ../fish/guestfish-actions.pod:4474
13222 msgid "stat"
13223 msgstr ""
13224
13225 #. type: verbatim
13226 #: ../fish/guestfish-actions.pod:4476
13227 #, no-wrap
13228 msgid ""
13229 " stat path\n"
13230 "\n"
13231 msgstr ""
13232
13233 #. type: textblock
13234 #: ../fish/guestfish-actions.pod:4480 ../src/guestfs-actions.pod:6733
13235 msgid "This is the same as the C<stat(2)> system call."
13236 msgstr ""
13237
13238 #. type: =head2
13239 #: ../fish/guestfish-actions.pod:4482
13240 msgid "statvfs"
13241 msgstr ""
13242
13243 #. type: verbatim
13244 #: ../fish/guestfish-actions.pod:4484
13245 #, no-wrap
13246 msgid ""
13247 " statvfs path\n"
13248 "\n"
13249 msgstr ""
13250
13251 #. type: textblock
13252 #: ../fish/guestfish-actions.pod:4486 ../src/guestfs-actions.pod:6747
13253 msgid ""
13254 "Returns file system statistics for any mounted file system.  C<path> should "
13255 "be a file or directory in the mounted file system (typically it is the mount "
13256 "point itself, but it doesn't need to be)."
13257 msgstr ""
13258
13259 #. type: textblock
13260 #: ../fish/guestfish-actions.pod:4490 ../src/guestfs-actions.pod:6751
13261 msgid "This is the same as the C<statvfs(2)> system call."
13262 msgstr ""
13263
13264 #. type: =head2
13265 #: ../fish/guestfish-actions.pod:4492
13266 msgid "strings"
13267 msgstr ""
13268
13269 #. type: verbatim
13270 #: ../fish/guestfish-actions.pod:4494
13271 #, no-wrap
13272 msgid ""
13273 " strings path\n"
13274 "\n"
13275 msgstr ""
13276
13277 #. type: textblock
13278 #: ../fish/guestfish-actions.pod:4496 ../src/guestfs-actions.pod:6765
13279 msgid ""
13280 "This runs the L<strings(1)> command on a file and returns the list of "
13281 "printable strings found."
13282 msgstr ""
13283
13284 #. type: =head2
13285 #: ../fish/guestfish-actions.pod:4502
13286 msgid "strings-e"
13287 msgstr ""
13288
13289 #. type: verbatim
13290 #: ../fish/guestfish-actions.pod:4504
13291 #, no-wrap
13292 msgid ""
13293 " strings-e encoding path\n"
13294 "\n"
13295 msgstr ""
13296
13297 #. type: textblock
13298 #: ../fish/guestfish-actions.pod:4506
13299 msgid ""
13300 "This is like the L</strings> command, but allows you to specify the encoding "
13301 "of strings that are looked for in the source file C<path>."
13302 msgstr ""
13303
13304 #. type: textblock
13305 #: ../fish/guestfish-actions.pod:4510 ../src/guestfs-actions.pod:6788
13306 msgid "Allowed encodings are:"
13307 msgstr ""
13308
13309 #. type: =item
13310 #: ../fish/guestfish-actions.pod:4514 ../src/guestfs-actions.pod:6792
13311 msgid "s"
13312 msgstr ""
13313
13314 #. type: textblock
13315 #: ../fish/guestfish-actions.pod:4516
13316 msgid ""
13317 "Single 7-bit-byte characters like ASCII and the ASCII-compatible parts of "
13318 "ISO-8859-X (this is what L</strings> uses)."
13319 msgstr ""
13320
13321 #. type: =item
13322 #: ../fish/guestfish-actions.pod:4519 ../src/guestfs-actions.pod:6797
13323 msgid "S"
13324 msgstr ""
13325
13326 #. type: textblock
13327 #: ../fish/guestfish-actions.pod:4521 ../src/guestfs-actions.pod:6799
13328 msgid "Single 8-bit-byte characters."
13329 msgstr ""
13330
13331 #. type: =item
13332 #: ../fish/guestfish-actions.pod:4523 ../src/guestfs-actions.pod:6801
13333 msgid "b"
13334 msgstr ""
13335
13336 #. type: textblock
13337 #: ../fish/guestfish-actions.pod:4525 ../src/guestfs-actions.pod:6803
13338 msgid "16-bit big endian strings such as those encoded in UTF-16BE or UCS-2BE."
13339 msgstr ""
13340
13341 #. type: =item
13342 #: ../fish/guestfish-actions.pod:4528 ../src/guestfs-actions.pod:6806
13343 msgid "l (lower case letter L)"
13344 msgstr ""
13345
13346 #. type: textblock
13347 #: ../fish/guestfish-actions.pod:4530 ../src/guestfs-actions.pod:6808
13348 msgid ""
13349 "16-bit little endian such as UTF-16LE and UCS-2LE.  This is useful for "
13350 "examining binaries in Windows guests."
13351 msgstr ""
13352
13353 #. type: =item
13354 #: ../fish/guestfish-actions.pod:4533 ../src/guestfs-actions.pod:6811
13355 msgid "B"
13356 msgstr ""
13357
13358 #. type: textblock
13359 #: ../fish/guestfish-actions.pod:4535 ../src/guestfs-actions.pod:6813
13360 msgid "32-bit big endian such as UCS-4BE."
13361 msgstr ""
13362
13363 #. type: =item
13364 #: ../fish/guestfish-actions.pod:4537 ../src/guestfs-actions.pod:6815
13365 msgid "L"
13366 msgstr ""
13367
13368 #. type: textblock
13369 #: ../fish/guestfish-actions.pod:4539 ../src/guestfs-actions.pod:6817
13370 msgid "32-bit little endian such as UCS-4LE."
13371 msgstr ""
13372
13373 #. type: textblock
13374 #: ../fish/guestfish-actions.pod:4543 ../src/guestfs-actions.pod:6821
13375 msgid "The returned strings are transcoded to UTF-8."
13376 msgstr ""
13377
13378 #. type: =head2
13379 #: ../fish/guestfish-actions.pod:4548
13380 msgid "swapoff-device"
13381 msgstr ""
13382
13383 #. type: verbatim
13384 #: ../fish/guestfish-actions.pod:4550
13385 #, no-wrap
13386 msgid ""
13387 " swapoff-device device\n"
13388 "\n"
13389 msgstr ""
13390
13391 #. type: textblock
13392 #: ../fish/guestfish-actions.pod:4552
13393 msgid ""
13394 "This command disables the libguestfs appliance swap device or partition "
13395 "named C<device>.  See L</swapon-device>."
13396 msgstr ""
13397
13398 #. type: =head2
13399 #: ../fish/guestfish-actions.pod:4556
13400 msgid "swapoff-file"
13401 msgstr ""
13402
13403 #. type: verbatim
13404 #: ../fish/guestfish-actions.pod:4558
13405 #, no-wrap
13406 msgid ""
13407 " swapoff-file file\n"
13408 "\n"
13409 msgstr ""
13410
13411 #. type: textblock
13412 #: ../fish/guestfish-actions.pod:4560 ../src/guestfs-actions.pod:6852
13413 msgid "This command disables the libguestfs appliance swap on file."
13414 msgstr ""
13415
13416 #. type: =head2
13417 #: ../fish/guestfish-actions.pod:4562
13418 msgid "swapoff-label"
13419 msgstr ""
13420
13421 #. type: verbatim
13422 #: ../fish/guestfish-actions.pod:4564
13423 #, no-wrap
13424 msgid ""
13425 " swapoff-label label\n"
13426 "\n"
13427 msgstr ""
13428
13429 #. type: textblock
13430 #: ../fish/guestfish-actions.pod:4566 ../src/guestfs-actions.pod:6864
13431 msgid ""
13432 "This command disables the libguestfs appliance swap on labeled swap "
13433 "partition."
13434 msgstr ""
13435
13436 #. type: =head2
13437 #: ../fish/guestfish-actions.pod:4569
13438 msgid "swapoff-uuid"
13439 msgstr ""
13440
13441 #. type: verbatim
13442 #: ../fish/guestfish-actions.pod:4571
13443 #, no-wrap
13444 msgid ""
13445 " swapoff-uuid uuid\n"
13446 "\n"
13447 msgstr ""
13448
13449 #. type: textblock
13450 #: ../fish/guestfish-actions.pod:4573 ../src/guestfs-actions.pod:6877
13451 msgid ""
13452 "This command disables the libguestfs appliance swap partition with the given "
13453 "UUID."
13454 msgstr ""
13455
13456 #. type: =head2
13457 #: ../fish/guestfish-actions.pod:4576
13458 msgid "swapon-device"
13459 msgstr ""
13460
13461 #. type: verbatim
13462 #: ../fish/guestfish-actions.pod:4578
13463 #, no-wrap
13464 msgid ""
13465 " swapon-device device\n"
13466 "\n"
13467 msgstr ""
13468
13469 #. type: textblock
13470 #: ../fish/guestfish-actions.pod:4580
13471 msgid ""
13472 "This command enables the libguestfs appliance to use the swap device or "
13473 "partition named C<device>.  The increased memory is made available for all "
13474 "commands, for example those run using L</command> or L</sh>."
13475 msgstr ""
13476
13477 #. type: textblock
13478 #: ../fish/guestfish-actions.pod:4585 ../src/guestfs-actions.pod:6895
13479 msgid ""
13480 "Note that you should not swap to existing guest swap partitions unless you "
13481 "know what you are doing.  They may contain hibernation information, or other "
13482 "information that the guest doesn't want you to trash.  You also risk leaking "
13483 "information about the host to the guest this way.  Instead, attach a new "
13484 "host device to the guest and swap on that."
13485 msgstr ""
13486
13487 #. type: =head2
13488 #: ../fish/guestfish-actions.pod:4592
13489 msgid "swapon-file"
13490 msgstr ""
13491
13492 #. type: verbatim
13493 #: ../fish/guestfish-actions.pod:4594
13494 #, no-wrap
13495 msgid ""
13496 " swapon-file file\n"
13497 "\n"
13498 msgstr ""
13499
13500 #. type: textblock
13501 #: ../fish/guestfish-actions.pod:4596
13502 msgid "This command enables swap to a file.  See L</swapon-device> for other notes."
13503 msgstr ""
13504
13505 #. type: =head2
13506 #: ../fish/guestfish-actions.pod:4599
13507 msgid "swapon-label"
13508 msgstr ""
13509
13510 #. type: verbatim
13511 #: ../fish/guestfish-actions.pod:4601
13512 #, no-wrap
13513 msgid ""
13514 " swapon-label label\n"
13515 "\n"
13516 msgstr ""
13517
13518 #. type: textblock
13519 #: ../fish/guestfish-actions.pod:4603
13520 msgid ""
13521 "This command enables swap to a labeled swap partition.  See "
13522 "L</swapon-device> for other notes."
13523 msgstr ""
13524
13525 #. type: =head2
13526 #: ../fish/guestfish-actions.pod:4606
13527 msgid "swapon-uuid"
13528 msgstr ""
13529
13530 #. type: verbatim
13531 #: ../fish/guestfish-actions.pod:4608
13532 #, no-wrap
13533 msgid ""
13534 " swapon-uuid uuid\n"
13535 "\n"
13536 msgstr ""
13537
13538 #. type: textblock
13539 #: ../fish/guestfish-actions.pod:4610
13540 msgid ""
13541 "This command enables swap to a swap partition with the given UUID.  See "
13542 "L</swapon-device> for other notes."
13543 msgstr ""
13544
13545 #. type: =head2
13546 #: ../fish/guestfish-actions.pod:4613
13547 msgid "sync"
13548 msgstr ""
13549
13550 #. type: verbatim
13551 #: ../fish/guestfish-actions.pod:4615
13552 #, no-wrap
13553 msgid ""
13554 " sync\n"
13555 "\n"
13556 msgstr ""
13557
13558 #. type: textblock
13559 #: ../fish/guestfish-actions.pod:4617 ../src/guestfs-actions.pod:6950
13560 msgid ""
13561 "This syncs the disk, so that any writes are flushed through to the "
13562 "underlying disk image."
13563 msgstr ""
13564
13565 #. type: textblock
13566 #: ../fish/guestfish-actions.pod:4620 ../src/guestfs-actions.pod:6953
13567 msgid ""
13568 "You should always call this if you have modified a disk image, before "
13569 "closing the handle."
13570 msgstr ""
13571
13572 #. type: =head2
13573 #: ../fish/guestfish-actions.pod:4623
13574 msgid "tail"
13575 msgstr ""
13576
13577 #. type: verbatim
13578 #: ../fish/guestfish-actions.pod:4625
13579 #, no-wrap
13580 msgid ""
13581 " tail path\n"
13582 "\n"
13583 msgstr ""
13584
13585 #. type: textblock
13586 #: ../fish/guestfish-actions.pod:4627 ../src/guestfs-actions.pod:6966
13587 msgid "This command returns up to the last 10 lines of a file as a list of strings."
13588 msgstr ""
13589
13590 #. type: =head2
13591 #: ../fish/guestfish-actions.pod:4633
13592 msgid "tail-n"
13593 msgstr ""
13594
13595 #. type: verbatim
13596 #: ../fish/guestfish-actions.pod:4635
13597 #, no-wrap
13598 msgid ""
13599 " tail-n nrlines path\n"
13600 "\n"
13601 msgstr ""
13602
13603 #. type: textblock
13604 #: ../fish/guestfish-actions.pod:4637 ../src/guestfs-actions.pod:6985
13605 msgid ""
13606 "If the parameter C<nrlines> is a positive number, this returns the last "
13607 "C<nrlines> lines of the file C<path>."
13608 msgstr ""
13609
13610 #. type: textblock
13611 #: ../fish/guestfish-actions.pod:4640 ../src/guestfs-actions.pod:6988
13612 msgid ""
13613 "If the parameter C<nrlines> is a negative number, this returns lines from "
13614 "the file C<path>, starting with the C<-nrlines>th line."
13615 msgstr ""
13616
13617 #. type: =head2
13618 #: ../fish/guestfish-actions.pod:4648
13619 msgid "tar-in"
13620 msgstr ""
13621
13622 #. type: verbatim
13623 #: ../fish/guestfish-actions.pod:4650
13624 #, no-wrap
13625 msgid ""
13626 " tar-in (tarfile|-) directory\n"
13627 "\n"
13628 msgstr ""
13629
13630 #. type: textblock
13631 #: ../fish/guestfish-actions.pod:4652 ../src/guestfs-actions.pod:7009
13632 msgid ""
13633 "This command uploads and unpacks local file C<tarfile> (an I<uncompressed> "
13634 "tar file) into C<directory>."
13635 msgstr ""
13636
13637 #. type: textblock
13638 #: ../fish/guestfish-actions.pod:4655
13639 msgid "To upload a compressed tarball, use L</tgz-in> or L</txz-in>."
13640 msgstr ""
13641
13642 #. type: =head2
13643 #: ../fish/guestfish-actions.pod:4660
13644 msgid "tar-out"
13645 msgstr ""
13646
13647 #. type: verbatim
13648 #: ../fish/guestfish-actions.pod:4662
13649 #, no-wrap
13650 msgid ""
13651 " tar-out directory (tarfile|-)\n"
13652 "\n"
13653 msgstr ""
13654
13655 #. type: textblock
13656 #: ../fish/guestfish-actions.pod:4664 ../src/guestfs-actions.pod:7026
13657 msgid ""
13658 "This command packs the contents of C<directory> and downloads it to local "
13659 "file C<tarfile>."
13660 msgstr ""
13661
13662 #. type: textblock
13663 #: ../fish/guestfish-actions.pod:4667
13664 msgid "To download a compressed tarball, use L</tgz-out> or L</txz-out>."
13665 msgstr ""
13666
13667 #. type: =head2
13668 #: ../fish/guestfish-actions.pod:4672
13669 msgid "tgz-in"
13670 msgstr ""
13671
13672 #. type: verbatim
13673 #: ../fish/guestfish-actions.pod:4674
13674 #, no-wrap
13675 msgid ""
13676 " tgz-in (tarball|-) directory\n"
13677 "\n"
13678 msgstr ""
13679
13680 #. type: textblock
13681 #: ../fish/guestfish-actions.pod:4676 ../src/guestfs-actions.pod:7043
13682 msgid ""
13683 "This command uploads and unpacks local file C<tarball> (a I<gzip compressed> "
13684 "tar file) into C<directory>."
13685 msgstr ""
13686
13687 #. type: textblock
13688 #: ../fish/guestfish-actions.pod:4679
13689 msgid "To upload an uncompressed tarball, use L</tar-in>."
13690 msgstr ""
13691
13692 #. type: =head2
13693 #: ../fish/guestfish-actions.pod:4683
13694 msgid "tgz-out"
13695 msgstr ""
13696
13697 #. type: verbatim
13698 #: ../fish/guestfish-actions.pod:4685
13699 #, no-wrap
13700 msgid ""
13701 " tgz-out directory (tarball|-)\n"
13702 "\n"
13703 msgstr ""
13704
13705 #. type: textblock
13706 #: ../fish/guestfish-actions.pod:4687 ../src/guestfs-actions.pod:7059
13707 msgid ""
13708 "This command packs the contents of C<directory> and downloads it to local "
13709 "file C<tarball>."
13710 msgstr ""
13711
13712 #. type: textblock
13713 #: ../fish/guestfish-actions.pod:4690
13714 msgid "To download an uncompressed tarball, use L</tar-out>."
13715 msgstr ""
13716
13717 #. type: =head2
13718 #: ../fish/guestfish-actions.pod:4694
13719 msgid "touch"
13720 msgstr ""
13721
13722 #. type: verbatim
13723 #: ../fish/guestfish-actions.pod:4696
13724 #, no-wrap
13725 msgid ""
13726 " touch path\n"
13727 "\n"
13728 msgstr ""
13729
13730 #. type: textblock
13731 #: ../fish/guestfish-actions.pod:4698 ../src/guestfs-actions.pod:7074
13732 msgid ""
13733 "Touch acts like the L<touch(1)> command.  It can be used to update the "
13734 "timestamps on a file, or, if the file does not exist, to create a new "
13735 "zero-length file."
13736 msgstr ""
13737
13738 #. type: textblock
13739 #: ../fish/guestfish-actions.pod:4702 ../src/guestfs-actions.pod:7078
13740 msgid ""
13741 "This command only works on regular files, and will fail on other file types "
13742 "such as directories, symbolic links, block special etc."
13743 msgstr ""
13744
13745 #. type: =head2
13746 #: ../fish/guestfish-actions.pod:4705
13747 msgid "truncate"
13748 msgstr ""
13749
13750 #. type: verbatim
13751 #: ../fish/guestfish-actions.pod:4707
13752 #, no-wrap
13753 msgid ""
13754 " truncate path\n"
13755 "\n"
13756 msgstr ""
13757
13758 #. type: textblock
13759 #: ../fish/guestfish-actions.pod:4709 ../src/guestfs-actions.pod:7091
13760 msgid ""
13761 "This command truncates C<path> to a zero-length file.  The file must exist "
13762 "already."
13763 msgstr ""
13764
13765 #. type: =head2
13766 #: ../fish/guestfish-actions.pod:4712
13767 msgid "truncate-size"
13768 msgstr ""
13769
13770 #. type: verbatim
13771 #: ../fish/guestfish-actions.pod:4714
13772 #, no-wrap
13773 msgid ""
13774 " truncate-size path size\n"
13775 "\n"
13776 msgstr ""
13777
13778 #. type: textblock
13779 #: ../fish/guestfish-actions.pod:4716 ../src/guestfs-actions.pod:7105
13780 msgid ""
13781 "This command truncates C<path> to size C<size> bytes.  The file must exist "
13782 "already."
13783 msgstr ""
13784
13785 #. type: textblock
13786 #: ../fish/guestfish-actions.pod:4719
13787 msgid ""
13788 "If the current file size is less than C<size> then the file is extended to "
13789 "the required size with zero bytes.  This creates a sparse file (ie. disk "
13790 "blocks are not allocated for the file until you write to it).  To create a "
13791 "non-sparse file of zeroes, use L</fallocate64> instead."
13792 msgstr ""
13793
13794 #. type: =head2
13795 #: ../fish/guestfish-actions.pod:4725
13796 msgid "tune2fs-l"
13797 msgstr ""
13798
13799 #. type: verbatim
13800 #: ../fish/guestfish-actions.pod:4727
13801 #, no-wrap
13802 msgid ""
13803 " tune2fs-l device\n"
13804 "\n"
13805 msgstr ""
13806
13807 #. type: textblock
13808 #: ../fish/guestfish-actions.pod:4729 ../src/guestfs-actions.pod:7124
13809 msgid ""
13810 "This returns the contents of the ext2, ext3 or ext4 filesystem superblock on "
13811 "C<device>."
13812 msgstr ""
13813
13814 #. type: textblock
13815 #: ../fish/guestfish-actions.pod:4732 ../src/guestfs-actions.pod:7127
13816 msgid ""
13817 "It is the same as running C<tune2fs -l device>.  See L<tune2fs(8)> manpage "
13818 "for more details.  The list of fields returned isn't clearly defined, and "
13819 "depends on both the version of C<tune2fs> that libguestfs was built against, "
13820 "and the filesystem itself."
13821 msgstr ""
13822
13823 #. type: =head2
13824 #: ../fish/guestfish-actions.pod:4737
13825 msgid "txz-in"
13826 msgstr ""
13827
13828 #. type: verbatim
13829 #: ../fish/guestfish-actions.pod:4739
13830 #, no-wrap
13831 msgid ""
13832 " txz-in (tarball|-) directory\n"
13833 "\n"
13834 msgstr ""
13835
13836 #. type: textblock
13837 #: ../fish/guestfish-actions.pod:4741 ../src/guestfs-actions.pod:7147
13838 msgid ""
13839 "This command uploads and unpacks local file C<tarball> (an I<xz compressed> "
13840 "tar file) into C<directory>."
13841 msgstr ""
13842
13843 #. type: =head2
13844 #: ../fish/guestfish-actions.pod:4746
13845 msgid "txz-out"
13846 msgstr ""
13847
13848 #. type: verbatim
13849 #: ../fish/guestfish-actions.pod:4748
13850 #, no-wrap
13851 msgid ""
13852 " txz-out directory (tarball|-)\n"
13853 "\n"
13854 msgstr ""
13855
13856 #. type: textblock
13857 #: ../fish/guestfish-actions.pod:4750 ../src/guestfs-actions.pod:7161
13858 msgid ""
13859 "This command packs the contents of C<directory> and downloads it to local "
13860 "file C<tarball> (as an xz compressed tar archive)."
13861 msgstr ""
13862
13863 #. type: =head2
13864 #: ../fish/guestfish-actions.pod:4755
13865 msgid "umask"
13866 msgstr ""
13867
13868 #. type: verbatim
13869 #: ../fish/guestfish-actions.pod:4757
13870 #, no-wrap
13871 msgid ""
13872 " umask mask\n"
13873 "\n"
13874 msgstr ""
13875
13876 #. type: textblock
13877 #: ../fish/guestfish-actions.pod:4759 ../src/guestfs-actions.pod:7174
13878 msgid ""
13879 "This function sets the mask used for creating new files and device nodes to "
13880 "C<mask & 0777>."
13881 msgstr ""
13882
13883 #. type: textblock
13884 #: ../fish/guestfish-actions.pod:4762 ../src/guestfs-actions.pod:7177
13885 msgid ""
13886 "Typical umask values would be C<022> which creates new files with "
13887 "permissions like \"-rw-r--r--\" or \"-rwxr-xr-x\", and C<002> which creates "
13888 "new files with permissions like \"-rw-rw-r--\" or \"-rwxrwxr-x\"."
13889 msgstr ""
13890
13891 #. type: textblock
13892 #: ../fish/guestfish-actions.pod:4767 ../src/guestfs-actions.pod:7182
13893 msgid ""
13894 "The default umask is C<022>.  This is important because it means that "
13895 "directories and device nodes will be created with C<0644> or C<0755> mode "
13896 "even if you specify C<0777>."
13897 msgstr ""
13898
13899 #. type: textblock
13900 #: ../fish/guestfish-actions.pod:4771
13901 msgid "See also L</get-umask>, L<umask(2)>, L</mknod>, L</mkdir>."
13902 msgstr ""
13903
13904 #. type: textblock
13905 #: ../fish/guestfish-actions.pod:4774 ../src/guestfs-actions.pod:7189
13906 msgid "This call returns the previous umask."
13907 msgstr ""
13908
13909 #. type: =head2
13910 #: ../fish/guestfish-actions.pod:4776
13911 msgid "umount"
13912 msgstr ""
13913
13914 #. type: =head2
13915 #: ../fish/guestfish-actions.pod:4778
13916 msgid "unmount"
13917 msgstr ""
13918
13919 #. type: verbatim
13920 #: ../fish/guestfish-actions.pod:4780
13921 #, no-wrap
13922 msgid ""
13923 " umount pathordevice\n"
13924 "\n"
13925 msgstr ""
13926
13927 #. type: textblock
13928 #: ../fish/guestfish-actions.pod:4782 ../src/guestfs-actions.pod:7201
13929 msgid ""
13930 "This unmounts the given filesystem.  The filesystem may be specified either "
13931 "by its mountpoint (path) or the device which contains the filesystem."
13932 msgstr ""
13933
13934 #. type: =head2
13935 #: ../fish/guestfish-actions.pod:4786
13936 msgid "umount-all"
13937 msgstr ""
13938
13939 #. type: =head2
13940 #: ../fish/guestfish-actions.pod:4788
13941 msgid "unmount-all"
13942 msgstr ""
13943
13944 #. type: verbatim
13945 #: ../fish/guestfish-actions.pod:4790
13946 #, no-wrap
13947 msgid ""
13948 " umount-all\n"
13949 "\n"
13950 msgstr ""
13951
13952 #. type: textblock
13953 #: ../fish/guestfish-actions.pod:4792 ../src/guestfs-actions.pod:7214
13954 msgid "This unmounts all mounted filesystems."
13955 msgstr ""
13956
13957 #. type: textblock
13958 #: ../fish/guestfish-actions.pod:4794 ../src/guestfs-actions.pod:7216
13959 msgid "Some internal mounts are not unmounted by this call."
13960 msgstr ""
13961
13962 #. type: =head2
13963 #: ../fish/guestfish-actions.pod:4796
13964 msgid "upload"
13965 msgstr ""
13966
13967 #. type: verbatim
13968 #: ../fish/guestfish-actions.pod:4798
13969 #, no-wrap
13970 msgid ""
13971 " upload (filename|-) remotefilename\n"
13972 "\n"
13973 msgstr ""
13974
13975 #. type: textblock
13976 #: ../fish/guestfish-actions.pod:4800 ../fish/guestfish-actions.pod:4813 ../src/guestfs-actions.pod:7229 ../src/guestfs-actions.pod:7253
13977 msgid "Upload local file C<filename> to C<remotefilename> on the filesystem."
13978 msgstr ""
13979
13980 #. type: textblock
13981 #: ../fish/guestfish-actions.pod:4805
13982 msgid "See also L</download>."
13983 msgstr ""
13984
13985 #. type: =head2
13986 #: ../fish/guestfish-actions.pod:4809
13987 msgid "upload-offset"
13988 msgstr ""
13989
13990 #. type: verbatim
13991 #: ../fish/guestfish-actions.pod:4811
13992 #, no-wrap
13993 msgid ""
13994 " upload-offset (filename|-) remotefilename offset\n"
13995 "\n"
13996 msgstr ""
13997
13998 #. type: textblock
13999 #: ../fish/guestfish-actions.pod:4816 ../src/guestfs-actions.pod:7256
14000 msgid ""
14001 "C<remotefilename> is overwritten starting at the byte C<offset> specified.  "
14002 "The intention is to overwrite parts of existing files or devices, although "
14003 "if a non-existant file is specified then it is created with a \"hole\" "
14004 "before C<offset>.  The size of the data written is implicit in the size of "
14005 "the source C<filename>."
14006 msgstr ""
14007
14008 #. type: textblock
14009 #: ../fish/guestfish-actions.pod:4823
14010 msgid ""
14011 "Note that there is no limit on the amount of data that can be uploaded with "
14012 "this call, unlike with L</pwrite>, and this call always writes the full "
14013 "amount unless an error occurs."
14014 msgstr ""
14015
14016 #. type: textblock
14017 #: ../fish/guestfish-actions.pod:4828
14018 msgid "See also L</upload>, L</pwrite>."
14019 msgstr ""
14020
14021 #. type: =head2
14022 #: ../fish/guestfish-actions.pod:4832
14023 msgid "utimens"
14024 msgstr ""
14025
14026 #. type: verbatim
14027 #: ../fish/guestfish-actions.pod:4834
14028 #, no-wrap
14029 msgid ""
14030 " utimens path atsecs atnsecs mtsecs mtnsecs\n"
14031 "\n"
14032 msgstr ""
14033
14034 #. type: textblock
14035 #: ../fish/guestfish-actions.pod:4836 ../src/guestfs-actions.pod:7289
14036 msgid "This command sets the timestamps of a file with nanosecond precision."
14037 msgstr ""
14038
14039 #. type: textblock
14040 #: ../fish/guestfish-actions.pod:4839 ../src/guestfs-actions.pod:7292
14041 msgid ""
14042 "C<atsecs, atnsecs> are the last access time (atime) in secs and nanoseconds "
14043 "from the epoch."
14044 msgstr ""
14045
14046 #. type: textblock
14047 #: ../fish/guestfish-actions.pod:4842 ../src/guestfs-actions.pod:7295
14048 msgid ""
14049 "C<mtsecs, mtnsecs> are the last modification time (mtime) in secs and "
14050 "nanoseconds from the epoch."
14051 msgstr ""
14052
14053 #. type: textblock
14054 #: ../fish/guestfish-actions.pod:4845 ../src/guestfs-actions.pod:7298
14055 msgid ""
14056 "If the C<*nsecs> field contains the special value C<-1> then the "
14057 "corresponding timestamp is set to the current time.  (The C<*secs> field is "
14058 "ignored in this case)."
14059 msgstr ""
14060
14061 #. type: textblock
14062 #: ../fish/guestfish-actions.pod:4849 ../src/guestfs-actions.pod:7302
14063 msgid ""
14064 "If the C<*nsecs> field contains the special value C<-2> then the "
14065 "corresponding timestamp is left unchanged.  (The C<*secs> field is ignored "
14066 "in this case)."
14067 msgstr ""
14068
14069 #. type: =head2
14070 #: ../fish/guestfish-actions.pod:4853
14071 msgid "version"
14072 msgstr ""
14073
14074 #. type: verbatim
14075 #: ../fish/guestfish-actions.pod:4855
14076 #, no-wrap
14077 msgid ""
14078 " version\n"
14079 "\n"
14080 msgstr ""
14081
14082 #. type: textblock
14083 #: ../fish/guestfish-actions.pod:4857 ../src/guestfs-actions.pod:7315
14084 msgid "Return the libguestfs version number that the program is linked against."
14085 msgstr ""
14086
14087 #. type: textblock
14088 #: ../fish/guestfish-actions.pod:4860 ../src/guestfs-actions.pod:7318
14089 msgid ""
14090 "Note that because of dynamic linking this is not necessarily the version of "
14091 "libguestfs that you compiled against.  You can compile the program, and then "
14092 "at runtime dynamically link against a completely different C<libguestfs.so> "
14093 "library."
14094 msgstr ""
14095
14096 #. type: textblock
14097 #: ../fish/guestfish-actions.pod:4865 ../src/guestfs-actions.pod:7323
14098 msgid ""
14099 "This call was added in version C<1.0.58>.  In previous versions of "
14100 "libguestfs there was no way to get the version number.  From C code you can "
14101 "use dynamic linker functions to find out if this symbol exists (if it "
14102 "doesn't, then it's an earlier version)."
14103 msgstr ""
14104
14105 #. type: textblock
14106 #: ../fish/guestfish-actions.pod:4871 ../src/guestfs-actions.pod:7329
14107 msgid ""
14108 "The call returns a structure with four elements.  The first three (C<major>, "
14109 "C<minor> and C<release>) are numbers and correspond to the usual version "
14110 "triplet.  The fourth element (C<extra>) is a string and is normally empty, "
14111 "but may be used for distro-specific information."
14112 msgstr ""
14113
14114 #. type: textblock
14115 #: ../fish/guestfish-actions.pod:4877 ../src/guestfs-actions.pod:7335
14116 msgid "To construct the original version string: C<$major.$minor.$release$extra>"
14117 msgstr ""
14118
14119 #. type: textblock
14120 #: ../fish/guestfish-actions.pod:4880 ../src/guestfs-actions.pod:7338
14121 msgid "See also: L<guestfs(3)/LIBGUESTFS VERSION NUMBERS>."
14122 msgstr ""
14123
14124 #. type: textblock
14125 #: ../fish/guestfish-actions.pod:4882
14126 msgid ""
14127 "I<Note:> Don't use this call to test for availability of features.  In "
14128 "enterprise distributions we backport features from later versions into "
14129 "earlier versions, making this an unreliable way to test for features.  Use "
14130 "L</available> instead."
14131 msgstr ""
14132
14133 #. type: =head2
14134 #: ../fish/guestfish-actions.pod:4888
14135 msgid "vfs-label"
14136 msgstr ""
14137
14138 #. type: verbatim
14139 #: ../fish/guestfish-actions.pod:4890
14140 #, no-wrap
14141 msgid ""
14142 " vfs-label device\n"
14143 "\n"
14144 msgstr ""
14145
14146 #. type: textblock
14147 #: ../fish/guestfish-actions.pod:4892 ../src/guestfs-actions.pod:7358
14148 msgid "This returns the filesystem label of the filesystem on C<device>."
14149 msgstr ""
14150
14151 #. type: textblock
14152 #: ../fish/guestfish-actions.pod:4895 ../src/guestfs-actions.pod:7361
14153 msgid "If the filesystem is unlabeled, this returns the empty string."
14154 msgstr ""
14155
14156 #. type: textblock
14157 #: ../fish/guestfish-actions.pod:4897
14158 msgid "To find a filesystem from the label, use L</findfs-label>."
14159 msgstr ""
14160
14161 #. type: =head2
14162 #: ../fish/guestfish-actions.pod:4899
14163 msgid "vfs-type"
14164 msgstr ""
14165
14166 #. type: verbatim
14167 #: ../fish/guestfish-actions.pod:4901
14168 #, no-wrap
14169 msgid ""
14170 " vfs-type device\n"
14171 "\n"
14172 msgstr ""
14173
14174 #. type: textblock
14175 #: ../fish/guestfish-actions.pod:4903 ../src/guestfs-actions.pod:7376
14176 msgid ""
14177 "This command gets the filesystem type corresponding to the filesystem on "
14178 "C<device>."
14179 msgstr ""
14180
14181 #. type: textblock
14182 #: ../fish/guestfish-actions.pod:4906 ../src/guestfs-actions.pod:7379
14183 msgid ""
14184 "For most filesystems, the result is the name of the Linux VFS module which "
14185 "would be used to mount this filesystem if you mounted it without specifying "
14186 "the filesystem type.  For example a string such as C<ext3> or C<ntfs>."
14187 msgstr ""
14188
14189 #. type: =head2
14190 #: ../fish/guestfish-actions.pod:4911
14191 msgid "vfs-uuid"
14192 msgstr ""
14193
14194 #. type: verbatim
14195 #: ../fish/guestfish-actions.pod:4913
14196 #, no-wrap
14197 msgid ""
14198 " vfs-uuid device\n"
14199 "\n"
14200 msgstr ""
14201
14202 #. type: textblock
14203 #: ../fish/guestfish-actions.pod:4915 ../src/guestfs-actions.pod:7395
14204 msgid "This returns the filesystem UUID of the filesystem on C<device>."
14205 msgstr ""
14206
14207 #. type: textblock
14208 #: ../fish/guestfish-actions.pod:4918 ../src/guestfs-actions.pod:7398
14209 msgid "If the filesystem does not have a UUID, this returns the empty string."
14210 msgstr ""
14211
14212 #. type: textblock
14213 #: ../fish/guestfish-actions.pod:4920
14214 msgid "To find a filesystem from the UUID, use L</findfs-uuid>."
14215 msgstr ""
14216
14217 #. type: =head2
14218 #: ../fish/guestfish-actions.pod:4922
14219 msgid "vg-activate"
14220 msgstr ""
14221
14222 #. type: verbatim
14223 #: ../fish/guestfish-actions.pod:4924
14224 #, no-wrap
14225 msgid ""
14226 " vg-activate true|false 'volgroups ...'\n"
14227 "\n"
14228 msgstr ""
14229
14230 #. type: textblock
14231 #: ../fish/guestfish-actions.pod:4926 ../src/guestfs-actions.pod:7414
14232 msgid ""
14233 "This command activates or (if C<activate> is false) deactivates all logical "
14234 "volumes in the listed volume groups C<volgroups>."
14235 msgstr ""
14236
14237 #. type: textblock
14238 #: ../fish/guestfish-actions.pod:4929 ../src/guestfs-actions.pod:7417
14239 msgid "This command is the same as running C<vgchange -a y|n volgroups...>"
14240 msgstr ""
14241
14242 #. type: textblock
14243 #: ../fish/guestfish-actions.pod:4931 ../src/guestfs-actions.pod:7419
14244 msgid ""
14245 "Note that if C<volgroups> is an empty list then B<all> volume groups are "
14246 "activated or deactivated."
14247 msgstr ""
14248
14249 #. type: =head2
14250 #: ../fish/guestfish-actions.pod:4934
14251 msgid "vg-activate-all"
14252 msgstr ""
14253
14254 #. type: verbatim
14255 #: ../fish/guestfish-actions.pod:4936
14256 #, no-wrap
14257 msgid ""
14258 " vg-activate-all true|false\n"
14259 "\n"
14260 msgstr ""
14261
14262 #. type: textblock
14263 #: ../fish/guestfish-actions.pod:4938 ../src/guestfs-actions.pod:7432
14264 msgid ""
14265 "This command activates or (if C<activate> is false) deactivates all logical "
14266 "volumes in all volume groups."
14267 msgstr ""
14268
14269 #. type: textblock
14270 #: ../fish/guestfish-actions.pod:4941 ../src/guestfs-actions.pod:7435
14271 msgid "This command is the same as running C<vgchange -a y|n>"
14272 msgstr ""
14273
14274 #. type: =head2
14275 #: ../fish/guestfish-actions.pod:4943
14276 msgid "vgcreate"
14277 msgstr ""
14278
14279 #. type: verbatim
14280 #: ../fish/guestfish-actions.pod:4945
14281 #, no-wrap
14282 msgid ""
14283 " vgcreate volgroup 'physvols ...'\n"
14284 "\n"
14285 msgstr ""
14286
14287 #. type: textblock
14288 #: ../fish/guestfish-actions.pod:4947 ../src/guestfs-actions.pod:7448
14289 msgid ""
14290 "This creates an LVM volume group called C<volgroup> from the non-empty list "
14291 "of physical volumes C<physvols>."
14292 msgstr ""
14293
14294 #. type: =head2
14295 #: ../fish/guestfish-actions.pod:4950
14296 msgid "vglvuuids"
14297 msgstr ""
14298
14299 #. type: verbatim
14300 #: ../fish/guestfish-actions.pod:4952
14301 #, no-wrap
14302 msgid ""
14303 " vglvuuids vgname\n"
14304 "\n"
14305 msgstr ""
14306
14307 #. type: textblock
14308 #: ../fish/guestfish-actions.pod:4954 ../src/guestfs-actions.pod:7461
14309 msgid ""
14310 "Given a VG called C<vgname>, this returns the UUIDs of all the logical "
14311 "volumes created in this volume group."
14312 msgstr ""
14313
14314 #. type: textblock
14315 #: ../fish/guestfish-actions.pod:4957
14316 msgid ""
14317 "You can use this along with L</lvs> and L</lvuuid> calls to associate "
14318 "logical volumes and volume groups."
14319 msgstr ""
14320
14321 #. type: textblock
14322 #: ../fish/guestfish-actions.pod:4960
14323 msgid "See also L</vgpvuuids>."
14324 msgstr ""
14325
14326 #. type: =head2
14327 #: ../fish/guestfish-actions.pod:4962
14328 msgid "vgpvuuids"
14329 msgstr ""
14330
14331 #. type: verbatim
14332 #: ../fish/guestfish-actions.pod:4964
14333 #, no-wrap
14334 msgid ""
14335 " vgpvuuids vgname\n"
14336 "\n"
14337 msgstr ""
14338
14339 #. type: textblock
14340 #: ../fish/guestfish-actions.pod:4966 ../src/guestfs-actions.pod:7481
14341 msgid ""
14342 "Given a VG called C<vgname>, this returns the UUIDs of all the physical "
14343 "volumes that this volume group resides on."
14344 msgstr ""
14345
14346 #. type: textblock
14347 #: ../fish/guestfish-actions.pod:4969
14348 msgid ""
14349 "You can use this along with L</pvs> and L</pvuuid> calls to associate "
14350 "physical volumes and volume groups."
14351 msgstr ""
14352
14353 #. type: textblock
14354 #: ../fish/guestfish-actions.pod:4972
14355 msgid "See also L</vglvuuids>."
14356 msgstr ""
14357
14358 #. type: =head2
14359 #: ../fish/guestfish-actions.pod:4974
14360 msgid "vgremove"
14361 msgstr ""
14362
14363 #. type: verbatim
14364 #: ../fish/guestfish-actions.pod:4976
14365 #, no-wrap
14366 msgid ""
14367 " vgremove vgname\n"
14368 "\n"
14369 msgstr ""
14370
14371 #. type: textblock
14372 #: ../fish/guestfish-actions.pod:4978 ../src/guestfs-actions.pod:7501
14373 msgid "Remove an LVM volume group C<vgname>, (for example C<VG>)."
14374 msgstr ""
14375
14376 #. type: textblock
14377 #: ../fish/guestfish-actions.pod:4980 ../src/guestfs-actions.pod:7503
14378 msgid "This also forcibly removes all logical volumes in the volume group (if any)."
14379 msgstr ""
14380
14381 #. type: =head2
14382 #: ../fish/guestfish-actions.pod:4983
14383 msgid "vgrename"
14384 msgstr ""
14385
14386 #. type: verbatim
14387 #: ../fish/guestfish-actions.pod:4985
14388 #, no-wrap
14389 msgid ""
14390 " vgrename volgroup newvolgroup\n"
14391 "\n"
14392 msgstr ""
14393
14394 #. type: textblock
14395 #: ../fish/guestfish-actions.pod:4987 ../src/guestfs-actions.pod:7517
14396 msgid "Rename a volume group C<volgroup> with the new name C<newvolgroup>."
14397 msgstr ""
14398
14399 #. type: =head2
14400 #: ../fish/guestfish-actions.pod:4989
14401 msgid "vgs"
14402 msgstr ""
14403
14404 #. type: verbatim
14405 #: ../fish/guestfish-actions.pod:4991
14406 #, no-wrap
14407 msgid ""
14408 " vgs\n"
14409 "\n"
14410 msgstr ""
14411
14412 #. type: textblock
14413 #: ../fish/guestfish-actions.pod:4993 ../src/guestfs-actions.pod:7528
14414 msgid ""
14415 "List all the volumes groups detected.  This is the equivalent of the "
14416 "L<vgs(8)> command."
14417 msgstr ""
14418
14419 #. type: textblock
14420 #: ../fish/guestfish-actions.pod:4996 ../src/guestfs-actions.pod:7531
14421 msgid ""
14422 "This returns a list of just the volume group names that were detected "
14423 "(eg. C<VolGroup00>)."
14424 msgstr ""
14425
14426 #. type: textblock
14427 #: ../fish/guestfish-actions.pod:4999
14428 msgid "See also L</vgs-full>."
14429 msgstr ""
14430
14431 #. type: =head2
14432 #: ../fish/guestfish-actions.pod:5001
14433 msgid "vgs-full"
14434 msgstr ""
14435
14436 #. type: verbatim
14437 #: ../fish/guestfish-actions.pod:5003
14438 #, no-wrap
14439 msgid ""
14440 " vgs-full\n"
14441 "\n"
14442 msgstr ""
14443
14444 #. type: textblock
14445 #: ../fish/guestfish-actions.pod:5005 ../src/guestfs-actions.pod:7547
14446 msgid ""
14447 "List all the volumes groups detected.  This is the equivalent of the "
14448 "L<vgs(8)> command.  The \"full\" version includes all fields."
14449 msgstr ""
14450
14451 #. type: =head2
14452 #: ../fish/guestfish-actions.pod:5008
14453 msgid "vgscan"
14454 msgstr ""
14455
14456 #. type: verbatim
14457 #: ../fish/guestfish-actions.pod:5010
14458 #, no-wrap
14459 msgid ""
14460 " vgscan\n"
14461 "\n"
14462 msgstr ""
14463
14464 #. type: textblock
14465 #: ../fish/guestfish-actions.pod:5012 ../src/guestfs-actions.pod:7561
14466 msgid ""
14467 "This rescans all block devices and rebuilds the list of LVM physical "
14468 "volumes, volume groups and logical volumes."
14469 msgstr ""
14470
14471 #. type: =head2
14472 #: ../fish/guestfish-actions.pod:5015
14473 msgid "vguuid"
14474 msgstr ""
14475
14476 #. type: verbatim
14477 #: ../fish/guestfish-actions.pod:5017
14478 #, no-wrap
14479 msgid ""
14480 " vguuid vgname\n"
14481 "\n"
14482 msgstr ""
14483
14484 #. type: textblock
14485 #: ../fish/guestfish-actions.pod:5019 ../src/guestfs-actions.pod:7574
14486 msgid "This command returns the UUID of the LVM VG named C<vgname>."
14487 msgstr ""
14488
14489 #. type: =head2
14490 #: ../fish/guestfish-actions.pod:5021
14491 msgid "wc-c"
14492 msgstr ""
14493
14494 #. type: verbatim
14495 #: ../fish/guestfish-actions.pod:5023
14496 #, no-wrap
14497 msgid ""
14498 " wc-c path\n"
14499 "\n"
14500 msgstr ""
14501
14502 #. type: textblock
14503 #: ../fish/guestfish-actions.pod:5025 ../src/guestfs-actions.pod:7614
14504 msgid ""
14505 "This command counts the characters in a file, using the C<wc -c> external "
14506 "command."
14507 msgstr ""
14508
14509 #. type: =head2
14510 #: ../fish/guestfish-actions.pod:5028
14511 msgid "wc-l"
14512 msgstr ""
14513
14514 #. type: verbatim
14515 #: ../fish/guestfish-actions.pod:5030
14516 #, no-wrap
14517 msgid ""
14518 " wc-l path\n"
14519 "\n"
14520 msgstr ""
14521
14522 #. type: textblock
14523 #: ../fish/guestfish-actions.pod:5032 ../src/guestfs-actions.pod:7627
14524 msgid ""
14525 "This command counts the lines in a file, using the C<wc -l> external "
14526 "command."
14527 msgstr ""
14528
14529 #. type: =head2
14530 #: ../fish/guestfish-actions.pod:5035
14531 msgid "wc-w"
14532 msgstr ""
14533
14534 #. type: verbatim
14535 #: ../fish/guestfish-actions.pod:5037
14536 #, no-wrap
14537 msgid ""
14538 " wc-w path\n"
14539 "\n"
14540 msgstr ""
14541
14542 #. type: textblock
14543 #: ../fish/guestfish-actions.pod:5039 ../src/guestfs-actions.pod:7640
14544 msgid ""
14545 "This command counts the words in a file, using the C<wc -w> external "
14546 "command."
14547 msgstr ""
14548
14549 #. type: =head2
14550 #: ../fish/guestfish-actions.pod:5042
14551 msgid "write"
14552 msgstr ""
14553
14554 #. type: verbatim
14555 #: ../fish/guestfish-actions.pod:5044
14556 #, no-wrap
14557 msgid ""
14558 " write path content\n"
14559 "\n"
14560 msgstr ""
14561
14562 #. type: textblock
14563 #: ../fish/guestfish-actions.pod:5046 ../src/guestfs-actions.pod:7655
14564 msgid ""
14565 "This call creates a file called C<path>.  The content of the file is the "
14566 "string C<content> (which can contain any 8 bit data)."
14567 msgstr ""
14568
14569 #. type: textblock
14570 #: ../fish/guestfish-actions.pod:5049
14571 msgid "See also L</write-append>."
14572 msgstr ""
14573
14574 #. type: =head2
14575 #: ../fish/guestfish-actions.pod:5054
14576 msgid "write-append"
14577 msgstr ""
14578
14579 #. type: verbatim
14580 #: ../fish/guestfish-actions.pod:5056
14581 #, no-wrap
14582 msgid ""
14583 " write-append path content\n"
14584 "\n"
14585 msgstr ""
14586
14587 #. type: textblock
14588 #: ../fish/guestfish-actions.pod:5058 ../src/guestfs-actions.pod:7675
14589 msgid ""
14590 "This call appends C<content> to the end of file C<path>.  If C<path> does "
14591 "not exist, then a new file is created."
14592 msgstr ""
14593
14594 #. type: textblock
14595 #: ../fish/guestfish-actions.pod:5061
14596 msgid "See also L</write>."
14597 msgstr ""
14598
14599 #. type: =head2
14600 #: ../fish/guestfish-actions.pod:5066
14601 msgid "write-file"
14602 msgstr ""
14603
14604 #. type: verbatim
14605 #: ../fish/guestfish-actions.pod:5068
14606 #, no-wrap
14607 msgid ""
14608 " write-file path content size\n"
14609 "\n"
14610 msgstr ""
14611
14612 #. type: textblock
14613 #: ../fish/guestfish-actions.pod:5070 ../src/guestfs-actions.pod:7695
14614 msgid ""
14615 "This call creates a file called C<path>.  The contents of the file is the "
14616 "string C<content> (which can contain any 8 bit data), with length C<size>."
14617 msgstr ""
14618
14619 #. type: textblock
14620 #: ../fish/guestfish-actions.pod:5074 ../src/guestfs-actions.pod:7699
14621 msgid ""
14622 "As a special case, if C<size> is C<0> then the length is calculated using "
14623 "C<strlen> (so in this case the content cannot contain embedded ASCII NULs)."
14624 msgstr ""
14625
14626 #. type: textblock
14627 #: ../fish/guestfish-actions.pod:5078 ../src/guestfs-actions.pod:7703
14628 msgid ""
14629 "I<NB.> Owing to a bug, writing content containing ASCII NUL characters does "
14630 "I<not> work, even if the length is specified."
14631 msgstr ""
14632
14633 #. type: textblock
14634 #: ../fish/guestfish-actions.pod:5084 ../src/guestfs-actions.pod:7711
14635 msgid "This function is deprecated.  In new code, use the C<write> call instead."
14636 msgstr ""
14637
14638 #. type: =head2
14639 #: ../fish/guestfish-actions.pod:5091
14640 msgid "zegrep"
14641 msgstr ""
14642
14643 #. type: verbatim
14644 #: ../fish/guestfish-actions.pod:5093
14645 #, no-wrap
14646 msgid ""
14647 " zegrep regex path\n"
14648 "\n"
14649 msgstr ""
14650
14651 #. type: textblock
14652 #: ../fish/guestfish-actions.pod:5095 ../src/guestfs-actions.pod:7727
14653 msgid "This calls the external C<zegrep> program and returns the matching lines."
14654 msgstr ""
14655
14656 #. type: =head2
14657 #: ../fish/guestfish-actions.pod:5101
14658 msgid "zegrepi"
14659 msgstr ""
14660
14661 #. type: verbatim
14662 #: ../fish/guestfish-actions.pod:5103
14663 #, no-wrap
14664 msgid ""
14665 " zegrepi regex path\n"
14666 "\n"
14667 msgstr ""
14668
14669 #. type: textblock
14670 #: ../fish/guestfish-actions.pod:5105 ../src/guestfs-actions.pod:7746
14671 msgid "This calls the external C<zegrep -i> program and returns the matching lines."
14672 msgstr ""
14673
14674 #. type: =head2
14675 #: ../fish/guestfish-actions.pod:5111
14676 msgid "zero"
14677 msgstr ""
14678
14679 #. type: verbatim
14680 #: ../fish/guestfish-actions.pod:5113
14681 #, no-wrap
14682 msgid ""
14683 " zero device\n"
14684 "\n"
14685 msgstr ""
14686
14687 #. type: textblock
14688 #: ../fish/guestfish-actions.pod:5115 ../src/guestfs-actions.pod:7764
14689 msgid "This command writes zeroes over the first few blocks of C<device>."
14690 msgstr ""
14691
14692 #. type: textblock
14693 #: ../fish/guestfish-actions.pod:5117 ../src/guestfs-actions.pod:7766
14694 msgid ""
14695 "How many blocks are zeroed isn't specified (but it's I<not> enough to "
14696 "securely wipe the device).  It should be sufficient to remove any partition "
14697 "tables, filesystem superblocks and so on."
14698 msgstr ""
14699
14700 #. type: textblock
14701 #: ../fish/guestfish-actions.pod:5121
14702 msgid "See also: L</zero-device>, L</scrub-device>, L</is-zero-device>"
14703 msgstr ""
14704
14705 #. type: =head2
14706 #: ../fish/guestfish-actions.pod:5124
14707 msgid "zero-device"
14708 msgstr ""
14709
14710 #. type: verbatim
14711 #: ../fish/guestfish-actions.pod:5126
14712 #, no-wrap
14713 msgid ""
14714 " zero-device device\n"
14715 "\n"
14716 msgstr ""
14717
14718 #. type: textblock
14719 #: ../fish/guestfish-actions.pod:5128
14720 msgid ""
14721 "This command writes zeroes over the entire C<device>.  Compare with L</zero> "
14722 "which just zeroes the first few blocks of a device."
14723 msgstr ""
14724
14725 #. type: =head2
14726 #: ../fish/guestfish-actions.pod:5135
14727 msgid "zerofree"
14728 msgstr ""
14729
14730 #. type: verbatim
14731 #: ../fish/guestfish-actions.pod:5137
14732 #, no-wrap
14733 msgid ""
14734 " zerofree device\n"
14735 "\n"
14736 msgstr ""
14737
14738 #. type: textblock
14739 #: ../fish/guestfish-actions.pod:5139 ../src/guestfs-actions.pod:7810
14740 msgid ""
14741 "This runs the I<zerofree> program on C<device>.  This program claims to zero "
14742 "unused inodes and disk blocks on an ext2/3 filesystem, thus making it "
14743 "possible to compress the filesystem more effectively."
14744 msgstr ""
14745
14746 #. type: textblock
14747 #: ../fish/guestfish-actions.pod:5144 ../src/guestfs-actions.pod:7815
14748 msgid "You should B<not> run this program if the filesystem is mounted."
14749 msgstr ""
14750
14751 #. type: textblock
14752 #: ../fish/guestfish-actions.pod:5147 ../src/guestfs-actions.pod:7818
14753 msgid ""
14754 "It is possible that using this program can damage the filesystem or data on "
14755 "the filesystem."
14756 msgstr ""
14757
14758 #. type: =head2
14759 #: ../fish/guestfish-actions.pod:5150
14760 msgid "zfgrep"
14761 msgstr ""
14762
14763 #. type: verbatim
14764 #: ../fish/guestfish-actions.pod:5152
14765 #, no-wrap
14766 msgid ""
14767 " zfgrep pattern path\n"
14768 "\n"
14769 msgstr ""
14770
14771 #. type: textblock
14772 #: ../fish/guestfish-actions.pod:5154 ../src/guestfs-actions.pod:7832
14773 msgid "This calls the external C<zfgrep> program and returns the matching lines."
14774 msgstr ""
14775
14776 #. type: =head2
14777 #: ../fish/guestfish-actions.pod:5160
14778 msgid "zfgrepi"
14779 msgstr ""
14780
14781 #. type: verbatim
14782 #: ../fish/guestfish-actions.pod:5162
14783 #, no-wrap
14784 msgid ""
14785 " zfgrepi pattern path\n"
14786 "\n"
14787 msgstr ""
14788
14789 #. type: textblock
14790 #: ../fish/guestfish-actions.pod:5164 ../src/guestfs-actions.pod:7851
14791 msgid "This calls the external C<zfgrep -i> program and returns the matching lines."
14792 msgstr ""
14793
14794 #. type: =head2
14795 #: ../fish/guestfish-actions.pod:5170
14796 msgid "zfile"
14797 msgstr ""
14798
14799 #. type: verbatim
14800 #: ../fish/guestfish-actions.pod:5172
14801 #, no-wrap
14802 msgid ""
14803 " zfile meth path\n"
14804 "\n"
14805 msgstr ""
14806
14807 #. type: textblock
14808 #: ../fish/guestfish-actions.pod:5174 ../src/guestfs-actions.pod:7870
14809 msgid "This command runs C<file> after first decompressing C<path> using C<method>."
14810 msgstr ""
14811
14812 #. type: textblock
14813 #: ../fish/guestfish-actions.pod:5177 ../src/guestfs-actions.pod:7873
14814 msgid "C<method> must be one of C<gzip>, C<compress> or C<bzip2>."
14815 msgstr ""
14816
14817 #. type: textblock
14818 #: ../fish/guestfish-actions.pod:5179
14819 msgid "Since 1.0.63, use L</file> instead which can now process compressed files."
14820 msgstr ""
14821
14822 #. type: textblock
14823 #: ../fish/guestfish-actions.pod:5182 ../src/guestfs-actions.pod:7881
14824 msgid "This function is deprecated.  In new code, use the C<file> call instead."
14825 msgstr ""
14826
14827 #. type: =head2
14828 #: ../fish/guestfish-actions.pod:5189
14829 msgid "zgrep"
14830 msgstr ""
14831
14832 #. type: verbatim
14833 #: ../fish/guestfish-actions.pod:5191
14834 #, no-wrap
14835 msgid ""
14836 " zgrep regex path\n"
14837 "\n"
14838 msgstr ""
14839
14840 #. type: textblock
14841 #: ../fish/guestfish-actions.pod:5193 ../src/guestfs-actions.pod:7897
14842 msgid "This calls the external C<zgrep> program and returns the matching lines."
14843 msgstr ""
14844
14845 #. type: =head2
14846 #: ../fish/guestfish-actions.pod:5199
14847 msgid "zgrepi"
14848 msgstr ""
14849
14850 #. type: verbatim
14851 #: ../fish/guestfish-actions.pod:5201
14852 #, no-wrap
14853 msgid ""
14854 " zgrepi regex path\n"
14855 "\n"
14856 msgstr ""
14857
14858 #. type: textblock
14859 #: ../fish/guestfish-actions.pod:5203 ../src/guestfs-actions.pod:7916
14860 msgid "This calls the external C<zgrep -i> program and returns the matching lines."
14861 msgstr ""
14862
14863 #. type: =head2
14864 #: ../fish/guestfish-commands.pod:1
14865 msgid "alloc"
14866 msgstr ""
14867
14868 #. type: =head2
14869 #: ../fish/guestfish-commands.pod:3
14870 msgid "allocate"
14871 msgstr ""
14872
14873 #. type: verbatim
14874 #: ../fish/guestfish-commands.pod:5
14875 #, no-wrap
14876 msgid ""
14877 " alloc filename size\n"
14878 "\n"
14879 msgstr ""
14880
14881 #. type: textblock
14882 #: ../fish/guestfish-commands.pod:7
14883 msgid ""
14884 "This creates an empty (zeroed) file of the given size, and then adds so it "
14885 "can be further examined."
14886 msgstr ""
14887
14888 #. type: textblock
14889 #: ../fish/guestfish-commands.pod:10 ../fish/guestfish-commands.pod:182
14890 msgid "For more advanced image creation, see L<qemu-img(1)> utility."
14891 msgstr ""
14892
14893 #. type: textblock
14894 #: ../fish/guestfish-commands.pod:12 ../fish/guestfish-commands.pod:184
14895 msgid "Size can be specified using standard suffixes, eg. C<1M>."
14896 msgstr ""
14897
14898 #. type: textblock
14899 #: ../fish/guestfish-commands.pod:14
14900 msgid ""
14901 "To create a sparse file, use L</sparse> instead.  To create a prepared disk "
14902 "image, see L</PREPARED DISK IMAGES>."
14903 msgstr ""
14904
14905 #. type: =head2
14906 #: ../fish/guestfish-commands.pod:17
14907 msgid "copy-in"
14908 msgstr ""
14909
14910 #. type: verbatim
14911 #: ../fish/guestfish-commands.pod:19
14912 #, no-wrap
14913 msgid ""
14914 " copy-in local [local ...] /remotedir\n"
14915 "\n"
14916 msgstr ""
14917
14918 #. type: textblock
14919 #: ../fish/guestfish-commands.pod:21
14920 msgid ""
14921 "C<copy-in> copies local files or directories recursively into the disk "
14922 "image, placing them in the directory called C</remotedir> (which must "
14923 "exist).  This guestfish meta-command turns into a sequence of L</tar-in> and "
14924 "other commands as necessary."
14925 msgstr ""
14926
14927 #. type: textblock
14928 #: ../fish/guestfish-commands.pod:26
14929 msgid ""
14930 "Multiple local files and directories can be specified, but the last "
14931 "parameter must always be a remote directory.  Wildcards cannot be used."
14932 msgstr ""
14933
14934 #. type: =head2
14935 #: ../fish/guestfish-commands.pod:30
14936 msgid "copy-out"
14937 msgstr ""
14938
14939 #. type: verbatim
14940 #: ../fish/guestfish-commands.pod:32
14941 #, no-wrap
14942 msgid ""
14943 " copy-out remote [remote ...] localdir\n"
14944 "\n"
14945 msgstr ""
14946
14947 #. type: textblock
14948 #: ../fish/guestfish-commands.pod:34
14949 msgid ""
14950 "C<copy-out> copies remote files or directories recursively out of the disk "
14951 "image, placing them on the host disk in a local directory called C<localdir> "
14952 "(which must exist).  This guestfish meta-command turns into a sequence of "
14953 "L</download>, L</tar-out> and other commands as necessary."
14954 msgstr ""
14955
14956 #. type: textblock
14957 #: ../fish/guestfish-commands.pod:40
14958 msgid ""
14959 "Multiple remote files and directories can be specified, but the last "
14960 "parameter must always be a local directory.  To download to the current "
14961 "directory, use C<.> as in:"
14962 msgstr ""
14963
14964 #. type: verbatim
14965 #: ../fish/guestfish-commands.pod:44
14966 #, no-wrap
14967 msgid ""
14968 " copy-out /home .\n"
14969 "\n"
14970 msgstr ""
14971
14972 #. type: textblock
14973 #: ../fish/guestfish-commands.pod:46
14974 msgid ""
14975 "Wildcards cannot be used in the ordinary command, but you can use them with "
14976 "the help of L</glob> like this:"
14977 msgstr ""
14978
14979 #. type: verbatim
14980 #: ../fish/guestfish-commands.pod:49
14981 #, no-wrap
14982 msgid ""
14983 " glob copy-out /home/* .\n"
14984 "\n"
14985 msgstr ""
14986
14987 #. type: =head2
14988 #: ../fish/guestfish-commands.pod:51
14989 msgid "display"
14990 msgstr ""
14991
14992 #. type: verbatim
14993 #: ../fish/guestfish-commands.pod:53
14994 #, no-wrap
14995 msgid ""
14996 " display filename\n"
14997 "\n"
14998 msgstr ""
14999
15000 #. type: textblock
15001 #: ../fish/guestfish-commands.pod:55
15002 msgid ""
15003 "Use C<display> (a graphical display program) to display an image file.  It "
15004 "downloads the file, and runs C<display> on it."
15005 msgstr ""
15006
15007 #. type: textblock
15008 #: ../fish/guestfish-commands.pod:58
15009 msgid ""
15010 "To use an alternative program, set the C<GUESTFISH_DISPLAY_IMAGE> "
15011 "environment variable.  For example to use the GNOME display program:"
15012 msgstr ""
15013
15014 #. type: verbatim
15015 #: ../fish/guestfish-commands.pod:61
15016 #, no-wrap
15017 msgid ""
15018 " export GUESTFISH_DISPLAY_IMAGE=eog\n"
15019 "\n"
15020 msgstr ""
15021
15022 #. type: textblock
15023 #: ../fish/guestfish-commands.pod:63
15024 msgid "See also L<display(1)>."
15025 msgstr ""
15026
15027 #. type: =head2
15028 #: ../fish/guestfish-commands.pod:65
15029 msgid "echo"
15030 msgstr ""
15031
15032 #. type: verbatim
15033 #: ../fish/guestfish-commands.pod:67
15034 #, no-wrap
15035 msgid ""
15036 " echo [params ...]\n"
15037 "\n"
15038 msgstr ""
15039
15040 #. type: textblock
15041 #: ../fish/guestfish-commands.pod:69
15042 msgid "This echos the parameters to the terminal."
15043 msgstr ""
15044
15045 #. type: =head2
15046 #: ../fish/guestfish-commands.pod:71
15047 msgid "edit"
15048 msgstr ""
15049
15050 #. type: =head2
15051 #: ../fish/guestfish-commands.pod:73
15052 msgid "vi"
15053 msgstr ""
15054
15055 #. type: =head2
15056 #: ../fish/guestfish-commands.pod:75
15057 msgid "emacs"
15058 msgstr ""
15059
15060 #. type: verbatim
15061 #: ../fish/guestfish-commands.pod:77
15062 #, no-wrap
15063 msgid ""
15064 " edit filename\n"
15065 "\n"
15066 msgstr ""
15067
15068 #. type: textblock
15069 #: ../fish/guestfish-commands.pod:79
15070 msgid ""
15071 "This is used to edit a file.  It downloads the file, edits it locally using "
15072 "your editor, then uploads the result."
15073 msgstr ""
15074
15075 #. type: textblock
15076 #: ../fish/guestfish-commands.pod:82
15077 msgid ""
15078 "The editor is C<$EDITOR>.  However if you use the alternate commands C<vi> "
15079 "or C<emacs> you will get those corresponding editors."
15080 msgstr ""
15081
15082 #. type: =head2
15083 #: ../fish/guestfish-commands.pod:86
15084 msgid "glob"
15085 msgstr ""
15086
15087 #. type: verbatim
15088 #: ../fish/guestfish-commands.pod:88
15089 #, no-wrap
15090 msgid ""
15091 " glob command args...\n"
15092 "\n"
15093 msgstr ""
15094
15095 #. type: textblock
15096 #: ../fish/guestfish-commands.pod:90
15097 msgid ""
15098 "Expand wildcards in any paths in the args list, and run C<command> "
15099 "repeatedly on each matching path."
15100 msgstr ""
15101
15102 #. type: textblock
15103 #: ../fish/guestfish-commands.pod:93
15104 msgid "See L</WILDCARDS AND GLOBBING>."
15105 msgstr ""
15106
15107 #. type: =head2
15108 #: ../fish/guestfish-commands.pod:95
15109 msgid "hexedit"
15110 msgstr ""
15111
15112 #. type: verbatim
15113 #: ../fish/guestfish-commands.pod:97
15114 #, no-wrap
15115 msgid ""
15116 " hexedit <filename|device>\n"
15117 " hexedit <filename|device> <max>\n"
15118 " hexedit <filename|device> <start> <max>\n"
15119 "\n"
15120 msgstr ""
15121
15122 #. type: textblock
15123 #: ../fish/guestfish-commands.pod:101
15124 msgid ""
15125 "Use hexedit (a hex editor) to edit all or part of a binary file or block "
15126 "device."
15127 msgstr ""
15128
15129 #. type: textblock
15130 #: ../fish/guestfish-commands.pod:104
15131 msgid ""
15132 "This command works by downloading potentially the whole file or device, "
15133 "editing it locally, then uploading it.  If the file or device is large, you "
15134 "have to specify which part you wish to edit by using C<max> and/or C<start> "
15135 "C<max> parameters.  C<start> and C<max> are specified in bytes, with the "
15136 "usual modifiers allowed such as C<1M> (1 megabyte)."
15137 msgstr ""
15138
15139 #. type: textblock
15140 #: ../fish/guestfish-commands.pod:111
15141 msgid "For example to edit the first few sectors of a disk you might do:"
15142 msgstr ""
15143
15144 #. type: verbatim
15145 #: ../fish/guestfish-commands.pod:114
15146 #, no-wrap
15147 msgid ""
15148 " hexedit /dev/sda 1M\n"
15149 "\n"
15150 msgstr ""
15151
15152 #. type: textblock
15153 #: ../fish/guestfish-commands.pod:116
15154 msgid ""
15155 "which would allow you to edit anywhere within the first megabyte of the "
15156 "disk."
15157 msgstr ""
15158
15159 #. type: textblock
15160 #: ../fish/guestfish-commands.pod:119
15161 msgid "To edit the superblock of an ext2 filesystem on C</dev/sda1>, do:"
15162 msgstr ""
15163
15164 #. type: verbatim
15165 #: ../fish/guestfish-commands.pod:121
15166 #, no-wrap
15167 msgid ""
15168 " hexedit /dev/sda1 0x400 0x400\n"
15169 "\n"
15170 msgstr ""
15171
15172 #. type: textblock
15173 #: ../fish/guestfish-commands.pod:123
15174 msgid "(assuming the superblock is in the standard location)."
15175 msgstr ""
15176
15177 #. type: textblock
15178 #: ../fish/guestfish-commands.pod:125
15179 msgid ""
15180 "This command requires the external L<hexedit(1)> program.  You can specify "
15181 "another program to use by setting the C<HEXEDITOR> environment variable."
15182 msgstr ""
15183
15184 #. type: textblock
15185 #: ../fish/guestfish-commands.pod:129
15186 msgid "See also L</hexdump>."
15187 msgstr ""
15188
15189 #. type: =head2
15190 #: ../fish/guestfish-commands.pod:131
15191 msgid "lcd"
15192 msgstr ""
15193
15194 #. type: verbatim
15195 #: ../fish/guestfish-commands.pod:133
15196 #, no-wrap
15197 msgid ""
15198 " lcd directory\n"
15199 "\n"
15200 msgstr ""
15201
15202 #. type: textblock
15203 #: ../fish/guestfish-commands.pod:135
15204 msgid "Change the local directory, ie. the current directory of guestfish itself."
15205 msgstr ""
15206
15207 #. type: textblock
15208 #: ../fish/guestfish-commands.pod:138
15209 msgid "Note that C<!cd> won't do what you might expect."
15210 msgstr ""
15211
15212 #. type: =head2
15213 #: ../fish/guestfish-commands.pod:140
15214 msgid "man"
15215 msgstr ""
15216
15217 #. type: =head2
15218 #: ../fish/guestfish-commands.pod:142
15219 msgid "manual"
15220 msgstr ""
15221
15222 #. type: verbatim
15223 #: ../fish/guestfish-commands.pod:144
15224 #, no-wrap
15225 msgid ""
15226 "  man\n"
15227 "\n"
15228 msgstr ""
15229
15230 #. type: textblock
15231 #: ../fish/guestfish-commands.pod:146
15232 msgid "Opens the manual page for guestfish."
15233 msgstr ""
15234
15235 #. type: =head2
15236 #: ../fish/guestfish-commands.pod:148
15237 msgid "more"
15238 msgstr ""
15239
15240 #. type: =head2
15241 #: ../fish/guestfish-commands.pod:150
15242 msgid "less"
15243 msgstr ""
15244
15245 #. type: verbatim
15246 #: ../fish/guestfish-commands.pod:152
15247 #, no-wrap
15248 msgid ""
15249 " more filename\n"
15250 "\n"
15251 msgstr ""
15252
15253 #. type: verbatim
15254 #: ../fish/guestfish-commands.pod:154
15255 #, no-wrap
15256 msgid ""
15257 " less filename\n"
15258 "\n"
15259 msgstr ""
15260
15261 #. type: textblock
15262 #: ../fish/guestfish-commands.pod:156
15263 msgid "This is used to view a file."
15264 msgstr ""
15265
15266 #. type: textblock
15267 #: ../fish/guestfish-commands.pod:158
15268 msgid ""
15269 "The default viewer is C<$PAGER>.  However if you use the alternate command "
15270 "C<less> you will get the C<less> command specifically."
15271 msgstr ""
15272
15273 #. type: =head2
15274 #: ../fish/guestfish-commands.pod:161
15275 msgid "reopen"
15276 msgstr ""
15277
15278 #. type: verbatim
15279 #: ../fish/guestfish-commands.pod:163
15280 #, no-wrap
15281 msgid ""
15282 "  reopen\n"
15283 "\n"
15284 msgstr ""
15285
15286 #. type: textblock
15287 #: ../fish/guestfish-commands.pod:165
15288 msgid ""
15289 "Close and reopen the libguestfs handle.  It is not necessary to use this "
15290 "normally, because the handle is closed properly when guestfish exits.  "
15291 "However this is occasionally useful for testing."
15292 msgstr ""
15293
15294 #. type: =head2
15295 #: ../fish/guestfish-commands.pod:169
15296 msgid "sparse"
15297 msgstr ""
15298
15299 #. type: verbatim
15300 #: ../fish/guestfish-commands.pod:171
15301 #, no-wrap
15302 msgid ""
15303 " sparse filename size\n"
15304 "\n"
15305 msgstr ""
15306
15307 #. type: textblock
15308 #: ../fish/guestfish-commands.pod:173
15309 msgid ""
15310 "This creates an empty sparse file of the given size, and then adds so it can "
15311 "be further examined."
15312 msgstr ""
15313
15314 #. type: textblock
15315 #: ../fish/guestfish-commands.pod:176
15316 msgid ""
15317 "In all respects it works the same as the L</alloc> command, except that the "
15318 "image file is allocated sparsely, which means that disk blocks are not "
15319 "assigned to the file until they are needed.  Sparse disk files only use "
15320 "space when written to, but they are slower and there is a danger you could "
15321 "run out of real disk space during a write operation."
15322 msgstr ""
15323
15324 #. type: =head2
15325 #: ../fish/guestfish-commands.pod:186
15326 msgid "supported"
15327 msgstr ""
15328
15329 #. type: verbatim
15330 #: ../fish/guestfish-commands.pod:188
15331 #, no-wrap
15332 msgid ""
15333 " supported\n"
15334 "\n"
15335 msgstr ""
15336
15337 #. type: textblock
15338 #: ../fish/guestfish-commands.pod:190
15339 msgid ""
15340 "This command returns a list of the optional groups known to the daemon, and "
15341 "indicates which ones are supported by this build of the libguestfs "
15342 "appliance."
15343 msgstr ""
15344
15345 #. type: textblock
15346 #: ../fish/guestfish-commands.pod:194
15347 msgid "See also L<guestfs(3)/AVAILABILITY>."
15348 msgstr ""
15349
15350 #. type: =head2
15351 #: ../fish/guestfish-commands.pod:196
15352 msgid "time"
15353 msgstr ""
15354
15355 #. type: verbatim
15356 #: ../fish/guestfish-commands.pod:198
15357 #, no-wrap
15358 msgid ""
15359 " time command args...\n"
15360 "\n"
15361 msgstr ""
15362
15363 #. type: textblock
15364 #: ../fish/guestfish-commands.pod:200
15365 msgid ""
15366 "Run the command as usual, but print the elapsed time afterwards.  This can "
15367 "be useful for benchmarking operations."
15368 msgstr ""
15369
15370 #. type: textblock
15371 #: ../fish/guestfish.pod:5
15372 msgid "guestfish - the libguestfs Filesystem Interactive SHell"
15373 msgstr ""
15374
15375 #. type: verbatim
15376 #: ../fish/guestfish.pod:9
15377 #, no-wrap
15378 msgid ""
15379 " guestfish [--options] [commands]\n"
15380 "\n"
15381 msgstr ""
15382
15383 #. type: verbatim
15384 #: ../fish/guestfish.pod:11
15385 #, no-wrap
15386 msgid ""
15387 " guestfish\n"
15388 "\n"
15389 msgstr ""
15390
15391 #. type: verbatim
15392 #: ../fish/guestfish.pod:13
15393 #, no-wrap
15394 msgid ""
15395 " guestfish [--ro|--rw] -a disk.img\n"
15396 "\n"
15397 msgstr ""
15398
15399 #. type: verbatim
15400 #: ../fish/guestfish.pod:15
15401 #, no-wrap
15402 msgid ""
15403 " guestfish [--ro|--rw] -a disk.img -m dev[:mountpoint]\n"
15404 "\n"
15405 msgstr ""
15406
15407 #. type: verbatim
15408 #: ../fish/guestfish.pod:17
15409 #, no-wrap
15410 msgid ""
15411 " guestfish -d libvirt-domain\n"
15412 "\n"
15413 msgstr ""
15414
15415 #. type: verbatim
15416 #: ../fish/guestfish.pod:19
15417 #, no-wrap
15418 msgid ""
15419 " guestfish [--ro|--rw] -a disk.img -i\n"
15420 "\n"
15421 msgstr ""
15422
15423 #. type: verbatim
15424 #: ../fish/guestfish.pod:21
15425 #, no-wrap
15426 msgid ""
15427 " guestfish -d libvirt-domain -i\n"
15428 "\n"
15429 msgstr ""
15430
15431 #. type: textblock
15432 #: ../fish/guestfish.pod:25
15433 msgid ""
15434 "Using guestfish in read/write mode on live virtual machines can be "
15435 "dangerous, potentially causing disk corruption.  Use the I<--ro> (read-only) "
15436 "option to use guestfish safely if the disk image or virtual machine might be "
15437 "live."
15438 msgstr ""
15439
15440 #. type: textblock
15441 #: ../fish/guestfish.pod:32
15442 msgid ""
15443 "Guestfish is a shell and command-line tool for examining and modifying "
15444 "virtual machine filesystems.  It uses libguestfs and exposes all of the "
15445 "functionality of the guestfs API, see L<guestfs(3)>."
15446 msgstr ""
15447
15448 #. type: textblock
15449 #: ../fish/guestfish.pod:36
15450 msgid ""
15451 "Guestfish gives you structured access to the libguestfs API, from shell "
15452 "scripts or the command line or interactively.  If you want to rescue a "
15453 "broken virtual machine image, you should look at the L<virt-rescue(1)> "
15454 "command."
15455 msgstr ""
15456
15457 #. type: =head2
15458 #: ../fish/guestfish.pod:43
15459 msgid "As an interactive shell"
15460 msgstr ""
15461
15462 #. type: verbatim
15463 #: ../fish/guestfish.pod:45
15464 #, no-wrap
15465 msgid ""
15466 " $ guestfish\n"
15467 " \n"
15468 msgstr ""
15469
15470 #. type: verbatim
15471 #: ../fish/guestfish.pod:47
15472 #, no-wrap
15473 msgid ""
15474 " Welcome to guestfish, the libguestfs filesystem interactive shell for\n"
15475 " editing virtual machine filesystems.\n"
15476 " \n"
15477 msgstr ""
15478
15479 #. type: verbatim
15480 #: ../fish/guestfish.pod:50
15481 #, no-wrap
15482 msgid ""
15483 " Type: 'help' for a list of commands\n"
15484 "       'man' to read the manual\n"
15485 "       'quit' to quit the shell\n"
15486 " \n"
15487 msgstr ""
15488
15489 #. type: verbatim
15490 #: ../fish/guestfish.pod:54
15491 #, no-wrap
15492 msgid ""
15493 " ><fs> add-ro disk.img\n"
15494 " ><fs> run\n"
15495 " ><fs> list-filesystems\n"
15496 " /dev/sda1: ext4\n"
15497 " /dev/vg_guest/lv_root: ext4\n"
15498 " /dev/vg_guest/lv_swap: swap\n"
15499 " ><fs> mount /dev/vg_guest/lv_root /\n"
15500 " ><fs> cat /etc/fstab\n"
15501 " # /etc/fstab\n"
15502 " # Created by anaconda\n"
15503 " [...]\n"
15504 " ><fs> exit\n"
15505 "\n"
15506 msgstr ""
15507
15508 #. type: =head2
15509 #: ../fish/guestfish.pod:67
15510 msgid "From shell scripts"
15511 msgstr ""
15512
15513 #. type: textblock
15514 #: ../fish/guestfish.pod:69
15515 msgid "Create a new C</etc/motd> file in a guest or disk image:"
15516 msgstr ""
15517
15518 #. type: verbatim
15519 #: ../fish/guestfish.pod:71
15520 #, no-wrap
15521 msgid ""
15522 " guestfish <<_EOF_\n"
15523 " add disk.img\n"
15524 " run\n"
15525 " mount /dev/vg_guest/lv_root /\n"
15526 " write /etc/motd \"Welcome, new users\"\n"
15527 " _EOF_\n"
15528 "\n"
15529 msgstr ""
15530
15531 #. type: textblock
15532 #: ../fish/guestfish.pod:78
15533 msgid "List the LVM logical volumes in a disk image:"
15534 msgstr ""
15535
15536 #. type: verbatim
15537 #: ../fish/guestfish.pod:80
15538 #, no-wrap
15539 msgid ""
15540 " guestfish -a disk.img --ro <<_EOF_\n"
15541 " run\n"
15542 " lvs\n"
15543 " _EOF_\n"
15544 "\n"
15545 msgstr ""
15546
15547 #. type: textblock
15548 #: ../fish/guestfish.pod:85
15549 msgid "List all the filesystems in a disk image:"
15550 msgstr ""
15551
15552 #. type: verbatim
15553 #: ../fish/guestfish.pod:87
15554 #, no-wrap
15555 msgid ""
15556 " guestfish -a disk.img --ro <<_EOF_\n"
15557 " run\n"
15558 " list-filesystems\n"
15559 " _EOF_\n"
15560 "\n"
15561 msgstr ""
15562
15563 #. type: =head2
15564 #: ../fish/guestfish.pod:92
15565 msgid "On one command line"
15566 msgstr ""
15567
15568 #. type: textblock
15569 #: ../fish/guestfish.pod:94 ../fish/virt-copy-in.pod:31
15570 msgid "Update C</etc/resolv.conf> in a guest:"
15571 msgstr ""
15572
15573 #. type: verbatim
15574 #: ../fish/guestfish.pod:96
15575 #, no-wrap
15576 msgid ""
15577 " guestfish \\\n"
15578 "   add disk.img : run : mount /dev/vg_guest/lv_root / : \\\n"
15579 "   write /etc/resolv.conf \"nameserver 1.2.3.4\"\n"
15580 "\n"
15581 msgstr ""
15582
15583 #. type: textblock
15584 #: ../fish/guestfish.pod:100
15585 msgid "Edit C</boot/grub/grub.conf> interactively:"
15586 msgstr ""
15587
15588 #. type: verbatim
15589 #: ../fish/guestfish.pod:102
15590 #, no-wrap
15591 msgid ""
15592 " guestfish --rw --add disk.img \\\n"
15593 "   --mount /dev/vg_guest/lv_root \\\n"
15594 "   --mount /dev/sda1:/boot \\\n"
15595 "   edit /boot/grub/grub.conf\n"
15596 "\n"
15597 msgstr ""
15598
15599 #. type: =head2
15600 #: ../fish/guestfish.pod:107
15601 msgid "Mount disks automatically"
15602 msgstr ""
15603
15604 #. type: textblock
15605 #: ../fish/guestfish.pod:109
15606 msgid ""
15607 "Use the I<-i> option to automatically mount the disks from a virtual "
15608 "machine:"
15609 msgstr ""
15610
15611 #. type: verbatim
15612 #: ../fish/guestfish.pod:112
15613 #, no-wrap
15614 msgid ""
15615 " guestfish --ro -a disk.img -i cat /etc/group\n"
15616 "\n"
15617 msgstr ""
15618
15619 #. type: verbatim
15620 #: ../fish/guestfish.pod:114
15621 #, no-wrap
15622 msgid ""
15623 " guestfish --ro -d libvirt-domain -i cat /etc/group\n"
15624 "\n"
15625 msgstr ""
15626
15627 #. type: textblock
15628 #: ../fish/guestfish.pod:116
15629 msgid "Another way to edit C</boot/grub/grub.conf> interactively is:"
15630 msgstr ""
15631
15632 #. type: verbatim
15633 #: ../fish/guestfish.pod:118
15634 #, no-wrap
15635 msgid ""
15636 " guestfish --rw -a disk.img -i edit /boot/grub/grub.conf\n"
15637 "\n"
15638 msgstr ""
15639
15640 #. type: =head2
15641 #: ../fish/guestfish.pod:120
15642 msgid "As a script interpreter"
15643 msgstr ""
15644
15645 #. type: textblock
15646 #: ../fish/guestfish.pod:122
15647 msgid "Create a 100MB disk containing an ext2-formatted partition:"
15648 msgstr ""
15649
15650 #. type: verbatim
15651 #: ../fish/guestfish.pod:124
15652 #, no-wrap
15653 msgid ""
15654 " #!/usr/bin/guestfish -f\n"
15655 " sparse test1.img 100M\n"
15656 " run\n"
15657 " part-disk /dev/sda mbr\n"
15658 " mkfs ext2 /dev/sda1\n"
15659 "\n"
15660 msgstr ""
15661
15662 #. type: =head2
15663 #: ../fish/guestfish.pod:130
15664 msgid "Start with a prepared disk"
15665 msgstr ""
15666
15667 #. type: textblock
15668 #: ../fish/guestfish.pod:132
15669 msgid ""
15670 "An alternate way to create a 100MB disk called C<test1.img> containing a "
15671 "single ext2-formatted partition:"
15672 msgstr ""
15673
15674 #. type: verbatim
15675 #: ../fish/guestfish.pod:135
15676 #, no-wrap
15677 msgid ""
15678 " guestfish -N fs\n"
15679 "\n"
15680 msgstr ""
15681
15682 #. type: textblock
15683 #: ../fish/guestfish.pod:137
15684 msgid "To list what is available do:"
15685 msgstr ""
15686
15687 #. type: verbatim
15688 #: ../fish/guestfish.pod:139 ../fish/guestfish.pod:998
15689 #, no-wrap
15690 msgid ""
15691 " guestfish -N help | less\n"
15692 "\n"
15693 msgstr ""
15694
15695 #. type: =head2
15696 #: ../fish/guestfish.pod:141
15697 msgid "Remote control"
15698 msgstr ""
15699
15700 #. type: verbatim
15701 #: ../fish/guestfish.pod:143
15702 #, no-wrap
15703 msgid ""
15704 " eval \"`guestfish --listen`\"\n"
15705 " guestfish --remote add-ro disk.img\n"
15706 " guestfish --remote run\n"
15707 " guestfish --remote lvs\n"
15708 "\n"
15709 msgstr ""
15710
15711 #. type: textblock
15712 #: ../fish/guestfish.pod:154
15713 msgid "Displays general help on options."
15714 msgstr ""
15715
15716 #. type: =item
15717 #: ../fish/guestfish.pod:158
15718 msgid "B<--cmd-help>"
15719 msgstr ""
15720
15721 #. type: textblock
15722 #: ../fish/guestfish.pod:160
15723 msgid "Lists all available guestfish commands."
15724 msgstr ""
15725
15726 #. type: =item
15727 #: ../fish/guestfish.pod:162
15728 msgid "B<-h cmd>"
15729 msgstr ""
15730
15731 #. type: =item
15732 #: ../fish/guestfish.pod:164
15733 msgid "B<--cmd-help cmd>"
15734 msgstr ""
15735
15736 #. type: textblock
15737 #: ../fish/guestfish.pod:166
15738 msgid "Displays detailed help on a single command C<cmd>."
15739 msgstr ""
15740
15741 #. type: =item
15742 #: ../fish/guestfish.pod:168 ../fuse/guestmount.pod:87
15743 msgid "B<-a image>"
15744 msgstr ""
15745
15746 #. type: =item
15747 #: ../fish/guestfish.pod:170 ../fuse/guestmount.pod:89
15748 msgid "B<--add image>"
15749 msgstr ""
15750
15751 #. type: textblock
15752 #: ../fish/guestfish.pod:172
15753 msgid "Add a block device or virtual machine image to the shell."
15754 msgstr ""
15755
15756 #. type: textblock
15757 #: ../fish/guestfish.pod:177
15758 msgid ""
15759 "Using this flag is mostly equivalent to using the C<add> command, with "
15760 "C<readonly:true> if the I<--ro> flag was given, and with C<format:...> if "
15761 "the I<--format=...> flag was given."
15762 msgstr ""
15763
15764 #. type: textblock
15765 #: ../fish/guestfish.pod:185 ../fuse/guestmount.pod:100
15766 msgid ""
15767 "When used in conjunction with the I<-d> option, this specifies the libvirt "
15768 "URI to use.  The default is to use the default libvirt connection."
15769 msgstr ""
15770
15771 #. type: =item
15772 #: ../fish/guestfish.pod:189
15773 msgid "B<--csh>"
15774 msgstr ""
15775
15776 #. type: textblock
15777 #: ../fish/guestfish.pod:191
15778 msgid ""
15779 "If using the I<--listen> option and a csh-like shell, use this option.  See "
15780 "section L</REMOTE CONTROL AND CSH> below."
15781 msgstr ""
15782
15783 #. type: =item
15784 #: ../fish/guestfish.pod:194 ../fuse/guestmount.pod:104
15785 msgid "B<-d libvirt-domain>"
15786 msgstr ""
15787
15788 #. type: =item
15789 #: ../fish/guestfish.pod:196 ../fuse/guestmount.pod:106
15790 msgid "B<--domain libvirt-domain>"
15791 msgstr ""
15792
15793 #. type: textblock
15794 #: ../fish/guestfish.pod:198 ../fuse/guestmount.pod:108
15795 msgid ""
15796 "Add disks from the named libvirt domain.  If the I<--ro> option is also "
15797 "used, then any libvirt domain can be used.  However in write mode, only "
15798 "libvirt domains which are shut down can be named here."
15799 msgstr ""
15800
15801 #. type: textblock
15802 #: ../fish/guestfish.pod:202 ../fuse/guestmount.pod:112
15803 msgid "Domain UUIDs can be used instead of names."
15804 msgstr ""
15805
15806 #. type: textblock
15807 #: ../fish/guestfish.pod:204
15808 msgid ""
15809 "Using this flag is mostly equivalent to using the C<add-domain> command, "
15810 "with C<readonly:true> if the I<--ro> flag was given, and with C<format:...> "
15811 "if the I<--format:...> flag was given."
15812 msgstr ""
15813
15814 #. type: =item
15815 #: ../fish/guestfish.pod:208
15816 msgid "B<-D>"
15817 msgstr ""
15818
15819 #. type: =item
15820 #: ../fish/guestfish.pod:210
15821 msgid "B<--no-dest-paths>"
15822 msgstr ""
15823
15824 #. type: textblock
15825 #: ../fish/guestfish.pod:212
15826 msgid ""
15827 "Don't tab-complete paths on the guest filesystem.  It is useful to be able "
15828 "to hit the tab key to complete paths on the guest filesystem, but this "
15829 "causes extra \"hidden\" guestfs calls to be made, so this option is here to "
15830 "allow this feature to be disabled."
15831 msgstr ""
15832
15833 #. type: textblock
15834 #: ../fish/guestfish.pod:219 ../fuse/guestmount.pod:128
15835 msgid ""
15836 "When prompting for keys and passphrases, guestfish normally turns echoing "
15837 "off so you cannot see what you are typing.  If you are not worried about "
15838 "Tempest attacks and there is no one else in the room you can specify this "
15839 "flag to see what you are typing."
15840 msgstr ""
15841
15842 #. type: =item
15843 #: ../fish/guestfish.pod:224
15844 msgid "B<-f file>"
15845 msgstr ""
15846
15847 #. type: =item
15848 #: ../fish/guestfish.pod:226
15849 msgid "B<--file file>"
15850 msgstr ""
15851
15852 #. type: textblock
15853 #: ../fish/guestfish.pod:228
15854 msgid "Read commands from C<file>.  To write pure guestfish scripts, use:"
15855 msgstr ""
15856
15857 #. type: verbatim
15858 #: ../fish/guestfish.pod:231
15859 #, no-wrap
15860 msgid ""
15861 " #!/usr/bin/guestfish -f\n"
15862 "\n"
15863 msgstr ""
15864
15865 #. type: verbatim
15866 #: ../fish/guestfish.pod:244
15867 #, no-wrap
15868 msgid ""
15869 " guestfish --format=raw -a disk.img\n"
15870 "\n"
15871 msgstr ""
15872
15873 #. type: verbatim
15874 #: ../fish/guestfish.pod:248
15875 #, no-wrap
15876 msgid ""
15877 " guestfish --format=raw -a disk.img --format -a another.img\n"
15878 "\n"
15879 msgstr ""
15880
15881 #. type: textblock
15882 #: ../fish/guestfish.pod:253
15883 msgid ""
15884 "If you have untrusted raw-format guest disk images, you should use this "
15885 "option to specify the disk format.  This avoids a possible security problem "
15886 "with malicious guests (CVE-2010-3851).  See also L</add-drive-opts>."
15887 msgstr ""
15888
15889 #. type: =item
15890 #: ../fish/guestfish.pod:260 ../fuse/guestmount.pod:157
15891 msgid "B<--inspector>"
15892 msgstr ""
15893
15894 #. type: textblock
15895 #: ../fish/guestfish.pod:262 ../fuse/guestmount.pod:159
15896 msgid ""
15897 "Using L<virt-inspector(1)> code, inspect the disks looking for an operating "
15898 "system and mount filesystems as they would be mounted on the real virtual "
15899 "machine."
15900 msgstr ""
15901
15902 #. type: textblock
15903 #: ../fish/guestfish.pod:266
15904 msgid "Typical usage is either:"
15905 msgstr ""
15906
15907 #. type: verbatim
15908 #: ../fish/guestfish.pod:268
15909 #, no-wrap
15910 msgid ""
15911 " guestfish -d myguest -i\n"
15912 "\n"
15913 msgstr ""
15914
15915 #. type: textblock
15916 #: ../fish/guestfish.pod:270
15917 msgid "(for an inactive libvirt domain called I<myguest>), or:"
15918 msgstr ""
15919
15920 #. type: verbatim
15921 #: ../fish/guestfish.pod:272
15922 #, no-wrap
15923 msgid ""
15924 " guestfish --ro -d myguest -i\n"
15925 "\n"
15926 msgstr ""
15927
15928 #. type: textblock
15929 #: ../fish/guestfish.pod:274
15930 msgid "(for active domains, readonly), or specify the block device directly:"
15931 msgstr ""
15932
15933 #. type: verbatim
15934 #: ../fish/guestfish.pod:276
15935 #, no-wrap
15936 msgid ""
15937 " guestfish --rw -a /dev/Guests/MyGuest -i\n"
15938 "\n"
15939 msgstr ""
15940
15941 #. type: textblock
15942 #: ../fish/guestfish.pod:278
15943 msgid ""
15944 "Note that the command line syntax changed slightly over older versions of "
15945 "guestfish.  You can still use the old syntax:"
15946 msgstr ""
15947
15948 #. type: verbatim
15949 #: ../fish/guestfish.pod:281
15950 #, no-wrap
15951 msgid ""
15952 " guestfish [--ro] -i disk.img\n"
15953 "\n"
15954 msgstr ""
15955
15956 #. type: verbatim
15957 #: ../fish/guestfish.pod:283
15958 #, no-wrap
15959 msgid ""
15960 " guestfish [--ro] -i libvirt-domain\n"
15961 "\n"
15962 msgstr ""
15963
15964 #. type: textblock
15965 #: ../fish/guestfish.pod:285
15966 msgid ""
15967 "Using this flag is mostly equivalent to using the C<inspect-os> command and "
15968 "then using other commands to mount the filesystems that were found."
15969 msgstr ""
15970
15971 #. type: =item
15972 #: ../fish/guestfish.pod:294
15973 msgid "B<--listen>"
15974 msgstr ""
15975
15976 #. type: textblock
15977 #: ../fish/guestfish.pod:296
15978 msgid ""
15979 "Fork into the background and listen for remote commands.  See section "
15980 "L</REMOTE CONTROL GUESTFISH OVER A SOCKET> below."
15981 msgstr ""
15982
15983 #. type: =item
15984 #: ../fish/guestfish.pod:299 ../fuse/guestmount.pod:168
15985 msgid "B<--live>"
15986 msgstr ""
15987
15988 #. type: textblock
15989 #: ../fish/guestfish.pod:301 ../fuse/guestmount.pod:170
15990 msgid ""
15991 "Connect to a live virtual machine.  (Experimental, see "
15992 "L<guestfs(3)/ATTACHING TO RUNNING DAEMONS>)."
15993 msgstr ""
15994
15995 #. type: =item
15996 #: ../fish/guestfish.pod:304 ../fuse/guestmount.pod:173
15997 msgid "B<-m dev[:mountpoint[:options]]>"
15998 msgstr ""
15999
16000 #. type: =item
16001 #: ../fish/guestfish.pod:306 ../fuse/guestmount.pod:175
16002 msgid "B<--mount dev[:mountpoint[:options]]>"
16003 msgstr ""
16004
16005 #. type: textblock
16006 #: ../fish/guestfish.pod:308
16007 msgid "Mount the named partition or logical volume on the given mountpoint."
16008 msgstr ""
16009
16010 #. type: textblock
16011 #: ../fish/guestfish.pod:310
16012 msgid "If the mountpoint is omitted, it defaults to C</>."
16013 msgstr ""
16014
16015 #. type: textblock
16016 #: ../fish/guestfish.pod:312
16017 msgid "You have to mount something on C</> before most commands will work."
16018 msgstr ""
16019
16020 #. type: textblock
16021 #: ../fish/guestfish.pod:314
16022 msgid ""
16023 "If any I<-m> or I<--mount> options are given, the guest is automatically "
16024 "launched."
16025 msgstr ""
16026
16027 #. type: textblock
16028 #: ../fish/guestfish.pod:317
16029 msgid ""
16030 "If you don't know what filesystems a disk image contains, you can either run "
16031 "guestfish without this option, then list the partitions, filesystems and LVs "
16032 "available (see L</list-partitions>, L</list-filesystems> and L</lvs> "
16033 "commands), or you can use the L<virt-filesystems(1)> program."
16034 msgstr ""
16035
16036 #. type: textblock
16037 #: ../fish/guestfish.pod:323 ../fuse/guestmount.pod:183
16038 msgid ""
16039 "The third (and rarely used) part of the mount parameter is the list of mount "
16040 "options used to mount the underlying filesystem.  If this is not given, then "
16041 "the mount options are either the empty string or C<ro> (the latter if the "
16042 "I<--ro> flag is used).  By specifying the mount options, you override this "
16043 "default choice.  Probably the only time you would use this is to enable ACLs "
16044 "and/or extended attributes if the filesystem can support them:"
16045 msgstr ""
16046
16047 #. type: verbatim
16048 #: ../fish/guestfish.pod:331 ../fuse/guestmount.pod:191
16049 #, no-wrap
16050 msgid ""
16051 " -m /dev/sda1:/:acl,user_xattr\n"
16052 "\n"
16053 msgstr ""
16054
16055 #. type: textblock
16056 #: ../fish/guestfish.pod:333
16057 msgid "Using this flag is equivalent to using the C<mount-options> command."
16058 msgstr ""
16059
16060 #. type: =item
16061 #: ../fish/guestfish.pod:335 ../fuse/guestmount.pod:193 ../resize/virt-resize.pod:352
16062 msgid "B<-n>"
16063 msgstr ""
16064
16065 #. type: =item
16066 #: ../fish/guestfish.pod:337 ../fuse/guestmount.pod:195
16067 msgid "B<--no-sync>"
16068 msgstr ""
16069
16070 #. type: textblock
16071 #: ../fish/guestfish.pod:339
16072 msgid ""
16073 "Disable autosync.  This is enabled by default.  See the discussion of "
16074 "autosync in the L<guestfs(3)> manpage."
16075 msgstr ""
16076
16077 #. type: =item
16078 #: ../fish/guestfish.pod:342
16079 msgid "B<-N type>"
16080 msgstr ""
16081
16082 #. type: =item
16083 #: ../fish/guestfish.pod:344
16084 msgid "B<--new type>"
16085 msgstr ""
16086
16087 #. type: =item
16088 #: ../fish/guestfish.pod:346
16089 msgid "B<-N help>"
16090 msgstr ""
16091
16092 #. type: textblock
16093 #: ../fish/guestfish.pod:348
16094 msgid ""
16095 "Prepare a fresh disk image formatted as \"type\".  This is an alternative to "
16096 "the I<-a> option: whereas I<-a> adds an existing disk, I<-N> creates a "
16097 "preformatted disk with a filesystem and adds it.  See L</PREPARED DISK "
16098 "IMAGES> below."
16099 msgstr ""
16100
16101 #. type: =item
16102 #: ../fish/guestfish.pod:353
16103 msgid "B<--progress-bars>"
16104 msgstr ""
16105
16106 #. type: textblock
16107 #: ../fish/guestfish.pod:355
16108 msgid "Enable progress bars, even when guestfish is used non-interactively."
16109 msgstr ""
16110
16111 #. type: textblock
16112 #: ../fish/guestfish.pod:357
16113 msgid ""
16114 "Progress bars are enabled by default when guestfish is used as an "
16115 "interactive shell."
16116 msgstr ""
16117
16118 #. type: =item
16119 #: ../fish/guestfish.pod:360
16120 msgid "B<--no-progress-bars>"
16121 msgstr ""
16122
16123 #. type: textblock
16124 #: ../fish/guestfish.pod:362
16125 msgid "Disable progress bars."
16126 msgstr ""
16127
16128 #. type: =item
16129 #: ../fish/guestfish.pod:364
16130 msgid "B<--remote[=pid]>"
16131 msgstr ""
16132
16133 #. type: textblock
16134 #: ../fish/guestfish.pod:366
16135 msgid ""
16136 "Send remote commands to C<$GUESTFISH_PID> or C<pid>.  See section L</REMOTE "
16137 "CONTROL GUESTFISH OVER A SOCKET> below."
16138 msgstr ""
16139
16140 #. type: =item
16141 #: ../fish/guestfish.pod:369 ../fuse/guestmount.pod:239 ../rescue/virt-rescue.pod:161
16142 msgid "B<-r>"
16143 msgstr ""
16144
16145 #. type: =item
16146 #: ../fish/guestfish.pod:371 ../fuse/guestmount.pod:241 ../rescue/virt-rescue.pod:163
16147 msgid "B<--ro>"
16148 msgstr ""
16149
16150 #. type: textblock
16151 #: ../fish/guestfish.pod:373
16152 msgid ""
16153 "This changes the I<-a>, I<-d> and I<-m> options so that disks are added and "
16154 "mounts are done read-only."
16155 msgstr ""
16156
16157 #. type: textblock
16158 #: ../fish/guestfish.pod:376 ../rescue/virt-rescue.pod:167
16159 msgid ""
16160 "The option must always be used if the disk image or virtual machine might be "
16161 "running, and is generally recommended in cases where you don't need write "
16162 "access to the disk."
16163 msgstr ""
16164
16165 #. type: textblock
16166 #: ../fish/guestfish.pod:380
16167 msgid ""
16168 "Note that prepared disk images created with I<-N> are not affected by this "
16169 "option.  Also commands like C<add> are not affected - you have to specify "
16170 "the C<readonly:true> option explicitly if you need it."
16171 msgstr ""
16172
16173 #. type: textblock
16174 #: ../fish/guestfish.pod:384
16175 msgid "See also L</OPENING DISKS FOR READ AND WRITE> below."
16176 msgstr ""
16177
16178 #. type: =item
16179 #: ../fish/guestfish.pod:386 ../fuse/guestmount.pod:253 ../rescue/virt-rescue.pod:173
16180 msgid "B<--selinux>"
16181 msgstr ""
16182
16183 #. type: textblock
16184 #: ../fish/guestfish.pod:388
16185 msgid "Enable SELinux support for the guest.  See L<guestfs(3)/SELINUX>."
16186 msgstr ""
16187
16188 #. type: textblock
16189 #: ../fish/guestfish.pod:394
16190 msgid ""
16191 "Enable very verbose messages.  This is particularly useful if you find a "
16192 "bug."
16193 msgstr ""
16194
16195 #. type: textblock
16196 #: ../fish/guestfish.pod:401
16197 msgid "Display the guestfish / libguestfs version number and exit."
16198 msgstr ""
16199
16200 #. type: =item
16201 #: ../fish/guestfish.pod:403 ../fuse/guestmount.pod:269 ../rescue/virt-rescue.pod:190
16202 msgid "B<-w>"
16203 msgstr ""
16204
16205 #. type: =item
16206 #: ../fish/guestfish.pod:405 ../fuse/guestmount.pod:271 ../rescue/virt-rescue.pod:192
16207 msgid "B<--rw>"
16208 msgstr ""
16209
16210 #. type: textblock
16211 #: ../fish/guestfish.pod:407 ../fuse/guestmount.pod:273
16212 msgid ""
16213 "This changes the I<-a>, I<-d> and I<-m> options so that disks are added and "
16214 "mounts are done read-write."
16215 msgstr ""
16216
16217 #. type: textblock
16218 #: ../fish/guestfish.pod:410
16219 msgid "See L</OPENING DISKS FOR READ AND WRITE> below."
16220 msgstr ""
16221
16222 #. type: textblock
16223 #: ../fish/guestfish.pod:414
16224 msgid "Echo each command before executing it."
16225 msgstr ""
16226
16227 #. type: =head1
16228 #: ../fish/guestfish.pod:418
16229 msgid "COMMANDS ON COMMAND LINE"
16230 msgstr ""
16231
16232 #. type: textblock
16233 #: ../fish/guestfish.pod:420
16234 msgid "Any additional (non-option) arguments are treated as commands to execute."
16235 msgstr ""
16236
16237 #. type: textblock
16238 #: ../fish/guestfish.pod:423
16239 msgid ""
16240 "Commands to execute should be separated by a colon (C<:>), where the colon "
16241 "is a separate parameter.  Thus:"
16242 msgstr ""
16243
16244 #. type: verbatim
16245 #: ../fish/guestfish.pod:426
16246 #, no-wrap
16247 msgid ""
16248 " guestfish cmd [args...] : cmd [args...] : cmd [args...] ...\n"
16249 "\n"
16250 msgstr ""
16251
16252 #. type: textblock
16253 #: ../fish/guestfish.pod:428
16254 msgid ""
16255 "If there are no additional arguments, then we enter a shell, either an "
16256 "interactive shell with a prompt (if the input is a terminal) or a "
16257 "non-interactive shell."
16258 msgstr ""
16259
16260 #. type: textblock
16261 #: ../fish/guestfish.pod:432
16262 msgid ""
16263 "In either command line mode or non-interactive shell, the first command that "
16264 "gives an error causes the whole shell to exit.  In interactive mode (with a "
16265 "prompt) if a command fails, you can continue to enter commands."
16266 msgstr ""
16267
16268 #. type: =head1
16269 #: ../fish/guestfish.pod:437
16270 msgid "USING launch (OR run)"
16271 msgstr ""
16272
16273 #. type: textblock
16274 #: ../fish/guestfish.pod:439
16275 msgid ""
16276 "As with L<guestfs(3)>, you must first configure your guest by adding disks, "
16277 "then launch it, then mount any disks you need, and finally issue "
16278 "actions/commands.  So the general order of the day is:"
16279 msgstr ""
16280
16281 #. type: textblock
16282 #: ../fish/guestfish.pod:447
16283 msgid "add or -a/--add"
16284 msgstr ""
16285
16286 #. type: textblock
16287 #: ../fish/guestfish.pod:451
16288 msgid "launch (aka run)"
16289 msgstr ""
16290
16291 #. type: textblock
16292 #: ../fish/guestfish.pod:455
16293 msgid "mount or -m/--mount"
16294 msgstr ""
16295
16296 #. type: textblock
16297 #: ../fish/guestfish.pod:459
16298 msgid "any other commands"
16299 msgstr ""
16300
16301 #. type: textblock
16302 #: ../fish/guestfish.pod:463
16303 msgid ""
16304 "C<run> is a synonym for C<launch>.  You must C<launch> (or C<run>)  your "
16305 "guest before mounting or performing any other commands."
16306 msgstr ""
16307
16308 #. type: textblock
16309 #: ../fish/guestfish.pod:466
16310 msgid ""
16311 "The only exception is that if any of the I<-i>, I<-m>, I<--mount>, I<-N> or "
16312 "I<--new> options were given then C<run> is done automatically, simply "
16313 "because guestfish can't perform the action you asked for without doing this."
16314 msgstr ""
16315
16316 #. type: =head1
16317 #: ../fish/guestfish.pod:471
16318 msgid "OPENING DISKS FOR READ AND WRITE"
16319 msgstr ""
16320
16321 #. type: textblock
16322 #: ../fish/guestfish.pod:473
16323 msgid ""
16324 "The guestfish, L<guestmount(1)> and L<virt-rescue(1)> options I<--ro> and "
16325 "I<--rw> affect whether the other command line options I<-a>, I<-c>, I<-d>, "
16326 "I<-i> and I<-m> open disk images read-only or for writing."
16327 msgstr ""
16328
16329 #. type: textblock
16330 #: ../fish/guestfish.pod:478
16331 msgid ""
16332 "In libguestfs E<le> 1.10, guestfish, guestmount and virt-rescue defaulted to "
16333 "opening disk images supplied on the command line for write.  To open a disk "
16334 "image read-only you have to do I<-a image --ro>."
16335 msgstr ""
16336
16337 #. type: textblock
16338 #: ../fish/guestfish.pod:482
16339 msgid ""
16340 "This matters: If you accidentally open a live VM disk image writable then "
16341 "you will cause irreversible disk corruption."
16342 msgstr ""
16343
16344 #. type: textblock
16345 #: ../fish/guestfish.pod:485
16346 msgid ""
16347 "In a future libguestfs we intend to change the default the other way.  Disk "
16348 "images will be opened read-only.  You will have to either specify "
16349 "I<guestfish --rw>, I<guestmount --rw>, I<virt-rescue --rw>, or change the "
16350 "configuration file C</etc/libguestfs-tools.conf> in order to get write "
16351 "access for disk images specified by those other command line options."
16352 msgstr ""
16353
16354 #. type: textblock
16355 #: ../fish/guestfish.pod:492
16356 msgid ""
16357 "This version of guestfish, guestmount and virt-rescue has a I<--rw> option "
16358 "which does nothing (it is already the default).  However it is highly "
16359 "recommended that you use this option to indicate that you need write access, "
16360 "and prepare your scripts for the day when this option will be required for "
16361 "write access."
16362 msgstr ""
16363
16364 #. type: textblock
16365 #: ../fish/guestfish.pod:498
16366 msgid ""
16367 "B<Note:> This does I<not> affect commands like L</add> and L</mount>, or any "
16368 "other libguestfs program apart from guestfish and guestmount."
16369 msgstr ""
16370
16371 #. type: =head1
16372 #: ../fish/guestfish.pod:501
16373 msgid "QUOTING"
16374 msgstr ""
16375
16376 #. type: textblock
16377 #: ../fish/guestfish.pod:503
16378 msgid ""
16379 "You can quote ordinary parameters using either single or double quotes.  For "
16380 "example:"
16381 msgstr ""
16382
16383 #. type: verbatim
16384 #: ../fish/guestfish.pod:506
16385 #, no-wrap
16386 msgid ""
16387 " add \"file with a space.img\"\n"
16388 "\n"
16389 msgstr ""
16390
16391 #. type: verbatim
16392 #: ../fish/guestfish.pod:508
16393 #, no-wrap
16394 msgid ""
16395 " rm '/file name'\n"
16396 "\n"
16397 msgstr ""
16398
16399 #. type: verbatim
16400 #: ../fish/guestfish.pod:510
16401 #, no-wrap
16402 msgid ""
16403 " rm '/\"'\n"
16404 "\n"
16405 msgstr ""
16406
16407 #. type: textblock
16408 #: ../fish/guestfish.pod:512
16409 msgid ""
16410 "A few commands require a list of strings to be passed.  For these, use a "
16411 "whitespace-separated list, enclosed in quotes.  Strings containing "
16412 "whitespace to be passed through must be enclosed in single quotes.  A "
16413 "literal single quote must be escaped with a backslash."
16414 msgstr ""
16415
16416 #. type: verbatim
16417 #: ../fish/guestfish.pod:517
16418 #, no-wrap
16419 msgid ""
16420 " vgcreate VG \"/dev/sda1 /dev/sdb1\"\n"
16421 " command \"/bin/echo 'foo      bar'\"\n"
16422 " command \"/bin/echo \\'foo\\'\"\n"
16423 "\n"
16424 msgstr ""
16425
16426 #. type: =head2
16427 #: ../fish/guestfish.pod:521
16428 msgid "ESCAPE SEQUENCES IN DOUBLE QUOTED ARGUMENTS"
16429 msgstr ""
16430
16431 #. type: textblock
16432 #: ../fish/guestfish.pod:523
16433 msgid ""
16434 "In double-quoted arguments (only) use backslash to insert special "
16435 "characters:"
16436 msgstr ""
16437
16438 #. type: =item
16439 #: ../fish/guestfish.pod:528
16440 msgid "C<\\a>"
16441 msgstr ""
16442
16443 #. type: textblock
16444 #: ../fish/guestfish.pod:530
16445 msgid "Alert (bell) character."
16446 msgstr ""
16447
16448 #. type: =item
16449 #: ../fish/guestfish.pod:532
16450 msgid "C<\\b>"
16451 msgstr ""
16452
16453 #. type: textblock
16454 #: ../fish/guestfish.pod:534
16455 msgid "Backspace character."
16456 msgstr ""
16457
16458 #. type: =item
16459 #: ../fish/guestfish.pod:536
16460 msgid "C<\\f>"
16461 msgstr ""
16462
16463 #. type: textblock
16464 #: ../fish/guestfish.pod:538
16465 msgid "Form feed character."
16466 msgstr ""
16467
16468 #. type: =item
16469 #: ../fish/guestfish.pod:540
16470 msgid "C<\\n>"
16471 msgstr ""
16472
16473 #. type: textblock
16474 #: ../fish/guestfish.pod:542
16475 msgid "Newline character."
16476 msgstr ""
16477
16478 #. type: =item
16479 #: ../fish/guestfish.pod:544
16480 msgid "C<\\r>"
16481 msgstr ""
16482
16483 #. type: textblock
16484 #: ../fish/guestfish.pod:546
16485 msgid "Carriage return character."
16486 msgstr ""
16487
16488 #. type: =item
16489 #: ../fish/guestfish.pod:548
16490 msgid "C<\\t>"
16491 msgstr ""
16492
16493 #. type: textblock
16494 #: ../fish/guestfish.pod:550
16495 msgid "Horizontal tab character."
16496 msgstr ""
16497
16498 #. type: =item
16499 #: ../fish/guestfish.pod:552
16500 msgid "C<\\v>"
16501 msgstr ""
16502
16503 #. type: textblock
16504 #: ../fish/guestfish.pod:554
16505 msgid "Vertical tab character."
16506 msgstr ""
16507
16508 #. type: =item
16509 #: ../fish/guestfish.pod:556
16510 msgid "C<\\\">"
16511 msgstr ""
16512
16513 #. type: textblock
16514 #: ../fish/guestfish.pod:558
16515 msgid "A literal double quote character."
16516 msgstr ""
16517
16518 #. type: =item
16519 #: ../fish/guestfish.pod:560
16520 msgid "C<\\ooo>"
16521 msgstr ""
16522
16523 #. type: textblock
16524 #: ../fish/guestfish.pod:562
16525 msgid ""
16526 "A character with octal value I<ooo>.  There must be precisely 3 octal digits "
16527 "(unlike C)."
16528 msgstr ""
16529
16530 #. type: =item
16531 #: ../fish/guestfish.pod:565
16532 msgid "C<\\xhh>"
16533 msgstr ""
16534
16535 #. type: textblock
16536 #: ../fish/guestfish.pod:567
16537 msgid "A character with hex value I<hh>.  There must be precisely 2 hex digits."
16538 msgstr ""
16539
16540 #. type: textblock
16541 #: ../fish/guestfish.pod:570
16542 msgid ""
16543 "In the current implementation C<\\000> and C<\\x00> cannot be used in "
16544 "strings."
16545 msgstr ""
16546
16547 #. type: =item
16548 #: ../fish/guestfish.pod:573
16549 msgid "C<\\\\>"
16550 msgstr ""
16551
16552 #. type: textblock
16553 #: ../fish/guestfish.pod:575
16554 msgid "A literal backslash character."
16555 msgstr ""
16556
16557 #. type: =head1
16558 #: ../fish/guestfish.pod:579
16559 msgid "OPTIONAL ARGUMENTS"
16560 msgstr ""
16561
16562 #. type: textblock
16563 #: ../fish/guestfish.pod:581
16564 msgid ""
16565 "Some commands take optional arguments.  These arguments appear in this "
16566 "documentation as C<[argname:..]>.  You can use them as in these examples:"
16567 msgstr ""
16568
16569 #. type: verbatim
16570 #: ../fish/guestfish.pod:585
16571 #, no-wrap
16572 msgid ""
16573 " add-drive-opts filename\n"
16574 "\n"
16575 msgstr ""
16576
16577 #. type: verbatim
16578 #: ../fish/guestfish.pod:587
16579 #, no-wrap
16580 msgid ""
16581 " add-drive-opts filename readonly:true\n"
16582 "\n"
16583 msgstr ""
16584
16585 #. type: verbatim
16586 #: ../fish/guestfish.pod:589
16587 #, no-wrap
16588 msgid ""
16589 " add-drive-opts filename format:qcow2 readonly:false\n"
16590 "\n"
16591 msgstr ""
16592
16593 #. type: textblock
16594 #: ../fish/guestfish.pod:591
16595 msgid ""
16596 "Each optional argument can appear at most once.  All optional arguments must "
16597 "appear after the required ones."
16598 msgstr ""
16599
16600 #. type: =head1
16601 #: ../fish/guestfish.pod:594
16602 msgid "NUMBERS"
16603 msgstr ""
16604
16605 #. type: textblock
16606 #: ../fish/guestfish.pod:596
16607 msgid "This section applies to all commands which can take integers as parameters."
16608 msgstr ""
16609
16610 #. type: =head2
16611 #: ../fish/guestfish.pod:599
16612 msgid "SIZE SUFFIX"
16613 msgstr ""
16614
16615 #. type: textblock
16616 #: ../fish/guestfish.pod:601
16617 msgid ""
16618 "When the command takes a parameter measured in bytes, you can use one of the "
16619 "following suffixes to specify kilobytes, megabytes and larger sizes:"
16620 msgstr ""
16621
16622 #. type: =item
16623 #: ../fish/guestfish.pod:607
16624 msgid "B<k> or B<K> or B<KiB>"
16625 msgstr ""
16626
16627 #. type: textblock
16628 #: ../fish/guestfish.pod:609
16629 msgid "The size in kilobytes (multiplied by 1024)."
16630 msgstr ""
16631
16632 #. type: =item
16633 #: ../fish/guestfish.pod:611
16634 msgid "B<KB>"
16635 msgstr ""
16636
16637 #. type: textblock
16638 #: ../fish/guestfish.pod:613
16639 msgid "The size in SI 1000 byte units."
16640 msgstr ""
16641
16642 #. type: =item
16643 #: ../fish/guestfish.pod:615
16644 msgid "B<M> or B<MiB>"
16645 msgstr ""
16646
16647 #. type: textblock
16648 #: ../fish/guestfish.pod:617
16649 msgid "The size in megabytes (multiplied by 1048576)."
16650 msgstr ""
16651
16652 #. type: =item
16653 #: ../fish/guestfish.pod:619
16654 msgid "B<MB>"
16655 msgstr ""
16656
16657 #. type: textblock
16658 #: ../fish/guestfish.pod:621
16659 msgid "The size in SI 1000000 byte units."
16660 msgstr ""
16661
16662 #. type: =item
16663 #: ../fish/guestfish.pod:623
16664 msgid "B<G> or B<GiB>"
16665 msgstr ""
16666
16667 #. type: textblock
16668 #: ../fish/guestfish.pod:625
16669 msgid "The size in gigabytes (multiplied by 2**30)."
16670 msgstr ""
16671
16672 #. type: =item
16673 #: ../fish/guestfish.pod:627
16674 msgid "B<GB>"
16675 msgstr ""
16676
16677 #. type: textblock
16678 #: ../fish/guestfish.pod:629
16679 msgid "The size in SI 10**9 byte units."
16680 msgstr ""
16681
16682 #. type: =item
16683 #: ../fish/guestfish.pod:631
16684 msgid "B<T> or B<TiB>"
16685 msgstr ""
16686
16687 #. type: textblock
16688 #: ../fish/guestfish.pod:633
16689 msgid "The size in terabytes (multiplied by 2**40)."
16690 msgstr ""
16691
16692 #. type: =item
16693 #: ../fish/guestfish.pod:635
16694 msgid "B<TB>"
16695 msgstr ""
16696
16697 #. type: textblock
16698 #: ../fish/guestfish.pod:637
16699 msgid "The size in SI 10**12 byte units."
16700 msgstr ""
16701
16702 #. type: =item
16703 #: ../fish/guestfish.pod:639
16704 msgid "B<P> or B<PiB>"
16705 msgstr ""
16706
16707 #. type: textblock
16708 #: ../fish/guestfish.pod:641
16709 msgid "The size in petabytes (multiplied by 2**50)."
16710 msgstr ""
16711
16712 #. type: =item
16713 #: ../fish/guestfish.pod:643
16714 msgid "B<PB>"
16715 msgstr ""
16716
16717 #. type: textblock
16718 #: ../fish/guestfish.pod:645
16719 msgid "The size in SI 10**15 byte units."
16720 msgstr ""
16721
16722 #. type: =item
16723 #: ../fish/guestfish.pod:647
16724 msgid "B<E> or B<EiB>"
16725 msgstr ""
16726
16727 #. type: textblock
16728 #: ../fish/guestfish.pod:649
16729 msgid "The size in exabytes (multiplied by 2**60)."
16730 msgstr ""
16731
16732 #. type: =item
16733 #: ../fish/guestfish.pod:651
16734 msgid "B<EB>"
16735 msgstr ""
16736
16737 #. type: textblock
16738 #: ../fish/guestfish.pod:653
16739 msgid "The size in SI 10**18 byte units."
16740 msgstr ""
16741
16742 #. type: =item
16743 #: ../fish/guestfish.pod:655
16744 msgid "B<Z> or B<ZiB>"
16745 msgstr ""
16746
16747 #. type: textblock
16748 #: ../fish/guestfish.pod:657
16749 msgid "The size in zettabytes (multiplied by 2**70)."
16750 msgstr ""
16751
16752 #. type: =item
16753 #: ../fish/guestfish.pod:659
16754 msgid "B<ZB>"
16755 msgstr ""
16756
16757 #. type: textblock
16758 #: ../fish/guestfish.pod:661
16759 msgid "The size in SI 10**21 byte units."
16760 msgstr ""
16761
16762 #. type: =item
16763 #: ../fish/guestfish.pod:663
16764 msgid "B<Y> or B<YiB>"
16765 msgstr ""
16766
16767 #. type: textblock
16768 #: ../fish/guestfish.pod:665
16769 msgid "The size in yottabytes (multiplied by 2**80)."
16770 msgstr ""
16771
16772 #. type: =item
16773 #: ../fish/guestfish.pod:667
16774 msgid "B<YB>"
16775 msgstr ""
16776
16777 #. type: textblock
16778 #: ../fish/guestfish.pod:669
16779 msgid "The size in SI 10**24 byte units."
16780 msgstr ""
16781
16782 #. type: verbatim
16783 #: ../fish/guestfish.pod:675
16784 #, no-wrap
16785 msgid ""
16786 " truncate-size /file 1G\n"
16787 "\n"
16788 msgstr ""
16789
16790 #. type: textblock
16791 #: ../fish/guestfish.pod:677
16792 msgid "would truncate the file to 1 gigabyte."
16793 msgstr ""
16794
16795 #. type: textblock
16796 #: ../fish/guestfish.pod:679
16797 msgid ""
16798 "Be careful because a few commands take sizes in kilobytes or megabytes "
16799 "(eg. the parameter to L</memsize> is specified in megabytes already).  "
16800 "Adding a suffix will probably not do what you expect."
16801 msgstr ""
16802
16803 #. type: =head2
16804 #: ../fish/guestfish.pod:683
16805 msgid "OCTAL AND HEXADECIMAL NUMBERS"
16806 msgstr ""
16807
16808 #. type: textblock
16809 #: ../fish/guestfish.pod:685
16810 msgid ""
16811 "For specifying the radix (base) use the C convention: C<0> to prefix an "
16812 "octal number or C<0x> to prefix a hexadecimal number.  For example:"
16813 msgstr ""
16814
16815 #. type: verbatim
16816 #: ../fish/guestfish.pod:688
16817 #, no-wrap
16818 msgid ""
16819 " 1234      decimal number 1234\n"
16820 " 02322     octal number, equivalent to decimal 1234\n"
16821 " 0x4d2     hexadecimal number, equivalent to decimal 1234\n"
16822 "\n"
16823 msgstr ""
16824
16825 #. type: textblock
16826 #: ../fish/guestfish.pod:692
16827 msgid ""
16828 "When using the C<chmod> command, you almost always want to specify an octal "
16829 "number for the mode, and you must prefix it with C<0> (unlike the Unix "
16830 "L<chmod(1)> program):"
16831 msgstr ""
16832
16833 #. type: verbatim
16834 #: ../fish/guestfish.pod:696
16835 #, no-wrap
16836 msgid ""
16837 " chmod 0777 /public  # OK\n"
16838 " chmod 777 /public   # WRONG! This is mode 777 decimal = 01411 octal.\n"
16839 "\n"
16840 msgstr ""
16841
16842 #. type: textblock
16843 #: ../fish/guestfish.pod:699
16844 msgid ""
16845 "Commands that return numbers usually print them in decimal, but some "
16846 "commands print numbers in other radices (eg. C<umask> prints the mode in "
16847 "octal, preceeded by C<0>)."
16848 msgstr ""
16849
16850 #. type: =head1
16851 #: ../fish/guestfish.pod:703
16852 msgid "WILDCARDS AND GLOBBING"
16853 msgstr ""
16854
16855 #. type: textblock
16856 #: ../fish/guestfish.pod:705
16857 msgid ""
16858 "Neither guestfish nor the underlying guestfs API performs wildcard expansion "
16859 "(globbing) by default.  So for example the following will not do what you "
16860 "expect:"
16861 msgstr ""
16862
16863 #. type: verbatim
16864 #: ../fish/guestfish.pod:709
16865 #, no-wrap
16866 msgid ""
16867 " rm-rf /home/*\n"
16868 "\n"
16869 msgstr ""
16870
16871 #. type: textblock
16872 #: ../fish/guestfish.pod:711
16873 msgid ""
16874 "Assuming you don't have a directory called literally C</home/*> then the "
16875 "above command will return an error."
16876 msgstr ""
16877
16878 #. type: textblock
16879 #: ../fish/guestfish.pod:714
16880 msgid "To perform wildcard expansion, use the C<glob> command."
16881 msgstr ""
16882
16883 #. type: verbatim
16884 #: ../fish/guestfish.pod:716
16885 #, no-wrap
16886 msgid ""
16887 " glob rm-rf /home/*\n"
16888 "\n"
16889 msgstr ""
16890
16891 #. type: textblock
16892 #: ../fish/guestfish.pod:718
16893 msgid ""
16894 "runs C<rm-rf> on each path that matches (ie. potentially running the command "
16895 "many times), equivalent to:"
16896 msgstr ""
16897
16898 #. type: verbatim
16899 #: ../fish/guestfish.pod:721
16900 #, no-wrap
16901 msgid ""
16902 " rm-rf /home/jim\n"
16903 " rm-rf /home/joe\n"
16904 " rm-rf /home/mary\n"
16905 "\n"
16906 msgstr ""
16907
16908 #. type: textblock
16909 #: ../fish/guestfish.pod:725
16910 msgid "C<glob> only works on simple guest paths and not on device names."
16911 msgstr ""
16912
16913 #. type: textblock
16914 #: ../fish/guestfish.pod:727
16915 msgid ""
16916 "If you have several parameters, each containing a wildcard, then glob will "
16917 "perform a Cartesian product."
16918 msgstr ""
16919
16920 #. type: =head1
16921 #: ../fish/guestfish.pod:730
16922 msgid "COMMENTS"
16923 msgstr ""
16924
16925 #. type: textblock
16926 #: ../fish/guestfish.pod:732
16927 msgid ""
16928 "Any line which starts with a I<#> character is treated as a comment and "
16929 "ignored.  The I<#> can optionally be preceeded by whitespace, but B<not> by "
16930 "a command.  For example:"
16931 msgstr ""
16932
16933 #. type: verbatim
16934 #: ../fish/guestfish.pod:736
16935 #, no-wrap
16936 msgid ""
16937 " # this is a comment\n"
16938 "         # this is a comment\n"
16939 " foo # NOT a comment\n"
16940 "\n"
16941 msgstr ""
16942
16943 #. type: textblock
16944 #: ../fish/guestfish.pod:740
16945 msgid "Blank lines are also ignored."
16946 msgstr ""
16947
16948 #. type: =head1
16949 #: ../fish/guestfish.pod:742
16950 msgid "RUNNING COMMANDS LOCALLY"
16951 msgstr ""
16952
16953 #. type: textblock
16954 #: ../fish/guestfish.pod:744
16955 msgid ""
16956 "Any line which starts with a I<!> character is treated as a command sent to "
16957 "the local shell (C</bin/sh> or whatever L<system(3)> uses).  For example:"
16958 msgstr ""
16959
16960 #. type: verbatim
16961 #: ../fish/guestfish.pod:748
16962 #, no-wrap
16963 msgid ""
16964 " !mkdir local\n"
16965 " tgz-out /remote local/remote-data.tar.gz\n"
16966 "\n"
16967 msgstr ""
16968
16969 #. type: textblock
16970 #: ../fish/guestfish.pod:751
16971 msgid ""
16972 "will create a directory C<local> on the host, and then export the contents "
16973 "of C</remote> on the mounted filesystem to C<local/remote-data.tar.gz>.  "
16974 "(See C<tgz-out>)."
16975 msgstr ""
16976
16977 #. type: textblock
16978 #: ../fish/guestfish.pod:755
16979 msgid ""
16980 "To change the local directory, use the C<lcd> command.  C<!cd> will have no "
16981 "effect, due to the way that subprocesses work in Unix."
16982 msgstr ""
16983
16984 #. type: =head2
16985 #: ../fish/guestfish.pod:758
16986 msgid "LOCAL COMMANDS WITH INLINE EXECUTION"
16987 msgstr ""
16988
16989 #. type: textblock
16990 #: ../fish/guestfish.pod:760
16991 msgid ""
16992 "If a line starts with I<E<lt>!> then the shell command is executed (as for "
16993 "I<!>), but subsequently any output (stdout) of the shell command is parsed "
16994 "and executed as guestfish commands."
16995 msgstr ""
16996
16997 #. type: textblock
16998 #: ../fish/guestfish.pod:764
16999 msgid ""
17000 "Thus you can use shell script to construct arbitrary guestfish commands "
17001 "which are then parsed by guestfish."
17002 msgstr ""
17003
17004 #. type: textblock
17005 #: ../fish/guestfish.pod:767
17006 msgid ""
17007 "For example it is tedious to create a sequence of files (eg. C</foo.1> "
17008 "through C</foo.100>) using guestfish commands alone.  However this is simple "
17009 "if we use a shell script to create the guestfish commands for us:"
17010 msgstr ""
17011
17012 #. type: verbatim
17013 #: ../fish/guestfish.pod:772
17014 #, no-wrap
17015 msgid ""
17016 " <! for n in `seq 1 100`; do echo write /foo.$n $n; done\n"
17017 "\n"
17018 msgstr ""
17019
17020 #. type: textblock
17021 #: ../fish/guestfish.pod:774
17022 msgid "or with names like C</foo.001>:"
17023 msgstr ""
17024
17025 #. type: verbatim
17026 #: ../fish/guestfish.pod:776
17027 #, no-wrap
17028 msgid ""
17029 " <! for n in `seq 1 100`; do printf \"write /foo.%03d %d\\n\" $n $n; done\n"
17030 "\n"
17031 msgstr ""
17032
17033 #. type: textblock
17034 #: ../fish/guestfish.pod:778
17035 msgid ""
17036 "When using guestfish interactively it can be helpful to just run the shell "
17037 "script first (ie. remove the initial C<E<lt>> character so it is just an "
17038 "ordinary I<!> local command), see what guestfish commands it would run, and "
17039 "when you are happy with those prepend the C<E<lt>> character to run the "
17040 "guestfish commands for real."
17041 msgstr ""
17042
17043 #. type: =head1
17044 #: ../fish/guestfish.pod:784
17045 msgid "PIPES"
17046 msgstr ""
17047
17048 #. type: textblock
17049 #: ../fish/guestfish.pod:786
17050 msgid ""
17051 "Use C<command E<lt>spaceE<gt> | command> to pipe the output of the first "
17052 "command (a guestfish command) to the second command (any host command).  For "
17053 "example:"
17054 msgstr ""
17055
17056 #. type: verbatim
17057 #: ../fish/guestfish.pod:790
17058 #, no-wrap
17059 msgid ""
17060 " cat /etc/passwd | awk -F: '$3 == 0 { print }'\n"
17061 "\n"
17062 msgstr ""
17063
17064 #. type: textblock
17065 #: ../fish/guestfish.pod:792
17066 msgid ""
17067 "(where C<cat> is the guestfish cat command, but C<awk> is the host awk "
17068 "program).  The above command would list all accounts in the guest filesystem "
17069 "which have UID 0, ie. root accounts including backdoors.  Other examples:"
17070 msgstr ""
17071
17072 #. type: verbatim
17073 #: ../fish/guestfish.pod:797
17074 #, no-wrap
17075 msgid ""
17076 " hexdump /bin/ls | head\n"
17077 " list-devices | tail -1\n"
17078 " tgz-out / - | tar ztf -\n"
17079 "\n"
17080 msgstr ""
17081
17082 #. type: textblock
17083 #: ../fish/guestfish.pod:801
17084 msgid ""
17085 "The space before the pipe symbol is required, any space after the pipe "
17086 "symbol is optional.  Everything after the pipe symbol is just passed "
17087 "straight to the host shell, so it can contain redirections, globs and "
17088 "anything else that makes sense on the host side."
17089 msgstr ""
17090
17091 #. type: textblock
17092 #: ../fish/guestfish.pod:806
17093 msgid ""
17094 "To use a literal argument which begins with a pipe symbol, you have to quote "
17095 "it, eg:"
17096 msgstr ""
17097
17098 #. type: verbatim
17099 #: ../fish/guestfish.pod:809
17100 #, no-wrap
17101 msgid ""
17102 " echo \"|\"\n"
17103 "\n"
17104 msgstr ""
17105
17106 #. type: =head1
17107 #: ../fish/guestfish.pod:811
17108 msgid "HOME DIRECTORIES"
17109 msgstr ""
17110
17111 #. type: textblock
17112 #: ../fish/guestfish.pod:813
17113 msgid ""
17114 "If a parameter starts with the character C<~> then the tilde may be expanded "
17115 "as a home directory path (either C<~> for the current user's home directory, "
17116 "or C<~user> for another user)."
17117 msgstr ""
17118
17119 #. type: textblock
17120 #: ../fish/guestfish.pod:817
17121 msgid ""
17122 "Note that home directory expansion happens for users known I<on the host>, "
17123 "not in the guest filesystem."
17124 msgstr ""
17125
17126 #. type: textblock
17127 #: ../fish/guestfish.pod:820
17128 msgid ""
17129 "To use a literal argument which begins with a tilde, you have to quote it, "
17130 "eg:"
17131 msgstr ""
17132
17133 #. type: verbatim
17134 #: ../fish/guestfish.pod:823
17135 #, no-wrap
17136 msgid ""
17137 " echo \"~\"\n"
17138 "\n"
17139 msgstr ""
17140
17141 #. type: =head2
17142 #: ../fish/guestfish.pod:825 ../src/guestfs.pod:519
17143 msgid "ENCRYPTED DISKS"
17144 msgstr ""
17145
17146 #. type: textblock
17147 #: ../fish/guestfish.pod:827
17148 msgid ""
17149 "Libguestfs has some support for Linux guests encrypted according to the "
17150 "Linux Unified Key Setup (LUKS) standard, which includes nearly all whole "
17151 "disk encryption systems used by modern Linux guests.  Currently only "
17152 "LVM-on-LUKS is supported."
17153 msgstr ""
17154
17155 #. type: textblock
17156 #: ../fish/guestfish.pod:832
17157 msgid "Identify encrypted block devices and partitions using L</vfs-type>:"
17158 msgstr ""
17159
17160 #. type: verbatim
17161 #: ../fish/guestfish.pod:834
17162 #, no-wrap
17163 msgid ""
17164 " ><fs> vfs-type /dev/sda2\n"
17165 " crypto_LUKS\n"
17166 "\n"
17167 msgstr ""
17168
17169 #. type: textblock
17170 #: ../fish/guestfish.pod:837
17171 msgid ""
17172 "Then open those devices using L</luks-open>.  This creates a device-mapper "
17173 "device called C</dev/mapper/luksdev>."
17174 msgstr ""
17175
17176 #. type: verbatim
17177 #: ../fish/guestfish.pod:840
17178 #, no-wrap
17179 msgid ""
17180 " ><fs> luks-open /dev/sda2 luksdev\n"
17181 " Enter key or passphrase (\"key\"): <enter the passphrase>\n"
17182 "\n"
17183 msgstr ""
17184
17185 #. type: textblock
17186 #: ../fish/guestfish.pod:843
17187 msgid ""
17188 "Finally you have to tell LVM to scan for volume groups on the newly created "
17189 "mapper device:"
17190 msgstr ""
17191
17192 #. type: verbatim
17193 #: ../fish/guestfish.pod:846
17194 #, no-wrap
17195 msgid ""
17196 " vgscan\n"
17197 " vg-activate-all true\n"
17198 "\n"
17199 msgstr ""
17200
17201 #. type: textblock
17202 #: ../fish/guestfish.pod:849
17203 msgid "The logical volume(s) can now be mounted in the usual way."
17204 msgstr ""
17205
17206 #. type: textblock
17207 #: ../fish/guestfish.pod:851
17208 msgid ""
17209 "Before closing a LUKS device you must unmount any logical volumes on it and "
17210 "deactivate the volume groups by calling C<vg-activate false VG> on each "
17211 "one.  Then you can close the mapper device:"
17212 msgstr ""
17213
17214 #. type: verbatim
17215 #: ../fish/guestfish.pod:855
17216 #, no-wrap
17217 msgid ""
17218 " vg-activate false /dev/VG\n"
17219 " luks-close /dev/mapper/luksdev\n"
17220 "\n"
17221 msgstr ""
17222
17223 #. type: textblock
17224 #: ../fish/guestfish.pod:860
17225 msgid ""
17226 "If a path is prefixed with C<win:> then you can use Windows-style drive "
17227 "letters and paths (with some limitations).  The following commands are "
17228 "equivalent:"
17229 msgstr ""
17230
17231 #. type: verbatim
17232 #: ../fish/guestfish.pod:864
17233 #, no-wrap
17234 msgid ""
17235 " file /WINDOWS/system32/config/system.LOG\n"
17236 "\n"
17237 msgstr ""
17238
17239 #. type: verbatim
17240 #: ../fish/guestfish.pod:866
17241 #, no-wrap
17242 msgid ""
17243 " file win:\\windows\\system32\\config\\system.log\n"
17244 "\n"
17245 msgstr ""
17246
17247 #. type: verbatim
17248 #: ../fish/guestfish.pod:868
17249 #, no-wrap
17250 msgid ""
17251 " file WIN:C:\\Windows\\SYSTEM32\\CONFIG\\SYSTEM.LOG\n"
17252 "\n"
17253 msgstr ""
17254
17255 #. type: textblock
17256 #: ../fish/guestfish.pod:870
17257 msgid ""
17258 "The parameter is rewritten \"behind the scenes\" by looking up the position "
17259 "where the drive is mounted, prepending that to the path, changing all "
17260 "backslash characters to forward slash, then resolving the result using "
17261 "L</case-sensitive-path>.  For example if the E: drive was mounted on C</e> "
17262 "then the parameter might be rewritten like this:"
17263 msgstr ""
17264
17265 #. type: verbatim
17266 #: ../fish/guestfish.pod:876
17267 #, no-wrap
17268 msgid ""
17269 " win:e:\\foo\\bar => /e/FOO/bar\n"
17270 "\n"
17271 msgstr ""
17272
17273 #. type: textblock
17274 #: ../fish/guestfish.pod:878
17275 msgid "This only works in argument positions that expect a path."
17276 msgstr ""
17277
17278 #. type: =head1
17279 #: ../fish/guestfish.pod:880
17280 msgid "UPLOADING AND DOWNLOADING FILES"
17281 msgstr ""
17282
17283 #. type: textblock
17284 #: ../fish/guestfish.pod:882
17285 msgid ""
17286 "For commands such as C<upload>, C<download>, C<tar-in>, C<tar-out> and "
17287 "others which upload from or download to a local file, you can use the "
17288 "special filename C<-> to mean \"from stdin\" or \"to stdout\".  For example:"
17289 msgstr ""
17290
17291 #. type: verbatim
17292 #: ../fish/guestfish.pod:886
17293 #, no-wrap
17294 msgid ""
17295 " upload - /foo\n"
17296 "\n"
17297 msgstr ""
17298
17299 #. type: textblock
17300 #: ../fish/guestfish.pod:888
17301 msgid "reads stdin and creates from that a file C</foo> in the disk image, and:"
17302 msgstr ""
17303
17304 #. type: verbatim
17305 #: ../fish/guestfish.pod:891
17306 #, no-wrap
17307 msgid ""
17308 " tar-out /etc - | tar tf -\n"
17309 "\n"
17310 msgstr ""
17311
17312 #. type: textblock
17313 #: ../fish/guestfish.pod:893
17314 msgid ""
17315 "writes the tarball to stdout and then pipes that into the external \"tar\" "
17316 "command (see L</PIPES>)."
17317 msgstr ""
17318
17319 #. type: textblock
17320 #: ../fish/guestfish.pod:896
17321 msgid ""
17322 "When using C<-> to read from stdin, the input is read up to the end of "
17323 "stdin.  You can also use a special \"heredoc\"-like syntax to read up to "
17324 "some arbitrary end marker:"
17325 msgstr ""
17326
17327 #. type: verbatim
17328 #: ../fish/guestfish.pod:900
17329 #, no-wrap
17330 msgid ""
17331 " upload -<<END /foo\n"
17332 " input line 1\n"
17333 " input line 2\n"
17334 " input line 3\n"
17335 " END\n"
17336 "\n"
17337 msgstr ""
17338
17339 #. type: textblock
17340 #: ../fish/guestfish.pod:906
17341 msgid ""
17342 "Any string of characters can be used instead of C<END>.  The end marker must "
17343 "appear on a line of its own, without any preceeding or following characters "
17344 "(not even spaces)."
17345 msgstr ""
17346
17347 #. type: textblock
17348 #: ../fish/guestfish.pod:910
17349 msgid ""
17350 "Note that the C<-E<lt>E<lt>> syntax only applies to parameters used to "
17351 "upload local files (so-called \"FileIn\" parameters in the generator)."
17352 msgstr ""
17353
17354 #. type: =head1
17355 #: ../fish/guestfish.pod:913
17356 msgid "EXIT ON ERROR BEHAVIOUR"
17357 msgstr ""
17358
17359 #. type: textblock
17360 #: ../fish/guestfish.pod:915
17361 msgid ""
17362 "By default, guestfish will ignore any errors when in interactive mode "
17363 "(ie. taking commands from a human over a tty), and will exit on the first "
17364 "error in non-interactive mode (scripts, commands given on the command line)."
17365 msgstr ""
17366
17367 #. type: textblock
17368 #: ../fish/guestfish.pod:920
17369 msgid ""
17370 "If you prefix a command with a I<-> character, then that command will not "
17371 "cause guestfish to exit, even if that (one) command returns an error."
17372 msgstr ""
17373
17374 #. type: =head1
17375 #: ../fish/guestfish.pod:924
17376 msgid "REMOTE CONTROL GUESTFISH OVER A SOCKET"
17377 msgstr ""
17378
17379 #. type: textblock
17380 #: ../fish/guestfish.pod:926
17381 msgid ""
17382 "Guestfish can be remote-controlled over a socket.  This is useful "
17383 "particularly in shell scripts where you want to make several different "
17384 "changes to a filesystem, but you don't want the overhead of starting up a "
17385 "guestfish process each time."
17386 msgstr ""
17387
17388 #. type: textblock
17389 #: ../fish/guestfish.pod:931
17390 msgid "Start a guestfish server process using:"
17391 msgstr ""
17392
17393 #. type: verbatim
17394 #: ../fish/guestfish.pod:933
17395 #, no-wrap
17396 msgid ""
17397 " eval \"`guestfish --listen`\"\n"
17398 "\n"
17399 msgstr ""
17400
17401 #. type: textblock
17402 #: ../fish/guestfish.pod:935
17403 msgid "and then send it commands by doing:"
17404 msgstr ""
17405
17406 #. type: verbatim
17407 #: ../fish/guestfish.pod:937
17408 #, no-wrap
17409 msgid ""
17410 " guestfish --remote cmd [...]\n"
17411 "\n"
17412 msgstr ""
17413
17414 #. type: textblock
17415 #: ../fish/guestfish.pod:939
17416 msgid "To cause the server to exit, send it the exit command:"
17417 msgstr ""
17418
17419 #. type: textblock
17420 #: ../fish/guestfish.pod:943
17421 msgid ""
17422 "Note that the server will normally exit if there is an error in a command.  "
17423 "You can change this in the usual way.  See section L</EXIT ON ERROR "
17424 "BEHAVIOUR>."
17425 msgstr ""
17426
17427 #. type: =head2
17428 #: ../fish/guestfish.pod:947
17429 msgid "CONTROLLING MULTIPLE GUESTFISH PROCESSES"
17430 msgstr ""
17431
17432 #. type: textblock
17433 #: ../fish/guestfish.pod:949
17434 msgid ""
17435 "The C<eval> statement sets the environment variable C<$GUESTFISH_PID>, which "
17436 "is how the I<--remote> option knows where to send the commands.  You can "
17437 "have several guestfish listener processes running using:"
17438 msgstr ""
17439
17440 #. type: verbatim
17441 #: ../fish/guestfish.pod:953
17442 #, no-wrap
17443 msgid ""
17444 " eval \"`guestfish --listen`\"\n"
17445 " pid1=$GUESTFISH_PID\n"
17446 " eval \"`guestfish --listen`\"\n"
17447 " pid2=$GUESTFISH_PID\n"
17448 " ...\n"
17449 " guestfish --remote=$pid1 cmd\n"
17450 " guestfish --remote=$pid2 cmd\n"
17451 "\n"
17452 msgstr ""
17453
17454 #. type: =head2
17455 #: ../fish/guestfish.pod:961
17456 msgid "REMOTE CONTROL AND CSH"
17457 msgstr ""
17458
17459 #. type: textblock
17460 #: ../fish/guestfish.pod:963
17461 msgid ""
17462 "When using csh-like shells (csh, tcsh etc) you have to add the I<--csh> "
17463 "option:"
17464 msgstr ""
17465
17466 #. type: verbatim
17467 #: ../fish/guestfish.pod:966
17468 #, no-wrap
17469 msgid ""
17470 " eval \"`guestfish --listen --csh`\"\n"
17471 "\n"
17472 msgstr ""
17473
17474 #. type: =head2
17475 #: ../fish/guestfish.pod:968
17476 msgid "REMOTE CONTROL DETAILS"
17477 msgstr ""
17478
17479 #. type: textblock
17480 #: ../fish/guestfish.pod:970
17481 msgid ""
17482 "Remote control happens over a Unix domain socket called "
17483 "C</tmp/.guestfish-$UID/socket-$PID>, where C<$UID> is the effective user ID "
17484 "of the process, and C<$PID> is the process ID of the server."
17485 msgstr ""
17486
17487 #. type: textblock
17488 #: ../fish/guestfish.pod:974
17489 msgid "Guestfish client and server versions must match exactly."
17490 msgstr ""
17491
17492 #. type: =head1
17493 #: ../fish/guestfish.pod:976
17494 msgid "PREPARED DISK IMAGES"
17495 msgstr ""
17496
17497 #. type: textblock
17498 #: ../fish/guestfish.pod:978
17499 msgid ""
17500 "Use the I<-N type> or I<--new type> parameter to select one of a set of "
17501 "preformatted disk images that guestfish can make for you to save typing.  "
17502 "This is particularly useful for testing purposes.  This option is used "
17503 "instead of the I<-a> option, and like I<-a> can appear multiple times (and "
17504 "can be mixed with I<-a>)."
17505 msgstr ""
17506
17507 #. type: textblock
17508 #: ../fish/guestfish.pod:984
17509 msgid ""
17510 "The new disk is called C<test1.img> for the first I<-N>, C<test2.img> for "
17511 "the second and so on.  Existing files in the current directory are "
17512 "I<overwritten>."
17513 msgstr ""
17514
17515 #. type: textblock
17516 #: ../fish/guestfish.pod:988
17517 msgid ""
17518 "The type briefly describes how the disk should be sized, partitioned, how "
17519 "filesystem(s) should be created, and how content should be added.  "
17520 "Optionally the type can be followed by extra parameters, separated by C<:> "
17521 "(colon) characters.  For example, I<-N fs> creates a default 100MB, "
17522 "sparsely-allocated disk, containing a single partition, with the partition "
17523 "formatted as ext2.  I<-N fs:ext4:1G> is the same, but for an ext4 filesystem "
17524 "on a 1GB disk instead."
17525 msgstr ""
17526
17527 #. type: textblock
17528 #: ../fish/guestfish.pod:996
17529 msgid "To list the available types and any extra parameters they take, run:"
17530 msgstr ""
17531
17532 #. type: textblock
17533 #: ../fish/guestfish.pod:1000
17534 msgid ""
17535 "Note that the prepared filesystem is not mounted.  You would usually have to "
17536 "use the C<mount /dev/sda1 /> command or add the I<-m /dev/sda1> option."
17537 msgstr ""
17538
17539 #. type: textblock
17540 #: ../fish/guestfish.pod:1004
17541 msgid ""
17542 "If any I<-N> or I<--new> options are given, the guest is automatically "
17543 "launched."
17544 msgstr ""
17545
17546 #. type: textblock
17547 #: ../fish/guestfish.pod:1009
17548 msgid "Create a 100MB disk with an ext4-formatted partition:"
17549 msgstr ""
17550
17551 #. type: verbatim
17552 #: ../fish/guestfish.pod:1011
17553 #, no-wrap
17554 msgid ""
17555 " guestfish -N fs:ext4\n"
17556 "\n"
17557 msgstr ""
17558
17559 #. type: textblock
17560 #: ../fish/guestfish.pod:1013
17561 msgid "Create a 32MB disk with a VFAT-formatted partition, and mount it:"
17562 msgstr ""
17563
17564 #. type: verbatim
17565 #: ../fish/guestfish.pod:1015
17566 #, no-wrap
17567 msgid ""
17568 " guestfish -N fs:vfat:32M -m /dev/sda1\n"
17569 "\n"
17570 msgstr ""
17571
17572 #. type: textblock
17573 #: ../fish/guestfish.pod:1017
17574 msgid "Create a blank 200MB disk:"
17575 msgstr ""
17576
17577 #. type: verbatim
17578 #: ../fish/guestfish.pod:1019
17579 #, no-wrap
17580 msgid ""
17581 " guestfish -N disk:200M\n"
17582 "\n"
17583 msgstr ""
17584
17585 #. type: =head1
17586 #: ../fish/guestfish.pod:1021
17587 msgid "PROGRESS BARS"
17588 msgstr ""
17589
17590 #. type: textblock
17591 #: ../fish/guestfish.pod:1023
17592 msgid ""
17593 "Some (not all) long-running commands send progress notification messages as "
17594 "they are running.  Guestfish turns these messages into progress bars."
17595 msgstr ""
17596
17597 #. type: textblock
17598 #: ../fish/guestfish.pod:1027
17599 msgid ""
17600 "When a command that supports progress bars takes longer than two seconds to "
17601 "run, and if progress bars are enabled, then you will see one appearing below "
17602 "the command:"
17603 msgstr ""
17604
17605 #. type: verbatim
17606 #: ../fish/guestfish.pod:1031
17607 #, no-wrap
17608 msgid ""
17609 " ><fs> copy-size /large-file /another-file 2048M\n"
17610 " / 10% [#####-----------------------------------------] 00:30\n"
17611 "\n"
17612 msgstr ""
17613
17614 #. type: textblock
17615 #: ../fish/guestfish.pod:1034
17616 msgid ""
17617 "The spinner on the left hand side moves round once for every progress "
17618 "notification received from the backend.  This is a (reasonably) golden "
17619 "assurance that the command is \"doing something\" even if the progress bar "
17620 "is not moving, because the command is able to send the progress "
17621 "notifications.  When the bar reaches 100% and the command finishes, the "
17622 "spinner disappears."
17623 msgstr ""
17624
17625 #. type: textblock
17626 #: ../fish/guestfish.pod:1041
17627 msgid ""
17628 "Progress bars are enabled by default when guestfish is used interactively.  "
17629 "You can enable them even for non-interactive modes using I<--progress-bars>, "
17630 "and you can disable them completely using I<--no-progress-bars>."
17631 msgstr ""
17632
17633 #. type: =head1
17634 #: ../fish/guestfish.pod:1046
17635 msgid "GUESTFISH COMMANDS"
17636 msgstr ""
17637
17638 #. type: textblock
17639 #: ../fish/guestfish.pod:1048
17640 msgid ""
17641 "The commands in this section are guestfish convenience commands, in other "
17642 "words, they are not part of the L<guestfs(3)> API."
17643 msgstr ""
17644
17645 #. type: =head2
17646 #: ../fish/guestfish.pod:1051
17647 msgid "help"
17648 msgstr ""
17649
17650 #. type: verbatim
17651 #: ../fish/guestfish.pod:1053
17652 #, no-wrap
17653 msgid ""
17654 " help\n"
17655 " help cmd\n"
17656 "\n"
17657 msgstr ""
17658
17659 #. type: textblock
17660 #: ../fish/guestfish.pod:1056
17661 msgid "Without any parameter, this provides general help."
17662 msgstr ""
17663
17664 #. type: textblock
17665 #: ../fish/guestfish.pod:1058
17666 msgid "With a C<cmd> parameter, this displays detailed help for that command."
17667 msgstr ""
17668
17669 #. type: =head2
17670 #: ../fish/guestfish.pod:1060
17671 msgid "quit | exit"
17672 msgstr ""
17673
17674 #. type: textblock
17675 #: ../fish/guestfish.pod:1062
17676 msgid "This exits guestfish.  You can also use C<^D> key."
17677 msgstr ""
17678
17679 #. type: textblock
17680 #: ../fish/guestfish.pod:1064
17681 msgid "@FISH_COMMANDS@"
17682 msgstr ""
17683
17684 #. type: =head1
17685 #: ../fish/guestfish.pod:1066
17686 msgid "COMMANDS"
17687 msgstr ""
17688
17689 #. type: textblock
17690 #: ../fish/guestfish.pod:1068 ../src/guestfs.pod:1474
17691 msgid "@ACTIONS@"
17692 msgstr ""
17693
17694 #. type: =head1
17695 #: ../fish/guestfish.pod:1070 ../test-tool/libguestfs-test-tool.pod:77
17696 msgid "EXIT CODE"
17697 msgstr ""
17698
17699 #. type: textblock
17700 #: ../fish/guestfish.pod:1072
17701 msgid ""
17702 "guestfish returns 0 if the commands completed without error, or 1 if there "
17703 "was an error."
17704 msgstr ""
17705
17706 #. type: =item
17707 #: ../fish/guestfish.pod:1079
17708 msgid "EDITOR"
17709 msgstr ""
17710
17711 #. type: textblock
17712 #: ../fish/guestfish.pod:1081
17713 msgid ""
17714 "The C<edit> command uses C<$EDITOR> as the editor.  If not set, it uses "
17715 "C<vi>."
17716 msgstr ""
17717
17718 #. type: =item
17719 #: ../fish/guestfish.pod:1084
17720 msgid "GUESTFISH_DISPLAY_IMAGE"
17721 msgstr ""
17722
17723 #. type: textblock
17724 #: ../fish/guestfish.pod:1086
17725 msgid ""
17726 "The C<display> command uses C<$GUESTFISH_DISPLAY_IMAGE> to display images.  "
17727 "If not set, it uses L<display(1)>."
17728 msgstr ""
17729
17730 #. type: =item
17731 #: ../fish/guestfish.pod:1089
17732 msgid "GUESTFISH_PID"
17733 msgstr ""
17734
17735 #. type: textblock
17736 #: ../fish/guestfish.pod:1091
17737 msgid ""
17738 "Used with the I<--remote> option to specify the remote guestfish process to "
17739 "control.  See section L</REMOTE CONTROL GUESTFISH OVER A SOCKET>."
17740 msgstr ""
17741
17742 #. type: =item
17743 #: ../fish/guestfish.pod:1095
17744 msgid "HEXEDITOR"
17745 msgstr ""
17746
17747 #. type: textblock
17748 #: ../fish/guestfish.pod:1097
17749 msgid ""
17750 "The L</hexedit> command uses C<$HEXEDITOR> as the external hex editor.  If "
17751 "not specified, the external L<hexedit(1)> program is used."
17752 msgstr ""
17753
17754 #. type: =item
17755 #: ../fish/guestfish.pod:1101
17756 msgid "HOME"
17757 msgstr ""
17758
17759 #. type: textblock
17760 #: ../fish/guestfish.pod:1103
17761 msgid ""
17762 "If compiled with GNU readline support, various files in the home directory "
17763 "can be used.  See L</FILES>."
17764 msgstr ""
17765
17766 #. type: =item
17767 #: ../fish/guestfish.pod:1106 ../src/guestfs.pod:2969
17768 msgid "LIBGUESTFS_APPEND"
17769 msgstr ""
17770
17771 #. type: textblock
17772 #: ../fish/guestfish.pod:1108 ../src/guestfs.pod:2971
17773 msgid "Pass additional options to the guest kernel."
17774 msgstr ""
17775
17776 #. type: =item
17777 #: ../fish/guestfish.pod:1110 ../src/guestfs.pod:2973
17778 msgid "LIBGUESTFS_DEBUG"
17779 msgstr ""
17780
17781 #. type: textblock
17782 #: ../fish/guestfish.pod:1112
17783 msgid ""
17784 "Set C<LIBGUESTFS_DEBUG=1> to enable verbose messages.  This has the same "
17785 "effect as using the B<-v> option."
17786 msgstr ""
17787
17788 #. type: =item
17789 #: ../fish/guestfish.pod:1115 ../src/guestfs.pod:2978
17790 msgid "LIBGUESTFS_MEMSIZE"
17791 msgstr ""
17792
17793 #. type: textblock
17794 #: ../fish/guestfish.pod:1117 ../src/guestfs.pod:2980
17795 msgid "Set the memory allocated to the qemu process, in megabytes.  For example:"
17796 msgstr ""
17797
17798 #. type: verbatim
17799 #: ../fish/guestfish.pod:1120 ../src/guestfs.pod:2983
17800 #, no-wrap
17801 msgid ""
17802 " LIBGUESTFS_MEMSIZE=700\n"
17803 "\n"
17804 msgstr ""
17805
17806 #. type: =item
17807 #: ../fish/guestfish.pod:1122 ../src/guestfs.pod:2985
17808 msgid "LIBGUESTFS_PATH"
17809 msgstr ""
17810
17811 #. type: textblock
17812 #: ../fish/guestfish.pod:1124
17813 msgid ""
17814 "Set the path that guestfish uses to search for kernel and initrd.img.  See "
17815 "the discussion of paths in L<guestfs(3)>."
17816 msgstr ""
17817
17818 #. type: =item
17819 #: ../fish/guestfish.pod:1127 ../src/guestfs.pod:2990
17820 msgid "LIBGUESTFS_QEMU"
17821 msgstr ""
17822
17823 #. type: textblock
17824 #: ../fish/guestfish.pod:1129 ../src/guestfs.pod:2992
17825 msgid ""
17826 "Set the default qemu binary that libguestfs uses.  If not set, then the qemu "
17827 "which was found at compile time by the configure script is used."
17828 msgstr ""
17829
17830 #. type: =item
17831 #: ../fish/guestfish.pod:1133 ../src/guestfs.pod:2998
17832 msgid "LIBGUESTFS_TRACE"
17833 msgstr ""
17834
17835 #. type: textblock
17836 #: ../fish/guestfish.pod:1135
17837 msgid "Set C<LIBGUESTFS_TRACE=1> to enable command traces."
17838 msgstr ""
17839
17840 #. type: =item
17841 #: ../fish/guestfish.pod:1137
17842 msgid "PAGER"
17843 msgstr ""
17844
17845 #. type: textblock
17846 #: ../fish/guestfish.pod:1139
17847 msgid ""
17848 "The C<more> command uses C<$PAGER> as the pager.  If not set, it uses "
17849 "C<more>."
17850 msgstr ""
17851
17852 #. type: =item
17853 #: ../fish/guestfish.pod:1142 ../src/guestfs.pod:3003
17854 msgid "TMPDIR"
17855 msgstr ""
17856
17857 #. type: textblock
17858 #: ../fish/guestfish.pod:1144 ../src/guestfs.pod:3005
17859 msgid ""
17860 "Location of temporary directory, defaults to C</tmp> except for the cached "
17861 "supermin appliance which defaults to C</var/tmp>."
17862 msgstr ""
17863
17864 #. type: textblock
17865 #: ../fish/guestfish.pod:1147 ../src/guestfs.pod:3008
17866 msgid ""
17867 "If libguestfs was compiled to use the supermin appliance then the real "
17868 "appliance is cached in this directory, shared between all handles belonging "
17869 "to the same EUID.  You can use C<$TMPDIR> to configure another directory to "
17870 "use in case C</var/tmp> is not large enough."
17871 msgstr ""
17872
17873 #. type: =head1
17874 #: ../fish/guestfish.pod:1155 ../fuse/guestmount.pod:288 ../rescue/virt-rescue.pod:269
17875 msgid "FILES"
17876 msgstr ""
17877
17878 #. type: =item
17879 #: ../fish/guestfish.pod:1159 ../fuse/guestmount.pod:292 ../rescue/virt-rescue.pod:273
17880 msgid "$HOME/.libguestfs-tools.rc"
17881 msgstr ""
17882
17883 #. type: =item
17884 #: ../fish/guestfish.pod:1161 ../fuse/guestmount.pod:294 ../rescue/virt-rescue.pod:275
17885 msgid "/etc/libguestfs-tools.conf"
17886 msgstr ""
17887
17888 #. type: textblock
17889 #: ../fish/guestfish.pod:1163 ../fuse/guestmount.pod:296 ../rescue/virt-rescue.pod:277
17890 msgid ""
17891 "This configuration file controls the default read-only or read-write mode "
17892 "(I<--ro> or I<--rw>)."
17893 msgstr ""
17894
17895 #. type: textblock
17896 #: ../fish/guestfish.pod:1166
17897 msgid "See L</OPENING DISKS FOR READ AND WRITE>."
17898 msgstr ""
17899
17900 #. type: =item
17901 #: ../fish/guestfish.pod:1168
17902 msgid "$HOME/.guestfish"
17903 msgstr ""
17904
17905 #. type: textblock
17906 #: ../fish/guestfish.pod:1170
17907 msgid ""
17908 "If compiled with GNU readline support, then the command history is saved in "
17909 "this file."
17910 msgstr ""
17911
17912 #. type: =item
17913 #: ../fish/guestfish.pod:1173
17914 msgid "$HOME/.inputrc"
17915 msgstr ""
17916
17917 #. type: =item
17918 #: ../fish/guestfish.pod:1175
17919 msgid "/etc/inputrc"
17920 msgstr ""
17921
17922 #. type: textblock
17923 #: ../fish/guestfish.pod:1177
17924 msgid ""
17925 "If compiled with GNU readline support, then these files can be used to "
17926 "configure readline.  For further information, please see "
17927 "L<readline(3)/INITIALIZATION FILE>."
17928 msgstr ""
17929
17930 #. type: textblock
17931 #: ../fish/guestfish.pod:1181
17932 msgid "To write rules which only apply to guestfish, use:"
17933 msgstr ""
17934
17935 #. type: verbatim
17936 #: ../fish/guestfish.pod:1183
17937 #, no-wrap
17938 msgid ""
17939 " $if guestfish\n"
17940 " ...\n"
17941 " $endif\n"
17942 "\n"
17943 msgstr ""
17944
17945 #. type: textblock
17946 #: ../fish/guestfish.pod:1187
17947 msgid ""
17948 "Variables that you can set in inputrc that change the behaviour of guestfish "
17949 "in useful ways include:"
17950 msgstr ""
17951
17952 #. type: =item
17953 #: ../fish/guestfish.pod:1192
17954 msgid "completion-ignore-case (default: on)"
17955 msgstr ""
17956
17957 #. type: textblock
17958 #: ../fish/guestfish.pod:1194
17959 msgid ""
17960 "By default, guestfish will ignore case when tab-completing paths on the "
17961 "disk.  Use:"
17962 msgstr ""
17963
17964 #. type: verbatim
17965 #: ../fish/guestfish.pod:1197
17966 #, no-wrap
17967 msgid ""
17968 " set completion-ignore-case off\n"
17969 "\n"
17970 msgstr ""
17971
17972 #. type: textblock
17973 #: ../fish/guestfish.pod:1199
17974 msgid "to make guestfish case sensitive."
17975 msgstr ""
17976
17977 #. type: =item
17978 #: ../fish/guestfish.pod:1203
17979 msgid "test1.img"
17980 msgstr ""
17981
17982 #. type: =item
17983 #: ../fish/guestfish.pod:1205
17984 msgid "test2.img (etc)"
17985 msgstr ""
17986
17987 #. type: textblock
17988 #: ../fish/guestfish.pod:1207
17989 msgid ""
17990 "When using the I<-N> or I<--new> option, the prepared disk or filesystem "
17991 "will be created in the file C<test1.img> in the current directory.  The "
17992 "second use of I<-N> will use C<test2.img> and so on.  Any existing file with "
17993 "the same name will be overwritten."
17994 msgstr ""
17995
17996 #. type: textblock
17997 #: ../fish/guestfish.pod:1216
17998 msgid ""
17999 "L<guestfs(3)>, L<http://libguestfs.org/>, L<virt-cat(1)>, "
18000 "L<virt-copy-in(1)>, L<virt-copy-out(1)>, L<virt-df(1)>, L<virt-edit(1)>, "
18001 "L<virt-filesystems(1)>, L<virt-inspector(1)>, L<virt-list-filesystems(1)>, "
18002 "L<virt-list-partitions(1)>, L<virt-ls(1)>, L<virt-make-fs(1)>, "
18003 "L<virt-rescue(1)>, L<virt-resize(1)>, L<virt-tar(1)>, L<virt-tar-in(1)>, "
18004 "L<virt-tar-out(1)>, L<virt-win-reg(1)>, L<display(1)>, L<hexedit(1)>."
18005 msgstr ""
18006
18007 #. type: textblock
18008 #: ../fish/guestfish.pod:1244 ../src/guestfs.pod:3093 ../test-tool/libguestfs-test-tool.pod:99
18009 msgid "Copyright (C) 2009-2011 Red Hat Inc.  L<http://libguestfs.org/>"
18010 msgstr ""
18011
18012 #. type: textblock
18013 #: ../fish/virt-copy-in.pod:5
18014 msgid "virt-copy-in - Copy files and directories into a virtual machine disk image."
18015 msgstr ""
18016
18017 #. type: verbatim
18018 #: ../fish/virt-copy-in.pod:9
18019 #, no-wrap
18020 msgid ""
18021 " virt-copy-in -a disk.img file|dir [file|dir ...] /destination\n"
18022 "\n"
18023 msgstr ""
18024
18025 #. type: verbatim
18026 #: ../fish/virt-copy-in.pod:11
18027 #, no-wrap
18028 msgid ""
18029 " virt-copy-in -d domain file|dir [file|dir ...] /destination\n"
18030 "\n"
18031 msgstr ""
18032
18033 #. type: textblock
18034 #: ../fish/virt-copy-in.pod:15
18035 msgid ""
18036 "Using C<virt-copy-in> on live virtual machines can be dangerous, potentially "
18037 "causing disk corruption.  The virtual machine must be shut down before you "
18038 "use this command."
18039 msgstr ""
18040
18041 #. type: textblock
18042 #: ../fish/virt-copy-in.pod:21
18043 msgid ""
18044 "C<virt-copy-in> copies files and directories from the local disk into a "
18045 "virtual machine disk image or named libvirt domain."
18046 msgstr ""
18047
18048 #. type: textblock
18049 #: ../fish/virt-copy-in.pod:24
18050 msgid ""
18051 "You can give one of more filenames and directories on the command line.  "
18052 "Directories are copied in recursively.  The final parameter must be the "
18053 "destination directory in the disk image which must be an absolute path "
18054 "starting with a C</> character."
18055 msgstr ""
18056
18057 #. type: verbatim
18058 #: ../fish/virt-copy-in.pod:33
18059 #, no-wrap
18060 msgid ""
18061 " virt-copy-in -d MyGuest resolv.conf /etc\n"
18062 "\n"
18063 msgstr ""
18064
18065 #. type: textblock
18066 #: ../fish/virt-copy-in.pod:35 ../fish/virt-tar-in.pod:32
18067 msgid "Upload a home directory to a guest:"
18068 msgstr ""
18069
18070 #. type: verbatim
18071 #: ../fish/virt-copy-in.pod:37
18072 #, no-wrap
18073 msgid ""
18074 " virt-copy-in -d MyGuest skel /home\n"
18075 "\n"
18076 msgstr ""
18077
18078 #. type: =head1
18079 #: ../fish/virt-copy-in.pod:39 ../fish/virt-copy-out.pod:28 ../fish/virt-tar-in.pod:36 ../fish/virt-tar-out.pod:30
18080 msgid "JUST A SHELL SCRIPT WRAPPER AROUND GUESTFISH"
18081 msgstr ""
18082
18083 #. type: textblock
18084 #: ../fish/virt-copy-in.pod:41
18085 msgid ""
18086 "This command is just a simple shell script wrapper around the "
18087 "L<guestfish(1)> C<copy-in> command.  For anything more complex than a "
18088 "trivial copy, you are probably better off using guestfish directly."
18089 msgstr ""
18090
18091 #. type: textblock
18092 #: ../fish/virt-copy-in.pod:47 ../fish/virt-copy-out.pod:36 ../fish/virt-tar-in.pod:44 ../fish/virt-tar-out.pod:38
18093 msgid ""
18094 "Since the shell script just passes options straight to guestfish, read "
18095 "L<guestfish(1)> to see the full list of options."
18096 msgstr ""
18097
18098 #. type: textblock
18099 #: ../fish/virt-copy-in.pod:52
18100 msgid ""
18101 "L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-out(1)>, L<virt-edit(1)>, "
18102 "L<virt-tar-in(1)>, L<virt-tar-out(1)>, L<http://libguestfs.org/>."
18103 msgstr ""
18104
18105 #. type: textblock
18106 #: ../fish/virt-copy-in.pod:66 ../fish/virt-copy-out.pod:55 ../fish/virt-tar-in.pod:64 ../fish/virt-tar-out.pod:57
18107 msgid "Copyright (C) 2011 Red Hat Inc.  L<http://libguestfs.org/>"
18108 msgstr ""
18109
18110 #. type: textblock
18111 #: ../fish/virt-copy-out.pod:5
18112 msgid ""
18113 "virt-copy-out - Copy files and directories out of a virtual machine disk "
18114 "image."
18115 msgstr ""
18116
18117 #. type: verbatim
18118 #: ../fish/virt-copy-out.pod:9
18119 #, no-wrap
18120 msgid ""
18121 " virt-copy-out -a disk.img /file|dir [/file|dir ...] localdir\n"
18122 "\n"
18123 msgstr ""
18124
18125 #. type: verbatim
18126 #: ../fish/virt-copy-out.pod:11
18127 #, no-wrap
18128 msgid ""
18129 " virt-copy-out -d domain /file|dir [/file|dir ...] localdir\n"
18130 "\n"
18131 msgstr ""
18132
18133 #. type: textblock
18134 #: ../fish/virt-copy-out.pod:15
18135 msgid ""
18136 "C<virt-copy-out> copies files and directories out of a virtual machine disk "
18137 "image or named libvirt domain."
18138 msgstr ""
18139
18140 #. type: textblock
18141 #: ../fish/virt-copy-out.pod:18
18142 msgid ""
18143 "You can give one of more filenames and directories on the command line.  "
18144 "Directories are copied out recursively."
18145 msgstr ""
18146
18147 #. type: textblock
18148 #: ../fish/virt-copy-out.pod:23
18149 msgid "Download the home directories from a virtual machine:"
18150 msgstr ""
18151
18152 #. type: verbatim
18153 #: ../fish/virt-copy-out.pod:25
18154 #, no-wrap
18155 msgid ""
18156 " mkdir homes\n"
18157 " virt-copy-out -d MyGuest /home homes\n"
18158 "\n"
18159 msgstr ""
18160
18161 #. type: textblock
18162 #: ../fish/virt-copy-out.pod:30
18163 msgid ""
18164 "This command is just a simple shell script wrapper around the "
18165 "L<guestfish(1)> C<copy-out> command.  For anything more complex than a "
18166 "trivial copy, you are probably better off using guestfish directly."
18167 msgstr ""
18168
18169 #. type: textblock
18170 #: ../fish/virt-copy-out.pod:41
18171 msgid ""
18172 "L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, L<virt-edit(1)>, "
18173 "L<virt-tar-in(1)>, L<virt-tar-out(1)>, L<http://libguestfs.org/>."
18174 msgstr ""
18175
18176 #. type: textblock
18177 #: ../fish/virt-tar-in.pod:5
18178 msgid "virt-tar-in - Unpack a tarball into a virtual machine disk image."
18179 msgstr ""
18180
18181 #. type: verbatim
18182 #: ../fish/virt-tar-in.pod:9
18183 #, no-wrap
18184 msgid ""
18185 " virt-tar-in -a disk.img data.tar /destination\n"
18186 "\n"
18187 msgstr ""
18188
18189 #. type: verbatim
18190 #: ../fish/virt-tar-in.pod:11
18191 #, no-wrap
18192 msgid ""
18193 " virt-tar-in -d domain data.tar /destination\n"
18194 "\n"
18195 msgstr ""
18196
18197 #. type: verbatim
18198 #: ../fish/virt-tar-in.pod:13
18199 #, no-wrap
18200 msgid ""
18201 " zcat data.tar.gz | virt-tar-in -d domain - /destination\n"
18202 "\n"
18203 msgstr ""
18204
18205 #. type: textblock
18206 #: ../fish/virt-tar-in.pod:17
18207 msgid ""
18208 "Using C<virt-tar-in> on live virtual machines can be dangerous, potentially "
18209 "causing disk corruption.  The virtual machine must be shut down before you "
18210 "use this command."
18211 msgstr ""
18212
18213 #. type: textblock
18214 #: ../fish/virt-tar-in.pod:23
18215 msgid ""
18216 "C<virt-tar-in> unpacks an uncompressed tarball into a virtual machine disk "
18217 "image or named libvirt domain."
18218 msgstr ""
18219
18220 #. type: textblock
18221 #: ../fish/virt-tar-in.pod:26
18222 msgid ""
18223 "The first parameter is the tar file.  Use C<-> to read the tar file from "
18224 "standard input.  The second parameter is the absolute target directory to "
18225 "unpack into."
18226 msgstr ""
18227
18228 #. type: verbatim
18229 #: ../fish/virt-tar-in.pod:34
18230 #, no-wrap
18231 msgid ""
18232 " virt-tar-in -d MyGuest homes.tar /home\n"
18233 "\n"
18234 msgstr ""
18235
18236 #. type: textblock
18237 #: ../fish/virt-tar-in.pod:38
18238 msgid ""
18239 "This command is just a simple shell script wrapper around the "
18240 "L<guestfish(1)> C<tar-in> command.  For anything more complex than a trivial "
18241 "copy, you are probably better off using guestfish directly."
18242 msgstr ""
18243
18244 #. type: textblock
18245 #: ../fish/virt-tar-in.pod:49
18246 msgid ""
18247 "L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, L<virt-copy-out(1)>, "
18248 "L<virt-edit(1)>, L<virt-make-fs(1)>, L<virt-tar-out(1)>, "
18249 "L<http://libguestfs.org/>."
18250 msgstr ""
18251
18252 #. type: textblock
18253 #: ../fish/virt-tar-out.pod:5
18254 msgid "virt-tar-out - Pack a virtual machine disk image directory into a tarball."
18255 msgstr ""
18256
18257 #. type: verbatim
18258 #: ../fish/virt-tar-out.pod:9
18259 #, no-wrap
18260 msgid ""
18261 " virt-tar-out -a disk.img /dir files.tar\n"
18262 "\n"
18263 msgstr ""
18264
18265 #. type: verbatim
18266 #: ../fish/virt-tar-out.pod:11
18267 #, no-wrap
18268 msgid ""
18269 " virt-tar-out -d domain /dir files.tar\n"
18270 "\n"
18271 msgstr ""
18272
18273 #. type: verbatim
18274 #: ../fish/virt-tar-out.pod:13
18275 #, no-wrap
18276 msgid ""
18277 " virt-tar-out -d domain /dir - | gzip --best > files.tar.gz\n"
18278 "\n"
18279 msgstr ""
18280
18281 #. type: textblock
18282 #: ../fish/virt-tar-out.pod:17
18283 msgid "C<virt-tar-out> packs a virtual machine disk image directory into a tarball."
18284 msgstr ""
18285
18286 #. type: textblock
18287 #: ../fish/virt-tar-out.pod:20
18288 msgid ""
18289 "The first parameter is the absolute path of the virtual machine directory.  "
18290 "The second parameter is the tar file to write.  Use C<-> to write to "
18291 "standard output."
18292 msgstr ""
18293
18294 #. type: textblock
18295 #: ../fish/virt-tar-out.pod:26
18296 msgid "Download the home directories from a guest:"
18297 msgstr ""
18298
18299 #. type: verbatim
18300 #: ../fish/virt-tar-out.pod:28
18301 #, no-wrap
18302 msgid ""
18303 " virt-tar-out -d MyGuest /home - | gzip --best > homes.tar.gz\n"
18304 "\n"
18305 msgstr ""
18306
18307 #. type: textblock
18308 #: ../fish/virt-tar-out.pod:32
18309 msgid ""
18310 "This command is just a simple shell script wrapper around the "
18311 "L<guestfish(1)> C<tar-out> command.  For anything more complex than a "
18312 "trivial copy, you are probably better off using guestfish directly."
18313 msgstr ""
18314
18315 #. type: textblock
18316 #: ../fish/virt-tar-out.pod:43
18317 msgid ""
18318 "L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, L<virt-copy-out(1)>, "
18319 "L<virt-edit(1)>, L<virt-tar-in(1)>, L<http://libguestfs.org/>."
18320 msgstr ""
18321
18322 #. type: textblock
18323 #: ../fuse/guestmount.pod:5
18324 msgid "guestmount - Mount a guest filesystem on the host using FUSE and libguestfs"
18325 msgstr ""
18326
18327 #. type: verbatim
18328 #: ../fuse/guestmount.pod:9
18329 #, no-wrap
18330 msgid ""
18331 " guestmount [--options] -a disk.img -m device [--ro] mountpoint\n"
18332 "\n"
18333 msgstr ""
18334
18335 #. type: verbatim
18336 #: ../fuse/guestmount.pod:11
18337 #, no-wrap
18338 msgid ""
18339 " guestmount [--options] -a disk.img -i [--ro] mountpoint\n"
18340 "\n"
18341 msgstr ""
18342
18343 #. type: verbatim
18344 #: ../fuse/guestmount.pod:13
18345 #, no-wrap
18346 msgid ""
18347 " guestmount [--options] -d Guest -i [--ro] mountpoint\n"
18348 "\n"
18349 msgstr ""
18350
18351 #. type: textblock
18352 #: ../fuse/guestmount.pod:17
18353 msgid ""
18354 "You must I<not> use C<guestmount> in read-write mode on live virtual "
18355 "machines.  If you do this, you risk disk corruption in the VM."
18356 msgstr ""
18357
18358 #. type: textblock
18359 #: ../fuse/guestmount.pod:22
18360 msgid ""
18361 "The guestmount program can be used to mount virtual machine filesystems and "
18362 "other disk images on the host.  It uses libguestfs for access to the guest "
18363 "filesystem, and FUSE (the \"filesystem in userspace\") to make it appear as "
18364 "a mountable device."
18365 msgstr ""
18366
18367 #. type: textblock
18368 #: ../fuse/guestmount.pod:27
18369 msgid ""
18370 "Along with other options, you have to give at least one device (I<-a> "
18371 "option) or libvirt domain (I<-d> option), and at least one mountpoint (I<-m> "
18372 "option) or use the I<-i> inspection option.  How this works is better "
18373 "explained in the L<guestfish(1)> manual page, or by looking at the examples "
18374 "below."
18375 msgstr ""
18376
18377 #. type: textblock
18378 #: ../fuse/guestmount.pod:33
18379 msgid ""
18380 "FUSE lets you mount filesystems as non-root.  The mountpoint must be owned "
18381 "by you, and the filesystem will not be visible to any other users unless you "
18382 "make certain global configuration changes to C</etc/fuse.conf>.  To unmount "
18383 "the filesystem, use the C<fusermount -u> command."
18384 msgstr ""
18385
18386 #. type: textblock
18387 #: ../fuse/guestmount.pod:41
18388 msgid ""
18389 "For a typical Windows guest which has its main filesystem on the first "
18390 "partition:"
18391 msgstr ""
18392
18393 #. type: verbatim
18394 #: ../fuse/guestmount.pod:44
18395 #, no-wrap
18396 msgid ""
18397 " guestmount -a windows.img -m /dev/sda1 --ro /mnt\n"
18398 "\n"
18399 msgstr ""
18400
18401 #. type: textblock
18402 #: ../fuse/guestmount.pod:46
18403 msgid ""
18404 "For a typical Linux guest which has a /boot filesystem on the first "
18405 "partition, and the root filesystem on a logical volume:"
18406 msgstr ""
18407
18408 #. type: verbatim
18409 #: ../fuse/guestmount.pod:49
18410 #, no-wrap
18411 msgid ""
18412 " guestmount -a linux.img -m /dev/VG/LV -m /dev/sda1:/boot --ro /mnt\n"
18413 "\n"
18414 msgstr ""
18415
18416 #. type: textblock
18417 #: ../fuse/guestmount.pod:51
18418 msgid "To get libguestfs to detect guest mountpoints for you:"
18419 msgstr ""
18420
18421 #. type: verbatim
18422 #: ../fuse/guestmount.pod:53
18423 #, no-wrap
18424 msgid ""
18425 " guestmount -a guest.img -i --ro /mnt\n"
18426 "\n"
18427 msgstr ""
18428
18429 #. type: textblock
18430 #: ../fuse/guestmount.pod:55
18431 msgid "For a libvirt guest called \"Guest\" you could do:"
18432 msgstr ""
18433
18434 #. type: verbatim
18435 #: ../fuse/guestmount.pod:57
18436 #, no-wrap
18437 msgid ""
18438 " guestmount -d Guest -i --ro /mnt\n"
18439 "\n"
18440 msgstr ""
18441
18442 #. type: textblock
18443 #: ../fuse/guestmount.pod:59
18444 msgid ""
18445 "If you don't know what filesystems are contained in a guest or disk image, "
18446 "use L<virt-filesystems(1)> first:"
18447 msgstr ""
18448
18449 #. type: verbatim
18450 #: ../fuse/guestmount.pod:62
18451 #, no-wrap
18452 msgid ""
18453 " virt-filesystems MyGuest\n"
18454 "\n"
18455 msgstr ""
18456
18457 #. type: textblock
18458 #: ../fuse/guestmount.pod:64
18459 msgid ""
18460 "If you want to trace the libguestfs calls but without excessive debugging "
18461 "information, we recommend:"
18462 msgstr ""
18463
18464 #. type: verbatim
18465 #: ../fuse/guestmount.pod:67
18466 #, no-wrap
18467 msgid ""
18468 " guestmount [...] --trace /mnt\n"
18469 "\n"
18470 msgstr ""
18471
18472 #. type: textblock
18473 #: ../fuse/guestmount.pod:69
18474 msgid "If you want to debug the program, we recommend:"
18475 msgstr ""
18476
18477 #. type: verbatim
18478 #: ../fuse/guestmount.pod:71
18479 #, no-wrap
18480 msgid ""
18481 " guestmount [...] --trace --verbose /mnt\n"
18482 "\n"
18483 msgstr ""
18484
18485 #. type: =head1
18486 #: ../fuse/guestmount.pod:73 ../rescue/virt-rescue.pod:68 ../resize/virt-resize.pod:486
18487 msgid "NOTES"
18488 msgstr ""
18489
18490 #. type: =head2
18491 #: ../fuse/guestmount.pod:75
18492 msgid "Other users cannot see the filesystem by default"
18493 msgstr ""
18494
18495 #. type: textblock
18496 #: ../fuse/guestmount.pod:77
18497 msgid ""
18498 "If you mount a filesystem as one user (eg. root), then other users will not "
18499 "be able to see it by default.  The fix is to add the FUSE C<allow_other> "
18500 "option when mounting:"
18501 msgstr ""
18502
18503 #. type: verbatim
18504 #: ../fuse/guestmount.pod:81
18505 #, no-wrap
18506 msgid ""
18507 " sudo guestmount [...] -o allow_other /mnt\n"
18508 "\n"
18509 msgstr ""
18510
18511 #. type: textblock
18512 #: ../fuse/guestmount.pod:91
18513 msgid "Add a block device or virtual machine image."
18514 msgstr ""
18515
18516 #. type: =item
18517 #: ../fuse/guestmount.pod:114
18518 msgid "B<--dir-cache-timeout N>"
18519 msgstr ""
18520
18521 #. type: textblock
18522 #: ../fuse/guestmount.pod:116
18523 msgid ""
18524 "Set the readdir cache timeout to I<N> seconds, the default being 60 "
18525 "seconds.  The readdir cache [actually, there are several semi-independent "
18526 "caches] is populated after a readdir(2) call with the stat and extended "
18527 "attributes of the files in the directory, in anticipation that they will be "
18528 "requested soon after."
18529 msgstr ""
18530
18531 #. type: textblock
18532 #: ../fuse/guestmount.pod:122
18533 msgid ""
18534 "There is also a different attribute cache implemented by FUSE (see the FUSE "
18535 "option I<-o attr_timeout>), but the FUSE cache does not anticipate future "
18536 "requests, only cache existing ones."
18537 msgstr ""
18538
18539 #. type: textblock
18540 #: ../fuse/guestmount.pod:142
18541 msgid ""
18542 "If you have untrusted raw-format guest disk images, you should use this "
18543 "option to specify the disk format.  This avoids a possible security problem "
18544 "with malicious guests (CVE-2010-3851).  See also "
18545 "L<guestfs(3)/guestfs_add_drive_opts>."
18546 msgstr ""
18547
18548 #. type: =item
18549 #: ../fuse/guestmount.pod:147
18550 msgid "B<--fuse-help>"
18551 msgstr ""
18552
18553 #. type: textblock
18554 #: ../fuse/guestmount.pod:149
18555 msgid "Display help on special FUSE options (see I<-o> below)."
18556 msgstr ""
18557
18558 #. type: textblock
18559 #: ../fuse/guestmount.pod:153
18560 msgid "Display brief help and exit."
18561 msgstr ""
18562
18563 #. type: textblock
18564 #: ../fuse/guestmount.pod:177
18565 msgid ""
18566 "Mount the named partition or logical volume on the given mountpoint B<in the "
18567 "guest> (this has nothing to do with mountpoints in the host)."
18568 msgstr ""
18569
18570 #. type: textblock
18571 #: ../fuse/guestmount.pod:180
18572 msgid ""
18573 "If the mountpoint is omitted, it defaults to C</>.  You have to mount "
18574 "something on C</>."
18575 msgstr ""
18576
18577 #. type: textblock
18578 #: ../fuse/guestmount.pod:197
18579 msgid ""
18580 "By default, we attempt to sync the guest disk when the FUSE mountpoint is "
18581 "unmounted.  If you specify this option, then we don't attempt to sync the "
18582 "disk.  See the discussion of autosync in the L<guestfs(3)> manpage."
18583 msgstr ""
18584
18585 #. type: =item
18586 #: ../fuse/guestmount.pod:202
18587 msgid "B<-o option>"
18588 msgstr ""
18589
18590 #. type: =item
18591 #: ../fuse/guestmount.pod:204
18592 msgid "B<--option option>"
18593 msgstr ""
18594
18595 #. type: textblock
18596 #: ../fuse/guestmount.pod:206
18597 msgid "Pass extra options to FUSE."
18598 msgstr ""
18599
18600 #. type: textblock
18601 #: ../fuse/guestmount.pod:208
18602 msgid ""
18603 "To get a list of all the extra options supported by FUSE, use the command "
18604 "below.  Note that only the FUSE I<-o> options can be passed, and only some "
18605 "of them are a good idea."
18606 msgstr ""
18607
18608 #. type: verbatim
18609 #: ../fuse/guestmount.pod:212
18610 #, no-wrap
18611 msgid ""
18612 " guestmount --fuse-help\n"
18613 "\n"
18614 msgstr ""
18615
18616 #. type: textblock
18617 #: ../fuse/guestmount.pod:214
18618 msgid "Some potentially useful FUSE options:"
18619 msgstr ""
18620
18621 #. type: =item
18622 #: ../fuse/guestmount.pod:218
18623 msgid "B<-o allow_other>"
18624 msgstr ""
18625
18626 #. type: textblock
18627 #: ../fuse/guestmount.pod:220
18628 msgid "Allow other users to see the filesystem."
18629 msgstr ""
18630
18631 #. type: =item
18632 #: ../fuse/guestmount.pod:222
18633 msgid "B<-o attr_timeout=N>"
18634 msgstr ""
18635
18636 #. type: textblock
18637 #: ../fuse/guestmount.pod:224
18638 msgid "Enable attribute caching by FUSE, and set the timeout to I<N> seconds."
18639 msgstr ""
18640
18641 #. type: =item
18642 #: ../fuse/guestmount.pod:226
18643 msgid "B<-o kernel_cache>"
18644 msgstr ""
18645
18646 #. type: textblock
18647 #: ../fuse/guestmount.pod:228
18648 msgid ""
18649 "Allow the kernel to cache files (reduces the number of reads that have to go "
18650 "through the L<guestfs(3)> API).  This is generally a good idea if you can "
18651 "afford the extra memory usage."
18652 msgstr ""
18653
18654 #. type: =item
18655 #: ../fuse/guestmount.pod:232
18656 msgid "B<-o uid=N> B<-o gid=N>"
18657 msgstr ""
18658
18659 #. type: textblock
18660 #: ../fuse/guestmount.pod:234
18661 msgid ""
18662 "Use these options to map all UIDs and GIDs inside the guest filesystem to "
18663 "the chosen values."
18664 msgstr ""
18665
18666 #. type: textblock
18667 #: ../fuse/guestmount.pod:243
18668 msgid ""
18669 "Add devices and mount everything read-only.  Also disallow writes and make "
18670 "the disk appear read-only to FUSE."
18671 msgstr ""
18672
18673 #. type: textblock
18674 #: ../fuse/guestmount.pod:246
18675 msgid ""
18676 "This is highly recommended if you are not going to edit the guest disk.  If "
18677 "the guest is running and this option is I<not> supplied, then there is a "
18678 "strong risk of disk corruption in the guest.  We try to prevent this from "
18679 "happening, but it is not always possible."
18680 msgstr ""
18681
18682 #. type: textblock
18683 #: ../fuse/guestmount.pod:251 ../rescue/virt-rescue.pod:171
18684 msgid "See also L<guestfish(1)/OPENING DISKS FOR READ AND WRITE>."
18685 msgstr ""
18686
18687 #. type: textblock
18688 #: ../fuse/guestmount.pod:255
18689 msgid "Enable SELinux support for the guest."
18690 msgstr ""
18691
18692 #. type: textblock
18693 #: ../fuse/guestmount.pod:261
18694 msgid "Enable verbose messages from underlying libguestfs."
18695 msgstr ""
18696
18697 #. type: textblock
18698 #: ../fuse/guestmount.pod:267
18699 msgid "Display the program version and exit."
18700 msgstr ""
18701
18702 #. type: textblock
18703 #: ../fuse/guestmount.pod:276 ../fuse/guestmount.pod:299 ../rescue/virt-rescue.pod:197 ../rescue/virt-rescue.pod:280
18704 msgid "See L<guestfish(1)/OPENING DISKS FOR READ AND WRITE>."
18705 msgstr ""
18706
18707 #. type: =item
18708 #: ../fuse/guestmount.pod:280
18709 msgid "B<--trace>"
18710 msgstr ""
18711
18712 #. type: textblock
18713 #: ../fuse/guestmount.pod:282
18714 msgid "Trace libguestfs calls and entry into each FUSE function."
18715 msgstr ""
18716
18717 #. type: textblock
18718 #: ../fuse/guestmount.pod:284
18719 msgid "This also stops the daemon from forking into the background."
18720 msgstr ""
18721
18722 #. type: textblock
18723 #: ../fuse/guestmount.pod:305
18724 msgid ""
18725 "L<guestfish(1)>, L<virt-inspector(1)>, L<virt-cat(1)>, L<virt-edit(1)>, "
18726 "L<virt-tar(1)>, L<guestfs(3)>, L<http://libguestfs.org/>, "
18727 "L<http://fuse.sf.net/>."
18728 msgstr ""
18729
18730 #. type: textblock
18731 #: ../fuse/guestmount.pod:320
18732 msgid "Copyright (C) 2009-2010 Red Hat Inc.  L<http://libguestfs.org/>"
18733 msgstr ""
18734
18735 #. type: textblock
18736 #: ../inspector/virt-inspector.pod:5
18737 msgid ""
18738 "virt-inspector - Display operating system version and other information "
18739 "about a virtual machine"
18740 msgstr ""
18741
18742 #. type: verbatim
18743 #: ../inspector/virt-inspector.pod:9
18744 #, no-wrap
18745 msgid ""
18746 " virt-inspector [--options] -d domname\n"
18747 "\n"
18748 msgstr ""
18749
18750 #. type: verbatim
18751 #: ../inspector/virt-inspector.pod:11
18752 #, no-wrap
18753 msgid ""
18754 " virt-inspector [--options] -a disk.img [-a disk.img ...]\n"
18755 "\n"
18756 msgstr ""
18757
18758 #. type: verbatim
18759 #: ../inspector/virt-inspector.pod:15
18760 #, no-wrap
18761 msgid ""
18762 " virt-inspector domname\n"
18763 "\n"
18764 msgstr ""
18765
18766 #. type: verbatim
18767 #: ../inspector/virt-inspector.pod:17 ../inspector/virt-inspector.pod:141
18768 #, no-wrap
18769 msgid ""
18770 " virt-inspector disk.img [disk.img ...]\n"
18771 "\n"
18772 msgstr ""
18773
18774 #. type: textblock
18775 #: ../inspector/virt-inspector.pod:21
18776 msgid ""
18777 "B<virt-inspector> examines a virtual machine or disk image and tries to "
18778 "determine the version of the operating system and other information about "
18779 "the virtual machine."
18780 msgstr ""
18781
18782 #. type: textblock
18783 #: ../inspector/virt-inspector.pod:25
18784 msgid "Virt-inspector produces XML output for feeding into other programs."
18785 msgstr ""
18786
18787 #. type: textblock
18788 #: ../inspector/virt-inspector.pod:27
18789 msgid ""
18790 "In the normal usage, use C<virt-inspector -d domname> where C<domname> is "
18791 "the libvirt domain (see: C<virsh list --all>)."
18792 msgstr ""
18793
18794 #. type: textblock
18795 #: ../inspector/virt-inspector.pod:30
18796 msgid ""
18797 "You can also run virt-inspector directly on disk images from a single "
18798 "virtual machine.  Use C<virt-inspector -a disk.img>.  In rare cases a domain "
18799 "has several block devices, in which case you should list several I<-a> "
18800 "options one after another, with the first corresponding to the guest's "
18801 "C</dev/sda>, the second to the guest's C</dev/sdb> and so on."
18802 msgstr ""
18803
18804 #. type: textblock
18805 #: ../inspector/virt-inspector.pod:37
18806 msgid ""
18807 "You can also run virt-inspector on install disks, live CDs, bootable USB "
18808 "keys and similar."
18809 msgstr ""
18810
18811 #. type: textblock
18812 #: ../inspector/virt-inspector.pod:40
18813 msgid ""
18814 "Virt-inspector can only inspect and report upon I<one domain at a time>.  To "
18815 "inspect several virtual machines, you have to run virt-inspector several "
18816 "times (for example, from a shell script for-loop)."
18817 msgstr ""
18818
18819 #. type: textblock
18820 #: ../inspector/virt-inspector.pod:45
18821 msgid ""
18822 "Because virt-inspector needs direct access to guest images, it won't "
18823 "normally work over remote libvirt connections."
18824 msgstr ""
18825
18826 #. type: textblock
18827 #: ../inspector/virt-inspector.pod:48
18828 msgid ""
18829 "All of the information available from virt-inspector is also available "
18830 "through the core libguestfs inspection API (see L<guestfs(3)/INSPECTION>).  "
18831 "The same information can also be fetched using guestfish or via libguestfs "
18832 "bindings in many programming languages (see L<guestfs(3)/USING LIBGUESTFS "
18833 "WITH OTHER PROGRAMMING LANGUAGES>)."
18834 msgstr ""
18835
18836 #. type: textblock
18837 #: ../inspector/virt-inspector.pod:81
18838 msgid ""
18839 "Libvirt is only used if you specify a C<domname> on the command line.  If "
18840 "you specify guest block devices directly (I<-a>), then libvirt is not used "
18841 "at all."
18842 msgstr ""
18843
18844 #. type: textblock
18845 #: ../inspector/virt-inspector.pod:94
18846 msgid ""
18847 "When prompting for keys and passphrases, virt-inspector normally turns "
18848 "echoing off so you cannot see what you are typing.  If you are not worried "
18849 "about Tempest attacks and there is no one else in the room you can specify "
18850 "this flag to see what you are typing."
18851 msgstr ""
18852
18853 #. type: textblock
18854 #: ../inspector/virt-inspector.pod:103 ../tools/virt-list-filesystems.pl:93 ../tools/virt-list-partitions.pl:94 ../tools/virt-tar.pl:143 ../tools/virt-win-reg.pl:144
18855 msgid ""
18856 "Specify the format of disk images given on the command line.  If this is "
18857 "omitted then the format is autodetected from the content of the disk image."
18858 msgstr ""
18859
18860 #. type: textblock
18861 #: ../inspector/virt-inspector.pod:107 ../tools/virt-list-filesystems.pl:97 ../tools/virt-list-partitions.pl:98 ../tools/virt-tar.pl:147 ../tools/virt-win-reg.pl:148
18862 msgid ""
18863 "If disk images are requested from libvirt, then this program asks libvirt "
18864 "for this information.  In this case, the value of the format parameter is "
18865 "ignored."
18866 msgstr ""
18867
18868 #. type: textblock
18869 #: ../inspector/virt-inspector.pod:111 ../resize/virt-resize.pod:314 ../resize/virt-resize.pod:400 ../tools/virt-list-filesystems.pl:101 ../tools/virt-list-partitions.pl:102 ../tools/virt-tar.pl:151 ../tools/virt-win-reg.pl:152
18870 msgid ""
18871 "If working with untrusted raw-format guest disk images, you should ensure "
18872 "the format is always specified."
18873 msgstr ""
18874
18875 #. type: textblock
18876 #: ../inspector/virt-inspector.pod:139
18877 msgid "Previous versions of virt-inspector allowed you to write either:"
18878 msgstr ""
18879
18880 #. type: verbatim
18881 #: ../inspector/virt-inspector.pod:145
18882 #, no-wrap
18883 msgid ""
18884 " virt-inspector guestname\n"
18885 "\n"
18886 msgstr ""
18887
18888 #. type: =head1
18889 #: ../inspector/virt-inspector.pod:153
18890 msgid "XML FORMAT"
18891 msgstr ""
18892
18893 #. type: textblock
18894 #: ../inspector/virt-inspector.pod:155
18895 msgid ""
18896 "The virt-inspector XML is described precisely in a RELAX NG schema file "
18897 "C<virt-inspector.rng> which is supplied with libguestfs.  This section is "
18898 "just an overview."
18899 msgstr ""
18900
18901 #. type: textblock
18902 #: ../inspector/virt-inspector.pod:159
18903 msgid ""
18904 "The top-level element is E<lt>operatingsystemsE<gt>, and it contains one or "
18905 "more E<lt>operatingsystemE<gt> elements.  You would only see more than one "
18906 "E<lt>operatingsystemE<gt> element if the virtual machine is multi-boot, "
18907 "which is vanishingly rare in real world VMs."
18908 msgstr ""
18909
18910 #. type: =head2
18911 #: ../inspector/virt-inspector.pod:164
18912 msgid "E<lt>operatingsystemE<gt>"
18913 msgstr ""
18914
18915 #. type: textblock
18916 #: ../inspector/virt-inspector.pod:166
18917 msgid ""
18918 "In the E<lt>operatingsystemE<gt> tag are various optional fields that "
18919 "describe the operating system, its architecture, the descriptive \"product "
18920 "name\" string, the type of OS and so on, as in this example:"
18921 msgstr ""
18922
18923 #. type: verbatim
18924 #: ../inspector/virt-inspector.pod:170
18925 #, no-wrap
18926 msgid ""
18927 " <operatingsystems>\n"
18928 "   <operatingsystem>\n"
18929 "     <root>/dev/sda2</root>\n"
18930 "     <name>windows</name>\n"
18931 "     <arch>i386</arch>\n"
18932 "     <distro>windows</distro>\n"
18933 "     <product_name>Windows 7 Enterprise</product_name>\n"
18934 "     <product_variant>Client</product_variant>\n"
18935 "     <major_version>6</major_version>\n"
18936 "     <minor_version>1</minor_version>\n"
18937 "     <windows_systemroot>/Windows</windows_systemroot>\n"
18938 "     <format>installed</format>\n"
18939 "\n"
18940 msgstr ""
18941
18942 #. type: textblock
18943 #: ../inspector/virt-inspector.pod:183
18944 msgid ""
18945 "In brief, E<lt>nameE<gt> is the class of operating system (something like "
18946 "C<linux> or C<windows>), E<lt>distroE<gt> is the distribution (eg. C<fedora> "
18947 "but many other distros are recognized) and E<lt>archE<gt> is the guest "
18948 "architecture.  The other fields are fairly self-explanatory, but because "
18949 "these fields are taken directly from the libguestfs inspection API you can "
18950 "find precise information from L<guestfs(3)/INSPECTION>."
18951 msgstr ""
18952
18953 #. type: textblock
18954 #: ../inspector/virt-inspector.pod:191
18955 msgid ""
18956 "The E<lt>rootE<gt> element is the root filesystem device, but from the point "
18957 "of view of libguestfs (block devices may have completely different names "
18958 "inside the VM itself)."
18959 msgstr ""
18960
18961 #. type: =head2
18962 #: ../inspector/virt-inspector.pod:195
18963 msgid "E<lt>mountpointsE<gt>"
18964 msgstr ""
18965
18966 #. type: textblock
18967 #: ../inspector/virt-inspector.pod:197
18968 msgid ""
18969 "Un*x-like guests typically have multiple filesystems which are mounted at "
18970 "various mountpoints, and these are described in the E<lt>mountpointsE<gt> "
18971 "element which looks like this:"
18972 msgstr ""
18973
18974 #. type: verbatim
18975 #: ../inspector/virt-inspector.pod:201
18976 #, no-wrap
18977 msgid ""
18978 " <operatingsystems>\n"
18979 "   <operatingsystem>\n"
18980 "     ...\n"
18981 "     <mountpoints>\n"
18982 "       <mountpoint dev=\"/dev/vg_f13x64/lv_root\">/</mountpoint>\n"
18983 "       <mountpoint dev=\"/dev/sda1\">/boot</mountpoint>\n"
18984 "     </mountpoints>\n"
18985 "\n"
18986 msgstr ""
18987
18988 #. type: textblock
18989 #: ../inspector/virt-inspector.pod:209
18990 msgid ""
18991 "As with E<lt>rootE<gt>, devices are from the point of view of libguestfs, "
18992 "and may have completely different names inside the guest.  Only mountable "
18993 "filesystems appear in this list, not things like swap devices."
18994 msgstr ""
18995
18996 #. type: =head2
18997 #: ../inspector/virt-inspector.pod:214
18998 msgid "E<lt>filesystemsE<gt>"
18999 msgstr ""
19000
19001 #. type: textblock
19002 #: ../inspector/virt-inspector.pod:216
19003 msgid ""
19004 "E<lt>filesystemsE<gt> is like E<lt>mountpointsE<gt> but covers I<all> "
19005 "filesystems belonging to the guest, including swap and empty partitions.  "
19006 "(In the rare case of a multi-boot guest, it covers filesystems belonging to "
19007 "this OS or shared with this OS and other OSes)."
19008 msgstr ""
19009
19010 #. type: textblock
19011 #: ../inspector/virt-inspector.pod:222
19012 msgid "You might see something like this:"
19013 msgstr ""
19014
19015 #. type: verbatim
19016 #: ../inspector/virt-inspector.pod:224
19017 #, no-wrap
19018 msgid ""
19019 " <operatingsystems>\n"
19020 "   <operatingsystem>\n"
19021 "     ...\n"
19022 "     <filesystems>\n"
19023 "       <filesystem dev=\"/dev/vg_f13x64/lv_root\">\n"
19024 "         <type>ext4</type>\n"
19025 "         <label>Fedora-13-x86_64</label>\n"
19026 "         <uuid>e6a4db1e-15c2-477b-ac2a-699181c396aa</uuid>\n"
19027 "       </filesystem>\n"
19028 "\n"
19029 msgstr ""
19030
19031 #. type: textblock
19032 #: ../inspector/virt-inspector.pod:234
19033 msgid ""
19034 "The optional elements within E<lt>filesystemE<gt> are the filesystem type, "
19035 "the label, and the UUID."
19036 msgstr ""
19037
19038 #. type: =head2
19039 #: ../inspector/virt-inspector.pod:237
19040 msgid "E<lt>applicationsE<gt>"
19041 msgstr ""
19042
19043 #. type: textblock
19044 #: ../inspector/virt-inspector.pod:239
19045 msgid ""
19046 "The related elements E<lt>package_formatE<gt>, E<lt>package_managementE<gt> "
19047 "and E<lt>applicationsE<gt> describe applications installed in the virtual "
19048 "machine."
19049 msgstr ""
19050
19051 #. type: textblock
19052 #: ../inspector/virt-inspector.pod:243
19053 msgid ""
19054 "E<lt>package_formatE<gt>, if present, describes the packaging system used.  "
19055 "Typical values would be C<rpm> and C<deb>."
19056 msgstr ""
19057
19058 #. type: textblock
19059 #: ../inspector/virt-inspector.pod:246
19060 msgid ""
19061 "E<lt>package_managementE<gt>, if present, describes the package manager.  "
19062 "Typical values include C<yum>, C<up2date> and C<apt>"
19063 msgstr ""
19064
19065 #. type: textblock
19066 #: ../inspector/virt-inspector.pod:249
19067 msgid "E<lt>applicationsE<gt> lists the packages or applications installed."
19068 msgstr ""
19069
19070 #. type: verbatim
19071 #: ../inspector/virt-inspector.pod:252
19072 #, no-wrap
19073 msgid ""
19074 " <operatingsystems>\n"
19075 "   <operatingsystem>\n"
19076 "     ...\n"
19077 "     <applications>\n"
19078 "       <application>\n"
19079 "         <name>coreutils</name>\n"
19080 "         <version>8.5</version>\n"
19081 "         <release>1</release>\n"
19082 "       </application>\n"
19083 "\n"
19084 msgstr ""
19085
19086 #. type: textblock
19087 #: ../inspector/virt-inspector.pod:262
19088 msgid ""
19089 "The version and release fields may not be available for some types guests.  "
19090 "Other fields are possible, see "
19091 "L<guestfs(3)/guestfs_inspect_list_applications>."
19092 msgstr ""
19093
19094 #. type: =head2
19095 #: ../inspector/virt-inspector.pod:266
19096 msgid "E<lt>drive_mappingsE<gt>"
19097 msgstr ""
19098
19099 #. type: textblock
19100 #: ../inspector/virt-inspector.pod:268
19101 msgid ""
19102 "For operating systems like Windows which use drive letters, virt-inspector "
19103 "is able to find out how drive letters map to filesystems."
19104 msgstr ""
19105
19106 #. type: verbatim
19107 #: ../inspector/virt-inspector.pod:272
19108 #, no-wrap
19109 msgid ""
19110 " <operatingsystems>\n"
19111 "   <operatingsystem>\n"
19112 "     ...\n"
19113 "     <drive_mappings>\n"
19114 "       <drive_mapping name=\"C\">/dev/sda2</drive_mapping>\n"
19115 "       <drive_mapping name=\"E\">/dev/sdb1</drive_mapping>\n"
19116 "     </drive_mappings>\n"
19117 "\n"
19118 msgstr ""
19119
19120 #. type: textblock
19121 #: ../inspector/virt-inspector.pod:280
19122 msgid ""
19123 "In the example above, drive C maps to the filesystem on the second partition "
19124 "on the first disk, and drive E maps to the filesystem on the first partition "
19125 "on the second disk."
19126 msgstr ""
19127
19128 #. type: textblock
19129 #: ../inspector/virt-inspector.pod:284
19130 msgid ""
19131 "Note that this only covers permanent local filesystem mappings, not things "
19132 "like network shares.  Furthermore NTFS volume mount points may not be listed "
19133 "here."
19134 msgstr ""
19135
19136 #. type: =head2
19137 #: ../inspector/virt-inspector.pod:288
19138 msgid "E<lt>iconE<gt>"
19139 msgstr ""
19140
19141 #. type: textblock
19142 #: ../inspector/virt-inspector.pod:290
19143 msgid ""
19144 "Virt-inspector is sometimes able to extract an icon or logo for the guest.  "
19145 "The icon is returned as base64-encoded PNG data.  Note that the icon can be "
19146 "very large and high quality."
19147 msgstr ""
19148
19149 #. type: verbatim
19150 #: ../inspector/virt-inspector.pod:294
19151 #, no-wrap
19152 msgid ""
19153 " <operatingsystems>\n"
19154 "   <operatingsystem>\n"
19155 "     ...\n"
19156 "     <icon>\n"
19157 "       iVBORw0KGgoAAAANSUhEUgAAAGAAAABg[.......]\n"
19158 "       [... many lines of base64 data ...]\n"
19159 "     </icon>\n"
19160 "\n"
19161 msgstr ""
19162
19163 #. type: textblock
19164 #: ../inspector/virt-inspector.pod:302
19165 msgid ""
19166 "To display the icon, you have to extract it and convert the base64 data back "
19167 "to a binary file.  Use an XPath query or simply an editor to extract the "
19168 "data, then use the coreutils L<base64(1)> program to do the conversion back "
19169 "to a PNG file:"
19170 msgstr ""
19171
19172 #. type: verbatim
19173 #: ../inspector/virt-inspector.pod:307
19174 #, no-wrap
19175 msgid ""
19176 " base64 -i -d < icon.data > icon.png\n"
19177 "\n"
19178 msgstr ""
19179
19180 #. type: =head2
19181 #: ../inspector/virt-inspector.pod:309
19182 msgid "INSPECTING INSTALL DISKS, LIVE CDs"
19183 msgstr ""
19184
19185 #. type: textblock
19186 #: ../inspector/virt-inspector.pod:311
19187 msgid ""
19188 "Virt-inspector can detect some operating system installers on install disks, "
19189 "live CDs, bootable USB keys and more."
19190 msgstr ""
19191
19192 #. type: textblock
19193 #: ../inspector/virt-inspector.pod:314
19194 msgid ""
19195 "In this case the E<lt>formatE<gt> tag will contain C<installer> and other "
19196 "fields may be present to indicate a live CD, network installer, or one part "
19197 "of a multipart CD.  For example:"
19198 msgstr ""
19199
19200 #. type: verbatim
19201 #: ../inspector/virt-inspector.pod:318
19202 #, no-wrap
19203 msgid ""
19204 " <operatingsystems>\n"
19205 "   <operatingsystem>\n"
19206 "     <root>/dev/sda</root>\n"
19207 "     <name>linux</name>\n"
19208 "     <arch>i386</arch>\n"
19209 "     <distro>ubuntu</distro>\n"
19210 "     <product_name>Ubuntu 10.10 &quot;Maverick "
19211 "Meerkat&quot;</product_name>\n"
19212 "     <major_version>10</major_version>\n"
19213 "     <minor_version>10</minor_version>\n"
19214 "     <format>installer</format>\n"
19215 "     <live/>\n"
19216 "\n"
19217 msgstr ""
19218
19219 #. type: =head1
19220 #: ../inspector/virt-inspector.pod:330
19221 msgid "USING XPATH"
19222 msgstr ""
19223
19224 #. type: textblock
19225 #: ../inspector/virt-inspector.pod:332
19226 msgid ""
19227 "You can use the XPath query language, and/or the xpath tool, in order to "
19228 "select parts of the XML."
19229 msgstr ""
19230
19231 #. type: verbatim
19232 #: ../inspector/virt-inspector.pod:337
19233 #, no-wrap
19234 msgid ""
19235 " $ virt-inspector -d Guest | xpath //filesystems\n"
19236 " Found 1 nodes:\n"
19237 " -- NODE --\n"
19238 " <filesystems>\n"
19239 "      <filesystem dev=\"/dev/vg_f13x64/lv_root\">\n"
19240 "        <type>ext4</type>\n"
19241 " [etc]\n"
19242 "\n"
19243 msgstr ""
19244
19245 #. type: verbatim
19246 #: ../inspector/virt-inspector.pod:345
19247 #, no-wrap
19248 msgid ""
19249 " $ virt-inspector -d Guest | \\\n"
19250 "     xpath \"string(//filesystem[@dev='/dev/sda1']/type)\"\n"
19251 " Query didn't return a nodeset. Value: ext4\n"
19252 "\n"
19253 msgstr ""
19254
19255 #. type: =head1
19256 #: ../inspector/virt-inspector.pod:356
19257 msgid "OLD VERSIONS OF VIRT-INSPECTOR"
19258 msgstr ""
19259
19260 #. type: textblock
19261 #: ../inspector/virt-inspector.pod:358
19262 msgid ""
19263 "Early versions of libguestfs shipped with a different virt-inspector program "
19264 "written in Perl (the current version is written in C).  The XML output of "
19265 "the Perl virt-inspector was different and it could also output in other "
19266 "formats like text."
19267 msgstr ""
19268
19269 #. type: textblock
19270 #: ../inspector/virt-inspector.pod:363
19271 msgid "The old virt-inspector is no longer supported or shipped with libguestfs."
19272 msgstr ""
19273
19274 #. type: textblock
19275 #: ../inspector/virt-inspector.pod:366
19276 msgid ""
19277 "To confuse matters further, in Red Hat Enterprise Linux 6 we ship two "
19278 "versions of virt-inspector with different names:"
19279 msgstr ""
19280
19281 #. type: verbatim
19282 #: ../inspector/virt-inspector.pod:369
19283 #, no-wrap
19284 msgid ""
19285 " virt-inspector     Old Perl version.\n"
19286 " virt-inspector2    New C version.\n"
19287 "\n"
19288 msgstr ""
19289
19290 #. type: textblock
19291 #: ../inspector/virt-inspector.pod:374
19292 msgid ""
19293 "L<guestfs(3)>, L<guestfish(1)>, L<http://www.w3.org/TR/xpath/>, "
19294 "L<base64(1)>, L<http://libguestfs.org/>."
19295 msgstr ""
19296
19297 #. type: textblock
19298 #: ../inspector/virt-inspector.pod:390
19299 msgid "Matthew Booth L<mbooth@redhat.com>"
19300 msgstr ""
19301
19302 #. type: textblock
19303 #: ../java/examples/guestfs-java.pod:5
19304 msgid "guestfs-java - How to use libguestfs from Java"
19305 msgstr ""
19306
19307 #. type: verbatim
19308 #: ../java/examples/guestfs-java.pod:9
19309 #, no-wrap
19310 msgid ""
19311 " import com.redhat.et.libguestfs.*;\n"
19312 " \n"
19313 msgstr ""
19314
19315 #. type: verbatim
19316 #: ../java/examples/guestfs-java.pod:11
19317 #, no-wrap
19318 msgid ""
19319 " GuestFS g = new GuestFS ();\n"
19320 " g.add_drive_opts (\"disk.img\", null);\n"
19321 " g.launch ();\n"
19322 "\n"
19323 msgstr ""
19324
19325 #. type: textblock
19326 #: ../java/examples/guestfs-java.pod:17
19327 msgid ""
19328 "This manual page documents how to call libguestfs from the Java programming "
19329 "language.  This page just documents the differences from the C API and gives "
19330 "some examples.  If you are not familiar with using libguestfs, you also need "
19331 "to read L<guestfs(3)>."
19332 msgstr ""
19333
19334 #. type: =head2
19335 #: ../java/examples/guestfs-java.pod:22 ../ocaml/examples/guestfs-ocaml.pod:53
19336 msgid "CLOSING THE HANDLE"
19337 msgstr ""
19338
19339 #. type: textblock
19340 #: ../java/examples/guestfs-java.pod:24
19341 msgid ""
19342 "The handle is closed when it is reaped by the garbage collector.  Because "
19343 "libguestfs handles include a lot of state, it is also possible to close (and "
19344 "hence free) them explicitly by calling the C<close> method."
19345 msgstr ""
19346
19347 #. type: =head2
19348 #: ../java/examples/guestfs-java.pod:29 ../ocaml/examples/guestfs-ocaml.pod:60 ../python/examples/guestfs-python.pod:21 ../ruby/examples/guestfs-ruby.pod:22
19349 msgid "EXCEPTIONS"
19350 msgstr ""
19351
19352 #. type: textblock
19353 #: ../java/examples/guestfs-java.pod:31
19354 msgid ""
19355 "Errors from libguestfs functions are mapped into the C<LibGuestFSException> "
19356 "exception.  This has a single parameter which is the error message (a "
19357 "C<String>)."
19358 msgstr ""
19359
19360 #. type: textblock
19361 #: ../java/examples/guestfs-java.pod:35
19362 msgid "Calling any method on a closed handle raises the same exception."
19363 msgstr ""
19364
19365 #. type: textblock
19366 #: ../java/examples/guestfs-java.pod:47
19367 msgid ""
19368 "L<guestfs(3)>, L<guestfs-examples(3)>, L<guestfs-ocaml(3)>, "
19369 "L<guestfs-perl(3)>, L<guestfs-python(3)>, L<guestfs-recipes(1)>, "
19370 "L<guestfs-ruby(3)>, L<http://libguestfs.org/>, L<http://caml.inria.fr/>."
19371 msgstr ""
19372
19373 #. type: textblock
19374 #: ../java/examples/guestfs-java.pod:63 ../perl/examples/guestfs-perl.pod:57
19375 msgid "Copyright (C) 2011 Red Hat Inc. L<http://libguestfs.org/>"
19376 msgstr ""
19377
19378 #. type: textblock
19379 #: ../ocaml/examples/guestfs-ocaml.pod:5
19380 msgid "guestfs-ocaml - How to use libguestfs from OCaml"
19381 msgstr ""
19382
19383 #. type: textblock
19384 #: ../ocaml/examples/guestfs-ocaml.pod:9
19385 msgid "Module style:"
19386 msgstr ""
19387
19388 #. type: verbatim
19389 #: ../ocaml/examples/guestfs-ocaml.pod:11
19390 #, no-wrap
19391 msgid ""
19392 " let g = Guestfs.create () in\n"
19393 " Guestfs.add_drive_opts g ~format:\"raw\" ~readonly:true \"disk.img\";\n"
19394 " Guestfs.launch g;\n"
19395 "\n"
19396 msgstr ""
19397
19398 #. type: textblock
19399 #: ../ocaml/examples/guestfs-ocaml.pod:15
19400 msgid "Object-oriented style:"
19401 msgstr ""
19402
19403 #. type: verbatim
19404 #: ../ocaml/examples/guestfs-ocaml.pod:17
19405 #, no-wrap
19406 msgid ""
19407 " let g = new Guestfs.guestfs () in\n"
19408 " g#add_drive_opts ~format:\"raw\" ~readonly:true \"disk.img\";\n"
19409 " g#launch ();\n"
19410 "\n"
19411 msgstr ""
19412
19413 #. type: verbatim
19414 #: ../ocaml/examples/guestfs-ocaml.pod:21
19415 #, no-wrap
19416 msgid ""
19417 " ocamlfind opt prog.ml -package guestfs -linkpkg -o prog\n"
19418 "or:\n"
19419 " ocamlopt -I +guestfs mlguestfs.cmxa prog.ml -o prog\n"
19420 "\n"
19421 msgstr ""
19422
19423 #. type: textblock
19424 #: ../ocaml/examples/guestfs-ocaml.pod:27
19425 msgid ""
19426 "This manual page documents how to call libguestfs from the OCaml programming "
19427 "language.  This page just documents the differences from the C API and gives "
19428 "some examples.  If you are not familiar with using libguestfs, you also need "
19429 "to read L<guestfs(3)>."
19430 msgstr ""
19431
19432 #. type: =head2
19433 #: ../ocaml/examples/guestfs-ocaml.pod:32
19434 msgid "PROGRAMMING STYLES"
19435 msgstr ""
19436
19437 #. type: textblock
19438 #: ../ocaml/examples/guestfs-ocaml.pod:34
19439 msgid ""
19440 "There are two different programming styles supported by the OCaml bindings.  "
19441 "You can use a module style, with each C function mapped to an OCaml "
19442 "function:"
19443 msgstr ""
19444
19445 #. type: verbatim
19446 #: ../ocaml/examples/guestfs-ocaml.pod:38
19447 #, no-wrap
19448 msgid ""
19449 " int guestfs_set_verbose (guestfs_h *g, int flag);\n"
19450 "\n"
19451 msgstr ""
19452
19453 #. type: textblock
19454 #: ../ocaml/examples/guestfs-ocaml.pod:40
19455 msgid "becomes:"
19456 msgstr ""
19457
19458 #. type: verbatim
19459 #: ../ocaml/examples/guestfs-ocaml.pod:42
19460 #, no-wrap
19461 msgid ""
19462 " val Guestfs.set_verbose : Guestfs.t -> bool -> unit\n"
19463 "\n"
19464 msgstr ""
19465
19466 #. type: textblock
19467 #: ../ocaml/examples/guestfs-ocaml.pod:44
19468 msgid ""
19469 "Alternately you can use an object-oriented style, calling methods on the "
19470 "class C<Guestfs.guestfs>:"
19471 msgstr ""
19472
19473 #. type: verbatim
19474 #: ../ocaml/examples/guestfs-ocaml.pod:47
19475 #, no-wrap
19476 msgid ""
19477 " method set_verbose : bool -> unit\n"
19478 "\n"
19479 msgstr ""
19480
19481 #. type: textblock
19482 #: ../ocaml/examples/guestfs-ocaml.pod:49
19483 msgid ""
19484 "The object-oriented style is usually briefer, and the minor performance "
19485 "penalty isn't noticable in the general overhead of performing libguestfs "
19486 "functions."
19487 msgstr ""
19488
19489 #. type: textblock
19490 #: ../ocaml/examples/guestfs-ocaml.pod:55
19491 msgid ""
19492 "The handle is closed when it is reaped by the garbage collector.  Because "
19493 "libguestfs handles include a lot of state, it is also possible to close (and "
19494 "hence free) them explicitly by calling C<Guestfs.close> or the C<#close> "
19495 "method."
19496 msgstr ""
19497
19498 #. type: textblock
19499 #: ../ocaml/examples/guestfs-ocaml.pod:62
19500 msgid ""
19501 "Errors from libguestfs functions are mapped into the C<Guestfs.Error> "
19502 "exception.  This has a single parameter which is the error message (a "
19503 "string)."
19504 msgstr ""
19505
19506 #. type: textblock
19507 #: ../ocaml/examples/guestfs-ocaml.pod:66
19508 msgid ""
19509 "Calling any function/method on a closed handle raises "
19510 "C<Guestfs.Handle_closed>.  The single parameter is the name of the function "
19511 "that you called."
19512 msgstr ""
19513
19514 #. type: textblock
19515 #: ../ocaml/examples/guestfs-ocaml.pod:80
19516 msgid ""
19517 "L<guestfs(3)>, L<guestfs-examples(3)>, L<guestfs-java(3)>, "
19518 "L<guestfs-perl(3)>, L<guestfs-python(3)>, L<guestfs-recipes(1)>, "
19519 "L<guestfs-ruby(3)>, L<http://libguestfs.org/>, L<http://caml.inria.fr/>."
19520 msgstr ""
19521
19522 #. type: textblock
19523 #: ../perl/examples/guestfs-perl.pod:5
19524 msgid "guestfs-perl - How to use libguestfs from Perl"
19525 msgstr ""
19526
19527 #. type: verbatim
19528 #: ../perl/examples/guestfs-perl.pod:9
19529 #, no-wrap
19530 msgid ""
19531 " use Sys::Guestfs;\n"
19532 " \n"
19533 msgstr ""
19534
19535 #. type: verbatim
19536 #: ../perl/examples/guestfs-perl.pod:11
19537 #, no-wrap
19538 msgid ""
19539 " my $h = Sys::Guestfs->new ();\n"
19540 " $h->add_drive_opts ('guest.img', format => 'raw');\n"
19541 " $h->launch ();\n"
19542 " $h->mount_options ('', '/dev/sda1', '/');\n"
19543 " $h->touch ('/hello');\n"
19544 " $h->sync ();\n"
19545 "\n"
19546 msgstr ""
19547
19548 #. type: textblock
19549 #: ../perl/examples/guestfs-perl.pod:20
19550 msgid ""
19551 "This manual page documents how to call libguestfs from the Perl programming "
19552 "language.  This page just documents the differences from the C API and gives "
19553 "some examples.  If you are not familiar with using libguestfs, you also need "
19554 "to read L<guestfs(3)>.  To read the full Perl API, see L<Sys::Guestfs(3)>."
19555 msgstr ""
19556
19557 #. type: =head2
19558 #: ../perl/examples/guestfs-perl.pod:26
19559 msgid "ERRORS"
19560 msgstr ""
19561
19562 #. type: textblock
19563 #: ../perl/examples/guestfs-perl.pod:28
19564 msgid ""
19565 "Errors from libguestfs functions turn into calls to C<croak> (see "
19566 "L<Carp(3)>)."
19567 msgstr ""
19568
19569 #. type: textblock
19570 #: ../perl/examples/guestfs-perl.pod:41
19571 msgid ""
19572 "L<Sys::Guestfs(3)>, L<guestfs(3)>, L<guestfs-examples(3)>, "
19573 "L<guestfs-java(3)>, L<guestfs-ocaml(3)>, L<guestfs-python(3)>, "
19574 "L<guestfs-recipes(1)>, L<guestfs-ruby(3)>, L<http://libguestfs.org/>."
19575 msgstr ""
19576
19577 #. type: textblock
19578 #: ../python/examples/guestfs-python.pod:5
19579 msgid "guestfs-python - How to use libguestfs from Python"
19580 msgstr ""
19581
19582 #. type: verbatim
19583 #: ../python/examples/guestfs-python.pod:9
19584 #, no-wrap
19585 msgid ""
19586 " import guestfs\n"
19587 " g = guestfs.GuestFS ()\n"
19588 " g.add_drive_opts (\"disk.img\", format=\"raw\", readonly=1)\n"
19589 " g.launch\n"
19590 "\n"
19591 msgstr ""
19592
19593 #. type: textblock
19594 #: ../python/examples/guestfs-python.pod:16
19595 msgid ""
19596 "This manual page documents how to call libguestfs from the Python "
19597 "programming language.  This page just documents the differences from the C "
19598 "API and gives some examples.  If you are not familiar with using libguestfs, "
19599 "you also need to read L<guestfs(3)>."
19600 msgstr ""
19601
19602 #. type: textblock
19603 #: ../python/examples/guestfs-python.pod:23
19604 msgid ""
19605 "Errors from libguestfs functions are mapped into C<RuntimeException> with a "
19606 "single string argument which is the error message."
19607 msgstr ""
19608
19609 #. type: =head2
19610 #: ../python/examples/guestfs-python.pod:26
19611 msgid "MORE DOCUMENTATION"
19612 msgstr ""
19613
19614 #. type: textblock
19615 #: ../python/examples/guestfs-python.pod:28
19616 msgid "Type:"
19617 msgstr ""
19618
19619 #. type: verbatim
19620 #: ../python/examples/guestfs-python.pod:30
19621 #, no-wrap
19622 msgid ""
19623 " $ python\n"
19624 " >>> import guestfs\n"
19625 " >>> help (guestfs)\n"
19626 "\n"
19627 msgstr ""
19628
19629 #. type: textblock
19630 #: ../python/examples/guestfs-python.pod:44
19631 msgid ""
19632 "L<guestfs(3)>, L<guestfs-examples(3)>, L<guestfs-java(3)>, "
19633 "L<guestfs-ocaml(3)>, L<guestfs-perl(3)>, L<guestfs-recipes(1)>, "
19634 "L<guestfs-ruby(3)>, L<http://libguestfs.org/>."
19635 msgstr ""
19636
19637 #. type: textblock
19638 #: ../rescue/virt-rescue.pod:5
19639 msgid "virt-rescue - Run a rescue shell on a virtual machine"
19640 msgstr ""
19641
19642 #. type: verbatim
19643 #: ../rescue/virt-rescue.pod:9
19644 #, no-wrap
19645 msgid ""
19646 " virt-rescue [--options] -d domname\n"
19647 "\n"
19648 msgstr ""
19649
19650 #. type: verbatim
19651 #: ../rescue/virt-rescue.pod:11
19652 #, no-wrap
19653 msgid ""
19654 " virt-rescue [--options] -a disk.img [-a disk.img ...]\n"
19655 "\n"
19656 msgstr ""
19657
19658 #. type: verbatim
19659 #: ../rescue/virt-rescue.pod:15
19660 #, no-wrap
19661 msgid ""
19662 " virt-rescue [--options] domname\n"
19663 "\n"
19664 msgstr ""
19665
19666 #. type: verbatim
19667 #: ../rescue/virt-rescue.pod:17
19668 #, no-wrap
19669 msgid ""
19670 " virt-rescue [--options] disk.img [disk.img ...]\n"
19671 "\n"
19672 msgstr ""
19673
19674 #. type: textblock
19675 #: ../rescue/virt-rescue.pod:21
19676 msgid ""
19677 "You must I<not> use C<virt-rescue> on live virtual machines.  Doing so will "
19678 "probably result in disk corruption in the VM.  C<virt-rescue> tries to stop "
19679 "you from doing this, but doesn't catch all cases."
19680 msgstr ""
19681
19682 #. type: textblock
19683 #: ../rescue/virt-rescue.pod:25
19684 msgid ""
19685 "However if you use the I<--ro> (read only) option, then you can attach a "
19686 "shell to a live virtual machine.  The results might be strange or "
19687 "inconsistent at times but you won't get disk corruption."
19688 msgstr ""
19689
19690 #. type: textblock
19691 #: ../rescue/virt-rescue.pod:31
19692 msgid ""
19693 "virt-rescue is like a Rescue CD, but for virtual machines, and without the "
19694 "need for a CD.  virt-rescue gives you a rescue shell and some simple "
19695 "recovery tools which you can use to examine or rescue a virtual machine or "
19696 "disk image."
19697 msgstr ""
19698
19699 #. type: textblock
19700 #: ../rescue/virt-rescue.pod:36
19701 msgid ""
19702 "You can run virt-rescue on any virtual machine known to libvirt, or directly "
19703 "on disk image(s):"
19704 msgstr ""
19705
19706 #. type: verbatim
19707 #: ../rescue/virt-rescue.pod:39
19708 #, no-wrap
19709 msgid ""
19710 " virt-rescue -d GuestName\n"
19711 "\n"
19712 msgstr ""
19713
19714 #. type: verbatim
19715 #: ../rescue/virt-rescue.pod:41
19716 #, no-wrap
19717 msgid ""
19718 " virt-rescue --ro -a /path/to/disk.img\n"
19719 "\n"
19720 msgstr ""
19721
19722 #. type: verbatim
19723 #: ../rescue/virt-rescue.pod:43
19724 #, no-wrap
19725 msgid ""
19726 " virt-rescue -a /dev/sdc\n"
19727 "\n"
19728 msgstr ""
19729
19730 #. type: textblock
19731 #: ../rescue/virt-rescue.pod:45
19732 msgid "For live VMs you I<must> use the --ro option."
19733 msgstr ""
19734
19735 #. type: textblock
19736 #: ../rescue/virt-rescue.pod:47
19737 msgid ""
19738 "When you run virt-rescue on a virtual machine or disk image, you are placed "
19739 "in an interactive bash shell where you can use many ordinary Linux "
19740 "commands.  What you see in C</> (C</bin>, C</lib> etc) is the rescue "
19741 "appliance.  You must mount the virtual machine's filesystems by hand.  There "
19742 "is an empty directory called C</sysroot> where you can mount filesystems."
19743 msgstr ""
19744
19745 #. type: textblock
19746 #: ../rescue/virt-rescue.pod:54
19747 msgid ""
19748 "In the example below, we list logical volumes, then choose one to mount "
19749 "under C</sysroot>:"
19750 msgstr ""
19751
19752 #. type: verbatim
19753 #: ../rescue/virt-rescue.pod:57
19754 #, no-wrap
19755 msgid ""
19756 " ><rescue> lvs\n"
19757 " LV      VG        Attr   LSize   Origin Snap%  Move Log Copy%  Convert\n"
19758 " lv_root vg_f11x64 -wi-a-   8.83G\n"
19759 " lv_swap vg_f11x64 -wi-a- 992.00M\n"
19760 " ><rescue> mount /dev/vg_f11x64/lv_root /sysroot\n"
19761 " ><rescue> ls /sysroot\n"
19762 "\n"
19763 msgstr ""
19764
19765 #. type: textblock
19766 #: ../rescue/virt-rescue.pod:64
19767 msgid ""
19768 "If you don't know what filesystems are available on the virtual machine then "
19769 "you can use commands such as L<parted(8)> and L<lvs(8)> to find out."
19770 msgstr ""
19771
19772 #. type: textblock
19773 #: ../rescue/virt-rescue.pod:70
19774 msgid ""
19775 "Virt-rescue can be used on I<any> disk image file or device, not just a "
19776 "virtual machine.  For example you can use it on a blank file if you want to "
19777 "partition that file (although we would recommend using L<guestfish(1)> "
19778 "instead as it is more suitable for this purpose).  You can even use "
19779 "virt-rescue on things like SD cards."
19780 msgstr ""
19781
19782 #. type: textblock
19783 #: ../rescue/virt-rescue.pod:76
19784 msgid ""
19785 "Virt-rescue does not require root.  You only need to run it as root if you "
19786 "need root to open the disk image."
19787 msgstr ""
19788
19789 #. type: textblock
19790 #: ../rescue/virt-rescue.pod:79
19791 msgid ""
19792 "This tool is just designed for quick interactive hacking on a virtual "
19793 "machine.  For more structured access to a virtual machine disk image, you "
19794 "should use L<guestfs(3)>.  To get a structured shell that you can use to "
19795 "make scripted changes to guests, use L<guestfish(1)>."
19796 msgstr ""
19797
19798 #. type: =item
19799 #: ../rescue/virt-rescue.pod:103
19800 msgid "B<--append kernelopts>"
19801 msgstr ""
19802
19803 #. type: textblock
19804 #: ../rescue/virt-rescue.pod:105
19805 msgid "Pass additional options to the rescue kernel."
19806 msgstr ""
19807
19808 #. type: verbatim
19809 #: ../rescue/virt-rescue.pod:135
19810 #, no-wrap
19811 msgid ""
19812 " virt-rescue --format=raw -a disk.img\n"
19813 "\n"
19814 msgstr ""
19815
19816 #. type: verbatim
19817 #: ../rescue/virt-rescue.pod:139
19818 #, no-wrap
19819 msgid ""
19820 " virt-rescue --format=raw -a disk.img --format -a another.img\n"
19821 "\n"
19822 msgstr ""
19823
19824 #. type: =item
19825 #: ../rescue/virt-rescue.pod:148
19826 msgid "B<-m MB>"
19827 msgstr ""
19828
19829 #. type: =item
19830 #: ../rescue/virt-rescue.pod:150
19831 msgid "B<--memsize MB>"
19832 msgstr ""
19833
19834 #. type: textblock
19835 #: ../rescue/virt-rescue.pod:152
19836 msgid ""
19837 "Change the amount of memory allocated to the rescue system.  The default is "
19838 "set by libguestfs and is small but adequate for running system tools.  The "
19839 "occasional program might need more memory.  The parameter is specified in "
19840 "megabytes."
19841 msgstr ""
19842
19843 #. type: =item
19844 #: ../rescue/virt-rescue.pod:157
19845 msgid "B<--network>"
19846 msgstr ""
19847
19848 #. type: textblock
19849 #: ../rescue/virt-rescue.pod:159
19850 msgid "Enable QEMU user networking in the guest.  See L</NETWORK>."
19851 msgstr ""
19852
19853 #. type: textblock
19854 #: ../rescue/virt-rescue.pod:165
19855 msgid "Open the image read-only."
19856 msgstr ""
19857
19858 #. type: textblock
19859 #: ../rescue/virt-rescue.pod:175
19860 msgid ""
19861 "Enable SELinux in the rescue appliance.  You should read "
19862 "L<guestfs(3)/SELINUX> before using this option."
19863 msgstr ""
19864
19865 #. type: textblock
19866 #: ../rescue/virt-rescue.pod:194
19867 msgid ""
19868 "This changes the I<-a> and I<-d> options so that disks are added and mounts "
19869 "are done read-write."
19870 msgstr ""
19871
19872 #. type: textblock
19873 #: ../rescue/virt-rescue.pod:207
19874 msgid "Previous versions of virt-rescue allowed you to write either:"
19875 msgstr ""
19876
19877 #. type: verbatim
19878 #: ../rescue/virt-rescue.pod:209
19879 #, no-wrap
19880 msgid ""
19881 " virt-rescue disk.img [disk.img ...]\n"
19882 "\n"
19883 msgstr ""
19884
19885 #. type: verbatim
19886 #: ../rescue/virt-rescue.pod:213
19887 #, no-wrap
19888 msgid ""
19889 " virt-rescue guestname\n"
19890 "\n"
19891 msgstr ""
19892
19893 #. type: =head1
19894 #: ../rescue/virt-rescue.pod:221
19895 msgid "NETWORK"
19896 msgstr ""
19897
19898 #. type: textblock
19899 #: ../rescue/virt-rescue.pod:223
19900 msgid ""
19901 "Adding the I<--network> option enables QEMU user networking in the rescue "
19902 "appliance.  There are some differences between user networking and ordinary "
19903 "networking:"
19904 msgstr ""
19905
19906 #. type: =item
19907 #: ../rescue/virt-rescue.pod:229
19908 msgid "ping does not work"
19909 msgstr ""
19910
19911 #. type: textblock
19912 #: ../rescue/virt-rescue.pod:231
19913 msgid ""
19914 "Because the ICMP ECHO_REQUEST protocol generally requires root in order to "
19915 "send the ping packets, and because virt-rescue must be able to run as "
19916 "non-root, QEMU user networking is not able to emulate the L<ping(8)> "
19917 "command.  The ping command will appear to resolve addresses but will not be "
19918 "able to send or receive any packets.  This does not mean that the network is "
19919 "not working."
19920 msgstr ""
19921
19922 #. type: =item
19923 #: ../rescue/virt-rescue.pod:238
19924 msgid "cannot receive connections"
19925 msgstr ""
19926
19927 #. type: textblock
19928 #: ../rescue/virt-rescue.pod:240
19929 msgid "QEMU user networking cannot receive incoming connections."
19930 msgstr ""
19931
19932 #. type: =item
19933 #: ../rescue/virt-rescue.pod:242
19934 msgid "making TCP connections"
19935 msgstr ""
19936
19937 #. type: textblock
19938 #: ../rescue/virt-rescue.pod:244
19939 msgid ""
19940 "The virt-rescue appliance needs to be small and so does not include many "
19941 "network tools.  In particular there is no L<telnet(1)> command.  You can "
19942 "make TCP connections from the shell using the magical "
19943 "C</dev/tcp/E<lt>hostnameE<gt>/E<lt>portE<gt>> syntax:"
19944 msgstr ""
19945
19946 #. type: verbatim
19947 #: ../rescue/virt-rescue.pod:249
19948 #, no-wrap
19949 msgid ""
19950 " exec 3<>/dev/tcp/redhat.com/80\n"
19951 " echo \"GET /\" >&3\n"
19952 " cat <&3\n"
19953 "\n"
19954 msgstr ""
19955
19956 #. type: textblock
19957 #: ../rescue/virt-rescue.pod:253
19958 msgid "See L<bash(1)> for more details."
19959 msgstr ""
19960
19961 #. type: textblock
19962 #: ../rescue/virt-rescue.pod:259
19963 msgid ""
19964 "Several environment variables affect virt-rescue.  See "
19965 "L<guestfs(3)/ENVIRONMENT VARIABLES> for the complete list."
19966 msgstr ""
19967
19968 #. type: textblock
19969 #: ../rescue/virt-rescue.pod:286
19970 msgid ""
19971 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-edit(1)>, "
19972 "L<http://libguestfs.org/>."
19973 msgstr ""
19974
19975 #. type: textblock
19976 #: ../resize/virt-resize.pod:5
19977 msgid "virt-resize - Resize a virtual machine disk"
19978 msgstr ""
19979
19980 #. type: verbatim
19981 #: ../resize/virt-resize.pod:9
19982 #, no-wrap
19983 msgid ""
19984 " virt-resize [--resize /dev/sdaN=[+/-]<size>[%]]\n"
19985 "   [--expand /dev/sdaN] [--shrink /dev/sdaN]\n"
19986 "   [--ignore /dev/sdaN] [--delete /dev/sdaN] [...] indisk outdisk\n"
19987 "\n"
19988 msgstr ""
19989
19990 #. type: textblock
19991 #: ../resize/virt-resize.pod:15
19992 msgid ""
19993 "Virt-resize is a tool which can resize a virtual machine disk, making it "
19994 "larger or smaller overall, and resizing or deleting any partitions contained "
19995 "within."
19996 msgstr ""
19997
19998 #. type: textblock
19999 #: ../resize/virt-resize.pod:19
20000 msgid ""
20001 "Virt-resize B<cannot> resize disk images in-place.  Virt-resize B<should "
20002 "not> be used on live virtual machines - for consistent results, shut the "
20003 "virtual machine down before resizing it."
20004 msgstr ""
20005
20006 #. type: textblock
20007 #: ../resize/virt-resize.pod:23
20008 msgid ""
20009 "If you are not familiar with the associated tools: L<virt-filesystems(1)> "
20010 "and L<virt-df(1)>, we recommend you go and read those manual pages first."
20011 msgstr ""
20012
20013 #. type: =item
20014 #: ../resize/virt-resize.pod:31 ../src/guestfs.pod:469 ../src/guestfs.pod:1257 ../src/guestfs.pod:1395 ../src/guestfs.pod:2465
20015 msgid "1."
20016 msgstr ""
20017
20018 #. type: textblock
20019 #: ../resize/virt-resize.pod:33
20020 msgid ""
20021 "Copy C<olddisk> to C<newdisk>, extending one of the guest's partitions to "
20022 "fill the extra 5GB of space."
20023 msgstr ""
20024
20025 #. type: verbatim
20026 #: ../resize/virt-resize.pod:36
20027 #, no-wrap
20028 msgid ""
20029 " virt-filesystems --long -h --all -a olddisk\n"
20030 " \n"
20031 msgstr ""
20032
20033 #. type: verbatim
20034 #: ../resize/virt-resize.pod:38
20035 #, no-wrap
20036 msgid ""
20037 " truncate -r olddisk newdisk\n"
20038 " truncate -s +5G newdisk\n"
20039 " \n"
20040 msgstr ""
20041
20042 #. type: verbatim
20043 #: ../resize/virt-resize.pod:41
20044 #, no-wrap
20045 msgid ""
20046 " # Note \"/dev/sda2\" is a partition inside the \"olddisk\" file.\n"
20047 " virt-resize --expand /dev/sda2 olddisk newdisk\n"
20048 "\n"
20049 msgstr ""
20050
20051 #. type: =item
20052 #: ../resize/virt-resize.pod:44 ../src/guestfs.pod:475 ../src/guestfs.pod:1261 ../src/guestfs.pod:1399 ../src/guestfs.pod:2490
20053 msgid "2."
20054 msgstr ""
20055
20056 #. type: textblock
20057 #: ../resize/virt-resize.pod:46
20058 msgid ""
20059 "As above, but make the /boot partition 200MB bigger, while giving the "
20060 "remaining space to /dev/sda2:"
20061 msgstr ""
20062
20063 #. type: verbatim
20064 #: ../resize/virt-resize.pod:49
20065 #, no-wrap
20066 msgid ""
20067 " virt-resize --resize /dev/sda1=+200M --expand /dev/sda2 \\\n"
20068 "   olddisk newdisk\n"
20069 "\n"
20070 msgstr ""
20071
20072 #. type: =item
20073 #: ../resize/virt-resize.pod:52 ../src/guestfs.pod:486 ../src/guestfs.pod:1405
20074 msgid "3."
20075 msgstr ""
20076
20077 #. type: textblock
20078 #: ../resize/virt-resize.pod:54
20079 msgid ""
20080 "As in the first example, but expand a logical volume as the final step.  "
20081 "This is what you would typically use for Linux guests that use LVM:"
20082 msgstr ""
20083
20084 #. type: verbatim
20085 #: ../resize/virt-resize.pod:58
20086 #, no-wrap
20087 msgid ""
20088 " virt-resize --expand /dev/sda2 --LV-expand /dev/vg_guest/lv_root \\\n"
20089 "   olddisk newdisk\n"
20090 "\n"
20091 msgstr ""
20092
20093 #. type: =item
20094 #: ../resize/virt-resize.pod:61
20095 msgid "4."
20096 msgstr ""
20097
20098 #. type: textblock
20099 #: ../resize/virt-resize.pod:63
20100 msgid ""
20101 "As in the first example, but the output format will be qcow2 instead of a "
20102 "raw disk:"
20103 msgstr ""
20104
20105 #. type: verbatim
20106 #: ../resize/virt-resize.pod:66
20107 #, no-wrap
20108 msgid ""
20109 " qemu-img create -f qcow2 newdisk.qcow2 15G\n"
20110 " virt-resize --expand /dev/sda2 olddisk newdisk.qcow2\n"
20111 "\n"
20112 msgstr ""
20113
20114 #. type: =head1
20115 #: ../resize/virt-resize.pod:71
20116 msgid "DETAILED USAGE"
20117 msgstr ""
20118
20119 #. type: =head2
20120 #: ../resize/virt-resize.pod:73
20121 msgid "EXPANDING A VIRTUAL MACHINE DISK"
20122 msgstr ""
20123
20124 #. type: =item
20125 #: ../resize/virt-resize.pod:77
20126 msgid "1. Shut down the virtual machine"
20127 msgstr ""
20128
20129 #. type: =item
20130 #: ../resize/virt-resize.pod:79
20131 msgid "2. Locate input disk image"
20132 msgstr ""
20133
20134 #. type: textblock
20135 #: ../resize/virt-resize.pod:81
20136 msgid ""
20137 "Locate the input disk image (ie. the file or device on the host containing "
20138 "the guest's disk).  If the guest is managed by libvirt, you can use C<virsh "
20139 "dumpxml> like this to find the disk image name:"
20140 msgstr ""
20141
20142 #. type: verbatim
20143 #: ../resize/virt-resize.pod:85
20144 #, no-wrap
20145 msgid ""
20146 " # virsh dumpxml guestname | xpath /domain/devices/disk/source\n"
20147 " Found 1 nodes:\n"
20148 " -- NODE --\n"
20149 " <source dev=\"/dev/vg/lv_guest\" />\n"
20150 "\n"
20151 msgstr ""
20152
20153 #. type: =item
20154 #: ../resize/virt-resize.pod:90
20155 msgid "3. Look at current sizing"
20156 msgstr ""
20157
20158 #. type: textblock
20159 #: ../resize/virt-resize.pod:92
20160 msgid "Use L<virt-filesystems(1)> to display the current partitions and sizes:"
20161 msgstr ""
20162
20163 #. type: verbatim
20164 #: ../resize/virt-resize.pod:95
20165 #, no-wrap
20166 msgid ""
20167 " # virt-filesystems --long --parts --blkdevs -h -a /dev/vg/lv_guest\n"
20168 " Name       Type       Size  Parent\n"
20169 " /dev/sda1  partition  101M  /dev/sda\n"
20170 " /dev/sda2  partition  7.9G  /dev/sda\n"
20171 " /dev/sda   device     8.0G  -\n"
20172 "\n"
20173 msgstr ""
20174
20175 #. type: textblock
20176 #: ../resize/virt-resize.pod:101
20177 msgid ""
20178 "(This example is a virtual machine with an 8 GB disk which we would like to "
20179 "expand up to 10 GB)."
20180 msgstr ""
20181
20182 #. type: =item
20183 #: ../resize/virt-resize.pod:104
20184 msgid "4. Create output disk"
20185 msgstr ""
20186
20187 #. type: textblock
20188 #: ../resize/virt-resize.pod:106
20189 msgid ""
20190 "Virt-resize cannot do in-place disk modifications.  You have to have space "
20191 "to store the resized output disk."
20192 msgstr ""
20193
20194 #. type: textblock
20195 #: ../resize/virt-resize.pod:109
20196 msgid "To store the resized disk image in a file, create a file of a suitable size:"
20197 msgstr ""
20198
20199 #. type: verbatim
20200 #: ../resize/virt-resize.pod:112
20201 #, no-wrap
20202 msgid ""
20203 " # rm -f outdisk\n"
20204 " # truncate -s 10G outdisk\n"
20205 "\n"
20206 msgstr ""
20207
20208 #. type: textblock
20209 #: ../resize/virt-resize.pod:115
20210 msgid "Or use L<lvcreate(1)> to create a logical volume:"
20211 msgstr ""
20212
20213 #. type: verbatim
20214 #: ../resize/virt-resize.pod:117
20215 #, no-wrap
20216 msgid ""
20217 " # lvcreate -L 10G -n lv_name vg_name\n"
20218 "\n"
20219 msgstr ""
20220
20221 #. type: textblock
20222 #: ../resize/virt-resize.pod:119
20223 msgid "Or use L<virsh(1)> vol-create-as to create a libvirt storage volume:"
20224 msgstr ""
20225
20226 #. type: verbatim
20227 #: ../resize/virt-resize.pod:121
20228 #, no-wrap
20229 msgid ""
20230 " # virsh pool-list\n"
20231 " # virsh vol-create-as poolname newvol 10G\n"
20232 "\n"
20233 msgstr ""
20234
20235 #. type: =item
20236 #: ../resize/virt-resize.pod:124
20237 msgid "5. Resize"
20238 msgstr ""
20239
20240 #. type: textblock
20241 #: ../resize/virt-resize.pod:126
20242 msgid ""
20243 "virt-resize takes two mandatory parameters, the input disk (eg. device or "
20244 "file) and the output disk.  The output disk is the one created in the "
20245 "previous step."
20246 msgstr ""
20247
20248 #. type: verbatim
20249 #: ../resize/virt-resize.pod:130
20250 #, no-wrap
20251 msgid ""
20252 " # virt-resize indisk outdisk\n"
20253 "\n"
20254 msgstr ""
20255
20256 #. type: textblock
20257 #: ../resize/virt-resize.pod:132
20258 msgid ""
20259 "This command just copies disk image C<indisk> to disk image C<outdisk> "
20260 "I<without> resizing or changing any existing partitions.  If C<outdisk> is "
20261 "larger, then an extra, empty partition is created at the end of the disk "
20262 "covering the extra space.  If C<outdisk> is smaller, then it will give an "
20263 "error."
20264 msgstr ""
20265
20266 #. type: textblock
20267 #: ../resize/virt-resize.pod:138
20268 msgid ""
20269 "More realistically you'd want to expand existing partitions in the disk "
20270 "image by passing extra options (for the full list see the L</OPTIONS> "
20271 "section below)."
20272 msgstr ""
20273
20274 #. type: textblock
20275 #: ../resize/virt-resize.pod:142
20276 msgid ""
20277 "L</--expand> is the most useful option.  It expands the named partition "
20278 "within the disk to fill any extra space:"
20279 msgstr ""
20280
20281 #. type: verbatim
20282 #: ../resize/virt-resize.pod:145
20283 #, no-wrap
20284 msgid ""
20285 " # virt-resize --expand /dev/sda2 indisk outdisk\n"
20286 "\n"
20287 msgstr ""
20288
20289 #. type: textblock
20290 #: ../resize/virt-resize.pod:147
20291 msgid ""
20292 "(In this case, an extra partition is I<not> created at the end of the disk, "
20293 "because there will be no unused space)."
20294 msgstr ""
20295
20296 #. type: textblock
20297 #: ../resize/virt-resize.pod:150
20298 msgid ""
20299 "L</--resize> is the other commonly used option.  The following would "
20300 "increase the size of /dev/sda1 by 200M, and expand /dev/sda2 to fill the "
20301 "rest of the available space:"
20302 msgstr ""
20303
20304 #. type: verbatim
20305 #: ../resize/virt-resize.pod:154
20306 #, no-wrap
20307 msgid ""
20308 " # virt-resize --resize /dev/sda1=+200M --expand /dev/sda2 \\\n"
20309 "     indisk outdisk\n"
20310 "\n"
20311 msgstr ""
20312
20313 #. type: textblock
20314 #: ../resize/virt-resize.pod:157
20315 msgid ""
20316 "If the expanded partition in the image contains a filesystem or LVM PV, then "
20317 "if virt-resize knows how, it will resize the contents, the equivalent of "
20318 "calling a command such as L<pvresize(8)>, L<resize2fs(8)>, L<ntfsresize(8)> "
20319 "or L<btrfs(8)>.  However virt-resize does not know how to resize some "
20320 "filesystems, so you would have to online resize them after booting the "
20321 "guest."
20322 msgstr ""
20323
20324 #. type: textblock
20325 #: ../resize/virt-resize.pod:164
20326 msgid "Other options are covered below."
20327 msgstr ""
20328
20329 #. type: =item
20330 #: ../resize/virt-resize.pod:166
20331 msgid "6. Test"
20332 msgstr ""
20333
20334 #. type: textblock
20335 #: ../resize/virt-resize.pod:168
20336 msgid "Thoroughly test the new disk image I<before> discarding the old one."
20337 msgstr ""
20338
20339 #. type: textblock
20340 #: ../resize/virt-resize.pod:170
20341 msgid "If you are using libvirt, edit the XML to point at the new disk:"
20342 msgstr ""
20343
20344 #. type: verbatim
20345 #: ../resize/virt-resize.pod:172
20346 #, no-wrap
20347 msgid ""
20348 " # virsh edit guestname\n"
20349 "\n"
20350 msgstr ""
20351
20352 #. type: textblock
20353 #: ../resize/virt-resize.pod:174
20354 msgid ""
20355 "Change E<lt>source ...E<gt>, see "
20356 "L<http://libvirt.org/formatdomain.html#elementsDisks>"
20357 msgstr ""
20358
20359 #. type: textblock
20360 #: ../resize/virt-resize.pod:177
20361 msgid "Then start up the domain with the new, resized disk:"
20362 msgstr ""
20363
20364 #. type: verbatim
20365 #: ../resize/virt-resize.pod:179
20366 #, no-wrap
20367 msgid ""
20368 " # virsh start guestname\n"
20369 "\n"
20370 msgstr ""
20371
20372 #. type: textblock
20373 #: ../resize/virt-resize.pod:181
20374 msgid ""
20375 "and check that it still works.  See also the L</NOTES> section below for "
20376 "additional information."
20377 msgstr ""
20378
20379 #. type: =item
20380 #: ../resize/virt-resize.pod:184
20381 msgid "7. Resize LVs etc inside the guest"
20382 msgstr ""
20383
20384 #. type: textblock
20385 #: ../resize/virt-resize.pod:186
20386 msgid "(This can also be done offline using L<guestfish(1)>)"
20387 msgstr ""
20388
20389 #. type: textblock
20390 #: ../resize/virt-resize.pod:188
20391 msgid ""
20392 "Once the guest has booted you should see the new space available, at least "
20393 "for filesystems that virt-resize knows how to resize, and for PVs.  The user "
20394 "may need to resize LVs inside PVs, and also resize filesystem types that "
20395 "virt-resize does not know how to expand."
20396 msgstr ""
20397
20398 #. type: =head2
20399 #: ../resize/virt-resize.pod:195
20400 msgid "SHRINKING A VIRTUAL MACHINE DISK"
20401 msgstr ""
20402
20403 #. type: textblock
20404 #: ../resize/virt-resize.pod:197
20405 msgid ""
20406 "Shrinking is somewhat more complex than expanding, and only an overview is "
20407 "given here."
20408 msgstr ""
20409
20410 #. type: textblock
20411 #: ../resize/virt-resize.pod:200
20412 msgid ""
20413 "Firstly virt-resize will not attempt to shrink any partition content (PVs, "
20414 "filesystems).  The user has to shrink content before passing the disk image "
20415 "to virt-resize, and virt-resize will check that the content has been shrunk "
20416 "properly."
20417 msgstr ""
20418
20419 #. type: textblock
20420 #: ../resize/virt-resize.pod:205
20421 msgid "(Shrinking can also be done offline using L<guestfish(1)>)"
20422 msgstr ""
20423
20424 #. type: textblock
20425 #: ../resize/virt-resize.pod:207
20426 msgid ""
20427 "After shrinking PVs and filesystems, shut down the guest, and proceed with "
20428 "steps 3 and 4 above to allocate a new disk image."
20429 msgstr ""
20430
20431 #. type: textblock
20432 #: ../resize/virt-resize.pod:210
20433 msgid "Then run virt-resize with any of the I<--shrink> and/or I<--resize> options."
20434 msgstr ""
20435
20436 #. type: =head2
20437 #: ../resize/virt-resize.pod:213
20438 msgid "IGNORING OR DELETING PARTITIONS"
20439 msgstr ""
20440
20441 #. type: textblock
20442 #: ../resize/virt-resize.pod:215
20443 msgid ""
20444 "virt-resize also gives a convenient way to ignore or delete partitions when "
20445 "copying from the input disk to the output disk.  Ignoring a partition speeds "
20446 "up the copy where you don't care about the existing contents of a "
20447 "partition.  Deleting a partition removes it completely, but note that it "
20448 "also renumbers any partitions after the one which is deleted, which can "
20449 "leave some guests unbootable."
20450 msgstr ""
20451
20452 #. type: =head2
20453 #: ../resize/virt-resize.pod:222
20454 msgid "QCOW2 AND NON-SPARSE RAW FORMATS"
20455 msgstr ""
20456
20457 #. type: textblock
20458 #: ../resize/virt-resize.pod:224
20459 msgid ""
20460 "If the input disk is in qcow2 format, then you may prefer that the output is "
20461 "in qcow2 format as well.  Alternately, virt-resize can convert the format on "
20462 "the fly.  The output format is simply determined by the format of the empty "
20463 "output container that you provide.  Thus to create qcow2 output, use:"
20464 msgstr ""
20465
20466 #. type: verbatim
20467 #: ../resize/virt-resize.pod:230
20468 #, no-wrap
20469 msgid ""
20470 " qemu-img create [-c] -f qcow2 outdisk [size]\n"
20471 "\n"
20472 msgstr ""
20473
20474 #. type: textblock
20475 #: ../resize/virt-resize.pod:232
20476 msgid "instead of the truncate command (use I<-c> for a compressed disk)."
20477 msgstr ""
20478
20479 #. type: textblock
20480 #: ../resize/virt-resize.pod:234
20481 msgid "Similarly, to get non-sparse raw output use:"
20482 msgstr ""
20483
20484 #. type: verbatim
20485 #: ../resize/virt-resize.pod:236
20486 #, no-wrap
20487 msgid ""
20488 " fallocate -l size outdisk\n"
20489 "\n"
20490 msgstr ""
20491
20492 #. type: textblock
20493 #: ../resize/virt-resize.pod:238
20494 msgid ""
20495 "(on older systems that don't have the L<fallocate(1)> command use C<dd "
20496 "if=/dev/zero of=outdisk bs=1M count=..>)"
20497 msgstr ""
20498
20499 #. type: textblock
20500 #: ../resize/virt-resize.pod:247
20501 msgid "Display help."
20502 msgstr ""
20503
20504 #. type: =item
20505 #: ../resize/virt-resize.pod:249
20506 msgid "B<-d>"
20507 msgstr ""
20508
20509 #. type: =item
20510 #: ../resize/virt-resize.pod:251 ../tools/virt-make-fs.pl:177 ../tools/virt-win-reg.pl:120
20511 msgid "B<--debug>"
20512 msgstr ""
20513
20514 #. type: textblock
20515 #: ../resize/virt-resize.pod:253 ../tools/virt-win-reg.pl:122
20516 msgid "Enable debugging messages."
20517 msgstr ""
20518
20519 #. type: =item
20520 #: ../resize/virt-resize.pod:255
20521 msgid "B<--delete part>"
20522 msgstr ""
20523
20524 #. type: textblock
20525 #: ../resize/virt-resize.pod:257
20526 msgid ""
20527 "Delete the named partition.  It would be more accurate to describe this as "
20528 "\"don't copy it over\", since virt-resize doesn't do in-place changes and "
20529 "the original disk image is left intact."
20530 msgstr ""
20531
20532 #. type: textblock
20533 #: ../resize/virt-resize.pod:261
20534 msgid ""
20535 "Note that when you delete a partition, then anything contained in the "
20536 "partition is also deleted.  Furthermore, this causes any partitions that "
20537 "come after to be I<renumbered>, which can easily make your guest unbootable."
20538 msgstr ""
20539
20540 #. type: textblock
20541 #: ../resize/virt-resize.pod:266 ../resize/virt-resize.pod:327 ../resize/virt-resize.pod:448
20542 msgid "You can give this option multiple times."
20543 msgstr ""
20544
20545 #. type: =item
20546 #: ../resize/virt-resize.pod:268
20547 msgid "B<--expand part>"
20548 msgstr ""
20549
20550 #. type: textblock
20551 #: ../resize/virt-resize.pod:270
20552 msgid ""
20553 "Expand the named partition so it uses up all extra space (space left over "
20554 "after any other resize changes that you request have been done)."
20555 msgstr ""
20556
20557 #. type: textblock
20558 #: ../resize/virt-resize.pod:273
20559 msgid ""
20560 "If virt-resize knows how, it will expand the direct content of the "
20561 "partition.  For example, if the partition is an LVM PV, it will expand the "
20562 "PV to fit (like calling L<pvresize(8)>).  Virt-resize leaves any other "
20563 "content it doesn't know about alone."
20564 msgstr ""
20565
20566 #. type: textblock
20567 #: ../resize/virt-resize.pod:278
20568 msgid "Currently virt-resize can resize:"
20569 msgstr ""
20570
20571 #. type: textblock
20572 #: ../resize/virt-resize.pod:284
20573 msgid "ext2, ext3 and ext4 filesystems."
20574 msgstr ""
20575
20576 #. type: textblock
20577 #: ../resize/virt-resize.pod:288
20578 msgid "NTFS filesystems, if libguestfs was compiled with support for NTFS."
20579 msgstr ""
20580
20581 #. type: textblock
20582 #: ../resize/virt-resize.pod:290
20583 msgid ""
20584 "The filesystem must have been shut down consistently last time it was used.  "
20585 "Additionally, L<ntfsresize(8)> marks the resized filesystem as requiring a "
20586 "consistency check, so at the first boot after resizing Windows will check "
20587 "the disk."
20588 msgstr ""
20589
20590 #. type: textblock
20591 #: ../resize/virt-resize.pod:297
20592 msgid ""
20593 "LVM PVs (physical volumes).  virt-resize does not usually resize anything "
20594 "inside the PV, but see the I<--LV-expand> option.  The user could also "
20595 "resize LVs as desired after boot."
20596 msgstr ""
20597
20598 #. type: textblock
20599 #: ../resize/virt-resize.pod:303
20600 msgid "Btrfs filesystems, if libguestfs was compiled with support for btrfs."
20601 msgstr ""
20602
20603 #. type: textblock
20604 #: ../resize/virt-resize.pod:307 ../resize/virt-resize.pod:476
20605 msgid "Note that you cannot use I<--expand> and I<--shrink> together."
20606 msgstr ""
20607
20608 #. type: =item
20609 #: ../resize/virt-resize.pod:309 ../tools/virt-list-filesystems.pl:91 ../tools/virt-list-partitions.pl:92 ../tools/virt-tar.pl:141 ../tools/virt-win-reg.pl:142
20610 msgid "B<--format> raw"
20611 msgstr ""
20612
20613 #. type: textblock
20614 #: ../resize/virt-resize.pod:311
20615 msgid ""
20616 "Specify the format of the input disk image.  If this flag is not given then "
20617 "it is auto-detected from the image itself."
20618 msgstr ""
20619
20620 #. type: textblock
20621 #: ../resize/virt-resize.pod:317
20622 msgid ""
20623 "Note that this option I<does not> affect the output format.  See L</QCOW2 "
20624 "AND NON-SPARSE RAW FORMATS>."
20625 msgstr ""
20626
20627 #. type: =item
20628 #: ../resize/virt-resize.pod:320
20629 msgid "B<--ignore part>"
20630 msgstr ""
20631
20632 #. type: textblock
20633 #: ../resize/virt-resize.pod:322
20634 msgid ""
20635 "Ignore the named partition.  Effectively this means the partition is "
20636 "allocated on the destination disk, but the content is not copied across from "
20637 "the source disk.  The content of the partition will be blank (all zero "
20638 "bytes)."
20639 msgstr ""
20640
20641 #. type: =item
20642 #: ../resize/virt-resize.pod:329
20643 msgid "B<--LV-expand logvol>"
20644 msgstr ""
20645
20646 #. type: textblock
20647 #: ../resize/virt-resize.pod:331
20648 msgid ""
20649 "This takes the logical volume and, as a final step, expands it to fill all "
20650 "the space available in its volume group.  A typical usage, assuming a Linux "
20651 "guest with a single PV C</dev/sda2> and a root device called "
20652 "C</dev/vg_guest/lv_root> would be:"
20653 msgstr ""
20654
20655 #. type: verbatim
20656 #: ../resize/virt-resize.pod:336
20657 #, no-wrap
20658 msgid ""
20659 " virt-resize indisk outdisk \\\n"
20660 "   --expand /dev/sda2 --LV-expand /dev/vg_guest/lv_root\n"
20661 "\n"
20662 msgstr ""
20663
20664 #. type: textblock
20665 #: ../resize/virt-resize.pod:339
20666 msgid ""
20667 "This would first expand the partition (and PV), and then expand the root "
20668 "device to fill the extra space in the PV."
20669 msgstr ""
20670
20671 #. type: textblock
20672 #: ../resize/virt-resize.pod:342
20673 msgid ""
20674 "The contents of the LV are also resized if virt-resize knows how to do "
20675 "that.  You can stop virt-resize from trying to expand the content by using "
20676 "the option I<--no-expand-content>."
20677 msgstr ""
20678
20679 #. type: textblock
20680 #: ../resize/virt-resize.pod:346
20681 msgid "Use L<virt-filesystems(1)> to list the filesystems in the guest."
20682 msgstr ""
20683
20684 #. type: textblock
20685 #: ../resize/virt-resize.pod:348
20686 msgid ""
20687 "You can give this option multiple times, I<but> it doesn't make sense to do "
20688 "this unless the logical volumes you specify are all in different volume "
20689 "groups."
20690 msgstr ""
20691
20692 #. type: =item
20693 #: ../resize/virt-resize.pod:354
20694 msgid "B<--dryrun>"
20695 msgstr ""
20696
20697 #. type: textblock
20698 #: ../resize/virt-resize.pod:356
20699 msgid "Print a summary of what would be done, but don't do anything."
20700 msgstr ""
20701
20702 #. type: =item
20703 #: ../resize/virt-resize.pod:358
20704 msgid "B<--no-copy-boot-loader>"
20705 msgstr ""
20706
20707 #. type: textblock
20708 #: ../resize/virt-resize.pod:360
20709 msgid ""
20710 "By default, virt-resize copies over some sectors at the start of the disk "
20711 "(up to the beginning of the first partition).  Commonly these sectors "
20712 "contain the Master Boot Record (MBR) and the boot loader, and are required "
20713 "in order for the guest to boot correctly."
20714 msgstr ""
20715
20716 #. type: textblock
20717 #: ../resize/virt-resize.pod:365
20718 msgid ""
20719 "If you specify this flag, then this initial copy is not done.  You may need "
20720 "to reinstall the boot loader in this case."
20721 msgstr ""
20722
20723 #. type: =item
20724 #: ../resize/virt-resize.pod:368
20725 msgid "B<--no-extra-partition>"
20726 msgstr ""
20727
20728 #. type: textblock
20729 #: ../resize/virt-resize.pod:370
20730 msgid ""
20731 "By default, virt-resize creates an extra partition if there is any extra, "
20732 "unused space after all resizing has happened.  Use this option to prevent "
20733 "the extra partition from being created.  If you do this then the extra space "
20734 "will be inaccessible until you run fdisk, parted, or some other partitioning "
20735 "tool in the guest."
20736 msgstr ""
20737
20738 #. type: textblock
20739 #: ../resize/virt-resize.pod:376
20740 msgid ""
20741 "Note that if the surplus space is smaller than 10 MB, no extra partition "
20742 "will be created."
20743 msgstr ""
20744
20745 #. type: =item
20746 #: ../resize/virt-resize.pod:379
20747 msgid "B<--no-expand-content>"
20748 msgstr ""
20749
20750 #. type: textblock
20751 #: ../resize/virt-resize.pod:381
20752 msgid ""
20753 "By default, virt-resize will try to expand the direct contents of "
20754 "partitions, if it knows how (see I<--expand> option above)."
20755 msgstr ""
20756
20757 #. type: textblock
20758 #: ../resize/virt-resize.pod:384
20759 msgid ""
20760 "If you give the I<--no-expand-content> option then virt-resize will not "
20761 "attempt this."
20762 msgstr ""
20763
20764 #. type: =item
20765 #: ../resize/virt-resize.pod:387
20766 msgid "B<--ntfsresize-force>"
20767 msgstr ""
20768
20769 #. type: textblock
20770 #: ../resize/virt-resize.pod:389
20771 msgid ""
20772 "Pass the I<--force> option to L<ntfsresize(8)>, allowing resizing even if "
20773 "the NTFS disk is marked as needing a consistency check.  You have to use "
20774 "this option if you want to resize a Windows guest multiple times without "
20775 "booting into Windows between each resize."
20776 msgstr ""
20777
20778 #. type: =item
20779 #: ../resize/virt-resize.pod:395
20780 msgid "B<--output-format> raw"
20781 msgstr ""
20782
20783 #. type: textblock
20784 #: ../resize/virt-resize.pod:397
20785 msgid ""
20786 "Specify the format of the output disk image.  If this flag is not given then "
20787 "it is auto-detected from the image itself."
20788 msgstr ""
20789
20790 #. type: textblock
20791 #: ../resize/virt-resize.pod:403
20792 msgid ""
20793 "Note that this option I<does not create> the output format.  This option "
20794 "just tells libguestfs what it is so it doesn't try to guess it.  You still "
20795 "need to create the output disk with the right format.  See L</QCOW2 AND "
20796 "NON-SPARSE RAW FORMATS>."
20797 msgstr ""
20798
20799 #. type: =item
20800 #: ../resize/virt-resize.pod:408
20801 msgid "B<-q>"
20802 msgstr ""
20803
20804 #. type: =item
20805 #: ../resize/virt-resize.pod:410
20806 msgid "B<--quiet>"
20807 msgstr ""
20808
20809 #. type: textblock
20810 #: ../resize/virt-resize.pod:412
20811 msgid "Don't print the summary."
20812 msgstr ""
20813
20814 #. type: =item
20815 #: ../resize/virt-resize.pod:414
20816 msgid "B<--resize part=size>"
20817 msgstr ""
20818
20819 #. type: textblock
20820 #: ../resize/virt-resize.pod:416
20821 msgid ""
20822 "Resize the named partition (expanding or shrinking it) so that it has the "
20823 "given size."
20824 msgstr ""
20825
20826 #. type: textblock
20827 #: ../resize/virt-resize.pod:419
20828 msgid ""
20829 "C<size> can be expressed as an absolute number followed by b/K/M/G to mean "
20830 "bytes, Kilobytes, Megabytes, or Gigabytes; or as a percentage of the current "
20831 "size; or as a relative number or percentage.  For example:"
20832 msgstr ""
20833
20834 #. type: verbatim
20835 #: ../resize/virt-resize.pod:425
20836 #, no-wrap
20837 msgid ""
20838 " --resize /dev/sda2=10G\n"
20839 "\n"
20840 msgstr ""
20841
20842 #. type: verbatim
20843 #: ../resize/virt-resize.pod:427
20844 #, no-wrap
20845 msgid ""
20846 " --resize /dev/sda4=90%\n"
20847 "\n"
20848 msgstr ""
20849
20850 #. type: verbatim
20851 #: ../resize/virt-resize.pod:429
20852 #, no-wrap
20853 msgid ""
20854 " --resize /dev/sda2=+1G\n"
20855 "\n"
20856 msgstr ""
20857
20858 #. type: verbatim
20859 #: ../resize/virt-resize.pod:431
20860 #, no-wrap
20861 msgid ""
20862 " --resize /dev/sda2=-200M\n"
20863 "\n"
20864 msgstr ""
20865
20866 #. type: verbatim
20867 #: ../resize/virt-resize.pod:433
20868 #, no-wrap
20869 msgid ""
20870 " --resize /dev/sda1=+128K\n"
20871 "\n"
20872 msgstr ""
20873
20874 #. type: verbatim
20875 #: ../resize/virt-resize.pod:435
20876 #, no-wrap
20877 msgid ""
20878 " --resize /dev/sda1=+10%\n"
20879 "\n"
20880 msgstr ""
20881
20882 #. type: verbatim
20883 #: ../resize/virt-resize.pod:437
20884 #, no-wrap
20885 msgid ""
20886 " --resize /dev/sda1=-10%\n"
20887 "\n"
20888 msgstr ""
20889
20890 #. type: textblock
20891 #: ../resize/virt-resize.pod:439
20892 msgid ""
20893 "You can increase the size of any partition.  Virt-resize will expand the "
20894 "direct content of the partition if it knows how (see I<--expand> below)."
20895 msgstr ""
20896
20897 #. type: textblock
20898 #: ../resize/virt-resize.pod:443
20899 msgid ""
20900 "You can only I<decrease> the size of partitions that contain filesystems or "
20901 "PVs which have already been shrunk.  Virt-resize will check this has been "
20902 "done before proceeding, or else will print an error (see also "
20903 "I<--resize-force>)."
20904 msgstr ""
20905
20906 #. type: =item
20907 #: ../resize/virt-resize.pod:450
20908 msgid "B<--resize-force part=size>"
20909 msgstr ""
20910
20911 #. type: textblock
20912 #: ../resize/virt-resize.pod:452
20913 msgid ""
20914 "This is the same as I<--resize> except that it will let you decrease the "
20915 "size of any partition.  Generally this means you will lose any data which "
20916 "was at the end of the partition you shrink, but you may not care about that "
20917 "(eg. if shrinking an unused partition, or if you can easily recreate it such "
20918 "as a swap partition)."
20919 msgstr ""
20920
20921 #. type: textblock
20922 #: ../resize/virt-resize.pod:458
20923 msgid "See also the I<--ignore> option."
20924 msgstr ""
20925
20926 #. type: =item
20927 #: ../resize/virt-resize.pod:460
20928 msgid "B<--shrink part>"
20929 msgstr ""
20930
20931 #. type: textblock
20932 #: ../resize/virt-resize.pod:462
20933 msgid ""
20934 "Shrink the named partition until the overall disk image fits in the "
20935 "destination.  The named partition B<must> contain a filesystem or PV which "
20936 "has already been shrunk using another tool (eg. L<guestfish(1)> or other "
20937 "online tools).  Virt-resize will check this and give an error if it has not "
20938 "been done."
20939 msgstr ""
20940
20941 #. type: textblock
20942 #: ../resize/virt-resize.pod:468
20943 msgid ""
20944 "The amount by which the overall disk must be shrunk (after carrying out all "
20945 "other operations requested by the user) is called the \"deficit\".  For "
20946 "example, a straight copy (assume no other operations)  from a 5GB disk image "
20947 "to a 4GB disk image results in a 1GB deficit.  In this case, virt-resize "
20948 "would give an error unless the user specified a partition to shrink and that "
20949 "partition had more than a gigabyte of free space."
20950 msgstr ""
20951
20952 #. type: =head2
20953 #: ../resize/virt-resize.pod:488
20954 msgid "\"Partition 1 does not end on cylinder boundary.\""
20955 msgstr ""
20956
20957 #. type: textblock
20958 #: ../resize/virt-resize.pod:490
20959 msgid ""
20960 "Virt-resize aligns partitions to multiples of 64 sectors.  Usually this "
20961 "means the partitions will not be aligned to the ancient CHS geometry.  "
20962 "However CHS geometry is meaningless for disks manufactured since the early "
20963 "1990s, and doubly so for virtual hard drives.  Alignment of partitions to "
20964 "cylinders is not required by any modern operating system."
20965 msgstr ""
20966
20967 #. type: =head2
20968 #: ../resize/virt-resize.pod:497
20969 msgid "RESIZING WINDOWS VIRTUAL MACHINES"
20970 msgstr ""
20971
20972 #. type: textblock
20973 #: ../resize/virt-resize.pod:499
20974 msgid ""
20975 "In Windows Vista and later versions, Microsoft switched to using a separate "
20976 "boot partition.  In these VMs, typically C</dev/sda1> is the boot partition "
20977 "and C</dev/sda2> is the main (C:) drive.  We have not had any luck resizing "
20978 "the boot partition.  Doing so seems to break the guest completely.  However "
20979 "expanding the second partition (ie. C: drive) should work."
20980 msgstr ""
20981
20982 #. type: textblock
20983 #: ../resize/virt-resize.pod:506
20984 msgid ""
20985 "Windows may initiate a lengthy \"chkdsk\" on first boot after a resize, if "
20986 "NTFS partitions have been expanded.  This is just a safety check and (unless "
20987 "it find errors) is nothing to worry about."
20988 msgstr ""
20989
20990 #. type: =head2
20991 #: ../resize/virt-resize.pod:510
20992 msgid "GUEST BOOT STUCK AT \"GRUB\""
20993 msgstr ""
20994
20995 #. type: textblock
20996 #: ../resize/virt-resize.pod:512
20997 msgid ""
20998 "If a Linux guest does not boot after resizing, and the boot is stuck after "
20999 "printing C<GRUB> on the console, try reinstalling grub.  This sometimes "
21000 "happens on older (RHEL 5-era) guests, for reasons we don't fully understand, "
21001 "although we think is to do with partition alignment."
21002 msgstr ""
21003
21004 #. type: verbatim
21005 #: ../resize/virt-resize.pod:517
21006 #, no-wrap
21007 msgid ""
21008 " guestfish -i -a newdisk\n"
21009 " ><fs> cat /boot/grub/device.map\n"
21010 " # check the contents of this file are sensible or\n"
21011 " # edit the file if necessary\n"
21012 " ><fs> grub-install / /dev/vda\n"
21013 " ><fs> exit\n"
21014 "\n"
21015 msgstr ""
21016
21017 #. type: textblock
21018 #: ../resize/virt-resize.pod:524
21019 msgid ""
21020 "For more flexible guest reconfiguration, including if you need to specify "
21021 "other parameters to grub-install, use L<virt-rescue(1)>."
21022 msgstr ""
21023
21024 #. type: =head1
21025 #: ../resize/virt-resize.pod:527
21026 msgid "ALTERNATIVE TOOLS"
21027 msgstr ""
21028
21029 #. type: textblock
21030 #: ../resize/virt-resize.pod:529
21031 msgid ""
21032 "There are several proprietary tools for resizing partitions.  We won't "
21033 "mention any here."
21034 msgstr ""
21035
21036 #. type: textblock
21037 #: ../resize/virt-resize.pod:532
21038 msgid ""
21039 "L<parted(8)> and its graphical shell gparted can do some types of resizing "
21040 "operations on disk images.  They can resize and move partitions, but I don't "
21041 "think they can do anything with the contents, and they certainly don't "
21042 "understand LVM."
21043 msgstr ""
21044
21045 #. type: textblock
21046 #: ../resize/virt-resize.pod:537
21047 msgid ""
21048 "L<guestfish(1)> can do everything that virt-resize can do and a lot more, "
21049 "but at a much lower level.  You will probably end up hand-calculating sector "
21050 "offsets, which is something that virt-resize was designed to avoid.  If you "
21051 "want to see the guestfish-equivalent commands that virt-resize runs, use the "
21052 "I<--debug> flag."
21053 msgstr ""
21054
21055 #. type: textblock
21056 #: ../resize/virt-resize.pod:552
21057 msgid ""
21058 "L<virt-filesystems(1)>, L<virt-df(1)>, L<guestfs(3)>, L<guestfish(1)>, "
21059 "L<lvm(8)>, L<pvresize(8)>, L<lvresize(8)>, L<resize2fs(8)>, "
21060 "L<ntfsresize(8)>, L<btrfs(8)>, L<virsh(1)>, L<parted(8)>, L<truncate(1)>, "
21061 "L<fallocate(1)>, L<grub(8)>, L<grub-install(8)>, L<virt-rescue(1)>, "
21062 "L<http://libguestfs.org/>."
21063 msgstr ""
21064
21065 #. type: textblock
21066 #: ../ruby/examples/guestfs-ruby.pod:5
21067 msgid "guestfs-ruby - How to use libguestfs from Ruby"
21068 msgstr ""
21069
21070 #. type: verbatim
21071 #: ../ruby/examples/guestfs-ruby.pod:9
21072 #, no-wrap
21073 msgid ""
21074 " require 'guestfs'\n"
21075 " g = Guestfs::Guestfs.new()\n"
21076 " g.add_drive_opts(\"disk.img\",\n"
21077 "                  :readonly => 1, :format => \"raw\")\n"
21078 " g.launch()\n"
21079 "\n"
21080 msgstr ""
21081
21082 #. type: textblock
21083 #: ../ruby/examples/guestfs-ruby.pod:17
21084 msgid ""
21085 "This manual page documents how to call libguestfs from the Ruby programming "
21086 "language.  This page just documents the differences from the C API and gives "
21087 "some examples.  If you are not familiar with using libguestfs, you also need "
21088 "to read L<guestfs(3)>."
21089 msgstr ""
21090
21091 #. type: textblock
21092 #: ../ruby/examples/guestfs-ruby.pod:24
21093 msgid ""
21094 "Errors from libguestfs functions are mapped into the C<Error> exception.  "
21095 "This has a single parameter which is the error message (a string)."
21096 msgstr ""
21097
21098 #. type: textblock
21099 #: ../ruby/examples/guestfs-ruby.pod:38
21100 msgid ""
21101 "L<guestfs(3)>, L<guestfs-examples(3)>, L<guestfs-java(3)>, "
21102 "L<guestfs-ocaml(3)>, L<guestfs-perl(3)>, L<guestfs-python(3)>, "
21103 "L<guestfs-recipes(1)>, L<http://libguestfs.org/>."
21104 msgstr ""
21105
21106 #. type: =head2
21107 #: ../src/guestfs-actions.pod:1
21108 msgid "guestfs_add_cdrom"
21109 msgstr ""
21110
21111 #. type: verbatim
21112 #: ../src/guestfs-actions.pod:3
21113 #, no-wrap
21114 msgid ""
21115 " int\n"
21116 " guestfs_add_cdrom (guestfs_h *g,\n"
21117 "                    const char *filename);\n"
21118 "\n"
21119 msgstr ""
21120
21121 #. type: textblock
21122 #: ../src/guestfs-actions.pod:17
21123 msgid ""
21124 "This call checks for the existence of C<filename>.  This stops you from "
21125 "specifying other types of drive which are supported by qemu such as C<nbd:> "
21126 "and C<http:> URLs.  To specify those, use the general C<guestfs_config> call "
21127 "instead."
21128 msgstr ""
21129
21130 #. type: textblock
21131 #: ../src/guestfs-actions.pod:24
21132 msgid ""
21133 "If you just want to add an ISO file (often you use this as an efficient way "
21134 "to transfer large files into the guest), then you should probably use "
21135 "C<guestfs_add_drive_ro> instead."
21136 msgstr ""
21137
21138 #. type: textblock
21139 #: ../src/guestfs-actions.pod:30 ../src/guestfs-actions.pod:140 ../src/guestfs-actions.pod:201 ../src/guestfs-actions.pod:238 ../src/guestfs-actions.pod:252 ../src/guestfs-actions.pod:273 ../src/guestfs-actions.pod:293 ../src/guestfs-actions.pod:307 ../src/guestfs-actions.pod:422 ../src/guestfs-actions.pod:442 ../src/guestfs-actions.pod:456 ../src/guestfs-actions.pod:501 ../src/guestfs-actions.pod:529 ../src/guestfs-actions.pod:547 ../src/guestfs-actions.pod:614 ../src/guestfs-actions.pod:647 ../src/guestfs-actions.pod:661 ../src/guestfs-actions.pod:676 ../src/guestfs-actions.pod:775 ../src/guestfs-actions.pod:793 ../src/guestfs-actions.pod:807 ../src/guestfs-actions.pod:821 ../src/guestfs-actions.pod:858 ../src/guestfs-actions.pod:1041 ../src/guestfs-actions.pod:1061 ../src/guestfs-actions.pod:1079 ../src/guestfs-actions.pod:1163 ../src/guestfs-actions.pod:1181 ../src/guestfs-actions.pod:1200 ../src/guestfs-actions.pod:1214 ../src/guestfs-actions.pod:1234 ../src/guestfs-actions.pod:1304 ../src/guestfs-actions.pod:1335 ../src/guestfs-actions.pod:1360 ../src/guestfs-actions.pod:1402 ../src/guestfs-actions.pod:1508 ../src/guestfs-actions.pod:1542 ../src/guestfs-actions.pod:1757 ../src/guestfs-actions.pod:1779 ../src/guestfs-actions.pod:1866 ../src/guestfs-actions.pod:2341 ../src/guestfs-actions.pod:2485 ../src/guestfs-actions.pod:2546 ../src/guestfs-actions.pod:2581 ../src/guestfs-actions.pod:3621 ../src/guestfs-actions.pod:3636 ../src/guestfs-actions.pod:3661 ../src/guestfs-actions.pod:3850 ../src/guestfs-actions.pod:3864 ../src/guestfs-actions.pod:3877 ../src/guestfs-actions.pod:3891 ../src/guestfs-actions.pod:3906 ../src/guestfs-actions.pod:3942 ../src/guestfs-actions.pod:4014 ../src/guestfs-actions.pod:4034 ../src/guestfs-actions.pod:4051 ../src/guestfs-actions.pod:4074 ../src/guestfs-actions.pod:4097 ../src/guestfs-actions.pod:4132 ../src/guestfs-actions.pod:4151 ../src/guestfs-actions.pod:4170 ../src/guestfs-actions.pod:4205 ../src/guestfs-actions.pod:4217 ../src/guestfs-actions.pod:4253 ../src/guestfs-actions.pod:4269 ../src/guestfs-actions.pod:4282 ../src/guestfs-actions.pod:4297 ../src/guestfs-actions.pod:4314 ../src/guestfs-actions.pod:4407 ../src/guestfs-actions.pod:4427 ../src/guestfs-actions.pod:4440 ../src/guestfs-actions.pod:4491 ../src/guestfs-actions.pod:4509 ../src/guestfs-actions.pod:4527 ../src/guestfs-actions.pod:4543 ../src/guestfs-actions.pod:4557 ../src/guestfs-actions.pod:4571 ../src/guestfs-actions.pod:4588 ../src/guestfs-actions.pod:4603 ../src/guestfs-actions.pod:4623 ../src/guestfs-actions.pod:4693 ../src/guestfs-actions.pod:4766 ../src/guestfs-actions.pod:4797 ../src/guestfs-actions.pod:4816 ../src/guestfs-actions.pod:4835 ../src/guestfs-actions.pod:4847 ../src/guestfs-actions.pod:4864 ../src/guestfs-actions.pod:4877 ../src/guestfs-actions.pod:4892 ../src/guestfs-actions.pod:4907 ../src/guestfs-actions.pod:4942 ../src/guestfs-actions.pod:4975 ../src/guestfs-actions.pod:5014 ../src/guestfs-actions.pod:5034 ../src/guestfs-actions.pod:5048 ../src/guestfs-actions.pod:5065 ../src/guestfs-actions.pod:5114 ../src/guestfs-actions.pod:5160 ../src/guestfs-actions.pod:5214 ../src/guestfs-actions.pod:5250 ../src/guestfs-actions.pod:5285 ../src/guestfs-actions.pod:5302 ../src/guestfs-actions.pod:5320 ../src/guestfs-actions.pod:5460 ../src/guestfs-actions.pod:5517 ../src/guestfs-actions.pod:5539 ../src/guestfs-actions.pod:5557 ../src/guestfs-actions.pod:5589 ../src/guestfs-actions.pod:5655 ../src/guestfs-actions.pod:5672 ../src/guestfs-actions.pod:5685 ../src/guestfs-actions.pod:5699 ../src/guestfs-actions.pod:5988 ../src/guestfs-actions.pod:6007 ../src/guestfs-actions.pod:6026 ../src/guestfs-actions.pod:6040 ../src/guestfs-actions.pod:6052 ../src/guestfs-actions.pod:6066 ../src/guestfs-actions.pod:6078 ../src/guestfs-actions.pod:6092 ../src/guestfs-actions.pod:6108 ../src/guestfs-actions.pod:6129 ../src/guestfs-actions.pod:6148 ../src/guestfs-actions.pod:6167 ../src/guestfs-actions.pod:6197 ../src/guestfs-actions.pod:6215 ../src/guestfs-actions.pod:6238 ../src/guestfs-actions.pod:6256 ../src/guestfs-actions.pod:6275 ../src/guestfs-actions.pod:6296 ../src/guestfs-actions.pod:6315 ../src/guestfs-actions.pod:6332 ../src/guestfs-actions.pod:6351 ../src/guestfs-actions.pod:6379 ../src/guestfs-actions.pod:6403 ../src/guestfs-actions.pod:6422 ../src/guestfs-actions.pod:6446 ../src/guestfs-actions.pod:6465 ../src/guestfs-actions.pod:6480 ../src/guestfs-actions.pod:6499 ../src/guestfs-actions.pod:6536 ../src/guestfs-actions.pod:6566 ../src/guestfs-actions.pod:6599 ../src/guestfs-actions.pod:6721 ../src/guestfs-actions.pod:6842 ../src/guestfs-actions.pod:6854 ../src/guestfs-actions.pod:6867 ../src/guestfs-actions.pod:6880 ../src/guestfs-actions.pod:6902 ../src/guestfs-actions.pod:6915 ../src/guestfs-actions.pod:6928 ../src/guestfs-actions.pod:6941 ../src/guestfs-actions.pod:6956 ../src/guestfs-actions.pod:7015 ../src/guestfs-actions.pod:7032 ../src/guestfs-actions.pod:7048 ../src/guestfs-actions.pod:7064 ../src/guestfs-actions.pod:7081 ../src/guestfs-actions.pod:7094 ../src/guestfs-actions.pod:7114 ../src/guestfs-actions.pod:7150 ../src/guestfs-actions.pod:7164 ../src/guestfs-actions.pod:7205 ../src/guestfs-actions.pod:7218 ../src/guestfs-actions.pod:7236 ../src/guestfs-actions.pod:7270 ../src/guestfs-actions.pod:7306 ../src/guestfs-actions.pod:7422 ../src/guestfs-actions.pod:7437 ../src/guestfs-actions.pod:7451 ../src/guestfs-actions.pod:7506 ../src/guestfs-actions.pod:7519 ../src/guestfs-actions.pod:7564 ../src/guestfs-actions.pod:7597 ../src/guestfs-actions.pod:7660 ../src/guestfs-actions.pod:7680 ../src/guestfs-actions.pod:7706 ../src/guestfs-actions.pod:7773 ../src/guestfs-actions.pod:7792 ../src/guestfs-actions.pod:7821
21140 msgid "This function returns 0 on success or -1 on error."
21141 msgstr ""
21142
21143 #. type: textblock
21144 #: ../src/guestfs-actions.pod:39 ../src/guestfs-actions.pod:142 ../src/guestfs-actions.pod:1165 ../src/guestfs-actions.pod:1980 ../src/guestfs-actions.pod:2078 ../src/guestfs-actions.pod:2192 ../src/guestfs-actions.pod:3623 ../src/guestfs-actions.pod:3643 ../src/guestfs-actions.pod:4951 ../src/guestfs-actions.pod:6217 ../src/guestfs-actions.pod:6334 ../src/guestfs-actions.pod:6467 ../src/guestfs-actions.pod:6958 ../src/guestfs-actions.pod:7083 ../src/guestfs-actions.pod:7606
21145 msgid "(Added in 0.3)"
21146 msgstr ""
21147
21148 #. type: =head2
21149 #: ../src/guestfs-actions.pod:41
21150 msgid "guestfs_add_domain"
21151 msgstr ""
21152
21153 #. type: verbatim
21154 #: ../src/guestfs-actions.pod:43
21155 #, no-wrap
21156 msgid ""
21157 " int\n"
21158 " guestfs_add_domain (guestfs_h *g,\n"
21159 "                     const char *dom,\n"
21160 "                     ...);\n"
21161 "\n"
21162 msgstr ""
21163
21164 #. type: textblock
21165 #: ../src/guestfs-actions.pod:48 ../src/guestfs-actions.pod:151 ../src/guestfs-actions.pod:832 ../src/guestfs-actions.pod:2826 ../src/guestfs-actions.pod:4642 ../src/guestfs-actions.pod:4961 ../src/guestfs-actions.pod:5178
21166 msgid ""
21167 "You may supply a list of optional arguments to this call.  Use zero or more "
21168 "of the following pairs of parameters, and terminate the list with C<-1> on "
21169 "its own.  See L</CALLS WITH OPTIONAL ARGUMENTS>."
21170 msgstr ""
21171
21172 #. type: verbatim
21173 #: ../src/guestfs-actions.pod:53
21174 #, no-wrap
21175 msgid ""
21176 " GUESTFS_ADD_DOMAIN_LIBVIRTURI, const char *libvirturi,\n"
21177 " GUESTFS_ADD_DOMAIN_READONLY, int readonly,\n"
21178 " GUESTFS_ADD_DOMAIN_IFACE, const char *iface,\n"
21179 " GUESTFS_ADD_DOMAIN_LIVE, int live,\n"
21180 " GUESTFS_ADD_DOMAIN_ALLOWUUID, int allowuuid,\n"
21181 "\n"
21182 msgstr ""
21183
21184 #. type: textblock
21185 #: ../src/guestfs-actions.pod:59
21186 msgid ""
21187 "This function adds the disk(s) attached to the named libvirt domain C<dom>.  "
21188 "It works by connecting to libvirt, requesting the domain and domain XML from "
21189 "libvirt, parsing it for disks, and calling C<guestfs_add_drive_opts> on each "
21190 "one."
21191 msgstr ""
21192
21193 #. type: textblock
21194 #: ../src/guestfs-actions.pod:94
21195 msgid ""
21196 "The other optional parameters are passed directly through to "
21197 "C<guestfs_add_drive_opts>."
21198 msgstr ""
21199
21200 #. type: textblock
21201 #: ../src/guestfs-actions.pod:97 ../src/guestfs-actions.pod:350 ../src/guestfs-actions.pod:515 ../src/guestfs-actions.pod:693 ../src/guestfs-actions.pod:724 ../src/guestfs-actions.pod:742 ../src/guestfs-actions.pod:761 ../src/guestfs-actions.pod:1380 ../src/guestfs-actions.pod:1736 ../src/guestfs-actions.pod:1939 ../src/guestfs-actions.pod:2050 ../src/guestfs-actions.pod:2101 ../src/guestfs-actions.pod:2156 ../src/guestfs-actions.pod:2179 ../src/guestfs-actions.pod:2472 ../src/guestfs-actions.pod:2944 ../src/guestfs-actions.pod:2962 ../src/guestfs-actions.pod:5137 ../src/guestfs-actions.pod:5357 ../src/guestfs-actions.pod:5769 ../src/guestfs-actions.pod:5795 ../src/guestfs-actions.pod:7191 ../src/guestfs-actions.pod:7617 ../src/guestfs-actions.pod:7630 ../src/guestfs-actions.pod:7643
21202 msgid "On error this function returns -1."
21203 msgstr ""
21204
21205 #. type: textblock
21206 #: ../src/guestfs-actions.pod:99
21207 msgid "(Added in 1.7.4)"
21208 msgstr ""
21209
21210 #. type: =head2
21211 #: ../src/guestfs-actions.pod:101
21212 msgid "guestfs_add_domain_va"
21213 msgstr ""
21214
21215 #. type: verbatim
21216 #: ../src/guestfs-actions.pod:103
21217 #, no-wrap
21218 msgid ""
21219 " int\n"
21220 " guestfs_add_domain_va (guestfs_h *g,\n"
21221 "                        const char *dom,\n"
21222 "                        va_list args);\n"
21223 "\n"
21224 msgstr ""
21225
21226 #. type: textblock
21227 #: ../src/guestfs-actions.pod:108
21228 msgid "This is the \"va_list variant\" of L</guestfs_add_domain>."
21229 msgstr ""
21230
21231 #. type: textblock
21232 #: ../src/guestfs-actions.pod:110 ../src/guestfs-actions.pod:121 ../src/guestfs-actions.pod:214 ../src/guestfs-actions.pod:225 ../src/guestfs-actions.pod:871 ../src/guestfs-actions.pod:882 ../src/guestfs-actions.pod:2910 ../src/guestfs-actions.pod:2922 ../src/guestfs-actions.pod:4707 ../src/guestfs-actions.pod:4719 ../src/guestfs-actions.pod:4989 ../src/guestfs-actions.pod:5001 ../src/guestfs-actions.pod:5227 ../src/guestfs-actions.pod:5238
21233 msgid "See L</CALLS WITH OPTIONAL ARGUMENTS>."
21234 msgstr ""
21235
21236 #. type: =head2
21237 #: ../src/guestfs-actions.pod:112
21238 msgid "guestfs_add_domain_argv"
21239 msgstr ""
21240
21241 #. type: verbatim
21242 #: ../src/guestfs-actions.pod:114
21243 #, no-wrap
21244 msgid ""
21245 " int\n"
21246 " guestfs_add_domain_argv (guestfs_h *g,\n"
21247 "                          const char *dom,\n"
21248 "                          const struct guestfs_add_domain_argv *optargs);\n"
21249 "\n"
21250 msgstr ""
21251
21252 #. type: textblock
21253 #: ../src/guestfs-actions.pod:119
21254 msgid "This is the \"argv variant\" of L</guestfs_add_domain>."
21255 msgstr ""
21256
21257 #. type: =head2
21258 #: ../src/guestfs-actions.pod:123
21259 msgid "guestfs_add_drive"
21260 msgstr ""
21261
21262 #. type: verbatim
21263 #: ../src/guestfs-actions.pod:125
21264 #, no-wrap
21265 msgid ""
21266 " int\n"
21267 " guestfs_add_drive (guestfs_h *g,\n"
21268 "                    const char *filename);\n"
21269 "\n"
21270 msgstr ""
21271
21272 #. type: textblock
21273 #: ../src/guestfs-actions.pod:129
21274 msgid ""
21275 "This function is the equivalent of calling C<guestfs_add_drive_opts> with no "
21276 "optional parameters, so the disk is added writable, with the format being "
21277 "detected automatically."
21278 msgstr ""
21279
21280 #. type: textblock
21281 #: ../src/guestfs-actions.pod:133
21282 msgid ""
21283 "Automatic detection of the format opens you up to a potential security hole "
21284 "when dealing with untrusted raw-format images.  See CVE-2010-3851 and "
21285 "RHBZ#642934.  Specifying the format closes this security hole.  Therefore "
21286 "you should think about replacing calls to this function with calls to "
21287 "C<guestfs_add_drive_opts>, and specifying the format."
21288 msgstr ""
21289
21290 #. type: =head2
21291 #: ../src/guestfs-actions.pod:144
21292 msgid "guestfs_add_drive_opts"
21293 msgstr ""
21294
21295 #. type: verbatim
21296 #: ../src/guestfs-actions.pod:146
21297 #, no-wrap
21298 msgid ""
21299 " int\n"
21300 " guestfs_add_drive_opts (guestfs_h *g,\n"
21301 "                         const char *filename,\n"
21302 "                         ...);\n"
21303 "\n"
21304 msgstr ""
21305
21306 #. type: verbatim
21307 #: ../src/guestfs-actions.pod:156
21308 #, no-wrap
21309 msgid ""
21310 " GUESTFS_ADD_DRIVE_OPTS_READONLY, int readonly,\n"
21311 " GUESTFS_ADD_DRIVE_OPTS_FORMAT, const char *format,\n"
21312 " GUESTFS_ADD_DRIVE_OPTS_IFACE, const char *iface,\n"
21313 "\n"
21314 msgstr ""
21315
21316 #. type: textblock
21317 #: ../src/guestfs-actions.pod:185
21318 msgid ""
21319 "This forces the image format.  If you omit this (or use C<guestfs_add_drive> "
21320 "or C<guestfs_add_drive_ro>) then the format is automatically detected.  "
21321 "Possible formats include C<raw> and C<qcow2>."
21322 msgstr ""
21323
21324 #. type: textblock
21325 #: ../src/guestfs-actions.pod:196
21326 msgid ""
21327 "This rarely-used option lets you emulate the behaviour of the deprecated "
21328 "C<guestfs_add_drive_with_if> call (q.v.)"
21329 msgstr ""
21330
21331 #. type: textblock
21332 #: ../src/guestfs-actions.pod:203
21333 msgid "(Added in 1.5.23)"
21334 msgstr ""
21335
21336 #. type: =head2
21337 #: ../src/guestfs-actions.pod:205
21338 msgid "guestfs_add_drive_opts_va"
21339 msgstr ""
21340
21341 #. type: verbatim
21342 #: ../src/guestfs-actions.pod:207
21343 #, no-wrap
21344 msgid ""
21345 " int\n"
21346 " guestfs_add_drive_opts_va (guestfs_h *g,\n"
21347 "                            const char *filename,\n"
21348 "                            va_list args);\n"
21349 "\n"
21350 msgstr ""
21351
21352 #. type: textblock
21353 #: ../src/guestfs-actions.pod:212
21354 msgid "This is the \"va_list variant\" of L</guestfs_add_drive_opts>."
21355 msgstr ""
21356
21357 #. type: =head2
21358 #: ../src/guestfs-actions.pod:216
21359 msgid "guestfs_add_drive_opts_argv"
21360 msgstr ""
21361
21362 #. type: verbatim
21363 #: ../src/guestfs-actions.pod:218
21364 #, no-wrap
21365 msgid ""
21366 " int\n"
21367 " guestfs_add_drive_opts_argv (guestfs_h *g,\n"
21368 "                              const char *filename,\n"
21369 "                              const struct guestfs_add_drive_opts_argv "
21370 "*optargs);\n"
21371 "\n"
21372 msgstr ""
21373
21374 #. type: textblock
21375 #: ../src/guestfs-actions.pod:223
21376 msgid "This is the \"argv variant\" of L</guestfs_add_drive_opts>."
21377 msgstr ""
21378
21379 #. type: =head2
21380 #: ../src/guestfs-actions.pod:227
21381 msgid "guestfs_add_drive_ro"
21382 msgstr ""
21383
21384 #. type: verbatim
21385 #: ../src/guestfs-actions.pod:229
21386 #, no-wrap
21387 msgid ""
21388 " int\n"
21389 " guestfs_add_drive_ro (guestfs_h *g,\n"
21390 "                       const char *filename);\n"
21391 "\n"
21392 msgstr ""
21393
21394 #. type: textblock
21395 #: ../src/guestfs-actions.pod:233
21396 msgid ""
21397 "This function is the equivalent of calling C<guestfs_add_drive_opts> with "
21398 "the optional parameter C<GUESTFS_ADD_DRIVE_OPTS_READONLY> set to 1, so the "
21399 "disk is added read-only, with the format being detected automatically."
21400 msgstr ""
21401
21402 #. type: textblock
21403 #: ../src/guestfs-actions.pod:240
21404 msgid "(Added in 1.0.38)"
21405 msgstr ""
21406
21407 #. type: =head2
21408 #: ../src/guestfs-actions.pod:242
21409 msgid "guestfs_add_drive_ro_with_if"
21410 msgstr ""
21411
21412 #. type: verbatim
21413 #: ../src/guestfs-actions.pod:244
21414 #, no-wrap
21415 msgid ""
21416 " int\n"
21417 " guestfs_add_drive_ro_with_if (guestfs_h *g,\n"
21418 "                               const char *filename,\n"
21419 "                               const char *iface);\n"
21420 "\n"
21421 msgstr ""
21422
21423 #. type: textblock
21424 #: ../src/guestfs-actions.pod:249
21425 msgid ""
21426 "This is the same as C<guestfs_add_drive_ro> but it allows you to specify the "
21427 "QEMU interface emulation to use at run time."
21428 msgstr ""
21429
21430 #. type: textblock
21431 #: ../src/guestfs-actions.pod:261 ../src/guestfs-actions.pod:282 ../src/guestfs-actions.pod:2431
21432 msgid "(Added in 1.0.84)"
21433 msgstr ""
21434
21435 #. type: =head2
21436 #: ../src/guestfs-actions.pod:263
21437 msgid "guestfs_add_drive_with_if"
21438 msgstr ""
21439
21440 #. type: verbatim
21441 #: ../src/guestfs-actions.pod:265
21442 #, no-wrap
21443 msgid ""
21444 " int\n"
21445 " guestfs_add_drive_with_if (guestfs_h *g,\n"
21446 "                            const char *filename,\n"
21447 "                            const char *iface);\n"
21448 "\n"
21449 msgstr ""
21450
21451 #. type: textblock
21452 #: ../src/guestfs-actions.pod:270
21453 msgid ""
21454 "This is the same as C<guestfs_add_drive> but it allows you to specify the "
21455 "QEMU interface emulation to use at run time."
21456 msgstr ""
21457
21458 #. type: =head2
21459 #: ../src/guestfs-actions.pod:284
21460 msgid "guestfs_aug_clear"
21461 msgstr ""
21462
21463 #. type: verbatim
21464 #: ../src/guestfs-actions.pod:286
21465 #, no-wrap
21466 msgid ""
21467 " int\n"
21468 " guestfs_aug_clear (guestfs_h *g,\n"
21469 "                    const char *augpath);\n"
21470 "\n"
21471 msgstr ""
21472
21473 #. type: textblock
21474 #: ../src/guestfs-actions.pod:295 ../src/guestfs-actions.pod:2181
21475 msgid "(Added in 1.3.4)"
21476 msgstr ""
21477
21478 #. type: =head2
21479 #: ../src/guestfs-actions.pod:297
21480 msgid "guestfs_aug_close"
21481 msgstr ""
21482
21483 #. type: verbatim
21484 #: ../src/guestfs-actions.pod:299
21485 #, no-wrap
21486 msgid ""
21487 " int\n"
21488 " guestfs_aug_close (guestfs_h *g);\n"
21489 "\n"
21490 msgstr ""
21491
21492 #. type: textblock
21493 #: ../src/guestfs-actions.pod:302
21494 msgid ""
21495 "Close the current Augeas handle and free up any resources used by it.  After "
21496 "calling this, you have to call C<guestfs_aug_init> again before you can use "
21497 "any other Augeas functions."
21498 msgstr ""
21499
21500 #. type: textblock
21501 #: ../src/guestfs-actions.pod:309 ../src/guestfs-actions.pod:334 ../src/guestfs-actions.pod:352 ../src/guestfs-actions.pod:366 ../src/guestfs-actions.pod:424 ../src/guestfs-actions.pod:444 ../src/guestfs-actions.pod:458 ../src/guestfs-actions.pod:489 ../src/guestfs-actions.pod:503 ../src/guestfs-actions.pod:517 ../src/guestfs-actions.pod:531 ../src/guestfs-actions.pod:549 ../src/guestfs-actions.pod:5846
21502 msgid "(Added in 0.7)"
21503 msgstr ""
21504
21505 #. type: =head2
21506 #: ../src/guestfs-actions.pod:311
21507 msgid "guestfs_aug_defnode"
21508 msgstr ""
21509
21510 #. type: verbatim
21511 #: ../src/guestfs-actions.pod:313
21512 #, no-wrap
21513 msgid ""
21514 " struct guestfs_int_bool *\n"
21515 " guestfs_aug_defnode (guestfs_h *g,\n"
21516 "                      const char *name,\n"
21517 "                      const char *expr,\n"
21518 "                      const char *val);\n"
21519 "\n"
21520 msgstr ""
21521
21522 #. type: textblock
21523 #: ../src/guestfs-actions.pod:322
21524 msgid ""
21525 "If C<expr> evaluates to an empty nodeset, a node is created, equivalent to "
21526 "calling C<guestfs_aug_set> C<expr>, C<value>.  C<name> will be the nodeset "
21527 "containing that single node."
21528 msgstr ""
21529
21530 #. type: textblock
21531 #: ../src/guestfs-actions.pod:330
21532 msgid ""
21533 "This function returns a C<struct guestfs_int_bool *>, or NULL if there was "
21534 "an error.  I<The caller must call C<guestfs_free_int_bool> after use>."
21535 msgstr ""
21536
21537 #. type: =head2
21538 #: ../src/guestfs-actions.pod:336
21539 msgid "guestfs_aug_defvar"
21540 msgstr ""
21541
21542 #. type: verbatim
21543 #: ../src/guestfs-actions.pod:338
21544 #, no-wrap
21545 msgid ""
21546 " int\n"
21547 " guestfs_aug_defvar (guestfs_h *g,\n"
21548 "                     const char *name,\n"
21549 "                     const char *expr);\n"
21550 "\n"
21551 msgstr ""
21552
21553 #. type: =head2
21554 #: ../src/guestfs-actions.pod:354
21555 msgid "guestfs_aug_get"
21556 msgstr ""
21557
21558 #. type: verbatim
21559 #: ../src/guestfs-actions.pod:356
21560 #, no-wrap
21561 msgid ""
21562 " char *\n"
21563 " guestfs_aug_get (guestfs_h *g,\n"
21564 "                  const char *augpath);\n"
21565 "\n"
21566 msgstr ""
21567
21568 #. type: textblock
21569 #: ../src/guestfs-actions.pod:363 ../src/guestfs-actions.pod:922 ../src/guestfs-actions.pod:940 ../src/guestfs-actions.pod:1000 ../src/guestfs-actions.pod:1016 ../src/guestfs-actions.pod:1119 ../src/guestfs-actions.pod:1249 ../src/guestfs-actions.pod:1266 ../src/guestfs-actions.pod:1285 ../src/guestfs-actions.pod:1419 ../src/guestfs-actions.pod:1607 ../src/guestfs-actions.pod:1719 ../src/guestfs-actions.pod:1882 ../src/guestfs-actions.pod:1899 ../src/guestfs-actions.pod:1966 ../src/guestfs-actions.pod:2002 ../src/guestfs-actions.pod:2023 ../src/guestfs-actions.pod:2204 ../src/guestfs-actions.pod:2396 ../src/guestfs-actions.pod:2600 ../src/guestfs-actions.pod:2690 ../src/guestfs-actions.pod:2794 ../src/guestfs-actions.pod:2813 ../src/guestfs-actions.pod:3027 ../src/guestfs-actions.pod:3055 ../src/guestfs-actions.pod:3076 ../src/guestfs-actions.pod:3110 ../src/guestfs-actions.pod:3169 ../src/guestfs-actions.pod:3189 ../src/guestfs-actions.pod:3209 ../src/guestfs-actions.pod:3836 ../src/guestfs-actions.pod:4189 ../src/guestfs-actions.pod:4359 ../src/guestfs-actions.pod:4469 ../src/guestfs-actions.pod:5375 ../src/guestfs-actions.pod:5574 ../src/guestfs-actions.pod:5744 ../src/guestfs-actions.pod:5922 ../src/guestfs-actions.pod:5971 ../src/guestfs-actions.pod:6627 ../src/guestfs-actions.pod:6643 ../src/guestfs-actions.pod:6660 ../src/guestfs-actions.pod:6691 ../src/guestfs-actions.pod:7365 ../src/guestfs-actions.pod:7384 ../src/guestfs-actions.pod:7402 ../src/guestfs-actions.pod:7576 ../src/guestfs-actions.pod:7878
21570 msgid ""
21571 "This function returns a string, or NULL on error.  I<The caller must free "
21572 "the returned string after use>."
21573 msgstr ""
21574
21575 #. type: =head2
21576 #: ../src/guestfs-actions.pod:368
21577 msgid "guestfs_aug_init"
21578 msgstr ""
21579
21580 #. type: verbatim
21581 #: ../src/guestfs-actions.pod:370
21582 #, no-wrap
21583 msgid ""
21584 " int\n"
21585 " guestfs_aug_init (guestfs_h *g,\n"
21586 "                   const char *root,\n"
21587 "                   int flags);\n"
21588 "\n"
21589 msgstr ""
21590
21591 #. type: textblock
21592 #: ../src/guestfs-actions.pod:379
21593 msgid "You must call this before using any other C<guestfs_aug_*> commands."
21594 msgstr ""
21595
21596 #. type: textblock
21597 #: ../src/guestfs-actions.pod:414
21598 msgid "Do not load the tree in C<guestfs_aug_init>."
21599 msgstr ""
21600
21601 #. type: textblock
21602 #: ../src/guestfs-actions.pod:418
21603 msgid "To close the handle, you can call C<guestfs_aug_close>."
21604 msgstr ""
21605
21606 #. type: =head2
21607 #: ../src/guestfs-actions.pod:426
21608 msgid "guestfs_aug_insert"
21609 msgstr ""
21610
21611 #. type: verbatim
21612 #: ../src/guestfs-actions.pod:428
21613 #, no-wrap
21614 msgid ""
21615 " int\n"
21616 " guestfs_aug_insert (guestfs_h *g,\n"
21617 "                     const char *augpath,\n"
21618 "                     const char *label,\n"
21619 "                     int before);\n"
21620 "\n"
21621 msgstr ""
21622
21623 #. type: =head2
21624 #: ../src/guestfs-actions.pod:446
21625 msgid "guestfs_aug_load"
21626 msgstr ""
21627
21628 #. type: verbatim
21629 #: ../src/guestfs-actions.pod:448
21630 #, no-wrap
21631 msgid ""
21632 " int\n"
21633 " guestfs_aug_load (guestfs_h *g);\n"
21634 "\n"
21635 msgstr ""
21636
21637 #. type: =head2
21638 #: ../src/guestfs-actions.pod:460
21639 msgid "guestfs_aug_ls"
21640 msgstr ""
21641
21642 #. type: verbatim
21643 #: ../src/guestfs-actions.pod:462
21644 #, no-wrap
21645 msgid ""
21646 " char **\n"
21647 " guestfs_aug_ls (guestfs_h *g,\n"
21648 "                 const char *augpath);\n"
21649 "\n"
21650 msgstr ""
21651
21652 #. type: textblock
21653 #: ../src/guestfs-actions.pod:466
21654 msgid ""
21655 "This is just a shortcut for listing C<guestfs_aug_match> C<path/*> and "
21656 "sorting the resulting nodes into alphabetical order."
21657 msgstr ""
21658
21659 #. type: textblock
21660 #: ../src/guestfs-actions.pod:469 ../src/guestfs-actions.pod:485 ../src/guestfs-actions.pod:631 ../src/guestfs-actions.pod:1138 ../src/guestfs-actions.pod:1434 ../src/guestfs-actions.pod:1453 ../src/guestfs-actions.pod:1556 ../src/guestfs-actions.pod:1575 ../src/guestfs-actions.pod:1821 ../src/guestfs-actions.pod:2276 ../src/guestfs-actions.pod:2292 ../src/guestfs-actions.pod:2311 ../src/guestfs-actions.pod:2354 ../src/guestfs-actions.pod:2378 ../src/guestfs-actions.pod:2449 ../src/guestfs-actions.pod:2498 ../src/guestfs-actions.pod:2755 ../src/guestfs-actions.pod:3129 ../src/guestfs-actions.pod:3405 ../src/guestfs-actions.pod:3719 ../src/guestfs-actions.pod:3736 ../src/guestfs-actions.pod:3756 ../src/guestfs-actions.pod:3818 ../src/guestfs-actions.pod:3923 ../src/guestfs-actions.pod:4331 ../src/guestfs-actions.pod:5098 ../src/guestfs-actions.pod:5716 ../src/guestfs-actions.pod:5842 ../src/guestfs-actions.pod:5956 ../src/guestfs-actions.pod:6707 ../src/guestfs-actions.pod:6768 ../src/guestfs-actions.pod:6823 ../src/guestfs-actions.pod:6969 ../src/guestfs-actions.pod:6993 ../src/guestfs-actions.pod:7469 ../src/guestfs-actions.pod:7489 ../src/guestfs-actions.pod:7536 ../src/guestfs-actions.pod:7730 ../src/guestfs-actions.pod:7749 ../src/guestfs-actions.pod:7835 ../src/guestfs-actions.pod:7854 ../src/guestfs-actions.pod:7900 ../src/guestfs-actions.pod:7919
21661 msgid ""
21662 "This function returns a NULL-terminated array of strings (like "
21663 "L<environ(3)>), or NULL if there was an error.  I<The caller must free the "
21664 "strings and the array after use>."
21665 msgstr ""
21666
21667 #. type: textblock
21668 #: ../src/guestfs-actions.pod:473 ../src/guestfs-actions.pod:1063 ../src/guestfs-actions.pod:1081 ../src/guestfs-actions.pod:1491 ../src/guestfs-actions.pod:3483 ../src/guestfs-actions.pod:3514 ../src/guestfs-actions.pod:4172 ../src/guestfs-actions.pod:4222 ../src/guestfs-actions.pod:4409 ../src/guestfs-actions.pod:4442 ../src/guestfs-actions.pod:4605 ../src/guestfs-actions.pod:5102 ../src/guestfs-actions.pod:5657 ../src/guestfs-actions.pod:6054 ../src/guestfs-actions.pod:6068 ../src/guestfs-actions.pod:6080 ../src/guestfs-actions.pod:6548 ../src/guestfs-actions.pod:7207 ../src/guestfs-actions.pod:7220 ../src/guestfs-actions.pod:7453 ../src/guestfs-actions.pod:7718
21669 msgid "(Added in 0.8)"
21670 msgstr ""
21671
21672 #. type: =head2
21673 #: ../src/guestfs-actions.pod:475
21674 msgid "guestfs_aug_match"
21675 msgstr ""
21676
21677 #. type: verbatim
21678 #: ../src/guestfs-actions.pod:477
21679 #, no-wrap
21680 msgid ""
21681 " char **\n"
21682 " guestfs_aug_match (guestfs_h *g,\n"
21683 "                    const char *augpath);\n"
21684 "\n"
21685 msgstr ""
21686
21687 #. type: =head2
21688 #: ../src/guestfs-actions.pod:491
21689 msgid "guestfs_aug_mv"
21690 msgstr ""
21691
21692 #. type: verbatim
21693 #: ../src/guestfs-actions.pod:493
21694 #, no-wrap
21695 msgid ""
21696 " int\n"
21697 " guestfs_aug_mv (guestfs_h *g,\n"
21698 "                 const char *src,\n"
21699 "                 const char *dest);\n"
21700 "\n"
21701 msgstr ""
21702
21703 #. type: =head2
21704 #: ../src/guestfs-actions.pod:505
21705 msgid "guestfs_aug_rm"
21706 msgstr ""
21707
21708 #. type: verbatim
21709 #: ../src/guestfs-actions.pod:507
21710 #, no-wrap
21711 msgid ""
21712 " int\n"
21713 " guestfs_aug_rm (guestfs_h *g,\n"
21714 "                 const char *augpath);\n"
21715 "\n"
21716 msgstr ""
21717
21718 #. type: =head2
21719 #: ../src/guestfs-actions.pod:519
21720 msgid "guestfs_aug_save"
21721 msgstr ""
21722
21723 #. type: verbatim
21724 #: ../src/guestfs-actions.pod:521
21725 #, no-wrap
21726 msgid ""
21727 " int\n"
21728 " guestfs_aug_save (guestfs_h *g);\n"
21729 "\n"
21730 msgstr ""
21731
21732 #. type: textblock
21733 #: ../src/guestfs-actions.pod:526
21734 msgid ""
21735 "The flags which were passed to C<guestfs_aug_init> affect exactly how files "
21736 "are saved."
21737 msgstr ""
21738
21739 #. type: =head2
21740 #: ../src/guestfs-actions.pod:533
21741 msgid "guestfs_aug_set"
21742 msgstr ""
21743
21744 #. type: verbatim
21745 #: ../src/guestfs-actions.pod:535
21746 #, no-wrap
21747 msgid ""
21748 " int\n"
21749 " guestfs_aug_set (guestfs_h *g,\n"
21750 "                  const char *augpath,\n"
21751 "                  const char *val);\n"
21752 "\n"
21753 msgstr ""
21754
21755 #. type: textblock
21756 #: ../src/guestfs-actions.pod:542
21757 msgid ""
21758 "In the Augeas API, it is possible to clear a node by setting the value to "
21759 "NULL.  Due to an oversight in the libguestfs API you cannot do that with "
21760 "this call.  Instead you must use the C<guestfs_aug_clear> call."
21761 msgstr ""
21762
21763 #. type: =head2
21764 #: ../src/guestfs-actions.pod:551
21765 msgid "guestfs_available"
21766 msgstr ""
21767
21768 #. type: verbatim
21769 #: ../src/guestfs-actions.pod:553
21770 #, no-wrap
21771 msgid ""
21772 " int\n"
21773 " guestfs_available (guestfs_h *g,\n"
21774 "                    char *const *groups);\n"
21775 "\n"
21776 msgstr ""
21777
21778 #. type: textblock
21779 #: ../src/guestfs-actions.pod:561
21780 msgid ""
21781 "The libguestfs groups, and the functions that those groups correspond to, "
21782 "are listed in L<guestfs(3)/AVAILABILITY>.  You can also fetch this list at "
21783 "runtime by calling C<guestfs_available_all_groups>."
21784 msgstr ""
21785
21786 #. type: textblock
21787 #: ../src/guestfs-actions.pod:585
21788 msgid "You must call C<guestfs_launch> before calling this function."
21789 msgstr ""
21790
21791 #. type: textblock
21792 #: ../src/guestfs-actions.pod:607
21793 msgid ""
21794 "This call was added in version C<1.0.80>.  In previous versions of "
21795 "libguestfs all you could do would be to speculatively execute a command to "
21796 "find out if the daemon implemented it.  See also C<guestfs_version>."
21797 msgstr ""
21798
21799 #. type: textblock
21800 #: ../src/guestfs-actions.pod:616 ../src/guestfs-actions.pod:1236
21801 msgid "(Added in 1.0.80)"
21802 msgstr ""
21803
21804 #. type: =head2
21805 #: ../src/guestfs-actions.pod:618
21806 msgid "guestfs_available_all_groups"
21807 msgstr ""
21808
21809 #. type: verbatim
21810 #: ../src/guestfs-actions.pod:620
21811 #, no-wrap
21812 msgid ""
21813 " char **\n"
21814 " guestfs_available_all_groups (guestfs_h *g);\n"
21815 "\n"
21816 msgstr ""
21817
21818 #. type: textblock
21819 #: ../src/guestfs-actions.pod:623
21820 msgid ""
21821 "This command returns a list of all optional groups that this daemon knows "
21822 "about.  Note this returns both supported and unsupported groups.  To find "
21823 "out which ones the daemon can actually support you have to call "
21824 "C<guestfs_available> on each member of the returned list."
21825 msgstr ""
21826
21827 #. type: textblock
21828 #: ../src/guestfs-actions.pod:629
21829 msgid "See also C<guestfs_available> and L<guestfs(3)/AVAILABILITY>."
21830 msgstr ""
21831
21832 #. type: textblock
21833 #: ../src/guestfs-actions.pod:635
21834 msgid "(Added in 1.3.15)"
21835 msgstr ""
21836
21837 #. type: =head2
21838 #: ../src/guestfs-actions.pod:637
21839 msgid "guestfs_base64_in"
21840 msgstr ""
21841
21842 #. type: verbatim
21843 #: ../src/guestfs-actions.pod:639
21844 #, no-wrap
21845 msgid ""
21846 " int\n"
21847 " guestfs_base64_in (guestfs_h *g,\n"
21848 "                    const char *base64file,\n"
21849 "                    const char *filename);\n"
21850 "\n"
21851 msgstr ""
21852
21853 #. type: textblock
21854 #: ../src/guestfs-actions.pod:649 ../src/guestfs-actions.pod:663
21855 msgid "(Added in 1.3.5)"
21856 msgstr ""
21857
21858 #. type: =head2
21859 #: ../src/guestfs-actions.pod:651
21860 msgid "guestfs_base64_out"
21861 msgstr ""
21862
21863 #. type: verbatim
21864 #: ../src/guestfs-actions.pod:653
21865 #, no-wrap
21866 msgid ""
21867 " int\n"
21868 " guestfs_base64_out (guestfs_h *g,\n"
21869 "                     const char *filename,\n"
21870 "                     const char *base64file);\n"
21871 "\n"
21872 msgstr ""
21873
21874 #. type: =head2
21875 #: ../src/guestfs-actions.pod:665
21876 msgid "guestfs_blockdev_flushbufs"
21877 msgstr ""
21878
21879 #. type: verbatim
21880 #: ../src/guestfs-actions.pod:667
21881 #, no-wrap
21882 msgid ""
21883 " int\n"
21884 " guestfs_blockdev_flushbufs (guestfs_h *g,\n"
21885 "                             const char *device);\n"
21886 "\n"
21887 msgstr ""
21888
21889 #. type: textblock
21890 #: ../src/guestfs-actions.pod:678 ../src/guestfs-actions.pod:695 ../src/guestfs-actions.pod:710 ../src/guestfs-actions.pod:726 ../src/guestfs-actions.pod:744 ../src/guestfs-actions.pod:763 ../src/guestfs-actions.pod:777 ../src/guestfs-actions.pod:795 ../src/guestfs-actions.pod:809 ../src/guestfs-actions.pod:823
21891 msgid "(Added in 0.9.3)"
21892 msgstr ""
21893
21894 #. type: =head2
21895 #: ../src/guestfs-actions.pod:680
21896 msgid "guestfs_blockdev_getbsz"
21897 msgstr ""
21898
21899 #. type: verbatim
21900 #: ../src/guestfs-actions.pod:682
21901 #, no-wrap
21902 msgid ""
21903 " int\n"
21904 " guestfs_blockdev_getbsz (guestfs_h *g,\n"
21905 "                          const char *device);\n"
21906 "\n"
21907 msgstr ""
21908
21909 #. type: =head2
21910 #: ../src/guestfs-actions.pod:697
21911 msgid "guestfs_blockdev_getro"
21912 msgstr ""
21913
21914 #. type: verbatim
21915 #: ../src/guestfs-actions.pod:699
21916 #, no-wrap
21917 msgid ""
21918 " int\n"
21919 " guestfs_blockdev_getro (guestfs_h *g,\n"
21920 "                         const char *device);\n"
21921 "\n"
21922 msgstr ""
21923
21924 #. type: textblock
21925 #: ../src/guestfs-actions.pod:708 ../src/guestfs-actions.pod:1474 ../src/guestfs-actions.pod:1489 ../src/guestfs-actions.pod:1978 ../src/guestfs-actions.pod:1989 ../src/guestfs-actions.pod:2061 ../src/guestfs-actions.pod:2087 ../src/guestfs-actions.pod:2127 ../src/guestfs-actions.pod:2142 ../src/guestfs-actions.pod:2167 ../src/guestfs-actions.pod:2190 ../src/guestfs-actions.pod:3226 ../src/guestfs-actions.pod:3242 ../src/guestfs-actions.pod:3260 ../src/guestfs-actions.pod:3422 ../src/guestfs-actions.pod:3436 ../src/guestfs-actions.pod:3451 ../src/guestfs-actions.pod:3465 ../src/guestfs-actions.pod:3481 ../src/guestfs-actions.pod:3496 ../src/guestfs-actions.pod:3512 ../src/guestfs-actions.pod:3526 ../src/guestfs-actions.pod:3539 ../src/guestfs-actions.pod:3553 ../src/guestfs-actions.pod:3568 ../src/guestfs-actions.pod:3583 ../src/guestfs-actions.pod:3596 ../src/guestfs-actions.pod:3610 ../src/guestfs-actions.pod:5339
21926 msgid "This function returns a C truth value on success or -1 on error."
21927 msgstr ""
21928
21929 #. type: =head2
21930 #: ../src/guestfs-actions.pod:712
21931 msgid "guestfs_blockdev_getsize64"
21932 msgstr ""
21933
21934 #. type: verbatim
21935 #: ../src/guestfs-actions.pod:714
21936 #, no-wrap
21937 msgid ""
21938 " int64_t\n"
21939 " guestfs_blockdev_getsize64 (guestfs_h *g,\n"
21940 "                             const char *device);\n"
21941 "\n"
21942 msgstr ""
21943
21944 #. type: textblock
21945 #: ../src/guestfs-actions.pod:720
21946 msgid "See also C<guestfs_blockdev_getsz>."
21947 msgstr ""
21948
21949 #. type: =head2
21950 #: ../src/guestfs-actions.pod:728
21951 msgid "guestfs_blockdev_getss"
21952 msgstr ""
21953
21954 #. type: verbatim
21955 #: ../src/guestfs-actions.pod:730
21956 #, no-wrap
21957 msgid ""
21958 " int\n"
21959 " guestfs_blockdev_getss (guestfs_h *g,\n"
21960 "                         const char *device);\n"
21961 "\n"
21962 msgstr ""
21963
21964 #. type: textblock
21965 #: ../src/guestfs-actions.pod:737
21966 msgid ""
21967 "(Note, this is not the size in sectors, use C<guestfs_blockdev_getsz> for "
21968 "that)."
21969 msgstr ""
21970
21971 #. type: =head2
21972 #: ../src/guestfs-actions.pod:746
21973 msgid "guestfs_blockdev_getsz"
21974 msgstr ""
21975
21976 #. type: verbatim
21977 #: ../src/guestfs-actions.pod:748
21978 #, no-wrap
21979 msgid ""
21980 " int64_t\n"
21981 " guestfs_blockdev_getsz (guestfs_h *g,\n"
21982 "                         const char *device);\n"
21983 "\n"
21984 msgstr ""
21985
21986 #. type: textblock
21987 #: ../src/guestfs-actions.pod:755
21988 msgid ""
21989 "See also C<guestfs_blockdev_getss> for the real sector size of the device, "
21990 "and C<guestfs_blockdev_getsize64> for the more useful I<size in bytes>."
21991 msgstr ""
21992
21993 #. type: =head2
21994 #: ../src/guestfs-actions.pod:765
21995 msgid "guestfs_blockdev_rereadpt"
21996 msgstr ""
21997
21998 #. type: verbatim
21999 #: ../src/guestfs-actions.pod:767
22000 #, no-wrap
22001 msgid ""
22002 " int\n"
22003 " guestfs_blockdev_rereadpt (guestfs_h *g,\n"
22004 "                            const char *device);\n"
22005 "\n"
22006 msgstr ""
22007
22008 #. type: =head2
22009 #: ../src/guestfs-actions.pod:779
22010 msgid "guestfs_blockdev_setbsz"
22011 msgstr ""
22012
22013 #. type: verbatim
22014 #: ../src/guestfs-actions.pod:781
22015 #, no-wrap
22016 msgid ""
22017 " int\n"
22018 " guestfs_blockdev_setbsz (guestfs_h *g,\n"
22019 "                          const char *device,\n"
22020 "                          int blocksize);\n"
22021 "\n"
22022 msgstr ""
22023
22024 #. type: =head2
22025 #: ../src/guestfs-actions.pod:797
22026 msgid "guestfs_blockdev_setro"
22027 msgstr ""
22028
22029 #. type: verbatim
22030 #: ../src/guestfs-actions.pod:799
22031 #, no-wrap
22032 msgid ""
22033 " int\n"
22034 " guestfs_blockdev_setro (guestfs_h *g,\n"
22035 "                         const char *device);\n"
22036 "\n"
22037 msgstr ""
22038
22039 #. type: =head2
22040 #: ../src/guestfs-actions.pod:811
22041 msgid "guestfs_blockdev_setrw"
22042 msgstr ""
22043
22044 #. type: verbatim
22045 #: ../src/guestfs-actions.pod:813
22046 #, no-wrap
22047 msgid ""
22048 " int\n"
22049 " guestfs_blockdev_setrw (guestfs_h *g,\n"
22050 "                         const char *device);\n"
22051 "\n"
22052 msgstr ""
22053
22054 #. type: =head2
22055 #: ../src/guestfs-actions.pod:825
22056 msgid "guestfs_btrfs_filesystem_resize"
22057 msgstr ""
22058
22059 #. type: verbatim
22060 #: ../src/guestfs-actions.pod:827
22061 #, no-wrap
22062 msgid ""
22063 " int\n"
22064 " guestfs_btrfs_filesystem_resize (guestfs_h *g,\n"
22065 "                                  const char *mountpoint,\n"
22066 "                                  ...);\n"
22067 "\n"
22068 msgstr ""
22069
22070 #. type: verbatim
22071 #: ../src/guestfs-actions.pod:837
22072 #, no-wrap
22073 msgid ""
22074 " GUESTFS_BTRFS_FILESYSTEM_RESIZE_SIZE, int64_t size,\n"
22075 "\n"
22076 msgstr ""
22077
22078 #. type: textblock
22079 #: ../src/guestfs-actions.pod:860
22080 msgid "(Added in 1.11.17)"
22081 msgstr ""
22082
22083 #. type: =head2
22084 #: ../src/guestfs-actions.pod:862
22085 msgid "guestfs_btrfs_filesystem_resize_va"
22086 msgstr ""
22087
22088 #. type: verbatim
22089 #: ../src/guestfs-actions.pod:864
22090 #, no-wrap
22091 msgid ""
22092 " int\n"
22093 " guestfs_btrfs_filesystem_resize_va (guestfs_h *g,\n"
22094 "                                     const char *mountpoint,\n"
22095 "                                     va_list args);\n"
22096 "\n"
22097 msgstr ""
22098
22099 #. type: textblock
22100 #: ../src/guestfs-actions.pod:869
22101 msgid "This is the \"va_list variant\" of L</guestfs_btrfs_filesystem_resize>."
22102 msgstr ""
22103
22104 #. type: =head2
22105 #: ../src/guestfs-actions.pod:873
22106 msgid "guestfs_btrfs_filesystem_resize_argv"
22107 msgstr ""
22108
22109 #. type: verbatim
22110 #: ../src/guestfs-actions.pod:875
22111 #, no-wrap
22112 msgid ""
22113 " int\n"
22114 " guestfs_btrfs_filesystem_resize_argv (guestfs_h *g,\n"
22115 "                                       const char *mountpoint,\n"
22116 "                                       const struct "
22117 "guestfs_btrfs_filesystem_resize_argv *optargs);\n"
22118 "\n"
22119 msgstr ""
22120
22121 #. type: textblock
22122 #: ../src/guestfs-actions.pod:880
22123 msgid "This is the \"argv variant\" of L</guestfs_btrfs_filesystem_resize>."
22124 msgstr ""
22125
22126 #. type: =head2
22127 #: ../src/guestfs-actions.pod:884
22128 msgid "guestfs_case_sensitive_path"
22129 msgstr ""
22130
22131 #. type: verbatim
22132 #: ../src/guestfs-actions.pod:886
22133 #, no-wrap
22134 msgid ""
22135 " char *\n"
22136 " guestfs_case_sensitive_path (guestfs_h *g,\n"
22137 "                              const char *path);\n"
22138 "\n"
22139 msgstr ""
22140
22141 #. type: textblock
22142 #: ../src/guestfs-actions.pod:912
22143 msgid ""
22144 "Thus C<guestfs_case_sensitive_path> (\"/Windows/System32\")  might return "
22145 "C<\"/WINDOWS/system32\"> (the exact return value would depend on details of "
22146 "how the directories were originally created under Windows)."
22147 msgstr ""
22148
22149 #. type: textblock
22150 #: ../src/guestfs-actions.pod:920
22151 msgid "See also C<guestfs_realpath>."
22152 msgstr ""
22153
22154 #. type: textblock
22155 #: ../src/guestfs-actions.pod:925 ../src/guestfs-actions.pod:7387
22156 msgid "(Added in 1.0.75)"
22157 msgstr ""
22158
22159 #. type: =head2
22160 #: ../src/guestfs-actions.pod:927
22161 msgid "guestfs_cat"
22162 msgstr ""
22163
22164 #. type: verbatim
22165 #: ../src/guestfs-actions.pod:929
22166 #, no-wrap
22167 msgid ""
22168 " char *\n"
22169 " guestfs_cat (guestfs_h *g,\n"
22170 "              const char *path);\n"
22171 "\n"
22172 msgstr ""
22173
22174 #. type: textblock
22175 #: ../src/guestfs-actions.pod:935
22176 msgid ""
22177 "Note that this function cannot correctly handle binary files (specifically, "
22178 "files containing C<\\0> character which is treated as end of string).  For "
22179 "those you need to use the C<guestfs_read_file> or C<guestfs_download> "
22180 "functions which have a more complex interface."
22181 msgstr ""
22182
22183 #. type: textblock
22184 #: ../src/guestfs-actions.pod:946 ../src/guestfs-actions.pod:3740 ../src/guestfs-actions.pod:3822 ../src/guestfs-actions.pod:3839 ../src/guestfs-actions.pod:3927 ../src/guestfs-actions.pod:4335 ../src/guestfs-actions.pod:4349 ../src/guestfs-actions.pod:5720 ../src/guestfs-actions.pod:5734 ../src/guestfs-actions.pod:7540 ../src/guestfs-actions.pod:7554
22185 msgid "(Added in 0.4)"
22186 msgstr ""
22187
22188 #. type: =head2
22189 #: ../src/guestfs-actions.pod:948
22190 msgid "guestfs_checksum"
22191 msgstr ""
22192
22193 #. type: verbatim
22194 #: ../src/guestfs-actions.pod:950
22195 #, no-wrap
22196 msgid ""
22197 " char *\n"
22198 " guestfs_checksum (guestfs_h *g,\n"
22199 "                   const char *csumtype,\n"
22200 "                   const char *path);\n"
22201 "\n"
22202 msgstr ""
22203
22204 #. type: textblock
22205 #: ../src/guestfs-actions.pod:996
22206 msgid "To get the checksum for a device, use C<guestfs_checksum_device>."
22207 msgstr ""
22208
22209 #. type: textblock
22210 #: ../src/guestfs-actions.pod:998
22211 msgid "To get the checksums for many files, use C<guestfs_checksums_out>."
22212 msgstr ""
22213
22214 #. type: textblock
22215 #: ../src/guestfs-actions.pod:1003 ../src/guestfs-actions.pod:1311 ../src/guestfs-actions.pod:2158 ../src/guestfs-actions.pod:3438 ../src/guestfs-actions.pod:3467 ../src/guestfs-actions.pod:3528 ../src/guestfs-actions.pod:3555 ../src/guestfs-actions.pod:7243
22216 msgid "(Added in 1.0.2)"
22217 msgstr ""
22218
22219 #. type: =head2
22220 #: ../src/guestfs-actions.pod:1005
22221 msgid "guestfs_checksum_device"
22222 msgstr ""
22223
22224 #. type: verbatim
22225 #: ../src/guestfs-actions.pod:1007
22226 #, no-wrap
22227 msgid ""
22228 " char *\n"
22229 " guestfs_checksum_device (guestfs_h *g,\n"
22230 "                          const char *csumtype,\n"
22231 "                          const char *device);\n"
22232 "\n"
22233 msgstr ""
22234
22235 #. type: textblock
22236 #: ../src/guestfs-actions.pod:1012
22237 msgid ""
22238 "This call computes the MD5, SHAx or CRC checksum of the contents of the "
22239 "device named C<device>.  For the types of checksums supported see the "
22240 "C<guestfs_checksum> command."
22241 msgstr ""
22242
22243 #. type: textblock
22244 #: ../src/guestfs-actions.pod:1019 ../src/guestfs-actions.pod:5169 ../src/guestfs-actions.pod:5304 ../src/guestfs-actions.pod:5341 ../src/guestfs-actions.pod:5359 ../src/guestfs-actions.pod:5541 ../src/guestfs-actions.pod:7152 ../src/guestfs-actions.pod:7166 ../src/guestfs-actions.pod:7566
22245 msgid "(Added in 1.3.2)"
22246 msgstr ""
22247
22248 #. type: =head2
22249 #: ../src/guestfs-actions.pod:1021
22250 msgid "guestfs_checksums_out"
22251 msgstr ""
22252
22253 #. type: verbatim
22254 #: ../src/guestfs-actions.pod:1023
22255 #, no-wrap
22256 msgid ""
22257 " int\n"
22258 " guestfs_checksums_out (guestfs_h *g,\n"
22259 "                        const char *csumtype,\n"
22260 "                        const char *directory,\n"
22261 "                        const char *sumsfile);\n"
22262 "\n"
22263 msgstr ""
22264
22265 #. type: textblock
22266 #: ../src/guestfs-actions.pod:1043
22267 msgid "(Added in 1.3.7)"
22268 msgstr ""
22269
22270 #. type: =head2
22271 #: ../src/guestfs-actions.pod:1045
22272 msgid "guestfs_chmod"
22273 msgstr ""
22274
22275 #. type: verbatim
22276 #: ../src/guestfs-actions.pod:1047
22277 #, no-wrap
22278 msgid ""
22279 " int\n"
22280 " guestfs_chmod (guestfs_h *g,\n"
22281 "                int mode,\n"
22282 "                const char *path);\n"
22283 "\n"
22284 msgstr ""
22285
22286 #. type: =head2
22287 #: ../src/guestfs-actions.pod:1065
22288 msgid "guestfs_chown"
22289 msgstr ""
22290
22291 #. type: verbatim
22292 #: ../src/guestfs-actions.pod:1067
22293 #, no-wrap
22294 msgid ""
22295 " int\n"
22296 " guestfs_chown (guestfs_h *g,\n"
22297 "                int owner,\n"
22298 "                int group,\n"
22299 "                const char *path);\n"
22300 "\n"
22301 msgstr ""
22302
22303 #. type: =head2
22304 #: ../src/guestfs-actions.pod:1083
22305 msgid "guestfs_command"
22306 msgstr ""
22307
22308 #. type: verbatim
22309 #: ../src/guestfs-actions.pod:1085
22310 #, no-wrap
22311 msgid ""
22312 " char *\n"
22313 " guestfs_command (guestfs_h *g,\n"
22314 "                  char *const *arguments);\n"
22315 "\n"
22316 msgstr ""
22317
22318 #. type: textblock
22319 #: ../src/guestfs-actions.pod:1094
22320 msgid ""
22321 "The single parameter is an argv-style list of arguments.  The first element "
22322 "is the name of the program to run.  Subsequent elements are parameters.  The "
22323 "list must be non-empty (ie. must contain a program name).  Note that the "
22324 "command runs directly, and is I<not> invoked via the shell (see "
22325 "C<guestfs_sh>)."
22326 msgstr ""
22327
22328 #. type: textblock
22329 #: ../src/guestfs-actions.pod:1125 ../src/guestfs-actions.pod:1145 ../src/guestfs-actions.pod:1610
22330 msgid "(Added in 0.9.1)"
22331 msgstr ""
22332
22333 #. type: =head2
22334 #: ../src/guestfs-actions.pod:1127
22335 msgid "guestfs_command_lines"
22336 msgstr ""
22337
22338 #. type: verbatim
22339 #: ../src/guestfs-actions.pod:1129
22340 #, no-wrap
22341 msgid ""
22342 " char **\n"
22343 " guestfs_command_lines (guestfs_h *g,\n"
22344 "                        char *const *arguments);\n"
22345 "\n"
22346 msgstr ""
22347
22348 #. type: textblock
22349 #: ../src/guestfs-actions.pod:1133
22350 msgid ""
22351 "This is the same as C<guestfs_command>, but splits the result into a list of "
22352 "lines."
22353 msgstr ""
22354
22355 #. type: textblock
22356 #: ../src/guestfs-actions.pod:1136
22357 msgid "See also: C<guestfs_sh_lines>"
22358 msgstr ""
22359
22360 #. type: =head2
22361 #: ../src/guestfs-actions.pod:1147
22362 msgid "guestfs_config"
22363 msgstr ""
22364
22365 #. type: verbatim
22366 #: ../src/guestfs-actions.pod:1149
22367 #, no-wrap
22368 msgid ""
22369 " int\n"
22370 " guestfs_config (guestfs_h *g,\n"
22371 "                 const char *qemuparam,\n"
22372 "                 const char *qemuvalue);\n"
22373 "\n"
22374 msgstr ""
22375
22376 #. type: =head2
22377 #: ../src/guestfs-actions.pod:1167
22378 msgid "guestfs_copy_size"
22379 msgstr ""
22380
22381 #. type: verbatim
22382 #: ../src/guestfs-actions.pod:1169
22383 #, no-wrap
22384 msgid ""
22385 " int\n"
22386 " guestfs_copy_size (guestfs_h *g,\n"
22387 "                    const char *src,\n"
22388 "                    const char *dest,\n"
22389 "                    int64_t size);\n"
22390 "\n"
22391 msgstr ""
22392
22393 #. type: textblock
22394 #: ../src/guestfs-actions.pod:1183 ../src/guestfs-actions.pod:1306 ../src/guestfs-actions.pod:1337 ../src/guestfs-actions.pod:1382 ../src/guestfs-actions.pod:1759 ../src/guestfs-actions.pod:1781 ../src/guestfs-actions.pod:3638 ../src/guestfs-actions.pod:7238 ../src/guestfs-actions.pod:7272 ../src/guestfs-actions.pod:7775 ../src/guestfs-actions.pod:7794
22395 msgid ""
22396 "This long-running command can generate progress notification messages so "
22397 "that the caller can display a progress bar or indicator.  To receive these "
22398 "messages, the caller must register a progress event callback.  See "
22399 "L<guestfs(3)/GUESTFS_EVENT_PROGRESS>."
22400 msgstr ""
22401
22402 #. type: textblock
22403 #: ../src/guestfs-actions.pod:1188 ../src/guestfs-actions.pod:4362 ../src/guestfs-actions.pod:5747 ../src/guestfs-actions.pod:7473 ../src/guestfs-actions.pod:7493 ../src/guestfs-actions.pod:7579
22404 msgid "(Added in 1.0.87)"
22405 msgstr ""
22406
22407 #. type: =head2
22408 #: ../src/guestfs-actions.pod:1190
22409 msgid "guestfs_cp"
22410 msgstr ""
22411
22412 #. type: verbatim
22413 #: ../src/guestfs-actions.pod:1192
22414 #, no-wrap
22415 msgid ""
22416 " int\n"
22417 " guestfs_cp (guestfs_h *g,\n"
22418 "             const char *src,\n"
22419 "             const char *dest);\n"
22420 "\n"
22421 msgstr ""
22422
22423 #. type: textblock
22424 #: ../src/guestfs-actions.pod:1202 ../src/guestfs-actions.pod:1216 ../src/guestfs-actions.pod:1288 ../src/guestfs-actions.pod:1362 ../src/guestfs-actions.pod:1476 ../src/guestfs-actions.pod:5116 ../src/guestfs-actions.pod:5591
22425 msgid "(Added in 1.0.18)"
22426 msgstr ""
22427
22428 #. type: =head2
22429 #: ../src/guestfs-actions.pod:1204
22430 msgid "guestfs_cp_a"
22431 msgstr ""
22432
22433 #. type: verbatim
22434 #: ../src/guestfs-actions.pod:1206
22435 #, no-wrap
22436 msgid ""
22437 " int\n"
22438 " guestfs_cp_a (guestfs_h *g,\n"
22439 "               const char *src,\n"
22440 "               const char *dest);\n"
22441 "\n"
22442 msgstr ""
22443
22444 #. type: =head2
22445 #: ../src/guestfs-actions.pod:1218
22446 msgid "guestfs_dd"
22447 msgstr ""
22448
22449 #. type: verbatim
22450 #: ../src/guestfs-actions.pod:1220
22451 #, no-wrap
22452 msgid ""
22453 " int\n"
22454 " guestfs_dd (guestfs_h *g,\n"
22455 "             const char *src,\n"
22456 "             const char *dest);\n"
22457 "\n"
22458 msgstr ""
22459
22460 #. type: textblock
22461 #: ../src/guestfs-actions.pod:1230
22462 msgid ""
22463 "If the destination is a device, it must be as large or larger than the "
22464 "source file or device, otherwise the copy will fail.  This command cannot do "
22465 "partial copies (see C<guestfs_copy_size>)."
22466 msgstr ""
22467
22468 #. type: =head2
22469 #: ../src/guestfs-actions.pod:1238
22470 msgid "guestfs_df"
22471 msgstr ""
22472
22473 #. type: verbatim
22474 #: ../src/guestfs-actions.pod:1240
22475 #, no-wrap
22476 msgid ""
22477 " char *\n"
22478 " guestfs_df (guestfs_h *g);\n"
22479 "\n"
22480 msgstr ""
22481
22482 #. type: textblock
22483 #: ../src/guestfs-actions.pod:1245 ../src/guestfs-actions.pod:1262
22484 msgid ""
22485 "This command is mostly useful for interactive sessions.  It is I<not> "
22486 "intended that you try to parse the output string.  Use C<guestfs_statvfs> "
22487 "from programs."
22488 msgstr ""
22489
22490 #. type: textblock
22491 #: ../src/guestfs-actions.pod:1252 ../src/guestfs-actions.pod:1269 ../src/guestfs-actions.pod:1387 ../src/guestfs-actions.pod:2361 ../src/guestfs-actions.pod:2385 ../src/guestfs-actions.pod:2453 ../src/guestfs-actions.pod:4472 ../src/guestfs-actions.pod:5016 ../src/guestfs-actions.pod:6976 ../src/guestfs-actions.pod:7000 ../src/guestfs-actions.pod:7619 ../src/guestfs-actions.pod:7632 ../src/guestfs-actions.pod:7645
22492 msgid "(Added in 1.0.54)"
22493 msgstr ""
22494
22495 #. type: =head2
22496 #: ../src/guestfs-actions.pod:1254
22497 msgid "guestfs_df_h"
22498 msgstr ""
22499
22500 #. type: verbatim
22501 #: ../src/guestfs-actions.pod:1256
22502 #, no-wrap
22503 msgid ""
22504 " char *\n"
22505 " guestfs_df_h (guestfs_h *g);\n"
22506 "\n"
22507 msgstr ""
22508
22509 #. type: =head2
22510 #: ../src/guestfs-actions.pod:1271
22511 msgid "guestfs_dmesg"
22512 msgstr ""
22513
22514 #. type: verbatim
22515 #: ../src/guestfs-actions.pod:1273
22516 #, no-wrap
22517 msgid ""
22518 " char *\n"
22519 " guestfs_dmesg (guestfs_h *g);\n"
22520 "\n"
22521 msgstr ""
22522
22523 #. type: textblock
22524 #: ../src/guestfs-actions.pod:1280
22525 msgid ""
22526 "Another way to get the same information is to enable verbose messages with "
22527 "C<guestfs_set_verbose> or by setting the environment variable "
22528 "C<LIBGUESTFS_DEBUG=1> before running the program."
22529 msgstr ""
22530
22531 #. type: =head2
22532 #: ../src/guestfs-actions.pod:1290
22533 msgid "guestfs_download"
22534 msgstr ""
22535
22536 #. type: verbatim
22537 #: ../src/guestfs-actions.pod:1292
22538 #, no-wrap
22539 msgid ""
22540 " int\n"
22541 " guestfs_download (guestfs_h *g,\n"
22542 "                   const char *remotefilename,\n"
22543 "                   const char *filename);\n"
22544 "\n"
22545 msgstr ""
22546
22547 #. type: textblock
22548 #: ../src/guestfs-actions.pod:1302
22549 msgid "See also C<guestfs_upload>, C<guestfs_cat>."
22550 msgstr ""
22551
22552 #. type: =head2
22553 #: ../src/guestfs-actions.pod:1313
22554 msgid "guestfs_download_offset"
22555 msgstr ""
22556
22557 #. type: verbatim
22558 #: ../src/guestfs-actions.pod:1315
22559 #, no-wrap
22560 msgid ""
22561 " int\n"
22562 " guestfs_download_offset (guestfs_h *g,\n"
22563 "                          const char *remotefilename,\n"
22564 "                          const char *filename,\n"
22565 "                          int64_t offset,\n"
22566 "                          int64_t size);\n"
22567 "\n"
22568 msgstr ""
22569
22570 #. type: textblock
22571 #: ../src/guestfs-actions.pod:1328
22572 msgid ""
22573 "Note that there is no limit on the amount of data that can be downloaded "
22574 "with this call, unlike with C<guestfs_pread>, and this call always reads the "
22575 "full amount unless an error occurs."
22576 msgstr ""
22577
22578 #. type: textblock
22579 #: ../src/guestfs-actions.pod:1333
22580 msgid "See also C<guestfs_download>, C<guestfs_pread>."
22581 msgstr ""
22582
22583 #. type: textblock
22584 #: ../src/guestfs-actions.pod:1342 ../src/guestfs-actions.pod:7277
22585 msgid "(Added in 1.5.17)"
22586 msgstr ""
22587
22588 #. type: =head2
22589 #: ../src/guestfs-actions.pod:1344
22590 msgid "guestfs_drop_caches"
22591 msgstr ""
22592
22593 #. type: verbatim
22594 #: ../src/guestfs-actions.pod:1346
22595 #, no-wrap
22596 msgid ""
22597 " int\n"
22598 " guestfs_drop_caches (guestfs_h *g,\n"
22599 "                      int whattodrop);\n"
22600 "\n"
22601 msgstr ""
22602
22603 #. type: =head2
22604 #: ../src/guestfs-actions.pod:1364
22605 msgid "guestfs_du"
22606 msgstr ""
22607
22608 #. type: verbatim
22609 #: ../src/guestfs-actions.pod:1366
22610 #, no-wrap
22611 msgid ""
22612 " int64_t\n"
22613 " guestfs_du (guestfs_h *g,\n"
22614 "             const char *path);\n"
22615 "\n"
22616 msgstr ""
22617
22618 #. type: =head2
22619 #: ../src/guestfs-actions.pod:1389
22620 msgid "guestfs_e2fsck_f"
22621 msgstr ""
22622
22623 #. type: verbatim
22624 #: ../src/guestfs-actions.pod:1391
22625 #, no-wrap
22626 msgid ""
22627 " int\n"
22628 " guestfs_e2fsck_f (guestfs_h *g,\n"
22629 "                   const char *device);\n"
22630 "\n"
22631 msgstr ""
22632
22633 #. type: textblock
22634 #: ../src/guestfs-actions.pod:1399
22635 msgid ""
22636 "This command is only needed because of C<guestfs_resize2fs> (q.v.).  "
22637 "Normally you should use C<guestfs_fsck>."
22638 msgstr ""
22639
22640 #. type: textblock
22641 #: ../src/guestfs-actions.pod:1404
22642 msgid "(Added in 1.0.29)"
22643 msgstr ""
22644
22645 #. type: =head2
22646 #: ../src/guestfs-actions.pod:1406
22647 msgid "guestfs_echo_daemon"
22648 msgstr ""
22649
22650 #. type: verbatim
22651 #: ../src/guestfs-actions.pod:1408
22652 #, no-wrap
22653 msgid ""
22654 " char *\n"
22655 " guestfs_echo_daemon (guestfs_h *g,\n"
22656 "                      char *const *words);\n"
22657 "\n"
22658 msgstr ""
22659
22660 #. type: textblock
22661 #: ../src/guestfs-actions.pod:1417
22662 msgid "See also C<guestfs_ping_daemon>."
22663 msgstr ""
22664
22665 #. type: textblock
22666 #: ../src/guestfs-actions.pod:1422 ../src/guestfs-actions.pod:2169 ../src/guestfs-actions.pod:6448
22667 msgid "(Added in 1.0.69)"
22668 msgstr ""
22669
22670 #. type: =head2
22671 #: ../src/guestfs-actions.pod:1424
22672 msgid "guestfs_egrep"
22673 msgstr ""
22674
22675 #. type: verbatim
22676 #: ../src/guestfs-actions.pod:1426
22677 #, no-wrap
22678 msgid ""
22679 " char **\n"
22680 " guestfs_egrep (guestfs_h *g,\n"
22681 "                const char *regex,\n"
22682 "                const char *path);\n"
22683 "\n"
22684 msgstr ""
22685
22686 #. type: textblock
22687 #: ../src/guestfs-actions.pod:1441 ../src/guestfs-actions.pod:1460 ../src/guestfs-actions.pod:1517 ../src/guestfs-actions.pod:1563 ../src/guestfs-actions.pod:1582 ../src/guestfs-actions.pod:2299 ../src/guestfs-actions.pod:2318 ../src/guestfs-actions.pod:2474 ../src/guestfs-actions.pod:2487 ../src/guestfs-actions.pod:2502 ../src/guestfs-actions.pod:2548 ../src/guestfs-actions.pod:2570 ../src/guestfs-actions.pod:2583 ../src/guestfs-actions.pod:3852 ../src/guestfs-actions.pod:3866 ../src/guestfs-actions.pod:3879 ../src/guestfs-actions.pod:3893 ../src/guestfs-actions.pod:4894 ../src/guestfs-actions.pod:5925 ../src/guestfs-actions.pod:5974 ../src/guestfs-actions.pod:6844 ../src/guestfs-actions.pod:6856 ../src/guestfs-actions.pod:6869 ../src/guestfs-actions.pod:6882 ../src/guestfs-actions.pod:6904 ../src/guestfs-actions.pod:6917 ../src/guestfs-actions.pod:6930 ../src/guestfs-actions.pod:6943 ../src/guestfs-actions.pod:7737 ../src/guestfs-actions.pod:7756 ../src/guestfs-actions.pod:7842 ../src/guestfs-actions.pod:7861 ../src/guestfs-actions.pod:7907 ../src/guestfs-actions.pod:7926
22688 msgid "(Added in 1.0.66)"
22689 msgstr ""
22690
22691 #. type: =head2
22692 #: ../src/guestfs-actions.pod:1443
22693 msgid "guestfs_egrepi"
22694 msgstr ""
22695
22696 #. type: verbatim
22697 #: ../src/guestfs-actions.pod:1445
22698 #, no-wrap
22699 msgid ""
22700 " char **\n"
22701 " guestfs_egrepi (guestfs_h *g,\n"
22702 "                 const char *regex,\n"
22703 "                 const char *path);\n"
22704 "\n"
22705 msgstr ""
22706
22707 #. type: =head2
22708 #: ../src/guestfs-actions.pod:1462
22709 msgid "guestfs_equal"
22710 msgstr ""
22711
22712 #. type: verbatim
22713 #: ../src/guestfs-actions.pod:1464
22714 #, no-wrap
22715 msgid ""
22716 " int\n"
22717 " guestfs_equal (guestfs_h *g,\n"
22718 "                const char *file1,\n"
22719 "                const char *file2);\n"
22720 "\n"
22721 msgstr ""
22722
22723 #. type: =head2
22724 #: ../src/guestfs-actions.pod:1478
22725 msgid "guestfs_exists"
22726 msgstr ""
22727
22728 #. type: verbatim
22729 #: ../src/guestfs-actions.pod:1480
22730 #, no-wrap
22731 msgid ""
22732 " int\n"
22733 " guestfs_exists (guestfs_h *g,\n"
22734 "                 const char *path);\n"
22735 "\n"
22736 msgstr ""
22737
22738 #. type: textblock
22739 #: ../src/guestfs-actions.pod:1487
22740 msgid "See also C<guestfs_is_file>, C<guestfs_is_dir>, C<guestfs_stat>."
22741 msgstr ""
22742
22743 #. type: =head2
22744 #: ../src/guestfs-actions.pod:1493
22745 msgid "guestfs_fallocate"
22746 msgstr ""
22747
22748 #. type: verbatim
22749 #: ../src/guestfs-actions.pod:1495
22750 #, no-wrap
22751 msgid ""
22752 " int\n"
22753 " guestfs_fallocate (guestfs_h *g,\n"
22754 "                    const char *path,\n"
22755 "                    int len);\n"
22756 "\n"
22757 msgstr ""
22758
22759 #. type: =head2
22760 #: ../src/guestfs-actions.pod:1519
22761 msgid "guestfs_fallocate64"
22762 msgstr ""
22763
22764 #. type: verbatim
22765 #: ../src/guestfs-actions.pod:1521
22766 #, no-wrap
22767 msgid ""
22768 " int\n"
22769 " guestfs_fallocate64 (guestfs_h *g,\n"
22770 "                      const char *path,\n"
22771 "                      int64_t len);\n"
22772 "\n"
22773 msgstr ""
22774
22775 #. type: textblock
22776 #: ../src/guestfs-actions.pod:1530
22777 msgid ""
22778 "Note that this call allocates disk blocks for the file.  To create a sparse "
22779 "file use C<guestfs_truncate_size> instead."
22780 msgstr ""
22781
22782 #. type: textblock
22783 #: ../src/guestfs-actions.pod:1533
22784 msgid ""
22785 "The deprecated call C<guestfs_fallocate> does the same, but owing to an "
22786 "oversight it only allowed 30 bit lengths to be specified, effectively "
22787 "limiting the maximum size of files created through that call to 1GB."
22788 msgstr ""
22789
22790 #. type: textblock
22791 #: ../src/guestfs-actions.pod:1544
22792 msgid "(Added in 1.3.17)"
22793 msgstr ""
22794
22795 #. type: =head2
22796 #: ../src/guestfs-actions.pod:1546
22797 msgid "guestfs_fgrep"
22798 msgstr ""
22799
22800 #. type: verbatim
22801 #: ../src/guestfs-actions.pod:1548
22802 #, no-wrap
22803 msgid ""
22804 " char **\n"
22805 " guestfs_fgrep (guestfs_h *g,\n"
22806 "                const char *pattern,\n"
22807 "                const char *path);\n"
22808 "\n"
22809 msgstr ""
22810
22811 #. type: =head2
22812 #: ../src/guestfs-actions.pod:1565
22813 msgid "guestfs_fgrepi"
22814 msgstr ""
22815
22816 #. type: verbatim
22817 #: ../src/guestfs-actions.pod:1567
22818 #, no-wrap
22819 msgid ""
22820 " char **\n"
22821 " guestfs_fgrepi (guestfs_h *g,\n"
22822 "                 const char *pattern,\n"
22823 "                 const char *path);\n"
22824 "\n"
22825 msgstr ""
22826
22827 #. type: =head2
22828 #: ../src/guestfs-actions.pod:1584
22829 msgid "guestfs_file"
22830 msgstr ""
22831
22832 #. type: verbatim
22833 #: ../src/guestfs-actions.pod:1586
22834 #, no-wrap
22835 msgid ""
22836 " char *\n"
22837 " guestfs_file (guestfs_h *g,\n"
22838 "               const char *path);\n"
22839 "\n"
22840 msgstr ""
22841
22842 #. type: textblock
22843 #: ../src/guestfs-actions.pod:1604
22844 msgid ""
22845 "See also: L<file(1)>, C<guestfs_vfs_type>, C<guestfs_lstat>, "
22846 "C<guestfs_is_file>, C<guestfs_is_blockdev> (etc), C<guestfs_is_zero>."
22847 msgstr ""
22848
22849 #. type: =head2
22850 #: ../src/guestfs-actions.pod:1612
22851 msgid "guestfs_file_architecture"
22852 msgstr ""
22853
22854 #. type: verbatim
22855 #: ../src/guestfs-actions.pod:1614
22856 #, no-wrap
22857 msgid ""
22858 " char *\n"
22859 " guestfs_file_architecture (guestfs_h *g,\n"
22860 "                            const char *filename);\n"
22861 "\n"
22862 msgstr ""
22863
22864 #. type: textblock
22865 #: ../src/guestfs-actions.pod:1722 ../src/guestfs-actions.pod:1885 ../src/guestfs-actions.pod:1902 ../src/guestfs-actions.pod:2603 ../src/guestfs-actions.pod:2693 ../src/guestfs-actions.pod:2759 ../src/guestfs-actions.pod:2946 ../src/guestfs-actions.pod:2964 ../src/guestfs-actions.pod:3004 ../src/guestfs-actions.pod:3079 ../src/guestfs-actions.pod:3172 ../src/guestfs-actions.pod:3409 ../src/guestfs-actions.pod:3541
22866 msgid "(Added in 1.5.3)"
22867 msgstr ""
22868
22869 #. type: =head2
22870 #: ../src/guestfs-actions.pod:1724
22871 msgid "guestfs_filesize"
22872 msgstr ""
22873
22874 #. type: verbatim
22875 #: ../src/guestfs-actions.pod:1726
22876 #, no-wrap
22877 msgid ""
22878 " int64_t\n"
22879 " guestfs_filesize (guestfs_h *g,\n"
22880 "                   const char *file);\n"
22881 "\n"
22882 msgstr ""
22883
22884 #. type: textblock
22885 #: ../src/guestfs-actions.pod:1732
22886 msgid ""
22887 "To get other stats about a file, use C<guestfs_stat>, C<guestfs_lstat>, "
22888 "C<guestfs_is_dir>, C<guestfs_is_file> etc.  To get the size of block "
22889 "devices, use C<guestfs_blockdev_getsize64>."
22890 msgstr ""
22891
22892 #. type: textblock
22893 #: ../src/guestfs-actions.pod:1738
22894 msgid "(Added in 1.0.82)"
22895 msgstr ""
22896
22897 #. type: =head2
22898 #: ../src/guestfs-actions.pod:1740
22899 msgid "guestfs_fill"
22900 msgstr ""
22901
22902 #. type: verbatim
22903 #: ../src/guestfs-actions.pod:1742
22904 #, no-wrap
22905 msgid ""
22906 " int\n"
22907 " guestfs_fill (guestfs_h *g,\n"
22908 "               int c,\n"
22909 "               int len,\n"
22910 "               const char *path);\n"
22911 "\n"
22912 msgstr ""
22913
22914 #. type: textblock
22915 #: ../src/guestfs-actions.pod:1752
22916 msgid ""
22917 "To fill a file with zero bytes (sparsely), it is much more efficient to use "
22918 "C<guestfs_truncate_size>.  To create a file with a pattern of repeating "
22919 "bytes use C<guestfs_fill_pattern>."
22920 msgstr ""
22921
22922 #. type: textblock
22923 #: ../src/guestfs-actions.pod:1764
22924 msgid "(Added in 1.0.79)"
22925 msgstr ""
22926
22927 #. type: =head2
22928 #: ../src/guestfs-actions.pod:1766
22929 msgid "guestfs_fill_pattern"
22930 msgstr ""
22931
22932 #. type: verbatim
22933 #: ../src/guestfs-actions.pod:1768
22934 #, no-wrap
22935 msgid ""
22936 " int\n"
22937 " guestfs_fill_pattern (guestfs_h *g,\n"
22938 "                       const char *pattern,\n"
22939 "                       int len,\n"
22940 "                       const char *path);\n"
22941 "\n"
22942 msgstr ""
22943
22944 #. type: textblock
22945 #: ../src/guestfs-actions.pod:1774
22946 msgid ""
22947 "This function is like C<guestfs_fill> except that it creates a new file of "
22948 "length C<len> containing the repeating pattern of bytes in C<pattern>.  The "
22949 "pattern is truncated if necessary to ensure the length of the file is "
22950 "exactly C<len> bytes."
22951 msgstr ""
22952
22953 #. type: textblock
22954 #: ../src/guestfs-actions.pod:1786
22955 msgid "(Added in 1.3.12)"
22956 msgstr ""
22957
22958 #. type: =head2
22959 #: ../src/guestfs-actions.pod:1788
22960 msgid "guestfs_find"
22961 msgstr ""
22962
22963 #. type: verbatim
22964 #: ../src/guestfs-actions.pod:1790
22965 #, no-wrap
22966 msgid ""
22967 " char **\n"
22968 " guestfs_find (guestfs_h *g,\n"
22969 "               const char *directory);\n"
22970 "\n"
22971 msgstr ""
22972
22973 #. type: textblock
22974 #: ../src/guestfs-actions.pod:1806
22975 msgid "then the returned list from C<guestfs_find> C</tmp> would be 4 elements:"
22976 msgstr ""
22977
22978 #. type: textblock
22979 #: ../src/guestfs-actions.pod:1819
22980 msgid "See also C<guestfs_find0>."
22981 msgstr ""
22982
22983 #. type: textblock
22984 #: ../src/guestfs-actions.pod:1828 ../src/guestfs-actions.pod:4299 ../src/guestfs-actions.pod:6009
22985 msgid "(Added in 1.0.27)"
22986 msgstr ""
22987
22988 #. type: =head2
22989 #: ../src/guestfs-actions.pod:1830
22990 msgid "guestfs_find0"
22991 msgstr ""
22992
22993 #. type: verbatim
22994 #: ../src/guestfs-actions.pod:1832
22995 #, no-wrap
22996 msgid ""
22997 " int\n"
22998 " guestfs_find0 (guestfs_h *g,\n"
22999 "                const char *directory,\n"
23000 "                const char *files);\n"
23001 "\n"
23002 msgstr ""
23003
23004 #. type: textblock
23005 #: ../src/guestfs-actions.pod:1841
23006 msgid ""
23007 "This command works the same way as C<guestfs_find> with the following "
23008 "exceptions:"
23009 msgstr ""
23010
23011 #. type: textblock
23012 #: ../src/guestfs-actions.pod:1868
23013 msgid "(Added in 1.0.74)"
23014 msgstr ""
23015
23016 #. type: =head2
23017 #: ../src/guestfs-actions.pod:1870
23018 msgid "guestfs_findfs_label"
23019 msgstr ""
23020
23021 #. type: verbatim
23022 #: ../src/guestfs-actions.pod:1872
23023 #, no-wrap
23024 msgid ""
23025 " char *\n"
23026 " guestfs_findfs_label (guestfs_h *g,\n"
23027 "                       const char *label);\n"
23028 "\n"
23029 msgstr ""
23030
23031 #. type: textblock
23032 #: ../src/guestfs-actions.pod:1880
23033 msgid "To find the label of a filesystem, use C<guestfs_vfs_label>."
23034 msgstr ""
23035
23036 #. type: =head2
23037 #: ../src/guestfs-actions.pod:1887
23038 msgid "guestfs_findfs_uuid"
23039 msgstr ""
23040
23041 #. type: verbatim
23042 #: ../src/guestfs-actions.pod:1889
23043 #, no-wrap
23044 msgid ""
23045 " char *\n"
23046 " guestfs_findfs_uuid (guestfs_h *g,\n"
23047 "                      const char *uuid);\n"
23048 "\n"
23049 msgstr ""
23050
23051 #. type: textblock
23052 #: ../src/guestfs-actions.pod:1897
23053 msgid "To find the UUID of a filesystem, use C<guestfs_vfs_uuid>."
23054 msgstr ""
23055
23056 #. type: =head2
23057 #: ../src/guestfs-actions.pod:1904
23058 msgid "guestfs_fsck"
23059 msgstr ""
23060
23061 #. type: verbatim
23062 #: ../src/guestfs-actions.pod:1906
23063 #, no-wrap
23064 msgid ""
23065 " int\n"
23066 " guestfs_fsck (guestfs_h *g,\n"
23067 "               const char *fstype,\n"
23068 "               const char *device);\n"
23069 "\n"
23070 msgstr ""
23071
23072 #. type: textblock
23073 #: ../src/guestfs-actions.pod:1941 ../src/guestfs-actions.pod:7780
23074 msgid "(Added in 1.0.16)"
23075 msgstr ""
23076
23077 #. type: =head2
23078 #: ../src/guestfs-actions.pod:1943
23079 msgid "guestfs_get_append"
23080 msgstr ""
23081
23082 #. type: verbatim
23083 #: ../src/guestfs-actions.pod:1945
23084 #, no-wrap
23085 msgid ""
23086 " const char *\n"
23087 " guestfs_get_append (guestfs_h *g);\n"
23088 "\n"
23089 msgstr ""
23090
23091 #. type: textblock
23092 #: ../src/guestfs-actions.pod:1953
23093 msgid ""
23094 "This function returns a string which may be NULL.  There is no way to return "
23095 "an error from this function.  The string is owned by the guest handle and "
23096 "must I<not> be freed."
23097 msgstr ""
23098
23099 #. type: textblock
23100 #: ../src/guestfs-actions.pod:1957 ../src/guestfs-actions.pod:5687 ../src/guestfs-actions.pod:6169 ../src/guestfs-actions.pod:6611 ../src/guestfs-actions.pod:6630 ../src/guestfs-actions.pod:6646 ../src/guestfs-actions.pod:6670 ../src/guestfs-actions.pod:7424 ../src/guestfs-actions.pod:7439 ../src/guestfs-actions.pod:7823
23101 msgid "(Added in 1.0.26)"
23102 msgstr ""
23103
23104 #. type: =head2
23105 #: ../src/guestfs-actions.pod:1959
23106 msgid "guestfs_get_attach_method"
23107 msgstr ""
23108
23109 #. type: verbatim
23110 #: ../src/guestfs-actions.pod:1961
23111 #, no-wrap
23112 msgid ""
23113 " char *\n"
23114 " guestfs_get_attach_method (guestfs_h *g);\n"
23115 "\n"
23116 msgstr ""
23117
23118 #. type: textblock
23119 #: ../src/guestfs-actions.pod:1964
23120 msgid "Return the current attach method.  See C<guestfs_set_attach_method>."
23121 msgstr ""
23122
23123 #. type: textblock
23124 #: ../src/guestfs-actions.pod:1969 ../src/guestfs-actions.pod:6199
23125 msgid "(Added in 1.9.8)"
23126 msgstr ""
23127
23128 #. type: =head2
23129 #: ../src/guestfs-actions.pod:1971
23130 msgid "guestfs_get_autosync"
23131 msgstr ""
23132
23133 #. type: verbatim
23134 #: ../src/guestfs-actions.pod:1973
23135 #, no-wrap
23136 msgid ""
23137 " int\n"
23138 " guestfs_get_autosync (guestfs_h *g);\n"
23139 "\n"
23140 msgstr ""
23141
23142 #. type: =head2
23143 #: ../src/guestfs-actions.pod:1982
23144 msgid "guestfs_get_direct"
23145 msgstr ""
23146
23147 #. type: verbatim
23148 #: ../src/guestfs-actions.pod:1984
23149 #, no-wrap
23150 msgid ""
23151 " int\n"
23152 " guestfs_get_direct (guestfs_h *g);\n"
23153 "\n"
23154 msgstr ""
23155
23156 #. type: textblock
23157 #: ../src/guestfs-actions.pod:1991 ../src/guestfs-actions.pod:6240
23158 msgid "(Added in 1.0.72)"
23159 msgstr ""
23160
23161 #. type: =head2
23162 #: ../src/guestfs-actions.pod:1993
23163 msgid "guestfs_get_e2label"
23164 msgstr ""
23165
23166 #. type: verbatim
23167 #: ../src/guestfs-actions.pod:1995
23168 #, no-wrap
23169 msgid ""
23170 " char *\n"
23171 " guestfs_get_e2label (guestfs_h *g,\n"
23172 "                      const char *device);\n"
23173 "\n"
23174 msgstr ""
23175
23176 #. type: textblock
23177 #: ../src/guestfs-actions.pod:2012 ../src/guestfs-actions.pod:2033 ../src/guestfs-actions.pod:6258 ../src/guestfs-actions.pod:6277
23178 msgid "(Added in 1.0.15)"
23179 msgstr ""
23180
23181 #. type: =head2
23182 #: ../src/guestfs-actions.pod:2014
23183 msgid "guestfs_get_e2uuid"
23184 msgstr ""
23185
23186 #. type: verbatim
23187 #: ../src/guestfs-actions.pod:2016
23188 #, no-wrap
23189 msgid ""
23190 " char *\n"
23191 " guestfs_get_e2uuid (guestfs_h *g,\n"
23192 "                     const char *device);\n"
23193 "\n"
23194 msgstr ""
23195
23196 #. type: =head2
23197 #: ../src/guestfs-actions.pod:2035
23198 msgid "guestfs_get_memsize"
23199 msgstr ""
23200
23201 #. type: verbatim
23202 #: ../src/guestfs-actions.pod:2037
23203 #, no-wrap
23204 msgid ""
23205 " int\n"
23206 " guestfs_get_memsize (guestfs_h *g);\n"
23207 "\n"
23208 msgstr ""
23209
23210 #. type: textblock
23211 #: ../src/guestfs-actions.pod:2043
23212 msgid ""
23213 "If C<guestfs_set_memsize> was not called on this handle, and if "
23214 "C<LIBGUESTFS_MEMSIZE> was not set, then this returns the compiled-in default "
23215 "value for memsize."
23216 msgstr ""
23217
23218 #. type: textblock
23219 #: ../src/guestfs-actions.pod:2052 ../src/guestfs-actions.pod:4590 ../src/guestfs-actions.pod:4799 ../src/guestfs-actions.pod:4818 ../src/guestfs-actions.pod:4837 ../src/guestfs-actions.pod:4849 ../src/guestfs-actions.pod:4866 ../src/guestfs-actions.pod:4879 ../src/guestfs-actions.pod:5912 ../src/guestfs-actions.pod:6298 ../src/guestfs-actions.pod:6578 ../src/guestfs-actions.pod:7193
23220 msgid "(Added in 1.0.55)"
23221 msgstr ""
23222
23223 #. type: =head2
23224 #: ../src/guestfs-actions.pod:2054
23225 msgid "guestfs_get_network"
23226 msgstr ""
23227
23228 #. type: verbatim
23229 #: ../src/guestfs-actions.pod:2056
23230 #, no-wrap
23231 msgid ""
23232 " int\n"
23233 " guestfs_get_network (guestfs_h *g);\n"
23234 "\n"
23235 msgstr ""
23236
23237 #. type: textblock
23238 #: ../src/guestfs-actions.pod:2063 ../src/guestfs-actions.pod:6317
23239 msgid "(Added in 1.5.4)"
23240 msgstr ""
23241
23242 #. type: =head2
23243 #: ../src/guestfs-actions.pod:2065
23244 msgid "guestfs_get_path"
23245 msgstr ""
23246
23247 #. type: verbatim
23248 #: ../src/guestfs-actions.pod:2067
23249 #, no-wrap
23250 msgid ""
23251 " const char *\n"
23252 " guestfs_get_path (guestfs_h *g);\n"
23253 "\n"
23254 msgstr ""
23255
23256 #. type: textblock
23257 #: ../src/guestfs-actions.pod:2075 ../src/guestfs-actions.pod:2115
23258 msgid ""
23259 "This function returns a string, or NULL on error.  The string is owned by "
23260 "the guest handle and must I<not> be freed."
23261 msgstr ""
23262
23263 #. type: =head2
23264 #: ../src/guestfs-actions.pod:2080
23265 msgid "guestfs_get_pgroup"
23266 msgstr ""
23267
23268 #. type: verbatim
23269 #: ../src/guestfs-actions.pod:2082
23270 #, no-wrap
23271 msgid ""
23272 " int\n"
23273 " guestfs_get_pgroup (guestfs_h *g);\n"
23274 "\n"
23275 msgstr ""
23276
23277 #. type: textblock
23278 #: ../src/guestfs-actions.pod:2089 ../src/guestfs-actions.pod:6353 ../src/guestfs-actions.pod:7685
23279 msgid "(Added in 1.11.18)"
23280 msgstr ""
23281
23282 #. type: =head2
23283 #: ../src/guestfs-actions.pod:2091
23284 msgid "guestfs_get_pid"
23285 msgstr ""
23286
23287 #. type: verbatim
23288 #: ../src/guestfs-actions.pod:2093
23289 #, no-wrap
23290 msgid ""
23291 " int\n"
23292 " guestfs_get_pid (guestfs_h *g);\n"
23293 "\n"
23294 msgstr ""
23295
23296 #. type: textblock
23297 #: ../src/guestfs-actions.pod:2103
23298 msgid "(Added in 1.0.56)"
23299 msgstr ""
23300
23301 #. type: =head2
23302 #: ../src/guestfs-actions.pod:2105
23303 msgid "guestfs_get_qemu"
23304 msgstr ""
23305
23306 #. type: verbatim
23307 #: ../src/guestfs-actions.pod:2107
23308 #, no-wrap
23309 msgid ""
23310 " const char *\n"
23311 " guestfs_get_qemu (guestfs_h *g);\n"
23312 "\n"
23313 msgstr ""
23314
23315 #. type: textblock
23316 #: ../src/guestfs-actions.pod:2118 ../src/guestfs-actions.pod:6381
23317 msgid "(Added in 1.0.6)"
23318 msgstr ""
23319
23320 #. type: =head2
23321 #: ../src/guestfs-actions.pod:2120
23322 msgid "guestfs_get_recovery_proc"
23323 msgstr ""
23324
23325 #. type: verbatim
23326 #: ../src/guestfs-actions.pod:2122
23327 #, no-wrap
23328 msgid ""
23329 " int\n"
23330 " guestfs_get_recovery_proc (guestfs_h *g);\n"
23331 "\n"
23332 msgstr ""
23333
23334 #. type: textblock
23335 #: ../src/guestfs-actions.pod:2129 ../src/guestfs-actions.pod:3663 ../src/guestfs-actions.pod:3994 ../src/guestfs-actions.pod:4397 ../src/guestfs-actions.pod:4429 ../src/guestfs-actions.pod:5617 ../src/guestfs-actions.pod:5960 ../src/guestfs-actions.pod:6405 ../src/guestfs-actions.pod:7096 ../src/guestfs-actions.pod:7116 ../src/guestfs-actions.pod:7308
23336 msgid "(Added in 1.0.77)"
23337 msgstr ""
23338
23339 #. type: =head2
23340 #: ../src/guestfs-actions.pod:2131
23341 msgid "guestfs_get_selinux"
23342 msgstr ""
23343
23344 #. type: verbatim
23345 #: ../src/guestfs-actions.pod:2133
23346 #, no-wrap
23347 msgid ""
23348 " int\n"
23349 " guestfs_get_selinux (guestfs_h *g);\n"
23350 "\n"
23351 msgstr ""
23352
23353 #. type: textblock
23354 #: ../src/guestfs-actions.pod:2136
23355 msgid ""
23356 "This returns the current setting of the selinux flag which is passed to the "
23357 "appliance at boot time.  See C<guestfs_set_selinux>."
23358 msgstr ""
23359
23360 #. type: textblock
23361 #: ../src/guestfs-actions.pod:2144 ../src/guestfs-actions.pod:2207 ../src/guestfs-actions.pod:6424 ../src/guestfs-actions.pod:6482
23362 msgid "(Added in 1.0.67)"
23363 msgstr ""
23364
23365 #. type: =head2
23366 #: ../src/guestfs-actions.pod:2146
23367 msgid "guestfs_get_state"
23368 msgstr ""
23369
23370 #. type: verbatim
23371 #: ../src/guestfs-actions.pod:2148
23372 #, no-wrap
23373 msgid ""
23374 " int\n"
23375 " guestfs_get_state (guestfs_h *g);\n"
23376 "\n"
23377 msgstr ""
23378
23379 #. type: =head2
23380 #: ../src/guestfs-actions.pod:2160
23381 msgid "guestfs_get_trace"
23382 msgstr ""
23383
23384 #. type: verbatim
23385 #: ../src/guestfs-actions.pod:2162
23386 #, no-wrap
23387 msgid ""
23388 " int\n"
23389 " guestfs_get_trace (guestfs_h *g);\n"
23390 "\n"
23391 msgstr ""
23392
23393 #. type: =head2
23394 #: ../src/guestfs-actions.pod:2171
23395 msgid "guestfs_get_umask"
23396 msgstr ""
23397
23398 #. type: verbatim
23399 #: ../src/guestfs-actions.pod:2173
23400 #, no-wrap
23401 msgid ""
23402 " int\n"
23403 " guestfs_get_umask (guestfs_h *g);\n"
23404 "\n"
23405 msgstr ""
23406
23407 #. type: textblock
23408 #: ../src/guestfs-actions.pod:2176
23409 msgid ""
23410 "Return the current umask.  By default the umask is C<022> unless it has been "
23411 "set by calling C<guestfs_umask>."
23412 msgstr ""
23413
23414 #. type: =head2
23415 #: ../src/guestfs-actions.pod:2183
23416 msgid "guestfs_get_verbose"
23417 msgstr ""
23418
23419 #. type: verbatim
23420 #: ../src/guestfs-actions.pod:2185
23421 #, no-wrap
23422 msgid ""
23423 " int\n"
23424 " guestfs_get_verbose (guestfs_h *g);\n"
23425 "\n"
23426 msgstr ""
23427
23428 #. type: =head2
23429 #: ../src/guestfs-actions.pod:2194
23430 msgid "guestfs_getcon"
23431 msgstr ""
23432
23433 #. type: verbatim
23434 #: ../src/guestfs-actions.pod:2196
23435 #, no-wrap
23436 msgid ""
23437 " char *\n"
23438 " guestfs_getcon (guestfs_h *g);\n"
23439 "\n"
23440 msgstr ""
23441
23442 #. type: textblock
23443 #: ../src/guestfs-actions.pod:2201
23444 msgid "See the documentation about SELINUX in L<guestfs(3)>, and C<guestfs_setcon>"
23445 msgstr ""
23446
23447 #. type: =head2
23448 #: ../src/guestfs-actions.pod:2209
23449 msgid "guestfs_getxattr"
23450 msgstr ""
23451
23452 #. type: verbatim
23453 #: ../src/guestfs-actions.pod:2211
23454 #, no-wrap
23455 msgid ""
23456 " char *\n"
23457 " guestfs_getxattr (guestfs_h *g,\n"
23458 "                   const char *path,\n"
23459 "                   const char *name,\n"
23460 "                   size_t *size_r);\n"
23461 "\n"
23462 msgstr ""
23463
23464 #. type: textblock
23465 #: ../src/guestfs-actions.pod:2217
23466 msgid ""
23467 "Get a single extended attribute from file C<path> named C<name>.  This call "
23468 "follows symlinks.  If you want to lookup an extended attribute for the "
23469 "symlink itself, use C<guestfs_lgetxattr>."
23470 msgstr ""
23471
23472 #. type: textblock
23473 #: ../src/guestfs-actions.pod:2221 ../src/guestfs-actions.pod:3677
23474 msgid ""
23475 "Normally it is better to get all extended attributes from a file in one go "
23476 "by calling C<guestfs_getxattrs>.  However some Linux filesystem "
23477 "implementations are buggy and do not provide a way to list out attributes.  "
23478 "For these filesystems (notably ntfs-3g)  you have to know the names of the "
23479 "extended attributes you want in advance and call this function."
23480 msgstr ""
23481
23482 #. type: textblock
23483 #: ../src/guestfs-actions.pod:2231
23484 msgid "See also: C<guestfs_getxattrs>, C<guestfs_lgetxattr>, L<attr(5)>."
23485 msgstr ""
23486
23487 #. type: textblock
23488 #: ../src/guestfs-actions.pod:2233 ../src/guestfs-actions.pod:2424 ../src/guestfs-actions.pod:2894 ../src/guestfs-actions.pod:3689 ../src/guestfs-actions.pod:5610 ../src/guestfs-actions.pod:5636 ../src/guestfs-actions.pod:5817
23489 msgid ""
23490 "This function returns a buffer, or NULL on error.  The size of the returned "
23491 "buffer is written to C<*size_r>.  I<The caller must free the returned buffer "
23492 "after use>."
23493 msgstr ""
23494
23495 #. type: textblock
23496 #: ../src/guestfs-actions.pod:2237 ../src/guestfs-actions.pod:3693
23497 msgid "(Added in 1.7.24)"
23498 msgstr ""
23499
23500 #. type: =head2
23501 #: ../src/guestfs-actions.pod:2239
23502 msgid "guestfs_getxattrs"
23503 msgstr ""
23504
23505 #. type: verbatim
23506 #: ../src/guestfs-actions.pod:2241
23507 #, no-wrap
23508 msgid ""
23509 " struct guestfs_xattr_list *\n"
23510 " guestfs_getxattrs (guestfs_h *g,\n"
23511 "                    const char *path);\n"
23512 "\n"
23513 msgstr ""
23514
23515 #. type: textblock
23516 #: ../src/guestfs-actions.pod:2251
23517 msgid "See also: C<guestfs_lgetxattrs>, L<attr(5)>."
23518 msgstr ""
23519
23520 #. type: textblock
23521 #: ../src/guestfs-actions.pod:2253 ../src/guestfs-actions.pod:3705 ../src/guestfs-actions.pod:4393
23522 msgid ""
23523 "This function returns a C<struct guestfs_xattr_list *>, or NULL if there was "
23524 "an error.  I<The caller must call C<guestfs_free_xattr_list> after use>."
23525 msgstr ""
23526
23527 #. type: textblock
23528 #: ../src/guestfs-actions.pod:2257 ../src/guestfs-actions.pod:3709 ../src/guestfs-actions.pod:3908 ../src/guestfs-actions.pod:3944 ../src/guestfs-actions.pod:5990 ../src/guestfs-actions.pod:6501 ../src/guestfs-actions.pod:7888
23529 msgid "(Added in 1.0.59)"
23530 msgstr ""
23531
23532 #. type: =head2
23533 #: ../src/guestfs-actions.pod:2259
23534 msgid "guestfs_glob_expand"
23535 msgstr ""
23536
23537 #. type: verbatim
23538 #: ../src/guestfs-actions.pod:2261
23539 #, no-wrap
23540 msgid ""
23541 " char **\n"
23542 " guestfs_glob_expand (guestfs_h *g,\n"
23543 "                      const char *pattern);\n"
23544 "\n"
23545 msgstr ""
23546
23547 #. type: textblock
23548 #: ../src/guestfs-actions.pod:2280 ../src/guestfs-actions.pod:6694 ../src/guestfs-actions.pod:6711
23549 msgid "(Added in 1.0.50)"
23550 msgstr ""
23551
23552 #. type: =head2
23553 #: ../src/guestfs-actions.pod:2282
23554 msgid "guestfs_grep"
23555 msgstr ""
23556
23557 #. type: verbatim
23558 #: ../src/guestfs-actions.pod:2284
23559 #, no-wrap
23560 msgid ""
23561 " char **\n"
23562 " guestfs_grep (guestfs_h *g,\n"
23563 "               const char *regex,\n"
23564 "               const char *path);\n"
23565 "\n"
23566 msgstr ""
23567
23568 #. type: =head2
23569 #: ../src/guestfs-actions.pod:2301
23570 msgid "guestfs_grepi"
23571 msgstr ""
23572
23573 #. type: verbatim
23574 #: ../src/guestfs-actions.pod:2303
23575 #, no-wrap
23576 msgid ""
23577 " char **\n"
23578 " guestfs_grepi (guestfs_h *g,\n"
23579 "                const char *regex,\n"
23580 "                const char *path);\n"
23581 "\n"
23582 msgstr ""
23583
23584 #. type: =head2
23585 #: ../src/guestfs-actions.pod:2320
23586 msgid "guestfs_grub_install"
23587 msgstr ""
23588
23589 #. type: verbatim
23590 #: ../src/guestfs-actions.pod:2322
23591 #, no-wrap
23592 msgid ""
23593 " int\n"
23594 " guestfs_grub_install (guestfs_h *g,\n"
23595 "                       const char *root,\n"
23596 "                       const char *device);\n"
23597 "\n"
23598 msgstr ""
23599
23600 #. type: textblock
23601 #: ../src/guestfs-actions.pod:2343
23602 msgid "(Added in 1.0.17)"
23603 msgstr ""
23604
23605 #. type: =head2
23606 #: ../src/guestfs-actions.pod:2345
23607 msgid "guestfs_head"
23608 msgstr ""
23609
23610 #. type: verbatim
23611 #: ../src/guestfs-actions.pod:2347
23612 #, no-wrap
23613 msgid ""
23614 " char **\n"
23615 " guestfs_head (guestfs_h *g,\n"
23616 "               const char *path);\n"
23617 "\n"
23618 msgstr ""
23619
23620 #. type: =head2
23621 #: ../src/guestfs-actions.pod:2363
23622 msgid "guestfs_head_n"
23623 msgstr ""
23624
23625 #. type: verbatim
23626 #: ../src/guestfs-actions.pod:2365
23627 #, no-wrap
23628 msgid ""
23629 " char **\n"
23630 " guestfs_head_n (guestfs_h *g,\n"
23631 "                 int nrlines,\n"
23632 "                 const char *path);\n"
23633 "\n"
23634 msgstr ""
23635
23636 #. type: =head2
23637 #: ../src/guestfs-actions.pod:2387
23638 msgid "guestfs_hexdump"
23639 msgstr ""
23640
23641 #. type: verbatim
23642 #: ../src/guestfs-actions.pod:2389
23643 #, no-wrap
23644 msgid ""
23645 " char *\n"
23646 " guestfs_hexdump (guestfs_h *g,\n"
23647 "                  const char *path);\n"
23648 "\n"
23649 msgstr ""
23650
23651 #. type: textblock
23652 #: ../src/guestfs-actions.pod:2402 ../src/guestfs-actions.pod:6775 ../src/guestfs-actions.pod:6830
23653 msgid "(Added in 1.0.22)"
23654 msgstr ""
23655
23656 #. type: =head2
23657 #: ../src/guestfs-actions.pod:2404
23658 msgid "guestfs_initrd_cat"
23659 msgstr ""
23660
23661 #. type: verbatim
23662 #: ../src/guestfs-actions.pod:2406
23663 #, no-wrap
23664 msgid ""
23665 " char *\n"
23666 " guestfs_initrd_cat (guestfs_h *g,\n"
23667 "                     const char *initrdpath,\n"
23668 "                     const char *filename,\n"
23669 "                     size_t *size_r);\n"
23670 "\n"
23671 msgstr ""
23672
23673 #. type: textblock
23674 #: ../src/guestfs-actions.pod:2422
23675 msgid "See also C<guestfs_initrd_list>."
23676 msgstr ""
23677
23678 #. type: =head2
23679 #: ../src/guestfs-actions.pod:2433
23680 msgid "guestfs_initrd_list"
23681 msgstr ""
23682
23683 #. type: verbatim
23684 #: ../src/guestfs-actions.pod:2435
23685 #, no-wrap
23686 msgid ""
23687 " char **\n"
23688 " guestfs_initrd_list (guestfs_h *g,\n"
23689 "                      const char *path);\n"
23690 "\n"
23691 msgstr ""
23692
23693 #. type: =head2
23694 #: ../src/guestfs-actions.pod:2455
23695 msgid "guestfs_inotify_add_watch"
23696 msgstr ""
23697
23698 #. type: verbatim
23699 #: ../src/guestfs-actions.pod:2457
23700 #, no-wrap
23701 msgid ""
23702 " int64_t\n"
23703 " guestfs_inotify_add_watch (guestfs_h *g,\n"
23704 "                            const char *path,\n"
23705 "                            int mask);\n"
23706 "\n"
23707 msgstr ""
23708
23709 #. type: =head2
23710 #: ../src/guestfs-actions.pod:2476
23711 msgid "guestfs_inotify_close"
23712 msgstr ""
23713
23714 #. type: verbatim
23715 #: ../src/guestfs-actions.pod:2478
23716 #, no-wrap
23717 msgid ""
23718 " int\n"
23719 " guestfs_inotify_close (guestfs_h *g);\n"
23720 "\n"
23721 msgstr ""
23722
23723 #. type: =head2
23724 #: ../src/guestfs-actions.pod:2489
23725 msgid "guestfs_inotify_files"
23726 msgstr ""
23727
23728 #. type: verbatim
23729 #: ../src/guestfs-actions.pod:2491
23730 #, no-wrap
23731 msgid ""
23732 " char **\n"
23733 " guestfs_inotify_files (guestfs_h *g);\n"
23734 "\n"
23735 msgstr ""
23736
23737 #. type: textblock
23738 #: ../src/guestfs-actions.pod:2494
23739 msgid ""
23740 "This function is a helpful wrapper around C<guestfs_inotify_read> which just "
23741 "returns a list of pathnames of objects that were touched.  The returned "
23742 "pathnames are sorted and deduplicated."
23743 msgstr ""
23744
23745 #. type: =head2
23746 #: ../src/guestfs-actions.pod:2504
23747 msgid "guestfs_inotify_init"
23748 msgstr ""
23749
23750 #. type: verbatim
23751 #: ../src/guestfs-actions.pod:2506
23752 #, no-wrap
23753 msgid ""
23754 " int\n"
23755 " guestfs_inotify_init (guestfs_h *g,\n"
23756 "                       int maxevents);\n"
23757 "\n"
23758 msgstr ""
23759
23760 #. type: textblock
23761 #: ../src/guestfs-actions.pod:2514
23762 msgid ""
23763 "C<maxevents> is the maximum number of events which will be queued up between "
23764 "calls to C<guestfs_inotify_read> or C<guestfs_inotify_files>.  If this is "
23765 "passed as C<0>, then the kernel (or previously set)  default is used.  For "
23766 "Linux 2.6.29 the default was 16384 events.  Beyond this limit, the kernel "
23767 "throws away events, but records the fact that it threw them away by setting "
23768 "a flag C<IN_Q_OVERFLOW> in the returned structure list (see "
23769 "C<guestfs_inotify_read>)."
23770 msgstr ""
23771
23772 #. type: textblock
23773 #: ../src/guestfs-actions.pod:2524
23774 msgid ""
23775 "Before any events are generated, you have to add some watches to the "
23776 "internal watch list.  See: C<guestfs_inotify_add_watch>, "
23777 "C<guestfs_inotify_rm_watch> and C<guestfs_inotify_watch_all>."
23778 msgstr ""
23779
23780 #. type: textblock
23781 #: ../src/guestfs-actions.pod:2530
23782 msgid ""
23783 "Queued up events should be read periodically by calling "
23784 "C<guestfs_inotify_read> (or C<guestfs_inotify_files> which is just a helpful "
23785 "wrapper around C<guestfs_inotify_read>).  If you don't read the events out "
23786 "often enough then you risk the internal queue overflowing."
23787 msgstr ""
23788
23789 #. type: textblock
23790 #: ../src/guestfs-actions.pod:2537
23791 msgid ""
23792 "The handle should be closed after use by calling C<guestfs_inotify_close>.  "
23793 "This also removes any watches automatically."
23794 msgstr ""
23795
23796 #. type: =head2
23797 #: ../src/guestfs-actions.pod:2550
23798 msgid "guestfs_inotify_read"
23799 msgstr ""
23800
23801 #. type: verbatim
23802 #: ../src/guestfs-actions.pod:2552
23803 #, no-wrap
23804 msgid ""
23805 " struct guestfs_inotify_event_list *\n"
23806 " guestfs_inotify_read (guestfs_h *g);\n"
23807 "\n"
23808 msgstr ""
23809
23810 #. type: textblock
23811 #: ../src/guestfs-actions.pod:2566
23812 msgid ""
23813 "This function returns a C<struct guestfs_inotify_event_list *>, or NULL if "
23814 "there was an error.  I<The caller must call "
23815 "C<guestfs_free_inotify_event_list> after use>."
23816 msgstr ""
23817
23818 #. type: =head2
23819 #: ../src/guestfs-actions.pod:2572
23820 msgid "guestfs_inotify_rm_watch"
23821 msgstr ""
23822
23823 #. type: verbatim
23824 #: ../src/guestfs-actions.pod:2574
23825 #, no-wrap
23826 msgid ""
23827 " int\n"
23828 " guestfs_inotify_rm_watch (guestfs_h *g,\n"
23829 "                           int wd);\n"
23830 "\n"
23831 msgstr ""
23832
23833 #. type: textblock
23834 #: ../src/guestfs-actions.pod:2578
23835 msgid ""
23836 "Remove a previously defined inotify watch.  See "
23837 "C<guestfs_inotify_add_watch>."
23838 msgstr ""
23839
23840 #. type: =head2
23841 #: ../src/guestfs-actions.pod:2585
23842 msgid "guestfs_inspect_get_arch"
23843 msgstr ""
23844
23845 #. type: verbatim
23846 #: ../src/guestfs-actions.pod:2587
23847 #, no-wrap
23848 msgid ""
23849 " char *\n"
23850 " guestfs_inspect_get_arch (guestfs_h *g,\n"
23851 "                           const char *root);\n"
23852 "\n"
23853 msgstr ""
23854
23855 #. type: textblock
23856 #: ../src/guestfs-actions.pod:2591
23857 msgid ""
23858 "This returns the architecture of the inspected operating system.  The "
23859 "possible return values are listed under C<guestfs_file_architecture>."
23860 msgstr ""
23861
23862 #. type: =head2
23863 #: ../src/guestfs-actions.pod:2605
23864 msgid "guestfs_inspect_get_distro"
23865 msgstr ""
23866
23867 #. type: verbatim
23868 #: ../src/guestfs-actions.pod:2607
23869 #, no-wrap
23870 msgid ""
23871 " char *\n"
23872 " guestfs_inspect_get_distro (guestfs_h *g,\n"
23873 "                             const char *root);\n"
23874 "\n"
23875 msgstr ""
23876
23877 #. type: =head2
23878 #: ../src/guestfs-actions.pod:2695
23879 msgid "guestfs_inspect_get_drive_mappings"
23880 msgstr ""
23881
23882 #. type: verbatim
23883 #: ../src/guestfs-actions.pod:2697
23884 #, no-wrap
23885 msgid ""
23886 " char **\n"
23887 " guestfs_inspect_get_drive_mappings (guestfs_h *g,\n"
23888 "                                     const char *root);\n"
23889 "\n"
23890 msgstr ""
23891
23892 #. type: textblock
23893 #: ../src/guestfs-actions.pod:2726
23894 msgid ""
23895 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
23896 "C<guestfs_inspect_get_mountpoints>, C<guestfs_inspect_get_filesystems>."
23897 msgstr ""
23898
23899 #. type: textblock
23900 #: ../src/guestfs-actions.pod:2730 ../src/guestfs-actions.pod:2998 ../src/guestfs-actions.pod:3796 ../src/guestfs-actions.pod:5078 ../src/guestfs-actions.pod:7132
23901 msgid ""
23902 "This function returns a NULL-terminated array of strings, or NULL if there "
23903 "was an error.  The array of strings will always have length C<2n+1>, where "
23904 "C<n> keys and values alternate, followed by the trailing NULL entry.  I<The "
23905 "caller must free the strings and the array after use>."
23906 msgstr ""
23907
23908 #. type: textblock
23909 #: ../src/guestfs-actions.pod:2736 ../src/guestfs-actions.pod:3192
23910 msgid "(Added in 1.9.17)"
23911 msgstr ""
23912
23913 #. type: =head2
23914 #: ../src/guestfs-actions.pod:2738
23915 msgid "guestfs_inspect_get_filesystems"
23916 msgstr ""
23917
23918 #. type: verbatim
23919 #: ../src/guestfs-actions.pod:2740
23920 #, no-wrap
23921 msgid ""
23922 " char **\n"
23923 " guestfs_inspect_get_filesystems (guestfs_h *g,\n"
23924 "                                  const char *root);\n"
23925 "\n"
23926 msgstr ""
23927
23928 #. type: textblock
23929 #: ../src/guestfs-actions.pod:2752
23930 msgid ""
23931 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
23932 "C<guestfs_inspect_get_mountpoints>."
23933 msgstr ""
23934
23935 #. type: =head2
23936 #: ../src/guestfs-actions.pod:2761
23937 msgid "guestfs_inspect_get_format"
23938 msgstr ""
23939
23940 #. type: verbatim
23941 #: ../src/guestfs-actions.pod:2763
23942 #, no-wrap
23943 msgid ""
23944 " char *\n"
23945 " guestfs_inspect_get_format (guestfs_h *g,\n"
23946 "                             const char *root);\n"
23947 "\n"
23948 msgstr ""
23949
23950 #. type: textblock
23951 #: ../src/guestfs-actions.pod:2797 ../src/guestfs-actions.pod:3228 ../src/guestfs-actions.pod:3244 ../src/guestfs-actions.pod:3262 ../src/guestfs-actions.pod:6028
23952 msgid "(Added in 1.9.4)"
23953 msgstr ""
23954
23955 #. type: =head2
23956 #: ../src/guestfs-actions.pod:2799
23957 msgid "guestfs_inspect_get_hostname"
23958 msgstr ""
23959
23960 #. type: verbatim
23961 #: ../src/guestfs-actions.pod:2801
23962 #, no-wrap
23963 msgid ""
23964 " char *\n"
23965 " guestfs_inspect_get_hostname (guestfs_h *g,\n"
23966 "                               const char *root);\n"
23967 "\n"
23968 msgstr ""
23969
23970 #. type: textblock
23971 #: ../src/guestfs-actions.pod:2816
23972 msgid "(Added in 1.7.9)"
23973 msgstr ""
23974
23975 #. type: =head2
23976 #: ../src/guestfs-actions.pod:2818
23977 msgid "guestfs_inspect_get_icon"
23978 msgstr ""
23979
23980 #. type: verbatim
23981 #: ../src/guestfs-actions.pod:2820
23982 #, no-wrap
23983 msgid ""
23984 " char *\n"
23985 " guestfs_inspect_get_icon (guestfs_h *g,\n"
23986 "                           const char *root,\n"
23987 "                           size_t *size_r,\n"
23988 "                           ...);\n"
23989 "\n"
23990 msgstr ""
23991
23992 #. type: verbatim
23993 #: ../src/guestfs-actions.pod:2831
23994 #, no-wrap
23995 msgid ""
23996 " GUESTFS_INSPECT_GET_ICON_FAVICON, int favicon,\n"
23997 " GUESTFS_INSPECT_GET_ICON_HIGHQUALITY, int highquality,\n"
23998 "\n"
23999 msgstr ""
24000
24001 #. type: textblock
24002 #: ../src/guestfs-actions.pod:2898 ../src/guestfs-actions.pod:3723 ../src/guestfs-actions.pod:4977
24003 msgid "(Added in 1.11.12)"
24004 msgstr ""
24005
24006 #. type: =head2
24007 #: ../src/guestfs-actions.pod:2900
24008 msgid "guestfs_inspect_get_icon_va"
24009 msgstr ""
24010
24011 #. type: verbatim
24012 #: ../src/guestfs-actions.pod:2902
24013 #, no-wrap
24014 msgid ""
24015 " char *\n"
24016 " guestfs_inspect_get_icon_va (guestfs_h *g,\n"
24017 "                              const char *root,\n"
24018 "                              size_t *size_r,\n"
24019 "                              va_list args);\n"
24020 "\n"
24021 msgstr ""
24022
24023 #. type: textblock
24024 #: ../src/guestfs-actions.pod:2908
24025 msgid "This is the \"va_list variant\" of L</guestfs_inspect_get_icon>."
24026 msgstr ""
24027
24028 #. type: =head2
24029 #: ../src/guestfs-actions.pod:2912
24030 msgid "guestfs_inspect_get_icon_argv"
24031 msgstr ""
24032
24033 #. type: verbatim
24034 #: ../src/guestfs-actions.pod:2914
24035 #, no-wrap
24036 msgid ""
24037 " char *\n"
24038 " guestfs_inspect_get_icon_argv (guestfs_h *g,\n"
24039 "                                const char *root,\n"
24040 "                                size_t *size_r,\n"
24041 "                                const struct guestfs_inspect_get_icon_argv "
24042 "*optargs);\n"
24043 "\n"
24044 msgstr ""
24045
24046 #. type: textblock
24047 #: ../src/guestfs-actions.pod:2920
24048 msgid "This is the \"argv variant\" of L</guestfs_inspect_get_icon>."
24049 msgstr ""
24050
24051 #. type: =head2
24052 #: ../src/guestfs-actions.pod:2924
24053 msgid "guestfs_inspect_get_major_version"
24054 msgstr ""
24055
24056 #. type: verbatim
24057 #: ../src/guestfs-actions.pod:2926
24058 #, no-wrap
24059 msgid ""
24060 " int\n"
24061 " guestfs_inspect_get_major_version (guestfs_h *g,\n"
24062 "                                    const char *root);\n"
24063 "\n"
24064 msgstr ""
24065
24066 #. type: =head2
24067 #: ../src/guestfs-actions.pod:2948
24068 msgid "guestfs_inspect_get_minor_version"
24069 msgstr ""
24070
24071 #. type: verbatim
24072 #: ../src/guestfs-actions.pod:2950
24073 #, no-wrap
24074 msgid ""
24075 " int\n"
24076 " guestfs_inspect_get_minor_version (guestfs_h *g,\n"
24077 "                                    const char *root);\n"
24078 "\n"
24079 msgstr ""
24080
24081 #. type: textblock
24082 #: ../src/guestfs-actions.pod:2959
24083 msgid ""
24084 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
24085 "C<guestfs_inspect_get_major_version>."
24086 msgstr ""
24087
24088 #. type: =head2
24089 #: ../src/guestfs-actions.pod:2966
24090 msgid "guestfs_inspect_get_mountpoints"
24091 msgstr ""
24092
24093 #. type: verbatim
24094 #: ../src/guestfs-actions.pod:2968
24095 #, no-wrap
24096 msgid ""
24097 " char **\n"
24098 " guestfs_inspect_get_mountpoints (guestfs_h *g,\n"
24099 "                                  const char *root);\n"
24100 "\n"
24101 msgstr ""
24102
24103 #. type: textblock
24104 #: ../src/guestfs-actions.pod:2989
24105 msgid ""
24106 "For operating systems like Windows which still use drive letters, this call "
24107 "will only return an entry for the first drive \"mounted on\" C</>.  For "
24108 "information about the mapping of drive letters to partitions, see "
24109 "C<guestfs_inspect_get_drive_mappings>."
24110 msgstr ""
24111
24112 #. type: textblock
24113 #: ../src/guestfs-actions.pod:2995
24114 msgid ""
24115 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
24116 "C<guestfs_inspect_get_filesystems>."
24117 msgstr ""
24118
24119 #. type: =head2
24120 #: ../src/guestfs-actions.pod:3006
24121 msgid "guestfs_inspect_get_package_format"
24122 msgstr ""
24123
24124 #. type: verbatim
24125 #: ../src/guestfs-actions.pod:3008
24126 #, no-wrap
24127 msgid ""
24128 " char *\n"
24129 " guestfs_inspect_get_package_format (guestfs_h *g,\n"
24130 "                                     const char *root);\n"
24131 "\n"
24132 msgstr ""
24133
24134 #. type: textblock
24135 #: ../src/guestfs-actions.pod:3012
24136 msgid ""
24137 "This function and C<guestfs_inspect_get_package_management> return the "
24138 "package format and package management tool used by the inspected operating "
24139 "system.  For example for Fedora these functions would return C<rpm> (package "
24140 "format) and C<yum> (package management)."
24141 msgstr ""
24142
24143 #. type: textblock
24144 #: ../src/guestfs-actions.pod:3030 ../src/guestfs-actions.pod:3058
24145 msgid "(Added in 1.7.5)"
24146 msgstr ""
24147
24148 #. type: =head2
24149 #: ../src/guestfs-actions.pod:3032
24150 msgid "guestfs_inspect_get_package_management"
24151 msgstr ""
24152
24153 #. type: verbatim
24154 #: ../src/guestfs-actions.pod:3034
24155 #, no-wrap
24156 msgid ""
24157 " char *\n"
24158 " guestfs_inspect_get_package_management (guestfs_h *g,\n"
24159 "                                         const char *root);\n"
24160 "\n"
24161 msgstr ""
24162
24163 #. type: textblock
24164 #: ../src/guestfs-actions.pod:3038
24165 msgid ""
24166 "C<guestfs_inspect_get_package_format> and this function return the package "
24167 "format and package management tool used by the inspected operating system.  "
24168 "For example for Fedora these functions would return C<rpm> (package format) "
24169 "and C<yum> (package management)."
24170 msgstr ""
24171
24172 #. type: =head2
24173 #: ../src/guestfs-actions.pod:3060
24174 msgid "guestfs_inspect_get_product_name"
24175 msgstr ""
24176
24177 #. type: verbatim
24178 #: ../src/guestfs-actions.pod:3062
24179 #, no-wrap
24180 msgid ""
24181 " char *\n"
24182 " guestfs_inspect_get_product_name (guestfs_h *g,\n"
24183 "                                   const char *root);\n"
24184 "\n"
24185 msgstr ""
24186
24187 #. type: =head2
24188 #: ../src/guestfs-actions.pod:3081
24189 msgid "guestfs_inspect_get_product_variant"
24190 msgstr ""
24191
24192 #. type: verbatim
24193 #: ../src/guestfs-actions.pod:3083
24194 #, no-wrap
24195 msgid ""
24196 " char *\n"
24197 " guestfs_inspect_get_product_variant (guestfs_h *g,\n"
24198 "                                      const char *root);\n"
24199 "\n"
24200 msgstr ""
24201
24202 #. type: textblock
24203 #: ../src/guestfs-actions.pod:3106
24204 msgid ""
24205 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
24206 "C<guestfs_inspect_get_product_name>, C<guestfs_inspect_get_major_version>."
24207 msgstr ""
24208
24209 #. type: textblock
24210 #: ../src/guestfs-actions.pod:3113
24211 msgid "(Added in 1.9.13)"
24212 msgstr ""
24213
24214 #. type: =head2
24215 #: ../src/guestfs-actions.pod:3115
24216 msgid "guestfs_inspect_get_roots"
24217 msgstr ""
24218
24219 #. type: verbatim
24220 #: ../src/guestfs-actions.pod:3117
24221 #, no-wrap
24222 msgid ""
24223 " char **\n"
24224 " guestfs_inspect_get_roots (guestfs_h *g);\n"
24225 "\n"
24226 msgstr ""
24227
24228 #. type: textblock
24229 #: ../src/guestfs-actions.pod:3120
24230 msgid ""
24231 "This function is a convenient way to get the list of root devices, as "
24232 "returned from a previous call to C<guestfs_inspect_os>, but without redoing "
24233 "the whole inspection process."
24234 msgstr ""
24235
24236 #. type: textblock
24237 #: ../src/guestfs-actions.pod:3124
24238 msgid ""
24239 "This returns an empty list if either no root devices were found or the "
24240 "caller has not called C<guestfs_inspect_os>."
24241 msgstr ""
24242
24243 #. type: textblock
24244 #: ../src/guestfs-actions.pod:3133
24245 msgid "(Added in 1.7.3)"
24246 msgstr ""
24247
24248 #. type: =head2
24249 #: ../src/guestfs-actions.pod:3135
24250 msgid "guestfs_inspect_get_type"
24251 msgstr ""
24252
24253 #. type: verbatim
24254 #: ../src/guestfs-actions.pod:3137
24255 #, no-wrap
24256 msgid ""
24257 " char *\n"
24258 " guestfs_inspect_get_type (guestfs_h *g,\n"
24259 "                           const char *root);\n"
24260 "\n"
24261 msgstr ""
24262
24263 #. type: =head2
24264 #: ../src/guestfs-actions.pod:3174
24265 msgid "guestfs_inspect_get_windows_current_control_set"
24266 msgstr ""
24267
24268 #. type: verbatim
24269 #: ../src/guestfs-actions.pod:3176
24270 #, no-wrap
24271 msgid ""
24272 " char *\n"
24273 " guestfs_inspect_get_windows_current_control_set (guestfs_h *g,\n"
24274 "                                                  const char *root);\n"
24275 "\n"
24276 msgstr ""
24277
24278 #. type: =head2
24279 #: ../src/guestfs-actions.pod:3194
24280 msgid "guestfs_inspect_get_windows_systemroot"
24281 msgstr ""
24282
24283 #. type: verbatim
24284 #: ../src/guestfs-actions.pod:3196
24285 #, no-wrap
24286 msgid ""
24287 " char *\n"
24288 " guestfs_inspect_get_windows_systemroot (guestfs_h *g,\n"
24289 "                                         const char *root);\n"
24290 "\n"
24291 msgstr ""
24292
24293 #. type: textblock
24294 #: ../src/guestfs-actions.pod:3212
24295 msgid "(Added in 1.5.25)"
24296 msgstr ""
24297
24298 #. type: =head2
24299 #: ../src/guestfs-actions.pod:3214
24300 msgid "guestfs_inspect_is_live"
24301 msgstr ""
24302
24303 #. type: verbatim
24304 #: ../src/guestfs-actions.pod:3216
24305 #, no-wrap
24306 msgid ""
24307 " int\n"
24308 " guestfs_inspect_is_live (guestfs_h *g,\n"
24309 "                          const char *root);\n"
24310 "\n"
24311 msgstr ""
24312
24313 #. type: textblock
24314 #: ../src/guestfs-actions.pod:3220
24315 msgid ""
24316 "If C<guestfs_inspect_get_format> returns C<installer> (this is an install "
24317 "disk), then this returns true if a live image was detected on the disk."
24318 msgstr ""
24319
24320 #. type: =head2
24321 #: ../src/guestfs-actions.pod:3230
24322 msgid "guestfs_inspect_is_multipart"
24323 msgstr ""
24324
24325 #. type: verbatim
24326 #: ../src/guestfs-actions.pod:3232
24327 #, no-wrap
24328 msgid ""
24329 " int\n"
24330 " guestfs_inspect_is_multipart (guestfs_h *g,\n"
24331 "                               const char *root);\n"
24332 "\n"
24333 msgstr ""
24334
24335 #. type: textblock
24336 #: ../src/guestfs-actions.pod:3236
24337 msgid ""
24338 "If C<guestfs_inspect_get_format> returns C<installer> (this is an install "
24339 "disk), then this returns true if the disk is part of a set."
24340 msgstr ""
24341
24342 #. type: =head2
24343 #: ../src/guestfs-actions.pod:3246
24344 msgid "guestfs_inspect_is_netinst"
24345 msgstr ""
24346
24347 #. type: verbatim
24348 #: ../src/guestfs-actions.pod:3248
24349 #, no-wrap
24350 msgid ""
24351 " int\n"
24352 " guestfs_inspect_is_netinst (guestfs_h *g,\n"
24353 "                             const char *root);\n"
24354 "\n"
24355 msgstr ""
24356
24357 #. type: textblock
24358 #: ../src/guestfs-actions.pod:3252
24359 msgid ""
24360 "If C<guestfs_inspect_get_format> returns C<installer> (this is an install "
24361 "disk), then this returns true if the disk is a network installer, ie. not a "
24362 "self-contained install CD but one which is likely to require network access "
24363 "to complete the install."
24364 msgstr ""
24365
24366 #. type: =head2
24367 #: ../src/guestfs-actions.pod:3264
24368 msgid "guestfs_inspect_list_applications"
24369 msgstr ""
24370
24371 #. type: verbatim
24372 #: ../src/guestfs-actions.pod:3266
24373 #, no-wrap
24374 msgid ""
24375 " struct guestfs_application_list *\n"
24376 " guestfs_inspect_list_applications (guestfs_h *g,\n"
24377 "                                    const char *root);\n"
24378 "\n"
24379 msgstr ""
24380
24381 #. type: textblock
24382 #: ../src/guestfs-actions.pod:3272
24383 msgid ""
24384 "I<Note:> This call works differently from other parts of the inspection "
24385 "API.  You have to call C<guestfs_inspect_os>, then "
24386 "C<guestfs_inspect_get_mountpoints>, then mount up the disks, before calling "
24387 "this.  Listing applications is a significantly more difficult operation "
24388 "which requires access to the full filesystem.  Also note that unlike the "
24389 "other C<guestfs_inspect_get_*> calls which are just returning data cached in "
24390 "the libguestfs handle, this call actually reads parts of the mounted "
24391 "filesystems during the call."
24392 msgstr ""
24393
24394 #. type: textblock
24395 #: ../src/guestfs-actions.pod:3362
24396 msgid ""
24397 "This function returns a C<struct guestfs_application_list *>, or NULL if "
24398 "there was an error.  I<The caller must call C<guestfs_free_application_list> "
24399 "after use>."
24400 msgstr ""
24401
24402 #. type: textblock
24403 #: ../src/guestfs-actions.pod:3366
24404 msgid "(Added in 1.7.8)"
24405 msgstr ""
24406
24407 #. type: =head2
24408 #: ../src/guestfs-actions.pod:3368
24409 msgid "guestfs_inspect_os"
24410 msgstr ""
24411
24412 #. type: verbatim
24413 #: ../src/guestfs-actions.pod:3370
24414 #, no-wrap
24415 msgid ""
24416 " char **\n"
24417 " guestfs_inspect_os (guestfs_h *g);\n"
24418 "\n"
24419 msgstr ""
24420
24421 #. type: textblock
24422 #: ../src/guestfs-actions.pod:3386
24423 msgid ""
24424 "You can pass the root string(s) returned to other C<guestfs_inspect_get_*> "
24425 "functions in order to query further information about each operating system, "
24426 "such as the name and version."
24427 msgstr ""
24428
24429 #. type: textblock
24430 #: ../src/guestfs-actions.pod:3391
24431 msgid ""
24432 "This function uses other libguestfs features such as C<guestfs_mount_ro> and "
24433 "C<guestfs_umount_all> in order to mount and unmount filesystems and look at "
24434 "the contents.  This should be called with no disks currently mounted.  The "
24435 "function may also use Augeas, so any existing Augeas handle will be closed."
24436 msgstr ""
24437
24438 #. type: textblock
24439 #: ../src/guestfs-actions.pod:3403 ../src/guestfs-actions.pod:3734 ../src/guestfs-actions.pod:3816
24440 msgid "See also C<guestfs_list_filesystems>."
24441 msgstr ""
24442
24443 #. type: =head2
24444 #: ../src/guestfs-actions.pod:3411
24445 msgid "guestfs_is_blockdev"
24446 msgstr ""
24447
24448 #. type: verbatim
24449 #: ../src/guestfs-actions.pod:3413
24450 #, no-wrap
24451 msgid ""
24452 " int\n"
24453 " guestfs_is_blockdev (guestfs_h *g,\n"
24454 "                      const char *path);\n"
24455 "\n"
24456 msgstr ""
24457
24458 #. type: textblock
24459 #: ../src/guestfs-actions.pod:3420 ../src/guestfs-actions.pod:3449 ../src/guestfs-actions.pod:3479 ../src/guestfs-actions.pod:3494 ../src/guestfs-actions.pod:3510 ../src/guestfs-actions.pod:3566 ../src/guestfs-actions.pod:3581
24460 msgid "See also C<guestfs_stat>."
24461 msgstr ""
24462
24463 #. type: textblock
24464 #: ../src/guestfs-actions.pod:3424 ../src/guestfs-actions.pod:3453 ../src/guestfs-actions.pod:3498 ../src/guestfs-actions.pod:3570 ../src/guestfs-actions.pod:3585
24465 msgid "(Added in 1.5.10)"
24466 msgstr ""
24467
24468 #. type: =head2
24469 #: ../src/guestfs-actions.pod:3426
24470 msgid "guestfs_is_busy"
24471 msgstr ""
24472
24473 #. type: verbatim
24474 #: ../src/guestfs-actions.pod:3428
24475 #, no-wrap
24476 msgid ""
24477 " int\n"
24478 " guestfs_is_busy (guestfs_h *g);\n"
24479 "\n"
24480 msgstr ""
24481
24482 #. type: =head2
24483 #: ../src/guestfs-actions.pod:3440
24484 msgid "guestfs_is_chardev"
24485 msgstr ""
24486
24487 #. type: verbatim
24488 #: ../src/guestfs-actions.pod:3442
24489 #, no-wrap
24490 msgid ""
24491 " int\n"
24492 " guestfs_is_chardev (guestfs_h *g,\n"
24493 "                     const char *path);\n"
24494 "\n"
24495 msgstr ""
24496
24497 #. type: =head2
24498 #: ../src/guestfs-actions.pod:3455
24499 msgid "guestfs_is_config"
24500 msgstr ""
24501
24502 #. type: verbatim
24503 #: ../src/guestfs-actions.pod:3457
24504 #, no-wrap
24505 msgid ""
24506 " int\n"
24507 " guestfs_is_config (guestfs_h *g);\n"
24508 "\n"
24509 msgstr ""
24510
24511 #. type: =head2
24512 #: ../src/guestfs-actions.pod:3469
24513 msgid "guestfs_is_dir"
24514 msgstr ""
24515
24516 #. type: verbatim
24517 #: ../src/guestfs-actions.pod:3471
24518 #, no-wrap
24519 msgid ""
24520 " int\n"
24521 " guestfs_is_dir (guestfs_h *g,\n"
24522 "                 const char *path);\n"
24523 "\n"
24524 msgstr ""
24525
24526 #. type: =head2
24527 #: ../src/guestfs-actions.pod:3485
24528 msgid "guestfs_is_fifo"
24529 msgstr ""
24530
24531 #. type: verbatim
24532 #: ../src/guestfs-actions.pod:3487
24533 #, no-wrap
24534 msgid ""
24535 " int\n"
24536 " guestfs_is_fifo (guestfs_h *g,\n"
24537 "                  const char *path);\n"
24538 "\n"
24539 msgstr ""
24540
24541 #. type: =head2
24542 #: ../src/guestfs-actions.pod:3500
24543 msgid "guestfs_is_file"
24544 msgstr ""
24545
24546 #. type: verbatim
24547 #: ../src/guestfs-actions.pod:3502
24548 #, no-wrap
24549 msgid ""
24550 " int\n"
24551 " guestfs_is_file (guestfs_h *g,\n"
24552 "                  const char *path);\n"
24553 "\n"
24554 msgstr ""
24555
24556 #. type: =head2
24557 #: ../src/guestfs-actions.pod:3516
24558 msgid "guestfs_is_launching"
24559 msgstr ""
24560
24561 #. type: verbatim
24562 #: ../src/guestfs-actions.pod:3518
24563 #, no-wrap
24564 msgid ""
24565 " int\n"
24566 " guestfs_is_launching (guestfs_h *g);\n"
24567 "\n"
24568 msgstr ""
24569
24570 #. type: =head2
24571 #: ../src/guestfs-actions.pod:3530
24572 msgid "guestfs_is_lv"
24573 msgstr ""
24574
24575 #. type: verbatim
24576 #: ../src/guestfs-actions.pod:3532
24577 #, no-wrap
24578 msgid ""
24579 " int\n"
24580 " guestfs_is_lv (guestfs_h *g,\n"
24581 "                const char *device);\n"
24582 "\n"
24583 msgstr ""
24584
24585 #. type: =head2
24586 #: ../src/guestfs-actions.pod:3543
24587 msgid "guestfs_is_ready"
24588 msgstr ""
24589
24590 #. type: verbatim
24591 #: ../src/guestfs-actions.pod:3545
24592 #, no-wrap
24593 msgid ""
24594 " int\n"
24595 " guestfs_is_ready (guestfs_h *g);\n"
24596 "\n"
24597 msgstr ""
24598
24599 #. type: =head2
24600 #: ../src/guestfs-actions.pod:3557
24601 msgid "guestfs_is_socket"
24602 msgstr ""
24603
24604 #. type: verbatim
24605 #: ../src/guestfs-actions.pod:3559
24606 #, no-wrap
24607 msgid ""
24608 " int\n"
24609 " guestfs_is_socket (guestfs_h *g,\n"
24610 "                    const char *path);\n"
24611 "\n"
24612 msgstr ""
24613
24614 #. type: =head2
24615 #: ../src/guestfs-actions.pod:3572
24616 msgid "guestfs_is_symlink"
24617 msgstr ""
24618
24619 #. type: verbatim
24620 #: ../src/guestfs-actions.pod:3574
24621 #, no-wrap
24622 msgid ""
24623 " int\n"
24624 " guestfs_is_symlink (guestfs_h *g,\n"
24625 "                     const char *path);\n"
24626 "\n"
24627 msgstr ""
24628
24629 #. type: =head2
24630 #: ../src/guestfs-actions.pod:3587
24631 msgid "guestfs_is_zero"
24632 msgstr ""
24633
24634 #. type: verbatim
24635 #: ../src/guestfs-actions.pod:3589
24636 #, no-wrap
24637 msgid ""
24638 " int\n"
24639 " guestfs_is_zero (guestfs_h *g,\n"
24640 "                  const char *path);\n"
24641 "\n"
24642 msgstr ""
24643
24644 #. type: textblock
24645 #: ../src/guestfs-actions.pod:3598 ../src/guestfs-actions.pod:3612
24646 msgid "(Added in 1.11.8)"
24647 msgstr ""
24648
24649 #. type: =head2
24650 #: ../src/guestfs-actions.pod:3600
24651 msgid "guestfs_is_zero_device"
24652 msgstr ""
24653
24654 #. type: verbatim
24655 #: ../src/guestfs-actions.pod:3602
24656 #, no-wrap
24657 msgid ""
24658 " int\n"
24659 " guestfs_is_zero_device (guestfs_h *g,\n"
24660 "                         const char *device);\n"
24661 "\n"
24662 msgstr ""
24663
24664 #. type: =head2
24665 #: ../src/guestfs-actions.pod:3614
24666 msgid "guestfs_kill_subprocess"
24667 msgstr ""
24668
24669 #. type: verbatim
24670 #: ../src/guestfs-actions.pod:3616
24671 #, no-wrap
24672 msgid ""
24673 " int\n"
24674 " guestfs_kill_subprocess (guestfs_h *g);\n"
24675 "\n"
24676 msgstr ""
24677
24678 #. type: =head2
24679 #: ../src/guestfs-actions.pod:3625
24680 msgid "guestfs_launch"
24681 msgstr ""
24682
24683 #. type: verbatim
24684 #: ../src/guestfs-actions.pod:3627
24685 #, no-wrap
24686 msgid ""
24687 " int\n"
24688 " guestfs_launch (guestfs_h *g);\n"
24689 "\n"
24690 msgstr ""
24691
24692 #. type: =head2
24693 #: ../src/guestfs-actions.pod:3645
24694 msgid "guestfs_lchown"
24695 msgstr ""
24696
24697 #. type: verbatim
24698 #: ../src/guestfs-actions.pod:3647
24699 #, no-wrap
24700 msgid ""
24701 " int\n"
24702 " guestfs_lchown (guestfs_h *g,\n"
24703 "                 int owner,\n"
24704 "                 int group,\n"
24705 "                 const char *path);\n"
24706 "\n"
24707 msgstr ""
24708
24709 #. type: textblock
24710 #: ../src/guestfs-actions.pod:3653
24711 msgid ""
24712 "Change the file owner to C<owner> and group to C<group>.  This is like "
24713 "C<guestfs_chown> but if C<path> is a symlink then the link itself is "
24714 "changed, not the target."
24715 msgstr ""
24716
24717 #. type: =head2
24718 #: ../src/guestfs-actions.pod:3665
24719 msgid "guestfs_lgetxattr"
24720 msgstr ""
24721
24722 #. type: verbatim
24723 #: ../src/guestfs-actions.pod:3667
24724 #, no-wrap
24725 msgid ""
24726 " char *\n"
24727 " guestfs_lgetxattr (guestfs_h *g,\n"
24728 "                    const char *path,\n"
24729 "                    const char *name,\n"
24730 "                    size_t *size_r);\n"
24731 "\n"
24732 msgstr ""
24733
24734 #. type: textblock
24735 #: ../src/guestfs-actions.pod:3687
24736 msgid "See also: C<guestfs_lgetxattrs>, C<guestfs_getxattr>, L<attr(5)>."
24737 msgstr ""
24738
24739 #. type: =head2
24740 #: ../src/guestfs-actions.pod:3695
24741 msgid "guestfs_lgetxattrs"
24742 msgstr ""
24743
24744 #. type: verbatim
24745 #: ../src/guestfs-actions.pod:3697
24746 #, no-wrap
24747 msgid ""
24748 " struct guestfs_xattr_list *\n"
24749 " guestfs_lgetxattrs (guestfs_h *g,\n"
24750 "                     const char *path);\n"
24751 "\n"
24752 msgstr ""
24753
24754 #. type: textblock
24755 #: ../src/guestfs-actions.pod:3701
24756 msgid ""
24757 "This is the same as C<guestfs_getxattrs>, but if C<path> is a symbolic link, "
24758 "then it returns the extended attributes of the link itself."
24759 msgstr ""
24760
24761 #. type: =head2
24762 #: ../src/guestfs-actions.pod:3711
24763 msgid "guestfs_list_9p"
24764 msgstr ""
24765
24766 #. type: verbatim
24767 #: ../src/guestfs-actions.pod:3713
24768 #, no-wrap
24769 msgid ""
24770 " char **\n"
24771 " guestfs_list_9p (guestfs_h *g);\n"
24772 "\n"
24773 msgstr ""
24774
24775 #. type: =head2
24776 #: ../src/guestfs-actions.pod:3725
24777 msgid "guestfs_list_devices"
24778 msgstr ""
24779
24780 #. type: verbatim
24781 #: ../src/guestfs-actions.pod:3727
24782 #, no-wrap
24783 msgid ""
24784 " char **\n"
24785 " guestfs_list_devices (guestfs_h *g);\n"
24786 "\n"
24787 msgstr ""
24788
24789 #. type: =head2
24790 #: ../src/guestfs-actions.pod:3742
24791 msgid "guestfs_list_dm_devices"
24792 msgstr ""
24793
24794 #. type: verbatim
24795 #: ../src/guestfs-actions.pod:3744
24796 #, no-wrap
24797 msgid ""
24798 " char **\n"
24799 " guestfs_list_dm_devices (guestfs_h *g);\n"
24800 "\n"
24801 msgstr ""
24802
24803 #. type: textblock
24804 #: ../src/guestfs-actions.pod:3749
24805 msgid ""
24806 "The returned list contains C</dev/mapper/*> devices, eg. ones created by a "
24807 "previous call to C<guestfs_luks_open>."
24808 msgstr ""
24809
24810 #. type: textblock
24811 #: ../src/guestfs-actions.pod:3752
24812 msgid ""
24813 "Device mapper devices which correspond to logical volumes are I<not> "
24814 "returned in this list.  Call C<guestfs_lvs> if you want to list logical "
24815 "volumes."
24816 msgstr ""
24817
24818 #. type: textblock
24819 #: ../src/guestfs-actions.pod:3760 ../src/guestfs-actions.pod:5216
24820 msgid "(Added in 1.11.15)"
24821 msgstr ""
24822
24823 #. type: =head2
24824 #: ../src/guestfs-actions.pod:3762
24825 msgid "guestfs_list_filesystems"
24826 msgstr ""
24827
24828 #. type: verbatim
24829 #: ../src/guestfs-actions.pod:3764
24830 #, no-wrap
24831 msgid ""
24832 " char **\n"
24833 " guestfs_list_filesystems (guestfs_h *g);\n"
24834 "\n"
24835 msgstr ""
24836
24837 #. type: textblock
24838 #: ../src/guestfs-actions.pod:3784
24839 msgid ""
24840 "This command runs other libguestfs commands, which might include "
24841 "C<guestfs_mount> and C<guestfs_umount>, and therefore you should use this "
24842 "soon after launch and only when nothing is mounted."
24843 msgstr ""
24844
24845 #. type: textblock
24846 #: ../src/guestfs-actions.pod:3788
24847 msgid ""
24848 "Not all of the filesystems returned will be mountable.  In particular, swap "
24849 "partitions are returned in the list.  Also this command does not check that "
24850 "each filesystem found is valid and mountable, and some filesystems might be "
24851 "mountable but require special options.  Filesystems may not all belong to a "
24852 "single logical operating system (use C<guestfs_inspect_os> to look for "
24853 "OSes)."
24854 msgstr ""
24855
24856 #. type: textblock
24857 #: ../src/guestfs-actions.pod:3802 ../src/guestfs-actions.pod:5577
24858 msgid "(Added in 1.5.15)"
24859 msgstr ""
24860
24861 #. type: =head2
24862 #: ../src/guestfs-actions.pod:3804
24863 msgid "guestfs_list_partitions"
24864 msgstr ""
24865
24866 #. type: verbatim
24867 #: ../src/guestfs-actions.pod:3806
24868 #, no-wrap
24869 msgid ""
24870 " char **\n"
24871 " guestfs_list_partitions (guestfs_h *g);\n"
24872 "\n"
24873 msgstr ""
24874
24875 #. type: textblock
24876 #: ../src/guestfs-actions.pod:3813
24877 msgid ""
24878 "This does not return logical volumes.  For that you will need to call "
24879 "C<guestfs_lvs>."
24880 msgstr ""
24881
24882 #. type: =head2
24883 #: ../src/guestfs-actions.pod:3824
24884 msgid "guestfs_ll"
24885 msgstr ""
24886
24887 #. type: verbatim
24888 #: ../src/guestfs-actions.pod:3826
24889 #, no-wrap
24890 msgid ""
24891 " char *\n"
24892 " guestfs_ll (guestfs_h *g,\n"
24893 "             const char *directory);\n"
24894 "\n"
24895 msgstr ""
24896
24897 #. type: =head2
24898 #: ../src/guestfs-actions.pod:3841
24899 msgid "guestfs_ln"
24900 msgstr ""
24901
24902 #. type: verbatim
24903 #: ../src/guestfs-actions.pod:3843
24904 #, no-wrap
24905 msgid ""
24906 " int\n"
24907 " guestfs_ln (guestfs_h *g,\n"
24908 "             const char *target,\n"
24909 "             const char *linkname);\n"
24910 "\n"
24911 msgstr ""
24912
24913 #. type: =head2
24914 #: ../src/guestfs-actions.pod:3854
24915 msgid "guestfs_ln_f"
24916 msgstr ""
24917
24918 #. type: verbatim
24919 #: ../src/guestfs-actions.pod:3856
24920 #, no-wrap
24921 msgid ""
24922 " int\n"
24923 " guestfs_ln_f (guestfs_h *g,\n"
24924 "               const char *target,\n"
24925 "               const char *linkname);\n"
24926 "\n"
24927 msgstr ""
24928
24929 #. type: =head2
24930 #: ../src/guestfs-actions.pod:3868
24931 msgid "guestfs_ln_s"
24932 msgstr ""
24933
24934 #. type: verbatim
24935 #: ../src/guestfs-actions.pod:3870
24936 #, no-wrap
24937 msgid ""
24938 " int\n"
24939 " guestfs_ln_s (guestfs_h *g,\n"
24940 "               const char *target,\n"
24941 "               const char *linkname);\n"
24942 "\n"
24943 msgstr ""
24944
24945 #. type: =head2
24946 #: ../src/guestfs-actions.pod:3881
24947 msgid "guestfs_ln_sf"
24948 msgstr ""
24949
24950 #. type: verbatim
24951 #: ../src/guestfs-actions.pod:3883
24952 #, no-wrap
24953 msgid ""
24954 " int\n"
24955 " guestfs_ln_sf (guestfs_h *g,\n"
24956 "                const char *target,\n"
24957 "                const char *linkname);\n"
24958 "\n"
24959 msgstr ""
24960
24961 #. type: =head2
24962 #: ../src/guestfs-actions.pod:3895
24963 msgid "guestfs_lremovexattr"
24964 msgstr ""
24965
24966 #. type: verbatim
24967 #: ../src/guestfs-actions.pod:3897
24968 #, no-wrap
24969 msgid ""
24970 " int\n"
24971 " guestfs_lremovexattr (guestfs_h *g,\n"
24972 "                       const char *xattr,\n"
24973 "                       const char *path);\n"
24974 "\n"
24975 msgstr ""
24976
24977 #. type: textblock
24978 #: ../src/guestfs-actions.pod:3902
24979 msgid ""
24980 "This is the same as C<guestfs_removexattr>, but if C<path> is a symbolic "
24981 "link, then it removes an extended attribute of the link itself."
24982 msgstr ""
24983
24984 #. type: =head2
24985 #: ../src/guestfs-actions.pod:3910
24986 msgid "guestfs_ls"
24987 msgstr ""
24988
24989 #. type: verbatim
24990 #: ../src/guestfs-actions.pod:3912
24991 #, no-wrap
24992 msgid ""
24993 " char **\n"
24994 " guestfs_ls (guestfs_h *g,\n"
24995 "             const char *directory);\n"
24996 "\n"
24997 msgstr ""
24998
24999 #. type: textblock
25000 #: ../src/guestfs-actions.pod:3920
25001 msgid ""
25002 "This command is mostly useful for interactive sessions.  Programs should "
25003 "probably use C<guestfs_readdir> instead."
25004 msgstr ""
25005
25006 #. type: =head2
25007 #: ../src/guestfs-actions.pod:3929
25008 msgid "guestfs_lsetxattr"
25009 msgstr ""
25010
25011 #. type: verbatim
25012 #: ../src/guestfs-actions.pod:3931
25013 #, no-wrap
25014 msgid ""
25015 " int\n"
25016 " guestfs_lsetxattr (guestfs_h *g,\n"
25017 "                    const char *xattr,\n"
25018 "                    const char *val,\n"
25019 "                    int vallen,\n"
25020 "                    const char *path);\n"
25021 "\n"
25022 msgstr ""
25023
25024 #. type: textblock
25025 #: ../src/guestfs-actions.pod:3938
25026 msgid ""
25027 "This is the same as C<guestfs_setxattr>, but if C<path> is a symbolic link, "
25028 "then it sets an extended attribute of the link itself."
25029 msgstr ""
25030
25031 #. type: =head2
25032 #: ../src/guestfs-actions.pod:3946
25033 msgid "guestfs_lstat"
25034 msgstr ""
25035
25036 #. type: verbatim
25037 #: ../src/guestfs-actions.pod:3948
25038 #, no-wrap
25039 msgid ""
25040 " struct guestfs_stat *\n"
25041 " guestfs_lstat (guestfs_h *g,\n"
25042 "                const char *path);\n"
25043 "\n"
25044 msgstr ""
25045
25046 #. type: textblock
25047 #: ../src/guestfs-actions.pod:3954
25048 msgid ""
25049 "This is the same as C<guestfs_stat> except that if C<path> is a symbolic "
25050 "link, then the link is stat-ed, not the file it refers to."
25051 msgstr ""
25052
25053 #. type: textblock
25054 #: ../src/guestfs-actions.pod:3960 ../src/guestfs-actions.pod:6735
25055 msgid ""
25056 "This function returns a C<struct guestfs_stat *>, or NULL if there was an "
25057 "error.  I<The caller must call C<guestfs_free_stat> after use>."
25058 msgstr ""
25059
25060 #. type: textblock
25061 #: ../src/guestfs-actions.pod:3964 ../src/guestfs-actions.pod:6739 ../src/guestfs-actions.pod:6757 ../src/guestfs-actions.pod:7138
25062 msgid "(Added in 0.9.2)"
25063 msgstr ""
25064
25065 #. type: =head2
25066 #: ../src/guestfs-actions.pod:3966
25067 msgid "guestfs_lstatlist"
25068 msgstr ""
25069
25070 #. type: verbatim
25071 #: ../src/guestfs-actions.pod:3968
25072 #, no-wrap
25073 msgid ""
25074 " struct guestfs_stat_list *\n"
25075 " guestfs_lstatlist (guestfs_h *g,\n"
25076 "                    const char *path,\n"
25077 "                    char *const *names);\n"
25078 "\n"
25079 msgstr ""
25080
25081 #. type: textblock
25082 #: ../src/guestfs-actions.pod:3973
25083 msgid ""
25084 "This call allows you to perform the C<guestfs_lstat> operation on multiple "
25085 "files, where all files are in the directory C<path>.  C<names> is the list "
25086 "of files from this directory."
25087 msgstr ""
25088
25089 #. type: textblock
25090 #: ../src/guestfs-actions.pod:3982
25091 msgid ""
25092 "This call is intended for programs that want to efficiently list a directory "
25093 "contents without making many round-trips.  See also C<guestfs_lxattrlist> "
25094 "for a similarly efficient call for getting extended attributes.  Very long "
25095 "directory listings might cause the protocol message size to be exceeded, "
25096 "causing this call to fail.  The caller must split up such requests into "
25097 "smaller groups of names."
25098 msgstr ""
25099
25100 #. type: textblock
25101 #: ../src/guestfs-actions.pod:3990
25102 msgid ""
25103 "This function returns a C<struct guestfs_stat_list *>, or NULL if there was "
25104 "an error.  I<The caller must call C<guestfs_free_stat_list> after use>."
25105 msgstr ""
25106
25107 #. type: =head2
25108 #: ../src/guestfs-actions.pod:3996
25109 msgid "guestfs_luks_add_key"
25110 msgstr ""
25111
25112 #. type: verbatim
25113 #: ../src/guestfs-actions.pod:3998
25114 #, no-wrap
25115 msgid ""
25116 " int\n"
25117 " guestfs_luks_add_key (guestfs_h *g,\n"
25118 "                       const char *device,\n"
25119 "                       const char *key,\n"
25120 "                       const char *newkey,\n"
25121 "                       int keyslot);\n"
25122 "\n"
25123 msgstr ""
25124
25125 #. type: textblock
25126 #: ../src/guestfs-actions.pod:4010
25127 msgid ""
25128 "Note that if C<keyslot> already contains a key, then this command will "
25129 "fail.  You have to use C<guestfs_luks_kill_slot> first to remove that key."
25130 msgstr ""
25131
25132 #. type: textblock
25133 #: ../src/guestfs-actions.pod:4016 ../src/guestfs-actions.pod:4056 ../src/guestfs-actions.pod:4079 ../src/guestfs-actions.pod:4099 ../src/guestfs-actions.pod:4134 ../src/guestfs-actions.pod:4153
25134 msgid ""
25135 "This function takes a key or passphrase parameter which could contain "
25136 "sensitive material.  Read the section L</KEYS AND PASSPHRASES> for more "
25137 "information."
25138 msgstr ""
25139
25140 #. type: textblock
25141 #: ../src/guestfs-actions.pod:4020 ../src/guestfs-actions.pod:4060 ../src/guestfs-actions.pod:4083 ../src/guestfs-actions.pod:4103
25142 msgid "(Added in 1.5.2)"
25143 msgstr ""
25144
25145 #. type: =head2
25146 #: ../src/guestfs-actions.pod:4022
25147 msgid "guestfs_luks_close"
25148 msgstr ""
25149
25150 #. type: verbatim
25151 #: ../src/guestfs-actions.pod:4024
25152 #, no-wrap
25153 msgid ""
25154 " int\n"
25155 " guestfs_luks_close (guestfs_h *g,\n"
25156 "                     const char *device);\n"
25157 "\n"
25158 msgstr ""
25159
25160 #. type: textblock
25161 #: ../src/guestfs-actions.pod:4028
25162 msgid ""
25163 "This closes a LUKS device that was created earlier by C<guestfs_luks_open> "
25164 "or C<guestfs_luks_open_ro>.  The C<device> parameter must be the name of the "
25165 "LUKS mapping device (ie. C</dev/mapper/mapname>) and I<not> the name of the "
25166 "underlying block device."
25167 msgstr ""
25168
25169 #. type: textblock
25170 #: ../src/guestfs-actions.pod:4036 ../src/guestfs-actions.pod:4138 ../src/guestfs-actions.pod:4157 ../src/guestfs-actions.pod:4207 ../src/guestfs-actions.pod:4255
25171 msgid "(Added in 1.5.1)"
25172 msgstr ""
25173
25174 #. type: =head2
25175 #: ../src/guestfs-actions.pod:4038
25176 msgid "guestfs_luks_format"
25177 msgstr ""
25178
25179 #. type: verbatim
25180 #: ../src/guestfs-actions.pod:4040
25181 #, no-wrap
25182 msgid ""
25183 " int\n"
25184 " guestfs_luks_format (guestfs_h *g,\n"
25185 "                      const char *device,\n"
25186 "                      const char *key,\n"
25187 "                      int keyslot);\n"
25188 "\n"
25189 msgstr ""
25190
25191 #. type: =head2
25192 #: ../src/guestfs-actions.pod:4062
25193 msgid "guestfs_luks_format_cipher"
25194 msgstr ""
25195
25196 #. type: verbatim
25197 #: ../src/guestfs-actions.pod:4064
25198 #, no-wrap
25199 msgid ""
25200 " int\n"
25201 " guestfs_luks_format_cipher (guestfs_h *g,\n"
25202 "                             const char *device,\n"
25203 "                             const char *key,\n"
25204 "                             int keyslot,\n"
25205 "                             const char *cipher);\n"
25206 "\n"
25207 msgstr ""
25208
25209 #. type: textblock
25210 #: ../src/guestfs-actions.pod:4071
25211 msgid ""
25212 "This command is the same as C<guestfs_luks_format> but it also allows you to "
25213 "set the C<cipher> used."
25214 msgstr ""
25215
25216 #. type: =head2
25217 #: ../src/guestfs-actions.pod:4085
25218 msgid "guestfs_luks_kill_slot"
25219 msgstr ""
25220
25221 #. type: verbatim
25222 #: ../src/guestfs-actions.pod:4087
25223 #, no-wrap
25224 msgid ""
25225 " int\n"
25226 " guestfs_luks_kill_slot (guestfs_h *g,\n"
25227 "                         const char *device,\n"
25228 "                         const char *key,\n"
25229 "                         int keyslot);\n"
25230 "\n"
25231 msgstr ""
25232
25233 #. type: =head2
25234 #: ../src/guestfs-actions.pod:4105
25235 msgid "guestfs_luks_open"
25236 msgstr ""
25237
25238 #. type: verbatim
25239 #: ../src/guestfs-actions.pod:4107
25240 #, no-wrap
25241 msgid ""
25242 " int\n"
25243 " guestfs_luks_open (guestfs_h *g,\n"
25244 "                    const char *device,\n"
25245 "                    const char *key,\n"
25246 "                    const char *mapname);\n"
25247 "\n"
25248 msgstr ""
25249
25250 #. type: textblock
25251 #: ../src/guestfs-actions.pod:4125
25252 msgid ""
25253 "If this block device contains LVM volume groups, then calling "
25254 "C<guestfs_vgscan> followed by C<guestfs_vg_activate_all> will make them "
25255 "visible."
25256 msgstr ""
25257
25258 #. type: textblock
25259 #: ../src/guestfs-actions.pod:4129
25260 msgid "Use C<guestfs_list_dm_devices> to list all device mapper devices."
25261 msgstr ""
25262
25263 #. type: =head2
25264 #: ../src/guestfs-actions.pod:4140
25265 msgid "guestfs_luks_open_ro"
25266 msgstr ""
25267
25268 #. type: verbatim
25269 #: ../src/guestfs-actions.pod:4142
25270 #, no-wrap
25271 msgid ""
25272 " int\n"
25273 " guestfs_luks_open_ro (guestfs_h *g,\n"
25274 "                       const char *device,\n"
25275 "                       const char *key,\n"
25276 "                       const char *mapname);\n"
25277 "\n"
25278 msgstr ""
25279
25280 #. type: textblock
25281 #: ../src/guestfs-actions.pod:4148
25282 msgid ""
25283 "This is the same as C<guestfs_luks_open> except that a read-only mapping is "
25284 "created."
25285 msgstr ""
25286
25287 #. type: =head2
25288 #: ../src/guestfs-actions.pod:4159
25289 msgid "guestfs_lvcreate"
25290 msgstr ""
25291
25292 #. type: verbatim
25293 #: ../src/guestfs-actions.pod:4161
25294 #, no-wrap
25295 msgid ""
25296 " int\n"
25297 " guestfs_lvcreate (guestfs_h *g,\n"
25298 "                   const char *logvol,\n"
25299 "                   const char *volgroup,\n"
25300 "                   int mbytes);\n"
25301 "\n"
25302 msgstr ""
25303
25304 #. type: =head2
25305 #: ../src/guestfs-actions.pod:4174
25306 msgid "guestfs_lvm_canonical_lv_name"
25307 msgstr ""
25308
25309 #. type: verbatim
25310 #: ../src/guestfs-actions.pod:4176
25311 #, no-wrap
25312 msgid ""
25313 " char *\n"
25314 " guestfs_lvm_canonical_lv_name (guestfs_h *g,\n"
25315 "                                const char *lvname);\n"
25316 "\n"
25317 msgstr ""
25318
25319 #. type: textblock
25320 #: ../src/guestfs-actions.pod:4187
25321 msgid "See also C<guestfs_is_lv>."
25322 msgstr ""
25323
25324 #. type: textblock
25325 #: ../src/guestfs-actions.pod:4192
25326 msgid "(Added in 1.5.24)"
25327 msgstr ""
25328
25329 #. type: =head2
25330 #: ../src/guestfs-actions.pod:4194
25331 msgid "guestfs_lvm_clear_filter"
25332 msgstr ""
25333
25334 #. type: verbatim
25335 #: ../src/guestfs-actions.pod:4196
25336 #, no-wrap
25337 msgid ""
25338 " int\n"
25339 " guestfs_lvm_clear_filter (guestfs_h *g);\n"
25340 "\n"
25341 msgstr ""
25342
25343 #. type: textblock
25344 #: ../src/guestfs-actions.pod:4199
25345 msgid ""
25346 "This undoes the effect of C<guestfs_lvm_set_filter>.  LVM will be able to "
25347 "see every block device."
25348 msgstr ""
25349
25350 #. type: =head2
25351 #: ../src/guestfs-actions.pod:4209
25352 msgid "guestfs_lvm_remove_all"
25353 msgstr ""
25354
25355 #. type: verbatim
25356 #: ../src/guestfs-actions.pod:4211
25357 #, no-wrap
25358 msgid ""
25359 " int\n"
25360 " guestfs_lvm_remove_all (guestfs_h *g);\n"
25361 "\n"
25362 msgstr ""
25363
25364 #. type: =head2
25365 #: ../src/guestfs-actions.pod:4224
25366 msgid "guestfs_lvm_set_filter"
25367 msgstr ""
25368
25369 #. type: verbatim
25370 #: ../src/guestfs-actions.pod:4226
25371 #, no-wrap
25372 msgid ""
25373 " int\n"
25374 " guestfs_lvm_set_filter (guestfs_h *g,\n"
25375 "                         char *const *devices);\n"
25376 "\n"
25377 msgstr ""
25378
25379 #. type: =head2
25380 #: ../src/guestfs-actions.pod:4257
25381 msgid "guestfs_lvremove"
25382 msgstr ""
25383
25384 #. type: verbatim
25385 #: ../src/guestfs-actions.pod:4259
25386 #, no-wrap
25387 msgid ""
25388 " int\n"
25389 " guestfs_lvremove (guestfs_h *g,\n"
25390 "                   const char *device);\n"
25391 "\n"
25392 msgstr ""
25393
25394 #. type: textblock
25395 #: ../src/guestfs-actions.pod:4271 ../src/guestfs-actions.pod:5674 ../src/guestfs-actions.pod:7508
25396 msgid "(Added in 1.0.13)"
25397 msgstr ""
25398
25399 #. type: =head2
25400 #: ../src/guestfs-actions.pod:4273
25401 msgid "guestfs_lvrename"
25402 msgstr ""
25403
25404 #. type: verbatim
25405 #: ../src/guestfs-actions.pod:4275
25406 #, no-wrap
25407 msgid ""
25408 " int\n"
25409 " guestfs_lvrename (guestfs_h *g,\n"
25410 "                   const char *logvol,\n"
25411 "                   const char *newlogvol);\n"
25412 "\n"
25413 msgstr ""
25414
25415 #. type: textblock
25416 #: ../src/guestfs-actions.pod:4284 ../src/guestfs-actions.pod:7521
25417 msgid "(Added in 1.0.83)"
25418 msgstr ""
25419
25420 #. type: =head2
25421 #: ../src/guestfs-actions.pod:4286
25422 msgid "guestfs_lvresize"
25423 msgstr ""
25424
25425 #. type: verbatim
25426 #: ../src/guestfs-actions.pod:4288
25427 #, no-wrap
25428 msgid ""
25429 " int\n"
25430 " guestfs_lvresize (guestfs_h *g,\n"
25431 "                   const char *device,\n"
25432 "                   int mbytes);\n"
25433 "\n"
25434 msgstr ""
25435
25436 #. type: =head2
25437 #: ../src/guestfs-actions.pod:4301
25438 msgid "guestfs_lvresize_free"
25439 msgstr ""
25440
25441 #. type: verbatim
25442 #: ../src/guestfs-actions.pod:4303
25443 #, no-wrap
25444 msgid ""
25445 " int\n"
25446 " guestfs_lvresize_free (guestfs_h *g,\n"
25447 "                        const char *lv,\n"
25448 "                        int percent);\n"
25449 "\n"
25450 msgstr ""
25451
25452 #. type: textblock
25453 #: ../src/guestfs-actions.pod:4316
25454 msgid "(Added in 1.3.3)"
25455 msgstr ""
25456
25457 #. type: =head2
25458 #: ../src/guestfs-actions.pod:4318
25459 msgid "guestfs_lvs"
25460 msgstr ""
25461
25462 #. type: verbatim
25463 #: ../src/guestfs-actions.pod:4320
25464 #, no-wrap
25465 msgid ""
25466 " char **\n"
25467 " guestfs_lvs (guestfs_h *g);\n"
25468 "\n"
25469 msgstr ""
25470
25471 #. type: textblock
25472 #: ../src/guestfs-actions.pod:4329
25473 msgid "See also C<guestfs_lvs_full>, C<guestfs_list_filesystems>."
25474 msgstr ""
25475
25476 #. type: =head2
25477 #: ../src/guestfs-actions.pod:4337
25478 msgid "guestfs_lvs_full"
25479 msgstr ""
25480
25481 #. type: verbatim
25482 #: ../src/guestfs-actions.pod:4339
25483 #, no-wrap
25484 msgid ""
25485 " struct guestfs_lvm_lv_list *\n"
25486 " guestfs_lvs_full (guestfs_h *g);\n"
25487 "\n"
25488 msgstr ""
25489
25490 #. type: textblock
25491 #: ../src/guestfs-actions.pod:4345
25492 msgid ""
25493 "This function returns a C<struct guestfs_lvm_lv_list *>, or NULL if there "
25494 "was an error.  I<The caller must call C<guestfs_free_lvm_lv_list> after "
25495 "use>."
25496 msgstr ""
25497
25498 #. type: =head2
25499 #: ../src/guestfs-actions.pod:4351
25500 msgid "guestfs_lvuuid"
25501 msgstr ""
25502
25503 #. type: verbatim
25504 #: ../src/guestfs-actions.pod:4353
25505 #, no-wrap
25506 msgid ""
25507 " char *\n"
25508 " guestfs_lvuuid (guestfs_h *g,\n"
25509 "                 const char *device);\n"
25510 "\n"
25511 msgstr ""
25512
25513 #. type: =head2
25514 #: ../src/guestfs-actions.pod:4364
25515 msgid "guestfs_lxattrlist"
25516 msgstr ""
25517
25518 #. type: verbatim
25519 #: ../src/guestfs-actions.pod:4366
25520 #, no-wrap
25521 msgid ""
25522 " struct guestfs_xattr_list *\n"
25523 " guestfs_lxattrlist (guestfs_h *g,\n"
25524 "                     const char *path,\n"
25525 "                     char *const *names);\n"
25526 "\n"
25527 msgstr ""
25528
25529 #. type: textblock
25530 #: ../src/guestfs-actions.pod:4385
25531 msgid ""
25532 "This call is intended for programs that want to efficiently list a directory "
25533 "contents without making many round-trips.  See also C<guestfs_lstatlist> for "
25534 "a similarly efficient call for getting standard stats.  Very long directory "
25535 "listings might cause the protocol message size to be exceeded, causing this "
25536 "call to fail.  The caller must split up such requests into smaller groups of "
25537 "names."
25538 msgstr ""
25539
25540 #. type: =head2
25541 #: ../src/guestfs-actions.pod:4399
25542 msgid "guestfs_mkdir"
25543 msgstr ""
25544
25545 #. type: verbatim
25546 #: ../src/guestfs-actions.pod:4401
25547 #, no-wrap
25548 msgid ""
25549 " int\n"
25550 " guestfs_mkdir (guestfs_h *g,\n"
25551 "                const char *path);\n"
25552 "\n"
25553 msgstr ""
25554
25555 #. type: =head2
25556 #: ../src/guestfs-actions.pod:4411
25557 msgid "guestfs_mkdir_mode"
25558 msgstr ""
25559
25560 #. type: verbatim
25561 #: ../src/guestfs-actions.pod:4413
25562 #, no-wrap
25563 msgid ""
25564 " int\n"
25565 " guestfs_mkdir_mode (guestfs_h *g,\n"
25566 "                     const char *path,\n"
25567 "                     int mode);\n"
25568 "\n"
25569 msgstr ""
25570
25571 #. type: textblock
25572 #: ../src/guestfs-actions.pod:4425
25573 msgid "See also C<guestfs_mkdir>, C<guestfs_umask>"
25574 msgstr ""
25575
25576 #. type: =head2
25577 #: ../src/guestfs-actions.pod:4431
25578 msgid "guestfs_mkdir_p"
25579 msgstr ""
25580
25581 #. type: verbatim
25582 #: ../src/guestfs-actions.pod:4433
25583 #, no-wrap
25584 msgid ""
25585 " int\n"
25586 " guestfs_mkdir_p (guestfs_h *g,\n"
25587 "                  const char *path);\n"
25588 "\n"
25589 msgstr ""
25590
25591 #. type: =head2
25592 #: ../src/guestfs-actions.pod:4444
25593 msgid "guestfs_mkdtemp"
25594 msgstr ""
25595
25596 #. type: verbatim
25597 #: ../src/guestfs-actions.pod:4446
25598 #, no-wrap
25599 msgid ""
25600 " char *\n"
25601 " guestfs_mkdtemp (guestfs_h *g,\n"
25602 "                  const char *template);\n"
25603 "\n"
25604 msgstr ""
25605
25606 #. type: =head2
25607 #: ../src/guestfs-actions.pod:4474
25608 msgid "guestfs_mke2fs_J"
25609 msgstr ""
25610
25611 #. type: verbatim
25612 #: ../src/guestfs-actions.pod:4476
25613 #, no-wrap
25614 msgid ""
25615 " int\n"
25616 " guestfs_mke2fs_J (guestfs_h *g,\n"
25617 "                   const char *fstype,\n"
25618 "                   int blocksize,\n"
25619 "                   const char *device,\n"
25620 "                   const char *journal);\n"
25621 "\n"
25622 msgstr ""
25623
25624 #. type: textblock
25625 #: ../src/guestfs-actions.pod:4489
25626 msgid "See also C<guestfs_mke2journal>."
25627 msgstr ""
25628
25629 #. type: textblock
25630 #: ../src/guestfs-actions.pod:4493 ../src/guestfs-actions.pod:4511 ../src/guestfs-actions.pod:4529 ../src/guestfs-actions.pod:4545 ../src/guestfs-actions.pod:4559 ../src/guestfs-actions.pod:4573 ../src/guestfs-actions.pod:4632 ../src/guestfs-actions.pod:4909
25631 msgid "(Added in 1.0.68)"
25632 msgstr ""
25633
25634 #. type: =head2
25635 #: ../src/guestfs-actions.pod:4495
25636 msgid "guestfs_mke2fs_JL"
25637 msgstr ""
25638
25639 #. type: verbatim
25640 #: ../src/guestfs-actions.pod:4497
25641 #, no-wrap
25642 msgid ""
25643 " int\n"
25644 " guestfs_mke2fs_JL (guestfs_h *g,\n"
25645 "                    const char *fstype,\n"
25646 "                    int blocksize,\n"
25647 "                    const char *device,\n"
25648 "                    const char *label);\n"
25649 "\n"
25650 msgstr ""
25651
25652 #. type: textblock
25653 #: ../src/guestfs-actions.pod:4507
25654 msgid "See also C<guestfs_mke2journal_L>."
25655 msgstr ""
25656
25657 #. type: =head2
25658 #: ../src/guestfs-actions.pod:4513
25659 msgid "guestfs_mke2fs_JU"
25660 msgstr ""
25661
25662 #. type: verbatim
25663 #: ../src/guestfs-actions.pod:4515
25664 #, no-wrap
25665 msgid ""
25666 " int\n"
25667 " guestfs_mke2fs_JU (guestfs_h *g,\n"
25668 "                    const char *fstype,\n"
25669 "                    int blocksize,\n"
25670 "                    const char *device,\n"
25671 "                    const char *uuid);\n"
25672 "\n"
25673 msgstr ""
25674
25675 #. type: textblock
25676 #: ../src/guestfs-actions.pod:4525
25677 msgid "See also C<guestfs_mke2journal_U>."
25678 msgstr ""
25679
25680 #. type: =head2
25681 #: ../src/guestfs-actions.pod:4531
25682 msgid "guestfs_mke2journal"
25683 msgstr ""
25684
25685 #. type: verbatim
25686 #: ../src/guestfs-actions.pod:4533
25687 #, no-wrap
25688 msgid ""
25689 " int\n"
25690 " guestfs_mke2journal (guestfs_h *g,\n"
25691 "                      int blocksize,\n"
25692 "                      const char *device);\n"
25693 "\n"
25694 msgstr ""
25695
25696 #. type: =head2
25697 #: ../src/guestfs-actions.pod:4547
25698 msgid "guestfs_mke2journal_L"
25699 msgstr ""
25700
25701 #. type: verbatim
25702 #: ../src/guestfs-actions.pod:4549
25703 #, no-wrap
25704 msgid ""
25705 " int\n"
25706 " guestfs_mke2journal_L (guestfs_h *g,\n"
25707 "                        int blocksize,\n"
25708 "                        const char *label,\n"
25709 "                        const char *device);\n"
25710 "\n"
25711 msgstr ""
25712
25713 #. type: =head2
25714 #: ../src/guestfs-actions.pod:4561
25715 msgid "guestfs_mke2journal_U"
25716 msgstr ""
25717
25718 #. type: verbatim
25719 #: ../src/guestfs-actions.pod:4563
25720 #, no-wrap
25721 msgid ""
25722 " int\n"
25723 " guestfs_mke2journal_U (guestfs_h *g,\n"
25724 "                        int blocksize,\n"
25725 "                        const char *uuid,\n"
25726 "                        const char *device);\n"
25727 "\n"
25728 msgstr ""
25729
25730 #. type: =head2
25731 #: ../src/guestfs-actions.pod:4575
25732 msgid "guestfs_mkfifo"
25733 msgstr ""
25734
25735 #. type: verbatim
25736 #: ../src/guestfs-actions.pod:4577
25737 #, no-wrap
25738 msgid ""
25739 " int\n"
25740 " guestfs_mkfifo (guestfs_h *g,\n"
25741 "                 int mode,\n"
25742 "                 const char *path);\n"
25743 "\n"
25744 msgstr ""
25745
25746 #. type: textblock
25747 #: ../src/guestfs-actions.pod:4582
25748 msgid ""
25749 "This call creates a FIFO (named pipe) called C<path> with mode C<mode>.  It "
25750 "is just a convenient wrapper around C<guestfs_mknod>."
25751 msgstr ""
25752
25753 #. type: =head2
25754 #: ../src/guestfs-actions.pod:4592
25755 msgid "guestfs_mkfs"
25756 msgstr ""
25757
25758 #. type: verbatim
25759 #: ../src/guestfs-actions.pod:4594
25760 #, no-wrap
25761 msgid ""
25762 " int\n"
25763 " guestfs_mkfs (guestfs_h *g,\n"
25764 "               const char *fstype,\n"
25765 "               const char *device);\n"
25766 "\n"
25767 msgstr ""
25768
25769 #. type: =head2
25770 #: ../src/guestfs-actions.pod:4607
25771 msgid "guestfs_mkfs_b"
25772 msgstr ""
25773
25774 #. type: verbatim
25775 #: ../src/guestfs-actions.pod:4609
25776 #, no-wrap
25777 msgid ""
25778 " int\n"
25779 " guestfs_mkfs_b (guestfs_h *g,\n"
25780 "                 const char *fstype,\n"
25781 "                 int blocksize,\n"
25782 "                 const char *device);\n"
25783 "\n"
25784 msgstr ""
25785
25786 #. type: textblock
25787 #: ../src/guestfs-actions.pod:4615
25788 msgid ""
25789 "This call is similar to C<guestfs_mkfs>, but it allows you to control the "
25790 "block size of the resulting filesystem.  Supported block sizes depend on the "
25791 "filesystem type, but typically they are C<1024>, C<2048> or C<4096> only."
25792 msgstr ""
25793
25794 #. type: =head2
25795 #: ../src/guestfs-actions.pod:4634
25796 msgid "guestfs_mkfs_opts"
25797 msgstr ""
25798
25799 #. type: verbatim
25800 #: ../src/guestfs-actions.pod:4636
25801 #, no-wrap
25802 msgid ""
25803 " int\n"
25804 " guestfs_mkfs_opts (guestfs_h *g,\n"
25805 "                    const char *fstype,\n"
25806 "                    const char *device,\n"
25807 "                    ...);\n"
25808 "\n"
25809 msgstr ""
25810
25811 #. type: verbatim
25812 #: ../src/guestfs-actions.pod:4647
25813 #, no-wrap
25814 msgid ""
25815 " GUESTFS_MKFS_OPTS_BLOCKSIZE, int blocksize,\n"
25816 " GUESTFS_MKFS_OPTS_FEATURES, const char *features,\n"
25817 " GUESTFS_MKFS_OPTS_INODE, int inode,\n"
25818 " GUESTFS_MKFS_OPTS_SECTORSIZE, int sectorsize,\n"
25819 "\n"
25820 msgstr ""
25821
25822 #. type: textblock
25823 #: ../src/guestfs-actions.pod:4695
25824 msgid "(Added in 1.7.19)"
25825 msgstr ""
25826
25827 #. type: =head2
25828 #: ../src/guestfs-actions.pod:4697
25829 msgid "guestfs_mkfs_opts_va"
25830 msgstr ""
25831
25832 #. type: verbatim
25833 #: ../src/guestfs-actions.pod:4699
25834 #, no-wrap
25835 msgid ""
25836 " int\n"
25837 " guestfs_mkfs_opts_va (guestfs_h *g,\n"
25838 "                       const char *fstype,\n"
25839 "                       const char *device,\n"
25840 "                       va_list args);\n"
25841 "\n"
25842 msgstr ""
25843
25844 #. type: textblock
25845 #: ../src/guestfs-actions.pod:4705
25846 msgid "This is the \"va_list variant\" of L</guestfs_mkfs_opts>."
25847 msgstr ""
25848
25849 #. type: =head2
25850 #: ../src/guestfs-actions.pod:4709
25851 msgid "guestfs_mkfs_opts_argv"
25852 msgstr ""
25853
25854 #. type: verbatim
25855 #: ../src/guestfs-actions.pod:4711
25856 #, no-wrap
25857 msgid ""
25858 " int\n"
25859 " guestfs_mkfs_opts_argv (guestfs_h *g,\n"
25860 "                         const char *fstype,\n"
25861 "                         const char *device,\n"
25862 "                         const struct guestfs_mkfs_opts_argv *optargs);\n"
25863 "\n"
25864 msgstr ""
25865
25866 #. type: textblock
25867 #: ../src/guestfs-actions.pod:4717
25868 msgid "This is the \"argv variant\" of L</guestfs_mkfs_opts>."
25869 msgstr ""
25870
25871 #. type: =head2
25872 #: ../src/guestfs-actions.pod:4721
25873 msgid "guestfs_mkmountpoint"
25874 msgstr ""
25875
25876 #. type: verbatim
25877 #: ../src/guestfs-actions.pod:4723
25878 #, no-wrap
25879 msgid ""
25880 " int\n"
25881 " guestfs_mkmountpoint (guestfs_h *g,\n"
25882 "                       const char *exemptpath);\n"
25883 "\n"
25884 msgstr ""
25885
25886 #. type: textblock
25887 #: ../src/guestfs-actions.pod:4727
25888 msgid ""
25889 "C<guestfs_mkmountpoint> and C<guestfs_rmmountpoint> are specialized calls "
25890 "that can be used to create extra mountpoints before mounting the first "
25891 "filesystem."
25892 msgstr ""
25893
25894 #. type: textblock
25895 #: ../src/guestfs-actions.pod:4751
25896 msgid ""
25897 "C<guestfs_mkmountpoint> is not compatible with C<guestfs_umount_all>.  You "
25898 "may get unexpected errors if you try to mix these calls.  It is safest to "
25899 "manually unmount filesystems and remove mountpoints after use."
25900 msgstr ""
25901
25902 #. type: textblock
25903 #: ../src/guestfs-actions.pod:4755
25904 msgid ""
25905 "C<guestfs_umount_all> unmounts filesystems by sorting the paths longest "
25906 "first, so for this to work for manual mountpoints, you must ensure that the "
25907 "innermost mountpoints have the longest pathnames, as in the example code "
25908 "above."
25909 msgstr ""
25910
25911 #. type: textblock
25912 #: ../src/guestfs-actions.pod:4762
25913 msgid ""
25914 "Autosync [see C<guestfs_set_autosync>, this is set by default on handles] "
25915 "can cause C<guestfs_umount_all> to be called when the handle is closed which "
25916 "can also trigger these issues."
25917 msgstr ""
25918
25919 #. type: textblock
25920 #: ../src/guestfs-actions.pod:4768 ../src/guestfs-actions.pod:5084 ../src/guestfs-actions.pod:6094
25921 msgid "(Added in 1.0.62)"
25922 msgstr ""
25923
25924 #. type: =head2
25925 #: ../src/guestfs-actions.pod:4770
25926 msgid "guestfs_mknod"
25927 msgstr ""
25928
25929 #. type: verbatim
25930 #: ../src/guestfs-actions.pod:4772
25931 #, no-wrap
25932 msgid ""
25933 " int\n"
25934 " guestfs_mknod (guestfs_h *g,\n"
25935 "                int mode,\n"
25936 "                int devmajor,\n"
25937 "                int devminor,\n"
25938 "                const char *path);\n"
25939 "\n"
25940 msgstr ""
25941
25942 #. type: textblock
25943 #: ../src/guestfs-actions.pod:4787
25944 msgid ""
25945 "Note that, just like L<mknod(2)>, the mode must be bitwise OR'd with "
25946 "S_IFBLK, S_IFCHR, S_IFIFO or S_IFSOCK (otherwise this call just creates a "
25947 "regular file).  These constants are available in the standard Linux header "
25948 "files, or you can use C<guestfs_mknod_b>, C<guestfs_mknod_c> or "
25949 "C<guestfs_mkfifo> which are wrappers around this command which bitwise OR in "
25950 "the appropriate constant for you."
25951 msgstr ""
25952
25953 #. type: =head2
25954 #: ../src/guestfs-actions.pod:4801
25955 msgid "guestfs_mknod_b"
25956 msgstr ""
25957
25958 #. type: verbatim
25959 #: ../src/guestfs-actions.pod:4803
25960 #, no-wrap
25961 msgid ""
25962 " int\n"
25963 " guestfs_mknod_b (guestfs_h *g,\n"
25964 "                  int mode,\n"
25965 "                  int devmajor,\n"
25966 "                  int devminor,\n"
25967 "                  const char *path);\n"
25968 "\n"
25969 msgstr ""
25970
25971 #. type: textblock
25972 #: ../src/guestfs-actions.pod:4810
25973 msgid ""
25974 "This call creates a block device node called C<path> with mode C<mode> and "
25975 "device major/minor C<devmajor> and C<devminor>.  It is just a convenient "
25976 "wrapper around C<guestfs_mknod>."
25977 msgstr ""
25978
25979 #. type: =head2
25980 #: ../src/guestfs-actions.pod:4820
25981 msgid "guestfs_mknod_c"
25982 msgstr ""
25983
25984 #. type: verbatim
25985 #: ../src/guestfs-actions.pod:4822
25986 #, no-wrap
25987 msgid ""
25988 " int\n"
25989 " guestfs_mknod_c (guestfs_h *g,\n"
25990 "                  int mode,\n"
25991 "                  int devmajor,\n"
25992 "                  int devminor,\n"
25993 "                  const char *path);\n"
25994 "\n"
25995 msgstr ""
25996
25997 #. type: textblock
25998 #: ../src/guestfs-actions.pod:4829
25999 msgid ""
26000 "This call creates a char device node called C<path> with mode C<mode> and "
26001 "device major/minor C<devmajor> and C<devminor>.  It is just a convenient "
26002 "wrapper around C<guestfs_mknod>."
26003 msgstr ""
26004
26005 #. type: =head2
26006 #: ../src/guestfs-actions.pod:4839
26007 msgid "guestfs_mkswap"
26008 msgstr ""
26009
26010 #. type: verbatim
26011 #: ../src/guestfs-actions.pod:4841
26012 #, no-wrap
26013 msgid ""
26014 " int\n"
26015 " guestfs_mkswap (guestfs_h *g,\n"
26016 "                 const char *device);\n"
26017 "\n"
26018 msgstr ""
26019
26020 #. type: =head2
26021 #: ../src/guestfs-actions.pod:4851
26022 msgid "guestfs_mkswap_L"
26023 msgstr ""
26024
26025 #. type: verbatim
26026 #: ../src/guestfs-actions.pod:4853
26027 #, no-wrap
26028 msgid ""
26029 " int\n"
26030 " guestfs_mkswap_L (guestfs_h *g,\n"
26031 "                   const char *label,\n"
26032 "                   const char *device);\n"
26033 "\n"
26034 msgstr ""
26035
26036 #. type: =head2
26037 #: ../src/guestfs-actions.pod:4868
26038 msgid "guestfs_mkswap_U"
26039 msgstr ""
26040
26041 #. type: verbatim
26042 #: ../src/guestfs-actions.pod:4870
26043 #, no-wrap
26044 msgid ""
26045 " int\n"
26046 " guestfs_mkswap_U (guestfs_h *g,\n"
26047 "                   const char *uuid,\n"
26048 "                   const char *device);\n"
26049 "\n"
26050 msgstr ""
26051
26052 #. type: =head2
26053 #: ../src/guestfs-actions.pod:4881
26054 msgid "guestfs_mkswap_file"
26055 msgstr ""
26056
26057 #. type: verbatim
26058 #: ../src/guestfs-actions.pod:4883
26059 #, no-wrap
26060 msgid ""
26061 " int\n"
26062 " guestfs_mkswap_file (guestfs_h *g,\n"
26063 "                      const char *path);\n"
26064 "\n"
26065 msgstr ""
26066
26067 #. type: textblock
26068 #: ../src/guestfs-actions.pod:4889
26069 msgid ""
26070 "This command just writes a swap file signature to an existing file.  To "
26071 "create the file itself, use something like C<guestfs_fallocate>."
26072 msgstr ""
26073
26074 #. type: =head2
26075 #: ../src/guestfs-actions.pod:4896
26076 msgid "guestfs_modprobe"
26077 msgstr ""
26078
26079 #. type: verbatim
26080 #: ../src/guestfs-actions.pod:4898
26081 #, no-wrap
26082 msgid ""
26083 " int\n"
26084 " guestfs_modprobe (guestfs_h *g,\n"
26085 "                   const char *modulename);\n"
26086 "\n"
26087 msgstr ""
26088
26089 #. type: =head2
26090 #: ../src/guestfs-actions.pod:4911
26091 msgid "guestfs_mount"
26092 msgstr ""
26093
26094 #. type: verbatim
26095 #: ../src/guestfs-actions.pod:4913
26096 #, no-wrap
26097 msgid ""
26098 " int\n"
26099 " guestfs_mount (guestfs_h *g,\n"
26100 "                const char *device,\n"
26101 "                const char *mountpoint);\n"
26102 "\n"
26103 msgstr ""
26104
26105 #. type: textblock
26106 #: ../src/guestfs-actions.pod:4932
26107 msgid ""
26108 "B<Important note:> When you use this call, the filesystem options C<sync> "
26109 "and C<noatime> are set implicitly.  This was originally done because we "
26110 "thought it would improve reliability, but it turns out that I<-o sync> has a "
26111 "very large negative performance impact and negligible effect on "
26112 "reliability.  Therefore we recommend that you avoid using C<guestfs_mount> "
26113 "in any code that needs performance, and instead use C<guestfs_mount_options> "
26114 "(use an empty string for the first parameter if you don't want any options)."
26115 msgstr ""
26116
26117 #. type: =head2
26118 #: ../src/guestfs-actions.pod:4953
26119 msgid "guestfs_mount_9p"
26120 msgstr ""
26121
26122 #. type: verbatim
26123 #: ../src/guestfs-actions.pod:4955
26124 #, no-wrap
26125 msgid ""
26126 " int\n"
26127 " guestfs_mount_9p (guestfs_h *g,\n"
26128 "                   const char *mounttag,\n"
26129 "                   const char *mountpoint,\n"
26130 "                   ...);\n"
26131 "\n"
26132 msgstr ""
26133
26134 #. type: verbatim
26135 #: ../src/guestfs-actions.pod:4966
26136 #, no-wrap
26137 msgid ""
26138 " GUESTFS_MOUNT_9P_OPTIONS, const char *options,\n"
26139 "\n"
26140 msgstr ""
26141
26142 #. type: =head2
26143 #: ../src/guestfs-actions.pod:4979
26144 msgid "guestfs_mount_9p_va"
26145 msgstr ""
26146
26147 #. type: verbatim
26148 #: ../src/guestfs-actions.pod:4981
26149 #, no-wrap
26150 msgid ""
26151 " int\n"
26152 " guestfs_mount_9p_va (guestfs_h *g,\n"
26153 "                      const char *mounttag,\n"
26154 "                      const char *mountpoint,\n"
26155 "                      va_list args);\n"
26156 "\n"
26157 msgstr ""
26158
26159 #. type: textblock
26160 #: ../src/guestfs-actions.pod:4987
26161 msgid "This is the \"va_list variant\" of L</guestfs_mount_9p>."
26162 msgstr ""
26163
26164 #. type: =head2
26165 #: ../src/guestfs-actions.pod:4991
26166 msgid "guestfs_mount_9p_argv"
26167 msgstr ""
26168
26169 #. type: verbatim
26170 #: ../src/guestfs-actions.pod:4993
26171 #, no-wrap
26172 msgid ""
26173 " int\n"
26174 " guestfs_mount_9p_argv (guestfs_h *g,\n"
26175 "                        const char *mounttag,\n"
26176 "                        const char *mountpoint,\n"
26177 "                        const struct guestfs_mount_9p_argv *optargs);\n"
26178 "\n"
26179 msgstr ""
26180
26181 #. type: textblock
26182 #: ../src/guestfs-actions.pod:4999
26183 msgid "This is the \"argv variant\" of L</guestfs_mount_9p>."
26184 msgstr ""
26185
26186 #. type: =head2
26187 #: ../src/guestfs-actions.pod:5003
26188 msgid "guestfs_mount_loop"
26189 msgstr ""
26190
26191 #. type: verbatim
26192 #: ../src/guestfs-actions.pod:5005
26193 #, no-wrap
26194 msgid ""
26195 " int\n"
26196 " guestfs_mount_loop (guestfs_h *g,\n"
26197 "                     const char *file,\n"
26198 "                     const char *mountpoint);\n"
26199 "\n"
26200 msgstr ""
26201
26202 #. type: =head2
26203 #: ../src/guestfs-actions.pod:5018
26204 msgid "guestfs_mount_options"
26205 msgstr ""
26206
26207 #. type: verbatim
26208 #: ../src/guestfs-actions.pod:5020
26209 #, no-wrap
26210 msgid ""
26211 " int\n"
26212 " guestfs_mount_options (guestfs_h *g,\n"
26213 "                        const char *options,\n"
26214 "                        const char *device,\n"
26215 "                        const char *mountpoint);\n"
26216 "\n"
26217 msgstr ""
26218
26219 #. type: textblock
26220 #: ../src/guestfs-actions.pod:5026
26221 msgid ""
26222 "This is the same as the C<guestfs_mount> command, but it allows you to set "
26223 "the mount options as for the L<mount(8)> I<-o> flag."
26224 msgstr ""
26225
26226 #. type: textblock
26227 #: ../src/guestfs-actions.pod:5036 ../src/guestfs-actions.pod:5050 ../src/guestfs-actions.pod:5067
26228 msgid "(Added in 1.0.10)"
26229 msgstr ""
26230
26231 #. type: =head2
26232 #: ../src/guestfs-actions.pod:5038
26233 msgid "guestfs_mount_ro"
26234 msgstr ""
26235
26236 #. type: verbatim
26237 #: ../src/guestfs-actions.pod:5040
26238 #, no-wrap
26239 msgid ""
26240 " int\n"
26241 " guestfs_mount_ro (guestfs_h *g,\n"
26242 "                   const char *device,\n"
26243 "                   const char *mountpoint);\n"
26244 "\n"
26245 msgstr ""
26246
26247 #. type: textblock
26248 #: ../src/guestfs-actions.pod:5045
26249 msgid ""
26250 "This is the same as the C<guestfs_mount> command, but it mounts the "
26251 "filesystem with the read-only (I<-o ro>) flag."
26252 msgstr ""
26253
26254 #. type: =head2
26255 #: ../src/guestfs-actions.pod:5052
26256 msgid "guestfs_mount_vfs"
26257 msgstr ""
26258
26259 #. type: verbatim
26260 #: ../src/guestfs-actions.pod:5054
26261 #, no-wrap
26262 msgid ""
26263 " int\n"
26264 " guestfs_mount_vfs (guestfs_h *g,\n"
26265 "                    const char *options,\n"
26266 "                    const char *vfstype,\n"
26267 "                    const char *device,\n"
26268 "                    const char *mountpoint);\n"
26269 "\n"
26270 msgstr ""
26271
26272 #. type: textblock
26273 #: ../src/guestfs-actions.pod:5061
26274 msgid ""
26275 "This is the same as the C<guestfs_mount> command, but it allows you to set "
26276 "both the mount options and the vfstype as for the L<mount(8)> I<-o> and "
26277 "I<-t> flags."
26278 msgstr ""
26279
26280 #. type: =head2
26281 #: ../src/guestfs-actions.pod:5069
26282 msgid "guestfs_mountpoints"
26283 msgstr ""
26284
26285 #. type: verbatim
26286 #: ../src/guestfs-actions.pod:5071
26287 #, no-wrap
26288 msgid ""
26289 " char **\n"
26290 " guestfs_mountpoints (guestfs_h *g);\n"
26291 "\n"
26292 msgstr ""
26293
26294 #. type: textblock
26295 #: ../src/guestfs-actions.pod:5074
26296 msgid ""
26297 "This call is similar to C<guestfs_mounts>.  That call returns a list of "
26298 "devices.  This one returns a hash table (map) of device name to directory "
26299 "where the device is mounted."
26300 msgstr ""
26301
26302 #. type: =head2
26303 #: ../src/guestfs-actions.pod:5086
26304 msgid "guestfs_mounts"
26305 msgstr ""
26306
26307 #. type: verbatim
26308 #: ../src/guestfs-actions.pod:5088
26309 #, no-wrap
26310 msgid ""
26311 " char **\n"
26312 " guestfs_mounts (guestfs_h *g);\n"
26313 "\n"
26314 msgstr ""
26315
26316 #. type: textblock
26317 #: ../src/guestfs-actions.pod:5096
26318 msgid "See also: C<guestfs_mountpoints>"
26319 msgstr ""
26320
26321 #. type: =head2
26322 #: ../src/guestfs-actions.pod:5104
26323 msgid "guestfs_mv"
26324 msgstr ""
26325
26326 #. type: verbatim
26327 #: ../src/guestfs-actions.pod:5106
26328 #, no-wrap
26329 msgid ""
26330 " int\n"
26331 " guestfs_mv (guestfs_h *g,\n"
26332 "             const char *src,\n"
26333 "             const char *dest);\n"
26334 "\n"
26335 msgstr ""
26336
26337 #. type: =head2
26338 #: ../src/guestfs-actions.pod:5118
26339 msgid "guestfs_ntfs_3g_probe"
26340 msgstr ""
26341
26342 #. type: verbatim
26343 #: ../src/guestfs-actions.pod:5120
26344 #, no-wrap
26345 msgid ""
26346 " int\n"
26347 " guestfs_ntfs_3g_probe (guestfs_h *g,\n"
26348 "                        int rw,\n"
26349 "                        const char *device);\n"
26350 "\n"
26351 msgstr ""
26352
26353 #. type: textblock
26354 #: ../src/guestfs-actions.pod:5139
26355 msgid "(Added in 1.0.43)"
26356 msgstr ""
26357
26358 #. type: =head2
26359 #: ../src/guestfs-actions.pod:5141
26360 msgid "guestfs_ntfsresize"
26361 msgstr ""
26362
26363 #. type: verbatim
26364 #: ../src/guestfs-actions.pod:5143
26365 #, no-wrap
26366 msgid ""
26367 " int\n"
26368 " guestfs_ntfsresize (guestfs_h *g,\n"
26369 "                     const char *device);\n"
26370 "\n"
26371 msgstr ""
26372
26373 #. type: =head2
26374 #: ../src/guestfs-actions.pod:5171
26375 msgid "guestfs_ntfsresize_opts"
26376 msgstr ""
26377
26378 #. type: verbatim
26379 #: ../src/guestfs-actions.pod:5173
26380 #, no-wrap
26381 msgid ""
26382 " int\n"
26383 " guestfs_ntfsresize_opts (guestfs_h *g,\n"
26384 "                          const char *device,\n"
26385 "                          ...);\n"
26386 "\n"
26387 msgstr ""
26388
26389 #. type: verbatim
26390 #: ../src/guestfs-actions.pod:5183
26391 #, no-wrap
26392 msgid ""
26393 " GUESTFS_NTFSRESIZE_OPTS_SIZE, int64_t size,\n"
26394 " GUESTFS_NTFSRESIZE_OPTS_FORCE, int force,\n"
26395 "\n"
26396 msgstr ""
26397
26398 #. type: textblock
26399 #: ../src/guestfs-actions.pod:5203
26400 msgid ""
26401 "After the resize operation, the filesystem is always marked as requiring a "
26402 "consistency check (for safety).  You have to boot into Windows to perform "
26403 "this check and clear this condition.  If you I<don't> set the C<force> "
26404 "option then it is not possible to call C<guestfs_ntfsresize_opts> multiple "
26405 "times on a single filesystem without booting into Windows between each "
26406 "resize."
26407 msgstr ""
26408
26409 #. type: =head2
26410 #: ../src/guestfs-actions.pod:5218
26411 msgid "guestfs_ntfsresize_opts_va"
26412 msgstr ""
26413
26414 #. type: verbatim
26415 #: ../src/guestfs-actions.pod:5220
26416 #, no-wrap
26417 msgid ""
26418 " int\n"
26419 " guestfs_ntfsresize_opts_va (guestfs_h *g,\n"
26420 "                             const char *device,\n"
26421 "                             va_list args);\n"
26422 "\n"
26423 msgstr ""
26424
26425 #. type: textblock
26426 #: ../src/guestfs-actions.pod:5225
26427 msgid "This is the \"va_list variant\" of L</guestfs_ntfsresize_opts>."
26428 msgstr ""
26429
26430 #. type: =head2
26431 #: ../src/guestfs-actions.pod:5229
26432 msgid "guestfs_ntfsresize_opts_argv"
26433 msgstr ""
26434
26435 #. type: verbatim
26436 #: ../src/guestfs-actions.pod:5231
26437 #, no-wrap
26438 msgid ""
26439 " int\n"
26440 " guestfs_ntfsresize_opts_argv (guestfs_h *g,\n"
26441 "                               const char *device,\n"
26442 "                               const struct guestfs_ntfsresize_opts_argv "
26443 "*optargs);\n"
26444 "\n"
26445 msgstr ""
26446
26447 #. type: textblock
26448 #: ../src/guestfs-actions.pod:5236
26449 msgid "This is the \"argv variant\" of L</guestfs_ntfsresize_opts>."
26450 msgstr ""
26451
26452 #. type: =head2
26453 #: ../src/guestfs-actions.pod:5240
26454 msgid "guestfs_ntfsresize_size"
26455 msgstr ""
26456
26457 #. type: verbatim
26458 #: ../src/guestfs-actions.pod:5242
26459 #, no-wrap
26460 msgid ""
26461 " int\n"
26462 " guestfs_ntfsresize_size (guestfs_h *g,\n"
26463 "                          const char *device,\n"
26464 "                          int64_t size);\n"
26465 "\n"
26466 msgstr ""
26467
26468 #. type: textblock
26469 #: ../src/guestfs-actions.pod:5247
26470 msgid ""
26471 "This command is the same as C<guestfs_ntfsresize> except that it allows you "
26472 "to specify the new size (in bytes) explicitly."
26473 msgstr ""
26474
26475 #. type: textblock
26476 #: ../src/guestfs-actions.pod:5259 ../src/guestfs-actions.pod:5701 ../src/guestfs-actions.pod:5774 ../src/guestfs-actions.pod:6042 ../src/guestfs-actions.pod:7665
26477 msgid "(Added in 1.3.14)"
26478 msgstr ""
26479
26480 #. type: =head2
26481 #: ../src/guestfs-actions.pod:5261
26482 msgid "guestfs_part_add"
26483 msgstr ""
26484
26485 #. type: verbatim
26486 #: ../src/guestfs-actions.pod:5263
26487 #, no-wrap
26488 msgid ""
26489 " int\n"
26490 " guestfs_part_add (guestfs_h *g,\n"
26491 "                   const char *device,\n"
26492 "                   const char *prlogex,\n"
26493 "                   int64_t startsect,\n"
26494 "                   int64_t endsect);\n"
26495 "\n"
26496 msgstr ""
26497
26498 #. type: textblock
26499 #: ../src/guestfs-actions.pod:5270
26500 msgid ""
26501 "This command adds a partition to C<device>.  If there is no partition table "
26502 "on the device, call C<guestfs_part_init> first."
26503 msgstr ""
26504
26505 #. type: textblock
26506 #: ../src/guestfs-actions.pod:5282
26507 msgid ""
26508 "Creating a partition which covers the whole disk is not so easy.  Use "
26509 "C<guestfs_part_disk> to do that."
26510 msgstr ""
26511
26512 #. type: textblock
26513 #: ../src/guestfs-actions.pod:5287 ../src/guestfs-actions.pod:5325 ../src/guestfs-actions.pod:5378 ../src/guestfs-actions.pod:5462 ../src/guestfs-actions.pod:5500 ../src/guestfs-actions.pod:5519 ../src/guestfs-actions.pod:5559
26514 msgid "(Added in 1.0.78)"
26515 msgstr ""
26516
26517 #. type: =head2
26518 #: ../src/guestfs-actions.pod:5289
26519 msgid "guestfs_part_del"
26520 msgstr ""
26521
26522 #. type: verbatim
26523 #: ../src/guestfs-actions.pod:5291
26524 #, no-wrap
26525 msgid ""
26526 " int\n"
26527 " guestfs_part_del (guestfs_h *g,\n"
26528 "                   const char *device,\n"
26529 "                   int partnum);\n"
26530 "\n"
26531 msgstr ""
26532
26533 #. type: =head2
26534 #: ../src/guestfs-actions.pod:5306
26535 msgid "guestfs_part_disk"
26536 msgstr ""
26537
26538 #. type: verbatim
26539 #: ../src/guestfs-actions.pod:5308
26540 #, no-wrap
26541 msgid ""
26542 " int\n"
26543 " guestfs_part_disk (guestfs_h *g,\n"
26544 "                    const char *device,\n"
26545 "                    const char *parttype);\n"
26546 "\n"
26547 msgstr ""
26548
26549 #. type: textblock
26550 #: ../src/guestfs-actions.pod:5313
26551 msgid ""
26552 "This command is simply a combination of C<guestfs_part_init> followed by "
26553 "C<guestfs_part_add> to create a single primary partition covering the whole "
26554 "disk."
26555 msgstr ""
26556
26557 #. type: textblock
26558 #: ../src/guestfs-actions.pod:5317
26559 msgid ""
26560 "C<parttype> is the partition table type, usually C<mbr> or C<gpt>, but other "
26561 "possible values are described in C<guestfs_part_init>."
26562 msgstr ""
26563
26564 #. type: =head2
26565 #: ../src/guestfs-actions.pod:5327
26566 msgid "guestfs_part_get_bootable"
26567 msgstr ""
26568
26569 #. type: verbatim
26570 #: ../src/guestfs-actions.pod:5329
26571 #, no-wrap
26572 msgid ""
26573 " int\n"
26574 " guestfs_part_get_bootable (guestfs_h *g,\n"
26575 "                            const char *device,\n"
26576 "                            int partnum);\n"
26577 "\n"
26578 msgstr ""
26579
26580 #. type: textblock
26581 #: ../src/guestfs-actions.pod:5337
26582 msgid "See also C<guestfs_part_set_bootable>."
26583 msgstr ""
26584
26585 #. type: =head2
26586 #: ../src/guestfs-actions.pod:5343
26587 msgid "guestfs_part_get_mbr_id"
26588 msgstr ""
26589
26590 #. type: verbatim
26591 #: ../src/guestfs-actions.pod:5345
26592 #, no-wrap
26593 msgid ""
26594 " int\n"
26595 " guestfs_part_get_mbr_id (guestfs_h *g,\n"
26596 "                          const char *device,\n"
26597 "                          int partnum);\n"
26598 "\n"
26599 msgstr ""
26600
26601 #. type: textblock
26602 #: ../src/guestfs-actions.pod:5353 ../src/guestfs-actions.pod:5535
26603 msgid ""
26604 "Note that only MBR (old DOS-style) partitions have type bytes.  You will get "
26605 "undefined results for other partition table types (see "
26606 "C<guestfs_part_get_parttype>)."
26607 msgstr ""
26608
26609 #. type: =head2
26610 #: ../src/guestfs-actions.pod:5361
26611 msgid "guestfs_part_get_parttype"
26612 msgstr ""
26613
26614 #. type: verbatim
26615 #: ../src/guestfs-actions.pod:5363
26616 #, no-wrap
26617 msgid ""
26618 " char *\n"
26619 " guestfs_part_get_parttype (guestfs_h *g,\n"
26620 "                            const char *device);\n"
26621 "\n"
26622 msgstr ""
26623
26624 #. type: textblock
26625 #: ../src/guestfs-actions.pod:5370
26626 msgid ""
26627 "Common return values include: C<msdos> (a DOS/Windows style MBR partition "
26628 "table), C<gpt> (a GPT/EFI-style partition table).  Other values are "
26629 "possible, although unusual.  See C<guestfs_part_init> for a full list."
26630 msgstr ""
26631
26632 #. type: =head2
26633 #: ../src/guestfs-actions.pod:5380
26634 msgid "guestfs_part_init"
26635 msgstr ""
26636
26637 #. type: verbatim
26638 #: ../src/guestfs-actions.pod:5382
26639 #, no-wrap
26640 msgid ""
26641 " int\n"
26642 " guestfs_part_init (guestfs_h *g,\n"
26643 "                    const char *device,\n"
26644 "                    const char *parttype);\n"
26645 "\n"
26646 msgstr ""
26647
26648 #. type: textblock
26649 #: ../src/guestfs-actions.pod:5391
26650 msgid ""
26651 "Initially there are no partitions.  Following this, you should call "
26652 "C<guestfs_part_add> for each partition required."
26653 msgstr ""
26654
26655 #. type: =head2
26656 #: ../src/guestfs-actions.pod:5464
26657 msgid "guestfs_part_list"
26658 msgstr ""
26659
26660 #. type: verbatim
26661 #: ../src/guestfs-actions.pod:5466
26662 #, no-wrap
26663 msgid ""
26664 " struct guestfs_partition_list *\n"
26665 " guestfs_part_list (guestfs_h *g,\n"
26666 "                    const char *device);\n"
26667 "\n"
26668 msgstr ""
26669
26670 #. type: textblock
26671 #: ../src/guestfs-actions.pod:5483
26672 msgid ""
26673 "Start of the partition I<in bytes>.  To get sectors you have to divide by "
26674 "the device's sector size, see C<guestfs_blockdev_getss>."
26675 msgstr ""
26676
26677 #. type: textblock
26678 #: ../src/guestfs-actions.pod:5496
26679 msgid ""
26680 "This function returns a C<struct guestfs_partition_list *>, or NULL if there "
26681 "was an error.  I<The caller must call C<guestfs_free_partition_list> after "
26682 "use>."
26683 msgstr ""
26684
26685 #. type: =head2
26686 #: ../src/guestfs-actions.pod:5502
26687 msgid "guestfs_part_set_bootable"
26688 msgstr ""
26689
26690 #. type: verbatim
26691 #: ../src/guestfs-actions.pod:5504
26692 #, no-wrap
26693 msgid ""
26694 " int\n"
26695 " guestfs_part_set_bootable (guestfs_h *g,\n"
26696 "                            const char *device,\n"
26697 "                            int partnum,\n"
26698 "                            int bootable);\n"
26699 "\n"
26700 msgstr ""
26701
26702 #. type: =head2
26703 #: ../src/guestfs-actions.pod:5521
26704 msgid "guestfs_part_set_mbr_id"
26705 msgstr ""
26706
26707 #. type: verbatim
26708 #: ../src/guestfs-actions.pod:5523
26709 #, no-wrap
26710 msgid ""
26711 " int\n"
26712 " guestfs_part_set_mbr_id (guestfs_h *g,\n"
26713 "                          const char *device,\n"
26714 "                          int partnum,\n"
26715 "                          int idbyte);\n"
26716 "\n"
26717 msgstr ""
26718
26719 #. type: =head2
26720 #: ../src/guestfs-actions.pod:5543
26721 msgid "guestfs_part_set_name"
26722 msgstr ""
26723
26724 #. type: verbatim
26725 #: ../src/guestfs-actions.pod:5545
26726 #, no-wrap
26727 msgid ""
26728 " int\n"
26729 " guestfs_part_set_name (guestfs_h *g,\n"
26730 "                        const char *device,\n"
26731 "                        int partnum,\n"
26732 "                        const char *name);\n"
26733 "\n"
26734 msgstr ""
26735
26736 #. type: =head2
26737 #: ../src/guestfs-actions.pod:5561
26738 msgid "guestfs_part_to_dev"
26739 msgstr ""
26740
26741 #. type: verbatim
26742 #: ../src/guestfs-actions.pod:5563
26743 #, no-wrap
26744 msgid ""
26745 " char *\n"
26746 " guestfs_part_to_dev (guestfs_h *g,\n"
26747 "                      const char *partition);\n"
26748 "\n"
26749 msgstr ""
26750
26751 #. type: textblock
26752 #: ../src/guestfs-actions.pod:5571
26753 msgid ""
26754 "The named partition must exist, for example as a string returned from "
26755 "C<guestfs_list_partitions>."
26756 msgstr ""
26757
26758 #. type: =head2
26759 #: ../src/guestfs-actions.pod:5579
26760 msgid "guestfs_ping_daemon"
26761 msgstr ""
26762
26763 #. type: verbatim
26764 #: ../src/guestfs-actions.pod:5581
26765 #, no-wrap
26766 msgid ""
26767 " int\n"
26768 " guestfs_ping_daemon (guestfs_h *g);\n"
26769 "\n"
26770 msgstr ""
26771
26772 #. type: =head2
26773 #: ../src/guestfs-actions.pod:5593
26774 msgid "guestfs_pread"
26775 msgstr ""
26776
26777 #. type: verbatim
26778 #: ../src/guestfs-actions.pod:5595
26779 #, no-wrap
26780 msgid ""
26781 " char *\n"
26782 " guestfs_pread (guestfs_h *g,\n"
26783 "                const char *path,\n"
26784 "                int count,\n"
26785 "                int64_t offset,\n"
26786 "                size_t *size_r);\n"
26787 "\n"
26788 msgstr ""
26789
26790 #. type: textblock
26791 #: ../src/guestfs-actions.pod:5608
26792 msgid "See also C<guestfs_pwrite>, C<guestfs_pread_device>."
26793 msgstr ""
26794
26795 #. type: =head2
26796 #: ../src/guestfs-actions.pod:5619
26797 msgid "guestfs_pread_device"
26798 msgstr ""
26799
26800 #. type: verbatim
26801 #: ../src/guestfs-actions.pod:5621
26802 #, no-wrap
26803 msgid ""
26804 " char *\n"
26805 " guestfs_pread_device (guestfs_h *g,\n"
26806 "                       const char *device,\n"
26807 "                       int count,\n"
26808 "                       int64_t offset,\n"
26809 "                       size_t *size_r);\n"
26810 "\n"
26811 msgstr ""
26812
26813 #. type: textblock
26814 #: ../src/guestfs-actions.pod:5634
26815 msgid "See also C<guestfs_pread>."
26816 msgstr ""
26817
26818 #. type: textblock
26819 #: ../src/guestfs-actions.pod:5643
26820 msgid "(Added in 1.5.21)"
26821 msgstr ""
26822
26823 #. type: =head2
26824 #: ../src/guestfs-actions.pod:5645
26825 msgid "guestfs_pvcreate"
26826 msgstr ""
26827
26828 #. type: verbatim
26829 #: ../src/guestfs-actions.pod:5647
26830 #, no-wrap
26831 msgid ""
26832 " int\n"
26833 " guestfs_pvcreate (guestfs_h *g,\n"
26834 "                   const char *device);\n"
26835 "\n"
26836 msgstr ""
26837
26838 #. type: =head2
26839 #: ../src/guestfs-actions.pod:5659
26840 msgid "guestfs_pvremove"
26841 msgstr ""
26842
26843 #. type: verbatim
26844 #: ../src/guestfs-actions.pod:5661
26845 #, no-wrap
26846 msgid ""
26847 " int\n"
26848 " guestfs_pvremove (guestfs_h *g,\n"
26849 "                   const char *device);\n"
26850 "\n"
26851 msgstr ""
26852
26853 #. type: =head2
26854 #: ../src/guestfs-actions.pod:5676
26855 msgid "guestfs_pvresize"
26856 msgstr ""
26857
26858 #. type: verbatim
26859 #: ../src/guestfs-actions.pod:5678
26860 #, no-wrap
26861 msgid ""
26862 " int\n"
26863 " guestfs_pvresize (guestfs_h *g,\n"
26864 "                   const char *device);\n"
26865 "\n"
26866 msgstr ""
26867
26868 #. type: =head2
26869 #: ../src/guestfs-actions.pod:5689
26870 msgid "guestfs_pvresize_size"
26871 msgstr ""
26872
26873 #. type: verbatim
26874 #: ../src/guestfs-actions.pod:5691
26875 #, no-wrap
26876 msgid ""
26877 " int\n"
26878 " guestfs_pvresize_size (guestfs_h *g,\n"
26879 "                        const char *device,\n"
26880 "                        int64_t size);\n"
26881 "\n"
26882 msgstr ""
26883
26884 #. type: textblock
26885 #: ../src/guestfs-actions.pod:5696
26886 msgid ""
26887 "This command is the same as C<guestfs_pvresize> except that it allows you to "
26888 "specify the new size (in bytes) explicitly."
26889 msgstr ""
26890
26891 #. type: =head2
26892 #: ../src/guestfs-actions.pod:5703
26893 msgid "guestfs_pvs"
26894 msgstr ""
26895
26896 #. type: verbatim
26897 #: ../src/guestfs-actions.pod:5705
26898 #, no-wrap
26899 msgid ""
26900 " char **\n"
26901 " guestfs_pvs (guestfs_h *g);\n"
26902 "\n"
26903 msgstr ""
26904
26905 #. type: textblock
26906 #: ../src/guestfs-actions.pod:5714
26907 msgid "See also C<guestfs_pvs_full>."
26908 msgstr ""
26909
26910 #. type: =head2
26911 #: ../src/guestfs-actions.pod:5722
26912 msgid "guestfs_pvs_full"
26913 msgstr ""
26914
26915 #. type: verbatim
26916 #: ../src/guestfs-actions.pod:5724
26917 #, no-wrap
26918 msgid ""
26919 " struct guestfs_lvm_pv_list *\n"
26920 " guestfs_pvs_full (guestfs_h *g);\n"
26921 "\n"
26922 msgstr ""
26923
26924 #. type: textblock
26925 #: ../src/guestfs-actions.pod:5730
26926 msgid ""
26927 "This function returns a C<struct guestfs_lvm_pv_list *>, or NULL if there "
26928 "was an error.  I<The caller must call C<guestfs_free_lvm_pv_list> after "
26929 "use>."
26930 msgstr ""
26931
26932 #. type: =head2
26933 #: ../src/guestfs-actions.pod:5736
26934 msgid "guestfs_pvuuid"
26935 msgstr ""
26936
26937 #. type: verbatim
26938 #: ../src/guestfs-actions.pod:5738
26939 #, no-wrap
26940 msgid ""
26941 " char *\n"
26942 " guestfs_pvuuid (guestfs_h *g,\n"
26943 "                 const char *device);\n"
26944 "\n"
26945 msgstr ""
26946
26947 #. type: =head2
26948 #: ../src/guestfs-actions.pod:5749
26949 msgid "guestfs_pwrite"
26950 msgstr ""
26951
26952 #. type: verbatim
26953 #: ../src/guestfs-actions.pod:5751
26954 #, no-wrap
26955 msgid ""
26956 " int\n"
26957 " guestfs_pwrite (guestfs_h *g,\n"
26958 "                 const char *path,\n"
26959 "                 const char *content,\n"
26960 "                 size_t content_size,\n"
26961 "                 int64_t offset);\n"
26962 "\n"
26963 msgstr ""
26964
26965 #. type: textblock
26966 #: ../src/guestfs-actions.pod:5767
26967 msgid "See also C<guestfs_pread>, C<guestfs_pwrite_device>."
26968 msgstr ""
26969
26970 #. type: =head2
26971 #: ../src/guestfs-actions.pod:5776
26972 msgid "guestfs_pwrite_device"
26973 msgstr ""
26974
26975 #. type: verbatim
26976 #: ../src/guestfs-actions.pod:5778
26977 #, no-wrap
26978 msgid ""
26979 " int\n"
26980 " guestfs_pwrite_device (guestfs_h *g,\n"
26981 "                        const char *device,\n"
26982 "                        const char *content,\n"
26983 "                        size_t content_size,\n"
26984 "                        int64_t offset);\n"
26985 "\n"
26986 msgstr ""
26987
26988 #. type: textblock
26989 #: ../src/guestfs-actions.pod:5793
26990 msgid "See also C<guestfs_pwrite>."
26991 msgstr ""
26992
26993 #. type: textblock
26994 #: ../src/guestfs-actions.pod:5800
26995 msgid "(Added in 1.5.20)"
26996 msgstr ""
26997
26998 #. type: =head2
26999 #: ../src/guestfs-actions.pod:5802
27000 msgid "guestfs_read_file"
27001 msgstr ""
27002
27003 #. type: verbatim
27004 #: ../src/guestfs-actions.pod:5804
27005 #, no-wrap
27006 msgid ""
27007 " char *\n"
27008 " guestfs_read_file (guestfs_h *g,\n"
27009 "                    const char *path,\n"
27010 "                    size_t *size_r);\n"
27011 "\n"
27012 msgstr ""
27013
27014 #. type: textblock
27015 #: ../src/guestfs-actions.pod:5812
27016 msgid ""
27017 "Unlike C<guestfs_cat>, this function can correctly handle files that contain "
27018 "embedded ASCII NUL characters.  However unlike C<guestfs_download>, this "
27019 "function is limited in the total size of file that can be handled."
27020 msgstr ""
27021
27022 #. type: textblock
27023 #: ../src/guestfs-actions.pod:5824
27024 msgid "(Added in 1.0.63)"
27025 msgstr ""
27026
27027 #. type: =head2
27028 #: ../src/guestfs-actions.pod:5826
27029 msgid "guestfs_read_lines"
27030 msgstr ""
27031
27032 #. type: verbatim
27033 #: ../src/guestfs-actions.pod:5828
27034 #, no-wrap
27035 msgid ""
27036 " char **\n"
27037 " guestfs_read_lines (guestfs_h *g,\n"
27038 "                     const char *path);\n"
27039 "\n"
27040 msgstr ""
27041
27042 #. type: textblock
27043 #: ../src/guestfs-actions.pod:5837
27044 msgid ""
27045 "Note that this function cannot correctly handle binary files (specifically, "
27046 "files containing C<\\0> character which is treated as end of line).  For "
27047 "those you need to use the C<guestfs_read_file> function which has a more "
27048 "complex interface."
27049 msgstr ""
27050
27051 #. type: =head2
27052 #: ../src/guestfs-actions.pod:5848
27053 msgid "guestfs_readdir"
27054 msgstr ""
27055
27056 #. type: verbatim
27057 #: ../src/guestfs-actions.pod:5850
27058 #, no-wrap
27059 msgid ""
27060 " struct guestfs_dirent_list *\n"
27061 " guestfs_readdir (guestfs_h *g,\n"
27062 "                  const char *dir);\n"
27063 "\n"
27064 msgstr ""
27065
27066 #. type: textblock
27067 #: ../src/guestfs-actions.pod:5904
27068 msgid ""
27069 "This function is primarily intended for use by programs.  To get a simple "
27070 "list of names, use C<guestfs_ls>.  To get a printable directory for human "
27071 "consumption, use C<guestfs_ll>."
27072 msgstr ""
27073
27074 #. type: textblock
27075 #: ../src/guestfs-actions.pod:5908
27076 msgid ""
27077 "This function returns a C<struct guestfs_dirent_list *>, or NULL if there "
27078 "was an error.  I<The caller must call C<guestfs_free_dirent_list> after "
27079 "use>."
27080 msgstr ""
27081
27082 #. type: =head2
27083 #: ../src/guestfs-actions.pod:5914
27084 msgid "guestfs_readlink"
27085 msgstr ""
27086
27087 #. type: verbatim
27088 #: ../src/guestfs-actions.pod:5916
27089 #, no-wrap
27090 msgid ""
27091 " char *\n"
27092 " guestfs_readlink (guestfs_h *g,\n"
27093 "                   const char *path);\n"
27094 "\n"
27095 msgstr ""
27096
27097 #. type: =head2
27098 #: ../src/guestfs-actions.pod:5927
27099 msgid "guestfs_readlinklist"
27100 msgstr ""
27101
27102 #. type: verbatim
27103 #: ../src/guestfs-actions.pod:5929
27104 #, no-wrap
27105 msgid ""
27106 " char **\n"
27107 " guestfs_readlinklist (guestfs_h *g,\n"
27108 "                       const char *path,\n"
27109 "                       char *const *names);\n"
27110 "\n"
27111 msgstr ""
27112
27113 #. type: =head2
27114 #: ../src/guestfs-actions.pod:5962
27115 msgid "guestfs_realpath"
27116 msgstr ""
27117
27118 #. type: verbatim
27119 #: ../src/guestfs-actions.pod:5964
27120 #, no-wrap
27121 msgid ""
27122 " char *\n"
27123 " guestfs_realpath (guestfs_h *g,\n"
27124 "                   const char *path);\n"
27125 "\n"
27126 msgstr ""
27127
27128 #. type: =head2
27129 #: ../src/guestfs-actions.pod:5976
27130 msgid "guestfs_removexattr"
27131 msgstr ""
27132
27133 #. type: verbatim
27134 #: ../src/guestfs-actions.pod:5978
27135 #, no-wrap
27136 msgid ""
27137 " int\n"
27138 " guestfs_removexattr (guestfs_h *g,\n"
27139 "                      const char *xattr,\n"
27140 "                      const char *path);\n"
27141 "\n"
27142 msgstr ""
27143
27144 #. type: textblock
27145 #: ../src/guestfs-actions.pod:5986
27146 msgid "See also: C<guestfs_lremovexattr>, L<attr(5)>."
27147 msgstr ""
27148
27149 #. type: =head2
27150 #: ../src/guestfs-actions.pod:5992
27151 msgid "guestfs_resize2fs"
27152 msgstr ""
27153
27154 #. type: verbatim
27155 #: ../src/guestfs-actions.pod:5994
27156 #, no-wrap
27157 msgid ""
27158 " int\n"
27159 " guestfs_resize2fs (guestfs_h *g,\n"
27160 "                    const char *device);\n"
27161 "\n"
27162 msgstr ""
27163
27164 #. type: textblock
27165 #: ../src/guestfs-actions.pod:6001
27166 msgid ""
27167 "I<Note:> It is sometimes required that you run C<guestfs_e2fsck_f> on the "
27168 "C<device> before calling this command.  For unknown reasons C<resize2fs> "
27169 "sometimes gives an error about this and sometimes not.  In any case, it is "
27170 "always safe to call C<guestfs_e2fsck_f> before calling this function."
27171 msgstr ""
27172
27173 #. type: =head2
27174 #: ../src/guestfs-actions.pod:6011
27175 msgid "guestfs_resize2fs_M"
27176 msgstr ""
27177
27178 #. type: verbatim
27179 #: ../src/guestfs-actions.pod:6013
27180 #, no-wrap
27181 msgid ""
27182 " int\n"
27183 " guestfs_resize2fs_M (guestfs_h *g,\n"
27184 "                      const char *device);\n"
27185 "\n"
27186 msgstr ""
27187
27188 #. type: textblock
27189 #: ../src/guestfs-actions.pod:6017
27190 msgid ""
27191 "This command is the same as C<guestfs_resize2fs>, but the filesystem is "
27192 "resized to its minimum size.  This works like the I<-M> option to the "
27193 "C<resize2fs> command."
27194 msgstr ""
27195
27196 #. type: textblock
27197 #: ../src/guestfs-actions.pod:6021
27198 msgid ""
27199 "To get the resulting size of the filesystem you should call "
27200 "C<guestfs_tune2fs_l> and read the C<Block size> and C<Block count> values.  "
27201 "These two numbers, multiplied together, give the resulting size of the "
27202 "minimal filesystem in bytes."
27203 msgstr ""
27204
27205 #. type: =head2
27206 #: ../src/guestfs-actions.pod:6030
27207 msgid "guestfs_resize2fs_size"
27208 msgstr ""
27209
27210 #. type: verbatim
27211 #: ../src/guestfs-actions.pod:6032
27212 #, no-wrap
27213 msgid ""
27214 " int\n"
27215 " guestfs_resize2fs_size (guestfs_h *g,\n"
27216 "                         const char *device,\n"
27217 "                         int64_t size);\n"
27218 "\n"
27219 msgstr ""
27220
27221 #. type: textblock
27222 #: ../src/guestfs-actions.pod:6037
27223 msgid ""
27224 "This command is the same as C<guestfs_resize2fs> except that it allows you "
27225 "to specify the new size (in bytes) explicitly."
27226 msgstr ""
27227
27228 #. type: =head2
27229 #: ../src/guestfs-actions.pod:6044
27230 msgid "guestfs_rm"
27231 msgstr ""
27232
27233 #. type: verbatim
27234 #: ../src/guestfs-actions.pod:6046
27235 #, no-wrap
27236 msgid ""
27237 " int\n"
27238 " guestfs_rm (guestfs_h *g,\n"
27239 "             const char *path);\n"
27240 "\n"
27241 msgstr ""
27242
27243 #. type: =head2
27244 #: ../src/guestfs-actions.pod:6056
27245 msgid "guestfs_rm_rf"
27246 msgstr ""
27247
27248 #. type: verbatim
27249 #: ../src/guestfs-actions.pod:6058
27250 #, no-wrap
27251 msgid ""
27252 " int\n"
27253 " guestfs_rm_rf (guestfs_h *g,\n"
27254 "                const char *path);\n"
27255 "\n"
27256 msgstr ""
27257
27258 #. type: =head2
27259 #: ../src/guestfs-actions.pod:6070
27260 msgid "guestfs_rmdir"
27261 msgstr ""
27262
27263 #. type: verbatim
27264 #: ../src/guestfs-actions.pod:6072
27265 #, no-wrap
27266 msgid ""
27267 " int\n"
27268 " guestfs_rmdir (guestfs_h *g,\n"
27269 "                const char *path);\n"
27270 "\n"
27271 msgstr ""
27272
27273 #. type: =head2
27274 #: ../src/guestfs-actions.pod:6082
27275 msgid "guestfs_rmmountpoint"
27276 msgstr ""
27277
27278 #. type: verbatim
27279 #: ../src/guestfs-actions.pod:6084
27280 #, no-wrap
27281 msgid ""
27282 " int\n"
27283 " guestfs_rmmountpoint (guestfs_h *g,\n"
27284 "                       const char *exemptpath);\n"
27285 "\n"
27286 msgstr ""
27287
27288 #. type: textblock
27289 #: ../src/guestfs-actions.pod:6088
27290 msgid ""
27291 "This calls removes a mountpoint that was previously created with "
27292 "C<guestfs_mkmountpoint>.  See C<guestfs_mkmountpoint> for full details."
27293 msgstr ""
27294
27295 #. type: =head2
27296 #: ../src/guestfs-actions.pod:6096
27297 msgid "guestfs_scrub_device"
27298 msgstr ""
27299
27300 #. type: verbatim
27301 #: ../src/guestfs-actions.pod:6098
27302 #, no-wrap
27303 msgid ""
27304 " int\n"
27305 " guestfs_scrub_device (guestfs_h *g,\n"
27306 "                       const char *device);\n"
27307 "\n"
27308 msgstr ""
27309
27310 #. type: textblock
27311 #: ../src/guestfs-actions.pod:6113 ../src/guestfs-actions.pod:6131 ../src/guestfs-actions.pod:6150
27312 msgid "(Added in 1.0.52)"
27313 msgstr ""
27314
27315 #. type: =head2
27316 #: ../src/guestfs-actions.pod:6115
27317 msgid "guestfs_scrub_file"
27318 msgstr ""
27319
27320 #. type: verbatim
27321 #: ../src/guestfs-actions.pod:6117
27322 #, no-wrap
27323 msgid ""
27324 " int\n"
27325 " guestfs_scrub_file (guestfs_h *g,\n"
27326 "                     const char *file);\n"
27327 "\n"
27328 msgstr ""
27329
27330 #. type: =head2
27331 #: ../src/guestfs-actions.pod:6133
27332 msgid "guestfs_scrub_freespace"
27333 msgstr ""
27334
27335 #. type: verbatim
27336 #: ../src/guestfs-actions.pod:6135
27337 #, no-wrap
27338 msgid ""
27339 " int\n"
27340 " guestfs_scrub_freespace (guestfs_h *g,\n"
27341 "                          const char *dir);\n"
27342 "\n"
27343 msgstr ""
27344
27345 #. type: textblock
27346 #: ../src/guestfs-actions.pod:6139
27347 msgid ""
27348 "This command creates the directory C<dir> and then fills it with files until "
27349 "the filesystem is full, and scrubs the files as for C<guestfs_scrub_file>, "
27350 "and deletes them.  The intention is to scrub any free space on the partition "
27351 "containing C<dir>."
27352 msgstr ""
27353
27354 #. type: =head2
27355 #: ../src/guestfs-actions.pod:6152
27356 msgid "guestfs_set_append"
27357 msgstr ""
27358
27359 #. type: verbatim
27360 #: ../src/guestfs-actions.pod:6154
27361 #, no-wrap
27362 msgid ""
27363 " int\n"
27364 " guestfs_set_append (guestfs_h *g,\n"
27365 "                     const char *append);\n"
27366 "\n"
27367 msgstr ""
27368
27369 #. type: =head2
27370 #: ../src/guestfs-actions.pod:6171
27371 msgid "guestfs_set_attach_method"
27372 msgstr ""
27373
27374 #. type: verbatim
27375 #: ../src/guestfs-actions.pod:6173
27376 #, no-wrap
27377 msgid ""
27378 " int\n"
27379 " guestfs_set_attach_method (guestfs_h *g,\n"
27380 "                            const char *attachmethod);\n"
27381 "\n"
27382 msgstr ""
27383
27384 #. type: =head2
27385 #: ../src/guestfs-actions.pod:6201
27386 msgid "guestfs_set_autosync"
27387 msgstr ""
27388
27389 #. type: verbatim
27390 #: ../src/guestfs-actions.pod:6203
27391 #, no-wrap
27392 msgid ""
27393 " int\n"
27394 " guestfs_set_autosync (guestfs_h *g,\n"
27395 "                       int autosync);\n"
27396 "\n"
27397 msgstr ""
27398
27399 #. type: =head2
27400 #: ../src/guestfs-actions.pod:6219
27401 msgid "guestfs_set_direct"
27402 msgstr ""
27403
27404 #. type: verbatim
27405 #: ../src/guestfs-actions.pod:6221
27406 #, no-wrap
27407 msgid ""
27408 " int\n"
27409 " guestfs_set_direct (guestfs_h *g,\n"
27410 "                     int direct);\n"
27411 "\n"
27412 msgstr ""
27413
27414 #. type: textblock
27415 #: ../src/guestfs-actions.pod:6229
27416 msgid ""
27417 "One consequence of this is that log messages aren't caught by the library "
27418 "and handled by C<guestfs_set_log_message_callback>, but go straight to "
27419 "stdout."
27420 msgstr ""
27421
27422 #. type: =head2
27423 #: ../src/guestfs-actions.pod:6242
27424 msgid "guestfs_set_e2label"
27425 msgstr ""
27426
27427 #. type: verbatim
27428 #: ../src/guestfs-actions.pod:6244
27429 #, no-wrap
27430 msgid ""
27431 " int\n"
27432 " guestfs_set_e2label (guestfs_h *g,\n"
27433 "                      const char *device,\n"
27434 "                      const char *label);\n"
27435 "\n"
27436 msgstr ""
27437
27438 #. type: textblock
27439 #: ../src/guestfs-actions.pod:6253
27440 msgid ""
27441 "You can use either C<guestfs_tune2fs_l> or C<guestfs_get_e2label> to return "
27442 "the existing label on a filesystem."
27443 msgstr ""
27444
27445 #. type: =head2
27446 #: ../src/guestfs-actions.pod:6260
27447 msgid "guestfs_set_e2uuid"
27448 msgstr ""
27449
27450 #. type: verbatim
27451 #: ../src/guestfs-actions.pod:6262
27452 #, no-wrap
27453 msgid ""
27454 " int\n"
27455 " guestfs_set_e2uuid (guestfs_h *g,\n"
27456 "                     const char *device,\n"
27457 "                     const char *uuid);\n"
27458 "\n"
27459 msgstr ""
27460
27461 #. type: textblock
27462 #: ../src/guestfs-actions.pod:6272
27463 msgid ""
27464 "You can use either C<guestfs_tune2fs_l> or C<guestfs_get_e2uuid> to return "
27465 "the existing UUID of a filesystem."
27466 msgstr ""
27467
27468 #. type: =head2
27469 #: ../src/guestfs-actions.pod:6279
27470 msgid "guestfs_set_memsize"
27471 msgstr ""
27472
27473 #. type: verbatim
27474 #: ../src/guestfs-actions.pod:6281
27475 #, no-wrap
27476 msgid ""
27477 " int\n"
27478 " guestfs_set_memsize (guestfs_h *g,\n"
27479 "                      int memsize);\n"
27480 "\n"
27481 msgstr ""
27482
27483 #. type: textblock
27484 #: ../src/guestfs-actions.pod:6285
27485 msgid ""
27486 "This sets the memory size in megabytes allocated to the qemu subprocess.  "
27487 "This only has any effect if called before C<guestfs_launch>."
27488 msgstr ""
27489
27490 #. type: =head2
27491 #: ../src/guestfs-actions.pod:6300
27492 msgid "guestfs_set_network"
27493 msgstr ""
27494
27495 #. type: verbatim
27496 #: ../src/guestfs-actions.pod:6302
27497 #, no-wrap
27498 msgid ""
27499 " int\n"
27500 " guestfs_set_network (guestfs_h *g,\n"
27501 "                      int network);\n"
27502 "\n"
27503 msgstr ""
27504
27505 #. type: textblock
27506 #: ../src/guestfs-actions.pod:6312
27507 msgid ""
27508 "You must call this before calling C<guestfs_launch>, otherwise it has no "
27509 "effect."
27510 msgstr ""
27511
27512 #. type: =head2
27513 #: ../src/guestfs-actions.pod:6319
27514 msgid "guestfs_set_path"
27515 msgstr ""
27516
27517 #. type: verbatim
27518 #: ../src/guestfs-actions.pod:6321
27519 #, no-wrap
27520 msgid ""
27521 " int\n"
27522 " guestfs_set_path (guestfs_h *g,\n"
27523 "                   const char *searchpath);\n"
27524 "\n"
27525 msgstr ""
27526
27527 #. type: =head2
27528 #: ../src/guestfs-actions.pod:6336
27529 msgid "guestfs_set_pgroup"
27530 msgstr ""
27531
27532 #. type: verbatim
27533 #: ../src/guestfs-actions.pod:6338
27534 #, no-wrap
27535 msgid ""
27536 " int\n"
27537 " guestfs_set_pgroup (guestfs_h *g,\n"
27538 "                     int pgroup);\n"
27539 "\n"
27540 msgstr ""
27541
27542 #. type: =head2
27543 #: ../src/guestfs-actions.pod:6355
27544 msgid "guestfs_set_qemu"
27545 msgstr ""
27546
27547 #. type: verbatim
27548 #: ../src/guestfs-actions.pod:6357
27549 #, no-wrap
27550 msgid ""
27551 " int\n"
27552 " guestfs_set_qemu (guestfs_h *g,\n"
27553 "                   const char *qemu);\n"
27554 "\n"
27555 msgstr ""
27556
27557 #. type: =head2
27558 #: ../src/guestfs-actions.pod:6383
27559 msgid "guestfs_set_recovery_proc"
27560 msgstr ""
27561
27562 #. type: verbatim
27563 #: ../src/guestfs-actions.pod:6385
27564 #, no-wrap
27565 msgid ""
27566 " int\n"
27567 " guestfs_set_recovery_proc (guestfs_h *g,\n"
27568 "                            int recoveryproc);\n"
27569 "\n"
27570 msgstr ""
27571
27572 #. type: textblock
27573 #: ../src/guestfs-actions.pod:6389
27574 msgid ""
27575 "If this is called with the parameter C<false> then C<guestfs_launch> does "
27576 "not create a recovery process.  The purpose of the recovery process is to "
27577 "stop runaway qemu processes in the case where the main program aborts "
27578 "abruptly."
27579 msgstr ""
27580
27581 #. type: textblock
27582 #: ../src/guestfs-actions.pod:6394
27583 msgid ""
27584 "This only has any effect if called before C<guestfs_launch>, and the default "
27585 "is true."
27586 msgstr ""
27587
27588 #. type: =head2
27589 #: ../src/guestfs-actions.pod:6407
27590 msgid "guestfs_set_selinux"
27591 msgstr ""
27592
27593 #. type: verbatim
27594 #: ../src/guestfs-actions.pod:6409
27595 #, no-wrap
27596 msgid ""
27597 " int\n"
27598 " guestfs_set_selinux (guestfs_h *g,\n"
27599 "                      int selinux);\n"
27600 "\n"
27601 msgstr ""
27602
27603 #. type: =head2
27604 #: ../src/guestfs-actions.pod:6426
27605 msgid "guestfs_set_trace"
27606 msgstr ""
27607
27608 #. type: verbatim
27609 #: ../src/guestfs-actions.pod:6428
27610 #, no-wrap
27611 msgid ""
27612 " int\n"
27613 " guestfs_set_trace (guestfs_h *g,\n"
27614 "                    int trace);\n"
27615 "\n"
27616 msgstr ""
27617
27618 #. type: textblock
27619 #: ../src/guestfs-actions.pod:6442
27620 msgid ""
27621 "Trace messages are normally sent to C<stderr>, unless you register a "
27622 "callback to send them somewhere else (see C<guestfs_set_event_callback>)."
27623 msgstr ""
27624
27625 #. type: =head2
27626 #: ../src/guestfs-actions.pod:6450
27627 msgid "guestfs_set_verbose"
27628 msgstr ""
27629
27630 #. type: verbatim
27631 #: ../src/guestfs-actions.pod:6452
27632 #, no-wrap
27633 msgid ""
27634 " int\n"
27635 " guestfs_set_verbose (guestfs_h *g,\n"
27636 "                      int verbose);\n"
27637 "\n"
27638 msgstr ""
27639
27640 #. type: textblock
27641 #: ../src/guestfs-actions.pod:6461
27642 msgid ""
27643 "Verbose messages are normally sent to C<stderr>, unless you register a "
27644 "callback to send them somewhere else (see C<guestfs_set_event_callback>)."
27645 msgstr ""
27646
27647 #. type: =head2
27648 #: ../src/guestfs-actions.pod:6469
27649 msgid "guestfs_setcon"
27650 msgstr ""
27651
27652 #. type: verbatim
27653 #: ../src/guestfs-actions.pod:6471
27654 #, no-wrap
27655 msgid ""
27656 " int\n"
27657 " guestfs_setcon (guestfs_h *g,\n"
27658 "                 const char *context);\n"
27659 "\n"
27660 msgstr ""
27661
27662 #. type: =head2
27663 #: ../src/guestfs-actions.pod:6484
27664 msgid "guestfs_setxattr"
27665 msgstr ""
27666
27667 #. type: verbatim
27668 #: ../src/guestfs-actions.pod:6486
27669 #, no-wrap
27670 msgid ""
27671 " int\n"
27672 " guestfs_setxattr (guestfs_h *g,\n"
27673 "                   const char *xattr,\n"
27674 "                   const char *val,\n"
27675 "                   int vallen,\n"
27676 "                   const char *path);\n"
27677 "\n"
27678 msgstr ""
27679
27680 #. type: textblock
27681 #: ../src/guestfs-actions.pod:6497
27682 msgid "See also: C<guestfs_lsetxattr>, L<attr(5)>."
27683 msgstr ""
27684
27685 #. type: =head2
27686 #: ../src/guestfs-actions.pod:6503
27687 msgid "guestfs_sfdisk"
27688 msgstr ""
27689
27690 #. type: verbatim
27691 #: ../src/guestfs-actions.pod:6505
27692 #, no-wrap
27693 msgid ""
27694 " int\n"
27695 " guestfs_sfdisk (guestfs_h *g,\n"
27696 "                 const char *device,\n"
27697 "                 int cyls,\n"
27698 "                 int heads,\n"
27699 "                 int sectors,\n"
27700 "                 char *const *lines);\n"
27701 "\n"
27702 msgstr ""
27703
27704 #. type: textblock
27705 #: ../src/guestfs-actions.pod:6533
27706 msgid "See also: C<guestfs_sfdisk_l>, C<guestfs_sfdisk_N>, C<guestfs_part_init>"
27707 msgstr ""
27708
27709 #. type: =head2
27710 #: ../src/guestfs-actions.pod:6550
27711 msgid "guestfs_sfdiskM"
27712 msgstr ""
27713
27714 #. type: verbatim
27715 #: ../src/guestfs-actions.pod:6552
27716 #, no-wrap
27717 msgid ""
27718 " int\n"
27719 " guestfs_sfdiskM (guestfs_h *g,\n"
27720 "                  const char *device,\n"
27721 "                  char *const *lines);\n"
27722 "\n"
27723 msgstr ""
27724
27725 #. type: textblock
27726 #: ../src/guestfs-actions.pod:6557
27727 msgid ""
27728 "This is a simplified interface to the C<guestfs_sfdisk> command, where "
27729 "partition sizes are specified in megabytes only (rounded to the nearest "
27730 "cylinder) and you don't need to specify the cyls, heads and sectors "
27731 "parameters which were rarely if ever used anyway."
27732 msgstr ""
27733
27734 #. type: textblock
27735 #: ../src/guestfs-actions.pod:6563
27736 msgid ""
27737 "See also: C<guestfs_sfdisk>, the L<sfdisk(8)> manpage and "
27738 "C<guestfs_part_disk>"
27739 msgstr ""
27740
27741 #. type: =head2
27742 #: ../src/guestfs-actions.pod:6580
27743 msgid "guestfs_sfdisk_N"
27744 msgstr ""
27745
27746 #. type: verbatim
27747 #: ../src/guestfs-actions.pod:6582
27748 #, no-wrap
27749 msgid ""
27750 " int\n"
27751 " guestfs_sfdisk_N (guestfs_h *g,\n"
27752 "                   const char *device,\n"
27753 "                   int partnum,\n"
27754 "                   int cyls,\n"
27755 "                   int heads,\n"
27756 "                   int sectors,\n"
27757 "                   const char *line);\n"
27758 "\n"
27759 msgstr ""
27760
27761 #. type: textblock
27762 #: ../src/guestfs-actions.pod:6594
27763 msgid ""
27764 "For other parameters, see C<guestfs_sfdisk>.  You should usually pass C<0> "
27765 "for the cyls/heads/sectors parameters."
27766 msgstr ""
27767
27768 #. type: textblock
27769 #: ../src/guestfs-actions.pod:6597
27770 msgid "See also: C<guestfs_part_add>"
27771 msgstr ""
27772
27773 #. type: =head2
27774 #: ../src/guestfs-actions.pod:6613
27775 msgid "guestfs_sfdisk_disk_geometry"
27776 msgstr ""
27777
27778 #. type: verbatim
27779 #: ../src/guestfs-actions.pod:6615
27780 #, no-wrap
27781 msgid ""
27782 " char *\n"
27783 " guestfs_sfdisk_disk_geometry (guestfs_h *g,\n"
27784 "                               const char *device);\n"
27785 "\n"
27786 msgstr ""
27787
27788 #. type: textblock
27789 #: ../src/guestfs-actions.pod:6619
27790 msgid ""
27791 "This displays the disk geometry of C<device> read from the partition table.  "
27792 "Especially in the case where the underlying block device has been resized, "
27793 "this can be different from the kernel's idea of the geometry (see "
27794 "C<guestfs_sfdisk_kernel_geometry>)."
27795 msgstr ""
27796
27797 #. type: =head2
27798 #: ../src/guestfs-actions.pod:6632
27799 msgid "guestfs_sfdisk_kernel_geometry"
27800 msgstr ""
27801
27802 #. type: verbatim
27803 #: ../src/guestfs-actions.pod:6634
27804 #, no-wrap
27805 msgid ""
27806 " char *\n"
27807 " guestfs_sfdisk_kernel_geometry (guestfs_h *g,\n"
27808 "                                 const char *device);\n"
27809 "\n"
27810 msgstr ""
27811
27812 #. type: =head2
27813 #: ../src/guestfs-actions.pod:6648
27814 msgid "guestfs_sfdisk_l"
27815 msgstr ""
27816
27817 #. type: verbatim
27818 #: ../src/guestfs-actions.pod:6650
27819 #, no-wrap
27820 msgid ""
27821 " char *\n"
27822 " guestfs_sfdisk_l (guestfs_h *g,\n"
27823 "                   const char *device);\n"
27824 "\n"
27825 msgstr ""
27826
27827 #. type: textblock
27828 #: ../src/guestfs-actions.pod:6658
27829 msgid "See also: C<guestfs_part_list>"
27830 msgstr ""
27831
27832 #. type: =head2
27833 #: ../src/guestfs-actions.pod:6672
27834 msgid "guestfs_sh"
27835 msgstr ""
27836
27837 #. type: verbatim
27838 #: ../src/guestfs-actions.pod:6674
27839 #, no-wrap
27840 msgid ""
27841 " char *\n"
27842 " guestfs_sh (guestfs_h *g,\n"
27843 "             const char *command);\n"
27844 "\n"
27845 msgstr ""
27846
27847 #. type: textblock
27848 #: ../src/guestfs-actions.pod:6681
27849 msgid "This is like C<guestfs_command>, but passes the command to:"
27850 msgstr ""
27851
27852 #. type: textblock
27853 #: ../src/guestfs-actions.pod:6689
27854 msgid "All the provisos about C<guestfs_command> apply to this call."
27855 msgstr ""
27856
27857 #. type: =head2
27858 #: ../src/guestfs-actions.pod:6696
27859 msgid "guestfs_sh_lines"
27860 msgstr ""
27861
27862 #. type: verbatim
27863 #: ../src/guestfs-actions.pod:6698
27864 #, no-wrap
27865 msgid ""
27866 " char **\n"
27867 " guestfs_sh_lines (guestfs_h *g,\n"
27868 "                   const char *command);\n"
27869 "\n"
27870 msgstr ""
27871
27872 #. type: textblock
27873 #: ../src/guestfs-actions.pod:6702
27874 msgid ""
27875 "This is the same as C<guestfs_sh>, but splits the result into a list of "
27876 "lines."
27877 msgstr ""
27878
27879 #. type: textblock
27880 #: ../src/guestfs-actions.pod:6705
27881 msgid "See also: C<guestfs_command_lines>"
27882 msgstr ""
27883
27884 #. type: =head2
27885 #: ../src/guestfs-actions.pod:6713
27886 msgid "guestfs_sleep"
27887 msgstr ""
27888
27889 #. type: verbatim
27890 #: ../src/guestfs-actions.pod:6715
27891 #, no-wrap
27892 msgid ""
27893 " int\n"
27894 " guestfs_sleep (guestfs_h *g,\n"
27895 "                int secs);\n"
27896 "\n"
27897 msgstr ""
27898
27899 #. type: textblock
27900 #: ../src/guestfs-actions.pod:6723
27901 msgid "(Added in 1.0.41)"
27902 msgstr ""
27903
27904 #. type: =head2
27905 #: ../src/guestfs-actions.pod:6725 ../src/guestfs-structs.pod:109
27906 msgid "guestfs_stat"
27907 msgstr ""
27908
27909 #. type: verbatim
27910 #: ../src/guestfs-actions.pod:6727
27911 #, no-wrap
27912 msgid ""
27913 " struct guestfs_stat *\n"
27914 " guestfs_stat (guestfs_h *g,\n"
27915 "               const char *path);\n"
27916 "\n"
27917 msgstr ""
27918
27919 #. type: =head2
27920 #: ../src/guestfs-actions.pod:6741 ../src/guestfs-structs.pod:135
27921 msgid "guestfs_statvfs"
27922 msgstr ""
27923
27924 #. type: verbatim
27925 #: ../src/guestfs-actions.pod:6743
27926 #, no-wrap
27927 msgid ""
27928 " struct guestfs_statvfs *\n"
27929 " guestfs_statvfs (guestfs_h *g,\n"
27930 "                  const char *path);\n"
27931 "\n"
27932 msgstr ""
27933
27934 #. type: textblock
27935 #: ../src/guestfs-actions.pod:6753
27936 msgid ""
27937 "This function returns a C<struct guestfs_statvfs *>, or NULL if there was an "
27938 "error.  I<The caller must call C<guestfs_free_statvfs> after use>."
27939 msgstr ""
27940
27941 #. type: =head2
27942 #: ../src/guestfs-actions.pod:6759
27943 msgid "guestfs_strings"
27944 msgstr ""
27945
27946 #. type: verbatim
27947 #: ../src/guestfs-actions.pod:6761
27948 #, no-wrap
27949 msgid ""
27950 " char **\n"
27951 " guestfs_strings (guestfs_h *g,\n"
27952 "                  const char *path);\n"
27953 "\n"
27954 msgstr ""
27955
27956 #. type: =head2
27957 #: ../src/guestfs-actions.pod:6777
27958 msgid "guestfs_strings_e"
27959 msgstr ""
27960
27961 #. type: verbatim
27962 #: ../src/guestfs-actions.pod:6779
27963 #, no-wrap
27964 msgid ""
27965 " char **\n"
27966 " guestfs_strings_e (guestfs_h *g,\n"
27967 "                    const char *encoding,\n"
27968 "                    const char *path);\n"
27969 "\n"
27970 msgstr ""
27971
27972 #. type: textblock
27973 #: ../src/guestfs-actions.pod:6784
27974 msgid ""
27975 "This is like the C<guestfs_strings> command, but allows you to specify the "
27976 "encoding of strings that are looked for in the source file C<path>."
27977 msgstr ""
27978
27979 #. type: textblock
27980 #: ../src/guestfs-actions.pod:6794
27981 msgid ""
27982 "Single 7-bit-byte characters like ASCII and the ASCII-compatible parts of "
27983 "ISO-8859-X (this is what C<guestfs_strings> uses)."
27984 msgstr ""
27985
27986 #. type: =head2
27987 #: ../src/guestfs-actions.pod:6832
27988 msgid "guestfs_swapoff_device"
27989 msgstr ""
27990
27991 #. type: verbatim
27992 #: ../src/guestfs-actions.pod:6834
27993 #, no-wrap
27994 msgid ""
27995 " int\n"
27996 " guestfs_swapoff_device (guestfs_h *g,\n"
27997 "                         const char *device);\n"
27998 "\n"
27999 msgstr ""
28000
28001 #. type: textblock
28002 #: ../src/guestfs-actions.pod:6838
28003 msgid ""
28004 "This command disables the libguestfs appliance swap device or partition "
28005 "named C<device>.  See C<guestfs_swapon_device>."
28006 msgstr ""
28007
28008 #. type: =head2
28009 #: ../src/guestfs-actions.pod:6846
28010 msgid "guestfs_swapoff_file"
28011 msgstr ""
28012
28013 #. type: verbatim
28014 #: ../src/guestfs-actions.pod:6848
28015 #, no-wrap
28016 msgid ""
28017 " int\n"
28018 " guestfs_swapoff_file (guestfs_h *g,\n"
28019 "                       const char *file);\n"
28020 "\n"
28021 msgstr ""
28022
28023 #. type: =head2
28024 #: ../src/guestfs-actions.pod:6858
28025 msgid "guestfs_swapoff_label"
28026 msgstr ""
28027
28028 #. type: verbatim
28029 #: ../src/guestfs-actions.pod:6860
28030 #, no-wrap
28031 msgid ""
28032 " int\n"
28033 " guestfs_swapoff_label (guestfs_h *g,\n"
28034 "                        const char *label);\n"
28035 "\n"
28036 msgstr ""
28037
28038 #. type: =head2
28039 #: ../src/guestfs-actions.pod:6871
28040 msgid "guestfs_swapoff_uuid"
28041 msgstr ""
28042
28043 #. type: verbatim
28044 #: ../src/guestfs-actions.pod:6873
28045 #, no-wrap
28046 msgid ""
28047 " int\n"
28048 " guestfs_swapoff_uuid (guestfs_h *g,\n"
28049 "                       const char *uuid);\n"
28050 "\n"
28051 msgstr ""
28052
28053 #. type: =head2
28054 #: ../src/guestfs-actions.pod:6884
28055 msgid "guestfs_swapon_device"
28056 msgstr ""
28057
28058 #. type: verbatim
28059 #: ../src/guestfs-actions.pod:6886
28060 #, no-wrap
28061 msgid ""
28062 " int\n"
28063 " guestfs_swapon_device (guestfs_h *g,\n"
28064 "                        const char *device);\n"
28065 "\n"
28066 msgstr ""
28067
28068 #. type: textblock
28069 #: ../src/guestfs-actions.pod:6890
28070 msgid ""
28071 "This command enables the libguestfs appliance to use the swap device or "
28072 "partition named C<device>.  The increased memory is made available for all "
28073 "commands, for example those run using C<guestfs_command> or C<guestfs_sh>."
28074 msgstr ""
28075
28076 #. type: =head2
28077 #: ../src/guestfs-actions.pod:6906
28078 msgid "guestfs_swapon_file"
28079 msgstr ""
28080
28081 #. type: verbatim
28082 #: ../src/guestfs-actions.pod:6908
28083 #, no-wrap
28084 msgid ""
28085 " int\n"
28086 " guestfs_swapon_file (guestfs_h *g,\n"
28087 "                      const char *file);\n"
28088 "\n"
28089 msgstr ""
28090
28091 #. type: textblock
28092 #: ../src/guestfs-actions.pod:6912
28093 msgid ""
28094 "This command enables swap to a file.  See C<guestfs_swapon_device> for other "
28095 "notes."
28096 msgstr ""
28097
28098 #. type: =head2
28099 #: ../src/guestfs-actions.pod:6919
28100 msgid "guestfs_swapon_label"
28101 msgstr ""
28102
28103 #. type: verbatim
28104 #: ../src/guestfs-actions.pod:6921
28105 #, no-wrap
28106 msgid ""
28107 " int\n"
28108 " guestfs_swapon_label (guestfs_h *g,\n"
28109 "                       const char *label);\n"
28110 "\n"
28111 msgstr ""
28112
28113 #. type: textblock
28114 #: ../src/guestfs-actions.pod:6925
28115 msgid ""
28116 "This command enables swap to a labeled swap partition.  See "
28117 "C<guestfs_swapon_device> for other notes."
28118 msgstr ""
28119
28120 #. type: =head2
28121 #: ../src/guestfs-actions.pod:6932
28122 msgid "guestfs_swapon_uuid"
28123 msgstr ""
28124
28125 #. type: verbatim
28126 #: ../src/guestfs-actions.pod:6934
28127 #, no-wrap
28128 msgid ""
28129 " int\n"
28130 " guestfs_swapon_uuid (guestfs_h *g,\n"
28131 "                      const char *uuid);\n"
28132 "\n"
28133 msgstr ""
28134
28135 #. type: textblock
28136 #: ../src/guestfs-actions.pod:6938
28137 msgid ""
28138 "This command enables swap to a swap partition with the given UUID.  See "
28139 "C<guestfs_swapon_device> for other notes."
28140 msgstr ""
28141
28142 #. type: =head2
28143 #: ../src/guestfs-actions.pod:6945
28144 msgid "guestfs_sync"
28145 msgstr ""
28146
28147 #. type: verbatim
28148 #: ../src/guestfs-actions.pod:6947
28149 #, no-wrap
28150 msgid ""
28151 " int\n"
28152 " guestfs_sync (guestfs_h *g);\n"
28153 "\n"
28154 msgstr ""
28155
28156 #. type: =head2
28157 #: ../src/guestfs-actions.pod:6960
28158 msgid "guestfs_tail"
28159 msgstr ""
28160
28161 #. type: verbatim
28162 #: ../src/guestfs-actions.pod:6962
28163 #, no-wrap
28164 msgid ""
28165 " char **\n"
28166 " guestfs_tail (guestfs_h *g,\n"
28167 "               const char *path);\n"
28168 "\n"
28169 msgstr ""
28170
28171 #. type: =head2
28172 #: ../src/guestfs-actions.pod:6978
28173 msgid "guestfs_tail_n"
28174 msgstr ""
28175
28176 #. type: verbatim
28177 #: ../src/guestfs-actions.pod:6980
28178 #, no-wrap
28179 msgid ""
28180 " char **\n"
28181 " guestfs_tail_n (guestfs_h *g,\n"
28182 "                 int nrlines,\n"
28183 "                 const char *path);\n"
28184 "\n"
28185 msgstr ""
28186
28187 #. type: =head2
28188 #: ../src/guestfs-actions.pod:7002
28189 msgid "guestfs_tar_in"
28190 msgstr ""
28191
28192 #. type: verbatim
28193 #: ../src/guestfs-actions.pod:7004
28194 #, no-wrap
28195 msgid ""
28196 " int\n"
28197 " guestfs_tar_in (guestfs_h *g,\n"
28198 "                 const char *tarfile,\n"
28199 "                 const char *directory);\n"
28200 "\n"
28201 msgstr ""
28202
28203 #. type: textblock
28204 #: ../src/guestfs-actions.pod:7012
28205 msgid "To upload a compressed tarball, use C<guestfs_tgz_in> or C<guestfs_txz_in>."
28206 msgstr ""
28207
28208 #. type: textblock
28209 #: ../src/guestfs-actions.pod:7017 ../src/guestfs-actions.pod:7034 ../src/guestfs-actions.pod:7050 ../src/guestfs-actions.pod:7066
28210 msgid "(Added in 1.0.3)"
28211 msgstr ""
28212
28213 #. type: =head2
28214 #: ../src/guestfs-actions.pod:7019
28215 msgid "guestfs_tar_out"
28216 msgstr ""
28217
28218 #. type: verbatim
28219 #: ../src/guestfs-actions.pod:7021
28220 #, no-wrap
28221 msgid ""
28222 " int\n"
28223 " guestfs_tar_out (guestfs_h *g,\n"
28224 "                  const char *directory,\n"
28225 "                  const char *tarfile);\n"
28226 "\n"
28227 msgstr ""
28228
28229 #. type: textblock
28230 #: ../src/guestfs-actions.pod:7029
28231 msgid ""
28232 "To download a compressed tarball, use C<guestfs_tgz_out> or "
28233 "C<guestfs_txz_out>."
28234 msgstr ""
28235
28236 #. type: =head2
28237 #: ../src/guestfs-actions.pod:7036
28238 msgid "guestfs_tgz_in"
28239 msgstr ""
28240
28241 #. type: verbatim
28242 #: ../src/guestfs-actions.pod:7038
28243 #, no-wrap
28244 msgid ""
28245 " int\n"
28246 " guestfs_tgz_in (guestfs_h *g,\n"
28247 "                 const char *tarball,\n"
28248 "                 const char *directory);\n"
28249 "\n"
28250 msgstr ""
28251
28252 #. type: textblock
28253 #: ../src/guestfs-actions.pod:7046
28254 msgid "To upload an uncompressed tarball, use C<guestfs_tar_in>."
28255 msgstr ""
28256
28257 #. type: =head2
28258 #: ../src/guestfs-actions.pod:7052
28259 msgid "guestfs_tgz_out"
28260 msgstr ""
28261
28262 #. type: verbatim
28263 #: ../src/guestfs-actions.pod:7054
28264 #, no-wrap
28265 msgid ""
28266 " int\n"
28267 " guestfs_tgz_out (guestfs_h *g,\n"
28268 "                  const char *directory,\n"
28269 "                  const char *tarball);\n"
28270 "\n"
28271 msgstr ""
28272
28273 #. type: textblock
28274 #: ../src/guestfs-actions.pod:7062
28275 msgid "To download an uncompressed tarball, use C<guestfs_tar_out>."
28276 msgstr ""
28277
28278 #. type: =head2
28279 #: ../src/guestfs-actions.pod:7068
28280 msgid "guestfs_touch"
28281 msgstr ""
28282
28283 #. type: verbatim
28284 #: ../src/guestfs-actions.pod:7070
28285 #, no-wrap
28286 msgid ""
28287 " int\n"
28288 " guestfs_touch (guestfs_h *g,\n"
28289 "                const char *path);\n"
28290 "\n"
28291 msgstr ""
28292
28293 #. type: =head2
28294 #: ../src/guestfs-actions.pod:7085
28295 msgid "guestfs_truncate"
28296 msgstr ""
28297
28298 #. type: verbatim
28299 #: ../src/guestfs-actions.pod:7087
28300 #, no-wrap
28301 msgid ""
28302 " int\n"
28303 " guestfs_truncate (guestfs_h *g,\n"
28304 "                   const char *path);\n"
28305 "\n"
28306 msgstr ""
28307
28308 #. type: =head2
28309 #: ../src/guestfs-actions.pod:7098
28310 msgid "guestfs_truncate_size"
28311 msgstr ""
28312
28313 #. type: verbatim
28314 #: ../src/guestfs-actions.pod:7100
28315 #, no-wrap
28316 msgid ""
28317 " int\n"
28318 " guestfs_truncate_size (guestfs_h *g,\n"
28319 "                        const char *path,\n"
28320 "                        int64_t size);\n"
28321 "\n"
28322 msgstr ""
28323
28324 #. type: textblock
28325 #: ../src/guestfs-actions.pod:7108
28326 msgid ""
28327 "If the current file size is less than C<size> then the file is extended to "
28328 "the required size with zero bytes.  This creates a sparse file (ie. disk "
28329 "blocks are not allocated for the file until you write to it).  To create a "
28330 "non-sparse file of zeroes, use C<guestfs_fallocate64> instead."
28331 msgstr ""
28332
28333 #. type: =head2
28334 #: ../src/guestfs-actions.pod:7118
28335 msgid "guestfs_tune2fs_l"
28336 msgstr ""
28337
28338 #. type: verbatim
28339 #: ../src/guestfs-actions.pod:7120
28340 #, no-wrap
28341 msgid ""
28342 " char **\n"
28343 " guestfs_tune2fs_l (guestfs_h *g,\n"
28344 "                    const char *device);\n"
28345 "\n"
28346 msgstr ""
28347
28348 #. type: =head2
28349 #: ../src/guestfs-actions.pod:7140
28350 msgid "guestfs_txz_in"
28351 msgstr ""
28352
28353 #. type: verbatim
28354 #: ../src/guestfs-actions.pod:7142
28355 #, no-wrap
28356 msgid ""
28357 " int\n"
28358 " guestfs_txz_in (guestfs_h *g,\n"
28359 "                 const char *tarball,\n"
28360 "                 const char *directory);\n"
28361 "\n"
28362 msgstr ""
28363
28364 #. type: =head2
28365 #: ../src/guestfs-actions.pod:7154
28366 msgid "guestfs_txz_out"
28367 msgstr ""
28368
28369 #. type: verbatim
28370 #: ../src/guestfs-actions.pod:7156
28371 #, no-wrap
28372 msgid ""
28373 " int\n"
28374 " guestfs_txz_out (guestfs_h *g,\n"
28375 "                  const char *directory,\n"
28376 "                  const char *tarball);\n"
28377 "\n"
28378 msgstr ""
28379
28380 #. type: =head2
28381 #: ../src/guestfs-actions.pod:7168
28382 msgid "guestfs_umask"
28383 msgstr ""
28384
28385 #. type: verbatim
28386 #: ../src/guestfs-actions.pod:7170
28387 #, no-wrap
28388 msgid ""
28389 " int\n"
28390 " guestfs_umask (guestfs_h *g,\n"
28391 "                int mask);\n"
28392 "\n"
28393 msgstr ""
28394
28395 #. type: textblock
28396 #: ../src/guestfs-actions.pod:7186
28397 msgid ""
28398 "See also C<guestfs_get_umask>, L<umask(2)>, C<guestfs_mknod>, "
28399 "C<guestfs_mkdir>."
28400 msgstr ""
28401
28402 #. type: =head2
28403 #: ../src/guestfs-actions.pod:7195
28404 msgid "guestfs_umount"
28405 msgstr ""
28406
28407 #. type: verbatim
28408 #: ../src/guestfs-actions.pod:7197
28409 #, no-wrap
28410 msgid ""
28411 " int\n"
28412 " guestfs_umount (guestfs_h *g,\n"
28413 "                 const char *pathordevice);\n"
28414 "\n"
28415 msgstr ""
28416
28417 #. type: =head2
28418 #: ../src/guestfs-actions.pod:7209
28419 msgid "guestfs_umount_all"
28420 msgstr ""
28421
28422 #. type: verbatim
28423 #: ../src/guestfs-actions.pod:7211
28424 #, no-wrap
28425 msgid ""
28426 " int\n"
28427 " guestfs_umount_all (guestfs_h *g);\n"
28428 "\n"
28429 msgstr ""
28430
28431 #. type: =head2
28432 #: ../src/guestfs-actions.pod:7222
28433 msgid "guestfs_upload"
28434 msgstr ""
28435
28436 #. type: verbatim
28437 #: ../src/guestfs-actions.pod:7224
28438 #, no-wrap
28439 msgid ""
28440 " int\n"
28441 " guestfs_upload (guestfs_h *g,\n"
28442 "                 const char *filename,\n"
28443 "                 const char *remotefilename);\n"
28444 "\n"
28445 msgstr ""
28446
28447 #. type: textblock
28448 #: ../src/guestfs-actions.pod:7234
28449 msgid "See also C<guestfs_download>."
28450 msgstr ""
28451
28452 #. type: =head2
28453 #: ../src/guestfs-actions.pod:7245
28454 msgid "guestfs_upload_offset"
28455 msgstr ""
28456
28457 #. type: verbatim
28458 #: ../src/guestfs-actions.pod:7247
28459 #, no-wrap
28460 msgid ""
28461 " int\n"
28462 " guestfs_upload_offset (guestfs_h *g,\n"
28463 "                        const char *filename,\n"
28464 "                        const char *remotefilename,\n"
28465 "                        int64_t offset);\n"
28466 "\n"
28467 msgstr ""
28468
28469 #. type: textblock
28470 #: ../src/guestfs-actions.pod:7263
28471 msgid ""
28472 "Note that there is no limit on the amount of data that can be uploaded with "
28473 "this call, unlike with C<guestfs_pwrite>, and this call always writes the "
28474 "full amount unless an error occurs."
28475 msgstr ""
28476
28477 #. type: textblock
28478 #: ../src/guestfs-actions.pod:7268
28479 msgid "See also C<guestfs_upload>, C<guestfs_pwrite>."
28480 msgstr ""
28481
28482 #. type: =head2
28483 #: ../src/guestfs-actions.pod:7279
28484 msgid "guestfs_utimens"
28485 msgstr ""
28486
28487 #. type: verbatim
28488 #: ../src/guestfs-actions.pod:7281
28489 #, no-wrap
28490 msgid ""
28491 " int\n"
28492 " guestfs_utimens (guestfs_h *g,\n"
28493 "                  const char *path,\n"
28494 "                  int64_t atsecs,\n"
28495 "                  int64_t atnsecs,\n"
28496 "                  int64_t mtsecs,\n"
28497 "                  int64_t mtnsecs);\n"
28498 "\n"
28499 msgstr ""
28500
28501 #. type: =head2
28502 #: ../src/guestfs-actions.pod:7310 ../src/guestfs-structs.pod:175
28503 msgid "guestfs_version"
28504 msgstr ""
28505
28506 #. type: verbatim
28507 #: ../src/guestfs-actions.pod:7312
28508 #, no-wrap
28509 msgid ""
28510 " struct guestfs_version *\n"
28511 " guestfs_version (guestfs_h *g);\n"
28512 "\n"
28513 msgstr ""
28514
28515 #. type: textblock
28516 #: ../src/guestfs-actions.pod:7340
28517 msgid ""
28518 "I<Note:> Don't use this call to test for availability of features.  In "
28519 "enterprise distributions we backport features from later versions into "
28520 "earlier versions, making this an unreliable way to test for features.  Use "
28521 "C<guestfs_available> instead."
28522 msgstr ""
28523
28524 #. type: textblock
28525 #: ../src/guestfs-actions.pod:7346
28526 msgid ""
28527 "This function returns a C<struct guestfs_version *>, or NULL if there was an "
28528 "error.  I<The caller must call C<guestfs_free_version> after use>."
28529 msgstr ""
28530
28531 #. type: textblock
28532 #: ../src/guestfs-actions.pod:7350
28533 msgid "(Added in 1.0.58)"
28534 msgstr ""
28535
28536 #. type: =head2
28537 #: ../src/guestfs-actions.pod:7352
28538 msgid "guestfs_vfs_label"
28539 msgstr ""
28540
28541 #. type: verbatim
28542 #: ../src/guestfs-actions.pod:7354
28543 #, no-wrap
28544 msgid ""
28545 " char *\n"
28546 " guestfs_vfs_label (guestfs_h *g,\n"
28547 "                    const char *device);\n"
28548 "\n"
28549 msgstr ""
28550
28551 #. type: textblock
28552 #: ../src/guestfs-actions.pod:7363
28553 msgid "To find a filesystem from the label, use C<guestfs_findfs_label>."
28554 msgstr ""
28555
28556 #. type: textblock
28557 #: ../src/guestfs-actions.pod:7368 ../src/guestfs-actions.pod:7405
28558 msgid "(Added in 1.3.18)"
28559 msgstr ""
28560
28561 #. type: =head2
28562 #: ../src/guestfs-actions.pod:7370
28563 msgid "guestfs_vfs_type"
28564 msgstr ""
28565
28566 #. type: verbatim
28567 #: ../src/guestfs-actions.pod:7372
28568 #, no-wrap
28569 msgid ""
28570 " char *\n"
28571 " guestfs_vfs_type (guestfs_h *g,\n"
28572 "                   const char *device);\n"
28573 "\n"
28574 msgstr ""
28575
28576 #. type: =head2
28577 #: ../src/guestfs-actions.pod:7389
28578 msgid "guestfs_vfs_uuid"
28579 msgstr ""
28580
28581 #. type: verbatim
28582 #: ../src/guestfs-actions.pod:7391
28583 #, no-wrap
28584 msgid ""
28585 " char *\n"
28586 " guestfs_vfs_uuid (guestfs_h *g,\n"
28587 "                   const char *device);\n"
28588 "\n"
28589 msgstr ""
28590
28591 #. type: textblock
28592 #: ../src/guestfs-actions.pod:7400
28593 msgid "To find a filesystem from the UUID, use C<guestfs_findfs_uuid>."
28594 msgstr ""
28595
28596 #. type: =head2
28597 #: ../src/guestfs-actions.pod:7407
28598 msgid "guestfs_vg_activate"
28599 msgstr ""
28600
28601 #. type: verbatim
28602 #: ../src/guestfs-actions.pod:7409
28603 #, no-wrap
28604 msgid ""
28605 " int\n"
28606 " guestfs_vg_activate (guestfs_h *g,\n"
28607 "                      int activate,\n"
28608 "                      char *const *volgroups);\n"
28609 "\n"
28610 msgstr ""
28611
28612 #. type: =head2
28613 #: ../src/guestfs-actions.pod:7426
28614 msgid "guestfs_vg_activate_all"
28615 msgstr ""
28616
28617 #. type: verbatim
28618 #: ../src/guestfs-actions.pod:7428
28619 #, no-wrap
28620 msgid ""
28621 " int\n"
28622 " guestfs_vg_activate_all (guestfs_h *g,\n"
28623 "                          int activate);\n"
28624 "\n"
28625 msgstr ""
28626
28627 #. type: =head2
28628 #: ../src/guestfs-actions.pod:7441
28629 msgid "guestfs_vgcreate"
28630 msgstr ""
28631
28632 #. type: verbatim
28633 #: ../src/guestfs-actions.pod:7443
28634 #, no-wrap
28635 msgid ""
28636 " int\n"
28637 " guestfs_vgcreate (guestfs_h *g,\n"
28638 "                   const char *volgroup,\n"
28639 "                   char *const *physvols);\n"
28640 "\n"
28641 msgstr ""
28642
28643 #. type: =head2
28644 #: ../src/guestfs-actions.pod:7455
28645 msgid "guestfs_vglvuuids"
28646 msgstr ""
28647
28648 #. type: verbatim
28649 #: ../src/guestfs-actions.pod:7457
28650 #, no-wrap
28651 msgid ""
28652 " char **\n"
28653 " guestfs_vglvuuids (guestfs_h *g,\n"
28654 "                    const char *vgname);\n"
28655 "\n"
28656 msgstr ""
28657
28658 #. type: textblock
28659 #: ../src/guestfs-actions.pod:7464
28660 msgid ""
28661 "You can use this along with C<guestfs_lvs> and C<guestfs_lvuuid> calls to "
28662 "associate logical volumes and volume groups."
28663 msgstr ""
28664
28665 #. type: textblock
28666 #: ../src/guestfs-actions.pod:7467
28667 msgid "See also C<guestfs_vgpvuuids>."
28668 msgstr ""
28669
28670 #. type: =head2
28671 #: ../src/guestfs-actions.pod:7475
28672 msgid "guestfs_vgpvuuids"
28673 msgstr ""
28674
28675 #. type: verbatim
28676 #: ../src/guestfs-actions.pod:7477
28677 #, no-wrap
28678 msgid ""
28679 " char **\n"
28680 " guestfs_vgpvuuids (guestfs_h *g,\n"
28681 "                    const char *vgname);\n"
28682 "\n"
28683 msgstr ""
28684
28685 #. type: textblock
28686 #: ../src/guestfs-actions.pod:7484
28687 msgid ""
28688 "You can use this along with C<guestfs_pvs> and C<guestfs_pvuuid> calls to "
28689 "associate physical volumes and volume groups."
28690 msgstr ""
28691
28692 #. type: textblock
28693 #: ../src/guestfs-actions.pod:7487
28694 msgid "See also C<guestfs_vglvuuids>."
28695 msgstr ""
28696
28697 #. type: =head2
28698 #: ../src/guestfs-actions.pod:7495
28699 msgid "guestfs_vgremove"
28700 msgstr ""
28701
28702 #. type: verbatim
28703 #: ../src/guestfs-actions.pod:7497
28704 #, no-wrap
28705 msgid ""
28706 " int\n"
28707 " guestfs_vgremove (guestfs_h *g,\n"
28708 "                   const char *vgname);\n"
28709 "\n"
28710 msgstr ""
28711
28712 #. type: =head2
28713 #: ../src/guestfs-actions.pod:7510
28714 msgid "guestfs_vgrename"
28715 msgstr ""
28716
28717 #. type: verbatim
28718 #: ../src/guestfs-actions.pod:7512
28719 #, no-wrap
28720 msgid ""
28721 " int\n"
28722 " guestfs_vgrename (guestfs_h *g,\n"
28723 "                   const char *volgroup,\n"
28724 "                   const char *newvolgroup);\n"
28725 "\n"
28726 msgstr ""
28727
28728 #. type: =head2
28729 #: ../src/guestfs-actions.pod:7523
28730 msgid "guestfs_vgs"
28731 msgstr ""
28732
28733 #. type: verbatim
28734 #: ../src/guestfs-actions.pod:7525
28735 #, no-wrap
28736 msgid ""
28737 " char **\n"
28738 " guestfs_vgs (guestfs_h *g);\n"
28739 "\n"
28740 msgstr ""
28741
28742 #. type: textblock
28743 #: ../src/guestfs-actions.pod:7534
28744 msgid "See also C<guestfs_vgs_full>."
28745 msgstr ""
28746
28747 #. type: =head2
28748 #: ../src/guestfs-actions.pod:7542
28749 msgid "guestfs_vgs_full"
28750 msgstr ""
28751
28752 #. type: verbatim
28753 #: ../src/guestfs-actions.pod:7544
28754 #, no-wrap
28755 msgid ""
28756 " struct guestfs_lvm_vg_list *\n"
28757 " guestfs_vgs_full (guestfs_h *g);\n"
28758 "\n"
28759 msgstr ""
28760
28761 #. type: textblock
28762 #: ../src/guestfs-actions.pod:7550
28763 msgid ""
28764 "This function returns a C<struct guestfs_lvm_vg_list *>, or NULL if there "
28765 "was an error.  I<The caller must call C<guestfs_free_lvm_vg_list> after "
28766 "use>."
28767 msgstr ""
28768
28769 #. type: =head2
28770 #: ../src/guestfs-actions.pod:7556
28771 msgid "guestfs_vgscan"
28772 msgstr ""
28773
28774 #. type: verbatim
28775 #: ../src/guestfs-actions.pod:7558
28776 #, no-wrap
28777 msgid ""
28778 " int\n"
28779 " guestfs_vgscan (guestfs_h *g);\n"
28780 "\n"
28781 msgstr ""
28782
28783 #. type: =head2
28784 #: ../src/guestfs-actions.pod:7568
28785 msgid "guestfs_vguuid"
28786 msgstr ""
28787
28788 #. type: verbatim
28789 #: ../src/guestfs-actions.pod:7570
28790 #, no-wrap
28791 msgid ""
28792 " char *\n"
28793 " guestfs_vguuid (guestfs_h *g,\n"
28794 "                 const char *vgname);\n"
28795 "\n"
28796 msgstr ""
28797
28798 #. type: =head2
28799 #: ../src/guestfs-actions.pod:7581
28800 msgid "guestfs_wait_ready"
28801 msgstr ""
28802
28803 #. type: verbatim
28804 #: ../src/guestfs-actions.pod:7583
28805 #, no-wrap
28806 msgid ""
28807 " int\n"
28808 " guestfs_wait_ready (guestfs_h *g);\n"
28809 "\n"
28810 msgstr ""
28811
28812 #. type: textblock
28813 #: ../src/guestfs-actions.pod:7586
28814 msgid "This function is a no op."
28815 msgstr ""
28816
28817 #. type: textblock
28818 #: ../src/guestfs-actions.pod:7588
28819 msgid ""
28820 "In versions of the API E<lt> 1.0.71 you had to call this function just after "
28821 "calling C<guestfs_launch> to wait for the launch to complete.  However this "
28822 "is no longer necessary because C<guestfs_launch> now does the waiting."
28823 msgstr ""
28824
28825 #. type: textblock
28826 #: ../src/guestfs-actions.pod:7593
28827 msgid ""
28828 "If you see any calls to this function in code then you can just remove them, "
28829 "unless you want to retain compatibility with older versions of the API."
28830 msgstr ""
28831
28832 #. type: textblock
28833 #: ../src/guestfs-actions.pod:7599
28834 msgid "This function is deprecated.  In new code, use the C<launch> call instead."
28835 msgstr ""
28836
28837 #. type: =head2
28838 #: ../src/guestfs-actions.pod:7608
28839 msgid "guestfs_wc_c"
28840 msgstr ""
28841
28842 #. type: verbatim
28843 #: ../src/guestfs-actions.pod:7610
28844 #, no-wrap
28845 msgid ""
28846 " int\n"
28847 " guestfs_wc_c (guestfs_h *g,\n"
28848 "               const char *path);\n"
28849 "\n"
28850 msgstr ""
28851
28852 #. type: =head2
28853 #: ../src/guestfs-actions.pod:7621
28854 msgid "guestfs_wc_l"
28855 msgstr ""
28856
28857 #. type: verbatim
28858 #: ../src/guestfs-actions.pod:7623
28859 #, no-wrap
28860 msgid ""
28861 " int\n"
28862 " guestfs_wc_l (guestfs_h *g,\n"
28863 "               const char *path);\n"
28864 "\n"
28865 msgstr ""
28866
28867 #. type: =head2
28868 #: ../src/guestfs-actions.pod:7634
28869 msgid "guestfs_wc_w"
28870 msgstr ""
28871
28872 #. type: verbatim
28873 #: ../src/guestfs-actions.pod:7636
28874 #, no-wrap
28875 msgid ""
28876 " int\n"
28877 " guestfs_wc_w (guestfs_h *g,\n"
28878 "               const char *path);\n"
28879 "\n"
28880 msgstr ""
28881
28882 #. type: =head2
28883 #: ../src/guestfs-actions.pod:7647
28884 msgid "guestfs_write"
28885 msgstr ""
28886
28887 #. type: verbatim
28888 #: ../src/guestfs-actions.pod:7649
28889 #, no-wrap
28890 msgid ""
28891 " int\n"
28892 " guestfs_write (guestfs_h *g,\n"
28893 "                const char *path,\n"
28894 "                const char *content,\n"
28895 "                size_t content_size);\n"
28896 "\n"
28897 msgstr ""
28898
28899 #. type: textblock
28900 #: ../src/guestfs-actions.pod:7658
28901 msgid "See also C<guestfs_write_append>."
28902 msgstr ""
28903
28904 #. type: =head2
28905 #: ../src/guestfs-actions.pod:7667
28906 msgid "guestfs_write_append"
28907 msgstr ""
28908
28909 #. type: verbatim
28910 #: ../src/guestfs-actions.pod:7669
28911 #, no-wrap
28912 msgid ""
28913 " int\n"
28914 " guestfs_write_append (guestfs_h *g,\n"
28915 "                       const char *path,\n"
28916 "                       const char *content,\n"
28917 "                       size_t content_size);\n"
28918 "\n"
28919 msgstr ""
28920
28921 #. type: textblock
28922 #: ../src/guestfs-actions.pod:7678
28923 msgid "See also C<guestfs_write>."
28924 msgstr ""
28925
28926 #. type: =head2
28927 #: ../src/guestfs-actions.pod:7687
28928 msgid "guestfs_write_file"
28929 msgstr ""
28930
28931 #. type: verbatim
28932 #: ../src/guestfs-actions.pod:7689
28933 #, no-wrap
28934 msgid ""
28935 " int\n"
28936 " guestfs_write_file (guestfs_h *g,\n"
28937 "                     const char *path,\n"
28938 "                     const char *content,\n"
28939 "                     int size);\n"
28940 "\n"
28941 msgstr ""
28942
28943 #. type: =head2
28944 #: ../src/guestfs-actions.pod:7720
28945 msgid "guestfs_zegrep"
28946 msgstr ""
28947
28948 #. type: verbatim
28949 #: ../src/guestfs-actions.pod:7722
28950 #, no-wrap
28951 msgid ""
28952 " char **\n"
28953 " guestfs_zegrep (guestfs_h *g,\n"
28954 "                 const char *regex,\n"
28955 "                 const char *path);\n"
28956 "\n"
28957 msgstr ""
28958
28959 #. type: =head2
28960 #: ../src/guestfs-actions.pod:7739
28961 msgid "guestfs_zegrepi"
28962 msgstr ""
28963
28964 #. type: verbatim
28965 #: ../src/guestfs-actions.pod:7741
28966 #, no-wrap
28967 msgid ""
28968 " char **\n"
28969 " guestfs_zegrepi (guestfs_h *g,\n"
28970 "                  const char *regex,\n"
28971 "                  const char *path);\n"
28972 "\n"
28973 msgstr ""
28974
28975 #. type: =head2
28976 #: ../src/guestfs-actions.pod:7758
28977 msgid "guestfs_zero"
28978 msgstr ""
28979
28980 #. type: verbatim
28981 #: ../src/guestfs-actions.pod:7760
28982 #, no-wrap
28983 msgid ""
28984 " int\n"
28985 " guestfs_zero (guestfs_h *g,\n"
28986 "               const char *device);\n"
28987 "\n"
28988 msgstr ""
28989
28990 #. type: textblock
28991 #: ../src/guestfs-actions.pod:7770
28992 msgid ""
28993 "See also: C<guestfs_zero_device>, C<guestfs_scrub_device>, "
28994 "C<guestfs_is_zero_device>"
28995 msgstr ""
28996
28997 #. type: =head2
28998 #: ../src/guestfs-actions.pod:7782
28999 msgid "guestfs_zero_device"
29000 msgstr ""
29001
29002 #. type: verbatim
29003 #: ../src/guestfs-actions.pod:7784
29004 #, no-wrap
29005 msgid ""
29006 " int\n"
29007 " guestfs_zero_device (guestfs_h *g,\n"
29008 "                      const char *device);\n"
29009 "\n"
29010 msgstr ""
29011
29012 #. type: textblock
29013 #: ../src/guestfs-actions.pod:7788
29014 msgid ""
29015 "This command writes zeroes over the entire C<device>.  Compare with "
29016 "C<guestfs_zero> which just zeroes the first few blocks of a device."
29017 msgstr ""
29018
29019 #. type: textblock
29020 #: ../src/guestfs-actions.pod:7802
29021 msgid "(Added in 1.3.1)"
29022 msgstr ""
29023
29024 #. type: =head2
29025 #: ../src/guestfs-actions.pod:7804
29026 msgid "guestfs_zerofree"
29027 msgstr ""
29028
29029 #. type: verbatim
29030 #: ../src/guestfs-actions.pod:7806
29031 #, no-wrap
29032 msgid ""
29033 " int\n"
29034 " guestfs_zerofree (guestfs_h *g,\n"
29035 "                   const char *device);\n"
29036 "\n"
29037 msgstr ""
29038
29039 #. type: =head2
29040 #: ../src/guestfs-actions.pod:7825
29041 msgid "guestfs_zfgrep"
29042 msgstr ""
29043
29044 #. type: verbatim
29045 #: ../src/guestfs-actions.pod:7827
29046 #, no-wrap
29047 msgid ""
29048 " char **\n"
29049 " guestfs_zfgrep (guestfs_h *g,\n"
29050 "                 const char *pattern,\n"
29051 "                 const char *path);\n"
29052 "\n"
29053 msgstr ""
29054
29055 #. type: =head2
29056 #: ../src/guestfs-actions.pod:7844
29057 msgid "guestfs_zfgrepi"
29058 msgstr ""
29059
29060 #. type: verbatim
29061 #: ../src/guestfs-actions.pod:7846
29062 #, no-wrap
29063 msgid ""
29064 " char **\n"
29065 " guestfs_zfgrepi (guestfs_h *g,\n"
29066 "                  const char *pattern,\n"
29067 "                  const char *path);\n"
29068 "\n"
29069 msgstr ""
29070
29071 #. type: =head2
29072 #: ../src/guestfs-actions.pod:7863
29073 msgid "guestfs_zfile"
29074 msgstr ""
29075
29076 #. type: verbatim
29077 #: ../src/guestfs-actions.pod:7865
29078 #, no-wrap
29079 msgid ""
29080 " char *\n"
29081 " guestfs_zfile (guestfs_h *g,\n"
29082 "                const char *meth,\n"
29083 "                const char *path);\n"
29084 "\n"
29085 msgstr ""
29086
29087 #. type: textblock
29088 #: ../src/guestfs-actions.pod:7875
29089 msgid ""
29090 "Since 1.0.63, use C<guestfs_file> instead which can now process compressed "
29091 "files."
29092 msgstr ""
29093
29094 #. type: =head2
29095 #: ../src/guestfs-actions.pod:7890
29096 msgid "guestfs_zgrep"
29097 msgstr ""
29098
29099 #. type: verbatim
29100 #: ../src/guestfs-actions.pod:7892
29101 #, no-wrap
29102 msgid ""
29103 " char **\n"
29104 " guestfs_zgrep (guestfs_h *g,\n"
29105 "                const char *regex,\n"
29106 "                const char *path);\n"
29107 "\n"
29108 msgstr ""
29109
29110 #. type: =head2
29111 #: ../src/guestfs-actions.pod:7909
29112 msgid "guestfs_zgrepi"
29113 msgstr ""
29114
29115 #. type: verbatim
29116 #: ../src/guestfs-actions.pod:7911
29117 #, no-wrap
29118 msgid ""
29119 " char **\n"
29120 " guestfs_zgrepi (guestfs_h *g,\n"
29121 "                 const char *regex,\n"
29122 "                 const char *path);\n"
29123 "\n"
29124 msgstr ""
29125
29126 #. type: =item
29127 #: ../src/guestfs-availability.pod:3
29128 msgid "B<augeas>"
29129 msgstr ""
29130
29131 #. type: textblock
29132 #: ../src/guestfs-availability.pod:5
29133 msgid ""
29134 "The following functions: L</guestfs_aug_clear> L</guestfs_aug_close> "
29135 "L</guestfs_aug_defnode> L</guestfs_aug_defvar> L</guestfs_aug_get> "
29136 "L</guestfs_aug_init> L</guestfs_aug_insert> L</guestfs_aug_load> "
29137 "L</guestfs_aug_ls> L</guestfs_aug_match> L</guestfs_aug_mv> "
29138 "L</guestfs_aug_rm> L</guestfs_aug_save> L</guestfs_aug_set>"
29139 msgstr ""
29140
29141 #. type: =item
29142 #: ../src/guestfs-availability.pod:21
29143 msgid "B<btrfs>"
29144 msgstr ""
29145
29146 #. type: textblock
29147 #: ../src/guestfs-availability.pod:23
29148 msgid "The following functions: L</guestfs_btrfs_filesystem_resize>"
29149 msgstr ""
29150
29151 #. type: =item
29152 #: ../src/guestfs-availability.pod:26
29153 msgid "B<inotify>"
29154 msgstr ""
29155
29156 #. type: textblock
29157 #: ../src/guestfs-availability.pod:28
29158 msgid ""
29159 "The following functions: L</guestfs_inotify_add_watch> "
29160 "L</guestfs_inotify_close> L</guestfs_inotify_files> L</guestfs_inotify_init> "
29161 "L</guestfs_inotify_read> L</guestfs_inotify_rm_watch>"
29162 msgstr ""
29163
29164 #. type: =item
29165 #: ../src/guestfs-availability.pod:36
29166 msgid "B<linuxfsuuid>"
29167 msgstr ""
29168
29169 #. type: textblock
29170 #: ../src/guestfs-availability.pod:38
29171 msgid ""
29172 "The following functions: L</guestfs_mke2fs_JU> L</guestfs_mke2journal_U> "
29173 "L</guestfs_mkswap_U> L</guestfs_swapoff_uuid> L</guestfs_swapon_uuid>"
29174 msgstr ""
29175
29176 #. type: =item
29177 #: ../src/guestfs-availability.pod:45
29178 msgid "B<linuxmodules>"
29179 msgstr ""
29180
29181 #. type: textblock
29182 #: ../src/guestfs-availability.pod:47
29183 msgid "The following functions: L</guestfs_modprobe>"
29184 msgstr ""
29185
29186 #. type: =item
29187 #: ../src/guestfs-availability.pod:50
29188 msgid "B<linuxxattrs>"
29189 msgstr ""
29190
29191 #. type: textblock
29192 #: ../src/guestfs-availability.pod:52
29193 msgid ""
29194 "The following functions: L</guestfs_getxattr> L</guestfs_getxattrs> "
29195 "L</guestfs_lgetxattr> L</guestfs_lgetxattrs> L</guestfs_lremovexattr> "
29196 "L</guestfs_lsetxattr> L</guestfs_lxattrlist> L</guestfs_removexattr> "
29197 "L</guestfs_setxattr>"
29198 msgstr ""
29199
29200 #. type: =item
29201 #: ../src/guestfs-availability.pod:63
29202 msgid "B<luks>"
29203 msgstr ""
29204
29205 #. type: textblock
29206 #: ../src/guestfs-availability.pod:65
29207 msgid ""
29208 "The following functions: L</guestfs_luks_add_key> L</guestfs_luks_close> "
29209 "L</guestfs_luks_format> L</guestfs_luks_format_cipher> "
29210 "L</guestfs_luks_kill_slot> L</guestfs_luks_open> L</guestfs_luks_open_ro>"
29211 msgstr ""
29212
29213 #. type: =item
29214 #: ../src/guestfs-availability.pod:74
29215 msgid "B<lvm2>"
29216 msgstr ""
29217
29218 #. type: textblock
29219 #: ../src/guestfs-availability.pod:76
29220 msgid ""
29221 "The following functions: L</guestfs_is_lv> L</guestfs_lvcreate> "
29222 "L</guestfs_lvm_remove_all> L</guestfs_lvm_set_filter> L</guestfs_lvremove> "
29223 "L</guestfs_lvresize> L</guestfs_lvresize_free> L</guestfs_lvs> "
29224 "L</guestfs_lvs_full> L</guestfs_pvcreate> L</guestfs_pvremove> "
29225 "L</guestfs_pvresize> L</guestfs_pvresize_size> L</guestfs_pvs> "
29226 "L</guestfs_pvs_full> L</guestfs_vg_activate> L</guestfs_vg_activate_all> "
29227 "L</guestfs_vgcreate> L</guestfs_vgremove> L</guestfs_vgs> "
29228 "L</guestfs_vgs_full>"
29229 msgstr ""
29230
29231 #. type: =item
29232 #: ../src/guestfs-availability.pod:99
29233 msgid "B<mknod>"
29234 msgstr ""
29235
29236 #. type: textblock
29237 #: ../src/guestfs-availability.pod:101
29238 msgid ""
29239 "The following functions: L</guestfs_mkfifo> L</guestfs_mknod> "
29240 "L</guestfs_mknod_b> L</guestfs_mknod_c>"
29241 msgstr ""
29242
29243 #. type: =item
29244 #: ../src/guestfs-availability.pod:107
29245 msgid "B<ntfs3g>"
29246 msgstr ""
29247
29248 #. type: textblock
29249 #: ../src/guestfs-availability.pod:109
29250 msgid "The following functions: L</guestfs_ntfs_3g_probe>"
29251 msgstr ""
29252
29253 #. type: =item
29254 #: ../src/guestfs-availability.pod:112
29255 msgid "B<ntfsprogs>"
29256 msgstr ""
29257
29258 #. type: textblock
29259 #: ../src/guestfs-availability.pod:114
29260 msgid ""
29261 "The following functions: L</guestfs_ntfsresize> L</guestfs_ntfsresize_opts> "
29262 "L</guestfs_ntfsresize_size>"
29263 msgstr ""
29264
29265 #. type: =item
29266 #: ../src/guestfs-availability.pod:119
29267 msgid "B<realpath>"
29268 msgstr ""
29269
29270 #. type: textblock
29271 #: ../src/guestfs-availability.pod:121
29272 msgid "The following functions: L</guestfs_realpath>"
29273 msgstr ""
29274
29275 #. type: =item
29276 #: ../src/guestfs-availability.pod:124
29277 msgid "B<scrub>"
29278 msgstr ""
29279
29280 #. type: textblock
29281 #: ../src/guestfs-availability.pod:126
29282 msgid ""
29283 "The following functions: L</guestfs_scrub_device> L</guestfs_scrub_file> "
29284 "L</guestfs_scrub_freespace>"
29285 msgstr ""
29286
29287 #. type: =item
29288 #: ../src/guestfs-availability.pod:131
29289 msgid "B<selinux>"
29290 msgstr ""
29291
29292 #. type: textblock
29293 #: ../src/guestfs-availability.pod:133
29294 msgid "The following functions: L</guestfs_getcon> L</guestfs_setcon>"
29295 msgstr ""
29296
29297 #. type: =item
29298 #: ../src/guestfs-availability.pod:137
29299 msgid "B<xz>"
29300 msgstr ""
29301
29302 #. type: textblock
29303 #: ../src/guestfs-availability.pod:139
29304 msgid "The following functions: L</guestfs_txz_in> L</guestfs_txz_out>"
29305 msgstr ""
29306
29307 #. type: =item
29308 #: ../src/guestfs-availability.pod:143
29309 msgid "B<zerofree>"
29310 msgstr ""
29311
29312 #. type: textblock
29313 #: ../src/guestfs-availability.pod:145
29314 msgid "The following functions: L</guestfs_zerofree>"
29315 msgstr ""
29316
29317 #. type: =head2
29318 #: ../src/guestfs-structs.pod:1
29319 msgid "guestfs_int_bool"
29320 msgstr ""
29321
29322 #. type: verbatim
29323 #: ../src/guestfs-structs.pod:3
29324 #, no-wrap
29325 msgid ""
29326 " struct guestfs_int_bool {\n"
29327 "   int32_t i;\n"
29328 "   int32_t b;\n"
29329 " };\n"
29330 " \n"
29331 msgstr ""
29332
29333 #. type: verbatim
29334 #: ../src/guestfs-structs.pod:8
29335 #, no-wrap
29336 msgid ""
29337 " struct guestfs_int_bool_list {\n"
29338 "   uint32_t len; /* Number of elements in list. */\n"
29339 "   struct guestfs_int_bool *val; /* Elements. */\n"
29340 " };\n"
29341 " \n"
29342 msgstr ""
29343
29344 #. type: verbatim
29345 #: ../src/guestfs-structs.pod:13
29346 #, no-wrap
29347 msgid ""
29348 " void guestfs_free_int_bool (struct guestfs_free_int_bool *);\n"
29349 " void guestfs_free_int_bool_list (struct guestfs_free_int_bool_list *);\n"
29350 "\n"
29351 msgstr ""
29352
29353 #. type: =head2
29354 #: ../src/guestfs-structs.pod:16
29355 msgid "guestfs_lvm_pv"
29356 msgstr ""
29357
29358 #. type: verbatim
29359 #: ../src/guestfs-structs.pod:18
29360 #, no-wrap
29361 msgid ""
29362 " struct guestfs_lvm_pv {\n"
29363 "   char *pv_name;\n"
29364 "   /* The next field is NOT nul-terminated, be careful when printing it: "
29365 "*/\n"
29366 "   char pv_uuid[32];\n"
29367 "   char *pv_fmt;\n"
29368 "   uint64_t pv_size;\n"
29369 "   uint64_t dev_size;\n"
29370 "   uint64_t pv_free;\n"
29371 "   uint64_t pv_used;\n"
29372 "   char *pv_attr;\n"
29373 "   int64_t pv_pe_count;\n"
29374 "   int64_t pv_pe_alloc_count;\n"
29375 "   char *pv_tags;\n"
29376 "   uint64_t pe_start;\n"
29377 "   int64_t pv_mda_count;\n"
29378 "   uint64_t pv_mda_free;\n"
29379 " };\n"
29380 " \n"
29381 msgstr ""
29382
29383 #. type: verbatim
29384 #: ../src/guestfs-structs.pod:36
29385 #, no-wrap
29386 msgid ""
29387 " struct guestfs_lvm_pv_list {\n"
29388 "   uint32_t len; /* Number of elements in list. */\n"
29389 "   struct guestfs_lvm_pv *val; /* Elements. */\n"
29390 " };\n"
29391 " \n"
29392 msgstr ""
29393
29394 #. type: verbatim
29395 #: ../src/guestfs-structs.pod:41
29396 #, no-wrap
29397 msgid ""
29398 " void guestfs_free_lvm_pv (struct guestfs_free_lvm_pv *);\n"
29399 " void guestfs_free_lvm_pv_list (struct guestfs_free_lvm_pv_list *);\n"
29400 "\n"
29401 msgstr ""
29402
29403 #. type: =head2
29404 #: ../src/guestfs-structs.pod:44
29405 msgid "guestfs_lvm_vg"
29406 msgstr ""
29407
29408 #. type: verbatim
29409 #: ../src/guestfs-structs.pod:46
29410 #, no-wrap
29411 msgid ""
29412 " struct guestfs_lvm_vg {\n"
29413 "   char *vg_name;\n"
29414 "   /* The next field is NOT nul-terminated, be careful when printing it: "
29415 "*/\n"
29416 "   char vg_uuid[32];\n"
29417 "   char *vg_fmt;\n"
29418 "   char *vg_attr;\n"
29419 "   uint64_t vg_size;\n"
29420 "   uint64_t vg_free;\n"
29421 "   char *vg_sysid;\n"
29422 "   uint64_t vg_extent_size;\n"
29423 "   int64_t vg_extent_count;\n"
29424 "   int64_t vg_free_count;\n"
29425 "   int64_t max_lv;\n"
29426 "   int64_t max_pv;\n"
29427 "   int64_t pv_count;\n"
29428 "   int64_t lv_count;\n"
29429 "   int64_t snap_count;\n"
29430 "   int64_t vg_seqno;\n"
29431 "   char *vg_tags;\n"
29432 "   int64_t vg_mda_count;\n"
29433 "   uint64_t vg_mda_free;\n"
29434 " };\n"
29435 " \n"
29436 msgstr ""
29437
29438 #. type: verbatim
29439 #: ../src/guestfs-structs.pod:69
29440 #, no-wrap
29441 msgid ""
29442 " struct guestfs_lvm_vg_list {\n"
29443 "   uint32_t len; /* Number of elements in list. */\n"
29444 "   struct guestfs_lvm_vg *val; /* Elements. */\n"
29445 " };\n"
29446 " \n"
29447 msgstr ""
29448
29449 #. type: verbatim
29450 #: ../src/guestfs-structs.pod:74
29451 #, no-wrap
29452 msgid ""
29453 " void guestfs_free_lvm_vg (struct guestfs_free_lvm_vg *);\n"
29454 " void guestfs_free_lvm_vg_list (struct guestfs_free_lvm_vg_list *);\n"
29455 "\n"
29456 msgstr ""
29457
29458 #. type: =head2
29459 #: ../src/guestfs-structs.pod:77
29460 msgid "guestfs_lvm_lv"
29461 msgstr ""
29462
29463 #. type: verbatim
29464 #: ../src/guestfs-structs.pod:79
29465 #, no-wrap
29466 msgid ""
29467 " struct guestfs_lvm_lv {\n"
29468 "   char *lv_name;\n"
29469 "   /* The next field is NOT nul-terminated, be careful when printing it: "
29470 "*/\n"
29471 "   char lv_uuid[32];\n"
29472 "   char *lv_attr;\n"
29473 "   int64_t lv_major;\n"
29474 "   int64_t lv_minor;\n"
29475 "   int64_t lv_kernel_major;\n"
29476 "   int64_t lv_kernel_minor;\n"
29477 "   uint64_t lv_size;\n"
29478 "   int64_t seg_count;\n"
29479 "   char *origin;\n"
29480 "   /* The next field is [0..100] or -1 meaning 'not present': */\n"
29481 "   float snap_percent;\n"
29482 "   /* The next field is [0..100] or -1 meaning 'not present': */\n"
29483 "   float copy_percent;\n"
29484 "   char *move_pv;\n"
29485 "   char *lv_tags;\n"
29486 "   char *mirror_log;\n"
29487 "   char *modules;\n"
29488 " };\n"
29489 " \n"
29490 msgstr ""
29491
29492 #. type: verbatim
29493 #: ../src/guestfs-structs.pod:101
29494 #, no-wrap
29495 msgid ""
29496 " struct guestfs_lvm_lv_list {\n"
29497 "   uint32_t len; /* Number of elements in list. */\n"
29498 "   struct guestfs_lvm_lv *val; /* Elements. */\n"
29499 " };\n"
29500 " \n"
29501 msgstr ""
29502
29503 #. type: verbatim
29504 #: ../src/guestfs-structs.pod:106
29505 #, no-wrap
29506 msgid ""
29507 " void guestfs_free_lvm_lv (struct guestfs_free_lvm_lv *);\n"
29508 " void guestfs_free_lvm_lv_list (struct guestfs_free_lvm_lv_list *);\n"
29509 "\n"
29510 msgstr ""
29511
29512 #. type: verbatim
29513 #: ../src/guestfs-structs.pod:111
29514 #, no-wrap
29515 msgid ""
29516 " struct guestfs_stat {\n"
29517 "   int64_t dev;\n"
29518 "   int64_t ino;\n"
29519 "   int64_t mode;\n"
29520 "   int64_t nlink;\n"
29521 "   int64_t uid;\n"
29522 "   int64_t gid;\n"
29523 "   int64_t rdev;\n"
29524 "   int64_t size;\n"
29525 "   int64_t blksize;\n"
29526 "   int64_t blocks;\n"
29527 "   int64_t atime;\n"
29528 "   int64_t mtime;\n"
29529 "   int64_t ctime;\n"
29530 " };\n"
29531 " \n"
29532 msgstr ""
29533
29534 #. type: verbatim
29535 #: ../src/guestfs-structs.pod:127
29536 #, no-wrap
29537 msgid ""
29538 " struct guestfs_stat_list {\n"
29539 "   uint32_t len; /* Number of elements in list. */\n"
29540 "   struct guestfs_stat *val; /* Elements. */\n"
29541 " };\n"
29542 " \n"
29543 msgstr ""
29544
29545 #. type: verbatim
29546 #: ../src/guestfs-structs.pod:132
29547 #, no-wrap
29548 msgid ""
29549 " void guestfs_free_stat (struct guestfs_free_stat *);\n"
29550 " void guestfs_free_stat_list (struct guestfs_free_stat_list *);\n"
29551 "\n"
29552 msgstr ""
29553
29554 #. type: verbatim
29555 #: ../src/guestfs-structs.pod:137
29556 #, no-wrap
29557 msgid ""
29558 " struct guestfs_statvfs {\n"
29559 "   int64_t bsize;\n"
29560 "   int64_t frsize;\n"
29561 "   int64_t blocks;\n"
29562 "   int64_t bfree;\n"
29563 "   int64_t bavail;\n"
29564 "   int64_t files;\n"
29565 "   int64_t ffree;\n"
29566 "   int64_t favail;\n"
29567 "   int64_t fsid;\n"
29568 "   int64_t flag;\n"
29569 "   int64_t namemax;\n"
29570 " };\n"
29571 " \n"
29572 msgstr ""
29573
29574 #. type: verbatim
29575 #: ../src/guestfs-structs.pod:151
29576 #, no-wrap
29577 msgid ""
29578 " struct guestfs_statvfs_list {\n"
29579 "   uint32_t len; /* Number of elements in list. */\n"
29580 "   struct guestfs_statvfs *val; /* Elements. */\n"
29581 " };\n"
29582 " \n"
29583 msgstr ""
29584
29585 #. type: verbatim
29586 #: ../src/guestfs-structs.pod:156
29587 #, no-wrap
29588 msgid ""
29589 " void guestfs_free_statvfs (struct guestfs_free_statvfs *);\n"
29590 " void guestfs_free_statvfs_list (struct guestfs_free_statvfs_list *);\n"
29591 "\n"
29592 msgstr ""
29593
29594 #. type: =head2
29595 #: ../src/guestfs-structs.pod:159
29596 msgid "guestfs_dirent"
29597 msgstr ""
29598
29599 #. type: verbatim
29600 #: ../src/guestfs-structs.pod:161
29601 #, no-wrap
29602 msgid ""
29603 " struct guestfs_dirent {\n"
29604 "   int64_t ino;\n"
29605 "   char ftyp;\n"
29606 "   char *name;\n"
29607 " };\n"
29608 " \n"
29609 msgstr ""
29610
29611 #. type: verbatim
29612 #: ../src/guestfs-structs.pod:167
29613 #, no-wrap
29614 msgid ""
29615 " struct guestfs_dirent_list {\n"
29616 "   uint32_t len; /* Number of elements in list. */\n"
29617 "   struct guestfs_dirent *val; /* Elements. */\n"
29618 " };\n"
29619 " \n"
29620 msgstr ""
29621
29622 #. type: verbatim
29623 #: ../src/guestfs-structs.pod:172
29624 #, no-wrap
29625 msgid ""
29626 " void guestfs_free_dirent (struct guestfs_free_dirent *);\n"
29627 " void guestfs_free_dirent_list (struct guestfs_free_dirent_list *);\n"
29628 "\n"
29629 msgstr ""
29630
29631 #. type: verbatim
29632 #: ../src/guestfs-structs.pod:177
29633 #, no-wrap
29634 msgid ""
29635 " struct guestfs_version {\n"
29636 "   int64_t major;\n"
29637 "   int64_t minor;\n"
29638 "   int64_t release;\n"
29639 "   char *extra;\n"
29640 " };\n"
29641 " \n"
29642 msgstr ""
29643
29644 #. type: verbatim
29645 #: ../src/guestfs-structs.pod:184
29646 #, no-wrap
29647 msgid ""
29648 " struct guestfs_version_list {\n"
29649 "   uint32_t len; /* Number of elements in list. */\n"
29650 "   struct guestfs_version *val; /* Elements. */\n"
29651 " };\n"
29652 " \n"
29653 msgstr ""
29654
29655 #. type: verbatim
29656 #: ../src/guestfs-structs.pod:189
29657 #, no-wrap
29658 msgid ""
29659 " void guestfs_free_version (struct guestfs_free_version *);\n"
29660 " void guestfs_free_version_list (struct guestfs_free_version_list *);\n"
29661 "\n"
29662 msgstr ""
29663
29664 #. type: =head2
29665 #: ../src/guestfs-structs.pod:192
29666 msgid "guestfs_xattr"
29667 msgstr ""
29668
29669 #. type: verbatim
29670 #: ../src/guestfs-structs.pod:194
29671 #, no-wrap
29672 msgid ""
29673 " struct guestfs_xattr {\n"
29674 "   char *attrname;\n"
29675 "   /* The next two fields describe a byte array. */\n"
29676 "   uint32_t attrval_len;\n"
29677 "   char *attrval;\n"
29678 " };\n"
29679 " \n"
29680 msgstr ""
29681
29682 #. type: verbatim
29683 #: ../src/guestfs-structs.pod:201
29684 #, no-wrap
29685 msgid ""
29686 " struct guestfs_xattr_list {\n"
29687 "   uint32_t len; /* Number of elements in list. */\n"
29688 "   struct guestfs_xattr *val; /* Elements. */\n"
29689 " };\n"
29690 " \n"
29691 msgstr ""
29692
29693 #. type: verbatim
29694 #: ../src/guestfs-structs.pod:206
29695 #, no-wrap
29696 msgid ""
29697 " void guestfs_free_xattr (struct guestfs_free_xattr *);\n"
29698 " void guestfs_free_xattr_list (struct guestfs_free_xattr_list *);\n"
29699 "\n"
29700 msgstr ""
29701
29702 #. type: =head2
29703 #: ../src/guestfs-structs.pod:209
29704 msgid "guestfs_inotify_event"
29705 msgstr ""
29706
29707 #. type: verbatim
29708 #: ../src/guestfs-structs.pod:211
29709 #, no-wrap
29710 msgid ""
29711 " struct guestfs_inotify_event {\n"
29712 "   int64_t in_wd;\n"
29713 "   uint32_t in_mask;\n"
29714 "   uint32_t in_cookie;\n"
29715 "   char *in_name;\n"
29716 " };\n"
29717 " \n"
29718 msgstr ""
29719
29720 #. type: verbatim
29721 #: ../src/guestfs-structs.pod:218
29722 #, no-wrap
29723 msgid ""
29724 " struct guestfs_inotify_event_list {\n"
29725 "   uint32_t len; /* Number of elements in list. */\n"
29726 "   struct guestfs_inotify_event *val; /* Elements. */\n"
29727 " };\n"
29728 " \n"
29729 msgstr ""
29730
29731 #. type: verbatim
29732 #: ../src/guestfs-structs.pod:223
29733 #, no-wrap
29734 msgid ""
29735 " void guestfs_free_inotify_event (struct guestfs_free_inotify_event *);\n"
29736 " void guestfs_free_inotify_event_list (struct "
29737 "guestfs_free_inotify_event_list *);\n"
29738 "\n"
29739 msgstr ""
29740
29741 #. type: =head2
29742 #: ../src/guestfs-structs.pod:226
29743 msgid "guestfs_partition"
29744 msgstr ""
29745
29746 #. type: verbatim
29747 #: ../src/guestfs-structs.pod:228
29748 #, no-wrap
29749 msgid ""
29750 " struct guestfs_partition {\n"
29751 "   int32_t part_num;\n"
29752 "   uint64_t part_start;\n"
29753 "   uint64_t part_end;\n"
29754 "   uint64_t part_size;\n"
29755 " };\n"
29756 " \n"
29757 msgstr ""
29758
29759 #. type: verbatim
29760 #: ../src/guestfs-structs.pod:235
29761 #, no-wrap
29762 msgid ""
29763 " struct guestfs_partition_list {\n"
29764 "   uint32_t len; /* Number of elements in list. */\n"
29765 "   struct guestfs_partition *val; /* Elements. */\n"
29766 " };\n"
29767 " \n"
29768 msgstr ""
29769
29770 #. type: verbatim
29771 #: ../src/guestfs-structs.pod:240
29772 #, no-wrap
29773 msgid ""
29774 " void guestfs_free_partition (struct guestfs_free_partition *);\n"
29775 " void guestfs_free_partition_list (struct guestfs_free_partition_list *);\n"
29776 "\n"
29777 msgstr ""
29778
29779 #. type: =head2
29780 #: ../src/guestfs-structs.pod:243
29781 msgid "guestfs_application"
29782 msgstr ""
29783
29784 #. type: verbatim
29785 #: ../src/guestfs-structs.pod:245
29786 #, no-wrap
29787 msgid ""
29788 " struct guestfs_application {\n"
29789 "   char *app_name;\n"
29790 "   char *app_display_name;\n"
29791 "   int32_t app_epoch;\n"
29792 "   char *app_version;\n"
29793 "   char *app_release;\n"
29794 "   char *app_install_path;\n"
29795 "   char *app_trans_path;\n"
29796 "   char *app_publisher;\n"
29797 "   char *app_url;\n"
29798 "   char *app_source_package;\n"
29799 "   char *app_summary;\n"
29800 "   char *app_description;\n"
29801 " };\n"
29802 " \n"
29803 msgstr ""
29804
29805 #. type: verbatim
29806 #: ../src/guestfs-structs.pod:260
29807 #, no-wrap
29808 msgid ""
29809 " struct guestfs_application_list {\n"
29810 "   uint32_t len; /* Number of elements in list. */\n"
29811 "   struct guestfs_application *val; /* Elements. */\n"
29812 " };\n"
29813 " \n"
29814 msgstr ""
29815
29816 #. type: verbatim
29817 #: ../src/guestfs-structs.pod:265
29818 #, no-wrap
29819 msgid ""
29820 " void guestfs_free_application (struct guestfs_free_application *);\n"
29821 " void guestfs_free_application_list (struct guestfs_free_application_list "
29822 "*);\n"
29823 "\n"
29824 msgstr ""
29825
29826 #. type: textblock
29827 #: ../src/guestfs.pod:5
29828 msgid "guestfs - Library for accessing and modifying virtual machine images"
29829 msgstr ""
29830
29831 #. type: verbatim
29832 #: ../src/guestfs.pod:11
29833 #, no-wrap
29834 msgid ""
29835 " guestfs_h *g = guestfs_create ();\n"
29836 " guestfs_add_drive (g, \"guest.img\");\n"
29837 " guestfs_launch (g);\n"
29838 " guestfs_mount (g, \"/dev/sda1\", \"/\");\n"
29839 " guestfs_touch (g, \"/hello\");\n"
29840 " guestfs_umount (g, \"/\");\n"
29841 " guestfs_close (g);\n"
29842 "\n"
29843 msgstr ""
29844
29845 #. type: textblock
29846 #: ../src/guestfs.pod:25
29847 msgid ""
29848 "Libguestfs is a library for accessing and modifying guest disk images.  "
29849 "Amongst the things this is good for: making batch configuration changes to "
29850 "guests, getting disk used/free statistics (see also: virt-df), migrating "
29851 "between virtualization systems (see also: virt-p2v), performing partial "
29852 "backups, performing partial guest clones, cloning guests and changing "
29853 "registry/UUID/hostname info, and much else besides."
29854 msgstr ""
29855
29856 #. type: textblock
29857 #: ../src/guestfs.pod:33
29858 msgid ""
29859 "Libguestfs uses Linux kernel and qemu code, and can access any type of guest "
29860 "filesystem that Linux and qemu can, including but not limited to: ext2/3/4, "
29861 "btrfs, FAT and NTFS, LVM, many different disk partition schemes, qcow, "
29862 "qcow2, vmdk."
29863 msgstr ""
29864
29865 #. type: textblock
29866 #: ../src/guestfs.pod:38
29867 msgid ""
29868 "Libguestfs provides ways to enumerate guest storage (eg. partitions, LVs, "
29869 "what filesystem is in each LV, etc.).  It can also run commands in the "
29870 "context of the guest.  Also you can access filesystems over FUSE."
29871 msgstr ""
29872
29873 #. type: textblock
29874 #: ../src/guestfs.pod:43
29875 msgid ""
29876 "Libguestfs is a library that can be linked with C and C++ management "
29877 "programs (or management programs written in OCaml, Perl, Python, Ruby, Java, "
29878 "PHP, Haskell or C#).  You can also use it from shell scripts or the command "
29879 "line."
29880 msgstr ""
29881
29882 #. type: textblock
29883 #: ../src/guestfs.pod:48
29884 msgid ""
29885 "You don't need to be root to use libguestfs, although obviously you do need "
29886 "enough permissions to access the disk images."
29887 msgstr ""
29888
29889 #. type: textblock
29890 #: ../src/guestfs.pod:51
29891 msgid ""
29892 "Libguestfs is a large API because it can do many things.  For a gentle "
29893 "introduction, please read the L</API OVERVIEW> section next."
29894 msgstr ""
29895
29896 #. type: textblock
29897 #: ../src/guestfs.pod:54
29898 msgid ""
29899 "There are also some example programs in the L<guestfs-examples(3)> manual "
29900 "page."
29901 msgstr ""
29902
29903 #. type: =head1
29904 #: ../src/guestfs.pod:57
29905 msgid "API OVERVIEW"
29906 msgstr ""
29907
29908 #. type: textblock
29909 #: ../src/guestfs.pod:59
29910 msgid ""
29911 "This section provides a gentler overview of the libguestfs API.  We also try "
29912 "to group API calls together, where that may not be obvious from reading "
29913 "about the individual calls in the main section of this manual."
29914 msgstr ""
29915
29916 #. type: =head2
29917 #: ../src/guestfs.pod:64
29918 msgid "HANDLES"
29919 msgstr ""
29920
29921 #. type: textblock
29922 #: ../src/guestfs.pod:66
29923 msgid ""
29924 "Before you can use libguestfs calls, you have to create a handle.  Then you "
29925 "must add at least one disk image to the handle, followed by launching the "
29926 "handle, then performing whatever operations you want, and finally closing "
29927 "the handle.  By convention we use the single letter C<g> for the name of the "
29928 "handle variable, although of course you can use any name you want."
29929 msgstr ""
29930
29931 #. type: textblock
29932 #: ../src/guestfs.pod:73
29933 msgid "The general structure of all libguestfs-using programs looks like this:"
29934 msgstr ""
29935
29936 #. type: verbatim
29937 #: ../src/guestfs.pod:76
29938 #, no-wrap
29939 msgid ""
29940 " guestfs_h *g = guestfs_create ();\n"
29941 " \n"
29942 msgstr ""
29943
29944 #. type: verbatim
29945 #: ../src/guestfs.pod:78
29946 #, no-wrap
29947 msgid ""
29948 " /* Call guestfs_add_drive additional times if there are\n"
29949 "  * multiple disk images.\n"
29950 "  */\n"
29951 " guestfs_add_drive (g, \"guest.img\");\n"
29952 " \n"
29953 msgstr ""
29954
29955 #. type: verbatim
29956 #: ../src/guestfs.pod:83
29957 #, no-wrap
29958 msgid ""
29959 " /* Most manipulation calls won't work until you've launched\n"
29960 "  * the handle 'g'.  You have to do this _after_ adding drives\n"
29961 "  * and _before_ other commands.\n"
29962 "  */\n"
29963 " guestfs_launch (g);\n"
29964 " \n"
29965 msgstr ""
29966
29967 #. type: verbatim
29968 #: ../src/guestfs.pod:89
29969 #, no-wrap
29970 msgid ""
29971 " /* Now you can examine what partitions, LVs etc are available.\n"
29972 "  */\n"
29973 " char **partitions = guestfs_list_partitions (g);\n"
29974 " char **logvols = guestfs_lvs (g);\n"
29975 " \n"
29976 msgstr ""
29977
29978 #. type: verbatim
29979 #: ../src/guestfs.pod:94
29980 #, no-wrap
29981 msgid ""
29982 " /* To access a filesystem in the image, you must mount it.\n"
29983 "  */\n"
29984 " guestfs_mount (g, \"/dev/sda1\", \"/\");\n"
29985 " \n"
29986 msgstr ""
29987
29988 #. type: verbatim
29989 #: ../src/guestfs.pod:98
29990 #, no-wrap
29991 msgid ""
29992 " /* Now you can perform filesystem actions on the guest\n"
29993 "  * disk image.\n"
29994 "  */\n"
29995 " guestfs_touch (g, \"/hello\");\n"
29996 " \n"
29997 msgstr ""
29998
29999 #. type: verbatim
30000 #: ../src/guestfs.pod:103
30001 #, no-wrap
30002 msgid ""
30003 " /* This is only needed for libguestfs < 1.5.24.  Since then\n"
30004 "  * it is done automatically when you close the handle.  See\n"
30005 "  * discussion of autosync in this page.\n"
30006 "  */\n"
30007 " guestfs_sync (g);\n"
30008 " \n"
30009 msgstr ""
30010
30011 #. type: verbatim
30012 #: ../src/guestfs.pod:109
30013 #, no-wrap
30014 msgid ""
30015 " /* Close the handle 'g'. */\n"
30016 " guestfs_close (g);\n"
30017 "\n"
30018 msgstr ""
30019
30020 #. type: textblock
30021 #: ../src/guestfs.pod:112
30022 msgid ""
30023 "The code above doesn't include any error checking.  In real code you should "
30024 "check return values carefully for errors.  In general all functions that "
30025 "return integers return C<-1> on error, and all functions that return "
30026 "pointers return C<NULL> on error.  See section L</ERROR HANDLING> below for "
30027 "how to handle errors, and consult the documentation for each function call "
30028 "below to see precisely how they return error indications.  See "
30029 "L<guestfs-examples(3)> for fully worked examples."
30030 msgstr ""
30031
30032 #. type: =head2
30033 #: ../src/guestfs.pod:121
30034 msgid "DISK IMAGES"
30035 msgstr ""
30036
30037 #. type: textblock
30038 #: ../src/guestfs.pod:123
30039 msgid ""
30040 "The image filename (C<\"guest.img\"> in the example above) could be a disk "
30041 "image from a virtual machine, a L<dd(1)> copy of a physical hard disk, an "
30042 "actual block device, or simply an empty file of zeroes that you have created "
30043 "through L<posix_fallocate(3)>.  Libguestfs lets you do useful things to all "
30044 "of these."
30045 msgstr ""
30046
30047 #. type: textblock
30048 #: ../src/guestfs.pod:129
30049 msgid ""
30050 "The call you should use in modern code for adding drives is "
30051 "L</guestfs_add_drive_opts>.  To add a disk image, allowing writes, and "
30052 "specifying that the format is raw, do:"
30053 msgstr ""
30054
30055 #. type: verbatim
30056 #: ../src/guestfs.pod:133
30057 #, no-wrap
30058 msgid ""
30059 " guestfs_add_drive_opts (g, filename,\n"
30060 "                         GUESTFS_ADD_DRIVE_OPTS_FORMAT, \"raw\",\n"
30061 "                         -1);\n"
30062 "\n"
30063 msgstr ""
30064
30065 #. type: textblock
30066 #: ../src/guestfs.pod:137
30067 msgid "You can add a disk read-only using:"
30068 msgstr ""
30069
30070 #. type: verbatim
30071 #: ../src/guestfs.pod:139
30072 #, no-wrap
30073 msgid ""
30074 " guestfs_add_drive_opts (g, filename,\n"
30075 "                         GUESTFS_ADD_DRIVE_OPTS_FORMAT, \"raw\",\n"
30076 "                         GUESTFS_ADD_DRIVE_OPTS_READONLY, 1,\n"
30077 "                         -1);\n"
30078 "\n"
30079 msgstr ""
30080
30081 #. type: textblock
30082 #: ../src/guestfs.pod:144
30083 msgid ""
30084 "or by calling the older function L</guestfs_add_drive_ro>.  In either case "
30085 "libguestfs won't modify the file."
30086 msgstr ""
30087
30088 #. type: textblock
30089 #: ../src/guestfs.pod:147
30090 msgid ""
30091 "Be extremely cautious if the disk image is in use, eg. if it is being used "
30092 "by a virtual machine.  Adding it read-write will almost certainly cause disk "
30093 "corruption, but adding it read-only is safe."
30094 msgstr ""
30095
30096 #. type: textblock
30097 #: ../src/guestfs.pod:151
30098 msgid ""
30099 "You must add at least one disk image, and you may add multiple disk images.  "
30100 "In the API, the disk images are usually referred to as C</dev/sda> (for the "
30101 "first one you added), C</dev/sdb> (for the second one you added), etc."
30102 msgstr ""
30103
30104 #. type: textblock
30105 #: ../src/guestfs.pod:156
30106 msgid ""
30107 "Once L</guestfs_launch> has been called you cannot add any more images.  You "
30108 "can call L</guestfs_list_devices> to get a list of the device names, in the "
30109 "order that you added them.  See also L</BLOCK DEVICE NAMING> below."
30110 msgstr ""
30111
30112 #. type: =head2
30113 #: ../src/guestfs.pod:161
30114 msgid "MOUNTING"
30115 msgstr ""
30116
30117 #. type: textblock
30118 #: ../src/guestfs.pod:163
30119 msgid ""
30120 "Before you can read or write files, create directories and so on in a disk "
30121 "image that contains filesystems, you have to mount those filesystems using "
30122 "L</guestfs_mount_options> or L</guestfs_mount_ro>.  If you already know that "
30123 "a disk image contains (for example) one partition with a filesystem on that "
30124 "partition, then you can mount it directly:"
30125 msgstr ""
30126
30127 #. type: verbatim
30128 #: ../src/guestfs.pod:170
30129 #, no-wrap
30130 msgid ""
30131 " guestfs_mount_options (g, \"\", \"/dev/sda1\", \"/\");\n"
30132 "\n"
30133 msgstr ""
30134
30135 #. type: textblock
30136 #: ../src/guestfs.pod:172
30137 msgid ""
30138 "where C</dev/sda1> means literally the first partition (C<1>) of the first "
30139 "disk image that we added (C</dev/sda>).  If the disk contains Linux LVM2 "
30140 "logical volumes you could refer to those instead (eg. C</dev/VG/LV>).  Note "
30141 "that these are libguestfs virtual devices, and are nothing to do with host "
30142 "devices."
30143 msgstr ""
30144
30145 #. type: textblock
30146 #: ../src/guestfs.pod:178
30147 msgid ""
30148 "If you are given a disk image and you don't know what it contains then you "
30149 "have to find out.  Libguestfs can do that too: use "
30150 "L</guestfs_list_partitions> and L</guestfs_lvs> to list possible partitions "
30151 "and LVs, and either try mounting each to see what is mountable, or else "
30152 "examine them with L</guestfs_vfs_type> or L</guestfs_file>.  To list just "
30153 "filesystems, use L</guestfs_list_filesystems>."
30154 msgstr ""
30155
30156 #. type: textblock
30157 #: ../src/guestfs.pod:186
30158 msgid ""
30159 "Libguestfs also has a set of APIs for inspection of unknown disk images (see "
30160 "L</INSPECTION> below).  But you might find it easier to look at higher level "
30161 "programs built on top of libguestfs, in particular L<virt-inspector(1)>."
30162 msgstr ""
30163
30164 #. type: textblock
30165 #: ../src/guestfs.pod:191
30166 msgid ""
30167 "To mount a filesystem read-only, use L</guestfs_mount_ro>.  There are "
30168 "several other variations of the C<guestfs_mount_*> call."
30169 msgstr ""
30170
30171 #. type: =head2
30172 #: ../src/guestfs.pod:194
30173 msgid "FILESYSTEM ACCESS AND MODIFICATION"
30174 msgstr ""
30175
30176 #. type: textblock
30177 #: ../src/guestfs.pod:196
30178 msgid ""
30179 "The majority of the libguestfs API consists of fairly low-level calls for "
30180 "accessing and modifying the files, directories, symlinks etc on mounted "
30181 "filesystems.  There are over a hundred such calls which you can find listed "
30182 "in detail below in this man page, and we don't even pretend to cover them "
30183 "all in this overview."
30184 msgstr ""
30185
30186 #. type: textblock
30187 #: ../src/guestfs.pod:202
30188 msgid ""
30189 "Specify filenames as full paths, starting with C<\"/\"> and including the "
30190 "mount point."
30191 msgstr ""
30192
30193 #. type: textblock
30194 #: ../src/guestfs.pod:205
30195 msgid ""
30196 "For example, if you mounted a filesystem at C<\"/\"> and you want to read "
30197 "the file called C<\"etc/passwd\"> then you could do:"
30198 msgstr ""
30199
30200 #. type: verbatim
30201 #: ../src/guestfs.pod:208
30202 #, no-wrap
30203 msgid ""
30204 " char *data = guestfs_cat (g, \"/etc/passwd\");\n"
30205 "\n"
30206 msgstr ""
30207
30208 #. type: textblock
30209 #: ../src/guestfs.pod:210
30210 msgid ""
30211 "This would return C<data> as a newly allocated buffer containing the full "
30212 "content of that file (with some conditions: see also L</DOWNLOADING> below), "
30213 "or C<NULL> if there was an error."
30214 msgstr ""
30215
30216 #. type: textblock
30217 #: ../src/guestfs.pod:214
30218 msgid ""
30219 "As another example, to create a top-level directory on that filesystem "
30220 "called C<\"var\"> you would do:"
30221 msgstr ""
30222
30223 #. type: verbatim
30224 #: ../src/guestfs.pod:217
30225 #, no-wrap
30226 msgid ""
30227 " guestfs_mkdir (g, \"/var\");\n"
30228 "\n"
30229 msgstr ""
30230
30231 #. type: textblock
30232 #: ../src/guestfs.pod:219
30233 msgid "To create a symlink you could do:"
30234 msgstr ""
30235
30236 #. type: verbatim
30237 #: ../src/guestfs.pod:221
30238 #, no-wrap
30239 msgid ""
30240 " guestfs_ln_s (g, \"/etc/init.d/portmap\",\n"
30241 "               \"/etc/rc3.d/S30portmap\");\n"
30242 "\n"
30243 msgstr ""
30244
30245 #. type: textblock
30246 #: ../src/guestfs.pod:224
30247 msgid ""
30248 "Libguestfs will reject attempts to use relative paths and there is no "
30249 "concept of a current working directory."
30250 msgstr ""
30251
30252 #. type: textblock
30253 #: ../src/guestfs.pod:227
30254 msgid ""
30255 "Libguestfs can return errors in many situations: for example if the "
30256 "filesystem isn't writable, or if a file or directory that you requested "
30257 "doesn't exist.  If you are using the C API (documented here)  you have to "
30258 "check for those error conditions after each call.  (Other language bindings "
30259 "turn these errors into exceptions)."
30260 msgstr ""
30261
30262 #. type: textblock
30263 #: ../src/guestfs.pod:233
30264 msgid ""
30265 "File writes are affected by the per-handle umask, set by calling "
30266 "L</guestfs_umask> and defaulting to 022.  See L</UMASK>."
30267 msgstr ""
30268
30269 #. type: =head2
30270 #: ../src/guestfs.pod:236
30271 msgid "PARTITIONING"
30272 msgstr ""
30273
30274 #. type: textblock
30275 #: ../src/guestfs.pod:238
30276 msgid ""
30277 "Libguestfs contains API calls to read, create and modify partition tables on "
30278 "disk images."
30279 msgstr ""
30280
30281 #. type: textblock
30282 #: ../src/guestfs.pod:241
30283 msgid ""
30284 "In the common case where you want to create a single partition covering the "
30285 "whole disk, you should use the L</guestfs_part_disk> call:"
30286 msgstr ""
30287
30288 #. type: verbatim
30289 #: ../src/guestfs.pod:245
30290 #, no-wrap
30291 msgid ""
30292 " const char *parttype = \"mbr\";\n"
30293 " if (disk_is_larger_than_2TB)\n"
30294 "   parttype = \"gpt\";\n"
30295 " guestfs_part_disk (g, \"/dev/sda\", parttype);\n"
30296 "\n"
30297 msgstr ""
30298
30299 #. type: textblock
30300 #: ../src/guestfs.pod:250
30301 msgid ""
30302 "Obviously this effectively wipes anything that was on that disk image "
30303 "before."
30304 msgstr ""
30305
30306 #. type: =head2
30307 #: ../src/guestfs.pod:253
30308 msgid "LVM2"
30309 msgstr ""
30310
30311 #. type: textblock
30312 #: ../src/guestfs.pod:255
30313 msgid ""
30314 "Libguestfs provides access to a large part of the LVM2 API, such as "
30315 "L</guestfs_lvcreate> and L</guestfs_vgremove>.  It won't make much sense "
30316 "unless you familiarize yourself with the concepts of physical volumes, "
30317 "volume groups and logical volumes."
30318 msgstr ""
30319
30320 #. type: textblock
30321 #: ../src/guestfs.pod:260
30322 msgid ""
30323 "This author strongly recommends reading the LVM HOWTO, online at "
30324 "L<http://tldp.org/HOWTO/LVM-HOWTO/>."
30325 msgstr ""
30326
30327 #. type: =head2
30328 #: ../src/guestfs.pod:263
30329 msgid "DOWNLOADING"
30330 msgstr ""
30331
30332 #. type: textblock
30333 #: ../src/guestfs.pod:265
30334 msgid ""
30335 "Use L</guestfs_cat> to download small, text only files.  This call is "
30336 "limited to files which are less than 2 MB and which cannot contain any ASCII "
30337 "NUL (C<\\0>) characters.  However the API is very simple to use."
30338 msgstr ""
30339
30340 #. type: textblock
30341 #: ../src/guestfs.pod:269
30342 msgid ""
30343 "L</guestfs_read_file> can be used to read files which contain arbitrary 8 "
30344 "bit data, since it returns a (pointer, size) pair.  However it is still "
30345 "limited to \"small\" files, less than 2 MB."
30346 msgstr ""
30347
30348 #. type: textblock
30349 #: ../src/guestfs.pod:273
30350 msgid ""
30351 "L</guestfs_download> can be used to download any file, with no limits on "
30352 "content or size (even files larger than 4 GB)."
30353 msgstr ""
30354
30355 #. type: textblock
30356 #: ../src/guestfs.pod:276
30357 msgid "To download multiple files, see L</guestfs_tar_out> and L</guestfs_tgz_out>."
30358 msgstr ""
30359
30360 #. type: =head2
30361 #: ../src/guestfs.pod:279
30362 msgid "UPLOADING"
30363 msgstr ""
30364
30365 #. type: textblock
30366 #: ../src/guestfs.pod:281
30367 msgid ""
30368 "It's often the case that you want to write a file or files to the disk "
30369 "image."
30370 msgstr ""
30371
30372 #. type: textblock
30373 #: ../src/guestfs.pod:284
30374 msgid ""
30375 "To write a small file with fixed content, use L</guestfs_write>.  To create "
30376 "a file of all zeroes, use L</guestfs_truncate_size> (sparse) or "
30377 "L</guestfs_fallocate64> (with all disk blocks allocated).  There are a "
30378 "variety of other functions for creating test files, for example "
30379 "L</guestfs_fill> and L</guestfs_fill_pattern>."
30380 msgstr ""
30381
30382 #. type: textblock
30383 #: ../src/guestfs.pod:290
30384 msgid ""
30385 "To upload a single file, use L</guestfs_upload>.  This call has no limits on "
30386 "file content or size (even files larger than 4 GB)."
30387 msgstr ""
30388
30389 #. type: textblock
30390 #: ../src/guestfs.pod:293
30391 msgid "To upload multiple files, see L</guestfs_tar_in> and L</guestfs_tgz_in>."
30392 msgstr ""
30393
30394 #. type: textblock
30395 #: ../src/guestfs.pod:295
30396 msgid ""
30397 "However the fastest way to upload I<large numbers of arbitrary files> is to "
30398 "turn them into a squashfs or CD ISO (see L<mksquashfs(8)> and "
30399 "L<mkisofs(8)>), then attach this using L</guestfs_add_drive_ro>.  If you add "
30400 "the drive in a predictable way (eg. adding it last after all other drives) "
30401 "then you can get the device name from L</guestfs_list_devices> and mount it "
30402 "directly using L</guestfs_mount_ro>.  Note that squashfs images are "
30403 "sometimes non-portable between kernel versions, and they don't support "
30404 "labels or UUIDs.  If you want to pre-build an image or you need to mount it "
30405 "using a label or UUID, use an ISO image instead."
30406 msgstr ""
30407
30408 #. type: =head2
30409 #: ../src/guestfs.pod:306
30410 msgid "COPYING"
30411 msgstr ""
30412
30413 #. type: textblock
30414 #: ../src/guestfs.pod:308
30415 msgid ""
30416 "There are various different commands for copying between files and devices "
30417 "and in and out of the guest filesystem.  These are summarised in the table "
30418 "below."
30419 msgstr ""
30420
30421 #. type: =item
30422 #: ../src/guestfs.pod:314
30423 msgid "B<file> to B<file>"
30424 msgstr ""
30425
30426 #. type: textblock
30427 #: ../src/guestfs.pod:316
30428 msgid ""
30429 "Use L</guestfs_cp> to copy a single file, or L</guestfs_cp_a> to copy "
30430 "directories recursively."
30431 msgstr ""
30432
30433 #. type: =item
30434 #: ../src/guestfs.pod:319
30435 msgid "B<file or device> to B<file or device>"
30436 msgstr ""
30437
30438 #. type: textblock
30439 #: ../src/guestfs.pod:321
30440 msgid ""
30441 "Use L</guestfs_dd> which efficiently uses L<dd(1)> to copy between files and "
30442 "devices in the guest."
30443 msgstr ""
30444
30445 #. type: textblock
30446 #: ../src/guestfs.pod:324
30447 msgid "Example: duplicate the contents of an LV:"
30448 msgstr ""
30449
30450 #. type: verbatim
30451 #: ../src/guestfs.pod:326
30452 #, no-wrap
30453 msgid ""
30454 " guestfs_dd (g, \"/dev/VG/Original\", \"/dev/VG/Copy\");\n"
30455 "\n"
30456 msgstr ""
30457
30458 #. type: textblock
30459 #: ../src/guestfs.pod:328
30460 msgid ""
30461 "The destination (C</dev/VG/Copy>) must be at least as large as the source "
30462 "(C</dev/VG/Original>).  To copy less than the whole source device, use "
30463 "L</guestfs_copy_size>."
30464 msgstr ""
30465
30466 #. type: =item
30467 #: ../src/guestfs.pod:332
30468 msgid "B<file on the host> to B<file or device>"
30469 msgstr ""
30470
30471 #. type: textblock
30472 #: ../src/guestfs.pod:334
30473 msgid "Use L</guestfs_upload>.  See L</UPLOADING> above."
30474 msgstr ""
30475
30476 #. type: =item
30477 #: ../src/guestfs.pod:336
30478 msgid "B<file or device> to B<file on the host>"
30479 msgstr ""
30480
30481 #. type: textblock
30482 #: ../src/guestfs.pod:338
30483 msgid "Use L</guestfs_download>.  See L</DOWNLOADING> above."
30484 msgstr ""
30485
30486 #. type: =head2
30487 #: ../src/guestfs.pod:342
30488 msgid "UPLOADING AND DOWNLOADING TO PIPES AND FILE DESCRIPTORS"
30489 msgstr ""
30490
30491 #. type: textblock
30492 #: ../src/guestfs.pod:344
30493 msgid ""
30494 "Calls like L</guestfs_upload>, L</guestfs_download>, L</guestfs_tar_in>, "
30495 "L</guestfs_tar_out> etc appear to only take filenames as arguments, so it "
30496 "appears you can only upload and download to files.  However many Un*x-like "
30497 "hosts let you use the special device files C</dev/stdin>, C</dev/stdout>, "
30498 "C</dev/stderr> and C</dev/fd/N> to read and write from stdin, stdout, "
30499 "stderr, and arbitrary file descriptor N."
30500 msgstr ""
30501
30502 #. type: textblock
30503 #: ../src/guestfs.pod:352
30504 msgid "For example, L<virt-cat(1)> writes its output to stdout by doing:"
30505 msgstr ""
30506
30507 #. type: verbatim
30508 #: ../src/guestfs.pod:355
30509 #, no-wrap
30510 msgid ""
30511 " guestfs_download (g, filename, \"/dev/stdout\");\n"
30512 "\n"
30513 msgstr ""
30514
30515 #. type: textblock
30516 #: ../src/guestfs.pod:357
30517 msgid "and you can write tar output to a file descriptor C<fd> by doing:"
30518 msgstr ""
30519
30520 #. type: verbatim
30521 #: ../src/guestfs.pod:359
30522 #, no-wrap
30523 msgid ""
30524 " char devfd[64];\n"
30525 " snprintf (devfd, sizeof devfd, \"/dev/fd/%d\", fd);\n"
30526 " guestfs_tar_out (g, \"/\", devfd);\n"
30527 "\n"
30528 msgstr ""
30529
30530 #. type: =head2
30531 #: ../src/guestfs.pod:363
30532 msgid "LISTING FILES"
30533 msgstr ""
30534
30535 #. type: textblock
30536 #: ../src/guestfs.pod:365
30537 msgid ""
30538 "L</guestfs_ll> is just designed for humans to read (mainly when using the "
30539 "L<guestfish(1)>-equivalent command C<ll>)."
30540 msgstr ""
30541
30542 #. type: textblock
30543 #: ../src/guestfs.pod:368
30544 msgid ""
30545 "L</guestfs_ls> is a quick way to get a list of files in a directory from "
30546 "programs, as a flat list of strings."
30547 msgstr ""
30548
30549 #. type: textblock
30550 #: ../src/guestfs.pod:371
30551 msgid ""
30552 "L</guestfs_readdir> is a programmatic way to get a list of files in a "
30553 "directory, plus additional information about each one.  It is more "
30554 "equivalent to using the L<readdir(3)> call on a local filesystem."
30555 msgstr ""
30556
30557 #. type: textblock
30558 #: ../src/guestfs.pod:375
30559 msgid ""
30560 "L</guestfs_find> and L</guestfs_find0> can be used to recursively list "
30561 "files."
30562 msgstr ""
30563
30564 #. type: =head2
30565 #: ../src/guestfs.pod:378
30566 msgid "RUNNING COMMANDS"
30567 msgstr ""
30568
30569 #. type: textblock
30570 #: ../src/guestfs.pod:380
30571 msgid ""
30572 "Although libguestfs is primarily an API for manipulating files inside guest "
30573 "images, we also provide some limited facilities for running commands inside "
30574 "guests."
30575 msgstr ""
30576
30577 #. type: textblock
30578 #: ../src/guestfs.pod:384
30579 msgid "There are many limitations to this:"
30580 msgstr ""
30581
30582 #. type: textblock
30583 #: ../src/guestfs.pod:390
30584 msgid ""
30585 "The kernel version that the command runs under will be different from what "
30586 "it expects."
30587 msgstr ""
30588
30589 #. type: textblock
30590 #: ../src/guestfs.pod:395
30591 msgid ""
30592 "If the command needs to communicate with daemons, then most likely they "
30593 "won't be running."
30594 msgstr ""
30595
30596 #. type: textblock
30597 #: ../src/guestfs.pod:400
30598 msgid "The command will be running in limited memory."
30599 msgstr ""
30600
30601 #. type: textblock
30602 #: ../src/guestfs.pod:404
30603 msgid ""
30604 "The network may not be available unless you enable it (see "
30605 "L</guestfs_set_network>)."
30606 msgstr ""
30607
30608 #. type: textblock
30609 #: ../src/guestfs.pod:409
30610 msgid "Only supports Linux guests (not Windows, BSD, etc)."
30611 msgstr ""
30612
30613 #. type: textblock
30614 #: ../src/guestfs.pod:413
30615 msgid "Architecture limitations (eg. won't work for a PPC guest on an X86 host)."
30616 msgstr ""
30617
30618 #. type: textblock
30619 #: ../src/guestfs.pod:418
30620 msgid ""
30621 "For SELinux guests, you may need to enable SELinux and load policy first.  "
30622 "See L</SELINUX> in this manpage."
30623 msgstr ""
30624
30625 #. type: textblock
30626 #: ../src/guestfs.pod:423
30627 msgid ""
30628 "I<Security:> It is not safe to run commands from untrusted, possibly "
30629 "malicious guests.  These commands may attempt to exploit your program by "
30630 "sending unexpected output.  They could also try to exploit the Linux kernel "
30631 "or qemu provided by the libguestfs appliance.  They could use the network "
30632 "provided by the libguestfs appliance to bypass ordinary network partitions "
30633 "and firewalls.  They could use the elevated privileges or different SELinux "
30634 "context of your program to their advantage."
30635 msgstr ""
30636
30637 #. type: textblock
30638 #: ../src/guestfs.pod:432
30639 msgid ""
30640 "A secure alternative is to use libguestfs to install a \"firstboot\" script "
30641 "(a script which runs when the guest next boots normally), and to have this "
30642 "script run the commands you want in the normal context of the running guest, "
30643 "network security and so on.  For information about other security issues, "
30644 "see L</SECURITY>."
30645 msgstr ""
30646
30647 #. type: textblock
30648 #: ../src/guestfs.pod:440
30649 msgid ""
30650 "The two main API calls to run commands are L</guestfs_command> and "
30651 "L</guestfs_sh> (there are also variations)."
30652 msgstr ""
30653
30654 #. type: textblock
30655 #: ../src/guestfs.pod:443
30656 msgid ""
30657 "The difference is that L</guestfs_sh> runs commands using the shell, so any "
30658 "shell globs, redirections, etc will work."
30659 msgstr ""
30660
30661 #. type: =head2
30662 #: ../src/guestfs.pod:446
30663 msgid "CONFIGURATION FILES"
30664 msgstr ""
30665
30666 #. type: textblock
30667 #: ../src/guestfs.pod:448
30668 msgid ""
30669 "To read and write configuration files in Linux guest filesystems, we "
30670 "strongly recommend using Augeas.  For example, Augeas understands how to "
30671 "read and write, say, a Linux shadow password file or X.org configuration "
30672 "file, and so avoids you having to write that code."
30673 msgstr ""
30674
30675 #. type: textblock
30676 #: ../src/guestfs.pod:453
30677 msgid ""
30678 "The main Augeas calls are bound through the C<guestfs_aug_*> APIs.  We don't "
30679 "document Augeas itself here because there is excellent documentation on the "
30680 "L<http://augeas.net/> website."
30681 msgstr ""
30682
30683 #. type: textblock
30684 #: ../src/guestfs.pod:457
30685 msgid ""
30686 "If you don't want to use Augeas (you fool!) then try calling "
30687 "L</guestfs_read_lines> to get the file as a list of lines which you can "
30688 "iterate over."
30689 msgstr ""
30690
30691 #. type: =head2
30692 #: ../src/guestfs.pod:461
30693 msgid "SELINUX"
30694 msgstr ""
30695
30696 #. type: textblock
30697 #: ../src/guestfs.pod:463
30698 msgid ""
30699 "We support SELinux guests.  To ensure that labeling happens correctly in "
30700 "SELinux guests, you need to enable SELinux and load the guest's policy:"
30701 msgstr ""
30702
30703 #. type: textblock
30704 #: ../src/guestfs.pod:471
30705 msgid "Before launching, do:"
30706 msgstr ""
30707
30708 #. type: verbatim
30709 #: ../src/guestfs.pod:473
30710 #, no-wrap
30711 msgid ""
30712 " guestfs_set_selinux (g, 1);\n"
30713 "\n"
30714 msgstr ""
30715
30716 #. type: textblock
30717 #: ../src/guestfs.pod:477
30718 msgid ""
30719 "After mounting the guest's filesystem(s), load the policy.  This is best "
30720 "done by running the L<load_policy(8)> command in the guest itself:"
30721 msgstr ""
30722
30723 #. type: verbatim
30724 #: ../src/guestfs.pod:481
30725 #, no-wrap
30726 msgid ""
30727 " guestfs_sh (g, \"/usr/sbin/load_policy\");\n"
30728 "\n"
30729 msgstr ""
30730
30731 #. type: textblock
30732 #: ../src/guestfs.pod:483
30733 msgid ""
30734 "(Older versions of C<load_policy> require you to specify the name of the "
30735 "policy file)."
30736 msgstr ""
30737
30738 #. type: textblock
30739 #: ../src/guestfs.pod:488
30740 msgid ""
30741 "Optionally, set the security context for the API.  The correct security "
30742 "context to use can only be known by inspecting the guest.  As an example:"
30743 msgstr ""
30744
30745 #. type: verbatim
30746 #: ../src/guestfs.pod:492
30747 #, no-wrap
30748 msgid ""
30749 " guestfs_setcon (g, \"unconfined_u:unconfined_r:unconfined_t:s0\");\n"
30750 "\n"
30751 msgstr ""
30752
30753 #. type: textblock
30754 #: ../src/guestfs.pod:496
30755 msgid "This will work for running commands and editing existing files."
30756 msgstr ""
30757
30758 #. type: textblock
30759 #: ../src/guestfs.pod:498
30760 msgid ""
30761 "When new files are created, you may need to label them explicitly, for "
30762 "example by running the external command C<restorecon pathname>."
30763 msgstr ""
30764
30765 #. type: =head2
30766 #: ../src/guestfs.pod:502
30767 msgid "UMASK"
30768 msgstr ""
30769
30770 #. type: textblock
30771 #: ../src/guestfs.pod:504
30772 msgid ""
30773 "Certain calls are affected by the current file mode creation mask (the "
30774 "\"umask\").  In particular ones which create files or directories, such as "
30775 "L</guestfs_touch>, L</guestfs_mknod> or L</guestfs_mkdir>.  This affects "
30776 "either the default mode that the file is created with or modifies the mode "
30777 "that you supply."
30778 msgstr ""
30779
30780 #. type: textblock
30781 #: ../src/guestfs.pod:510
30782 msgid ""
30783 "The default umask is C<022>, so files are created with modes such as C<0644> "
30784 "and directories with C<0755>."
30785 msgstr ""
30786
30787 #. type: textblock
30788 #: ../src/guestfs.pod:513
30789 msgid ""
30790 "There are two ways to avoid being affected by umask.  Either set umask to 0 "
30791 "(call C<guestfs_umask (g, 0)> early after launching).  Or call "
30792 "L</guestfs_chmod> after creating each file or directory."
30793 msgstr ""
30794
30795 #. type: textblock
30796 #: ../src/guestfs.pod:517
30797 msgid "For more information about umask, see L<umask(2)>."
30798 msgstr ""
30799
30800 #. type: textblock
30801 #: ../src/guestfs.pod:521
30802 msgid ""
30803 "Libguestfs allows you to access Linux guests which have been encrypted using "
30804 "whole disk encryption that conforms to the Linux Unified Key Setup (LUKS) "
30805 "standard.  This includes nearly all whole disk encryption systems used by "
30806 "modern Linux guests."
30807 msgstr ""
30808
30809 #. type: textblock
30810 #: ../src/guestfs.pod:527
30811 msgid ""
30812 "Use L</guestfs_vfs_type> to identify LUKS-encrypted block devices (it "
30813 "returns the string C<crypto_LUKS>)."
30814 msgstr ""
30815
30816 #. type: textblock
30817 #: ../src/guestfs.pod:530
30818 msgid ""
30819 "Then open these devices by calling L</guestfs_luks_open>.  Obviously you "
30820 "will require the passphrase!"
30821 msgstr ""
30822
30823 #. type: textblock
30824 #: ../src/guestfs.pod:533
30825 msgid ""
30826 "Opening a LUKS device creates a new device mapper device called "
30827 "C</dev/mapper/mapname> (where C<mapname> is the string you supply to "
30828 "L</guestfs_luks_open>).  Reads and writes to this mapper device are "
30829 "decrypted from and encrypted to the underlying block device respectively."
30830 msgstr ""
30831
30832 #. type: textblock
30833 #: ../src/guestfs.pod:539
30834 msgid ""
30835 "LVM volume groups on the device can be made visible by calling "
30836 "L</guestfs_vgscan> followed by L</guestfs_vg_activate_all>.  The logical "
30837 "volume(s) can now be mounted in the usual way."
30838 msgstr ""
30839
30840 #. type: textblock
30841 #: ../src/guestfs.pod:543
30842 msgid ""
30843 "Use the reverse process to close a LUKS device.  Unmount any logical volumes "
30844 "on it, deactivate the volume groups by caling C<guestfs_vg_activate (g, 0, "
30845 "[\"/dev/VG\"])>.  Then close the mapper device by calling "
30846 "L</guestfs_luks_close> on the C</dev/mapper/mapname> device (I<not> the "
30847 "underlying encrypted block device)."
30848 msgstr ""
30849
30850 #. type: =head2
30851 #: ../src/guestfs.pod:550
30852 msgid "INSPECTION"
30853 msgstr ""
30854
30855 #. type: textblock
30856 #: ../src/guestfs.pod:552
30857 msgid ""
30858 "Libguestfs has APIs for inspecting an unknown disk image to find out if it "
30859 "contains operating systems, an install CD or a live CD.  (These APIs used to "
30860 "be in a separate Perl-only library called L<Sys::Guestfs::Lib(3)> but since "
30861 "version 1.5.3 the most frequently used part of this library has been "
30862 "rewritten in C and moved into the core code)."
30863 msgstr ""
30864
30865 #. type: textblock
30866 #: ../src/guestfs.pod:559
30867 msgid ""
30868 "Add all disks belonging to the unknown virtual machine and call "
30869 "L</guestfs_launch> in the usual way."
30870 msgstr ""
30871
30872 #. type: textblock
30873 #: ../src/guestfs.pod:562
30874 msgid ""
30875 "Then call L</guestfs_inspect_os>.  This function uses other libguestfs calls "
30876 "and certain heuristics, and returns a list of operating systems that were "
30877 "found.  An empty list means none were found.  A single element is the root "
30878 "filesystem of the operating system.  For dual- or multi-boot guests, "
30879 "multiple roots can be returned, each one corresponding to a separate "
30880 "operating system.  (Multi-boot virtual machines are extremely rare in the "
30881 "world of virtualization, but since this scenario can happen, we have built "
30882 "libguestfs to deal with it.)"
30883 msgstr ""
30884
30885 #. type: textblock
30886 #: ../src/guestfs.pod:571
30887 msgid ""
30888 "For each root, you can then call various C<guestfs_inspect_get_*> functions "
30889 "to get additional details about that operating system.  For example, call "
30890 "L</guestfs_inspect_get_type> to return the string C<windows> or C<linux> for "
30891 "Windows and Linux-based operating systems respectively."
30892 msgstr ""
30893
30894 #. type: textblock
30895 #: ../src/guestfs.pod:577
30896 msgid ""
30897 "Un*x-like and Linux-based operating systems usually consist of several "
30898 "filesystems which are mounted at boot time (for example, a separate boot "
30899 "partition mounted on C</boot>).  The inspection rules are able to detect how "
30900 "filesystems correspond to mount points.  Call "
30901 "C<guestfs_inspect_get_mountpoints> to get this mapping.  It might return a "
30902 "hash table like this example:"
30903 msgstr ""
30904
30905 #. type: verbatim
30906 #: ../src/guestfs.pod:584
30907 #, no-wrap
30908 msgid ""
30909 " /boot => /dev/sda1\n"
30910 " /     => /dev/vg_guest/lv_root\n"
30911 " /usr  => /dev/vg_guest/lv_usr\n"
30912 "\n"
30913 msgstr ""
30914
30915 #. type: textblock
30916 #: ../src/guestfs.pod:588
30917 msgid ""
30918 "The caller can then make calls to L</guestfs_mount_options> to mount the "
30919 "filesystems as suggested."
30920 msgstr ""
30921
30922 #. type: textblock
30923 #: ../src/guestfs.pod:591
30924 msgid ""
30925 "Be careful to mount filesystems in the right order (eg. C</> before "
30926 "C</usr>).  Sorting the keys of the hash by length, shortest first, should "
30927 "work."
30928 msgstr ""
30929
30930 #. type: textblock
30931 #: ../src/guestfs.pod:595
30932 msgid ""
30933 "Inspection currently only works for some common operating systems.  "
30934 "Contributors are welcome to send patches for other operating systems that we "
30935 "currently cannot detect."
30936 msgstr ""
30937
30938 #. type: textblock
30939 #: ../src/guestfs.pod:599
30940 msgid ""
30941 "Encrypted disks must be opened before inspection.  See L</ENCRYPTED DISKS> "
30942 "for more details.  The L</guestfs_inspect_os> function just ignores any "
30943 "encrypted devices."
30944 msgstr ""
30945
30946 #. type: textblock
30947 #: ../src/guestfs.pod:603
30948 msgid ""
30949 "A note on the implementation: The call L</guestfs_inspect_os> performs "
30950 "inspection and caches the results in the guest handle.  Subsequent calls to "
30951 "C<guestfs_inspect_get_*> return this cached information, but I<do not> "
30952 "re-read the disks.  If you change the content of the guest disks, you can "
30953 "redo inspection by calling L</guestfs_inspect_os> again.  "
30954 "(L</guestfs_inspect_list_applications> works a little differently from the "
30955 "other calls and does read the disks.  See documentation for that function "
30956 "for details)."
30957 msgstr ""
30958
30959 #. type: =head3
30960 #: ../src/guestfs.pod:612
30961 msgid "INSPECTING INSTALL DISKS"
30962 msgstr ""
30963
30964 #. type: textblock
30965 #: ../src/guestfs.pod:614
30966 msgid ""
30967 "Libguestfs (since 1.9.4) can detect some install disks, install CDs, live "
30968 "CDs and more."
30969 msgstr ""
30970
30971 #. type: textblock
30972 #: ../src/guestfs.pod:617
30973 msgid ""
30974 "Call L</guestfs_inspect_get_format> to return the format of the operating "
30975 "system, which currently can be C<installed> (a regular operating system) or "
30976 "C<installer> (some sort of install disk)."
30977 msgstr ""
30978
30979 #. type: textblock
30980 #: ../src/guestfs.pod:621
30981 msgid ""
30982 "Further information is available about the operating system that can be "
30983 "installed using the regular inspection APIs like "
30984 "L</guestfs_inspect_get_product_name>, L</guestfs_inspect_get_major_version> "
30985 "etc."
30986 msgstr ""
30987
30988 #. type: textblock
30989 #: ../src/guestfs.pod:626
30990 msgid ""
30991 "Some additional information specific to installer disks is also available "
30992 "from the L</guestfs_inspect_is_live>, L</guestfs_inspect_is_netinst> and "
30993 "L</guestfs_inspect_is_multipart> calls."
30994 msgstr ""
30995
30996 #. type: =head2
30997 #: ../src/guestfs.pod:631
30998 msgid "SPECIAL CONSIDERATIONS FOR WINDOWS GUESTS"
30999 msgstr ""
31000
31001 #. type: textblock
31002 #: ../src/guestfs.pod:633
31003 msgid ""
31004 "Libguestfs can mount NTFS partitions.  It does this using the "
31005 "L<http://www.ntfs-3g.org/> driver."
31006 msgstr ""
31007
31008 #. type: =head3
31009 #: ../src/guestfs.pod:636
31010 msgid "DRIVE LETTERS AND PATHS"
31011 msgstr ""
31012
31013 #. type: textblock
31014 #: ../src/guestfs.pod:638
31015 msgid ""
31016 "DOS and Windows still use drive letters, and the filesystems are always "
31017 "treated as case insensitive by Windows itself, and therefore you might find "
31018 "a Windows configuration file referring to a path like "
31019 "C<c:\\windows\\system32>.  When the filesystem is mounted in libguestfs, "
31020 "that directory might be referred to as C</WINDOWS/System32>."
31021 msgstr ""
31022
31023 #. type: textblock
31024 #: ../src/guestfs.pod:644
31025 msgid ""
31026 "Drive letter mappings can be found using inspection (see L</INSPECTION> and "
31027 "L</guestfs_inspect_get_drive_mappings>)"
31028 msgstr ""
31029
31030 #. type: textblock
31031 #: ../src/guestfs.pod:647
31032 msgid ""
31033 "Dealing with separator characters (backslash vs forward slash) is outside "
31034 "the scope of libguestfs, but usually a simple character replacement will "
31035 "work."
31036 msgstr ""
31037
31038 #. type: textblock
31039 #: ../src/guestfs.pod:651
31040 msgid ""
31041 "To resolve the case insensitivity of paths, call "
31042 "L</guestfs_case_sensitive_path>."
31043 msgstr ""
31044
31045 #. type: =head3
31046 #: ../src/guestfs.pod:654
31047 msgid "ACCESSING THE WINDOWS REGISTRY"
31048 msgstr ""
31049
31050 #. type: textblock
31051 #: ../src/guestfs.pod:656
31052 msgid ""
31053 "Libguestfs also provides some help for decoding Windows Registry \"hive\" "
31054 "files, through the library C<hivex> which is part of the libguestfs project "
31055 "although ships as a separate tarball.  You have to locate and download the "
31056 "hive file(s) yourself, and then pass them to C<hivex> functions.  See also "
31057 "the programs L<hivexml(1)>, L<hivexsh(1)>, L<hivexregedit(1)> and "
31058 "L<virt-win-reg(1)> for more help on this issue."
31059 msgstr ""
31060
31061 #. type: =head3
31062 #: ../src/guestfs.pod:664
31063 msgid "SYMLINKS ON NTFS-3G FILESYSTEMS"
31064 msgstr ""
31065
31066 #. type: textblock
31067 #: ../src/guestfs.pod:666
31068 msgid ""
31069 "Ntfs-3g tries to rewrite \"Junction Points\" and NTFS \"symbolic links\" to "
31070 "provide something which looks like a Linux symlink.  The way it tries to do "
31071 "the rewriting is described here:"
31072 msgstr ""
31073
31074 #. type: textblock
31075 #: ../src/guestfs.pod:670
31076 msgid "L<http://www.tuxera.com/community/ntfs-3g-advanced/junction-points-and-symbolic-links/>"
31077 msgstr ""
31078
31079 #. type: textblock
31080 #: ../src/guestfs.pod:672
31081 msgid ""
31082 "The essential problem is that ntfs-3g simply does not have enough "
31083 "information to do a correct job.  NTFS links can contain drive letters and "
31084 "references to external device GUIDs that ntfs-3g has no way of resolving.  "
31085 "It is almost certainly the case that libguestfs callers should ignore what "
31086 "ntfs-3g does (ie. don't use L</guestfs_readlink> on NTFS volumes)."
31087 msgstr ""
31088
31089 #. type: textblock
31090 #: ../src/guestfs.pod:679
31091 msgid ""
31092 "Instead if you encounter a symbolic link on an ntfs-3g filesystem, use "
31093 "L</guestfs_lgetxattr> to read the C<system.ntfs_reparse_data> extended "
31094 "attribute, and read the raw reparse data from that (you can find the format "
31095 "documented in various places around the web)."
31096 msgstr ""
31097
31098 #. type: =head3
31099 #: ../src/guestfs.pod:684
31100 msgid "EXTENDED ATTRIBUTES ON NTFS-3G FILESYSTEMS"
31101 msgstr ""
31102
31103 #. type: textblock
31104 #: ../src/guestfs.pod:686
31105 msgid ""
31106 "There are other useful extended attributes that can be read from ntfs-3g "
31107 "filesystems (using L</guestfs_getxattr>).  See:"
31108 msgstr ""
31109
31110 #. type: textblock
31111 #: ../src/guestfs.pod:689
31112 msgid "L<http://www.tuxera.com/community/ntfs-3g-advanced/extended-attributes/>"
31113 msgstr ""
31114
31115 #. type: =head2
31116 #: ../src/guestfs.pod:691
31117 msgid "USING LIBGUESTFS WITH OTHER PROGRAMMING LANGUAGES"
31118 msgstr ""
31119
31120 #. type: textblock
31121 #: ../src/guestfs.pod:693
31122 msgid ""
31123 "Although we don't want to discourage you from using the C API, we will "
31124 "mention here that the same API is also available in other languages."
31125 msgstr ""
31126
31127 #. type: textblock
31128 #: ../src/guestfs.pod:696
31129 msgid ""
31130 "The API is broadly identical in all supported languages.  This means that "
31131 "the C call C<guestfs_add_drive_ro(g,file)> is C<$g-E<gt>add_drive_ro($file)> "
31132 "in Perl, C<g.add_drive_ro(file)> in Python, and C<g#add_drive_ro file> in "
31133 "OCaml.  In other words, a straightforward, predictable isomorphism between "
31134 "each language."
31135 msgstr ""
31136
31137 #. type: textblock
31138 #: ../src/guestfs.pod:702
31139 msgid ""
31140 "Error messages are automatically transformed into exceptions if the language "
31141 "supports it."
31142 msgstr ""
31143
31144 #. type: textblock
31145 #: ../src/guestfs.pod:705
31146 msgid ""
31147 "We don't try to \"object orientify\" parts of the API in OO languages, "
31148 "although contributors are welcome to write higher level APIs above what we "
31149 "provide in their favourite languages if they wish."
31150 msgstr ""
31151
31152 #. type: =item
31153 #: ../src/guestfs.pod:711
31154 msgid "B<C++>"
31155 msgstr ""
31156
31157 #. type: textblock
31158 #: ../src/guestfs.pod:713
31159 msgid ""
31160 "You can use the I<guestfs.h> header file from C++ programs.  The C++ API is "
31161 "identical to the C API.  C++ classes and exceptions are not used."
31162 msgstr ""
31163
31164 #. type: =item
31165 #: ../src/guestfs.pod:717
31166 msgid "B<C#>"
31167 msgstr ""
31168
31169 #. type: textblock
31170 #: ../src/guestfs.pod:719
31171 msgid ""
31172 "The C# bindings are highly experimental.  Please read the warnings at the "
31173 "top of C<csharp/Libguestfs.cs>."
31174 msgstr ""
31175
31176 #. type: =item
31177 #: ../src/guestfs.pod:722
31178 msgid "B<Haskell>"
31179 msgstr ""
31180
31181 #. type: textblock
31182 #: ../src/guestfs.pod:724
31183 msgid ""
31184 "This is the only language binding that is working but incomplete.  Only "
31185 "calls which return simple integers have been bound in Haskell, and we are "
31186 "looking for help to complete this binding."
31187 msgstr ""
31188
31189 #. type: =item
31190 #: ../src/guestfs.pod:728
31191 msgid "B<Java>"
31192 msgstr ""
31193
31194 #. type: textblock
31195 #: ../src/guestfs.pod:730
31196 msgid ""
31197 "Full documentation is contained in the Javadoc which is distributed with "
31198 "libguestfs.  For examples, see L<guestfs-java(3)>."
31199 msgstr ""
31200
31201 #. type: =item
31202 #: ../src/guestfs.pod:733
31203 msgid "B<OCaml>"
31204 msgstr ""
31205
31206 #. type: textblock
31207 #: ../src/guestfs.pod:735
31208 msgid "See L<guestfs-ocaml(3)>."
31209 msgstr ""
31210
31211 #. type: =item
31212 #: ../src/guestfs.pod:737
31213 msgid "B<Perl>"
31214 msgstr ""
31215
31216 #. type: textblock
31217 #: ../src/guestfs.pod:739
31218 msgid "See L<guestfs-perl(3)> and L<Sys::Guestfs(3)>."
31219 msgstr ""
31220
31221 #. type: =item
31222 #: ../src/guestfs.pod:741
31223 msgid "B<PHP>"
31224 msgstr ""
31225
31226 #. type: textblock
31227 #: ../src/guestfs.pod:743
31228 msgid ""
31229 "For documentation see C<README-PHP> supplied with libguestfs sources or in "
31230 "the php-libguestfs package for your distribution."
31231 msgstr ""
31232
31233 #. type: textblock
31234 #: ../src/guestfs.pod:746
31235 msgid "The PHP binding only works correctly on 64 bit machines."
31236 msgstr ""
31237
31238 #. type: =item
31239 #: ../src/guestfs.pod:748
31240 msgid "B<Python>"
31241 msgstr ""
31242
31243 #. type: textblock
31244 #: ../src/guestfs.pod:750
31245 msgid "See L<guestfs-python(3)>."
31246 msgstr ""
31247
31248 #. type: =item
31249 #: ../src/guestfs.pod:752
31250 msgid "B<Ruby>"
31251 msgstr ""
31252
31253 #. type: textblock
31254 #: ../src/guestfs.pod:754
31255 msgid "See L<guestfs-ruby(3)>."
31256 msgstr ""
31257
31258 #. type: =item
31259 #: ../src/guestfs.pod:756
31260 msgid "B<shell scripts>"
31261 msgstr ""
31262
31263 #. type: textblock
31264 #: ../src/guestfs.pod:758
31265 msgid "See L<guestfish(1)>."
31266 msgstr ""
31267
31268 #. type: =head2
31269 #: ../src/guestfs.pod:762
31270 msgid "LIBGUESTFS GOTCHAS"
31271 msgstr ""
31272
31273 #. type: textblock
31274 #: ../src/guestfs.pod:764
31275 msgid ""
31276 "L<http://en.wikipedia.org/wiki/Gotcha_(programming)>: \"A feature of a "
31277 "system [...] that works in the way it is documented but is counterintuitive "
31278 "and almost invites mistakes.\""
31279 msgstr ""
31280
31281 #. type: textblock
31282 #: ../src/guestfs.pod:768
31283 msgid ""
31284 "Since we developed libguestfs and the associated tools, there are several "
31285 "things we would have designed differently, but are now stuck with for "
31286 "backwards compatibility or other reasons.  If there is ever a libguestfs 2.0 "
31287 "release, you can expect these to change.  Beware of them."
31288 msgstr ""
31289
31290 #. type: =item
31291 #: ../src/guestfs.pod:776
31292 msgid "Autosync / forgetting to sync."
31293 msgstr ""
31294
31295 #. type: textblock
31296 #: ../src/guestfs.pod:778
31297 msgid ""
31298 "I<Update:> Autosync is enabled by default for all API users starting from "
31299 "libguestfs 1.5.24.  This section only applies to older versions."
31300 msgstr ""
31301
31302 #. type: textblock
31303 #: ../src/guestfs.pod:781
31304 msgid ""
31305 "When modifying a filesystem from C or another language, you B<must> unmount "
31306 "all filesystems and call L</guestfs_sync> explicitly before you close the "
31307 "libguestfs handle.  You can also call:"
31308 msgstr ""
31309
31310 #. type: verbatim
31311 #: ../src/guestfs.pod:785
31312 #, no-wrap
31313 msgid ""
31314 " guestfs_set_autosync (g, 1);\n"
31315 "\n"
31316 msgstr ""
31317
31318 #. type: textblock
31319 #: ../src/guestfs.pod:787
31320 msgid ""
31321 "to have the unmount/sync done automatically for you when the handle 'g' is "
31322 "closed.  (This feature is called \"autosync\", L</guestfs_set_autosync> "
31323 "q.v.)"
31324 msgstr ""
31325
31326 #. type: textblock
31327 #: ../src/guestfs.pod:791
31328 msgid ""
31329 "If you forget to do this, then it is entirely possible that your changes "
31330 "won't be written out, or will be partially written, or (very rarely) that "
31331 "you'll get disk corruption."
31332 msgstr ""
31333
31334 #. type: textblock
31335 #: ../src/guestfs.pod:795
31336 msgid ""
31337 "Note that in L<guestfish(3)> autosync is the default.  So quick and dirty "
31338 "guestfish scripts that forget to sync will work just fine, which can make "
31339 "this very puzzling if you are trying to debug a problem."
31340 msgstr ""
31341
31342 #. type: =item
31343 #: ../src/guestfs.pod:799
31344 msgid "Mount option C<-o sync> should not be the default."
31345 msgstr ""
31346
31347 #. type: textblock
31348 #: ../src/guestfs.pod:801
31349 msgid ""
31350 "If you use L</guestfs_mount>, then C<-o sync,noatime> are added implicitly.  "
31351 "However C<-o sync> does not add any reliability benefit, but does have a "
31352 "very large performance impact."
31353 msgstr ""
31354
31355 #. type: textblock
31356 #: ../src/guestfs.pod:805
31357 msgid ""
31358 "The work around is to use L</guestfs_mount_options> and set the mount "
31359 "options that you actually want to use."
31360 msgstr ""
31361
31362 #. type: =item
31363 #: ../src/guestfs.pod:808
31364 msgid "Read-only should be the default."
31365 msgstr ""
31366
31367 #. type: textblock
31368 #: ../src/guestfs.pod:810
31369 msgid ""
31370 "In L<guestfish(3)>, I<--ro> should be the default, and you should have to "
31371 "specify I<--rw> if you want to make changes to the image."
31372 msgstr ""
31373
31374 #. type: textblock
31375 #: ../src/guestfs.pod:813
31376 msgid "This would reduce the potential to corrupt live VM images."
31377 msgstr ""
31378
31379 #. type: textblock
31380 #: ../src/guestfs.pod:815
31381 msgid ""
31382 "Note that many filesystems change the disk when you just mount and unmount, "
31383 "even if you didn't perform any writes.  You need to use "
31384 "L</guestfs_add_drive_ro> to guarantee that the disk is not changed."
31385 msgstr ""
31386
31387 #. type: =item
31388 #: ../src/guestfs.pod:819
31389 msgid "guestfish command line is hard to use."
31390 msgstr ""
31391
31392 #. type: textblock
31393 #: ../src/guestfs.pod:821
31394 msgid ""
31395 "C<guestfish disk.img> doesn't do what people expect (open C<disk.img> for "
31396 "examination).  It tries to run a guestfish command C<disk.img> which doesn't "
31397 "exist, so it fails.  In earlier versions of guestfish the error message was "
31398 "also unintuitive, but we have corrected this since.  Like the Bourne shell, "
31399 "we should have used C<guestfish -c command> to run commands."
31400 msgstr ""
31401
31402 #. type: =item
31403 #: ../src/guestfs.pod:828
31404 msgid "guestfish megabyte modifiers don't work right on all commands"
31405 msgstr ""
31406
31407 #. type: textblock
31408 #: ../src/guestfs.pod:830
31409 msgid ""
31410 "In recent guestfish you can use C<1M> to mean 1 megabyte (and similarly for "
31411 "other modifiers).  What guestfish actually does is to multiply the number "
31412 "part by the modifier part and pass the result to the C API.  However this "
31413 "doesn't work for a few APIs which aren't expecting bytes, but are already "
31414 "expecting some other unit (eg. megabytes)."
31415 msgstr ""
31416
31417 #. type: textblock
31418 #: ../src/guestfs.pod:837
31419 msgid "The most common is L</guestfs_lvcreate>.  The guestfish command:"
31420 msgstr ""
31421
31422 #. type: verbatim
31423 #: ../src/guestfs.pod:839
31424 #, no-wrap
31425 msgid ""
31426 " lvcreate LV VG 100M\n"
31427 "\n"
31428 msgstr ""
31429
31430 #. type: textblock
31431 #: ../src/guestfs.pod:841
31432 msgid ""
31433 "does not do what you might expect.  Instead because L</guestfs_lvcreate> is "
31434 "already expecting megabytes, this tries to create a 100 I<terabyte> (100 "
31435 "megabytes * megabytes) logical volume.  The error message you get from this "
31436 "is also a little obscure."
31437 msgstr ""
31438
31439 #. type: textblock
31440 #: ../src/guestfs.pod:846
31441 msgid ""
31442 "This could be fixed in the generator by specially marking parameters and "
31443 "return values which take bytes or other units."
31444 msgstr ""
31445
31446 #. type: =item
31447 #: ../src/guestfs.pod:849
31448 msgid "Ambiguity between devices and paths"
31449 msgstr ""
31450
31451 #. type: textblock
31452 #: ../src/guestfs.pod:851
31453 msgid ""
31454 "There is a subtle ambiguity in the API between a device name "
31455 "(eg. C</dev/sdb2>) and a similar pathname.  A file might just happen to be "
31456 "called C<sdb2> in the directory C</dev> (consider some non-Unix VM image)."
31457 msgstr ""
31458
31459 #. type: textblock
31460 #: ../src/guestfs.pod:856
31461 msgid ""
31462 "In the current API we usually resolve this ambiguity by having two separate "
31463 "calls, for example L</guestfs_checksum> and L</guestfs_checksum_device>.  "
31464 "Some API calls are ambiguous and (incorrectly) resolve the problem by "
31465 "detecting if the path supplied begins with C</dev/>."
31466 msgstr ""
31467
31468 #. type: textblock
31469 #: ../src/guestfs.pod:862
31470 msgid ""
31471 "To avoid both the ambiguity and the need to duplicate some calls, we could "
31472 "make paths/devices into structured names.  One way to do this would be to "
31473 "use a notation like grub (C<hd(0,0)>), although nobody really likes this "
31474 "aspect of grub.  Another way would be to use a structured type, equivalent "
31475 "to this OCaml type:"
31476 msgstr ""
31477
31478 #. type: verbatim
31479 #: ../src/guestfs.pod:868
31480 #, no-wrap
31481 msgid ""
31482 " type path = Path of string | Device of int | Partition of int * int\n"
31483 "\n"
31484 msgstr ""
31485
31486 #. type: textblock
31487 #: ../src/guestfs.pod:870
31488 msgid "which would allow you to pass arguments like:"
31489 msgstr ""
31490
31491 #. type: verbatim
31492 #: ../src/guestfs.pod:872
31493 #, no-wrap
31494 msgid ""
31495 " Path \"/foo/bar\"\n"
31496 " Device 1            (* /dev/sdb, or perhaps /dev/sda *)\n"
31497 " Partition (1, 2)    (* /dev/sdb2 (or is it /dev/sda2 or /dev/sdb3?) *)\n"
31498 " Path \"/dev/sdb2\"    (* not a device *)\n"
31499 "\n"
31500 msgstr ""
31501
31502 #. type: textblock
31503 #: ../src/guestfs.pod:877
31504 msgid ""
31505 "As you can see there are still problems to resolve even with this "
31506 "representation.  Also consider how it might work in guestfish."
31507 msgstr ""
31508
31509 #. type: =head2
31510 #: ../src/guestfs.pod:882
31511 msgid "KEYS AND PASSPHRASES"
31512 msgstr ""
31513
31514 #. type: textblock
31515 #: ../src/guestfs.pod:884
31516 msgid ""
31517 "Certain libguestfs calls take a parameter that contains sensitive key "
31518 "material, passed in as a C string."
31519 msgstr ""
31520
31521 #. type: textblock
31522 #: ../src/guestfs.pod:887
31523 msgid ""
31524 "In the future we would hope to change the libguestfs implementation so that "
31525 "keys are L<mlock(2)>-ed into physical RAM, and thus can never end up in "
31526 "swap.  However this is I<not> done at the moment, because of the complexity "
31527 "of such an implementation."
31528 msgstr ""
31529
31530 #. type: textblock
31531 #: ../src/guestfs.pod:892
31532 msgid ""
31533 "Therefore you should be aware that any key parameter you pass to libguestfs "
31534 "might end up being written out to the swap partition.  If this is a concern, "
31535 "scrub the swap partition or don't use libguestfs on encrypted devices."
31536 msgstr ""
31537
31538 #. type: =head2
31539 #: ../src/guestfs.pod:897
31540 msgid "MULTIPLE HANDLES AND MULTIPLE THREADS"
31541 msgstr ""
31542
31543 #. type: textblock
31544 #: ../src/guestfs.pod:899
31545 msgid ""
31546 "All high-level libguestfs actions are synchronous.  If you want to use "
31547 "libguestfs asynchronously then you must create a thread."
31548 msgstr ""
31549
31550 #. type: textblock
31551 #: ../src/guestfs.pod:902
31552 msgid ""
31553 "Only use the handle from a single thread.  Either use the handle exclusively "
31554 "from one thread, or provide your own mutex so that two threads cannot issue "
31555 "calls on the same handle at the same time."
31556 msgstr ""
31557
31558 #. type: textblock
31559 #: ../src/guestfs.pod:906
31560 msgid ""
31561 "See the graphical program guestfs-browser for one possible architecture for "
31562 "multithreaded programs using libvirt and libguestfs."
31563 msgstr ""
31564
31565 #. type: =head2
31566 #: ../src/guestfs.pod:909
31567 msgid "PATH"
31568 msgstr ""
31569
31570 #. type: textblock
31571 #: ../src/guestfs.pod:911
31572 msgid ""
31573 "Libguestfs needs a supermin appliance, which it finds by looking along an "
31574 "internal path."
31575 msgstr ""
31576
31577 #. type: textblock
31578 #: ../src/guestfs.pod:914
31579 msgid ""
31580 "By default it looks for these in the directory C<$libdir/guestfs> "
31581 "(eg. C</usr/local/lib/guestfs> or C</usr/lib64/guestfs>)."
31582 msgstr ""
31583
31584 #. type: textblock
31585 #: ../src/guestfs.pod:917
31586 msgid ""
31587 "Use L</guestfs_set_path> or set the environment variable L</LIBGUESTFS_PATH> "
31588 "to change the directories that libguestfs will search in.  The value is a "
31589 "colon-separated list of paths.  The current directory is I<not> searched "
31590 "unless the path contains an empty element or C<.>.  For example "
31591 "C<LIBGUESTFS_PATH=:/usr/lib/guestfs> would search the current directory and "
31592 "then C</usr/lib/guestfs>."
31593 msgstr ""
31594
31595 #. type: =head2
31596 #: ../src/guestfs.pod:924
31597 msgid "QEMU WRAPPERS"
31598 msgstr ""
31599
31600 #. type: textblock
31601 #: ../src/guestfs.pod:926
31602 msgid ""
31603 "If you want to compile your own qemu, run qemu from a non-standard location, "
31604 "or pass extra arguments to qemu, then you can write a shell-script wrapper "
31605 "around qemu."
31606 msgstr ""
31607
31608 #. type: textblock
31609 #: ../src/guestfs.pod:930
31610 msgid ""
31611 "There is one important rule to remember: you I<must C<exec qemu>> as the "
31612 "last command in the shell script (so that qemu replaces the shell and "
31613 "becomes the direct child of the libguestfs-using program).  If you don't do "
31614 "this, then the qemu process won't be cleaned up correctly."
31615 msgstr ""
31616
31617 #. type: textblock
31618 #: ../src/guestfs.pod:935
31619 msgid ""
31620 "Here is an example of a wrapper, where I have built my own copy of qemu from "
31621 "source:"
31622 msgstr ""
31623
31624 #. type: verbatim
31625 #: ../src/guestfs.pod:938
31626 #, no-wrap
31627 msgid ""
31628 " #!/bin/sh -\n"
31629 " qemudir=/home/rjones/d/qemu\n"
31630 " exec $qemudir/x86_64-softmmu/qemu-system-x86_64 -L $qemudir/pc-bios "
31631 "\"$@\"\n"
31632 "\n"
31633 msgstr ""
31634
31635 #. type: textblock
31636 #: ../src/guestfs.pod:942
31637 msgid ""
31638 "Save this script as C</tmp/qemu.wrapper> (or wherever), C<chmod +x>, and "
31639 "then use it by setting the LIBGUESTFS_QEMU environment variable.  For "
31640 "example:"
31641 msgstr ""
31642
31643 #. type: verbatim
31644 #: ../src/guestfs.pod:946
31645 #, no-wrap
31646 msgid ""
31647 " LIBGUESTFS_QEMU=/tmp/qemu.wrapper guestfish\n"
31648 "\n"
31649 msgstr ""
31650
31651 #. type: textblock
31652 #: ../src/guestfs.pod:948
31653 msgid ""
31654 "Note that libguestfs also calls qemu with the -help and -version options in "
31655 "order to determine features."
31656 msgstr ""
31657
31658 #. type: =head2
31659 #: ../src/guestfs.pod:951
31660 msgid "ATTACHING TO RUNNING DAEMONS"
31661 msgstr ""
31662
31663 #. type: textblock
31664 #: ../src/guestfs.pod:953
31665 msgid ""
31666 "I<Note (1):> This is B<highly experimental> and has a tendency to eat "
31667 "babies.  Use with caution."
31668 msgstr ""
31669
31670 #. type: textblock
31671 #: ../src/guestfs.pod:956
31672 msgid ""
31673 "I<Note (2):> This section explains how to attach to a running daemon from a "
31674 "low level perspective.  For most users, simply using virt tools such as "
31675 "L<guestfish(1)> with the I<--live> option will \"just work\"."
31676 msgstr ""
31677
31678 #. type: =head3
31679 #: ../src/guestfs.pod:960
31680 msgid "Using guestfs_set_attach_method"
31681 msgstr ""
31682
31683 #. type: textblock
31684 #: ../src/guestfs.pod:962
31685 msgid ""
31686 "By calling L</guestfs_set_attach_method> you can change how the library "
31687 "connects to the C<guestfsd> daemon in L</guestfs_launch> (read "
31688 "L</ARCHITECTURE> for some background)."
31689 msgstr ""
31690
31691 #. type: textblock
31692 #: ../src/guestfs.pod:966
31693 msgid ""
31694 "The normal attach method is C<appliance>, where a small appliance is created "
31695 "containing the daemon, and then the library connects to this."
31696 msgstr ""
31697
31698 #. type: textblock
31699 #: ../src/guestfs.pod:969
31700 msgid ""
31701 "Setting attach method to C<unix:I<path>> (where I<path> is the path of a "
31702 "Unix domain socket) causes L</guestfs_launch> to connect to an existing "
31703 "daemon over the Unix domain socket."
31704 msgstr ""
31705
31706 #. type: textblock
31707 #: ../src/guestfs.pod:973
31708 msgid ""
31709 "The normal use for this is to connect to a running virtual machine that "
31710 "contains a C<guestfsd> daemon, and send commands so you can read and write "
31711 "files inside the live virtual machine."
31712 msgstr ""
31713
31714 #. type: =head3
31715 #: ../src/guestfs.pod:977
31716 msgid "Using guestfs_add_domain with live flag"
31717 msgstr ""
31718
31719 #. type: textblock
31720 #: ../src/guestfs.pod:979
31721 msgid ""
31722 "L</guestfs_add_domain> provides some help for getting the correct attach "
31723 "method.  If you pass the C<live> option to this function, then (if the "
31724 "virtual machine is running) it will examine the libvirt XML looking for a "
31725 "virtio-serial channel to connect to:"
31726 msgstr ""
31727
31728 #. type: verbatim
31729 #: ../src/guestfs.pod:985
31730 #, no-wrap
31731 msgid ""
31732 " <domain>\n"
31733 "   ...\n"
31734 "   <devices>\n"
31735 "     ...\n"
31736 "     <channel type='unix'>\n"
31737 "       <source mode='bind' path='/path/to/socket'/>\n"
31738 "       <target type='virtio' name='org.libguestfs.channel.0'/>\n"
31739 "     </channel>\n"
31740 "     ...\n"
31741 "   </devices>\n"
31742 " </domain>\n"
31743 "\n"
31744 msgstr ""
31745
31746 #. type: textblock
31747 #: ../src/guestfs.pod:997
31748 msgid ""
31749 "L</guestfs_add_domain> extracts C</path/to/socket> and sets the attach "
31750 "method to C<unix:/path/to/socket>."
31751 msgstr ""
31752
31753 #. type: textblock
31754 #: ../src/guestfs.pod:1000
31755 msgid ""
31756 "Some of the libguestfs tools (including guestfish) support a I<--live> "
31757 "option which is passed through to L</guestfs_add_domain> thus allowing you "
31758 "to attach to and modify live virtual machines."
31759 msgstr ""
31760
31761 #. type: textblock
31762 #: ../src/guestfs.pod:1004
31763 msgid ""
31764 "The virtual machine needs to have been set up beforehand so that it has the "
31765 "virtio-serial channel and so that guestfsd is running inside it."
31766 msgstr ""
31767
31768 #. type: =head2
31769 #: ../src/guestfs.pod:1008
31770 msgid "ABI GUARANTEE"
31771 msgstr ""
31772
31773 #. type: textblock
31774 #: ../src/guestfs.pod:1010
31775 msgid ""
31776 "We guarantee the libguestfs ABI (binary interface), for public, high-level "
31777 "actions as outlined in this section.  Although we will deprecate some "
31778 "actions, for example if they get replaced by newer calls, we will keep the "
31779 "old actions forever.  This allows you the developer to program in confidence "
31780 "against the libguestfs API."
31781 msgstr ""
31782
31783 #. type: =head2
31784 #: ../src/guestfs.pod:1016
31785 msgid "BLOCK DEVICE NAMING"
31786 msgstr ""
31787
31788 #. type: textblock
31789 #: ../src/guestfs.pod:1018
31790 msgid ""
31791 "In the kernel there is now quite a profusion of schemata for naming block "
31792 "devices (in this context, by I<block device> I mean a physical or virtual "
31793 "hard drive).  The original Linux IDE driver used names starting with "
31794 "C</dev/hd*>.  SCSI devices have historically used a different naming scheme, "
31795 "C</dev/sd*>.  When the Linux kernel I<libata> driver became a popular "
31796 "replacement for the old IDE driver (particularly for SATA devices) those "
31797 "devices also used the C</dev/sd*> scheme.  Additionally we now have virtual "
31798 "machines with paravirtualized drivers.  This has created several different "
31799 "naming systems, such as C</dev/vd*> for virtio disks and C</dev/xvd*> for "
31800 "Xen PV disks."
31801 msgstr ""
31802
31803 #. type: textblock
31804 #: ../src/guestfs.pod:1030
31805 msgid ""
31806 "As discussed above, libguestfs uses a qemu appliance running an embedded "
31807 "Linux kernel to access block devices.  We can run a variety of appliances "
31808 "based on a variety of Linux kernels."
31809 msgstr ""
31810
31811 #. type: textblock
31812 #: ../src/guestfs.pod:1034
31813 msgid ""
31814 "This causes a problem for libguestfs because many API calls use device or "
31815 "partition names.  Working scripts and the recipe (example) scripts that we "
31816 "make available over the internet could fail if the naming scheme changes."
31817 msgstr ""
31818
31819 #. type: textblock
31820 #: ../src/guestfs.pod:1039
31821 msgid ""
31822 "Therefore libguestfs defines C</dev/sd*> as the I<standard naming scheme>.  "
31823 "Internally C</dev/sd*> names are translated, if necessary, to other names as "
31824 "required.  For example, under RHEL 5 which uses the C</dev/hd*> scheme, any "
31825 "device parameter C</dev/sda2> is translated to C</dev/hda2> transparently."
31826 msgstr ""
31827
31828 #. type: textblock
31829 #: ../src/guestfs.pod:1045
31830 msgid ""
31831 "Note that this I<only> applies to parameters.  The L</guestfs_list_devices>, "
31832 "L</guestfs_list_partitions> and similar calls return the true names of the "
31833 "devices and partitions as known to the appliance."
31834 msgstr ""
31835
31836 #. type: =head3
31837 #: ../src/guestfs.pod:1050
31838 msgid "ALGORITHM FOR BLOCK DEVICE NAME TRANSLATION"
31839 msgstr ""
31840
31841 #. type: textblock
31842 #: ../src/guestfs.pod:1052
31843 msgid ""
31844 "Usually this translation is transparent.  However in some (very rare)  cases "
31845 "you may need to know the exact algorithm.  Such cases include where you use "
31846 "L</guestfs_config> to add a mixture of virtio and IDE devices to the "
31847 "qemu-based appliance, so have a mixture of C</dev/sd*> and C</dev/vd*> "
31848 "devices."
31849 msgstr ""
31850
31851 #. type: textblock
31852 #: ../src/guestfs.pod:1058
31853 msgid ""
31854 "The algorithm is applied only to I<parameters> which are known to be either "
31855 "device or partition names.  Return values from functions such as "
31856 "L</guestfs_list_devices> are never changed."
31857 msgstr ""
31858
31859 #. type: textblock
31860 #: ../src/guestfs.pod:1066
31861 msgid "Is the string a parameter which is a device or partition name?"
31862 msgstr ""
31863
31864 #. type: textblock
31865 #: ../src/guestfs.pod:1070
31866 msgid "Does the string begin with C</dev/sd>?"
31867 msgstr ""
31868
31869 #. type: textblock
31870 #: ../src/guestfs.pod:1074
31871 msgid ""
31872 "Does the named device exist? If so, we use that device.  However if I<not> "
31873 "then we continue with this algorithm."
31874 msgstr ""
31875
31876 #. type: textblock
31877 #: ../src/guestfs.pod:1079
31878 msgid "Replace initial C</dev/sd> string with C</dev/hd>."
31879 msgstr ""
31880
31881 #. type: textblock
31882 #: ../src/guestfs.pod:1081
31883 msgid "For example, change C</dev/sda2> to C</dev/hda2>."
31884 msgstr ""
31885
31886 #. type: textblock
31887 #: ../src/guestfs.pod:1083
31888 msgid "If that named device exists, use it.  If not, continue."
31889 msgstr ""
31890
31891 #. type: textblock
31892 #: ../src/guestfs.pod:1087
31893 msgid "Replace initial C</dev/sd> string with C</dev/vd>."
31894 msgstr ""
31895
31896 #. type: textblock
31897 #: ../src/guestfs.pod:1089
31898 msgid "If that named device exists, use it.  If not, return an error."
31899 msgstr ""
31900
31901 #. type: =head3
31902 #: ../src/guestfs.pod:1093
31903 msgid "PORTABILITY CONCERNS WITH BLOCK DEVICE NAMING"
31904 msgstr ""
31905
31906 #. type: textblock
31907 #: ../src/guestfs.pod:1095
31908 msgid ""
31909 "Although the standard naming scheme and automatic translation is useful for "
31910 "simple programs and guestfish scripts, for larger programs it is best not to "
31911 "rely on this mechanism."
31912 msgstr ""
31913
31914 #. type: textblock
31915 #: ../src/guestfs.pod:1099
31916 msgid ""
31917 "Where possible for maximum future portability programs using libguestfs "
31918 "should use these future-proof techniques:"
31919 msgstr ""
31920
31921 #. type: textblock
31922 #: ../src/guestfs.pod:1106
31923 msgid ""
31924 "Use L</guestfs_list_devices> or L</guestfs_list_partitions> to list actual "
31925 "device names, and then use those names directly."
31926 msgstr ""
31927
31928 #. type: textblock
31929 #: ../src/guestfs.pod:1109
31930 msgid "Since those device names exist by definition, they will never be translated."
31931 msgstr ""
31932
31933 #. type: textblock
31934 #: ../src/guestfs.pod:1114
31935 msgid ""
31936 "Use higher level ways to identify filesystems, such as LVM names, UUIDs and "
31937 "filesystem labels."
31938 msgstr ""
31939
31940 #. type: =head1
31941 #: ../src/guestfs.pod:1119
31942 msgid "SECURITY"
31943 msgstr ""
31944
31945 #. type: textblock
31946 #: ../src/guestfs.pod:1121
31947 msgid ""
31948 "This section discusses security implications of using libguestfs, "
31949 "particularly with untrusted or malicious guests or disk images."
31950 msgstr ""
31951
31952 #. type: =head2
31953 #: ../src/guestfs.pod:1124
31954 msgid "GENERAL SECURITY CONSIDERATIONS"
31955 msgstr ""
31956
31957 #. type: textblock
31958 #: ../src/guestfs.pod:1126
31959 msgid ""
31960 "Be careful with any files or data that you download from a guest (by "
31961 "\"download\" we mean not just the L</guestfs_download> command but any "
31962 "command that reads files, filenames, directories or anything else from a "
31963 "disk image).  An attacker could manipulate the data to fool your program "
31964 "into doing the wrong thing.  Consider cases such as:"
31965 msgstr ""
31966
31967 #. type: textblock
31968 #: ../src/guestfs.pod:1136
31969 msgid "the data (file etc) not being present"
31970 msgstr ""
31971
31972 #. type: textblock
31973 #: ../src/guestfs.pod:1140
31974 msgid "being present but empty"
31975 msgstr ""
31976
31977 #. type: textblock
31978 #: ../src/guestfs.pod:1144
31979 msgid "being much larger than normal"
31980 msgstr ""
31981
31982 #. type: textblock
31983 #: ../src/guestfs.pod:1148
31984 msgid "containing arbitrary 8 bit data"
31985 msgstr ""
31986
31987 #. type: textblock
31988 #: ../src/guestfs.pod:1152
31989 msgid "being in an unexpected character encoding"
31990 msgstr ""
31991
31992 #. type: textblock
31993 #: ../src/guestfs.pod:1156
31994 msgid "containing homoglyphs."
31995 msgstr ""
31996
31997 #. type: =head2
31998 #: ../src/guestfs.pod:1160
31999 msgid "SECURITY OF MOUNTING FILESYSTEMS"
32000 msgstr ""
32001
32002 #. type: textblock
32003 #: ../src/guestfs.pod:1162
32004 msgid ""
32005 "When you mount a filesystem under Linux, mistakes in the kernel filesystem "
32006 "(VFS) module can sometimes be escalated into exploits by deliberately "
32007 "creating a malicious, malformed filesystem.  These exploits are very severe "
32008 "for two reasons.  Firstly there are very many filesystem drivers in the "
32009 "kernel, and many of them are infrequently used and not much developer "
32010 "attention has been paid to the code.  Linux userspace helps potential "
32011 "crackers by detecting the filesystem type and automatically choosing the "
32012 "right VFS driver, even if that filesystem type is obscure or unexpected for "
32013 "the administrator.  Secondly, a kernel-level exploit is like a local root "
32014 "exploit (worse in some ways), giving immediate and total access to the "
32015 "system right down to the hardware level."
32016 msgstr ""
32017
32018 #. type: textblock
32019 #: ../src/guestfs.pod:1175
32020 msgid ""
32021 "That explains why you should never mount a filesystem from an untrusted "
32022 "guest on your host kernel.  How about libguestfs? We run a Linux kernel "
32023 "inside a qemu virtual machine, usually running as a non-root user.  The "
32024 "attacker would need to write a filesystem which first exploited the kernel, "
32025 "and then exploited either qemu virtualization (eg. a faulty qemu driver) or "
32026 "the libguestfs protocol, and finally to be as serious as the host kernel "
32027 "exploit it would need to escalate its privileges to root.  This multi-step "
32028 "escalation, performed by a static piece of data, is thought to be extremely "
32029 "hard to do, although we never say 'never' about security issues."
32030 msgstr ""
32031
32032 #. type: textblock
32033 #: ../src/guestfs.pod:1186
32034 msgid ""
32035 "In any case callers can reduce the attack surface by forcing the filesystem "
32036 "type when mounting (use L</guestfs_mount_vfs>)."
32037 msgstr ""
32038
32039 #. type: =head2
32040 #: ../src/guestfs.pod:1189
32041 msgid "PROTOCOL SECURITY"
32042 msgstr ""
32043
32044 #. type: textblock
32045 #: ../src/guestfs.pod:1191
32046 msgid ""
32047 "The protocol is designed to be secure, being based on RFC 4506 (XDR)  with a "
32048 "defined upper message size.  However a program that uses libguestfs must "
32049 "also take care - for example you can write a program that downloads a binary "
32050 "from a disk image and executes it locally, and no amount of protocol "
32051 "security will save you from the consequences."
32052 msgstr ""
32053
32054 #. type: =head2
32055 #: ../src/guestfs.pod:1197
32056 msgid "INSPECTION SECURITY"
32057 msgstr ""
32058
32059 #. type: textblock
32060 #: ../src/guestfs.pod:1199
32061 msgid ""
32062 "Parts of the inspection API (see L</INSPECTION>) return untrusted strings "
32063 "directly from the guest, and these could contain any 8 bit data.  Callers "
32064 "should be careful to escape these before printing them to a structured file "
32065 "(for example, use HTML escaping if creating a web page)."
32066 msgstr ""
32067
32068 #. type: textblock
32069 #: ../src/guestfs.pod:1205
32070 msgid ""
32071 "Guest configuration may be altered in unusual ways by the administrator of "
32072 "the virtual machine, and may not reflect reality (particularly for untrusted "
32073 "or actively malicious guests).  For example we parse the hostname from "
32074 "configuration files like C</etc/sysconfig/network> that we find in the "
32075 "guest, but the guest administrator can easily manipulate these files to "
32076 "provide the wrong hostname."
32077 msgstr ""
32078
32079 #. type: textblock
32080 #: ../src/guestfs.pod:1213
32081 msgid ""
32082 "The inspection API parses guest configuration using two external libraries: "
32083 "Augeas (Linux configuration) and hivex (Windows Registry).  Both are "
32084 "designed to be robust in the face of malicious data, although denial of "
32085 "service attacks are still possible, for example with oversized configuration "
32086 "files."
32087 msgstr ""
32088
32089 #. type: =head2
32090 #: ../src/guestfs.pod:1219
32091 msgid "RUNNING UNTRUSTED GUEST COMMANDS"
32092 msgstr ""
32093
32094 #. type: textblock
32095 #: ../src/guestfs.pod:1221
32096 msgid ""
32097 "Be very cautious about running commands from the guest.  By running a "
32098 "command in the guest, you are giving CPU time to a binary that you do not "
32099 "control, under the same user account as the library, albeit wrapped in qemu "
32100 "virtualization.  More information and alternatives can be found in the "
32101 "section L</RUNNING COMMANDS>."
32102 msgstr ""
32103
32104 #. type: =head2
32105 #: ../src/guestfs.pod:1227
32106 msgid "CVE-2010-3851"
32107 msgstr ""
32108
32109 #. type: textblock
32110 #: ../src/guestfs.pod:1229
32111 msgid "https://bugzilla.redhat.com/642934"
32112 msgstr ""
32113
32114 #. type: textblock
32115 #: ../src/guestfs.pod:1231
32116 msgid ""
32117 "This security bug concerns the automatic disk format detection that qemu "
32118 "does on disk images."
32119 msgstr ""
32120
32121 #. type: textblock
32122 #: ../src/guestfs.pod:1234
32123 msgid ""
32124 "A raw disk image is just the raw bytes, there is no header.  Other disk "
32125 "images like qcow2 contain a special header.  Qemu deals with this by looking "
32126 "for one of the known headers, and if none is found then assuming the disk "
32127 "image must be raw."
32128 msgstr ""
32129
32130 #. type: textblock
32131 #: ../src/guestfs.pod:1239
32132 msgid ""
32133 "This allows a guest which has been given a raw disk image to write some "
32134 "other header.  At next boot (or when the disk image is accessed by "
32135 "libguestfs) qemu would do autodetection and think the disk image format was, "
32136 "say, qcow2 based on the header written by the guest."
32137 msgstr ""
32138
32139 #. type: textblock
32140 #: ../src/guestfs.pod:1244
32141 msgid ""
32142 "This in itself would not be a problem, but qcow2 offers many features, one "
32143 "of which is to allow a disk image to refer to another image (called the "
32144 "\"backing disk\").  It does this by placing the path to the backing disk "
32145 "into the qcow2 header.  This path is not validated and could point to any "
32146 "host file (eg. \"/etc/passwd\").  The backing disk is then exposed through "
32147 "\"holes\" in the qcow2 disk image, which of course is completely under the "
32148 "control of the attacker."
32149 msgstr ""
32150
32151 #. type: textblock
32152 #: ../src/guestfs.pod:1252
32153 msgid "In libguestfs this is rather hard to exploit except under two circumstances:"
32154 msgstr ""
32155
32156 #. type: textblock
32157 #: ../src/guestfs.pod:1259
32158 msgid "You have enabled the network or have opened the disk in write mode."
32159 msgstr ""
32160
32161 #. type: textblock
32162 #: ../src/guestfs.pod:1263
32163 msgid ""
32164 "You are also running untrusted code from the guest (see L</RUNNING "
32165 "COMMANDS>)."
32166 msgstr ""
32167
32168 #. type: textblock
32169 #: ../src/guestfs.pod:1268
32170 msgid ""
32171 "The way to avoid this is to specify the expected disk format when adding "
32172 "disks (the optional C<format> option to L</guestfs_add_drive_opts>).  You "
32173 "should always do this if the disk is raw format, and it's a good idea for "
32174 "other cases too."
32175 msgstr ""
32176
32177 #. type: textblock
32178 #: ../src/guestfs.pod:1273
32179 msgid ""
32180 "For disks added from libvirt using calls like L</guestfs_add_domain>, the "
32181 "format is fetched from libvirt and passed through."
32182 msgstr ""
32183
32184 #. type: textblock
32185 #: ../src/guestfs.pod:1276
32186 msgid ""
32187 "For libguestfs tools, use the I<--format> command line parameter as "
32188 "appropriate."
32189 msgstr ""
32190
32191 #. type: =head1
32192 #: ../src/guestfs.pod:1279
32193 msgid "CONNECTION MANAGEMENT"
32194 msgstr ""
32195
32196 #. type: =head2
32197 #: ../src/guestfs.pod:1281
32198 msgid "guestfs_h *"
32199 msgstr ""
32200
32201 #. type: textblock
32202 #: ../src/guestfs.pod:1283
32203 msgid ""
32204 "C<guestfs_h> is the opaque type representing a connection handle.  Create a "
32205 "handle by calling L</guestfs_create>.  Call L</guestfs_close> to free the "
32206 "handle and release all resources used."
32207 msgstr ""
32208
32209 #. type: textblock
32210 #: ../src/guestfs.pod:1287
32211 msgid ""
32212 "For information on using multiple handles and threads, see the section "
32213 "L</MULTIPLE HANDLES AND MULTIPLE THREADS> above."
32214 msgstr ""
32215
32216 #. type: =head2
32217 #: ../src/guestfs.pod:1290
32218 msgid "guestfs_create"
32219 msgstr ""
32220
32221 #. type: verbatim
32222 #: ../src/guestfs.pod:1292
32223 #, no-wrap
32224 msgid ""
32225 " guestfs_h *guestfs_create (void);\n"
32226 "\n"
32227 msgstr ""
32228
32229 #. type: textblock
32230 #: ../src/guestfs.pod:1294
32231 msgid "Create a connection handle."
32232 msgstr ""
32233
32234 #. type: textblock
32235 #: ../src/guestfs.pod:1296
32236 msgid ""
32237 "On success this returns a non-NULL pointer to a handle.  On error it returns "
32238 "NULL."
32239 msgstr ""
32240
32241 #. type: textblock
32242 #: ../src/guestfs.pod:1299
32243 msgid ""
32244 "You have to \"configure\" the handle after creating it.  This includes "
32245 "calling L</guestfs_add_drive_opts> (or one of the equivalent calls) on the "
32246 "handle at least once."
32247 msgstr ""
32248
32249 #. type: textblock
32250 #: ../src/guestfs.pod:1303
32251 msgid "After configuring the handle, you have to call L</guestfs_launch>."
32252 msgstr ""
32253
32254 #. type: textblock
32255 #: ../src/guestfs.pod:1305
32256 msgid ""
32257 "You may also want to configure error handling for the handle.  See the "
32258 "L</ERROR HANDLING> section below."
32259 msgstr ""
32260
32261 #. type: =head2
32262 #: ../src/guestfs.pod:1308
32263 msgid "guestfs_close"
32264 msgstr ""
32265
32266 #. type: verbatim
32267 #: ../src/guestfs.pod:1310
32268 #, no-wrap
32269 msgid ""
32270 " void guestfs_close (guestfs_h *g);\n"
32271 "\n"
32272 msgstr ""
32273
32274 #. type: textblock
32275 #: ../src/guestfs.pod:1312
32276 msgid "This closes the connection handle and frees up all resources used."
32277 msgstr ""
32278
32279 #. type: textblock
32280 #: ../src/guestfs.pod:1314
32281 msgid ""
32282 "If autosync was set on the handle and the handle was launched, then this "
32283 "implicitly calls various functions to unmount filesystems and sync the "
32284 "disk.  See L</guestfs_set_autosync> for more details."
32285 msgstr ""
32286
32287 #. type: textblock
32288 #: ../src/guestfs.pod:1318
32289 msgid "If a close callback was set on the handle, then it is called."
32290 msgstr ""
32291
32292 #. type: =head1
32293 #: ../src/guestfs.pod:1320
32294 msgid "ERROR HANDLING"
32295 msgstr ""
32296
32297 #. type: textblock
32298 #: ../src/guestfs.pod:1322
32299 msgid ""
32300 "API functions can return errors.  For example, almost all functions that "
32301 "return C<int> will return C<-1> to indicate an error."
32302 msgstr ""
32303
32304 #. type: textblock
32305 #: ../src/guestfs.pod:1325
32306 msgid ""
32307 "Additional information is available for errors: an error message string and "
32308 "optionally an error number (errno) if the thing that failed was a system "
32309 "call."
32310 msgstr ""
32311
32312 #. type: textblock
32313 #: ../src/guestfs.pod:1329
32314 msgid ""
32315 "You can get at the additional information about the last error on the handle "
32316 "by calling L</guestfs_last_error>, L</guestfs_last_errno>, and/or by setting "
32317 "up an error handler with L</guestfs_set_error_handler>."
32318 msgstr ""
32319
32320 #. type: textblock
32321 #: ../src/guestfs.pod:1334
32322 msgid ""
32323 "When the handle is created, a default error handler is installed which "
32324 "prints the error message string to C<stderr>.  For small short-running "
32325 "command line programs it is sufficient to do:"
32326 msgstr ""
32327
32328 #. type: verbatim
32329 #: ../src/guestfs.pod:1338
32330 #, no-wrap
32331 msgid ""
32332 " if (guestfs_launch (g) == -1)\n"
32333 "   exit (EXIT_FAILURE);\n"
32334 "\n"
32335 msgstr ""
32336
32337 #. type: textblock
32338 #: ../src/guestfs.pod:1341
32339 msgid ""
32340 "since the default error handler will ensure that an error message has been "
32341 "printed to C<stderr> before the program exits."
32342 msgstr ""
32343
32344 #. type: textblock
32345 #: ../src/guestfs.pod:1344
32346 msgid ""
32347 "For other programs the caller will almost certainly want to install an "
32348 "alternate error handler or do error handling in-line like this:"
32349 msgstr ""
32350
32351 #. type: verbatim
32352 #: ../src/guestfs.pod:1347
32353 #, no-wrap
32354 msgid ""
32355 " g = guestfs_create ();\n"
32356 " \n"
32357 msgstr ""
32358
32359 #. type: verbatim
32360 #: ../src/guestfs.pod:1349
32361 #, no-wrap
32362 msgid ""
32363 " /* This disables the default behaviour of printing errors\n"
32364 "    on stderr. */\n"
32365 " guestfs_set_error_handler (g, NULL, NULL);\n"
32366 " \n"
32367 msgstr ""
32368
32369 #. type: verbatim
32370 #: ../src/guestfs.pod:1353
32371 #, no-wrap
32372 msgid ""
32373 " if (guestfs_launch (g) == -1) {\n"
32374 "   /* Examine the error message and print it etc. */\n"
32375 "   char *msg = guestfs_last_error (g);\n"
32376 "   int errnum = guestfs_last_errno (g);\n"
32377 "   fprintf (stderr, \"%s\\n\", msg);\n"
32378 "   /* ... */\n"
32379 "  }\n"
32380 "\n"
32381 msgstr ""
32382
32383 #. type: textblock
32384 #: ../src/guestfs.pod:1361
32385 msgid ""
32386 "Out of memory errors are handled differently.  The default action is to call "
32387 "L<abort(3)>.  If this is undesirable, then you can set a handler using "
32388 "L</guestfs_set_out_of_memory_handler>."
32389 msgstr ""
32390
32391 #. type: textblock
32392 #: ../src/guestfs.pod:1365
32393 msgid ""
32394 "L</guestfs_create> returns C<NULL> if the handle cannot be created, and "
32395 "because there is no handle if this happens there is no way to get additional "
32396 "error information.  However L</guestfs_create> is supposed to be a "
32397 "lightweight operation which can only fail because of insufficient memory (it "
32398 "returns NULL in this case)."
32399 msgstr ""
32400
32401 #. type: =head2
32402 #: ../src/guestfs.pod:1371
32403 msgid "guestfs_last_error"
32404 msgstr ""
32405
32406 #. type: verbatim
32407 #: ../src/guestfs.pod:1373
32408 #, no-wrap
32409 msgid ""
32410 " const char *guestfs_last_error (guestfs_h *g);\n"
32411 "\n"
32412 msgstr ""
32413
32414 #. type: textblock
32415 #: ../src/guestfs.pod:1375
32416 msgid ""
32417 "This returns the last error message that happened on C<g>.  If there has not "
32418 "been an error since the handle was created, then this returns C<NULL>."
32419 msgstr ""
32420
32421 #. type: textblock
32422 #: ../src/guestfs.pod:1379
32423 msgid ""
32424 "The lifetime of the returned string is until the next error occurs, or "
32425 "L</guestfs_close> is called."
32426 msgstr ""
32427
32428 #. type: =head2
32429 #: ../src/guestfs.pod:1382
32430 msgid "guestfs_last_errno"
32431 msgstr ""
32432
32433 #. type: verbatim
32434 #: ../src/guestfs.pod:1384
32435 #, no-wrap
32436 msgid ""
32437 " int guestfs_last_errno (guestfs_h *g);\n"
32438 "\n"
32439 msgstr ""
32440
32441 #. type: textblock
32442 #: ../src/guestfs.pod:1386
32443 msgid "This returns the last error number (errno) that happened on C<g>."
32444 msgstr ""
32445
32446 #. type: textblock
32447 #: ../src/guestfs.pod:1388
32448 msgid "If successful, an errno integer not equal to zero is returned."
32449 msgstr ""
32450
32451 #. type: textblock
32452 #: ../src/guestfs.pod:1390
32453 msgid "If no error, this returns 0.  This call can return 0 in three situations:"
32454 msgstr ""
32455
32456 #. type: textblock
32457 #: ../src/guestfs.pod:1397
32458 msgid "There has not been any error on the handle."
32459 msgstr ""
32460
32461 #. type: textblock
32462 #: ../src/guestfs.pod:1401
32463 msgid ""
32464 "There has been an error but the errno was meaningless.  This corresponds to "
32465 "the case where the error did not come from a failed system call, but for "
32466 "some other reason."
32467 msgstr ""
32468
32469 #. type: textblock
32470 #: ../src/guestfs.pod:1407
32471 msgid ""
32472 "There was an error from a failed system call, but for some reason the errno "
32473 "was not captured and returned.  This usually indicates a bug in libguestfs."
32474 msgstr ""
32475
32476 #. type: textblock
32477 #: ../src/guestfs.pod:1413
32478 msgid ""
32479 "Libguestfs tries to convert the errno from inside the applicance into a "
32480 "corresponding errno for the caller (not entirely trivial: the appliance "
32481 "might be running a completely different operating system from the library "
32482 "and error numbers are not standardized across Un*xen).  If this could not be "
32483 "done, then the error is translated to C<EINVAL>.  In practice this should "
32484 "only happen in very rare circumstances."
32485 msgstr ""
32486
32487 #. type: =head2
32488 #: ../src/guestfs.pod:1421
32489 msgid "guestfs_set_error_handler"
32490 msgstr ""
32491
32492 #. type: verbatim
32493 #: ../src/guestfs.pod:1423
32494 #, no-wrap
32495 msgid ""
32496 " typedef void (*guestfs_error_handler_cb) (guestfs_h *g,\n"
32497 "                                           void *opaque,\n"
32498 "                                           const char *msg);\n"
32499 " void guestfs_set_error_handler (guestfs_h *g,\n"
32500 "                                 guestfs_error_handler_cb cb,\n"
32501 "                                 void *opaque);\n"
32502 "\n"
32503 msgstr ""
32504
32505 #. type: textblock
32506 #: ../src/guestfs.pod:1430
32507 msgid ""
32508 "The callback C<cb> will be called if there is an error.  The parameters "
32509 "passed to the callback are an opaque data pointer and the error message "
32510 "string."
32511 msgstr ""
32512
32513 #. type: textblock
32514 #: ../src/guestfs.pod:1434
32515 msgid ""
32516 "C<errno> is not passed to the callback.  To get that the callback must call "
32517 "L</guestfs_last_errno>."
32518 msgstr ""
32519
32520 #. type: textblock
32521 #: ../src/guestfs.pod:1437
32522 msgid ""
32523 "Note that the message string C<msg> is freed as soon as the callback "
32524 "function returns, so if you want to stash it somewhere you must make your "
32525 "own copy."
32526 msgstr ""
32527
32528 #. type: textblock
32529 #: ../src/guestfs.pod:1441
32530 msgid "The default handler prints messages on C<stderr>."
32531 msgstr ""
32532
32533 #. type: textblock
32534 #: ../src/guestfs.pod:1443
32535 msgid "If you set C<cb> to C<NULL> then I<no> handler is called."
32536 msgstr ""
32537
32538 #. type: =head2
32539 #: ../src/guestfs.pod:1445
32540 msgid "guestfs_get_error_handler"
32541 msgstr ""
32542
32543 #. type: verbatim
32544 #: ../src/guestfs.pod:1447
32545 #, no-wrap
32546 msgid ""
32547 " guestfs_error_handler_cb guestfs_get_error_handler (guestfs_h *g,\n"
32548 "                                                     void **opaque_rtn);\n"
32549 "\n"
32550 msgstr ""
32551
32552 #. type: textblock
32553 #: ../src/guestfs.pod:1450
32554 msgid "Returns the current error handler callback."
32555 msgstr ""
32556
32557 #. type: =head2
32558 #: ../src/guestfs.pod:1452
32559 msgid "guestfs_set_out_of_memory_handler"
32560 msgstr ""
32561
32562 #. type: verbatim
32563 #: ../src/guestfs.pod:1454
32564 #, no-wrap
32565 msgid ""
32566 " typedef void (*guestfs_abort_cb) (void);\n"
32567 " int guestfs_set_out_of_memory_handler (guestfs_h *g,\n"
32568 "                                        guestfs_abort_cb);\n"
32569 "\n"
32570 msgstr ""
32571
32572 #. type: textblock
32573 #: ../src/guestfs.pod:1458
32574 msgid ""
32575 "The callback C<cb> will be called if there is an out of memory situation.  "
32576 "I<Note this callback must not return>."
32577 msgstr ""
32578
32579 #. type: textblock
32580 #: ../src/guestfs.pod:1461
32581 msgid "The default is to call L<abort(3)>."
32582 msgstr ""
32583
32584 #. type: textblock
32585 #: ../src/guestfs.pod:1463
32586 msgid "You cannot set C<cb> to C<NULL>.  You can't ignore out of memory situations."
32587 msgstr ""
32588
32589 #. type: =head2
32590 #: ../src/guestfs.pod:1466
32591 msgid "guestfs_get_out_of_memory_handler"
32592 msgstr ""
32593
32594 #. type: verbatim
32595 #: ../src/guestfs.pod:1468
32596 #, no-wrap
32597 msgid ""
32598 " guestfs_abort_fn guestfs_get_out_of_memory_handler (guestfs_h *g);\n"
32599 "\n"
32600 msgstr ""
32601
32602 #. type: textblock
32603 #: ../src/guestfs.pod:1470
32604 msgid "This returns the current out of memory handler."
32605 msgstr ""
32606
32607 #. type: =head1
32608 #: ../src/guestfs.pod:1472
32609 msgid "API CALLS"
32610 msgstr ""
32611
32612 #. type: =head1
32613 #: ../src/guestfs.pod:1476
32614 msgid "STRUCTURES"
32615 msgstr ""
32616
32617 #. type: textblock
32618 #: ../src/guestfs.pod:1478
32619 msgid "@STRUCTS@"
32620 msgstr ""
32621
32622 #. type: =head1
32623 #: ../src/guestfs.pod:1480
32624 msgid "AVAILABILITY"
32625 msgstr ""
32626
32627 #. type: =head2
32628 #: ../src/guestfs.pod:1482
32629 msgid "GROUPS OF FUNCTIONALITY IN THE APPLIANCE"
32630 msgstr ""
32631
32632 #. type: textblock
32633 #: ../src/guestfs.pod:1484
32634 msgid ""
32635 "Using L</guestfs_available> you can test availability of the following "
32636 "groups of functions.  This test queries the appliance to see if the "
32637 "appliance you are currently using supports the functionality."
32638 msgstr ""
32639
32640 #. type: textblock
32641 #: ../src/guestfs.pod:1489
32642 msgid "@AVAILABILITY@"
32643 msgstr ""
32644
32645 #. type: =head2
32646 #: ../src/guestfs.pod:1491
32647 msgid "GUESTFISH supported COMMAND"
32648 msgstr ""
32649
32650 #. type: textblock
32651 #: ../src/guestfs.pod:1493
32652 msgid ""
32653 "In L<guestfish(3)> there is a handy interactive command C<supported> which "
32654 "prints out the available groups and whether they are supported by this build "
32655 "of libguestfs.  Note however that you have to do C<run> first."
32656 msgstr ""
32657
32658 #. type: =head2
32659 #: ../src/guestfs.pod:1498
32660 msgid "SINGLE CALLS AT COMPILE TIME"
32661 msgstr ""
32662
32663 #. type: textblock
32664 #: ../src/guestfs.pod:1500
32665 msgid ""
32666 "Since version 1.5.8, C<E<lt>guestfs.hE<gt>> defines symbols for each C API "
32667 "function, such as:"
32668 msgstr ""
32669
32670 #. type: verbatim
32671 #: ../src/guestfs.pod:1503
32672 #, no-wrap
32673 msgid ""
32674 " #define LIBGUESTFS_HAVE_DD 1\n"
32675 "\n"
32676 msgstr ""
32677
32678 #. type: textblock
32679 #: ../src/guestfs.pod:1505
32680 msgid "if L</guestfs_dd> is available."
32681 msgstr ""
32682
32683 #. type: textblock
32684 #: ../src/guestfs.pod:1507
32685 msgid ""
32686 "Before version 1.5.8, if you needed to test whether a single libguestfs "
32687 "function is available at compile time, we recommended using build tools such "
32688 "as autoconf or cmake.  For example in autotools you could use:"
32689 msgstr ""
32690
32691 #. type: verbatim
32692 #: ../src/guestfs.pod:1512
32693 #, no-wrap
32694 msgid ""
32695 " AC_CHECK_LIB([guestfs],[guestfs_create])\n"
32696 " AC_CHECK_FUNCS([guestfs_dd])\n"
32697 "\n"
32698 msgstr ""
32699
32700 #. type: textblock
32701 #: ../src/guestfs.pod:1515
32702 msgid ""
32703 "which would result in C<HAVE_GUESTFS_DD> being either defined or not defined "
32704 "in your program."
32705 msgstr ""
32706
32707 #. type: =head2
32708 #: ../src/guestfs.pod:1518
32709 msgid "SINGLE CALLS AT RUN TIME"
32710 msgstr ""
32711
32712 #. type: textblock
32713 #: ../src/guestfs.pod:1520
32714 msgid ""
32715 "Testing at compile time doesn't guarantee that a function really exists in "
32716 "the library.  The reason is that you might be dynamically linked against a "
32717 "previous I<libguestfs.so> (dynamic library)  which doesn't have the call.  "
32718 "This situation unfortunately results in a segmentation fault, which is a "
32719 "shortcoming of the C dynamic linking system itself."
32720 msgstr ""
32721
32722 #. type: textblock
32723 #: ../src/guestfs.pod:1527
32724 msgid ""
32725 "You can use L<dlopen(3)> to test if a function is available at run time, as "
32726 "in this example program (note that you still need the compile time check as "
32727 "well):"
32728 msgstr ""
32729
32730 #. type: verbatim
32731 #: ../src/guestfs.pod:1531
32732 #, no-wrap
32733 msgid ""
32734 " #include <stdio.h>\n"
32735 " #include <stdlib.h>\n"
32736 " #include <unistd.h>\n"
32737 " #include <dlfcn.h>\n"
32738 " #include <guestfs.h>\n"
32739 " \n"
32740 msgstr ""
32741
32742 #. type: verbatim
32743 #: ../src/guestfs.pod:1537
32744 #, no-wrap
32745 msgid ""
32746 " main ()\n"
32747 " {\n"
32748 " #ifdef LIBGUESTFS_HAVE_DD\n"
32749 "   void *dl;\n"
32750 "   int has_function;\n"
32751 " \n"
32752 msgstr ""
32753
32754 #. type: verbatim
32755 #: ../src/guestfs.pod:1543
32756 #, no-wrap
32757 msgid ""
32758 "   /* Test if the function guestfs_dd is really available. */\n"
32759 "   dl = dlopen (NULL, RTLD_LAZY);\n"
32760 "   if (!dl) {\n"
32761 "     fprintf (stderr, \"dlopen: %s\\n\", dlerror ());\n"
32762 "     exit (EXIT_FAILURE);\n"
32763 "   }\n"
32764 "   has_function = dlsym (dl, \"guestfs_dd\") != NULL;\n"
32765 "   dlclose (dl);\n"
32766 " \n"
32767 msgstr ""
32768
32769 #. type: verbatim
32770 #: ../src/guestfs.pod:1552
32771 #, no-wrap
32772 msgid ""
32773 "   if (!has_function)\n"
32774 "     printf (\"this libguestfs.so does NOT have guestfs_dd function\\n\");\n"
32775 "   else {\n"
32776 "     printf (\"this libguestfs.so has guestfs_dd function\\n\");\n"
32777 "     /* Now it's safe to call\n"
32778 "     guestfs_dd (g, \"foo\", \"bar\");\n"
32779 "     */\n"
32780 "   }\n"
32781 " #else\n"
32782 "   printf (\"guestfs_dd function was not found at compile time\\n\");\n"
32783 " #endif\n"
32784 "  }\n"
32785 "\n"
32786 msgstr ""
32787
32788 #. type: textblock
32789 #: ../src/guestfs.pod:1565
32790 msgid ""
32791 "You may think the above is an awful lot of hassle, and it is.  There are "
32792 "other ways outside of the C linking system to ensure that this kind of "
32793 "incompatibility never arises, such as using package versioning:"
32794 msgstr ""
32795
32796 #. type: verbatim
32797 #: ../src/guestfs.pod:1570
32798 #, no-wrap
32799 msgid ""
32800 " Requires: libguestfs >= 1.0.80\n"
32801 "\n"
32802 msgstr ""
32803
32804 #. type: =head1
32805 #: ../src/guestfs.pod:1572
32806 msgid "CALLS WITH OPTIONAL ARGUMENTS"
32807 msgstr ""
32808
32809 #. type: textblock
32810 #: ../src/guestfs.pod:1574
32811 msgid ""
32812 "A recent feature of the API is the introduction of calls which take optional "
32813 "arguments.  In C these are declared 3 ways.  The main way is as a call which "
32814 "takes variable arguments (ie. C<...>), as in this example:"
32815 msgstr ""
32816
32817 #. type: verbatim
32818 #: ../src/guestfs.pod:1579
32819 #, no-wrap
32820 msgid ""
32821 " int guestfs_add_drive_opts (guestfs_h *g, const char *filename, ...);\n"
32822 "\n"
32823 msgstr ""
32824
32825 #. type: textblock
32826 #: ../src/guestfs.pod:1581
32827 msgid ""
32828 "Call this with a list of optional arguments, terminated by C<-1>.  So to "
32829 "call with no optional arguments specified:"
32830 msgstr ""
32831
32832 #. type: verbatim
32833 #: ../src/guestfs.pod:1584
32834 #, no-wrap
32835 msgid ""
32836 " guestfs_add_drive_opts (g, filename, -1);\n"
32837 "\n"
32838 msgstr ""
32839
32840 #. type: textblock
32841 #: ../src/guestfs.pod:1586
32842 msgid "With a single optional argument:"
32843 msgstr ""
32844
32845 #. type: verbatim
32846 #: ../src/guestfs.pod:1588
32847 #, no-wrap
32848 msgid ""
32849 " guestfs_add_drive_opts (g, filename,\n"
32850 "                         GUESTFS_ADD_DRIVE_OPTS_FORMAT, \"qcow2\",\n"
32851 "                         -1);\n"
32852 "\n"
32853 msgstr ""
32854
32855 #. type: textblock
32856 #: ../src/guestfs.pod:1592
32857 msgid "With two:"
32858 msgstr ""
32859
32860 #. type: verbatim
32861 #: ../src/guestfs.pod:1594
32862 #, no-wrap
32863 msgid ""
32864 " guestfs_add_drive_opts (g, filename,\n"
32865 "                         GUESTFS_ADD_DRIVE_OPTS_FORMAT, \"qcow2\",\n"
32866 "                         GUESTFS_ADD_DRIVE_OPTS_READONLY, 1,\n"
32867 "                         -1);\n"
32868 "\n"
32869 msgstr ""
32870
32871 #. type: textblock
32872 #: ../src/guestfs.pod:1599
32873 msgid ""
32874 "and so forth.  Don't forget the terminating C<-1> otherwise Bad Things will "
32875 "happen!"
32876 msgstr ""
32877
32878 #. type: =head2
32879 #: ../src/guestfs.pod:1602
32880 msgid "USING va_list FOR OPTIONAL ARGUMENTS"
32881 msgstr ""
32882
32883 #. type: textblock
32884 #: ../src/guestfs.pod:1604
32885 msgid ""
32886 "The second variant has the same name with the suffix C<_va>, which works the "
32887 "same way but takes a C<va_list>.  See the C manual for details.  For the "
32888 "example function, this is declared:"
32889 msgstr ""
32890
32891 #. type: verbatim
32892 #: ../src/guestfs.pod:1608
32893 #, no-wrap
32894 msgid ""
32895 " int guestfs_add_drive_opts_va (guestfs_h *g, const char *filename,\n"
32896 "                                va_list args);\n"
32897 "\n"
32898 msgstr ""
32899
32900 #. type: =head2
32901 #: ../src/guestfs.pod:1611
32902 msgid "CONSTRUCTING OPTIONAL ARGUMENTS"
32903 msgstr ""
32904
32905 #. type: textblock
32906 #: ../src/guestfs.pod:1613
32907 msgid ""
32908 "The third variant is useful where you need to construct these calls.  You "
32909 "pass in a structure where you fill in the optional fields.  The structure "
32910 "has a bitmask as the first element which you must set to indicate which "
32911 "fields you have filled in.  For our example function the structure and call "
32912 "are declared:"
32913 msgstr ""
32914
32915 #. type: verbatim
32916 #: ../src/guestfs.pod:1619
32917 #, no-wrap
32918 msgid ""
32919 " struct guestfs_add_drive_opts_argv {\n"
32920 "   uint64_t bitmask;\n"
32921 "   int readonly;\n"
32922 "   const char *format;\n"
32923 "   /* ... */\n"
32924 " };\n"
32925 " int guestfs_add_drive_opts_argv (guestfs_h *g, const char *filename,\n"
32926 "              const struct guestfs_add_drive_opts_argv *optargs);\n"
32927 "\n"
32928 msgstr ""
32929
32930 #. type: textblock
32931 #: ../src/guestfs.pod:1628
32932 msgid "You could call it like this:"
32933 msgstr ""
32934
32935 #. type: verbatim
32936 #: ../src/guestfs.pod:1630
32937 #, no-wrap
32938 msgid ""
32939 " struct guestfs_add_drive_opts_argv optargs = {\n"
32940 "   .bitmask = GUESTFS_ADD_DRIVE_OPTS_READONLY_BITMASK |\n"
32941 "              GUESTFS_ADD_DRIVE_OPTS_FORMAT_BITMASK,\n"
32942 "   .readonly = 1,\n"
32943 "   .format = \"qcow2\"\n"
32944 " };\n"
32945 " \n"
32946 msgstr ""
32947
32948 #. type: verbatim
32949 #: ../src/guestfs.pod:1637
32950 #, no-wrap
32951 msgid ""
32952 " guestfs_add_drive_opts_argv (g, filename, &optargs);\n"
32953 "\n"
32954 msgstr ""
32955
32956 #. type: textblock
32957 #: ../src/guestfs.pod:1645
32958 msgid "The C<_BITMASK> suffix on each option name when specifying the bitmask."
32959 msgstr ""
32960
32961 #. type: textblock
32962 #: ../src/guestfs.pod:1650
32963 msgid "You do not need to fill in all fields of the structure."
32964 msgstr ""
32965
32966 #. type: textblock
32967 #: ../src/guestfs.pod:1654
32968 msgid ""
32969 "There must be a one-to-one correspondence between fields of the structure "
32970 "that are filled in, and bits set in the bitmask."
32971 msgstr ""
32972
32973 #. type: =head2
32974 #: ../src/guestfs.pod:1659
32975 msgid "OPTIONAL ARGUMENTS IN OTHER LANGUAGES"
32976 msgstr ""
32977
32978 #. type: textblock
32979 #: ../src/guestfs.pod:1661
32980 msgid ""
32981 "In other languages, optional arguments are expressed in the way that is "
32982 "natural for that language.  We refer you to the language-specific "
32983 "documentation for more details on that."
32984 msgstr ""
32985
32986 #. type: textblock
32987 #: ../src/guestfs.pod:1665
32988 msgid "For guestfish, see L<guestfish(1)/OPTIONAL ARGUMENTS>."
32989 msgstr ""
32990
32991 #. type: =head2
32992 #: ../src/guestfs.pod:1667
32993 msgid "SETTING CALLBACKS TO HANDLE EVENTS"
32994 msgstr ""
32995
32996 #. type: textblock
32997 #: ../src/guestfs.pod:1669
32998 msgid ""
32999 "B<Note:> This section documents the generic event mechanism introduced in "
33000 "libguestfs 1.10, which you should use in new code if possible.  The old "
33001 "functions C<guestfs_set_log_message_callback>, "
33002 "C<guestfs_set_subprocess_quit_callback>, "
33003 "C<guestfs_set_launch_done_callback>, C<guestfs_set_close_callback> and "
33004 "C<guestfs_set_progress_callback> are no longer documented in this manual "
33005 "page.  Because of the ABI guarantee, the old functions continue to work."
33006 msgstr ""
33007
33008 #. type: textblock
33009 #: ../src/guestfs.pod:1678
33010 msgid ""
33011 "Handles generate events when certain things happen, such as log messages "
33012 "being generated, progress messages during long-running operations, or the "
33013 "handle being closed.  The API calls described below let you register a "
33014 "callback to be called when events happen.  You can register multiple "
33015 "callbacks (for the same, different or overlapping sets of events), and "
33016 "individually remove callbacks.  If callbacks are not removed, then they "
33017 "remain in force until the handle is closed."
33018 msgstr ""
33019
33020 #. type: textblock
33021 #: ../src/guestfs.pod:1686
33022 msgid ""
33023 "In the current implementation, events are only generated synchronously: that "
33024 "means that events (and hence callbacks) can only happen while you are in the "
33025 "middle of making another libguestfs call.  The callback is called in the "
33026 "same thread."
33027 msgstr ""
33028
33029 #. type: textblock
33030 #: ../src/guestfs.pod:1691
33031 msgid ""
33032 "Events may contain a payload, usually nothing (void), an array of 64 bit "
33033 "unsigned integers, or a message buffer.  Payloads are discussed later on."
33034 msgstr ""
33035
33036 #. type: =head3
33037 #: ../src/guestfs.pod:1695
33038 msgid "CLASSES OF EVENTS"
33039 msgstr ""
33040
33041 #. type: =item
33042 #: ../src/guestfs.pod:1699
33043 msgid "GUESTFS_EVENT_CLOSE (payload type: void)"
33044 msgstr ""
33045
33046 #. type: textblock
33047 #: ../src/guestfs.pod:1702
33048 msgid ""
33049 "The callback function will be called while the handle is being closed "
33050 "(synchronously from L</guestfs_close>)."
33051 msgstr ""
33052
33053 #. type: textblock
33054 #: ../src/guestfs.pod:1705
33055 msgid ""
33056 "Note that libguestfs installs an L<atexit(3)> handler to try to clean up "
33057 "handles that are open when the program exits.  This means that this callback "
33058 "might be called indirectly from L<exit(3)>, which can cause unexpected "
33059 "problems in higher-level languages (eg. if your HLL interpreter has already "
33060 "been cleaned up by the time this is called, and if your callback then jumps "
33061 "into some HLL function)."
33062 msgstr ""
33063
33064 #. type: textblock
33065 #: ../src/guestfs.pod:1712
33066 msgid ""
33067 "If no callback is registered: the handle is closed without any callback "
33068 "being invoked."
33069 msgstr ""
33070
33071 #. type: =item
33072 #: ../src/guestfs.pod:1715
33073 msgid "GUESTFS_EVENT_SUBPROCESS_QUIT (payload type: void)"
33074 msgstr ""
33075
33076 #. type: textblock
33077 #: ../src/guestfs.pod:1718
33078 msgid ""
33079 "The callback function will be called when the child process quits, either "
33080 "asynchronously or if killed by L</guestfs_kill_subprocess>.  (This "
33081 "corresponds to a transition from any state to the CONFIG state)."
33082 msgstr ""
33083
33084 #. type: textblock
33085 #: ../src/guestfs.pod:1722 ../src/guestfs.pod:1731
33086 msgid "If no callback is registered: the event is ignored."
33087 msgstr ""
33088
33089 #. type: =item
33090 #: ../src/guestfs.pod:1724
33091 msgid "GUESTFS_EVENT_LAUNCH_DONE (payload type: void)"
33092 msgstr ""
33093
33094 #. type: textblock
33095 #: ../src/guestfs.pod:1727
33096 msgid ""
33097 "The callback function will be called when the child process becomes ready "
33098 "first time after it has been launched.  (This corresponds to a transition "
33099 "from LAUNCHING to the READY state)."
33100 msgstr ""
33101
33102 #. type: =item
33103 #: ../src/guestfs.pod:1733
33104 msgid "GUESTFS_EVENT_PROGRESS (payload type: array of 4 x uint64_t)"
33105 msgstr ""
33106
33107 #. type: textblock
33108 #: ../src/guestfs.pod:1736
33109 msgid ""
33110 "Some long-running operations can generate progress messages.  If this "
33111 "callback is registered, then it will be called each time a progress message "
33112 "is generated (usually two seconds after the operation started, and three "
33113 "times per second thereafter until it completes, although the frequency may "
33114 "change in future versions)."
33115 msgstr ""
33116
33117 #. type: textblock
33118 #: ../src/guestfs.pod:1742
33119 msgid ""
33120 "The callback receives in the payload four unsigned 64 bit numbers which are "
33121 "(in order): C<proc_nr>, C<serial>, C<position>, C<total>."
33122 msgstr ""
33123
33124 #. type: textblock
33125 #: ../src/guestfs.pod:1745
33126 msgid ""
33127 "The units of C<total> are not defined, although for some operations C<total> "
33128 "may relate in some way to the amount of data to be transferred (eg. in bytes "
33129 "or megabytes), and C<position> may be the portion which has been "
33130 "transferred."
33131 msgstr ""
33132
33133 #. type: textblock
33134 #: ../src/guestfs.pod:1750
33135 msgid "The only defined and stable parts of the API are:"
33136 msgstr ""
33137
33138 #. type: textblock
33139 #: ../src/guestfs.pod:1756
33140 msgid ""
33141 "The callback can display to the user some type of progress bar or indicator "
33142 "which shows the ratio of C<position>:C<total>."
33143 msgstr ""
33144
33145 #. type: textblock
33146 #: ../src/guestfs.pod:1761
33147 msgid "0 E<lt>= C<position> E<lt>= C<total>"
33148 msgstr ""
33149
33150 #. type: textblock
33151 #: ../src/guestfs.pod:1765
33152 msgid ""
33153 "If any progress notification is sent during a call, then a final progress "
33154 "notification is always sent when C<position> = C<total> (I<unless> the call "
33155 "fails with an error)."
33156 msgstr ""
33157
33158 #. type: textblock
33159 #: ../src/guestfs.pod:1769
33160 msgid ""
33161 "This is to simplify caller code, so callers can easily set the progress "
33162 "indicator to \"100%\" at the end of the operation, without requiring special "
33163 "code to detect this case."
33164 msgstr ""
33165
33166 #. type: textblock
33167 #: ../src/guestfs.pod:1775
33168 msgid ""
33169 "For some calls we are unable to estimate the progress of the call, but we "
33170 "can still generate progress messages to indicate activity.  This is known as "
33171 "\"pulse mode\", and is directly supported by certain progress bar "
33172 "implementations (eg. GtkProgressBar)."
33173 msgstr ""
33174
33175 #. type: textblock
33176 #: ../src/guestfs.pod:1780
33177 msgid ""
33178 "For these calls, zero or more progress messages are generated with "
33179 "C<position = 0> and C<total = 1>, followed by a final message with "
33180 "C<position = total = 1>."
33181 msgstr ""
33182
33183 #. type: textblock
33184 #: ../src/guestfs.pod:1784
33185 msgid ""
33186 "As noted above, if the call fails with an error then the final message may "
33187 "not be generated."
33188 msgstr ""
33189
33190 #. type: textblock
33191 #: ../src/guestfs.pod:1789
33192 msgid ""
33193 "The callback also receives the procedure number (C<proc_nr>) and serial "
33194 "number (C<serial>) of the call.  These are only useful for debugging "
33195 "protocol issues, and the callback can normally ignore them.  The callback "
33196 "may want to print these numbers in error messages or debugging messages."
33197 msgstr ""
33198
33199 #. type: textblock
33200 #: ../src/guestfs.pod:1795
33201 msgid "If no callback is registered: progress messages are discarded."
33202 msgstr ""
33203
33204 #. type: =item
33205 #: ../src/guestfs.pod:1797
33206 msgid "GUESTFS_EVENT_APPLIANCE (payload type: message buffer)"
33207 msgstr ""
33208
33209 #. type: textblock
33210 #: ../src/guestfs.pod:1800
33211 msgid ""
33212 "The callback function is called whenever a log message is generated by qemu, "
33213 "the appliance kernel, guestfsd (daemon), or utility programs."
33214 msgstr ""
33215
33216 #. type: textblock
33217 #: ../src/guestfs.pod:1803
33218 msgid ""
33219 "If the verbose flag (L</guestfs_set_verbose>) is set before launch "
33220 "(L</guestfs_launch>) then additional debug messages are generated."
33221 msgstr ""
33222
33223 #. type: textblock
33224 #: ../src/guestfs.pod:1806 ../src/guestfs.pod:1820
33225 msgid ""
33226 "If no callback is registered: the messages are discarded unless the verbose "
33227 "flag is set in which case they are sent to stderr.  You can override the "
33228 "printing of verbose messages to stderr by setting up a callback."
33229 msgstr ""
33230
33231 #. type: =item
33232 #: ../src/guestfs.pod:1811
33233 msgid "GUESTFS_EVENT_LIBRARY (payload type: message buffer)"
33234 msgstr ""
33235
33236 #. type: textblock
33237 #: ../src/guestfs.pod:1814
33238 msgid ""
33239 "The callback function is called whenever a log message is generated by the "
33240 "library part of libguestfs."
33241 msgstr ""
33242
33243 #. type: textblock
33244 #: ../src/guestfs.pod:1817
33245 msgid ""
33246 "If the verbose flag (L</guestfs_set_verbose>) is set then additional debug "
33247 "messages are generated."
33248 msgstr ""
33249
33250 #. type: =item
33251 #: ../src/guestfs.pod:1825
33252 msgid "GUESTFS_EVENT_TRACE (payload type: message buffer)"
33253 msgstr ""
33254
33255 #. type: textblock
33256 #: ../src/guestfs.pod:1828
33257 msgid ""
33258 "The callback function is called whenever a trace message is generated.  This "
33259 "only applies if the trace flag (L</guestfs_set_trace>) is set."
33260 msgstr ""
33261
33262 #. type: textblock
33263 #: ../src/guestfs.pod:1831
33264 msgid ""
33265 "If no callback is registered: the messages are sent to stderr.  You can "
33266 "override the printing of trace messages to stderr by setting up a callback."
33267 msgstr ""
33268
33269 #. type: =head3
33270 #: ../src/guestfs.pod:1837
33271 msgid "guestfs_set_event_callback"
33272 msgstr ""
33273
33274 #. type: verbatim
33275 #: ../src/guestfs.pod:1839
33276 #, no-wrap
33277 msgid ""
33278 " int guestfs_set_event_callback (guestfs_h *g,\n"
33279 "                                 guestfs_event_callback cb,\n"
33280 "                                 uint64_t event_bitmask,\n"
33281 "                                 int flags,\n"
33282 "                                 void *opaque);\n"
33283 "\n"
33284 msgstr ""
33285
33286 #. type: textblock
33287 #: ../src/guestfs.pod:1845
33288 msgid ""
33289 "This function registers a callback (C<cb>) for all event classes in the "
33290 "C<event_bitmask>."
33291 msgstr ""
33292
33293 #. type: textblock
33294 #: ../src/guestfs.pod:1848
33295 msgid ""
33296 "For example, to register for all log message events, you could call this "
33297 "function with the bitmask C<GUESTFS_EVENT_APPLIANCE|GUESTFS_EVENT_LIBRARY>.  "
33298 "To register a single callback for all possible classes of events, use "
33299 "C<GUESTFS_EVENT_ALL>."
33300 msgstr ""
33301
33302 #. type: textblock
33303 #: ../src/guestfs.pod:1854
33304 msgid "C<flags> should always be passed as 0."
33305 msgstr ""
33306
33307 #. type: textblock
33308 #: ../src/guestfs.pod:1856
33309 msgid ""
33310 "C<opaque> is an opaque pointer which is passed to the callback.  You can use "
33311 "it for any purpose."
33312 msgstr ""
33313
33314 #. type: textblock
33315 #: ../src/guestfs.pod:1859
33316 msgid ""
33317 "The return value is the event handle (an integer) which you can use to "
33318 "delete the callback (see below)."
33319 msgstr ""
33320
33321 #. type: textblock
33322 #: ../src/guestfs.pod:1862
33323 msgid ""
33324 "If there is an error, this function returns C<-1>, and sets the error in the "
33325 "handle in the usual way (see L</guestfs_last_error> etc.)"
33326 msgstr ""
33327
33328 #. type: textblock
33329 #: ../src/guestfs.pod:1865
33330 msgid ""
33331 "Callbacks remain in effect until they are deleted, or until the handle is "
33332 "closed."
33333 msgstr ""
33334
33335 #. type: textblock
33336 #: ../src/guestfs.pod:1868
33337 msgid ""
33338 "In the case where multiple callbacks are registered for a particular event "
33339 "class, all of the callbacks are called.  The order in which multiple "
33340 "callbacks are called is not defined."
33341 msgstr ""
33342
33343 #. type: =head3
33344 #: ../src/guestfs.pod:1872
33345 msgid "guestfs_delete_event_callback"
33346 msgstr ""
33347
33348 #. type: verbatim
33349 #: ../src/guestfs.pod:1874
33350 #, no-wrap
33351 msgid ""
33352 " void guestfs_delete_event_callback (guestfs_h *g, int event_handle);\n"
33353 "\n"
33354 msgstr ""
33355
33356 #. type: textblock
33357 #: ../src/guestfs.pod:1876
33358 msgid ""
33359 "Delete a callback that was previously registered.  C<event_handle> should be "
33360 "the integer that was returned by a previous call to "
33361 "C<guestfs_set_event_callback> on the same handle."
33362 msgstr ""
33363
33364 #. type: =head3
33365 #: ../src/guestfs.pod:1880
33366 msgid "guestfs_event_callback"
33367 msgstr ""
33368
33369 #. type: verbatim
33370 #: ../src/guestfs.pod:1882
33371 #, no-wrap
33372 msgid ""
33373 " typedef void (*guestfs_event_callback) (\n"
33374 "                  guestfs_h *g,\n"
33375 "                  void *opaque,\n"
33376 "                  uint64_t event,\n"
33377 "                  int event_handle,\n"
33378 "                  int flags,\n"
33379 "                  const char *buf, size_t buf_len,\n"
33380 "                  const uint64_t *array, size_t array_len);\n"
33381 "\n"
33382 msgstr ""
33383
33384 #. type: textblock
33385 #: ../src/guestfs.pod:1891
33386 msgid "This is the type of the event callback function that you have to provide."
33387 msgstr ""
33388
33389 #. type: textblock
33390 #: ../src/guestfs.pod:1894
33391 msgid ""
33392 "The basic parameters are: the handle (C<g>), the opaque user pointer "
33393 "(C<opaque>), the event class (eg. C<GUESTFS_EVENT_PROGRESS>), the event "
33394 "handle, and C<flags> which in the current API you should ignore."
33395 msgstr ""
33396
33397 #. type: textblock
33398 #: ../src/guestfs.pod:1898
33399 msgid ""
33400 "The remaining parameters contain the event payload (if any).  Each event may "
33401 "contain a payload, which usually relates to the event class, but for future "
33402 "proofing your code should be written to handle any payload for any event "
33403 "class."
33404 msgstr ""
33405
33406 #. type: textblock
33407 #: ../src/guestfs.pod:1903
33408 msgid ""
33409 "C<buf> and C<buf_len> contain a message buffer (if C<buf_len == 0>, then "
33410 "there is no message buffer).  Note that this message buffer can contain "
33411 "arbitrary 8 bit data, including NUL bytes."
33412 msgstr ""
33413
33414 #. type: textblock
33415 #: ../src/guestfs.pod:1907
33416 msgid ""
33417 "C<array> and C<array_len> is an array of 64 bit unsigned integers.  At the "
33418 "moment this is only used for progress messages."
33419 msgstr ""
33420
33421 #. type: =head3
33422 #: ../src/guestfs.pod:1910
33423 msgid "EXAMPLE: CAPTURING LOG MESSAGES"
33424 msgstr ""
33425
33426 #. type: textblock
33427 #: ../src/guestfs.pod:1912
33428 msgid ""
33429 "One motivation for the generic event API was to allow GUI programs to "
33430 "capture debug and other messages.  In libguestfs E<le> 1.8 these were sent "
33431 "unconditionally to C<stderr>."
33432 msgstr ""
33433
33434 #. type: textblock
33435 #: ../src/guestfs.pod:1916
33436 msgid ""
33437 "Events associated with log messages are: C<GUESTFS_EVENT_LIBRARY>, "
33438 "C<GUESTFS_EVENT_APPLIANCE> and C<GUESTFS_EVENT_TRACE>.  (Note that error "
33439 "messages are not events; you must capture error messages separately)."
33440 msgstr ""
33441
33442 #. type: textblock
33443 #: ../src/guestfs.pod:1921
33444 msgid ""
33445 "Programs have to set up a callback to capture the classes of events of "
33446 "interest:"
33447 msgstr ""
33448
33449 #. type: verbatim
33450 #: ../src/guestfs.pod:1924
33451 #, no-wrap
33452 msgid ""
33453 " int eh =\n"
33454 "   guestfs_set_event_callback\n"
33455 "     (g, message_callback,\n"
33456 "      GUESTFS_EVENT_LIBRARY|GUESTFS_EVENT_APPLIANCE|\n"
33457 "      GUESTFS_EVENT_TRACE,\n"
33458 "      0, NULL) == -1)\n"
33459 " if (eh == -1) {\n"
33460 "   // handle error in the usual way\n"
33461 " }\n"
33462 "\n"
33463 msgstr ""
33464
33465 #. type: textblock
33466 #: ../src/guestfs.pod:1934
33467 msgid ""
33468 "The callback can then direct messages to the appropriate place.  In this "
33469 "example, messages are directed to syslog:"
33470 msgstr ""
33471
33472 #. type: verbatim
33473 #: ../src/guestfs.pod:1937
33474 #, no-wrap
33475 msgid ""
33476 " static void\n"
33477 " message_callback (\n"
33478 "         guestfs_h *g,\n"
33479 "         void *opaque,\n"
33480 "         uint64_t event,\n"
33481 "         int event_handle,\n"
33482 "         int flags,\n"
33483 "         const char *buf, size_t buf_len,\n"
33484 "         const uint64_t *array, size_t array_len)\n"
33485 " {\n"
33486 "   const int priority = LOG_USER|LOG_INFO;\n"
33487 "   if (buf_len > 0)\n"
33488 "     syslog (priority, \"event 0x%lx: %s\", event, buf);\n"
33489 " }\n"
33490 "\n"
33491 msgstr ""
33492
33493 #. type: =head1
33494 #: ../src/guestfs.pod:1952
33495 msgid "CANCELLING LONG TRANSFERS"
33496 msgstr ""
33497
33498 #. type: textblock
33499 #: ../src/guestfs.pod:1954
33500 msgid ""
33501 "Some operations can be cancelled by the caller while they are in progress.  "
33502 "Currently only operations that involve uploading or downloading data can be "
33503 "cancelled (technically: operations that have C<FileIn> or C<FileOut> "
33504 "parameters in the generator)."
33505 msgstr ""
33506
33507 #. type: =head2
33508 #: ../src/guestfs.pod:1959
33509 msgid "guestfs_user_cancel"
33510 msgstr ""
33511
33512 #. type: verbatim
33513 #: ../src/guestfs.pod:1961
33514 #, no-wrap
33515 msgid ""
33516 " void guestfs_user_cancel (guestfs_h *g);\n"
33517 "\n"
33518 msgstr ""
33519
33520 #. type: textblock
33521 #: ../src/guestfs.pod:1963
33522 msgid "C<guestfs_user_cancel> cancels the current upload or download operation."
33523 msgstr ""
33524
33525 #. type: textblock
33526 #: ../src/guestfs.pod:1966
33527 msgid ""
33528 "Unlike most other libguestfs calls, this function is signal safe and thread "
33529 "safe.  You can call it from a signal handler or from another thread, without "
33530 "needing to do any locking."
33531 msgstr ""
33532
33533 #. type: textblock
33534 #: ../src/guestfs.pod:1970
33535 msgid ""
33536 "The transfer that was in progress (if there is one) will stop shortly "
33537 "afterwards, and will return an error.  The errno (see "
33538 "L</guestfs_last_errno>) is set to C<EINTR>, so you can test for this to find "
33539 "out if the operation was cancelled or failed because of another error."
33540 msgstr ""
33541
33542 #. type: textblock
33543 #: ../src/guestfs.pod:1976
33544 msgid ""
33545 "No cleanup is performed: for example, if a file was being uploaded then "
33546 "after cancellation there may be a partially uploaded file.  It is the "
33547 "caller's responsibility to clean up if necessary."
33548 msgstr ""
33549
33550 #. type: textblock
33551 #: ../src/guestfs.pod:1980
33552 msgid "There are two common places that you might call C<guestfs_user_cancel>."
33553 msgstr ""
33554
33555 #. type: textblock
33556 #: ../src/guestfs.pod:1982
33557 msgid ""
33558 "In an interactive text-based program, you might call it from a C<SIGINT> "
33559 "signal handler so that pressing C<^C> cancels the current operation.  (You "
33560 "also need to call L</guestfs_set_pgroup> so that child processes don't "
33561 "receive the C<^C> signal)."
33562 msgstr ""
33563
33564 #. type: textblock
33565 #: ../src/guestfs.pod:1987
33566 msgid ""
33567 "In a graphical program, when the main thread is displaying a progress bar "
33568 "with a cancel button, wire up the cancel button to call this function."
33569 msgstr ""
33570
33571 #. type: =head1
33572 #: ../src/guestfs.pod:1991
33573 msgid "PRIVATE DATA AREA"
33574 msgstr ""
33575
33576 #. type: textblock
33577 #: ../src/guestfs.pod:1993
33578 msgid ""
33579 "You can attach named pieces of private data to the libguestfs handle, fetch "
33580 "them by name, and walk over them, for the lifetime of the handle.  This is "
33581 "called the private data area and is only available from the C API."
33582 msgstr ""
33583
33584 #. type: textblock
33585 #: ../src/guestfs.pod:1998
33586 msgid "To attach a named piece of data, use the following call:"
33587 msgstr ""
33588
33589 #. type: verbatim
33590 #: ../src/guestfs.pod:2000
33591 #, no-wrap
33592 msgid ""
33593 " void guestfs_set_private (guestfs_h *g, const char *key, void *data);\n"
33594 "\n"
33595 msgstr ""
33596
33597 #. type: textblock
33598 #: ../src/guestfs.pod:2002
33599 msgid ""
33600 "C<key> is the name to associate with this data, and C<data> is an arbitrary "
33601 "pointer (which can be C<NULL>).  Any previous item with the same key is "
33602 "overwritten."
33603 msgstr ""
33604
33605 #. type: textblock
33606 #: ../src/guestfs.pod:2006
33607 msgid ""
33608 "You can use any C<key> you want, but your key should I<not> start with an "
33609 "underscore character.  Keys beginning with an underscore character are "
33610 "reserved for internal libguestfs purposes (eg. for implementing language "
33611 "bindings).  It is recommended that you prefix the key with some unique "
33612 "string to avoid collisions with other users."
33613 msgstr ""
33614
33615 #. type: textblock
33616 #: ../src/guestfs.pod:2012
33617 msgid "To retrieve the pointer, use:"
33618 msgstr ""
33619
33620 #. type: verbatim
33621 #: ../src/guestfs.pod:2014
33622 #, no-wrap
33623 msgid ""
33624 " void *guestfs_get_private (guestfs_h *g, const char *key);\n"
33625 "\n"
33626 msgstr ""
33627
33628 #. type: textblock
33629 #: ../src/guestfs.pod:2016
33630 msgid ""
33631 "This function returns C<NULL> if either no data is found associated with "
33632 "C<key>, or if the user previously set the C<key>'s C<data> pointer to "
33633 "C<NULL>."
33634 msgstr ""
33635
33636 #. type: textblock
33637 #: ../src/guestfs.pod:2020
33638 msgid ""
33639 "Libguestfs does not try to look at or interpret the C<data> pointer in any "
33640 "way.  As far as libguestfs is concerned, it need not be a valid pointer at "
33641 "all.  In particular, libguestfs does I<not> try to free the data when the "
33642 "handle is closed.  If the data must be freed, then the caller must either "
33643 "free it before calling L</guestfs_close> or must set up a close callback to "
33644 "do it (see L</GUESTFS_EVENT_CLOSE>)."
33645 msgstr ""
33646
33647 #. type: textblock
33648 #: ../src/guestfs.pod:2027
33649 msgid "To walk over all entries, use these two functions:"
33650 msgstr ""
33651
33652 #. type: verbatim
33653 #: ../src/guestfs.pod:2029
33654 #, no-wrap
33655 msgid ""
33656 " void *guestfs_first_private (guestfs_h *g, const char **key_rtn);\n"
33657 "\n"
33658 msgstr ""
33659
33660 #. type: verbatim
33661 #: ../src/guestfs.pod:2031
33662 #, no-wrap
33663 msgid ""
33664 " void *guestfs_next_private (guestfs_h *g, const char **key_rtn);\n"
33665 "\n"
33666 msgstr ""
33667
33668 #. type: textblock
33669 #: ../src/guestfs.pod:2033
33670 msgid ""
33671 "C<guestfs_first_private> returns the first key, pointer pair (\"first\" does "
33672 "not have any particular meaning -- keys are not returned in any defined "
33673 "order).  A pointer to the key is returned in C<*key_rtn> and the "
33674 "corresponding data pointer is returned from the function.  C<NULL> is "
33675 "returned if there are no keys stored in the handle."
33676 msgstr ""
33677
33678 #. type: textblock
33679 #: ../src/guestfs.pod:2039
33680 msgid ""
33681 "C<guestfs_next_private> returns the next key, pointer pair.  The return "
33682 "value of this function is also C<NULL> is there are no further entries to "
33683 "return."
33684 msgstr ""
33685
33686 #. type: textblock
33687 #: ../src/guestfs.pod:2043
33688 msgid "Notes about walking over entries:"
33689 msgstr ""
33690
33691 #. type: textblock
33692 #: ../src/guestfs.pod:2049
33693 msgid "You must not call C<guestfs_set_private> while walking over the entries."
33694 msgstr ""
33695
33696 #. type: textblock
33697 #: ../src/guestfs.pod:2054
33698 msgid ""
33699 "The handle maintains an internal iterator which is reset when you call "
33700 "C<guestfs_first_private>.  This internal iterator is invalidated when you "
33701 "call C<guestfs_set_private>."
33702 msgstr ""
33703
33704 #. type: textblock
33705 #: ../src/guestfs.pod:2060
33706 msgid "If you have set the data pointer associated with a key to C<NULL>, ie:"
33707 msgstr ""
33708
33709 #. type: verbatim
33710 #: ../src/guestfs.pod:2062
33711 #, no-wrap
33712 msgid ""
33713 " guestfs_set_private (g, key, NULL);\n"
33714 "\n"
33715 msgstr ""
33716
33717 #. type: textblock
33718 #: ../src/guestfs.pod:2064
33719 msgid "then that C<key> is not returned when walking."
33720 msgstr ""
33721
33722 #. type: textblock
33723 #: ../src/guestfs.pod:2068
33724 msgid ""
33725 "C<*key_rtn> is only valid until the next call to C<guestfs_first_private>, "
33726 "C<guestfs_next_private> or C<guestfs_set_private>."
33727 msgstr ""
33728
33729 #. type: textblock
33730 #: ../src/guestfs.pod:2074
33731 msgid ""
33732 "The following example code shows how to print all keys and data pointers "
33733 "that are associated with the handle C<g>:"
33734 msgstr ""
33735
33736 #. type: verbatim
33737 #: ../src/guestfs.pod:2077
33738 #, no-wrap
33739 msgid ""
33740 " const char *key;\n"
33741 " void *data = guestfs_first_private (g, &key);\n"
33742 " while (data != NULL)\n"
33743 "   {\n"
33744 "     printf (\"key = %s, data = %p\\n\", key, data);\n"
33745 "     data = guestfs_next_private (g, &key);\n"
33746 "   }\n"
33747 "\n"
33748 msgstr ""
33749
33750 #. type: textblock
33751 #: ../src/guestfs.pod:2085
33752 msgid ""
33753 "More commonly you are only interested in keys that begin with an "
33754 "application-specific prefix C<foo_>.  Modify the loop like so:"
33755 msgstr ""
33756
33757 #. type: verbatim
33758 #: ../src/guestfs.pod:2088
33759 #, no-wrap
33760 msgid ""
33761 " const char *key;\n"
33762 " void *data = guestfs_first_private (g, &key);\n"
33763 " while (data != NULL)\n"
33764 "   {\n"
33765 "     if (strncmp (key, \"foo_\", strlen (\"foo_\")) == 0)\n"
33766 "       printf (\"key = %s, data = %p\\n\", key, data);\n"
33767 "     data = guestfs_next_private (g, &key);\n"
33768 "   }\n"
33769 "\n"
33770 msgstr ""
33771
33772 #. type: textblock
33773 #: ../src/guestfs.pod:2097
33774 msgid ""
33775 "If you need to modify keys while walking, then you have to jump back to the "
33776 "beginning of the loop.  For example, to delete all keys prefixed with "
33777 "C<foo_>:"
33778 msgstr ""
33779
33780 #. type: verbatim
33781 #: ../src/guestfs.pod:2101
33782 #, no-wrap
33783 msgid ""
33784 "  const char *key;\n"
33785 "  void *data;\n"
33786 " again:\n"
33787 "  data = guestfs_first_private (g, &key);\n"
33788 "  while (data != NULL)\n"
33789 "    {\n"
33790 "      if (strncmp (key, \"foo_\", strlen (\"foo_\")) == 0)\n"
33791 "        {\n"
33792 "          guestfs_set_private (g, key, NULL);\n"
33793 "          /* note that 'key' pointer is now invalid, and so is\n"
33794 "             the internal iterator */\n"
33795 "          goto again;\n"
33796 "        }\n"
33797 "      data = guestfs_next_private (g, &key);\n"
33798 "    }\n"
33799 "\n"
33800 msgstr ""
33801
33802 #. type: textblock
33803 #: ../src/guestfs.pod:2117
33804 msgid ""
33805 "Note that the above loop is guaranteed to terminate because the keys are "
33806 "being deleted, but other manipulations of keys within the loop might not "
33807 "terminate unless you also maintain an indication of which keys have been "
33808 "visited."
33809 msgstr ""
33810
33811 #. type: =end
33812 #: ../src/guestfs.pod:2122 ../src/guestfs.pod:2127
33813 msgid "html"
33814 msgstr ""
33815
33816 #. type: textblock
33817 #: ../src/guestfs.pod:2124
33818 msgid ""
33819 "<!-- old anchor for the next section --> <a "
33820 "name=\"state_machine_and_low_level_event_api\"/>"
33821 msgstr ""
33822
33823 #. type: =head1
33824 #: ../src/guestfs.pod:2129
33825 msgid "ARCHITECTURE"
33826 msgstr ""
33827
33828 #. type: textblock
33829 #: ../src/guestfs.pod:2131
33830 msgid ""
33831 "Internally, libguestfs is implemented by running an appliance (a special "
33832 "type of small virtual machine) using L<qemu(1)>.  Qemu runs as a child "
33833 "process of the main program."
33834 msgstr ""
33835
33836 #. type: verbatim
33837 #: ../src/guestfs.pod:2135
33838 #, no-wrap
33839 msgid ""
33840 "  ___________________\n"
33841 " /                   \\\n"
33842 " | main program      |\n"
33843 " |                   |\n"
33844 " |                   |           child process / appliance\n"
33845 " |                   |           __________________________\n"
33846 " |                   |          / qemu                     \\\n"
33847 " +-------------------+   RPC    |      +-----------------+ |\n"
33848 " | libguestfs     <--------------------> guestfsd        | |\n"
33849 " |                   |          |      +-----------------+ |\n"
33850 " \\___________________/          |      | Linux kernel    | |\n"
33851 "                                |      +--^--------------+ |\n"
33852 "                                \\_________|________________/\n"
33853 "                                          |\n"
33854 "                                   _______v______\n"
33855 "                                  /              \\\n"
33856 "                                  | Device or    |\n"
33857 "                                  | disk image   |\n"
33858 "                                  \\______________/\n"
33859 "\n"
33860 msgstr ""
33861
33862 #. type: textblock
33863 #: ../src/guestfs.pod:2155
33864 msgid ""
33865 "The library, linked to the main program, creates the child process and hence "
33866 "the appliance in the L</guestfs_launch> function."
33867 msgstr ""
33868
33869 #. type: textblock
33870 #: ../src/guestfs.pod:2158
33871 msgid ""
33872 "Inside the appliance is a Linux kernel and a complete stack of userspace "
33873 "tools (such as LVM and ext2 programs) and a small controlling daemon called "
33874 "L</guestfsd>.  The library talks to L</guestfsd> using remote procedure "
33875 "calls (RPC).  There is a mostly one-to-one correspondence between libguestfs "
33876 "API calls and RPC calls to the daemon.  Lastly the disk image(s) are "
33877 "attached to the qemu process which translates device access by the "
33878 "appliance's Linux kernel into accesses to the image."
33879 msgstr ""
33880
33881 #. type: textblock
33882 #: ../src/guestfs.pod:2167
33883 msgid ""
33884 "A common misunderstanding is that the appliance \"is\" the virtual machine.  "
33885 "Although the disk image you are attached to might also be used by some "
33886 "virtual machine, libguestfs doesn't know or care about this.  (But you will "
33887 "care if both libguestfs's qemu process and your virtual machine are trying "
33888 "to update the disk image at the same time, since these usually results in "
33889 "massive disk corruption)."
33890 msgstr ""
33891
33892 #. type: =head1
33893 #: ../src/guestfs.pod:2174
33894 msgid "STATE MACHINE"
33895 msgstr ""
33896
33897 #. type: textblock
33898 #: ../src/guestfs.pod:2176
33899 msgid "libguestfs uses a state machine to model the child process:"
33900 msgstr ""
33901
33902 #. type: verbatim
33903 #: ../src/guestfs.pod:2178
33904 #, no-wrap
33905 msgid ""
33906 "                         |\n"
33907 "                    guestfs_create\n"
33908 "                         |\n"
33909 "                         |\n"
33910 "                     ____V_____\n"
33911 "                    /          \\\n"
33912 "                    |  CONFIG  |\n"
33913 "                    \\__________/\n"
33914 "                     ^ ^   ^  \\\n"
33915 "                    /  |    \\  \\ guestfs_launch\n"
33916 "                   /   |    _\\__V______\n"
33917 "                  /    |   /           \\\n"
33918 "                 /     |   | LAUNCHING |\n"
33919 "                /      |   \\___________/\n"
33920 "               /       |       /\n"
33921 "              /        |  guestfs_launch\n"
33922 "             /         |     /\n"
33923 "    ______  /        __|____V\n"
33924 "   /      \\ ------> /        \\\n"
33925 "   | BUSY |         | READY  |\n"
33926 "   \\______/ <------ \\________/\n"
33927 "\n"
33928 msgstr ""
33929
33930 #. type: textblock
33931 #: ../src/guestfs.pod:2200
33932 msgid ""
33933 "The normal transitions are (1) CONFIG (when the handle is created, but there "
33934 "is no child process), (2) LAUNCHING (when the child process is booting up), "
33935 "(3) alternating between READY and BUSY as commands are issued to, and "
33936 "carried out by, the child process."
33937 msgstr ""
33938
33939 #. type: textblock
33940 #: ../src/guestfs.pod:2205
33941 msgid ""
33942 "The guest may be killed by L</guestfs_kill_subprocess>, or may die "
33943 "asynchronously at any time (eg. due to some internal error), and that causes "
33944 "the state to transition back to CONFIG."
33945 msgstr ""
33946
33947 #. type: textblock
33948 #: ../src/guestfs.pod:2209
33949 msgid ""
33950 "Configuration commands for qemu such as L</guestfs_add_drive> can only be "
33951 "issued when in the CONFIG state."
33952 msgstr ""
33953
33954 #. type: textblock
33955 #: ../src/guestfs.pod:2212
33956 msgid ""
33957 "The API offers one call that goes from CONFIG through LAUNCHING to READY.  "
33958 "L</guestfs_launch> blocks until the child process is READY to accept "
33959 "commands (or until some failure or timeout).  L</guestfs_launch> internally "
33960 "moves the state from CONFIG to LAUNCHING while it is running."
33961 msgstr ""
33962
33963 #. type: textblock
33964 #: ../src/guestfs.pod:2218
33965 msgid ""
33966 "API actions such as L</guestfs_mount> can only be issued when in the READY "
33967 "state.  These API calls block waiting for the command to be carried out "
33968 "(ie. the state to transition to BUSY and then back to READY).  There are no "
33969 "non-blocking versions, and no way to issue more than one command per handle "
33970 "at the same time."
33971 msgstr ""
33972
33973 #. type: textblock
33974 #: ../src/guestfs.pod:2224
33975 msgid ""
33976 "Finally, the child process sends asynchronous messages back to the main "
33977 "program, such as kernel log messages.  You can register a callback to "
33978 "receive these messages."
33979 msgstr ""
33980
33981 #. type: =head1
33982 #: ../src/guestfs.pod:2228
33983 msgid "INTERNALS"
33984 msgstr ""
33985
33986 #. type: =head2
33987 #: ../src/guestfs.pod:2230
33988 msgid "COMMUNICATION PROTOCOL"
33989 msgstr ""
33990
33991 #. type: textblock
33992 #: ../src/guestfs.pod:2232
33993 msgid ""
33994 "Don't rely on using this protocol directly.  This section documents how it "
33995 "currently works, but it may change at any time."
33996 msgstr ""
33997
33998 #. type: textblock
33999 #: ../src/guestfs.pod:2235
34000 msgid ""
34001 "The protocol used to talk between the library and the daemon running inside "
34002 "the qemu virtual machine is a simple RPC mechanism built on top of XDR (RFC "
34003 "1014, RFC 1832, RFC 4506)."
34004 msgstr ""
34005
34006 #. type: textblock
34007 #: ../src/guestfs.pod:2239
34008 msgid ""
34009 "The detailed format of structures is in C<src/guestfs_protocol.x> (note: "
34010 "this file is automatically generated)."
34011 msgstr ""
34012
34013 #. type: textblock
34014 #: ../src/guestfs.pod:2242
34015 msgid ""
34016 "There are two broad cases, ordinary functions that don't have any C<FileIn> "
34017 "and C<FileOut> parameters, which are handled with very simple request/reply "
34018 "messages.  Then there are functions that have any C<FileIn> or C<FileOut> "
34019 "parameters, which use the same request and reply messages, but they may also "
34020 "be followed by files sent using a chunked encoding."
34021 msgstr ""
34022
34023 #. type: =head3
34024 #: ../src/guestfs.pod:2249
34025 msgid "ORDINARY FUNCTIONS (NO FILEIN/FILEOUT PARAMS)"
34026 msgstr ""
34027
34028 #. type: textblock
34029 #: ../src/guestfs.pod:2251
34030 msgid "For ordinary functions, the request message is:"
34031 msgstr ""
34032
34033 #. type: verbatim
34034 #: ../src/guestfs.pod:2253
34035 #, no-wrap
34036 msgid ""
34037 " total length (header + arguments,\n"
34038 "      but not including the length word itself)\n"
34039 " struct guestfs_message_header (encoded as XDR)\n"
34040 " struct guestfs_<foo>_args (encoded as XDR)\n"
34041 "\n"
34042 msgstr ""
34043
34044 #. type: textblock
34045 #: ../src/guestfs.pod:2258
34046 msgid ""
34047 "The total length field allows the daemon to allocate a fixed size buffer "
34048 "into which it slurps the rest of the message.  As a result, the total length "
34049 "is limited to C<GUESTFS_MESSAGE_MAX> bytes (currently 4MB), which means the "
34050 "effective size of any request is limited to somewhere under this size."
34051 msgstr ""
34052
34053 #. type: textblock
34054 #: ../src/guestfs.pod:2264
34055 msgid ""
34056 "Note also that many functions don't take any arguments, in which case the "
34057 "C<guestfs_I<foo>_args> is completely omitted."
34058 msgstr ""
34059
34060 #. type: textblock
34061 #: ../src/guestfs.pod:2267
34062 msgid ""
34063 "The header contains the procedure number (C<guestfs_proc>) which is how the "
34064 "receiver knows what type of args structure to expect, or none at all."
34065 msgstr ""
34066
34067 #. type: textblock
34068 #: ../src/guestfs.pod:2271
34069 msgid ""
34070 "For functions that take optional arguments, the optional arguments are "
34071 "encoded in the C<guestfs_I<foo>_args> structure in the same way as ordinary "
34072 "arguments.  A bitmask in the header indicates which optional arguments are "
34073 "meaningful.  The bitmask is also checked to see if it contains bits set "
34074 "which the daemon does not know about (eg. if more optional arguments were "
34075 "added in a later version of the library), and this causes the call to be "
34076 "rejected."
34077 msgstr ""
34078
34079 #. type: textblock
34080 #: ../src/guestfs.pod:2279
34081 msgid "The reply message for ordinary functions is:"
34082 msgstr ""
34083
34084 #. type: verbatim
34085 #: ../src/guestfs.pod:2281
34086 #, no-wrap
34087 msgid ""
34088 " total length (header + ret,\n"
34089 "      but not including the length word itself)\n"
34090 " struct guestfs_message_header (encoded as XDR)\n"
34091 " struct guestfs_<foo>_ret (encoded as XDR)\n"
34092 "\n"
34093 msgstr ""
34094
34095 #. type: textblock
34096 #: ../src/guestfs.pod:2286
34097 msgid ""
34098 "As above the C<guestfs_I<foo>_ret> structure may be completely omitted for "
34099 "functions that return no formal return values."
34100 msgstr ""
34101
34102 #. type: textblock
34103 #: ../src/guestfs.pod:2289
34104 msgid "As above the total length of the reply is limited to C<GUESTFS_MESSAGE_MAX>."
34105 msgstr ""
34106
34107 #. type: textblock
34108 #: ../src/guestfs.pod:2292
34109 msgid ""
34110 "In the case of an error, a flag is set in the header, and the reply message "
34111 "is slightly changed:"
34112 msgstr ""
34113
34114 #. type: verbatim
34115 #: ../src/guestfs.pod:2295
34116 #, no-wrap
34117 msgid ""
34118 " total length (header + error,\n"
34119 "      but not including the length word itself)\n"
34120 " struct guestfs_message_header (encoded as XDR)\n"
34121 " struct guestfs_message_error (encoded as XDR)\n"
34122 "\n"
34123 msgstr ""
34124
34125 #. type: textblock
34126 #: ../src/guestfs.pod:2300
34127 msgid ""
34128 "The C<guestfs_message_error> structure contains the error message as a "
34129 "string."
34130 msgstr ""
34131
34132 #. type: =head3
34133 #: ../src/guestfs.pod:2303
34134 msgid "FUNCTIONS THAT HAVE FILEIN PARAMETERS"
34135 msgstr ""
34136
34137 #. type: textblock
34138 #: ../src/guestfs.pod:2305
34139 msgid ""
34140 "A C<FileIn> parameter indicates that we transfer a file I<into> the guest.  "
34141 "The normal request message is sent (see above).  However this is followed by "
34142 "a sequence of file chunks."
34143 msgstr ""
34144
34145 #. type: verbatim
34146 #: ../src/guestfs.pod:2309
34147 #, no-wrap
34148 msgid ""
34149 " total length (header + arguments,\n"
34150 "      but not including the length word itself,\n"
34151 "      and not including the chunks)\n"
34152 " struct guestfs_message_header (encoded as XDR)\n"
34153 " struct guestfs_<foo>_args (encoded as XDR)\n"
34154 " sequence of chunks for FileIn param #0\n"
34155 " sequence of chunks for FileIn param #1 etc.\n"
34156 "\n"
34157 msgstr ""
34158
34159 #. type: textblock
34160 #: ../src/guestfs.pod:2317
34161 msgid "The \"sequence of chunks\" is:"
34162 msgstr ""
34163
34164 #. type: verbatim
34165 #: ../src/guestfs.pod:2319
34166 #, no-wrap
34167 msgid ""
34168 " length of chunk (not including length word itself)\n"
34169 " struct guestfs_chunk (encoded as XDR)\n"
34170 " length of chunk\n"
34171 " struct guestfs_chunk (encoded as XDR)\n"
34172 "   ...\n"
34173 " length of chunk\n"
34174 " struct guestfs_chunk (with data.data_len == 0)\n"
34175 "\n"
34176 msgstr ""
34177
34178 #. type: textblock
34179 #: ../src/guestfs.pod:2327
34180 msgid ""
34181 "The final chunk has the C<data_len> field set to zero.  Additionally a flag "
34182 "is set in the final chunk to indicate either successful completion or early "
34183 "cancellation."
34184 msgstr ""
34185
34186 #. type: textblock
34187 #: ../src/guestfs.pod:2331
34188 msgid ""
34189 "At time of writing there are no functions that have more than one FileIn "
34190 "parameter.  However this is (theoretically) supported, by sending the "
34191 "sequence of chunks for each FileIn parameter one after another (from left to "
34192 "right)."
34193 msgstr ""
34194
34195 #. type: textblock
34196 #: ../src/guestfs.pod:2336
34197 msgid ""
34198 "Both the library (sender) I<and> the daemon (receiver) may cancel the "
34199 "transfer.  The library does this by sending a chunk with a special flag set "
34200 "to indicate cancellation.  When the daemon sees this, it cancels the whole "
34201 "RPC, does I<not> send any reply, and goes back to reading the next request."
34202 msgstr ""
34203
34204 #. type: textblock
34205 #: ../src/guestfs.pod:2342
34206 msgid ""
34207 "The daemon may also cancel.  It does this by writing a special word "
34208 "C<GUESTFS_CANCEL_FLAG> to the socket.  The library listens for this during "
34209 "the transfer, and if it gets it, it will cancel the transfer (it sends a "
34210 "cancel chunk).  The special word is chosen so that even if cancellation "
34211 "happens right at the end of the transfer (after the library has finished "
34212 "writing and has started listening for the reply), the \"spurious\" cancel "
34213 "flag will not be confused with the reply message."
34214 msgstr ""
34215
34216 #. type: textblock
34217 #: ../src/guestfs.pod:2351
34218 msgid ""
34219 "This protocol allows the transfer of arbitrary sized files (no 32 bit "
34220 "limit), and also files where the size is not known in advance (eg. from "
34221 "pipes or sockets).  However the chunks are rather small "
34222 "(C<GUESTFS_MAX_CHUNK_SIZE>), so that neither the library nor the daemon need "
34223 "to keep much in memory."
34224 msgstr ""
34225
34226 #. type: =head3
34227 #: ../src/guestfs.pod:2357
34228 msgid "FUNCTIONS THAT HAVE FILEOUT PARAMETERS"
34229 msgstr ""
34230
34231 #. type: textblock
34232 #: ../src/guestfs.pod:2359
34233 msgid ""
34234 "The protocol for FileOut parameters is exactly the same as for FileIn "
34235 "parameters, but with the roles of daemon and library reversed."
34236 msgstr ""
34237
34238 #. type: verbatim
34239 #: ../src/guestfs.pod:2362
34240 #, no-wrap
34241 msgid ""
34242 " total length (header + ret,\n"
34243 "      but not including the length word itself,\n"
34244 "      and not including the chunks)\n"
34245 " struct guestfs_message_header (encoded as XDR)\n"
34246 " struct guestfs_<foo>_ret (encoded as XDR)\n"
34247 " sequence of chunks for FileOut param #0\n"
34248 " sequence of chunks for FileOut param #1 etc.\n"
34249 "\n"
34250 msgstr ""
34251
34252 #. type: =head3
34253 #: ../src/guestfs.pod:2370
34254 msgid "INITIAL MESSAGE"
34255 msgstr ""
34256
34257 #. type: textblock
34258 #: ../src/guestfs.pod:2372
34259 msgid ""
34260 "When the daemon launches it sends an initial word (C<GUESTFS_LAUNCH_FLAG>) "
34261 "which indicates that the guest and daemon is alive.  This is what "
34262 "L</guestfs_launch> waits for."
34263 msgstr ""
34264
34265 #. type: =head3
34266 #: ../src/guestfs.pod:2376
34267 msgid "PROGRESS NOTIFICATION MESSAGES"
34268 msgstr ""
34269
34270 #. type: textblock
34271 #: ../src/guestfs.pod:2378
34272 msgid ""
34273 "The daemon may send progress notification messages at any time.  These are "
34274 "distinguished by the normal length word being replaced by "
34275 "C<GUESTFS_PROGRESS_FLAG>, followed by a fixed size progress message."
34276 msgstr ""
34277
34278 #. type: textblock
34279 #: ../src/guestfs.pod:2382
34280 msgid ""
34281 "The library turns them into progress callbacks (see "
34282 "L</GUESTFS_EVENT_PROGRESS>) if there is a callback registered, or discards "
34283 "them if not."
34284 msgstr ""
34285
34286 #. type: textblock
34287 #: ../src/guestfs.pod:2386
34288 msgid ""
34289 "The daemon self-limits the frequency of progress messages it sends (see "
34290 "C<daemon/proto.c:notify_progress>).  Not all calls generate progress "
34291 "messages."
34292 msgstr ""
34293
34294 #. type: =head1
34295 #: ../src/guestfs.pod:2390
34296 msgid "LIBGUESTFS VERSION NUMBERS"
34297 msgstr ""
34298
34299 #. type: textblock
34300 #: ../src/guestfs.pod:2392
34301 msgid ""
34302 "Since April 2010, libguestfs has started to make separate development and "
34303 "stable releases, along with corresponding branches in our git repository.  "
34304 "These separate releases can be identified by version number:"
34305 msgstr ""
34306
34307 #. type: verbatim
34308 #: ../src/guestfs.pod:2397
34309 #, no-wrap
34310 msgid ""
34311 "                 even numbers for stable: 1.2.x, 1.4.x, ...\n"
34312 "       .-------- odd numbers for development: 1.3.x, 1.5.x, ...\n"
34313 "       |\n"
34314 "       v\n"
34315 " 1  .  3  .  5\n"
34316 " ^           ^\n"
34317 " |           |\n"
34318 " |           `-------- sub-version\n"
34319 " |\n"
34320 " `------ always '1' because we don't change the ABI\n"
34321 "\n"
34322 msgstr ""
34323
34324 #. type: textblock
34325 #: ../src/guestfs.pod:2408
34326 msgid "Thus \"1.3.5\" is the 5th update to the development branch \"1.3\"."
34327 msgstr ""
34328
34329 #. type: textblock
34330 #: ../src/guestfs.pod:2410
34331 msgid ""
34332 "As time passes we cherry pick fixes from the development branch and backport "
34333 "those into the stable branch, the effect being that the stable branch should "
34334 "get more stable and less buggy over time.  So the stable releases are ideal "
34335 "for people who don't need new features but would just like the software to "
34336 "work."
34337 msgstr ""
34338
34339 #. type: textblock
34340 #: ../src/guestfs.pod:2416
34341 msgid "Our criteria for backporting changes are:"
34342 msgstr ""
34343
34344 #. type: textblock
34345 #: ../src/guestfs.pod:2422
34346 msgid ""
34347 "Documentation changes which don't affect any code are backported unless the "
34348 "documentation refers to a future feature which is not in stable."
34349 msgstr ""
34350
34351 #. type: textblock
34352 #: ../src/guestfs.pod:2428
34353 msgid ""
34354 "Bug fixes which are not controversial, fix obvious problems, and have been "
34355 "well tested are backported."
34356 msgstr ""
34357
34358 #. type: textblock
34359 #: ../src/guestfs.pod:2433
34360 msgid ""
34361 "Simple rearrangements of code which shouldn't affect how it works get "
34362 "backported.  This is so that the code in the two branches doesn't get too "
34363 "far out of step, allowing us to backport future fixes more easily."
34364 msgstr ""
34365
34366 #. type: textblock
34367 #: ../src/guestfs.pod:2439
34368 msgid ""
34369 "We I<don't> backport new features, new APIs, new tools etc, except in one "
34370 "exceptional case: the new feature is required in order to implement an "
34371 "important bug fix."
34372 msgstr ""
34373
34374 #. type: textblock
34375 #: ../src/guestfs.pod:2445
34376 msgid ""
34377 "A new stable branch starts when we think the new features in development are "
34378 "substantial and compelling enough over the current stable branch to warrant "
34379 "it.  When that happens we create new stable and development versions 1.N.0 "
34380 "and 1.(N+1).0 [N is even].  The new dot-oh release won't necessarily be so "
34381 "stable at this point, but by backporting fixes from development, that branch "
34382 "will stabilize over time."
34383 msgstr ""
34384
34385 #. type: =head1
34386 #: ../src/guestfs.pod:2453
34387 msgid "EXTENDING LIBGUESTFS"
34388 msgstr ""
34389
34390 #. type: =head2
34391 #: ../src/guestfs.pod:2455
34392 msgid "ADDING A NEW API ACTION"
34393 msgstr ""
34394
34395 #. type: textblock
34396 #: ../src/guestfs.pod:2457
34397 msgid ""
34398 "Large amounts of boilerplate code in libguestfs (RPC, bindings, "
34399 "documentation) are generated, and this makes it easy to extend the "
34400 "libguestfs API."
34401 msgstr ""
34402
34403 #. type: textblock
34404 #: ../src/guestfs.pod:2461
34405 msgid "To add a new API action there are two changes:"
34406 msgstr ""
34407
34408 #. type: textblock
34409 #: ../src/guestfs.pod:2467
34410 msgid ""
34411 "You need to add a description of the call (name, parameters, return type, "
34412 "tests, documentation) to C<generator/generator_actions.ml>."
34413 msgstr ""
34414
34415 #. type: textblock
34416 #: ../src/guestfs.pod:2470
34417 msgid ""
34418 "There are two sorts of API action, depending on whether the call goes "
34419 "through to the daemon in the appliance, or is serviced entirely by the "
34420 "library (see L</ARCHITECTURE> above).  L</guestfs_sync> is an example of the "
34421 "former, since the sync is done in the appliance.  L</guestfs_set_trace> is "
34422 "an example of the latter, since a trace flag is maintained in the handle and "
34423 "all tracing is done on the library side."
34424 msgstr ""
34425
34426 #. type: textblock
34427 #: ../src/guestfs.pod:2478
34428 msgid ""
34429 "Most new actions are of the first type, and get added to the "
34430 "C<daemon_functions> list.  Each function has a unique procedure number used "
34431 "in the RPC protocol which is assigned to that action when we publish "
34432 "libguestfs and cannot be reused.  Take the latest procedure number and "
34433 "increment it."
34434 msgstr ""
34435
34436 #. type: textblock
34437 #: ../src/guestfs.pod:2484
34438 msgid ""
34439 "For library-only actions of the second type, add to the "
34440 "C<non_daemon_functions> list.  Since these functions are serviced by the "
34441 "library and do not travel over the RPC mechanism to the daemon, these "
34442 "functions do not need a procedure number, and so the procedure number is set "
34443 "to C<-1>."
34444 msgstr ""
34445
34446 #. type: textblock
34447 #: ../src/guestfs.pod:2492
34448 msgid "Implement the action (in C):"
34449 msgstr ""
34450
34451 #. type: textblock
34452 #: ../src/guestfs.pod:2494
34453 msgid ""
34454 "For daemon actions, implement the function C<do_E<lt>nameE<gt>> in the "
34455 "C<daemon/> directory."
34456 msgstr ""
34457
34458 #. type: textblock
34459 #: ../src/guestfs.pod:2497
34460 msgid ""
34461 "For library actions, implement the function C<guestfs__E<lt>nameE<gt>> "
34462 "(note: double underscore) in the C<src/> directory."
34463 msgstr ""
34464
34465 #. type: textblock
34466 #: ../src/guestfs.pod:2500
34467 msgid "In either case, use another function as an example of what to do."
34468 msgstr ""
34469
34470 #. type: textblock
34471 #: ../src/guestfs.pod:2504
34472 msgid "After making these changes, use C<make> to compile."
34473 msgstr ""
34474
34475 #. type: textblock
34476 #: ../src/guestfs.pod:2506
34477 msgid ""
34478 "Note that you don't need to implement the RPC, language bindings, manual "
34479 "pages or anything else.  It's all automatically generated from the OCaml "
34480 "description."
34481 msgstr ""
34482
34483 #. type: =head2
34484 #: ../src/guestfs.pod:2510
34485 msgid "ADDING TESTS FOR AN API ACTION"
34486 msgstr ""
34487
34488 #. type: textblock
34489 #: ../src/guestfs.pod:2512
34490 msgid ""
34491 "You can supply zero or as many tests as you want per API call.  The tests "
34492 "can either be added as part of the API description "
34493 "(C<generator/generator_actions.ml>), or in some rarer cases you may want to "
34494 "drop a script into C<regressions/>.  Note that adding a script to "
34495 "C<regressions/> is slower, so if possible use the first method."
34496 msgstr ""
34497
34498 #. type: textblock
34499 #: ../src/guestfs.pod:2518
34500 msgid ""
34501 "The following describes the test environment used when you add an API test "
34502 "in C<generator_actions.ml>."
34503 msgstr ""
34504
34505 #. type: textblock
34506 #: ../src/guestfs.pod:2521
34507 msgid "The test environment has 4 block devices:"
34508 msgstr ""
34509
34510 #. type: =item
34511 #: ../src/guestfs.pod:2525
34512 msgid "C</dev/sda> 500MB"
34513 msgstr ""
34514
34515 #. type: textblock
34516 #: ../src/guestfs.pod:2527
34517 msgid "General block device for testing."
34518 msgstr ""
34519
34520 #. type: =item
34521 #: ../src/guestfs.pod:2529
34522 msgid "C</dev/sdb> 50MB"
34523 msgstr ""
34524
34525 #. type: textblock
34526 #: ../src/guestfs.pod:2531
34527 msgid ""
34528 "C</dev/sdb1> is an ext2 filesystem used for testing filesystem write "
34529 "operations."
34530 msgstr ""
34531
34532 #. type: =item
34533 #: ../src/guestfs.pod:2534
34534 msgid "C</dev/sdc> 10MB"
34535 msgstr ""
34536
34537 #. type: textblock
34538 #: ../src/guestfs.pod:2536
34539 msgid "Used in a few tests where two block devices are needed."
34540 msgstr ""
34541
34542 #. type: =item
34543 #: ../src/guestfs.pod:2538
34544 msgid "C</dev/sdd>"
34545 msgstr ""
34546
34547 #. type: textblock
34548 #: ../src/guestfs.pod:2540
34549 msgid "ISO with fixed content (see C<images/test.iso>)."
34550 msgstr ""
34551
34552 #. type: textblock
34553 #: ../src/guestfs.pod:2544
34554 msgid ""
34555 "To be able to run the tests in a reasonable amount of time, the libguestfs "
34556 "appliance and block devices are reused between tests.  So don't try testing "
34557 "L</guestfs_kill_subprocess> :-x"
34558 msgstr ""
34559
34560 #. type: textblock
34561 #: ../src/guestfs.pod:2548
34562 msgid ""
34563 "Each test starts with an initial scenario, selected using one of the "
34564 "C<Init*> expressions, described in C<generator/generator_types.ml>.  These "
34565 "initialize the disks mentioned above in a particular way as documented in "
34566 "C<generator_types.ml>.  You should not assume anything about the previous "
34567 "contents of other disks that are not initialized."
34568 msgstr ""
34569
34570 #. type: textblock
34571 #: ../src/guestfs.pod:2554
34572 msgid ""
34573 "You can add a prerequisite clause to any individual test.  This is a "
34574 "run-time check, which, if it fails, causes the test to be skipped.  Useful "
34575 "if testing a command which might not work on all variations of libguestfs "
34576 "builds.  A test that has prerequisite of C<Always> means to run "
34577 "unconditionally."
34578 msgstr ""
34579
34580 #. type: textblock
34581 #: ../src/guestfs.pod:2560
34582 msgid ""
34583 "In addition, packagers can skip individual tests by setting environment "
34584 "variables before running C<make check>."
34585 msgstr ""
34586
34587 #. type: verbatim
34588 #: ../src/guestfs.pod:2563
34589 #, no-wrap
34590 msgid ""
34591 " SKIP_TEST_<CMD>_<NUM>=1\n"
34592 "\n"
34593 msgstr ""
34594
34595 #. type: textblock
34596 #: ../src/guestfs.pod:2565
34597 msgid "eg: C<SKIP_TEST_COMMAND_3=1> skips test #3 of L</guestfs_command>."
34598 msgstr ""
34599
34600 #. type: textblock
34601 #: ../src/guestfs.pod:2567
34602 msgid "or:"
34603 msgstr ""
34604
34605 #. type: verbatim
34606 #: ../src/guestfs.pod:2569
34607 #, no-wrap
34608 msgid ""
34609 " SKIP_TEST_<CMD>=1\n"
34610 "\n"
34611 msgstr ""
34612
34613 #. type: textblock
34614 #: ../src/guestfs.pod:2571
34615 msgid "eg: C<SKIP_TEST_ZEROFREE=1> skips all L</guestfs_zerofree> tests."
34616 msgstr ""
34617
34618 #. type: textblock
34619 #: ../src/guestfs.pod:2573
34620 msgid "Packagers can run only certain tests by setting for example:"
34621 msgstr ""
34622
34623 #. type: verbatim
34624 #: ../src/guestfs.pod:2575
34625 #, no-wrap
34626 msgid ""
34627 " TEST_ONLY=\"vfs_type zerofree\"\n"
34628 "\n"
34629 msgstr ""
34630
34631 #. type: textblock
34632 #: ../src/guestfs.pod:2577
34633 msgid ""
34634 "See C<capitests/tests.c> for more details of how these environment variables "
34635 "work."
34636 msgstr ""
34637
34638 #. type: =head2
34639 #: ../src/guestfs.pod:2580
34640 msgid "DEBUGGING NEW API ACTIONS"
34641 msgstr ""
34642
34643 #. type: textblock
34644 #: ../src/guestfs.pod:2582
34645 msgid "Test new actions work before submitting them."
34646 msgstr ""
34647
34648 #. type: textblock
34649 #: ../src/guestfs.pod:2584
34650 msgid "You can use guestfish to try out new commands."
34651 msgstr ""
34652
34653 #. type: textblock
34654 #: ../src/guestfs.pod:2586
34655 msgid ""
34656 "Debugging the daemon is a problem because it runs inside a minimal "
34657 "environment.  However you can fprintf messages in the daemon to stderr, and "
34658 "they will show up if you use C<guestfish -v>."
34659 msgstr ""
34660
34661 #. type: =head2
34662 #: ../src/guestfs.pod:2590
34663 msgid "FORMATTING CODE AND OTHER CONVENTIONS"
34664 msgstr ""
34665
34666 #. type: textblock
34667 #: ../src/guestfs.pod:2592
34668 msgid ""
34669 "Our C source code generally adheres to some basic code-formatting "
34670 "conventions.  The existing code base is not totally consistent on this "
34671 "front, but we do prefer that contributed code be formatted similarly.  In "
34672 "short, use spaces-not-TABs for indentation, use 2 spaces for each "
34673 "indentation level, and other than that, follow the K&R style."
34674 msgstr ""
34675
34676 #. type: textblock
34677 #: ../src/guestfs.pod:2598
34678 msgid ""
34679 "If you use Emacs, add the following to one of one of your start-up files "
34680 "(e.g., ~/.emacs), to help ensure that you get indentation right:"
34681 msgstr ""
34682
34683 #. type: verbatim
34684 #: ../src/guestfs.pod:2601
34685 #, no-wrap
34686 msgid ""
34687 " ;;; In libguestfs, indent with spaces everywhere (not TABs).\n"
34688 " ;;; Exceptions: Makefile and ChangeLog modes.\n"
34689 " (add-hook 'find-file-hook\n"
34690 "     '(lambda () (if (and buffer-file-name\n"
34691 "                          (string-match \"/libguestfs\\\\>\"\n"
34692 "                              (buffer-file-name))\n"
34693 "                          (not (string-equal mode-name \"Change Log\"))\n"
34694 "                          (not (string-equal mode-name \"Makefile\")))\n"
34695 "                     (setq indent-tabs-mode nil))))\n"
34696 " \n"
34697 msgstr ""
34698
34699 #. type: verbatim
34700 #: ../src/guestfs.pod:2611
34701 #, no-wrap
34702 msgid ""
34703 " ;;; When editing C sources in libguestfs, use this style.\n"
34704 " (defun libguestfs-c-mode ()\n"
34705 "   \"C mode with adjusted defaults for use with libguestfs.\"\n"
34706 "   (interactive)\n"
34707 "   (c-set-style \"K&R\")\n"
34708 "   (setq c-indent-level 2)\n"
34709 "   (setq c-basic-offset 2))\n"
34710 " (add-hook 'c-mode-hook\n"
34711 "           '(lambda () (if (string-match \"/libguestfs\\\\>\"\n"
34712 "                               (buffer-file-name))\n"
34713 "                           (libguestfs-c-mode))))\n"
34714 "\n"
34715 msgstr ""
34716
34717 #. type: textblock
34718 #: ../src/guestfs.pod:2623
34719 msgid "Enable warnings when compiling (and fix any problems this finds):"
34720 msgstr ""
34721
34722 #. type: verbatim
34723 #: ../src/guestfs.pod:2626
34724 #, no-wrap
34725 msgid ""
34726 " ./configure --enable-gcc-warnings\n"
34727 "\n"
34728 msgstr ""
34729
34730 #. type: textblock
34731 #: ../src/guestfs.pod:2628
34732 msgid "Useful targets are:"
34733 msgstr ""
34734
34735 #. type: verbatim
34736 #: ../src/guestfs.pod:2630
34737 #, no-wrap
34738 msgid ""
34739 " make syntax-check  # checks the syntax of the C code\n"
34740 " make check         # runs the test suite\n"
34741 "\n"
34742 msgstr ""
34743
34744 #. type: =head2
34745 #: ../src/guestfs.pod:2633
34746 msgid "DAEMON CUSTOM PRINTF FORMATTERS"
34747 msgstr ""
34748
34749 #. type: textblock
34750 #: ../src/guestfs.pod:2635
34751 msgid ""
34752 "In the daemon code we have created custom printf formatters C<%Q> and C<%R>, "
34753 "which are used to do shell quoting."
34754 msgstr ""
34755
34756 #. type: =item
34757 #: ../src/guestfs.pod:2640
34758 msgid "%Q"
34759 msgstr ""
34760
34761 #. type: textblock
34762 #: ../src/guestfs.pod:2642
34763 msgid ""
34764 "Simple shell quoted string.  Any spaces or other shell characters are "
34765 "escaped for you."
34766 msgstr ""
34767
34768 #. type: =item
34769 #: ../src/guestfs.pod:2645
34770 msgid "%R"
34771 msgstr ""
34772
34773 #. type: textblock
34774 #: ../src/guestfs.pod:2647
34775 msgid ""
34776 "Same as C<%Q> except the string is treated as a path which is prefixed by "
34777 "the sysroot."
34778 msgstr ""
34779
34780 #. type: verbatim
34781 #: ../src/guestfs.pod:2654
34782 #, no-wrap
34783 msgid ""
34784 " asprintf (&cmd, \"cat %R\", path);\n"
34785 "\n"
34786 msgstr ""
34787
34788 #. type: textblock
34789 #: ../src/guestfs.pod:2656
34790 msgid "would produce C<cat /sysroot/some\\ path\\ with\\ spaces>"
34791 msgstr ""
34792
34793 #. type: textblock
34794 #: ../src/guestfs.pod:2658
34795 msgid ""
34796 "I<Note:> Do I<not> use these when you are passing parameters to the "
34797 "C<command{,r,v,rv}()> functions.  These parameters do NOT need to be quoted "
34798 "because they are not passed via the shell (instead, straight to exec).  You "
34799 "probably want to use the C<sysroot_path()> function however."
34800 msgstr ""
34801
34802 #. type: =head2
34803 #: ../src/guestfs.pod:2664
34804 msgid "SUBMITTING YOUR NEW API ACTIONS"
34805 msgstr ""
34806
34807 #. type: textblock
34808 #: ../src/guestfs.pod:2666
34809 msgid ""
34810 "Submit patches to the mailing list: "
34811 "L<http://www.redhat.com/mailman/listinfo/libguestfs> and CC to "
34812 "L<rjones@redhat.com>."
34813 msgstr ""
34814
34815 #. type: =head2
34816 #: ../src/guestfs.pod:2670
34817 msgid "INTERNATIONALIZATION (I18N) SUPPORT"
34818 msgstr ""
34819
34820 #. type: textblock
34821 #: ../src/guestfs.pod:2672
34822 msgid "We support i18n (gettext anyhow) in the library."
34823 msgstr ""
34824
34825 #. type: textblock
34826 #: ../src/guestfs.pod:2674
34827 msgid ""
34828 "However many messages come from the daemon, and we don't translate those at "
34829 "the moment.  One reason is that the appliance generally has all locale files "
34830 "removed from it, because they take up a lot of space.  So we'd have to readd "
34831 "some of those, as well as copying our PO files into the appliance."
34832 msgstr ""
34833
34834 #. type: textblock
34835 #: ../src/guestfs.pod:2680
34836 msgid ""
34837 "Debugging messages are never translated, since they are intended for the "
34838 "programmers."
34839 msgstr ""
34840
34841 #. type: =head2
34842 #: ../src/guestfs.pod:2683
34843 msgid "SOURCE CODE SUBDIRECTORIES"
34844 msgstr ""
34845
34846 #. type: textblock
34847 #: ../src/guestfs.pod:2689
34848 msgid "The libguestfs appliance, build scripts and so on."
34849 msgstr ""
34850
34851 #. type: =item
34852 #: ../src/guestfs.pod:2691
34853 msgid "C<capitests>"
34854 msgstr ""
34855
34856 #. type: textblock
34857 #: ../src/guestfs.pod:2693
34858 msgid "Automated tests of the C API."
34859 msgstr ""
34860
34861 #. type: =item
34862 #: ../src/guestfs.pod:2695
34863 msgid "C<cat>"
34864 msgstr ""
34865
34866 #. type: textblock
34867 #: ../src/guestfs.pod:2697
34868 msgid ""
34869 "The L<virt-cat(1)>, L<virt-filesystems(1)> and L<virt-ls(1)> commands and "
34870 "documentation."
34871 msgstr ""
34872
34873 #. type: =item
34874 #: ../src/guestfs.pod:2700
34875 msgid "C<caution>"
34876 msgstr ""
34877
34878 #. type: textblock
34879 #: ../src/guestfs.pod:2702
34880 msgid ""
34881 "Safety and liveness tests of components that libguestfs depends upon (not of "
34882 "libguestfs itself).  Mainly this is for qemu and the kernel."
34883 msgstr ""
34884
34885 #. type: =item
34886 #: ../src/guestfs.pod:2705
34887 msgid "C<contrib>"
34888 msgstr ""
34889
34890 #. type: textblock
34891 #: ../src/guestfs.pod:2707
34892 msgid "Outside contributions, experimental parts."
34893 msgstr ""
34894
34895 #. type: =item
34896 #: ../src/guestfs.pod:2709
34897 msgid "C<daemon>"
34898 msgstr ""
34899
34900 #. type: textblock
34901 #: ../src/guestfs.pod:2711
34902 msgid ""
34903 "The daemon that runs inside the libguestfs appliance and carries out "
34904 "actions."
34905 msgstr ""
34906
34907 #. type: =item
34908 #: ../src/guestfs.pod:2714
34909 msgid "C<df>"
34910 msgstr ""
34911
34912 #. type: textblock
34913 #: ../src/guestfs.pod:2716
34914 msgid "L<virt-df(1)> command and documentation."
34915 msgstr ""
34916
34917 #. type: =item
34918 #: ../src/guestfs.pod:2718
34919 msgid "C<edit>"
34920 msgstr ""
34921
34922 #. type: textblock
34923 #: ../src/guestfs.pod:2720
34924 msgid "L<virt-edit(1)> command and documentation."
34925 msgstr ""
34926
34927 #. type: =item
34928 #: ../src/guestfs.pod:2722
34929 msgid "C<examples>"
34930 msgstr ""
34931
34932 #. type: textblock
34933 #: ../src/guestfs.pod:2724
34934 msgid "C API example code."
34935 msgstr ""
34936
34937 #. type: =item
34938 #: ../src/guestfs.pod:2726
34939 msgid "C<fish>"
34940 msgstr ""
34941
34942 #. type: textblock
34943 #: ../src/guestfs.pod:2728
34944 msgid ""
34945 "L<guestfish(1)>, the command-line shell, and various shell scripts built on "
34946 "top such as L<virt-copy-in(1)>, L<virt-copy-out(1)>, L<virt-tar-in(1)>, "
34947 "L<virt-tar-out(1)>."
34948 msgstr ""
34949
34950 #. type: =item
34951 #: ../src/guestfs.pod:2732
34952 msgid "C<fuse>"
34953 msgstr ""
34954
34955 #. type: textblock
34956 #: ../src/guestfs.pod:2734
34957 msgid "L<guestmount(1)>, FUSE (userspace filesystem) built on top of libguestfs."
34958 msgstr ""
34959
34960 #. type: =item
34961 #: ../src/guestfs.pod:2736
34962 msgid "C<generator>"
34963 msgstr ""
34964
34965 #. type: textblock
34966 #: ../src/guestfs.pod:2738
34967 msgid ""
34968 "The crucially important generator, used to automatically generate large "
34969 "amounts of boilerplate C code for things like RPC and bindings."
34970 msgstr ""
34971
34972 #. type: =item
34973 #: ../src/guestfs.pod:2741
34974 msgid "C<images>"
34975 msgstr ""
34976
34977 #. type: textblock
34978 #: ../src/guestfs.pod:2743
34979 msgid "Files used by the test suite."
34980 msgstr ""
34981
34982 #. type: textblock
34983 #: ../src/guestfs.pod:2745
34984 msgid "Some \"phony\" guest images which we test against."
34985 msgstr ""
34986
34987 #. type: =item
34988 #: ../src/guestfs.pod:2747
34989 msgid "C<inspector>"
34990 msgstr ""
34991
34992 #. type: textblock
34993 #: ../src/guestfs.pod:2749
34994 msgid "L<virt-inspector(1)>, the virtual machine image inspector."
34995 msgstr ""
34996
34997 #. type: =item
34998 #: ../src/guestfs.pod:2751
34999 msgid "C<logo>"
35000 msgstr ""
35001
35002 #. type: textblock
35003 #: ../src/guestfs.pod:2753
35004 msgid "Logo used on the website.  The fish is called Arthur by the way."
35005 msgstr ""
35006
35007 #. type: =item
35008 #: ../src/guestfs.pod:2755
35009 msgid "C<m4>"
35010 msgstr ""
35011
35012 #. type: textblock
35013 #: ../src/guestfs.pod:2757
35014 msgid "M4 macros used by autoconf."
35015 msgstr ""
35016
35017 #. type: =item
35018 #: ../src/guestfs.pod:2759
35019 msgid "C<po>"
35020 msgstr ""
35021
35022 #. type: textblock
35023 #: ../src/guestfs.pod:2761
35024 msgid "Translations of simple gettext strings."
35025 msgstr ""
35026
35027 #. type: =item
35028 #: ../src/guestfs.pod:2763
35029 msgid "C<po-docs>"
35030 msgstr ""
35031
35032 #. type: textblock
35033 #: ../src/guestfs.pod:2765
35034 msgid ""
35035 "The build infrastructure and PO files for translations of manpages and POD "
35036 "files.  Eventually this will be combined with the C<po> directory, but that "
35037 "is rather complicated."
35038 msgstr ""
35039
35040 #. type: =item
35041 #: ../src/guestfs.pod:2769
35042 msgid "C<regressions>"
35043 msgstr ""
35044
35045 #. type: textblock
35046 #: ../src/guestfs.pod:2771
35047 msgid "Regression tests."
35048 msgstr ""
35049
35050 #. type: =item
35051 #: ../src/guestfs.pod:2773
35052 msgid "C<rescue>"
35053 msgstr ""
35054
35055 #. type: textblock
35056 #: ../src/guestfs.pod:2775
35057 msgid "L<virt-rescue(1)> command and documentation."
35058 msgstr ""
35059
35060 #. type: =item
35061 #: ../src/guestfs.pod:2777
35062 msgid "C<src>"
35063 msgstr ""
35064
35065 #. type: textblock
35066 #: ../src/guestfs.pod:2779
35067 msgid "Source code to the C library."
35068 msgstr ""
35069
35070 #. type: =item
35071 #: ../src/guestfs.pod:2781
35072 msgid "C<tools>"
35073 msgstr ""
35074
35075 #. type: textblock
35076 #: ../src/guestfs.pod:2783
35077 msgid "Command line tools written in Perl (L<virt-resize(1)> and many others)."
35078 msgstr ""
35079
35080 #. type: =item
35081 #: ../src/guestfs.pod:2785
35082 msgid "C<test-tool>"
35083 msgstr ""
35084
35085 #. type: textblock
35086 #: ../src/guestfs.pod:2787
35087 msgid ""
35088 "Test tool for end users to test if their qemu/kernel combination will work "
35089 "with libguestfs."
35090 msgstr ""
35091
35092 #. type: =item
35093 #: ../src/guestfs.pod:2790
35094 msgid "C<csharp>"
35095 msgstr ""
35096
35097 #. type: =item
35098 #: ../src/guestfs.pod:2792
35099 msgid "C<haskell>"
35100 msgstr ""
35101
35102 #. type: =item
35103 #: ../src/guestfs.pod:2794
35104 msgid "C<java>"
35105 msgstr ""
35106
35107 #. type: =item
35108 #: ../src/guestfs.pod:2796
35109 msgid "C<ocaml>"
35110 msgstr ""
35111
35112 #. type: =item
35113 #: ../src/guestfs.pod:2798
35114 msgid "C<php>"
35115 msgstr ""
35116
35117 #. type: =item
35118 #: ../src/guestfs.pod:2800
35119 msgid "C<perl>"
35120 msgstr ""
35121
35122 #. type: =item
35123 #: ../src/guestfs.pod:2802
35124 msgid "C<python>"
35125 msgstr ""
35126
35127 #. type: =item
35128 #: ../src/guestfs.pod:2804
35129 msgid "C<ruby>"
35130 msgstr ""
35131
35132 #. type: textblock
35133 #: ../src/guestfs.pod:2806
35134 msgid "Language bindings."
35135 msgstr ""
35136
35137 #. type: =head2
35138 #: ../src/guestfs.pod:2810
35139 msgid "MAKING A STABLE RELEASE"
35140 msgstr ""
35141
35142 #. type: textblock
35143 #: ../src/guestfs.pod:2812
35144 msgid ""
35145 "When we make a stable release, there are several steps documented here.  See "
35146 "L</LIBGUESTFS VERSION NUMBERS> for general information about the stable "
35147 "branch policy."
35148 msgstr ""
35149
35150 #. type: textblock
35151 #: ../src/guestfs.pod:2820
35152 msgid "Check C<make && make check> works on at least Fedora, Debian and Ubuntu."
35153 msgstr ""
35154
35155 #. type: textblock
35156 #: ../src/guestfs.pod:2825
35157 msgid "Finalize RELEASE-NOTES."
35158 msgstr ""
35159
35160 #. type: textblock
35161 #: ../src/guestfs.pod:2829
35162 msgid "Update ROADMAP."
35163 msgstr ""
35164
35165 #. type: textblock
35166 #: ../src/guestfs.pod:2833
35167 msgid "Run C<src/api-support/update-from-tarballs.sh>."
35168 msgstr ""
35169
35170 #. type: textblock
35171 #: ../src/guestfs.pod:2837
35172 msgid "Push and pull from Transifex."
35173 msgstr ""
35174
35175 #. type: textblock
35176 #: ../src/guestfs.pod:2839
35177 msgid "Run:"
35178 msgstr ""
35179
35180 #. type: verbatim
35181 #: ../src/guestfs.pod:2841
35182 #, no-wrap
35183 msgid ""
35184 " tx push -s\n"
35185 "\n"
35186 msgstr ""
35187
35188 #. type: textblock
35189 #: ../src/guestfs.pod:2843
35190 msgid "to push the latest POT files to Transifex.  Then run:"
35191 msgstr ""
35192
35193 #. type: verbatim
35194 #: ../src/guestfs.pod:2845
35195 #, no-wrap
35196 msgid ""
35197 " ./tx-pull.sh\n"
35198 "\n"
35199 msgstr ""
35200
35201 #. type: textblock
35202 #: ../src/guestfs.pod:2847
35203 msgid "which is a wrapper to pull the latest translated C<*.po> files."
35204 msgstr ""
35205
35206 #. type: textblock
35207 #: ../src/guestfs.pod:2851
35208 msgid ""
35209 "Create new stable and development directories under "
35210 "L<http://libguestfs.org/download>."
35211 msgstr ""
35212
35213 #. type: textblock
35214 #: ../src/guestfs.pod:2856
35215 msgid "Create the branch in git:"
35216 msgstr ""
35217
35218 #. type: verbatim
35219 #: ../src/guestfs.pod:2858
35220 #, no-wrap
35221 msgid ""
35222 " git tag -a 1.XX.0 -m \"Version 1.XX.0 (stable)\"\n"
35223 " git tag -a 1.YY.0 -m \"Version 1.YY.0 (development)\"\n"
35224 " git branch stable-1.XX\n"
35225 " git push origin tag 1.XX.0 1.YY.0 stable-1.XX\n"
35226 "\n"
35227 msgstr ""
35228
35229 #. type: =head1
35230 #: ../src/guestfs.pod:2865
35231 msgid "LIMITS"
35232 msgstr ""
35233
35234 #. type: =head2
35235 #: ../src/guestfs.pod:2867
35236 msgid "PROTOCOL LIMITS"
35237 msgstr ""
35238
35239 #. type: textblock
35240 #: ../src/guestfs.pod:2869
35241 msgid ""
35242 "Internally libguestfs uses a message-based protocol to pass API calls and "
35243 "their responses to and from a small \"appliance\" (see L</INTERNALS> for "
35244 "plenty more detail about this).  The maximum message size used by the "
35245 "protocol is slightly less than 4 MB.  For some API calls you may need to be "
35246 "aware of this limit.  The API calls which may be affected are individually "
35247 "documented, with a link back to this section of the documentation."
35248 msgstr ""
35249
35250 #. type: textblock
35251 #: ../src/guestfs.pod:2877
35252 msgid ""
35253 "A simple call such as L</guestfs_cat> returns its result (the file data) in "
35254 "a simple string.  Because this string is at some point internally encoded as "
35255 "a message, the maximum size that it can return is slightly under 4 MB.  If "
35256 "the requested file is larger than this then you will get an error."
35257 msgstr ""
35258
35259 #. type: textblock
35260 #: ../src/guestfs.pod:2883
35261 msgid ""
35262 "In order to transfer large files into and out of the guest filesystem, you "
35263 "need to use particular calls that support this.  The sections L</UPLOADING> "
35264 "and L</DOWNLOADING> document how to do this."
35265 msgstr ""
35266
35267 #. type: textblock
35268 #: ../src/guestfs.pod:2887
35269 msgid ""
35270 "You might also consider mounting the disk image using our FUSE filesystem "
35271 "support (L<guestmount(1)>)."
35272 msgstr ""
35273
35274 #. type: =head2
35275 #: ../src/guestfs.pod:2890
35276 msgid "MAXIMUM NUMBER OF DISKS"
35277 msgstr ""
35278
35279 #. type: textblock
35280 #: ../src/guestfs.pod:2892
35281 msgid "When using virtio disks (the default) the current limit is B<25> disks."
35282 msgstr ""
35283
35284 #. type: textblock
35285 #: ../src/guestfs.pod:2895
35286 msgid ""
35287 "Virtio itself consumes 1 virtual PCI slot per disk, and PCI is limited to 31 "
35288 "slots.  However febootstrap only understands disks with names C</dev/vda> "
35289 "through C</dev/vdz> (26 letters) and it reserves one disk for its own "
35290 "purposes."
35291 msgstr ""
35292
35293 #. type: textblock
35294 #: ../src/guestfs.pod:2900
35295 msgid ""
35296 "We are working to substantially raise this limit in future versions but it "
35297 "requires complex changes to qemu."
35298 msgstr ""
35299
35300 #. type: textblock
35301 #: ../src/guestfs.pod:2903
35302 msgid ""
35303 "In future versions of libguestfs it should also be possible to \"hot plug\" "
35304 "disks (add and remove disks after calling L</guestfs_launch>).  This also "
35305 "requires changes to qemu."
35306 msgstr ""
35307
35308 #. type: =head2
35309 #: ../src/guestfs.pod:2907
35310 msgid "MAXIMUM NUMBER OF PARTITIONS PER DISK"
35311 msgstr ""
35312
35313 #. type: textblock
35314 #: ../src/guestfs.pod:2909
35315 msgid "Virtio limits the maximum number of partitions per disk to B<15>."
35316 msgstr ""
35317
35318 #. type: textblock
35319 #: ../src/guestfs.pod:2911
35320 msgid ""
35321 "This is because it reserves 4 bits for the minor device number (thus "
35322 "C</dev/vda>, and C</dev/vda1> through C</dev/vda15>)."
35323 msgstr ""
35324
35325 #. type: textblock
35326 #: ../src/guestfs.pod:2914
35327 msgid ""
35328 "If you attach a disk with more than 15 partitions, the extra partitions are "
35329 "ignored by libguestfs."
35330 msgstr ""
35331
35332 #. type: =head2
35333 #: ../src/guestfs.pod:2917
35334 msgid "MAXIMUM SIZE OF A DISK"
35335 msgstr ""
35336
35337 #. type: textblock
35338 #: ../src/guestfs.pod:2919
35339 msgid "Probably the limit is between 2**63-1 and 2**64-1 bytes."
35340 msgstr ""
35341
35342 #. type: textblock
35343 #: ../src/guestfs.pod:2921
35344 msgid ""
35345 "We have tested block devices up to 1 exabyte (2**60 or "
35346 "1,152,921,504,606,846,976 bytes) using sparse files backed by an XFS host "
35347 "filesystem."
35348 msgstr ""
35349
35350 #. type: textblock
35351 #: ../src/guestfs.pod:2925
35352 msgid ""
35353 "Although libguestfs probably does not impose any limit, the underlying host "
35354 "storage will.  If you store disk images on a host ext4 filesystem, then the "
35355 "maximum size will be limited by the maximum ext4 file size (currently 16 "
35356 "TB).  If you store disk images as host logical volumes then you are limited "
35357 "by the maximum size of an LV."
35358 msgstr ""
35359
35360 #. type: textblock
35361 #: ../src/guestfs.pod:2931
35362 msgid ""
35363 "For the hugest disk image files, we recommend using XFS on the host for "
35364 "storage."
35365 msgstr ""
35366
35367 #. type: =head2
35368 #: ../src/guestfs.pod:2934
35369 msgid "MAXIMUM SIZE OF A PARTITION"
35370 msgstr ""
35371
35372 #. type: textblock
35373 #: ../src/guestfs.pod:2936
35374 msgid ""
35375 "The MBR (ie. classic MS-DOS) partitioning scheme uses 32 bit sector "
35376 "numbers.  Assuming a 512 byte sector size, this means that MBR cannot "
35377 "address a partition located beyond 2 TB on the disk."
35378 msgstr ""
35379
35380 #. type: textblock
35381 #: ../src/guestfs.pod:2940
35382 msgid ""
35383 "It is recommended that you use GPT partitions on disks which are larger than "
35384 "this size.  GPT uses 64 bit sector numbers and so can address partitions "
35385 "which are theoretically larger than the largest disk we could support."
35386 msgstr ""
35387
35388 #. type: =head2
35389 #: ../src/guestfs.pod:2945
35390 msgid "MAXIMUM SIZE OF A FILESYSTEM, FILES, DIRECTORIES"
35391 msgstr ""
35392
35393 #. type: textblock
35394 #: ../src/guestfs.pod:2947
35395 msgid ""
35396 "This depends on the filesystem type.  libguestfs itself does not impose any "
35397 "known limit.  Consult Wikipedia or the filesystem documentation to find out "
35398 "what these limits are."
35399 msgstr ""
35400
35401 #. type: =head2
35402 #: ../src/guestfs.pod:2951
35403 msgid "MAXIMUM UPLOAD AND DOWNLOAD"
35404 msgstr ""
35405
35406 #. type: textblock
35407 #: ../src/guestfs.pod:2953
35408 msgid ""
35409 "The API functions L</guestfs_upload>, L</guestfs_download>, "
35410 "L</guestfs_tar_in>, L</guestfs_tar_out> and the like allow unlimited sized "
35411 "uploads and downloads."
35412 msgstr ""
35413
35414 #. type: =head2
35415 #: ../src/guestfs.pod:2957
35416 msgid "INSPECTION LIMITS"
35417 msgstr ""
35418
35419 #. type: textblock
35420 #: ../src/guestfs.pod:2959
35421 msgid ""
35422 "The inspection code has several arbitrary limits on things like the size of "
35423 "Windows Registry hive it will read, and the length of product name.  These "
35424 "are intended to stop a malicious guest from consuming arbitrary amounts of "
35425 "memory and disk space on the host, and should not be reached in practice.  "
35426 "See the source code for more information."
35427 msgstr ""
35428
35429 #. type: textblock
35430 #: ../src/guestfs.pod:2975
35431 msgid ""
35432 "Set C<LIBGUESTFS_DEBUG=1> to enable verbose messages.  This has the same "
35433 "effect as calling C<guestfs_set_verbose (g, 1)>."
35434 msgstr ""
35435
35436 #. type: textblock
35437 #: ../src/guestfs.pod:2987
35438 msgid ""
35439 "Set the path that libguestfs uses to search for a supermin appliance.  See "
35440 "the discussion of paths in section L</PATH> above."
35441 msgstr ""
35442
35443 #. type: textblock
35444 #: ../src/guestfs.pod:2996
35445 msgid "See also L</QEMU WRAPPERS> above."
35446 msgstr ""
35447
35448 #. type: textblock
35449 #: ../src/guestfs.pod:3000
35450 msgid ""
35451 "Set C<LIBGUESTFS_TRACE=1> to enable command traces.  This has the same "
35452 "effect as calling C<guestfs_set_trace (g, 1)>."
35453 msgstr ""
35454
35455 #. type: textblock
35456 #: ../src/guestfs.pod:3018
35457 msgid ""
35458 "L<guestfs-examples(3)>, L<guestfs-java(3)>, L<guestfs-ocaml(3)>, "
35459 "L<guestfs-perl(3)>, L<guestfs-python(3)>, L<guestfs-ruby(3)>, "
35460 "L<guestfish(1)>, L<guestmount(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, "
35461 "L<virt-copy-out(1)>, L<virt-df(1)>, L<virt-edit(1)>, L<virt-filesystems(1)>, "
35462 "L<virt-inspector(1)>, L<virt-list-filesystems(1)>, "
35463 "L<virt-list-partitions(1)>, L<virt-ls(1)>, L<virt-make-fs(1)>, "
35464 "L<virt-rescue(1)>, L<virt-tar(1)>, L<virt-tar-in(1)>, L<virt-tar-out(1)>, "
35465 "L<virt-win-reg(1)>, L<qemu(1)>, L<febootstrap(1)>, L<hivex(3)>, "
35466 "L<http://libguestfs.org/>."
35467 msgstr ""
35468
35469 #. type: textblock
35470 #: ../src/guestfs.pod:3047
35471 msgid ""
35472 "Tools with a similar purpose: L<fdisk(8)>, L<parted(8)>, L<kpartx(8)>, "
35473 "L<lvm(8)>, L<disktype(1)>."
35474 msgstr ""
35475
35476 #. type: =head1
35477 #: ../src/guestfs.pod:3054 ../tools/virt-make-fs.pl:553 ../tools/virt-win-reg.pl:761
35478 msgid "BUGS"
35479 msgstr ""
35480
35481 #. type: textblock
35482 #: ../src/guestfs.pod:3056
35483 msgid "To get a list of bugs against libguestfs use this link:"
35484 msgstr ""
35485
35486 #. type: textblock
35487 #: ../src/guestfs.pod:3058
35488 msgid "L<https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools>"
35489 msgstr ""
35490
35491 #. type: textblock
35492 #: ../src/guestfs.pod:3060
35493 msgid "To report a new bug against libguestfs use this link:"
35494 msgstr ""
35495
35496 #. type: textblock
35497 #: ../src/guestfs.pod:3062
35498 msgid "L<https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools>"
35499 msgstr ""
35500
35501 #. type: textblock
35502 #: ../src/guestfs.pod:3064
35503 msgid "When reporting a bug, please check:"
35504 msgstr ""
35505
35506 #. type: textblock
35507 #: ../src/guestfs.pod:3070
35508 msgid "That the bug hasn't been reported already."
35509 msgstr ""
35510
35511 #. type: textblock
35512 #: ../src/guestfs.pod:3074
35513 msgid "That you are testing a recent version."
35514 msgstr ""
35515
35516 #. type: textblock
35517 #: ../src/guestfs.pod:3078
35518 msgid "Describe the bug accurately, and give a way to reproduce it."
35519 msgstr ""
35520
35521 #. type: textblock
35522 #: ../src/guestfs.pod:3082
35523 msgid ""
35524 "Run libguestfs-test-tool and paste the B<complete, unedited> output into the "
35525 "bug report."
35526 msgstr ""
35527
35528 #. type: textblock
35529 #: ../test-tool/libguestfs-test-tool.pod:5
35530 msgid "libguestfs-test-tool - End user tests for libguestfs"
35531 msgstr ""
35532
35533 #. type: verbatim
35534 #: ../test-tool/libguestfs-test-tool.pod:9
35535 #, no-wrap
35536 msgid ""
35537 " libguestfs-test-tool [--options]\n"
35538 "\n"
35539 msgstr ""
35540
35541 #. type: textblock
35542 #: ../test-tool/libguestfs-test-tool.pod:13
35543 msgid ""
35544 "libguestfs-test-tool is a test program shipped with libguestfs to end users "
35545 "and developers, to allow them to check basic libguestfs functionality is "
35546 "working.  This is needed because libguestfs occasionally breaks for reasons "
35547 "beyond our control: usually because of changes in the underlying qemu or "
35548 "kernel packages, or the host environment."
35549 msgstr ""
35550
35551 #. type: textblock
35552 #: ../test-tool/libguestfs-test-tool.pod:20
35553 msgid "If you suspect a problem in libguestfs, then just run:"
35554 msgstr ""
35555
35556 #. type: verbatim
35557 #: ../test-tool/libguestfs-test-tool.pod:22
35558 #, no-wrap
35559 msgid ""
35560 " libguestfs-test-tool\n"
35561 "\n"
35562 msgstr ""
35563
35564 #. type: textblock
35565 #: ../test-tool/libguestfs-test-tool.pod:24
35566 msgid "It will print lots of diagnostic messages."
35567 msgstr ""
35568
35569 #. type: textblock
35570 #: ../test-tool/libguestfs-test-tool.pod:26
35571 msgid "If it runs to completion successfully, you will see this near the end:"
35572 msgstr ""
35573
35574 #. type: verbatim
35575 #: ../test-tool/libguestfs-test-tool.pod:28
35576 #, no-wrap
35577 msgid ""
35578 " ===== TEST FINISHED OK =====\n"
35579 "\n"
35580 msgstr ""
35581
35582 #. type: textblock
35583 #: ../test-tool/libguestfs-test-tool.pod:30
35584 msgid "and the test tool will exit with code 0."
35585 msgstr ""
35586
35587 #. type: textblock
35588 #: ../test-tool/libguestfs-test-tool.pod:32
35589 msgid ""
35590 "If it fails (and/or exits with non-zero error code), please paste the "
35591 "B<complete, unedited> output of the test tool into a bug report.  More "
35592 "information about reporting bugs can be found on the "
35593 "L<http://libguestfs.org/> website."
35594 msgstr ""
35595
35596 #. type: =item
35597 #: ../test-tool/libguestfs-test-tool.pod:41
35598 msgid "I<--help>"
35599 msgstr ""
35600
35601 #. type: textblock
35602 #: ../test-tool/libguestfs-test-tool.pod:43
35603 msgid "Display short usage information and exit."
35604 msgstr ""
35605
35606 #. type: =item
35607 #: ../test-tool/libguestfs-test-tool.pod:45
35608 msgid "I<--qemu qemu_binary>"
35609 msgstr ""
35610
35611 #. type: textblock
35612 #: ../test-tool/libguestfs-test-tool.pod:47
35613 msgid ""
35614 "If you have downloaded another qemu binary, point this option at the full "
35615 "path of the binary to try it."
35616 msgstr ""
35617
35618 #. type: =item
35619 #: ../test-tool/libguestfs-test-tool.pod:50
35620 msgid "I<--qemudir qemu_source_dir>"
35621 msgstr ""
35622
35623 #. type: textblock
35624 #: ../test-tool/libguestfs-test-tool.pod:52
35625 msgid ""
35626 "If you have compiled qemu from source, point this option at the source "
35627 "directory to try it."
35628 msgstr ""
35629
35630 #. type: =item
35631 #: ../test-tool/libguestfs-test-tool.pod:55
35632 msgid "I<--timeout N>"
35633 msgstr ""
35634
35635 #. type: textblock
35636 #: ../test-tool/libguestfs-test-tool.pod:57
35637 msgid ""
35638 "Set the launch timeout to C<N> seconds.  The default is 120 seconds which "
35639 "does not usually need to be adjusted unless your machine is very slow."
35640 msgstr ""
35641
35642 #. type: =head1
35643 #: ../test-tool/libguestfs-test-tool.pod:63
35644 msgid "TRYING OUT A DIFFERENT VERSION OF QEMU"
35645 msgstr ""
35646
35647 #. type: textblock
35648 #: ../test-tool/libguestfs-test-tool.pod:65
35649 msgid ""
35650 "If you have compiled another version of qemu from source and would like to "
35651 "try that, then you can use the I<--qemudir> option to point to the qemu "
35652 "source directory."
35653 msgstr ""
35654
35655 #. type: textblock
35656 #: ../test-tool/libguestfs-test-tool.pod:69
35657 msgid ""
35658 "If you have downloaded a qemu binary from somewhere, use the I<--qemu> "
35659 "option to point to the binary."
35660 msgstr ""
35661
35662 #. type: textblock
35663 #: ../test-tool/libguestfs-test-tool.pod:72
35664 msgid ""
35665 "When using an alternate qemu with libguestfs, usually you would need to "
35666 "write a qemu wrapper script (see section I<QEMU WRAPPERS> in "
35667 "L<guestfs(3)>).  libguestfs-test-tool writes a temporary qemu wrapper script "
35668 "when you use either of the I<--qemudir> or I<--qemu> options."
35669 msgstr ""
35670
35671 #. type: textblock
35672 #: ../test-tool/libguestfs-test-tool.pod:79
35673 msgid ""
35674 "libguestfs-test-tool returns I<0> if the tests completed without error, or "
35675 "I<1> if there was an error."
35676 msgstr ""
35677
35678 #. type: textblock
35679 #: ../test-tool/libguestfs-test-tool.pod:84
35680 msgid ""
35681 "For the full list of environment variables which may affect libguestfs, "
35682 "please see the L<guestfs(3)> manual page."
35683 msgstr ""
35684
35685 #. type: textblock
35686 #: ../test-tool/libguestfs-test-tool.pod:89
35687 msgid "L<guestfs(3)>, L<http://libguestfs.org/>, L<http://qemu.org/>."
35688 msgstr ""
35689
35690 #. type: textblock
35691 #: ../tools/virt-list-filesystems.pl:32
35692 msgid "virt-list-filesystems - List filesystems in a virtual machine or disk image"
35693 msgstr ""
35694
35695 #. type: verbatim
35696 #: ../tools/virt-list-filesystems.pl:36
35697 #, no-wrap
35698 msgid ""
35699 " virt-list-filesystems [--options] domname\n"
35700 "\n"
35701 msgstr ""
35702
35703 #. type: verbatim
35704 #: ../tools/virt-list-filesystems.pl:38
35705 #, no-wrap
35706 msgid ""
35707 " virt-list-filesystems [--options] disk.img [disk.img ...]\n"
35708 "\n"
35709 msgstr ""
35710
35711 #. type: textblock
35712 #: ../tools/virt-list-filesystems.pl:42 ../tools/virt-list-partitions.pl:42
35713 msgid ""
35714 "This tool is obsolete.  Use L<virt-filesystems(1)> as a more flexible "
35715 "replacement."
35716 msgstr ""
35717
35718 #. type: textblock
35719 #: ../tools/virt-list-filesystems.pl:45
35720 msgid ""
35721 "C<virt-list-filesystems> is a command line tool to list the filesystems that "
35722 "are contained in a virtual machine or disk image."
35723 msgstr ""
35724
35725 #. type: textblock
35726 #: ../tools/virt-list-filesystems.pl:49
35727 msgid ""
35728 "C<virt-list-filesystems> is just a simple wrapper around L<libguestfs(3)> "
35729 "functionality.  For more complex cases you should look at the "
35730 "L<guestfish(1)> tool."
35731 msgstr ""
35732
35733 #. type: textblock
35734 #: ../tools/virt-list-filesystems.pl:112
35735 msgid ""
35736 "With this option, C<virt-list-filesystems> displays the type of each "
35737 "filesystem too (where \"type\" means C<ext3>, C<xfs> etc.)"
35738 msgstr ""
35739
35740 #. type: =item
35741 #: ../tools/virt-list-filesystems.pl:119
35742 msgid "B<-a>"
35743 msgstr ""
35744
35745 #. type: textblock
35746 #: ../tools/virt-list-filesystems.pl:123
35747 msgid ""
35748 "Normally we only show mountable filesystems.  If this option is given then "
35749 "swap devices are shown too."
35750 msgstr ""
35751
35752 #. type: textblock
35753 #: ../tools/virt-list-filesystems.pl:197
35754 msgid ""
35755 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-tar(1)>, "
35756 "L<virt-filesystems(1)>, L<virt-list-partitions(1)>, L<Sys::Guestfs(3)>, "
35757 "L<Sys::Guestfs::Lib(3)>, L<Sys::Virt(3)>, L<http://libguestfs.org/>."
35758 msgstr ""
35759
35760 #. type: textblock
35761 #: ../tools/virt-list-filesystems.pl:214 ../tools/virt-tar.pl:317
35762 msgid "Copyright (C) 2009 Red Hat Inc."
35763 msgstr ""
35764
35765 #. type: textblock
35766 #: ../tools/virt-list-partitions.pl:32
35767 msgid "virt-list-partitions - List partitions in a virtual machine or disk image"
35768 msgstr ""
35769
35770 #. type: verbatim
35771 #: ../tools/virt-list-partitions.pl:36
35772 #, no-wrap
35773 msgid ""
35774 " virt-list-partitions [--options] domname\n"
35775 "\n"
35776 msgstr ""
35777
35778 #. type: verbatim
35779 #: ../tools/virt-list-partitions.pl:38
35780 #, no-wrap
35781 msgid ""
35782 " virt-list-partitions [--options] disk.img [disk.img ...]\n"
35783 "\n"
35784 msgstr ""
35785
35786 #. type: textblock
35787 #: ../tools/virt-list-partitions.pl:45
35788 msgid ""
35789 "C<virt-list-partitions> is a command line tool to list the partitions that "
35790 "are contained in a virtual machine or disk image.  It is mainly useful as a "
35791 "first step to using L<virt-resize(1)>."
35792 msgstr ""
35793
35794 #. type: textblock
35795 #: ../tools/virt-list-partitions.pl:50
35796 msgid ""
35797 "C<virt-list-partitions> is just a simple wrapper around L<libguestfs(3)> "
35798 "functionality.  For more complex cases you should look at the "
35799 "L<guestfish(1)> tool."
35800 msgstr ""
35801
35802 #. type: textblock
35803 #: ../tools/virt-list-partitions.pl:113
35804 msgid "Show sizes in human-readable form (eg. \"1G\")."
35805 msgstr ""
35806
35807 #. type: textblock
35808 #: ../tools/virt-list-partitions.pl:123
35809 msgid ""
35810 "With this option, C<virt-list-partitions> displays the type and size of each "
35811 "partition too (where \"type\" means C<ext3>, C<pv> etc.)"
35812 msgstr ""
35813
35814 #. type: =item
35815 #: ../tools/virt-list-partitions.pl:130
35816 msgid "B<-t>"
35817 msgstr ""
35818
35819 #. type: =item
35820 #: ../tools/virt-list-partitions.pl:132
35821 msgid "B<--total>"
35822 msgstr ""
35823
35824 #. type: textblock
35825 #: ../tools/virt-list-partitions.pl:134
35826 msgid "Display the total size of each block device (as a separate row or rows)."
35827 msgstr ""
35828
35829 #. type: textblock
35830 #: ../tools/virt-list-partitions.pl:267
35831 msgid ""
35832 "L<guestfs(3)>, L<guestfish(1)>, L<virt-filesystems(1)>, "
35833 "L<virt-list-filesystems(1)>, L<virt-resize(1)>, L<Sys::Guestfs(3)>, "
35834 "L<Sys::Guestfs::Lib(3)>, L<Sys::Virt(3)>, L<http://libguestfs.org/>."
35835 msgstr ""
35836
35837 #. type: textblock
35838 #: ../tools/virt-list-partitions.pl:283
35839 msgid "Copyright (C) 2009-2010 Red Hat Inc."
35840 msgstr ""
35841
35842 #. type: textblock
35843 #: ../tools/virt-make-fs.pl:37
35844 msgid "virt-make-fs - Make a filesystem from a tar archive or files"
35845 msgstr ""
35846
35847 #. type: verbatim
35848 #: ../tools/virt-make-fs.pl:41
35849 #, no-wrap
35850 msgid ""
35851 " virt-make-fs [--options] input.tar output.img\n"
35852 "\n"
35853 msgstr ""
35854
35855 #. type: verbatim
35856 #: ../tools/virt-make-fs.pl:43
35857 #, no-wrap
35858 msgid ""
35859 " virt-make-fs [--options] input.tar.gz output.img\n"
35860 "\n"
35861 msgstr ""
35862
35863 #. type: verbatim
35864 #: ../tools/virt-make-fs.pl:45
35865 #, no-wrap
35866 msgid ""
35867 " virt-make-fs [--options] directory output.img\n"
35868 "\n"
35869 msgstr ""
35870
35871 #. type: textblock
35872 #: ../tools/virt-make-fs.pl:49
35873 msgid ""
35874 "Virt-make-fs is a command line tool for creating a filesystem from a tar "
35875 "archive or some files in a directory.  It is similar to tools like "
35876 "L<mkisofs(1)>, L<genisoimage(1)> and L<mksquashfs(1)>.  Unlike those tools, "
35877 "it can create common filesystem types like ext2/3 or NTFS, which can be "
35878 "useful if you want to attach these filesystems to existing virtual machines "
35879 "(eg. to import large amounts of read-only data to a VM)."
35880 msgstr ""
35881
35882 #. type: textblock
35883 #: ../tools/virt-make-fs.pl:57
35884 msgid "Basic usage is:"
35885 msgstr ""
35886
35887 #. type: verbatim
35888 #: ../tools/virt-make-fs.pl:59
35889 #, no-wrap
35890 msgid ""
35891 " virt-make-fs input output\n"
35892 "\n"
35893 msgstr ""
35894
35895 #. type: textblock
35896 #: ../tools/virt-make-fs.pl:61
35897 msgid ""
35898 "where C<input> is either a directory containing files that you want to add, "
35899 "or a tar archive (either uncompressed tar or gzip-compressed tar); and "
35900 "C<output> is a disk image.  The input type is detected automatically.  The "
35901 "output disk image defaults to a raw ext2 image unless you specify extra "
35902 "flags (see L</OPTIONS> below)."
35903 msgstr ""
35904
35905 #. type: =head2
35906 #: ../tools/virt-make-fs.pl:67
35907 msgid "EXTRA SPACE"
35908 msgstr ""
35909
35910 #. type: textblock
35911 #: ../tools/virt-make-fs.pl:69
35912 msgid ""
35913 "Unlike formats such as tar and squashfs, a filesystem does not \"just fit\" "
35914 "the files that it contains, but might have extra space.  Depending on how "
35915 "you are going to use the output, you might think this extra space is wasted "
35916 "and want to minimize it, or you might want to leave space so that more files "
35917 "can be added later.  Virt-make-fs defaults to minimizing the extra space, "
35918 "but you can use the I<--size> flag to leave space in the filesystem if you "
35919 "want it."
35920 msgstr ""
35921
35922 #. type: textblock
35923 #: ../tools/virt-make-fs.pl:77
35924 msgid ""
35925 "An alternative way to leave extra space but not make the output image any "
35926 "bigger is to use an alternative disk image format (instead of the default "
35927 "\"raw\" format).  Using I<--format=qcow2> will use the native QEmu/KVM qcow2 "
35928 "image format (check your hypervisor supports this before using it).  This "
35929 "allows you to choose a large I<--size> but the extra space won't actually be "
35930 "allocated in the image until you try to store something in it."
35931 msgstr ""
35932
35933 #. type: textblock
35934 #: ../tools/virt-make-fs.pl:85
35935 msgid ""
35936 "Don't forget that you can also use local commands including L<resize2fs(8)> "
35937 "and L<virt-resize(1)> to resize existing filesystems, or rerun virt-make-fs "
35938 "to build another image from scratch."
35939 msgstr ""
35940
35941 #. type: =head3
35942 #: ../tools/virt-make-fs.pl:89 ../tools/virt-make-fs.pl:123 ../tools/virt-make-fs.pl:142
35943 msgid "EXAMPLE"
35944 msgstr ""
35945
35946 #. type: verbatim
35947 #: ../tools/virt-make-fs.pl:91
35948 #, no-wrap
35949 msgid ""
35950 " virt-make-fs --format=qcow2 --size=+200M input output.img\n"
35951 "\n"
35952 msgstr ""
35953
35954 #. type: =head2
35955 #: ../tools/virt-make-fs.pl:93
35956 msgid "FILESYSTEM TYPE"
35957 msgstr ""
35958
35959 #. type: textblock
35960 #: ../tools/virt-make-fs.pl:95
35961 msgid ""
35962 "The default filesystem type is C<ext2>.  Just about any filesystem type that "
35963 "libguestfs supports can be used (but I<not> read-only formats like "
35964 "ISO9660).  Here are some of the more common choices:"
35965 msgstr ""
35966
35967 #. type: =item
35968 #: ../tools/virt-make-fs.pl:101
35969 msgid "I<ext3>"
35970 msgstr ""
35971
35972 #. type: textblock
35973 #: ../tools/virt-make-fs.pl:103
35974 msgid ""
35975 "Note that ext3 filesystems contain a journal, typically 1-32 MB in size.  If "
35976 "you are not going to use the filesystem in a way that requires the journal, "
35977 "then this is just wasted overhead."
35978 msgstr ""
35979
35980 #. type: =item
35981 #: ../tools/virt-make-fs.pl:107
35982 msgid "I<ntfs> or I<vfat>"
35983 msgstr ""
35984
35985 #. type: textblock
35986 #: ../tools/virt-make-fs.pl:109
35987 msgid "Useful if exporting data to a Windows guest."
35988 msgstr ""
35989
35990 #. type: textblock
35991 #: ../tools/virt-make-fs.pl:111
35992 msgid ""
35993 "I<Note for vfat>: The tar archive or local directory must only contain files "
35994 "which are owned by root (ie. UID:GID = 0:0).  The reason is that the tar "
35995 "program running within libguestfs is unable to change the ownership of "
35996 "non-root files, since vfat itself does not support this."
35997 msgstr ""
35998
35999 #. type: =item
36000 #: ../tools/virt-make-fs.pl:116
36001 msgid "I<minix>"
36002 msgstr ""
36003
36004 #. type: textblock
36005 #: ../tools/virt-make-fs.pl:118
36006 msgid ""
36007 "Lower overhead than C<ext2>, but certain limitations on filename length and "
36008 "total filesystem size."
36009 msgstr ""
36010
36011 #. type: verbatim
36012 #: ../tools/virt-make-fs.pl:125
36013 #, no-wrap
36014 msgid ""
36015 " virt-make-fs --type=minix input minixfs.img\n"
36016 "\n"
36017 msgstr ""
36018
36019 #. type: =head2
36020 #: ../tools/virt-make-fs.pl:127
36021 msgid "TO PARTITION OR NOT TO PARTITION"
36022 msgstr ""
36023
36024 #. type: textblock
36025 #: ../tools/virt-make-fs.pl:129
36026 msgid "Optionally virt-make-fs can add a partition table to the output disk."
36027 msgstr ""
36028
36029 #. type: textblock
36030 #: ../tools/virt-make-fs.pl:131
36031 msgid ""
36032 "Adding a partition can make the disk image more compatible with certain "
36033 "virtualized operating systems which don't expect to see a filesystem "
36034 "directly located on a block device (Linux doesn't care and will happily "
36035 "handle both types)."
36036 msgstr ""
36037
36038 #. type: textblock
36039 #: ../tools/virt-make-fs.pl:136
36040 msgid ""
36041 "On the other hand, if you have a partition table then the output image is no "
36042 "longer a straight filesystem.  For example you cannot run L<fsck(8)> "
36043 "directly on a partitioned disk image.  (However libguestfs tools such as "
36044 "L<guestfish(1)> and L<virt-resize(1)> can still be used)."
36045 msgstr ""
36046
36047 #. type: textblock
36048 #: ../tools/virt-make-fs.pl:144
36049 msgid "Add an MBR partition:"
36050 msgstr ""
36051
36052 #. type: verbatim
36053 #: ../tools/virt-make-fs.pl:146
36054 #, no-wrap
36055 msgid ""
36056 " virt-make-fs --partition -- input disk.img\n"
36057 "\n"
36058 msgstr ""
36059
36060 #. type: textblock
36061 #: ../tools/virt-make-fs.pl:148
36062 msgid ""
36063 "If the output disk image could be terabyte-sized or larger, it's better to "
36064 "use an EFI/GPT-compatible partition table:"
36065 msgstr ""
36066
36067 #. type: verbatim
36068 #: ../tools/virt-make-fs.pl:151
36069 #, no-wrap
36070 msgid ""
36071 " virt-make-fs --partition=gpt --size=+4T --format=qcow2 input disk.img\n"
36072 "\n"
36073 msgstr ""
36074
36075 #. type: textblock
36076 #: ../tools/virt-make-fs.pl:179
36077 msgid "Enable debugging information."
36078 msgstr ""
36079
36080 #. type: =item
36081 #: ../tools/virt-make-fs.pl:185
36082 msgid "B<--size=E<lt>NE<gt>>"
36083 msgstr ""
36084
36085 #. type: =item
36086 #: ../tools/virt-make-fs.pl:187
36087 msgid "B<--size=+E<lt>NE<gt>>"
36088 msgstr ""
36089
36090 #. type: =item
36091 #: ../tools/virt-make-fs.pl:189
36092 msgid "B<-s E<lt>NE<gt>>"
36093 msgstr ""
36094
36095 #. type: =item
36096 #: ../tools/virt-make-fs.pl:191
36097 msgid "B<-s +E<lt>NE<gt>>"
36098 msgstr ""
36099
36100 #. type: textblock
36101 #: ../tools/virt-make-fs.pl:193
36102 msgid "Use the I<--size> (or I<-s>) option to choose the size of the output image."
36103 msgstr ""
36104
36105 #. type: textblock
36106 #: ../tools/virt-make-fs.pl:196
36107 msgid ""
36108 "If this option is I<not> given, then the output image will be just large "
36109 "enough to contain all the files, with not much wasted space."
36110 msgstr ""
36111
36112 #. type: textblock
36113 #: ../tools/virt-make-fs.pl:199
36114 msgid ""
36115 "To choose a fixed size output disk, specify an absolute number followed by "
36116 "b/K/M/G/T/P/E to mean bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, "
36117 "Petabytes or Exabytes.  This must be large enough to contain all the input "
36118 "files, else you will get an error."
36119 msgstr ""
36120
36121 #. type: textblock
36122 #: ../tools/virt-make-fs.pl:204
36123 msgid ""
36124 "To leave extra space, specify C<+> (plus sign) and a number followed by "
36125 "b/K/M/G/T/P/E to mean bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, "
36126 "Petabytes or Exabytes.  For example: I<--size=+200M> means enough space for "
36127 "the input files, and (approximately) an extra 200 MB free space."
36128 msgstr ""
36129
36130 #. type: textblock
36131 #: ../tools/virt-make-fs.pl:210
36132 msgid ""
36133 "Note that virt-make-fs estimates free space, and therefore will not produce "
36134 "filesystems containing precisely the free space requested.  (It is much more "
36135 "expensive and time-consuming to produce a filesystem which has precisely the "
36136 "desired free space)."
36137 msgstr ""
36138
36139 #. type: =item
36140 #: ../tools/virt-make-fs.pl:219
36141 msgid "B<--format=E<lt>fmtE<gt>>"
36142 msgstr ""
36143
36144 #. type: =item
36145 #: ../tools/virt-make-fs.pl:221
36146 msgid "B<-F E<lt>fmtE<gt>>"
36147 msgstr ""
36148
36149 #. type: textblock
36150 #: ../tools/virt-make-fs.pl:223
36151 msgid "Choose the output disk image format."
36152 msgstr ""
36153
36154 #. type: textblock
36155 #: ../tools/virt-make-fs.pl:225
36156 msgid "The default is C<raw> (raw disk image)."
36157 msgstr ""
36158
36159 #. type: textblock
36160 #: ../tools/virt-make-fs.pl:227
36161 msgid ""
36162 "For other choices, see the L<qemu-img(1)> manpage.  The only other choice "
36163 "that would really make sense here is C<qcow2>."
36164 msgstr ""
36165
36166 #. type: =item
36167 #: ../tools/virt-make-fs.pl:234
36168 msgid "B<--type=E<lt>fsE<gt>>"
36169 msgstr ""
36170
36171 #. type: =item
36172 #: ../tools/virt-make-fs.pl:236
36173 msgid "B<-t E<lt>fsE<gt>>"
36174 msgstr ""
36175
36176 #. type: textblock
36177 #: ../tools/virt-make-fs.pl:238
36178 msgid "Choose the output filesystem type."
36179 msgstr ""
36180
36181 #. type: textblock
36182 #: ../tools/virt-make-fs.pl:240
36183 msgid "The default is C<ext2>."
36184 msgstr ""
36185
36186 #. type: textblock
36187 #: ../tools/virt-make-fs.pl:242
36188 msgid "Any filesystem which is supported read-write by libguestfs can be used here."
36189 msgstr ""
36190
36191 #. type: =item
36192 #: ../tools/virt-make-fs.pl:249
36193 msgid "B<--partition>"
36194 msgstr ""
36195
36196 #. type: =item
36197 #: ../tools/virt-make-fs.pl:251
36198 msgid "B<--partition=E<lt>parttypeE<gt>>"
36199 msgstr ""
36200
36201 #. type: textblock
36202 #: ../tools/virt-make-fs.pl:253
36203 msgid ""
36204 "If specified, this flag adds an MBR partition table to the output disk "
36205 "image."
36206 msgstr ""
36207
36208 #. type: textblock
36209 #: ../tools/virt-make-fs.pl:256
36210 msgid ""
36211 "You can change the partition table type, eg. I<--partition=gpt> for large "
36212 "disks."
36213 msgstr ""
36214
36215 #. type: textblock
36216 #: ../tools/virt-make-fs.pl:259
36217 msgid ""
36218 "Note that if you just use a lonesome I<--partition>, the Perl option parser "
36219 "might consider the next parameter to be the partition type.  For example:"
36220 msgstr ""
36221
36222 #. type: verbatim
36223 #: ../tools/virt-make-fs.pl:263
36224 #, no-wrap
36225 msgid ""
36226 " virt-make-fs --partition input.tar ...\n"
36227 "\n"
36228 msgstr ""
36229
36230 #. type: textblock
36231 #: ../tools/virt-make-fs.pl:265
36232 msgid ""
36233 "would cause virt-make-fs to think you wanted to use a partition type of "
36234 "C<input.tar> which is completely wrong.  To avoid this, use I<--> (a double "
36235 "dash) between options and the input file argument:"
36236 msgstr ""
36237
36238 #. type: verbatim
36239 #: ../tools/virt-make-fs.pl:269
36240 #, no-wrap
36241 msgid ""
36242 " virt-make-fs --partition -- input.tar ...\n"
36243 "\n"
36244 msgstr ""
36245
36246 #. type: textblock
36247 #: ../tools/virt-make-fs.pl:541
36248 msgid ""
36249 "L<guestfish(1)>, L<virt-resize(1)>, L<virt-tar-in(1)>, L<mkisofs(1)>, "
36250 "L<genisoimage(1)>, L<mksquashfs(1)>, L<mke2fs(8)>, L<resize2fs(8)>, "
36251 "L<guestfs(3)>, L<Sys::Guestfs(3)>, L<http://libguestfs.org/>."
36252 msgstr ""
36253
36254 #. type: textblock
36255 #: ../tools/virt-make-fs.pl:555 ../tools/virt-win-reg.pl:763
36256 msgid ""
36257 "When reporting bugs, please enable debugging and capture the I<complete> "
36258 "output:"
36259 msgstr ""
36260
36261 #. type: verbatim
36262 #: ../tools/virt-make-fs.pl:558
36263 #, no-wrap
36264 msgid ""
36265 " export LIBGUESTFS_DEBUG=1\n"
36266 " virt-make-fs --debug [...] > /tmp/virt-make-fs.log 2>&1\n"
36267 "\n"
36268 msgstr ""
36269
36270 #. type: textblock
36271 #: ../tools/virt-make-fs.pl:561
36272 msgid ""
36273 "Attach /tmp/virt-make-fs.log to a new bug report at "
36274 "L<https://bugzilla.redhat.com/>"
36275 msgstr ""
36276
36277 #. type: textblock
36278 #: ../tools/virt-tar.pl:33
36279 msgid "virt-tar - Extract or upload files to a virtual machine"
36280 msgstr ""
36281
36282 #. type: verbatim
36283 #: ../tools/virt-tar.pl:37
36284 #, no-wrap
36285 msgid ""
36286 " virt-tar [--options] -x domname directory tarball\n"
36287 "\n"
36288 msgstr ""
36289
36290 #. type: verbatim
36291 #: ../tools/virt-tar.pl:39
36292 #, no-wrap
36293 msgid ""
36294 " virt-tar [--options] -u domname tarball directory\n"
36295 "\n"
36296 msgstr ""
36297
36298 #. type: verbatim
36299 #: ../tools/virt-tar.pl:41
36300 #, no-wrap
36301 msgid ""
36302 " virt-tar [--options] disk.img [disk.img ...] -x directory tarball\n"
36303 "\n"
36304 msgstr ""
36305
36306 #. type: verbatim
36307 #: ../tools/virt-tar.pl:43
36308 #, no-wrap
36309 msgid ""
36310 " virt-tar [--options] disk.img [disk.img ...] -u tarball directory\n"
36311 "\n"
36312 msgstr ""
36313
36314 #. type: =head2
36315 #: ../tools/virt-tar.pl:45 ../tools/virt-win-reg.pl:88
36316 msgid "NOTE"
36317 msgstr ""
36318
36319 #. type: textblock
36320 #: ../tools/virt-tar.pl:47
36321 msgid ""
36322 "This tool is obsolete.  Use L<virt-copy-in(1)>, L<virt-copy-out(1)>, "
36323 "L<virt-tar-in(1)>, L<virt-tar-out(1)> as replacements."
36324 msgstr ""
36325
36326 #. type: textblock
36327 #: ../tools/virt-tar.pl:52
36328 msgid "Download C</home> from the VM into a local tarball:"
36329 msgstr ""
36330
36331 #. type: verbatim
36332 #: ../tools/virt-tar.pl:54
36333 #, no-wrap
36334 msgid ""
36335 " virt-tar -x domname /home home.tar\n"
36336 "\n"
36337 msgstr ""
36338
36339 #. type: verbatim
36340 #: ../tools/virt-tar.pl:56
36341 #, no-wrap
36342 msgid ""
36343 " virt-tar -zx domname /home home.tar.gz\n"
36344 "\n"
36345 msgstr ""
36346
36347 #. type: textblock
36348 #: ../tools/virt-tar.pl:58
36349 msgid "Upload a local tarball and unpack it inside C</tmp> in the VM:"
36350 msgstr ""
36351
36352 #. type: verbatim
36353 #: ../tools/virt-tar.pl:60
36354 #, no-wrap
36355 msgid ""
36356 " virt-tar -u domname uploadstuff.tar /tmp\n"
36357 "\n"
36358 msgstr ""
36359
36360 #. type: verbatim
36361 #: ../tools/virt-tar.pl:62
36362 #, no-wrap
36363 msgid ""
36364 " virt-tar -zu domname uploadstuff.tar.gz /tmp\n"
36365 "\n"
36366 msgstr ""
36367
36368 #. type: textblock
36369 #: ../tools/virt-tar.pl:66
36370 msgid ""
36371 "You must I<not> use C<virt-tar> with the I<-u> option (upload) on live "
36372 "virtual machines.  If you do this, you risk disk corruption in the VM.  "
36373 "C<virt-tar> tries to stop you from doing this, but doesn't catch all cases."
36374 msgstr ""
36375
36376 #. type: textblock
36377 #: ../tools/virt-tar.pl:71
36378 msgid ""
36379 "You can use I<-x> (extract) on live virtual machines, but you might get "
36380 "inconsistent results or errors if there is filesystem activity inside the "
36381 "VM.  If the live VM is synched and quiescent, then C<virt-tar> will usually "
36382 "work, but the only way to guarantee consistent results is if the virtual "
36383 "machine is shut down."
36384 msgstr ""
36385
36386 #. type: textblock
36387 #: ../tools/virt-tar.pl:79
36388 msgid ""
36389 "C<virt-tar> is a general purpose archive tool for downloading and uploading "
36390 "parts of a guest filesystem.  There are many possibilities: making backups, "
36391 "uploading data files, snooping on guest activity, fixing or customizing "
36392 "guests, etc."
36393 msgstr ""
36394
36395 #. type: textblock
36396 #: ../tools/virt-tar.pl:84
36397 msgid ""
36398 "If you want to just view a single file, use L<virt-cat(1)>.  If you just "
36399 "want to edit a single file, use L<virt-edit(1)>.  For more complex cases you "
36400 "should look at the L<guestfish(1)> tool."
36401 msgstr ""
36402
36403 #. type: textblock
36404 #: ../tools/virt-tar.pl:88
36405 msgid ""
36406 "There are two modes of operation: I<-x> (eXtract) downloads a directory and "
36407 "its contents (recursively) from the virtual machine into a local tarball.  "
36408 "I<-u> uploads from a local tarball, unpacking it into a directory inside the "
36409 "virtual machine.  You cannot use these two options together."
36410 msgstr ""
36411
36412 #. type: textblock
36413 #: ../tools/virt-tar.pl:94
36414 msgid ""
36415 "In addition, you may need to use the I<-z> (gZip) option to enable "
36416 "compression.  When uploading, you have to specify I<-z> if the upload file "
36417 "is compressed because virt-tar won't detect this on its own."
36418 msgstr ""
36419
36420 #. type: textblock
36421 #: ../tools/virt-tar.pl:98
36422 msgid ""
36423 "C<virt-tar> can only handle tar (optionally gzipped) format tarballs.  For "
36424 "example it cannot do PKZip files or bzip2 compression.  If you want that "
36425 "then you'll have to rebuild the tarballs yourself.  (This is a limitation of "
36426 "the L<libguestfs(3)> API)."
36427 msgstr ""
36428
36429 #. type: =item
36430 #: ../tools/virt-tar.pl:160
36431 msgid "B<--extract>"
36432 msgstr ""
36433
36434 #. type: =item
36435 #: ../tools/virt-tar.pl:162
36436 msgid "B<--download>"
36437 msgstr ""
36438
36439 #. type: =item
36440 #: ../tools/virt-tar.pl:164
36441 msgid "B<-u>"
36442 msgstr ""
36443
36444 #. type: =item
36445 #: ../tools/virt-tar.pl:166
36446 msgid "B<--upload>"
36447 msgstr ""
36448
36449 #. type: textblock
36450 #: ../tools/virt-tar.pl:168
36451 msgid ""
36452 "Use I<-x> to extract (download) a directory from a virtual machine to a "
36453 "local tarball."
36454 msgstr ""
36455
36456 #. type: textblock
36457 #: ../tools/virt-tar.pl:171
36458 msgid ""
36459 "Use I<-u> to upload and unpack from a local tarball into a virtual machine.  "
36460 "Please read the L</WARNING> section above before using this option."
36461 msgstr ""
36462
36463 #. type: textblock
36464 #: ../tools/virt-tar.pl:175
36465 msgid "You must specify exactly one of these options."
36466 msgstr ""
36467
36468 #. type: =item
36469 #: ../tools/virt-tar.pl:181
36470 msgid "B<-z>"
36471 msgstr ""
36472
36473 #. type: =item
36474 #: ../tools/virt-tar.pl:183
36475 msgid "B<--gzip>"
36476 msgstr ""
36477
36478 #. type: textblock
36479 #: ../tools/virt-tar.pl:185
36480 msgid "Specify that the input or output tarball is gzip-compressed."
36481 msgstr ""
36482
36483 #. type: textblock
36484 #: ../tools/virt-tar.pl:298
36485 msgid ""
36486 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-edit(1)>, "
36487 "L<virt-copy-in(1)>, L<virt-copy-out(1)>, L<virt-tar-in(1)>, "
36488 "L<virt-tar-out(1)>, L<Sys::Guestfs(3)>, L<Sys::Guestfs::Lib(3)>, "
36489 "L<Sys::Virt(3)>, L<http://libguestfs.org/>."
36490 msgstr ""
36491
36492 #. type: textblock
36493 #: ../tools/virt-win-reg.pl:37
36494 msgid ""
36495 "virt-win-reg - Export and merge Windows Registry entries from a Windows "
36496 "guest"
36497 msgstr ""
36498
36499 #. type: verbatim
36500 #: ../tools/virt-win-reg.pl:41
36501 #, no-wrap
36502 msgid ""
36503 " virt-win-reg domname 'HKLM\\Path\\To\\Subkey'\n"
36504 "\n"
36505 msgstr ""
36506
36507 #. type: verbatim
36508 #: ../tools/virt-win-reg.pl:43
36509 #, no-wrap
36510 msgid ""
36511 " virt-win-reg domname 'HKLM\\Path\\To\\Subkey' name\n"
36512 "\n"
36513 msgstr ""
36514
36515 #. type: verbatim
36516 #: ../tools/virt-win-reg.pl:45
36517 #, no-wrap
36518 msgid ""
36519 " virt-win-reg domname 'HKLM\\Path\\To\\Subkey' @\n"
36520 "\n"
36521 msgstr ""
36522
36523 #. type: verbatim
36524 #: ../tools/virt-win-reg.pl:47
36525 #, no-wrap
36526 msgid ""
36527 " virt-win-reg --merge domname [input.reg ...]\n"
36528 "\n"
36529 msgstr ""
36530
36531 #. type: verbatim
36532 #: ../tools/virt-win-reg.pl:49
36533 #, no-wrap
36534 msgid ""
36535 " virt-win-reg [--options] disk.img ... # instead of domname\n"
36536 "\n"
36537 msgstr ""
36538
36539 #. type: textblock
36540 #: ../tools/virt-win-reg.pl:53
36541 msgid ""
36542 "You must I<not> use C<virt-win-reg> with the I<--merge> option on live "
36543 "virtual machines.  If you do this, you I<will> get irreversible disk "
36544 "corruption in the VM.  C<virt-win-reg> tries to stop you from doing this, "
36545 "but doesn't catch all cases."
36546 msgstr ""
36547
36548 #. type: textblock
36549 #: ../tools/virt-win-reg.pl:58
36550 msgid ""
36551 "Modifying the Windows Registry is an inherently risky operation.  The format "
36552 "is deliberately obscure and undocumented, and Registry changes can leave the "
36553 "system unbootable.  Therefore when using the I<--merge> option, make sure "
36554 "you have a reliable backup first."
36555 msgstr ""
36556
36557 #. type: textblock
36558 #: ../tools/virt-win-reg.pl:65
36559 msgid ""
36560 "This program can export and merge Windows Registry entries from a Windows "
36561 "guest."
36562 msgstr ""
36563
36564 #. type: textblock
36565 #: ../tools/virt-win-reg.pl:68
36566 msgid ""
36567 "The first parameter is the libvirt guest name or the raw disk image of a "
36568 "Windows guest."
36569 msgstr ""
36570
36571 #. type: textblock
36572 #: ../tools/virt-win-reg.pl:71
36573 msgid ""
36574 "If I<--merge> is I<not> specified, then the chosen registry key is "
36575 "displayed/exported (recursively).  For example:"
36576 msgstr ""
36577
36578 #. type: verbatim
36579 #: ../tools/virt-win-reg.pl:74
36580 #, no-wrap
36581 msgid ""
36582 " $ virt-win-reg Windows7 'HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft'\n"
36583 "\n"
36584 msgstr ""
36585
36586 #. type: textblock
36587 #: ../tools/virt-win-reg.pl:76
36588 msgid "You can also display single values from within registry keys, for example:"
36589 msgstr ""
36590
36591 #. type: verbatim
36592 #: ../tools/virt-win-reg.pl:79
36593 #, no-wrap
36594 msgid ""
36595 " $ cvkey='HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion'\n"
36596 " $ virt-win-reg Windows7 $cvkey ProductName\n"
36597 " Windows 7 Enterprise\n"
36598 "\n"
36599 msgstr ""
36600
36601 #. type: textblock
36602 #: ../tools/virt-win-reg.pl:83
36603 msgid ""
36604 "With I<--merge>, you can merge a textual regedit file into the Windows "
36605 "Registry:"
36606 msgstr ""
36607
36608 #. type: verbatim
36609 #: ../tools/virt-win-reg.pl:86
36610 #, no-wrap
36611 msgid ""
36612 " $ virt-win-reg --merge Windows7 changes.reg\n"
36613 "\n"
36614 msgstr ""
36615
36616 #. type: textblock
36617 #: ../tools/virt-win-reg.pl:90
36618 msgid ""
36619 "This program is only meant for simple access to the registry.  If you want "
36620 "to do complicated things with the registry, we suggest you download the "
36621 "Registry hive files from the guest using L<libguestfs(3)> or L<guestfish(1)> "
36622 "and access them locally, eg. using L<hivex(3)>, L<hivexsh(1)> or "
36623 "L<hivexregedit(1)>."
36624 msgstr ""
36625
36626 #. type: =item
36627 #: ../tools/virt-win-reg.pl:159
36628 msgid "B<--merge>"
36629 msgstr ""
36630
36631 #. type: textblock
36632 #: ../tools/virt-win-reg.pl:161
36633 msgid ""
36634 "In merge mode, this merges a textual regedit file into the Windows Registry "
36635 "of the virtual machine.  If this flag is I<not> given then virt-win-reg "
36636 "displays or exports Registry entries instead."
36637 msgstr ""
36638
36639 #. type: textblock
36640 #: ../tools/virt-win-reg.pl:165
36641 msgid ""
36642 "Note that I<--merge> is I<unsafe> to use on live virtual machines, and will "
36643 "result in disk corruption.  However exporting (without this flag)  is always "
36644 "safe."
36645 msgstr ""
36646
36647 #. type: =item
36648 #: ../tools/virt-win-reg.pl:173
36649 msgid "B<--encoding> UTF-16LE|ASCII"
36650 msgstr ""
36651
36652 #. type: textblock
36653 #: ../tools/virt-win-reg.pl:175
36654 msgid ""
36655 "When merging (only), you may need to specify the encoding for strings to be "
36656 "used in the hive file.  This is explained in detail in "
36657 "L<Win::Hivex::Regedit(3)/ENCODING STRINGS>."
36658 msgstr ""
36659
36660 #. type: textblock
36661 #: ../tools/virt-win-reg.pl:179
36662 msgid ""
36663 "The default is to use UTF-16LE, which should work with recent versions of "
36664 "Windows."
36665 msgstr ""
36666
36667 #. type: =item
36668 #: ../tools/virt-win-reg.pl:186
36669 msgid "B<--unsafe-printable-strings>"
36670 msgstr ""
36671
36672 #. type: textblock
36673 #: ../tools/virt-win-reg.pl:188
36674 msgid ""
36675 "When exporting (only), assume strings are UTF-16LE and print them as strings "
36676 "instead of hex sequences.  Remove the final zero codepoint from strings if "
36677 "present."
36678 msgstr ""
36679
36680 #. type: textblock
36681 #: ../tools/virt-win-reg.pl:192
36682 msgid ""
36683 "This is unsafe and does not preserve the fidelity of strings in the original "
36684 "Registry for various reasons:"
36685 msgstr ""
36686
36687 #. type: textblock
36688 #: ../tools/virt-win-reg.pl:199
36689 msgid ""
36690 "Assumes the original encoding is UTF-16LE.  ASCII strings and strings in "
36691 "other encodings will be corrupted by this transformation."
36692 msgstr ""
36693
36694 #. type: textblock
36695 #: ../tools/virt-win-reg.pl:204
36696 msgid ""
36697 "Assumes that everything which has type 1 or 2 is really a string and that "
36698 "everything else is not a string, but the type field in real Registries is "
36699 "not reliable."
36700 msgstr ""
36701
36702 #. type: textblock
36703 #: ../tools/virt-win-reg.pl:210
36704 msgid ""
36705 "Loses information about whether a zero codepoint followed the string in the "
36706 "Registry or not."
36707 msgstr ""
36708
36709 #. type: textblock
36710 #: ../tools/virt-win-reg.pl:215
36711 msgid ""
36712 "This all happens because the Registry itself contains no information about "
36713 "how strings are encoded (see L<Win::Hivex::Regedit(3)/ENCODING STRINGS>)."
36714 msgstr ""
36715
36716 #. type: textblock
36717 #: ../tools/virt-win-reg.pl:219
36718 msgid ""
36719 "You should only use this option for quick hacking and debugging of the "
36720 "Registry contents, and I<never> use it if the output is going to be passed "
36721 "into another program or stored in another Registry."
36722 msgstr ""
36723
36724 #. type: =head1
36725 #: ../tools/virt-win-reg.pl:556
36726 msgid "SUPPORTED SYSTEMS"
36727 msgstr ""
36728
36729 #. type: textblock
36730 #: ../tools/virt-win-reg.pl:558
36731 msgid ""
36732 "The program currently supports Windows NT-derived guests starting with "
36733 "Windows XP through to at least Windows 7."
36734 msgstr ""
36735
36736 #. type: textblock
36737 #: ../tools/virt-win-reg.pl:561
36738 msgid "The following Registry keys are supported:"
36739 msgstr ""
36740
36741 #. type: =item
36742 #: ../tools/virt-win-reg.pl:565
36743 msgid "C<HKEY_LOCAL_MACHINE\\SAM>"
36744 msgstr ""
36745
36746 #. type: =item
36747 #: ../tools/virt-win-reg.pl:567
36748 msgid "C<HKEY_LOCAL_MACHINE\\SECURITY>"
36749 msgstr ""
36750
36751 #. type: =item
36752 #: ../tools/virt-win-reg.pl:569
36753 msgid "C<HKEY_LOCAL_MACHINE\\SOFTWARE>"
36754 msgstr ""
36755
36756 #. type: =item
36757 #: ../tools/virt-win-reg.pl:571
36758 msgid "C<HKEY_LOCAL_MACHINE\\SYSTEM>"
36759 msgstr ""
36760
36761 #. type: =item
36762 #: ../tools/virt-win-reg.pl:573
36763 msgid "C<HKEY_USERS\\.DEFAULT>"
36764 msgstr ""
36765
36766 #. type: =item
36767 #: ../tools/virt-win-reg.pl:575
36768 msgid "C<HKEY_USERS\\I<SID>>"
36769 msgstr ""
36770
36771 #. type: textblock
36772 #: ../tools/virt-win-reg.pl:577
36773 msgid "where I<SID> is a Windows User SID (eg. C<S-1-5-18>)."
36774 msgstr ""
36775
36776 #. type: =item
36777 #: ../tools/virt-win-reg.pl:579
36778 msgid "C<HKEY_USERS\\I<username>>"
36779 msgstr ""
36780
36781 #. type: textblock
36782 #: ../tools/virt-win-reg.pl:581
36783 msgid "where I<username> is a local user name (this is a libguestfs extension)."
36784 msgstr ""
36785
36786 #. type: textblock
36787 #: ../tools/virt-win-reg.pl:585
36788 msgid ""
36789 "You can use C<HKLM> as a shorthand for C<HKEY_LOCAL_MACHINE>, and C<HKU> for "
36790 "C<HKEY_USERS>."
36791 msgstr ""
36792
36793 #. type: textblock
36794 #: ../tools/virt-win-reg.pl:588
36795 msgid ""
36796 "The literal keys C<HKEY_USERS\\$SID> and C<HKEY_CURRENT_USER> are not "
36797 "supported (there is no \"current user\")."
36798 msgstr ""
36799
36800 #. type: =head1
36801 #: ../tools/virt-win-reg.pl:591
36802 msgid "ENCODING"
36803 msgstr ""
36804
36805 #. type: textblock
36806 #: ../tools/virt-win-reg.pl:593
36807 msgid ""
36808 "C<virt-win-reg> expects that regedit files have already been reencoded in "
36809 "the local encoding.  Usually on Linux hosts, this means UTF-8 with "
36810 "Unix-style line endings.  Since Windows regedit files are often in UTF-16LE "
36811 "with Windows-style line endings, you may need to reencode the whole file "
36812 "before or after processing."
36813 msgstr ""
36814
36815 #. type: textblock
36816 #: ../tools/virt-win-reg.pl:599
36817 msgid ""
36818 "To reencode a file from Windows format to Linux (before processing it with "
36819 "the I<--merge> option), you would do something like this:"
36820 msgstr ""
36821
36822 #. type: verbatim
36823 #: ../tools/virt-win-reg.pl:602
36824 #, no-wrap
36825 msgid ""
36826 " iconv -f utf-16le -t utf-8 < win.reg | dos2unix > linux.reg\n"
36827 "\n"
36828 msgstr ""
36829
36830 #. type: textblock
36831 #: ../tools/virt-win-reg.pl:604
36832 msgid ""
36833 "To go in the opposite direction, after exporting and before sending the file "
36834 "to a Windows user, do something like this:"
36835 msgstr ""
36836
36837 #. type: verbatim
36838 #: ../tools/virt-win-reg.pl:607
36839 #, no-wrap
36840 msgid ""
36841 " unix2dos linux.reg | iconv -f utf-8 -t utf-16le > win.reg\n"
36842 "\n"
36843 msgstr ""
36844
36845 #. type: textblock
36846 #: ../tools/virt-win-reg.pl:609
36847 msgid "For more information about encoding, see L<Win::Hivex::Regedit(3)>."
36848 msgstr ""
36849
36850 #. type: textblock
36851 #: ../tools/virt-win-reg.pl:611
36852 msgid ""
36853 "If you are unsure about the current encoding, use the L<file(1)> command.  "
36854 "Recent versions of Windows regedit.exe produce a UTF-16LE file with "
36855 "Windows-style (CRLF) line endings, like this:"
36856 msgstr ""
36857
36858 #. type: verbatim
36859 #: ../tools/virt-win-reg.pl:615
36860 #, no-wrap
36861 msgid ""
36862 " $ file software.reg\n"
36863 " software.reg: Little-endian UTF-16 Unicode text, with very long lines,\n"
36864 " with CRLF line terminators\n"
36865 "\n"
36866 msgstr ""
36867
36868 #. type: textblock
36869 #: ../tools/virt-win-reg.pl:619
36870 msgid "This file would need conversion before you could I<--merge> it."
36871 msgstr ""
36872
36873 #. type: =head1
36874 #: ../tools/virt-win-reg.pl:621
36875 msgid "CurrentControlSet etc."
36876 msgstr ""
36877
36878 #. type: textblock
36879 #: ../tools/virt-win-reg.pl:623
36880 msgid ""
36881 "Registry keys like C<CurrentControlSet> don't really exist in the Windows "
36882 "Registry at the level of the hive file, and therefore you cannot modify "
36883 "these."
36884 msgstr ""
36885
36886 #. type: textblock
36887 #: ../tools/virt-win-reg.pl:627
36888 msgid ""
36889 "C<CurrentControlSet> is usually an alias for C<ControlSet001>.  In some "
36890 "circumstances it might refer to another control set.  The way to find out is "
36891 "to look at the C<HKLM\\SYSTEM\\Select> key:"
36892 msgstr ""
36893
36894 #. type: verbatim
36895 #: ../tools/virt-win-reg.pl:631
36896 #, no-wrap
36897 msgid ""
36898 " # virt-win-reg WindowsGuest 'HKLM\\SYSTEM\\Select'\n"
36899 " [HKEY_LOCAL_MACHINE\\SYSTEM\\Select]\n"
36900 " \"Current\"=dword:00000001\n"
36901 " \"Default\"=dword:00000001\n"
36902 " \"Failed\"=dword:00000000\n"
36903 " \"LastKnownGood\"=dword:00000002\n"
36904 "\n"
36905 msgstr ""
36906
36907 #. type: textblock
36908 #: ../tools/virt-win-reg.pl:638
36909 msgid "\"Current\" is the one which Windows will choose when it boots."
36910 msgstr ""
36911
36912 #. type: textblock
36913 #: ../tools/virt-win-reg.pl:640
36914 msgid "Similarly, other C<Current...> keys in the path may need to be replaced."
36915 msgstr ""
36916
36917 #. type: =head1
36918 #: ../tools/virt-win-reg.pl:643
36919 msgid "WINDOWS TIPS"
36920 msgstr ""
36921
36922 #. type: textblock
36923 #: ../tools/virt-win-reg.pl:645
36924 msgid ""
36925 "Note that some of these tips modify the guest disk image.  The guest I<must> "
36926 "be shut off, else you will get disk corruption."
36927 msgstr ""
36928
36929 #. type: =head2
36930 #: ../tools/virt-win-reg.pl:648
36931 msgid "RUNNING A BATCH SCRIPT WHEN A USER LOGS IN"
36932 msgstr ""
36933
36934 #. type: textblock
36935 #: ../tools/virt-win-reg.pl:650
36936 msgid ""
36937 "Prepare a DOS batch script, VBScript or executable.  Upload this using "
36938 "L<guestfish(1)>.  For this example the script is called C<test.bat> and it "
36939 "is uploaded into C<C:\\>:"
36940 msgstr ""
36941
36942 #. type: verbatim
36943 #: ../tools/virt-win-reg.pl:654
36944 #, no-wrap
36945 msgid ""
36946 " guestfish -i -d WindowsGuest upload test.bat /test.bat\n"
36947 "\n"
36948 msgstr ""
36949
36950 #. type: textblock
36951 #: ../tools/virt-win-reg.pl:656
36952 msgid "Prepare a regedit file containing the registry change:"
36953 msgstr ""
36954
36955 #. type: verbatim
36956 #: ../tools/virt-win-reg.pl:658
36957 #, no-wrap
36958 msgid ""
36959 " cat > test.reg <<'EOF'\n"
36960 " [HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce]\n"
36961 " \"Test\"=\"c:\\\\test.bat\"\n"
36962 " EOF\n"
36963 "\n"
36964 msgstr ""
36965
36966 #. type: textblock
36967 #: ../tools/virt-win-reg.pl:663
36968 msgid ""
36969 "In this example we use the key C<RunOnce> which means that the script will "
36970 "run precisely once when the first user logs in.  If you want it to run every "
36971 "time a user logs in, replace C<RunOnce> with C<Run>."
36972 msgstr ""
36973
36974 #. type: textblock
36975 #: ../tools/virt-win-reg.pl:667
36976 msgid "Now update the registry:"
36977 msgstr ""
36978
36979 #. type: verbatim
36980 #: ../tools/virt-win-reg.pl:669
36981 #, no-wrap
36982 msgid ""
36983 " virt-win-reg --merge WindowsGuest test.reg\n"
36984 "\n"
36985 msgstr ""
36986
36987 #. type: =head2
36988 #: ../tools/virt-win-reg.pl:671
36989 msgid "INSTALLING A SERVICE"
36990 msgstr ""
36991
36992 #. type: textblock
36993 #: ../tools/virt-win-reg.pl:673
36994 msgid ""
36995 "This section assumes you are familiar with Windows services, and you either "
36996 "have a program which handles the Windows Service Control Protocol directly "
36997 "or you want to run any program using a service wrapper like SrvAny or the "
36998 "free RHSrvAny."
36999 msgstr ""
37000
37001 #. type: textblock
37002 #: ../tools/virt-win-reg.pl:678
37003 msgid ""
37004 "First upload the program and optionally the service wrapper.  In this case "
37005 "the test program is called C<test.exe> and we are using the RHSrvAny "
37006 "wrapper:"
37007 msgstr ""
37008
37009 #. type: verbatim
37010 #: ../tools/virt-win-reg.pl:682
37011 #, no-wrap
37012 msgid ""
37013 " guestfish -i -d WindowsGuest <<EOF\n"
37014 "   upload rhsrvany.exe /rhsrvany.exe\n"
37015 "   upload test.exe /test.exe\n"
37016 " EOF\n"
37017 "\n"
37018 msgstr ""
37019
37020 #. type: textblock
37021 #: ../tools/virt-win-reg.pl:687
37022 msgid ""
37023 "Prepare a regedit file containing the registry changes.  In this example, "
37024 "the first registry change is needed for the service itself or the service "
37025 "wrapper (if used).  The second registry change is only needed because I am "
37026 "using the RHSrvAny service wrapper."
37027 msgstr ""
37028
37029 #. type: verbatim
37030 #: ../tools/virt-win-reg.pl:692
37031 #, no-wrap
37032 msgid ""
37033 " cat > service.reg <<'EOF'\n"
37034 " [HKLM\\SYSTEM\\ControlSet001\\services\\RHSrvAny]\n"
37035 " \"Type\"=dword:00000010\n"
37036 " \"Start\"=dword:00000002\n"
37037 " \"ErrorControl\"=dword:00000001\n"
37038 " \"ImagePath\"=\"c:\\\\rhsrvany.exe\"\n"
37039 " \"DisplayName\"=\"RHSrvAny\"\n"
37040 " \"ObjectName\"=\"NetworkService\"\n"
37041 " \n"
37042 msgstr ""
37043
37044 #. type: verbatim
37045 #: ../tools/virt-win-reg.pl:701
37046 #, no-wrap
37047 msgid ""
37048 " [HKLM\\SYSTEM\\ControlSet001\\services\\RHSrvAny\\Parameters]\n"
37049 " \"CommandLine\"=\"c:\\\\test.exe\"\n"
37050 " \"PWD\"=\"c:\\\\Temp\"\n"
37051 " EOF\n"
37052 "\n"
37053 msgstr ""
37054
37055 #. type: textblock
37056 #: ../tools/virt-win-reg.pl:712
37057 msgid ""
37058 "For use of C<ControlSet001> see the section above in this manual page.  You "
37059 "may need to adjust this according to the control set that is in use by the "
37060 "guest."
37061 msgstr ""
37062
37063 #. type: textblock
37064 #: ../tools/virt-win-reg.pl:718
37065 msgid ""
37066 "C<\"ObjectName\"> controls the privileges that the service will have.  An "
37067 "alternative is C<\"ObjectName\"=\"LocalSystem\"> which would be the most "
37068 "privileged account."
37069 msgstr ""
37070
37071 #. type: textblock
37072 #: ../tools/virt-win-reg.pl:724
37073 msgid ""
37074 "For the meaning of the magic numbers, see this Microsoft KB article: "
37075 "L<http://support.microsoft.com/kb/103000>."
37076 msgstr ""
37077
37078 #. type: textblock
37079 #: ../tools/virt-win-reg.pl:729
37080 msgid "Update the registry:"
37081 msgstr ""
37082
37083 #. type: verbatim
37084 #: ../tools/virt-win-reg.pl:731
37085 #, no-wrap
37086 msgid ""
37087 " virt-win-reg --merge WindowsGuest service.reg\n"
37088 "\n"
37089 msgstr ""
37090
37091 #. type: textblock
37092 #: ../tools/virt-win-reg.pl:735
37093 msgid ""
37094 "Be careful when passing parameters containing C<\\> (backslash) in the "
37095 "shell.  Usually you will have to use 'single quotes' or double backslashes "
37096 "(but not both) to protect them from the shell."
37097 msgstr ""
37098
37099 #. type: textblock
37100 #: ../tools/virt-win-reg.pl:739
37101 msgid "Paths and value names are case-insensitive."
37102 msgstr ""
37103
37104 #. type: textblock
37105 #: ../tools/virt-win-reg.pl:748
37106 msgid ""
37107 "L<hivex(3)>, L<hivexsh(1)>, L<hivexregedit(1)>, L<guestfs(3)>, "
37108 "L<guestfish(1)>, L<virt-cat(1)>, L<Sys::Guestfs(3)>, "
37109 "L<Sys::Guestfs::Lib(3)>, L<Win::Hivex(3)>, L<Win::Hivex::Regedit(3)>, "
37110 "L<Sys::Virt(3)>, L<http://libguestfs.org/>."
37111 msgstr ""
37112
37113 #. type: verbatim
37114 #: ../tools/virt-win-reg.pl:766
37115 #, no-wrap
37116 msgid ""
37117 " export LIBGUESTFS_DEBUG=1\n"
37118 " virt-win-reg --debug [... rest ...] > /tmp/virt-win-reg.log 2>&1\n"
37119 "\n"
37120 msgstr ""
37121
37122 #. type: textblock
37123 #: ../tools/virt-win-reg.pl:769
37124 msgid ""
37125 "Attach /tmp/virt-win-reg.log to a new bug report at "
37126 "L<https://bugzilla.redhat.com/>"
37127 msgstr ""