Version 1.13.12.
[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.13.12\n"
10 "Report-Msgid-Bugs-To: libguestfs@redhat.com\n"
11 "POT-Creation-Date: 2011-09-14 18:20+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:1018 ../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:36 ../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 ../test-tool/libguestfs-test-tool.pod:40 ../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:94 ../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:96 ../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:98 ../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:101 ../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:103 ../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:105 ../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:110 ../edit/virt-edit.pod:141 ../fish/guestfish.pod:242 ../fish/guestfish.pod:673 ../inspector/virt-inspector.pod:336 ../rescue/virt-rescue.pod:133 ../src/guestfs.pod:2761
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:114 ../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:118 ../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:121 ../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:173 ../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:175 ../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:177 ../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:179 ../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:484
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:181 ../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:486 ../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:183 ../edit/virt-edit.pod:171 ../inspector/virt-inspector.pod:129 ../rescue/virt-rescue.pod:188 ../resize/virt-resize.pod:488 ../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:185 ../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:187 ../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, and C<file> is the full path to the file."
490 msgstr ""
491
492 #. type: =head1
493 #: ../cat/virt-cat.pod:191 ../cat/virt-filesystems.pod:365 ../cat/virt-ls.pod:483 ../df/virt-df.pod:215 ../edit/virt-edit.pod:342 ../inspector/virt-inspector.pod:352 ../rescue/virt-rescue.pod:262 ../resize/virt-resize.pod:601 ../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:193 ../cat/virt-filesystems.pod:367 ../cat/virt-ls.pod:485 ../df/virt-df.pod:217 ../edit/virt-edit.pod:344 ../inspector/virt-inspector.pod:354 ../rescue/virt-rescue.pod:264 ../resize/virt-resize.pod:603 ../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:198 ../cat/virt-filesystems.pod:372 ../cat/virt-ls.pod:490 ../df/virt-df.pod:222 ../edit/virt-edit.pod:349 ../fish/guestfish.pod:1081 ../fuse/guestmount.pod:303 ../inspector/virt-inspector.pod:375 ../resize/virt-resize.pod:608 ../test-tool/libguestfs-test-tool.pod:90
508 msgid "EXIT STATUS"
509 msgstr ""
510
511 #. type: textblock
512 #: ../cat/virt-cat.pod:200 ../cat/virt-filesystems.pod:374 ../cat/virt-ls.pod:492 ../df/virt-df.pod:224 ../edit/virt-edit.pod:351 ../fuse/guestmount.pod:305 ../inspector/virt-inspector.pod:377 ../resize/virt-resize.pod:610
513 msgid "This program returns 0 if successful, or non-zero if there was an error."
514 msgstr ""
515
516 #. type: =head1
517 #: ../cat/virt-cat.pod:203 ../cat/virt-filesystems.pod:377 ../cat/virt-ls.pod:495 ../df/virt-df.pod:227 ../edit/virt-edit.pod:354 ../examples/guestfs-examples.pod:33 ../examples/guestfs-recipes.pod:384 ../fish/guestfish.pod:1235 ../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:308 ../inspector/virt-inspector.pod:380 ../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:613 ../ruby/examples/guestfs-ruby.pod:36 ../src/guestfs.pod:3135 ../test-tool/libguestfs-test-tool.pod:100 ../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
518 msgid "SEE ALSO"
519 msgstr ""
520
521 #. type: textblock
522 #: ../cat/virt-cat.pod:205
523 msgid ""
524 "L<guestfs(3)>, L<guestfish(1)>, L<virt-copy-out(1)>, L<virt-edit(1)>, "
525 "L<virt-tar-out(1)>, L<http://libguestfs.org/>."
526 msgstr ""
527
528 #. type: =head1
529 #: ../cat/virt-cat.pod:212 ../cat/virt-filesystems.pod:388 ../cat/virt-ls.pod:507 ../df/virt-df.pod:235 ../edit/virt-edit.pod:368 ../rescue/virt-rescue.pod:292 ../resize/virt-resize.pod:634 ../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
530 msgid "AUTHOR"
531 msgstr ""
532
533 #. type: textblock
534 #: ../cat/virt-cat.pod:214 ../cat/virt-filesystems.pod:390 ../cat/virt-ls.pod:509 ../df/virt-df.pod:237 ../edit/virt-edit.pod:370 ../inspector/virt-inspector.pod:395 ../rescue/virt-rescue.pod:294 ../resize/virt-resize.pod:636 ../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
535 msgid "Richard W.M. Jones L<http://people.redhat.com/~rjones/>"
536 msgstr ""
537
538 #. type: =head1
539 #: ../cat/virt-cat.pod:216 ../cat/virt-filesystems.pod:392 ../cat/virt-ls.pod:511 ../df/virt-df.pod:239 ../edit/virt-edit.pod:372 ../examples/guestfs-examples.pod:48 ../examples/guestfs-recipes.pod:400 ../fish/guestfish.pod:1264 ../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:323 ../inspector/virt-inspector.pod:403 ../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:638 ../ruby/examples/guestfs-ruby.pod:51 ../src/guestfs.pod:3211 ../test-tool/libguestfs-test-tool.pod:110 ../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
540 msgid "COPYRIGHT"
541 msgstr ""
542
543 #. type: textblock
544 #: ../cat/virt-cat.pod:218 ../inspector/virt-inspector.pod:405 ../resize/virt-resize.pod:640
545 msgid "Copyright (C) 2010-2011 Red Hat Inc."
546 msgstr ""
547
548 #. type: textblock
549 #: ../cat/virt-cat.pod:220 ../cat/virt-filesystems.pod:396 ../cat/virt-ls.pod:515 ../df/virt-df.pod:243 ../edit/virt-edit.pod:376 ../fish/guestfish.pod:1269 ../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:328 ../inspector/virt-inspector.pod:407 ../rescue/virt-rescue.pod:300 ../resize/virt-resize.pod:642 ../test-tool/libguestfs-test-tool.pod:115 ../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
550 msgid ""
551 "This program is free software; you can redistribute it and/or modify it "
552 "under the terms of the GNU General Public License as published by the Free "
553 "Software Foundation; either version 2 of the License, or (at your option) "
554 "any later version."
555 msgstr ""
556
557 #. type: textblock
558 #: ../cat/virt-cat.pod:225 ../cat/virt-filesystems.pod:401 ../cat/virt-ls.pod:520 ../df/virt-df.pod:248 ../edit/virt-edit.pod:381 ../fish/guestfish.pod:1274 ../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:333 ../inspector/virt-inspector.pod:412 ../rescue/virt-rescue.pod:305 ../resize/virt-resize.pod:647 ../test-tool/libguestfs-test-tool.pod:120 ../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
559 msgid ""
560 "This program is distributed in the hope that it will be useful, but WITHOUT "
561 "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
562 "FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for "
563 "more details."
564 msgstr ""
565
566 #. type: textblock
567 #: ../cat/virt-cat.pod:230 ../cat/virt-filesystems.pod:406 ../cat/virt-ls.pod:525 ../df/virt-df.pod:253 ../edit/virt-edit.pod:386 ../fish/guestfish.pod:1279 ../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:338 ../inspector/virt-inspector.pod:417 ../rescue/virt-rescue.pod:310 ../resize/virt-resize.pod:652 ../test-tool/libguestfs-test-tool.pod:125 ../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
568 msgid ""
569 "You should have received a copy of the GNU General Public License along with "
570 "this program; if not, write to the Free Software Foundation, Inc., 675 Mass "
571 "Ave, Cambridge, MA 02139, USA."
572 msgstr ""
573
574 #. type: textblock
575 #: ../cat/virt-filesystems.pod:5
576 msgid ""
577 "virt-filesystems - List filesystems, partitions, block devices, LVM in a "
578 "virtual machine or disk image"
579 msgstr ""
580
581 #. type: verbatim
582 #: ../cat/virt-filesystems.pod:9
583 #, no-wrap
584 msgid ""
585 " virt-filesystems [--options] -d domname\n"
586 "\n"
587 msgstr ""
588
589 #. type: verbatim
590 #: ../cat/virt-filesystems.pod:11
591 #, no-wrap
592 msgid ""
593 " virt-filesystems [--options] -a disk.img [-a disk.img ...]\n"
594 "\n"
595 msgstr ""
596
597 #. type: textblock
598 #: ../cat/virt-filesystems.pod:15
599 msgid ""
600 "This tool allows you to discover filesystems, partitions, logical volumes, "
601 "and their sizes in a disk image or virtual machine.  It is a replacement for "
602 "L<virt-list-filesystems(1)> and L<virt-list-partitions(1)>."
603 msgstr ""
604
605 #. type: textblock
606 #: ../cat/virt-filesystems.pod:20
607 msgid ""
608 "One use for this tool is from shell scripts to iterate over all filesystems "
609 "from a disk image:"
610 msgstr ""
611
612 #. type: verbatim
613 #: ../cat/virt-filesystems.pod:23
614 #, no-wrap
615 msgid ""
616 " for fs in $(virt-filesystems -a disk.img); do\n"
617 "   # ...\n"
618 " done\n"
619 "\n"
620 msgstr ""
621
622 #. type: textblock
623 #: ../cat/virt-filesystems.pod:27
624 msgid ""
625 "Another use is to list partitions before using another tool to modify those "
626 "partitions (such as L<virt-resize(1)>).  If you are curious about what an "
627 "unknown disk image contains, use this tool along with L<virt-inspector(1)>."
628 msgstr ""
629
630 #. type: textblock
631 #: ../cat/virt-filesystems.pod:32
632 msgid ""
633 "Various command line options control what this program displays.  You need "
634 "to give either I<-a> or I<-d> options to specify the disk image or libvirt "
635 "guest respectively.  If you just specify that then the program shows "
636 "filesystems found, one per line, like this:"
637 msgstr ""
638
639 #. type: verbatim
640 #: ../cat/virt-filesystems.pod:37
641 #, no-wrap
642 msgid ""
643 " $ virt-filesystems -a disk.img\n"
644 " /dev/sda1\n"
645 " /dev/vg_guest/lv_root\n"
646 "\n"
647 msgstr ""
648
649 #. type: textblock
650 #: ../cat/virt-filesystems.pod:41
651 msgid "If you add I<-l> or I<--long> then the output includes extra information:"
652 msgstr ""
653
654 #. type: verbatim
655 #: ../cat/virt-filesystems.pod:44
656 #, no-wrap
657 msgid ""
658 " $ virt-filesystems -a disk.img -l\n"
659 " Name                   Type         VFS   Label  Size\n"
660 " /dev/sda1              filesystem   ext4  boot   524288000\n"
661 " /dev/vg_guest/lv_root  filesystem   ext4  root   10212081664\n"
662 "\n"
663 msgstr ""
664
665 #. type: textblock
666 #: ../cat/virt-filesystems.pod:49
667 msgid ""
668 "If you add I<--extra> then non-mountable (swap, unknown) filesystems are "
669 "shown as well:"
670 msgstr ""
671
672 #. type: verbatim
673 #: ../cat/virt-filesystems.pod:52
674 #, no-wrap
675 msgid ""
676 " $ virt-filesystems -a disk.img --extra\n"
677 " /dev/sda1\n"
678 " /dev/vg_guest/lv_root\n"
679 " /dev/vg_guest/lv_swap\n"
680 " /dev/vg_guest/lv_data\n"
681 "\n"
682 msgstr ""
683
684 #. type: textblock
685 #: ../cat/virt-filesystems.pod:58
686 msgid "If you add I<--partitions> then partitions are shown instead of filesystems:"
687 msgstr ""
688
689 #. type: verbatim
690 #: ../cat/virt-filesystems.pod:60
691 #, no-wrap
692 msgid ""
693 " $ virt-filesystems -a disk.img --partitions\n"
694 " /dev/sda1\n"
695 " /dev/sda2\n"
696 "\n"
697 msgstr ""
698
699 #. type: textblock
700 #: ../cat/virt-filesystems.pod:64
701 msgid ""
702 "Similarly you can use I<--logical-volumes>, I<--volume-groups>, "
703 "I<--physical-volumes>, I<--block-devices> to list those items."
704 msgstr ""
705
706 #. type: textblock
707 #: ../cat/virt-filesystems.pod:67
708 msgid ""
709 "You can use these options in combination as well (if you want a combination "
710 "including filesystems, you have to add I<--filesystems>).  Notice that some "
711 "items fall into several categories (eg. C</dev/sda1> might be both a "
712 "partition and a filesystem).  These items are listed several times.  To get "
713 "a list which includes absolutely everything that virt-filesystems knows "
714 "about, use the I<--all> option."
715 msgstr ""
716
717 #. type: textblock
718 #: ../cat/virt-filesystems.pod:74
719 msgid ""
720 "UUIDs (because they are quite long) are not shown by default.  Add the "
721 "I<--uuid> option to display device and filesystem UUIDs in the long output."
722 msgstr ""
723
724 #. type: textblock
725 #: ../cat/virt-filesystems.pod:78
726 msgid ""
727 "I<--all --long --uuid> is a useful combination to display all possible "
728 "information about everything."
729 msgstr ""
730
731 #. type: verbatim
732 #: ../cat/virt-filesystems.pod:81
733 #, no-wrap
734 msgid ""
735 " $ virt-filesystems -a win.img --all --long --uuid -h\n"
736 " Name      Type       VFS  Label           Size Parent   UUID\n"
737 " /dev/sda1 filesystem ntfs System Reserved 100M -        F81C92571C92112C\n"
738 " /dev/sda2 filesystem ntfs -               20G  -        F2E8996AE8992E3B\n"
739 " /dev/sda1 partition  -    -               100M /dev/sda -\n"
740 " /dev/sda2 partition  -    -               20G  /dev/sda -\n"
741 " /dev/sda  device     -    -               20G  -        -\n"
742 "\n"
743 msgstr ""
744
745 #. type: textblock
746 #: ../cat/virt-filesystems.pod:89
747 msgid "For machine-readable output, use I<--csv> to get Comma-Separated Values."
748 msgstr ""
749
750 #. type: =item
751 #: ../cat/virt-filesystems.pod:110 ../tools/virt-list-filesystems.pl:121
752 msgid "B<--all>"
753 msgstr ""
754
755 #. type: textblock
756 #: ../cat/virt-filesystems.pod:112
757 msgid ""
758 "Display everything.  This is currently the same as specifying these options: "
759 "I<--filesystems>, I<--extra>, I<--partitions>, I<--block-devices>, "
760 "I<--logical-volumes>, I<--volume-groups>, I<--physical-volumes>.  (More may "
761 "be added to this list in future)."
762 msgstr ""
763
764 #. type: textblock
765 #: ../cat/virt-filesystems.pod:117
766 msgid "See also I<--long>."
767 msgstr ""
768
769 #. type: =item
770 #: ../cat/virt-filesystems.pod:119
771 msgid "B<--blkdevs>"
772 msgstr ""
773
774 #. type: =item
775 #: ../cat/virt-filesystems.pod:121
776 msgid "B<--block-devices>"
777 msgstr ""
778
779 #. type: textblock
780 #: ../cat/virt-filesystems.pod:123
781 msgid "Display block devices."
782 msgstr ""
783
784 #. type: =item
785 #: ../cat/virt-filesystems.pod:135 ../cat/virt-ls.pod:301 ../df/virt-df.pod:88
786 msgid "B<--csv>"
787 msgstr ""
788
789 #. type: textblock
790 #: ../cat/virt-filesystems.pod:137 ../cat/virt-ls.pod:303 ../df/virt-df.pod:90
791 msgid ""
792 "Write out the results in CSV format (comma-separated values).  This format "
793 "can be imported easily into databases and spreadsheets, but read L</NOTE "
794 "ABOUT CSV FORMAT> below."
795 msgstr ""
796
797 #. type: textblock
798 #: ../cat/virt-filesystems.pod:150
799 msgid ""
800 "When prompting for keys and passphrases, virt-filesystems normally turns "
801 "echoing off so you cannot see what you are typing.  If you are not worried "
802 "about Tempest attacks and there is no one else in the room you can specify "
803 "this flag to see what you are typing."
804 msgstr ""
805
806 #. type: =item
807 #: ../cat/virt-filesystems.pod:155
808 msgid "B<--extra>"
809 msgstr ""
810
811 #. type: textblock
812 #: ../cat/virt-filesystems.pod:157
813 msgid ""
814 "This causes filesystems that are not ordinary, mountable filesystems to be "
815 "displayed.  This category includes swapspace, and filesystems that are empty "
816 "or contain unknown data."
817 msgstr ""
818
819 #. type: textblock
820 #: ../cat/virt-filesystems.pod:161
821 msgid "This option implies I<--filesystems>."
822 msgstr ""
823
824 #. type: =item
825 #: ../cat/virt-filesystems.pod:163
826 msgid "B<--filesystems>"
827 msgstr ""
828
829 #. type: textblock
830 #: ../cat/virt-filesystems.pod:165
831 msgid ""
832 "Display mountable filesystems.  If no display option was selected then this "
833 "option is implied."
834 msgstr ""
835
836 #. type: textblock
837 #: ../cat/virt-filesystems.pod:168
838 msgid "With I<--extra>, non-mountable filesystems are shown too."
839 msgstr ""
840
841 #. type: verbatim
842 #: ../cat/virt-filesystems.pod:181
843 #, no-wrap
844 msgid ""
845 " virt-filesystems --format=raw -a disk.img\n"
846 "\n"
847 msgstr ""
848
849 #. type: verbatim
850 #: ../cat/virt-filesystems.pod:185
851 #, no-wrap
852 msgid ""
853 " virt-filesystems --format=raw -a disk.img --format -a another.img\n"
854 "\n"
855 msgstr ""
856
857 #. type: =item
858 #: ../cat/virt-filesystems.pod:194 ../cat/virt-ls.pod:352 ../df/virt-df.pod:125 ../fish/guestfish.pod:156 ../tools/virt-list-partitions.pl:109
859 msgid "B<-h>"
860 msgstr ""
861
862 #. type: =item
863 #: ../cat/virt-filesystems.pod:196 ../cat/virt-ls.pod:354 ../df/virt-df.pod:127 ../tools/virt-list-partitions.pl:111
864 msgid "B<--human-readable>"
865 msgstr ""
866
867 #. type: textblock
868 #: ../cat/virt-filesystems.pod:198
869 msgid "In I<--long> mode, display sizes in human-readable format."
870 msgstr ""
871
872 #. type: =item
873 #: ../cat/virt-filesystems.pod:205 ../cat/virt-ls.pod:366 ../tools/virt-list-filesystems.pl:108 ../tools/virt-list-partitions.pl:119
874 msgid "B<-l>"
875 msgstr ""
876
877 #. type: =item
878 #: ../cat/virt-filesystems.pod:207 ../cat/virt-ls.pod:368 ../tools/virt-list-filesystems.pl:110 ../tools/virt-list-partitions.pl:121
879 msgid "B<--long>"
880 msgstr ""
881
882 #. type: textblock
883 #: ../cat/virt-filesystems.pod:209
884 msgid "Display extra columns of data (\"long format\")."
885 msgstr ""
886
887 #. type: textblock
888 #: ../cat/virt-filesystems.pod:211
889 msgid "A title row is added unless you also specify I<--no-title>."
890 msgstr ""
891
892 #. type: textblock
893 #: ../cat/virt-filesystems.pod:213
894 msgid ""
895 "The extra columns displayed depend on what output you select, and the "
896 "ordering of columns may change in future versions.  Use the title row, "
897 "I<--csv> output and/or L<csvtool(1)> to match columns to data in external "
898 "programs."
899 msgstr ""
900
901 #. type: textblock
902 #: ../cat/virt-filesystems.pod:218
903 msgid ""
904 "Use I<-h> if you want sizes to be displayed in human-readable format.  The "
905 "default is to show raw numbers of I<bytes>."
906 msgstr ""
907
908 #. type: textblock
909 #: ../cat/virt-filesystems.pod:221
910 msgid "Use I<--uuid> to display UUIDs too."
911 msgstr ""
912
913 #. type: =item
914 #: ../cat/virt-filesystems.pod:223
915 msgid "B<--lvs>"
916 msgstr ""
917
918 #. type: =item
919 #: ../cat/virt-filesystems.pod:225
920 msgid "B<--logvols>"
921 msgstr ""
922
923 #. type: =item
924 #: ../cat/virt-filesystems.pod:227
925 msgid "B<--logical-volumes>"
926 msgstr ""
927
928 #. type: textblock
929 #: ../cat/virt-filesystems.pod:229
930 msgid ""
931 "Display LVM logical volumes.  In this mode, these are displayed irrespective "
932 "of whether the LVs contain filesystems."
933 msgstr ""
934
935 #. type: =item
936 #: ../cat/virt-filesystems.pod:232
937 msgid "B<--no-title>"
938 msgstr ""
939
940 #. type: textblock
941 #: ../cat/virt-filesystems.pod:234
942 msgid "In I<--long> mode, don't add a title row."
943 msgstr ""
944
945 #. type: textblock
946 #: ../cat/virt-filesystems.pod:236
947 msgid ""
948 "Note that the order of the columns is not fixed, and may change in future "
949 "versions of virt-filesystems, so using this option may give you unexpected "
950 "surprises."
951 msgstr ""
952
953 #. type: =item
954 #: ../cat/virt-filesystems.pod:240
955 msgid "B<--parts>"
956 msgstr ""
957
958 #. type: =item
959 #: ../cat/virt-filesystems.pod:242
960 msgid "B<--partitions>"
961 msgstr ""
962
963 #. type: textblock
964 #: ../cat/virt-filesystems.pod:244
965 msgid ""
966 "Display partitions.  In this mode, these are displayed irrespective of "
967 "whether the partitions contain filesystems."
968 msgstr ""
969
970 #. type: =item
971 #: ../cat/virt-filesystems.pod:247
972 msgid "B<--pvs>"
973 msgstr ""
974
975 #. type: =item
976 #: ../cat/virt-filesystems.pod:249
977 msgid "B<--physvols>"
978 msgstr ""
979
980 #. type: =item
981 #: ../cat/virt-filesystems.pod:251
982 msgid "B<--physical-volumes>"
983 msgstr ""
984
985 #. type: textblock
986 #: ../cat/virt-filesystems.pod:253
987 msgid "Display LVM physical volumes."
988 msgstr ""
989
990 #. type: =item
991 #: ../cat/virt-filesystems.pod:255 ../df/virt-df.pod:163
992 msgid "B<--uuid>"
993 msgstr ""
994
995 #. type: =item
996 #: ../cat/virt-filesystems.pod:257
997 msgid "B<--uuids>"
998 msgstr ""
999
1000 #. type: textblock
1001 #: ../cat/virt-filesystems.pod:259
1002 msgid "In I<--long> mode, display UUIDs as well."
1003 msgstr ""
1004
1005 #. type: =item
1006 #: ../cat/virt-filesystems.pod:273
1007 msgid "B<--vgs>"
1008 msgstr ""
1009
1010 #. type: =item
1011 #: ../cat/virt-filesystems.pod:275
1012 msgid "B<--volgroups>"
1013 msgstr ""
1014
1015 #. type: =item
1016 #: ../cat/virt-filesystems.pod:277
1017 msgid "B<--volume-groups>"
1018 msgstr ""
1019
1020 #. type: textblock
1021 #: ../cat/virt-filesystems.pod:279
1022 msgid "Display LVM volume groups."
1023 msgstr ""
1024
1025 #. type: =head1
1026 #: ../cat/virt-filesystems.pod:287
1027 msgid "COLUMNS"
1028 msgstr ""
1029
1030 #. type: textblock
1031 #: ../cat/virt-filesystems.pod:289
1032 msgid ""
1033 "Note that columns in the output are subject to reordering and change in "
1034 "future versions of this tool."
1035 msgstr ""
1036
1037 #. type: =item
1038 #: ../cat/virt-filesystems.pod:294
1039 msgid "B<Name>"
1040 msgstr ""
1041
1042 #. type: textblock
1043 #: ../cat/virt-filesystems.pod:296
1044 msgid "The filesystem, partition, block device or LVM name."
1045 msgstr ""
1046
1047 #. type: textblock
1048 #: ../cat/virt-filesystems.pod:298
1049 msgid ""
1050 "For device and partition names these are displayed as canonical libguestfs "
1051 "names, so that for example C</dev/sda2> is the second partition on the first "
1052 "device."
1053 msgstr ""
1054
1055 #. type: textblock
1056 #: ../cat/virt-filesystems.pod:302
1057 msgid ""
1058 "If the I<--long> option is B<not> specified, then only the name column is "
1059 "shown in the output."
1060 msgstr ""
1061
1062 #. type: =item
1063 #: ../cat/virt-filesystems.pod:305
1064 msgid "B<Type>"
1065 msgstr ""
1066
1067 #. type: textblock
1068 #: ../cat/virt-filesystems.pod:307
1069 msgid "The object type, for example C<filesystem>, C<lv>, C<device> etc."
1070 msgstr ""
1071
1072 #. type: =item
1073 #: ../cat/virt-filesystems.pod:309
1074 msgid "B<VFS>"
1075 msgstr ""
1076
1077 #. type: textblock
1078 #: ../cat/virt-filesystems.pod:311
1079 msgid ""
1080 "If there is a filesystem, then this column displays the filesystem type if "
1081 "one could be detected, eg. C<ext4>."
1082 msgstr ""
1083
1084 #. type: =item
1085 #: ../cat/virt-filesystems.pod:314
1086 msgid "B<Label>"
1087 msgstr ""
1088
1089 #. type: textblock
1090 #: ../cat/virt-filesystems.pod:316
1091 msgid ""
1092 "If the object has a label (used for identifying and mounting filesystems) "
1093 "then this column contains the label."
1094 msgstr ""
1095
1096 #. type: =item
1097 #: ../cat/virt-filesystems.pod:319
1098 msgid "B<Size>"
1099 msgstr ""
1100
1101 #. type: textblock
1102 #: ../cat/virt-filesystems.pod:321
1103 msgid ""
1104 "The size of the object in bytes.  If the I<--human> option is used then the "
1105 "size is displayed in a human-readable form."
1106 msgstr ""
1107
1108 #. type: =item
1109 #: ../cat/virt-filesystems.pod:324
1110 msgid "B<Parent>"
1111 msgstr ""
1112
1113 #. type: textblock
1114 #: ../cat/virt-filesystems.pod:326
1115 msgid ""
1116 "The parent column records the parent relationship between objects.  For "
1117 "example, if the object is a partition, then this column contains the name of "
1118 "the containing device.  If the object is a logical volume, then this column "
1119 "is the name of the volume group."
1120 msgstr ""
1121
1122 #. type: =item
1123 #: ../cat/virt-filesystems.pod:331
1124 msgid "B<UUID>"
1125 msgstr ""
1126
1127 #. type: textblock
1128 #: ../cat/virt-filesystems.pod:333
1129 msgid ""
1130 "If the object has a UUID (used for identifying and mounting filesystems and "
1131 "block devices) then this column contains the UUID as a string."
1132 msgstr ""
1133
1134 #. type: textblock
1135 #: ../cat/virt-filesystems.pod:337
1136 msgid "The UUID is only displayed if the I<--uuid> option is given."
1137 msgstr ""
1138
1139 #. type: =head1
1140 #: ../cat/virt-filesystems.pod:341 ../cat/virt-ls.pod:459 ../df/virt-df.pod:191
1141 msgid "NOTE ABOUT CSV FORMAT"
1142 msgstr ""
1143
1144 #. type: textblock
1145 #: ../cat/virt-filesystems.pod:343 ../cat/virt-ls.pod:461 ../df/virt-df.pod:193
1146 msgid ""
1147 "Comma-separated values (CSV) is a deceptive format.  It I<seems> like it "
1148 "should be easy to parse, but it is definitely not easy to parse."
1149 msgstr ""
1150
1151 #. type: textblock
1152 #: ../cat/virt-filesystems.pod:346 ../cat/virt-ls.pod:464 ../df/virt-df.pod:196
1153 msgid ""
1154 "Myth: Just split fields at commas.  Reality: This does I<not> work "
1155 "reliably.  This example has two columns:"
1156 msgstr ""
1157
1158 #. type: verbatim
1159 #: ../cat/virt-filesystems.pod:349 ../cat/virt-ls.pod:467 ../df/virt-df.pod:199
1160 #, no-wrap
1161 msgid ""
1162 " \"foo,bar\",baz\n"
1163 "\n"
1164 msgstr ""
1165
1166 #. type: textblock
1167 #: ../cat/virt-filesystems.pod:351 ../cat/virt-ls.pod:469 ../df/virt-df.pod:201
1168 msgid ""
1169 "Myth: Read the file one line at a time.  Reality: This does I<not> work "
1170 "reliably.  This example has one row:"
1171 msgstr ""
1172
1173 #. type: verbatim
1174 #: ../cat/virt-filesystems.pod:354 ../cat/virt-ls.pod:472 ../df/virt-df.pod:204
1175 #, no-wrap
1176 msgid ""
1177 " \"foo\n"
1178 " bar\",baz\n"
1179 "\n"
1180 msgstr ""
1181
1182 #. type: textblock
1183 #: ../cat/virt-filesystems.pod:357 ../cat/virt-ls.pod:475 ../df/virt-df.pod:207
1184 msgid ""
1185 "For shell scripts, use C<csvtool> (L<http://merjis.com/developers/csv> also "
1186 "packaged in major Linux distributions)."
1187 msgstr ""
1188
1189 #. type: textblock
1190 #: ../cat/virt-filesystems.pod:360 ../cat/virt-ls.pod:478 ../df/virt-df.pod:210
1191 msgid ""
1192 "For other languages, use a CSV processing library (eg. C<Text::CSV> for Perl "
1193 "or Python's built-in csv library)."
1194 msgstr ""
1195
1196 #. type: textblock
1197 #: ../cat/virt-filesystems.pod:363 ../cat/virt-ls.pod:481 ../df/virt-df.pod:213
1198 msgid "Most spreadsheets and databases can import CSV directly."
1199 msgstr ""
1200
1201 #. type: textblock
1202 #: ../cat/virt-filesystems.pod:379
1203 msgid ""
1204 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-df(1)>, "
1205 "L<virt-list-filesystems(1)>, L<virt-list-partitions(1)>, L<csvtool(1)>, "
1206 "L<http://libguestfs.org/>."
1207 msgstr ""
1208
1209 #. type: textblock
1210 #: ../cat/virt-filesystems.pod:394 ../tools/virt-make-fs.pl:570 ../tools/virt-win-reg.pl:778
1211 msgid "Copyright (C) 2010 Red Hat Inc."
1212 msgstr ""
1213
1214 #. type: textblock
1215 #: ../cat/virt-ls.pod:5
1216 msgid "virt-ls - List files in a virtual machine"
1217 msgstr ""
1218
1219 #. type: verbatim
1220 #: ../cat/virt-ls.pod:9
1221 #, no-wrap
1222 msgid ""
1223 " virt-ls [--options] -d domname directory [directory ...]\n"
1224 "\n"
1225 msgstr ""
1226
1227 #. type: verbatim
1228 #: ../cat/virt-ls.pod:11
1229 #, no-wrap
1230 msgid ""
1231 " virt-ls [--options] -a disk.img [-a disk.img ...] directory [directory "
1232 "...]\n"
1233 "\n"
1234 msgstr ""
1235
1236 #. type: textblock
1237 #: ../cat/virt-ls.pod:13 ../df/virt-df.pod:15 ../rescue/virt-rescue.pod:13
1238 msgid "Old style:"
1239 msgstr ""
1240
1241 #. type: verbatim
1242 #: ../cat/virt-ls.pod:15
1243 #, no-wrap
1244 msgid ""
1245 " virt-ls [--options] domname directory\n"
1246 "\n"
1247 msgstr ""
1248
1249 #. type: verbatim
1250 #: ../cat/virt-ls.pod:17
1251 #, no-wrap
1252 msgid ""
1253 " virt-ls [--options] disk.img [disk.img ...] directory\n"
1254 "\n"
1255 msgstr ""
1256
1257 #. type: textblock
1258 #: ../cat/virt-ls.pod:21
1259 msgid ""
1260 "C<virt-ls> lists filenames, file sizes, checksums, extended attributes and "
1261 "more from a virtual machine or disk image."
1262 msgstr ""
1263
1264 #. type: textblock
1265 #: ../cat/virt-ls.pod:24
1266 msgid ""
1267 "Multiple directory names can be given, in which case the output from each is "
1268 "concatenated."
1269 msgstr ""
1270
1271 #. type: textblock
1272 #: ../cat/virt-ls.pod:27
1273 msgid ""
1274 "To list directories from a libvirt guest use the I<-d> option to specify the "
1275 "name of the guest.  For a disk image, use the I<-a> option."
1276 msgstr ""
1277
1278 #. type: textblock
1279 #: ../cat/virt-ls.pod:31
1280 msgid ""
1281 "C<virt-ls> can do many simple file listings.  For more complicated cases you "
1282 "may need to use L<guestfish(1)>, or write a program directly to the "
1283 "L<guestfs(3)> API."
1284 msgstr ""
1285
1286 #. type: textblock
1287 #: ../cat/virt-ls.pod:37
1288 msgid "Get a list of all files and directories in a virtual machine:"
1289 msgstr ""
1290
1291 #. type: verbatim
1292 #: ../cat/virt-ls.pod:39
1293 #, no-wrap
1294 msgid ""
1295 " virt-ls -R -d guest /\n"
1296 "\n"
1297 msgstr ""
1298
1299 #. type: textblock
1300 #: ../cat/virt-ls.pod:41
1301 msgid "List all setuid or setgid programs in a Linux virtual machine:"
1302 msgstr ""
1303
1304 #. type: verbatim
1305 #: ../cat/virt-ls.pod:43
1306 #, no-wrap
1307 msgid ""
1308 " virt-ls -lR -d guest / | grep '^- [42]'\n"
1309 "\n"
1310 msgstr ""
1311
1312 #. type: textblock
1313 #: ../cat/virt-ls.pod:45
1314 msgid "List all public-writable directories in a Linux virtual machine:"
1315 msgstr ""
1316
1317 #. type: verbatim
1318 #: ../cat/virt-ls.pod:47
1319 #, no-wrap
1320 msgid ""
1321 " virt-ls -lR -d guest / | grep '^d ...7'\n"
1322 "\n"
1323 msgstr ""
1324
1325 #. type: textblock
1326 #: ../cat/virt-ls.pod:49
1327 msgid "List all Unix domain sockets in a Linux virtual machine:"
1328 msgstr ""
1329
1330 #. type: verbatim
1331 #: ../cat/virt-ls.pod:51
1332 #, no-wrap
1333 msgid ""
1334 " virt-ls -lR -d guest / | grep '^s'\n"
1335 "\n"
1336 msgstr ""
1337
1338 #. type: textblock
1339 #: ../cat/virt-ls.pod:53
1340 msgid "List all regular files with filenames ending in '.png':"
1341 msgstr ""
1342
1343 #. type: verbatim
1344 #: ../cat/virt-ls.pod:55
1345 #, no-wrap
1346 msgid ""
1347 " virt-ls -lR -d guest / | grep -i '^-.*\\.png$'\n"
1348 "\n"
1349 msgstr ""
1350
1351 #. type: textblock
1352 #: ../cat/virt-ls.pod:57
1353 msgid "To display files larger than 10MB in home directories:"
1354 msgstr ""
1355
1356 #. type: verbatim
1357 #: ../cat/virt-ls.pod:59
1358 #, no-wrap
1359 msgid ""
1360 " virt-ls -lR -d guest /home | awk '$3 > 10*1024*1024'\n"
1361 "\n"
1362 msgstr ""
1363
1364 #. type: textblock
1365 #: ../cat/virt-ls.pod:61
1366 msgid "Find everything modified in the last 7 days:"
1367 msgstr ""
1368
1369 #. type: verbatim
1370 #: ../cat/virt-ls.pod:63
1371 #, no-wrap
1372 msgid ""
1373 " virt-ls -lR -d guest --time-days / | awk '$6 <= 7'\n"
1374 "\n"
1375 msgstr ""
1376
1377 #. type: textblock
1378 #: ../cat/virt-ls.pod:65
1379 msgid "Find regular files modified in the last 24 hours:"
1380 msgstr ""
1381
1382 #. type: verbatim
1383 #: ../cat/virt-ls.pod:67
1384 #, no-wrap
1385 msgid ""
1386 " virt-ls -lR -d guest --time-days / | grep '^-' | awk '$6 < 1'\n"
1387 "\n"
1388 msgstr ""
1389
1390 #. type: =head2
1391 #: ../cat/virt-ls.pod:69
1392 msgid "DIFFERENCES IN SNAPSHOTS AND BACKING FILES"
1393 msgstr ""
1394
1395 #. type: textblock
1396 #: ../cat/virt-ls.pod:71
1397 msgid ""
1398 "Find the differences between files in a guest and an earlier snapshot of the "
1399 "same guest."
1400 msgstr ""
1401
1402 #. type: verbatim
1403 #: ../cat/virt-ls.pod:74
1404 #, no-wrap
1405 msgid ""
1406 " virt-ls -lR -a snapshot.img / --uids --time-t > old\n"
1407 " virt-ls -lR -a current.img / --uids --time-t > new\n"
1408 " diff -u old new | less\n"
1409 "\n"
1410 msgstr ""
1411
1412 #. type: textblock
1413 #: ../cat/virt-ls.pod:78
1414 msgid ""
1415 "The commands above won't find files where the content has changed but the "
1416 "metadata (eg. file size and modification date) is the same.  To do that, you "
1417 "need to add the I<--checksum> parameter to both C<virt-ls> commands.  "
1418 "I<--checksum> can be quite slow since it has to read and compute a checksum "
1419 "of every regular file in the virtual machine."
1420 msgstr ""
1421
1422 #. type: =head1
1423 #: ../cat/virt-ls.pod:84
1424 msgid "OUTPUT MODES"
1425 msgstr ""
1426
1427 #. type: textblock
1428 #: ../cat/virt-ls.pod:86
1429 msgid ""
1430 "C<virt-ls> has four output modes, controlled by different combinations of "
1431 "the I<-l> and I<-R> options."
1432 msgstr ""
1433
1434 #. type: =head2
1435 #: ../cat/virt-ls.pod:89
1436 msgid "SIMPLE LISTING"
1437 msgstr ""
1438
1439 #. type: textblock
1440 #: ../cat/virt-ls.pod:91
1441 msgid "A simple listing is like the ordinary L<ls(1)> command:"
1442 msgstr ""
1443
1444 #. type: verbatim
1445 #: ../cat/virt-ls.pod:93
1446 #, no-wrap
1447 msgid ""
1448 " $ virt-ls -d guest /\n"
1449 " bin\n"
1450 " boot\n"
1451 " [etc.]\n"
1452 "\n"
1453 msgstr ""
1454
1455 #. type: =head2
1456 #: ../cat/virt-ls.pod:98
1457 msgid "LONG LISTING"
1458 msgstr ""
1459
1460 #. type: textblock
1461 #: ../cat/virt-ls.pod:100
1462 msgid ""
1463 "With the I<-l> (I<--long>) option, the output is like the C<ls -l> command "
1464 "(more specifically, like the C<guestfs_ll> function)."
1465 msgstr ""
1466
1467 #. type: verbatim
1468 #: ../cat/virt-ls.pod:103
1469 #, no-wrap
1470 msgid ""
1471 " $ virt-ls -l -d guest /\n"
1472 " total 204\n"
1473 " dr-xr-xr-x.   2 root root   4096 2009-08-25 19:06 bin\n"
1474 " dr-xr-xr-x.   5 root root   3072 2009-08-25 19:06 boot\n"
1475 " [etc.]\n"
1476 "\n"
1477 msgstr ""
1478
1479 #. type: textblock
1480 #: ../cat/virt-ls.pod:109
1481 msgid ""
1482 "Note that while this is useful for displaying a directory, do not try "
1483 "parsing this output in another program.  Use L</RECURSIVE LONG LISTING> "
1484 "instead."
1485 msgstr ""
1486
1487 #. type: =head2
1488 #: ../cat/virt-ls.pod:113
1489 msgid "RECURSIVE LISTING"
1490 msgstr ""
1491
1492 #. type: textblock
1493 #: ../cat/virt-ls.pod:115
1494 msgid ""
1495 "With the I<-R> (I<--recursive>) option, C<virt-ls> lists the names of files "
1496 "and directories recursively:"
1497 msgstr ""
1498
1499 #. type: verbatim
1500 #: ../cat/virt-ls.pod:118
1501 #, no-wrap
1502 msgid ""
1503 " $ virt-ls -R -d guest /tmp\n"
1504 " foo\n"
1505 " foo/bar\n"
1506 " [etc.]\n"
1507 "\n"
1508 msgstr ""
1509
1510 #. type: textblock
1511 #: ../cat/virt-ls.pod:123
1512 msgid ""
1513 "To generate this output, C<virt-ls> runs the C<guestfs_find0> function and "
1514 "converts C<\\0> characters to C<\\n>."
1515 msgstr ""
1516
1517 #. type: =head2
1518 #: ../cat/virt-ls.pod:126
1519 msgid "RECURSIVE LONG LISTING"
1520 msgstr ""
1521
1522 #. type: textblock
1523 #: ../cat/virt-ls.pod:128
1524 msgid ""
1525 "Using I<-lR> options together changes the output to display directories "
1526 "recursively, with file stats, and optionally other features such as "
1527 "checksums and extended attributes."
1528 msgstr ""
1529
1530 #. type: textblock
1531 #: ../cat/virt-ls.pod:132
1532 msgid ""
1533 "Most of the interesting features of C<virt-ls> are only available when using "
1534 "I<-lR> mode."
1535 msgstr ""
1536
1537 #. type: textblock
1538 #: ../cat/virt-ls.pod:135
1539 msgid ""
1540 "The fields are normally space-separated.  Filenames are B<not> quoted, so "
1541 "you cannot use the output in another program (because filenames can contain "
1542 "spaces and other unsafe characters).  If the guest was untrusted and someone "
1543 "knew you were using C<virt-ls> to analyze the guest, they could play tricks "
1544 "on you by creating filenames with embedded newline characters.  To B<safely> "
1545 "parse the output in another program, use the I<--csv> (Comma-Separated "
1546 "Values) option."
1547 msgstr ""
1548
1549 #. type: textblock
1550 #: ../cat/virt-ls.pod:143
1551 msgid ""
1552 "Note that this output format is completely unrelated to the C<ls -lR> "
1553 "command."
1554 msgstr ""
1555
1556 #. type: verbatim
1557 #: ../cat/virt-ls.pod:146
1558 #, no-wrap
1559 msgid ""
1560 " $ virt-ls -lR -d guest /bin\n"
1561 " d 0555       4096 /bin\n"
1562 " - 0755        123 /bin/alsaunmute\n"
1563 " - 0755      28328 /bin/arch\n"
1564 " l 0777          4 /bin/awk -> gawk\n"
1565 " - 0755      27216 /bin/basename\n"
1566 " - 0755     943360 /bin/bash\n"
1567 " [etc.]\n"
1568 "\n"
1569 msgstr ""
1570
1571 #. type: textblock
1572 #: ../cat/virt-ls.pod:155
1573 msgid "These basic fields are always shown:"
1574 msgstr ""
1575
1576 #. type: =item
1577 #: ../cat/virt-ls.pod:159
1578 msgid "type"
1579 msgstr ""
1580
1581 #. type: textblock
1582 #: ../cat/virt-ls.pod:161
1583 msgid ""
1584 "The file type, one of: C<-> (regular file), C<d> (directory), C<c> "
1585 "(character device), C<b> (block device), C<p> (named pipe), C<l> (symbolic "
1586 "link), C<s> (socket) or C<u> (unknown)."
1587 msgstr ""
1588
1589 #. type: =item
1590 #: ../cat/virt-ls.pod:171
1591 msgid "permissions"
1592 msgstr ""
1593
1594 #. type: textblock
1595 #: ../cat/virt-ls.pod:173
1596 msgid "The Unix permissions, displayed as a 4 digit octal number."
1597 msgstr ""
1598
1599 #. type: =item
1600 #: ../cat/virt-ls.pod:175
1601 msgid "size"
1602 msgstr ""
1603
1604 #. type: textblock
1605 #: ../cat/virt-ls.pod:177
1606 msgid ""
1607 "The size of the file.  This is shown in bytes unless I<-h> or "
1608 "I<--human-readable> option is given, in which case this is shown as a "
1609 "human-readable number."
1610 msgstr ""
1611
1612 #. type: =head2
1613 #: ../cat/virt-ls.pod:181 ../fish/guestfish-actions.pod:4188
1614 msgid "path"
1615 msgstr ""
1616
1617 #. type: textblock
1618 #: ../cat/virt-ls.pod:183
1619 msgid "The full path of the file or directory."
1620 msgstr ""
1621
1622 #. type: =item
1623 #: ../cat/virt-ls.pod:185
1624 msgid "link"
1625 msgstr ""
1626
1627 #. type: textblock
1628 #: ../cat/virt-ls.pod:187
1629 msgid "For symbolic links only, the link target."
1630 msgstr ""
1631
1632 #. type: textblock
1633 #: ../cat/virt-ls.pod:191
1634 msgid ""
1635 "In I<-lR> mode, additional command line options enable the display of more "
1636 "fields."
1637 msgstr ""
1638
1639 #. type: textblock
1640 #: ../cat/virt-ls.pod:194
1641 msgid ""
1642 "With the I<--uids> flag, these additional fields are displayed before the "
1643 "path:"
1644 msgstr ""
1645
1646 #. type: =item
1647 #: ../cat/virt-ls.pod:199
1648 msgid "uid"
1649 msgstr ""
1650
1651 #. type: =item
1652 #: ../cat/virt-ls.pod:201
1653 msgid "gid"
1654 msgstr ""
1655
1656 #. type: textblock
1657 #: ../cat/virt-ls.pod:203
1658 msgid ""
1659 "The UID and GID of the owner of the file (displayed numerically).  Note "
1660 "these only make sense in the context of a Unix-like guest."
1661 msgstr ""
1662
1663 #. type: textblock
1664 #: ../cat/virt-ls.pod:208
1665 msgid "With the I<--times> flag, these additional fields are displayed:"
1666 msgstr ""
1667
1668 #. type: =item
1669 #: ../cat/virt-ls.pod:212
1670 msgid "atime"
1671 msgstr ""
1672
1673 #. type: textblock
1674 #: ../cat/virt-ls.pod:214
1675 msgid "The time of last access."
1676 msgstr ""
1677
1678 #. type: =item
1679 #: ../cat/virt-ls.pod:216
1680 msgid "mtime"
1681 msgstr ""
1682
1683 #. type: textblock
1684 #: ../cat/virt-ls.pod:218
1685 msgid "The time of last modification."
1686 msgstr ""
1687
1688 #. type: =item
1689 #: ../cat/virt-ls.pod:220
1690 msgid "ctime"
1691 msgstr ""
1692
1693 #. type: textblock
1694 #: ../cat/virt-ls.pod:222
1695 msgid "The time of last status change."
1696 msgstr ""
1697
1698 #. type: textblock
1699 #: ../cat/virt-ls.pod:226
1700 msgid ""
1701 "The time fields are displayed as string dates and times, unless one of the "
1702 "I<--time-t>, I<--time-relative> or I<--time-days> flags is given."
1703 msgstr ""
1704
1705 #. type: textblock
1706 #: ../cat/virt-ls.pod:229
1707 msgid "With the I<--extra-stats> flag, these additional fields are displayed:"
1708 msgstr ""
1709
1710 #. type: =item
1711 #: ../cat/virt-ls.pod:233
1712 msgid "device"
1713 msgstr ""
1714
1715 #. type: textblock
1716 #: ../cat/virt-ls.pod:235
1717 msgid ""
1718 "The device containing the file (displayed as major:minor).  This may not "
1719 "match devices as known to the guest."
1720 msgstr ""
1721
1722 #. type: =item
1723 #: ../cat/virt-ls.pod:238
1724 msgid "inode"
1725 msgstr ""
1726
1727 #. type: textblock
1728 #: ../cat/virt-ls.pod:240
1729 msgid "The inode number."
1730 msgstr ""
1731
1732 #. type: =item
1733 #: ../cat/virt-ls.pod:242
1734 msgid "nlink"
1735 msgstr ""
1736
1737 #. type: textblock
1738 #: ../cat/virt-ls.pod:244
1739 msgid "The number of hard links."
1740 msgstr ""
1741
1742 #. type: =item
1743 #: ../cat/virt-ls.pod:246
1744 msgid "rdev"
1745 msgstr ""
1746
1747 #. type: textblock
1748 #: ../cat/virt-ls.pod:248
1749 msgid "For block and char special files, the device (displayed as major:minor)."
1750 msgstr ""
1751
1752 #. type: =item
1753 #: ../cat/virt-ls.pod:251
1754 msgid "blocks"
1755 msgstr ""
1756
1757 #. type: textblock
1758 #: ../cat/virt-ls.pod:253
1759 msgid "The number of 512 byte blocks allocated to the file."
1760 msgstr ""
1761
1762 #. type: textblock
1763 #: ../cat/virt-ls.pod:257
1764 msgid ""
1765 "With the I<--checksum> flag, the checksum of the file contents is shown "
1766 "(only for regular files).  Computing file checksums can take a considerable "
1767 "amount of time."
1768 msgstr ""
1769
1770 #. type: =item
1771 #: ../cat/virt-ls.pod:280
1772 msgid "B<--checksum>"
1773 msgstr ""
1774
1775 #. type: =item
1776 #: ../cat/virt-ls.pod:282
1777 msgid "B<--checksum=crc|md5|sha1|sha224|sha256|sha384|sha512>"
1778 msgstr ""
1779
1780 #. type: textblock
1781 #: ../cat/virt-ls.pod:284
1782 msgid ""
1783 "Display checksum over file contents for regular files.  With no argument, "
1784 "this defaults to using I<md5>.  Using an argument, you can select the "
1785 "checksum type to use."
1786 msgstr ""
1787
1788 #. type: textblock
1789 #: ../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
1790 msgid ""
1791 "This option only has effect in I<-lR> output mode.  See L</RECURSIVE LONG "
1792 "LISTING> above."
1793 msgstr ""
1794
1795 #. type: textblock
1796 #: ../cat/virt-ls.pod:316
1797 msgid ""
1798 "When prompting for keys and passphrases, virt-ls normally turns echoing off "
1799 "so you cannot see what you are typing.  If you are not worried about Tempest "
1800 "attacks and there is no one else in the room you can specify this flag to "
1801 "see what you are typing."
1802 msgstr ""
1803
1804 #. type: =item
1805 #: ../cat/virt-ls.pod:321
1806 msgid "B<--extra-stats>"
1807 msgstr ""
1808
1809 #. type: textblock
1810 #: ../cat/virt-ls.pod:323
1811 msgid "Display extra stats."
1812 msgstr ""
1813
1814 #. type: verbatim
1815 #: ../cat/virt-ls.pod:339
1816 #, no-wrap
1817 msgid ""
1818 " virt-ls --format=raw -a disk.img /dir\n"
1819 "\n"
1820 msgstr ""
1821
1822 #. type: verbatim
1823 #: ../cat/virt-ls.pod:343
1824 #, no-wrap
1825 msgid ""
1826 " virt-ls --format=raw -a disk.img --format -a another.img /dir\n"
1827 "\n"
1828 msgstr ""
1829
1830 #. type: textblock
1831 #: ../cat/virt-ls.pod:356
1832 msgid "Display file sizes in human-readable format."
1833 msgstr ""
1834
1835 #. type: =item
1836 #: ../cat/virt-ls.pod:370
1837 msgid "B<-R>"
1838 msgstr ""
1839
1840 #. type: =item
1841 #: ../cat/virt-ls.pod:372
1842 msgid "B<--recursive>"
1843 msgstr ""
1844
1845 #. type: textblock
1846 #: ../cat/virt-ls.pod:374
1847 msgid ""
1848 "Select the mode.  With neither of these options, C<virt-ls> produces a "
1849 "simple, flat list of the files in the named directory.  See L</SIMPLE "
1850 "LISTING>."
1851 msgstr ""
1852
1853 #. type: textblock
1854 #: ../cat/virt-ls.pod:378
1855 msgid ""
1856 "C<virt-ls -l> produces a \"long listing\", which shows more detail.  See "
1857 "L</LONG LISTING>."
1858 msgstr ""
1859
1860 #. type: textblock
1861 #: ../cat/virt-ls.pod:381
1862 msgid ""
1863 "C<virt-ls -R> produces a recursive list of files starting at the named "
1864 "directory.  See L</RECURSIVE LISTING>."
1865 msgstr ""
1866
1867 #. type: textblock
1868 #: ../cat/virt-ls.pod:384
1869 msgid ""
1870 "C<virt-ls -lR> produces a recursive long listing which can be more easily "
1871 "parsed.  See L</RECURSIVE LONG LISTING>."
1872 msgstr ""
1873
1874 #. type: =item
1875 #: ../cat/virt-ls.pod:387
1876 msgid "B<--times>"
1877 msgstr ""
1878
1879 #. type: textblock
1880 #: ../cat/virt-ls.pod:389
1881 msgid "Display time fields."
1882 msgstr ""
1883
1884 #. type: =item
1885 #: ../cat/virt-ls.pod:394
1886 msgid "B<--time-days>"
1887 msgstr ""
1888
1889 #. type: textblock
1890 #: ../cat/virt-ls.pod:396
1891 msgid "Display time fields as days before now (negative if in the future)."
1892 msgstr ""
1893
1894 #. type: textblock
1895 #: ../cat/virt-ls.pod:398
1896 msgid ""
1897 "Note that C<0> in output means \"up to 1 day before now\", or that the age "
1898 "of the file is between 0 and 86399 seconds."
1899 msgstr ""
1900
1901 #. type: =item
1902 #: ../cat/virt-ls.pod:404
1903 msgid "B<--time-relative>"
1904 msgstr ""
1905
1906 #. type: textblock
1907 #: ../cat/virt-ls.pod:406
1908 msgid "Display time fields as seconds before now (negative if in the future)."
1909 msgstr ""
1910
1911 #. type: =item
1912 #: ../cat/virt-ls.pod:411
1913 msgid "B<--time-t>"
1914 msgstr ""
1915
1916 #. type: textblock
1917 #: ../cat/virt-ls.pod:413
1918 msgid "Display time fields as seconds since the Unix epoch."
1919 msgstr ""
1920
1921 #. type: =item
1922 #: ../cat/virt-ls.pod:418
1923 msgid "B<--uids>"
1924 msgstr ""
1925
1926 #. type: textblock
1927 #: ../cat/virt-ls.pod:420
1928 msgid "Display UID and GID fields."
1929 msgstr ""
1930
1931 #. type: textblock
1932 #: ../cat/virt-ls.pod:445
1933 msgid "Previous versions of virt-ls allowed you to write either:"
1934 msgstr ""
1935
1936 #. type: verbatim
1937 #: ../cat/virt-ls.pod:447
1938 #, no-wrap
1939 msgid ""
1940 " virt-ls disk.img [disk.img ...] /dir\n"
1941 "\n"
1942 msgstr ""
1943
1944 #. type: verbatim
1945 #: ../cat/virt-ls.pod:451
1946 #, no-wrap
1947 msgid ""
1948 " virt-ls guestname /dir\n"
1949 "\n"
1950 msgstr ""
1951
1952 #. type: textblock
1953 #: ../cat/virt-ls.pod:497
1954 msgid ""
1955 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-out(1)>, "
1956 "L<virt-tar-out(1)>, L<Sys::Guestfs(3)>, L<Sys::Guestfs::Lib(3)>, "
1957 "L<Sys::Virt(3)>, L<http://libguestfs.org/>."
1958 msgstr ""
1959
1960 #. type: textblock
1961 #: ../cat/virt-ls.pod:513 ../df/virt-df.pod:241 ../edit/virt-edit.pod:374 ../rescue/virt-rescue.pod:298
1962 msgid "Copyright (C) 2009-2011 Red Hat Inc."
1963 msgstr ""
1964
1965 #. type: textblock
1966 #: ../df/virt-df.pod:5
1967 msgid "virt-df - Display free space on virtual filesystems"
1968 msgstr ""
1969
1970 #. type: verbatim
1971 #: ../df/virt-df.pod:9
1972 #, no-wrap
1973 msgid ""
1974 " virt-df [--options]\n"
1975 "\n"
1976 msgstr ""
1977
1978 #. type: verbatim
1979 #: ../df/virt-df.pod:11
1980 #, no-wrap
1981 msgid ""
1982 " virt-df [--options] -d domname\n"
1983 "\n"
1984 msgstr ""
1985
1986 #. type: verbatim
1987 #: ../df/virt-df.pod:13
1988 #, no-wrap
1989 msgid ""
1990 " virt-df [--options] -a disk.img [-a disk.img ...]\n"
1991 "\n"
1992 msgstr ""
1993
1994 #. type: verbatim
1995 #: ../df/virt-df.pod:17
1996 #, no-wrap
1997 msgid ""
1998 " virt-df [--options] domname\n"
1999 "\n"
2000 msgstr ""
2001
2002 #. type: verbatim
2003 #: ../df/virt-df.pod:19
2004 #, no-wrap
2005 msgid ""
2006 " virt-df [--options] disk.img [disk.img ...]\n"
2007 "\n"
2008 msgstr ""
2009
2010 #. type: textblock
2011 #: ../df/virt-df.pod:23
2012 msgid ""
2013 "C<virt-df> is a command line tool to display free space on virtual machine "
2014 "filesystems.  Unlike other tools, it doesn't just display the size of disk "
2015 "allocated to a virtual machine, but can look inside disk images to see how "
2016 "much space is really being used."
2017 msgstr ""
2018
2019 #. type: textblock
2020 #: ../df/virt-df.pod:28
2021 msgid ""
2022 "If used without any I<-a> or I<-d> arguments, C<virt-df> checks with libvirt "
2023 "to get a list of all active and inactive guests, and performs a C<df>-type "
2024 "operation on each one in turn, printing out the results."
2025 msgstr ""
2026
2027 #. type: textblock
2028 #: ../df/virt-df.pod:32
2029 msgid ""
2030 "If any I<-a> or I<-d> arguments are specified, C<virt-df> performs a "
2031 "C<df>-type operation on either the single named libvirt domain, or on the "
2032 "disk image(s) listed on the command line (which must all belong to a single "
2033 "VM).  In this mode (with arguments), C<virt-df> will I<only work for a "
2034 "single guest>.  If you want to run on multiple guests, then you have to "
2035 "invoke C<virt-df> multiple times."
2036 msgstr ""
2037
2038 #. type: textblock
2039 #: ../df/virt-df.pod:39
2040 msgid ""
2041 "Use the I<--csv> option to get a format which can be easily parsed by other "
2042 "programs.  Other options are similar to the standard L<df(1)> command."
2043 msgstr ""
2044
2045 #. type: textblock
2046 #: ../df/virt-df.pod:45
2047 msgid ""
2048 "Show disk usage for a single libvirt guest called C<F14x64>.  Make the "
2049 "output human-readable:"
2050 msgstr ""
2051
2052 #. type: verbatim
2053 #: ../df/virt-df.pod:48
2054 #, no-wrap
2055 msgid ""
2056 " # virt-df -d F14x64 -h\n"
2057 " Filesystem                       Size     Used  Available  Use%\n"
2058 " F14x64:/dev/sda1                 484M      66M       393M   14%\n"
2059 " F14x64:/dev/vg_f13x64/lv_root    7.4G     3.4G       4.0G   46%\n"
2060 "\n"
2061 msgstr ""
2062
2063 #. type: textblock
2064 #: ../df/virt-df.pod:53
2065 msgid "Show disk usage for a disk image file called C<test.img>:"
2066 msgstr ""
2067
2068 #. type: verbatim
2069 #: ../df/virt-df.pod:55
2070 #, no-wrap
2071 msgid ""
2072 " $ virt-df -a test1.img\n"
2073 " Filesystem                  1K-blocks     Used  Available  Use%\n"
2074 " test1.img:/dev/sda1             99099     1551      92432    2%\n"
2075 "\n"
2076 msgstr ""
2077
2078 #. type: verbatim
2079 #: ../df/virt-df.pod:112
2080 #, no-wrap
2081 msgid ""
2082 " virt-df --format=raw -a disk.img\n"
2083 "\n"
2084 msgstr ""
2085
2086 #. type: verbatim
2087 #: ../df/virt-df.pod:116
2088 #, no-wrap
2089 msgid ""
2090 " virt-df --format=raw -a disk.img --format -a another.img\n"
2091 "\n"
2092 msgstr ""
2093
2094 #. type: textblock
2095 #: ../df/virt-df.pod:129
2096 msgid "Print sizes in human-readable format."
2097 msgstr ""
2098
2099 #. type: textblock
2100 #: ../df/virt-df.pod:131
2101 msgid "You are not allowed to use I<-h> and I<--csv> at the same time."
2102 msgstr ""
2103
2104 #. type: =item
2105 #: ../df/virt-df.pod:133 ../fish/guestfish.pod:258 ../fuse/guestmount.pod:155
2106 msgid "B<-i>"
2107 msgstr ""
2108
2109 #. type: =item
2110 #: ../df/virt-df.pod:135
2111 msgid "B<--inodes>"
2112 msgstr ""
2113
2114 #. type: textblock
2115 #: ../df/virt-df.pod:137
2116 msgid "Print inodes instead of blocks."
2117 msgstr ""
2118
2119 #. type: =item
2120 #: ../df/virt-df.pod:139
2121 msgid "B<--one-per-guest>"
2122 msgstr ""
2123
2124 #. type: textblock
2125 #: ../df/virt-df.pod:141
2126 msgid ""
2127 "Run one libguestfs appliance per guest.  Normally C<virt-df> will add the "
2128 "disks from several guests to a single libguestfs appliance."
2129 msgstr ""
2130
2131 #. type: textblock
2132 #: ../df/virt-df.pod:144
2133 msgid "You might use this option in the following circumstances:"
2134 msgstr ""
2135
2136 #. type: =item
2137 #: ../df/virt-df.pod:148 ../df/virt-df.pod:154 ../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:390 ../fish/guestfish-actions.pod:398 ../fish/guestfish-actions.pod:405 ../fish/guestfish-actions.pod:412 ../fish/guestfish-actions.pod:1104 ../fish/guestfish-actions.pod:1108 ../fish/guestfish-actions.pod:1112 ../fish/guestfish-actions.pod:1116 ../fish/guestfish-actions.pod:1124 ../fish/guestfish-actions.pod:1128 ../fish/guestfish-actions.pod:1132 ../fish/guestfish-actions.pod:1142 ../fish/guestfish-actions.pod:1146 ../fish/guestfish-actions.pod:1150 ../fish/guestfish-actions.pod:1240 ../fish/guestfish-actions.pod:1244 ../fish/guestfish-actions.pod:1249 ../fish/guestfish-actions.pod:1254 ../fish/guestfish-actions.pod:1296 ../fish/guestfish-actions.pod:1300 ../fish/guestfish-actions.pod:1305 ../fish/guestfish-actions.pod:1938 ../fish/guestfish-actions.pod:1944 ../fish/guestfish-actions.pod:1952 ../fish/guestfish-actions.pod:1959 ../fish/guestfish-actions.pod:1966 ../fish/guestfish.pod:445 ../fish/guestfish.pod:449 ../fish/guestfish.pod:453 ../fish/guestfish.pod:457 ../inspector/virt-inspector.pod:393 ../inspector/virt-inspector.pod:397 ../resize/virt-resize.pod:282 ../resize/virt-resize.pod:286 ../resize/virt-resize.pod:295 ../resize/virt-resize.pod:301 ../src/guestfs-actions.pod:22 ../src/guestfs-actions.pod:29 ../src/guestfs-actions.pod:588 ../src/guestfs-actions.pod:596 ../src/guestfs-actions.pod:603 ../src/guestfs-actions.pod:610 ../src/guestfs-actions.pod:1667 ../src/guestfs-actions.pod:1671 ../src/guestfs-actions.pod:1675 ../src/guestfs-actions.pod:1679 ../src/guestfs-actions.pod:1687 ../src/guestfs-actions.pod:1691 ../src/guestfs-actions.pod:1695 ../src/guestfs-actions.pod:1705 ../src/guestfs-actions.pod:1709 ../src/guestfs-actions.pod:1713 ../src/guestfs-actions.pod:1851 ../src/guestfs-actions.pod:1855 ../src/guestfs-actions.pod:1860 ../src/guestfs-actions.pod:1865 ../src/guestfs-actions.pod:1926 ../src/guestfs-actions.pod:1930 ../src/guestfs-actions.pod:1935 ../src/guestfs-actions.pod:2864 ../src/guestfs-actions.pod:2870 ../src/guestfs-actions.pod:2878 ../src/guestfs-actions.pod:2885 ../src/guestfs-actions.pod:2892 ../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:1644 ../src/guestfs.pod:1649 ../src/guestfs.pod:1653 ../src/guestfs.pod:1755 ../src/guestfs.pod:1760 ../src/guestfs.pod:1764 ../src/guestfs.pod:1774 ../src/guestfs.pod:2063 ../src/guestfs.pod:2068 ../src/guestfs.pod:2074 ../src/guestfs.pod:2082 ../src/guestfs.pod:2529 ../src/guestfs.pod:2535 ../src/guestfs.pod:2540 ../src/guestfs.pod:2546 ../src/guestfs.pod:2927 ../src/guestfs.pod:2932 ../src/guestfs.pod:2936 ../src/guestfs.pod:2940 ../src/guestfs.pod:2944 ../src/guestfs.pod:2958 ../src/guestfs.pod:2963 ../src/guestfs.pod:3188 ../src/guestfs.pod:3192 ../src/guestfs.pod:3196 ../src/guestfs.pod:3200 ../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
2138 msgid "*"
2139 msgstr ""
2140
2141 #. type: textblock
2142 #: ../df/virt-df.pod:150
2143 msgid ""
2144 "If you think an untrusted guest might actively try to exploit the libguestfs "
2145 "appliance kernel, then this prevents one guest from interfering with the "
2146 "stats printed for another guest."
2147 msgstr ""
2148
2149 #. type: textblock
2150 #: ../df/virt-df.pod:156
2151 msgid ""
2152 "If the kernel has a bug which stops it from accessing a filesystem in one "
2153 "guest (see for example RHBZ#635373) then this allows libguestfs to continue "
2154 "and report stats for further guests."
2155 msgstr ""
2156
2157 #. type: textblock
2158 #: ../df/virt-df.pod:165
2159 msgid ""
2160 "Print UUIDs instead of names.  This is useful for following a guest even "
2161 "when the guest is migrated or renamed, or when two guests happen to have the "
2162 "same name."
2163 msgstr ""
2164
2165 #. type: textblock
2166 #: ../df/virt-df.pod:169
2167 msgid ""
2168 "Note that only domains that we fetch from libvirt come with UUIDs.  For disk "
2169 "images, we still print the disk image name even when this option is "
2170 "specified."
2171 msgstr ""
2172
2173 #. type: textblock
2174 #: ../df/virt-df.pod:229
2175 msgid ""
2176 "L<df(1)>, L<guestfs(3)>, L<guestfish(1)>, L<virt-filesystems(1)>, "
2177 "L<http://libguestfs.org/>."
2178 msgstr ""
2179
2180 #. type: textblock
2181 #: ../edit/virt-edit.pod:5
2182 msgid "virt-edit - Edit a file in a virtual machine"
2183 msgstr ""
2184
2185 #. type: verbatim
2186 #: ../edit/virt-edit.pod:9
2187 #, no-wrap
2188 msgid ""
2189 " virt-edit [--options] -d domname file [file ...]\n"
2190 "\n"
2191 msgstr ""
2192
2193 #. type: verbatim
2194 #: ../edit/virt-edit.pod:11
2195 #, no-wrap
2196 msgid ""
2197 " virt-edit [--options] -a disk.img [-a disk.img ...] file [file ...]\n"
2198 "\n"
2199 msgstr ""
2200
2201 #. type: verbatim
2202 #: ../edit/virt-edit.pod:13
2203 #, no-wrap
2204 msgid ""
2205 " virt-edit [-d domname|-a disk.img] file -e 'expr'\n"
2206 "\n"
2207 msgstr ""
2208
2209 #. type: verbatim
2210 #: ../edit/virt-edit.pod:17
2211 #, no-wrap
2212 msgid ""
2213 " virt-edit domname file\n"
2214 "\n"
2215 msgstr ""
2216
2217 #. type: verbatim
2218 #: ../edit/virt-edit.pod:19 ../edit/virt-edit.pod:183
2219 #, no-wrap
2220 msgid ""
2221 " virt-edit disk.img [disk.img ...] file\n"
2222 "\n"
2223 msgstr ""
2224
2225 #. type: =head1
2226 #: ../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
2227 msgid "WARNING"
2228 msgstr ""
2229
2230 #. type: textblock
2231 #: ../edit/virt-edit.pod:23
2232 msgid ""
2233 "You must I<not> use C<virt-edit> on live virtual machines.  If you do this, "
2234 "you risk disk corruption in the VM.  C<virt-edit> tries to stop you from "
2235 "doing this, but doesn't catch all cases."
2236 msgstr ""
2237
2238 #. type: textblock
2239 #: ../edit/virt-edit.pod:29
2240 msgid ""
2241 "C<virt-edit> is a command line tool to edit C<file> where each C<file> "
2242 "exists in the named virtual machine (or disk image)."
2243 msgstr ""
2244
2245 #. type: textblock
2246 #: ../edit/virt-edit.pod:32
2247 msgid ""
2248 "Multiple filenames can be given, in which case they are each edited in "
2249 "turn.  Each filename must be a full path, starting at the root directory "
2250 "(starting with '/')."
2251 msgstr ""
2252
2253 #. type: textblock
2254 #: ../edit/virt-edit.pod:36
2255 msgid "If you want to just view a file, use L<virt-cat(1)>."
2256 msgstr ""
2257
2258 #. type: textblock
2259 #: ../edit/virt-edit.pod:38
2260 msgid ""
2261 "For more complex cases you should look at the L<guestfish(1)> tool (see "
2262 "L</USING GUESTFISH> below)."
2263 msgstr ""
2264
2265 #. type: textblock
2266 #: ../edit/virt-edit.pod:41
2267 msgid ""
2268 "C<virt-edit> cannot be used to create a new file.  L<guestfish(1)> can do "
2269 "that and much more."
2270 msgstr ""
2271
2272 #. type: textblock
2273 #: ../edit/virt-edit.pod:46
2274 msgid "Edit the named files interactively:"
2275 msgstr ""
2276
2277 #. type: verbatim
2278 #: ../edit/virt-edit.pod:48
2279 #, no-wrap
2280 msgid ""
2281 " virt-edit -d mydomain /boot/grub/grub.conf\n"
2282 "\n"
2283 msgstr ""
2284
2285 #. type: verbatim
2286 #: ../edit/virt-edit.pod:50
2287 #, no-wrap
2288 msgid ""
2289 " virt-edit -d mydomain /etc/passwd\n"
2290 "\n"
2291 msgstr ""
2292
2293 #. type: textblock
2294 #: ../edit/virt-edit.pod:52
2295 msgid "For Windows guests, some Windows paths are understood:"
2296 msgstr ""
2297
2298 #. type: verbatim
2299 #: ../edit/virt-edit.pod:54
2300 #, no-wrap
2301 msgid ""
2302 " virt-edit -d mywindomain 'c:\\autoexec.bat'\n"
2303 "\n"
2304 msgstr ""
2305
2306 #. type: textblock
2307 #: ../edit/virt-edit.pod:56
2308 msgid ""
2309 "If Perl is installed, you can also edit files non-interactively (see "
2310 "L</NON-INTERACTIVE EDITING> below).  To change the init default level to 5:"
2311 msgstr ""
2312
2313 #. type: verbatim
2314 #: ../edit/virt-edit.pod:60
2315 #, no-wrap
2316 msgid ""
2317 " virt-edit -d mydomain /etc/inittab -e 's/^id:.*/id:5:initdefault:/'\n"
2318 "\n"
2319 msgstr ""
2320
2321 #. type: =item
2322 #: ../edit/virt-edit.pod:81
2323 msgid "B<-b> extension"
2324 msgstr ""
2325
2326 #. type: =item
2327 #: ../edit/virt-edit.pod:83
2328 msgid "B<--backup> extension"
2329 msgstr ""
2330
2331 #. type: textblock
2332 #: ../edit/virt-edit.pod:85
2333 msgid ""
2334 "Create a backup of the original file I<in the guest disk image>.  The backup "
2335 "has the original filename with C<extension> added."
2336 msgstr ""
2337
2338 #. type: textblock
2339 #: ../edit/virt-edit.pod:88
2340 msgid ""
2341 "Usually the first character of C<extension> would be a dot C<.> so you would "
2342 "write:"
2343 msgstr ""
2344
2345 #. type: verbatim
2346 #: ../edit/virt-edit.pod:91
2347 #, no-wrap
2348 msgid ""
2349 " virt-edit -b .orig [etc]\n"
2350 "\n"
2351 msgstr ""
2352
2353 #. type: textblock
2354 #: ../edit/virt-edit.pod:93
2355 msgid "By default, no backup file is made."
2356 msgstr ""
2357
2358 #. type: =item
2359 #: ../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
2360 msgid "B<-c URI>"
2361 msgstr ""
2362
2363 #. type: =item
2364 #: ../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
2365 msgid "B<--connect URI>"
2366 msgstr ""
2367
2368 #. type: textblock
2369 #: ../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
2370 msgid ""
2371 "If you specify guest block devices directly, then libvirt is not used at "
2372 "all."
2373 msgstr ""
2374
2375 #. type: textblock
2376 #: ../edit/virt-edit.pod:114
2377 msgid ""
2378 "When prompting for keys and passphrases, virt-edit normally turns echoing "
2379 "off so you cannot see what you are typing.  If you are not worried about "
2380 "Tempest attacks and there is no one else in the room you can specify this "
2381 "flag to see what you are typing."
2382 msgstr ""
2383
2384 #. type: =item
2385 #: ../edit/virt-edit.pod:119
2386 msgid "B<-e> EXPR"
2387 msgstr ""
2388
2389 #. type: =item
2390 #: ../edit/virt-edit.pod:121
2391 msgid "B<--expr> EXPR"
2392 msgstr ""
2393
2394 #. type: textblock
2395 #: ../edit/virt-edit.pod:123
2396 msgid ""
2397 "Instead of launching the external editor, non-interactively apply the Perl "
2398 "expression C<EXPR> to each line in the file.  See L</NON-INTERACTIVE "
2399 "EDITING> below."
2400 msgstr ""
2401
2402 #. type: textblock
2403 #: ../edit/virt-edit.pod:127
2404 msgid ""
2405 "Be careful to properly quote the expression to prevent it from being altered "
2406 "by the shell."
2407 msgstr ""
2408
2409 #. type: textblock
2410 #: ../edit/virt-edit.pod:130
2411 msgid "Note that this option is only available when Perl 5 is installed."
2412 msgstr ""
2413
2414 #. type: =item
2415 #: ../edit/virt-edit.pod:132
2416 msgid "B<--format> raw|qcow2|..."
2417 msgstr ""
2418
2419 #. type: verbatim
2420 #: ../edit/virt-edit.pod:143
2421 #, no-wrap
2422 msgid ""
2423 " virt-edit --format=raw -a disk.img file\n"
2424 "\n"
2425 msgstr ""
2426
2427 #. type: verbatim
2428 #: ../edit/virt-edit.pod:147
2429 #, no-wrap
2430 msgid ""
2431 " virt-edit --format=raw -a disk.img --format -a another.img file\n"
2432 "\n"
2433 msgstr ""
2434
2435 #. type: textblock
2436 #: ../edit/virt-edit.pod:181
2437 msgid "Previous versions of virt-edit allowed you to write either:"
2438 msgstr ""
2439
2440 #. type: verbatim
2441 #: ../edit/virt-edit.pod:187
2442 #, no-wrap
2443 msgid ""
2444 " virt-edit guestname file\n"
2445 "\n"
2446 msgstr ""
2447
2448 #. type: =head1
2449 #: ../edit/virt-edit.pod:195
2450 msgid "NON-INTERACTIVE EDITING"
2451 msgstr ""
2452
2453 #. type: textblock
2454 #: ../edit/virt-edit.pod:197
2455 msgid ""
2456 "C<virt-edit> normally calls out to C<$EDITOR> (or vi) so the system "
2457 "administrator can interactively edit the file."
2458 msgstr ""
2459
2460 #. type: textblock
2461 #: ../edit/virt-edit.pod:200
2462 msgid ""
2463 "There are two ways also to use C<virt-edit> from scripts in order to make "
2464 "automated edits to files.  (Note that although you I<can> use C<virt-edit> "
2465 "like this, it's less error-prone to write scripts directly using the "
2466 "libguestfs API and Augeas for configuration file editing.)"
2467 msgstr ""
2468
2469 #. type: textblock
2470 #: ../edit/virt-edit.pod:206
2471 msgid ""
2472 "The first method is to temporarily set C<$EDITOR> to any script or program "
2473 "you want to run.  The script is invoked as C<$EDITOR tmpfile> and it should "
2474 "update C<tmpfile> in place however it likes."
2475 msgstr ""
2476
2477 #. type: textblock
2478 #: ../edit/virt-edit.pod:210
2479 msgid ""
2480 "The second method is to use the I<-e> parameter of C<virt-edit> to run a "
2481 "short Perl snippet in the style of L<sed(1)>.  For example to replace all "
2482 "instances of C<foo> with C<bar> in a file:"
2483 msgstr ""
2484
2485 #. type: verbatim
2486 #: ../edit/virt-edit.pod:214
2487 #, no-wrap
2488 msgid ""
2489 " virt-edit -d domname filename -e 's/foo/bar/'\n"
2490 "\n"
2491 msgstr ""
2492
2493 #. type: textblock
2494 #: ../edit/virt-edit.pod:216
2495 msgid ""
2496 "The full power of Perl regular expressions can be used (see L<perlre(1)>).  "
2497 "For example to delete root's password you could do:"
2498 msgstr ""
2499
2500 #. type: verbatim
2501 #: ../edit/virt-edit.pod:219
2502 #, no-wrap
2503 msgid ""
2504 " virt-edit -d domname /etc/passwd -e 's/^root:.*?:/root::/'\n"
2505 "\n"
2506 msgstr ""
2507
2508 #. type: textblock
2509 #: ../edit/virt-edit.pod:221
2510 msgid ""
2511 "What really happens is that the snippet is evaluated as a Perl expression "
2512 "for each line of the file.  The line, including the final C<\\n>, is passed "
2513 "in C<$_> and the expression should update C<$_> or leave it unchanged."
2514 msgstr ""
2515
2516 #. type: textblock
2517 #: ../edit/virt-edit.pod:226
2518 msgid ""
2519 "To delete a line, set C<$_> to the empty string.  For example, to delete the "
2520 "C<apache> user account from the password file you can do:"
2521 msgstr ""
2522
2523 #. type: verbatim
2524 #: ../edit/virt-edit.pod:229
2525 #, no-wrap
2526 msgid ""
2527 " virt-edit -d mydomain /etc/passwd -e '$_ = \"\" if /^apache:/'\n"
2528 "\n"
2529 msgstr ""
2530
2531 #. type: textblock
2532 #: ../edit/virt-edit.pod:231
2533 msgid ""
2534 "To insert a line, prepend or append it to C<$_>.  However appending lines to "
2535 "the end of the file is rather difficult this way since there is no concept "
2536 "of \"last line of the file\" - your expression just doesn't get called "
2537 "again.  You might want to use the first method (setting C<$EDITOR>) if you "
2538 "want to do this."
2539 msgstr ""
2540
2541 #. type: textblock
2542 #: ../edit/virt-edit.pod:237
2543 msgid ""
2544 "The variable C<$lineno> contains the current line number.  As is "
2545 "traditional, the first line in the file is number C<1>."
2546 msgstr ""
2547
2548 #. type: textblock
2549 #: ../edit/virt-edit.pod:240
2550 msgid ""
2551 "The return value from the expression is ignored, but the expression may call "
2552 "C<die> in order to abort the whole program, leaving the original file "
2553 "untouched."
2554 msgstr ""
2555
2556 #. type: textblock
2557 #: ../edit/virt-edit.pod:244
2558 msgid ""
2559 "Remember when matching the end of a line that C<$_> may contain the final "
2560 "C<\\n>, or (for DOS files) C<\\r\\n>, or if the file does not end with a "
2561 "newline then neither of these.  Thus to match or substitute some text at the "
2562 "end of a line, use this regular expression:"
2563 msgstr ""
2564
2565 #. type: verbatim
2566 #: ../edit/virt-edit.pod:249
2567 #, no-wrap
2568 msgid ""
2569 " /some text(\\r?\\n)?$/\n"
2570 "\n"
2571 msgstr ""
2572
2573 #. type: textblock
2574 #: ../edit/virt-edit.pod:251
2575 msgid ""
2576 "Alternately, use the perl C<chomp> function, being careful not to chomp "
2577 "C<$_> itself (since that would remove all newlines from the file):"
2578 msgstr ""
2579
2580 #. type: verbatim
2581 #: ../edit/virt-edit.pod:255
2582 #, no-wrap
2583 msgid ""
2584 " my $m = $_; chomp $m; $m =~ /some text$/\n"
2585 "\n"
2586 msgstr ""
2587
2588 #. type: =head1
2589 #: ../edit/virt-edit.pod:257 ../fish/guestfish.pod:858
2590 msgid "WINDOWS PATHS"
2591 msgstr ""
2592
2593 #. type: textblock
2594 #: ../edit/virt-edit.pod:259
2595 msgid ""
2596 "C<virt-edit> has a limited ability to understand Windows drive letters and "
2597 "paths (eg. C<E:\\foo\\bar.txt>)."
2598 msgstr ""
2599
2600 #. type: textblock
2601 #: ../edit/virt-edit.pod:262
2602 msgid "If and only if the guest is running Windows then:"
2603 msgstr ""
2604
2605 #. type: textblock
2606 #: ../edit/virt-edit.pod:268
2607 msgid ""
2608 "Drive letter prefixes like C<C:> are resolved against the Windows Registry "
2609 "to the correct filesystem."
2610 msgstr ""
2611
2612 #. type: textblock
2613 #: ../edit/virt-edit.pod:273
2614 msgid ""
2615 "Any backslash (C<\\>) characters in the path are replaced with forward "
2616 "slashes so that libguestfs can process it."
2617 msgstr ""
2618
2619 #. type: textblock
2620 #: ../edit/virt-edit.pod:278
2621 msgid ""
2622 "The path is resolved case insensitively to locate the file that should be "
2623 "edited."
2624 msgstr ""
2625
2626 #. type: textblock
2627 #: ../edit/virt-edit.pod:283
2628 msgid "There are some known shortcomings:"
2629 msgstr ""
2630
2631 #. type: textblock
2632 #: ../edit/virt-edit.pod:289
2633 msgid "Some NTFS symbolic links may not be followed correctly."
2634 msgstr ""
2635
2636 #. type: textblock
2637 #: ../edit/virt-edit.pod:293
2638 msgid "NTFS junction points that cross filesystems are not followed."
2639 msgstr ""
2640
2641 #. type: textblock
2642 #: ../edit/virt-edit.pod:299
2643 msgid ""
2644 "L<guestfish(1)> is a more powerful, lower level tool which you can use when "
2645 "C<virt-edit> doesn't work."
2646 msgstr ""
2647
2648 #. type: textblock
2649 #: ../edit/virt-edit.pod:302
2650 msgid "Using C<virt-edit> is approximately equivalent to doing:"
2651 msgstr ""
2652
2653 #. type: verbatim
2654 #: ../edit/virt-edit.pod:304
2655 #, no-wrap
2656 msgid ""
2657 " guestfish --rw -i -d domname edit /file\n"
2658 "\n"
2659 msgstr ""
2660
2661 #. type: textblock
2662 #: ../edit/virt-edit.pod:306
2663 msgid ""
2664 "where C<domname> is the name of the libvirt guest, and C</file> is the full "
2665 "path to the file."
2666 msgstr ""
2667
2668 #. type: textblock
2669 #: ../edit/virt-edit.pod:309
2670 msgid ""
2671 "The command above uses libguestfs's guest inspection feature and so does not "
2672 "work on guests that libguestfs cannot inspect, or on things like arbitrary "
2673 "disk images that don't contain guests.  To edit a file on a disk image "
2674 "directly, use:"
2675 msgstr ""
2676
2677 #. type: verbatim
2678 #: ../edit/virt-edit.pod:314
2679 #, no-wrap
2680 msgid ""
2681 " guestfish --rw -a disk.img -m /dev/sda1 edit /file\n"
2682 "\n"
2683 msgstr ""
2684
2685 #. type: textblock
2686 #: ../edit/virt-edit.pod:316
2687 msgid ""
2688 "where C<disk.img> is the disk image, C</dev/sda1> is the filesystem within "
2689 "the disk image to edit, and C</file> is the full path to the file."
2690 msgstr ""
2691
2692 #. type: textblock
2693 #: ../edit/virt-edit.pod:320
2694 msgid ""
2695 "C<virt-edit> cannot create new files.  Use the guestfish commands C<touch>, "
2696 "C<write> or C<upload> instead:"
2697 msgstr ""
2698
2699 #. type: verbatim
2700 #: ../edit/virt-edit.pod:323
2701 #, no-wrap
2702 msgid ""
2703 " guestfish --rw -i -d domname touch /newfile\n"
2704 "\n"
2705 msgstr ""
2706
2707 #. type: verbatim
2708 #: ../edit/virt-edit.pod:325
2709 #, no-wrap
2710 msgid ""
2711 " guestfish --rw -i -d domname write /newfile \"new content\"\n"
2712 "\n"
2713 msgstr ""
2714
2715 #. type: verbatim
2716 #: ../edit/virt-edit.pod:327
2717 #, no-wrap
2718 msgid ""
2719 " guestfish --rw -i -d domname upload localfile /newfile\n"
2720 "\n"
2721 msgstr ""
2722
2723 #. type: =head1
2724 #: ../edit/virt-edit.pod:329 ../fish/guestfish.pod:1086 ../rescue/virt-rescue.pod:257 ../src/guestfs.pod:3074 ../test-tool/libguestfs-test-tool.pod:95
2725 msgid "ENVIRONMENT VARIABLES"
2726 msgstr ""
2727
2728 #. type: =item
2729 #: ../edit/virt-edit.pod:333
2730 msgid "C<EDITOR>"
2731 msgstr ""
2732
2733 #. type: textblock
2734 #: ../edit/virt-edit.pod:335
2735 msgid ""
2736 "If set, this string is used as the editor.  It may contain arguments, "
2737 "eg. C<\"emacs -nw\">"
2738 msgstr ""
2739
2740 #. type: textblock
2741 #: ../edit/virt-edit.pod:338
2742 msgid "If not set, C<vi> is used."
2743 msgstr ""
2744
2745 #. type: textblock
2746 #: ../edit/virt-edit.pod:356
2747 msgid ""
2748 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, "
2749 "L<virt-tar-in(1)>, L<Sys::Guestfs(3)>, L<Sys::Guestfs::Lib(3)>, "
2750 "L<Sys::Virt(3)>, L<http://libguestfs.org/>, L<perl(1)>, L<perlre(1)>."
2751 msgstr ""
2752
2753 #. type: textblock
2754 #: ../examples/guestfs-examples.pod:5
2755 msgid "guestfs-examples - Examples of using libguestfs from C"
2756 msgstr ""
2757
2758 #. type: verbatim
2759 #: ../examples/guestfs-examples.pod:9 ../src/guestfs.pod:9
2760 #, no-wrap
2761 msgid ""
2762 " #include <guestfs.h>\n"
2763 " \n"
2764 msgstr ""
2765
2766 #. type: verbatim
2767 #: ../examples/guestfs-examples.pod:11
2768 #, no-wrap
2769 msgid ""
2770 " guestfs_h *g = guestfs_create ();\n"
2771 " guestfs_add_drive_ro (g, \"disk.img\");\n"
2772 " guestfs_launch (g);\n"
2773 "\n"
2774 msgstr ""
2775
2776 #. type: verbatim
2777 #: ../examples/guestfs-examples.pod:15 ../src/guestfs.pod:19
2778 #, no-wrap
2779 msgid ""
2780 " cc prog.c -o prog -lguestfs\n"
2781 "or:\n"
2782 " cc prog.c -o prog `pkg-config libguestfs --cflags --libs`\n"
2783 "\n"
2784 msgstr ""
2785
2786 #. type: textblock
2787 #: ../examples/guestfs-examples.pod:21
2788 msgid ""
2789 "This manual page contains examples of calling libguestfs from the C "
2790 "programming language.  If you are not familiar with using libguestfs, you "
2791 "also need to read L<guestfs(3)>."
2792 msgstr ""
2793
2794 #. type: =head1
2795 #: ../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
2796 msgid "EXAMPLE 1: CREATE A DISK IMAGE"
2797 msgstr ""
2798
2799 #. type: textblock
2800 #: ../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
2801 msgid "@EXAMPLE1@"
2802 msgstr ""
2803
2804 #. type: =head1
2805 #: ../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
2806 msgid "EXAMPLE 2: INSPECT A VIRTUAL MACHINE DISK IMAGE"
2807 msgstr ""
2808
2809 #. type: textblock
2810 #: ../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
2811 msgid "@EXAMPLE2@"
2812 msgstr ""
2813
2814 #. type: textblock
2815 #: ../examples/guestfs-examples.pod:35
2816 msgid ""
2817 "L<guestfs(3)>, L<guestfs-java(3)>, L<guestfs-ocaml(3)>, L<guestfs-perl(3)>, "
2818 "L<guestfs-python(3)>, L<guestfs-recipes(1)>, L<guestfs-ruby(3)>, "
2819 "L<http://libguestfs.org/>."
2820 msgstr ""
2821
2822 #. type: =head1
2823 #: ../examples/guestfs-examples.pod:44 ../examples/guestfs-recipes.pod:396 ../fish/guestfish.pod:1260 ../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:319 ../inspector/virt-inspector.pod:389 ../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:3207 ../test-tool/libguestfs-test-tool.pod:106
2824 msgid "AUTHORS"
2825 msgstr ""
2826
2827 #. type: textblock
2828 #: ../examples/guestfs-examples.pod:46 ../examples/guestfs-recipes.pod:398 ../fish/guestfish.pod:1262 ../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:321 ../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:3209 ../test-tool/libguestfs-test-tool.pod:108
2829 msgid "Richard W.M. Jones (C<rjones at redhat dot com>)"
2830 msgstr ""
2831
2832 #. type: textblock
2833 #: ../examples/guestfs-examples.pod:50 ../ocaml/examples/guestfs-ocaml.pod:96 ../python/examples/guestfs-python.pod:59 ../ruby/examples/guestfs-ruby.pod:53
2834 msgid "Copyright (C) 2010 Red Hat Inc. L<http://libguestfs.org/>"
2835 msgstr ""
2836
2837 #. type: textblock
2838 #: ../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
2839 msgid ""
2840 "The examples in this manual page may be freely copied, modified and "
2841 "distributed without any restrictions."
2842 msgstr ""
2843
2844 #. type: textblock
2845 #: ../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:3216
2846 msgid ""
2847 "This library is free software; you can redistribute it and/or modify it "
2848 "under the terms of the GNU Lesser General Public License as published by the "
2849 "Free Software Foundation; either version 2 of the License, or (at your "
2850 "option) any later version."
2851 msgstr ""
2852
2853 #. type: textblock
2854 #: ../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:3221
2855 msgid ""
2856 "This library is distributed in the hope that it will be useful, but WITHOUT "
2857 "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
2858 "FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License "
2859 "for more details."
2860 msgstr ""
2861
2862 #. type: textblock
2863 #: ../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:3226
2864 msgid ""
2865 "You should have received a copy of the GNU Lesser General Public License "
2866 "along with this library; if not, write to the Free Software Foundation, "
2867 "Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA"
2868 msgstr ""
2869
2870 #. type: =end
2871 #: ../examples/guestfs-recipes.pod:3 ../examples/guestfs-recipes.pod:12
2872 msgid "comment"
2873 msgstr ""
2874
2875 #. type: textblock
2876 #: ../examples/guestfs-recipes.pod:5
2877 msgid ""
2878 "pod2man and pod2html have differing bugs which makes it hard to write URLs "
2879 "here.  The only way which works for both sorts of output is to just write "
2880 "the URL directly.  Do NOT use L<...> for URLs."
2881 msgstr ""
2882
2883 #. type: textblock
2884 #: ../examples/guestfs-recipes.pod:9
2885 msgid ""
2886 "We break with tradition here and don't use ALL CAPS for the section "
2887 "headings, as this makes them much easier to read."
2888 msgstr ""
2889
2890 #. type: textblock
2891 #: ../examples/guestfs-recipes.pod:16
2892 msgid "guestfs-recipes - libguestfs, guestfish and virt tools recipes"
2893 msgstr ""
2894
2895 #. type: textblock
2896 #: ../examples/guestfs-recipes.pod:20
2897 msgid ""
2898 "This page contains recipes for and links to things you can do using "
2899 "libguestfs, L<guestfish(1)> and the virt tools."
2900 msgstr ""
2901
2902 #. type: =head1
2903 #: ../examples/guestfs-recipes.pod:23
2904 msgid "Audit a virtual machine for setuid files"
2905 msgstr ""
2906
2907 #. type: textblock
2908 #: ../examples/guestfs-recipes.pod:25
2909 msgid ""
2910 "The link below contains a small program which can be used to audit a Linux "
2911 "virtual machine to see what setuid and setgid files it contains."
2912 msgstr ""
2913
2914 #. type: textblock
2915 #: ../examples/guestfs-recipes.pod:28
2916 msgid "https://rwmj.wordpress.com/2010/12/15/tip-audit-virtual-machine-for-setuid-files/#content"
2917 msgstr ""
2918
2919 #. type: =head1
2920 #: ../examples/guestfs-recipes.pod:30
2921 msgid "Change the background image in a Windows XP VM"
2922 msgstr ""
2923
2924 #. type: textblock
2925 #: ../examples/guestfs-recipes.pod:32
2926 msgid ""
2927 "The links below explain how to use L<guestfish(1)> to change the background "
2928 "image for a user of a Windows XP VM.  Unfortunately the technique appears to "
2929 "be substantially different for each version of Windows."
2930 msgstr ""
2931
2932 #. type: textblock
2933 #: ../examples/guestfs-recipes.pod:37
2934 msgid ""
2935 "https://lists.fedoraproject.org/pipermail/virt/2011-May/002655.html "
2936 "https://lists.fedoraproject.org/pipermail/virt/2011-May/002658.html"
2937 msgstr ""
2938
2939 #. type: =head1
2940 #: ../examples/guestfs-recipes.pod:40
2941 msgid "Cloning a virtual machine (Linux)"
2942 msgstr ""
2943
2944 #. type: textblock
2945 #: ../examples/guestfs-recipes.pod:42
2946 msgid ""
2947 "The guestfish technique described in the link below works well for most "
2948 "Linux VMs.  Depending on the Linux distro you may need to change the paths "
2949 "slightly."
2950 msgstr ""
2951
2952 #. type: textblock
2953 #: ../examples/guestfs-recipes.pod:46
2954 msgid "https://rwmj.wordpress.com/2010/09/24/tip-my-procedure-for-cloning-a-fedora-vm/#content"
2955 msgstr ""
2956
2957 #. type: textblock
2958 #: ../examples/guestfs-recipes.pod:48
2959 msgid ""
2960 "Avoid L<virt-clone(1)>.  Currently what to do about virt-clone is under "
2961 "discussion."
2962 msgstr ""
2963
2964 #. type: textblock
2965 #: ../examples/guestfs-recipes.pod:51
2966 msgid "https://www.redhat.com/archives/virt-tools-list/2011-May/msg00019.html"
2967 msgstr ""
2968
2969 #. type: =head1
2970 #: ../examples/guestfs-recipes.pod:53
2971 msgid "Cloning a virtual machine (Windows)"
2972 msgstr ""
2973
2974 #. type: textblock
2975 #: ../examples/guestfs-recipes.pod:55
2976 msgid ""
2977 "It is possible to do a \"sysprep\" using libguestfs alone, although not "
2978 "straightforward.  Currently there is code in the Aeolus Oz project which "
2979 "does this (using libguestfs).  As part of our review of the virt-clone tool, "
2980 "we may add sysprepping ability."
2981 msgstr ""
2982
2983 #. type: textblock
2984 #: ../examples/guestfs-recipes.pod:60
2985 msgid ""
2986 "https://github.com/clalancette/oz "
2987 "https://www.redhat.com/archives/virt-tools-list/2011-May/msg00019.html"
2988 msgstr ""
2989
2990 #. type: =head1
2991 #: ../examples/guestfs-recipes.pod:63
2992 msgid "Convert a CD-ROM / DVD / ISO to a tarball"
2993 msgstr ""
2994
2995 #. type: textblock
2996 #: ../examples/guestfs-recipes.pod:65
2997 msgid "This converts input C<cd.iso> to output C<cd.tar.gz>:"
2998 msgstr ""
2999
3000 #. type: verbatim
3001 #: ../examples/guestfs-recipes.pod:67
3002 #, no-wrap
3003 msgid ""
3004 " guestfish --ro -a cd.iso -m /dev/sda tgz-out / cd.tar.gz\n"
3005 "\n"
3006 msgstr ""
3007
3008 #. type: textblock
3009 #: ../examples/guestfs-recipes.pod:69
3010 msgid "To export just a subdirectory, eg. C</files>, do:"
3011 msgstr ""
3012
3013 #. type: verbatim
3014 #: ../examples/guestfs-recipes.pod:71
3015 #, no-wrap
3016 msgid ""
3017 " guestfish --ro -a cd.iso -m /dev/sda tgz-out /files cd.tar.gz\n"
3018 "\n"
3019 msgstr ""
3020
3021 #. type: =head1
3022 #: ../examples/guestfs-recipes.pod:73
3023 msgid "Create empty disk images"
3024 msgstr ""
3025
3026 #. type: textblock
3027 #: ../examples/guestfs-recipes.pod:75
3028 msgid ""
3029 "You can use the L<guestfish(1)> I<-N> option to create empty disk images.  "
3030 "The useful guide below explains the options available."
3031 msgstr ""
3032
3033 #. type: textblock
3034 #: ../examples/guestfs-recipes.pod:78
3035 msgid "https://rwmj.wordpress.com/2010/09/08/new-guestfish-n-options-in-1-5-9/#content"
3036 msgstr ""
3037
3038 #. type: =head1
3039 #: ../examples/guestfs-recipes.pod:80
3040 msgid "Dump raw filesystem content from inside a disk image or VM"
3041 msgstr ""
3042
3043 #. type: textblock
3044 #: ../examples/guestfs-recipes.pod:82
3045 msgid ""
3046 "You can use the L<guestfish(1)> C<download> command to extract the raw "
3047 "filesystem content from any filesystem in a disk image or a VM (even one "
3048 "which is encrypted or buried inside an LV):"
3049 msgstr ""
3050
3051 #. type: verbatim
3052 #: ../examples/guestfs-recipes.pod:86
3053 #, no-wrap
3054 msgid ""
3055 " guestfish --ro -a disk.img run : download /dev/sda1 sda1.img\n"
3056 "\n"
3057 msgstr ""
3058
3059 #. type: verbatim
3060 #: ../examples/guestfs-recipes.pod:88
3061 #, no-wrap
3062 msgid ""
3063 " guestfish --ro -d Guest run : download /dev/vg_guest/lv_root lv.img\n"
3064 "\n"
3065 msgstr ""
3066
3067 #. type: textblock
3068 #: ../examples/guestfs-recipes.pod:90
3069 msgid "To list the filesystems in a disk image, use L<virt-filesystems(1)>."
3070 msgstr ""
3071
3072 #. type: =head1
3073 #: ../examples/guestfs-recipes.pod:92
3074 msgid "Edit grub configuration in a VM"
3075 msgstr ""
3076
3077 #. type: textblock
3078 #: ../examples/guestfs-recipes.pod:94
3079 msgid "You can use this to:"
3080 msgstr ""
3081
3082 #. type: textblock
3083 #: ../examples/guestfs-recipes.pod:100
3084 msgid "Fix a virtual machine that does not boot."
3085 msgstr ""
3086
3087 #. type: textblock
3088 #: ../examples/guestfs-recipes.pod:104
3089 msgid "Change which kernel is used to boot the VM."
3090 msgstr ""
3091
3092 #. type: textblock
3093 #: ../examples/guestfs-recipes.pod:108
3094 msgid "Change kernel command line options."
3095 msgstr ""
3096
3097 #. type: textblock
3098 #: ../examples/guestfs-recipes.pod:112
3099 msgid "Use L<virt-edit(1)> to edit the grub configuration:"
3100 msgstr ""
3101
3102 #. type: verbatim
3103 #: ../examples/guestfs-recipes.pod:114
3104 #, no-wrap
3105 msgid ""
3106 " virt-edit -d BrokenGuest /boot/grub/grub.conf\n"
3107 "\n"
3108 msgstr ""
3109
3110 #. type: textblock
3111 #: ../examples/guestfs-recipes.pod:116
3112 msgid ""
3113 "or for general tinkering inside an unbootable VM use L<virt-rescue(1)> like "
3114 "this:"
3115 msgstr ""
3116
3117 #. type: verbatim
3118 #: ../examples/guestfs-recipes.pod:119
3119 #, no-wrap
3120 msgid ""
3121 " virt-rescue -d BrokenGuest\n"
3122 "\n"
3123 msgstr ""
3124
3125 #. type: =head1
3126 #: ../examples/guestfs-recipes.pod:121
3127 msgid "Export any directory from a VM"
3128 msgstr ""
3129
3130 #. type: textblock
3131 #: ../examples/guestfs-recipes.pod:123
3132 msgid "To export C</home> from a VM into a local directory use L<virt-copy-out(1)>:"
3133 msgstr ""
3134
3135 #. type: verbatim
3136 #: ../examples/guestfs-recipes.pod:126
3137 #, no-wrap
3138 msgid ""
3139 " virt-copy-out -d Guest /home .\n"
3140 "\n"
3141 msgstr ""
3142
3143 #. type: textblock
3144 #: ../examples/guestfs-recipes.pod:128 ../fish/guestfish-actions.pod:9 ../fish/guestfish-actions.pod:1292 ../fish/guestfish-actions.pod:1934 ../src/guestfs-actions.pod:18 ../src/guestfs-actions.pod:1922 ../src/guestfs-actions.pod:2860 ../src/guestfs.pod:1640 ../tools/virt-win-reg.pl:706
3145 msgid "Notes:"
3146 msgstr ""
3147
3148 #. type: textblock
3149 #: ../examples/guestfs-recipes.pod:134
3150 msgid ""
3151 "The final dot of the command is not a printing error.  It means we want to "
3152 "copy out to the current directory."
3153 msgstr ""
3154
3155 #. type: textblock
3156 #: ../examples/guestfs-recipes.pod:139
3157 msgid "This creates a directory called C<home> under the current directory."
3158 msgstr ""
3159
3160 #. type: textblock
3161 #: ../examples/guestfs-recipes.pod:143
3162 msgid ""
3163 "If the guest is a Windows guest then you can use drive letters and "
3164 "backslashes, but you must prefix the path with C<win:> and quote it to "
3165 "protect it from the shell, like this:"
3166 msgstr ""
3167
3168 #. type: verbatim
3169 #: ../examples/guestfs-recipes.pod:147
3170 #, no-wrap
3171 msgid ""
3172 " virt-copy-out -d WinGuest 'win:c:\\windows\\system32\\config' .\n"
3173 "\n"
3174 msgstr ""
3175
3176 #. type: textblock
3177 #: ../examples/guestfs-recipes.pod:149
3178 msgid "To get the output as a compressed tarball, do:"
3179 msgstr ""
3180
3181 #. type: verbatim
3182 #: ../examples/guestfs-recipes.pod:151
3183 #, no-wrap
3184 msgid ""
3185 " virt-tar-out -d Guest /home - | gzip --best > home.tar.gz\n"
3186 "\n"
3187 msgstr ""
3188
3189 #. type: textblock
3190 #: ../examples/guestfs-recipes.pod:153
3191 msgid ""
3192 "Although it sounds tempting, this is usually not a reliable way to get a "
3193 "backup from a running guest.  See the entry in the FAQ: "
3194 "http://libguestfs.org/FAQ.html#backup"
3195 msgstr ""
3196
3197 #. type: =head1
3198 #: ../examples/guestfs-recipes.pod:157
3199 msgid "Find out which user is using the most space"
3200 msgstr ""
3201
3202 #. type: textblock
3203 #: ../examples/guestfs-recipes.pod:159
3204 msgid ""
3205 "This simple script examines a Linux guest to find out which user is using "
3206 "the most space in their home directory:"
3207 msgstr ""
3208
3209 #. type: verbatim
3210 #: ../examples/guestfs-recipes.pod:162
3211 #, no-wrap
3212 msgid ""
3213 " #!/bin/sh -\n"
3214 " \n"
3215 msgstr ""
3216
3217 #. type: verbatim
3218 #: ../examples/guestfs-recipes.pod:164
3219 #, no-wrap
3220 msgid ""
3221 " set -e\n"
3222 " \n"
3223 msgstr ""
3224
3225 #. type: verbatim
3226 #: ../examples/guestfs-recipes.pod:166
3227 #, no-wrap
3228 msgid ""
3229 " vm=\"$1\"\n"
3230 " dir=/home\n"
3231 " \n"
3232 msgstr ""
3233
3234 #. type: verbatim
3235 #: ../examples/guestfs-recipes.pod:169
3236 #, no-wrap
3237 msgid ""
3238 " eval $(guestfish --ro -d \"$vm\" -i --listen)\n"
3239 " \n"
3240 msgstr ""
3241
3242 #. type: verbatim
3243 #: ../examples/guestfs-recipes.pod:171
3244 #, no-wrap
3245 msgid ""
3246 " for d in $(guestfish --remote ls \"$dir\"); do\n"
3247 "     echo -n \"$dir/$d\"\n"
3248 "     echo -ne '\\t'\n"
3249 "     guestfish --remote du \"$dir/$d\";\n"
3250 " done | sort -nr -k 2\n"
3251 " \n"
3252 msgstr ""
3253
3254 #. type: verbatim
3255 #: ../examples/guestfs-recipes.pod:177 ../fish/guestfish.pod:941
3256 #, no-wrap
3257 msgid ""
3258 " guestfish --remote exit\n"
3259 "\n"
3260 msgstr ""
3261
3262 #. type: =head1
3263 #: ../examples/guestfs-recipes.pod:179
3264 msgid "Get DHCP address from a VM"
3265 msgstr ""
3266
3267 #. type: textblock
3268 #: ../examples/guestfs-recipes.pod:181
3269 msgid ""
3270 "The link below explains the many different possible techniques for getting "
3271 "the last assigned DHCP address of a virtual machine."
3272 msgstr ""
3273
3274 #. type: textblock
3275 #: ../examples/guestfs-recipes.pod:184
3276 msgid "https://rwmj.wordpress.com/2011/03/31/tip-code-for-getting-dhcp-address-from-a-virtual-machine-disk-image/#content"
3277 msgstr ""
3278
3279 #. type: textblock
3280 #: ../examples/guestfs-recipes.pod:186
3281 msgid ""
3282 "In the libguestfs source examples directory you will find the latest version "
3283 "of the C<virt-dhcp-address.c> program."
3284 msgstr ""
3285
3286 #. type: =head1
3287 #: ../examples/guestfs-recipes.pod:189
3288 msgid "Get the operating system product name string"
3289 msgstr ""
3290
3291 #. type: textblock
3292 #: ../examples/guestfs-recipes.pod:191
3293 msgid "Save the following script into a file called C<product-name.sh>:"
3294 msgstr ""
3295
3296 #. type: verbatim
3297 #: ../examples/guestfs-recipes.pod:193
3298 #, no-wrap
3299 msgid ""
3300 " #!/bin/sh -\n"
3301 " set -e\n"
3302 " eval \"$(guestfish --ro -d \"$1\" --i --listen)\"\n"
3303 " root=\"$(guestfish --remote inspect-get-roots)\"\n"
3304 " guestfish --remote inspect-get-product-name \"$root\"\n"
3305 " guestfish --remote exit\n"
3306 "\n"
3307 msgstr ""
3308
3309 #. type: textblock
3310 #: ../examples/guestfs-recipes.pod:200
3311 msgid "Make the script executable and run it on a named guest:"
3312 msgstr ""
3313
3314 #. type: verbatim
3315 #: ../examples/guestfs-recipes.pod:202
3316 #, no-wrap
3317 msgid ""
3318 " # product-name.sh RHEL60x64\n"
3319 " Red Hat Enterprise Linux Server release 6.0 (Santiago)\n"
3320 "\n"
3321 msgstr ""
3322
3323 #. type: textblock
3324 #: ../examples/guestfs-recipes.pod:205
3325 msgid ""
3326 "You can also use an XPath query on the L<virt-inspector(1)> XML using the "
3327 "C<xpath> command line tool or from your favourite programming language:"
3328 msgstr ""
3329
3330 #. type: verbatim
3331 #: ../examples/guestfs-recipes.pod:209
3332 #, no-wrap
3333 msgid ""
3334 " # virt-inspector RHEL60x64 > xml\n"
3335 " # xpath '//product_name' < xml\n"
3336 " Found 1 nodes:\n"
3337 " -- NODE --\n"
3338 " <product_name>Red Hat Enterprise Linux Server release 6.0 "
3339 "(Santiago)</product_name>\n"
3340 "\n"
3341 msgstr ""
3342
3343 #. type: =head1
3344 #: ../examples/guestfs-recipes.pod:215
3345 msgid "Get the default boot kernel for a Linux VM"
3346 msgstr ""
3347
3348 #. type: textblock
3349 #: ../examples/guestfs-recipes.pod:217
3350 msgid ""
3351 "The link below contains a program to print the default boot kernel for a "
3352 "Linux VM."
3353 msgstr ""
3354
3355 #. type: textblock
3356 #: ../examples/guestfs-recipes.pod:220
3357 msgid "https://rwmj.wordpress.com/2010/10/30/tip-use-augeas-to-get-the-default-boot-kernel-for-a-vm/#content"
3358 msgstr ""
3359
3360 #. type: textblock
3361 #: ../examples/guestfs-recipes.pod:222
3362 msgid ""
3363 "It uses Augeas, and the technique is generally applicable for many different "
3364 "tasks, such as:"
3365 msgstr ""
3366
3367 #. type: textblock
3368 #: ../examples/guestfs-recipes.pod:229
3369 msgid "listing the user accounts in the guest"
3370 msgstr ""
3371
3372 #. type: textblock
3373 #: ../examples/guestfs-recipes.pod:233
3374 msgid "what repositories is it configured to use"
3375 msgstr ""
3376
3377 #. type: textblock
3378 #: ../examples/guestfs-recipes.pod:237
3379 msgid "what NTP servers does it connect to"
3380 msgstr ""
3381
3382 #. type: textblock
3383 #: ../examples/guestfs-recipes.pod:241
3384 msgid "what were the boot messages last time it booted"
3385 msgstr ""
3386
3387 #. type: textblock
3388 #: ../examples/guestfs-recipes.pod:245
3389 msgid "listing who was logged in recently"
3390 msgstr ""
3391
3392 #. type: textblock
3393 #: ../examples/guestfs-recipes.pod:249
3394 msgid "http://augeas.net/"
3395 msgstr ""
3396
3397 #. type: =head1
3398 #: ../examples/guestfs-recipes.pod:251
3399 msgid "Install RPMs in a guest"
3400 msgstr ""
3401
3402 #. type: textblock
3403 #: ../examples/guestfs-recipes.pod:253
3404 msgid ""
3405 "The link below contains a method to install RPMs in a guest.  In fact the "
3406 "RPMs are just uploaded to the guest along with a \"firstboot\" script that "
3407 "installs them next time the guest is booted.  You could use this technique "
3408 "to install vital security updates in an offline guest."
3409 msgstr ""
3410
3411 #. type: textblock
3412 #: ../examples/guestfs-recipes.pod:259
3413 msgid "https://rwmj.wordpress.com/2010/12/01/tip-install-rpms-in-a-guest/#content"
3414 msgstr ""
3415
3416 #. type: =head1
3417 #: ../examples/guestfs-recipes.pod:261
3418 msgid "List applications installed in a VM"
3419 msgstr ""
3420
3421 #. type: textblock
3422 #: ../examples/guestfs-recipes.pod:263
3423 msgid "Save the following to a file C<list-apps.sh>:"
3424 msgstr ""
3425
3426 #. type: verbatim
3427 #: ../examples/guestfs-recipes.pod:265
3428 #, no-wrap
3429 msgid ""
3430 " #!/bin/sh -\n"
3431 " set -e\n"
3432 " eval \"$(guestfish --ro -d \"$1\" --i --listen)\"\n"
3433 " root=\"$(guestfish --remote inspect-get-roots)\"\n"
3434 " guestfish --remote inspect-list-applications \"$root\"\n"
3435 " guestfish --remote exit\n"
3436 "\n"
3437 msgstr ""
3438
3439 #. type: textblock
3440 #: ../examples/guestfs-recipes.pod:272
3441 msgid ""
3442 "Make the file executable and then you can run it on any named virtual "
3443 "machine:"
3444 msgstr ""
3445
3446 #. type: verbatim
3447 #: ../examples/guestfs-recipes.pod:275
3448 #, no-wrap
3449 msgid ""
3450 " # list-apps.sh WinGuest\n"
3451 " [0] = {\n"
3452 "   app_name: Mozilla Firefox (3.6.12)\n"
3453 "   app_display_name: Mozilla Firefox (3.6.12)\n"
3454 "   app_epoch: 0\n"
3455 "   app_version: 3.6.12 (en-GB)\n"
3456 "   app_release:\n"
3457 "   app_install_path: C:\\Program Files\\Mozilla Firefox\n"
3458 "   app_trans_path:\n"
3459 "   app_publisher: Mozilla\n"
3460 "   app_url: http://www.mozilla.com/en-GB/\n"
3461 "   app_source_package:\n"
3462 "   app_summary:\n"
3463 "   app_description: Mozilla Firefox\n"
3464 " }\n"
3465 " [1] = {\n"
3466 "   app_name: VLC media player\n"
3467 "   app_display_name: VLC media player 1.1.5\n"
3468 "   app_epoch: 0\n"
3469 "   app_version: 1.1.5\n"
3470 "   app_release:\n"
3471 "   app_install_path: C:\\Program Files\\VideoLAN\\VLC\n"
3472 "   app_trans_path:\n"
3473 "   app_publisher: VideoLAN\n"
3474 "   app_url: http://www.videolan.org/\n"
3475 "   app_source_package:\n"
3476 "   app_summary:\n"
3477 "   app_description:\n"
3478 " }\n"
3479 "\n"
3480 msgstr ""
3481
3482 #. type: textblock
3483 #: ../examples/guestfs-recipes.pod:305
3484 msgid ""
3485 "If you want to run the script on disk images (instead of libvirt virtual "
3486 "machines), change C<-d \"$1\"> to C<-a \"$1\">.  See also "
3487 "L<virt-inspector(1)>."
3488 msgstr ""
3489
3490 #. type: =head1
3491 #: ../examples/guestfs-recipes.pod:309
3492 msgid "List files and directories in a VM"
3493 msgstr ""
3494
3495 #. type: textblock
3496 #: ../examples/guestfs-recipes.pod:311
3497 msgid "This involves using the L<guestfish(1)> C<find0> command like this:"
3498 msgstr ""
3499
3500 #. type: verbatim
3501 #: ../examples/guestfs-recipes.pod:313
3502 #, no-wrap
3503 msgid ""
3504 " guestfish --ro -d Guest -i find0 / - | tr '\\0' '\\n' | sort\n"
3505 "\n"
3506 msgstr ""
3507
3508 #. type: =head1
3509 #: ../examples/guestfs-recipes.pod:315
3510 msgid "List services in a Windows VM"
3511 msgstr ""
3512
3513 #. type: textblock
3514 #: ../examples/guestfs-recipes.pod:317
3515 msgid ""
3516 "The link below contains a script that can be used to list out the services "
3517 "from a Windows VM, and whether those services run at boot time or are loaded "
3518 "on demand."
3519 msgstr ""
3520
3521 #. type: textblock
3522 #: ../examples/guestfs-recipes.pod:321
3523 msgid "https://rwmj.wordpress.com/2010/12/10/tip-list-services-in-a-windows-guest/#content"
3524 msgstr ""
3525
3526 #. type: =head1
3527 #: ../examples/guestfs-recipes.pod:323
3528 msgid "Make a disk image sparse"
3529 msgstr ""
3530
3531 #. type: textblock
3532 #: ../examples/guestfs-recipes.pod:325
3533 msgid ""
3534 "The link below contains some guides for making a disk image sparse (or "
3535 "reintroducing sparseness)."
3536 msgstr ""
3537
3538 #. type: textblock
3539 #: ../examples/guestfs-recipes.pod:328
3540 msgid "https://rwmj.wordpress.com/2010/10/19/tip-making-a-disk-image-sparse/#content"
3541 msgstr ""
3542
3543 #. type: =head1
3544 #: ../examples/guestfs-recipes.pod:330
3545 msgid "Monitor disk usage over time"
3546 msgstr ""
3547
3548 #. type: textblock
3549 #: ../examples/guestfs-recipes.pod:332
3550 msgid ""
3551 "You can use L<virt-df(1)> to monitor disk usage of your guests over time.  "
3552 "The link below contains a guide."
3553 msgstr ""
3554
3555 #. type: textblock
3556 #: ../examples/guestfs-recipes.pod:335
3557 msgid "http://virt-tools.org/learning/advanced-virt-df/"
3558 msgstr ""
3559
3560 #. type: =head1
3561 #: ../examples/guestfs-recipes.pod:337
3562 msgid "Reading the Windows Event Log from Windows Vista (or later)"
3563 msgstr ""
3564
3565 #. type: textblock
3566 #: ../examples/guestfs-recipes.pod:339
3567 msgid ""
3568 "L<guestfish(1)> plus the tools described in the link below can be used to "
3569 "read out the Windows Event Log from any virtual machine running Windows "
3570 "Vista or a later version."
3571 msgstr ""
3572
3573 #. type: textblock
3574 #: ../examples/guestfs-recipes.pod:343
3575 msgid "https://rwmj.wordpress.com/2011/04/17/decoding-the-windows-event-log-using-guestfish/#content"
3576 msgstr ""
3577
3578 #. type: =head1
3579 #: ../examples/guestfs-recipes.pod:345
3580 msgid "Remove root password (Linux)"
3581 msgstr ""
3582
3583 #. type: textblock
3584 #: ../examples/guestfs-recipes.pod:347
3585 msgid ""
3586 "Using the L<virt-edit(1)> I<-e> option you can do simple replacements on "
3587 "files.  One use is to remove the root password from a Linux guest:"
3588 msgstr ""
3589
3590 #. type: verbatim
3591 #: ../examples/guestfs-recipes.pod:350
3592 #, no-wrap
3593 msgid ""
3594 " virt-edit domname /etc/passwd -e 's/^root:.*?:/root::/'\n"
3595 "\n"
3596 msgstr ""
3597
3598 #. type: =head1
3599 #: ../examples/guestfs-recipes.pod:352
3600 msgid "Remove Administrator password (Windows)"
3601 msgstr ""
3602
3603 #. type: textblock
3604 #: ../examples/guestfs-recipes.pod:354
3605 msgid ""
3606 "The link below contains one technique for removing the Administrator "
3607 "password from a Windows VM, or to be more precise, it gives you a command "
3608 "prompt the next time you log in which you can use to bypass any security:"
3609 msgstr ""
3610
3611 #. type: textblock
3612 #: ../examples/guestfs-recipes.pod:359
3613 msgid "https://mdbooth.wordpress.com/2010/10/18/resetting-a-windows-guests-administrator-password-with-guestfish/"
3614 msgstr ""
3615
3616 #. type: =head1
3617 #: ../examples/guestfs-recipes.pod:361
3618 msgid "Unpack a live CD"
3619 msgstr ""
3620
3621 #. type: textblock
3622 #: ../examples/guestfs-recipes.pod:363
3623 msgid ""
3624 "Linux live CDs often contain multiple layers of disk images wrapped like a "
3625 "Russian doll.  You can use L<guestfish(1)> to look inside these multiple "
3626 "layers, as outlined in the guide below."
3627 msgstr ""
3628
3629 #. type: textblock
3630 #: ../examples/guestfs-recipes.pod:367
3631 msgid "https://rwmj.wordpress.com/2009/07/15/unpack-the-russian-doll-of-a-f11-live-cd/#content"
3632 msgstr ""
3633
3634 #. type: =head1
3635 #: ../examples/guestfs-recipes.pod:369
3636 msgid "Uploading and downloading files"
3637 msgstr ""
3638
3639 #. type: textblock
3640 #: ../examples/guestfs-recipes.pod:371
3641 msgid ""
3642 "The link below contains general tips on uploading (copying in)  and "
3643 "downloading (copying out) files from VMs."
3644 msgstr ""
3645
3646 #. type: textblock
3647 #: ../examples/guestfs-recipes.pod:374
3648 msgid "https://rwmj.wordpress.com/2010/12/02/tip-uploading-and-downloading/#content"
3649 msgstr ""
3650
3651 #. type: =head1
3652 #: ../examples/guestfs-recipes.pod:376
3653 msgid "Use libguestfs tools on VMware ESX guests"
3654 msgstr ""
3655
3656 #. type: textblock
3657 #: ../examples/guestfs-recipes.pod:378
3658 msgid ""
3659 "The link below explains how to use libguestfs, L<guestfish(1)> and the virt "
3660 "tools on any VMware ESX guests, by first sharing the VMware VMFS over sshfs."
3661 msgstr ""
3662
3663 #. type: textblock
3664 #: ../examples/guestfs-recipes.pod:382
3665 msgid "https://rwmj.wordpress.com/2011/05/10/tip-use-libguestfs-on-vmware-esx-guests/#content"
3666 msgstr ""
3667
3668 #. type: textblock
3669 #: ../examples/guestfs-recipes.pod:386
3670 msgid ""
3671 "L<guestfs(3)>, L<guestfish(1)>, L<guestfs-examples(3)>, L<guestfs-java(3)>, "
3672 "L<guestfs-ocaml(3)>, L<guestfs-perl(3)>, L<guestfs-python(3)>, "
3673 "L<guestfs-ruby(3)>, L<http://libguestfs.org/>."
3674 msgstr ""
3675
3676 #. type: textblock
3677 #: ../examples/guestfs-recipes.pod:402
3678 msgid "Copyright (C) 2009-2011 Red Hat Inc. L<http://libguestfs.org/>"
3679 msgstr ""
3680
3681 #. type: =head2
3682 #: ../fish/guestfish-actions.pod:1
3683 msgid "add-cdrom"
3684 msgstr ""
3685
3686 #. type: verbatim
3687 #: ../fish/guestfish-actions.pod:3
3688 #, no-wrap
3689 msgid ""
3690 " add-cdrom filename\n"
3691 "\n"
3692 msgstr ""
3693
3694 #. type: textblock
3695 #: ../fish/guestfish-actions.pod:5 ../src/guestfs-actions.pod:14
3696 msgid "This function adds a virtual CD-ROM disk image to the guest."
3697 msgstr ""
3698
3699 #. type: textblock
3700 #: ../fish/guestfish-actions.pod:7 ../src/guestfs-actions.pod:16
3701 msgid "This is equivalent to the qemu parameter I<-cdrom filename>."
3702 msgstr ""
3703
3704 #. type: textblock
3705 #: ../fish/guestfish-actions.pod:15
3706 msgid ""
3707 "This call checks for the existence of C<filename>.  This stops you from "
3708 "specifying other types of drive which are supported by qemu such as C<nbd:> "
3709 "and C<http:> URLs.  To specify those, use the general L</config> call "
3710 "instead."
3711 msgstr ""
3712
3713 #. type: textblock
3714 #: ../fish/guestfish-actions.pod:22
3715 msgid ""
3716 "If you just want to add an ISO file (often you use this as an efficient way "
3717 "to transfer large files into the guest), then you should probably use "
3718 "L</add-drive-ro> instead."
3719 msgstr ""
3720
3721 #. type: textblock
3722 #: ../fish/guestfish-actions.pod:28 ../fish/guestfish-actions.pod:163 ../fish/guestfish-actions.pod:177
3723 msgid ""
3724 "I<This function is deprecated.> In new code, use the L</add_drive_opts> call "
3725 "instead."
3726 msgstr ""
3727
3728 #. type: textblock
3729 #: ../fish/guestfish-actions.pod:31 ../fish/guestfish-actions.pod:166 ../fish/guestfish-actions.pod:180 ../fish/guestfish-actions.pod:991 ../fish/guestfish-actions.pod:1351 ../fish/guestfish-actions.pod:1365 ../fish/guestfish-actions.pod:3090 ../fish/guestfish-actions.pod:3297 ../fish/guestfish-actions.pod:3411 ../fish/guestfish-actions.pod:3459 ../fish/guestfish-actions.pod:4360 ../fish/guestfish-actions.pod:4383 ../fish/guestfish-actions.pod:4405 ../fish/guestfish-actions.pod:4443 ../fish/guestfish-actions.pod:5092 ../fish/guestfish-actions.pod:5198 ../src/guestfs-actions.pod:10 ../src/guestfs-actions.pod:252 ../src/guestfs-actions.pod:273 ../src/guestfs-actions.pod:1508 ../src/guestfs-actions.pod:2007 ../src/guestfs-actions.pod:2028 ../src/guestfs-actions.pod:4623 ../src/guestfs-actions.pod:4926 ../src/guestfs-actions.pod:5155 ../src/guestfs-actions.pod:5255 ../src/guestfs-actions.pod:6521 ../src/guestfs-actions.pod:6565 ../src/guestfs-actions.pod:6599 ../src/guestfs-actions.pod:6662 ../src/guestfs-actions.pod:7594 ../src/guestfs-actions.pod:7703 ../src/guestfs-actions.pod:7886
3730 msgid ""
3731 "Deprecated functions will not be removed from the API, but the fact that "
3732 "they are deprecated indicates that there are problems with correct use of "
3733 "these functions."
3734 msgstr ""
3735
3736 #. type: =head2
3737 #: ../fish/guestfish-actions.pod:35
3738 msgid "add-domain"
3739 msgstr ""
3740
3741 #. type: =head2
3742 #: ../fish/guestfish-actions.pod:37
3743 msgid "domain"
3744 msgstr ""
3745
3746 #. type: verbatim
3747 #: ../fish/guestfish-actions.pod:39
3748 #, no-wrap
3749 msgid ""
3750 " add-domain dom [libvirturi:..] [readonly:..] [iface:..] [live:..] "
3751 "[allowuuid:..]\n"
3752 "\n"
3753 msgstr ""
3754
3755 #. type: textblock
3756 #: ../fish/guestfish-actions.pod:41
3757 msgid ""
3758 "This function adds the disk(s) attached to the named libvirt domain C<dom>.  "
3759 "It works by connecting to libvirt, requesting the domain and domain XML from "
3760 "libvirt, parsing it for disks, and calling L</add-drive-opts> on each one."
3761 msgstr ""
3762
3763 #. type: textblock
3764 #: ../fish/guestfish-actions.pod:46 ../src/guestfs-actions.pod:64
3765 msgid ""
3766 "The number of disks added is returned.  This operation is atomic: if an "
3767 "error is returned, then no disks are added."
3768 msgstr ""
3769
3770 #. type: textblock
3771 #: ../fish/guestfish-actions.pod:49 ../src/guestfs-actions.pod:67
3772 msgid ""
3773 "This function does some minimal checks to make sure the libvirt domain is "
3774 "not running (unless C<readonly> is true).  In a future version we will try "
3775 "to acquire the libvirt lock on each disk."
3776 msgstr ""
3777
3778 #. type: textblock
3779 #: ../fish/guestfish-actions.pod:53 ../src/guestfs-actions.pod:71
3780 msgid ""
3781 "Disks must be accessible locally.  This often means that adding disks from a "
3782 "remote libvirt connection (see L<http://libvirt.org/remote.html>)  will fail "
3783 "unless those disks are accessible via the same device path locally too."
3784 msgstr ""
3785
3786 #. type: textblock
3787 #: ../fish/guestfish-actions.pod:58 ../src/guestfs-actions.pod:76
3788 msgid ""
3789 "The optional C<libvirturi> parameter sets the libvirt URI (see "
3790 "L<http://libvirt.org/uri.html>).  If this is not set then we connect to the "
3791 "default libvirt URI (or one set through an environment variable, see the "
3792 "libvirt documentation for full details)."
3793 msgstr ""
3794
3795 #. type: textblock
3796 #: ../fish/guestfish-actions.pod:64 ../src/guestfs-actions.pod:82
3797 msgid ""
3798 "The optional C<live> flag controls whether this call will try to connect to "
3799 "a running virtual machine C<guestfsd> process if it sees a suitable "
3800 "E<lt>channelE<gt> element in the libvirt XML definition.  The default (if "
3801 "the flag is omitted) is never to try.  See L<guestfs(3)/ATTACHING TO RUNNING "
3802 "DAEMONS> for more information."
3803 msgstr ""
3804
3805 #. type: textblock
3806 #: ../fish/guestfish-actions.pod:71 ../src/guestfs-actions.pod:89
3807 msgid ""
3808 "If the C<allowuuid> flag is true (default is false) then a UUID I<may> be "
3809 "passed instead of the domain name.  The C<dom> string is treated as a UUID "
3810 "first and looked up, and if that lookup fails then we treat C<dom> as a name "
3811 "as usual."
3812 msgstr ""
3813
3814 #. type: textblock
3815 #: ../fish/guestfish-actions.pod:76
3816 msgid ""
3817 "The other optional parameters are passed directly through to "
3818 "L</add-drive-opts>."
3819 msgstr ""
3820
3821 #. type: textblock
3822 #: ../fish/guestfish-actions.pod:79 ../fish/guestfish-actions.pod:143 ../fish/guestfish-actions.pod:573 ../fish/guestfish-actions.pod:1973 ../fish/guestfish-actions.pod:3139 ../fish/guestfish-actions.pod:3312 ../fish/guestfish-actions.pod:3447
3823 msgid ""
3824 "This command has one or more optional arguments.  See L</OPTIONAL "
3825 "ARGUMENTS>."
3826 msgstr ""
3827
3828 #. type: =head2
3829 #: ../fish/guestfish-actions.pod:81
3830 msgid "add-drive"
3831 msgstr ""
3832
3833 #. type: verbatim
3834 #: ../fish/guestfish-actions.pod:83
3835 #, no-wrap
3836 msgid ""
3837 " add-drive filename\n"
3838 "\n"
3839 msgstr ""
3840
3841 #. type: textblock
3842 #: ../fish/guestfish-actions.pod:85
3843 msgid ""
3844 "This function is the equivalent of calling L</add-drive-opts> with no "
3845 "optional parameters, so the disk is added writable, with the format being "
3846 "detected automatically."
3847 msgstr ""
3848
3849 #. type: textblock
3850 #: ../fish/guestfish-actions.pod:89
3851 msgid ""
3852 "Automatic detection of the format opens you up to a potential security hole "
3853 "when dealing with untrusted raw-format images.  See CVE-2010-3851 and "
3854 "RHBZ#642934.  Specifying the format closes this security hole.  Therefore "
3855 "you should think about replacing calls to this function with calls to "
3856 "L</add-drive-opts>, and specifying the format."
3857 msgstr ""
3858
3859 #. type: =head2
3860 #: ../fish/guestfish-actions.pod:96
3861 msgid "add-drive-opts"
3862 msgstr ""
3863
3864 #. type: =head2
3865 #: ../fish/guestfish-actions.pod:98
3866 msgid "add"
3867 msgstr ""
3868
3869 #. type: verbatim
3870 #: ../fish/guestfish-actions.pod:100
3871 #, no-wrap
3872 msgid ""
3873 " add-drive-opts filename [readonly:..] [format:..] [iface:..]\n"
3874 "\n"
3875 msgstr ""
3876
3877 #. type: textblock
3878 #: ../fish/guestfish-actions.pod:102 ../src/guestfs-actions.pod:160
3879 msgid ""
3880 "This function adds a virtual machine disk image C<filename> to libguestfs.  "
3881 "The first time you call this function, the disk appears as C</dev/sda>, the "
3882 "second time as C</dev/sdb>, and so on."
3883 msgstr ""
3884
3885 #. type: textblock
3886 #: ../fish/guestfish-actions.pod:107 ../src/guestfs-actions.pod:165
3887 msgid ""
3888 "You don't necessarily need to be root when using libguestfs.  However you "
3889 "obviously do need sufficient permissions to access the filename for whatever "
3890 "operations you want to perform (ie. read access if you just want to read the "
3891 "image or write access if you want to modify the image)."
3892 msgstr ""
3893
3894 #. type: textblock
3895 #: ../fish/guestfish-actions.pod:113 ../src/guestfs-actions.pod:171
3896 msgid "This call checks that C<filename> exists."
3897 msgstr ""
3898
3899 #. type: textblock
3900 #: ../fish/guestfish-actions.pod:115 ../fish/guestfish-actions.pod:3101 ../src/guestfs-actions.pod:173 ../src/guestfs-actions.pod:4660
3901 msgid "The optional arguments are:"
3902 msgstr ""
3903
3904 #. type: =item
3905 #: ../fish/guestfish-actions.pod:119 ../src/guestfs-actions.pod:177
3906 msgid "C<readonly>"
3907 msgstr ""
3908
3909 #. type: textblock
3910 #: ../fish/guestfish-actions.pod:121 ../src/guestfs-actions.pod:179
3911 msgid ""
3912 "If true then the image is treated as read-only.  Writes are still allowed, "
3913 "but they are stored in a temporary snapshot overlay which is discarded at "
3914 "the end.  The disk that you add is not modified."
3915 msgstr ""
3916
3917 #. type: =item
3918 #: ../fish/guestfish-actions.pod:125 ../src/guestfs-actions.pod:183
3919 msgid "C<format>"
3920 msgstr ""
3921
3922 #. type: textblock
3923 #: ../fish/guestfish-actions.pod:127
3924 msgid ""
3925 "This forces the image format.  If you omit this (or use L</add-drive> or "
3926 "L</add-drive-ro>) then the format is automatically detected.  Possible "
3927 "formats include C<raw> and C<qcow2>."
3928 msgstr ""
3929
3930 #. type: textblock
3931 #: ../fish/guestfish-actions.pod:131 ../src/guestfs-actions.pod:189
3932 msgid ""
3933 "Automatic detection of the format opens you up to a potential security hole "
3934 "when dealing with untrusted raw-format images.  See CVE-2010-3851 and "
3935 "RHBZ#642934.  Specifying the format closes this security hole."
3936 msgstr ""
3937
3938 #. type: =item
3939 #: ../fish/guestfish-actions.pod:136 ../src/guestfs-actions.pod:194
3940 msgid "C<iface>"
3941 msgstr ""
3942
3943 #. type: textblock
3944 #: ../fish/guestfish-actions.pod:138
3945 msgid ""
3946 "This rarely-used option lets you emulate the behaviour of the deprecated "
3947 "L</add-drive-with-if> call (q.v.)"
3948 msgstr ""
3949
3950 #. type: =head2
3951 #: ../fish/guestfish-actions.pod:145
3952 msgid "add-drive-ro"
3953 msgstr ""
3954
3955 #. type: =head2
3956 #: ../fish/guestfish-actions.pod:147
3957 msgid "add-ro"
3958 msgstr ""
3959
3960 #. type: verbatim
3961 #: ../fish/guestfish-actions.pod:149
3962 #, no-wrap
3963 msgid ""
3964 " add-drive-ro filename\n"
3965 "\n"
3966 msgstr ""
3967
3968 #. type: textblock
3969 #: ../fish/guestfish-actions.pod:151
3970 msgid ""
3971 "This function is the equivalent of calling L</add-drive-opts> with the "
3972 "optional parameter C<GUESTFS_ADD_DRIVE_OPTS_READONLY> set to 1, so the disk "
3973 "is added read-only, with the format being detected automatically."
3974 msgstr ""
3975
3976 #. type: =head2
3977 #: ../fish/guestfish-actions.pod:156
3978 msgid "add-drive-ro-with-if"
3979 msgstr ""
3980
3981 #. type: verbatim
3982 #: ../fish/guestfish-actions.pod:158
3983 #, no-wrap
3984 msgid ""
3985 " add-drive-ro-with-if filename iface\n"
3986 "\n"
3987 msgstr ""
3988
3989 #. type: textblock
3990 #: ../fish/guestfish-actions.pod:160
3991 msgid ""
3992 "This is the same as L</add-drive-ro> but it allows you to specify the QEMU "
3993 "interface emulation to use at run time."
3994 msgstr ""
3995
3996 #. type: =head2
3997 #: ../fish/guestfish-actions.pod:170
3998 msgid "add-drive-with-if"
3999 msgstr ""
4000
4001 #. type: verbatim
4002 #: ../fish/guestfish-actions.pod:172
4003 #, no-wrap
4004 msgid ""
4005 " add-drive-with-if filename iface\n"
4006 "\n"
4007 msgstr ""
4008
4009 #. type: textblock
4010 #: ../fish/guestfish-actions.pod:174
4011 msgid ""
4012 "This is the same as L</add-drive> but it allows you to specify the QEMU "
4013 "interface emulation to use at run time."
4014 msgstr ""
4015
4016 #. type: =head2
4017 #: ../fish/guestfish-actions.pod:184
4018 msgid "aug-clear"
4019 msgstr ""
4020
4021 #. type: verbatim
4022 #: ../fish/guestfish-actions.pod:186
4023 #, no-wrap
4024 msgid ""
4025 " aug-clear augpath\n"
4026 "\n"
4027 msgstr ""
4028
4029 #. type: textblock
4030 #: ../fish/guestfish-actions.pod:188 ../src/guestfs-actions.pod:290
4031 msgid ""
4032 "Set the value associated with C<path> to C<NULL>.  This is the same as the "
4033 "L<augtool(1)> C<clear> command."
4034 msgstr ""
4035
4036 #. type: =head2
4037 #: ../fish/guestfish-actions.pod:191
4038 msgid "aug-close"
4039 msgstr ""
4040
4041 #. type: verbatim
4042 #: ../fish/guestfish-actions.pod:193
4043 #, no-wrap
4044 msgid ""
4045 " aug-close\n"
4046 "\n"
4047 msgstr ""
4048
4049 #. type: textblock
4050 #: ../fish/guestfish-actions.pod:195
4051 msgid ""
4052 "Close the current Augeas handle and free up any resources used by it.  After "
4053 "calling this, you have to call L</aug-init> again before you can use any "
4054 "other Augeas functions."
4055 msgstr ""
4056
4057 #. type: =head2
4058 #: ../fish/guestfish-actions.pod:200
4059 msgid "aug-defnode"
4060 msgstr ""
4061
4062 #. type: verbatim
4063 #: ../fish/guestfish-actions.pod:202
4064 #, no-wrap
4065 msgid ""
4066 " aug-defnode name expr val\n"
4067 "\n"
4068 msgstr ""
4069
4070 #. type: textblock
4071 #: ../fish/guestfish-actions.pod:204 ../src/guestfs-actions.pod:319
4072 msgid "Defines a variable C<name> whose value is the result of evaluating C<expr>."
4073 msgstr ""
4074
4075 #. type: textblock
4076 #: ../fish/guestfish-actions.pod:207
4077 msgid ""
4078 "If C<expr> evaluates to an empty nodeset, a node is created, equivalent to "
4079 "calling L</aug-set> C<expr>, C<value>.  C<name> will be the nodeset "
4080 "containing that single node."
4081 msgstr ""
4082
4083 #. type: textblock
4084 #: ../fish/guestfish-actions.pod:211 ../src/guestfs-actions.pod:326
4085 msgid ""
4086 "On success this returns a pair containing the number of nodes in the "
4087 "nodeset, and a boolean flag if a node was created."
4088 msgstr ""
4089
4090 #. type: =head2
4091 #: ../fish/guestfish-actions.pod:215
4092 msgid "aug-defvar"
4093 msgstr ""
4094
4095 #. type: verbatim
4096 #: ../fish/guestfish-actions.pod:217
4097 #, no-wrap
4098 msgid ""
4099 " aug-defvar name expr\n"
4100 "\n"
4101 msgstr ""
4102
4103 #. type: textblock
4104 #: ../fish/guestfish-actions.pod:219 ../src/guestfs-actions.pod:343
4105 msgid ""
4106 "Defines an Augeas variable C<name> whose value is the result of evaluating "
4107 "C<expr>.  If C<expr> is NULL, then C<name> is undefined."
4108 msgstr ""
4109
4110 #. type: textblock
4111 #: ../fish/guestfish-actions.pod:223 ../src/guestfs-actions.pod:347
4112 msgid ""
4113 "On success this returns the number of nodes in C<expr>, or C<0> if C<expr> "
4114 "evaluates to something which is not a nodeset."
4115 msgstr ""
4116
4117 #. type: =head2
4118 #: ../fish/guestfish-actions.pod:226
4119 msgid "aug-get"
4120 msgstr ""
4121
4122 #. type: verbatim
4123 #: ../fish/guestfish-actions.pod:228
4124 #, no-wrap
4125 msgid ""
4126 " aug-get augpath\n"
4127 "\n"
4128 msgstr ""
4129
4130 #. type: textblock
4131 #: ../fish/guestfish-actions.pod:230 ../src/guestfs-actions.pod:360
4132 msgid ""
4133 "Look up the value associated with C<path>.  If C<path> matches exactly one "
4134 "node, the C<value> is returned."
4135 msgstr ""
4136
4137 #. type: =head2
4138 #: ../fish/guestfish-actions.pod:233
4139 msgid "aug-init"
4140 msgstr ""
4141
4142 #. type: verbatim
4143 #: ../fish/guestfish-actions.pod:235
4144 #, no-wrap
4145 msgid ""
4146 " aug-init root flags\n"
4147 "\n"
4148 msgstr ""
4149
4150 #. type: textblock
4151 #: ../fish/guestfish-actions.pod:237 ../src/guestfs-actions.pod:375
4152 msgid ""
4153 "Create a new Augeas handle for editing configuration files.  If there was "
4154 "any previous Augeas handle associated with this guestfs session, then it is "
4155 "closed."
4156 msgstr ""
4157
4158 #. type: textblock
4159 #: ../fish/guestfish-actions.pod:241
4160 msgid "You must call this before using any other L</aug-*> commands."
4161 msgstr ""
4162
4163 #. type: textblock
4164 #: ../fish/guestfish-actions.pod:244 ../src/guestfs-actions.pod:382
4165 msgid "C<root> is the filesystem root.  C<root> must not be NULL, use C</> instead."
4166 msgstr ""
4167
4168 #. type: textblock
4169 #: ../fish/guestfish-actions.pod:247 ../src/guestfs-actions.pod:385
4170 msgid ""
4171 "The flags are the same as the flags defined in E<lt>augeas.hE<gt>, the "
4172 "logical I<or> of the following integers:"
4173 msgstr ""
4174
4175 #. type: =item
4176 #: ../fish/guestfish-actions.pod:253 ../src/guestfs-actions.pod:391
4177 msgid "C<AUG_SAVE_BACKUP> = 1"
4178 msgstr ""
4179
4180 #. type: textblock
4181 #: ../fish/guestfish-actions.pod:255 ../src/guestfs-actions.pod:393
4182 msgid "Keep the original file with a C<.augsave> extension."
4183 msgstr ""
4184
4185 #. type: =item
4186 #: ../fish/guestfish-actions.pod:257 ../src/guestfs-actions.pod:395
4187 msgid "C<AUG_SAVE_NEWFILE> = 2"
4188 msgstr ""
4189
4190 #. type: textblock
4191 #: ../fish/guestfish-actions.pod:259 ../src/guestfs-actions.pod:397
4192 msgid ""
4193 "Save changes into a file with extension C<.augnew>, and do not overwrite "
4194 "original.  Overrides C<AUG_SAVE_BACKUP>."
4195 msgstr ""
4196
4197 #. type: =item
4198 #: ../fish/guestfish-actions.pod:262 ../src/guestfs-actions.pod:400
4199 msgid "C<AUG_TYPE_CHECK> = 4"
4200 msgstr ""
4201
4202 #. type: textblock
4203 #: ../fish/guestfish-actions.pod:264 ../src/guestfs-actions.pod:402
4204 msgid "Typecheck lenses."
4205 msgstr ""
4206
4207 #. type: textblock
4208 #: ../fish/guestfish-actions.pod:266
4209 msgid ""
4210 "This option is only useful when debugging Augeas lenses.  Use of this option "
4211 "may require additional memory for the libguestfs appliance.  You may need to "
4212 "set the C<LIBGUESTFS_MEMSIZE> environment variable or call L</set-memsize>."
4213 msgstr ""
4214
4215 #. type: =item
4216 #: ../fish/guestfish-actions.pod:271 ../src/guestfs-actions.pod:409
4217 msgid "C<AUG_NO_STDINC> = 8"
4218 msgstr ""
4219
4220 #. type: textblock
4221 #: ../fish/guestfish-actions.pod:273 ../src/guestfs-actions.pod:411
4222 msgid "Do not use standard load path for modules."
4223 msgstr ""
4224
4225 #. type: =item
4226 #: ../fish/guestfish-actions.pod:275 ../src/guestfs-actions.pod:413
4227 msgid "C<AUG_SAVE_NOOP> = 16"
4228 msgstr ""
4229
4230 #. type: textblock
4231 #: ../fish/guestfish-actions.pod:277 ../src/guestfs-actions.pod:415
4232 msgid "Make save a no-op, just record what would have been changed."
4233 msgstr ""
4234
4235 #. type: =item
4236 #: ../fish/guestfish-actions.pod:279 ../src/guestfs-actions.pod:417
4237 msgid "C<AUG_NO_LOAD> = 32"
4238 msgstr ""
4239
4240 #. type: textblock
4241 #: ../fish/guestfish-actions.pod:281
4242 msgid "Do not load the tree in L</aug-init>."
4243 msgstr ""
4244
4245 #. type: textblock
4246 #: ../fish/guestfish-actions.pod:285
4247 msgid "To close the handle, you can call L</aug-close>."
4248 msgstr ""
4249
4250 #. type: textblock
4251 #: ../fish/guestfish-actions.pod:287 ../src/guestfs-actions.pod:425
4252 msgid "To find out more about Augeas, see L<http://augeas.net/>."
4253 msgstr ""
4254
4255 #. type: =head2
4256 #: ../fish/guestfish-actions.pod:289
4257 msgid "aug-insert"
4258 msgstr ""
4259
4260 #. type: verbatim
4261 #: ../fish/guestfish-actions.pod:291
4262 #, no-wrap
4263 msgid ""
4264 " aug-insert augpath label true|false\n"
4265 "\n"
4266 msgstr ""
4267
4268 #. type: textblock
4269 #: ../fish/guestfish-actions.pod:293 ../src/guestfs-actions.pod:439
4270 msgid ""
4271 "Create a new sibling C<label> for C<path>, inserting it into the tree before "
4272 "or after C<path> (depending on the boolean flag C<before>)."
4273 msgstr ""
4274
4275 #. type: textblock
4276 #: ../fish/guestfish-actions.pod:297 ../src/guestfs-actions.pod:443
4277 msgid ""
4278 "C<path> must match exactly one existing node in the tree, and C<label> must "
4279 "be a label, ie. not contain C</>, C<*> or end with a bracketed index C<[N]>."
4280 msgstr ""
4281
4282 #. type: =head2
4283 #: ../fish/guestfish-actions.pod:301
4284 msgid "aug-load"
4285 msgstr ""
4286
4287 #. type: verbatim
4288 #: ../fish/guestfish-actions.pod:303
4289 #, no-wrap
4290 msgid ""
4291 " aug-load\n"
4292 "\n"
4293 msgstr ""
4294
4295 #. type: textblock
4296 #: ../fish/guestfish-actions.pod:305 ../src/guestfs-actions.pod:456
4297 msgid "Load files into the tree."
4298 msgstr ""
4299
4300 #. type: textblock
4301 #: ../fish/guestfish-actions.pod:307 ../src/guestfs-actions.pod:458
4302 msgid "See C<aug_load> in the Augeas documentation for the full gory details."
4303 msgstr ""
4304
4305 #. type: =head2
4306 #: ../fish/guestfish-actions.pod:310
4307 msgid "aug-ls"
4308 msgstr ""
4309
4310 #. type: verbatim
4311 #: ../fish/guestfish-actions.pod:312
4312 #, no-wrap
4313 msgid ""
4314 " aug-ls augpath\n"
4315 "\n"
4316 msgstr ""
4317
4318 #. type: textblock
4319 #: ../fish/guestfish-actions.pod:314
4320 msgid ""
4321 "This is just a shortcut for listing L</aug-match> C<path/*> and sorting the "
4322 "resulting nodes into alphabetical order."
4323 msgstr ""
4324
4325 #. type: =head2
4326 #: ../fish/guestfish-actions.pod:317
4327 msgid "aug-match"
4328 msgstr ""
4329
4330 #. type: verbatim
4331 #: ../fish/guestfish-actions.pod:319
4332 #, no-wrap
4333 msgid ""
4334 " aug-match augpath\n"
4335 "\n"
4336 msgstr ""
4337
4338 #. type: textblock
4339 #: ../fish/guestfish-actions.pod:321 ../src/guestfs-actions.pod:486
4340 msgid ""
4341 "Returns a list of paths which match the path expression C<path>.  The "
4342 "returned paths are sufficiently qualified so that they match exactly one "
4343 "node in the current tree."
4344 msgstr ""
4345
4346 #. type: =head2
4347 #: ../fish/guestfish-actions.pod:325
4348 msgid "aug-mv"
4349 msgstr ""
4350
4351 #. type: verbatim
4352 #: ../fish/guestfish-actions.pod:327
4353 #, no-wrap
4354 msgid ""
4355 " aug-mv src dest\n"
4356 "\n"
4357 msgstr ""
4358
4359 #. type: textblock
4360 #: ../fish/guestfish-actions.pod:329 ../src/guestfs-actions.pod:503
4361 msgid ""
4362 "Move the node C<src> to C<dest>.  C<src> must match exactly one node.  "
4363 "C<dest> is overwritten if it exists."
4364 msgstr ""
4365
4366 #. type: =head2
4367 #: ../fish/guestfish-actions.pod:332
4368 msgid "aug-rm"
4369 msgstr ""
4370
4371 #. type: verbatim
4372 #: ../fish/guestfish-actions.pod:334
4373 #, no-wrap
4374 msgid ""
4375 " aug-rm augpath\n"
4376 "\n"
4377 msgstr ""
4378
4379 #. type: textblock
4380 #: ../fish/guestfish-actions.pod:336 ../src/guestfs-actions.pod:516
4381 msgid "Remove C<path> and all of its children."
4382 msgstr ""
4383
4384 #. type: textblock
4385 #: ../fish/guestfish-actions.pod:338 ../src/guestfs-actions.pod:518
4386 msgid "On success this returns the number of entries which were removed."
4387 msgstr ""
4388
4389 #. type: =head2
4390 #: ../fish/guestfish-actions.pod:340
4391 msgid "aug-save"
4392 msgstr ""
4393
4394 #. type: verbatim
4395 #: ../fish/guestfish-actions.pod:342
4396 #, no-wrap
4397 msgid ""
4398 " aug-save\n"
4399 "\n"
4400 msgstr ""
4401
4402 #. type: textblock
4403 #: ../fish/guestfish-actions.pod:344 ../src/guestfs-actions.pod:529
4404 msgid "This writes all pending changes to disk."
4405 msgstr ""
4406
4407 #. type: textblock
4408 #: ../fish/guestfish-actions.pod:346
4409 msgid ""
4410 "The flags which were passed to L</aug-init> affect exactly how files are "
4411 "saved."
4412 msgstr ""
4413
4414 #. type: =head2
4415 #: ../fish/guestfish-actions.pod:349
4416 msgid "aug-set"
4417 msgstr ""
4418
4419 #. type: verbatim
4420 #: ../fish/guestfish-actions.pod:351
4421 #, no-wrap
4422 msgid ""
4423 " aug-set augpath val\n"
4424 "\n"
4425 msgstr ""
4426
4427 #. type: textblock
4428 #: ../fish/guestfish-actions.pod:353 ../src/guestfs-actions.pod:545
4429 msgid "Set the value associated with C<path> to C<val>."
4430 msgstr ""
4431
4432 #. type: textblock
4433 #: ../fish/guestfish-actions.pod:355
4434 msgid ""
4435 "In the Augeas API, it is possible to clear a node by setting the value to "
4436 "NULL.  Due to an oversight in the libguestfs API you cannot do that with "
4437 "this call.  Instead you must use the L</aug-clear> call."
4438 msgstr ""
4439
4440 #. type: =head2
4441 #: ../fish/guestfish-actions.pod:360
4442 msgid "available"
4443 msgstr ""
4444
4445 #. type: verbatim
4446 #: ../fish/guestfish-actions.pod:362
4447 #, no-wrap
4448 msgid ""
4449 " available 'groups ...'\n"
4450 "\n"
4451 msgstr ""
4452
4453 #. type: textblock
4454 #: ../fish/guestfish-actions.pod:364 ../src/guestfs-actions.pod:562
4455 msgid ""
4456 "This command is used to check the availability of some groups of "
4457 "functionality in the appliance, which not all builds of the libguestfs "
4458 "appliance will be able to provide."
4459 msgstr ""
4460
4461 #. type: textblock
4462 #: ../fish/guestfish-actions.pod:368
4463 msgid ""
4464 "The libguestfs groups, and the functions that those groups correspond to, "
4465 "are listed in L<guestfs(3)/AVAILABILITY>.  You can also fetch this list at "
4466 "runtime by calling L</available-all-groups>."
4467 msgstr ""
4468
4469 #. type: textblock
4470 #: ../fish/guestfish-actions.pod:373 ../src/guestfs-actions.pod:571
4471 msgid ""
4472 "The argument C<groups> is a list of group names, eg: C<[\"inotify\", "
4473 "\"augeas\"]> would check for the availability of the Linux inotify functions "
4474 "and Augeas (configuration file editing) functions."
4475 msgstr ""
4476
4477 #. type: textblock
4478 #: ../fish/guestfish-actions.pod:378 ../src/guestfs-actions.pod:576
4479 msgid "The command returns no error if I<all> requested groups are available."
4480 msgstr ""
4481
4482 #. type: textblock
4483 #: ../fish/guestfish-actions.pod:380 ../src/guestfs-actions.pod:578
4484 msgid ""
4485 "It fails with an error if one or more of the requested groups is unavailable "
4486 "in the appliance."
4487 msgstr ""
4488
4489 #. type: textblock
4490 #: ../fish/guestfish-actions.pod:383 ../src/guestfs-actions.pod:581
4491 msgid ""
4492 "If an unknown group name is included in the list of groups then an error is "
4493 "always returned."
4494 msgstr ""
4495
4496 #. type: textblock
4497 #: ../fish/guestfish-actions.pod:386 ../src/guestfs-actions.pod:584
4498 msgid "I<Notes:>"
4499 msgstr ""
4500
4501 #. type: textblock
4502 #: ../fish/guestfish-actions.pod:392
4503 msgid "You must call L</launch> before calling this function."
4504 msgstr ""
4505
4506 #. type: textblock
4507 #: ../fish/guestfish-actions.pod:394 ../src/guestfs-actions.pod:592
4508 msgid ""
4509 "The reason is because we don't know what groups are supported by the "
4510 "appliance/daemon until it is running and can be queried."
4511 msgstr ""
4512
4513 #. type: textblock
4514 #: ../fish/guestfish-actions.pod:400 ../src/guestfs-actions.pod:598
4515 msgid ""
4516 "If a group of functions is available, this does not necessarily mean that "
4517 "they will work.  You still have to check for errors when calling individual "
4518 "API functions even if they are available."
4519 msgstr ""
4520
4521 #. type: textblock
4522 #: ../fish/guestfish-actions.pod:407 ../src/guestfs-actions.pod:605
4523 msgid ""
4524 "It is usually the job of distro packagers to build complete functionality "
4525 "into the libguestfs appliance.  Upstream libguestfs, if built from source "
4526 "with all requirements satisfied, will support everything."
4527 msgstr ""
4528
4529 #. type: textblock
4530 #: ../fish/guestfish-actions.pod:414
4531 msgid ""
4532 "This call was added in version C<1.0.80>.  In previous versions of "
4533 "libguestfs all you could do would be to speculatively execute a command to "
4534 "find out if the daemon implemented it.  See also L</version>."
4535 msgstr ""
4536
4537 #. type: =head2
4538 #: ../fish/guestfish-actions.pod:421
4539 msgid "available-all-groups"
4540 msgstr ""
4541
4542 #. type: verbatim
4543 #: ../fish/guestfish-actions.pod:423
4544 #, no-wrap
4545 msgid ""
4546 " available-all-groups\n"
4547 "\n"
4548 msgstr ""
4549
4550 #. type: textblock
4551 #: ../fish/guestfish-actions.pod:425
4552 msgid ""
4553 "This command returns a list of all optional groups that this daemon knows "
4554 "about.  Note this returns both supported and unsupported groups.  To find "
4555 "out which ones the daemon can actually support you have to call "
4556 "L</available> on each member of the returned list."
4557 msgstr ""
4558
4559 #. type: textblock
4560 #: ../fish/guestfish-actions.pod:431
4561 msgid "See also L</available> and L<guestfs(3)/AVAILABILITY>."
4562 msgstr ""
4563
4564 #. type: =head2
4565 #: ../fish/guestfish-actions.pod:433
4566 msgid "base64-in"
4567 msgstr ""
4568
4569 #. type: verbatim
4570 #: ../fish/guestfish-actions.pod:435
4571 #, no-wrap
4572 msgid ""
4573 " base64-in (base64file|-) filename\n"
4574 "\n"
4575 msgstr ""
4576
4577 #. type: textblock
4578 #: ../fish/guestfish-actions.pod:437 ../src/guestfs-actions.pod:649
4579 msgid "This command uploads base64-encoded data from C<base64file> to C<filename>."
4580 msgstr ""
4581
4582 #. type: textblock
4583 #: ../fish/guestfish-actions.pod:440 ../fish/guestfish-actions.pod:449 ../fish/guestfish-actions.pod:698 ../fish/guestfish-actions.pod:867 ../fish/guestfish-actions.pod:886 ../fish/guestfish-actions.pod:1260 ../fish/guestfish-actions.pod:4663 ../fish/guestfish-actions.pod:4675 ../fish/guestfish-actions.pod:4686 ../fish/guestfish-actions.pod:4697 ../fish/guestfish-actions.pod:4749 ../fish/guestfish-actions.pod:4758 ../fish/guestfish-actions.pod:4812 ../fish/guestfish-actions.pod:4835
4584 msgid "Use C<-> instead of a filename to read/write from stdin/stdout."
4585 msgstr ""
4586
4587 #. type: =head2
4588 #: ../fish/guestfish-actions.pod:442
4589 msgid "base64-out"
4590 msgstr ""
4591
4592 #. type: verbatim
4593 #: ../fish/guestfish-actions.pod:444
4594 #, no-wrap
4595 msgid ""
4596 " base64-out filename (base64file|-)\n"
4597 "\n"
4598 msgstr ""
4599
4600 #. type: textblock
4601 #: ../fish/guestfish-actions.pod:446 ../src/guestfs-actions.pod:663
4602 msgid ""
4603 "This command downloads the contents of C<filename>, writing it out to local "
4604 "file C<base64file> encoded as base64."
4605 msgstr ""
4606
4607 #. type: =head2
4608 #: ../fish/guestfish-actions.pod:451
4609 msgid "blockdev-flushbufs"
4610 msgstr ""
4611
4612 #. type: verbatim
4613 #: ../fish/guestfish-actions.pod:453
4614 #, no-wrap
4615 msgid ""
4616 " blockdev-flushbufs device\n"
4617 "\n"
4618 msgstr ""
4619
4620 #. type: textblock
4621 #: ../fish/guestfish-actions.pod:455 ../src/guestfs-actions.pod:676
4622 msgid "This tells the kernel to flush internal buffers associated with C<device>."
4623 msgstr ""
4624
4625 #. type: textblock
4626 #: ../fish/guestfish-actions.pod:458 ../fish/guestfish-actions.pod:469 ../fish/guestfish-actions.pod:478 ../fish/guestfish-actions.pod:488 ../fish/guestfish-actions.pod:500 ../fish/guestfish-actions.pod:513 ../fish/guestfish-actions.pod:521 ../fish/guestfish-actions.pod:532 ../fish/guestfish-actions.pod:540 ../fish/guestfish-actions.pod:548 ../src/guestfs-actions.pod:679 ../src/guestfs-actions.pod:696 ../src/guestfs-actions.pod:711 ../src/guestfs-actions.pod:727 ../src/guestfs-actions.pod:745 ../src/guestfs-actions.pod:764 ../src/guestfs-actions.pod:778 ../src/guestfs-actions.pod:796 ../src/guestfs-actions.pod:810 ../src/guestfs-actions.pod:824
4627 msgid "This uses the L<blockdev(8)> command."
4628 msgstr ""
4629
4630 #. type: =head2
4631 #: ../fish/guestfish-actions.pod:460
4632 msgid "blockdev-getbsz"
4633 msgstr ""
4634
4635 #. type: verbatim
4636 #: ../fish/guestfish-actions.pod:462
4637 #, no-wrap
4638 msgid ""
4639 " blockdev-getbsz device\n"
4640 "\n"
4641 msgstr ""
4642
4643 #. type: textblock
4644 #: ../fish/guestfish-actions.pod:464 ../src/guestfs-actions.pod:691
4645 msgid "This returns the block size of a device."
4646 msgstr ""
4647
4648 #. type: textblock
4649 #: ../fish/guestfish-actions.pod:466 ../fish/guestfish-actions.pod:529 ../src/guestfs-actions.pod:693 ../src/guestfs-actions.pod:793
4650 msgid ""
4651 "(Note this is different from both I<size in blocks> and I<filesystem block "
4652 "size>)."
4653 msgstr ""
4654
4655 #. type: =head2
4656 #: ../fish/guestfish-actions.pod:471
4657 msgid "blockdev-getro"
4658 msgstr ""
4659
4660 #. type: verbatim
4661 #: ../fish/guestfish-actions.pod:473
4662 #, no-wrap
4663 msgid ""
4664 " blockdev-getro device\n"
4665 "\n"
4666 msgstr ""
4667
4668 #. type: textblock
4669 #: ../fish/guestfish-actions.pod:475 ../src/guestfs-actions.pod:708
4670 msgid ""
4671 "Returns a boolean indicating if the block device is read-only (true if "
4672 "read-only, false if not)."
4673 msgstr ""
4674
4675 #. type: =head2
4676 #: ../fish/guestfish-actions.pod:480
4677 msgid "blockdev-getsize64"
4678 msgstr ""
4679
4680 #. type: verbatim
4681 #: ../fish/guestfish-actions.pod:482
4682 #, no-wrap
4683 msgid ""
4684 " blockdev-getsize64 device\n"
4685 "\n"
4686 msgstr ""
4687
4688 #. type: textblock
4689 #: ../fish/guestfish-actions.pod:484 ../src/guestfs-actions.pod:723
4690 msgid "This returns the size of the device in bytes."
4691 msgstr ""
4692
4693 #. type: textblock
4694 #: ../fish/guestfish-actions.pod:486
4695 msgid "See also L</blockdev-getsz>."
4696 msgstr ""
4697
4698 #. type: =head2
4699 #: ../fish/guestfish-actions.pod:490
4700 msgid "blockdev-getss"
4701 msgstr ""
4702
4703 #. type: verbatim
4704 #: ../fish/guestfish-actions.pod:492
4705 #, no-wrap
4706 msgid ""
4707 " blockdev-getss device\n"
4708 "\n"
4709 msgstr ""
4710
4711 #. type: textblock
4712 #: ../fish/guestfish-actions.pod:494 ../src/guestfs-actions.pod:739
4713 msgid ""
4714 "This returns the size of sectors on a block device.  Usually 512, but can be "
4715 "larger for modern devices."
4716 msgstr ""
4717
4718 #. type: textblock
4719 #: ../fish/guestfish-actions.pod:497
4720 msgid "(Note, this is not the size in sectors, use L</blockdev-getsz> for that)."
4721 msgstr ""
4722
4723 #. type: =head2
4724 #: ../fish/guestfish-actions.pod:502
4725 msgid "blockdev-getsz"
4726 msgstr ""
4727
4728 #. type: verbatim
4729 #: ../fish/guestfish-actions.pod:504
4730 #, no-wrap
4731 msgid ""
4732 " blockdev-getsz device\n"
4733 "\n"
4734 msgstr ""
4735
4736 #. type: textblock
4737 #: ../fish/guestfish-actions.pod:506 ../src/guestfs-actions.pod:757
4738 msgid ""
4739 "This returns the size of the device in units of 512-byte sectors (even if "
4740 "the sectorsize isn't 512 bytes ... weird)."
4741 msgstr ""
4742
4743 #. type: textblock
4744 #: ../fish/guestfish-actions.pod:509
4745 msgid ""
4746 "See also L</blockdev-getss> for the real sector size of the device, and "
4747 "L</blockdev-getsize64> for the more useful I<size in bytes>."
4748 msgstr ""
4749
4750 #. type: =head2
4751 #: ../fish/guestfish-actions.pod:515
4752 msgid "blockdev-rereadpt"
4753 msgstr ""
4754
4755 #. type: verbatim
4756 #: ../fish/guestfish-actions.pod:517
4757 #, no-wrap
4758 msgid ""
4759 " blockdev-rereadpt device\n"
4760 "\n"
4761 msgstr ""
4762
4763 #. type: textblock
4764 #: ../fish/guestfish-actions.pod:519 ../src/guestfs-actions.pod:776
4765 msgid "Reread the partition table on C<device>."
4766 msgstr ""
4767
4768 #. type: =head2
4769 #: ../fish/guestfish-actions.pod:523
4770 msgid "blockdev-setbsz"
4771 msgstr ""
4772
4773 #. type: verbatim
4774 #: ../fish/guestfish-actions.pod:525
4775 #, no-wrap
4776 msgid ""
4777 " blockdev-setbsz device blocksize\n"
4778 "\n"
4779 msgstr ""
4780
4781 #. type: textblock
4782 #: ../fish/guestfish-actions.pod:527 ../src/guestfs-actions.pod:791
4783 msgid "This sets the block size of a device."
4784 msgstr ""
4785
4786 #. type: =head2
4787 #: ../fish/guestfish-actions.pod:534
4788 msgid "blockdev-setro"
4789 msgstr ""
4790
4791 #. type: verbatim
4792 #: ../fish/guestfish-actions.pod:536
4793 #, no-wrap
4794 msgid ""
4795 " blockdev-setro device\n"
4796 "\n"
4797 msgstr ""
4798
4799 #. type: textblock
4800 #: ../fish/guestfish-actions.pod:538 ../src/guestfs-actions.pod:808
4801 msgid "Sets the block device named C<device> to read-only."
4802 msgstr ""
4803
4804 #. type: =head2
4805 #: ../fish/guestfish-actions.pod:542
4806 msgid "blockdev-setrw"
4807 msgstr ""
4808
4809 #. type: verbatim
4810 #: ../fish/guestfish-actions.pod:544
4811 #, no-wrap
4812 msgid ""
4813 " blockdev-setrw device\n"
4814 "\n"
4815 msgstr ""
4816
4817 #. type: textblock
4818 #: ../fish/guestfish-actions.pod:546 ../src/guestfs-actions.pod:822
4819 msgid "Sets the block device named C<device> to read-write."
4820 msgstr ""
4821
4822 #. type: =head2
4823 #: ../fish/guestfish-actions.pod:550
4824 msgid "btrfs-filesystem-resize"
4825 msgstr ""
4826
4827 #. type: verbatim
4828 #: ../fish/guestfish-actions.pod:552
4829 #, no-wrap
4830 msgid ""
4831 " btrfs-filesystem-resize mountpoint [size:..]\n"
4832 "\n"
4833 msgstr ""
4834
4835 #. type: textblock
4836 #: ../fish/guestfish-actions.pod:554 ../src/guestfs-actions.pod:844
4837 msgid "This command resizes a btrfs filesystem."
4838 msgstr ""
4839
4840 #. type: textblock
4841 #: ../fish/guestfish-actions.pod:556 ../src/guestfs-actions.pod:846
4842 msgid ""
4843 "Note that unlike other resize calls, the filesystem has to be mounted and "
4844 "the parameter is the mountpoint not the device (this is a requirement of "
4845 "btrfs itself)."
4846 msgstr ""
4847
4848 #. type: textblock
4849 #: ../fish/guestfish-actions.pod:560 ../fish/guestfish-actions.pod:3422 ../src/guestfs-actions.pod:850 ../src/guestfs-actions.pod:5194
4850 msgid "The optional parameters are:"
4851 msgstr ""
4852
4853 #. type: =item
4854 #: ../fish/guestfish-actions.pod:564 ../fish/guestfish-actions.pod:3426 ../src/guestfs-actions.pod:854 ../src/guestfs-actions.pod:5198
4855 msgid "C<size>"
4856 msgstr ""
4857
4858 #. type: textblock
4859 #: ../fish/guestfish-actions.pod:566 ../src/guestfs-actions.pod:856
4860 msgid ""
4861 "The new size (in bytes) of the filesystem.  If omitted, the filesystem is "
4862 "resized to the maximum size."
4863 msgstr ""
4864
4865 #. type: textblock
4866 #: ../fish/guestfish-actions.pod:571 ../src/guestfs-actions.pod:861
4867 msgid "See also L<btrfs(8)>."
4868 msgstr ""
4869
4870 #. type: =head2
4871 #: ../fish/guestfish-actions.pod:575
4872 msgid "case-sensitive-path"
4873 msgstr ""
4874
4875 #. type: verbatim
4876 #: ../fish/guestfish-actions.pod:577
4877 #, no-wrap
4878 msgid ""
4879 " case-sensitive-path path\n"
4880 "\n"
4881 msgstr ""
4882
4883 #. type: textblock
4884 #: ../fish/guestfish-actions.pod:579 ../src/guestfs-actions.pod:895
4885 msgid ""
4886 "This can be used to resolve case insensitive paths on a filesystem which is "
4887 "case sensitive.  The use case is to resolve paths which you have read from "
4888 "Windows configuration files or the Windows Registry, to the true path."
4889 msgstr ""
4890
4891 #. type: textblock
4892 #: ../fish/guestfish-actions.pod:584 ../src/guestfs-actions.pod:900
4893 msgid ""
4894 "The command handles a peculiarity of the Linux ntfs-3g filesystem driver "
4895 "(and probably others), which is that although the underlying filesystem is "
4896 "case-insensitive, the driver exports the filesystem to Linux as "
4897 "case-sensitive."
4898 msgstr ""
4899
4900 #. type: textblock
4901 #: ../fish/guestfish-actions.pod:589 ../src/guestfs-actions.pod:905
4902 msgid ""
4903 "One consequence of this is that special directories such as C<c:\\windows> "
4904 "may appear as C</WINDOWS> or C</windows> (or other things) depending on the "
4905 "precise details of how they were created.  In Windows itself this would not "
4906 "be a problem."
4907 msgstr ""
4908
4909 #. type: textblock
4910 #: ../fish/guestfish-actions.pod:595 ../src/guestfs-actions.pod:911
4911 msgid ""
4912 "Bug or feature? You decide: "
4913 "L<http://www.tuxera.com/community/ntfs-3g-faq/#posixfilenames1>"
4914 msgstr ""
4915
4916 #. type: textblock
4917 #: ../fish/guestfish-actions.pod:598 ../src/guestfs-actions.pod:914
4918 msgid ""
4919 "This function resolves the true case of each element in the path and returns "
4920 "the case-sensitive path."
4921 msgstr ""
4922
4923 #. type: textblock
4924 #: ../fish/guestfish-actions.pod:601
4925 msgid ""
4926 "Thus L</case-sensitive-path> (\"/Windows/System32\")  might return "
4927 "C<\"/WINDOWS/system32\"> (the exact return value would depend on details of "
4928 "how the directories were originally created under Windows)."
4929 msgstr ""
4930
4931 #. type: textblock
4932 #: ../fish/guestfish-actions.pod:606 ../src/guestfs-actions.pod:922
4933 msgid "I<Note>: This function does not handle drive names, backslashes etc."
4934 msgstr ""
4935
4936 #. type: textblock
4937 #: ../fish/guestfish-actions.pod:609
4938 msgid "See also L</realpath>."
4939 msgstr ""
4940
4941 #. type: =head2
4942 #: ../fish/guestfish-actions.pod:611
4943 msgid "cat"
4944 msgstr ""
4945
4946 #. type: verbatim
4947 #: ../fish/guestfish-actions.pod:613
4948 #, no-wrap
4949 msgid ""
4950 " cat path\n"
4951 "\n"
4952 msgstr ""
4953
4954 #. type: textblock
4955 #: ../fish/guestfish-actions.pod:615 ../fish/guestfish-actions.pod:3842 ../src/guestfs-actions.pod:938 ../src/guestfs-actions.pod:5837
4956 msgid "Return the contents of the file named C<path>."
4957 msgstr ""
4958
4959 #. type: textblock
4960 #: ../fish/guestfish-actions.pod:617
4961 msgid ""
4962 "Note that this function cannot correctly handle binary files (specifically, "
4963 "files containing C<\\0> character which is treated as end of string).  For "
4964 "those you need to use the L</read-file> or L</download> functions which have "
4965 "a more complex interface."
4966 msgstr ""
4967
4968 #. type: textblock
4969 #: ../fish/guestfish-actions.pod:622 ../fish/guestfish-actions.pod:757 ../fish/guestfish-actions.pod:769 ../fish/guestfish-actions.pod:945 ../fish/guestfish-actions.pod:955 ../fish/guestfish-actions.pod:1022 ../fish/guestfish-actions.pod:1032 ../fish/guestfish-actions.pod:1224 ../fish/guestfish-actions.pod:1531 ../fish/guestfish-actions.pod:1541 ../fish/guestfish-actions.pod:1569 ../fish/guestfish-actions.pod:1584 ../fish/guestfish-actions.pod:1594 ../fish/guestfish-actions.pod:1613 ../fish/guestfish-actions.pod:3712 ../fish/guestfish-actions.pod:3727 ../fish/guestfish-actions.pod:3803 ../fish/guestfish-actions.pod:3820 ../fish/guestfish-actions.pod:3835 ../fish/guestfish-actions.pod:4504 ../fish/guestfish-actions.pod:4550 ../fish/guestfish-actions.pod:4635 ../fish/guestfish-actions.pod:4650 ../fish/guestfish-actions.pod:5056 ../fish/guestfish-actions.pod:5068 ../fish/guestfish-actions.pod:5086 ../fish/guestfish-actions.pod:5103 ../fish/guestfish-actions.pod:5113 ../fish/guestfish-actions.pod:5170 ../fish/guestfish-actions.pod:5180 ../fish/guestfish-actions.pod:5209 ../fish/guestfish-actions.pod:5219 ../src/guestfs-actions.pod:948 ../src/guestfs-actions.pod:1127 ../src/guestfs-actions.pod:1147 ../src/guestfs-actions.pod:1443 ../src/guestfs-actions.pod:1462 ../src/guestfs-actions.pod:1565 ../src/guestfs-actions.pod:1584 ../src/guestfs-actions.pod:1830 ../src/guestfs-actions.pod:2301 ../src/guestfs-actions.pod:2320 ../src/guestfs-actions.pod:2363 ../src/guestfs-actions.pod:2387 ../src/guestfs-actions.pod:2404 ../src/guestfs-actions.pod:2433 ../src/guestfs-actions.pod:5619 ../src/guestfs-actions.pod:5645 ../src/guestfs-actions.pod:5776 ../src/guestfs-actions.pod:5802 ../src/guestfs-actions.pod:5826 ../src/guestfs-actions.pod:6777 ../src/guestfs-actions.pod:6832 ../src/guestfs-actions.pod:6978 ../src/guestfs-actions.pod:7002 ../src/guestfs-actions.pod:7667 ../src/guestfs-actions.pod:7687 ../src/guestfs-actions.pod:7720 ../src/guestfs-actions.pod:7739 ../src/guestfs-actions.pod:7758 ../src/guestfs-actions.pod:7852 ../src/guestfs-actions.pod:7871 ../src/guestfs-actions.pod:7917 ../src/guestfs-actions.pod:7936
4970 msgid ""
4971 "Because of the message protocol, there is a transfer limit of somewhere "
4972 "between 2MB and 4MB.  See L<guestfs(3)/PROTOCOL LIMITS>."
4973 msgstr ""
4974
4975 #. type: =head2
4976 #: ../fish/guestfish-actions.pod:625
4977 msgid "checksum"
4978 msgstr ""
4979
4980 #. type: verbatim
4981 #: ../fish/guestfish-actions.pod:627
4982 #, no-wrap
4983 msgid ""
4984 " checksum csumtype path\n"
4985 "\n"
4986 msgstr ""
4987
4988 #. type: textblock
4989 #: ../fish/guestfish-actions.pod:629 ../src/guestfs-actions.pod:960
4990 msgid "This call computes the MD5, SHAx or CRC checksum of the file named C<path>."
4991 msgstr ""
4992
4993 #. type: textblock
4994 #: ../fish/guestfish-actions.pod:632 ../src/guestfs-actions.pod:963
4995 msgid ""
4996 "The type of checksum to compute is given by the C<csumtype> parameter which "
4997 "must have one of the following values:"
4998 msgstr ""
4999
5000 #. type: =item
5001 #: ../fish/guestfish-actions.pod:637 ../src/guestfs-actions.pod:968
5002 msgid "C<crc>"
5003 msgstr ""
5004
5005 #. type: textblock
5006 #: ../fish/guestfish-actions.pod:639 ../src/guestfs-actions.pod:970
5007 msgid ""
5008 "Compute the cyclic redundancy check (CRC) specified by POSIX for the "
5009 "C<cksum> command."
5010 msgstr ""
5011
5012 #. type: =item
5013 #: ../fish/guestfish-actions.pod:642 ../src/guestfs-actions.pod:973
5014 msgid "C<md5>"
5015 msgstr ""
5016
5017 #. type: textblock
5018 #: ../fish/guestfish-actions.pod:644 ../src/guestfs-actions.pod:975
5019 msgid "Compute the MD5 hash (using the C<md5sum> program)."
5020 msgstr ""
5021
5022 #. type: =item
5023 #: ../fish/guestfish-actions.pod:646 ../src/guestfs-actions.pod:977
5024 msgid "C<sha1>"
5025 msgstr ""
5026
5027 #. type: textblock
5028 #: ../fish/guestfish-actions.pod:648 ../src/guestfs-actions.pod:979
5029 msgid "Compute the SHA1 hash (using the C<sha1sum> program)."
5030 msgstr ""
5031
5032 #. type: =item
5033 #: ../fish/guestfish-actions.pod:650 ../src/guestfs-actions.pod:981
5034 msgid "C<sha224>"
5035 msgstr ""
5036
5037 #. type: textblock
5038 #: ../fish/guestfish-actions.pod:652 ../src/guestfs-actions.pod:983
5039 msgid "Compute the SHA224 hash (using the C<sha224sum> program)."
5040 msgstr ""
5041
5042 #. type: =item
5043 #: ../fish/guestfish-actions.pod:654 ../src/guestfs-actions.pod:985
5044 msgid "C<sha256>"
5045 msgstr ""
5046
5047 #. type: textblock
5048 #: ../fish/guestfish-actions.pod:656 ../src/guestfs-actions.pod:987
5049 msgid "Compute the SHA256 hash (using the C<sha256sum> program)."
5050 msgstr ""
5051
5052 #. type: =item
5053 #: ../fish/guestfish-actions.pod:658 ../src/guestfs-actions.pod:989
5054 msgid "C<sha384>"
5055 msgstr ""
5056
5057 #. type: textblock
5058 #: ../fish/guestfish-actions.pod:660 ../src/guestfs-actions.pod:991
5059 msgid "Compute the SHA384 hash (using the C<sha384sum> program)."
5060 msgstr ""
5061
5062 #. type: =item
5063 #: ../fish/guestfish-actions.pod:662 ../src/guestfs-actions.pod:993
5064 msgid "C<sha512>"
5065 msgstr ""
5066
5067 #. type: textblock
5068 #: ../fish/guestfish-actions.pod:664 ../src/guestfs-actions.pod:995
5069 msgid "Compute the SHA512 hash (using the C<sha512sum> program)."
5070 msgstr ""
5071
5072 #. type: textblock
5073 #: ../fish/guestfish-actions.pod:668 ../src/guestfs-actions.pod:999
5074 msgid "The checksum is returned as a printable string."
5075 msgstr ""
5076
5077 #. type: textblock
5078 #: ../fish/guestfish-actions.pod:670
5079 msgid "To get the checksum for a device, use L</checksum-device>."
5080 msgstr ""
5081
5082 #. type: textblock
5083 #: ../fish/guestfish-actions.pod:672
5084 msgid "To get the checksums for many files, use L</checksums-out>."
5085 msgstr ""
5086
5087 #. type: =head2
5088 #: ../fish/guestfish-actions.pod:674
5089 msgid "checksum-device"
5090 msgstr ""
5091
5092 #. type: verbatim
5093 #: ../fish/guestfish-actions.pod:676
5094 #, no-wrap
5095 msgid ""
5096 " checksum-device csumtype device\n"
5097 "\n"
5098 msgstr ""
5099
5100 #. type: textblock
5101 #: ../fish/guestfish-actions.pod:678
5102 msgid ""
5103 "This call computes the MD5, SHAx or CRC checksum of the contents of the "
5104 "device named C<device>.  For the types of checksums supported see the "
5105 "L</checksum> command."
5106 msgstr ""
5107
5108 #. type: =head2
5109 #: ../fish/guestfish-actions.pod:682
5110 msgid "checksums-out"
5111 msgstr ""
5112
5113 #. type: verbatim
5114 #: ../fish/guestfish-actions.pod:684
5115 #, no-wrap
5116 msgid ""
5117 " checksums-out csumtype directory (sumsfile|-)\n"
5118 "\n"
5119 msgstr ""
5120
5121 #. type: textblock
5122 #: ../fish/guestfish-actions.pod:686 ../src/guestfs-actions.pod:1034
5123 msgid ""
5124 "This command computes the checksums of all regular files in C<directory> and "
5125 "then emits a list of those checksums to the local output file C<sumsfile>."
5126 msgstr ""
5127
5128 #. type: textblock
5129 #: ../fish/guestfish-actions.pod:690 ../src/guestfs-actions.pod:1038
5130 msgid ""
5131 "This can be used for verifying the integrity of a virtual machine.  However "
5132 "to be properly secure you should pay attention to the output of the checksum "
5133 "command (it uses the ones from GNU coreutils).  In particular when the "
5134 "filename is not printable, coreutils uses a special backslash syntax.  For "
5135 "more information, see the GNU coreutils info file."
5136 msgstr ""
5137
5138 #. type: =head2
5139 #: ../fish/guestfish-actions.pod:700
5140 msgid "chmod"
5141 msgstr ""
5142
5143 #. type: verbatim
5144 #: ../fish/guestfish-actions.pod:702
5145 #, no-wrap
5146 msgid ""
5147 " chmod mode path\n"
5148 "\n"
5149 msgstr ""
5150
5151 #. type: textblock
5152 #: ../fish/guestfish-actions.pod:704 ../src/guestfs-actions.pod:1057
5153 msgid ""
5154 "Change the mode (permissions) of C<path> to C<mode>.  Only numeric modes are "
5155 "supported."
5156 msgstr ""
5157
5158 #. type: textblock
5159 #: ../fish/guestfish-actions.pod:707 ../src/guestfs-actions.pod:1060
5160 msgid ""
5161 "I<Note>: When using this command from guestfish, C<mode> by default would be "
5162 "decimal, unless you prefix it with C<0> to get octal, ie. use C<0700> not "
5163 "C<700>."
5164 msgstr ""
5165
5166 #. type: textblock
5167 #: ../fish/guestfish-actions.pod:711 ../fish/guestfish-actions.pod:3065 ../fish/guestfish-actions.pod:3204 ../fish/guestfish-actions.pod:3214 ../fish/guestfish-actions.pod:3224 ../src/guestfs-actions.pod:1064 ../src/guestfs-actions.pod:4591 ../src/guestfs-actions.pod:4800 ../src/guestfs-actions.pod:4819 ../src/guestfs-actions.pod:4838
5168 msgid "The mode actually set is affected by the umask."
5169 msgstr ""
5170
5171 #. type: =head2
5172 #: ../fish/guestfish-actions.pod:713
5173 msgid "chown"
5174 msgstr ""
5175
5176 #. type: verbatim
5177 #: ../fish/guestfish-actions.pod:715
5178 #, no-wrap
5179 msgid ""
5180 " chown owner group path\n"
5181 "\n"
5182 msgstr ""
5183
5184 #. type: textblock
5185 #: ../fish/guestfish-actions.pod:717 ../src/guestfs-actions.pod:1078
5186 msgid "Change the file owner to C<owner> and group to C<group>."
5187 msgstr ""
5188
5189 #. type: textblock
5190 #: ../fish/guestfish-actions.pod:719 ../fish/guestfish-actions.pod:2500 ../src/guestfs-actions.pod:1080 ../src/guestfs-actions.pod:3662
5191 msgid ""
5192 "Only numeric uid and gid are supported.  If you want to use names, you will "
5193 "need to locate and parse the password file yourself (Augeas support makes "
5194 "this relatively easy)."
5195 msgstr ""
5196
5197 #. type: =head2
5198 #: ../fish/guestfish-actions.pod:723
5199 msgid "command"
5200 msgstr ""
5201
5202 #. type: verbatim
5203 #: ../fish/guestfish-actions.pod:725
5204 #, no-wrap
5205 msgid ""
5206 " command 'arguments ...'\n"
5207 "\n"
5208 msgstr ""
5209
5210 #. type: textblock
5211 #: ../fish/guestfish-actions.pod:727 ../src/guestfs-actions.pod:1094
5212 msgid ""
5213 "This call runs a command from the guest filesystem.  The filesystem must be "
5214 "mounted, and must contain a compatible operating system (ie. something "
5215 "Linux, with the same or compatible processor architecture)."
5216 msgstr ""
5217
5218 #. type: textblock
5219 #: ../fish/guestfish-actions.pod:732
5220 msgid ""
5221 "The single parameter is an argv-style list of arguments.  The first element "
5222 "is the name of the program to run.  Subsequent elements are parameters.  The "
5223 "list must be non-empty (ie. must contain a program name).  Note that the "
5224 "command runs directly, and is I<not> invoked via the shell (see L</sh>)."
5225 msgstr ""
5226
5227 #. type: textblock
5228 #: ../fish/guestfish-actions.pod:739 ../src/guestfs-actions.pod:1106
5229 msgid "The return value is anything printed to I<stdout> by the command."
5230 msgstr ""
5231
5232 #. type: textblock
5233 #: ../fish/guestfish-actions.pod:742 ../src/guestfs-actions.pod:1109
5234 msgid ""
5235 "If the command returns a non-zero exit status, then this function returns an "
5236 "error message.  The error message string is the content of I<stderr> from "
5237 "the command."
5238 msgstr ""
5239
5240 #. type: textblock
5241 #: ../fish/guestfish-actions.pod:746 ../src/guestfs-actions.pod:1113
5242 msgid ""
5243 "The C<$PATH> environment variable will contain at least C</usr/bin> and "
5244 "C</bin>.  If you require a program from another location, you should provide "
5245 "the full path in the first parameter."
5246 msgstr ""
5247
5248 #. type: textblock
5249 #: ../fish/guestfish-actions.pod:751 ../src/guestfs-actions.pod:1118
5250 msgid ""
5251 "Shared libraries and data files required by the program must be available on "
5252 "filesystems which are mounted in the correct places.  It is the caller's "
5253 "responsibility to ensure all filesystems that are needed are mounted at the "
5254 "right locations."
5255 msgstr ""
5256
5257 #. type: =head2
5258 #: ../fish/guestfish-actions.pod:760
5259 msgid "command-lines"
5260 msgstr ""
5261
5262 #. type: verbatim
5263 #: ../fish/guestfish-actions.pod:762
5264 #, no-wrap
5265 msgid ""
5266 " command-lines 'arguments ...'\n"
5267 "\n"
5268 msgstr ""
5269
5270 #. type: textblock
5271 #: ../fish/guestfish-actions.pod:764
5272 msgid "This is the same as L</command>, but splits the result into a list of lines."
5273 msgstr ""
5274
5275 #. type: textblock
5276 #: ../fish/guestfish-actions.pod:767
5277 msgid "See also: L</sh-lines>"
5278 msgstr ""
5279
5280 #. type: =head2
5281 #: ../fish/guestfish-actions.pod:772
5282 msgid "config"
5283 msgstr ""
5284
5285 #. type: verbatim
5286 #: ../fish/guestfish-actions.pod:774
5287 #, no-wrap
5288 msgid ""
5289 " config qemuparam qemuvalue\n"
5290 "\n"
5291 msgstr ""
5292
5293 #. type: textblock
5294 #: ../fish/guestfish-actions.pod:776 ../src/guestfs-actions.pod:1159
5295 msgid ""
5296 "This can be used to add arbitrary qemu command line parameters of the form "
5297 "I<-param value>.  Actually it's not quite arbitrary - we prevent you from "
5298 "setting some parameters which would interfere with parameters that we use."
5299 msgstr ""
5300
5301 #. type: textblock
5302 #: ../fish/guestfish-actions.pod:781 ../src/guestfs-actions.pod:1164
5303 msgid "The first character of C<param> string must be a C<-> (dash)."
5304 msgstr ""
5305
5306 #. type: textblock
5307 #: ../fish/guestfish-actions.pod:783 ../src/guestfs-actions.pod:1166
5308 msgid "C<value> can be NULL."
5309 msgstr ""
5310
5311 #. type: =head2
5312 #: ../fish/guestfish-actions.pod:785
5313 msgid "copy-size"
5314 msgstr ""
5315
5316 #. type: verbatim
5317 #: ../fish/guestfish-actions.pod:787
5318 #, no-wrap
5319 msgid ""
5320 " copy-size src dest size\n"
5321 "\n"
5322 msgstr ""
5323
5324 #. type: textblock
5325 #: ../fish/guestfish-actions.pod:789 ../src/guestfs-actions.pod:1180
5326 msgid ""
5327 "This command copies exactly C<size> bytes from one source device or file "
5328 "C<src> to another destination device or file C<dest>."
5329 msgstr ""
5330
5331 #. type: textblock
5332 #: ../fish/guestfish-actions.pod:792 ../src/guestfs-actions.pod:1183
5333 msgid ""
5334 "Note this will fail if the source is too short or if the destination is not "
5335 "large enough."
5336 msgstr ""
5337
5338 #. type: =head2
5339 #: ../fish/guestfish-actions.pod:795
5340 msgid "cp"
5341 msgstr ""
5342
5343 #. type: verbatim
5344 #: ../fish/guestfish-actions.pod:797
5345 #, no-wrap
5346 msgid ""
5347 " cp src dest\n"
5348 "\n"
5349 msgstr ""
5350
5351 #. type: textblock
5352 #: ../fish/guestfish-actions.pod:799 ../src/guestfs-actions.pod:1202
5353 msgid ""
5354 "This copies a file from C<src> to C<dest> where C<dest> is either a "
5355 "destination filename or destination directory."
5356 msgstr ""
5357
5358 #. type: =head2
5359 #: ../fish/guestfish-actions.pod:802
5360 msgid "cp-a"
5361 msgstr ""
5362
5363 #. type: verbatim
5364 #: ../fish/guestfish-actions.pod:804
5365 #, no-wrap
5366 msgid ""
5367 " cp-a src dest\n"
5368 "\n"
5369 msgstr ""
5370
5371 #. type: textblock
5372 #: ../fish/guestfish-actions.pod:806 ../src/guestfs-actions.pod:1216
5373 msgid ""
5374 "This copies a file or directory from C<src> to C<dest> recursively using the "
5375 "C<cp -a> command."
5376 msgstr ""
5377
5378 #. type: =head2
5379 #: ../fish/guestfish-actions.pod:809
5380 msgid "dd"
5381 msgstr ""
5382
5383 #. type: verbatim
5384 #: ../fish/guestfish-actions.pod:811
5385 #, no-wrap
5386 msgid ""
5387 " dd src dest\n"
5388 "\n"
5389 msgstr ""
5390
5391 #. type: textblock
5392 #: ../fish/guestfish-actions.pod:813 ../src/guestfs-actions.pod:1230
5393 msgid ""
5394 "This command copies from one source device or file C<src> to another "
5395 "destination device or file C<dest>.  Normally you would use this to copy to "
5396 "or from a device or partition, for example to duplicate a filesystem."
5397 msgstr ""
5398
5399 #. type: textblock
5400 #: ../fish/guestfish-actions.pod:818
5401 msgid ""
5402 "If the destination is a device, it must be as large or larger than the "
5403 "source file or device, otherwise the copy will fail.  This command cannot do "
5404 "partial copies (see L</copy-size>)."
5405 msgstr ""
5406
5407 #. type: =head2
5408 #: ../fish/guestfish-actions.pod:822
5409 msgid "df"
5410 msgstr ""
5411
5412 #. type: verbatim
5413 #: ../fish/guestfish-actions.pod:824
5414 #, no-wrap
5415 msgid ""
5416 " df\n"
5417 "\n"
5418 msgstr ""
5419
5420 #. type: textblock
5421 #: ../fish/guestfish-actions.pod:826 ../src/guestfs-actions.pod:1248
5422 msgid "This command runs the C<df> command to report disk space used."
5423 msgstr ""
5424
5425 #. type: textblock
5426 #: ../fish/guestfish-actions.pod:828 ../fish/guestfish-actions.pod:839
5427 msgid ""
5428 "This command is mostly useful for interactive sessions.  It is I<not> "
5429 "intended that you try to parse the output string.  Use L</statvfs> from "
5430 "programs."
5431 msgstr ""
5432
5433 #. type: =head2
5434 #: ../fish/guestfish-actions.pod:832
5435 msgid "df-h"
5436 msgstr ""
5437
5438 #. type: verbatim
5439 #: ../fish/guestfish-actions.pod:834
5440 #, no-wrap
5441 msgid ""
5442 " df-h\n"
5443 "\n"
5444 msgstr ""
5445
5446 #. type: textblock
5447 #: ../fish/guestfish-actions.pod:836 ../src/guestfs-actions.pod:1264
5448 msgid ""
5449 "This command runs the C<df -h> command to report disk space used in "
5450 "human-readable format."
5451 msgstr ""
5452
5453 #. type: =head2
5454 #: ../fish/guestfish-actions.pod:843
5455 msgid "dmesg"
5456 msgstr ""
5457
5458 #. type: verbatim
5459 #: ../fish/guestfish-actions.pod:845
5460 #, no-wrap
5461 msgid ""
5462 " dmesg\n"
5463 "\n"
5464 msgstr ""
5465
5466 #. type: textblock
5467 #: ../fish/guestfish-actions.pod:847 ../src/guestfs-actions.pod:1281
5468 msgid ""
5469 "This returns the kernel messages (C<dmesg> output) from the guest kernel.  "
5470 "This is sometimes useful for extended debugging of problems."
5471 msgstr ""
5472
5473 #. type: textblock
5474 #: ../fish/guestfish-actions.pod:851
5475 msgid ""
5476 "Another way to get the same information is to enable verbose messages with "
5477 "L</set-verbose> or by setting the environment variable C<LIBGUESTFS_DEBUG=1> "
5478 "before running the program."
5479 msgstr ""
5480
5481 #. type: =head2
5482 #: ../fish/guestfish-actions.pod:856
5483 msgid "download"
5484 msgstr ""
5485
5486 #. type: verbatim
5487 #: ../fish/guestfish-actions.pod:858
5488 #, no-wrap
5489 msgid ""
5490 " download remotefilename (filename|-)\n"
5491 "\n"
5492 msgstr ""
5493
5494 #. type: textblock
5495 #: ../fish/guestfish-actions.pod:860 ../fish/guestfish-actions.pod:873 ../src/guestfs-actions.pod:1302 ../src/guestfs-actions.pod:1327
5496 msgid ""
5497 "Download file C<remotefilename> and save it as C<filename> on the local "
5498 "machine."
5499 msgstr ""
5500
5501 #. type: textblock
5502 #: ../fish/guestfish-actions.pod:863 ../fish/guestfish-actions.pod:4808 ../src/guestfs-actions.pod:1305 ../src/guestfs-actions.pod:7237
5503 msgid "C<filename> can also be a named pipe."
5504 msgstr ""
5505
5506 #. type: textblock
5507 #: ../fish/guestfish-actions.pod:865
5508 msgid "See also L</upload>, L</cat>."
5509 msgstr ""
5510
5511 #. type: =head2
5512 #: ../fish/guestfish-actions.pod:869
5513 msgid "download-offset"
5514 msgstr ""
5515
5516 #. type: verbatim
5517 #: ../fish/guestfish-actions.pod:871
5518 #, no-wrap
5519 msgid ""
5520 " download-offset remotefilename (filename|-) offset size\n"
5521 "\n"
5522 msgstr ""
5523
5524 #. type: textblock
5525 #: ../fish/guestfish-actions.pod:876 ../src/guestfs-actions.pod:1330
5526 msgid ""
5527 "C<remotefilename> is read for C<size> bytes starting at C<offset> (this "
5528 "region must be within the file or device)."
5529 msgstr ""
5530
5531 #. type: textblock
5532 #: ../fish/guestfish-actions.pod:879
5533 msgid ""
5534 "Note that there is no limit on the amount of data that can be downloaded "
5535 "with this call, unlike with L</pread>, and this call always reads the full "
5536 "amount unless an error occurs."
5537 msgstr ""
5538
5539 #. type: textblock
5540 #: ../fish/guestfish-actions.pod:884
5541 msgid "See also L</download>, L</pread>."
5542 msgstr ""
5543
5544 #. type: =head2
5545 #: ../fish/guestfish-actions.pod:888
5546 msgid "drop-caches"
5547 msgstr ""
5548
5549 #. type: verbatim
5550 #: ../fish/guestfish-actions.pod:890
5551 #, no-wrap
5552 msgid ""
5553 " drop-caches whattodrop\n"
5554 "\n"
5555 msgstr ""
5556
5557 #. type: textblock
5558 #: ../fish/guestfish-actions.pod:892 ../src/guestfs-actions.pod:1355
5559 msgid ""
5560 "This instructs the guest kernel to drop its page cache, and/or dentries and "
5561 "inode caches.  The parameter C<whattodrop> tells the kernel what precisely "
5562 "to drop, see L<http://linux-mm.org/Drop_Caches>"
5563 msgstr ""
5564
5565 #. type: textblock
5566 #: ../fish/guestfish-actions.pod:897 ../src/guestfs-actions.pod:1360
5567 msgid "Setting C<whattodrop> to 3 should drop everything."
5568 msgstr ""
5569
5570 #. type: textblock
5571 #: ../fish/guestfish-actions.pod:899 ../src/guestfs-actions.pod:1362
5572 msgid ""
5573 "This automatically calls L<sync(2)> before the operation, so that the "
5574 "maximum guest memory is freed."
5575 msgstr ""
5576
5577 #. type: =head2
5578 #: ../fish/guestfish-actions.pod:902
5579 msgid "du"
5580 msgstr ""
5581
5582 #. type: verbatim
5583 #: ../fish/guestfish-actions.pod:904
5584 #, no-wrap
5585 msgid ""
5586 " du path\n"
5587 "\n"
5588 msgstr ""
5589
5590 #. type: textblock
5591 #: ../fish/guestfish-actions.pod:906 ../src/guestfs-actions.pod:1375
5592 msgid ""
5593 "This command runs the C<du -s> command to estimate file space usage for "
5594 "C<path>."
5595 msgstr ""
5596
5597 #. type: textblock
5598 #: ../fish/guestfish-actions.pod:909 ../src/guestfs-actions.pod:1378
5599 msgid ""
5600 "C<path> can be a file or a directory.  If C<path> is a directory then the "
5601 "estimate includes the contents of the directory and all subdirectories "
5602 "(recursively)."
5603 msgstr ""
5604
5605 #. type: textblock
5606 #: ../fish/guestfish-actions.pod:913 ../src/guestfs-actions.pod:1382
5607 msgid "The result is the estimated size in I<kilobytes> (ie. units of 1024 bytes)."
5608 msgstr ""
5609
5610 #. type: =head2
5611 #: ../fish/guestfish-actions.pod:916
5612 msgid "e2fsck-f"
5613 msgstr ""
5614
5615 #. type: verbatim
5616 #: ../fish/guestfish-actions.pod:918
5617 #, no-wrap
5618 msgid ""
5619 " e2fsck-f device\n"
5620 "\n"
5621 msgstr ""
5622
5623 #. type: textblock
5624 #: ../fish/guestfish-actions.pod:920 ../src/guestfs-actions.pod:1400
5625 msgid ""
5626 "This runs C<e2fsck -p -f device>, ie. runs the ext2/ext3 filesystem checker "
5627 "on C<device>, noninteractively (I<-p>), even if the filesystem appears to be "
5628 "clean (I<-f>)."
5629 msgstr ""
5630
5631 #. type: textblock
5632 #: ../fish/guestfish-actions.pod:924
5633 msgid ""
5634 "This command is only needed because of L</resize2fs> (q.v.).  Normally you "
5635 "should use L</fsck>."
5636 msgstr ""
5637
5638 #. type: =head2
5639 #: ../fish/guestfish-actions.pod:927
5640 msgid "echo-daemon"
5641 msgstr ""
5642
5643 #. type: verbatim
5644 #: ../fish/guestfish-actions.pod:929
5645 #, no-wrap
5646 msgid ""
5647 " echo-daemon 'words ...'\n"
5648 "\n"
5649 msgstr ""
5650
5651 #. type: textblock
5652 #: ../fish/guestfish-actions.pod:931 ../src/guestfs-actions.pod:1417
5653 msgid ""
5654 "This command concatenates the list of C<words> passed with single spaces "
5655 "between them and returns the resulting string."
5656 msgstr ""
5657
5658 #. type: textblock
5659 #: ../fish/guestfish-actions.pod:934 ../src/guestfs-actions.pod:1420
5660 msgid "You can use this command to test the connection through to the daemon."
5661 msgstr ""
5662
5663 #. type: textblock
5664 #: ../fish/guestfish-actions.pod:936
5665 msgid "See also L</ping-daemon>."
5666 msgstr ""
5667
5668 #. type: =head2
5669 #: ../fish/guestfish-actions.pod:938
5670 msgid "egrep"
5671 msgstr ""
5672
5673 #. type: verbatim
5674 #: ../fish/guestfish-actions.pod:940
5675 #, no-wrap
5676 msgid ""
5677 " egrep regex path\n"
5678 "\n"
5679 msgstr ""
5680
5681 #. type: textblock
5682 #: ../fish/guestfish-actions.pod:942 ../src/guestfs-actions.pod:1436
5683 msgid "This calls the external C<egrep> program and returns the matching lines."
5684 msgstr ""
5685
5686 #. type: =head2
5687 #: ../fish/guestfish-actions.pod:948
5688 msgid "egrepi"
5689 msgstr ""
5690
5691 #. type: verbatim
5692 #: ../fish/guestfish-actions.pod:950
5693 #, no-wrap
5694 msgid ""
5695 " egrepi regex path\n"
5696 "\n"
5697 msgstr ""
5698
5699 #. type: textblock
5700 #: ../fish/guestfish-actions.pod:952 ../src/guestfs-actions.pod:1455
5701 msgid "This calls the external C<egrep -i> program and returns the matching lines."
5702 msgstr ""
5703
5704 #. type: =head2
5705 #: ../fish/guestfish-actions.pod:958
5706 msgid "equal"
5707 msgstr ""
5708
5709 #. type: verbatim
5710 #: ../fish/guestfish-actions.pod:960
5711 #, no-wrap
5712 msgid ""
5713 " equal file1 file2\n"
5714 "\n"
5715 msgstr ""
5716
5717 #. type: textblock
5718 #: ../fish/guestfish-actions.pod:962 ../src/guestfs-actions.pod:1474
5719 msgid ""
5720 "This compares the two files C<file1> and C<file2> and returns true if their "
5721 "content is exactly equal, or false otherwise."
5722 msgstr ""
5723
5724 #. type: textblock
5725 #: ../fish/guestfish-actions.pod:965 ../src/guestfs-actions.pod:1477
5726 msgid "The external L<cmp(1)> program is used for the comparison."
5727 msgstr ""
5728
5729 #. type: =head2
5730 #: ../fish/guestfish-actions.pod:967
5731 msgid "exists"
5732 msgstr ""
5733
5734 #. type: verbatim
5735 #: ../fish/guestfish-actions.pod:969
5736 #, no-wrap
5737 msgid ""
5738 " exists path\n"
5739 "\n"
5740 msgstr ""
5741
5742 #. type: textblock
5743 #: ../fish/guestfish-actions.pod:971 ../src/guestfs-actions.pod:1489
5744 msgid ""
5745 "This returns C<true> if and only if there is a file, directory (or anything) "
5746 "with the given C<path> name."
5747 msgstr ""
5748
5749 #. type: textblock
5750 #: ../fish/guestfish-actions.pod:974
5751 msgid "See also L</is-file>, L</is-dir>, L</stat>."
5752 msgstr ""
5753
5754 #. type: =head2
5755 #: ../fish/guestfish-actions.pod:976
5756 msgid "fallocate"
5757 msgstr ""
5758
5759 #. type: verbatim
5760 #: ../fish/guestfish-actions.pod:978
5761 #, no-wrap
5762 msgid ""
5763 " fallocate path len\n"
5764 "\n"
5765 msgstr ""
5766
5767 #. type: textblock
5768 #: ../fish/guestfish-actions.pod:980 ../fish/guestfish-actions.pod:999 ../src/guestfs-actions.pod:1512 ../src/guestfs-actions.pod:1531
5769 msgid ""
5770 "This command preallocates a file (containing zero bytes) named C<path> of "
5771 "size C<len> bytes.  If the file exists already, it is overwritten."
5772 msgstr ""
5773
5774 #. type: textblock
5775 #: ../fish/guestfish-actions.pod:984 ../src/guestfs-actions.pod:1516
5776 msgid ""
5777 "Do not confuse this with the guestfish-specific C<alloc> command which "
5778 "allocates a file in the host and attaches it as a device."
5779 msgstr ""
5780
5781 #. type: textblock
5782 #: ../fish/guestfish-actions.pod:988
5783 msgid ""
5784 "I<This function is deprecated.> In new code, use the L</fallocate64> call "
5785 "instead."
5786 msgstr ""
5787
5788 #. type: =head2
5789 #: ../fish/guestfish-actions.pod:995
5790 msgid "fallocate64"
5791 msgstr ""
5792
5793 #. type: verbatim
5794 #: ../fish/guestfish-actions.pod:997
5795 #, no-wrap
5796 msgid ""
5797 " fallocate64 path len\n"
5798 "\n"
5799 msgstr ""
5800
5801 #. type: textblock
5802 #: ../fish/guestfish-actions.pod:1003
5803 msgid ""
5804 "Note that this call allocates disk blocks for the file.  To create a sparse "
5805 "file use L</truncate-size> instead."
5806 msgstr ""
5807
5808 #. type: textblock
5809 #: ../fish/guestfish-actions.pod:1006
5810 msgid ""
5811 "The deprecated call L</fallocate> does the same, but owing to an oversight "
5812 "it only allowed 30 bit lengths to be specified, effectively limiting the "
5813 "maximum size of files created through that call to 1GB."
5814 msgstr ""
5815
5816 #. type: textblock
5817 #: ../fish/guestfish-actions.pod:1011 ../src/guestfs-actions.pod:1543
5818 msgid ""
5819 "Do not confuse this with the guestfish-specific C<alloc> and C<sparse> "
5820 "commands which create a file in the host and attach it as a device."
5821 msgstr ""
5822
5823 #. type: =head2
5824 #: ../fish/guestfish-actions.pod:1015
5825 msgid "fgrep"
5826 msgstr ""
5827
5828 #. type: verbatim
5829 #: ../fish/guestfish-actions.pod:1017
5830 #, no-wrap
5831 msgid ""
5832 " fgrep pattern path\n"
5833 "\n"
5834 msgstr ""
5835
5836 #. type: textblock
5837 #: ../fish/guestfish-actions.pod:1019 ../src/guestfs-actions.pod:1558
5838 msgid "This calls the external C<fgrep> program and returns the matching lines."
5839 msgstr ""
5840
5841 #. type: =head2
5842 #: ../fish/guestfish-actions.pod:1025
5843 msgid "fgrepi"
5844 msgstr ""
5845
5846 #. type: verbatim
5847 #: ../fish/guestfish-actions.pod:1027
5848 #, no-wrap
5849 msgid ""
5850 " fgrepi pattern path\n"
5851 "\n"
5852 msgstr ""
5853
5854 #. type: textblock
5855 #: ../fish/guestfish-actions.pod:1029 ../src/guestfs-actions.pod:1577
5856 msgid "This calls the external C<fgrep -i> program and returns the matching lines."
5857 msgstr ""
5858
5859 #. type: =head2
5860 #: ../fish/guestfish-actions.pod:1035
5861 msgid "file"
5862 msgstr ""
5863
5864 #. type: verbatim
5865 #: ../fish/guestfish-actions.pod:1037
5866 #, no-wrap
5867 msgid ""
5868 " file path\n"
5869 "\n"
5870 msgstr ""
5871
5872 #. type: textblock
5873 #: ../fish/guestfish-actions.pod:1039 ../src/guestfs-actions.pod:1595
5874 msgid ""
5875 "This call uses the standard L<file(1)> command to determine the type or "
5876 "contents of the file."
5877 msgstr ""
5878
5879 #. type: textblock
5880 #: ../fish/guestfish-actions.pod:1042 ../src/guestfs-actions.pod:1598
5881 msgid ""
5882 "This call will also transparently look inside various types of compressed "
5883 "file."
5884 msgstr ""
5885
5886 #. type: textblock
5887 #: ../fish/guestfish-actions.pod:1045 ../src/guestfs-actions.pod:1601
5888 msgid ""
5889 "The exact command which runs is C<file -zb path>.  Note in particular that "
5890 "the filename is not prepended to the output (the I<-b> option)."
5891 msgstr ""
5892
5893 #. type: textblock
5894 #: ../fish/guestfish-actions.pod:1049 ../src/guestfs-actions.pod:1605
5895 msgid ""
5896 "The output depends on the output of the underlying L<file(1)> command and it "
5897 "can change in future in ways beyond our control.  In other words, the output "
5898 "is not guaranteed by the ABI."
5899 msgstr ""
5900
5901 #. type: textblock
5902 #: ../fish/guestfish-actions.pod:1053
5903 msgid ""
5904 "See also: L<file(1)>, L</vfs-type>, L</lstat>, L</is-file>, L</is-blockdev> "
5905 "(etc), L</is-zero>."
5906 msgstr ""
5907
5908 #. type: =head2
5909 #: ../fish/guestfish-actions.pod:1056
5910 msgid "file-architecture"
5911 msgstr ""
5912
5913 #. type: verbatim
5914 #: ../fish/guestfish-actions.pod:1058
5915 #, no-wrap
5916 msgid ""
5917 " file-architecture filename\n"
5918 "\n"
5919 msgstr ""
5920
5921 #. type: textblock
5922 #: ../fish/guestfish-actions.pod:1060 ../src/guestfs-actions.pod:1623
5923 msgid ""
5924 "This detects the architecture of the binary C<filename>, and returns it if "
5925 "known."
5926 msgstr ""
5927
5928 #. type: textblock
5929 #: ../fish/guestfish-actions.pod:1063 ../src/guestfs-actions.pod:1626
5930 msgid "Currently defined architectures are:"
5931 msgstr ""
5932
5933 #. type: =item
5934 #: ../fish/guestfish-actions.pod:1067 ../src/guestfs-actions.pod:1630
5935 msgid "\"i386\""
5936 msgstr ""
5937
5938 #. type: textblock
5939 #: ../fish/guestfish-actions.pod:1069 ../src/guestfs-actions.pod:1632
5940 msgid ""
5941 "This string is returned for all 32 bit i386, i486, i586, i686 binaries "
5942 "irrespective of the precise processor requirements of the binary."
5943 msgstr ""
5944
5945 #. type: =item
5946 #: ../fish/guestfish-actions.pod:1072 ../src/guestfs-actions.pod:1635
5947 msgid "\"x86_64\""
5948 msgstr ""
5949
5950 #. type: textblock
5951 #: ../fish/guestfish-actions.pod:1074 ../src/guestfs-actions.pod:1637
5952 msgid "64 bit x86-64."
5953 msgstr ""
5954
5955 #. type: =item
5956 #: ../fish/guestfish-actions.pod:1076 ../src/guestfs-actions.pod:1639
5957 msgid "\"sparc\""
5958 msgstr ""
5959
5960 #. type: textblock
5961 #: ../fish/guestfish-actions.pod:1078 ../src/guestfs-actions.pod:1641
5962 msgid "32 bit SPARC."
5963 msgstr ""
5964
5965 #. type: =item
5966 #: ../fish/guestfish-actions.pod:1080 ../src/guestfs-actions.pod:1643
5967 msgid "\"sparc64\""
5968 msgstr ""
5969
5970 #. type: textblock
5971 #: ../fish/guestfish-actions.pod:1082 ../src/guestfs-actions.pod:1645
5972 msgid "64 bit SPARC V9 and above."
5973 msgstr ""
5974
5975 #. type: =item
5976 #: ../fish/guestfish-actions.pod:1084 ../src/guestfs-actions.pod:1647
5977 msgid "\"ia64\""
5978 msgstr ""
5979
5980 #. type: textblock
5981 #: ../fish/guestfish-actions.pod:1086 ../src/guestfs-actions.pod:1649
5982 msgid "Intel Itanium."
5983 msgstr ""
5984
5985 #. type: =item
5986 #: ../fish/guestfish-actions.pod:1088 ../src/guestfs-actions.pod:1651
5987 msgid "\"ppc\""
5988 msgstr ""
5989
5990 #. type: textblock
5991 #: ../fish/guestfish-actions.pod:1090 ../src/guestfs-actions.pod:1653
5992 msgid "32 bit Power PC."
5993 msgstr ""
5994
5995 #. type: =item
5996 #: ../fish/guestfish-actions.pod:1092 ../src/guestfs-actions.pod:1655
5997 msgid "\"ppc64\""
5998 msgstr ""
5999
6000 #. type: textblock
6001 #: ../fish/guestfish-actions.pod:1094 ../src/guestfs-actions.pod:1657
6002 msgid "64 bit Power PC."
6003 msgstr ""
6004
6005 #. type: textblock
6006 #: ../fish/guestfish-actions.pod:1098 ../src/guestfs-actions.pod:1661
6007 msgid "Libguestfs may return other architecture strings in future."
6008 msgstr ""
6009
6010 #. type: textblock
6011 #: ../fish/guestfish-actions.pod:1100 ../src/guestfs-actions.pod:1663
6012 msgid "The function works on at least the following types of files:"
6013 msgstr ""
6014
6015 #. type: textblock
6016 #: ../fish/guestfish-actions.pod:1106 ../src/guestfs-actions.pod:1669
6017 msgid "many types of Un*x and Linux binary"
6018 msgstr ""
6019
6020 #. type: textblock
6021 #: ../fish/guestfish-actions.pod:1110 ../src/guestfs-actions.pod:1673
6022 msgid "many types of Un*x and Linux shared library"
6023 msgstr ""
6024
6025 #. type: textblock
6026 #: ../fish/guestfish-actions.pod:1114 ../src/guestfs-actions.pod:1677
6027 msgid "Windows Win32 and Win64 binaries"
6028 msgstr ""
6029
6030 #. type: textblock
6031 #: ../fish/guestfish-actions.pod:1118 ../src/guestfs-actions.pod:1681
6032 msgid "Windows Win32 and Win64 DLLs"
6033 msgstr ""
6034
6035 #. type: textblock
6036 #: ../fish/guestfish-actions.pod:1120 ../src/guestfs-actions.pod:1683
6037 msgid "Win32 binaries and DLLs return C<i386>."
6038 msgstr ""
6039
6040 #. type: textblock
6041 #: ../fish/guestfish-actions.pod:1122 ../src/guestfs-actions.pod:1685
6042 msgid "Win64 binaries and DLLs return C<x86_64>."
6043 msgstr ""
6044
6045 #. type: textblock
6046 #: ../fish/guestfish-actions.pod:1126 ../src/guestfs-actions.pod:1689
6047 msgid "Linux kernel modules"
6048 msgstr ""
6049
6050 #. type: textblock
6051 #: ../fish/guestfish-actions.pod:1130 ../src/guestfs-actions.pod:1693
6052 msgid "Linux new-style initrd images"
6053 msgstr ""
6054
6055 #. type: textblock
6056 #: ../fish/guestfish-actions.pod:1134 ../src/guestfs-actions.pod:1697
6057 msgid "some non-x86 Linux vmlinuz kernels"
6058 msgstr ""
6059
6060 #. type: textblock
6061 #: ../fish/guestfish-actions.pod:1138 ../src/guestfs-actions.pod:1701
6062 msgid "What it can't do currently:"
6063 msgstr ""
6064
6065 #. type: textblock
6066 #: ../fish/guestfish-actions.pod:1144 ../src/guestfs-actions.pod:1707
6067 msgid "static libraries (libfoo.a)"
6068 msgstr ""
6069
6070 #. type: textblock
6071 #: ../fish/guestfish-actions.pod:1148 ../src/guestfs-actions.pod:1711
6072 msgid "Linux old-style initrd as compressed ext2 filesystem (RHEL 3)"
6073 msgstr ""
6074
6075 #. type: textblock
6076 #: ../fish/guestfish-actions.pod:1152 ../src/guestfs-actions.pod:1715
6077 msgid "x86 Linux vmlinuz kernels"
6078 msgstr ""
6079
6080 #. type: textblock
6081 #: ../fish/guestfish-actions.pod:1154 ../src/guestfs-actions.pod:1717
6082 msgid ""
6083 "x86 vmlinuz images (bzImage format) consist of a mix of 16-, 32- and "
6084 "compressed code, and are horribly hard to unpack.  If you want to find the "
6085 "architecture of a kernel, use the architecture of the associated initrd or "
6086 "kernel module(s) instead."
6087 msgstr ""
6088
6089 #. type: =head2
6090 #: ../fish/guestfish-actions.pod:1161
6091 msgid "filesize"
6092 msgstr ""
6093
6094 #. type: verbatim
6095 #: ../fish/guestfish-actions.pod:1163
6096 #, no-wrap
6097 msgid ""
6098 " filesize file\n"
6099 "\n"
6100 msgstr ""
6101
6102 #. type: textblock
6103 #: ../fish/guestfish-actions.pod:1165 ../src/guestfs-actions.pod:1735
6104 msgid "This command returns the size of C<file> in bytes."
6105 msgstr ""
6106
6107 #. type: textblock
6108 #: ../fish/guestfish-actions.pod:1167
6109 msgid ""
6110 "To get other stats about a file, use L</stat>, L</lstat>, L</is-dir>, "
6111 "L</is-file> etc.  To get the size of block devices, use "
6112 "L</blockdev-getsize64>."
6113 msgstr ""
6114
6115 #. type: =head2
6116 #: ../fish/guestfish-actions.pod:1171
6117 msgid "fill"
6118 msgstr ""
6119
6120 #. type: verbatim
6121 #: ../fish/guestfish-actions.pod:1173
6122 #, no-wrap
6123 msgid ""
6124 " fill c len path\n"
6125 "\n"
6126 msgstr ""
6127
6128 #. type: textblock
6129 #: ../fish/guestfish-actions.pod:1175 ../src/guestfs-actions.pod:1753
6130 msgid ""
6131 "This command creates a new file called C<path>.  The initial content of the "
6132 "file is C<len> octets of C<c>, where C<c> must be a number in the range "
6133 "C<[0..255]>."
6134 msgstr ""
6135
6136 #. type: textblock
6137 #: ../fish/guestfish-actions.pod:1179
6138 msgid ""
6139 "To fill a file with zero bytes (sparsely), it is much more efficient to use "
6140 "L</truncate-size>.  To create a file with a pattern of repeating bytes use "
6141 "L</fill-pattern>."
6142 msgstr ""
6143
6144 #. type: =head2
6145 #: ../fish/guestfish-actions.pod:1184
6146 msgid "fill-pattern"
6147 msgstr ""
6148
6149 #. type: verbatim
6150 #: ../fish/guestfish-actions.pod:1186
6151 #, no-wrap
6152 msgid ""
6153 " fill-pattern pattern len path\n"
6154 "\n"
6155 msgstr ""
6156
6157 #. type: textblock
6158 #: ../fish/guestfish-actions.pod:1188
6159 msgid ""
6160 "This function is like L</fill> except that it creates a new file of length "
6161 "C<len> containing the repeating pattern of bytes in C<pattern>.  The pattern "
6162 "is truncated if necessary to ensure the length of the file is exactly C<len> "
6163 "bytes."
6164 msgstr ""
6165
6166 #. type: =head2
6167 #: ../fish/guestfish-actions.pod:1193
6168 msgid "find"
6169 msgstr ""
6170
6171 #. type: verbatim
6172 #: ../fish/guestfish-actions.pod:1195
6173 #, no-wrap
6174 msgid ""
6175 " find directory\n"
6176 "\n"
6177 msgstr ""
6178
6179 #. type: textblock
6180 #: ../fish/guestfish-actions.pod:1197 ../src/guestfs-actions.pod:1799
6181 msgid ""
6182 "This command lists out all files and directories, recursively, starting at "
6183 "C<directory>.  It is essentially equivalent to running the shell command "
6184 "C<find directory -print> but some post-processing happens on the output, "
6185 "described below."
6186 msgstr ""
6187
6188 #. type: textblock
6189 #: ../fish/guestfish-actions.pod:1202 ../src/guestfs-actions.pod:1804
6190 msgid ""
6191 "This returns a list of strings I<without any prefix>.  Thus if the directory "
6192 "structure was:"
6193 msgstr ""
6194
6195 #. type: verbatim
6196 #: ../fish/guestfish-actions.pod:1205 ../src/guestfs-actions.pod:1807
6197 #, no-wrap
6198 msgid ""
6199 " /tmp/a\n"
6200 " /tmp/b\n"
6201 " /tmp/c/d\n"
6202 "\n"
6203 msgstr ""
6204
6205 #. type: textblock
6206 #: ../fish/guestfish-actions.pod:1209
6207 msgid "then the returned list from L</find> C</tmp> would be 4 elements:"
6208 msgstr ""
6209
6210 #. type: verbatim
6211 #: ../fish/guestfish-actions.pod:1212 ../src/guestfs-actions.pod:1814
6212 #, no-wrap
6213 msgid ""
6214 " a\n"
6215 " b\n"
6216 " c\n"
6217 " c/d\n"
6218 "\n"
6219 msgstr ""
6220
6221 #. type: textblock
6222 #: ../fish/guestfish-actions.pod:1217 ../src/guestfs-actions.pod:1819
6223 msgid "If C<directory> is not a directory, then this command returns an error."
6224 msgstr ""
6225
6226 #. type: textblock
6227 #: ../fish/guestfish-actions.pod:1220 ../src/guestfs-actions.pod:1822
6228 msgid "The returned list is sorted."
6229 msgstr ""
6230
6231 #. type: textblock
6232 #: ../fish/guestfish-actions.pod:1222
6233 msgid "See also L</find0>."
6234 msgstr ""
6235
6236 #. type: =head2
6237 #: ../fish/guestfish-actions.pod:1227
6238 msgid "find0"
6239 msgstr ""
6240
6241 #. type: verbatim
6242 #: ../fish/guestfish-actions.pod:1229
6243 #, no-wrap
6244 msgid ""
6245 " find0 directory (files|-)\n"
6246 "\n"
6247 msgstr ""
6248
6249 #. type: textblock
6250 #: ../fish/guestfish-actions.pod:1231 ../src/guestfs-actions.pod:1842
6251 msgid ""
6252 "This command lists out all files and directories, recursively, starting at "
6253 "C<directory>, placing the resulting list in the external file called "
6254 "C<files>."
6255 msgstr ""
6256
6257 #. type: textblock
6258 #: ../fish/guestfish-actions.pod:1235
6259 msgid "This command works the same way as L</find> with the following exceptions:"
6260 msgstr ""
6261
6262 #. type: textblock
6263 #: ../fish/guestfish-actions.pod:1242 ../src/guestfs-actions.pod:1853
6264 msgid "The resulting list is written to an external file."
6265 msgstr ""
6266
6267 #. type: textblock
6268 #: ../fish/guestfish-actions.pod:1246 ../src/guestfs-actions.pod:1857
6269 msgid ""
6270 "Items (filenames) in the result are separated by C<\\0> characters.  See "
6271 "L<find(1)> option I<-print0>."
6272 msgstr ""
6273
6274 #. type: textblock
6275 #: ../fish/guestfish-actions.pod:1251 ../src/guestfs-actions.pod:1862
6276 msgid "This command is not limited in the number of names that it can return."
6277 msgstr ""
6278
6279 #. type: textblock
6280 #: ../fish/guestfish-actions.pod:1256 ../src/guestfs-actions.pod:1867
6281 msgid "The result list is not sorted."
6282 msgstr ""
6283
6284 #. type: =head2
6285 #: ../fish/guestfish-actions.pod:1262
6286 msgid "findfs-label"
6287 msgstr ""
6288
6289 #. type: verbatim
6290 #: ../fish/guestfish-actions.pod:1264
6291 #, no-wrap
6292 msgid ""
6293 " findfs-label label\n"
6294 "\n"
6295 msgstr ""
6296
6297 #. type: textblock
6298 #: ../fish/guestfish-actions.pod:1266 ../src/guestfs-actions.pod:1881
6299 msgid ""
6300 "This command searches the filesystems and returns the one which has the "
6301 "given label.  An error is returned if no such filesystem can be found."
6302 msgstr ""
6303
6304 #. type: textblock
6305 #: ../fish/guestfish-actions.pod:1270
6306 msgid "To find the label of a filesystem, use L</vfs-label>."
6307 msgstr ""
6308
6309 #. type: =head2
6310 #: ../fish/guestfish-actions.pod:1272
6311 msgid "findfs-uuid"
6312 msgstr ""
6313
6314 #. type: verbatim
6315 #: ../fish/guestfish-actions.pod:1274
6316 #, no-wrap
6317 msgid ""
6318 " findfs-uuid uuid\n"
6319 "\n"
6320 msgstr ""
6321
6322 #. type: textblock
6323 #: ../fish/guestfish-actions.pod:1276 ../src/guestfs-actions.pod:1898
6324 msgid ""
6325 "This command searches the filesystems and returns the one which has the "
6326 "given UUID.  An error is returned if no such filesystem can be found."
6327 msgstr ""
6328
6329 #. type: textblock
6330 #: ../fish/guestfish-actions.pod:1280
6331 msgid "To find the UUID of a filesystem, use L</vfs-uuid>."
6332 msgstr ""
6333
6334 #. type: =head2
6335 #: ../fish/guestfish-actions.pod:1282
6336 msgid "fsck"
6337 msgstr ""
6338
6339 #. type: verbatim
6340 #: ../fish/guestfish-actions.pod:1284
6341 #, no-wrap
6342 msgid ""
6343 " fsck fstype device\n"
6344 "\n"
6345 msgstr ""
6346
6347 #. type: textblock
6348 #: ../fish/guestfish-actions.pod:1286 ../src/guestfs-actions.pod:1916
6349 msgid ""
6350 "This runs the filesystem checker (fsck) on C<device> which should have "
6351 "filesystem type C<fstype>."
6352 msgstr ""
6353
6354 #. type: textblock
6355 #: ../fish/guestfish-actions.pod:1289 ../src/guestfs-actions.pod:1919
6356 msgid ""
6357 "The returned integer is the status.  See L<fsck(8)> for the list of status "
6358 "codes from C<fsck>."
6359 msgstr ""
6360
6361 #. type: textblock
6362 #: ../fish/guestfish-actions.pod:1298 ../src/guestfs-actions.pod:1928
6363 msgid "Multiple status codes can be summed together."
6364 msgstr ""
6365
6366 #. type: textblock
6367 #: ../fish/guestfish-actions.pod:1302 ../src/guestfs-actions.pod:1932
6368 msgid ""
6369 "A non-zero return code can mean \"success\", for example if errors have been "
6370 "corrected on the filesystem."
6371 msgstr ""
6372
6373 #. type: textblock
6374 #: ../fish/guestfish-actions.pod:1307 ../src/guestfs-actions.pod:1937
6375 msgid "Checking or repairing NTFS volumes is not supported (by linux-ntfs)."
6376 msgstr ""
6377
6378 #. type: textblock
6379 #: ../fish/guestfish-actions.pod:1312 ../src/guestfs-actions.pod:1942
6380 msgid "This command is entirely equivalent to running C<fsck -a -t fstype device>."
6381 msgstr ""
6382
6383 #. type: =head2
6384 #: ../fish/guestfish-actions.pod:1314
6385 msgid "get-append"
6386 msgstr ""
6387
6388 #. type: verbatim
6389 #: ../fish/guestfish-actions.pod:1316
6390 #, no-wrap
6391 msgid ""
6392 " get-append\n"
6393 "\n"
6394 msgstr ""
6395
6396 #. type: textblock
6397 #: ../fish/guestfish-actions.pod:1318 ../src/guestfs-actions.pod:1953
6398 msgid ""
6399 "Return the additional kernel options which are added to the guest kernel "
6400 "command line."
6401 msgstr ""
6402
6403 #. type: textblock
6404 #: ../fish/guestfish-actions.pod:1321 ../src/guestfs-actions.pod:1956
6405 msgid "If C<NULL> then no options are added."
6406 msgstr ""
6407
6408 #. type: =head2
6409 #: ../fish/guestfish-actions.pod:1323
6410 msgid "get-attach-method"
6411 msgstr ""
6412
6413 #. type: verbatim
6414 #: ../fish/guestfish-actions.pod:1325
6415 #, no-wrap
6416 msgid ""
6417 " get-attach-method\n"
6418 "\n"
6419 msgstr ""
6420
6421 #. type: textblock
6422 #: ../fish/guestfish-actions.pod:1327
6423 msgid "Return the current attach method.  See L</set-attach-method>."
6424 msgstr ""
6425
6426 #. type: =head2
6427 #: ../fish/guestfish-actions.pod:1329
6428 msgid "get-autosync"
6429 msgstr ""
6430
6431 #. type: verbatim
6432 #: ../fish/guestfish-actions.pod:1331
6433 #, no-wrap
6434 msgid ""
6435 " get-autosync\n"
6436 "\n"
6437 msgstr ""
6438
6439 #. type: textblock
6440 #: ../fish/guestfish-actions.pod:1333 ../src/guestfs-actions.pod:1981
6441 msgid "Get the autosync flag."
6442 msgstr ""
6443
6444 #. type: =head2
6445 #: ../fish/guestfish-actions.pod:1335
6446 msgid "get-direct"
6447 msgstr ""
6448
6449 #. type: verbatim
6450 #: ../fish/guestfish-actions.pod:1337
6451 #, no-wrap
6452 msgid ""
6453 " get-direct\n"
6454 "\n"
6455 msgstr ""
6456
6457 #. type: textblock
6458 #: ../fish/guestfish-actions.pod:1339 ../src/guestfs-actions.pod:1992
6459 msgid "Return the direct appliance mode flag."
6460 msgstr ""
6461
6462 #. type: =head2
6463 #: ../fish/guestfish-actions.pod:1341
6464 msgid "get-e2label"
6465 msgstr ""
6466
6467 #. type: verbatim
6468 #: ../fish/guestfish-actions.pod:1343
6469 #, no-wrap
6470 msgid ""
6471 " get-e2label device\n"
6472 "\n"
6473 msgstr ""
6474
6475 #. type: textblock
6476 #: ../fish/guestfish-actions.pod:1345 ../src/guestfs-actions.pod:2011
6477 msgid "This returns the ext2/3/4 filesystem label of the filesystem on C<device>."
6478 msgstr ""
6479
6480 #. type: textblock
6481 #: ../fish/guestfish-actions.pod:1348
6482 msgid ""
6483 "I<This function is deprecated.> In new code, use the L</vfs_label> call "
6484 "instead."
6485 msgstr ""
6486
6487 #. type: =head2
6488 #: ../fish/guestfish-actions.pod:1355
6489 msgid "get-e2uuid"
6490 msgstr ""
6491
6492 #. type: verbatim
6493 #: ../fish/guestfish-actions.pod:1357
6494 #, no-wrap
6495 msgid ""
6496 " get-e2uuid device\n"
6497 "\n"
6498 msgstr ""
6499
6500 #. type: textblock
6501 #: ../fish/guestfish-actions.pod:1359 ../src/guestfs-actions.pod:2032
6502 msgid "This returns the ext2/3/4 filesystem UUID of the filesystem on C<device>."
6503 msgstr ""
6504
6505 #. type: textblock
6506 #: ../fish/guestfish-actions.pod:1362
6507 msgid ""
6508 "I<This function is deprecated.> In new code, use the L</vfs_uuid> call "
6509 "instead."
6510 msgstr ""
6511
6512 #. type: =head2
6513 #: ../fish/guestfish-actions.pod:1369
6514 msgid "get-memsize"
6515 msgstr ""
6516
6517 #. type: verbatim
6518 #: ../fish/guestfish-actions.pod:1371
6519 #, no-wrap
6520 msgid ""
6521 " get-memsize\n"
6522 "\n"
6523 msgstr ""
6524
6525 #. type: textblock
6526 #: ../fish/guestfish-actions.pod:1373 ../src/guestfs-actions.pod:2045
6527 msgid "This gets the memory size in megabytes allocated to the qemu subprocess."
6528 msgstr ""
6529
6530 #. type: textblock
6531 #: ../fish/guestfish-actions.pod:1376
6532 msgid ""
6533 "If L</set-memsize> was not called on this handle, and if "
6534 "C<LIBGUESTFS_MEMSIZE> was not set, then this returns the compiled-in default "
6535 "value for memsize."
6536 msgstr ""
6537
6538 #. type: textblock
6539 #: ../fish/guestfish-actions.pod:1380 ../fish/guestfish-actions.pod:1437 ../fish/guestfish-actions.pod:4168 ../fish/guestfish-actions.pod:4270 ../src/guestfs-actions.pod:2052 ../src/guestfs-actions.pod:2144 ../src/guestfs-actions.pod:6298 ../src/guestfs-actions.pod:6424
6540 msgid "For more information on the architecture of libguestfs, see L<guestfs(3)>."
6541 msgstr ""
6542
6543 #. type: =head2
6544 #: ../fish/guestfish-actions.pod:1383
6545 msgid "get-network"
6546 msgstr ""
6547
6548 #. type: verbatim
6549 #: ../fish/guestfish-actions.pod:1385
6550 #, no-wrap
6551 msgid ""
6552 " get-network\n"
6553 "\n"
6554 msgstr ""
6555
6556 #. type: textblock
6557 #: ../fish/guestfish-actions.pod:1387 ../src/guestfs-actions.pod:2064
6558 msgid "This returns the enable network flag."
6559 msgstr ""
6560
6561 #. type: =head2
6562 #: ../fish/guestfish-actions.pod:1389
6563 msgid "get-path"
6564 msgstr ""
6565
6566 #. type: verbatim
6567 #: ../fish/guestfish-actions.pod:1391
6568 #, no-wrap
6569 msgid ""
6570 " get-path\n"
6571 "\n"
6572 msgstr ""
6573
6574 #. type: textblock
6575 #: ../fish/guestfish-actions.pod:1393 ../src/guestfs-actions.pod:2075
6576 msgid "Return the current search path."
6577 msgstr ""
6578
6579 #. type: textblock
6580 #: ../fish/guestfish-actions.pod:1395 ../src/guestfs-actions.pod:2077
6581 msgid ""
6582 "This is always non-NULL.  If it wasn't set already, then this will return "
6583 "the default path."
6584 msgstr ""
6585
6586 #. type: =head2
6587 #: ../fish/guestfish-actions.pod:1398
6588 msgid "get-pgroup"
6589 msgstr ""
6590
6591 #. type: verbatim
6592 #: ../fish/guestfish-actions.pod:1400
6593 #, no-wrap
6594 msgid ""
6595 " get-pgroup\n"
6596 "\n"
6597 msgstr ""
6598
6599 #. type: textblock
6600 #: ../fish/guestfish-actions.pod:1402 ../src/guestfs-actions.pod:2090
6601 msgid "This returns the process group flag."
6602 msgstr ""
6603
6604 #. type: =head2
6605 #: ../fish/guestfish-actions.pod:1404
6606 msgid "get-pid"
6607 msgstr ""
6608
6609 #. type: =head2
6610 #: ../fish/guestfish-actions.pod:1406
6611 msgid "pid"
6612 msgstr ""
6613
6614 #. type: verbatim
6615 #: ../fish/guestfish-actions.pod:1408
6616 #, no-wrap
6617 msgid ""
6618 " get-pid\n"
6619 "\n"
6620 msgstr ""
6621
6622 #. type: textblock
6623 #: ../fish/guestfish-actions.pod:1410 ../src/guestfs-actions.pod:2101
6624 msgid ""
6625 "Return the process ID of the qemu subprocess.  If there is no qemu "
6626 "subprocess, then this will return an error."
6627 msgstr ""
6628
6629 #. type: textblock
6630 #: ../fish/guestfish-actions.pod:1413 ../src/guestfs-actions.pod:2104
6631 msgid "This is an internal call used for debugging and testing."
6632 msgstr ""
6633
6634 #. type: =head2
6635 #: ../fish/guestfish-actions.pod:1415
6636 msgid "get-qemu"
6637 msgstr ""
6638
6639 #. type: verbatim
6640 #: ../fish/guestfish-actions.pod:1417
6641 #, no-wrap
6642 msgid ""
6643 " get-qemu\n"
6644 "\n"
6645 msgstr ""
6646
6647 #. type: textblock
6648 #: ../fish/guestfish-actions.pod:1419 ../src/guestfs-actions.pod:2115
6649 msgid "Return the current qemu binary."
6650 msgstr ""
6651
6652 #. type: textblock
6653 #: ../fish/guestfish-actions.pod:1421 ../src/guestfs-actions.pod:2117
6654 msgid ""
6655 "This is always non-NULL.  If it wasn't set already, then this will return "
6656 "the default qemu binary name."
6657 msgstr ""
6658
6659 #. type: =head2
6660 #: ../fish/guestfish-actions.pod:1424
6661 msgid "get-recovery-proc"
6662 msgstr ""
6663
6664 #. type: verbatim
6665 #: ../fish/guestfish-actions.pod:1426
6666 #, no-wrap
6667 msgid ""
6668 " get-recovery-proc\n"
6669 "\n"
6670 msgstr ""
6671
6672 #. type: textblock
6673 #: ../fish/guestfish-actions.pod:1428 ../src/guestfs-actions.pod:2130
6674 msgid "Return the recovery process enabled flag."
6675 msgstr ""
6676
6677 #. type: =head2
6678 #: ../fish/guestfish-actions.pod:1430
6679 msgid "get-selinux"
6680 msgstr ""
6681
6682 #. type: verbatim
6683 #: ../fish/guestfish-actions.pod:1432
6684 #, no-wrap
6685 msgid ""
6686 " get-selinux\n"
6687 "\n"
6688 msgstr ""
6689
6690 #. type: textblock
6691 #: ../fish/guestfish-actions.pod:1434
6692 msgid ""
6693 "This returns the current setting of the selinux flag which is passed to the "
6694 "appliance at boot time.  See L</set-selinux>."
6695 msgstr ""
6696
6697 #. type: =head2
6698 #: ../fish/guestfish-actions.pod:1440
6699 msgid "get-state"
6700 msgstr ""
6701
6702 #. type: verbatim
6703 #: ../fish/guestfish-actions.pod:1442
6704 #, no-wrap
6705 msgid ""
6706 " get-state\n"
6707 "\n"
6708 msgstr ""
6709
6710 #. type: textblock
6711 #: ../fish/guestfish-actions.pod:1444 ../src/guestfs-actions.pod:2156
6712 msgid ""
6713 "This returns the current state as an opaque integer.  This is only useful "
6714 "for printing debug and internal error messages."
6715 msgstr ""
6716
6717 #. type: textblock
6718 #: ../fish/guestfish-actions.pod:1447 ../fish/guestfish-actions.pod:2367 ../fish/guestfish-actions.pod:2385 ../fish/guestfish-actions.pod:2423 ../fish/guestfish-actions.pod:2439 ../src/guestfs-actions.pod:2159 ../src/guestfs-actions.pod:3439 ../src/guestfs-actions.pod:3468 ../src/guestfs-actions.pod:3529 ../src/guestfs-actions.pod:3556
6719 msgid "For more information on states, see L<guestfs(3)>."
6720 msgstr ""
6721
6722 #. type: =head2
6723 #: ../fish/guestfish-actions.pod:1449
6724 msgid "get-trace"
6725 msgstr ""
6726
6727 #. type: verbatim
6728 #: ../fish/guestfish-actions.pod:1451
6729 #, no-wrap
6730 msgid ""
6731 " get-trace\n"
6732 "\n"
6733 msgstr ""
6734
6735 #. type: textblock
6736 #: ../fish/guestfish-actions.pod:1453 ../src/guestfs-actions.pod:2170
6737 msgid "Return the command trace flag."
6738 msgstr ""
6739
6740 #. type: =head2
6741 #: ../fish/guestfish-actions.pod:1455
6742 msgid "get-umask"
6743 msgstr ""
6744
6745 #. type: verbatim
6746 #: ../fish/guestfish-actions.pod:1457
6747 #, no-wrap
6748 msgid ""
6749 " get-umask\n"
6750 "\n"
6751 msgstr ""
6752
6753 #. type: textblock
6754 #: ../fish/guestfish-actions.pod:1459
6755 msgid ""
6756 "Return the current umask.  By default the umask is C<022> unless it has been "
6757 "set by calling L</umask>."
6758 msgstr ""
6759
6760 #. type: =head2
6761 #: ../fish/guestfish-actions.pod:1462
6762 msgid "get-verbose"
6763 msgstr ""
6764
6765 #. type: verbatim
6766 #: ../fish/guestfish-actions.pod:1464
6767 #, no-wrap
6768 msgid ""
6769 " get-verbose\n"
6770 "\n"
6771 msgstr ""
6772
6773 #. type: textblock
6774 #: ../fish/guestfish-actions.pod:1466 ../src/guestfs-actions.pod:2193
6775 msgid "This returns the verbose messages flag."
6776 msgstr ""
6777
6778 #. type: =head2
6779 #: ../fish/guestfish-actions.pod:1468
6780 msgid "getcon"
6781 msgstr ""
6782
6783 #. type: verbatim
6784 #: ../fish/guestfish-actions.pod:1470
6785 #, no-wrap
6786 msgid ""
6787 " getcon\n"
6788 "\n"
6789 msgstr ""
6790
6791 #. type: textblock
6792 #: ../fish/guestfish-actions.pod:1472 ../src/guestfs-actions.pod:2204
6793 msgid "This gets the SELinux security context of the daemon."
6794 msgstr ""
6795
6796 #. type: textblock
6797 #: ../fish/guestfish-actions.pod:1474
6798 msgid "See the documentation about SELINUX in L<guestfs(3)>, and L</setcon>"
6799 msgstr ""
6800
6801 #. type: =head2
6802 #: ../fish/guestfish-actions.pod:1477
6803 msgid "getxattr"
6804 msgstr ""
6805
6806 #. type: verbatim
6807 #: ../fish/guestfish-actions.pod:1479
6808 #, no-wrap
6809 msgid ""
6810 " getxattr path name\n"
6811 "\n"
6812 msgstr ""
6813
6814 #. type: textblock
6815 #: ../fish/guestfish-actions.pod:1481
6816 msgid ""
6817 "Get a single extended attribute from file C<path> named C<name>.  This call "
6818 "follows symlinks.  If you want to lookup an extended attribute for the "
6819 "symlink itself, use L</lgetxattr>."
6820 msgstr ""
6821
6822 #. type: textblock
6823 #: ../fish/guestfish-actions.pod:1485 ../fish/guestfish-actions.pod:2512
6824 msgid ""
6825 "Normally it is better to get all extended attributes from a file in one go "
6826 "by calling L</getxattrs>.  However some Linux filesystem implementations are "
6827 "buggy and do not provide a way to list out attributes.  For these "
6828 "filesystems (notably ntfs-3g)  you have to know the names of the extended "
6829 "attributes you want in advance and call this function."
6830 msgstr ""
6831
6832 #. type: textblock
6833 #: ../fish/guestfish-actions.pod:1492 ../fish/guestfish-actions.pod:2519 ../src/guestfs-actions.pod:2233 ../src/guestfs-actions.pod:3689
6834 msgid ""
6835 "Extended attribute values are blobs of binary data.  If there is no extended "
6836 "attribute named C<name>, this returns an error."
6837 msgstr ""
6838
6839 #. type: textblock
6840 #: ../fish/guestfish-actions.pod:1495
6841 msgid "See also: L</getxattrs>, L</lgetxattr>, L<attr(5)>."
6842 msgstr ""
6843
6844 #. type: =head2
6845 #: ../fish/guestfish-actions.pod:1497
6846 msgid "getxattrs"
6847 msgstr ""
6848
6849 #. type: verbatim
6850 #: ../fish/guestfish-actions.pod:1499
6851 #, no-wrap
6852 msgid ""
6853 " getxattrs path\n"
6854 "\n"
6855 msgstr ""
6856
6857 #. type: textblock
6858 #: ../fish/guestfish-actions.pod:1501 ../src/guestfs-actions.pod:2250
6859 msgid "This call lists the extended attributes of the file or directory C<path>."
6860 msgstr ""
6861
6862 #. type: textblock
6863 #: ../fish/guestfish-actions.pod:1504 ../src/guestfs-actions.pod:2253
6864 msgid ""
6865 "At the system call level, this is a combination of the L<listxattr(2)> and "
6866 "L<getxattr(2)> calls."
6867 msgstr ""
6868
6869 #. type: textblock
6870 #: ../fish/guestfish-actions.pod:1507
6871 msgid "See also: L</lgetxattrs>, L<attr(5)>."
6872 msgstr ""
6873
6874 #. type: =head2
6875 #: ../fish/guestfish-actions.pod:1509
6876 msgid "glob-expand"
6877 msgstr ""
6878
6879 #. type: verbatim
6880 #: ../fish/guestfish-actions.pod:1511
6881 #, no-wrap
6882 msgid ""
6883 " glob-expand pattern\n"
6884 "\n"
6885 msgstr ""
6886
6887 #. type: textblock
6888 #: ../fish/guestfish-actions.pod:1513 ../src/guestfs-actions.pod:2270
6889 msgid ""
6890 "This command searches for all the pathnames matching C<pattern> according to "
6891 "the wildcard expansion rules used by the shell."
6892 msgstr ""
6893
6894 #. type: textblock
6895 #: ../fish/guestfish-actions.pod:1517 ../src/guestfs-actions.pod:2274
6896 msgid "If no paths match, then this returns an empty list (note: not an error)."
6897 msgstr ""
6898
6899 #. type: textblock
6900 #: ../fish/guestfish-actions.pod:1520 ../src/guestfs-actions.pod:2277
6901 msgid ""
6902 "It is just a wrapper around the C L<glob(3)> function with flags "
6903 "C<GLOB_MARK|GLOB_BRACE>.  See that manual page for more details."
6904 msgstr ""
6905
6906 #. type: =head2
6907 #: ../fish/guestfish-actions.pod:1524
6908 msgid "grep"
6909 msgstr ""
6910
6911 #. type: verbatim
6912 #: ../fish/guestfish-actions.pod:1526
6913 #, no-wrap
6914 msgid ""
6915 " grep regex path\n"
6916 "\n"
6917 msgstr ""
6918
6919 #. type: textblock
6920 #: ../fish/guestfish-actions.pod:1528 ../src/guestfs-actions.pod:2294
6921 msgid "This calls the external C<grep> program and returns the matching lines."
6922 msgstr ""
6923
6924 #. type: =head2
6925 #: ../fish/guestfish-actions.pod:1534
6926 msgid "grepi"
6927 msgstr ""
6928
6929 #. type: verbatim
6930 #: ../fish/guestfish-actions.pod:1536
6931 #, no-wrap
6932 msgid ""
6933 " grepi regex path\n"
6934 "\n"
6935 msgstr ""
6936
6937 #. type: textblock
6938 #: ../fish/guestfish-actions.pod:1538 ../src/guestfs-actions.pod:2313
6939 msgid "This calls the external C<grep -i> program and returns the matching lines."
6940 msgstr ""
6941
6942 #. type: =head2
6943 #: ../fish/guestfish-actions.pod:1544
6944 msgid "grub-install"
6945 msgstr ""
6946
6947 #. type: verbatim
6948 #: ../fish/guestfish-actions.pod:1546
6949 #, no-wrap
6950 msgid ""
6951 " grub-install root device\n"
6952 "\n"
6953 msgstr ""
6954
6955 #. type: textblock
6956 #: ../fish/guestfish-actions.pod:1548 ../src/guestfs-actions.pod:2332
6957 msgid ""
6958 "This command installs GRUB (the Grand Unified Bootloader) on C<device>, with "
6959 "the root directory being C<root>."
6960 msgstr ""
6961
6962 #. type: textblock
6963 #: ../fish/guestfish-actions.pod:1551 ../src/guestfs-actions.pod:2335
6964 msgid ""
6965 "Note: If grub-install reports the error \"No suitable drive was found in the "
6966 "generated device map.\" it may be that you need to create a "
6967 "C</boot/grub/device.map> file first that contains the mapping between grub "
6968 "device names and Linux device names.  It is usually sufficient to create a "
6969 "file containing:"
6970 msgstr ""
6971
6972 #. type: verbatim
6973 #: ../fish/guestfish-actions.pod:1558 ../src/guestfs-actions.pod:2342
6974 #, no-wrap
6975 msgid ""
6976 " (hd0) /dev/vda\n"
6977 "\n"
6978 msgstr ""
6979
6980 #. type: textblock
6981 #: ../fish/guestfish-actions.pod:1560 ../src/guestfs-actions.pod:2344
6982 msgid "replacing C</dev/vda> with the name of the installation device."
6983 msgstr ""
6984
6985 #. type: =head2
6986 #: ../fish/guestfish-actions.pod:1562
6987 msgid "head"
6988 msgstr ""
6989
6990 #. type: verbatim
6991 #: ../fish/guestfish-actions.pod:1564
6992 #, no-wrap
6993 msgid ""
6994 " head path\n"
6995 "\n"
6996 msgstr ""
6997
6998 #. type: textblock
6999 #: ../fish/guestfish-actions.pod:1566 ../src/guestfs-actions.pod:2356
7000 msgid ""
7001 "This command returns up to the first 10 lines of a file as a list of "
7002 "strings."
7003 msgstr ""
7004
7005 #. type: =head2
7006 #: ../fish/guestfish-actions.pod:1572
7007 msgid "head-n"
7008 msgstr ""
7009
7010 #. type: verbatim
7011 #: ../fish/guestfish-actions.pod:1574
7012 #, no-wrap
7013 msgid ""
7014 " head-n nrlines path\n"
7015 "\n"
7016 msgstr ""
7017
7018 #. type: textblock
7019 #: ../fish/guestfish-actions.pod:1576 ../src/guestfs-actions.pod:2375
7020 msgid ""
7021 "If the parameter C<nrlines> is a positive number, this returns the first "
7022 "C<nrlines> lines of the file C<path>."
7023 msgstr ""
7024
7025 #. type: textblock
7026 #: ../fish/guestfish-actions.pod:1579 ../src/guestfs-actions.pod:2378
7027 msgid ""
7028 "If the parameter C<nrlines> is a negative number, this returns lines from "
7029 "the file C<path>, excluding the last C<nrlines> lines."
7030 msgstr ""
7031
7032 #. type: textblock
7033 #: ../fish/guestfish-actions.pod:1582 ../fish/guestfish-actions.pod:4648 ../src/guestfs-actions.pod:2381 ../src/guestfs-actions.pod:6996
7034 msgid "If the parameter C<nrlines> is zero, this returns an empty list."
7035 msgstr ""
7036
7037 #. type: =head2
7038 #: ../fish/guestfish-actions.pod:1587
7039 msgid "hexdump"
7040 msgstr ""
7041
7042 #. type: verbatim
7043 #: ../fish/guestfish-actions.pod:1589
7044 #, no-wrap
7045 msgid ""
7046 " hexdump path\n"
7047 "\n"
7048 msgstr ""
7049
7050 #. type: textblock
7051 #: ../fish/guestfish-actions.pod:1591 ../src/guestfs-actions.pod:2398
7052 msgid ""
7053 "This runs C<hexdump -C> on the given C<path>.  The result is the "
7054 "human-readable, canonical hex dump of the file."
7055 msgstr ""
7056
7057 #. type: =head2
7058 #: ../fish/guestfish-actions.pod:1597
7059 msgid "initrd-cat"
7060 msgstr ""
7061
7062 #. type: verbatim
7063 #: ../fish/guestfish-actions.pod:1599
7064 #, no-wrap
7065 msgid ""
7066 " initrd-cat initrdpath filename\n"
7067 "\n"
7068 msgstr ""
7069
7070 #. type: textblock
7071 #: ../fish/guestfish-actions.pod:1601 ../src/guestfs-actions.pod:2417
7072 msgid ""
7073 "This command unpacks the file C<filename> from the initrd file called "
7074 "C<initrdpath>.  The filename must be given I<without> the initial C</> "
7075 "character."
7076 msgstr ""
7077
7078 #. type: textblock
7079 #: ../fish/guestfish-actions.pod:1605 ../src/guestfs-actions.pod:2421
7080 msgid ""
7081 "For example, in guestfish you could use the following command to examine the "
7082 "boot script (usually called C</init>)  contained in a Linux initrd or "
7083 "initramfs image:"
7084 msgstr ""
7085
7086 #. type: verbatim
7087 #: ../fish/guestfish-actions.pod:1609 ../src/guestfs-actions.pod:2425
7088 #, no-wrap
7089 msgid ""
7090 " initrd-cat /boot/initrd-<version>.img init\n"
7091 "\n"
7092 msgstr ""
7093
7094 #. type: textblock
7095 #: ../fish/guestfish-actions.pod:1611
7096 msgid "See also L</initrd-list>."
7097 msgstr ""
7098
7099 #. type: =head2
7100 #: ../fish/guestfish-actions.pod:1616
7101 msgid "initrd-list"
7102 msgstr ""
7103
7104 #. type: verbatim
7105 #: ../fish/guestfish-actions.pod:1618
7106 #, no-wrap
7107 msgid ""
7108 " initrd-list path\n"
7109 "\n"
7110 msgstr ""
7111
7112 #. type: textblock
7113 #: ../fish/guestfish-actions.pod:1620 ../src/guestfs-actions.pod:2444
7114 msgid "This command lists out files contained in an initrd."
7115 msgstr ""
7116
7117 #. type: textblock
7118 #: ../fish/guestfish-actions.pod:1622 ../src/guestfs-actions.pod:2446
7119 msgid ""
7120 "The files are listed without any initial C</> character.  The files are "
7121 "listed in the order they appear (not necessarily alphabetical).  Directory "
7122 "names are listed as separate items."
7123 msgstr ""
7124
7125 #. type: textblock
7126 #: ../fish/guestfish-actions.pod:1626 ../src/guestfs-actions.pod:2450
7127 msgid ""
7128 "Old Linux kernels (2.4 and earlier) used a compressed ext2 filesystem as "
7129 "initrd.  We I<only> support the newer initramfs format (compressed cpio "
7130 "files)."
7131 msgstr ""
7132
7133 #. type: =head2
7134 #: ../fish/guestfish-actions.pod:1630
7135 msgid "inotify-add-watch"
7136 msgstr ""
7137
7138 #. type: verbatim
7139 #: ../fish/guestfish-actions.pod:1632
7140 #, no-wrap
7141 msgid ""
7142 " inotify-add-watch path mask\n"
7143 "\n"
7144 msgstr ""
7145
7146 #. type: textblock
7147 #: ../fish/guestfish-actions.pod:1634 ../src/guestfs-actions.pod:2467
7148 msgid "Watch C<path> for the events listed in C<mask>."
7149 msgstr ""
7150
7151 #. type: textblock
7152 #: ../fish/guestfish-actions.pod:1636 ../src/guestfs-actions.pod:2469
7153 msgid ""
7154 "Note that if C<path> is a directory then events within that directory are "
7155 "watched, but this does I<not> happen recursively (in subdirectories)."
7156 msgstr ""
7157
7158 #. type: textblock
7159 #: ../fish/guestfish-actions.pod:1640 ../src/guestfs-actions.pod:2473
7160 msgid ""
7161 "Note for non-C or non-Linux callers: the inotify events are defined by the "
7162 "Linux kernel ABI and are listed in C</usr/include/sys/inotify.h>."
7163 msgstr ""
7164
7165 #. type: =head2
7166 #: ../fish/guestfish-actions.pod:1644
7167 msgid "inotify-close"
7168 msgstr ""
7169
7170 #. type: verbatim
7171 #: ../fish/guestfish-actions.pod:1646
7172 #, no-wrap
7173 msgid ""
7174 " inotify-close\n"
7175 "\n"
7176 msgstr ""
7177
7178 #. type: textblock
7179 #: ../fish/guestfish-actions.pod:1648 ../src/guestfs-actions.pod:2486
7180 msgid ""
7181 "This closes the inotify handle which was previously opened by inotify_init.  "
7182 "It removes all watches, throws away any pending events, and deallocates all "
7183 "resources."
7184 msgstr ""
7185
7186 #. type: =head2
7187 #: ../fish/guestfish-actions.pod:1652
7188 msgid "inotify-files"
7189 msgstr ""
7190
7191 #. type: verbatim
7192 #: ../fish/guestfish-actions.pod:1654
7193 #, no-wrap
7194 msgid ""
7195 " inotify-files\n"
7196 "\n"
7197 msgstr ""
7198
7199 #. type: textblock
7200 #: ../fish/guestfish-actions.pod:1656
7201 msgid ""
7202 "This function is a helpful wrapper around L</inotify-read> which just "
7203 "returns a list of pathnames of objects that were touched.  The returned "
7204 "pathnames are sorted and deduplicated."
7205 msgstr ""
7206
7207 #. type: =head2
7208 #: ../fish/guestfish-actions.pod:1660
7209 msgid "inotify-init"
7210 msgstr ""
7211
7212 #. type: verbatim
7213 #: ../fish/guestfish-actions.pod:1662
7214 #, no-wrap
7215 msgid ""
7216 " inotify-init maxevents\n"
7217 "\n"
7218 msgstr ""
7219
7220 #. type: textblock
7221 #: ../fish/guestfish-actions.pod:1664 ../src/guestfs-actions.pod:2515
7222 msgid ""
7223 "This command creates a new inotify handle.  The inotify subsystem can be "
7224 "used to notify events which happen to objects in the guest filesystem."
7225 msgstr ""
7226
7227 #. type: textblock
7228 #: ../fish/guestfish-actions.pod:1668
7229 msgid ""
7230 "C<maxevents> is the maximum number of events which will be queued up between "
7231 "calls to L</inotify-read> or L</inotify-files>.  If this is passed as C<0>, "
7232 "then the kernel (or previously set)  default is used.  For Linux 2.6.29 the "
7233 "default was 16384 events.  Beyond this limit, the kernel throws away events, "
7234 "but records the fact that it threw them away by setting a flag "
7235 "C<IN_Q_OVERFLOW> in the returned structure list (see L</inotify-read>)."
7236 msgstr ""
7237
7238 #. type: textblock
7239 #: ../fish/guestfish-actions.pod:1678
7240 msgid ""
7241 "Before any events are generated, you have to add some watches to the "
7242 "internal watch list.  See: L</inotify-add-watch>, L</inotify-rm-watch> and "
7243 "L</inotify-watch-all>."
7244 msgstr ""
7245
7246 #. type: textblock
7247 #: ../fish/guestfish-actions.pod:1684
7248 msgid ""
7249 "Queued up events should be read periodically by calling L</inotify-read> (or "
7250 "L</inotify-files> which is just a helpful wrapper around L</inotify-read>).  "
7251 "If you don't read the events out often enough then you risk the internal "
7252 "queue overflowing."
7253 msgstr ""
7254
7255 #. type: textblock
7256 #: ../fish/guestfish-actions.pod:1691
7257 msgid ""
7258 "The handle should be closed after use by calling L</inotify-close>.  This "
7259 "also removes any watches automatically."
7260 msgstr ""
7261
7262 #. type: textblock
7263 #: ../fish/guestfish-actions.pod:1695 ../src/guestfs-actions.pod:2546
7264 msgid ""
7265 "See also L<inotify(7)> for an overview of the inotify interface as exposed "
7266 "by the Linux kernel, which is roughly what we expose via libguestfs.  Note "
7267 "that there is one global inotify handle per libguestfs instance."
7268 msgstr ""
7269
7270 #. type: =head2
7271 #: ../fish/guestfish-actions.pod:1700
7272 msgid "inotify-read"
7273 msgstr ""
7274
7275 #. type: verbatim
7276 #: ../fish/guestfish-actions.pod:1702
7277 #, no-wrap
7278 msgid ""
7279 " inotify-read\n"
7280 "\n"
7281 msgstr ""
7282
7283 #. type: textblock
7284 #: ../fish/guestfish-actions.pod:1704 ../src/guestfs-actions.pod:2560
7285 msgid ""
7286 "Return the complete queue of events that have happened since the previous "
7287 "read call."
7288 msgstr ""
7289
7290 #. type: textblock
7291 #: ../fish/guestfish-actions.pod:1707 ../src/guestfs-actions.pod:2563
7292 msgid "If no events have happened, this returns an empty list."
7293 msgstr ""
7294
7295 #. type: textblock
7296 #: ../fish/guestfish-actions.pod:1709 ../src/guestfs-actions.pod:2565
7297 msgid ""
7298 "I<Note>: In order to make sure that all events have been read, you must call "
7299 "this function repeatedly until it returns an empty list.  The reason is that "
7300 "the call will read events up to the maximum appliance-to-host message size "
7301 "and leave remaining events in the queue."
7302 msgstr ""
7303
7304 #. type: =head2
7305 #: ../fish/guestfish-actions.pod:1715
7306 msgid "inotify-rm-watch"
7307 msgstr ""
7308
7309 #. type: verbatim
7310 #: ../fish/guestfish-actions.pod:1717
7311 #, no-wrap
7312 msgid ""
7313 " inotify-rm-watch wd\n"
7314 "\n"
7315 msgstr ""
7316
7317 #. type: textblock
7318 #: ../fish/guestfish-actions.pod:1719
7319 msgid "Remove a previously defined inotify watch.  See L</inotify-add-watch>."
7320 msgstr ""
7321
7322 #. type: =head2
7323 #: ../fish/guestfish-actions.pod:1722
7324 msgid "inspect-get-arch"
7325 msgstr ""
7326
7327 #. type: verbatim
7328 #: ../fish/guestfish-actions.pod:1724
7329 #, no-wrap
7330 msgid ""
7331 " inspect-get-arch root\n"
7332 "\n"
7333 msgstr ""
7334
7335 #. type: textblock
7336 #: ../fish/guestfish-actions.pod:1726
7337 msgid ""
7338 "This returns the architecture of the inspected operating system.  The "
7339 "possible return values are listed under L</file-architecture>."
7340 msgstr ""
7341
7342 #. type: textblock
7343 #: ../fish/guestfish-actions.pod:1730 ../src/guestfs-actions.pod:2600
7344 msgid ""
7345 "If the architecture could not be determined, then the string C<unknown> is "
7346 "returned."
7347 msgstr ""
7348
7349 #. type: textblock
7350 #: ../fish/guestfish-actions.pod:1733 ../fish/guestfish-actions.pod:1816 ../fish/guestfish-actions.pod:1895 ../fish/guestfish-actions.pod:1907 ../fish/guestfish-actions.pod:1991 ../fish/guestfish-actions.pod:2052 ../fish/guestfish-actions.pod:2073 ../fish/guestfish-actions.pod:2087 ../fish/guestfish-actions.pod:2127 ../fish/guestfish-actions.pod:2159 ../fish/guestfish-actions.pod:2172 ../fish/guestfish-actions.pod:2185 ../fish/guestfish-actions.pod:2195 ../fish/guestfish-actions.pod:2205 ../fish/guestfish-actions.pod:2217 ../fish/guestfish-actions.pod:2313 ../fish/guestfish-actions.pod:2347 ../src/guestfs-actions.pod:2603 ../src/guestfs-actions.pod:2693 ../src/guestfs-actions.pod:2797 ../src/guestfs-actions.pod:2816 ../src/guestfs-actions.pod:2947 ../src/guestfs-actions.pod:3030 ../src/guestfs-actions.pod:3058 ../src/guestfs-actions.pod:3079 ../src/guestfs-actions.pod:3132 ../src/guestfs-actions.pod:3172 ../src/guestfs-actions.pod:3192 ../src/guestfs-actions.pod:3212 ../src/guestfs-actions.pod:3229 ../src/guestfs-actions.pod:3245 ../src/guestfs-actions.pod:3263 ../src/guestfs-actions.pod:3365 ../src/guestfs-actions.pod:3406
7351 msgid "Please read L<guestfs(3)/INSPECTION> for more details."
7352 msgstr ""
7353
7354 #. type: =head2
7355 #: ../fish/guestfish-actions.pod:1735
7356 msgid "inspect-get-distro"
7357 msgstr ""
7358
7359 #. type: verbatim
7360 #: ../fish/guestfish-actions.pod:1737
7361 #, no-wrap
7362 msgid ""
7363 " inspect-get-distro root\n"
7364 "\n"
7365 msgstr ""
7366
7367 #. type: textblock
7368 #: ../fish/guestfish-actions.pod:1739 ../src/guestfs-actions.pod:2616
7369 msgid "This returns the distro (distribution) of the inspected operating system."
7370 msgstr ""
7371
7372 #. type: textblock
7373 #: ../fish/guestfish-actions.pod:1742 ../src/guestfs-actions.pod:2619
7374 msgid "Currently defined distros are:"
7375 msgstr ""
7376
7377 #. type: =item
7378 #: ../fish/guestfish-actions.pod:1746 ../src/guestfs-actions.pod:2623
7379 msgid "\"archlinux\""
7380 msgstr ""
7381
7382 #. type: textblock
7383 #: ../fish/guestfish-actions.pod:1748 ../src/guestfs-actions.pod:2625
7384 msgid "Arch Linux."
7385 msgstr ""
7386
7387 #. type: =item
7388 #: ../fish/guestfish-actions.pod:1750 ../src/guestfs-actions.pod:2627
7389 msgid "\"centos\""
7390 msgstr ""
7391
7392 #. type: textblock
7393 #: ../fish/guestfish-actions.pod:1752 ../src/guestfs-actions.pod:2629
7394 msgid "CentOS."
7395 msgstr ""
7396
7397 #. type: =item
7398 #: ../fish/guestfish-actions.pod:1754 ../src/guestfs-actions.pod:2631
7399 msgid "\"debian\""
7400 msgstr ""
7401
7402 #. type: textblock
7403 #: ../fish/guestfish-actions.pod:1756 ../src/guestfs-actions.pod:2633
7404 msgid "Debian."
7405 msgstr ""
7406
7407 #. type: =item
7408 #: ../fish/guestfish-actions.pod:1758 ../src/guestfs-actions.pod:2635
7409 msgid "\"fedora\""
7410 msgstr ""
7411
7412 #. type: textblock
7413 #: ../fish/guestfish-actions.pod:1760 ../src/guestfs-actions.pod:2637
7414 msgid "Fedora."
7415 msgstr ""
7416
7417 #. type: =item
7418 #: ../fish/guestfish-actions.pod:1762 ../src/guestfs-actions.pod:2639
7419 msgid "\"gentoo\""
7420 msgstr ""
7421
7422 #. type: textblock
7423 #: ../fish/guestfish-actions.pod:1764 ../src/guestfs-actions.pod:2641
7424 msgid "Gentoo."
7425 msgstr ""
7426
7427 #. type: =item
7428 #: ../fish/guestfish-actions.pod:1766 ../src/guestfs-actions.pod:2643
7429 msgid "\"linuxmint\""
7430 msgstr ""
7431
7432 #. type: textblock
7433 #: ../fish/guestfish-actions.pod:1768 ../src/guestfs-actions.pod:2645
7434 msgid "Linux Mint."
7435 msgstr ""
7436
7437 #. type: =item
7438 #: ../fish/guestfish-actions.pod:1770 ../src/guestfs-actions.pod:2647
7439 msgid "\"mandriva\""
7440 msgstr ""
7441
7442 #. type: textblock
7443 #: ../fish/guestfish-actions.pod:1772 ../src/guestfs-actions.pod:2649
7444 msgid "Mandriva."
7445 msgstr ""
7446
7447 #. type: =item
7448 #: ../fish/guestfish-actions.pod:1774 ../src/guestfs-actions.pod:2651
7449 msgid "\"meego\""
7450 msgstr ""
7451
7452 #. type: textblock
7453 #: ../fish/guestfish-actions.pod:1776 ../src/guestfs-actions.pod:2653
7454 msgid "MeeGo."
7455 msgstr ""
7456
7457 #. type: =item
7458 #: ../fish/guestfish-actions.pod:1778 ../src/guestfs-actions.pod:2655
7459 msgid "\"pardus\""
7460 msgstr ""
7461
7462 #. type: textblock
7463 #: ../fish/guestfish-actions.pod:1780 ../src/guestfs-actions.pod:2657
7464 msgid "Pardus."
7465 msgstr ""
7466
7467 #. type: =item
7468 #: ../fish/guestfish-actions.pod:1782 ../src/guestfs-actions.pod:2659
7469 msgid "\"redhat-based\""
7470 msgstr ""
7471
7472 #. type: textblock
7473 #: ../fish/guestfish-actions.pod:1784 ../src/guestfs-actions.pod:2661
7474 msgid "Some Red Hat-derived distro."
7475 msgstr ""
7476
7477 #. type: =item
7478 #: ../fish/guestfish-actions.pod:1786 ../src/guestfs-actions.pod:2663
7479 msgid "\"rhel\""
7480 msgstr ""
7481
7482 #. type: textblock
7483 #: ../fish/guestfish-actions.pod:1788 ../src/guestfs-actions.pod:2665
7484 msgid "Red Hat Enterprise Linux."
7485 msgstr ""
7486
7487 #. type: =item
7488 #: ../fish/guestfish-actions.pod:1790 ../src/guestfs-actions.pod:2667
7489 msgid "\"scientificlinux\""
7490 msgstr ""
7491
7492 #. type: textblock
7493 #: ../fish/guestfish-actions.pod:1792 ../src/guestfs-actions.pod:2669
7494 msgid "Scientific Linux."
7495 msgstr ""
7496
7497 #. type: =item
7498 #: ../fish/guestfish-actions.pod:1794 ../src/guestfs-actions.pod:2671
7499 msgid "\"slackware\""
7500 msgstr ""
7501
7502 #. type: textblock
7503 #: ../fish/guestfish-actions.pod:1796 ../src/guestfs-actions.pod:2673
7504 msgid "Slackware."
7505 msgstr ""
7506
7507 #. type: =item
7508 #: ../fish/guestfish-actions.pod:1798 ../src/guestfs-actions.pod:2675
7509 msgid "\"ubuntu\""
7510 msgstr ""
7511
7512 #. type: textblock
7513 #: ../fish/guestfish-actions.pod:1800 ../src/guestfs-actions.pod:2677
7514 msgid "Ubuntu."
7515 msgstr ""
7516
7517 #. type: =item
7518 #: ../fish/guestfish-actions.pod:1802 ../fish/guestfish-actions.pod:1886 ../fish/guestfish-actions.pod:2150 ../src/guestfs-actions.pod:2679 ../src/guestfs-actions.pod:2788 ../src/guestfs-actions.pod:3163
7519 msgid "\"unknown\""
7520 msgstr ""
7521
7522 #. type: textblock
7523 #: ../fish/guestfish-actions.pod:1804 ../src/guestfs-actions.pod:2681
7524 msgid "The distro could not be determined."
7525 msgstr ""
7526
7527 #. type: =item
7528 #: ../fish/guestfish-actions.pod:1806 ../fish/guestfish-actions.pod:2142 ../src/guestfs-actions.pod:2683 ../src/guestfs-actions.pod:3155
7529 msgid "\"windows\""
7530 msgstr ""
7531
7532 #. type: textblock
7533 #: ../fish/guestfish-actions.pod:1808 ../src/guestfs-actions.pod:2685
7534 msgid ""
7535 "Windows does not have distributions.  This string is returned if the OS type "
7536 "is Windows."
7537 msgstr ""
7538
7539 #. type: textblock
7540 #: ../fish/guestfish-actions.pod:1813 ../fish/guestfish-actions.pod:1892 ../fish/guestfish-actions.pod:2156 ../src/guestfs-actions.pod:2690 ../src/guestfs-actions.pod:2794 ../src/guestfs-actions.pod:3169
7541 msgid ""
7542 "Future versions of libguestfs may return other strings here.  The caller "
7543 "should be prepared to handle any string."
7544 msgstr ""
7545
7546 #. type: =head2
7547 #: ../fish/guestfish-actions.pod:1818
7548 msgid "inspect-get-drive-mappings"
7549 msgstr ""
7550
7551 #. type: verbatim
7552 #: ../fish/guestfish-actions.pod:1820
7553 #, no-wrap
7554 msgid ""
7555 " inspect-get-drive-mappings root\n"
7556 "\n"
7557 msgstr ""
7558
7559 #. type: textblock
7560 #: ../fish/guestfish-actions.pod:1822 ../src/guestfs-actions.pod:2706
7561 msgid ""
7562 "This call is useful for Windows which uses a primitive system of assigning "
7563 "drive letters (like \"C:\") to partitions.  This inspection API examines the "
7564 "Windows Registry to find out how disks/partitions are mapped to drive "
7565 "letters, and returns a hash table as in the example below:"
7566 msgstr ""
7567
7568 #. type: verbatim
7569 #: ../fish/guestfish-actions.pod:1828 ../src/guestfs-actions.pod:2712
7570 #, no-wrap
7571 msgid ""
7572 " C      =>     /dev/vda2\n"
7573 " E      =>     /dev/vdb1\n"
7574 " F      =>     /dev/vdc1\n"
7575 "\n"
7576 msgstr ""
7577
7578 #. type: textblock
7579 #: ../fish/guestfish-actions.pod:1832 ../src/guestfs-actions.pod:2716
7580 msgid ""
7581 "Note that keys are drive letters.  For Windows, the key is case insensitive "
7582 "and just contains the drive letter, without the customary colon separator "
7583 "character."
7584 msgstr ""
7585
7586 #. type: textblock
7587 #: ../fish/guestfish-actions.pod:1836 ../src/guestfs-actions.pod:2720
7588 msgid ""
7589 "In future we may support other operating systems that also used drive "
7590 "letters, but the keys for those might not be case insensitive and might be "
7591 "longer than 1 character.  For example in OS-9, hard drives were named C<h0>, "
7592 "C<h1> etc."
7593 msgstr ""
7594
7595 #. type: textblock
7596 #: ../fish/guestfish-actions.pod:1841 ../src/guestfs-actions.pod:2725
7597 msgid ""
7598 "For Windows guests, currently only hard drive mappings are returned.  "
7599 "Removable disks (eg. DVD-ROMs) are ignored."
7600 msgstr ""
7601
7602 #. type: textblock
7603 #: ../fish/guestfish-actions.pod:1844 ../src/guestfs-actions.pod:2728
7604 msgid ""
7605 "For guests that do not use drive mappings, or if the drive mappings could "
7606 "not be determined, this returns an empty hash table."
7607 msgstr ""
7608
7609 #. type: textblock
7610 #: ../fish/guestfish-actions.pod:1847
7611 msgid ""
7612 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
7613 "L</inspect-get-mountpoints>, L</inspect-get-filesystems>."
7614 msgstr ""
7615
7616 #. type: =head2
7617 #: ../fish/guestfish-actions.pod:1851
7618 msgid "inspect-get-filesystems"
7619 msgstr ""
7620
7621 #. type: verbatim
7622 #: ../fish/guestfish-actions.pod:1853
7623 #, no-wrap
7624 msgid ""
7625 " inspect-get-filesystems root\n"
7626 "\n"
7627 msgstr ""
7628
7629 #. type: textblock
7630 #: ../fish/guestfish-actions.pod:1855 ../src/guestfs-actions.pod:2749
7631 msgid ""
7632 "This returns a list of all the filesystems that we think are associated with "
7633 "this operating system.  This includes the root filesystem, other ordinary "
7634 "filesystems, and non-mounted devices like swap partitions."
7635 msgstr ""
7636
7637 #. type: textblock
7638 #: ../fish/guestfish-actions.pod:1860 ../src/guestfs-actions.pod:2754
7639 msgid ""
7640 "In the case of a multi-boot virtual machine, it is possible for a filesystem "
7641 "to be shared between operating systems."
7642 msgstr ""
7643
7644 #. type: textblock
7645 #: ../fish/guestfish-actions.pod:1863
7646 msgid ""
7647 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
7648 "L</inspect-get-mountpoints>."
7649 msgstr ""
7650
7651 #. type: =head2
7652 #: ../fish/guestfish-actions.pod:1866
7653 msgid "inspect-get-format"
7654 msgstr ""
7655
7656 #. type: verbatim
7657 #: ../fish/guestfish-actions.pod:1868
7658 #, no-wrap
7659 msgid ""
7660 " inspect-get-format root\n"
7661 "\n"
7662 msgstr ""
7663
7664 #. type: textblock
7665 #: ../fish/guestfish-actions.pod:1870 ../src/guestfs-actions.pod:2772
7666 msgid ""
7667 "This returns the format of the inspected operating system.  You can use it "
7668 "to detect install images, live CDs and similar."
7669 msgstr ""
7670
7671 #. type: textblock
7672 #: ../fish/guestfish-actions.pod:1873 ../src/guestfs-actions.pod:2775
7673 msgid "Currently defined formats are:"
7674 msgstr ""
7675
7676 #. type: =item
7677 #: ../fish/guestfish-actions.pod:1877 ../src/guestfs-actions.pod:2779
7678 msgid "\"installed\""
7679 msgstr ""
7680
7681 #. type: textblock
7682 #: ../fish/guestfish-actions.pod:1879 ../src/guestfs-actions.pod:2781
7683 msgid "This is an installed operating system."
7684 msgstr ""
7685
7686 #. type: =item
7687 #: ../fish/guestfish-actions.pod:1881 ../src/guestfs-actions.pod:2783
7688 msgid "\"installer\""
7689 msgstr ""
7690
7691 #. type: textblock
7692 #: ../fish/guestfish-actions.pod:1883 ../src/guestfs-actions.pod:2785
7693 msgid ""
7694 "The disk image being inspected is not an installed operating system, but a "
7695 "I<bootable> install disk, live CD, or similar."
7696 msgstr ""
7697
7698 #. type: textblock
7699 #: ../fish/guestfish-actions.pod:1888 ../src/guestfs-actions.pod:2790
7700 msgid "The format of this disk image is not known."
7701 msgstr ""
7702
7703 #. type: =head2
7704 #: ../fish/guestfish-actions.pod:1897
7705 msgid "inspect-get-hostname"
7706 msgstr ""
7707
7708 #. type: verbatim
7709 #: ../fish/guestfish-actions.pod:1899
7710 #, no-wrap
7711 msgid ""
7712 " inspect-get-hostname root\n"
7713 "\n"
7714 msgstr ""
7715
7716 #. type: textblock
7717 #: ../fish/guestfish-actions.pod:1901 ../src/guestfs-actions.pod:2810
7718 msgid ""
7719 "This function returns the hostname of the operating system as found by "
7720 "inspection of the guest's configuration files."
7721 msgstr ""
7722
7723 #. type: textblock
7724 #: ../fish/guestfish-actions.pod:1904 ../src/guestfs-actions.pod:2813
7725 msgid ""
7726 "If the hostname could not be determined, then the string C<unknown> is "
7727 "returned."
7728 msgstr ""
7729
7730 #. type: =head2
7731 #: ../fish/guestfish-actions.pod:1909
7732 msgid "inspect-get-icon"
7733 msgstr ""
7734
7735 #. type: verbatim
7736 #: ../fish/guestfish-actions.pod:1911
7737 #, no-wrap
7738 msgid ""
7739 " inspect-get-icon root [favicon:..] [highquality:..]\n"
7740 "\n"
7741 msgstr ""
7742
7743 #. type: textblock
7744 #: ../fish/guestfish-actions.pod:1913 ../src/guestfs-actions.pod:2839
7745 msgid ""
7746 "This function returns an icon corresponding to the inspected operating "
7747 "system.  The icon is returned as a buffer containing a PNG image (re-encoded "
7748 "to PNG if necessary)."
7749 msgstr ""
7750
7751 #. type: textblock
7752 #: ../fish/guestfish-actions.pod:1917 ../src/guestfs-actions.pod:2843
7753 msgid ""
7754 "If it was not possible to get an icon this function returns a zero-length "
7755 "(non-NULL) buffer.  I<Callers must check for this case>."
7756 msgstr ""
7757
7758 #. type: textblock
7759 #: ../fish/guestfish-actions.pod:1920 ../src/guestfs-actions.pod:2846
7760 msgid ""
7761 "Libguestfs will start by looking for a file called C</etc/favicon.png> or "
7762 "C<C:\\etc\\favicon.png> and if it has the correct format, the contents of "
7763 "this file will be returned.  You can disable favicons by passing the "
7764 "optional C<favicon> boolean as false (default is true)."
7765 msgstr ""
7766
7767 #. type: textblock
7768 #: ../fish/guestfish-actions.pod:1926 ../src/guestfs-actions.pod:2852
7769 msgid ""
7770 "If finding the favicon fails, then we look in other places in the guest for "
7771 "a suitable icon."
7772 msgstr ""
7773
7774 #. type: textblock
7775 #: ../fish/guestfish-actions.pod:1929 ../src/guestfs-actions.pod:2855
7776 msgid ""
7777 "If the optional C<highquality> boolean is true then only high quality icons "
7778 "are returned, which means only icons of high resolution with an alpha "
7779 "channel.  The default (false) is to return any icon we can, even if it is of "
7780 "substandard quality."
7781 msgstr ""
7782
7783 #. type: textblock
7784 #: ../fish/guestfish-actions.pod:1940 ../src/guestfs-actions.pod:2866
7785 msgid ""
7786 "Unlike most other inspection API calls, the guest's disks must be mounted up "
7787 "before you call this, since it needs to read information from the guest "
7788 "filesystem during the call."
7789 msgstr ""
7790
7791 #. type: textblock
7792 #: ../fish/guestfish-actions.pod:1946 ../src/guestfs-actions.pod:2872
7793 msgid ""
7794 "B<Security:> The icon data comes from the untrusted guest, and should be "
7795 "treated with caution.  PNG files have been known to contain exploits.  "
7796 "Ensure that libpng (or other relevant libraries) are fully up to date before "
7797 "trying to process or display the icon."
7798 msgstr ""
7799
7800 #. type: textblock
7801 #: ../fish/guestfish-actions.pod:1954 ../src/guestfs-actions.pod:2880
7802 msgid ""
7803 "The PNG image returned can be any size.  It might not be square.  Libguestfs "
7804 "tries to return the largest, highest quality icon available.  The "
7805 "application must scale the icon to the required size."
7806 msgstr ""
7807
7808 #. type: textblock
7809 #: ../fish/guestfish-actions.pod:1961 ../src/guestfs-actions.pod:2887
7810 msgid ""
7811 "Extracting icons from Windows guests requires the external C<wrestool> "
7812 "program from the C<icoutils> package, and several programs (C<bmptopnm>, "
7813 "C<pnmtopng>, C<pamcut>)  from the C<netpbm> package.  These must be "
7814 "installed separately."
7815 msgstr ""
7816
7817 #. type: textblock
7818 #: ../fish/guestfish-actions.pod:1968 ../src/guestfs-actions.pod:2894
7819 msgid ""
7820 "Operating system icons are usually trademarks.  Seek legal advice before "
7821 "using trademarks in applications."
7822 msgstr ""
7823
7824 #. type: =head2
7825 #: ../fish/guestfish-actions.pod:1975
7826 msgid "inspect-get-major-version"
7827 msgstr ""
7828
7829 #. type: verbatim
7830 #: ../fish/guestfish-actions.pod:1977
7831 #, no-wrap
7832 msgid ""
7833 " inspect-get-major-version root\n"
7834 "\n"
7835 msgstr ""
7836
7837 #. type: textblock
7838 #: ../fish/guestfish-actions.pod:1979 ../src/guestfs-actions.pod:2935
7839 msgid "This returns the major version number of the inspected operating system."
7840 msgstr ""
7841
7842 #. type: textblock
7843 #: ../fish/guestfish-actions.pod:1982 ../src/guestfs-actions.pod:2938
7844 msgid ""
7845 "Windows uses a consistent versioning scheme which is I<not> reflected in the "
7846 "popular public names used by the operating system.  Notably the operating "
7847 "system known as \"Windows 7\" is really version 6.1 (ie. major = 6, minor = "
7848 "1).  You can find out the real versions corresponding to releases of Windows "
7849 "by consulting Wikipedia or MSDN."
7850 msgstr ""
7851
7852 #. type: textblock
7853 #: ../fish/guestfish-actions.pod:1989 ../fish/guestfish-actions.pod:2000 ../src/guestfs-actions.pod:2945 ../src/guestfs-actions.pod:2962
7854 msgid "If the version could not be determined, then C<0> is returned."
7855 msgstr ""
7856
7857 #. type: =head2
7858 #: ../fish/guestfish-actions.pod:1993
7859 msgid "inspect-get-minor-version"
7860 msgstr ""
7861
7862 #. type: verbatim
7863 #: ../fish/guestfish-actions.pod:1995
7864 #, no-wrap
7865 msgid ""
7866 " inspect-get-minor-version root\n"
7867 "\n"
7868 msgstr ""
7869
7870 #. type: textblock
7871 #: ../fish/guestfish-actions.pod:1997 ../src/guestfs-actions.pod:2959
7872 msgid "This returns the minor version number of the inspected operating system."
7873 msgstr ""
7874
7875 #. type: textblock
7876 #: ../fish/guestfish-actions.pod:2002
7877 msgid ""
7878 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
7879 "L</inspect-get-major-version>."
7880 msgstr ""
7881
7882 #. type: =head2
7883 #: ../fish/guestfish-actions.pod:2005
7884 msgid "inspect-get-mountpoints"
7885 msgstr ""
7886
7887 #. type: verbatim
7888 #: ../fish/guestfish-actions.pod:2007
7889 #, no-wrap
7890 msgid ""
7891 " inspect-get-mountpoints root\n"
7892 "\n"
7893 msgstr ""
7894
7895 #. type: textblock
7896 #: ../fish/guestfish-actions.pod:2009 ../src/guestfs-actions.pod:2977
7897 msgid ""
7898 "This returns a hash of where we think the filesystems associated with this "
7899 "operating system should be mounted.  Callers should note that this is at "
7900 "best an educated guess made by reading configuration files such as "
7901 "C</etc/fstab>.  I<In particular note> that this may return filesystems which "
7902 "are non-existent or not mountable and callers should be prepared to handle "
7903 "or ignore failures if they try to mount them."
7904 msgstr ""
7905
7906 #. type: textblock
7907 #: ../fish/guestfish-actions.pod:2018 ../src/guestfs-actions.pod:2986
7908 msgid ""
7909 "Each element in the returned hashtable has a key which is the path of the "
7910 "mountpoint (eg. C</boot>) and a value which is the filesystem that would be "
7911 "mounted there (eg. C</dev/sda1>)."
7912 msgstr ""
7913
7914 #. type: textblock
7915 #: ../fish/guestfish-actions.pod:2023 ../src/guestfs-actions.pod:2991
7916 msgid "Non-mounted devices such as swap devices are I<not> returned in this list."
7917 msgstr ""
7918
7919 #. type: textblock
7920 #: ../fish/guestfish-actions.pod:2026
7921 msgid ""
7922 "For operating systems like Windows which still use drive letters, this call "
7923 "will only return an entry for the first drive \"mounted on\" C</>.  For "
7924 "information about the mapping of drive letters to partitions, see "
7925 "L</inspect-get-drive-mappings>."
7926 msgstr ""
7927
7928 #. type: textblock
7929 #: ../fish/guestfish-actions.pod:2032
7930 msgid ""
7931 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
7932 "L</inspect-get-filesystems>."
7933 msgstr ""
7934
7935 #. type: =head2
7936 #: ../fish/guestfish-actions.pod:2035
7937 msgid "inspect-get-package-format"
7938 msgstr ""
7939
7940 #. type: verbatim
7941 #: ../fish/guestfish-actions.pod:2037
7942 #, no-wrap
7943 msgid ""
7944 " inspect-get-package-format root\n"
7945 "\n"
7946 msgstr ""
7947
7948 #. type: textblock
7949 #: ../fish/guestfish-actions.pod:2039
7950 msgid ""
7951 "This function and L</inspect-get-package-management> return the package "
7952 "format and package management tool used by the inspected operating system.  "
7953 "For example for Fedora these functions would return C<rpm> (package format) "
7954 "and C<yum> (package management)."
7955 msgstr ""
7956
7957 #. type: textblock
7958 #: ../fish/guestfish-actions.pod:2045 ../src/guestfs-actions.pod:3023
7959 msgid ""
7960 "This returns the string C<unknown> if we could not determine the package "
7961 "format I<or> if the operating system does not have a real packaging system "
7962 "(eg. Windows)."
7963 msgstr ""
7964
7965 #. type: textblock
7966 #: ../fish/guestfish-actions.pod:2049 ../src/guestfs-actions.pod:3027
7967 msgid ""
7968 "Possible strings include: C<rpm>, C<deb>, C<ebuild>, C<pisi>, C<pacman>.  "
7969 "Future versions of libguestfs may return other strings."
7970 msgstr ""
7971
7972 #. type: =head2
7973 #: ../fish/guestfish-actions.pod:2054
7974 msgid "inspect-get-package-management"
7975 msgstr ""
7976
7977 #. type: verbatim
7978 #: ../fish/guestfish-actions.pod:2056
7979 #, no-wrap
7980 msgid ""
7981 " inspect-get-package-management root\n"
7982 "\n"
7983 msgstr ""
7984
7985 #. type: textblock
7986 #: ../fish/guestfish-actions.pod:2058
7987 msgid ""
7988 "L</inspect-get-package-format> and this function return the package format "
7989 "and package management tool used by the inspected operating system.  For "
7990 "example for Fedora these functions would return C<rpm> (package format) and "
7991 "C<yum> (package management)."
7992 msgstr ""
7993
7994 #. type: textblock
7995 #: ../fish/guestfish-actions.pod:2064 ../src/guestfs-actions.pod:3049
7996 msgid ""
7997 "This returns the string C<unknown> if we could not determine the package "
7998 "management tool I<or> if the operating system does not have a real packaging "
7999 "system (eg. Windows)."
8000 msgstr ""
8001
8002 #. type: textblock
8003 #: ../fish/guestfish-actions.pod:2068 ../src/guestfs-actions.pod:3053
8004 msgid ""
8005 "Possible strings include: C<yum>, C<up2date>, C<apt> (for all Debian "
8006 "derivatives), C<portage>, C<pisi>, C<pacman>, C<urpmi>.  Future versions of "
8007 "libguestfs may return other strings."
8008 msgstr ""
8009
8010 #. type: =head2
8011 #: ../fish/guestfish-actions.pod:2075
8012 msgid "inspect-get-product-name"
8013 msgstr ""
8014
8015 #. type: verbatim
8016 #: ../fish/guestfish-actions.pod:2077
8017 #, no-wrap
8018 msgid ""
8019 " inspect-get-product-name root\n"
8020 "\n"
8021 msgstr ""
8022
8023 #. type: textblock
8024 #: ../fish/guestfish-actions.pod:2079 ../src/guestfs-actions.pod:3071
8025 msgid ""
8026 "This returns the product name of the inspected operating system.  The "
8027 "product name is generally some freeform string which can be displayed to the "
8028 "user, but should not be parsed by programs."
8029 msgstr ""
8030
8031 #. type: textblock
8032 #: ../fish/guestfish-actions.pod:2084 ../src/guestfs-actions.pod:3076
8033 msgid ""
8034 "If the product name could not be determined, then the string C<unknown> is "
8035 "returned."
8036 msgstr ""
8037
8038 #. type: =head2
8039 #: ../fish/guestfish-actions.pod:2089
8040 msgid "inspect-get-product-variant"
8041 msgstr ""
8042
8043 #. type: verbatim
8044 #: ../fish/guestfish-actions.pod:2091
8045 #, no-wrap
8046 msgid ""
8047 " inspect-get-product-variant root\n"
8048 "\n"
8049 msgstr ""
8050
8051 #. type: textblock
8052 #: ../fish/guestfish-actions.pod:2093 ../src/guestfs-actions.pod:3092
8053 msgid "This returns the product variant of the inspected operating system."
8054 msgstr ""
8055
8056 #. type: textblock
8057 #: ../fish/guestfish-actions.pod:2096 ../src/guestfs-actions.pod:3095
8058 msgid ""
8059 "For Windows guests, this returns the contents of the Registry key "
8060 "C<HKLM\\Software\\Microsoft\\Windows NT\\CurrentVersion> C<InstallationType> "
8061 "which is usually a string such as C<Client> or C<Server> (other values are "
8062 "possible).  This can be used to distinguish consumer and enterprise versions "
8063 "of Windows that have the same version number (for example, Windows 7 and "
8064 "Windows 2008 Server are both version 6.1, but the former is C<Client> and "
8065 "the latter is C<Server>)."
8066 msgstr ""
8067
8068 #. type: textblock
8069 #: ../fish/guestfish-actions.pod:2105 ../src/guestfs-actions.pod:3104
8070 msgid ""
8071 "For enterprise Linux guests, in future we intend this to return the product "
8072 "variant such as C<Desktop>, C<Server> and so on.  But this is not "
8073 "implemented at present."
8074 msgstr ""
8075
8076 #. type: textblock
8077 #: ../fish/guestfish-actions.pod:2109 ../src/guestfs-actions.pod:3108
8078 msgid ""
8079 "If the product variant could not be determined, then the string C<unknown> "
8080 "is returned."
8081 msgstr ""
8082
8083 #. type: textblock
8084 #: ../fish/guestfish-actions.pod:2112
8085 msgid ""
8086 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
8087 "L</inspect-get-product-name>, L</inspect-get-major-version>."
8088 msgstr ""
8089
8090 #. type: =head2
8091 #: ../fish/guestfish-actions.pod:2116
8092 msgid "inspect-get-roots"
8093 msgstr ""
8094
8095 #. type: verbatim
8096 #: ../fish/guestfish-actions.pod:2118
8097 #, no-wrap
8098 msgid ""
8099 " inspect-get-roots\n"
8100 "\n"
8101 msgstr ""
8102
8103 #. type: textblock
8104 #: ../fish/guestfish-actions.pod:2120
8105 msgid ""
8106 "This function is a convenient way to get the list of root devices, as "
8107 "returned from a previous call to L</inspect-os>, but without redoing the "
8108 "whole inspection process."
8109 msgstr ""
8110
8111 #. type: textblock
8112 #: ../fish/guestfish-actions.pod:2124
8113 msgid ""
8114 "This returns an empty list if either no root devices were found or the "
8115 "caller has not called L</inspect-os>."
8116 msgstr ""
8117
8118 #. type: =head2
8119 #: ../fish/guestfish-actions.pod:2129
8120 msgid "inspect-get-type"
8121 msgstr ""
8122
8123 #. type: verbatim
8124 #: ../fish/guestfish-actions.pod:2131
8125 #, no-wrap
8126 msgid ""
8127 " inspect-get-type root\n"
8128 "\n"
8129 msgstr ""
8130
8131 #. type: textblock
8132 #: ../fish/guestfish-actions.pod:2133 ../src/guestfs-actions.pod:3146
8133 msgid ""
8134 "This returns the type of the inspected operating system.  Currently defined "
8135 "types are:"
8136 msgstr ""
8137
8138 #. type: =item
8139 #: ../fish/guestfish-actions.pod:2138 ../src/guestfs-actions.pod:3151
8140 msgid "\"linux\""
8141 msgstr ""
8142
8143 #. type: textblock
8144 #: ../fish/guestfish-actions.pod:2140 ../src/guestfs-actions.pod:3153
8145 msgid "Any Linux-based operating system."
8146 msgstr ""
8147
8148 #. type: textblock
8149 #: ../fish/guestfish-actions.pod:2144 ../src/guestfs-actions.pod:3157
8150 msgid "Any Microsoft Windows operating system."
8151 msgstr ""
8152
8153 #. type: =item
8154 #: ../fish/guestfish-actions.pod:2146 ../src/guestfs-actions.pod:3159
8155 msgid "\"freebsd\""
8156 msgstr ""
8157
8158 #. type: textblock
8159 #: ../fish/guestfish-actions.pod:2148 ../src/guestfs-actions.pod:3161
8160 msgid "FreeBSD."
8161 msgstr ""
8162
8163 #. type: textblock
8164 #: ../fish/guestfish-actions.pod:2152 ../src/guestfs-actions.pod:3165
8165 msgid "The operating system type could not be determined."
8166 msgstr ""
8167
8168 #. type: =head2
8169 #: ../fish/guestfish-actions.pod:2161
8170 msgid "inspect-get-windows-current-control-set"
8171 msgstr ""
8172
8173 #. type: verbatim
8174 #: ../fish/guestfish-actions.pod:2163
8175 #, no-wrap
8176 msgid ""
8177 " inspect-get-windows-current-control-set root\n"
8178 "\n"
8179 msgstr ""
8180
8181 #. type: textblock
8182 #: ../fish/guestfish-actions.pod:2165 ../src/guestfs-actions.pod:3185
8183 msgid ""
8184 "This returns the Windows CurrentControlSet of the inspected guest.  The "
8185 "CurrentControlSet is a registry key name such as C<ControlSet001>."
8186 msgstr ""
8187
8188 #. type: textblock
8189 #: ../fish/guestfish-actions.pod:2168 ../src/guestfs-actions.pod:3188
8190 msgid ""
8191 "This call assumes that the guest is Windows and that the Registry could be "
8192 "examined by inspection.  If this is not the case then an error is returned."
8193 msgstr ""
8194
8195 #. type: =head2
8196 #: ../fish/guestfish-actions.pod:2174
8197 msgid "inspect-get-windows-systemroot"
8198 msgstr ""
8199
8200 #. type: verbatim
8201 #: ../fish/guestfish-actions.pod:2176
8202 #, no-wrap
8203 msgid ""
8204 " inspect-get-windows-systemroot root\n"
8205 "\n"
8206 msgstr ""
8207
8208 #. type: textblock
8209 #: ../fish/guestfish-actions.pod:2178 ../src/guestfs-actions.pod:3205
8210 msgid ""
8211 "This returns the Windows systemroot of the inspected guest.  The systemroot "
8212 "is a directory path such as C</WINDOWS>."
8213 msgstr ""
8214
8215 #. type: textblock
8216 #: ../fish/guestfish-actions.pod:2181 ../src/guestfs-actions.pod:3208
8217 msgid ""
8218 "This call assumes that the guest is Windows and that the systemroot could be "
8219 "determined by inspection.  If this is not the case then an error is "
8220 "returned."
8221 msgstr ""
8222
8223 #. type: =head2
8224 #: ../fish/guestfish-actions.pod:2187
8225 msgid "inspect-is-live"
8226 msgstr ""
8227
8228 #. type: verbatim
8229 #: ../fish/guestfish-actions.pod:2189
8230 #, no-wrap
8231 msgid ""
8232 " inspect-is-live root\n"
8233 "\n"
8234 msgstr ""
8235
8236 #. type: textblock
8237 #: ../fish/guestfish-actions.pod:2191
8238 msgid ""
8239 "If L</inspect-get-format> returns C<installer> (this is an install disk), "
8240 "then this returns true if a live image was detected on the disk."
8241 msgstr ""
8242
8243 #. type: =head2
8244 #: ../fish/guestfish-actions.pod:2197
8245 msgid "inspect-is-multipart"
8246 msgstr ""
8247
8248 #. type: verbatim
8249 #: ../fish/guestfish-actions.pod:2199
8250 #, no-wrap
8251 msgid ""
8252 " inspect-is-multipart root\n"
8253 "\n"
8254 msgstr ""
8255
8256 #. type: textblock
8257 #: ../fish/guestfish-actions.pod:2201
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 part of a set."
8261 msgstr ""
8262
8263 #. type: =head2
8264 #: ../fish/guestfish-actions.pod:2207
8265 msgid "inspect-is-netinst"
8266 msgstr ""
8267
8268 #. type: verbatim
8269 #: ../fish/guestfish-actions.pod:2209
8270 #, no-wrap
8271 msgid ""
8272 " inspect-is-netinst root\n"
8273 "\n"
8274 msgstr ""
8275
8276 #. type: textblock
8277 #: ../fish/guestfish-actions.pod:2211
8278 msgid ""
8279 "If L</inspect-get-format> returns C<installer> (this is an install disk), "
8280 "then this returns true if the disk is a network installer, ie. not a "
8281 "self-contained install CD but one which is likely to require network access "
8282 "to complete the install."
8283 msgstr ""
8284
8285 #. type: =head2
8286 #: ../fish/guestfish-actions.pod:2219
8287 msgid "inspect-list-applications"
8288 msgstr ""
8289
8290 #. type: verbatim
8291 #: ../fish/guestfish-actions.pod:2221
8292 #, no-wrap
8293 msgid ""
8294 " inspect-list-applications root\n"
8295 "\n"
8296 msgstr ""
8297
8298 #. type: textblock
8299 #: ../fish/guestfish-actions.pod:2223 ../src/guestfs-actions.pod:3275
8300 msgid "Return the list of applications installed in the operating system."
8301 msgstr ""
8302
8303 #. type: textblock
8304 #: ../fish/guestfish-actions.pod:2225
8305 msgid ""
8306 "I<Note:> This call works differently from other parts of the inspection "
8307 "API.  You have to call L</inspect-os>, then L</inspect-get-mountpoints>, "
8308 "then mount up the disks, before calling this.  Listing applications is a "
8309 "significantly more difficult operation which requires access to the full "
8310 "filesystem.  Also note that unlike the other L</inspect-get-*> calls which "
8311 "are just returning data cached in the libguestfs handle, this call actually "
8312 "reads parts of the mounted filesystems during the call."
8313 msgstr ""
8314
8315 #. type: textblock
8316 #: ../fish/guestfish-actions.pod:2235 ../src/guestfs-actions.pod:3287
8317 msgid ""
8318 "This returns an empty list if the inspection code was not able to determine "
8319 "the list of applications."
8320 msgstr ""
8321
8322 #. type: textblock
8323 #: ../fish/guestfish-actions.pod:2238 ../src/guestfs-actions.pod:3290
8324 msgid "The application structure contains the following fields:"
8325 msgstr ""
8326
8327 #. type: =item
8328 #: ../fish/guestfish-actions.pod:2242 ../src/guestfs-actions.pod:3294
8329 msgid "C<app_name>"
8330 msgstr ""
8331
8332 #. type: textblock
8333 #: ../fish/guestfish-actions.pod:2244 ../src/guestfs-actions.pod:3296
8334 msgid ""
8335 "The name of the application.  For Red Hat-derived and Debian-derived Linux "
8336 "guests, this is the package name."
8337 msgstr ""
8338
8339 #. type: =item
8340 #: ../fish/guestfish-actions.pod:2247 ../src/guestfs-actions.pod:3299
8341 msgid "C<app_display_name>"
8342 msgstr ""
8343
8344 #. type: textblock
8345 #: ../fish/guestfish-actions.pod:2249 ../src/guestfs-actions.pod:3301
8346 msgid ""
8347 "The display name of the application, sometimes localized to the install "
8348 "language of the guest operating system."
8349 msgstr ""
8350
8351 #. type: textblock
8352 #: ../fish/guestfish-actions.pod:2252 ../src/guestfs-actions.pod:3304
8353 msgid ""
8354 "If unavailable this is returned as an empty string C<\"\">.  Callers needing "
8355 "to display something can use C<app_name> instead."
8356 msgstr ""
8357
8358 #. type: =item
8359 #: ../fish/guestfish-actions.pod:2255 ../src/guestfs-actions.pod:3307
8360 msgid "C<app_epoch>"
8361 msgstr ""
8362
8363 #. type: textblock
8364 #: ../fish/guestfish-actions.pod:2257 ../src/guestfs-actions.pod:3309
8365 msgid ""
8366 "For package managers which use epochs, this contains the epoch of the "
8367 "package (an integer).  If unavailable, this is returned as C<0>."
8368 msgstr ""
8369
8370 #. type: =item
8371 #: ../fish/guestfish-actions.pod:2260 ../src/guestfs-actions.pod:3312
8372 msgid "C<app_version>"
8373 msgstr ""
8374
8375 #. type: textblock
8376 #: ../fish/guestfish-actions.pod:2262 ../src/guestfs-actions.pod:3314
8377 msgid ""
8378 "The version string of the application or package.  If unavailable this is "
8379 "returned as an empty string C<\"\">."
8380 msgstr ""
8381
8382 #. type: =item
8383 #: ../fish/guestfish-actions.pod:2265 ../src/guestfs-actions.pod:3317
8384 msgid "C<app_release>"
8385 msgstr ""
8386
8387 #. type: textblock
8388 #: ../fish/guestfish-actions.pod:2267 ../src/guestfs-actions.pod:3319
8389 msgid ""
8390 "The release string of the application or package, for package managers that "
8391 "use this.  If unavailable this is returned as an empty string C<\"\">."
8392 msgstr ""
8393
8394 #. type: =item
8395 #: ../fish/guestfish-actions.pod:2271 ../src/guestfs-actions.pod:3323
8396 msgid "C<app_install_path>"
8397 msgstr ""
8398
8399 #. type: textblock
8400 #: ../fish/guestfish-actions.pod:2273 ../src/guestfs-actions.pod:3325
8401 msgid ""
8402 "The installation path of the application (on operating systems such as "
8403 "Windows which use installation paths).  This path is in the format used by "
8404 "the guest operating system, it is not a libguestfs path."
8405 msgstr ""
8406
8407 #. type: textblock
8408 #: ../fish/guestfish-actions.pod:2278 ../src/guestfs-actions.pod:3330
8409 msgid "If unavailable this is returned as an empty string C<\"\">."
8410 msgstr ""
8411
8412 #. type: =item
8413 #: ../fish/guestfish-actions.pod:2280 ../src/guestfs-actions.pod:3332
8414 msgid "C<app_trans_path>"
8415 msgstr ""
8416
8417 #. type: textblock
8418 #: ../fish/guestfish-actions.pod:2282 ../src/guestfs-actions.pod:3334
8419 msgid ""
8420 "The install path translated into a libguestfs path.  If unavailable this is "
8421 "returned as an empty string C<\"\">."
8422 msgstr ""
8423
8424 #. type: =item
8425 #: ../fish/guestfish-actions.pod:2285 ../src/guestfs-actions.pod:3337
8426 msgid "C<app_publisher>"
8427 msgstr ""
8428
8429 #. type: textblock
8430 #: ../fish/guestfish-actions.pod:2287 ../src/guestfs-actions.pod:3339
8431 msgid ""
8432 "The name of the publisher of the application, for package managers that use "
8433 "this.  If unavailable this is returned as an empty string C<\"\">."
8434 msgstr ""
8435
8436 #. type: =item
8437 #: ../fish/guestfish-actions.pod:2291 ../src/guestfs-actions.pod:3343
8438 msgid "C<app_url>"
8439 msgstr ""
8440
8441 #. type: textblock
8442 #: ../fish/guestfish-actions.pod:2293 ../src/guestfs-actions.pod:3345
8443 msgid ""
8444 "The URL (eg. upstream URL) of the application.  If unavailable this is "
8445 "returned as an empty string C<\"\">."
8446 msgstr ""
8447
8448 #. type: =item
8449 #: ../fish/guestfish-actions.pod:2296 ../src/guestfs-actions.pod:3348
8450 msgid "C<app_source_package>"
8451 msgstr ""
8452
8453 #. type: textblock
8454 #: ../fish/guestfish-actions.pod:2298 ../src/guestfs-actions.pod:3350
8455 msgid ""
8456 "For packaging systems which support this, the name of the source package.  "
8457 "If unavailable this is returned as an empty string C<\"\">."
8458 msgstr ""
8459
8460 #. type: =item
8461 #: ../fish/guestfish-actions.pod:2301 ../src/guestfs-actions.pod:3353
8462 msgid "C<app_summary>"
8463 msgstr ""
8464
8465 #. type: textblock
8466 #: ../fish/guestfish-actions.pod:2303 ../src/guestfs-actions.pod:3355
8467 msgid ""
8468 "A short (usually one line) description of the application or package.  If "
8469 "unavailable this is returned as an empty string C<\"\">."
8470 msgstr ""
8471
8472 #. type: =item
8473 #: ../fish/guestfish-actions.pod:2306 ../src/guestfs-actions.pod:3358
8474 msgid "C<app_description>"
8475 msgstr ""
8476
8477 #. type: textblock
8478 #: ../fish/guestfish-actions.pod:2308 ../src/guestfs-actions.pod:3360
8479 msgid ""
8480 "A longer description of the application or package.  If unavailable this is "
8481 "returned as an empty string C<\"\">."
8482 msgstr ""
8483
8484 #. type: =head2
8485 #: ../fish/guestfish-actions.pod:2315
8486 msgid "inspect-os"
8487 msgstr ""
8488
8489 #. type: verbatim
8490 #: ../fish/guestfish-actions.pod:2317
8491 #, no-wrap
8492 msgid ""
8493 " inspect-os\n"
8494 "\n"
8495 msgstr ""
8496
8497 #. type: textblock
8498 #: ../fish/guestfish-actions.pod:2319 ../src/guestfs-actions.pod:3378
8499 msgid ""
8500 "This function uses other libguestfs functions and certain heuristics to "
8501 "inspect the disk(s) (usually disks belonging to a virtual machine), looking "
8502 "for operating systems."
8503 msgstr ""
8504
8505 #. type: textblock
8506 #: ../fish/guestfish-actions.pod:2323 ../src/guestfs-actions.pod:3382
8507 msgid "The list returned is empty if no operating systems were found."
8508 msgstr ""
8509
8510 #. type: textblock
8511 #: ../fish/guestfish-actions.pod:2325 ../src/guestfs-actions.pod:3384
8512 msgid ""
8513 "If one operating system was found, then this returns a list with a single "
8514 "element, which is the name of the root filesystem of this operating system.  "
8515 "It is also possible for this function to return a list containing more than "
8516 "one element, indicating a dual-boot or multi-boot virtual machine, with each "
8517 "element being the root filesystem of one of the operating systems."
8518 msgstr ""
8519
8520 #. type: textblock
8521 #: ../fish/guestfish-actions.pod:2332
8522 msgid ""
8523 "You can pass the root string(s) returned to other L</inspect-get-*> "
8524 "functions in order to query further information about each operating system, "
8525 "such as the name and version."
8526 msgstr ""
8527
8528 #. type: textblock
8529 #: ../fish/guestfish-actions.pod:2337
8530 msgid ""
8531 "This function uses other libguestfs features such as L</mount-ro> and "
8532 "L</umount-all> in order to mount and unmount filesystems and look at the "
8533 "contents.  This should be called with no disks currently mounted.  The "
8534 "function may also use Augeas, so any existing Augeas handle will be closed."
8535 msgstr ""
8536
8537 #. type: textblock
8538 #: ../fish/guestfish-actions.pod:2343 ../src/guestfs-actions.pod:3402
8539 msgid ""
8540 "This function cannot decrypt encrypted disks.  The caller must do that first "
8541 "(supplying the necessary keys) if the disk is encrypted."
8542 msgstr ""
8543
8544 #. type: textblock
8545 #: ../fish/guestfish-actions.pod:2349 ../fish/guestfish-actions.pod:2547 ../fish/guestfish-actions.pod:2606
8546 msgid "See also L</list-filesystems>."
8547 msgstr ""
8548
8549 #. type: =head2
8550 #: ../fish/guestfish-actions.pod:2351
8551 msgid "is-blockdev"
8552 msgstr ""
8553
8554 #. type: verbatim
8555 #: ../fish/guestfish-actions.pod:2353
8556 #, no-wrap
8557 msgid ""
8558 " is-blockdev path\n"
8559 "\n"
8560 msgstr ""
8561
8562 #. type: textblock
8563 #: ../fish/guestfish-actions.pod:2355 ../src/guestfs-actions.pod:3422
8564 msgid ""
8565 "This returns C<true> if and only if there is a block device with the given "
8566 "C<path> name."
8567 msgstr ""
8568
8569 #. type: textblock
8570 #: ../fish/guestfish-actions.pod:2358 ../fish/guestfish-actions.pod:2376 ../fish/guestfish-actions.pod:2395 ../fish/guestfish-actions.pod:2404 ../fish/guestfish-actions.pod:2414 ../fish/guestfish-actions.pod:2448 ../fish/guestfish-actions.pod:2457
8571 msgid "See also L</stat>."
8572 msgstr ""
8573
8574 #. type: =head2
8575 #: ../fish/guestfish-actions.pod:2360
8576 msgid "is-busy"
8577 msgstr ""
8578
8579 #. type: verbatim
8580 #: ../fish/guestfish-actions.pod:2362
8581 #, no-wrap
8582 msgid ""
8583 " is-busy\n"
8584 "\n"
8585 msgstr ""
8586
8587 #. type: textblock
8588 #: ../fish/guestfish-actions.pod:2364 ../src/guestfs-actions.pod:3436
8589 msgid ""
8590 "This returns true iff this handle is busy processing a command (in the "
8591 "C<BUSY> state)."
8592 msgstr ""
8593
8594 #. type: =head2
8595 #: ../fish/guestfish-actions.pod:2369
8596 msgid "is-chardev"
8597 msgstr ""
8598
8599 #. type: verbatim
8600 #: ../fish/guestfish-actions.pod:2371
8601 #, no-wrap
8602 msgid ""
8603 " is-chardev path\n"
8604 "\n"
8605 msgstr ""
8606
8607 #. type: textblock
8608 #: ../fish/guestfish-actions.pod:2373 ../src/guestfs-actions.pod:3451
8609 msgid ""
8610 "This returns C<true> if and only if there is a character device with the "
8611 "given C<path> name."
8612 msgstr ""
8613
8614 #. type: =head2
8615 #: ../fish/guestfish-actions.pod:2378
8616 msgid "is-config"
8617 msgstr ""
8618
8619 #. type: verbatim
8620 #: ../fish/guestfish-actions.pod:2380
8621 #, no-wrap
8622 msgid ""
8623 " is-config\n"
8624 "\n"
8625 msgstr ""
8626
8627 #. type: textblock
8628 #: ../fish/guestfish-actions.pod:2382 ../src/guestfs-actions.pod:3465
8629 msgid ""
8630 "This returns true iff this handle is being configured (in the C<CONFIG> "
8631 "state)."
8632 msgstr ""
8633
8634 #. type: =head2
8635 #: ../fish/guestfish-actions.pod:2387
8636 msgid "is-dir"
8637 msgstr ""
8638
8639 #. type: verbatim
8640 #: ../fish/guestfish-actions.pod:2389
8641 #, no-wrap
8642 msgid ""
8643 " is-dir path\n"
8644 "\n"
8645 msgstr ""
8646
8647 #. type: textblock
8648 #: ../fish/guestfish-actions.pod:2391 ../src/guestfs-actions.pod:3480
8649 msgid ""
8650 "This returns C<true> if and only if there is a directory with the given "
8651 "C<path> name.  Note that it returns false for other objects like files."
8652 msgstr ""
8653
8654 #. type: =head2
8655 #: ../fish/guestfish-actions.pod:2397
8656 msgid "is-fifo"
8657 msgstr ""
8658
8659 #. type: verbatim
8660 #: ../fish/guestfish-actions.pod:2399
8661 #, no-wrap
8662 msgid ""
8663 " is-fifo path\n"
8664 "\n"
8665 msgstr ""
8666
8667 #. type: textblock
8668 #: ../fish/guestfish-actions.pod:2401 ../src/guestfs-actions.pod:3496
8669 msgid ""
8670 "This returns C<true> if and only if there is a FIFO (named pipe)  with the "
8671 "given C<path> name."
8672 msgstr ""
8673
8674 #. type: =head2
8675 #: ../fish/guestfish-actions.pod:2406
8676 msgid "is-file"
8677 msgstr ""
8678
8679 #. type: verbatim
8680 #: ../fish/guestfish-actions.pod:2408
8681 #, no-wrap
8682 msgid ""
8683 " is-file path\n"
8684 "\n"
8685 msgstr ""
8686
8687 #. type: textblock
8688 #: ../fish/guestfish-actions.pod:2410 ../src/guestfs-actions.pod:3511
8689 msgid ""
8690 "This returns C<true> if and only if there is a regular file with the given "
8691 "C<path> name.  Note that it returns false for other objects like "
8692 "directories."
8693 msgstr ""
8694
8695 #. type: =head2
8696 #: ../fish/guestfish-actions.pod:2416
8697 msgid "is-launching"
8698 msgstr ""
8699
8700 #. type: verbatim
8701 #: ../fish/guestfish-actions.pod:2418
8702 #, no-wrap
8703 msgid ""
8704 " is-launching\n"
8705 "\n"
8706 msgstr ""
8707
8708 #. type: textblock
8709 #: ../fish/guestfish-actions.pod:2420 ../src/guestfs-actions.pod:3526
8710 msgid ""
8711 "This returns true iff this handle is launching the subprocess (in the "
8712 "C<LAUNCHING> state)."
8713 msgstr ""
8714
8715 #. type: =head2
8716 #: ../fish/guestfish-actions.pod:2425
8717 msgid "is-lv"
8718 msgstr ""
8719
8720 #. type: verbatim
8721 #: ../fish/guestfish-actions.pod:2427
8722 #, no-wrap
8723 msgid ""
8724 " is-lv device\n"
8725 "\n"
8726 msgstr ""
8727
8728 #. type: textblock
8729 #: ../fish/guestfish-actions.pod:2429 ../src/guestfs-actions.pod:3541
8730 msgid ""
8731 "This command tests whether C<device> is a logical volume, and returns true "
8732 "iff this is the case."
8733 msgstr ""
8734
8735 #. type: =head2
8736 #: ../fish/guestfish-actions.pod:2432
8737 msgid "is-ready"
8738 msgstr ""
8739
8740 #. type: verbatim
8741 #: ../fish/guestfish-actions.pod:2434
8742 #, no-wrap
8743 msgid ""
8744 " is-ready\n"
8745 "\n"
8746 msgstr ""
8747
8748 #. type: textblock
8749 #: ../fish/guestfish-actions.pod:2436 ../src/guestfs-actions.pod:3553
8750 msgid ""
8751 "This returns true iff this handle is ready to accept commands (in the "
8752 "C<READY> state)."
8753 msgstr ""
8754
8755 #. type: =head2
8756 #: ../fish/guestfish-actions.pod:2441
8757 msgid "is-socket"
8758 msgstr ""
8759
8760 #. type: verbatim
8761 #: ../fish/guestfish-actions.pod:2443
8762 #, no-wrap
8763 msgid ""
8764 " is-socket path\n"
8765 "\n"
8766 msgstr ""
8767
8768 #. type: textblock
8769 #: ../fish/guestfish-actions.pod:2445 ../src/guestfs-actions.pod:3568
8770 msgid ""
8771 "This returns C<true> if and only if there is a Unix domain socket with the "
8772 "given C<path> name."
8773 msgstr ""
8774
8775 #. type: =head2
8776 #: ../fish/guestfish-actions.pod:2450
8777 msgid "is-symlink"
8778 msgstr ""
8779
8780 #. type: verbatim
8781 #: ../fish/guestfish-actions.pod:2452
8782 #, no-wrap
8783 msgid ""
8784 " is-symlink path\n"
8785 "\n"
8786 msgstr ""
8787
8788 #. type: textblock
8789 #: ../fish/guestfish-actions.pod:2454 ../src/guestfs-actions.pod:3583
8790 msgid ""
8791 "This returns C<true> if and only if there is a symbolic link with the given "
8792 "C<path> name."
8793 msgstr ""
8794
8795 #. type: =head2
8796 #: ../fish/guestfish-actions.pod:2459
8797 msgid "is-zero"
8798 msgstr ""
8799
8800 #. type: verbatim
8801 #: ../fish/guestfish-actions.pod:2461
8802 #, no-wrap
8803 msgid ""
8804 " is-zero path\n"
8805 "\n"
8806 msgstr ""
8807
8808 #. type: textblock
8809 #: ../fish/guestfish-actions.pod:2463 ../src/guestfs-actions.pod:3598
8810 msgid ""
8811 "This returns true iff the file exists and the file is empty or it contains "
8812 "all zero bytes."
8813 msgstr ""
8814
8815 #. type: =head2
8816 #: ../fish/guestfish-actions.pod:2466
8817 msgid "is-zero-device"
8818 msgstr ""
8819
8820 #. type: verbatim
8821 #: ../fish/guestfish-actions.pod:2468
8822 #, no-wrap
8823 msgid ""
8824 " is-zero-device device\n"
8825 "\n"
8826 msgstr ""
8827
8828 #. type: textblock
8829 #: ../fish/guestfish-actions.pod:2470 ../src/guestfs-actions.pod:3611
8830 msgid "This returns true iff the device exists and contains all zero bytes."
8831 msgstr ""
8832
8833 #. type: textblock
8834 #: ../fish/guestfish-actions.pod:2472 ../src/guestfs-actions.pod:3613
8835 msgid "Note that for large devices this can take a long time to run."
8836 msgstr ""
8837
8838 #. type: =head2
8839 #: ../fish/guestfish-actions.pod:2474
8840 msgid "kill-subprocess"
8841 msgstr ""
8842
8843 #. type: verbatim
8844 #: ../fish/guestfish-actions.pod:2476
8845 #, no-wrap
8846 msgid ""
8847 " kill-subprocess\n"
8848 "\n"
8849 msgstr ""
8850
8851 #. type: textblock
8852 #: ../fish/guestfish-actions.pod:2478 ../src/guestfs-actions.pod:3624
8853 msgid "This kills the qemu subprocess.  You should never need to call this."
8854 msgstr ""
8855
8856 #. type: =head2
8857 #: ../fish/guestfish-actions.pod:2480
8858 msgid "launch"
8859 msgstr ""
8860
8861 #. type: =head2
8862 #: ../fish/guestfish-actions.pod:2482
8863 msgid "run"
8864 msgstr ""
8865
8866 #. type: verbatim
8867 #: ../fish/guestfish-actions.pod:2484
8868 #, no-wrap
8869 msgid ""
8870 " launch\n"
8871 "\n"
8872 msgstr ""
8873
8874 #. type: textblock
8875 #: ../fish/guestfish-actions.pod:2486 ../src/guestfs-actions.pod:3635
8876 msgid ""
8877 "Internally libguestfs is implemented by running a virtual machine using "
8878 "L<qemu(1)>."
8879 msgstr ""
8880
8881 #. type: textblock
8882 #: ../fish/guestfish-actions.pod:2489 ../src/guestfs-actions.pod:3638
8883 msgid ""
8884 "You should call this after configuring the handle (eg. adding drives) but "
8885 "before performing any actions."
8886 msgstr ""
8887
8888 #. type: =head2
8889 #: ../fish/guestfish-actions.pod:2492
8890 msgid "lchown"
8891 msgstr ""
8892
8893 #. type: verbatim
8894 #: ../fish/guestfish-actions.pod:2494
8895 #, no-wrap
8896 msgid ""
8897 " lchown owner group path\n"
8898 "\n"
8899 msgstr ""
8900
8901 #. type: textblock
8902 #: ../fish/guestfish-actions.pod:2496
8903 msgid ""
8904 "Change the file owner to C<owner> and group to C<group>.  This is like "
8905 "L</chown> but if C<path> is a symlink then the link itself is changed, not "
8906 "the target."
8907 msgstr ""
8908
8909 #. type: =head2
8910 #: ../fish/guestfish-actions.pod:2504
8911 msgid "lgetxattr"
8912 msgstr ""
8913
8914 #. type: verbatim
8915 #: ../fish/guestfish-actions.pod:2506
8916 #, no-wrap
8917 msgid ""
8918 " lgetxattr path name\n"
8919 "\n"
8920 msgstr ""
8921
8922 #. type: textblock
8923 #: ../fish/guestfish-actions.pod:2508 ../src/guestfs-actions.pod:3678
8924 msgid ""
8925 "Get a single extended attribute from file C<path> named C<name>.  If C<path> "
8926 "is a symlink, then this call returns an extended attribute from the symlink."
8927 msgstr ""
8928
8929 #. type: textblock
8930 #: ../fish/guestfish-actions.pod:2522
8931 msgid "See also: L</lgetxattrs>, L</getxattr>, L<attr(5)>."
8932 msgstr ""
8933
8934 #. type: =head2
8935 #: ../fish/guestfish-actions.pod:2524
8936 msgid "lgetxattrs"
8937 msgstr ""
8938
8939 #. type: verbatim
8940 #: ../fish/guestfish-actions.pod:2526
8941 #, no-wrap
8942 msgid ""
8943 " lgetxattrs path\n"
8944 "\n"
8945 msgstr ""
8946
8947 #. type: textblock
8948 #: ../fish/guestfish-actions.pod:2528
8949 msgid ""
8950 "This is the same as L</getxattrs>, but if C<path> is a symbolic link, then "
8951 "it returns the extended attributes of the link itself."
8952 msgstr ""
8953
8954 #. type: =head2
8955 #: ../fish/guestfish-actions.pod:2532
8956 msgid "list-9p"
8957 msgstr ""
8958
8959 #. type: verbatim
8960 #: ../fish/guestfish-actions.pod:2534
8961 #, no-wrap
8962 msgid ""
8963 " list-9p\n"
8964 "\n"
8965 msgstr ""
8966
8967 #. type: textblock
8968 #: ../fish/guestfish-actions.pod:2536 ../src/guestfs-actions.pod:3721
8969 msgid ""
8970 "List all 9p filesystems attached to the guest.  A list of mount tags is "
8971 "returned."
8972 msgstr ""
8973
8974 #. type: =head2
8975 #: ../fish/guestfish-actions.pod:2539
8976 msgid "list-devices"
8977 msgstr ""
8978
8979 #. type: verbatim
8980 #: ../fish/guestfish-actions.pod:2541
8981 #, no-wrap
8982 msgid ""
8983 " list-devices\n"
8984 "\n"
8985 msgstr ""
8986
8987 #. type: textblock
8988 #: ../fish/guestfish-actions.pod:2543 ../src/guestfs-actions.pod:3735
8989 msgid "List all the block devices."
8990 msgstr ""
8991
8992 #. type: textblock
8993 #: ../fish/guestfish-actions.pod:2545 ../src/guestfs-actions.pod:3737
8994 msgid "The full block device names are returned, eg. C</dev/sda>."
8995 msgstr ""
8996
8997 #. type: =head2
8998 #: ../fish/guestfish-actions.pod:2549
8999 msgid "list-dm-devices"
9000 msgstr ""
9001
9002 #. type: verbatim
9003 #: ../fish/guestfish-actions.pod:2551
9004 #, no-wrap
9005 msgid ""
9006 " list-dm-devices\n"
9007 "\n"
9008 msgstr ""
9009
9010 #. type: textblock
9011 #: ../fish/guestfish-actions.pod:2553 ../src/guestfs-actions.pod:3752
9012 msgid "List all device mapper devices."
9013 msgstr ""
9014
9015 #. type: textblock
9016 #: ../fish/guestfish-actions.pod:2555
9017 msgid ""
9018 "The returned list contains C</dev/mapper/*> devices, eg. ones created by a "
9019 "previous call to L</luks-open>."
9020 msgstr ""
9021
9022 #. type: textblock
9023 #: ../fish/guestfish-actions.pod:2558
9024 msgid ""
9025 "Device mapper devices which correspond to logical volumes are I<not> "
9026 "returned in this list.  Call L</lvs> if you want to list logical volumes."
9027 msgstr ""
9028
9029 #. type: =head2
9030 #: ../fish/guestfish-actions.pod:2562
9031 msgid "list-filesystems"
9032 msgstr ""
9033
9034 #. type: verbatim
9035 #: ../fish/guestfish-actions.pod:2564
9036 #, no-wrap
9037 msgid ""
9038 " list-filesystems\n"
9039 "\n"
9040 msgstr ""
9041
9042 #. type: textblock
9043 #: ../fish/guestfish-actions.pod:2566 ../src/guestfs-actions.pod:3772
9044 msgid ""
9045 "This inspection command looks for filesystems on partitions, block devices "
9046 "and logical volumes, returning a list of devices containing filesystems and "
9047 "their type."
9048 msgstr ""
9049
9050 #. type: textblock
9051 #: ../fish/guestfish-actions.pod:2570 ../src/guestfs-actions.pod:3776
9052 msgid ""
9053 "The return value is a hash, where the keys are the devices containing "
9054 "filesystems, and the values are the filesystem types.  For example:"
9055 msgstr ""
9056
9057 #. type: verbatim
9058 #: ../fish/guestfish-actions.pod:2574 ../src/guestfs-actions.pod:3780
9059 #, no-wrap
9060 msgid ""
9061 " \"/dev/sda1\" => \"ntfs\"\n"
9062 " \"/dev/sda2\" => \"ext2\"\n"
9063 " \"/dev/vg_guest/lv_root\" => \"ext4\"\n"
9064 " \"/dev/vg_guest/lv_swap\" => \"swap\"\n"
9065 "\n"
9066 msgstr ""
9067
9068 #. type: textblock
9069 #: ../fish/guestfish-actions.pod:2579 ../src/guestfs-actions.pod:3785
9070 msgid ""
9071 "The value can have the special value \"unknown\", meaning the content of the "
9072 "device is undetermined or empty.  \"swap\" means a Linux swap partition."
9073 msgstr ""
9074
9075 #. type: textblock
9076 #: ../fish/guestfish-actions.pod:2583
9077 msgid ""
9078 "This command runs other libguestfs commands, which might include L</mount> "
9079 "and L</umount>, and therefore you should use this soon after launch and only "
9080 "when nothing is mounted."
9081 msgstr ""
9082
9083 #. type: textblock
9084 #: ../fish/guestfish-actions.pod:2587
9085 msgid ""
9086 "Not all of the filesystems returned will be mountable.  In particular, swap "
9087 "partitions are returned in the list.  Also this command does not check that "
9088 "each filesystem found is valid and mountable, and some filesystems might be "
9089 "mountable but require special options.  Filesystems may not all belong to a "
9090 "single logical operating system (use L</inspect-os> to look for OSes)."
9091 msgstr ""
9092
9093 #. type: =head2
9094 #: ../fish/guestfish-actions.pod:2595
9095 msgid "list-partitions"
9096 msgstr ""
9097
9098 #. type: verbatim
9099 #: ../fish/guestfish-actions.pod:2597
9100 #, no-wrap
9101 msgid ""
9102 " list-partitions\n"
9103 "\n"
9104 msgstr ""
9105
9106 #. type: textblock
9107 #: ../fish/guestfish-actions.pod:2599 ../src/guestfs-actions.pod:3814
9108 msgid "List all the partitions detected on all block devices."
9109 msgstr ""
9110
9111 #. type: textblock
9112 #: ../fish/guestfish-actions.pod:2601 ../src/guestfs-actions.pod:3816
9113 msgid "The full partition device names are returned, eg. C</dev/sda1>"
9114 msgstr ""
9115
9116 #. type: textblock
9117 #: ../fish/guestfish-actions.pod:2603
9118 msgid ""
9119 "This does not return logical volumes.  For that you will need to call "
9120 "L</lvs>."
9121 msgstr ""
9122
9123 #. type: =head2
9124 #: ../fish/guestfish-actions.pod:2608
9125 msgid "ll"
9126 msgstr ""
9127
9128 #. type: verbatim
9129 #: ../fish/guestfish-actions.pod:2610
9130 #, no-wrap
9131 msgid ""
9132 " ll directory\n"
9133 "\n"
9134 msgstr ""
9135
9136 #. type: textblock
9137 #: ../fish/guestfish-actions.pod:2612 ../src/guestfs-actions.pod:3835
9138 msgid ""
9139 "List the files in C<directory> (relative to the root directory, there is no "
9140 "cwd) in the format of 'ls -la'."
9141 msgstr ""
9142
9143 #. type: textblock
9144 #: ../fish/guestfish-actions.pod:2615 ../src/guestfs-actions.pod:3838
9145 msgid ""
9146 "This command is mostly useful for interactive sessions.  It is I<not> "
9147 "intended that you try to parse the output string."
9148 msgstr ""
9149
9150 #. type: =head2
9151 #: ../fish/guestfish-actions.pod:2618
9152 msgid "ln"
9153 msgstr ""
9154
9155 #. type: verbatim
9156 #: ../fish/guestfish-actions.pod:2620
9157 #, no-wrap
9158 msgid ""
9159 " ln target linkname\n"
9160 "\n"
9161 msgstr ""
9162
9163 #. type: textblock
9164 #: ../fish/guestfish-actions.pod:2622 ../src/guestfs-actions.pod:3853
9165 msgid "This command creates a hard link using the C<ln> command."
9166 msgstr ""
9167
9168 #. type: =head2
9169 #: ../fish/guestfish-actions.pod:2624
9170 msgid "ln-f"
9171 msgstr ""
9172
9173 #. type: verbatim
9174 #: ../fish/guestfish-actions.pod:2626
9175 #, no-wrap
9176 msgid ""
9177 " ln-f target linkname\n"
9178 "\n"
9179 msgstr ""
9180
9181 #. type: textblock
9182 #: ../fish/guestfish-actions.pod:2628 ../src/guestfs-actions.pod:3866
9183 msgid ""
9184 "This command creates a hard link using the C<ln -f> command.  The I<-f> "
9185 "option removes the link (C<linkname>) if it exists already."
9186 msgstr ""
9187
9188 #. type: =head2
9189 #: ../fish/guestfish-actions.pod:2631
9190 msgid "ln-s"
9191 msgstr ""
9192
9193 #. type: verbatim
9194 #: ../fish/guestfish-actions.pod:2633
9195 #, no-wrap
9196 msgid ""
9197 " ln-s target linkname\n"
9198 "\n"
9199 msgstr ""
9200
9201 #. type: textblock
9202 #: ../fish/guestfish-actions.pod:2635 ../src/guestfs-actions.pod:3880
9203 msgid "This command creates a symbolic link using the C<ln -s> command."
9204 msgstr ""
9205
9206 #. type: =head2
9207 #: ../fish/guestfish-actions.pod:2637
9208 msgid "ln-sf"
9209 msgstr ""
9210
9211 #. type: verbatim
9212 #: ../fish/guestfish-actions.pod:2639
9213 #, no-wrap
9214 msgid ""
9215 " ln-sf target linkname\n"
9216 "\n"
9217 msgstr ""
9218
9219 #. type: textblock
9220 #: ../fish/guestfish-actions.pod:2641 ../src/guestfs-actions.pod:3893
9221 msgid ""
9222 "This command creates a symbolic link using the C<ln -sf> command, The I<-f> "
9223 "option removes the link (C<linkname>) if it exists already."
9224 msgstr ""
9225
9226 #. type: =head2
9227 #: ../fish/guestfish-actions.pod:2644
9228 msgid "lremovexattr"
9229 msgstr ""
9230
9231 #. type: verbatim
9232 #: ../fish/guestfish-actions.pod:2646
9233 #, no-wrap
9234 msgid ""
9235 " lremovexattr xattr path\n"
9236 "\n"
9237 msgstr ""
9238
9239 #. type: textblock
9240 #: ../fish/guestfish-actions.pod:2648
9241 msgid ""
9242 "This is the same as L</removexattr>, but if C<path> is a symbolic link, then "
9243 "it removes an extended attribute of the link itself."
9244 msgstr ""
9245
9246 #. type: =head2
9247 #: ../fish/guestfish-actions.pod:2652
9248 msgid "ls"
9249 msgstr ""
9250
9251 #. type: verbatim
9252 #: ../fish/guestfish-actions.pod:2654
9253 #, no-wrap
9254 msgid ""
9255 " ls directory\n"
9256 "\n"
9257 msgstr ""
9258
9259 #. type: textblock
9260 #: ../fish/guestfish-actions.pod:2656 ../src/guestfs-actions.pod:3921
9261 msgid ""
9262 "List the files in C<directory> (relative to the root directory, there is no "
9263 "cwd).  The '.' and '..' entries are not returned, but hidden files are "
9264 "shown."
9265 msgstr ""
9266
9267 #. type: textblock
9268 #: ../fish/guestfish-actions.pod:2660
9269 msgid ""
9270 "This command is mostly useful for interactive sessions.  Programs should "
9271 "probably use L</readdir> instead."
9272 msgstr ""
9273
9274 #. type: =head2
9275 #: ../fish/guestfish-actions.pod:2663
9276 msgid "lsetxattr"
9277 msgstr ""
9278
9279 #. type: verbatim
9280 #: ../fish/guestfish-actions.pod:2665
9281 #, no-wrap
9282 msgid ""
9283 " lsetxattr xattr val vallen path\n"
9284 "\n"
9285 msgstr ""
9286
9287 #. type: textblock
9288 #: ../fish/guestfish-actions.pod:2667
9289 msgid ""
9290 "This is the same as L</setxattr>, but if C<path> is a symbolic link, then it "
9291 "sets an extended attribute of the link itself."
9292 msgstr ""
9293
9294 #. type: =head2
9295 #: ../fish/guestfish-actions.pod:2671
9296 msgid "lstat"
9297 msgstr ""
9298
9299 #. type: verbatim
9300 #: ../fish/guestfish-actions.pod:2673
9301 #, no-wrap
9302 msgid ""
9303 " lstat path\n"
9304 "\n"
9305 msgstr ""
9306
9307 #. type: textblock
9308 #: ../fish/guestfish-actions.pod:2675 ../fish/guestfish-actions.pod:4483 ../src/guestfs-actions.pod:3957 ../src/guestfs-actions.pod:6736
9309 msgid "Returns file information for the given C<path>."
9310 msgstr ""
9311
9312 #. type: textblock
9313 #: ../fish/guestfish-actions.pod:2677
9314 msgid ""
9315 "This is the same as L</stat> except that if C<path> is a symbolic link, then "
9316 "the link is stat-ed, not the file it refers to."
9317 msgstr ""
9318
9319 #. type: textblock
9320 #: ../fish/guestfish-actions.pod:2681 ../src/guestfs-actions.pod:3963
9321 msgid "This is the same as the C<lstat(2)> system call."
9322 msgstr ""
9323
9324 #. type: =head2
9325 #: ../fish/guestfish-actions.pod:2683
9326 msgid "lstatlist"
9327 msgstr ""
9328
9329 #. type: verbatim
9330 #: ../fish/guestfish-actions.pod:2685
9331 #, no-wrap
9332 msgid ""
9333 " lstatlist path 'names ...'\n"
9334 "\n"
9335 msgstr ""
9336
9337 #. type: textblock
9338 #: ../fish/guestfish-actions.pod:2687
9339 msgid ""
9340 "This call allows you to perform the L</lstat> operation on multiple files, "
9341 "where all files are in the directory C<path>.  C<names> is the list of files "
9342 "from this directory."
9343 msgstr ""
9344
9345 #. type: textblock
9346 #: ../fish/guestfish-actions.pod:2691 ../src/guestfs-actions.pod:3982
9347 msgid ""
9348 "On return you get a list of stat structs, with a one-to-one correspondence "
9349 "to the C<names> list.  If any name did not exist or could not be lstat'd, "
9350 "then the C<ino> field of that structure is set to C<-1>."
9351 msgstr ""
9352
9353 #. type: textblock
9354 #: ../fish/guestfish-actions.pod:2696
9355 msgid ""
9356 "This call is intended for programs that want to efficiently list a directory "
9357 "contents without making many round-trips.  See also L</lxattrlist> for a "
9358 "similarly efficient call for getting extended attributes.  Very long "
9359 "directory listings might cause the protocol message size to be exceeded, "
9360 "causing this call to fail.  The caller must split up such requests into "
9361 "smaller groups of names."
9362 msgstr ""
9363
9364 #. type: =head2
9365 #: ../fish/guestfish-actions.pod:2704
9366 msgid "luks-add-key"
9367 msgstr ""
9368
9369 #. type: verbatim
9370 #: ../fish/guestfish-actions.pod:2706
9371 #, no-wrap
9372 msgid ""
9373 " luks-add-key device keyslot\n"
9374 "\n"
9375 msgstr ""
9376
9377 #. type: textblock
9378 #: ../fish/guestfish-actions.pod:2708 ../src/guestfs-actions.pod:4010
9379 msgid ""
9380 "This command adds a new key on LUKS device C<device>.  C<key> is any "
9381 "existing key, and is used to access the device.  C<newkey> is the new key to "
9382 "add.  C<keyslot> is the key slot that will be replaced."
9383 msgstr ""
9384
9385 #. type: textblock
9386 #: ../fish/guestfish-actions.pod:2713
9387 msgid ""
9388 "Note that if C<keyslot> already contains a key, then this command will "
9389 "fail.  You have to use L</luks-kill-slot> first to remove that key."
9390 msgstr ""
9391
9392 #. type: textblock
9393 #: ../fish/guestfish-actions.pod:2717 ../fish/guestfish-actions.pod:2739 ../fish/guestfish-actions.pod:2752 ../fish/guestfish-actions.pod:2766 ../fish/guestfish-actions.pod:2792 ../fish/guestfish-actions.pod:2802
9394 msgid ""
9395 "This command has one or more key or passphrase parameters.  Guestfish will "
9396 "prompt for these separately."
9397 msgstr ""
9398
9399 #. type: =head2
9400 #: ../fish/guestfish-actions.pod:2720
9401 msgid "luks-close"
9402 msgstr ""
9403
9404 #. type: verbatim
9405 #: ../fish/guestfish-actions.pod:2722
9406 #, no-wrap
9407 msgid ""
9408 " luks-close device\n"
9409 "\n"
9410 msgstr ""
9411
9412 #. type: textblock
9413 #: ../fish/guestfish-actions.pod:2724
9414 msgid ""
9415 "This closes a LUKS device that was created earlier by L</luks-open> or "
9416 "L</luks-open-ro>.  The C<device> parameter must be the name of the LUKS "
9417 "mapping device (ie. C</dev/mapper/mapname>) and I<not> the name of the "
9418 "underlying block device."
9419 msgstr ""
9420
9421 #. type: =head2
9422 #: ../fish/guestfish-actions.pod:2730
9423 msgid "luks-format"
9424 msgstr ""
9425
9426 #. type: verbatim
9427 #: ../fish/guestfish-actions.pod:2732
9428 #, no-wrap
9429 msgid ""
9430 " luks-format device keyslot\n"
9431 "\n"
9432 msgstr ""
9433
9434 #. type: textblock
9435 #: ../fish/guestfish-actions.pod:2734 ../src/guestfs-actions.pod:4051
9436 msgid ""
9437 "This command erases existing data on C<device> and formats the device as a "
9438 "LUKS encrypted device.  C<key> is the initial key, which is added to key "
9439 "slot C<slot>.  (LUKS supports 8 key slots, numbered 0-7)."
9440 msgstr ""
9441
9442 #. type: textblock
9443 #: ../fish/guestfish-actions.pod:2742 ../fish/guestfish-actions.pod:2755 ../fish/guestfish-actions.pod:2842 ../fish/guestfish-actions.pod:3503 ../fish/guestfish-actions.pod:4029 ../fish/guestfish-actions.pod:4354 ../fish/guestfish-actions.pod:4377 ../fish/guestfish-actions.pod:4399 ../fish/guestfish-actions.pod:5145 ../src/guestfs-actions.pod:4058 ../src/guestfs-actions.pod:4081 ../src/guestfs-actions.pod:4224 ../src/guestfs-actions.pod:5327 ../src/guestfs-actions.pod:6115 ../src/guestfs-actions.pod:6550 ../src/guestfs-actions.pod:6580 ../src/guestfs-actions.pod:6613 ../src/guestfs-actions.pod:7812
9444 msgid ""
9445 "B<This command is dangerous.  Without careful use you can easily destroy all "
9446 "your data>."
9447 msgstr ""
9448
9449 #. type: =head2
9450 #: ../fish/guestfish-actions.pod:2745
9451 msgid "luks-format-cipher"
9452 msgstr ""
9453
9454 #. type: verbatim
9455 #: ../fish/guestfish-actions.pod:2747
9456 #, no-wrap
9457 msgid ""
9458 " luks-format-cipher device keyslot cipher\n"
9459 "\n"
9460 msgstr ""
9461
9462 #. type: textblock
9463 #: ../fish/guestfish-actions.pod:2749
9464 msgid ""
9465 "This command is the same as L</luks-format> but it also allows you to set "
9466 "the C<cipher> used."
9467 msgstr ""
9468
9469 #. type: =head2
9470 #: ../fish/guestfish-actions.pod:2758
9471 msgid "luks-kill-slot"
9472 msgstr ""
9473
9474 #. type: verbatim
9475 #: ../fish/guestfish-actions.pod:2760
9476 #, no-wrap
9477 msgid ""
9478 " luks-kill-slot device keyslot\n"
9479 "\n"
9480 msgstr ""
9481
9482 #. type: textblock
9483 #: ../fish/guestfish-actions.pod:2762 ../src/guestfs-actions.pod:4098
9484 msgid ""
9485 "This command deletes the key in key slot C<keyslot> from the encrypted LUKS "
9486 "device C<device>.  C<key> must be one of the I<other> keys."
9487 msgstr ""
9488
9489 #. type: =head2
9490 #: ../fish/guestfish-actions.pod:2769
9491 msgid "luks-open"
9492 msgstr ""
9493
9494 #. type: verbatim
9495 #: ../fish/guestfish-actions.pod:2771
9496 #, no-wrap
9497 msgid ""
9498 " luks-open device mapname\n"
9499 "\n"
9500 msgstr ""
9501
9502 #. type: textblock
9503 #: ../fish/guestfish-actions.pod:2773 ../src/guestfs-actions.pod:4118
9504 msgid ""
9505 "This command opens a block device which has been encrypted according to the "
9506 "Linux Unified Key Setup (LUKS) standard."
9507 msgstr ""
9508
9509 #. type: textblock
9510 #: ../fish/guestfish-actions.pod:2776 ../src/guestfs-actions.pod:4121
9511 msgid "C<device> is the encrypted block device or partition."
9512 msgstr ""
9513
9514 #. type: textblock
9515 #: ../fish/guestfish-actions.pod:2778 ../src/guestfs-actions.pod:4123
9516 msgid ""
9517 "The caller must supply one of the keys associated with the LUKS block "
9518 "device, in the C<key> parameter."
9519 msgstr ""
9520
9521 #. type: textblock
9522 #: ../fish/guestfish-actions.pod:2781 ../src/guestfs-actions.pod:4126
9523 msgid ""
9524 "This creates a new block device called C</dev/mapper/mapname>.  Reads and "
9525 "writes to this block device are decrypted from and encrypted to the "
9526 "underlying C<device> respectively."
9527 msgstr ""
9528
9529 #. type: textblock
9530 #: ../fish/guestfish-actions.pod:2785
9531 msgid ""
9532 "If this block device contains LVM volume groups, then calling L</vgscan> "
9533 "followed by L</vg-activate-all> will make them visible."
9534 msgstr ""
9535
9536 #. type: textblock
9537 #: ../fish/guestfish-actions.pod:2789
9538 msgid "Use L</list-dm-devices> to list all device mapper devices."
9539 msgstr ""
9540
9541 #. type: =head2
9542 #: ../fish/guestfish-actions.pod:2795
9543 msgid "luks-open-ro"
9544 msgstr ""
9545
9546 #. type: verbatim
9547 #: ../fish/guestfish-actions.pod:2797
9548 #, no-wrap
9549 msgid ""
9550 " luks-open-ro device mapname\n"
9551 "\n"
9552 msgstr ""
9553
9554 #. type: textblock
9555 #: ../fish/guestfish-actions.pod:2799
9556 msgid ""
9557 "This is the same as L</luks-open> except that a read-only mapping is "
9558 "created."
9559 msgstr ""
9560
9561 #. type: =head2
9562 #: ../fish/guestfish-actions.pod:2805
9563 msgid "lvcreate"
9564 msgstr ""
9565
9566 #. type: verbatim
9567 #: ../fish/guestfish-actions.pod:2807
9568 #, no-wrap
9569 msgid ""
9570 " lvcreate logvol volgroup mbytes\n"
9571 "\n"
9572 msgstr ""
9573
9574 #. type: textblock
9575 #: ../fish/guestfish-actions.pod:2809 ../src/guestfs-actions.pod:4172
9576 msgid ""
9577 "This creates an LVM logical volume called C<logvol> on the volume group "
9578 "C<volgroup>, with C<size> megabytes."
9579 msgstr ""
9580
9581 #. type: =head2
9582 #: ../fish/guestfish-actions.pod:2812
9583 msgid "lvm-canonical-lv-name"
9584 msgstr ""
9585
9586 #. type: verbatim
9587 #: ../fish/guestfish-actions.pod:2814
9588 #, no-wrap
9589 msgid ""
9590 " lvm-canonical-lv-name lvname\n"
9591 "\n"
9592 msgstr ""
9593
9594 #. type: textblock
9595 #: ../fish/guestfish-actions.pod:2816 ../src/guestfs-actions.pod:4185
9596 msgid ""
9597 "This converts alternative naming schemes for LVs that you might find to the "
9598 "canonical name.  For example, C</dev/mapper/VG-LV> is converted to "
9599 "C</dev/VG/LV>."
9600 msgstr ""
9601
9602 #. type: textblock
9603 #: ../fish/guestfish-actions.pod:2820 ../src/guestfs-actions.pod:4189
9604 msgid ""
9605 "This command returns an error if the C<lvname> parameter does not refer to a "
9606 "logical volume."
9607 msgstr ""
9608
9609 #. type: textblock
9610 #: ../fish/guestfish-actions.pod:2823
9611 msgid "See also L</is-lv>."
9612 msgstr ""
9613
9614 #. type: =head2
9615 #: ../fish/guestfish-actions.pod:2825
9616 msgid "lvm-clear-filter"
9617 msgstr ""
9618
9619 #. type: verbatim
9620 #: ../fish/guestfish-actions.pod:2827
9621 #, no-wrap
9622 msgid ""
9623 " lvm-clear-filter\n"
9624 "\n"
9625 msgstr ""
9626
9627 #. type: textblock
9628 #: ../fish/guestfish-actions.pod:2829
9629 msgid ""
9630 "This undoes the effect of L</lvm-set-filter>.  LVM will be able to see every "
9631 "block device."
9632 msgstr ""
9633
9634 #. type: textblock
9635 #: ../fish/guestfish-actions.pod:2832 ../fish/guestfish-actions.pod:2863 ../src/guestfs-actions.pod:4207 ../src/guestfs-actions.pod:4249
9636 msgid "This command also clears the LVM cache and performs a volume group scan."
9637 msgstr ""
9638
9639 #. type: =head2
9640 #: ../fish/guestfish-actions.pod:2835
9641 msgid "lvm-remove-all"
9642 msgstr ""
9643
9644 #. type: verbatim
9645 #: ../fish/guestfish-actions.pod:2837
9646 #, no-wrap
9647 msgid ""
9648 " lvm-remove-all\n"
9649 "\n"
9650 msgstr ""
9651
9652 #. type: textblock
9653 #: ../fish/guestfish-actions.pod:2839 ../src/guestfs-actions.pod:4219
9654 msgid ""
9655 "This command removes all LVM logical volumes, volume groups and physical "
9656 "volumes."
9657 msgstr ""
9658
9659 #. type: =head2
9660 #: ../fish/guestfish-actions.pod:2845
9661 msgid "lvm-set-filter"
9662 msgstr ""
9663
9664 #. type: verbatim
9665 #: ../fish/guestfish-actions.pod:2847
9666 #, no-wrap
9667 msgid ""
9668 " lvm-set-filter 'devices ...'\n"
9669 "\n"
9670 msgstr ""
9671
9672 #. type: textblock
9673 #: ../fish/guestfish-actions.pod:2849 ../src/guestfs-actions.pod:4235
9674 msgid ""
9675 "This sets the LVM device filter so that LVM will only be able to \"see\" the "
9676 "block devices in the list C<devices>, and will ignore all other attached "
9677 "block devices."
9678 msgstr ""
9679
9680 #. type: textblock
9681 #: ../fish/guestfish-actions.pod:2853 ../src/guestfs-actions.pod:4239
9682 msgid ""
9683 "Where disk image(s) contain duplicate PVs or VGs, this command is useful to "
9684 "get LVM to ignore the duplicates, otherwise LVM can get confused.  Note also "
9685 "there are two types of duplication possible: either cloned PVs/VGs which "
9686 "have identical UUIDs; or VGs that are not cloned but just happen to have the "
9687 "same name.  In normal operation you cannot create this situation, but you "
9688 "can do it outside LVM, eg.  by cloning disk images or by bit twiddling "
9689 "inside the LVM metadata."
9690 msgstr ""
9691
9692 #. type: textblock
9693 #: ../fish/guestfish-actions.pod:2866 ../src/guestfs-actions.pod:4252
9694 msgid "You can filter whole block devices or individual partitions."
9695 msgstr ""
9696
9697 #. type: textblock
9698 #: ../fish/guestfish-actions.pod:2868 ../src/guestfs-actions.pod:4254
9699 msgid ""
9700 "You cannot use this if any VG is currently in use (eg.  contains a mounted "
9701 "filesystem), even if you are not filtering out that VG."
9702 msgstr ""
9703
9704 #. type: =head2
9705 #: ../fish/guestfish-actions.pod:2872
9706 msgid "lvremove"
9707 msgstr ""
9708
9709 #. type: verbatim
9710 #: ../fish/guestfish-actions.pod:2874
9711 #, no-wrap
9712 msgid ""
9713 " lvremove device\n"
9714 "\n"
9715 msgstr ""
9716
9717 #. type: textblock
9718 #: ../fish/guestfish-actions.pod:2876 ../src/guestfs-actions.pod:4268
9719 msgid ""
9720 "Remove an LVM logical volume C<device>, where C<device> is the path to the "
9721 "LV, such as C</dev/VG/LV>."
9722 msgstr ""
9723
9724 #. type: textblock
9725 #: ../fish/guestfish-actions.pod:2879 ../src/guestfs-actions.pod:4271
9726 msgid ""
9727 "You can also remove all LVs in a volume group by specifying the VG name, "
9728 "C</dev/VG>."
9729 msgstr ""
9730
9731 #. type: =head2
9732 #: ../fish/guestfish-actions.pod:2882
9733 msgid "lvrename"
9734 msgstr ""
9735
9736 #. type: verbatim
9737 #: ../fish/guestfish-actions.pod:2884
9738 #, no-wrap
9739 msgid ""
9740 " lvrename logvol newlogvol\n"
9741 "\n"
9742 msgstr ""
9743
9744 #. type: textblock
9745 #: ../fish/guestfish-actions.pod:2886 ../src/guestfs-actions.pod:4285
9746 msgid "Rename a logical volume C<logvol> with the new name C<newlogvol>."
9747 msgstr ""
9748
9749 #. type: =head2
9750 #: ../fish/guestfish-actions.pod:2888
9751 msgid "lvresize"
9752 msgstr ""
9753
9754 #. type: verbatim
9755 #: ../fish/guestfish-actions.pod:2890
9756 #, no-wrap
9757 msgid ""
9758 " lvresize device mbytes\n"
9759 "\n"
9760 msgstr ""
9761
9762 #. type: textblock
9763 #: ../fish/guestfish-actions.pod:2892 ../src/guestfs-actions.pod:4298
9764 msgid ""
9765 "This resizes (expands or shrinks) an existing LVM logical volume to "
9766 "C<mbytes>.  When reducing, data in the reduced part is lost."
9767 msgstr ""
9768
9769 #. type: =head2
9770 #: ../fish/guestfish-actions.pod:2896
9771 msgid "lvresize-free"
9772 msgstr ""
9773
9774 #. type: verbatim
9775 #: ../fish/guestfish-actions.pod:2898
9776 #, no-wrap
9777 msgid ""
9778 " lvresize-free lv percent\n"
9779 "\n"
9780 msgstr ""
9781
9782 #. type: textblock
9783 #: ../fish/guestfish-actions.pod:2900 ../src/guestfs-actions.pod:4313
9784 msgid ""
9785 "This expands an existing logical volume C<lv> so that it fills C<pc>% of the "
9786 "remaining free space in the volume group.  Commonly you would call this with "
9787 "pc = 100 which expands the logical volume as much as possible, using all "
9788 "remaining free space in the volume group."
9789 msgstr ""
9790
9791 #. type: =head2
9792 #: ../fish/guestfish-actions.pod:2906
9793 msgid "lvs"
9794 msgstr ""
9795
9796 #. type: verbatim
9797 #: ../fish/guestfish-actions.pod:2908
9798 #, no-wrap
9799 msgid ""
9800 " lvs\n"
9801 "\n"
9802 msgstr ""
9803
9804 #. type: textblock
9805 #: ../fish/guestfish-actions.pod:2910 ../src/guestfs-actions.pod:4328
9806 msgid ""
9807 "List all the logical volumes detected.  This is the equivalent of the "
9808 "L<lvs(8)> command."
9809 msgstr ""
9810
9811 #. type: textblock
9812 #: ../fish/guestfish-actions.pod:2913 ../src/guestfs-actions.pod:4331
9813 msgid ""
9814 "This returns a list of the logical volume device names "
9815 "(eg. C</dev/VolGroup00/LogVol00>)."
9816 msgstr ""
9817
9818 #. type: textblock
9819 #: ../fish/guestfish-actions.pod:2916
9820 msgid "See also L</lvs-full>, L</list-filesystems>."
9821 msgstr ""
9822
9823 #. type: =head2
9824 #: ../fish/guestfish-actions.pod:2918
9825 msgid "lvs-full"
9826 msgstr ""
9827
9828 #. type: verbatim
9829 #: ../fish/guestfish-actions.pod:2920
9830 #, no-wrap
9831 msgid ""
9832 " lvs-full\n"
9833 "\n"
9834 msgstr ""
9835
9836 #. type: textblock
9837 #: ../fish/guestfish-actions.pod:2922 ../src/guestfs-actions.pod:4347
9838 msgid ""
9839 "List all the logical volumes detected.  This is the equivalent of the "
9840 "L<lvs(8)> command.  The \"full\" version includes all fields."
9841 msgstr ""
9842
9843 #. type: =head2
9844 #: ../fish/guestfish-actions.pod:2925
9845 msgid "lvuuid"
9846 msgstr ""
9847
9848 #. type: verbatim
9849 #: ../fish/guestfish-actions.pod:2927
9850 #, no-wrap
9851 msgid ""
9852 " lvuuid device\n"
9853 "\n"
9854 msgstr ""
9855
9856 #. type: textblock
9857 #: ../fish/guestfish-actions.pod:2929 ../src/guestfs-actions.pod:4362
9858 msgid "This command returns the UUID of the LVM LV C<device>."
9859 msgstr ""
9860
9861 #. type: =head2
9862 #: ../fish/guestfish-actions.pod:2931
9863 msgid "lxattrlist"
9864 msgstr ""
9865
9866 #. type: verbatim
9867 #: ../fish/guestfish-actions.pod:2933
9868 #, no-wrap
9869 msgid ""
9870 " lxattrlist path 'names ...'\n"
9871 "\n"
9872 msgstr ""
9873
9874 #. type: textblock
9875 #: ../fish/guestfish-actions.pod:2935 ../src/guestfs-actions.pod:4376
9876 msgid ""
9877 "This call allows you to get the extended attributes of multiple files, where "
9878 "all files are in the directory C<path>.  C<names> is the list of files from "
9879 "this directory."
9880 msgstr ""
9881
9882 #. type: textblock
9883 #: ../fish/guestfish-actions.pod:2939 ../src/guestfs-actions.pod:4380
9884 msgid ""
9885 "On return you get a flat list of xattr structs which must be interpreted "
9886 "sequentially.  The first xattr struct always has a zero-length C<attrname>.  "
9887 "C<attrval> in this struct is zero-length to indicate there was an error "
9888 "doing C<lgetxattr> for this file, I<or> is a C string which is a decimal "
9889 "number (the number of following attributes for this file, which could be "
9890 "C<\"0\">).  Then after the first xattr struct are the zero or more "
9891 "attributes for the first named file.  This repeats for the second and "
9892 "subsequent files."
9893 msgstr ""
9894
9895 #. type: textblock
9896 #: ../fish/guestfish-actions.pod:2949
9897 msgid ""
9898 "This call is intended for programs that want to efficiently list a directory "
9899 "contents without making many round-trips.  See also L</lstatlist> for a "
9900 "similarly efficient call for getting standard stats.  Very long directory "
9901 "listings might cause the protocol message size to be exceeded, causing this "
9902 "call to fail.  The caller must split up such requests into smaller groups of "
9903 "names."
9904 msgstr ""
9905
9906 #. type: =head2
9907 #: ../fish/guestfish-actions.pod:2957
9908 msgid "mkdir"
9909 msgstr ""
9910
9911 #. type: verbatim
9912 #: ../fish/guestfish-actions.pod:2959
9913 #, no-wrap
9914 msgid ""
9915 " mkdir path\n"
9916 "\n"
9917 msgstr ""
9918
9919 #. type: textblock
9920 #: ../fish/guestfish-actions.pod:2961 ../src/guestfs-actions.pod:4410
9921 msgid "Create a directory named C<path>."
9922 msgstr ""
9923
9924 #. type: =head2
9925 #: ../fish/guestfish-actions.pod:2963
9926 msgid "mkdir-mode"
9927 msgstr ""
9928
9929 #. type: verbatim
9930 #: ../fish/guestfish-actions.pod:2965
9931 #, no-wrap
9932 msgid ""
9933 " mkdir-mode path mode\n"
9934 "\n"
9935 msgstr ""
9936
9937 #. type: textblock
9938 #: ../fish/guestfish-actions.pod:2967 ../src/guestfs-actions.pod:4423
9939 msgid ""
9940 "This command creates a directory, setting the initial permissions of the "
9941 "directory to C<mode>."
9942 msgstr ""
9943
9944 #. type: textblock
9945 #: ../fish/guestfish-actions.pod:2970 ../src/guestfs-actions.pod:4426
9946 msgid ""
9947 "For common Linux filesystems, the actual mode which is set will be C<mode & "
9948 "~umask & 01777>.  Non-native-Linux filesystems may interpret the mode in "
9949 "other ways."
9950 msgstr ""
9951
9952 #. type: textblock
9953 #: ../fish/guestfish-actions.pod:2974
9954 msgid "See also L</mkdir>, L</umask>"
9955 msgstr ""
9956
9957 #. type: =head2
9958 #: ../fish/guestfish-actions.pod:2976
9959 msgid "mkdir-p"
9960 msgstr ""
9961
9962 #. type: verbatim
9963 #: ../fish/guestfish-actions.pod:2978
9964 #, no-wrap
9965 msgid ""
9966 " mkdir-p path\n"
9967 "\n"
9968 msgstr ""
9969
9970 #. type: textblock
9971 #: ../fish/guestfish-actions.pod:2980 ../src/guestfs-actions.pod:4442
9972 msgid ""
9973 "Create a directory named C<path>, creating any parent directories as "
9974 "necessary.  This is like the C<mkdir -p> shell command."
9975 msgstr ""
9976
9977 #. type: =head2
9978 #: ../fish/guestfish-actions.pod:2983
9979 msgid "mkdtemp"
9980 msgstr ""
9981
9982 #. type: verbatim
9983 #: ../fish/guestfish-actions.pod:2985
9984 #, no-wrap
9985 msgid ""
9986 " mkdtemp template\n"
9987 "\n"
9988 msgstr ""
9989
9990 #. type: textblock
9991 #: ../fish/guestfish-actions.pod:2987 ../src/guestfs-actions.pod:4455
9992 msgid ""
9993 "This command creates a temporary directory.  The C<template> parameter "
9994 "should be a full pathname for the temporary directory name with the final "
9995 "six characters being \"XXXXXX\"."
9996 msgstr ""
9997
9998 #. type: textblock
9999 #: ../fish/guestfish-actions.pod:2992 ../src/guestfs-actions.pod:4460
10000 msgid ""
10001 "For example: \"/tmp/myprogXXXXXX\" or \"/Temp/myprogXXXXXX\", the second one "
10002 "being suitable for Windows filesystems."
10003 msgstr ""
10004
10005 #. type: textblock
10006 #: ../fish/guestfish-actions.pod:2995 ../src/guestfs-actions.pod:4463
10007 msgid "The name of the temporary directory that was created is returned."
10008 msgstr ""
10009
10010 #. type: textblock
10011 #: ../fish/guestfish-actions.pod:2998 ../src/guestfs-actions.pod:4466
10012 msgid "The temporary directory is created with mode 0700 and is owned by root."
10013 msgstr ""
10014
10015 #. type: textblock
10016 #: ../fish/guestfish-actions.pod:3001 ../src/guestfs-actions.pod:4469
10017 msgid ""
10018 "The caller is responsible for deleting the temporary directory and its "
10019 "contents after use."
10020 msgstr ""
10021
10022 #. type: textblock
10023 #: ../fish/guestfish-actions.pod:3004 ../src/guestfs-actions.pod:4472
10024 msgid "See also: L<mkdtemp(3)>"
10025 msgstr ""
10026
10027 #. type: =head2
10028 #: ../fish/guestfish-actions.pod:3006
10029 msgid "mke2fs-J"
10030 msgstr ""
10031
10032 #. type: verbatim
10033 #: ../fish/guestfish-actions.pod:3008
10034 #, no-wrap
10035 msgid ""
10036 " mke2fs-J fstype blocksize device journal\n"
10037 "\n"
10038 msgstr ""
10039
10040 #. type: textblock
10041 #: ../fish/guestfish-actions.pod:3010 ../src/guestfs-actions.pod:4488
10042 msgid ""
10043 "This creates an ext2/3/4 filesystem on C<device> with an external journal on "
10044 "C<journal>.  It is equivalent to the command:"
10045 msgstr ""
10046
10047 #. type: verbatim
10048 #: ../fish/guestfish-actions.pod:3014 ../src/guestfs-actions.pod:4492
10049 #, no-wrap
10050 msgid ""
10051 " mke2fs -t fstype -b blocksize -J device=<journal> <device>\n"
10052 "\n"
10053 msgstr ""
10054
10055 #. type: textblock
10056 #: ../fish/guestfish-actions.pod:3016
10057 msgid "See also L</mke2journal>."
10058 msgstr ""
10059
10060 #. type: =head2
10061 #: ../fish/guestfish-actions.pod:3018
10062 msgid "mke2fs-JL"
10063 msgstr ""
10064
10065 #. type: verbatim
10066 #: ../fish/guestfish-actions.pod:3020
10067 #, no-wrap
10068 msgid ""
10069 " mke2fs-JL fstype blocksize device label\n"
10070 "\n"
10071 msgstr ""
10072
10073 #. type: textblock
10074 #: ../fish/guestfish-actions.pod:3022 ../src/guestfs-actions.pod:4509
10075 msgid ""
10076 "This creates an ext2/3/4 filesystem on C<device> with an external journal on "
10077 "the journal labeled C<label>."
10078 msgstr ""
10079
10080 #. type: textblock
10081 #: ../fish/guestfish-actions.pod:3025
10082 msgid "See also L</mke2journal-L>."
10083 msgstr ""
10084
10085 #. type: =head2
10086 #: ../fish/guestfish-actions.pod:3027
10087 msgid "mke2fs-JU"
10088 msgstr ""
10089
10090 #. type: verbatim
10091 #: ../fish/guestfish-actions.pod:3029
10092 #, no-wrap
10093 msgid ""
10094 " mke2fs-JU fstype blocksize device uuid\n"
10095 "\n"
10096 msgstr ""
10097
10098 #. type: textblock
10099 #: ../fish/guestfish-actions.pod:3031 ../src/guestfs-actions.pod:4527
10100 msgid ""
10101 "This creates an ext2/3/4 filesystem on C<device> with an external journal on "
10102 "the journal with UUID C<uuid>."
10103 msgstr ""
10104
10105 #. type: textblock
10106 #: ../fish/guestfish-actions.pod:3034
10107 msgid "See also L</mke2journal-U>."
10108 msgstr ""
10109
10110 #. type: =head2
10111 #: ../fish/guestfish-actions.pod:3036
10112 msgid "mke2journal"
10113 msgstr ""
10114
10115 #. type: verbatim
10116 #: ../fish/guestfish-actions.pod:3038
10117 #, no-wrap
10118 msgid ""
10119 " mke2journal blocksize device\n"
10120 "\n"
10121 msgstr ""
10122
10123 #. type: textblock
10124 #: ../fish/guestfish-actions.pod:3040 ../src/guestfs-actions.pod:4543
10125 msgid ""
10126 "This creates an ext2 external journal on C<device>.  It is equivalent to the "
10127 "command:"
10128 msgstr ""
10129
10130 #. type: verbatim
10131 #: ../fish/guestfish-actions.pod:3043 ../src/guestfs-actions.pod:4546
10132 #, no-wrap
10133 msgid ""
10134 " mke2fs -O journal_dev -b blocksize device\n"
10135 "\n"
10136 msgstr ""
10137
10138 #. type: =head2
10139 #: ../fish/guestfish-actions.pod:3045
10140 msgid "mke2journal-L"
10141 msgstr ""
10142
10143 #. type: verbatim
10144 #: ../fish/guestfish-actions.pod:3047
10145 #, no-wrap
10146 msgid ""
10147 " mke2journal-L blocksize label device\n"
10148 "\n"
10149 msgstr ""
10150
10151 #. type: textblock
10152 #: ../fish/guestfish-actions.pod:3049 ../src/guestfs-actions.pod:4560
10153 msgid "This creates an ext2 external journal on C<device> with label C<label>."
10154 msgstr ""
10155
10156 #. type: =head2
10157 #: ../fish/guestfish-actions.pod:3051
10158 msgid "mke2journal-U"
10159 msgstr ""
10160
10161 #. type: verbatim
10162 #: ../fish/guestfish-actions.pod:3053
10163 #, no-wrap
10164 msgid ""
10165 " mke2journal-U blocksize uuid device\n"
10166 "\n"
10167 msgstr ""
10168
10169 #. type: textblock
10170 #: ../fish/guestfish-actions.pod:3055 ../src/guestfs-actions.pod:4574
10171 msgid "This creates an ext2 external journal on C<device> with UUID C<uuid>."
10172 msgstr ""
10173
10174 #. type: =head2
10175 #: ../fish/guestfish-actions.pod:3057
10176 msgid "mkfifo"
10177 msgstr ""
10178
10179 #. type: verbatim
10180 #: ../fish/guestfish-actions.pod:3059
10181 #, no-wrap
10182 msgid ""
10183 " mkfifo mode path\n"
10184 "\n"
10185 msgstr ""
10186
10187 #. type: textblock
10188 #: ../fish/guestfish-actions.pod:3061
10189 msgid ""
10190 "This call creates a FIFO (named pipe) called C<path> with mode C<mode>.  It "
10191 "is just a convenient wrapper around L</mknod>."
10192 msgstr ""
10193
10194 #. type: =head2
10195 #: ../fish/guestfish-actions.pod:3067
10196 msgid "mkfs"
10197 msgstr ""
10198
10199 #. type: verbatim
10200 #: ../fish/guestfish-actions.pod:3069
10201 #, no-wrap
10202 msgid ""
10203 " mkfs fstype device\n"
10204 "\n"
10205 msgstr ""
10206
10207 #. type: textblock
10208 #: ../fish/guestfish-actions.pod:3071 ../src/guestfs-actions.pod:4604
10209 msgid ""
10210 "This creates a filesystem on C<device> (usually a partition or LVM logical "
10211 "volume).  The filesystem type is C<fstype>, for example C<ext3>."
10212 msgstr ""
10213
10214 #. type: =head2
10215 #: ../fish/guestfish-actions.pod:3075
10216 msgid "mkfs-b"
10217 msgstr ""
10218
10219 #. type: verbatim
10220 #: ../fish/guestfish-actions.pod:3077
10221 #, no-wrap
10222 msgid ""
10223 " mkfs-b fstype blocksize device\n"
10224 "\n"
10225 msgstr ""
10226
10227 #. type: textblock
10228 #: ../fish/guestfish-actions.pod:3079
10229 msgid ""
10230 "This call is similar to L</mkfs>, but it allows you to control the block "
10231 "size of the resulting filesystem.  Supported block sizes depend on the "
10232 "filesystem type, but typically they are C<1024>, C<2048> or C<4096> only."
10233 msgstr ""
10234
10235 #. type: textblock
10236 #: ../fish/guestfish-actions.pod:3084 ../fish/guestfish-actions.pod:3111 ../src/guestfs-actions.pod:4632 ../src/guestfs-actions.pod:4670
10237 msgid ""
10238 "For VFAT and NTFS the C<blocksize> parameter is treated as the requested "
10239 "cluster size."
10240 msgstr ""
10241
10242 #. type: textblock
10243 #: ../fish/guestfish-actions.pod:3087
10244 msgid ""
10245 "I<This function is deprecated.> In new code, use the L</mkfs_opts> call "
10246 "instead."
10247 msgstr ""
10248
10249 #. type: =head2
10250 #: ../fish/guestfish-actions.pod:3094
10251 msgid "mkfs-opts"
10252 msgstr ""
10253
10254 #. type: verbatim
10255 #: ../fish/guestfish-actions.pod:3096
10256 #, no-wrap
10257 msgid ""
10258 " mkfs-opts fstype device [blocksize:..] [features:..] [inode:..] "
10259 "[sectorsize:..]\n"
10260 "\n"
10261 msgstr ""
10262
10263 #. type: textblock
10264 #: ../fish/guestfish-actions.pod:3098 ../src/guestfs-actions.pod:4657
10265 msgid ""
10266 "This function creates a filesystem on C<device>.  The filesystem type is "
10267 "C<fstype>, for example C<ext3>."
10268 msgstr ""
10269
10270 #. type: =item
10271 #: ../fish/guestfish-actions.pod:3105 ../src/guestfs-actions.pod:4664
10272 msgid "C<blocksize>"
10273 msgstr ""
10274
10275 #. type: textblock
10276 #: ../fish/guestfish-actions.pod:3107 ../src/guestfs-actions.pod:4666
10277 msgid ""
10278 "The filesystem block size.  Supported block sizes depend on the filesystem "
10279 "type, but typically they are C<1024>, C<2048> or C<4096> for Linux ext2/3 "
10280 "filesystems."
10281 msgstr ""
10282
10283 #. type: textblock
10284 #: ../fish/guestfish-actions.pod:3114 ../src/guestfs-actions.pod:4673
10285 msgid "For UFS block sizes, please see L<mkfs.ufs(8)>."
10286 msgstr ""
10287
10288 #. type: =item
10289 #: ../fish/guestfish-actions.pod:3116 ../src/guestfs-actions.pod:4675
10290 msgid "C<features>"
10291 msgstr ""
10292
10293 #. type: textblock
10294 #: ../fish/guestfish-actions.pod:3118 ../src/guestfs-actions.pod:4677
10295 msgid "This passes the I<-O> parameter to the external mkfs program."
10296 msgstr ""
10297
10298 #. type: textblock
10299 #: ../fish/guestfish-actions.pod:3120 ../src/guestfs-actions.pod:4679
10300 msgid ""
10301 "For certain filesystem types, this allows extra filesystem features to be "
10302 "selected.  See L<mke2fs(8)> and L<mkfs.ufs(8)> for more details."
10303 msgstr ""
10304
10305 #. type: textblock
10306 #: ../fish/guestfish-actions.pod:3124 ../src/guestfs-actions.pod:4683
10307 msgid ""
10308 "You cannot use this optional parameter with the C<gfs> or C<gfs2> filesystem "
10309 "type."
10310 msgstr ""
10311
10312 #. type: =item
10313 #: ../fish/guestfish-actions.pod:3127 ../src/guestfs-actions.pod:4686
10314 msgid "C<inode>"
10315 msgstr ""
10316
10317 #. type: textblock
10318 #: ../fish/guestfish-actions.pod:3129 ../src/guestfs-actions.pod:4688
10319 msgid ""
10320 "This passes the I<-I> parameter to the external L<mke2fs(8)> program which "
10321 "sets the inode size (only for ext2/3/4 filesystems at present)."
10322 msgstr ""
10323
10324 #. type: =item
10325 #: ../fish/guestfish-actions.pod:3132 ../src/guestfs-actions.pod:4691
10326 msgid "C<sectorsize>"
10327 msgstr ""
10328
10329 #. type: textblock
10330 #: ../fish/guestfish-actions.pod:3134 ../src/guestfs-actions.pod:4693
10331 msgid ""
10332 "This passes the I<-S> parameter to external L<mkfs.ufs(8)> program, which "
10333 "sets sector size for ufs filesystem."
10334 msgstr ""
10335
10336 #. type: =head2
10337 #: ../fish/guestfish-actions.pod:3141
10338 msgid "mkmountpoint"
10339 msgstr ""
10340
10341 #. type: verbatim
10342 #: ../fish/guestfish-actions.pod:3143
10343 #, no-wrap
10344 msgid ""
10345 " mkmountpoint exemptpath\n"
10346 "\n"
10347 msgstr ""
10348
10349 #. type: textblock
10350 #: ../fish/guestfish-actions.pod:3145
10351 msgid ""
10352 "L</mkmountpoint> and L</rmmountpoint> are specialized calls that can be used "
10353 "to create extra mountpoints before mounting the first filesystem."
10354 msgstr ""
10355
10356 #. type: textblock
10357 #: ../fish/guestfish-actions.pod:3149 ../src/guestfs-actions.pod:4736
10358 msgid ""
10359 "These calls are I<only> necessary in some very limited circumstances, mainly "
10360 "the case where you want to mount a mix of unrelated and/or read-only "
10361 "filesystems together."
10362 msgstr ""
10363
10364 #. type: textblock
10365 #: ../fish/guestfish-actions.pod:3153 ../src/guestfs-actions.pod:4740
10366 msgid ""
10367 "For example, live CDs often contain a \"Russian doll\" nest of filesystems, "
10368 "an ISO outer layer, with a squashfs image inside, with an ext2/3 image "
10369 "inside that.  You can unpack this as follows in guestfish:"
10370 msgstr ""
10371
10372 #. type: verbatim
10373 #: ../fish/guestfish-actions.pod:3158 ../src/guestfs-actions.pod:4745
10374 #, no-wrap
10375 msgid ""
10376 " add-ro Fedora-11-i686-Live.iso\n"
10377 " run\n"
10378 " mkmountpoint /cd\n"
10379 " mkmountpoint /sqsh\n"
10380 " mkmountpoint /ext3fs\n"
10381 " mount /dev/sda /cd\n"
10382 " mount-loop /cd/LiveOS/squashfs.img /sqsh\n"
10383 " mount-loop /sqsh/LiveOS/ext3fs.img /ext3fs\n"
10384 "\n"
10385 msgstr ""
10386
10387 #. type: textblock
10388 #: ../fish/guestfish-actions.pod:3167 ../src/guestfs-actions.pod:4754
10389 msgid "The inner filesystem is now unpacked under the /ext3fs mountpoint."
10390 msgstr ""
10391
10392 #. type: textblock
10393 #: ../fish/guestfish-actions.pod:3169
10394 msgid ""
10395 "L</mkmountpoint> is not compatible with L</umount-all>.  You may get "
10396 "unexpected errors if you try to mix these calls.  It is safest to manually "
10397 "unmount filesystems and remove mountpoints after use."
10398 msgstr ""
10399
10400 #. type: textblock
10401 #: ../fish/guestfish-actions.pod:3173
10402 msgid ""
10403 "L</umount-all> unmounts filesystems by sorting the paths longest first, so "
10404 "for this to work for manual mountpoints, you must ensure that the innermost "
10405 "mountpoints have the longest pathnames, as in the example code above."
10406 msgstr ""
10407
10408 #. type: textblock
10409 #: ../fish/guestfish-actions.pod:3178 ../src/guestfs-actions.pod:4765
10410 msgid "For more details see L<https://bugzilla.redhat.com/show_bug.cgi?id=599503>"
10411 msgstr ""
10412
10413 #. type: textblock
10414 #: ../fish/guestfish-actions.pod:3180
10415 msgid ""
10416 "Autosync [see L</set-autosync>, this is set by default on handles] can cause "
10417 "L</umount-all> to be called when the handle is closed which can also trigger "
10418 "these issues."
10419 msgstr ""
10420
10421 #. type: =head2
10422 #: ../fish/guestfish-actions.pod:3184
10423 msgid "mknod"
10424 msgstr ""
10425
10426 #. type: verbatim
10427 #: ../fish/guestfish-actions.pod:3186
10428 #, no-wrap
10429 msgid ""
10430 " mknod mode devmajor devminor path\n"
10431 "\n"
10432 msgstr ""
10433
10434 #. type: textblock
10435 #: ../fish/guestfish-actions.pod:3188 ../src/guestfs-actions.pod:4784
10436 msgid ""
10437 "This call creates block or character special devices, or named pipes "
10438 "(FIFOs)."
10439 msgstr ""
10440
10441 #. type: textblock
10442 #: ../fish/guestfish-actions.pod:3191 ../src/guestfs-actions.pod:4787
10443 msgid ""
10444 "The C<mode> parameter should be the mode, using the standard constants.  "
10445 "C<devmajor> and C<devminor> are the device major and minor numbers, only "
10446 "used when creating block and character special devices."
10447 msgstr ""
10448
10449 #. type: textblock
10450 #: ../fish/guestfish-actions.pod:3196
10451 msgid ""
10452 "Note that, just like L<mknod(2)>, the mode must be bitwise OR'd with "
10453 "S_IFBLK, S_IFCHR, S_IFIFO or S_IFSOCK (otherwise this call just creates a "
10454 "regular file).  These constants are available in the standard Linux header "
10455 "files, or you can use L</mknod-b>, L</mknod-c> or L</mkfifo> which are "
10456 "wrappers around this command which bitwise OR in the appropriate constant "
10457 "for you."
10458 msgstr ""
10459
10460 #. type: =head2
10461 #: ../fish/guestfish-actions.pod:3206
10462 msgid "mknod-b"
10463 msgstr ""
10464
10465 #. type: verbatim
10466 #: ../fish/guestfish-actions.pod:3208
10467 #, no-wrap
10468 msgid ""
10469 " mknod-b mode devmajor devminor path\n"
10470 "\n"
10471 msgstr ""
10472
10473 #. type: textblock
10474 #: ../fish/guestfish-actions.pod:3210
10475 msgid ""
10476 "This call creates a block device node called C<path> with mode C<mode> and "
10477 "device major/minor C<devmajor> and C<devminor>.  It is just a convenient "
10478 "wrapper around L</mknod>."
10479 msgstr ""
10480
10481 #. type: =head2
10482 #: ../fish/guestfish-actions.pod:3216
10483 msgid "mknod-c"
10484 msgstr ""
10485
10486 #. type: verbatim
10487 #: ../fish/guestfish-actions.pod:3218
10488 #, no-wrap
10489 msgid ""
10490 " mknod-c mode devmajor devminor path\n"
10491 "\n"
10492 msgstr ""
10493
10494 #. type: textblock
10495 #: ../fish/guestfish-actions.pod:3220
10496 msgid ""
10497 "This call creates a char device node called C<path> with mode C<mode> and "
10498 "device major/minor C<devmajor> and C<devminor>.  It is just a convenient "
10499 "wrapper around L</mknod>."
10500 msgstr ""
10501
10502 #. type: =head2
10503 #: ../fish/guestfish-actions.pod:3226
10504 msgid "mkswap"
10505 msgstr ""
10506
10507 #. type: verbatim
10508 #: ../fish/guestfish-actions.pod:3228
10509 #, no-wrap
10510 msgid ""
10511 " mkswap device\n"
10512 "\n"
10513 msgstr ""
10514
10515 #. type: textblock
10516 #: ../fish/guestfish-actions.pod:3230 ../src/guestfs-actions.pod:4850
10517 msgid "Create a swap partition on C<device>."
10518 msgstr ""
10519
10520 #. type: =head2
10521 #: ../fish/guestfish-actions.pod:3232
10522 msgid "mkswap-L"
10523 msgstr ""
10524
10525 #. type: verbatim
10526 #: ../fish/guestfish-actions.pod:3234
10527 #, no-wrap
10528 msgid ""
10529 " mkswap-L label device\n"
10530 "\n"
10531 msgstr ""
10532
10533 #. type: textblock
10534 #: ../fish/guestfish-actions.pod:3236 ../src/guestfs-actions.pod:4863
10535 msgid "Create a swap partition on C<device> with label C<label>."
10536 msgstr ""
10537
10538 #. type: textblock
10539 #: ../fish/guestfish-actions.pod:3238 ../src/guestfs-actions.pod:4865
10540 msgid ""
10541 "Note that you cannot attach a swap label to a block device "
10542 "(eg. C</dev/sda>), just to a partition.  This appears to be a limitation of "
10543 "the kernel or swap tools."
10544 msgstr ""
10545
10546 #. type: =head2
10547 #: ../fish/guestfish-actions.pod:3242
10548 msgid "mkswap-U"
10549 msgstr ""
10550
10551 #. type: verbatim
10552 #: ../fish/guestfish-actions.pod:3244
10553 #, no-wrap
10554 msgid ""
10555 " mkswap-U uuid device\n"
10556 "\n"
10557 msgstr ""
10558
10559 #. type: textblock
10560 #: ../fish/guestfish-actions.pod:3246 ../src/guestfs-actions.pod:4880
10561 msgid "Create a swap partition on C<device> with UUID C<uuid>."
10562 msgstr ""
10563
10564 #. type: =head2
10565 #: ../fish/guestfish-actions.pod:3248
10566 msgid "mkswap-file"
10567 msgstr ""
10568
10569 #. type: verbatim
10570 #: ../fish/guestfish-actions.pod:3250
10571 #, no-wrap
10572 msgid ""
10573 " mkswap-file path\n"
10574 "\n"
10575 msgstr ""
10576
10577 #. type: textblock
10578 #: ../fish/guestfish-actions.pod:3252 ../src/guestfs-actions.pod:4892
10579 msgid "Create a swap file."
10580 msgstr ""
10581
10582 #. type: textblock
10583 #: ../fish/guestfish-actions.pod:3254
10584 msgid ""
10585 "This command just writes a swap file signature to an existing file.  To "
10586 "create the file itself, use something like L</fallocate>."
10587 msgstr ""
10588
10589 #. type: =head2
10590 #: ../fish/guestfish-actions.pod:3257
10591 msgid "modprobe"
10592 msgstr ""
10593
10594 #. type: verbatim
10595 #: ../fish/guestfish-actions.pod:3259
10596 #, no-wrap
10597 msgid ""
10598 " modprobe modulename\n"
10599 "\n"
10600 msgstr ""
10601
10602 #. type: textblock
10603 #: ../fish/guestfish-actions.pod:3261 ../src/guestfs-actions.pod:4907
10604 msgid "This loads a kernel module in the appliance."
10605 msgstr ""
10606
10607 #. type: textblock
10608 #: ../fish/guestfish-actions.pod:3263 ../src/guestfs-actions.pod:4909
10609 msgid ""
10610 "The kernel module must have been whitelisted when libguestfs was built (see "
10611 "C<appliance/kmod.whitelist.in> in the source)."
10612 msgstr ""
10613
10614 #. type: =head2
10615 #: ../fish/guestfish-actions.pod:3266
10616 msgid "mount"
10617 msgstr ""
10618
10619 #. type: verbatim
10620 #: ../fish/guestfish-actions.pod:3268
10621 #, no-wrap
10622 msgid ""
10623 " mount device mountpoint\n"
10624 "\n"
10625 msgstr ""
10626
10627 #. type: textblock
10628 #: ../fish/guestfish-actions.pod:3270 ../src/guestfs-actions.pod:4930
10629 msgid ""
10630 "Mount a guest disk at a position in the filesystem.  Block devices are named "
10631 "C</dev/sda>, C</dev/sdb> and so on, as they were added to the guest.  If "
10632 "those block devices contain partitions, they will have the usual names "
10633 "(eg. C</dev/sda1>).  Also LVM C</dev/VG/LV>-style names can be used."
10634 msgstr ""
10635
10636 #. type: textblock
10637 #: ../fish/guestfish-actions.pod:3276 ../src/guestfs-actions.pod:4936
10638 msgid ""
10639 "The rules are the same as for L<mount(2)>: A filesystem must first be "
10640 "mounted on C</> before others can be mounted.  Other filesystems can only be "
10641 "mounted on directories which already exist."
10642 msgstr ""
10643
10644 #. type: textblock
10645 #: ../fish/guestfish-actions.pod:3281 ../src/guestfs-actions.pod:4941
10646 msgid ""
10647 "The mounted filesystem is writable, if we have sufficient permissions on the "
10648 "underlying device."
10649 msgstr ""
10650
10651 #. type: textblock
10652 #: ../fish/guestfish-actions.pod:3284
10653 msgid ""
10654 "B<Important note:> When you use this call, the filesystem options C<sync> "
10655 "and C<noatime> are set implicitly.  This was originally done because we "
10656 "thought it would improve reliability, but it turns out that I<-o sync> has a "
10657 "very large negative performance impact and negligible effect on "
10658 "reliability.  Therefore we recommend that you avoid using L</mount> in any "
10659 "code that needs performance, and instead use L</mount-options> (use an empty "
10660 "string for the first parameter if you don't want any options)."
10661 msgstr ""
10662
10663 #. type: textblock
10664 #: ../fish/guestfish-actions.pod:3294
10665 msgid ""
10666 "I<This function is deprecated.> In new code, use the L</mount_options> call "
10667 "instead."
10668 msgstr ""
10669
10670 #. type: =head2
10671 #: ../fish/guestfish-actions.pod:3301
10672 msgid "mount-9p"
10673 msgstr ""
10674
10675 #. type: verbatim
10676 #: ../fish/guestfish-actions.pod:3303
10677 #, no-wrap
10678 msgid ""
10679 " mount-9p mounttag mountpoint [options:..]\n"
10680 "\n"
10681 msgstr ""
10682
10683 #. type: textblock
10684 #: ../fish/guestfish-actions.pod:3305 ../src/guestfs-actions.pod:4973
10685 msgid ""
10686 "Mount the virtio-9p filesystem with the tag C<mounttag> on the directory "
10687 "C<mountpoint>."
10688 msgstr ""
10689
10690 #. type: textblock
10691 #: ../fish/guestfish-actions.pod:3308 ../src/guestfs-actions.pod:4976
10692 msgid ""
10693 "If required, C<trans=virtio> will be automatically added to the options.  "
10694 "Any other options required can be passed in the optional C<options> "
10695 "parameter."
10696 msgstr ""
10697
10698 #. type: =head2
10699 #: ../fish/guestfish-actions.pod:3314
10700 msgid "mount-loop"
10701 msgstr ""
10702
10703 #. type: verbatim
10704 #: ../fish/guestfish-actions.pod:3316
10705 #, no-wrap
10706 msgid ""
10707 " mount-loop file mountpoint\n"
10708 "\n"
10709 msgstr ""
10710
10711 #. type: textblock
10712 #: ../fish/guestfish-actions.pod:3318 ../src/guestfs-actions.pod:5015
10713 msgid ""
10714 "This command lets you mount C<file> (a filesystem image in a file) on a "
10715 "mount point.  It is entirely equivalent to the command C<mount -o loop file "
10716 "mountpoint>."
10717 msgstr ""
10718
10719 #. type: =head2
10720 #: ../fish/guestfish-actions.pod:3322
10721 msgid "mount-options"
10722 msgstr ""
10723
10724 #. type: verbatim
10725 #: ../fish/guestfish-actions.pod:3324
10726 #, no-wrap
10727 msgid ""
10728 " mount-options options device mountpoint\n"
10729 "\n"
10730 msgstr ""
10731
10732 #. type: textblock
10733 #: ../fish/guestfish-actions.pod:3326
10734 msgid ""
10735 "This is the same as the L</mount> command, but it allows you to set the "
10736 "mount options as for the L<mount(8)> I<-o> flag."
10737 msgstr ""
10738
10739 #. type: textblock
10740 #: ../fish/guestfish-actions.pod:3330 ../src/guestfs-actions.pod:5035
10741 msgid ""
10742 "If the C<options> parameter is an empty string, then no options are passed "
10743 "(all options default to whatever the filesystem uses)."
10744 msgstr ""
10745
10746 #. type: =head2
10747 #: ../fish/guestfish-actions.pod:3334
10748 msgid "mount-ro"
10749 msgstr ""
10750
10751 #. type: verbatim
10752 #: ../fish/guestfish-actions.pod:3336
10753 #, no-wrap
10754 msgid ""
10755 " mount-ro device mountpoint\n"
10756 "\n"
10757 msgstr ""
10758
10759 #. type: textblock
10760 #: ../fish/guestfish-actions.pod:3338
10761 msgid ""
10762 "This is the same as the L</mount> command, but it mounts the filesystem with "
10763 "the read-only (I<-o ro>) flag."
10764 msgstr ""
10765
10766 #. type: =head2
10767 #: ../fish/guestfish-actions.pod:3341
10768 msgid "mount-vfs"
10769 msgstr ""
10770
10771 #. type: verbatim
10772 #: ../fish/guestfish-actions.pod:3343
10773 #, no-wrap
10774 msgid ""
10775 " mount-vfs options vfstype device mountpoint\n"
10776 "\n"
10777 msgstr ""
10778
10779 #. type: textblock
10780 #: ../fish/guestfish-actions.pod:3345
10781 msgid ""
10782 "This is the same as the L</mount> command, but it allows you to set both the "
10783 "mount options and the vfstype as for the L<mount(8)> I<-o> and I<-t> flags."
10784 msgstr ""
10785
10786 #. type: =head2
10787 #: ../fish/guestfish-actions.pod:3349
10788 msgid "mountpoints"
10789 msgstr ""
10790
10791 #. type: verbatim
10792 #: ../fish/guestfish-actions.pod:3351
10793 #, no-wrap
10794 msgid ""
10795 " mountpoints\n"
10796 "\n"
10797 msgstr ""
10798
10799 #. type: textblock
10800 #: ../fish/guestfish-actions.pod:3353
10801 msgid ""
10802 "This call is similar to L</mounts>.  That call returns a list of devices.  "
10803 "This one returns a hash table (map) of device name to directory where the "
10804 "device is mounted."
10805 msgstr ""
10806
10807 #. type: =head2
10808 #: ../fish/guestfish-actions.pod:3357
10809 msgid "mounts"
10810 msgstr ""
10811
10812 #. type: verbatim
10813 #: ../fish/guestfish-actions.pod:3359
10814 #, no-wrap
10815 msgid ""
10816 " mounts\n"
10817 "\n"
10818 msgstr ""
10819
10820 #. type: textblock
10821 #: ../fish/guestfish-actions.pod:3361 ../src/guestfs-actions.pod:5096
10822 msgid ""
10823 "This returns the list of currently mounted filesystems.  It returns the list "
10824 "of devices (eg. C</dev/sda1>, C</dev/VG/LV>)."
10825 msgstr ""
10826
10827 #. type: textblock
10828 #: ../fish/guestfish-actions.pod:3364 ../src/guestfs-actions.pod:5099
10829 msgid "Some internal mounts are not shown."
10830 msgstr ""
10831
10832 #. type: textblock
10833 #: ../fish/guestfish-actions.pod:3366
10834 msgid "See also: L</mountpoints>"
10835 msgstr ""
10836
10837 #. type: =head2
10838 #: ../fish/guestfish-actions.pod:3368
10839 msgid "mv"
10840 msgstr ""
10841
10842 #. type: verbatim
10843 #: ../fish/guestfish-actions.pod:3370
10844 #, no-wrap
10845 msgid ""
10846 " mv src dest\n"
10847 "\n"
10848 msgstr ""
10849
10850 #. type: textblock
10851 #: ../fish/guestfish-actions.pod:3372 ../src/guestfs-actions.pod:5116
10852 msgid ""
10853 "This moves a file from C<src> to C<dest> where C<dest> is either a "
10854 "destination filename or destination directory."
10855 msgstr ""
10856
10857 #. type: =head2
10858 #: ../fish/guestfish-actions.pod:3375
10859 msgid "ntfs-3g-probe"
10860 msgstr ""
10861
10862 #. type: verbatim
10863 #: ../fish/guestfish-actions.pod:3377
10864 #, no-wrap
10865 msgid ""
10866 " ntfs-3g-probe true|false device\n"
10867 "\n"
10868 msgstr ""
10869
10870 #. type: textblock
10871 #: ../fish/guestfish-actions.pod:3379 ../src/guestfs-actions.pod:5130
10872 msgid ""
10873 "This command runs the L<ntfs-3g.probe(8)> command which probes an NTFS "
10874 "C<device> for mountability.  (Not all NTFS volumes can be mounted "
10875 "read-write, and some cannot be mounted at all)."
10876 msgstr ""
10877
10878 #. type: textblock
10879 #: ../fish/guestfish-actions.pod:3383 ../src/guestfs-actions.pod:5134
10880 msgid ""
10881 "C<rw> is a boolean flag.  Set it to true if you want to test if the volume "
10882 "can be mounted read-write.  Set it to false if you want to test if the "
10883 "volume can be mounted read-only."
10884 msgstr ""
10885
10886 #. type: textblock
10887 #: ../fish/guestfish-actions.pod:3387 ../src/guestfs-actions.pod:5138
10888 msgid ""
10889 "The return value is an integer which C<0> if the operation would succeed, or "
10890 "some non-zero value documented in the L<ntfs-3g.probe(8)> manual page."
10891 msgstr ""
10892
10893 #. type: =head2
10894 #: ../fish/guestfish-actions.pod:3391
10895 msgid "ntfsresize"
10896 msgstr ""
10897
10898 #. type: verbatim
10899 #: ../fish/guestfish-actions.pod:3393
10900 #, no-wrap
10901 msgid ""
10902 " ntfsresize device\n"
10903 "\n"
10904 msgstr ""
10905
10906 #. type: textblock
10907 #: ../fish/guestfish-actions.pod:3395 ../fish/guestfish-actions.pod:3419 ../src/guestfs-actions.pod:5159 ../src/guestfs-actions.pod:5191
10908 msgid ""
10909 "This command resizes an NTFS filesystem, expanding or shrinking it to the "
10910 "size of the underlying device."
10911 msgstr ""
10912
10913 #. type: textblock
10914 #: ../fish/guestfish-actions.pod:3398 ../src/guestfs-actions.pod:5162
10915 msgid ""
10916 "I<Note:> After the resize operation, the filesystem is marked as requiring a "
10917 "consistency check (for safety).  You have to boot into Windows to perform "
10918 "this check and clear this condition.  Furthermore, ntfsresize refuses to "
10919 "resize filesystems which have been marked in this way.  So in effect it is "
10920 "not possible to call ntfsresize multiple times on a single filesystem "
10921 "without booting into Windows between each resize."
10922 msgstr ""
10923
10924 #. type: textblock
10925 #: ../fish/guestfish-actions.pod:3406 ../fish/guestfish-actions.pod:3445 ../src/guestfs-actions.pod:5170 ../src/guestfs-actions.pod:5217
10926 msgid "See also L<ntfsresize(8)>."
10927 msgstr ""
10928
10929 #. type: textblock
10930 #: ../fish/guestfish-actions.pod:3408 ../fish/guestfish-actions.pod:3456
10931 msgid ""
10932 "I<This function is deprecated.> In new code, use the L</ntfsresize_opts> "
10933 "call instead."
10934 msgstr ""
10935
10936 #. type: =head2
10937 #: ../fish/guestfish-actions.pod:3415
10938 msgid "ntfsresize-opts"
10939 msgstr ""
10940
10941 #. type: verbatim
10942 #: ../fish/guestfish-actions.pod:3417
10943 #, no-wrap
10944 msgid ""
10945 " ntfsresize-opts device [size:..] [force:..]\n"
10946 "\n"
10947 msgstr ""
10948
10949 #. type: textblock
10950 #: ../fish/guestfish-actions.pod:3428 ../src/guestfs-actions.pod:5200
10951 msgid ""
10952 "The new size (in bytes) of the filesystem.  If omitted, the filesystem is "
10953 "resized to fit the container (eg. partition)."
10954 msgstr ""
10955
10956 #. type: =item
10957 #: ../fish/guestfish-actions.pod:3431 ../src/guestfs-actions.pod:5203
10958 msgid "C<force>"
10959 msgstr ""
10960
10961 #. type: textblock
10962 #: ../fish/guestfish-actions.pod:3433 ../src/guestfs-actions.pod:5205
10963 msgid ""
10964 "If this option is true, then force the resize of the filesystem even if the "
10965 "filesystem is marked as requiring a consistency check."
10966 msgstr ""
10967
10968 #. type: textblock
10969 #: ../fish/guestfish-actions.pod:3436
10970 msgid ""
10971 "After the resize operation, the filesystem is always marked as requiring a "
10972 "consistency check (for safety).  You have to boot into Windows to perform "
10973 "this check and clear this condition.  If you I<don't> set the C<force> "
10974 "option then it is not possible to call L</ntfsresize-opts> multiple times on "
10975 "a single filesystem without booting into Windows between each resize."
10976 msgstr ""
10977
10978 #. type: =head2
10979 #: ../fish/guestfish-actions.pod:3449
10980 msgid "ntfsresize-size"
10981 msgstr ""
10982
10983 #. type: verbatim
10984 #: ../fish/guestfish-actions.pod:3451
10985 #, no-wrap
10986 msgid ""
10987 " ntfsresize-size device size\n"
10988 "\n"
10989 msgstr ""
10990
10991 #. type: textblock
10992 #: ../fish/guestfish-actions.pod:3453
10993 msgid ""
10994 "This command is the same as L</ntfsresize> except that it allows you to "
10995 "specify the new size (in bytes) explicitly."
10996 msgstr ""
10997
10998 #. type: =head2
10999 #: ../fish/guestfish-actions.pod:3463
11000 msgid "part-add"
11001 msgstr ""
11002
11003 #. type: verbatim
11004 #: ../fish/guestfish-actions.pod:3465
11005 #, no-wrap
11006 msgid ""
11007 " part-add device prlogex startsect endsect\n"
11008 "\n"
11009 msgstr ""
11010
11011 #. type: textblock
11012 #: ../fish/guestfish-actions.pod:3467
11013 msgid ""
11014 "This command adds a partition to C<device>.  If there is no partition table "
11015 "on the device, call L</part-init> first."
11016 msgstr ""
11017
11018 #. type: textblock
11019 #: ../fish/guestfish-actions.pod:3470 ../src/guestfs-actions.pod:5278
11020 msgid ""
11021 "The C<prlogex> parameter is the type of partition.  Normally you should pass "
11022 "C<p> or C<primary> here, but MBR partition tables also support C<l> (or "
11023 "C<logical>) and C<e> (or C<extended>) partition types."
11024 msgstr ""
11025
11026 #. type: textblock
11027 #: ../fish/guestfish-actions.pod:3475 ../src/guestfs-actions.pod:5283
11028 msgid ""
11029 "C<startsect> and C<endsect> are the start and end of the partition in "
11030 "I<sectors>.  C<endsect> may be negative, which means it counts backwards "
11031 "from the end of the disk (C<-1> is the last sector)."
11032 msgstr ""
11033
11034 #. type: textblock
11035 #: ../fish/guestfish-actions.pod:3479
11036 msgid ""
11037 "Creating a partition which covers the whole disk is not so easy.  Use "
11038 "L</part-disk> to do that."
11039 msgstr ""
11040
11041 #. type: =head2
11042 #: ../fish/guestfish-actions.pod:3482
11043 msgid "part-del"
11044 msgstr ""
11045
11046 #. type: verbatim
11047 #: ../fish/guestfish-actions.pod:3484
11048 #, no-wrap
11049 msgid ""
11050 " part-del device partnum\n"
11051 "\n"
11052 msgstr ""
11053
11054 #. type: textblock
11055 #: ../fish/guestfish-actions.pod:3486 ../src/guestfs-actions.pod:5301
11056 msgid "This command deletes the partition numbered C<partnum> on C<device>."
11057 msgstr ""
11058
11059 #. type: textblock
11060 #: ../fish/guestfish-actions.pod:3488 ../src/guestfs-actions.pod:5303
11061 msgid ""
11062 "Note that in the case of MBR partitioning, deleting an extended partition "
11063 "also deletes any logical partitions it contains."
11064 msgstr ""
11065
11066 #. type: =head2
11067 #: ../fish/guestfish-actions.pod:3492
11068 msgid "part-disk"
11069 msgstr ""
11070
11071 #. type: verbatim
11072 #: ../fish/guestfish-actions.pod:3494
11073 #, no-wrap
11074 msgid ""
11075 " part-disk device parttype\n"
11076 "\n"
11077 msgstr ""
11078
11079 #. type: textblock
11080 #: ../fish/guestfish-actions.pod:3496
11081 msgid ""
11082 "This command is simply a combination of L</part-init> followed by "
11083 "L</part-add> to create a single primary partition covering the whole disk."
11084 msgstr ""
11085
11086 #. type: textblock
11087 #: ../fish/guestfish-actions.pod:3500
11088 msgid ""
11089 "C<parttype> is the partition table type, usually C<mbr> or C<gpt>, but other "
11090 "possible values are described in L</part-init>."
11091 msgstr ""
11092
11093 #. type: =head2
11094 #: ../fish/guestfish-actions.pod:3506
11095 msgid "part-get-bootable"
11096 msgstr ""
11097
11098 #. type: verbatim
11099 #: ../fish/guestfish-actions.pod:3508
11100 #, no-wrap
11101 msgid ""
11102 " part-get-bootable device partnum\n"
11103 "\n"
11104 msgstr ""
11105
11106 #. type: textblock
11107 #: ../fish/guestfish-actions.pod:3510 ../src/guestfs-actions.pod:5339
11108 msgid ""
11109 "This command returns true if the partition C<partnum> on C<device> has the "
11110 "bootable flag set."
11111 msgstr ""
11112
11113 #. type: textblock
11114 #: ../fish/guestfish-actions.pod:3513
11115 msgid "See also L</part-set-bootable>."
11116 msgstr ""
11117
11118 #. type: =head2
11119 #: ../fish/guestfish-actions.pod:3515
11120 msgid "part-get-mbr-id"
11121 msgstr ""
11122
11123 #. type: verbatim
11124 #: ../fish/guestfish-actions.pod:3517
11125 #, no-wrap
11126 msgid ""
11127 " part-get-mbr-id device partnum\n"
11128 "\n"
11129 msgstr ""
11130
11131 #. type: textblock
11132 #: ../fish/guestfish-actions.pod:3519 ../src/guestfs-actions.pod:5355
11133 msgid ""
11134 "Returns the MBR type byte (also known as the ID byte) from the numbered "
11135 "partition C<partnum>."
11136 msgstr ""
11137
11138 #. type: textblock
11139 #: ../fish/guestfish-actions.pod:3522 ../fish/guestfish-actions.pod:3666
11140 msgid ""
11141 "Note that only MBR (old DOS-style) partitions have type bytes.  You will get "
11142 "undefined results for other partition table types (see "
11143 "L</part-get-parttype>)."
11144 msgstr ""
11145
11146 #. type: =head2
11147 #: ../fish/guestfish-actions.pod:3526
11148 msgid "part-get-parttype"
11149 msgstr ""
11150
11151 #. type: verbatim
11152 #: ../fish/guestfish-actions.pod:3528
11153 #, no-wrap
11154 msgid ""
11155 " part-get-parttype device\n"
11156 "\n"
11157 msgstr ""
11158
11159 #. type: textblock
11160 #: ../fish/guestfish-actions.pod:3530 ../src/guestfs-actions.pod:5372
11161 msgid ""
11162 "This command examines the partition table on C<device> and returns the "
11163 "partition table type (format) being used."
11164 msgstr ""
11165
11166 #. type: textblock
11167 #: ../fish/guestfish-actions.pod:3533
11168 msgid ""
11169 "Common return values include: C<msdos> (a DOS/Windows style MBR partition "
11170 "table), C<gpt> (a GPT/EFI-style partition table).  Other values are "
11171 "possible, although unusual.  See L</part-init> for a full list."
11172 msgstr ""
11173
11174 #. type: =head2
11175 #: ../fish/guestfish-actions.pod:3538
11176 msgid "part-init"
11177 msgstr ""
11178
11179 #. type: verbatim
11180 #: ../fish/guestfish-actions.pod:3540
11181 #, no-wrap
11182 msgid ""
11183 " part-init device parttype\n"
11184 "\n"
11185 msgstr ""
11186
11187 #. type: textblock
11188 #: ../fish/guestfish-actions.pod:3542 ../src/guestfs-actions.pod:5392
11189 msgid ""
11190 "This creates an empty partition table on C<device> of one of the partition "
11191 "types listed below.  Usually C<parttype> should be either C<msdos> or C<gpt> "
11192 "(for large disks)."
11193 msgstr ""
11194
11195 #. type: textblock
11196 #: ../fish/guestfish-actions.pod:3546
11197 msgid ""
11198 "Initially there are no partitions.  Following this, you should call "
11199 "L</part-add> for each partition required."
11200 msgstr ""
11201
11202 #. type: textblock
11203 #: ../fish/guestfish-actions.pod:3549 ../src/guestfs-actions.pod:5399
11204 msgid "Possible values for C<parttype> are:"
11205 msgstr ""
11206
11207 #. type: =item
11208 #: ../fish/guestfish-actions.pod:3553 ../src/guestfs-actions.pod:5403
11209 msgid "B<efi>"
11210 msgstr ""
11211
11212 #. type: =item
11213 #: ../fish/guestfish-actions.pod:3555 ../src/guestfs-actions.pod:5405
11214 msgid "B<gpt>"
11215 msgstr ""
11216
11217 #. type: textblock
11218 #: ../fish/guestfish-actions.pod:3557 ../src/guestfs-actions.pod:5407
11219 msgid "Intel EFI / GPT partition table."
11220 msgstr ""
11221
11222 #. type: textblock
11223 #: ../fish/guestfish-actions.pod:3559 ../src/guestfs-actions.pod:5409
11224 msgid ""
11225 "This is recommended for >= 2 TB partitions that will be accessed from Linux "
11226 "and Intel-based Mac OS X.  It also has limited backwards compatibility with "
11227 "the C<mbr> format."
11228 msgstr ""
11229
11230 #. type: =item
11231 #: ../fish/guestfish-actions.pod:3563 ../src/guestfs-actions.pod:5413
11232 msgid "B<mbr>"
11233 msgstr ""
11234
11235 #. type: =item
11236 #: ../fish/guestfish-actions.pod:3565 ../src/guestfs-actions.pod:5415
11237 msgid "B<msdos>"
11238 msgstr ""
11239
11240 #. type: textblock
11241 #: ../fish/guestfish-actions.pod:3567 ../src/guestfs-actions.pod:5417
11242 msgid ""
11243 "The standard PC \"Master Boot Record\" (MBR) format used by MS-DOS and "
11244 "Windows.  This partition type will B<only> work for device sizes up to 2 "
11245 "TB.  For large disks we recommend using C<gpt>."
11246 msgstr ""
11247
11248 #. type: textblock
11249 #: ../fish/guestfish-actions.pod:3574 ../src/guestfs-actions.pod:5424
11250 msgid "Other partition table types that may work but are not supported include:"
11251 msgstr ""
11252
11253 #. type: =item
11254 #: ../fish/guestfish-actions.pod:3579 ../src/guestfs-actions.pod:5429
11255 msgid "B<aix>"
11256 msgstr ""
11257
11258 #. type: textblock
11259 #: ../fish/guestfish-actions.pod:3581 ../src/guestfs-actions.pod:5431
11260 msgid "AIX disk labels."
11261 msgstr ""
11262
11263 #. type: =item
11264 #: ../fish/guestfish-actions.pod:3583 ../src/guestfs-actions.pod:5433
11265 msgid "B<amiga>"
11266 msgstr ""
11267
11268 #. type: =item
11269 #: ../fish/guestfish-actions.pod:3585 ../src/guestfs-actions.pod:5435
11270 msgid "B<rdb>"
11271 msgstr ""
11272
11273 #. type: textblock
11274 #: ../fish/guestfish-actions.pod:3587 ../src/guestfs-actions.pod:5437
11275 msgid "Amiga \"Rigid Disk Block\" format."
11276 msgstr ""
11277
11278 #. type: =item
11279 #: ../fish/guestfish-actions.pod:3589 ../src/guestfs-actions.pod:5439
11280 msgid "B<bsd>"
11281 msgstr ""
11282
11283 #. type: textblock
11284 #: ../fish/guestfish-actions.pod:3591 ../src/guestfs-actions.pod:5441
11285 msgid "BSD disk labels."
11286 msgstr ""
11287
11288 #. type: =item
11289 #: ../fish/guestfish-actions.pod:3593 ../src/guestfs-actions.pod:5443
11290 msgid "B<dasd>"
11291 msgstr ""
11292
11293 #. type: textblock
11294 #: ../fish/guestfish-actions.pod:3595 ../src/guestfs-actions.pod:5445
11295 msgid "DASD, used on IBM mainframes."
11296 msgstr ""
11297
11298 #. type: =item
11299 #: ../fish/guestfish-actions.pod:3597 ../src/guestfs-actions.pod:5447
11300 msgid "B<dvh>"
11301 msgstr ""
11302
11303 #. type: textblock
11304 #: ../fish/guestfish-actions.pod:3599 ../src/guestfs-actions.pod:5449
11305 msgid "MIPS/SGI volumes."
11306 msgstr ""
11307
11308 #. type: =item
11309 #: ../fish/guestfish-actions.pod:3601 ../src/guestfs-actions.pod:5451
11310 msgid "B<mac>"
11311 msgstr ""
11312
11313 #. type: textblock
11314 #: ../fish/guestfish-actions.pod:3603 ../src/guestfs-actions.pod:5453
11315 msgid "Old Mac partition format.  Modern Macs use C<gpt>."
11316 msgstr ""
11317
11318 #. type: =item
11319 #: ../fish/guestfish-actions.pod:3605 ../src/guestfs-actions.pod:5455
11320 msgid "B<pc98>"
11321 msgstr ""
11322
11323 #. type: textblock
11324 #: ../fish/guestfish-actions.pod:3607 ../src/guestfs-actions.pod:5457
11325 msgid "NEC PC-98 format, common in Japan apparently."
11326 msgstr ""
11327
11328 #. type: =item
11329 #: ../fish/guestfish-actions.pod:3609 ../src/guestfs-actions.pod:5459
11330 msgid "B<sun>"
11331 msgstr ""
11332
11333 #. type: textblock
11334 #: ../fish/guestfish-actions.pod:3611 ../src/guestfs-actions.pod:5461
11335 msgid "Sun disk labels."
11336 msgstr ""
11337
11338 #. type: =head2
11339 #: ../fish/guestfish-actions.pod:3615
11340 msgid "part-list"
11341 msgstr ""
11342
11343 #. type: verbatim
11344 #: ../fish/guestfish-actions.pod:3617
11345 #, no-wrap
11346 msgid ""
11347 " part-list device\n"
11348 "\n"
11349 msgstr ""
11350
11351 #. type: textblock
11352 #: ../fish/guestfish-actions.pod:3619 ../src/guestfs-actions.pod:5475
11353 msgid ""
11354 "This command parses the partition table on C<device> and returns the list of "
11355 "partitions found."
11356 msgstr ""
11357
11358 #. type: textblock
11359 #: ../fish/guestfish-actions.pod:3622 ../src/guestfs-actions.pod:5478
11360 msgid "The fields in the returned structure are:"
11361 msgstr ""
11362
11363 #. type: =item
11364 #: ../fish/guestfish-actions.pod:3626 ../src/guestfs-actions.pod:5482
11365 msgid "B<part_num>"
11366 msgstr ""
11367
11368 #. type: textblock
11369 #: ../fish/guestfish-actions.pod:3628 ../src/guestfs-actions.pod:5484
11370 msgid "Partition number, counting from 1."
11371 msgstr ""
11372
11373 #. type: =item
11374 #: ../fish/guestfish-actions.pod:3630 ../src/guestfs-actions.pod:5486
11375 msgid "B<part_start>"
11376 msgstr ""
11377
11378 #. type: textblock
11379 #: ../fish/guestfish-actions.pod:3632
11380 msgid ""
11381 "Start of the partition I<in bytes>.  To get sectors you have to divide by "
11382 "the device's sector size, see L</blockdev-getss>."
11383 msgstr ""
11384
11385 #. type: =item
11386 #: ../fish/guestfish-actions.pod:3635 ../src/guestfs-actions.pod:5491
11387 msgid "B<part_end>"
11388 msgstr ""
11389
11390 #. type: textblock
11391 #: ../fish/guestfish-actions.pod:3637 ../src/guestfs-actions.pod:5493
11392 msgid "End of the partition in bytes."
11393 msgstr ""
11394
11395 #. type: =item
11396 #: ../fish/guestfish-actions.pod:3639 ../src/guestfs-actions.pod:5495
11397 msgid "B<part_size>"
11398 msgstr ""
11399
11400 #. type: textblock
11401 #: ../fish/guestfish-actions.pod:3641 ../src/guestfs-actions.pod:5497
11402 msgid "Size of the partition in bytes."
11403 msgstr ""
11404
11405 #. type: =head2
11406 #: ../fish/guestfish-actions.pod:3645
11407 msgid "part-set-bootable"
11408 msgstr ""
11409
11410 #. type: verbatim
11411 #: ../fish/guestfish-actions.pod:3647
11412 #, no-wrap
11413 msgid ""
11414 " part-set-bootable device partnum true|false\n"
11415 "\n"
11416 msgstr ""
11417
11418 #. type: textblock
11419 #: ../fish/guestfish-actions.pod:3649 ../src/guestfs-actions.pod:5515
11420 msgid ""
11421 "This sets the bootable flag on partition numbered C<partnum> on device "
11422 "C<device>.  Note that partitions are numbered from 1."
11423 msgstr ""
11424
11425 #. type: textblock
11426 #: ../fish/guestfish-actions.pod:3652 ../src/guestfs-actions.pod:5518
11427 msgid ""
11428 "The bootable flag is used by some operating systems (notably Windows) to "
11429 "determine which partition to boot from.  It is by no means universally "
11430 "recognized."
11431 msgstr ""
11432
11433 #. type: =head2
11434 #: ../fish/guestfish-actions.pod:3656
11435 msgid "part-set-mbr-id"
11436 msgstr ""
11437
11438 #. type: verbatim
11439 #: ../fish/guestfish-actions.pod:3658
11440 #, no-wrap
11441 msgid ""
11442 " part-set-mbr-id device partnum idbyte\n"
11443 "\n"
11444 msgstr ""
11445
11446 #. type: textblock
11447 #: ../fish/guestfish-actions.pod:3660 ../src/guestfs-actions.pod:5534
11448 msgid ""
11449 "Sets the MBR type byte (also known as the ID byte) of the numbered partition "
11450 "C<partnum> to C<idbyte>.  Note that the type bytes quoted in most "
11451 "documentation are in fact hexadecimal numbers, but usually documented "
11452 "without any leading \"0x\" which might be confusing."
11453 msgstr ""
11454
11455 #. type: =head2
11456 #: ../fish/guestfish-actions.pod:3670
11457 msgid "part-set-name"
11458 msgstr ""
11459
11460 #. type: verbatim
11461 #: ../fish/guestfish-actions.pod:3672
11462 #, no-wrap
11463 msgid ""
11464 " part-set-name device partnum name\n"
11465 "\n"
11466 msgstr ""
11467
11468 #. type: textblock
11469 #: ../fish/guestfish-actions.pod:3674 ../src/guestfs-actions.pod:5556
11470 msgid ""
11471 "This sets the partition name on partition numbered C<partnum> on device "
11472 "C<device>.  Note that partitions are numbered from 1."
11473 msgstr ""
11474
11475 #. type: textblock
11476 #: ../fish/guestfish-actions.pod:3677 ../src/guestfs-actions.pod:5559
11477 msgid ""
11478 "The partition name can only be set on certain types of partition table.  "
11479 "This works on C<gpt> but not on C<mbr> partitions."
11480 msgstr ""
11481
11482 #. type: =head2
11483 #: ../fish/guestfish-actions.pod:3680
11484 msgid "part-to-dev"
11485 msgstr ""
11486
11487 #. type: verbatim
11488 #: ../fish/guestfish-actions.pod:3682
11489 #, no-wrap
11490 msgid ""
11491 " part-to-dev partition\n"
11492 "\n"
11493 msgstr ""
11494
11495 #. type: textblock
11496 #: ../fish/guestfish-actions.pod:3684 ../src/guestfs-actions.pod:5572
11497 msgid ""
11498 "This function takes a partition name (eg. \"/dev/sdb1\") and removes the "
11499 "partition number, returning the device name (eg. \"/dev/sdb\")."
11500 msgstr ""
11501
11502 #. type: textblock
11503 #: ../fish/guestfish-actions.pod:3688
11504 msgid ""
11505 "The named partition must exist, for example as a string returned from "
11506 "L</list-partitions>."
11507 msgstr ""
11508
11509 #. type: =head2
11510 #: ../fish/guestfish-actions.pod:3691
11511 msgid "ping-daemon"
11512 msgstr ""
11513
11514 #. type: verbatim
11515 #: ../fish/guestfish-actions.pod:3693
11516 #, no-wrap
11517 msgid ""
11518 " ping-daemon\n"
11519 "\n"
11520 msgstr ""
11521
11522 #. type: textblock
11523 #: ../fish/guestfish-actions.pod:3695 ../src/guestfs-actions.pod:5589
11524 msgid ""
11525 "This is a test probe into the guestfs daemon running inside the qemu "
11526 "subprocess.  Calling this function checks that the daemon responds to the "
11527 "ping message, without affecting the daemon or attached block device(s) in "
11528 "any other way."
11529 msgstr ""
11530
11531 #. type: =head2
11532 #: ../fish/guestfish-actions.pod:3700
11533 msgid "pread"
11534 msgstr ""
11535
11536 #. type: verbatim
11537 #: ../fish/guestfish-actions.pod:3702
11538 #, no-wrap
11539 msgid ""
11540 " pread path count offset\n"
11541 "\n"
11542 msgstr ""
11543
11544 #. type: textblock
11545 #: ../fish/guestfish-actions.pod:3704 ../src/guestfs-actions.pod:5607
11546 msgid ""
11547 "This command lets you read part of a file.  It reads C<count> bytes of the "
11548 "file, starting at C<offset>, from file C<path>."
11549 msgstr ""
11550
11551 #. type: textblock
11552 #: ../fish/guestfish-actions.pod:3707 ../fish/guestfish-actions.pod:3722 ../src/guestfs-actions.pod:5610 ../src/guestfs-actions.pod:5636
11553 msgid ""
11554 "This may read fewer bytes than requested.  For further details see the "
11555 "L<pread(2)> system call."
11556 msgstr ""
11557
11558 #. type: textblock
11559 #: ../fish/guestfish-actions.pod:3710
11560 msgid "See also L</pwrite>, L</pread-device>."
11561 msgstr ""
11562
11563 #. type: =head2
11564 #: ../fish/guestfish-actions.pod:3715
11565 msgid "pread-device"
11566 msgstr ""
11567
11568 #. type: verbatim
11569 #: ../fish/guestfish-actions.pod:3717
11570 #, no-wrap
11571 msgid ""
11572 " pread-device device count offset\n"
11573 "\n"
11574 msgstr ""
11575
11576 #. type: textblock
11577 #: ../fish/guestfish-actions.pod:3719 ../src/guestfs-actions.pod:5633
11578 msgid ""
11579 "This command lets you read part of a file.  It reads C<count> bytes of "
11580 "C<device>, starting at C<offset>."
11581 msgstr ""
11582
11583 #. type: textblock
11584 #: ../fish/guestfish-actions.pod:3725
11585 msgid "See also L</pread>."
11586 msgstr ""
11587
11588 #. type: =head2
11589 #: ../fish/guestfish-actions.pod:3730
11590 msgid "pvcreate"
11591 msgstr ""
11592
11593 #. type: verbatim
11594 #: ../fish/guestfish-actions.pod:3732
11595 #, no-wrap
11596 msgid ""
11597 " pvcreate device\n"
11598 "\n"
11599 msgstr ""
11600
11601 #. type: textblock
11602 #: ../fish/guestfish-actions.pod:3734 ../src/guestfs-actions.pod:5656
11603 msgid ""
11604 "This creates an LVM physical volume on the named C<device>, where C<device> "
11605 "should usually be a partition name such as C</dev/sda1>."
11606 msgstr ""
11607
11608 #. type: =head2
11609 #: ../fish/guestfish-actions.pod:3738
11610 msgid "pvremove"
11611 msgstr ""
11612
11613 #. type: verbatim
11614 #: ../fish/guestfish-actions.pod:3740
11615 #, no-wrap
11616 msgid ""
11617 " pvremove device\n"
11618 "\n"
11619 msgstr ""
11620
11621 #. type: textblock
11622 #: ../fish/guestfish-actions.pod:3742 ../src/guestfs-actions.pod:5670
11623 msgid ""
11624 "This wipes a physical volume C<device> so that LVM will no longer recognise "
11625 "it."
11626 msgstr ""
11627
11628 #. type: textblock
11629 #: ../fish/guestfish-actions.pod:3745 ../src/guestfs-actions.pod:5673
11630 msgid ""
11631 "The implementation uses the C<pvremove> command which refuses to wipe "
11632 "physical volumes that contain any volume groups, so you have to remove those "
11633 "first."
11634 msgstr ""
11635
11636 #. type: =head2
11637 #: ../fish/guestfish-actions.pod:3749
11638 msgid "pvresize"
11639 msgstr ""
11640
11641 #. type: verbatim
11642 #: ../fish/guestfish-actions.pod:3751
11643 #, no-wrap
11644 msgid ""
11645 " pvresize device\n"
11646 "\n"
11647 msgstr ""
11648
11649 #. type: textblock
11650 #: ../fish/guestfish-actions.pod:3753 ../src/guestfs-actions.pod:5687
11651 msgid ""
11652 "This resizes (expands or shrinks) an existing LVM physical volume to match "
11653 "the new size of the underlying device."
11654 msgstr ""
11655
11656 #. type: =head2
11657 #: ../fish/guestfish-actions.pod:3756
11658 msgid "pvresize-size"
11659 msgstr ""
11660
11661 #. type: verbatim
11662 #: ../fish/guestfish-actions.pod:3758
11663 #, no-wrap
11664 msgid ""
11665 " pvresize-size device size\n"
11666 "\n"
11667 msgstr ""
11668
11669 #. type: textblock
11670 #: ../fish/guestfish-actions.pod:3760
11671 msgid ""
11672 "This command is the same as L</pvresize> except that it allows you to "
11673 "specify the new size (in bytes) explicitly."
11674 msgstr ""
11675
11676 #. type: =head2
11677 #: ../fish/guestfish-actions.pod:3763
11678 msgid "pvs"
11679 msgstr ""
11680
11681 #. type: verbatim
11682 #: ../fish/guestfish-actions.pod:3765
11683 #, no-wrap
11684 msgid ""
11685 " pvs\n"
11686 "\n"
11687 msgstr ""
11688
11689 #. type: textblock
11690 #: ../fish/guestfish-actions.pod:3767 ../src/guestfs-actions.pod:5713
11691 msgid ""
11692 "List all the physical volumes detected.  This is the equivalent of the "
11693 "L<pvs(8)> command."
11694 msgstr ""
11695
11696 #. type: textblock
11697 #: ../fish/guestfish-actions.pod:3770 ../src/guestfs-actions.pod:5716
11698 msgid ""
11699 "This returns a list of just the device names that contain PVs "
11700 "(eg. C</dev/sda2>)."
11701 msgstr ""
11702
11703 #. type: textblock
11704 #: ../fish/guestfish-actions.pod:3773
11705 msgid "See also L</pvs-full>."
11706 msgstr ""
11707
11708 #. type: =head2
11709 #: ../fish/guestfish-actions.pod:3775
11710 msgid "pvs-full"
11711 msgstr ""
11712
11713 #. type: verbatim
11714 #: ../fish/guestfish-actions.pod:3777
11715 #, no-wrap
11716 msgid ""
11717 " pvs-full\n"
11718 "\n"
11719 msgstr ""
11720
11721 #. type: textblock
11722 #: ../fish/guestfish-actions.pod:3779 ../src/guestfs-actions.pod:5732
11723 msgid ""
11724 "List all the physical volumes detected.  This is the equivalent of the "
11725 "L<pvs(8)> command.  The \"full\" version includes all fields."
11726 msgstr ""
11727
11728 #. type: =head2
11729 #: ../fish/guestfish-actions.pod:3782
11730 msgid "pvuuid"
11731 msgstr ""
11732
11733 #. type: verbatim
11734 #: ../fish/guestfish-actions.pod:3784
11735 #, no-wrap
11736 msgid ""
11737 " pvuuid device\n"
11738 "\n"
11739 msgstr ""
11740
11741 #. type: textblock
11742 #: ../fish/guestfish-actions.pod:3786 ../src/guestfs-actions.pod:5747
11743 msgid "This command returns the UUID of the LVM PV C<device>."
11744 msgstr ""
11745
11746 #. type: =head2
11747 #: ../fish/guestfish-actions.pod:3788
11748 msgid "pwrite"
11749 msgstr ""
11750
11751 #. type: verbatim
11752 #: ../fish/guestfish-actions.pod:3790
11753 #, no-wrap
11754 msgid ""
11755 " pwrite path content offset\n"
11756 "\n"
11757 msgstr ""
11758
11759 #. type: textblock
11760 #: ../fish/guestfish-actions.pod:3792 ../src/guestfs-actions.pod:5763
11761 msgid ""
11762 "This command writes to part of a file.  It writes the data buffer C<content> "
11763 "to the file C<path> starting at offset C<offset>."
11764 msgstr ""
11765
11766 #. type: textblock
11767 #: ../fish/guestfish-actions.pod:3795 ../src/guestfs-actions.pod:5766
11768 msgid ""
11769 "This command implements the L<pwrite(2)> system call, and like that system "
11770 "call it may not write the full data requested.  The return value is the "
11771 "number of bytes that were actually written to the file.  This could even be "
11772 "0, although short writes are unlikely for regular files in ordinary "
11773 "circumstances."
11774 msgstr ""
11775
11776 #. type: textblock
11777 #: ../fish/guestfish-actions.pod:3801
11778 msgid "See also L</pread>, L</pwrite-device>."
11779 msgstr ""
11780
11781 #. type: =head2
11782 #: ../fish/guestfish-actions.pod:3806
11783 msgid "pwrite-device"
11784 msgstr ""
11785
11786 #. type: verbatim
11787 #: ../fish/guestfish-actions.pod:3808
11788 #, no-wrap
11789 msgid ""
11790 " pwrite-device device content offset\n"
11791 "\n"
11792 msgstr ""
11793
11794 #. type: textblock
11795 #: ../fish/guestfish-actions.pod:3810 ../src/guestfs-actions.pod:5790
11796 msgid ""
11797 "This command writes to part of a device.  It writes the data buffer "
11798 "C<content> to C<device> starting at offset C<offset>."
11799 msgstr ""
11800
11801 #. type: textblock
11802 #: ../fish/guestfish-actions.pod:3813 ../src/guestfs-actions.pod:5793
11803 msgid ""
11804 "This command implements the L<pwrite(2)> system call, and like that system "
11805 "call it may not write the full data requested (although short writes to disk "
11806 "devices and partitions are probably impossible with standard Linux kernels)."
11807 msgstr ""
11808
11809 #. type: textblock
11810 #: ../fish/guestfish-actions.pod:3818
11811 msgid "See also L</pwrite>."
11812 msgstr ""
11813
11814 #. type: =head2
11815 #: ../fish/guestfish-actions.pod:3823
11816 msgid "read-file"
11817 msgstr ""
11818
11819 #. type: verbatim
11820 #: ../fish/guestfish-actions.pod:3825
11821 #, no-wrap
11822 msgid ""
11823 " read-file path\n"
11824 "\n"
11825 msgstr ""
11826
11827 #. type: textblock
11828 #: ../fish/guestfish-actions.pod:3827 ../src/guestfs-actions.pod:5814
11829 msgid "This calls returns the contents of the file C<path> as a buffer."
11830 msgstr ""
11831
11832 #. type: textblock
11833 #: ../fish/guestfish-actions.pod:3830
11834 msgid ""
11835 "Unlike L</cat>, this function can correctly handle files that contain "
11836 "embedded ASCII NUL characters.  However unlike L</download>, this function "
11837 "is limited in the total size of file that can be handled."
11838 msgstr ""
11839
11840 #. type: =head2
11841 #: ../fish/guestfish-actions.pod:3838
11842 msgid "read-lines"
11843 msgstr ""
11844
11845 #. type: verbatim
11846 #: ../fish/guestfish-actions.pod:3840
11847 #, no-wrap
11848 msgid ""
11849 " read-lines path\n"
11850 "\n"
11851 msgstr ""
11852
11853 #. type: textblock
11854 #: ../fish/guestfish-actions.pod:3844 ../src/guestfs-actions.pod:5839
11855 msgid ""
11856 "The file contents are returned as a list of lines.  Trailing C<LF> and "
11857 "C<CRLF> character sequences are I<not> returned."
11858 msgstr ""
11859
11860 #. type: textblock
11861 #: ../fish/guestfish-actions.pod:3847
11862 msgid ""
11863 "Note that this function cannot correctly handle binary files (specifically, "
11864 "files containing C<\\0> character which is treated as end of line).  For "
11865 "those you need to use the L</read-file> function which has a more complex "
11866 "interface."
11867 msgstr ""
11868
11869 #. type: =head2
11870 #: ../fish/guestfish-actions.pod:3852
11871 msgid "readdir"
11872 msgstr ""
11873
11874 #. type: verbatim
11875 #: ../fish/guestfish-actions.pod:3854
11876 #, no-wrap
11877 msgid ""
11878 " readdir dir\n"
11879 "\n"
11880 msgstr ""
11881
11882 #. type: textblock
11883 #: ../fish/guestfish-actions.pod:3856 ../src/guestfs-actions.pod:5859
11884 msgid "This returns the list of directory entries in directory C<dir>."
11885 msgstr ""
11886
11887 #. type: textblock
11888 #: ../fish/guestfish-actions.pod:3858 ../src/guestfs-actions.pod:5861
11889 msgid ""
11890 "All entries in the directory are returned, including C<.> and C<..>.  The "
11891 "entries are I<not> sorted, but returned in the same order as the underlying "
11892 "filesystem."
11893 msgstr ""
11894
11895 #. type: textblock
11896 #: ../fish/guestfish-actions.pod:3862 ../src/guestfs-actions.pod:5865
11897 msgid ""
11898 "Also this call returns basic file type information about each file.  The "
11899 "C<ftyp> field will contain one of the following characters:"
11900 msgstr ""
11901
11902 #. type: =item
11903 #: ../fish/guestfish-actions.pod:3867 ../src/guestfs-actions.pod:5870
11904 msgid "'b'"
11905 msgstr ""
11906
11907 #. type: textblock
11908 #: ../fish/guestfish-actions.pod:3869 ../src/guestfs-actions.pod:5872
11909 msgid "Block special"
11910 msgstr ""
11911
11912 #. type: =item
11913 #: ../fish/guestfish-actions.pod:3871 ../src/guestfs-actions.pod:5874
11914 msgid "'c'"
11915 msgstr ""
11916
11917 #. type: textblock
11918 #: ../fish/guestfish-actions.pod:3873 ../src/guestfs-actions.pod:5876
11919 msgid "Char special"
11920 msgstr ""
11921
11922 #. type: =item
11923 #: ../fish/guestfish-actions.pod:3875 ../src/guestfs-actions.pod:5878
11924 msgid "'d'"
11925 msgstr ""
11926
11927 #. type: textblock
11928 #: ../fish/guestfish-actions.pod:3877 ../src/guestfs-actions.pod:5880
11929 msgid "Directory"
11930 msgstr ""
11931
11932 #. type: =item
11933 #: ../fish/guestfish-actions.pod:3879 ../src/guestfs-actions.pod:5882
11934 msgid "'f'"
11935 msgstr ""
11936
11937 #. type: textblock
11938 #: ../fish/guestfish-actions.pod:3881 ../src/guestfs-actions.pod:5884
11939 msgid "FIFO (named pipe)"
11940 msgstr ""
11941
11942 #. type: =item
11943 #: ../fish/guestfish-actions.pod:3883 ../src/guestfs-actions.pod:5886
11944 msgid "'l'"
11945 msgstr ""
11946
11947 #. type: textblock
11948 #: ../fish/guestfish-actions.pod:3885 ../src/guestfs-actions.pod:5888
11949 msgid "Symbolic link"
11950 msgstr ""
11951
11952 #. type: =item
11953 #: ../fish/guestfish-actions.pod:3887 ../src/guestfs-actions.pod:5890
11954 msgid "'r'"
11955 msgstr ""
11956
11957 #. type: textblock
11958 #: ../fish/guestfish-actions.pod:3889 ../src/guestfs-actions.pod:5892
11959 msgid "Regular file"
11960 msgstr ""
11961
11962 #. type: =item
11963 #: ../fish/guestfish-actions.pod:3891 ../src/guestfs-actions.pod:5894
11964 msgid "'s'"
11965 msgstr ""
11966
11967 #. type: textblock
11968 #: ../fish/guestfish-actions.pod:3893 ../src/guestfs-actions.pod:5896
11969 msgid "Socket"
11970 msgstr ""
11971
11972 #. type: =item
11973 #: ../fish/guestfish-actions.pod:3895 ../src/guestfs-actions.pod:5898
11974 msgid "'u'"
11975 msgstr ""
11976
11977 #. type: textblock
11978 #: ../fish/guestfish-actions.pod:3897 ../src/guestfs-actions.pod:5900
11979 msgid "Unknown file type"
11980 msgstr ""
11981
11982 #. type: =item
11983 #: ../fish/guestfish-actions.pod:3899 ../src/guestfs-actions.pod:5902
11984 msgid "'?'"
11985 msgstr ""
11986
11987 #. type: textblock
11988 #: ../fish/guestfish-actions.pod:3901 ../src/guestfs-actions.pod:5904
11989 msgid "The L<readdir(3)> call returned a C<d_type> field with an unexpected value"
11990 msgstr ""
11991
11992 #. type: textblock
11993 #: ../fish/guestfish-actions.pod:3906
11994 msgid ""
11995 "This function is primarily intended for use by programs.  To get a simple "
11996 "list of names, use L</ls>.  To get a printable directory for human "
11997 "consumption, use L</ll>."
11998 msgstr ""
11999
12000 #. type: =head2
12001 #: ../fish/guestfish-actions.pod:3910
12002 msgid "readlink"
12003 msgstr ""
12004
12005 #. type: verbatim
12006 #: ../fish/guestfish-actions.pod:3912
12007 #, no-wrap
12008 msgid ""
12009 " readlink path\n"
12010 "\n"
12011 msgstr ""
12012
12013 #. type: textblock
12014 #: ../fish/guestfish-actions.pod:3914 ../src/guestfs-actions.pod:5925
12015 msgid "This command reads the target of a symbolic link."
12016 msgstr ""
12017
12018 #. type: =head2
12019 #: ../fish/guestfish-actions.pod:3916
12020 msgid "readlinklist"
12021 msgstr ""
12022
12023 #. type: verbatim
12024 #: ../fish/guestfish-actions.pod:3918
12025 #, no-wrap
12026 msgid ""
12027 " readlinklist path 'names ...'\n"
12028 "\n"
12029 msgstr ""
12030
12031 #. type: textblock
12032 #: ../fish/guestfish-actions.pod:3920 ../src/guestfs-actions.pod:5939
12033 msgid ""
12034 "This call allows you to do a C<readlink> operation on multiple files, where "
12035 "all files are in the directory C<path>.  C<names> is the list of files from "
12036 "this directory."
12037 msgstr ""
12038
12039 #. type: textblock
12040 #: ../fish/guestfish-actions.pod:3924 ../src/guestfs-actions.pod:5943
12041 msgid ""
12042 "On return you get a list of strings, with a one-to-one correspondence to the "
12043 "C<names> list.  Each string is the value of the symbolic link."
12044 msgstr ""
12045
12046 #. type: textblock
12047 #: ../fish/guestfish-actions.pod:3928 ../src/guestfs-actions.pod:5947
12048 msgid ""
12049 "If the C<readlink(2)> operation fails on any name, then the corresponding "
12050 "result string is the empty string C<\"\">.  However the whole operation is "
12051 "completed even if there were C<readlink(2)> errors, and so you can call this "
12052 "function with names where you don't know if they are symbolic links already "
12053 "(albeit slightly less efficient)."
12054 msgstr ""
12055
12056 #. type: textblock
12057 #: ../fish/guestfish-actions.pod:3935 ../src/guestfs-actions.pod:5954
12058 msgid ""
12059 "This call is intended for programs that want to efficiently list a directory "
12060 "contents without making many round-trips.  Very long directory listings "
12061 "might cause the protocol message size to be exceeded, causing this call to "
12062 "fail.  The caller must split up such requests into smaller groups of names."
12063 msgstr ""
12064
12065 #. type: =head2
12066 #: ../fish/guestfish-actions.pod:3942
12067 msgid "realpath"
12068 msgstr ""
12069
12070 #. type: verbatim
12071 #: ../fish/guestfish-actions.pod:3944
12072 #, no-wrap
12073 msgid ""
12074 " realpath path\n"
12075 "\n"
12076 msgstr ""
12077
12078 #. type: textblock
12079 #: ../fish/guestfish-actions.pod:3946 ../src/guestfs-actions.pod:5973
12080 msgid ""
12081 "Return the canonicalized absolute pathname of C<path>.  The returned path "
12082 "has no C<.>, C<..> or symbolic link path elements."
12083 msgstr ""
12084
12085 #. type: =head2
12086 #: ../fish/guestfish-actions.pod:3949
12087 msgid "removexattr"
12088 msgstr ""
12089
12090 #. type: verbatim
12091 #: ../fish/guestfish-actions.pod:3951
12092 #, no-wrap
12093 msgid ""
12094 " removexattr xattr path\n"
12095 "\n"
12096 msgstr ""
12097
12098 #. type: textblock
12099 #: ../fish/guestfish-actions.pod:3953 ../src/guestfs-actions.pod:5988
12100 msgid "This call removes the extended attribute named C<xattr> of the file C<path>."
12101 msgstr ""
12102
12103 #. type: textblock
12104 #: ../fish/guestfish-actions.pod:3956
12105 msgid "See also: L</lremovexattr>, L<attr(5)>."
12106 msgstr ""
12107
12108 #. type: =head2
12109 #: ../fish/guestfish-actions.pod:3958
12110 msgid "resize2fs"
12111 msgstr ""
12112
12113 #. type: verbatim
12114 #: ../fish/guestfish-actions.pod:3960
12115 #, no-wrap
12116 msgid ""
12117 " resize2fs device\n"
12118 "\n"
12119 msgstr ""
12120
12121 #. type: textblock
12122 #: ../fish/guestfish-actions.pod:3962 ../src/guestfs-actions.pod:6003
12123 msgid ""
12124 "This resizes an ext2, ext3 or ext4 filesystem to match the size of the "
12125 "underlying device."
12126 msgstr ""
12127
12128 #. type: textblock
12129 #: ../fish/guestfish-actions.pod:3965
12130 msgid ""
12131 "I<Note:> It is sometimes required that you run L</e2fsck-f> on the C<device> "
12132 "before calling this command.  For unknown reasons C<resize2fs> sometimes "
12133 "gives an error about this and sometimes not.  In any case, it is always safe "
12134 "to call L</e2fsck-f> before calling this function."
12135 msgstr ""
12136
12137 #. type: =head2
12138 #: ../fish/guestfish-actions.pod:3971
12139 msgid "resize2fs-M"
12140 msgstr ""
12141
12142 #. type: verbatim
12143 #: ../fish/guestfish-actions.pod:3973
12144 #, no-wrap
12145 msgid ""
12146 " resize2fs-M device\n"
12147 "\n"
12148 msgstr ""
12149
12150 #. type: textblock
12151 #: ../fish/guestfish-actions.pod:3975
12152 msgid ""
12153 "This command is the same as L</resize2fs>, but the filesystem is resized to "
12154 "its minimum size.  This works like the I<-M> option to the C<resize2fs> "
12155 "command."
12156 msgstr ""
12157
12158 #. type: textblock
12159 #: ../fish/guestfish-actions.pod:3979
12160 msgid ""
12161 "To get the resulting size of the filesystem you should call L</tune2fs-l> "
12162 "and read the C<Block size> and C<Block count> values.  These two numbers, "
12163 "multiplied together, give the resulting size of the minimal filesystem in "
12164 "bytes."
12165 msgstr ""
12166
12167 #. type: =head2
12168 #: ../fish/guestfish-actions.pod:3984
12169 msgid "resize2fs-size"
12170 msgstr ""
12171
12172 #. type: verbatim
12173 #: ../fish/guestfish-actions.pod:3986
12174 #, no-wrap
12175 msgid ""
12176 " resize2fs-size device size\n"
12177 "\n"
12178 msgstr ""
12179
12180 #. type: textblock
12181 #: ../fish/guestfish-actions.pod:3988
12182 msgid ""
12183 "This command is the same as L</resize2fs> except that it allows you to "
12184 "specify the new size (in bytes) explicitly."
12185 msgstr ""
12186
12187 #. type: =head2
12188 #: ../fish/guestfish-actions.pod:3991
12189 msgid "rm"
12190 msgstr ""
12191
12192 #. type: verbatim
12193 #: ../fish/guestfish-actions.pod:3993
12194 #, no-wrap
12195 msgid ""
12196 " rm path\n"
12197 "\n"
12198 msgstr ""
12199
12200 #. type: textblock
12201 #: ../fish/guestfish-actions.pod:3995 ../src/guestfs-actions.pod:6055
12202 msgid "Remove the single file C<path>."
12203 msgstr ""
12204
12205 #. type: =head2
12206 #: ../fish/guestfish-actions.pod:3997
12207 msgid "rm-rf"
12208 msgstr ""
12209
12210 #. type: verbatim
12211 #: ../fish/guestfish-actions.pod:3999
12212 #, no-wrap
12213 msgid ""
12214 " rm-rf path\n"
12215 "\n"
12216 msgstr ""
12217
12218 #. type: textblock
12219 #: ../fish/guestfish-actions.pod:4001 ../src/guestfs-actions.pod:6067
12220 msgid ""
12221 "Remove the file or directory C<path>, recursively removing the contents if "
12222 "its a directory.  This is like the C<rm -rf> shell command."
12223 msgstr ""
12224
12225 #. type: =head2
12226 #: ../fish/guestfish-actions.pod:4005
12227 msgid "rmdir"
12228 msgstr ""
12229
12230 #. type: verbatim
12231 #: ../fish/guestfish-actions.pod:4007
12232 #, no-wrap
12233 msgid ""
12234 " rmdir path\n"
12235 "\n"
12236 msgstr ""
12237
12238 #. type: textblock
12239 #: ../fish/guestfish-actions.pod:4009 ../src/guestfs-actions.pod:6081
12240 msgid "Remove the single directory C<path>."
12241 msgstr ""
12242
12243 #. type: =head2
12244 #: ../fish/guestfish-actions.pod:4011
12245 msgid "rmmountpoint"
12246 msgstr ""
12247
12248 #. type: verbatim
12249 #: ../fish/guestfish-actions.pod:4013
12250 #, no-wrap
12251 msgid ""
12252 " rmmountpoint exemptpath\n"
12253 "\n"
12254 msgstr ""
12255
12256 #. type: textblock
12257 #: ../fish/guestfish-actions.pod:4015
12258 msgid ""
12259 "This calls removes a mountpoint that was previously created with "
12260 "L</mkmountpoint>.  See L</mkmountpoint> for full details."
12261 msgstr ""
12262
12263 #. type: =head2
12264 #: ../fish/guestfish-actions.pod:4019
12265 msgid "scrub-device"
12266 msgstr ""
12267
12268 #. type: verbatim
12269 #: ../fish/guestfish-actions.pod:4021
12270 #, no-wrap
12271 msgid ""
12272 " scrub-device device\n"
12273 "\n"
12274 msgstr ""
12275
12276 #. type: textblock
12277 #: ../fish/guestfish-actions.pod:4023 ../src/guestfs-actions.pod:6107
12278 msgid ""
12279 "This command writes patterns over C<device> to make data retrieval more "
12280 "difficult."
12281 msgstr ""
12282
12283 #. type: textblock
12284 #: ../fish/guestfish-actions.pod:4026 ../fish/guestfish-actions.pod:4041 ../fish/guestfish-actions.pod:4054 ../src/guestfs-actions.pod:6110 ../src/guestfs-actions.pod:6131 ../src/guestfs-actions.pod:6150
12285 msgid ""
12286 "It is an interface to the L<scrub(1)> program.  See that manual page for "
12287 "more details."
12288 msgstr ""
12289
12290 #. type: =head2
12291 #: ../fish/guestfish-actions.pod:4032
12292 msgid "scrub-file"
12293 msgstr ""
12294
12295 #. type: verbatim
12296 #: ../fish/guestfish-actions.pod:4034
12297 #, no-wrap
12298 msgid ""
12299 " scrub-file file\n"
12300 "\n"
12301 msgstr ""
12302
12303 #. type: textblock
12304 #: ../fish/guestfish-actions.pod:4036 ../src/guestfs-actions.pod:6126
12305 msgid ""
12306 "This command writes patterns over a file to make data retrieval more "
12307 "difficult."
12308 msgstr ""
12309
12310 #. type: textblock
12311 #: ../fish/guestfish-actions.pod:4039 ../src/guestfs-actions.pod:6129
12312 msgid "The file is I<removed> after scrubbing."
12313 msgstr ""
12314
12315 #. type: =head2
12316 #: ../fish/guestfish-actions.pod:4044
12317 msgid "scrub-freespace"
12318 msgstr ""
12319
12320 #. type: verbatim
12321 #: ../fish/guestfish-actions.pod:4046
12322 #, no-wrap
12323 msgid ""
12324 " scrub-freespace dir\n"
12325 "\n"
12326 msgstr ""
12327
12328 #. type: textblock
12329 #: ../fish/guestfish-actions.pod:4048
12330 msgid ""
12331 "This command creates the directory C<dir> and then fills it with files until "
12332 "the filesystem is full, and scrubs the files as for L</scrub-file>, and "
12333 "deletes them.  The intention is to scrub any free space on the partition "
12334 "containing C<dir>."
12335 msgstr ""
12336
12337 #. type: =head2
12338 #: ../fish/guestfish-actions.pod:4057
12339 msgid "set-append"
12340 msgstr ""
12341
12342 #. type: =head2
12343 #: ../fish/guestfish-actions.pod:4059
12344 msgid "append"
12345 msgstr ""
12346
12347 #. type: verbatim
12348 #: ../fish/guestfish-actions.pod:4061
12349 #, no-wrap
12350 msgid ""
12351 " set-append append\n"
12352 "\n"
12353 msgstr ""
12354
12355 #. type: textblock
12356 #: ../fish/guestfish-actions.pod:4063 ../src/guestfs-actions.pod:6163
12357 msgid ""
12358 "This function is used to add additional options to the guest kernel command "
12359 "line."
12360 msgstr ""
12361
12362 #. type: textblock
12363 #: ../fish/guestfish-actions.pod:4066 ../src/guestfs-actions.pod:6166
12364 msgid ""
12365 "The default is C<NULL> unless overridden by setting C<LIBGUESTFS_APPEND> "
12366 "environment variable."
12367 msgstr ""
12368
12369 #. type: textblock
12370 #: ../fish/guestfish-actions.pod:4069 ../src/guestfs-actions.pod:6169
12371 msgid ""
12372 "Setting C<append> to C<NULL> means I<no> additional options are passed "
12373 "(libguestfs always adds a few of its own)."
12374 msgstr ""
12375
12376 #. type: =head2
12377 #: ../fish/guestfish-actions.pod:4072
12378 msgid "set-attach-method"
12379 msgstr ""
12380
12381 #. type: =head2
12382 #: ../fish/guestfish-actions.pod:4074
12383 msgid "attach-method"
12384 msgstr ""
12385
12386 #. type: verbatim
12387 #: ../fish/guestfish-actions.pod:4076
12388 #, no-wrap
12389 msgid ""
12390 " set-attach-method attachmethod\n"
12391 "\n"
12392 msgstr ""
12393
12394 #. type: textblock
12395 #: ../fish/guestfish-actions.pod:4078 ../src/guestfs-actions.pod:6182
12396 msgid ""
12397 "Set the method that libguestfs uses to connect to the back end guestfsd "
12398 "daemon.  Possible methods are:"
12399 msgstr ""
12400
12401 #. type: =item
12402 #: ../fish/guestfish-actions.pod:4083 ../src/guestfs-actions.pod:6187 ../src/guestfs.pod:2796
12403 msgid "C<appliance>"
12404 msgstr ""
12405
12406 #. type: textblock
12407 #: ../fish/guestfish-actions.pod:4085 ../src/guestfs-actions.pod:6189
12408 msgid ""
12409 "Launch an appliance and connect to it.  This is the ordinary method and the "
12410 "default."
12411 msgstr ""
12412
12413 #. type: =item
12414 #: ../fish/guestfish-actions.pod:4088 ../src/guestfs-actions.pod:6192
12415 msgid "C<unix:I<path>>"
12416 msgstr ""
12417
12418 #. type: textblock
12419 #: ../fish/guestfish-actions.pod:4090 ../src/guestfs-actions.pod:6194
12420 msgid "Connect to the Unix domain socket I<path>."
12421 msgstr ""
12422
12423 #. type: textblock
12424 #: ../fish/guestfish-actions.pod:4092 ../src/guestfs-actions.pod:6196
12425 msgid ""
12426 "This method lets you connect to an existing daemon or (using virtio-serial) "
12427 "to a live guest.  For more information, see L<guestfs(3)/ATTACHING TO "
12428 "RUNNING DAEMONS>."
12429 msgstr ""
12430
12431 #. type: =head2
12432 #: ../fish/guestfish-actions.pod:4098
12433 msgid "set-autosync"
12434 msgstr ""
12435
12436 #. type: =head2
12437 #: ../fish/guestfish-actions.pod:4100
12438 msgid "autosync"
12439 msgstr ""
12440
12441 #. type: verbatim
12442 #: ../fish/guestfish-actions.pod:4102
12443 #, no-wrap
12444 msgid ""
12445 " set-autosync true|false\n"
12446 "\n"
12447 msgstr ""
12448
12449 #. type: textblock
12450 #: ../fish/guestfish-actions.pod:4104 ../src/guestfs-actions.pod:6212
12451 msgid ""
12452 "If C<autosync> is true, this enables autosync.  Libguestfs will make a best "
12453 "effort attempt to make filesystems consistent and synchronized when the "
12454 "handle is closed (also if the program exits without closing handles)."
12455 msgstr ""
12456
12457 #. type: textblock
12458 #: ../fish/guestfish-actions.pod:4109 ../src/guestfs-actions.pod:6217
12459 msgid ""
12460 "This is enabled by default (since libguestfs 1.5.24, previously it was "
12461 "disabled by default)."
12462 msgstr ""
12463
12464 #. type: =head2
12465 #: ../fish/guestfish-actions.pod:4112
12466 msgid "set-direct"
12467 msgstr ""
12468
12469 #. type: =head2
12470 #: ../fish/guestfish-actions.pod:4114
12471 msgid "direct"
12472 msgstr ""
12473
12474 #. type: verbatim
12475 #: ../fish/guestfish-actions.pod:4116
12476 #, no-wrap
12477 msgid ""
12478 " set-direct true|false\n"
12479 "\n"
12480 msgstr ""
12481
12482 #. type: textblock
12483 #: ../fish/guestfish-actions.pod:4118 ../src/guestfs-actions.pod:6230
12484 msgid ""
12485 "If the direct appliance mode flag is enabled, then stdin and stdout are "
12486 "passed directly through to the appliance once it is launched."
12487 msgstr ""
12488
12489 #. type: textblock
12490 #: ../fish/guestfish-actions.pod:4122
12491 msgid ""
12492 "One consequence of this is that log messages aren't caught by the library "
12493 "and handled by L</set-log-message-callback>, but go straight to stdout."
12494 msgstr ""
12495
12496 #. type: textblock
12497 #: ../fish/guestfish-actions.pod:4126 ../src/guestfs-actions.pod:6238
12498 msgid "You probably don't want to use this unless you know what you are doing."
12499 msgstr ""
12500
12501 #. type: textblock
12502 #: ../fish/guestfish-actions.pod:4129 ../src/guestfs-actions.pod:6241
12503 msgid "The default is disabled."
12504 msgstr ""
12505
12506 #. type: =head2
12507 #: ../fish/guestfish-actions.pod:4131
12508 msgid "set-e2label"
12509 msgstr ""
12510
12511 #. type: verbatim
12512 #: ../fish/guestfish-actions.pod:4133
12513 #, no-wrap
12514 msgid ""
12515 " set-e2label device label\n"
12516 "\n"
12517 msgstr ""
12518
12519 #. type: textblock
12520 #: ../fish/guestfish-actions.pod:4135 ../src/guestfs-actions.pod:6254
12521 msgid ""
12522 "This sets the ext2/3/4 filesystem label of the filesystem on C<device> to "
12523 "C<label>.  Filesystem labels are limited to 16 characters."
12524 msgstr ""
12525
12526 #. type: textblock
12527 #: ../fish/guestfish-actions.pod:4139
12528 msgid ""
12529 "You can use either L</tune2fs-l> or L</get-e2label> to return the existing "
12530 "label on a filesystem."
12531 msgstr ""
12532
12533 #. type: =head2
12534 #: ../fish/guestfish-actions.pod:4142
12535 msgid "set-e2uuid"
12536 msgstr ""
12537
12538 #. type: verbatim
12539 #: ../fish/guestfish-actions.pod:4144
12540 #, no-wrap
12541 msgid ""
12542 " set-e2uuid device uuid\n"
12543 "\n"
12544 msgstr ""
12545
12546 #. type: textblock
12547 #: ../fish/guestfish-actions.pod:4146 ../src/guestfs-actions.pod:6272
12548 msgid ""
12549 "This sets the ext2/3/4 filesystem UUID of the filesystem on C<device> to "
12550 "C<uuid>.  The format of the UUID and alternatives such as C<clear>, "
12551 "C<random> and C<time> are described in the L<tune2fs(8)> manpage."
12552 msgstr ""
12553
12554 #. type: textblock
12555 #: ../fish/guestfish-actions.pod:4151
12556 msgid ""
12557 "You can use either L</tune2fs-l> or L</get-e2uuid> to return the existing "
12558 "UUID of a filesystem."
12559 msgstr ""
12560
12561 #. type: =head2
12562 #: ../fish/guestfish-actions.pod:4154
12563 msgid "set-memsize"
12564 msgstr ""
12565
12566 #. type: =head2
12567 #: ../fish/guestfish-actions.pod:4156
12568 msgid "memsize"
12569 msgstr ""
12570
12571 #. type: verbatim
12572 #: ../fish/guestfish-actions.pod:4158
12573 #, no-wrap
12574 msgid ""
12575 " set-memsize memsize\n"
12576 "\n"
12577 msgstr ""
12578
12579 #. type: textblock
12580 #: ../fish/guestfish-actions.pod:4160
12581 msgid ""
12582 "This sets the memory size in megabytes allocated to the qemu subprocess.  "
12583 "This only has any effect if called before L</launch>."
12584 msgstr ""
12585
12586 #. type: textblock
12587 #: ../fish/guestfish-actions.pod:4164 ../src/guestfs-actions.pod:6294
12588 msgid ""
12589 "You can also change this by setting the environment variable "
12590 "C<LIBGUESTFS_MEMSIZE> before the handle is created."
12591 msgstr ""
12592
12593 #. type: =head2
12594 #: ../fish/guestfish-actions.pod:4171
12595 msgid "set-network"
12596 msgstr ""
12597
12598 #. type: =head2
12599 #: ../fish/guestfish-actions.pod:4173
12600 msgid "network"
12601 msgstr ""
12602
12603 #. type: verbatim
12604 #: ../fish/guestfish-actions.pod:4175
12605 #, no-wrap
12606 msgid ""
12607 " set-network true|false\n"
12608 "\n"
12609 msgstr ""
12610
12611 #. type: textblock
12612 #: ../fish/guestfish-actions.pod:4177 ../src/guestfs-actions.pod:6311
12613 msgid ""
12614 "If C<network> is true, then the network is enabled in the libguestfs "
12615 "appliance.  The default is false."
12616 msgstr ""
12617
12618 #. type: textblock
12619 #: ../fish/guestfish-actions.pod:4180 ../src/guestfs-actions.pod:6314
12620 msgid ""
12621 "This affects whether commands are able to access the network (see "
12622 "L<guestfs(3)/RUNNING COMMANDS>)."
12623 msgstr ""
12624
12625 #. type: textblock
12626 #: ../fish/guestfish-actions.pod:4183
12627 msgid "You must call this before calling L</launch>, otherwise it has no effect."
12628 msgstr ""
12629
12630 #. type: =head2
12631 #: ../fish/guestfish-actions.pod:4186
12632 msgid "set-path"
12633 msgstr ""
12634
12635 #. type: verbatim
12636 #: ../fish/guestfish-actions.pod:4190
12637 #, no-wrap
12638 msgid ""
12639 " set-path searchpath\n"
12640 "\n"
12641 msgstr ""
12642
12643 #. type: textblock
12644 #: ../fish/guestfish-actions.pod:4192 ../src/guestfs-actions.pod:6330
12645 msgid "Set the path that libguestfs searches for kernel and initrd.img."
12646 msgstr ""
12647
12648 #. type: textblock
12649 #: ../fish/guestfish-actions.pod:4194 ../src/guestfs-actions.pod:6332
12650 msgid ""
12651 "The default is C<$libdir/guestfs> unless overridden by setting "
12652 "C<LIBGUESTFS_PATH> environment variable."
12653 msgstr ""
12654
12655 #. type: textblock
12656 #: ../fish/guestfish-actions.pod:4197 ../src/guestfs-actions.pod:6335
12657 msgid "Setting C<path> to C<NULL> restores the default path."
12658 msgstr ""
12659
12660 #. type: =head2
12661 #: ../fish/guestfish-actions.pod:4199
12662 msgid "set-pgroup"
12663 msgstr ""
12664
12665 #. type: =head2
12666 #: ../fish/guestfish-actions.pod:4201
12667 msgid "pgroup"
12668 msgstr ""
12669
12670 #. type: verbatim
12671 #: ../fish/guestfish-actions.pod:4203
12672 #, no-wrap
12673 msgid ""
12674 " set-pgroup true|false\n"
12675 "\n"
12676 msgstr ""
12677
12678 #. type: textblock
12679 #: ../fish/guestfish-actions.pod:4205 ../src/guestfs-actions.pod:6347
12680 msgid ""
12681 "If C<pgroup> is true, child processes are placed into their own process "
12682 "group."
12683 msgstr ""
12684
12685 #. type: textblock
12686 #: ../fish/guestfish-actions.pod:4208 ../src/guestfs-actions.pod:6350
12687 msgid ""
12688 "The practical upshot of this is that signals like C<SIGINT> (from users "
12689 "pressing C<^C>) won't be received by the child process."
12690 msgstr ""
12691
12692 #. type: textblock
12693 #: ../fish/guestfish-actions.pod:4211 ../src/guestfs-actions.pod:6353
12694 msgid ""
12695 "The default for this flag is false, because usually you want C<^C> to kill "
12696 "the subprocess."
12697 msgstr ""
12698
12699 #. type: =head2
12700 #: ../fish/guestfish-actions.pod:4214
12701 msgid "set-qemu"
12702 msgstr ""
12703
12704 #. type: =head2
12705 #: ../fish/guestfish-actions.pod:4216
12706 msgid "qemu"
12707 msgstr ""
12708
12709 #. type: verbatim
12710 #: ../fish/guestfish-actions.pod:4218
12711 #, no-wrap
12712 msgid ""
12713 " set-qemu qemu\n"
12714 "\n"
12715 msgstr ""
12716
12717 #. type: textblock
12718 #: ../fish/guestfish-actions.pod:4220 ../src/guestfs-actions.pod:6366
12719 msgid "Set the qemu binary that we will use."
12720 msgstr ""
12721
12722 #. type: textblock
12723 #: ../fish/guestfish-actions.pod:4222 ../src/guestfs-actions.pod:6368
12724 msgid "The default is chosen when the library was compiled by the configure script."
12725 msgstr ""
12726
12727 #. type: textblock
12728 #: ../fish/guestfish-actions.pod:4225 ../src/guestfs-actions.pod:6371
12729 msgid ""
12730 "You can also override this by setting the C<LIBGUESTFS_QEMU> environment "
12731 "variable."
12732 msgstr ""
12733
12734 #. type: textblock
12735 #: ../fish/guestfish-actions.pod:4228 ../src/guestfs-actions.pod:6374
12736 msgid "Setting C<qemu> to C<NULL> restores the default qemu binary."
12737 msgstr ""
12738
12739 #. type: textblock
12740 #: ../fish/guestfish-actions.pod:4230 ../src/guestfs-actions.pod:6376
12741 msgid ""
12742 "Note that you should call this function as early as possible after creating "
12743 "the handle.  This is because some pre-launch operations depend on testing "
12744 "qemu features (by running C<qemu -help>).  If the qemu binary changes, we "
12745 "don't retest features, and so you might see inconsistent results.  Using the "
12746 "environment variable C<LIBGUESTFS_QEMU> is safest of all since that picks "
12747 "the qemu binary at the same time as the handle is created."
12748 msgstr ""
12749
12750 #. type: =head2
12751 #: ../fish/guestfish-actions.pod:4238
12752 msgid "set-recovery-proc"
12753 msgstr ""
12754
12755 #. type: =head2
12756 #: ../fish/guestfish-actions.pod:4240
12757 msgid "recovery-proc"
12758 msgstr ""
12759
12760 #. type: verbatim
12761 #: ../fish/guestfish-actions.pod:4242
12762 #, no-wrap
12763 msgid ""
12764 " set-recovery-proc true|false\n"
12765 "\n"
12766 msgstr ""
12767
12768 #. type: textblock
12769 #: ../fish/guestfish-actions.pod:4244
12770 msgid ""
12771 "If this is called with the parameter C<false> then L</launch> does not "
12772 "create a recovery process.  The purpose of the recovery process is to stop "
12773 "runaway qemu processes in the case where the main program aborts abruptly."
12774 msgstr ""
12775
12776 #. type: textblock
12777 #: ../fish/guestfish-actions.pod:4249
12778 msgid ""
12779 "This only has any effect if called before L</launch>, and the default is "
12780 "true."
12781 msgstr ""
12782
12783 #. type: textblock
12784 #: ../fish/guestfish-actions.pod:4252 ../src/guestfs-actions.pod:6402
12785 msgid ""
12786 "About the only time when you would want to disable this is if the main "
12787 "process will fork itself into the background (\"daemonize\" itself).  In "
12788 "this case the recovery process thinks that the main program has disappeared "
12789 "and so kills qemu, which is not very helpful."
12790 msgstr ""
12791
12792 #. type: =head2
12793 #: ../fish/guestfish-actions.pod:4258
12794 msgid "set-selinux"
12795 msgstr ""
12796
12797 #. type: =head2
12798 #: ../fish/guestfish-actions.pod:4260
12799 msgid "selinux"
12800 msgstr ""
12801
12802 #. type: verbatim
12803 #: ../fish/guestfish-actions.pod:4262
12804 #, no-wrap
12805 msgid ""
12806 " set-selinux true|false\n"
12807 "\n"
12808 msgstr ""
12809
12810 #. type: textblock
12811 #: ../fish/guestfish-actions.pod:4264 ../src/guestfs-actions.pod:6418
12812 msgid ""
12813 "This sets the selinux flag that is passed to the appliance at boot time.  "
12814 "The default is C<selinux=0> (disabled)."
12815 msgstr ""
12816
12817 #. type: textblock
12818 #: ../fish/guestfish-actions.pod:4267 ../src/guestfs-actions.pod:6421
12819 msgid ""
12820 "Note that if SELinux is enabled, it is always in Permissive mode "
12821 "(C<enforcing=0>)."
12822 msgstr ""
12823
12824 #. type: =head2
12825 #: ../fish/guestfish-actions.pod:4273
12826 msgid "set-trace"
12827 msgstr ""
12828
12829 #. type: =head2
12830 #: ../fish/guestfish-actions.pod:4275
12831 msgid "trace"
12832 msgstr ""
12833
12834 #. type: verbatim
12835 #: ../fish/guestfish-actions.pod:4277
12836 #, no-wrap
12837 msgid ""
12838 " set-trace true|false\n"
12839 "\n"
12840 msgstr ""
12841
12842 #. type: textblock
12843 #: ../fish/guestfish-actions.pod:4279 ../src/guestfs-actions.pod:6437
12844 msgid ""
12845 "If the command trace flag is set to 1, then libguestfs calls, parameters and "
12846 "return values are traced."
12847 msgstr ""
12848
12849 #. type: textblock
12850 #: ../fish/guestfish-actions.pod:4282 ../src/guestfs-actions.pod:6440
12851 msgid ""
12852 "If you want to trace C API calls into libguestfs (and other libraries) then "
12853 "possibly a better way is to use the external ltrace(1) command."
12854 msgstr ""
12855
12856 #. type: textblock
12857 #: ../fish/guestfish-actions.pod:4286 ../src/guestfs-actions.pod:6444
12858 msgid ""
12859 "Command traces are disabled unless the environment variable "
12860 "C<LIBGUESTFS_TRACE> is defined and set to C<1>."
12861 msgstr ""
12862
12863 #. type: textblock
12864 #: ../fish/guestfish-actions.pod:4289
12865 msgid ""
12866 "Trace messages are normally sent to C<stderr>, unless you register a "
12867 "callback to send them somewhere else (see L</set-event-callback>)."
12868 msgstr ""
12869
12870 #. type: =head2
12871 #: ../fish/guestfish-actions.pod:4293
12872 msgid "set-verbose"
12873 msgstr ""
12874
12875 #. type: =head2
12876 #: ../fish/guestfish-actions.pod:4295
12877 msgid "verbose"
12878 msgstr ""
12879
12880 #. type: verbatim
12881 #: ../fish/guestfish-actions.pod:4297
12882 #, no-wrap
12883 msgid ""
12884 " set-verbose true|false\n"
12885 "\n"
12886 msgstr ""
12887
12888 #. type: textblock
12889 #: ../fish/guestfish-actions.pod:4299 ../src/guestfs-actions.pod:6461
12890 msgid "If C<verbose> is true, this turns on verbose messages."
12891 msgstr ""
12892
12893 #. type: textblock
12894 #: ../fish/guestfish-actions.pod:4301 ../src/guestfs-actions.pod:6463
12895 msgid ""
12896 "Verbose messages are disabled unless the environment variable "
12897 "C<LIBGUESTFS_DEBUG> is defined and set to C<1>."
12898 msgstr ""
12899
12900 #. type: textblock
12901 #: ../fish/guestfish-actions.pod:4304
12902 msgid ""
12903 "Verbose messages are normally sent to C<stderr>, unless you register a "
12904 "callback to send them somewhere else (see L</set-event-callback>)."
12905 msgstr ""
12906
12907 #. type: =head2
12908 #: ../fish/guestfish-actions.pod:4308
12909 msgid "setcon"
12910 msgstr ""
12911
12912 #. type: verbatim
12913 #: ../fish/guestfish-actions.pod:4310
12914 #, no-wrap
12915 msgid ""
12916 " setcon context\n"
12917 "\n"
12918 msgstr ""
12919
12920 #. type: textblock
12921 #: ../fish/guestfish-actions.pod:4312 ../src/guestfs-actions.pod:6480
12922 msgid ""
12923 "This sets the SELinux security context of the daemon to the string "
12924 "C<context>."
12925 msgstr ""
12926
12927 #. type: textblock
12928 #: ../fish/guestfish-actions.pod:4315 ../src/guestfs-actions.pod:6483
12929 msgid "See the documentation about SELINUX in L<guestfs(3)>."
12930 msgstr ""
12931
12932 #. type: =head2
12933 #: ../fish/guestfish-actions.pod:4317
12934 msgid "setxattr"
12935 msgstr ""
12936
12937 #. type: verbatim
12938 #: ../fish/guestfish-actions.pod:4319
12939 #, no-wrap
12940 msgid ""
12941 " setxattr xattr val vallen path\n"
12942 "\n"
12943 msgstr ""
12944
12945 #. type: textblock
12946 #: ../fish/guestfish-actions.pod:4321 ../src/guestfs-actions.pod:6498
12947 msgid ""
12948 "This call sets the extended attribute named C<xattr> of the file C<path> to "
12949 "the value C<val> (of length C<vallen>).  The value is arbitrary 8 bit data."
12950 msgstr ""
12951
12952 #. type: textblock
12953 #: ../fish/guestfish-actions.pod:4325
12954 msgid "See also: L</lsetxattr>, L<attr(5)>."
12955 msgstr ""
12956
12957 #. type: =head2
12958 #: ../fish/guestfish-actions.pod:4327
12959 msgid "sfdisk"
12960 msgstr ""
12961
12962 #. type: verbatim
12963 #: ../fish/guestfish-actions.pod:4329
12964 #, no-wrap
12965 msgid ""
12966 " sfdisk device cyls heads sectors 'lines ...'\n"
12967 "\n"
12968 msgstr ""
12969
12970 #. type: textblock
12971 #: ../fish/guestfish-actions.pod:4331 ../src/guestfs-actions.pod:6525
12972 msgid ""
12973 "This is a direct interface to the L<sfdisk(8)> program for creating "
12974 "partitions on block devices."
12975 msgstr ""
12976
12977 #. type: textblock
12978 #: ../fish/guestfish-actions.pod:4334 ../src/guestfs-actions.pod:6528
12979 msgid "C<device> should be a block device, for example C</dev/sda>."
12980 msgstr ""
12981
12982 #. type: textblock
12983 #: ../fish/guestfish-actions.pod:4336 ../src/guestfs-actions.pod:6530
12984 msgid ""
12985 "C<cyls>, C<heads> and C<sectors> are the number of cylinders, heads and "
12986 "sectors on the device, which are passed directly to sfdisk as the I<-C>, "
12987 "I<-H> and I<-S> parameters.  If you pass C<0> for any of these, then the "
12988 "corresponding parameter is omitted.  Usually for 'large' disks, you can just "
12989 "pass C<0> for these, but for small (floppy-sized) disks, sfdisk (or rather, "
12990 "the kernel) cannot work out the right geometry and you will need to tell it."
12991 msgstr ""
12992
12993 #. type: textblock
12994 #: ../fish/guestfish-actions.pod:4344 ../src/guestfs-actions.pod:6538
12995 msgid ""
12996 "C<lines> is a list of lines that we feed to C<sfdisk>.  For more information "
12997 "refer to the L<sfdisk(8)> manpage."
12998 msgstr ""
12999
13000 #. type: textblock
13001 #: ../fish/guestfish-actions.pod:4347 ../src/guestfs-actions.pod:6541
13002 msgid ""
13003 "To create a single partition occupying the whole disk, you would pass "
13004 "C<lines> as a single element list, when the single element being the string "
13005 "C<,> (comma)."
13006 msgstr ""
13007
13008 #. type: textblock
13009 #: ../fish/guestfish-actions.pod:4351
13010 msgid "See also: L</sfdisk-l>, L</sfdisk-N>, L</part-init>"
13011 msgstr ""
13012
13013 #. type: textblock
13014 #: ../fish/guestfish-actions.pod:4357 ../fish/guestfish-actions.pod:4380 ../fish/guestfish-actions.pod:4402
13015 msgid ""
13016 "I<This function is deprecated.> In new code, use the L</part_add> call "
13017 "instead."
13018 msgstr ""
13019
13020 #. type: =head2
13021 #: ../fish/guestfish-actions.pod:4364
13022 msgid "sfdiskM"
13023 msgstr ""
13024
13025 #. type: verbatim
13026 #: ../fish/guestfish-actions.pod:4366
13027 #, no-wrap
13028 msgid ""
13029 " sfdiskM device 'lines ...'\n"
13030 "\n"
13031 msgstr ""
13032
13033 #. type: textblock
13034 #: ../fish/guestfish-actions.pod:4368
13035 msgid ""
13036 "This is a simplified interface to the L</sfdisk> command, where partition "
13037 "sizes are specified in megabytes only (rounded to the nearest cylinder) and "
13038 "you don't need to specify the cyls, heads and sectors parameters which were "
13039 "rarely if ever used anyway."
13040 msgstr ""
13041
13042 #. type: textblock
13043 #: ../fish/guestfish-actions.pod:4374
13044 msgid "See also: L</sfdisk>, the L<sfdisk(8)> manpage and L</part-disk>"
13045 msgstr ""
13046
13047 #. type: =head2
13048 #: ../fish/guestfish-actions.pod:4387
13049 msgid "sfdisk-N"
13050 msgstr ""
13051
13052 #. type: verbatim
13053 #: ../fish/guestfish-actions.pod:4389
13054 #, no-wrap
13055 msgid ""
13056 " sfdisk-N device partnum cyls heads sectors line\n"
13057 "\n"
13058 msgstr ""
13059
13060 #. type: textblock
13061 #: ../fish/guestfish-actions.pod:4391 ../src/guestfs-actions.pod:6603
13062 msgid ""
13063 "This runs L<sfdisk(8)> option to modify just the single partition C<n> "
13064 "(note: C<n> counts from 1)."
13065 msgstr ""
13066
13067 #. type: textblock
13068 #: ../fish/guestfish-actions.pod:4394
13069 msgid ""
13070 "For other parameters, see L</sfdisk>.  You should usually pass C<0> for the "
13071 "cyls/heads/sectors parameters."
13072 msgstr ""
13073
13074 #. type: textblock
13075 #: ../fish/guestfish-actions.pod:4397
13076 msgid "See also: L</part-add>"
13077 msgstr ""
13078
13079 #. type: =head2
13080 #: ../fish/guestfish-actions.pod:4409
13081 msgid "sfdisk-disk-geometry"
13082 msgstr ""
13083
13084 #. type: verbatim
13085 #: ../fish/guestfish-actions.pod:4411
13086 #, no-wrap
13087 msgid ""
13088 " sfdisk-disk-geometry device\n"
13089 "\n"
13090 msgstr ""
13091
13092 #. type: textblock
13093 #: ../fish/guestfish-actions.pod:4413
13094 msgid ""
13095 "This displays the disk geometry of C<device> read from the partition table.  "
13096 "Especially in the case where the underlying block device has been resized, "
13097 "this can be different from the kernel's idea of the geometry (see "
13098 "L</sfdisk-kernel-geometry>)."
13099 msgstr ""
13100
13101 #. type: textblock
13102 #: ../fish/guestfish-actions.pod:4418 ../fish/guestfish-actions.pod:4427 ../src/guestfs-actions.pod:6629 ../src/guestfs-actions.pod:6645
13103 msgid "The result is in human-readable format, and not designed to be parsed."
13104 msgstr ""
13105
13106 #. type: =head2
13107 #: ../fish/guestfish-actions.pod:4421
13108 msgid "sfdisk-kernel-geometry"
13109 msgstr ""
13110
13111 #. type: verbatim
13112 #: ../fish/guestfish-actions.pod:4423
13113 #, no-wrap
13114 msgid ""
13115 " sfdisk-kernel-geometry device\n"
13116 "\n"
13117 msgstr ""
13118
13119 #. type: textblock
13120 #: ../fish/guestfish-actions.pod:4425 ../src/guestfs-actions.pod:6643
13121 msgid "This displays the kernel's idea of the geometry of C<device>."
13122 msgstr ""
13123
13124 #. type: =head2
13125 #: ../fish/guestfish-actions.pod:4430
13126 msgid "sfdisk-l"
13127 msgstr ""
13128
13129 #. type: verbatim
13130 #: ../fish/guestfish-actions.pod:4432
13131 #, no-wrap
13132 msgid ""
13133 " sfdisk-l device\n"
13134 "\n"
13135 msgstr ""
13136
13137 #. type: textblock
13138 #: ../fish/guestfish-actions.pod:4434 ../src/guestfs-actions.pod:6666
13139 msgid ""
13140 "This displays the partition table on C<device>, in the human-readable output "
13141 "of the L<sfdisk(8)> command.  It is not intended to be parsed."
13142 msgstr ""
13143
13144 #. type: textblock
13145 #: ../fish/guestfish-actions.pod:4438
13146 msgid "See also: L</part-list>"
13147 msgstr ""
13148
13149 #. type: textblock
13150 #: ../fish/guestfish-actions.pod:4440
13151 msgid ""
13152 "I<This function is deprecated.> In new code, use the L</part_list> call "
13153 "instead."
13154 msgstr ""
13155
13156 #. type: =head2
13157 #: ../fish/guestfish-actions.pod:4447
13158 msgid "sh"
13159 msgstr ""
13160
13161 #. type: verbatim
13162 #: ../fish/guestfish-actions.pod:4449
13163 #, no-wrap
13164 msgid ""
13165 " sh command\n"
13166 "\n"
13167 msgstr ""
13168
13169 #. type: textblock
13170 #: ../fish/guestfish-actions.pod:4451 ../src/guestfs-actions.pod:6683
13171 msgid ""
13172 "This call runs a command from the guest filesystem via the guest's "
13173 "C</bin/sh>."
13174 msgstr ""
13175
13176 #. type: textblock
13177 #: ../fish/guestfish-actions.pod:4454
13178 msgid "This is like L</command>, but passes the command to:"
13179 msgstr ""
13180
13181 #. type: verbatim
13182 #: ../fish/guestfish-actions.pod:4456 ../src/guestfs-actions.pod:6688
13183 #, no-wrap
13184 msgid ""
13185 " /bin/sh -c \"command\"\n"
13186 "\n"
13187 msgstr ""
13188
13189 #. type: textblock
13190 #: ../fish/guestfish-actions.pod:4458 ../src/guestfs-actions.pod:6690
13191 msgid ""
13192 "Depending on the guest's shell, this usually results in wildcards being "
13193 "expanded, shell expressions being interpolated and so on."
13194 msgstr ""
13195
13196 #. type: textblock
13197 #: ../fish/guestfish-actions.pod:4462
13198 msgid "All the provisos about L</command> apply to this call."
13199 msgstr ""
13200
13201 #. type: =head2
13202 #: ../fish/guestfish-actions.pod:4464
13203 msgid "sh-lines"
13204 msgstr ""
13205
13206 #. type: verbatim
13207 #: ../fish/guestfish-actions.pod:4466
13208 #, no-wrap
13209 msgid ""
13210 " sh-lines command\n"
13211 "\n"
13212 msgstr ""
13213
13214 #. type: textblock
13215 #: ../fish/guestfish-actions.pod:4468
13216 msgid "This is the same as L</sh>, but splits the result into a list of lines."
13217 msgstr ""
13218
13219 #. type: textblock
13220 #: ../fish/guestfish-actions.pod:4471
13221 msgid "See also: L</command-lines>"
13222 msgstr ""
13223
13224 #. type: =head2
13225 #: ../fish/guestfish-actions.pod:4473
13226 msgid "sleep"
13227 msgstr ""
13228
13229 #. type: verbatim
13230 #: ../fish/guestfish-actions.pod:4475
13231 #, no-wrap
13232 msgid ""
13233 " sleep secs\n"
13234 "\n"
13235 msgstr ""
13236
13237 #. type: textblock
13238 #: ../fish/guestfish-actions.pod:4477 ../src/guestfs-actions.pod:6724
13239 msgid "Sleep for C<secs> seconds."
13240 msgstr ""
13241
13242 #. type: =head2
13243 #: ../fish/guestfish-actions.pod:4479
13244 msgid "stat"
13245 msgstr ""
13246
13247 #. type: verbatim
13248 #: ../fish/guestfish-actions.pod:4481
13249 #, no-wrap
13250 msgid ""
13251 " stat path\n"
13252 "\n"
13253 msgstr ""
13254
13255 #. type: textblock
13256 #: ../fish/guestfish-actions.pod:4485 ../src/guestfs-actions.pod:6738
13257 msgid "This is the same as the C<stat(2)> system call."
13258 msgstr ""
13259
13260 #. type: =head2
13261 #: ../fish/guestfish-actions.pod:4487
13262 msgid "statvfs"
13263 msgstr ""
13264
13265 #. type: verbatim
13266 #: ../fish/guestfish-actions.pod:4489
13267 #, no-wrap
13268 msgid ""
13269 " statvfs path\n"
13270 "\n"
13271 msgstr ""
13272
13273 #. type: textblock
13274 #: ../fish/guestfish-actions.pod:4491 ../src/guestfs-actions.pod:6752
13275 msgid ""
13276 "Returns file system statistics for any mounted file system.  C<path> should "
13277 "be a file or directory in the mounted file system (typically it is the mount "
13278 "point itself, but it doesn't need to be)."
13279 msgstr ""
13280
13281 #. type: textblock
13282 #: ../fish/guestfish-actions.pod:4495 ../src/guestfs-actions.pod:6756
13283 msgid "This is the same as the C<statvfs(2)> system call."
13284 msgstr ""
13285
13286 #. type: =head2
13287 #: ../fish/guestfish-actions.pod:4497
13288 msgid "strings"
13289 msgstr ""
13290
13291 #. type: verbatim
13292 #: ../fish/guestfish-actions.pod:4499
13293 #, no-wrap
13294 msgid ""
13295 " strings path\n"
13296 "\n"
13297 msgstr ""
13298
13299 #. type: textblock
13300 #: ../fish/guestfish-actions.pod:4501 ../src/guestfs-actions.pod:6770
13301 msgid ""
13302 "This runs the L<strings(1)> command on a file and returns the list of "
13303 "printable strings found."
13304 msgstr ""
13305
13306 #. type: =head2
13307 #: ../fish/guestfish-actions.pod:4507
13308 msgid "strings-e"
13309 msgstr ""
13310
13311 #. type: verbatim
13312 #: ../fish/guestfish-actions.pod:4509
13313 #, no-wrap
13314 msgid ""
13315 " strings-e encoding path\n"
13316 "\n"
13317 msgstr ""
13318
13319 #. type: textblock
13320 #: ../fish/guestfish-actions.pod:4511
13321 msgid ""
13322 "This is like the L</strings> command, but allows you to specify the encoding "
13323 "of strings that are looked for in the source file C<path>."
13324 msgstr ""
13325
13326 #. type: textblock
13327 #: ../fish/guestfish-actions.pod:4515 ../src/guestfs-actions.pod:6793
13328 msgid "Allowed encodings are:"
13329 msgstr ""
13330
13331 #. type: =item
13332 #: ../fish/guestfish-actions.pod:4519 ../src/guestfs-actions.pod:6797
13333 msgid "s"
13334 msgstr ""
13335
13336 #. type: textblock
13337 #: ../fish/guestfish-actions.pod:4521
13338 msgid ""
13339 "Single 7-bit-byte characters like ASCII and the ASCII-compatible parts of "
13340 "ISO-8859-X (this is what L</strings> uses)."
13341 msgstr ""
13342
13343 #. type: =item
13344 #: ../fish/guestfish-actions.pod:4524 ../src/guestfs-actions.pod:6802
13345 msgid "S"
13346 msgstr ""
13347
13348 #. type: textblock
13349 #: ../fish/guestfish-actions.pod:4526 ../src/guestfs-actions.pod:6804
13350 msgid "Single 8-bit-byte characters."
13351 msgstr ""
13352
13353 #. type: =item
13354 #: ../fish/guestfish-actions.pod:4528 ../src/guestfs-actions.pod:6806
13355 msgid "b"
13356 msgstr ""
13357
13358 #. type: textblock
13359 #: ../fish/guestfish-actions.pod:4530 ../src/guestfs-actions.pod:6808
13360 msgid "16-bit big endian strings such as those encoded in UTF-16BE or UCS-2BE."
13361 msgstr ""
13362
13363 #. type: =item
13364 #: ../fish/guestfish-actions.pod:4533 ../src/guestfs-actions.pod:6811
13365 msgid "l (lower case letter L)"
13366 msgstr ""
13367
13368 #. type: textblock
13369 #: ../fish/guestfish-actions.pod:4535 ../src/guestfs-actions.pod:6813
13370 msgid ""
13371 "16-bit little endian such as UTF-16LE and UCS-2LE.  This is useful for "
13372 "examining binaries in Windows guests."
13373 msgstr ""
13374
13375 #. type: =item
13376 #: ../fish/guestfish-actions.pod:4538 ../src/guestfs-actions.pod:6816
13377 msgid "B"
13378 msgstr ""
13379
13380 #. type: textblock
13381 #: ../fish/guestfish-actions.pod:4540 ../src/guestfs-actions.pod:6818
13382 msgid "32-bit big endian such as UCS-4BE."
13383 msgstr ""
13384
13385 #. type: =item
13386 #: ../fish/guestfish-actions.pod:4542 ../src/guestfs-actions.pod:6820
13387 msgid "L"
13388 msgstr ""
13389
13390 #. type: textblock
13391 #: ../fish/guestfish-actions.pod:4544 ../src/guestfs-actions.pod:6822
13392 msgid "32-bit little endian such as UCS-4LE."
13393 msgstr ""
13394
13395 #. type: textblock
13396 #: ../fish/guestfish-actions.pod:4548 ../src/guestfs-actions.pod:6826
13397 msgid "The returned strings are transcoded to UTF-8."
13398 msgstr ""
13399
13400 #. type: =head2
13401 #: ../fish/guestfish-actions.pod:4553
13402 msgid "swapoff-device"
13403 msgstr ""
13404
13405 #. type: verbatim
13406 #: ../fish/guestfish-actions.pod:4555
13407 #, no-wrap
13408 msgid ""
13409 " swapoff-device device\n"
13410 "\n"
13411 msgstr ""
13412
13413 #. type: textblock
13414 #: ../fish/guestfish-actions.pod:4557
13415 msgid ""
13416 "This command disables the libguestfs appliance swap device or partition "
13417 "named C<device>.  See L</swapon-device>."
13418 msgstr ""
13419
13420 #. type: =head2
13421 #: ../fish/guestfish-actions.pod:4561
13422 msgid "swapoff-file"
13423 msgstr ""
13424
13425 #. type: verbatim
13426 #: ../fish/guestfish-actions.pod:4563
13427 #, no-wrap
13428 msgid ""
13429 " swapoff-file file\n"
13430 "\n"
13431 msgstr ""
13432
13433 #. type: textblock
13434 #: ../fish/guestfish-actions.pod:4565 ../src/guestfs-actions.pod:6857
13435 msgid "This command disables the libguestfs appliance swap on file."
13436 msgstr ""
13437
13438 #. type: =head2
13439 #: ../fish/guestfish-actions.pod:4567
13440 msgid "swapoff-label"
13441 msgstr ""
13442
13443 #. type: verbatim
13444 #: ../fish/guestfish-actions.pod:4569
13445 #, no-wrap
13446 msgid ""
13447 " swapoff-label label\n"
13448 "\n"
13449 msgstr ""
13450
13451 #. type: textblock
13452 #: ../fish/guestfish-actions.pod:4571 ../src/guestfs-actions.pod:6869
13453 msgid ""
13454 "This command disables the libguestfs appliance swap on labeled swap "
13455 "partition."
13456 msgstr ""
13457
13458 #. type: =head2
13459 #: ../fish/guestfish-actions.pod:4574
13460 msgid "swapoff-uuid"
13461 msgstr ""
13462
13463 #. type: verbatim
13464 #: ../fish/guestfish-actions.pod:4576
13465 #, no-wrap
13466 msgid ""
13467 " swapoff-uuid uuid\n"
13468 "\n"
13469 msgstr ""
13470
13471 #. type: textblock
13472 #: ../fish/guestfish-actions.pod:4578 ../src/guestfs-actions.pod:6882
13473 msgid ""
13474 "This command disables the libguestfs appliance swap partition with the given "
13475 "UUID."
13476 msgstr ""
13477
13478 #. type: =head2
13479 #: ../fish/guestfish-actions.pod:4581
13480 msgid "swapon-device"
13481 msgstr ""
13482
13483 #. type: verbatim
13484 #: ../fish/guestfish-actions.pod:4583
13485 #, no-wrap
13486 msgid ""
13487 " swapon-device device\n"
13488 "\n"
13489 msgstr ""
13490
13491 #. type: textblock
13492 #: ../fish/guestfish-actions.pod:4585
13493 msgid ""
13494 "This command enables the libguestfs appliance to use the swap device or "
13495 "partition named C<device>.  The increased memory is made available for all "
13496 "commands, for example those run using L</command> or L</sh>."
13497 msgstr ""
13498
13499 #. type: textblock
13500 #: ../fish/guestfish-actions.pod:4590 ../src/guestfs-actions.pod:6900
13501 msgid ""
13502 "Note that you should not swap to existing guest swap partitions unless you "
13503 "know what you are doing.  They may contain hibernation information, or other "
13504 "information that the guest doesn't want you to trash.  You also risk leaking "
13505 "information about the host to the guest this way.  Instead, attach a new "
13506 "host device to the guest and swap on that."
13507 msgstr ""
13508
13509 #. type: =head2
13510 #: ../fish/guestfish-actions.pod:4597
13511 msgid "swapon-file"
13512 msgstr ""
13513
13514 #. type: verbatim
13515 #: ../fish/guestfish-actions.pod:4599
13516 #, no-wrap
13517 msgid ""
13518 " swapon-file file\n"
13519 "\n"
13520 msgstr ""
13521
13522 #. type: textblock
13523 #: ../fish/guestfish-actions.pod:4601
13524 msgid "This command enables swap to a file.  See L</swapon-device> for other notes."
13525 msgstr ""
13526
13527 #. type: =head2
13528 #: ../fish/guestfish-actions.pod:4604
13529 msgid "swapon-label"
13530 msgstr ""
13531
13532 #. type: verbatim
13533 #: ../fish/guestfish-actions.pod:4606
13534 #, no-wrap
13535 msgid ""
13536 " swapon-label label\n"
13537 "\n"
13538 msgstr ""
13539
13540 #. type: textblock
13541 #: ../fish/guestfish-actions.pod:4608
13542 msgid ""
13543 "This command enables swap to a labeled swap partition.  See "
13544 "L</swapon-device> for other notes."
13545 msgstr ""
13546
13547 #. type: =head2
13548 #: ../fish/guestfish-actions.pod:4611
13549 msgid "swapon-uuid"
13550 msgstr ""
13551
13552 #. type: verbatim
13553 #: ../fish/guestfish-actions.pod:4613
13554 #, no-wrap
13555 msgid ""
13556 " swapon-uuid uuid\n"
13557 "\n"
13558 msgstr ""
13559
13560 #. type: textblock
13561 #: ../fish/guestfish-actions.pod:4615
13562 msgid ""
13563 "This command enables swap to a swap partition with the given UUID.  See "
13564 "L</swapon-device> for other notes."
13565 msgstr ""
13566
13567 #. type: =head2
13568 #: ../fish/guestfish-actions.pod:4618
13569 msgid "sync"
13570 msgstr ""
13571
13572 #. type: verbatim
13573 #: ../fish/guestfish-actions.pod:4620
13574 #, no-wrap
13575 msgid ""
13576 " sync\n"
13577 "\n"
13578 msgstr ""
13579
13580 #. type: textblock
13581 #: ../fish/guestfish-actions.pod:4622 ../src/guestfs-actions.pod:6955
13582 msgid ""
13583 "This syncs the disk, so that any writes are flushed through to the "
13584 "underlying disk image."
13585 msgstr ""
13586
13587 #. type: textblock
13588 #: ../fish/guestfish-actions.pod:4625 ../src/guestfs-actions.pod:6958
13589 msgid ""
13590 "You should always call this if you have modified a disk image, before "
13591 "closing the handle."
13592 msgstr ""
13593
13594 #. type: =head2
13595 #: ../fish/guestfish-actions.pod:4628
13596 msgid "tail"
13597 msgstr ""
13598
13599 #. type: verbatim
13600 #: ../fish/guestfish-actions.pod:4630
13601 #, no-wrap
13602 msgid ""
13603 " tail path\n"
13604 "\n"
13605 msgstr ""
13606
13607 #. type: textblock
13608 #: ../fish/guestfish-actions.pod:4632 ../src/guestfs-actions.pod:6971
13609 msgid "This command returns up to the last 10 lines of a file as a list of strings."
13610 msgstr ""
13611
13612 #. type: =head2
13613 #: ../fish/guestfish-actions.pod:4638
13614 msgid "tail-n"
13615 msgstr ""
13616
13617 #. type: verbatim
13618 #: ../fish/guestfish-actions.pod:4640
13619 #, no-wrap
13620 msgid ""
13621 " tail-n nrlines path\n"
13622 "\n"
13623 msgstr ""
13624
13625 #. type: textblock
13626 #: ../fish/guestfish-actions.pod:4642 ../src/guestfs-actions.pod:6990
13627 msgid ""
13628 "If the parameter C<nrlines> is a positive number, this returns the last "
13629 "C<nrlines> lines of the file C<path>."
13630 msgstr ""
13631
13632 #. type: textblock
13633 #: ../fish/guestfish-actions.pod:4645 ../src/guestfs-actions.pod:6993
13634 msgid ""
13635 "If the parameter C<nrlines> is a negative number, this returns lines from "
13636 "the file C<path>, starting with the C<-nrlines>th line."
13637 msgstr ""
13638
13639 #. type: =head2
13640 #: ../fish/guestfish-actions.pod:4653
13641 msgid "tar-in"
13642 msgstr ""
13643
13644 #. type: verbatim
13645 #: ../fish/guestfish-actions.pod:4655
13646 #, no-wrap
13647 msgid ""
13648 " tar-in (tarfile|-) directory\n"
13649 "\n"
13650 msgstr ""
13651
13652 #. type: textblock
13653 #: ../fish/guestfish-actions.pod:4657 ../src/guestfs-actions.pod:7014
13654 msgid ""
13655 "This command uploads and unpacks local file C<tarfile> (an I<uncompressed> "
13656 "tar file) into C<directory>."
13657 msgstr ""
13658
13659 #. type: textblock
13660 #: ../fish/guestfish-actions.pod:4660
13661 msgid "To upload a compressed tarball, use L</tgz-in> or L</txz-in>."
13662 msgstr ""
13663
13664 #. type: =head2
13665 #: ../fish/guestfish-actions.pod:4665
13666 msgid "tar-out"
13667 msgstr ""
13668
13669 #. type: verbatim
13670 #: ../fish/guestfish-actions.pod:4667
13671 #, no-wrap
13672 msgid ""
13673 " tar-out directory (tarfile|-)\n"
13674 "\n"
13675 msgstr ""
13676
13677 #. type: textblock
13678 #: ../fish/guestfish-actions.pod:4669 ../src/guestfs-actions.pod:7031
13679 msgid ""
13680 "This command packs the contents of C<directory> and downloads it to local "
13681 "file C<tarfile>."
13682 msgstr ""
13683
13684 #. type: textblock
13685 #: ../fish/guestfish-actions.pod:4672
13686 msgid "To download a compressed tarball, use L</tgz-out> or L</txz-out>."
13687 msgstr ""
13688
13689 #. type: =head2
13690 #: ../fish/guestfish-actions.pod:4677
13691 msgid "tgz-in"
13692 msgstr ""
13693
13694 #. type: verbatim
13695 #: ../fish/guestfish-actions.pod:4679
13696 #, no-wrap
13697 msgid ""
13698 " tgz-in (tarball|-) directory\n"
13699 "\n"
13700 msgstr ""
13701
13702 #. type: textblock
13703 #: ../fish/guestfish-actions.pod:4681 ../src/guestfs-actions.pod:7048
13704 msgid ""
13705 "This command uploads and unpacks local file C<tarball> (a I<gzip compressed> "
13706 "tar file) into C<directory>."
13707 msgstr ""
13708
13709 #. type: textblock
13710 #: ../fish/guestfish-actions.pod:4684
13711 msgid "To upload an uncompressed tarball, use L</tar-in>."
13712 msgstr ""
13713
13714 #. type: =head2
13715 #: ../fish/guestfish-actions.pod:4688
13716 msgid "tgz-out"
13717 msgstr ""
13718
13719 #. type: verbatim
13720 #: ../fish/guestfish-actions.pod:4690
13721 #, no-wrap
13722 msgid ""
13723 " tgz-out directory (tarball|-)\n"
13724 "\n"
13725 msgstr ""
13726
13727 #. type: textblock
13728 #: ../fish/guestfish-actions.pod:4692 ../src/guestfs-actions.pod:7064
13729 msgid ""
13730 "This command packs the contents of C<directory> and downloads it to local "
13731 "file C<tarball>."
13732 msgstr ""
13733
13734 #. type: textblock
13735 #: ../fish/guestfish-actions.pod:4695
13736 msgid "To download an uncompressed tarball, use L</tar-out>."
13737 msgstr ""
13738
13739 #. type: =head2
13740 #: ../fish/guestfish-actions.pod:4699
13741 msgid "touch"
13742 msgstr ""
13743
13744 #. type: verbatim
13745 #: ../fish/guestfish-actions.pod:4701
13746 #, no-wrap
13747 msgid ""
13748 " touch path\n"
13749 "\n"
13750 msgstr ""
13751
13752 #. type: textblock
13753 #: ../fish/guestfish-actions.pod:4703 ../src/guestfs-actions.pod:7079
13754 msgid ""
13755 "Touch acts like the L<touch(1)> command.  It can be used to update the "
13756 "timestamps on a file, or, if the file does not exist, to create a new "
13757 "zero-length file."
13758 msgstr ""
13759
13760 #. type: textblock
13761 #: ../fish/guestfish-actions.pod:4707 ../src/guestfs-actions.pod:7083
13762 msgid ""
13763 "This command only works on regular files, and will fail on other file types "
13764 "such as directories, symbolic links, block special etc."
13765 msgstr ""
13766
13767 #. type: =head2
13768 #: ../fish/guestfish-actions.pod:4710
13769 msgid "truncate"
13770 msgstr ""
13771
13772 #. type: verbatim
13773 #: ../fish/guestfish-actions.pod:4712
13774 #, no-wrap
13775 msgid ""
13776 " truncate path\n"
13777 "\n"
13778 msgstr ""
13779
13780 #. type: textblock
13781 #: ../fish/guestfish-actions.pod:4714 ../src/guestfs-actions.pod:7096
13782 msgid ""
13783 "This command truncates C<path> to a zero-length file.  The file must exist "
13784 "already."
13785 msgstr ""
13786
13787 #. type: =head2
13788 #: ../fish/guestfish-actions.pod:4717
13789 msgid "truncate-size"
13790 msgstr ""
13791
13792 #. type: verbatim
13793 #: ../fish/guestfish-actions.pod:4719
13794 #, no-wrap
13795 msgid ""
13796 " truncate-size path size\n"
13797 "\n"
13798 msgstr ""
13799
13800 #. type: textblock
13801 #: ../fish/guestfish-actions.pod:4721 ../src/guestfs-actions.pod:7110
13802 msgid ""
13803 "This command truncates C<path> to size C<size> bytes.  The file must exist "
13804 "already."
13805 msgstr ""
13806
13807 #. type: textblock
13808 #: ../fish/guestfish-actions.pod:4724
13809 msgid ""
13810 "If the current file size is less than C<size> then the file is extended to "
13811 "the required size with zero bytes.  This creates a sparse file (ie. disk "
13812 "blocks are not allocated for the file until you write to it).  To create a "
13813 "non-sparse file of zeroes, use L</fallocate64> instead."
13814 msgstr ""
13815
13816 #. type: =head2
13817 #: ../fish/guestfish-actions.pod:4730
13818 msgid "tune2fs-l"
13819 msgstr ""
13820
13821 #. type: verbatim
13822 #: ../fish/guestfish-actions.pod:4732
13823 #, no-wrap
13824 msgid ""
13825 " tune2fs-l device\n"
13826 "\n"
13827 msgstr ""
13828
13829 #. type: textblock
13830 #: ../fish/guestfish-actions.pod:4734 ../src/guestfs-actions.pod:7129
13831 msgid ""
13832 "This returns the contents of the ext2, ext3 or ext4 filesystem superblock on "
13833 "C<device>."
13834 msgstr ""
13835
13836 #. type: textblock
13837 #: ../fish/guestfish-actions.pod:4737 ../src/guestfs-actions.pod:7132
13838 msgid ""
13839 "It is the same as running C<tune2fs -l device>.  See L<tune2fs(8)> manpage "
13840 "for more details.  The list of fields returned isn't clearly defined, and "
13841 "depends on both the version of C<tune2fs> that libguestfs was built against, "
13842 "and the filesystem itself."
13843 msgstr ""
13844
13845 #. type: =head2
13846 #: ../fish/guestfish-actions.pod:4742
13847 msgid "txz-in"
13848 msgstr ""
13849
13850 #. type: verbatim
13851 #: ../fish/guestfish-actions.pod:4744
13852 #, no-wrap
13853 msgid ""
13854 " txz-in (tarball|-) directory\n"
13855 "\n"
13856 msgstr ""
13857
13858 #. type: textblock
13859 #: ../fish/guestfish-actions.pod:4746 ../src/guestfs-actions.pod:7152
13860 msgid ""
13861 "This command uploads and unpacks local file C<tarball> (an I<xz compressed> "
13862 "tar file) into C<directory>."
13863 msgstr ""
13864
13865 #. type: =head2
13866 #: ../fish/guestfish-actions.pod:4751
13867 msgid "txz-out"
13868 msgstr ""
13869
13870 #. type: verbatim
13871 #: ../fish/guestfish-actions.pod:4753
13872 #, no-wrap
13873 msgid ""
13874 " txz-out directory (tarball|-)\n"
13875 "\n"
13876 msgstr ""
13877
13878 #. type: textblock
13879 #: ../fish/guestfish-actions.pod:4755 ../src/guestfs-actions.pod:7166
13880 msgid ""
13881 "This command packs the contents of C<directory> and downloads it to local "
13882 "file C<tarball> (as an xz compressed tar archive)."
13883 msgstr ""
13884
13885 #. type: =head2
13886 #: ../fish/guestfish-actions.pod:4760
13887 msgid "umask"
13888 msgstr ""
13889
13890 #. type: verbatim
13891 #: ../fish/guestfish-actions.pod:4762
13892 #, no-wrap
13893 msgid ""
13894 " umask mask\n"
13895 "\n"
13896 msgstr ""
13897
13898 #. type: textblock
13899 #: ../fish/guestfish-actions.pod:4764 ../src/guestfs-actions.pod:7179
13900 msgid ""
13901 "This function sets the mask used for creating new files and device nodes to "
13902 "C<mask & 0777>."
13903 msgstr ""
13904
13905 #. type: textblock
13906 #: ../fish/guestfish-actions.pod:4767 ../src/guestfs-actions.pod:7182
13907 msgid ""
13908 "Typical umask values would be C<022> which creates new files with "
13909 "permissions like \"-rw-r--r--\" or \"-rwxr-xr-x\", and C<002> which creates "
13910 "new files with permissions like \"-rw-rw-r--\" or \"-rwxrwxr-x\"."
13911 msgstr ""
13912
13913 #. type: textblock
13914 #: ../fish/guestfish-actions.pod:4772 ../src/guestfs-actions.pod:7187
13915 msgid ""
13916 "The default umask is C<022>.  This is important because it means that "
13917 "directories and device nodes will be created with C<0644> or C<0755> mode "
13918 "even if you specify C<0777>."
13919 msgstr ""
13920
13921 #. type: textblock
13922 #: ../fish/guestfish-actions.pod:4776
13923 msgid "See also L</get-umask>, L<umask(2)>, L</mknod>, L</mkdir>."
13924 msgstr ""
13925
13926 #. type: textblock
13927 #: ../fish/guestfish-actions.pod:4779 ../src/guestfs-actions.pod:7194
13928 msgid "This call returns the previous umask."
13929 msgstr ""
13930
13931 #. type: =head2
13932 #: ../fish/guestfish-actions.pod:4781
13933 msgid "umount"
13934 msgstr ""
13935
13936 #. type: =head2
13937 #: ../fish/guestfish-actions.pod:4783
13938 msgid "unmount"
13939 msgstr ""
13940
13941 #. type: verbatim
13942 #: ../fish/guestfish-actions.pod:4785
13943 #, no-wrap
13944 msgid ""
13945 " umount pathordevice\n"
13946 "\n"
13947 msgstr ""
13948
13949 #. type: textblock
13950 #: ../fish/guestfish-actions.pod:4787 ../src/guestfs-actions.pod:7206
13951 msgid ""
13952 "This unmounts the given filesystem.  The filesystem may be specified either "
13953 "by its mountpoint (path) or the device which contains the filesystem."
13954 msgstr ""
13955
13956 #. type: =head2
13957 #: ../fish/guestfish-actions.pod:4791
13958 msgid "umount-all"
13959 msgstr ""
13960
13961 #. type: =head2
13962 #: ../fish/guestfish-actions.pod:4793
13963 msgid "unmount-all"
13964 msgstr ""
13965
13966 #. type: verbatim
13967 #: ../fish/guestfish-actions.pod:4795
13968 #, no-wrap
13969 msgid ""
13970 " umount-all\n"
13971 "\n"
13972 msgstr ""
13973
13974 #. type: textblock
13975 #: ../fish/guestfish-actions.pod:4797 ../src/guestfs-actions.pod:7219
13976 msgid "This unmounts all mounted filesystems."
13977 msgstr ""
13978
13979 #. type: textblock
13980 #: ../fish/guestfish-actions.pod:4799 ../src/guestfs-actions.pod:7221
13981 msgid "Some internal mounts are not unmounted by this call."
13982 msgstr ""
13983
13984 #. type: =head2
13985 #: ../fish/guestfish-actions.pod:4801
13986 msgid "upload"
13987 msgstr ""
13988
13989 #. type: verbatim
13990 #: ../fish/guestfish-actions.pod:4803
13991 #, no-wrap
13992 msgid ""
13993 " upload (filename|-) remotefilename\n"
13994 "\n"
13995 msgstr ""
13996
13997 #. type: textblock
13998 #: ../fish/guestfish-actions.pod:4805 ../fish/guestfish-actions.pod:4818 ../src/guestfs-actions.pod:7234 ../src/guestfs-actions.pod:7258
13999 msgid "Upload local file C<filename> to C<remotefilename> on the filesystem."
14000 msgstr ""
14001
14002 #. type: textblock
14003 #: ../fish/guestfish-actions.pod:4810
14004 msgid "See also L</download>."
14005 msgstr ""
14006
14007 #. type: =head2
14008 #: ../fish/guestfish-actions.pod:4814
14009 msgid "upload-offset"
14010 msgstr ""
14011
14012 #. type: verbatim
14013 #: ../fish/guestfish-actions.pod:4816
14014 #, no-wrap
14015 msgid ""
14016 " upload-offset (filename|-) remotefilename offset\n"
14017 "\n"
14018 msgstr ""
14019
14020 #. type: textblock
14021 #: ../fish/guestfish-actions.pod:4821 ../src/guestfs-actions.pod:7261
14022 msgid ""
14023 "C<remotefilename> is overwritten starting at the byte C<offset> specified.  "
14024 "The intention is to overwrite parts of existing files or devices, although "
14025 "if a non-existant file is specified then it is created with a \"hole\" "
14026 "before C<offset>.  The size of the data written is implicit in the size of "
14027 "the source C<filename>."
14028 msgstr ""
14029
14030 #. type: textblock
14031 #: ../fish/guestfish-actions.pod:4828
14032 msgid ""
14033 "Note that there is no limit on the amount of data that can be uploaded with "
14034 "this call, unlike with L</pwrite>, and this call always writes the full "
14035 "amount unless an error occurs."
14036 msgstr ""
14037
14038 #. type: textblock
14039 #: ../fish/guestfish-actions.pod:4833
14040 msgid "See also L</upload>, L</pwrite>."
14041 msgstr ""
14042
14043 #. type: =head2
14044 #: ../fish/guestfish-actions.pod:4837
14045 msgid "utimens"
14046 msgstr ""
14047
14048 #. type: verbatim
14049 #: ../fish/guestfish-actions.pod:4839
14050 #, no-wrap
14051 msgid ""
14052 " utimens path atsecs atnsecs mtsecs mtnsecs\n"
14053 "\n"
14054 msgstr ""
14055
14056 #. type: textblock
14057 #: ../fish/guestfish-actions.pod:4841 ../src/guestfs-actions.pod:7294
14058 msgid "This command sets the timestamps of a file with nanosecond precision."
14059 msgstr ""
14060
14061 #. type: textblock
14062 #: ../fish/guestfish-actions.pod:4844 ../src/guestfs-actions.pod:7297
14063 msgid ""
14064 "C<atsecs, atnsecs> are the last access time (atime) in secs and nanoseconds "
14065 "from the epoch."
14066 msgstr ""
14067
14068 #. type: textblock
14069 #: ../fish/guestfish-actions.pod:4847 ../src/guestfs-actions.pod:7300
14070 msgid ""
14071 "C<mtsecs, mtnsecs> are the last modification time (mtime) in secs and "
14072 "nanoseconds from the epoch."
14073 msgstr ""
14074
14075 #. type: textblock
14076 #: ../fish/guestfish-actions.pod:4850 ../src/guestfs-actions.pod:7303
14077 msgid ""
14078 "If the C<*nsecs> field contains the special value C<-1> then the "
14079 "corresponding timestamp is set to the current time.  (The C<*secs> field is "
14080 "ignored in this case)."
14081 msgstr ""
14082
14083 #. type: textblock
14084 #: ../fish/guestfish-actions.pod:4854 ../src/guestfs-actions.pod:7307
14085 msgid ""
14086 "If the C<*nsecs> field contains the special value C<-2> then the "
14087 "corresponding timestamp is left unchanged.  (The C<*secs> field is ignored "
14088 "in this case)."
14089 msgstr ""
14090
14091 #. type: =head2
14092 #: ../fish/guestfish-actions.pod:4858
14093 msgid "version"
14094 msgstr ""
14095
14096 #. type: verbatim
14097 #: ../fish/guestfish-actions.pod:4860
14098 #, no-wrap
14099 msgid ""
14100 " version\n"
14101 "\n"
14102 msgstr ""
14103
14104 #. type: textblock
14105 #: ../fish/guestfish-actions.pod:4862 ../src/guestfs-actions.pod:7320
14106 msgid "Return the libguestfs version number that the program is linked against."
14107 msgstr ""
14108
14109 #. type: textblock
14110 #: ../fish/guestfish-actions.pod:4865 ../src/guestfs-actions.pod:7323
14111 msgid ""
14112 "Note that because of dynamic linking this is not necessarily the version of "
14113 "libguestfs that you compiled against.  You can compile the program, and then "
14114 "at runtime dynamically link against a completely different C<libguestfs.so> "
14115 "library."
14116 msgstr ""
14117
14118 #. type: textblock
14119 #: ../fish/guestfish-actions.pod:4870 ../src/guestfs-actions.pod:7328
14120 msgid ""
14121 "This call was added in version C<1.0.58>.  In previous versions of "
14122 "libguestfs there was no way to get the version number.  From C code you can "
14123 "use dynamic linker functions to find out if this symbol exists (if it "
14124 "doesn't, then it's an earlier version)."
14125 msgstr ""
14126
14127 #. type: textblock
14128 #: ../fish/guestfish-actions.pod:4876 ../src/guestfs-actions.pod:7334
14129 msgid ""
14130 "The call returns a structure with four elements.  The first three (C<major>, "
14131 "C<minor> and C<release>) are numbers and correspond to the usual version "
14132 "triplet.  The fourth element (C<extra>) is a string and is normally empty, "
14133 "but may be used for distro-specific information."
14134 msgstr ""
14135
14136 #. type: textblock
14137 #: ../fish/guestfish-actions.pod:4882 ../src/guestfs-actions.pod:7340
14138 msgid "To construct the original version string: C<$major.$minor.$release$extra>"
14139 msgstr ""
14140
14141 #. type: textblock
14142 #: ../fish/guestfish-actions.pod:4885 ../src/guestfs-actions.pod:7343
14143 msgid "See also: L<guestfs(3)/LIBGUESTFS VERSION NUMBERS>."
14144 msgstr ""
14145
14146 #. type: textblock
14147 #: ../fish/guestfish-actions.pod:4887
14148 msgid ""
14149 "I<Note:> Don't use this call to test for availability of features.  In "
14150 "enterprise distributions we backport features from later versions into "
14151 "earlier versions, making this an unreliable way to test for features.  Use "
14152 "L</available> instead."
14153 msgstr ""
14154
14155 #. type: =head2
14156 #: ../fish/guestfish-actions.pod:4893
14157 msgid "vfs-label"
14158 msgstr ""
14159
14160 #. type: verbatim
14161 #: ../fish/guestfish-actions.pod:4895
14162 #, no-wrap
14163 msgid ""
14164 " vfs-label device\n"
14165 "\n"
14166 msgstr ""
14167
14168 #. type: textblock
14169 #: ../fish/guestfish-actions.pod:4897 ../src/guestfs-actions.pod:7363
14170 msgid "This returns the filesystem label of the filesystem on C<device>."
14171 msgstr ""
14172
14173 #. type: textblock
14174 #: ../fish/guestfish-actions.pod:4900 ../src/guestfs-actions.pod:7366
14175 msgid "If the filesystem is unlabeled, this returns the empty string."
14176 msgstr ""
14177
14178 #. type: textblock
14179 #: ../fish/guestfish-actions.pod:4902
14180 msgid "To find a filesystem from the label, use L</findfs-label>."
14181 msgstr ""
14182
14183 #. type: =head2
14184 #: ../fish/guestfish-actions.pod:4904
14185 msgid "vfs-type"
14186 msgstr ""
14187
14188 #. type: verbatim
14189 #: ../fish/guestfish-actions.pod:4906
14190 #, no-wrap
14191 msgid ""
14192 " vfs-type device\n"
14193 "\n"
14194 msgstr ""
14195
14196 #. type: textblock
14197 #: ../fish/guestfish-actions.pod:4908 ../src/guestfs-actions.pod:7381
14198 msgid ""
14199 "This command gets the filesystem type corresponding to the filesystem on "
14200 "C<device>."
14201 msgstr ""
14202
14203 #. type: textblock
14204 #: ../fish/guestfish-actions.pod:4911 ../src/guestfs-actions.pod:7384
14205 msgid ""
14206 "For most filesystems, the result is the name of the Linux VFS module which "
14207 "would be used to mount this filesystem if you mounted it without specifying "
14208 "the filesystem type.  For example a string such as C<ext3> or C<ntfs>."
14209 msgstr ""
14210
14211 #. type: =head2
14212 #: ../fish/guestfish-actions.pod:4916
14213 msgid "vfs-uuid"
14214 msgstr ""
14215
14216 #. type: verbatim
14217 #: ../fish/guestfish-actions.pod:4918
14218 #, no-wrap
14219 msgid ""
14220 " vfs-uuid device\n"
14221 "\n"
14222 msgstr ""
14223
14224 #. type: textblock
14225 #: ../fish/guestfish-actions.pod:4920 ../src/guestfs-actions.pod:7400
14226 msgid "This returns the filesystem UUID of the filesystem on C<device>."
14227 msgstr ""
14228
14229 #. type: textblock
14230 #: ../fish/guestfish-actions.pod:4923 ../src/guestfs-actions.pod:7403
14231 msgid "If the filesystem does not have a UUID, this returns the empty string."
14232 msgstr ""
14233
14234 #. type: textblock
14235 #: ../fish/guestfish-actions.pod:4925
14236 msgid "To find a filesystem from the UUID, use L</findfs-uuid>."
14237 msgstr ""
14238
14239 #. type: =head2
14240 #: ../fish/guestfish-actions.pod:4927
14241 msgid "vg-activate"
14242 msgstr ""
14243
14244 #. type: verbatim
14245 #: ../fish/guestfish-actions.pod:4929
14246 #, no-wrap
14247 msgid ""
14248 " vg-activate true|false 'volgroups ...'\n"
14249 "\n"
14250 msgstr ""
14251
14252 #. type: textblock
14253 #: ../fish/guestfish-actions.pod:4931 ../src/guestfs-actions.pod:7419
14254 msgid ""
14255 "This command activates or (if C<activate> is false) deactivates all logical "
14256 "volumes in the listed volume groups C<volgroups>."
14257 msgstr ""
14258
14259 #. type: textblock
14260 #: ../fish/guestfish-actions.pod:4934 ../src/guestfs-actions.pod:7422
14261 msgid "This command is the same as running C<vgchange -a y|n volgroups...>"
14262 msgstr ""
14263
14264 #. type: textblock
14265 #: ../fish/guestfish-actions.pod:4936 ../src/guestfs-actions.pod:7424
14266 msgid ""
14267 "Note that if C<volgroups> is an empty list then B<all> volume groups are "
14268 "activated or deactivated."
14269 msgstr ""
14270
14271 #. type: =head2
14272 #: ../fish/guestfish-actions.pod:4939
14273 msgid "vg-activate-all"
14274 msgstr ""
14275
14276 #. type: verbatim
14277 #: ../fish/guestfish-actions.pod:4941
14278 #, no-wrap
14279 msgid ""
14280 " vg-activate-all true|false\n"
14281 "\n"
14282 msgstr ""
14283
14284 #. type: textblock
14285 #: ../fish/guestfish-actions.pod:4943 ../src/guestfs-actions.pod:7437
14286 msgid ""
14287 "This command activates or (if C<activate> is false) deactivates all logical "
14288 "volumes in all volume groups."
14289 msgstr ""
14290
14291 #. type: textblock
14292 #: ../fish/guestfish-actions.pod:4946 ../src/guestfs-actions.pod:7440
14293 msgid "This command is the same as running C<vgchange -a y|n>"
14294 msgstr ""
14295
14296 #. type: =head2
14297 #: ../fish/guestfish-actions.pod:4948
14298 msgid "vgcreate"
14299 msgstr ""
14300
14301 #. type: verbatim
14302 #: ../fish/guestfish-actions.pod:4950
14303 #, no-wrap
14304 msgid ""
14305 " vgcreate volgroup 'physvols ...'\n"
14306 "\n"
14307 msgstr ""
14308
14309 #. type: textblock
14310 #: ../fish/guestfish-actions.pod:4952 ../src/guestfs-actions.pod:7453
14311 msgid ""
14312 "This creates an LVM volume group called C<volgroup> from the non-empty list "
14313 "of physical volumes C<physvols>."
14314 msgstr ""
14315
14316 #. type: =head2
14317 #: ../fish/guestfish-actions.pod:4955
14318 msgid "vglvuuids"
14319 msgstr ""
14320
14321 #. type: verbatim
14322 #: ../fish/guestfish-actions.pod:4957
14323 #, no-wrap
14324 msgid ""
14325 " vglvuuids vgname\n"
14326 "\n"
14327 msgstr ""
14328
14329 #. type: textblock
14330 #: ../fish/guestfish-actions.pod:4959 ../src/guestfs-actions.pod:7466
14331 msgid ""
14332 "Given a VG called C<vgname>, this returns the UUIDs of all the logical "
14333 "volumes created in this volume group."
14334 msgstr ""
14335
14336 #. type: textblock
14337 #: ../fish/guestfish-actions.pod:4962
14338 msgid ""
14339 "You can use this along with L</lvs> and L</lvuuid> calls to associate "
14340 "logical volumes and volume groups."
14341 msgstr ""
14342
14343 #. type: textblock
14344 #: ../fish/guestfish-actions.pod:4965
14345 msgid "See also L</vgpvuuids>."
14346 msgstr ""
14347
14348 #. type: =head2
14349 #: ../fish/guestfish-actions.pod:4967
14350 msgid "vgpvuuids"
14351 msgstr ""
14352
14353 #. type: verbatim
14354 #: ../fish/guestfish-actions.pod:4969
14355 #, no-wrap
14356 msgid ""
14357 " vgpvuuids vgname\n"
14358 "\n"
14359 msgstr ""
14360
14361 #. type: textblock
14362 #: ../fish/guestfish-actions.pod:4971 ../src/guestfs-actions.pod:7486
14363 msgid ""
14364 "Given a VG called C<vgname>, this returns the UUIDs of all the physical "
14365 "volumes that this volume group resides on."
14366 msgstr ""
14367
14368 #. type: textblock
14369 #: ../fish/guestfish-actions.pod:4974
14370 msgid ""
14371 "You can use this along with L</pvs> and L</pvuuid> calls to associate "
14372 "physical volumes and volume groups."
14373 msgstr ""
14374
14375 #. type: textblock
14376 #: ../fish/guestfish-actions.pod:4977
14377 msgid "See also L</vglvuuids>."
14378 msgstr ""
14379
14380 #. type: =head2
14381 #: ../fish/guestfish-actions.pod:4979
14382 msgid "vgremove"
14383 msgstr ""
14384
14385 #. type: verbatim
14386 #: ../fish/guestfish-actions.pod:4981
14387 #, no-wrap
14388 msgid ""
14389 " vgremove vgname\n"
14390 "\n"
14391 msgstr ""
14392
14393 #. type: textblock
14394 #: ../fish/guestfish-actions.pod:4983 ../src/guestfs-actions.pod:7506
14395 msgid "Remove an LVM volume group C<vgname>, (for example C<VG>)."
14396 msgstr ""
14397
14398 #. type: textblock
14399 #: ../fish/guestfish-actions.pod:4985 ../src/guestfs-actions.pod:7508
14400 msgid "This also forcibly removes all logical volumes in the volume group (if any)."
14401 msgstr ""
14402
14403 #. type: =head2
14404 #: ../fish/guestfish-actions.pod:4988
14405 msgid "vgrename"
14406 msgstr ""
14407
14408 #. type: verbatim
14409 #: ../fish/guestfish-actions.pod:4990
14410 #, no-wrap
14411 msgid ""
14412 " vgrename volgroup newvolgroup\n"
14413 "\n"
14414 msgstr ""
14415
14416 #. type: textblock
14417 #: ../fish/guestfish-actions.pod:4992 ../src/guestfs-actions.pod:7522
14418 msgid "Rename a volume group C<volgroup> with the new name C<newvolgroup>."
14419 msgstr ""
14420
14421 #. type: =head2
14422 #: ../fish/guestfish-actions.pod:4994
14423 msgid "vgs"
14424 msgstr ""
14425
14426 #. type: verbatim
14427 #: ../fish/guestfish-actions.pod:4996
14428 #, no-wrap
14429 msgid ""
14430 " vgs\n"
14431 "\n"
14432 msgstr ""
14433
14434 #. type: textblock
14435 #: ../fish/guestfish-actions.pod:4998 ../src/guestfs-actions.pod:7533
14436 msgid ""
14437 "List all the volumes groups detected.  This is the equivalent of the "
14438 "L<vgs(8)> command."
14439 msgstr ""
14440
14441 #. type: textblock
14442 #: ../fish/guestfish-actions.pod:5001 ../src/guestfs-actions.pod:7536
14443 msgid ""
14444 "This returns a list of just the volume group names that were detected "
14445 "(eg. C<VolGroup00>)."
14446 msgstr ""
14447
14448 #. type: textblock
14449 #: ../fish/guestfish-actions.pod:5004
14450 msgid "See also L</vgs-full>."
14451 msgstr ""
14452
14453 #. type: =head2
14454 #: ../fish/guestfish-actions.pod:5006
14455 msgid "vgs-full"
14456 msgstr ""
14457
14458 #. type: verbatim
14459 #: ../fish/guestfish-actions.pod:5008
14460 #, no-wrap
14461 msgid ""
14462 " vgs-full\n"
14463 "\n"
14464 msgstr ""
14465
14466 #. type: textblock
14467 #: ../fish/guestfish-actions.pod:5010 ../src/guestfs-actions.pod:7552
14468 msgid ""
14469 "List all the volumes groups detected.  This is the equivalent of the "
14470 "L<vgs(8)> command.  The \"full\" version includes all fields."
14471 msgstr ""
14472
14473 #. type: =head2
14474 #: ../fish/guestfish-actions.pod:5013
14475 msgid "vgscan"
14476 msgstr ""
14477
14478 #. type: verbatim
14479 #: ../fish/guestfish-actions.pod:5015
14480 #, no-wrap
14481 msgid ""
14482 " vgscan\n"
14483 "\n"
14484 msgstr ""
14485
14486 #. type: textblock
14487 #: ../fish/guestfish-actions.pod:5017 ../src/guestfs-actions.pod:7566
14488 msgid ""
14489 "This rescans all block devices and rebuilds the list of LVM physical "
14490 "volumes, volume groups and logical volumes."
14491 msgstr ""
14492
14493 #. type: =head2
14494 #: ../fish/guestfish-actions.pod:5020
14495 msgid "vguuid"
14496 msgstr ""
14497
14498 #. type: verbatim
14499 #: ../fish/guestfish-actions.pod:5022
14500 #, no-wrap
14501 msgid ""
14502 " vguuid vgname\n"
14503 "\n"
14504 msgstr ""
14505
14506 #. type: textblock
14507 #: ../fish/guestfish-actions.pod:5024 ../src/guestfs-actions.pod:7579
14508 msgid "This command returns the UUID of the LVM VG named C<vgname>."
14509 msgstr ""
14510
14511 #. type: =head2
14512 #: ../fish/guestfish-actions.pod:5026
14513 msgid "wc-c"
14514 msgstr ""
14515
14516 #. type: verbatim
14517 #: ../fish/guestfish-actions.pod:5028
14518 #, no-wrap
14519 msgid ""
14520 " wc-c path\n"
14521 "\n"
14522 msgstr ""
14523
14524 #. type: textblock
14525 #: ../fish/guestfish-actions.pod:5030 ../src/guestfs-actions.pod:7619
14526 msgid ""
14527 "This command counts the characters in a file, using the C<wc -c> external "
14528 "command."
14529 msgstr ""
14530
14531 #. type: =head2
14532 #: ../fish/guestfish-actions.pod:5033
14533 msgid "wc-l"
14534 msgstr ""
14535
14536 #. type: verbatim
14537 #: ../fish/guestfish-actions.pod:5035
14538 #, no-wrap
14539 msgid ""
14540 " wc-l path\n"
14541 "\n"
14542 msgstr ""
14543
14544 #. type: textblock
14545 #: ../fish/guestfish-actions.pod:5037 ../src/guestfs-actions.pod:7632
14546 msgid ""
14547 "This command counts the lines in a file, using the C<wc -l> external "
14548 "command."
14549 msgstr ""
14550
14551 #. type: =head2
14552 #: ../fish/guestfish-actions.pod:5040
14553 msgid "wc-w"
14554 msgstr ""
14555
14556 #. type: verbatim
14557 #: ../fish/guestfish-actions.pod:5042
14558 #, no-wrap
14559 msgid ""
14560 " wc-w path\n"
14561 "\n"
14562 msgstr ""
14563
14564 #. type: textblock
14565 #: ../fish/guestfish-actions.pod:5044 ../src/guestfs-actions.pod:7645
14566 msgid ""
14567 "This command counts the words in a file, using the C<wc -w> external "
14568 "command."
14569 msgstr ""
14570
14571 #. type: =head2
14572 #: ../fish/guestfish-actions.pod:5047
14573 msgid "write"
14574 msgstr ""
14575
14576 #. type: verbatim
14577 #: ../fish/guestfish-actions.pod:5049
14578 #, no-wrap
14579 msgid ""
14580 " write path content\n"
14581 "\n"
14582 msgstr ""
14583
14584 #. type: textblock
14585 #: ../fish/guestfish-actions.pod:5051 ../src/guestfs-actions.pod:7660
14586 msgid ""
14587 "This call creates a file called C<path>.  The content of the file is the "
14588 "string C<content> (which can contain any 8 bit data)."
14589 msgstr ""
14590
14591 #. type: textblock
14592 #: ../fish/guestfish-actions.pod:5054
14593 msgid "See also L</write-append>."
14594 msgstr ""
14595
14596 #. type: =head2
14597 #: ../fish/guestfish-actions.pod:5059
14598 msgid "write-append"
14599 msgstr ""
14600
14601 #. type: verbatim
14602 #: ../fish/guestfish-actions.pod:5061
14603 #, no-wrap
14604 msgid ""
14605 " write-append path content\n"
14606 "\n"
14607 msgstr ""
14608
14609 #. type: textblock
14610 #: ../fish/guestfish-actions.pod:5063 ../src/guestfs-actions.pod:7680
14611 msgid ""
14612 "This call appends C<content> to the end of file C<path>.  If C<path> does "
14613 "not exist, then a new file is created."
14614 msgstr ""
14615
14616 #. type: textblock
14617 #: ../fish/guestfish-actions.pod:5066
14618 msgid "See also L</write>."
14619 msgstr ""
14620
14621 #. type: =head2
14622 #: ../fish/guestfish-actions.pod:5071
14623 msgid "write-file"
14624 msgstr ""
14625
14626 #. type: verbatim
14627 #: ../fish/guestfish-actions.pod:5073
14628 #, no-wrap
14629 msgid ""
14630 " write-file path content size\n"
14631 "\n"
14632 msgstr ""
14633
14634 #. type: textblock
14635 #: ../fish/guestfish-actions.pod:5075 ../src/guestfs-actions.pod:7707
14636 msgid ""
14637 "This call creates a file called C<path>.  The contents of the file is the "
14638 "string C<content> (which can contain any 8 bit data), with length C<size>."
14639 msgstr ""
14640
14641 #. type: textblock
14642 #: ../fish/guestfish-actions.pod:5079 ../src/guestfs-actions.pod:7711
14643 msgid ""
14644 "As a special case, if C<size> is C<0> then the length is calculated using "
14645 "C<strlen> (so in this case the content cannot contain embedded ASCII NULs)."
14646 msgstr ""
14647
14648 #. type: textblock
14649 #: ../fish/guestfish-actions.pod:5083 ../src/guestfs-actions.pod:7715
14650 msgid ""
14651 "I<NB.> Owing to a bug, writing content containing ASCII NUL characters does "
14652 "I<not> work, even if the length is specified."
14653 msgstr ""
14654
14655 #. type: textblock
14656 #: ../fish/guestfish-actions.pod:5089
14657 msgid "I<This function is deprecated.> In new code, use the L</write> call instead."
14658 msgstr ""
14659
14660 #. type: =head2
14661 #: ../fish/guestfish-actions.pod:5096
14662 msgid "zegrep"
14663 msgstr ""
14664
14665 #. type: verbatim
14666 #: ../fish/guestfish-actions.pod:5098
14667 #, no-wrap
14668 msgid ""
14669 " zegrep regex path\n"
14670 "\n"
14671 msgstr ""
14672
14673 #. type: textblock
14674 #: ../fish/guestfish-actions.pod:5100 ../src/guestfs-actions.pod:7732
14675 msgid "This calls the external C<zegrep> program and returns the matching lines."
14676 msgstr ""
14677
14678 #. type: =head2
14679 #: ../fish/guestfish-actions.pod:5106
14680 msgid "zegrepi"
14681 msgstr ""
14682
14683 #. type: verbatim
14684 #: ../fish/guestfish-actions.pod:5108
14685 #, no-wrap
14686 msgid ""
14687 " zegrepi regex path\n"
14688 "\n"
14689 msgstr ""
14690
14691 #. type: textblock
14692 #: ../fish/guestfish-actions.pod:5110 ../src/guestfs-actions.pod:7751
14693 msgid "This calls the external C<zegrep -i> program and returns the matching lines."
14694 msgstr ""
14695
14696 #. type: =head2
14697 #: ../fish/guestfish-actions.pod:5116
14698 msgid "zero"
14699 msgstr ""
14700
14701 #. type: verbatim
14702 #: ../fish/guestfish-actions.pod:5118
14703 #, no-wrap
14704 msgid ""
14705 " zero device\n"
14706 "\n"
14707 msgstr ""
14708
14709 #. type: textblock
14710 #: ../fish/guestfish-actions.pod:5120 ../src/guestfs-actions.pod:7769
14711 msgid "This command writes zeroes over the first few blocks of C<device>."
14712 msgstr ""
14713
14714 #. type: textblock
14715 #: ../fish/guestfish-actions.pod:5122 ../src/guestfs-actions.pod:7771
14716 msgid ""
14717 "How many blocks are zeroed isn't specified (but it's I<not> enough to "
14718 "securely wipe the device).  It should be sufficient to remove any partition "
14719 "tables, filesystem superblocks and so on."
14720 msgstr ""
14721
14722 #. type: textblock
14723 #: ../fish/guestfish-actions.pod:5126 ../fish/guestfish-actions.pod:5141 ../src/guestfs-actions.pod:7775 ../src/guestfs-actions.pod:7801
14724 msgid ""
14725 "If blocks are already zero, then this command avoids writing zeroes.  This "
14726 "prevents the underlying device from becoming non-sparse or growing "
14727 "unnecessarily."
14728 msgstr ""
14729
14730 #. type: textblock
14731 #: ../fish/guestfish-actions.pod:5130
14732 msgid "See also: L</zero-device>, L</scrub-device>, L</is-zero-device>"
14733 msgstr ""
14734
14735 #. type: =head2
14736 #: ../fish/guestfish-actions.pod:5133
14737 msgid "zero-device"
14738 msgstr ""
14739
14740 #. type: verbatim
14741 #: ../fish/guestfish-actions.pod:5135
14742 #, no-wrap
14743 msgid ""
14744 " zero-device device\n"
14745 "\n"
14746 msgstr ""
14747
14748 #. type: textblock
14749 #: ../fish/guestfish-actions.pod:5137
14750 msgid ""
14751 "This command writes zeroes over the entire C<device>.  Compare with L</zero> "
14752 "which just zeroes the first few blocks of a device."
14753 msgstr ""
14754
14755 #. type: =head2
14756 #: ../fish/guestfish-actions.pod:5148
14757 msgid "zerofree"
14758 msgstr ""
14759
14760 #. type: verbatim
14761 #: ../fish/guestfish-actions.pod:5150
14762 #, no-wrap
14763 msgid ""
14764 " zerofree device\n"
14765 "\n"
14766 msgstr ""
14767
14768 #. type: textblock
14769 #: ../fish/guestfish-actions.pod:5152 ../src/guestfs-actions.pod:7823
14770 msgid ""
14771 "This runs the I<zerofree> program on C<device>.  This program claims to zero "
14772 "unused inodes and disk blocks on an ext2/3 filesystem, thus making it "
14773 "possible to compress the filesystem more effectively."
14774 msgstr ""
14775
14776 #. type: textblock
14777 #: ../fish/guestfish-actions.pod:5157 ../src/guestfs-actions.pod:7828
14778 msgid "You should B<not> run this program if the filesystem is mounted."
14779 msgstr ""
14780
14781 #. type: textblock
14782 #: ../fish/guestfish-actions.pod:5160 ../src/guestfs-actions.pod:7831
14783 msgid ""
14784 "It is possible that using this program can damage the filesystem or data on "
14785 "the filesystem."
14786 msgstr ""
14787
14788 #. type: =head2
14789 #: ../fish/guestfish-actions.pod:5163
14790 msgid "zfgrep"
14791 msgstr ""
14792
14793 #. type: verbatim
14794 #: ../fish/guestfish-actions.pod:5165
14795 #, no-wrap
14796 msgid ""
14797 " zfgrep pattern path\n"
14798 "\n"
14799 msgstr ""
14800
14801 #. type: textblock
14802 #: ../fish/guestfish-actions.pod:5167 ../src/guestfs-actions.pod:7845
14803 msgid "This calls the external C<zfgrep> program and returns the matching lines."
14804 msgstr ""
14805
14806 #. type: =head2
14807 #: ../fish/guestfish-actions.pod:5173
14808 msgid "zfgrepi"
14809 msgstr ""
14810
14811 #. type: verbatim
14812 #: ../fish/guestfish-actions.pod:5175
14813 #, no-wrap
14814 msgid ""
14815 " zfgrepi pattern path\n"
14816 "\n"
14817 msgstr ""
14818
14819 #. type: textblock
14820 #: ../fish/guestfish-actions.pod:5177 ../src/guestfs-actions.pod:7864
14821 msgid "This calls the external C<zfgrep -i> program and returns the matching lines."
14822 msgstr ""
14823
14824 #. type: =head2
14825 #: ../fish/guestfish-actions.pod:5183
14826 msgid "zfile"
14827 msgstr ""
14828
14829 #. type: verbatim
14830 #: ../fish/guestfish-actions.pod:5185
14831 #, no-wrap
14832 msgid ""
14833 " zfile meth path\n"
14834 "\n"
14835 msgstr ""
14836
14837 #. type: textblock
14838 #: ../fish/guestfish-actions.pod:5187 ../src/guestfs-actions.pod:7890
14839 msgid "This command runs C<file> after first decompressing C<path> using C<method>."
14840 msgstr ""
14841
14842 #. type: textblock
14843 #: ../fish/guestfish-actions.pod:5190 ../src/guestfs-actions.pod:7893
14844 msgid "C<method> must be one of C<gzip>, C<compress> or C<bzip2>."
14845 msgstr ""
14846
14847 #. type: textblock
14848 #: ../fish/guestfish-actions.pod:5192
14849 msgid "Since 1.0.63, use L</file> instead which can now process compressed files."
14850 msgstr ""
14851
14852 #. type: textblock
14853 #: ../fish/guestfish-actions.pod:5195
14854 msgid "I<This function is deprecated.> In new code, use the L</file> call instead."
14855 msgstr ""
14856
14857 #. type: =head2
14858 #: ../fish/guestfish-actions.pod:5202
14859 msgid "zgrep"
14860 msgstr ""
14861
14862 #. type: verbatim
14863 #: ../fish/guestfish-actions.pod:5204
14864 #, no-wrap
14865 msgid ""
14866 " zgrep regex path\n"
14867 "\n"
14868 msgstr ""
14869
14870 #. type: textblock
14871 #: ../fish/guestfish-actions.pod:5206 ../src/guestfs-actions.pod:7910
14872 msgid "This calls the external C<zgrep> program and returns the matching lines."
14873 msgstr ""
14874
14875 #. type: =head2
14876 #: ../fish/guestfish-actions.pod:5212
14877 msgid "zgrepi"
14878 msgstr ""
14879
14880 #. type: verbatim
14881 #: ../fish/guestfish-actions.pod:5214
14882 #, no-wrap
14883 msgid ""
14884 " zgrepi regex path\n"
14885 "\n"
14886 msgstr ""
14887
14888 #. type: textblock
14889 #: ../fish/guestfish-actions.pod:5216 ../src/guestfs-actions.pod:7929
14890 msgid "This calls the external C<zgrep -i> program and returns the matching lines."
14891 msgstr ""
14892
14893 #. type: =head2
14894 #: ../fish/guestfish-commands.pod:1
14895 msgid "alloc"
14896 msgstr ""
14897
14898 #. type: =head2
14899 #: ../fish/guestfish-commands.pod:3
14900 msgid "allocate"
14901 msgstr ""
14902
14903 #. type: verbatim
14904 #: ../fish/guestfish-commands.pod:5
14905 #, no-wrap
14906 msgid ""
14907 " alloc filename size\n"
14908 "\n"
14909 msgstr ""
14910
14911 #. type: textblock
14912 #: ../fish/guestfish-commands.pod:7
14913 msgid ""
14914 "This creates an empty (zeroed) file of the given size, and then adds so it "
14915 "can be further examined."
14916 msgstr ""
14917
14918 #. type: textblock
14919 #: ../fish/guestfish-commands.pod:10 ../fish/guestfish-commands.pod:193
14920 msgid "For more advanced image creation, see L<qemu-img(1)> utility."
14921 msgstr ""
14922
14923 #. type: textblock
14924 #: ../fish/guestfish-commands.pod:12 ../fish/guestfish-commands.pod:195
14925 msgid "Size can be specified using standard suffixes, eg. C<1M>."
14926 msgstr ""
14927
14928 #. type: textblock
14929 #: ../fish/guestfish-commands.pod:14
14930 msgid ""
14931 "To create a sparse file, use L</sparse> instead.  To create a prepared disk "
14932 "image, see L</PREPARED DISK IMAGES>."
14933 msgstr ""
14934
14935 #. type: =head2
14936 #: ../fish/guestfish-commands.pod:17
14937 msgid "copy-in"
14938 msgstr ""
14939
14940 #. type: verbatim
14941 #: ../fish/guestfish-commands.pod:19
14942 #, no-wrap
14943 msgid ""
14944 " copy-in local [local ...] /remotedir\n"
14945 "\n"
14946 msgstr ""
14947
14948 #. type: textblock
14949 #: ../fish/guestfish-commands.pod:21
14950 msgid ""
14951 "C<copy-in> copies local files or directories recursively into the disk "
14952 "image, placing them in the directory called C</remotedir> (which must "
14953 "exist).  This guestfish meta-command turns into a sequence of L</tar-in> and "
14954 "other commands as necessary."
14955 msgstr ""
14956
14957 #. type: textblock
14958 #: ../fish/guestfish-commands.pod:26
14959 msgid ""
14960 "Multiple local files and directories can be specified, but the last "
14961 "parameter must always be a remote directory.  Wildcards cannot be used."
14962 msgstr ""
14963
14964 #. type: =head2
14965 #: ../fish/guestfish-commands.pod:30
14966 msgid "copy-out"
14967 msgstr ""
14968
14969 #. type: verbatim
14970 #: ../fish/guestfish-commands.pod:32
14971 #, no-wrap
14972 msgid ""
14973 " copy-out remote [remote ...] localdir\n"
14974 "\n"
14975 msgstr ""
14976
14977 #. type: textblock
14978 #: ../fish/guestfish-commands.pod:34
14979 msgid ""
14980 "C<copy-out> copies remote files or directories recursively out of the disk "
14981 "image, placing them on the host disk in a local directory called C<localdir> "
14982 "(which must exist).  This guestfish meta-command turns into a sequence of "
14983 "L</download>, L</tar-out> and other commands as necessary."
14984 msgstr ""
14985
14986 #. type: textblock
14987 #: ../fish/guestfish-commands.pod:40
14988 msgid ""
14989 "Multiple remote files and directories can be specified, but the last "
14990 "parameter must always be a local directory.  To download to the current "
14991 "directory, use C<.> as in:"
14992 msgstr ""
14993
14994 #. type: verbatim
14995 #: ../fish/guestfish-commands.pod:44
14996 #, no-wrap
14997 msgid ""
14998 " copy-out /home .\n"
14999 "\n"
15000 msgstr ""
15001
15002 #. type: textblock
15003 #: ../fish/guestfish-commands.pod:46
15004 msgid ""
15005 "Wildcards cannot be used in the ordinary command, but you can use them with "
15006 "the help of L</glob> like this:"
15007 msgstr ""
15008
15009 #. type: verbatim
15010 #: ../fish/guestfish-commands.pod:49
15011 #, no-wrap
15012 msgid ""
15013 " glob copy-out /home/* .\n"
15014 "\n"
15015 msgstr ""
15016
15017 #. type: =head2
15018 #: ../fish/guestfish-commands.pod:51
15019 msgid "display"
15020 msgstr ""
15021
15022 #. type: verbatim
15023 #: ../fish/guestfish-commands.pod:53
15024 #, no-wrap
15025 msgid ""
15026 " display filename\n"
15027 "\n"
15028 msgstr ""
15029
15030 #. type: textblock
15031 #: ../fish/guestfish-commands.pod:55
15032 msgid ""
15033 "Use C<display> (a graphical display program) to display an image file.  It "
15034 "downloads the file, and runs C<display> on it."
15035 msgstr ""
15036
15037 #. type: textblock
15038 #: ../fish/guestfish-commands.pod:58
15039 msgid ""
15040 "To use an alternative program, set the C<GUESTFISH_DISPLAY_IMAGE> "
15041 "environment variable.  For example to use the GNOME display program:"
15042 msgstr ""
15043
15044 #. type: verbatim
15045 #: ../fish/guestfish-commands.pod:61
15046 #, no-wrap
15047 msgid ""
15048 " export GUESTFISH_DISPLAY_IMAGE=eog\n"
15049 "\n"
15050 msgstr ""
15051
15052 #. type: textblock
15053 #: ../fish/guestfish-commands.pod:63
15054 msgid "See also L<display(1)>."
15055 msgstr ""
15056
15057 #. type: =head2
15058 #: ../fish/guestfish-commands.pod:65
15059 msgid "echo"
15060 msgstr ""
15061
15062 #. type: verbatim
15063 #: ../fish/guestfish-commands.pod:67
15064 #, no-wrap
15065 msgid ""
15066 " echo [params ...]\n"
15067 "\n"
15068 msgstr ""
15069
15070 #. type: textblock
15071 #: ../fish/guestfish-commands.pod:69
15072 msgid "This echos the parameters to the terminal."
15073 msgstr ""
15074
15075 #. type: =head2
15076 #: ../fish/guestfish-commands.pod:71
15077 msgid "edit"
15078 msgstr ""
15079
15080 #. type: =head2
15081 #: ../fish/guestfish-commands.pod:73
15082 msgid "vi"
15083 msgstr ""
15084
15085 #. type: =head2
15086 #: ../fish/guestfish-commands.pod:75
15087 msgid "emacs"
15088 msgstr ""
15089
15090 #. type: verbatim
15091 #: ../fish/guestfish-commands.pod:77
15092 #, no-wrap
15093 msgid ""
15094 " edit filename\n"
15095 "\n"
15096 msgstr ""
15097
15098 #. type: textblock
15099 #: ../fish/guestfish-commands.pod:79
15100 msgid ""
15101 "This is used to edit a file.  It downloads the file, edits it locally using "
15102 "your editor, then uploads the result."
15103 msgstr ""
15104
15105 #. type: textblock
15106 #: ../fish/guestfish-commands.pod:82
15107 msgid ""
15108 "The editor is C<$EDITOR>.  However if you use the alternate commands C<vi> "
15109 "or C<emacs> you will get those corresponding editors."
15110 msgstr ""
15111
15112 #. type: =head2
15113 #: ../fish/guestfish-commands.pod:86
15114 msgid "glob"
15115 msgstr ""
15116
15117 #. type: verbatim
15118 #: ../fish/guestfish-commands.pod:88
15119 #, no-wrap
15120 msgid ""
15121 " glob command args...\n"
15122 "\n"
15123 msgstr ""
15124
15125 #. type: textblock
15126 #: ../fish/guestfish-commands.pod:90
15127 msgid ""
15128 "Expand wildcards in any paths in the args list, and run C<command> "
15129 "repeatedly on each matching path."
15130 msgstr ""
15131
15132 #. type: textblock
15133 #: ../fish/guestfish-commands.pod:93
15134 msgid "See L</WILDCARDS AND GLOBBING>."
15135 msgstr ""
15136
15137 #. type: =head2
15138 #: ../fish/guestfish-commands.pod:95
15139 msgid "hexedit"
15140 msgstr ""
15141
15142 #. type: verbatim
15143 #: ../fish/guestfish-commands.pod:97
15144 #, no-wrap
15145 msgid ""
15146 " hexedit <filename|device>\n"
15147 " hexedit <filename|device> <max>\n"
15148 " hexedit <filename|device> <start> <max>\n"
15149 "\n"
15150 msgstr ""
15151
15152 #. type: textblock
15153 #: ../fish/guestfish-commands.pod:101
15154 msgid ""
15155 "Use hexedit (a hex editor) to edit all or part of a binary file or block "
15156 "device."
15157 msgstr ""
15158
15159 #. type: textblock
15160 #: ../fish/guestfish-commands.pod:104
15161 msgid ""
15162 "This command works by downloading potentially the whole file or device, "
15163 "editing it locally, then uploading it.  If the file or device is large, you "
15164 "have to specify which part you wish to edit by using C<max> and/or C<start> "
15165 "C<max> parameters.  C<start> and C<max> are specified in bytes, with the "
15166 "usual modifiers allowed such as C<1M> (1 megabyte)."
15167 msgstr ""
15168
15169 #. type: textblock
15170 #: ../fish/guestfish-commands.pod:111
15171 msgid "For example to edit the first few sectors of a disk you might do:"
15172 msgstr ""
15173
15174 #. type: verbatim
15175 #: ../fish/guestfish-commands.pod:114
15176 #, no-wrap
15177 msgid ""
15178 " hexedit /dev/sda 1M\n"
15179 "\n"
15180 msgstr ""
15181
15182 #. type: textblock
15183 #: ../fish/guestfish-commands.pod:116
15184 msgid ""
15185 "which would allow you to edit anywhere within the first megabyte of the "
15186 "disk."
15187 msgstr ""
15188
15189 #. type: textblock
15190 #: ../fish/guestfish-commands.pod:119
15191 msgid "To edit the superblock of an ext2 filesystem on C</dev/sda1>, do:"
15192 msgstr ""
15193
15194 #. type: verbatim
15195 #: ../fish/guestfish-commands.pod:121
15196 #, no-wrap
15197 msgid ""
15198 " hexedit /dev/sda1 0x400 0x400\n"
15199 "\n"
15200 msgstr ""
15201
15202 #. type: textblock
15203 #: ../fish/guestfish-commands.pod:123
15204 msgid "(assuming the superblock is in the standard location)."
15205 msgstr ""
15206
15207 #. type: textblock
15208 #: ../fish/guestfish-commands.pod:125
15209 msgid ""
15210 "This command requires the external L<hexedit(1)> program.  You can specify "
15211 "another program to use by setting the C<HEXEDITOR> environment variable."
15212 msgstr ""
15213
15214 #. type: textblock
15215 #: ../fish/guestfish-commands.pod:129
15216 msgid "See also L</hexdump>."
15217 msgstr ""
15218
15219 #. type: =head2
15220 #: ../fish/guestfish-commands.pod:131
15221 msgid "lcd"
15222 msgstr ""
15223
15224 #. type: verbatim
15225 #: ../fish/guestfish-commands.pod:133
15226 #, no-wrap
15227 msgid ""
15228 " lcd directory\n"
15229 "\n"
15230 msgstr ""
15231
15232 #. type: textblock
15233 #: ../fish/guestfish-commands.pod:135
15234 msgid "Change the local directory, ie. the current directory of guestfish itself."
15235 msgstr ""
15236
15237 #. type: textblock
15238 #: ../fish/guestfish-commands.pod:138
15239 msgid "Note that C<!cd> won't do what you might expect."
15240 msgstr ""
15241
15242 #. type: =head2
15243 #: ../fish/guestfish-commands.pod:140
15244 msgid "man"
15245 msgstr ""
15246
15247 #. type: =head2
15248 #: ../fish/guestfish-commands.pod:142
15249 msgid "manual"
15250 msgstr ""
15251
15252 #. type: verbatim
15253 #: ../fish/guestfish-commands.pod:144
15254 #, no-wrap
15255 msgid ""
15256 "  man\n"
15257 "\n"
15258 msgstr ""
15259
15260 #. type: textblock
15261 #: ../fish/guestfish-commands.pod:146
15262 msgid "Opens the manual page for guestfish."
15263 msgstr ""
15264
15265 #. type: =head2
15266 #: ../fish/guestfish-commands.pod:148
15267 msgid "more"
15268 msgstr ""
15269
15270 #. type: =head2
15271 #: ../fish/guestfish-commands.pod:150
15272 msgid "less"
15273 msgstr ""
15274
15275 #. type: verbatim
15276 #: ../fish/guestfish-commands.pod:152
15277 #, no-wrap
15278 msgid ""
15279 " more filename\n"
15280 "\n"
15281 msgstr ""
15282
15283 #. type: verbatim
15284 #: ../fish/guestfish-commands.pod:154
15285 #, no-wrap
15286 msgid ""
15287 " less filename\n"
15288 "\n"
15289 msgstr ""
15290
15291 #. type: textblock
15292 #: ../fish/guestfish-commands.pod:156
15293 msgid "This is used to view a file."
15294 msgstr ""
15295
15296 #. type: textblock
15297 #: ../fish/guestfish-commands.pod:158
15298 msgid ""
15299 "The default viewer is C<$PAGER>.  However if you use the alternate command "
15300 "C<less> you will get the C<less> command specifically."
15301 msgstr ""
15302
15303 #. type: =head2
15304 #: ../fish/guestfish-commands.pod:161
15305 msgid "reopen"
15306 msgstr ""
15307
15308 #. type: verbatim
15309 #: ../fish/guestfish-commands.pod:163
15310 #, no-wrap
15311 msgid ""
15312 "  reopen\n"
15313 "\n"
15314 msgstr ""
15315
15316 #. type: textblock
15317 #: ../fish/guestfish-commands.pod:165
15318 msgid ""
15319 "Close and reopen the libguestfs handle.  It is not necessary to use this "
15320 "normally, because the handle is closed properly when guestfish exits.  "
15321 "However this is occasionally useful for testing."
15322 msgstr ""
15323
15324 #. type: =head2
15325 #: ../fish/guestfish-commands.pod:169
15326 msgid "setenv"
15327 msgstr ""
15328
15329 #. type: verbatim
15330 #: ../fish/guestfish-commands.pod:171
15331 #, no-wrap
15332 msgid ""
15333 "  setenv VAR value\n"
15334 "\n"
15335 msgstr ""
15336
15337 #. type: textblock
15338 #: ../fish/guestfish-commands.pod:173
15339 msgid "Set the environment variable C<VAR> to the string C<value>."
15340 msgstr ""
15341
15342 #. type: textblock
15343 #: ../fish/guestfish-commands.pod:175
15344 msgid "To print the value of an environment variable use a shell command such as:"
15345 msgstr ""
15346
15347 #. type: verbatim
15348 #: ../fish/guestfish-commands.pod:178
15349 #, no-wrap
15350 msgid ""
15351 " !echo $VAR\n"
15352 "\n"
15353 msgstr ""
15354
15355 #. type: =head2
15356 #: ../fish/guestfish-commands.pod:180
15357 msgid "sparse"
15358 msgstr ""
15359
15360 #. type: verbatim
15361 #: ../fish/guestfish-commands.pod:182
15362 #, no-wrap
15363 msgid ""
15364 " sparse filename size\n"
15365 "\n"
15366 msgstr ""
15367
15368 #. type: textblock
15369 #: ../fish/guestfish-commands.pod:184
15370 msgid ""
15371 "This creates an empty sparse file of the given size, and then adds so it can "
15372 "be further examined."
15373 msgstr ""
15374
15375 #. type: textblock
15376 #: ../fish/guestfish-commands.pod:187
15377 msgid ""
15378 "In all respects it works the same as the L</alloc> command, except that the "
15379 "image file is allocated sparsely, which means that disk blocks are not "
15380 "assigned to the file until they are needed.  Sparse disk files only use "
15381 "space when written to, but they are slower and there is a danger you could "
15382 "run out of real disk space during a write operation."
15383 msgstr ""
15384
15385 #. type: =head2
15386 #: ../fish/guestfish-commands.pod:197
15387 msgid "supported"
15388 msgstr ""
15389
15390 #. type: verbatim
15391 #: ../fish/guestfish-commands.pod:199
15392 #, no-wrap
15393 msgid ""
15394 " supported\n"
15395 "\n"
15396 msgstr ""
15397
15398 #. type: textblock
15399 #: ../fish/guestfish-commands.pod:201
15400 msgid ""
15401 "This command returns a list of the optional groups known to the daemon, and "
15402 "indicates which ones are supported by this build of the libguestfs "
15403 "appliance."
15404 msgstr ""
15405
15406 #. type: textblock
15407 #: ../fish/guestfish-commands.pod:205
15408 msgid "See also L<guestfs(3)/AVAILABILITY>."
15409 msgstr ""
15410
15411 #. type: =head2
15412 #: ../fish/guestfish-commands.pod:207
15413 msgid "time"
15414 msgstr ""
15415
15416 #. type: verbatim
15417 #: ../fish/guestfish-commands.pod:209
15418 #, no-wrap
15419 msgid ""
15420 " time command args...\n"
15421 "\n"
15422 msgstr ""
15423
15424 #. type: textblock
15425 #: ../fish/guestfish-commands.pod:211
15426 msgid ""
15427 "Run the command as usual, but print the elapsed time afterwards.  This can "
15428 "be useful for benchmarking operations."
15429 msgstr ""
15430
15431 #. type: =head2
15432 #: ../fish/guestfish-commands.pod:214
15433 msgid "unsetenv"
15434 msgstr ""
15435
15436 #. type: verbatim
15437 #: ../fish/guestfish-commands.pod:216
15438 #, no-wrap
15439 msgid ""
15440 "  unsetenv VAR\n"
15441 "\n"
15442 msgstr ""
15443
15444 #. type: textblock
15445 #: ../fish/guestfish-commands.pod:218
15446 msgid "Remove C<VAR> from the environment."
15447 msgstr ""
15448
15449 #. type: textblock
15450 #: ../fish/guestfish.pod:5
15451 msgid "guestfish - the libguestfs Filesystem Interactive SHell"
15452 msgstr ""
15453
15454 #. type: verbatim
15455 #: ../fish/guestfish.pod:9
15456 #, no-wrap
15457 msgid ""
15458 " guestfish [--options] [commands]\n"
15459 "\n"
15460 msgstr ""
15461
15462 #. type: verbatim
15463 #: ../fish/guestfish.pod:11
15464 #, no-wrap
15465 msgid ""
15466 " guestfish\n"
15467 "\n"
15468 msgstr ""
15469
15470 #. type: verbatim
15471 #: ../fish/guestfish.pod:13
15472 #, no-wrap
15473 msgid ""
15474 " guestfish [--ro|--rw] -a disk.img\n"
15475 "\n"
15476 msgstr ""
15477
15478 #. type: verbatim
15479 #: ../fish/guestfish.pod:15
15480 #, no-wrap
15481 msgid ""
15482 " guestfish [--ro|--rw] -a disk.img -m dev[:mountpoint]\n"
15483 "\n"
15484 msgstr ""
15485
15486 #. type: verbatim
15487 #: ../fish/guestfish.pod:17
15488 #, no-wrap
15489 msgid ""
15490 " guestfish -d libvirt-domain\n"
15491 "\n"
15492 msgstr ""
15493
15494 #. type: verbatim
15495 #: ../fish/guestfish.pod:19
15496 #, no-wrap
15497 msgid ""
15498 " guestfish [--ro|--rw] -a disk.img -i\n"
15499 "\n"
15500 msgstr ""
15501
15502 #. type: verbatim
15503 #: ../fish/guestfish.pod:21
15504 #, no-wrap
15505 msgid ""
15506 " guestfish -d libvirt-domain -i\n"
15507 "\n"
15508 msgstr ""
15509
15510 #. type: textblock
15511 #: ../fish/guestfish.pod:25
15512 msgid ""
15513 "Using guestfish in read/write mode on live virtual machines can be "
15514 "dangerous, potentially causing disk corruption.  Use the I<--ro> (read-only) "
15515 "option to use guestfish safely if the disk image or virtual machine might be "
15516 "live."
15517 msgstr ""
15518
15519 #. type: textblock
15520 #: ../fish/guestfish.pod:32
15521 msgid ""
15522 "Guestfish is a shell and command-line tool for examining and modifying "
15523 "virtual machine filesystems.  It uses libguestfs and exposes all of the "
15524 "functionality of the guestfs API, see L<guestfs(3)>."
15525 msgstr ""
15526
15527 #. type: textblock
15528 #: ../fish/guestfish.pod:36
15529 msgid ""
15530 "Guestfish gives you structured access to the libguestfs API, from shell "
15531 "scripts or the command line or interactively.  If you want to rescue a "
15532 "broken virtual machine image, you should look at the L<virt-rescue(1)> "
15533 "command."
15534 msgstr ""
15535
15536 #. type: =head2
15537 #: ../fish/guestfish.pod:43
15538 msgid "As an interactive shell"
15539 msgstr ""
15540
15541 #. type: verbatim
15542 #: ../fish/guestfish.pod:45
15543 #, no-wrap
15544 msgid ""
15545 " $ guestfish\n"
15546 " \n"
15547 msgstr ""
15548
15549 #. type: verbatim
15550 #: ../fish/guestfish.pod:47
15551 #, no-wrap
15552 msgid ""
15553 " Welcome to guestfish, the libguestfs filesystem interactive shell for\n"
15554 " editing virtual machine filesystems.\n"
15555 " \n"
15556 msgstr ""
15557
15558 #. type: verbatim
15559 #: ../fish/guestfish.pod:50
15560 #, no-wrap
15561 msgid ""
15562 " Type: 'help' for a list of commands\n"
15563 "       'man' to read the manual\n"
15564 "       'quit' to quit the shell\n"
15565 " \n"
15566 msgstr ""
15567
15568 #. type: verbatim
15569 #: ../fish/guestfish.pod:54
15570 #, no-wrap
15571 msgid ""
15572 " ><fs> add-ro disk.img\n"
15573 " ><fs> run\n"
15574 " ><fs> list-filesystems\n"
15575 " /dev/sda1: ext4\n"
15576 " /dev/vg_guest/lv_root: ext4\n"
15577 " /dev/vg_guest/lv_swap: swap\n"
15578 " ><fs> mount /dev/vg_guest/lv_root /\n"
15579 " ><fs> cat /etc/fstab\n"
15580 " # /etc/fstab\n"
15581 " # Created by anaconda\n"
15582 " [...]\n"
15583 " ><fs> exit\n"
15584 "\n"
15585 msgstr ""
15586
15587 #. type: =head2
15588 #: ../fish/guestfish.pod:67
15589 msgid "From shell scripts"
15590 msgstr ""
15591
15592 #. type: textblock
15593 #: ../fish/guestfish.pod:69
15594 msgid "Create a new C</etc/motd> file in a guest or disk image:"
15595 msgstr ""
15596
15597 #. type: verbatim
15598 #: ../fish/guestfish.pod:71
15599 #, no-wrap
15600 msgid ""
15601 " guestfish <<_EOF_\n"
15602 " add disk.img\n"
15603 " run\n"
15604 " mount /dev/vg_guest/lv_root /\n"
15605 " write /etc/motd \"Welcome, new users\"\n"
15606 " _EOF_\n"
15607 "\n"
15608 msgstr ""
15609
15610 #. type: textblock
15611 #: ../fish/guestfish.pod:78
15612 msgid "List the LVM logical volumes in a disk image:"
15613 msgstr ""
15614
15615 #. type: verbatim
15616 #: ../fish/guestfish.pod:80
15617 #, no-wrap
15618 msgid ""
15619 " guestfish -a disk.img --ro <<_EOF_\n"
15620 " run\n"
15621 " lvs\n"
15622 " _EOF_\n"
15623 "\n"
15624 msgstr ""
15625
15626 #. type: textblock
15627 #: ../fish/guestfish.pod:85
15628 msgid "List all the filesystems in a disk image:"
15629 msgstr ""
15630
15631 #. type: verbatim
15632 #: ../fish/guestfish.pod:87
15633 #, no-wrap
15634 msgid ""
15635 " guestfish -a disk.img --ro <<_EOF_\n"
15636 " run\n"
15637 " list-filesystems\n"
15638 " _EOF_\n"
15639 "\n"
15640 msgstr ""
15641
15642 #. type: =head2
15643 #: ../fish/guestfish.pod:92
15644 msgid "On one command line"
15645 msgstr ""
15646
15647 #. type: textblock
15648 #: ../fish/guestfish.pod:94 ../fish/virt-copy-in.pod:31
15649 msgid "Update C</etc/resolv.conf> in a guest:"
15650 msgstr ""
15651
15652 #. type: verbatim
15653 #: ../fish/guestfish.pod:96
15654 #, no-wrap
15655 msgid ""
15656 " guestfish \\\n"
15657 "   add disk.img : run : mount /dev/vg_guest/lv_root / : \\\n"
15658 "   write /etc/resolv.conf \"nameserver 1.2.3.4\"\n"
15659 "\n"
15660 msgstr ""
15661
15662 #. type: textblock
15663 #: ../fish/guestfish.pod:100
15664 msgid "Edit C</boot/grub/grub.conf> interactively:"
15665 msgstr ""
15666
15667 #. type: verbatim
15668 #: ../fish/guestfish.pod:102
15669 #, no-wrap
15670 msgid ""
15671 " guestfish --rw --add disk.img \\\n"
15672 "   --mount /dev/vg_guest/lv_root \\\n"
15673 "   --mount /dev/sda1:/boot \\\n"
15674 "   edit /boot/grub/grub.conf\n"
15675 "\n"
15676 msgstr ""
15677
15678 #. type: =head2
15679 #: ../fish/guestfish.pod:107
15680 msgid "Mount disks automatically"
15681 msgstr ""
15682
15683 #. type: textblock
15684 #: ../fish/guestfish.pod:109
15685 msgid ""
15686 "Use the I<-i> option to automatically mount the disks from a virtual "
15687 "machine:"
15688 msgstr ""
15689
15690 #. type: verbatim
15691 #: ../fish/guestfish.pod:112
15692 #, no-wrap
15693 msgid ""
15694 " guestfish --ro -a disk.img -i cat /etc/group\n"
15695 "\n"
15696 msgstr ""
15697
15698 #. type: verbatim
15699 #: ../fish/guestfish.pod:114
15700 #, no-wrap
15701 msgid ""
15702 " guestfish --ro -d libvirt-domain -i cat /etc/group\n"
15703 "\n"
15704 msgstr ""
15705
15706 #. type: textblock
15707 #: ../fish/guestfish.pod:116
15708 msgid "Another way to edit C</boot/grub/grub.conf> interactively is:"
15709 msgstr ""
15710
15711 #. type: verbatim
15712 #: ../fish/guestfish.pod:118
15713 #, no-wrap
15714 msgid ""
15715 " guestfish --rw -a disk.img -i edit /boot/grub/grub.conf\n"
15716 "\n"
15717 msgstr ""
15718
15719 #. type: =head2
15720 #: ../fish/guestfish.pod:120
15721 msgid "As a script interpreter"
15722 msgstr ""
15723
15724 #. type: textblock
15725 #: ../fish/guestfish.pod:122
15726 msgid "Create a 100MB disk containing an ext2-formatted partition:"
15727 msgstr ""
15728
15729 #. type: verbatim
15730 #: ../fish/guestfish.pod:124
15731 #, no-wrap
15732 msgid ""
15733 " #!/usr/bin/guestfish -f\n"
15734 " sparse test1.img 100M\n"
15735 " run\n"
15736 " part-disk /dev/sda mbr\n"
15737 " mkfs ext2 /dev/sda1\n"
15738 "\n"
15739 msgstr ""
15740
15741 #. type: =head2
15742 #: ../fish/guestfish.pod:130
15743 msgid "Start with a prepared disk"
15744 msgstr ""
15745
15746 #. type: textblock
15747 #: ../fish/guestfish.pod:132
15748 msgid ""
15749 "An alternate way to create a 100MB disk called C<test1.img> containing a "
15750 "single ext2-formatted partition:"
15751 msgstr ""
15752
15753 #. type: verbatim
15754 #: ../fish/guestfish.pod:135
15755 #, no-wrap
15756 msgid ""
15757 " guestfish -N fs\n"
15758 "\n"
15759 msgstr ""
15760
15761 #. type: textblock
15762 #: ../fish/guestfish.pod:137
15763 msgid "To list what is available do:"
15764 msgstr ""
15765
15766 #. type: verbatim
15767 #: ../fish/guestfish.pod:139 ../fish/guestfish.pod:1009
15768 #, no-wrap
15769 msgid ""
15770 " guestfish -N help | less\n"
15771 "\n"
15772 msgstr ""
15773
15774 #. type: =head2
15775 #: ../fish/guestfish.pod:141
15776 msgid "Remote control"
15777 msgstr ""
15778
15779 #. type: verbatim
15780 #: ../fish/guestfish.pod:143
15781 #, no-wrap
15782 msgid ""
15783 " eval \"`guestfish --listen`\"\n"
15784 " guestfish --remote add-ro disk.img\n"
15785 " guestfish --remote run\n"
15786 " guestfish --remote lvs\n"
15787 "\n"
15788 msgstr ""
15789
15790 #. type: textblock
15791 #: ../fish/guestfish.pod:154
15792 msgid "Displays general help on options."
15793 msgstr ""
15794
15795 #. type: =item
15796 #: ../fish/guestfish.pod:158
15797 msgid "B<--cmd-help>"
15798 msgstr ""
15799
15800 #. type: textblock
15801 #: ../fish/guestfish.pod:160
15802 msgid "Lists all available guestfish commands."
15803 msgstr ""
15804
15805 #. type: =item
15806 #: ../fish/guestfish.pod:162
15807 msgid "B<-h cmd>"
15808 msgstr ""
15809
15810 #. type: =item
15811 #: ../fish/guestfish.pod:164
15812 msgid "B<--cmd-help cmd>"
15813 msgstr ""
15814
15815 #. type: textblock
15816 #: ../fish/guestfish.pod:166
15817 msgid "Displays detailed help on a single command C<cmd>."
15818 msgstr ""
15819
15820 #. type: =item
15821 #: ../fish/guestfish.pod:168 ../fuse/guestmount.pod:87
15822 msgid "B<-a image>"
15823 msgstr ""
15824
15825 #. type: =item
15826 #: ../fish/guestfish.pod:170 ../fuse/guestmount.pod:89
15827 msgid "B<--add image>"
15828 msgstr ""
15829
15830 #. type: textblock
15831 #: ../fish/guestfish.pod:172
15832 msgid "Add a block device or virtual machine image to the shell."
15833 msgstr ""
15834
15835 #. type: textblock
15836 #: ../fish/guestfish.pod:177
15837 msgid ""
15838 "Using this flag is mostly equivalent to using the C<add> command, with "
15839 "C<readonly:true> if the I<--ro> flag was given, and with C<format:...> if "
15840 "the I<--format=...> flag was given."
15841 msgstr ""
15842
15843 #. type: textblock
15844 #: ../fish/guestfish.pod:185 ../fuse/guestmount.pod:100
15845 msgid ""
15846 "When used in conjunction with the I<-d> option, this specifies the libvirt "
15847 "URI to use.  The default is to use the default libvirt connection."
15848 msgstr ""
15849
15850 #. type: =item
15851 #: ../fish/guestfish.pod:189
15852 msgid "B<--csh>"
15853 msgstr ""
15854
15855 #. type: textblock
15856 #: ../fish/guestfish.pod:191
15857 msgid ""
15858 "If using the I<--listen> option and a csh-like shell, use this option.  See "
15859 "section L</REMOTE CONTROL AND CSH> below."
15860 msgstr ""
15861
15862 #. type: =item
15863 #: ../fish/guestfish.pod:194 ../fuse/guestmount.pod:104
15864 msgid "B<-d libvirt-domain>"
15865 msgstr ""
15866
15867 #. type: =item
15868 #: ../fish/guestfish.pod:196 ../fuse/guestmount.pod:106
15869 msgid "B<--domain libvirt-domain>"
15870 msgstr ""
15871
15872 #. type: textblock
15873 #: ../fish/guestfish.pod:198 ../fuse/guestmount.pod:108
15874 msgid ""
15875 "Add disks from the named libvirt domain.  If the I<--ro> option is also "
15876 "used, then any libvirt domain can be used.  However in write mode, only "
15877 "libvirt domains which are shut down can be named here."
15878 msgstr ""
15879
15880 #. type: textblock
15881 #: ../fish/guestfish.pod:202 ../fuse/guestmount.pod:112
15882 msgid "Domain UUIDs can be used instead of names."
15883 msgstr ""
15884
15885 #. type: textblock
15886 #: ../fish/guestfish.pod:204
15887 msgid ""
15888 "Using this flag is mostly equivalent to using the C<add-domain> command, "
15889 "with C<readonly:true> if the I<--ro> flag was given, and with C<format:...> "
15890 "if the I<--format:...> flag was given."
15891 msgstr ""
15892
15893 #. type: =item
15894 #: ../fish/guestfish.pod:208
15895 msgid "B<-D>"
15896 msgstr ""
15897
15898 #. type: =item
15899 #: ../fish/guestfish.pod:210
15900 msgid "B<--no-dest-paths>"
15901 msgstr ""
15902
15903 #. type: textblock
15904 #: ../fish/guestfish.pod:212
15905 msgid ""
15906 "Don't tab-complete paths on the guest filesystem.  It is useful to be able "
15907 "to hit the tab key to complete paths on the guest filesystem, but this "
15908 "causes extra \"hidden\" guestfs calls to be made, so this option is here to "
15909 "allow this feature to be disabled."
15910 msgstr ""
15911
15912 #. type: textblock
15913 #: ../fish/guestfish.pod:219 ../fuse/guestmount.pod:128
15914 msgid ""
15915 "When prompting for keys and passphrases, guestfish normally turns echoing "
15916 "off so you cannot see what you are typing.  If you are not worried about "
15917 "Tempest attacks and there is no one else in the room you can specify this "
15918 "flag to see what you are typing."
15919 msgstr ""
15920
15921 #. type: =item
15922 #: ../fish/guestfish.pod:224
15923 msgid "B<-f file>"
15924 msgstr ""
15925
15926 #. type: =item
15927 #: ../fish/guestfish.pod:226
15928 msgid "B<--file file>"
15929 msgstr ""
15930
15931 #. type: textblock
15932 #: ../fish/guestfish.pod:228
15933 msgid "Read commands from C<file>.  To write pure guestfish scripts, use:"
15934 msgstr ""
15935
15936 #. type: verbatim
15937 #: ../fish/guestfish.pod:231
15938 #, no-wrap
15939 msgid ""
15940 " #!/usr/bin/guestfish -f\n"
15941 "\n"
15942 msgstr ""
15943
15944 #. type: verbatim
15945 #: ../fish/guestfish.pod:244
15946 #, no-wrap
15947 msgid ""
15948 " guestfish --format=raw -a disk.img\n"
15949 "\n"
15950 msgstr ""
15951
15952 #. type: verbatim
15953 #: ../fish/guestfish.pod:248
15954 #, no-wrap
15955 msgid ""
15956 " guestfish --format=raw -a disk.img --format -a another.img\n"
15957 "\n"
15958 msgstr ""
15959
15960 #. type: textblock
15961 #: ../fish/guestfish.pod:253
15962 msgid ""
15963 "If you have untrusted raw-format guest disk images, you should use this "
15964 "option to specify the disk format.  This avoids a possible security problem "
15965 "with malicious guests (CVE-2010-3851).  See also L</add-drive-opts>."
15966 msgstr ""
15967
15968 #. type: =item
15969 #: ../fish/guestfish.pod:260 ../fuse/guestmount.pod:157
15970 msgid "B<--inspector>"
15971 msgstr ""
15972
15973 #. type: textblock
15974 #: ../fish/guestfish.pod:262 ../fuse/guestmount.pod:159
15975 msgid ""
15976 "Using L<virt-inspector(1)> code, inspect the disks looking for an operating "
15977 "system and mount filesystems as they would be mounted on the real virtual "
15978 "machine."
15979 msgstr ""
15980
15981 #. type: textblock
15982 #: ../fish/guestfish.pod:266
15983 msgid "Typical usage is either:"
15984 msgstr ""
15985
15986 #. type: verbatim
15987 #: ../fish/guestfish.pod:268
15988 #, no-wrap
15989 msgid ""
15990 " guestfish -d myguest -i\n"
15991 "\n"
15992 msgstr ""
15993
15994 #. type: textblock
15995 #: ../fish/guestfish.pod:270
15996 msgid "(for an inactive libvirt domain called I<myguest>), or:"
15997 msgstr ""
15998
15999 #. type: verbatim
16000 #: ../fish/guestfish.pod:272
16001 #, no-wrap
16002 msgid ""
16003 " guestfish --ro -d myguest -i\n"
16004 "\n"
16005 msgstr ""
16006
16007 #. type: textblock
16008 #: ../fish/guestfish.pod:274
16009 msgid "(for active domains, readonly), or specify the block device directly:"
16010 msgstr ""
16011
16012 #. type: verbatim
16013 #: ../fish/guestfish.pod:276
16014 #, no-wrap
16015 msgid ""
16016 " guestfish --rw -a /dev/Guests/MyGuest -i\n"
16017 "\n"
16018 msgstr ""
16019
16020 #. type: textblock
16021 #: ../fish/guestfish.pod:278
16022 msgid ""
16023 "Note that the command line syntax changed slightly over older versions of "
16024 "guestfish.  You can still use the old syntax:"
16025 msgstr ""
16026
16027 #. type: verbatim
16028 #: ../fish/guestfish.pod:281
16029 #, no-wrap
16030 msgid ""
16031 " guestfish [--ro] -i disk.img\n"
16032 "\n"
16033 msgstr ""
16034
16035 #. type: verbatim
16036 #: ../fish/guestfish.pod:283
16037 #, no-wrap
16038 msgid ""
16039 " guestfish [--ro] -i libvirt-domain\n"
16040 "\n"
16041 msgstr ""
16042
16043 #. type: textblock
16044 #: ../fish/guestfish.pod:285
16045 msgid ""
16046 "Using this flag is mostly equivalent to using the C<inspect-os> command and "
16047 "then using other commands to mount the filesystems that were found."
16048 msgstr ""
16049
16050 #. type: =item
16051 #: ../fish/guestfish.pod:294
16052 msgid "B<--listen>"
16053 msgstr ""
16054
16055 #. type: textblock
16056 #: ../fish/guestfish.pod:296
16057 msgid ""
16058 "Fork into the background and listen for remote commands.  See section "
16059 "L</REMOTE CONTROL GUESTFISH OVER A SOCKET> below."
16060 msgstr ""
16061
16062 #. type: =item
16063 #: ../fish/guestfish.pod:299 ../fuse/guestmount.pod:168
16064 msgid "B<--live>"
16065 msgstr ""
16066
16067 #. type: textblock
16068 #: ../fish/guestfish.pod:301 ../fuse/guestmount.pod:170
16069 msgid ""
16070 "Connect to a live virtual machine.  (Experimental, see "
16071 "L<guestfs(3)/ATTACHING TO RUNNING DAEMONS>)."
16072 msgstr ""
16073
16074 #. type: =item
16075 #: ../fish/guestfish.pod:304 ../fuse/guestmount.pod:173
16076 msgid "B<-m dev[:mountpoint[:options]]>"
16077 msgstr ""
16078
16079 #. type: =item
16080 #: ../fish/guestfish.pod:306 ../fuse/guestmount.pod:175
16081 msgid "B<--mount dev[:mountpoint[:options]]>"
16082 msgstr ""
16083
16084 #. type: textblock
16085 #: ../fish/guestfish.pod:308
16086 msgid "Mount the named partition or logical volume on the given mountpoint."
16087 msgstr ""
16088
16089 #. type: textblock
16090 #: ../fish/guestfish.pod:310
16091 msgid "If the mountpoint is omitted, it defaults to C</>."
16092 msgstr ""
16093
16094 #. type: textblock
16095 #: ../fish/guestfish.pod:312
16096 msgid "You have to mount something on C</> before most commands will work."
16097 msgstr ""
16098
16099 #. type: textblock
16100 #: ../fish/guestfish.pod:314
16101 msgid ""
16102 "If any I<-m> or I<--mount> options are given, the guest is automatically "
16103 "launched."
16104 msgstr ""
16105
16106 #. type: textblock
16107 #: ../fish/guestfish.pod:317
16108 msgid ""
16109 "If you don't know what filesystems a disk image contains, you can either run "
16110 "guestfish without this option, then list the partitions, filesystems and LVs "
16111 "available (see L</list-partitions>, L</list-filesystems> and L</lvs> "
16112 "commands), or you can use the L<virt-filesystems(1)> program."
16113 msgstr ""
16114
16115 #. type: textblock
16116 #: ../fish/guestfish.pod:323 ../fuse/guestmount.pod:183
16117 msgid ""
16118 "The third (and rarely used) part of the mount parameter is the list of mount "
16119 "options used to mount the underlying filesystem.  If this is not given, then "
16120 "the mount options are either the empty string or C<ro> (the latter if the "
16121 "I<--ro> flag is used).  By specifying the mount options, you override this "
16122 "default choice.  Probably the only time you would use this is to enable ACLs "
16123 "and/or extended attributes if the filesystem can support them:"
16124 msgstr ""
16125
16126 #. type: verbatim
16127 #: ../fish/guestfish.pod:331 ../fuse/guestmount.pod:191
16128 #, no-wrap
16129 msgid ""
16130 " -m /dev/sda1:/:acl,user_xattr\n"
16131 "\n"
16132 msgstr ""
16133
16134 #. type: textblock
16135 #: ../fish/guestfish.pod:333
16136 msgid "Using this flag is equivalent to using the C<mount-options> command."
16137 msgstr ""
16138
16139 #. type: =item
16140 #: ../fish/guestfish.pod:335 ../fuse/guestmount.pod:193 ../resize/virt-resize.pod:358
16141 msgid "B<-n>"
16142 msgstr ""
16143
16144 #. type: =item
16145 #: ../fish/guestfish.pod:337 ../fuse/guestmount.pod:195
16146 msgid "B<--no-sync>"
16147 msgstr ""
16148
16149 #. type: textblock
16150 #: ../fish/guestfish.pod:339
16151 msgid ""
16152 "Disable autosync.  This is enabled by default.  See the discussion of "
16153 "autosync in the L<guestfs(3)> manpage."
16154 msgstr ""
16155
16156 #. type: =item
16157 #: ../fish/guestfish.pod:342
16158 msgid "B<-N type>"
16159 msgstr ""
16160
16161 #. type: =item
16162 #: ../fish/guestfish.pod:344
16163 msgid "B<--new type>"
16164 msgstr ""
16165
16166 #. type: =item
16167 #: ../fish/guestfish.pod:346
16168 msgid "B<-N help>"
16169 msgstr ""
16170
16171 #. type: textblock
16172 #: ../fish/guestfish.pod:348
16173 msgid ""
16174 "Prepare a fresh disk image formatted as \"type\".  This is an alternative to "
16175 "the I<-a> option: whereas I<-a> adds an existing disk, I<-N> creates a "
16176 "preformatted disk with a filesystem and adds it.  See L</PREPARED DISK "
16177 "IMAGES> below."
16178 msgstr ""
16179
16180 #. type: =item
16181 #: ../fish/guestfish.pod:353
16182 msgid "B<--progress-bars>"
16183 msgstr ""
16184
16185 #. type: textblock
16186 #: ../fish/guestfish.pod:355
16187 msgid "Enable progress bars, even when guestfish is used non-interactively."
16188 msgstr ""
16189
16190 #. type: textblock
16191 #: ../fish/guestfish.pod:357
16192 msgid ""
16193 "Progress bars are enabled by default when guestfish is used as an "
16194 "interactive shell."
16195 msgstr ""
16196
16197 #. type: =item
16198 #: ../fish/guestfish.pod:360
16199 msgid "B<--no-progress-bars>"
16200 msgstr ""
16201
16202 #. type: textblock
16203 #: ../fish/guestfish.pod:362
16204 msgid "Disable progress bars."
16205 msgstr ""
16206
16207 #. type: =item
16208 #: ../fish/guestfish.pod:364
16209 msgid "B<--remote[=pid]>"
16210 msgstr ""
16211
16212 #. type: textblock
16213 #: ../fish/guestfish.pod:366
16214 msgid ""
16215 "Send remote commands to C<$GUESTFISH_PID> or C<pid>.  See section L</REMOTE "
16216 "CONTROL GUESTFISH OVER A SOCKET> below."
16217 msgstr ""
16218
16219 #. type: =item
16220 #: ../fish/guestfish.pod:369 ../fuse/guestmount.pod:239 ../rescue/virt-rescue.pod:161
16221 msgid "B<-r>"
16222 msgstr ""
16223
16224 #. type: =item
16225 #: ../fish/guestfish.pod:371 ../fuse/guestmount.pod:241 ../rescue/virt-rescue.pod:163
16226 msgid "B<--ro>"
16227 msgstr ""
16228
16229 #. type: textblock
16230 #: ../fish/guestfish.pod:373
16231 msgid ""
16232 "This changes the I<-a>, I<-d> and I<-m> options so that disks are added and "
16233 "mounts are done read-only."
16234 msgstr ""
16235
16236 #. type: textblock
16237 #: ../fish/guestfish.pod:376 ../rescue/virt-rescue.pod:167
16238 msgid ""
16239 "The option must always be used if the disk image or virtual machine might be "
16240 "running, and is generally recommended in cases where you don't need write "
16241 "access to the disk."
16242 msgstr ""
16243
16244 #. type: textblock
16245 #: ../fish/guestfish.pod:380
16246 msgid ""
16247 "Note that prepared disk images created with I<-N> are not affected by this "
16248 "option.  Also commands like C<add> are not affected - you have to specify "
16249 "the C<readonly:true> option explicitly if you need it."
16250 msgstr ""
16251
16252 #. type: textblock
16253 #: ../fish/guestfish.pod:384
16254 msgid "See also L</OPENING DISKS FOR READ AND WRITE> below."
16255 msgstr ""
16256
16257 #. type: =item
16258 #: ../fish/guestfish.pod:386 ../fuse/guestmount.pod:253 ../rescue/virt-rescue.pod:173
16259 msgid "B<--selinux>"
16260 msgstr ""
16261
16262 #. type: textblock
16263 #: ../fish/guestfish.pod:388
16264 msgid "Enable SELinux support for the guest.  See L<guestfs(3)/SELINUX>."
16265 msgstr ""
16266
16267 #. type: textblock
16268 #: ../fish/guestfish.pod:394
16269 msgid ""
16270 "Enable very verbose messages.  This is particularly useful if you find a "
16271 "bug."
16272 msgstr ""
16273
16274 #. type: textblock
16275 #: ../fish/guestfish.pod:401
16276 msgid "Display the guestfish / libguestfs version number and exit."
16277 msgstr ""
16278
16279 #. type: =item
16280 #: ../fish/guestfish.pod:403 ../fuse/guestmount.pod:269 ../rescue/virt-rescue.pod:190
16281 msgid "B<-w>"
16282 msgstr ""
16283
16284 #. type: =item
16285 #: ../fish/guestfish.pod:405 ../fuse/guestmount.pod:271 ../rescue/virt-rescue.pod:192
16286 msgid "B<--rw>"
16287 msgstr ""
16288
16289 #. type: textblock
16290 #: ../fish/guestfish.pod:407 ../fuse/guestmount.pod:273
16291 msgid ""
16292 "This changes the I<-a>, I<-d> and I<-m> options so that disks are added and "
16293 "mounts are done read-write."
16294 msgstr ""
16295
16296 #. type: textblock
16297 #: ../fish/guestfish.pod:410
16298 msgid "See L</OPENING DISKS FOR READ AND WRITE> below."
16299 msgstr ""
16300
16301 #. type: textblock
16302 #: ../fish/guestfish.pod:414
16303 msgid "Echo each command before executing it."
16304 msgstr ""
16305
16306 #. type: =head1
16307 #: ../fish/guestfish.pod:418
16308 msgid "COMMANDS ON COMMAND LINE"
16309 msgstr ""
16310
16311 #. type: textblock
16312 #: ../fish/guestfish.pod:420
16313 msgid "Any additional (non-option) arguments are treated as commands to execute."
16314 msgstr ""
16315
16316 #. type: textblock
16317 #: ../fish/guestfish.pod:423
16318 msgid ""
16319 "Commands to execute should be separated by a colon (C<:>), where the colon "
16320 "is a separate parameter.  Thus:"
16321 msgstr ""
16322
16323 #. type: verbatim
16324 #: ../fish/guestfish.pod:426
16325 #, no-wrap
16326 msgid ""
16327 " guestfish cmd [args...] : cmd [args...] : cmd [args...] ...\n"
16328 "\n"
16329 msgstr ""
16330
16331 #. type: textblock
16332 #: ../fish/guestfish.pod:428
16333 msgid ""
16334 "If there are no additional arguments, then we enter a shell, either an "
16335 "interactive shell with a prompt (if the input is a terminal) or a "
16336 "non-interactive shell."
16337 msgstr ""
16338
16339 #. type: textblock
16340 #: ../fish/guestfish.pod:432
16341 msgid ""
16342 "In either command line mode or non-interactive shell, the first command that "
16343 "gives an error causes the whole shell to exit.  In interactive mode (with a "
16344 "prompt) if a command fails, you can continue to enter commands."
16345 msgstr ""
16346
16347 #. type: =head1
16348 #: ../fish/guestfish.pod:437
16349 msgid "USING launch (OR run)"
16350 msgstr ""
16351
16352 #. type: textblock
16353 #: ../fish/guestfish.pod:439
16354 msgid ""
16355 "As with L<guestfs(3)>, you must first configure your guest by adding disks, "
16356 "then launch it, then mount any disks you need, and finally issue "
16357 "actions/commands.  So the general order of the day is:"
16358 msgstr ""
16359
16360 #. type: textblock
16361 #: ../fish/guestfish.pod:447
16362 msgid "add or -a/--add"
16363 msgstr ""
16364
16365 #. type: textblock
16366 #: ../fish/guestfish.pod:451
16367 msgid "launch (aka run)"
16368 msgstr ""
16369
16370 #. type: textblock
16371 #: ../fish/guestfish.pod:455
16372 msgid "mount or -m/--mount"
16373 msgstr ""
16374
16375 #. type: textblock
16376 #: ../fish/guestfish.pod:459
16377 msgid "any other commands"
16378 msgstr ""
16379
16380 #. type: textblock
16381 #: ../fish/guestfish.pod:463
16382 msgid ""
16383 "C<run> is a synonym for C<launch>.  You must C<launch> (or C<run>)  your "
16384 "guest before mounting or performing any other commands."
16385 msgstr ""
16386
16387 #. type: textblock
16388 #: ../fish/guestfish.pod:466
16389 msgid ""
16390 "The only exception is that if any of the I<-i>, I<-m>, I<--mount>, I<-N> or "
16391 "I<--new> options were given then C<run> is done automatically, simply "
16392 "because guestfish can't perform the action you asked for without doing this."
16393 msgstr ""
16394
16395 #. type: =head1
16396 #: ../fish/guestfish.pod:471
16397 msgid "OPENING DISKS FOR READ AND WRITE"
16398 msgstr ""
16399
16400 #. type: textblock
16401 #: ../fish/guestfish.pod:473
16402 msgid ""
16403 "The guestfish, L<guestmount(1)> and L<virt-rescue(1)> options I<--ro> and "
16404 "I<--rw> affect whether the other command line options I<-a>, I<-c>, I<-d>, "
16405 "I<-i> and I<-m> open disk images read-only or for writing."
16406 msgstr ""
16407
16408 #. type: textblock
16409 #: ../fish/guestfish.pod:478
16410 msgid ""
16411 "In libguestfs E<le> 1.10, guestfish, guestmount and virt-rescue defaulted to "
16412 "opening disk images supplied on the command line for write.  To open a disk "
16413 "image read-only you have to do I<-a image --ro>."
16414 msgstr ""
16415
16416 #. type: textblock
16417 #: ../fish/guestfish.pod:482
16418 msgid ""
16419 "This matters: If you accidentally open a live VM disk image writable then "
16420 "you will cause irreversible disk corruption."
16421 msgstr ""
16422
16423 #. type: textblock
16424 #: ../fish/guestfish.pod:485
16425 msgid ""
16426 "In a future libguestfs we intend to change the default the other way.  Disk "
16427 "images will be opened read-only.  You will have to either specify "
16428 "I<guestfish --rw>, I<guestmount --rw>, I<virt-rescue --rw>, or change the "
16429 "configuration file C</etc/libguestfs-tools.conf> in order to get write "
16430 "access for disk images specified by those other command line options."
16431 msgstr ""
16432
16433 #. type: textblock
16434 #: ../fish/guestfish.pod:492
16435 msgid ""
16436 "This version of guestfish, guestmount and virt-rescue has a I<--rw> option "
16437 "which does nothing (it is already the default).  However it is highly "
16438 "recommended that you use this option to indicate that you need write access, "
16439 "and prepare your scripts for the day when this option will be required for "
16440 "write access."
16441 msgstr ""
16442
16443 #. type: textblock
16444 #: ../fish/guestfish.pod:498
16445 msgid ""
16446 "B<Note:> This does I<not> affect commands like L</add> and L</mount>, or any "
16447 "other libguestfs program apart from guestfish and guestmount."
16448 msgstr ""
16449
16450 #. type: =head1
16451 #: ../fish/guestfish.pod:501
16452 msgid "QUOTING"
16453 msgstr ""
16454
16455 #. type: textblock
16456 #: ../fish/guestfish.pod:503
16457 msgid ""
16458 "You can quote ordinary parameters using either single or double quotes.  For "
16459 "example:"
16460 msgstr ""
16461
16462 #. type: verbatim
16463 #: ../fish/guestfish.pod:506
16464 #, no-wrap
16465 msgid ""
16466 " add \"file with a space.img\"\n"
16467 "\n"
16468 msgstr ""
16469
16470 #. type: verbatim
16471 #: ../fish/guestfish.pod:508
16472 #, no-wrap
16473 msgid ""
16474 " rm '/file name'\n"
16475 "\n"
16476 msgstr ""
16477
16478 #. type: verbatim
16479 #: ../fish/guestfish.pod:510
16480 #, no-wrap
16481 msgid ""
16482 " rm '/\"'\n"
16483 "\n"
16484 msgstr ""
16485
16486 #. type: textblock
16487 #: ../fish/guestfish.pod:512
16488 msgid ""
16489 "A few commands require a list of strings to be passed.  For these, use a "
16490 "whitespace-separated list, enclosed in quotes.  Strings containing "
16491 "whitespace to be passed through must be enclosed in single quotes.  A "
16492 "literal single quote must be escaped with a backslash."
16493 msgstr ""
16494
16495 #. type: verbatim
16496 #: ../fish/guestfish.pod:517
16497 #, no-wrap
16498 msgid ""
16499 " vgcreate VG \"/dev/sda1 /dev/sdb1\"\n"
16500 " command \"/bin/echo 'foo      bar'\"\n"
16501 " command \"/bin/echo \\'foo\\'\"\n"
16502 "\n"
16503 msgstr ""
16504
16505 #. type: =head2
16506 #: ../fish/guestfish.pod:521
16507 msgid "ESCAPE SEQUENCES IN DOUBLE QUOTED ARGUMENTS"
16508 msgstr ""
16509
16510 #. type: textblock
16511 #: ../fish/guestfish.pod:523
16512 msgid ""
16513 "In double-quoted arguments (only) use backslash to insert special "
16514 "characters:"
16515 msgstr ""
16516
16517 #. type: =item
16518 #: ../fish/guestfish.pod:528
16519 msgid "C<\\a>"
16520 msgstr ""
16521
16522 #. type: textblock
16523 #: ../fish/guestfish.pod:530
16524 msgid "Alert (bell) character."
16525 msgstr ""
16526
16527 #. type: =item
16528 #: ../fish/guestfish.pod:532
16529 msgid "C<\\b>"
16530 msgstr ""
16531
16532 #. type: textblock
16533 #: ../fish/guestfish.pod:534
16534 msgid "Backspace character."
16535 msgstr ""
16536
16537 #. type: =item
16538 #: ../fish/guestfish.pod:536
16539 msgid "C<\\f>"
16540 msgstr ""
16541
16542 #. type: textblock
16543 #: ../fish/guestfish.pod:538
16544 msgid "Form feed character."
16545 msgstr ""
16546
16547 #. type: =item
16548 #: ../fish/guestfish.pod:540
16549 msgid "C<\\n>"
16550 msgstr ""
16551
16552 #. type: textblock
16553 #: ../fish/guestfish.pod:542
16554 msgid "Newline character."
16555 msgstr ""
16556
16557 #. type: =item
16558 #: ../fish/guestfish.pod:544
16559 msgid "C<\\r>"
16560 msgstr ""
16561
16562 #. type: textblock
16563 #: ../fish/guestfish.pod:546
16564 msgid "Carriage return character."
16565 msgstr ""
16566
16567 #. type: =item
16568 #: ../fish/guestfish.pod:548
16569 msgid "C<\\t>"
16570 msgstr ""
16571
16572 #. type: textblock
16573 #: ../fish/guestfish.pod:550
16574 msgid "Horizontal tab character."
16575 msgstr ""
16576
16577 #. type: =item
16578 #: ../fish/guestfish.pod:552
16579 msgid "C<\\v>"
16580 msgstr ""
16581
16582 #. type: textblock
16583 #: ../fish/guestfish.pod:554
16584 msgid "Vertical tab character."
16585 msgstr ""
16586
16587 #. type: =item
16588 #: ../fish/guestfish.pod:556
16589 msgid "C<\\\">"
16590 msgstr ""
16591
16592 #. type: textblock
16593 #: ../fish/guestfish.pod:558
16594 msgid "A literal double quote character."
16595 msgstr ""
16596
16597 #. type: =item
16598 #: ../fish/guestfish.pod:560
16599 msgid "C<\\ooo>"
16600 msgstr ""
16601
16602 #. type: textblock
16603 #: ../fish/guestfish.pod:562
16604 msgid ""
16605 "A character with octal value I<ooo>.  There must be precisely 3 octal digits "
16606 "(unlike C)."
16607 msgstr ""
16608
16609 #. type: =item
16610 #: ../fish/guestfish.pod:565
16611 msgid "C<\\xhh>"
16612 msgstr ""
16613
16614 #. type: textblock
16615 #: ../fish/guestfish.pod:567
16616 msgid "A character with hex value I<hh>.  There must be precisely 2 hex digits."
16617 msgstr ""
16618
16619 #. type: textblock
16620 #: ../fish/guestfish.pod:570
16621 msgid ""
16622 "In the current implementation C<\\000> and C<\\x00> cannot be used in "
16623 "strings."
16624 msgstr ""
16625
16626 #. type: =item
16627 #: ../fish/guestfish.pod:573
16628 msgid "C<\\\\>"
16629 msgstr ""
16630
16631 #. type: textblock
16632 #: ../fish/guestfish.pod:575
16633 msgid "A literal backslash character."
16634 msgstr ""
16635
16636 #. type: =head1
16637 #: ../fish/guestfish.pod:579
16638 msgid "OPTIONAL ARGUMENTS"
16639 msgstr ""
16640
16641 #. type: textblock
16642 #: ../fish/guestfish.pod:581
16643 msgid ""
16644 "Some commands take optional arguments.  These arguments appear in this "
16645 "documentation as C<[argname:..]>.  You can use them as in these examples:"
16646 msgstr ""
16647
16648 #. type: verbatim
16649 #: ../fish/guestfish.pod:585
16650 #, no-wrap
16651 msgid ""
16652 " add-drive-opts filename\n"
16653 "\n"
16654 msgstr ""
16655
16656 #. type: verbatim
16657 #: ../fish/guestfish.pod:587
16658 #, no-wrap
16659 msgid ""
16660 " add-drive-opts filename readonly:true\n"
16661 "\n"
16662 msgstr ""
16663
16664 #. type: verbatim
16665 #: ../fish/guestfish.pod:589
16666 #, no-wrap
16667 msgid ""
16668 " add-drive-opts filename format:qcow2 readonly:false\n"
16669 "\n"
16670 msgstr ""
16671
16672 #. type: textblock
16673 #: ../fish/guestfish.pod:591
16674 msgid ""
16675 "Each optional argument can appear at most once.  All optional arguments must "
16676 "appear after the required ones."
16677 msgstr ""
16678
16679 #. type: =head1
16680 #: ../fish/guestfish.pod:594
16681 msgid "NUMBERS"
16682 msgstr ""
16683
16684 #. type: textblock
16685 #: ../fish/guestfish.pod:596
16686 msgid "This section applies to all commands which can take integers as parameters."
16687 msgstr ""
16688
16689 #. type: =head2
16690 #: ../fish/guestfish.pod:599
16691 msgid "SIZE SUFFIX"
16692 msgstr ""
16693
16694 #. type: textblock
16695 #: ../fish/guestfish.pod:601
16696 msgid ""
16697 "When the command takes a parameter measured in bytes, you can use one of the "
16698 "following suffixes to specify kilobytes, megabytes and larger sizes:"
16699 msgstr ""
16700
16701 #. type: =item
16702 #: ../fish/guestfish.pod:607
16703 msgid "B<k> or B<K> or B<KiB>"
16704 msgstr ""
16705
16706 #. type: textblock
16707 #: ../fish/guestfish.pod:609
16708 msgid "The size in kilobytes (multiplied by 1024)."
16709 msgstr ""
16710
16711 #. type: =item
16712 #: ../fish/guestfish.pod:611
16713 msgid "B<KB>"
16714 msgstr ""
16715
16716 #. type: textblock
16717 #: ../fish/guestfish.pod:613
16718 msgid "The size in SI 1000 byte units."
16719 msgstr ""
16720
16721 #. type: =item
16722 #: ../fish/guestfish.pod:615
16723 msgid "B<M> or B<MiB>"
16724 msgstr ""
16725
16726 #. type: textblock
16727 #: ../fish/guestfish.pod:617
16728 msgid "The size in megabytes (multiplied by 1048576)."
16729 msgstr ""
16730
16731 #. type: =item
16732 #: ../fish/guestfish.pod:619
16733 msgid "B<MB>"
16734 msgstr ""
16735
16736 #. type: textblock
16737 #: ../fish/guestfish.pod:621
16738 msgid "The size in SI 1000000 byte units."
16739 msgstr ""
16740
16741 #. type: =item
16742 #: ../fish/guestfish.pod:623
16743 msgid "B<G> or B<GiB>"
16744 msgstr ""
16745
16746 #. type: textblock
16747 #: ../fish/guestfish.pod:625
16748 msgid "The size in gigabytes (multiplied by 2**30)."
16749 msgstr ""
16750
16751 #. type: =item
16752 #: ../fish/guestfish.pod:627
16753 msgid "B<GB>"
16754 msgstr ""
16755
16756 #. type: textblock
16757 #: ../fish/guestfish.pod:629
16758 msgid "The size in SI 10**9 byte units."
16759 msgstr ""
16760
16761 #. type: =item
16762 #: ../fish/guestfish.pod:631
16763 msgid "B<T> or B<TiB>"
16764 msgstr ""
16765
16766 #. type: textblock
16767 #: ../fish/guestfish.pod:633
16768 msgid "The size in terabytes (multiplied by 2**40)."
16769 msgstr ""
16770
16771 #. type: =item
16772 #: ../fish/guestfish.pod:635
16773 msgid "B<TB>"
16774 msgstr ""
16775
16776 #. type: textblock
16777 #: ../fish/guestfish.pod:637
16778 msgid "The size in SI 10**12 byte units."
16779 msgstr ""
16780
16781 #. type: =item
16782 #: ../fish/guestfish.pod:639
16783 msgid "B<P> or B<PiB>"
16784 msgstr ""
16785
16786 #. type: textblock
16787 #: ../fish/guestfish.pod:641
16788 msgid "The size in petabytes (multiplied by 2**50)."
16789 msgstr ""
16790
16791 #. type: =item
16792 #: ../fish/guestfish.pod:643
16793 msgid "B<PB>"
16794 msgstr ""
16795
16796 #. type: textblock
16797 #: ../fish/guestfish.pod:645
16798 msgid "The size in SI 10**15 byte units."
16799 msgstr ""
16800
16801 #. type: =item
16802 #: ../fish/guestfish.pod:647
16803 msgid "B<E> or B<EiB>"
16804 msgstr ""
16805
16806 #. type: textblock
16807 #: ../fish/guestfish.pod:649
16808 msgid "The size in exabytes (multiplied by 2**60)."
16809 msgstr ""
16810
16811 #. type: =item
16812 #: ../fish/guestfish.pod:651
16813 msgid "B<EB>"
16814 msgstr ""
16815
16816 #. type: textblock
16817 #: ../fish/guestfish.pod:653
16818 msgid "The size in SI 10**18 byte units."
16819 msgstr ""
16820
16821 #. type: =item
16822 #: ../fish/guestfish.pod:655
16823 msgid "B<Z> or B<ZiB>"
16824 msgstr ""
16825
16826 #. type: textblock
16827 #: ../fish/guestfish.pod:657
16828 msgid "The size in zettabytes (multiplied by 2**70)."
16829 msgstr ""
16830
16831 #. type: =item
16832 #: ../fish/guestfish.pod:659
16833 msgid "B<ZB>"
16834 msgstr ""
16835
16836 #. type: textblock
16837 #: ../fish/guestfish.pod:661
16838 msgid "The size in SI 10**21 byte units."
16839 msgstr ""
16840
16841 #. type: =item
16842 #: ../fish/guestfish.pod:663
16843 msgid "B<Y> or B<YiB>"
16844 msgstr ""
16845
16846 #. type: textblock
16847 #: ../fish/guestfish.pod:665
16848 msgid "The size in yottabytes (multiplied by 2**80)."
16849 msgstr ""
16850
16851 #. type: =item
16852 #: ../fish/guestfish.pod:667
16853 msgid "B<YB>"
16854 msgstr ""
16855
16856 #. type: textblock
16857 #: ../fish/guestfish.pod:669
16858 msgid "The size in SI 10**24 byte units."
16859 msgstr ""
16860
16861 #. type: verbatim
16862 #: ../fish/guestfish.pod:675
16863 #, no-wrap
16864 msgid ""
16865 " truncate-size /file 1G\n"
16866 "\n"
16867 msgstr ""
16868
16869 #. type: textblock
16870 #: ../fish/guestfish.pod:677
16871 msgid "would truncate the file to 1 gigabyte."
16872 msgstr ""
16873
16874 #. type: textblock
16875 #: ../fish/guestfish.pod:679
16876 msgid ""
16877 "Be careful because a few commands take sizes in kilobytes or megabytes "
16878 "(eg. the parameter to L</memsize> is specified in megabytes already).  "
16879 "Adding a suffix will probably not do what you expect."
16880 msgstr ""
16881
16882 #. type: =head2
16883 #: ../fish/guestfish.pod:683
16884 msgid "OCTAL AND HEXADECIMAL NUMBERS"
16885 msgstr ""
16886
16887 #. type: textblock
16888 #: ../fish/guestfish.pod:685
16889 msgid ""
16890 "For specifying the radix (base) use the C convention: C<0> to prefix an "
16891 "octal number or C<0x> to prefix a hexadecimal number.  For example:"
16892 msgstr ""
16893
16894 #. type: verbatim
16895 #: ../fish/guestfish.pod:688
16896 #, no-wrap
16897 msgid ""
16898 " 1234      decimal number 1234\n"
16899 " 02322     octal number, equivalent to decimal 1234\n"
16900 " 0x4d2     hexadecimal number, equivalent to decimal 1234\n"
16901 "\n"
16902 msgstr ""
16903
16904 #. type: textblock
16905 #: ../fish/guestfish.pod:692
16906 msgid ""
16907 "When using the C<chmod> command, you almost always want to specify an octal "
16908 "number for the mode, and you must prefix it with C<0> (unlike the Unix "
16909 "L<chmod(1)> program):"
16910 msgstr ""
16911
16912 #. type: verbatim
16913 #: ../fish/guestfish.pod:696
16914 #, no-wrap
16915 msgid ""
16916 " chmod 0777 /public  # OK\n"
16917 " chmod 777 /public   # WRONG! This is mode 777 decimal = 01411 octal.\n"
16918 "\n"
16919 msgstr ""
16920
16921 #. type: textblock
16922 #: ../fish/guestfish.pod:699
16923 msgid ""
16924 "Commands that return numbers usually print them in decimal, but some "
16925 "commands print numbers in other radices (eg. C<umask> prints the mode in "
16926 "octal, preceeded by C<0>)."
16927 msgstr ""
16928
16929 #. type: =head1
16930 #: ../fish/guestfish.pod:703
16931 msgid "WILDCARDS AND GLOBBING"
16932 msgstr ""
16933
16934 #. type: textblock
16935 #: ../fish/guestfish.pod:705
16936 msgid ""
16937 "Neither guestfish nor the underlying guestfs API performs wildcard expansion "
16938 "(globbing) by default.  So for example the following will not do what you "
16939 "expect:"
16940 msgstr ""
16941
16942 #. type: verbatim
16943 #: ../fish/guestfish.pod:709
16944 #, no-wrap
16945 msgid ""
16946 " rm-rf /home/*\n"
16947 "\n"
16948 msgstr ""
16949
16950 #. type: textblock
16951 #: ../fish/guestfish.pod:711
16952 msgid ""
16953 "Assuming you don't have a directory called literally C</home/*> then the "
16954 "above command will return an error."
16955 msgstr ""
16956
16957 #. type: textblock
16958 #: ../fish/guestfish.pod:714
16959 msgid "To perform wildcard expansion, use the C<glob> command."
16960 msgstr ""
16961
16962 #. type: verbatim
16963 #: ../fish/guestfish.pod:716
16964 #, no-wrap
16965 msgid ""
16966 " glob rm-rf /home/*\n"
16967 "\n"
16968 msgstr ""
16969
16970 #. type: textblock
16971 #: ../fish/guestfish.pod:718
16972 msgid ""
16973 "runs C<rm-rf> on each path that matches (ie. potentially running the command "
16974 "many times), equivalent to:"
16975 msgstr ""
16976
16977 #. type: verbatim
16978 #: ../fish/guestfish.pod:721
16979 #, no-wrap
16980 msgid ""
16981 " rm-rf /home/jim\n"
16982 " rm-rf /home/joe\n"
16983 " rm-rf /home/mary\n"
16984 "\n"
16985 msgstr ""
16986
16987 #. type: textblock
16988 #: ../fish/guestfish.pod:725
16989 msgid "C<glob> only works on simple guest paths and not on device names."
16990 msgstr ""
16991
16992 #. type: textblock
16993 #: ../fish/guestfish.pod:727
16994 msgid ""
16995 "If you have several parameters, each containing a wildcard, then glob will "
16996 "perform a Cartesian product."
16997 msgstr ""
16998
16999 #. type: =head1
17000 #: ../fish/guestfish.pod:730
17001 msgid "COMMENTS"
17002 msgstr ""
17003
17004 #. type: textblock
17005 #: ../fish/guestfish.pod:732
17006 msgid ""
17007 "Any line which starts with a I<#> character is treated as a comment and "
17008 "ignored.  The I<#> can optionally be preceeded by whitespace, but B<not> by "
17009 "a command.  For example:"
17010 msgstr ""
17011
17012 #. type: verbatim
17013 #: ../fish/guestfish.pod:736
17014 #, no-wrap
17015 msgid ""
17016 " # this is a comment\n"
17017 "         # this is a comment\n"
17018 " foo # NOT a comment\n"
17019 "\n"
17020 msgstr ""
17021
17022 #. type: textblock
17023 #: ../fish/guestfish.pod:740
17024 msgid "Blank lines are also ignored."
17025 msgstr ""
17026
17027 #. type: =head1
17028 #: ../fish/guestfish.pod:742
17029 msgid "RUNNING COMMANDS LOCALLY"
17030 msgstr ""
17031
17032 #. type: textblock
17033 #: ../fish/guestfish.pod:744
17034 msgid ""
17035 "Any line which starts with a I<!> character is treated as a command sent to "
17036 "the local shell (C</bin/sh> or whatever L<system(3)> uses).  For example:"
17037 msgstr ""
17038
17039 #. type: verbatim
17040 #: ../fish/guestfish.pod:748
17041 #, no-wrap
17042 msgid ""
17043 " !mkdir local\n"
17044 " tgz-out /remote local/remote-data.tar.gz\n"
17045 "\n"
17046 msgstr ""
17047
17048 #. type: textblock
17049 #: ../fish/guestfish.pod:751
17050 msgid ""
17051 "will create a directory C<local> on the host, and then export the contents "
17052 "of C</remote> on the mounted filesystem to C<local/remote-data.tar.gz>.  "
17053 "(See C<tgz-out>)."
17054 msgstr ""
17055
17056 #. type: textblock
17057 #: ../fish/guestfish.pod:755
17058 msgid ""
17059 "To change the local directory, use the C<lcd> command.  C<!cd> will have no "
17060 "effect, due to the way that subprocesses work in Unix."
17061 msgstr ""
17062
17063 #. type: =head2
17064 #: ../fish/guestfish.pod:758
17065 msgid "LOCAL COMMANDS WITH INLINE EXECUTION"
17066 msgstr ""
17067
17068 #. type: textblock
17069 #: ../fish/guestfish.pod:760
17070 msgid ""
17071 "If a line starts with I<E<lt>!> then the shell command is executed (as for "
17072 "I<!>), but subsequently any output (stdout) of the shell command is parsed "
17073 "and executed as guestfish commands."
17074 msgstr ""
17075
17076 #. type: textblock
17077 #: ../fish/guestfish.pod:764
17078 msgid ""
17079 "Thus you can use shell script to construct arbitrary guestfish commands "
17080 "which are then parsed by guestfish."
17081 msgstr ""
17082
17083 #. type: textblock
17084 #: ../fish/guestfish.pod:767
17085 msgid ""
17086 "For example it is tedious to create a sequence of files (eg. C</foo.1> "
17087 "through C</foo.100>) using guestfish commands alone.  However this is simple "
17088 "if we use a shell script to create the guestfish commands for us:"
17089 msgstr ""
17090
17091 #. type: verbatim
17092 #: ../fish/guestfish.pod:772
17093 #, no-wrap
17094 msgid ""
17095 " <! for n in `seq 1 100`; do echo write /foo.$n $n; done\n"
17096 "\n"
17097 msgstr ""
17098
17099 #. type: textblock
17100 #: ../fish/guestfish.pod:774
17101 msgid "or with names like C</foo.001>:"
17102 msgstr ""
17103
17104 #. type: verbatim
17105 #: ../fish/guestfish.pod:776
17106 #, no-wrap
17107 msgid ""
17108 " <! for n in `seq 1 100`; do printf \"write /foo.%03d %d\\n\" $n $n; done\n"
17109 "\n"
17110 msgstr ""
17111
17112 #. type: textblock
17113 #: ../fish/guestfish.pod:778
17114 msgid ""
17115 "When using guestfish interactively it can be helpful to just run the shell "
17116 "script first (ie. remove the initial C<E<lt>> character so it is just an "
17117 "ordinary I<!> local command), see what guestfish commands it would run, and "
17118 "when you are happy with those prepend the C<E<lt>> character to run the "
17119 "guestfish commands for real."
17120 msgstr ""
17121
17122 #. type: =head1
17123 #: ../fish/guestfish.pod:784
17124 msgid "PIPES"
17125 msgstr ""
17126
17127 #. type: textblock
17128 #: ../fish/guestfish.pod:786
17129 msgid ""
17130 "Use C<command E<lt>spaceE<gt> | command> to pipe the output of the first "
17131 "command (a guestfish command) to the second command (any host command).  For "
17132 "example:"
17133 msgstr ""
17134
17135 #. type: verbatim
17136 #: ../fish/guestfish.pod:790
17137 #, no-wrap
17138 msgid ""
17139 " cat /etc/passwd | awk -F: '$3 == 0 { print }'\n"
17140 "\n"
17141 msgstr ""
17142
17143 #. type: textblock
17144 #: ../fish/guestfish.pod:792
17145 msgid ""
17146 "(where C<cat> is the guestfish cat command, but C<awk> is the host awk "
17147 "program).  The above command would list all accounts in the guest filesystem "
17148 "which have UID 0, ie. root accounts including backdoors.  Other examples:"
17149 msgstr ""
17150
17151 #. type: verbatim
17152 #: ../fish/guestfish.pod:797
17153 #, no-wrap
17154 msgid ""
17155 " hexdump /bin/ls | head\n"
17156 " list-devices | tail -1\n"
17157 " tgz-out / - | tar ztf -\n"
17158 "\n"
17159 msgstr ""
17160
17161 #. type: textblock
17162 #: ../fish/guestfish.pod:801
17163 msgid ""
17164 "The space before the pipe symbol is required, any space after the pipe "
17165 "symbol is optional.  Everything after the pipe symbol is just passed "
17166 "straight to the host shell, so it can contain redirections, globs and "
17167 "anything else that makes sense on the host side."
17168 msgstr ""
17169
17170 #. type: textblock
17171 #: ../fish/guestfish.pod:806
17172 msgid ""
17173 "To use a literal argument which begins with a pipe symbol, you have to quote "
17174 "it, eg:"
17175 msgstr ""
17176
17177 #. type: verbatim
17178 #: ../fish/guestfish.pod:809
17179 #, no-wrap
17180 msgid ""
17181 " echo \"|\"\n"
17182 "\n"
17183 msgstr ""
17184
17185 #. type: =head1
17186 #: ../fish/guestfish.pod:811
17187 msgid "HOME DIRECTORIES"
17188 msgstr ""
17189
17190 #. type: textblock
17191 #: ../fish/guestfish.pod:813
17192 msgid ""
17193 "If a parameter starts with the character C<~> then the tilde may be expanded "
17194 "as a home directory path (either C<~> for the current user's home directory, "
17195 "or C<~user> for another user)."
17196 msgstr ""
17197
17198 #. type: textblock
17199 #: ../fish/guestfish.pod:817
17200 msgid ""
17201 "Note that home directory expansion happens for users known I<on the host>, "
17202 "not in the guest filesystem."
17203 msgstr ""
17204
17205 #. type: textblock
17206 #: ../fish/guestfish.pod:820
17207 msgid ""
17208 "To use a literal argument which begins with a tilde, you have to quote it, "
17209 "eg:"
17210 msgstr ""
17211
17212 #. type: verbatim
17213 #: ../fish/guestfish.pod:823
17214 #, no-wrap
17215 msgid ""
17216 " echo \"~\"\n"
17217 "\n"
17218 msgstr ""
17219
17220 #. type: =head2
17221 #: ../fish/guestfish.pod:825 ../src/guestfs.pod:519
17222 msgid "ENCRYPTED DISKS"
17223 msgstr ""
17224
17225 #. type: textblock
17226 #: ../fish/guestfish.pod:827
17227 msgid ""
17228 "Libguestfs has some support for Linux guests encrypted according to the "
17229 "Linux Unified Key Setup (LUKS) standard, which includes nearly all whole "
17230 "disk encryption systems used by modern Linux guests.  Currently only "
17231 "LVM-on-LUKS is supported."
17232 msgstr ""
17233
17234 #. type: textblock
17235 #: ../fish/guestfish.pod:832
17236 msgid "Identify encrypted block devices and partitions using L</vfs-type>:"
17237 msgstr ""
17238
17239 #. type: verbatim
17240 #: ../fish/guestfish.pod:834
17241 #, no-wrap
17242 msgid ""
17243 " ><fs> vfs-type /dev/sda2\n"
17244 " crypto_LUKS\n"
17245 "\n"
17246 msgstr ""
17247
17248 #. type: textblock
17249 #: ../fish/guestfish.pod:837
17250 msgid ""
17251 "Then open those devices using L</luks-open>.  This creates a device-mapper "
17252 "device called C</dev/mapper/luksdev>."
17253 msgstr ""
17254
17255 #. type: verbatim
17256 #: ../fish/guestfish.pod:840
17257 #, no-wrap
17258 msgid ""
17259 " ><fs> luks-open /dev/sda2 luksdev\n"
17260 " Enter key or passphrase (\"key\"): <enter the passphrase>\n"
17261 "\n"
17262 msgstr ""
17263
17264 #. type: textblock
17265 #: ../fish/guestfish.pod:843
17266 msgid ""
17267 "Finally you have to tell LVM to scan for volume groups on the newly created "
17268 "mapper device:"
17269 msgstr ""
17270
17271 #. type: verbatim
17272 #: ../fish/guestfish.pod:846
17273 #, no-wrap
17274 msgid ""
17275 " vgscan\n"
17276 " vg-activate-all true\n"
17277 "\n"
17278 msgstr ""
17279
17280 #. type: textblock
17281 #: ../fish/guestfish.pod:849
17282 msgid "The logical volume(s) can now be mounted in the usual way."
17283 msgstr ""
17284
17285 #. type: textblock
17286 #: ../fish/guestfish.pod:851
17287 msgid ""
17288 "Before closing a LUKS device you must unmount any logical volumes on it and "
17289 "deactivate the volume groups by calling C<vg-activate false VG> on each "
17290 "one.  Then you can close the mapper device:"
17291 msgstr ""
17292
17293 #. type: verbatim
17294 #: ../fish/guestfish.pod:855
17295 #, no-wrap
17296 msgid ""
17297 " vg-activate false /dev/VG\n"
17298 " luks-close /dev/mapper/luksdev\n"
17299 "\n"
17300 msgstr ""
17301
17302 #. type: textblock
17303 #: ../fish/guestfish.pod:860
17304 msgid ""
17305 "If a path is prefixed with C<win:> then you can use Windows-style drive "
17306 "letters and paths (with some limitations).  The following commands are "
17307 "equivalent:"
17308 msgstr ""
17309
17310 #. type: verbatim
17311 #: ../fish/guestfish.pod:864
17312 #, no-wrap
17313 msgid ""
17314 " file /WINDOWS/system32/config/system.LOG\n"
17315 "\n"
17316 msgstr ""
17317
17318 #. type: verbatim
17319 #: ../fish/guestfish.pod:866
17320 #, no-wrap
17321 msgid ""
17322 " file win:\\windows\\system32\\config\\system.log\n"
17323 "\n"
17324 msgstr ""
17325
17326 #. type: verbatim
17327 #: ../fish/guestfish.pod:868
17328 #, no-wrap
17329 msgid ""
17330 " file WIN:C:\\Windows\\SYSTEM32\\CONFIG\\SYSTEM.LOG\n"
17331 "\n"
17332 msgstr ""
17333
17334 #. type: textblock
17335 #: ../fish/guestfish.pod:870
17336 msgid ""
17337 "The parameter is rewritten \"behind the scenes\" by looking up the position "
17338 "where the drive is mounted, prepending that to the path, changing all "
17339 "backslash characters to forward slash, then resolving the result using "
17340 "L</case-sensitive-path>.  For example if the E: drive was mounted on C</e> "
17341 "then the parameter might be rewritten like this:"
17342 msgstr ""
17343
17344 #. type: verbatim
17345 #: ../fish/guestfish.pod:876
17346 #, no-wrap
17347 msgid ""
17348 " win:e:\\foo\\bar => /e/FOO/bar\n"
17349 "\n"
17350 msgstr ""
17351
17352 #. type: textblock
17353 #: ../fish/guestfish.pod:878
17354 msgid "This only works in argument positions that expect a path."
17355 msgstr ""
17356
17357 #. type: =head1
17358 #: ../fish/guestfish.pod:880
17359 msgid "UPLOADING AND DOWNLOADING FILES"
17360 msgstr ""
17361
17362 #. type: textblock
17363 #: ../fish/guestfish.pod:882
17364 msgid ""
17365 "For commands such as C<upload>, C<download>, C<tar-in>, C<tar-out> and "
17366 "others which upload from or download to a local file, you can use the "
17367 "special filename C<-> to mean \"from stdin\" or \"to stdout\".  For example:"
17368 msgstr ""
17369
17370 #. type: verbatim
17371 #: ../fish/guestfish.pod:886
17372 #, no-wrap
17373 msgid ""
17374 " upload - /foo\n"
17375 "\n"
17376 msgstr ""
17377
17378 #. type: textblock
17379 #: ../fish/guestfish.pod:888
17380 msgid "reads stdin and creates from that a file C</foo> in the disk image, and:"
17381 msgstr ""
17382
17383 #. type: verbatim
17384 #: ../fish/guestfish.pod:891
17385 #, no-wrap
17386 msgid ""
17387 " tar-out /etc - | tar tf -\n"
17388 "\n"
17389 msgstr ""
17390
17391 #. type: textblock
17392 #: ../fish/guestfish.pod:893
17393 msgid ""
17394 "writes the tarball to stdout and then pipes that into the external \"tar\" "
17395 "command (see L</PIPES>)."
17396 msgstr ""
17397
17398 #. type: textblock
17399 #: ../fish/guestfish.pod:896
17400 msgid ""
17401 "When using C<-> to read from stdin, the input is read up to the end of "
17402 "stdin.  You can also use a special \"heredoc\"-like syntax to read up to "
17403 "some arbitrary end marker:"
17404 msgstr ""
17405
17406 #. type: verbatim
17407 #: ../fish/guestfish.pod:900
17408 #, no-wrap
17409 msgid ""
17410 " upload -<<END /foo\n"
17411 " input line 1\n"
17412 " input line 2\n"
17413 " input line 3\n"
17414 " END\n"
17415 "\n"
17416 msgstr ""
17417
17418 #. type: textblock
17419 #: ../fish/guestfish.pod:906
17420 msgid ""
17421 "Any string of characters can be used instead of C<END>.  The end marker must "
17422 "appear on a line of its own, without any preceeding or following characters "
17423 "(not even spaces)."
17424 msgstr ""
17425
17426 #. type: textblock
17427 #: ../fish/guestfish.pod:910
17428 msgid ""
17429 "Note that the C<-E<lt>E<lt>> syntax only applies to parameters used to "
17430 "upload local files (so-called \"FileIn\" parameters in the generator)."
17431 msgstr ""
17432
17433 #. type: =head1
17434 #: ../fish/guestfish.pod:913
17435 msgid "EXIT ON ERROR BEHAVIOUR"
17436 msgstr ""
17437
17438 #. type: textblock
17439 #: ../fish/guestfish.pod:915
17440 msgid ""
17441 "By default, guestfish will ignore any errors when in interactive mode "
17442 "(ie. taking commands from a human over a tty), and will exit on the first "
17443 "error in non-interactive mode (scripts, commands given on the command line)."
17444 msgstr ""
17445
17446 #. type: textblock
17447 #: ../fish/guestfish.pod:920
17448 msgid ""
17449 "If you prefix a command with a I<-> character, then that command will not "
17450 "cause guestfish to exit, even if that (one) command returns an error."
17451 msgstr ""
17452
17453 #. type: =head1
17454 #: ../fish/guestfish.pod:924
17455 msgid "REMOTE CONTROL GUESTFISH OVER A SOCKET"
17456 msgstr ""
17457
17458 #. type: textblock
17459 #: ../fish/guestfish.pod:926
17460 msgid ""
17461 "Guestfish can be remote-controlled over a socket.  This is useful "
17462 "particularly in shell scripts where you want to make several different "
17463 "changes to a filesystem, but you don't want the overhead of starting up a "
17464 "guestfish process each time."
17465 msgstr ""
17466
17467 #. type: textblock
17468 #: ../fish/guestfish.pod:931
17469 msgid "Start a guestfish server process using:"
17470 msgstr ""
17471
17472 #. type: verbatim
17473 #: ../fish/guestfish.pod:933
17474 #, no-wrap
17475 msgid ""
17476 " eval \"`guestfish --listen`\"\n"
17477 "\n"
17478 msgstr ""
17479
17480 #. type: textblock
17481 #: ../fish/guestfish.pod:935
17482 msgid "and then send it commands by doing:"
17483 msgstr ""
17484
17485 #. type: verbatim
17486 #: ../fish/guestfish.pod:937
17487 #, no-wrap
17488 msgid ""
17489 " guestfish --remote cmd [...]\n"
17490 "\n"
17491 msgstr ""
17492
17493 #. type: textblock
17494 #: ../fish/guestfish.pod:939
17495 msgid "To cause the server to exit, send it the exit command:"
17496 msgstr ""
17497
17498 #. type: textblock
17499 #: ../fish/guestfish.pod:943
17500 msgid ""
17501 "Note that the server will normally exit if there is an error in a command.  "
17502 "You can change this in the usual way.  See section L</EXIT ON ERROR "
17503 "BEHAVIOUR>."
17504 msgstr ""
17505
17506 #. type: =head2
17507 #: ../fish/guestfish.pod:947
17508 msgid "CONTROLLING MULTIPLE GUESTFISH PROCESSES"
17509 msgstr ""
17510
17511 #. type: textblock
17512 #: ../fish/guestfish.pod:949
17513 msgid ""
17514 "The C<eval> statement sets the environment variable C<$GUESTFISH_PID>, which "
17515 "is how the I<--remote> option knows where to send the commands.  You can "
17516 "have several guestfish listener processes running using:"
17517 msgstr ""
17518
17519 #. type: verbatim
17520 #: ../fish/guestfish.pod:953
17521 #, no-wrap
17522 msgid ""
17523 " eval \"`guestfish --listen`\"\n"
17524 " pid1=$GUESTFISH_PID\n"
17525 " eval \"`guestfish --listen`\"\n"
17526 " pid2=$GUESTFISH_PID\n"
17527 " ...\n"
17528 " guestfish --remote=$pid1 cmd\n"
17529 " guestfish --remote=$pid2 cmd\n"
17530 "\n"
17531 msgstr ""
17532
17533 #. type: =head2
17534 #: ../fish/guestfish.pod:961
17535 msgid "REMOTE CONTROL AND CSH"
17536 msgstr ""
17537
17538 #. type: textblock
17539 #: ../fish/guestfish.pod:963
17540 msgid ""
17541 "When using csh-like shells (csh, tcsh etc) you have to add the I<--csh> "
17542 "option:"
17543 msgstr ""
17544
17545 #. type: verbatim
17546 #: ../fish/guestfish.pod:966
17547 #, no-wrap
17548 msgid ""
17549 " eval \"`guestfish --listen --csh`\"\n"
17550 "\n"
17551 msgstr ""
17552
17553 #. type: =head2
17554 #: ../fish/guestfish.pod:968
17555 msgid "REMOTE CONTROL DETAILS"
17556 msgstr ""
17557
17558 #. type: textblock
17559 #: ../fish/guestfish.pod:970
17560 msgid ""
17561 "Remote control happens over a Unix domain socket called "
17562 "C</tmp/.guestfish-$UID/socket-$PID>, where C<$UID> is the effective user ID "
17563 "of the process, and C<$PID> is the process ID of the server."
17564 msgstr ""
17565
17566 #. type: textblock
17567 #: ../fish/guestfish.pod:974
17568 msgid "Guestfish client and server versions must match exactly."
17569 msgstr ""
17570
17571 #. type: =head2
17572 #: ../fish/guestfish.pod:976
17573 msgid "REMOTE CONTROL RUN COMMAND HANGING"
17574 msgstr ""
17575
17576 #. type: textblock
17577 #: ../fish/guestfish.pod:978
17578 msgid ""
17579 "Using the C<run> (or C<launch>) command remotely in a command substitution "
17580 "context hangs, ie. don't do (note the backquotes):"
17581 msgstr ""
17582
17583 #. type: verbatim
17584 #: ../fish/guestfish.pod:981
17585 #, no-wrap
17586 msgid ""
17587 " a=`guestfish --remote run`\n"
17588 "\n"
17589 msgstr ""
17590
17591 #. type: textblock
17592 #: ../fish/guestfish.pod:983
17593 msgid ""
17594 "Since the C<run> command produces no output on stdout, this is not useful "
17595 "anyway.  For further information see "
17596 "L<https://bugzilla.redhat.com/show_bug.cgi?id=592910>."
17597 msgstr ""
17598
17599 #. type: =head1
17600 #: ../fish/guestfish.pod:987
17601 msgid "PREPARED DISK IMAGES"
17602 msgstr ""
17603
17604 #. type: textblock
17605 #: ../fish/guestfish.pod:989
17606 msgid ""
17607 "Use the I<-N type> or I<--new type> parameter to select one of a set of "
17608 "preformatted disk images that guestfish can make for you to save typing.  "
17609 "This is particularly useful for testing purposes.  This option is used "
17610 "instead of the I<-a> option, and like I<-a> can appear multiple times (and "
17611 "can be mixed with I<-a>)."
17612 msgstr ""
17613
17614 #. type: textblock
17615 #: ../fish/guestfish.pod:995
17616 msgid ""
17617 "The new disk is called C<test1.img> for the first I<-N>, C<test2.img> for "
17618 "the second and so on.  Existing files in the current directory are "
17619 "I<overwritten>."
17620 msgstr ""
17621
17622 #. type: textblock
17623 #: ../fish/guestfish.pod:999
17624 msgid ""
17625 "The type briefly describes how the disk should be sized, partitioned, how "
17626 "filesystem(s) should be created, and how content should be added.  "
17627 "Optionally the type can be followed by extra parameters, separated by C<:> "
17628 "(colon) characters.  For example, I<-N fs> creates a default 100MB, "
17629 "sparsely-allocated disk, containing a single partition, with the partition "
17630 "formatted as ext2.  I<-N fs:ext4:1G> is the same, but for an ext4 filesystem "
17631 "on a 1GB disk instead."
17632 msgstr ""
17633
17634 #. type: textblock
17635 #: ../fish/guestfish.pod:1007
17636 msgid "To list the available types and any extra parameters they take, run:"
17637 msgstr ""
17638
17639 #. type: textblock
17640 #: ../fish/guestfish.pod:1011
17641 msgid ""
17642 "Note that the prepared filesystem is not mounted.  You would usually have to "
17643 "use the C<mount /dev/sda1 /> command or add the I<-m /dev/sda1> option."
17644 msgstr ""
17645
17646 #. type: textblock
17647 #: ../fish/guestfish.pod:1015
17648 msgid ""
17649 "If any I<-N> or I<--new> options are given, the guest is automatically "
17650 "launched."
17651 msgstr ""
17652
17653 #. type: textblock
17654 #: ../fish/guestfish.pod:1020
17655 msgid "Create a 100MB disk with an ext4-formatted partition:"
17656 msgstr ""
17657
17658 #. type: verbatim
17659 #: ../fish/guestfish.pod:1022
17660 #, no-wrap
17661 msgid ""
17662 " guestfish -N fs:ext4\n"
17663 "\n"
17664 msgstr ""
17665
17666 #. type: textblock
17667 #: ../fish/guestfish.pod:1024
17668 msgid "Create a 32MB disk with a VFAT-formatted partition, and mount it:"
17669 msgstr ""
17670
17671 #. type: verbatim
17672 #: ../fish/guestfish.pod:1026
17673 #, no-wrap
17674 msgid ""
17675 " guestfish -N fs:vfat:32M -m /dev/sda1\n"
17676 "\n"
17677 msgstr ""
17678
17679 #. type: textblock
17680 #: ../fish/guestfish.pod:1028
17681 msgid "Create a blank 200MB disk:"
17682 msgstr ""
17683
17684 #. type: verbatim
17685 #: ../fish/guestfish.pod:1030
17686 #, no-wrap
17687 msgid ""
17688 " guestfish -N disk:200M\n"
17689 "\n"
17690 msgstr ""
17691
17692 #. type: =head1
17693 #: ../fish/guestfish.pod:1032
17694 msgid "PROGRESS BARS"
17695 msgstr ""
17696
17697 #. type: textblock
17698 #: ../fish/guestfish.pod:1034
17699 msgid ""
17700 "Some (not all) long-running commands send progress notification messages as "
17701 "they are running.  Guestfish turns these messages into progress bars."
17702 msgstr ""
17703
17704 #. type: textblock
17705 #: ../fish/guestfish.pod:1038
17706 msgid ""
17707 "When a command that supports progress bars takes longer than two seconds to "
17708 "run, and if progress bars are enabled, then you will see one appearing below "
17709 "the command:"
17710 msgstr ""
17711
17712 #. type: verbatim
17713 #: ../fish/guestfish.pod:1042
17714 #, no-wrap
17715 msgid ""
17716 " ><fs> copy-size /large-file /another-file 2048M\n"
17717 " / 10% [#####-----------------------------------------] 00:30\n"
17718 "\n"
17719 msgstr ""
17720
17721 #. type: textblock
17722 #: ../fish/guestfish.pod:1045
17723 msgid ""
17724 "The spinner on the left hand side moves round once for every progress "
17725 "notification received from the backend.  This is a (reasonably) golden "
17726 "assurance that the command is \"doing something\" even if the progress bar "
17727 "is not moving, because the command is able to send the progress "
17728 "notifications.  When the bar reaches 100% and the command finishes, the "
17729 "spinner disappears."
17730 msgstr ""
17731
17732 #. type: textblock
17733 #: ../fish/guestfish.pod:1052
17734 msgid ""
17735 "Progress bars are enabled by default when guestfish is used interactively.  "
17736 "You can enable them even for non-interactive modes using I<--progress-bars>, "
17737 "and you can disable them completely using I<--no-progress-bars>."
17738 msgstr ""
17739
17740 #. type: =head1
17741 #: ../fish/guestfish.pod:1057
17742 msgid "GUESTFISH COMMANDS"
17743 msgstr ""
17744
17745 #. type: textblock
17746 #: ../fish/guestfish.pod:1059
17747 msgid ""
17748 "The commands in this section are guestfish convenience commands, in other "
17749 "words, they are not part of the L<guestfs(3)> API."
17750 msgstr ""
17751
17752 #. type: =head2
17753 #: ../fish/guestfish.pod:1062
17754 msgid "help"
17755 msgstr ""
17756
17757 #. type: verbatim
17758 #: ../fish/guestfish.pod:1064
17759 #, no-wrap
17760 msgid ""
17761 " help\n"
17762 " help cmd\n"
17763 "\n"
17764 msgstr ""
17765
17766 #. type: textblock
17767 #: ../fish/guestfish.pod:1067
17768 msgid "Without any parameter, this provides general help."
17769 msgstr ""
17770
17771 #. type: textblock
17772 #: ../fish/guestfish.pod:1069
17773 msgid "With a C<cmd> parameter, this displays detailed help for that command."
17774 msgstr ""
17775
17776 #. type: =head2
17777 #: ../fish/guestfish.pod:1071
17778 msgid "quit | exit"
17779 msgstr ""
17780
17781 #. type: textblock
17782 #: ../fish/guestfish.pod:1073
17783 msgid "This exits guestfish.  You can also use C<^D> key."
17784 msgstr ""
17785
17786 #. type: textblock
17787 #: ../fish/guestfish.pod:1075
17788 msgid "@FISH_COMMANDS@"
17789 msgstr ""
17790
17791 #. type: =head1
17792 #: ../fish/guestfish.pod:1077
17793 msgid "COMMANDS"
17794 msgstr ""
17795
17796 #. type: textblock
17797 #: ../fish/guestfish.pod:1079 ../src/guestfs.pod:1475
17798 msgid "@ACTIONS@"
17799 msgstr ""
17800
17801 #. type: textblock
17802 #: ../fish/guestfish.pod:1083
17803 msgid ""
17804 "guestfish returns 0 if the commands completed without error, or 1 if there "
17805 "was an error."
17806 msgstr ""
17807
17808 #. type: =item
17809 #: ../fish/guestfish.pod:1090
17810 msgid "EDITOR"
17811 msgstr ""
17812
17813 #. type: textblock
17814 #: ../fish/guestfish.pod:1092
17815 msgid ""
17816 "The C<edit> command uses C<$EDITOR> as the editor.  If not set, it uses "
17817 "C<vi>."
17818 msgstr ""
17819
17820 #. type: =item
17821 #: ../fish/guestfish.pod:1095 ../src/guestfs.pod:3078
17822 msgid "FEBOOTSTRAP_KERNEL"
17823 msgstr ""
17824
17825 #. type: =item
17826 #: ../fish/guestfish.pod:1097 ../src/guestfs.pod:3080
17827 msgid "FEBOOTSTRAP_MODULES"
17828 msgstr ""
17829
17830 #. type: textblock
17831 #: ../fish/guestfish.pod:1099 ../src/guestfs.pod:3082
17832 msgid ""
17833 "These two environment variables allow the kernel that libguestfs uses in the "
17834 "appliance to be selected.  If C<$FEBOOTSTRAP_KERNEL> is not set, then the "
17835 "most recent host kernel is chosen.  For more information about kernel "
17836 "selection, see L<febootstrap-supermin-helper(8)>.  This feature is only "
17837 "available in febootstrap E<ge> 3.8."
17838 msgstr ""
17839
17840 #. type: =item
17841 #: ../fish/guestfish.pod:1105
17842 msgid "GUESTFISH_DISPLAY_IMAGE"
17843 msgstr ""
17844
17845 #. type: textblock
17846 #: ../fish/guestfish.pod:1107
17847 msgid ""
17848 "The C<display> command uses C<$GUESTFISH_DISPLAY_IMAGE> to display images.  "
17849 "If not set, it uses L<display(1)>."
17850 msgstr ""
17851
17852 #. type: =item
17853 #: ../fish/guestfish.pod:1110
17854 msgid "GUESTFISH_PID"
17855 msgstr ""
17856
17857 #. type: textblock
17858 #: ../fish/guestfish.pod:1112
17859 msgid ""
17860 "Used with the I<--remote> option to specify the remote guestfish process to "
17861 "control.  See section L</REMOTE CONTROL GUESTFISH OVER A SOCKET>."
17862 msgstr ""
17863
17864 #. type: =item
17865 #: ../fish/guestfish.pod:1116
17866 msgid "HEXEDITOR"
17867 msgstr ""
17868
17869 #. type: textblock
17870 #: ../fish/guestfish.pod:1118
17871 msgid ""
17872 "The L</hexedit> command uses C<$HEXEDITOR> as the external hex editor.  If "
17873 "not specified, the external L<hexedit(1)> program is used."
17874 msgstr ""
17875
17876 #. type: =item
17877 #: ../fish/guestfish.pod:1122
17878 msgid "HOME"
17879 msgstr ""
17880
17881 #. type: textblock
17882 #: ../fish/guestfish.pod:1124
17883 msgid ""
17884 "If compiled with GNU readline support, various files in the home directory "
17885 "can be used.  See L</FILES>."
17886 msgstr ""
17887
17888 #. type: =item
17889 #: ../fish/guestfish.pod:1127 ../src/guestfs.pod:3088
17890 msgid "LIBGUESTFS_APPEND"
17891 msgstr ""
17892
17893 #. type: textblock
17894 #: ../fish/guestfish.pod:1129 ../src/guestfs.pod:3090
17895 msgid "Pass additional options to the guest kernel."
17896 msgstr ""
17897
17898 #. type: =item
17899 #: ../fish/guestfish.pod:1131 ../src/guestfs.pod:3092
17900 msgid "LIBGUESTFS_DEBUG"
17901 msgstr ""
17902
17903 #. type: textblock
17904 #: ../fish/guestfish.pod:1133
17905 msgid ""
17906 "Set C<LIBGUESTFS_DEBUG=1> to enable verbose messages.  This has the same "
17907 "effect as using the B<-v> option."
17908 msgstr ""
17909
17910 #. type: =item
17911 #: ../fish/guestfish.pod:1136 ../src/guestfs.pod:3097
17912 msgid "LIBGUESTFS_MEMSIZE"
17913 msgstr ""
17914
17915 #. type: textblock
17916 #: ../fish/guestfish.pod:1138 ../src/guestfs.pod:3099
17917 msgid "Set the memory allocated to the qemu process, in megabytes.  For example:"
17918 msgstr ""
17919
17920 #. type: verbatim
17921 #: ../fish/guestfish.pod:1141 ../src/guestfs.pod:3102
17922 #, no-wrap
17923 msgid ""
17924 " LIBGUESTFS_MEMSIZE=700\n"
17925 "\n"
17926 msgstr ""
17927
17928 #. type: =item
17929 #: ../fish/guestfish.pod:1143 ../src/guestfs.pod:3104
17930 msgid "LIBGUESTFS_PATH"
17931 msgstr ""
17932
17933 #. type: textblock
17934 #: ../fish/guestfish.pod:1145
17935 msgid ""
17936 "Set the path that guestfish uses to search for kernel and initrd.img.  See "
17937 "the discussion of paths in L<guestfs(3)>."
17938 msgstr ""
17939
17940 #. type: =item
17941 #: ../fish/guestfish.pod:1148 ../src/guestfs.pod:3109
17942 msgid "LIBGUESTFS_QEMU"
17943 msgstr ""
17944
17945 #. type: textblock
17946 #: ../fish/guestfish.pod:1150 ../src/guestfs.pod:3111
17947 msgid ""
17948 "Set the default qemu binary that libguestfs uses.  If not set, then the qemu "
17949 "which was found at compile time by the configure script is used."
17950 msgstr ""
17951
17952 #. type: =item
17953 #: ../fish/guestfish.pod:1154 ../src/guestfs.pod:3117
17954 msgid "LIBGUESTFS_TRACE"
17955 msgstr ""
17956
17957 #. type: textblock
17958 #: ../fish/guestfish.pod:1156
17959 msgid "Set C<LIBGUESTFS_TRACE=1> to enable command traces."
17960 msgstr ""
17961
17962 #. type: =item
17963 #: ../fish/guestfish.pod:1158
17964 msgid "PAGER"
17965 msgstr ""
17966
17967 #. type: textblock
17968 #: ../fish/guestfish.pod:1160
17969 msgid ""
17970 "The C<more> command uses C<$PAGER> as the pager.  If not set, it uses "
17971 "C<more>."
17972 msgstr ""
17973
17974 #. type: =item
17975 #: ../fish/guestfish.pod:1163 ../src/guestfs.pod:3122
17976 msgid "TMPDIR"
17977 msgstr ""
17978
17979 #. type: textblock
17980 #: ../fish/guestfish.pod:1165 ../src/guestfs.pod:3124
17981 msgid ""
17982 "Location of temporary directory, defaults to C</tmp> except for the cached "
17983 "supermin appliance which defaults to C</var/tmp>."
17984 msgstr ""
17985
17986 #. type: textblock
17987 #: ../fish/guestfish.pod:1168 ../src/guestfs.pod:3127
17988 msgid ""
17989 "If libguestfs was compiled to use the supermin appliance then the real "
17990 "appliance is cached in this directory, shared between all handles belonging "
17991 "to the same EUID.  You can use C<$TMPDIR> to configure another directory to "
17992 "use in case C</var/tmp> is not large enough."
17993 msgstr ""
17994
17995 #. type: =head1
17996 #: ../fish/guestfish.pod:1176 ../fuse/guestmount.pod:288 ../rescue/virt-rescue.pod:269
17997 msgid "FILES"
17998 msgstr ""
17999
18000 #. type: =item
18001 #: ../fish/guestfish.pod:1180 ../fuse/guestmount.pod:292 ../rescue/virt-rescue.pod:273
18002 msgid "$HOME/.libguestfs-tools.rc"
18003 msgstr ""
18004
18005 #. type: =item
18006 #: ../fish/guestfish.pod:1182 ../fuse/guestmount.pod:294 ../rescue/virt-rescue.pod:275
18007 msgid "/etc/libguestfs-tools.conf"
18008 msgstr ""
18009
18010 #. type: textblock
18011 #: ../fish/guestfish.pod:1184 ../fuse/guestmount.pod:296 ../rescue/virt-rescue.pod:277
18012 msgid ""
18013 "This configuration file controls the default read-only or read-write mode "
18014 "(I<--ro> or I<--rw>)."
18015 msgstr ""
18016
18017 #. type: textblock
18018 #: ../fish/guestfish.pod:1187
18019 msgid "See L</OPENING DISKS FOR READ AND WRITE>."
18020 msgstr ""
18021
18022 #. type: =item
18023 #: ../fish/guestfish.pod:1189
18024 msgid "$HOME/.guestfish"
18025 msgstr ""
18026
18027 #. type: textblock
18028 #: ../fish/guestfish.pod:1191
18029 msgid ""
18030 "If compiled with GNU readline support, then the command history is saved in "
18031 "this file."
18032 msgstr ""
18033
18034 #. type: =item
18035 #: ../fish/guestfish.pod:1194
18036 msgid "$HOME/.inputrc"
18037 msgstr ""
18038
18039 #. type: =item
18040 #: ../fish/guestfish.pod:1196
18041 msgid "/etc/inputrc"
18042 msgstr ""
18043
18044 #. type: textblock
18045 #: ../fish/guestfish.pod:1198
18046 msgid ""
18047 "If compiled with GNU readline support, then these files can be used to "
18048 "configure readline.  For further information, please see "
18049 "L<readline(3)/INITIALIZATION FILE>."
18050 msgstr ""
18051
18052 #. type: textblock
18053 #: ../fish/guestfish.pod:1202
18054 msgid "To write rules which only apply to guestfish, use:"
18055 msgstr ""
18056
18057 #. type: verbatim
18058 #: ../fish/guestfish.pod:1204
18059 #, no-wrap
18060 msgid ""
18061 " $if guestfish\n"
18062 " ...\n"
18063 " $endif\n"
18064 "\n"
18065 msgstr ""
18066
18067 #. type: textblock
18068 #: ../fish/guestfish.pod:1208
18069 msgid ""
18070 "Variables that you can set in inputrc that change the behaviour of guestfish "
18071 "in useful ways include:"
18072 msgstr ""
18073
18074 #. type: =item
18075 #: ../fish/guestfish.pod:1213
18076 msgid "completion-ignore-case (default: on)"
18077 msgstr ""
18078
18079 #. type: textblock
18080 #: ../fish/guestfish.pod:1215
18081 msgid ""
18082 "By default, guestfish will ignore case when tab-completing paths on the "
18083 "disk.  Use:"
18084 msgstr ""
18085
18086 #. type: verbatim
18087 #: ../fish/guestfish.pod:1218
18088 #, no-wrap
18089 msgid ""
18090 " set completion-ignore-case off\n"
18091 "\n"
18092 msgstr ""
18093
18094 #. type: textblock
18095 #: ../fish/guestfish.pod:1220
18096 msgid "to make guestfish case sensitive."
18097 msgstr ""
18098
18099 #. type: =item
18100 #: ../fish/guestfish.pod:1224
18101 msgid "test1.img"
18102 msgstr ""
18103
18104 #. type: =item
18105 #: ../fish/guestfish.pod:1226
18106 msgid "test2.img (etc)"
18107 msgstr ""
18108
18109 #. type: textblock
18110 #: ../fish/guestfish.pod:1228
18111 msgid ""
18112 "When using the I<-N> or I<--new> option, the prepared disk or filesystem "
18113 "will be created in the file C<test1.img> in the current directory.  The "
18114 "second use of I<-N> will use C<test2.img> and so on.  Any existing file with "
18115 "the same name will be overwritten."
18116 msgstr ""
18117
18118 #. type: textblock
18119 #: ../fish/guestfish.pod:1237
18120 msgid ""
18121 "L<guestfs(3)>, L<http://libguestfs.org/>, L<virt-cat(1)>, "
18122 "L<virt-copy-in(1)>, L<virt-copy-out(1)>, L<virt-df(1)>, L<virt-edit(1)>, "
18123 "L<virt-filesystems(1)>, L<virt-inspector(1)>, L<virt-list-filesystems(1)>, "
18124 "L<virt-list-partitions(1)>, L<virt-ls(1)>, L<virt-make-fs(1)>, "
18125 "L<virt-rescue(1)>, L<virt-resize(1)>, L<virt-tar(1)>, L<virt-tar-in(1)>, "
18126 "L<virt-tar-out(1)>, L<virt-win-reg(1)>, L<display(1)>, L<hexedit(1)>, "
18127 "L<febootstrap-supermin-helper(8)>."
18128 msgstr ""
18129
18130 #. type: textblock
18131 #: ../fish/guestfish.pod:1266 ../src/guestfs.pod:3213 ../test-tool/libguestfs-test-tool.pod:112
18132 msgid "Copyright (C) 2009-2011 Red Hat Inc.  L<http://libguestfs.org/>"
18133 msgstr ""
18134
18135 #. type: textblock
18136 #: ../fish/virt-copy-in.pod:5
18137 msgid "virt-copy-in - Copy files and directories into a virtual machine disk image."
18138 msgstr ""
18139
18140 #. type: verbatim
18141 #: ../fish/virt-copy-in.pod:9
18142 #, no-wrap
18143 msgid ""
18144 " virt-copy-in -a disk.img file|dir [file|dir ...] /destination\n"
18145 "\n"
18146 msgstr ""
18147
18148 #. type: verbatim
18149 #: ../fish/virt-copy-in.pod:11
18150 #, no-wrap
18151 msgid ""
18152 " virt-copy-in -d domain file|dir [file|dir ...] /destination\n"
18153 "\n"
18154 msgstr ""
18155
18156 #. type: textblock
18157 #: ../fish/virt-copy-in.pod:15
18158 msgid ""
18159 "Using C<virt-copy-in> on live virtual machines can be dangerous, potentially "
18160 "causing disk corruption.  The virtual machine must be shut down before you "
18161 "use this command."
18162 msgstr ""
18163
18164 #. type: textblock
18165 #: ../fish/virt-copy-in.pod:21
18166 msgid ""
18167 "C<virt-copy-in> copies files and directories from the local disk into a "
18168 "virtual machine disk image or named libvirt domain."
18169 msgstr ""
18170
18171 #. type: textblock
18172 #: ../fish/virt-copy-in.pod:24
18173 msgid ""
18174 "You can give one of more filenames and directories on the command line.  "
18175 "Directories are copied in recursively.  The final parameter must be the "
18176 "destination directory in the disk image which must be an absolute path "
18177 "starting with a C</> character."
18178 msgstr ""
18179
18180 #. type: verbatim
18181 #: ../fish/virt-copy-in.pod:33
18182 #, no-wrap
18183 msgid ""
18184 " virt-copy-in -d MyGuest resolv.conf /etc\n"
18185 "\n"
18186 msgstr ""
18187
18188 #. type: textblock
18189 #: ../fish/virt-copy-in.pod:35 ../fish/virt-tar-in.pod:32
18190 msgid "Upload a home directory to a guest:"
18191 msgstr ""
18192
18193 #. type: verbatim
18194 #: ../fish/virt-copy-in.pod:37
18195 #, no-wrap
18196 msgid ""
18197 " virt-copy-in -d MyGuest skel /home\n"
18198 "\n"
18199 msgstr ""
18200
18201 #. type: =head1
18202 #: ../fish/virt-copy-in.pod:39 ../fish/virt-copy-out.pod:28 ../fish/virt-tar-in.pod:36 ../fish/virt-tar-out.pod:30
18203 msgid "JUST A SHELL SCRIPT WRAPPER AROUND GUESTFISH"
18204 msgstr ""
18205
18206 #. type: textblock
18207 #: ../fish/virt-copy-in.pod:41
18208 msgid ""
18209 "This command is just a simple shell script wrapper around the "
18210 "L<guestfish(1)> C<copy-in> command.  For anything more complex than a "
18211 "trivial copy, you are probably better off using guestfish directly."
18212 msgstr ""
18213
18214 #. type: textblock
18215 #: ../fish/virt-copy-in.pod:47 ../fish/virt-copy-out.pod:36 ../fish/virt-tar-in.pod:44 ../fish/virt-tar-out.pod:38
18216 msgid ""
18217 "Since the shell script just passes options straight to guestfish, read "
18218 "L<guestfish(1)> to see the full list of options."
18219 msgstr ""
18220
18221 #. type: textblock
18222 #: ../fish/virt-copy-in.pod:52
18223 msgid ""
18224 "L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-out(1)>, L<virt-edit(1)>, "
18225 "L<virt-tar-in(1)>, L<virt-tar-out(1)>, L<http://libguestfs.org/>."
18226 msgstr ""
18227
18228 #. type: textblock
18229 #: ../fish/virt-copy-in.pod:66 ../fish/virt-copy-out.pod:55 ../fish/virt-tar-in.pod:64 ../fish/virt-tar-out.pod:57
18230 msgid "Copyright (C) 2011 Red Hat Inc.  L<http://libguestfs.org/>"
18231 msgstr ""
18232
18233 #. type: textblock
18234 #: ../fish/virt-copy-out.pod:5
18235 msgid ""
18236 "virt-copy-out - Copy files and directories out of a virtual machine disk "
18237 "image."
18238 msgstr ""
18239
18240 #. type: verbatim
18241 #: ../fish/virt-copy-out.pod:9
18242 #, no-wrap
18243 msgid ""
18244 " virt-copy-out -a disk.img /file|dir [/file|dir ...] localdir\n"
18245 "\n"
18246 msgstr ""
18247
18248 #. type: verbatim
18249 #: ../fish/virt-copy-out.pod:11
18250 #, no-wrap
18251 msgid ""
18252 " virt-copy-out -d domain /file|dir [/file|dir ...] localdir\n"
18253 "\n"
18254 msgstr ""
18255
18256 #. type: textblock
18257 #: ../fish/virt-copy-out.pod:15
18258 msgid ""
18259 "C<virt-copy-out> copies files and directories out of a virtual machine disk "
18260 "image or named libvirt domain."
18261 msgstr ""
18262
18263 #. type: textblock
18264 #: ../fish/virt-copy-out.pod:18
18265 msgid ""
18266 "You can give one of more filenames and directories on the command line.  "
18267 "Directories are copied out recursively."
18268 msgstr ""
18269
18270 #. type: textblock
18271 #: ../fish/virt-copy-out.pod:23
18272 msgid "Download the home directories from a virtual machine:"
18273 msgstr ""
18274
18275 #. type: verbatim
18276 #: ../fish/virt-copy-out.pod:25
18277 #, no-wrap
18278 msgid ""
18279 " mkdir homes\n"
18280 " virt-copy-out -d MyGuest /home homes\n"
18281 "\n"
18282 msgstr ""
18283
18284 #. type: textblock
18285 #: ../fish/virt-copy-out.pod:30
18286 msgid ""
18287 "This command is just a simple shell script wrapper around the "
18288 "L<guestfish(1)> C<copy-out> command.  For anything more complex than a "
18289 "trivial copy, you are probably better off using guestfish directly."
18290 msgstr ""
18291
18292 #. type: textblock
18293 #: ../fish/virt-copy-out.pod:41
18294 msgid ""
18295 "L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, L<virt-edit(1)>, "
18296 "L<virt-tar-in(1)>, L<virt-tar-out(1)>, L<http://libguestfs.org/>."
18297 msgstr ""
18298
18299 #. type: textblock
18300 #: ../fish/virt-tar-in.pod:5
18301 msgid "virt-tar-in - Unpack a tarball into a virtual machine disk image."
18302 msgstr ""
18303
18304 #. type: verbatim
18305 #: ../fish/virt-tar-in.pod:9
18306 #, no-wrap
18307 msgid ""
18308 " virt-tar-in -a disk.img data.tar /destination\n"
18309 "\n"
18310 msgstr ""
18311
18312 #. type: verbatim
18313 #: ../fish/virt-tar-in.pod:11
18314 #, no-wrap
18315 msgid ""
18316 " virt-tar-in -d domain data.tar /destination\n"
18317 "\n"
18318 msgstr ""
18319
18320 #. type: verbatim
18321 #: ../fish/virt-tar-in.pod:13
18322 #, no-wrap
18323 msgid ""
18324 " zcat data.tar.gz | virt-tar-in -d domain - /destination\n"
18325 "\n"
18326 msgstr ""
18327
18328 #. type: textblock
18329 #: ../fish/virt-tar-in.pod:17
18330 msgid ""
18331 "Using C<virt-tar-in> on live virtual machines can be dangerous, potentially "
18332 "causing disk corruption.  The virtual machine must be shut down before you "
18333 "use this command."
18334 msgstr ""
18335
18336 #. type: textblock
18337 #: ../fish/virt-tar-in.pod:23
18338 msgid ""
18339 "C<virt-tar-in> unpacks an uncompressed tarball into a virtual machine disk "
18340 "image or named libvirt domain."
18341 msgstr ""
18342
18343 #. type: textblock
18344 #: ../fish/virt-tar-in.pod:26
18345 msgid ""
18346 "The first parameter is the tar file.  Use C<-> to read the tar file from "
18347 "standard input.  The second parameter is the absolute target directory to "
18348 "unpack into."
18349 msgstr ""
18350
18351 #. type: verbatim
18352 #: ../fish/virt-tar-in.pod:34
18353 #, no-wrap
18354 msgid ""
18355 " virt-tar-in -d MyGuest homes.tar /home\n"
18356 "\n"
18357 msgstr ""
18358
18359 #. type: textblock
18360 #: ../fish/virt-tar-in.pod:38
18361 msgid ""
18362 "This command is just a simple shell script wrapper around the "
18363 "L<guestfish(1)> C<tar-in> command.  For anything more complex than a trivial "
18364 "copy, you are probably better off using guestfish directly."
18365 msgstr ""
18366
18367 #. type: textblock
18368 #: ../fish/virt-tar-in.pod:49
18369 msgid ""
18370 "L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, L<virt-copy-out(1)>, "
18371 "L<virt-edit(1)>, L<virt-make-fs(1)>, L<virt-tar-out(1)>, "
18372 "L<http://libguestfs.org/>."
18373 msgstr ""
18374
18375 #. type: textblock
18376 #: ../fish/virt-tar-out.pod:5
18377 msgid "virt-tar-out - Pack a virtual machine disk image directory into a tarball."
18378 msgstr ""
18379
18380 #. type: verbatim
18381 #: ../fish/virt-tar-out.pod:9
18382 #, no-wrap
18383 msgid ""
18384 " virt-tar-out -a disk.img /dir files.tar\n"
18385 "\n"
18386 msgstr ""
18387
18388 #. type: verbatim
18389 #: ../fish/virt-tar-out.pod:11
18390 #, no-wrap
18391 msgid ""
18392 " virt-tar-out -d domain /dir files.tar\n"
18393 "\n"
18394 msgstr ""
18395
18396 #. type: verbatim
18397 #: ../fish/virt-tar-out.pod:13
18398 #, no-wrap
18399 msgid ""
18400 " virt-tar-out -d domain /dir - | gzip --best > files.tar.gz\n"
18401 "\n"
18402 msgstr ""
18403
18404 #. type: textblock
18405 #: ../fish/virt-tar-out.pod:17
18406 msgid "C<virt-tar-out> packs a virtual machine disk image directory into a tarball."
18407 msgstr ""
18408
18409 #. type: textblock
18410 #: ../fish/virt-tar-out.pod:20
18411 msgid ""
18412 "The first parameter is the absolute path of the virtual machine directory.  "
18413 "The second parameter is the tar file to write.  Use C<-> to write to "
18414 "standard output."
18415 msgstr ""
18416
18417 #. type: textblock
18418 #: ../fish/virt-tar-out.pod:26
18419 msgid "Download the home directories from a guest:"
18420 msgstr ""
18421
18422 #. type: verbatim
18423 #: ../fish/virt-tar-out.pod:28
18424 #, no-wrap
18425 msgid ""
18426 " virt-tar-out -d MyGuest /home - | gzip --best > homes.tar.gz\n"
18427 "\n"
18428 msgstr ""
18429
18430 #. type: textblock
18431 #: ../fish/virt-tar-out.pod:32
18432 msgid ""
18433 "This command is just a simple shell script wrapper around the "
18434 "L<guestfish(1)> C<tar-out> command.  For anything more complex than a "
18435 "trivial copy, you are probably better off using guestfish directly."
18436 msgstr ""
18437
18438 #. type: textblock
18439 #: ../fish/virt-tar-out.pod:43
18440 msgid ""
18441 "L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, L<virt-copy-out(1)>, "
18442 "L<virt-edit(1)>, L<virt-tar-in(1)>, L<http://libguestfs.org/>."
18443 msgstr ""
18444
18445 #. type: textblock
18446 #: ../fuse/guestmount.pod:5
18447 msgid "guestmount - Mount a guest filesystem on the host using FUSE and libguestfs"
18448 msgstr ""
18449
18450 #. type: verbatim
18451 #: ../fuse/guestmount.pod:9
18452 #, no-wrap
18453 msgid ""
18454 " guestmount [--options] -a disk.img -m device [--ro] mountpoint\n"
18455 "\n"
18456 msgstr ""
18457
18458 #. type: verbatim
18459 #: ../fuse/guestmount.pod:11
18460 #, no-wrap
18461 msgid ""
18462 " guestmount [--options] -a disk.img -i [--ro] mountpoint\n"
18463 "\n"
18464 msgstr ""
18465
18466 #. type: verbatim
18467 #: ../fuse/guestmount.pod:13
18468 #, no-wrap
18469 msgid ""
18470 " guestmount [--options] -d Guest -i [--ro] mountpoint\n"
18471 "\n"
18472 msgstr ""
18473
18474 #. type: textblock
18475 #: ../fuse/guestmount.pod:17
18476 msgid ""
18477 "You must I<not> use C<guestmount> in read-write mode on live virtual "
18478 "machines.  If you do this, you risk disk corruption in the VM."
18479 msgstr ""
18480
18481 #. type: textblock
18482 #: ../fuse/guestmount.pod:22
18483 msgid ""
18484 "The guestmount program can be used to mount virtual machine filesystems and "
18485 "other disk images on the host.  It uses libguestfs for access to the guest "
18486 "filesystem, and FUSE (the \"filesystem in userspace\") to make it appear as "
18487 "a mountable device."
18488 msgstr ""
18489
18490 #. type: textblock
18491 #: ../fuse/guestmount.pod:27
18492 msgid ""
18493 "Along with other options, you have to give at least one device (I<-a> "
18494 "option) or libvirt domain (I<-d> option), and at least one mountpoint (I<-m> "
18495 "option) or use the I<-i> inspection option.  How this works is better "
18496 "explained in the L<guestfish(1)> manual page, or by looking at the examples "
18497 "below."
18498 msgstr ""
18499
18500 #. type: textblock
18501 #: ../fuse/guestmount.pod:33
18502 msgid ""
18503 "FUSE lets you mount filesystems as non-root.  The mountpoint must be owned "
18504 "by you, and the filesystem will not be visible to any other users unless you "
18505 "make certain global configuration changes to C</etc/fuse.conf>.  To unmount "
18506 "the filesystem, use the C<fusermount -u> command."
18507 msgstr ""
18508
18509 #. type: textblock
18510 #: ../fuse/guestmount.pod:41
18511 msgid ""
18512 "For a typical Windows guest which has its main filesystem on the first "
18513 "partition:"
18514 msgstr ""
18515
18516 #. type: verbatim
18517 #: ../fuse/guestmount.pod:44
18518 #, no-wrap
18519 msgid ""
18520 " guestmount -a windows.img -m /dev/sda1 --ro /mnt\n"
18521 "\n"
18522 msgstr ""
18523
18524 #. type: textblock
18525 #: ../fuse/guestmount.pod:46
18526 msgid ""
18527 "For a typical Linux guest which has a /boot filesystem on the first "
18528 "partition, and the root filesystem on a logical volume:"
18529 msgstr ""
18530
18531 #. type: verbatim
18532 #: ../fuse/guestmount.pod:49
18533 #, no-wrap
18534 msgid ""
18535 " guestmount -a linux.img -m /dev/VG/LV -m /dev/sda1:/boot --ro /mnt\n"
18536 "\n"
18537 msgstr ""
18538
18539 #. type: textblock
18540 #: ../fuse/guestmount.pod:51
18541 msgid "To get libguestfs to detect guest mountpoints for you:"
18542 msgstr ""
18543
18544 #. type: verbatim
18545 #: ../fuse/guestmount.pod:53
18546 #, no-wrap
18547 msgid ""
18548 " guestmount -a guest.img -i --ro /mnt\n"
18549 "\n"
18550 msgstr ""
18551
18552 #. type: textblock
18553 #: ../fuse/guestmount.pod:55
18554 msgid "For a libvirt guest called \"Guest\" you could do:"
18555 msgstr ""
18556
18557 #. type: verbatim
18558 #: ../fuse/guestmount.pod:57
18559 #, no-wrap
18560 msgid ""
18561 " guestmount -d Guest -i --ro /mnt\n"
18562 "\n"
18563 msgstr ""
18564
18565 #. type: textblock
18566 #: ../fuse/guestmount.pod:59
18567 msgid ""
18568 "If you don't know what filesystems are contained in a guest or disk image, "
18569 "use L<virt-filesystems(1)> first:"
18570 msgstr ""
18571
18572 #. type: verbatim
18573 #: ../fuse/guestmount.pod:62
18574 #, no-wrap
18575 msgid ""
18576 " virt-filesystems MyGuest\n"
18577 "\n"
18578 msgstr ""
18579
18580 #. type: textblock
18581 #: ../fuse/guestmount.pod:64
18582 msgid ""
18583 "If you want to trace the libguestfs calls but without excessive debugging "
18584 "information, we recommend:"
18585 msgstr ""
18586
18587 #. type: verbatim
18588 #: ../fuse/guestmount.pod:67
18589 #, no-wrap
18590 msgid ""
18591 " guestmount [...] --trace /mnt\n"
18592 "\n"
18593 msgstr ""
18594
18595 #. type: textblock
18596 #: ../fuse/guestmount.pod:69
18597 msgid "If you want to debug the program, we recommend:"
18598 msgstr ""
18599
18600 #. type: verbatim
18601 #: ../fuse/guestmount.pod:71
18602 #, no-wrap
18603 msgid ""
18604 " guestmount [...] --trace --verbose /mnt\n"
18605 "\n"
18606 msgstr ""
18607
18608 #. type: =head1
18609 #: ../fuse/guestmount.pod:73 ../rescue/virt-rescue.pod:68 ../resize/virt-resize.pod:544
18610 msgid "NOTES"
18611 msgstr ""
18612
18613 #. type: =head2
18614 #: ../fuse/guestmount.pod:75
18615 msgid "Other users cannot see the filesystem by default"
18616 msgstr ""
18617
18618 #. type: textblock
18619 #: ../fuse/guestmount.pod:77
18620 msgid ""
18621 "If you mount a filesystem as one user (eg. root), then other users will not "
18622 "be able to see it by default.  The fix is to add the FUSE C<allow_other> "
18623 "option when mounting:"
18624 msgstr ""
18625
18626 #. type: verbatim
18627 #: ../fuse/guestmount.pod:81
18628 #, no-wrap
18629 msgid ""
18630 " sudo guestmount [...] -o allow_other /mnt\n"
18631 "\n"
18632 msgstr ""
18633
18634 #. type: textblock
18635 #: ../fuse/guestmount.pod:91
18636 msgid "Add a block device or virtual machine image."
18637 msgstr ""
18638
18639 #. type: =item
18640 #: ../fuse/guestmount.pod:114
18641 msgid "B<--dir-cache-timeout N>"
18642 msgstr ""
18643
18644 #. type: textblock
18645 #: ../fuse/guestmount.pod:116
18646 msgid ""
18647 "Set the readdir cache timeout to I<N> seconds, the default being 60 "
18648 "seconds.  The readdir cache [actually, there are several semi-independent "
18649 "caches] is populated after a readdir(2) call with the stat and extended "
18650 "attributes of the files in the directory, in anticipation that they will be "
18651 "requested soon after."
18652 msgstr ""
18653
18654 #. type: textblock
18655 #: ../fuse/guestmount.pod:122
18656 msgid ""
18657 "There is also a different attribute cache implemented by FUSE (see the FUSE "
18658 "option I<-o attr_timeout>), but the FUSE cache does not anticipate future "
18659 "requests, only cache existing ones."
18660 msgstr ""
18661
18662 #. type: textblock
18663 #: ../fuse/guestmount.pod:142
18664 msgid ""
18665 "If you have untrusted raw-format guest disk images, you should use this "
18666 "option to specify the disk format.  This avoids a possible security problem "
18667 "with malicious guests (CVE-2010-3851).  See also "
18668 "L<guestfs(3)/guestfs_add_drive_opts>."
18669 msgstr ""
18670
18671 #. type: =item
18672 #: ../fuse/guestmount.pod:147
18673 msgid "B<--fuse-help>"
18674 msgstr ""
18675
18676 #. type: textblock
18677 #: ../fuse/guestmount.pod:149
18678 msgid "Display help on special FUSE options (see I<-o> below)."
18679 msgstr ""
18680
18681 #. type: textblock
18682 #: ../fuse/guestmount.pod:153
18683 msgid "Display brief help and exit."
18684 msgstr ""
18685
18686 #. type: textblock
18687 #: ../fuse/guestmount.pod:177
18688 msgid ""
18689 "Mount the named partition or logical volume on the given mountpoint B<in the "
18690 "guest> (this has nothing to do with mountpoints in the host)."
18691 msgstr ""
18692
18693 #. type: textblock
18694 #: ../fuse/guestmount.pod:180
18695 msgid ""
18696 "If the mountpoint is omitted, it defaults to C</>.  You have to mount "
18697 "something on C</>."
18698 msgstr ""
18699
18700 #. type: textblock
18701 #: ../fuse/guestmount.pod:197
18702 msgid ""
18703 "By default, we attempt to sync the guest disk when the FUSE mountpoint is "
18704 "unmounted.  If you specify this option, then we don't attempt to sync the "
18705 "disk.  See the discussion of autosync in the L<guestfs(3)> manpage."
18706 msgstr ""
18707
18708 #. type: =item
18709 #: ../fuse/guestmount.pod:202
18710 msgid "B<-o option>"
18711 msgstr ""
18712
18713 #. type: =item
18714 #: ../fuse/guestmount.pod:204
18715 msgid "B<--option option>"
18716 msgstr ""
18717
18718 #. type: textblock
18719 #: ../fuse/guestmount.pod:206
18720 msgid "Pass extra options to FUSE."
18721 msgstr ""
18722
18723 #. type: textblock
18724 #: ../fuse/guestmount.pod:208
18725 msgid ""
18726 "To get a list of all the extra options supported by FUSE, use the command "
18727 "below.  Note that only the FUSE I<-o> options can be passed, and only some "
18728 "of them are a good idea."
18729 msgstr ""
18730
18731 #. type: verbatim
18732 #: ../fuse/guestmount.pod:212
18733 #, no-wrap
18734 msgid ""
18735 " guestmount --fuse-help\n"
18736 "\n"
18737 msgstr ""
18738
18739 #. type: textblock
18740 #: ../fuse/guestmount.pod:214
18741 msgid "Some potentially useful FUSE options:"
18742 msgstr ""
18743
18744 #. type: =item
18745 #: ../fuse/guestmount.pod:218
18746 msgid "B<-o allow_other>"
18747 msgstr ""
18748
18749 #. type: textblock
18750 #: ../fuse/guestmount.pod:220
18751 msgid "Allow other users to see the filesystem."
18752 msgstr ""
18753
18754 #. type: =item
18755 #: ../fuse/guestmount.pod:222
18756 msgid "B<-o attr_timeout=N>"
18757 msgstr ""
18758
18759 #. type: textblock
18760 #: ../fuse/guestmount.pod:224
18761 msgid "Enable attribute caching by FUSE, and set the timeout to I<N> seconds."
18762 msgstr ""
18763
18764 #. type: =item
18765 #: ../fuse/guestmount.pod:226
18766 msgid "B<-o kernel_cache>"
18767 msgstr ""
18768
18769 #. type: textblock
18770 #: ../fuse/guestmount.pod:228
18771 msgid ""
18772 "Allow the kernel to cache files (reduces the number of reads that have to go "
18773 "through the L<guestfs(3)> API).  This is generally a good idea if you can "
18774 "afford the extra memory usage."
18775 msgstr ""
18776
18777 #. type: =item
18778 #: ../fuse/guestmount.pod:232
18779 msgid "B<-o uid=N> B<-o gid=N>"
18780 msgstr ""
18781
18782 #. type: textblock
18783 #: ../fuse/guestmount.pod:234
18784 msgid ""
18785 "Use these options to map all UIDs and GIDs inside the guest filesystem to "
18786 "the chosen values."
18787 msgstr ""
18788
18789 #. type: textblock
18790 #: ../fuse/guestmount.pod:243
18791 msgid ""
18792 "Add devices and mount everything read-only.  Also disallow writes and make "
18793 "the disk appear read-only to FUSE."
18794 msgstr ""
18795
18796 #. type: textblock
18797 #: ../fuse/guestmount.pod:246
18798 msgid ""
18799 "This is highly recommended if you are not going to edit the guest disk.  If "
18800 "the guest is running and this option is I<not> supplied, then there is a "
18801 "strong risk of disk corruption in the guest.  We try to prevent this from "
18802 "happening, but it is not always possible."
18803 msgstr ""
18804
18805 #. type: textblock
18806 #: ../fuse/guestmount.pod:251 ../rescue/virt-rescue.pod:171
18807 msgid "See also L<guestfish(1)/OPENING DISKS FOR READ AND WRITE>."
18808 msgstr ""
18809
18810 #. type: textblock
18811 #: ../fuse/guestmount.pod:255
18812 msgid "Enable SELinux support for the guest."
18813 msgstr ""
18814
18815 #. type: textblock
18816 #: ../fuse/guestmount.pod:261
18817 msgid "Enable verbose messages from underlying libguestfs."
18818 msgstr ""
18819
18820 #. type: textblock
18821 #: ../fuse/guestmount.pod:267
18822 msgid "Display the program version and exit."
18823 msgstr ""
18824
18825 #. type: textblock
18826 #: ../fuse/guestmount.pod:276 ../fuse/guestmount.pod:299 ../rescue/virt-rescue.pod:197 ../rescue/virt-rescue.pod:280
18827 msgid "See L<guestfish(1)/OPENING DISKS FOR READ AND WRITE>."
18828 msgstr ""
18829
18830 #. type: =item
18831 #: ../fuse/guestmount.pod:280
18832 msgid "B<--trace>"
18833 msgstr ""
18834
18835 #. type: textblock
18836 #: ../fuse/guestmount.pod:282
18837 msgid "Trace libguestfs calls and entry into each FUSE function."
18838 msgstr ""
18839
18840 #. type: textblock
18841 #: ../fuse/guestmount.pod:284
18842 msgid "This also stops the daemon from forking into the background."
18843 msgstr ""
18844
18845 #. type: textblock
18846 #: ../fuse/guestmount.pod:310
18847 msgid ""
18848 "L<guestfish(1)>, L<virt-inspector(1)>, L<virt-cat(1)>, L<virt-edit(1)>, "
18849 "L<virt-tar(1)>, L<guestfs(3)>, L<http://libguestfs.org/>, "
18850 "L<http://fuse.sf.net/>."
18851 msgstr ""
18852
18853 #. type: textblock
18854 #: ../fuse/guestmount.pod:325
18855 msgid "Copyright (C) 2009-2010 Red Hat Inc.  L<http://libguestfs.org/>"
18856 msgstr ""
18857
18858 #. type: textblock
18859 #: ../inspector/virt-inspector.pod:5
18860 msgid ""
18861 "virt-inspector - Display operating system version and other information "
18862 "about a virtual machine"
18863 msgstr ""
18864
18865 #. type: verbatim
18866 #: ../inspector/virt-inspector.pod:9
18867 #, no-wrap
18868 msgid ""
18869 " virt-inspector [--options] -d domname\n"
18870 "\n"
18871 msgstr ""
18872
18873 #. type: verbatim
18874 #: ../inspector/virt-inspector.pod:11
18875 #, no-wrap
18876 msgid ""
18877 " virt-inspector [--options] -a disk.img [-a disk.img ...]\n"
18878 "\n"
18879 msgstr ""
18880
18881 #. type: verbatim
18882 #: ../inspector/virt-inspector.pod:15
18883 #, no-wrap
18884 msgid ""
18885 " virt-inspector domname\n"
18886 "\n"
18887 msgstr ""
18888
18889 #. type: verbatim
18890 #: ../inspector/virt-inspector.pod:17 ../inspector/virt-inspector.pod:141
18891 #, no-wrap
18892 msgid ""
18893 " virt-inspector disk.img [disk.img ...]\n"
18894 "\n"
18895 msgstr ""
18896
18897 #. type: textblock
18898 #: ../inspector/virt-inspector.pod:21
18899 msgid ""
18900 "B<virt-inspector> examines a virtual machine or disk image and tries to "
18901 "determine the version of the operating system and other information about "
18902 "the virtual machine."
18903 msgstr ""
18904
18905 #. type: textblock
18906 #: ../inspector/virt-inspector.pod:25
18907 msgid "Virt-inspector produces XML output for feeding into other programs."
18908 msgstr ""
18909
18910 #. type: textblock
18911 #: ../inspector/virt-inspector.pod:27
18912 msgid ""
18913 "In the normal usage, use C<virt-inspector -d domname> where C<domname> is "
18914 "the libvirt domain (see: C<virsh list --all>)."
18915 msgstr ""
18916
18917 #. type: textblock
18918 #: ../inspector/virt-inspector.pod:30
18919 msgid ""
18920 "You can also run virt-inspector directly on disk images from a single "
18921 "virtual machine.  Use C<virt-inspector -a disk.img>.  In rare cases a domain "
18922 "has several block devices, in which case you should list several I<-a> "
18923 "options one after another, with the first corresponding to the guest's "
18924 "C</dev/sda>, the second to the guest's C</dev/sdb> and so on."
18925 msgstr ""
18926
18927 #. type: textblock
18928 #: ../inspector/virt-inspector.pod:37
18929 msgid ""
18930 "You can also run virt-inspector on install disks, live CDs, bootable USB "
18931 "keys and similar."
18932 msgstr ""
18933
18934 #. type: textblock
18935 #: ../inspector/virt-inspector.pod:40
18936 msgid ""
18937 "Virt-inspector can only inspect and report upon I<one domain at a time>.  To "
18938 "inspect several virtual machines, you have to run virt-inspector several "
18939 "times (for example, from a shell script for-loop)."
18940 msgstr ""
18941
18942 #. type: textblock
18943 #: ../inspector/virt-inspector.pod:45
18944 msgid ""
18945 "Because virt-inspector needs direct access to guest images, it won't "
18946 "normally work over remote libvirt connections."
18947 msgstr ""
18948
18949 #. type: textblock
18950 #: ../inspector/virt-inspector.pod:48
18951 msgid ""
18952 "All of the information available from virt-inspector is also available "
18953 "through the core libguestfs inspection API (see L<guestfs(3)/INSPECTION>).  "
18954 "The same information can also be fetched using guestfish or via libguestfs "
18955 "bindings in many programming languages (see L<guestfs(3)/USING LIBGUESTFS "
18956 "WITH OTHER PROGRAMMING LANGUAGES>)."
18957 msgstr ""
18958
18959 #. type: textblock
18960 #: ../inspector/virt-inspector.pod:81
18961 msgid ""
18962 "Libvirt is only used if you specify a C<domname> on the command line.  If "
18963 "you specify guest block devices directly (I<-a>), then libvirt is not used "
18964 "at all."
18965 msgstr ""
18966
18967 #. type: textblock
18968 #: ../inspector/virt-inspector.pod:94
18969 msgid ""
18970 "When prompting for keys and passphrases, virt-inspector normally turns "
18971 "echoing off so you cannot see what you are typing.  If you are not worried "
18972 "about Tempest attacks and there is no one else in the room you can specify "
18973 "this flag to see what you are typing."
18974 msgstr ""
18975
18976 #. type: textblock
18977 #: ../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
18978 msgid ""
18979 "Specify the format of disk images given on the command line.  If this is "
18980 "omitted then the format is autodetected from the content of the disk image."
18981 msgstr ""
18982
18983 #. type: textblock
18984 #: ../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
18985 msgid ""
18986 "If disk images are requested from libvirt, then this program asks libvirt "
18987 "for this information.  In this case, the value of the format parameter is "
18988 "ignored."
18989 msgstr ""
18990
18991 #. type: textblock
18992 #: ../inspector/virt-inspector.pod:111 ../resize/virt-resize.pod:314 ../resize/virt-resize.pod:406 ../tools/virt-list-filesystems.pl:101 ../tools/virt-list-partitions.pl:102 ../tools/virt-tar.pl:151 ../tools/virt-win-reg.pl:152
18993 msgid ""
18994 "If working with untrusted raw-format guest disk images, you should ensure "
18995 "the format is always specified."
18996 msgstr ""
18997
18998 #. type: textblock
18999 #: ../inspector/virt-inspector.pod:139
19000 msgid "Previous versions of virt-inspector allowed you to write either:"
19001 msgstr ""
19002
19003 #. type: verbatim
19004 #: ../inspector/virt-inspector.pod:145
19005 #, no-wrap
19006 msgid ""
19007 " virt-inspector guestname\n"
19008 "\n"
19009 msgstr ""
19010
19011 #. type: =head1
19012 #: ../inspector/virt-inspector.pod:153
19013 msgid "XML FORMAT"
19014 msgstr ""
19015
19016 #. type: textblock
19017 #: ../inspector/virt-inspector.pod:155
19018 msgid ""
19019 "The virt-inspector XML is described precisely in a RELAX NG schema file "
19020 "C<virt-inspector.rng> which is supplied with libguestfs.  This section is "
19021 "just an overview."
19022 msgstr ""
19023
19024 #. type: textblock
19025 #: ../inspector/virt-inspector.pod:159
19026 msgid ""
19027 "The top-level element is E<lt>operatingsystemsE<gt>, and it contains one or "
19028 "more E<lt>operatingsystemE<gt> elements.  You would only see more than one "
19029 "E<lt>operatingsystemE<gt> element if the virtual machine is multi-boot, "
19030 "which is vanishingly rare in real world VMs."
19031 msgstr ""
19032
19033 #. type: =head2
19034 #: ../inspector/virt-inspector.pod:164
19035 msgid "E<lt>operatingsystemE<gt>"
19036 msgstr ""
19037
19038 #. type: textblock
19039 #: ../inspector/virt-inspector.pod:166
19040 msgid ""
19041 "In the E<lt>operatingsystemE<gt> tag are various optional fields that "
19042 "describe the operating system, its architecture, the descriptive \"product "
19043 "name\" string, the type of OS and so on, as in this example:"
19044 msgstr ""
19045
19046 #. type: verbatim
19047 #: ../inspector/virt-inspector.pod:170
19048 #, no-wrap
19049 msgid ""
19050 " <operatingsystems>\n"
19051 "   <operatingsystem>\n"
19052 "     <root>/dev/sda2</root>\n"
19053 "     <name>windows</name>\n"
19054 "     <arch>i386</arch>\n"
19055 "     <distro>windows</distro>\n"
19056 "     <product_name>Windows 7 Enterprise</product_name>\n"
19057 "     <product_variant>Client</product_variant>\n"
19058 "     <major_version>6</major_version>\n"
19059 "     <minor_version>1</minor_version>\n"
19060 "     <windows_systemroot>/Windows</windows_systemroot>\n"
19061 "     <format>installed</format>\n"
19062 "\n"
19063 msgstr ""
19064
19065 #. type: textblock
19066 #: ../inspector/virt-inspector.pod:183
19067 msgid ""
19068 "In brief, E<lt>nameE<gt> is the class of operating system (something like "
19069 "C<linux> or C<windows>), E<lt>distroE<gt> is the distribution (eg. C<fedora> "
19070 "but many other distros are recognized) and E<lt>archE<gt> is the guest "
19071 "architecture.  The other fields are fairly self-explanatory, but because "
19072 "these fields are taken directly from the libguestfs inspection API you can "
19073 "find precise information from L<guestfs(3)/INSPECTION>."
19074 msgstr ""
19075
19076 #. type: textblock
19077 #: ../inspector/virt-inspector.pod:191
19078 msgid ""
19079 "The E<lt>rootE<gt> element is the root filesystem device, but from the point "
19080 "of view of libguestfs (block devices may have completely different names "
19081 "inside the VM itself)."
19082 msgstr ""
19083
19084 #. type: =head2
19085 #: ../inspector/virt-inspector.pod:195
19086 msgid "E<lt>mountpointsE<gt>"
19087 msgstr ""
19088
19089 #. type: textblock
19090 #: ../inspector/virt-inspector.pod:197
19091 msgid ""
19092 "Un*x-like guests typically have multiple filesystems which are mounted at "
19093 "various mountpoints, and these are described in the E<lt>mountpointsE<gt> "
19094 "element which looks like this:"
19095 msgstr ""
19096
19097 #. type: verbatim
19098 #: ../inspector/virt-inspector.pod:201
19099 #, no-wrap
19100 msgid ""
19101 " <operatingsystems>\n"
19102 "   <operatingsystem>\n"
19103 "     ...\n"
19104 "     <mountpoints>\n"
19105 "       <mountpoint dev=\"/dev/vg_f13x64/lv_root\">/</mountpoint>\n"
19106 "       <mountpoint dev=\"/dev/sda1\">/boot</mountpoint>\n"
19107 "     </mountpoints>\n"
19108 "\n"
19109 msgstr ""
19110
19111 #. type: textblock
19112 #: ../inspector/virt-inspector.pod:209
19113 msgid ""
19114 "As with E<lt>rootE<gt>, devices are from the point of view of libguestfs, "
19115 "and may have completely different names inside the guest.  Only mountable "
19116 "filesystems appear in this list, not things like swap devices."
19117 msgstr ""
19118
19119 #. type: =head2
19120 #: ../inspector/virt-inspector.pod:214
19121 msgid "E<lt>filesystemsE<gt>"
19122 msgstr ""
19123
19124 #. type: textblock
19125 #: ../inspector/virt-inspector.pod:216
19126 msgid ""
19127 "E<lt>filesystemsE<gt> is like E<lt>mountpointsE<gt> but covers I<all> "
19128 "filesystems belonging to the guest, including swap and empty partitions.  "
19129 "(In the rare case of a multi-boot guest, it covers filesystems belonging to "
19130 "this OS or shared with this OS and other OSes)."
19131 msgstr ""
19132
19133 #. type: textblock
19134 #: ../inspector/virt-inspector.pod:222
19135 msgid "You might see something like this:"
19136 msgstr ""
19137
19138 #. type: verbatim
19139 #: ../inspector/virt-inspector.pod:224
19140 #, no-wrap
19141 msgid ""
19142 " <operatingsystems>\n"
19143 "   <operatingsystem>\n"
19144 "     ...\n"
19145 "     <filesystems>\n"
19146 "       <filesystem dev=\"/dev/vg_f13x64/lv_root\">\n"
19147 "         <type>ext4</type>\n"
19148 "         <label>Fedora-13-x86_64</label>\n"
19149 "         <uuid>e6a4db1e-15c2-477b-ac2a-699181c396aa</uuid>\n"
19150 "       </filesystem>\n"
19151 "\n"
19152 msgstr ""
19153
19154 #. type: textblock
19155 #: ../inspector/virt-inspector.pod:234
19156 msgid ""
19157 "The optional elements within E<lt>filesystemE<gt> are the filesystem type, "
19158 "the label, and the UUID."
19159 msgstr ""
19160
19161 #. type: =head2
19162 #: ../inspector/virt-inspector.pod:237
19163 msgid "E<lt>applicationsE<gt>"
19164 msgstr ""
19165
19166 #. type: textblock
19167 #: ../inspector/virt-inspector.pod:239
19168 msgid ""
19169 "The related elements E<lt>package_formatE<gt>, E<lt>package_managementE<gt> "
19170 "and E<lt>applicationsE<gt> describe applications installed in the virtual "
19171 "machine."
19172 msgstr ""
19173
19174 #. type: textblock
19175 #: ../inspector/virt-inspector.pod:243
19176 msgid ""
19177 "E<lt>package_formatE<gt>, if present, describes the packaging system used.  "
19178 "Typical values would be C<rpm> and C<deb>."
19179 msgstr ""
19180
19181 #. type: textblock
19182 #: ../inspector/virt-inspector.pod:246
19183 msgid ""
19184 "E<lt>package_managementE<gt>, if present, describes the package manager.  "
19185 "Typical values include C<yum>, C<up2date> and C<apt>"
19186 msgstr ""
19187
19188 #. type: textblock
19189 #: ../inspector/virt-inspector.pod:249
19190 msgid "E<lt>applicationsE<gt> lists the packages or applications installed."
19191 msgstr ""
19192
19193 #. type: verbatim
19194 #: ../inspector/virt-inspector.pod:252
19195 #, no-wrap
19196 msgid ""
19197 " <operatingsystems>\n"
19198 "   <operatingsystem>\n"
19199 "     ...\n"
19200 "     <applications>\n"
19201 "       <application>\n"
19202 "         <name>coreutils</name>\n"
19203 "         <version>8.5</version>\n"
19204 "         <release>1</release>\n"
19205 "       </application>\n"
19206 "\n"
19207 msgstr ""
19208
19209 #. type: textblock
19210 #: ../inspector/virt-inspector.pod:262
19211 msgid ""
19212 "The version and release fields may not be available for some types guests.  "
19213 "Other fields are possible, see "
19214 "L<guestfs(3)/guestfs_inspect_list_applications>."
19215 msgstr ""
19216
19217 #. type: =head2
19218 #: ../inspector/virt-inspector.pod:266
19219 msgid "E<lt>drive_mappingsE<gt>"
19220 msgstr ""
19221
19222 #. type: textblock
19223 #: ../inspector/virt-inspector.pod:268
19224 msgid ""
19225 "For operating systems like Windows which use drive letters, virt-inspector "
19226 "is able to find out how drive letters map to filesystems."
19227 msgstr ""
19228
19229 #. type: verbatim
19230 #: ../inspector/virt-inspector.pod:272
19231 #, no-wrap
19232 msgid ""
19233 " <operatingsystems>\n"
19234 "   <operatingsystem>\n"
19235 "     ...\n"
19236 "     <drive_mappings>\n"
19237 "       <drive_mapping name=\"C\">/dev/sda2</drive_mapping>\n"
19238 "       <drive_mapping name=\"E\">/dev/sdb1</drive_mapping>\n"
19239 "     </drive_mappings>\n"
19240 "\n"
19241 msgstr ""
19242
19243 #. type: textblock
19244 #: ../inspector/virt-inspector.pod:280
19245 msgid ""
19246 "In the example above, drive C maps to the filesystem on the second partition "
19247 "on the first disk, and drive E maps to the filesystem on the first partition "
19248 "on the second disk."
19249 msgstr ""
19250
19251 #. type: textblock
19252 #: ../inspector/virt-inspector.pod:284
19253 msgid ""
19254 "Note that this only covers permanent local filesystem mappings, not things "
19255 "like network shares.  Furthermore NTFS volume mount points may not be listed "
19256 "here."
19257 msgstr ""
19258
19259 #. type: =head2
19260 #: ../inspector/virt-inspector.pod:288
19261 msgid "E<lt>iconE<gt>"
19262 msgstr ""
19263
19264 #. type: textblock
19265 #: ../inspector/virt-inspector.pod:290
19266 msgid ""
19267 "Virt-inspector is sometimes able to extract an icon or logo for the guest.  "
19268 "The icon is returned as base64-encoded PNG data.  Note that the icon can be "
19269 "very large and high quality."
19270 msgstr ""
19271
19272 #. type: verbatim
19273 #: ../inspector/virt-inspector.pod:294
19274 #, no-wrap
19275 msgid ""
19276 " <operatingsystems>\n"
19277 "   <operatingsystem>\n"
19278 "     ...\n"
19279 "     <icon>\n"
19280 "       iVBORw0KGgoAAAANSUhEUgAAAGAAAABg[.......]\n"
19281 "       [... many lines of base64 data ...]\n"
19282 "     </icon>\n"
19283 "\n"
19284 msgstr ""
19285
19286 #. type: textblock
19287 #: ../inspector/virt-inspector.pod:302
19288 msgid ""
19289 "To display the icon, you have to extract it and convert the base64 data back "
19290 "to a binary file.  Use an XPath query or simply an editor to extract the "
19291 "data, then use the coreutils L<base64(1)> program to do the conversion back "
19292 "to a PNG file:"
19293 msgstr ""
19294
19295 #. type: verbatim
19296 #: ../inspector/virt-inspector.pod:307
19297 #, no-wrap
19298 msgid ""
19299 " base64 -i -d < icon.data > icon.png\n"
19300 "\n"
19301 msgstr ""
19302
19303 #. type: =head2
19304 #: ../inspector/virt-inspector.pod:309
19305 msgid "INSPECTING INSTALL DISKS, LIVE CDs"
19306 msgstr ""
19307
19308 #. type: textblock
19309 #: ../inspector/virt-inspector.pod:311
19310 msgid ""
19311 "Virt-inspector can detect some operating system installers on install disks, "
19312 "live CDs, bootable USB keys and more."
19313 msgstr ""
19314
19315 #. type: textblock
19316 #: ../inspector/virt-inspector.pod:314
19317 msgid ""
19318 "In this case the E<lt>formatE<gt> tag will contain C<installer> and other "
19319 "fields may be present to indicate a live CD, network installer, or one part "
19320 "of a multipart CD.  For example:"
19321 msgstr ""
19322
19323 #. type: verbatim
19324 #: ../inspector/virt-inspector.pod:318
19325 #, no-wrap
19326 msgid ""
19327 " <operatingsystems>\n"
19328 "   <operatingsystem>\n"
19329 "     <root>/dev/sda</root>\n"
19330 "     <name>linux</name>\n"
19331 "     <arch>i386</arch>\n"
19332 "     <distro>ubuntu</distro>\n"
19333 "     <product_name>Ubuntu 10.10 &quot;Maverick "
19334 "Meerkat&quot;</product_name>\n"
19335 "     <major_version>10</major_version>\n"
19336 "     <minor_version>10</minor_version>\n"
19337 "     <format>installer</format>\n"
19338 "     <live/>\n"
19339 "\n"
19340 msgstr ""
19341
19342 #. type: =head1
19343 #: ../inspector/virt-inspector.pod:330
19344 msgid "USING XPATH"
19345 msgstr ""
19346
19347 #. type: textblock
19348 #: ../inspector/virt-inspector.pod:332
19349 msgid ""
19350 "You can use the XPath query language to select parts of the XML.  We "
19351 "recommend using C<xmlstarlet> to perform XPath queries from the command "
19352 "line."
19353 msgstr ""
19354
19355 #. type: verbatim
19356 #: ../inspector/virt-inspector.pod:338
19357 #, no-wrap
19358 msgid ""
19359 " $ virt-inspector -d Guest | xmlstarlet sel -t -c '//filesystems'\n"
19360 " <filesystems>\n"
19361 "      <filesystem dev=\"/dev/vg_f13x64/lv_root\">\n"
19362 "        <type>ext4</type>\n"
19363 " [...]\n"
19364 "\n"
19365 msgstr ""
19366
19367 #. type: verbatim
19368 #: ../inspector/virt-inspector.pod:344
19369 #, no-wrap
19370 msgid ""
19371 " $ virt-inspector -d Guest | \\\n"
19372 "     xmlstarlet sel -t -c \"string(//filesystem[@dev='/dev/sda1']/type)\"\n"
19373 " ext4\n"
19374 "\n"
19375 msgstr ""
19376
19377 #. type: verbatim
19378 #: ../inspector/virt-inspector.pod:348
19379 #, no-wrap
19380 msgid ""
19381 " $ virt-inspector -d Guest | \\\n"
19382 "    xmlstarlet sel -t -v '//icon' | base64 -i -d | display -\n"
19383 " [displays the guest icon, if there is one]\n"
19384 "\n"
19385 msgstr ""
19386
19387 #. type: =head1
19388 #: ../inspector/virt-inspector.pod:359
19389 msgid "OLD VERSIONS OF VIRT-INSPECTOR"
19390 msgstr ""
19391
19392 #. type: textblock
19393 #: ../inspector/virt-inspector.pod:361
19394 msgid ""
19395 "Early versions of libguestfs shipped with a different virt-inspector program "
19396 "written in Perl (the current version is written in C).  The XML output of "
19397 "the Perl virt-inspector was different and it could also output in other "
19398 "formats like text."
19399 msgstr ""
19400
19401 #. type: textblock
19402 #: ../inspector/virt-inspector.pod:366
19403 msgid "The old virt-inspector is no longer supported or shipped with libguestfs."
19404 msgstr ""
19405
19406 #. type: textblock
19407 #: ../inspector/virt-inspector.pod:369
19408 msgid ""
19409 "To confuse matters further, in Red Hat Enterprise Linux 6 we ship two "
19410 "versions of virt-inspector with different names:"
19411 msgstr ""
19412
19413 #. type: verbatim
19414 #: ../inspector/virt-inspector.pod:372
19415 #, no-wrap
19416 msgid ""
19417 " virt-inspector     Old Perl version.\n"
19418 " virt-inspector2    New C version.\n"
19419 "\n"
19420 msgstr ""
19421
19422 #. type: textblock
19423 #: ../inspector/virt-inspector.pod:382
19424 msgid ""
19425 "L<guestfs(3)>, L<guestfish(1)>, L<http://www.w3.org/TR/xpath/>, "
19426 "L<base64(1)>, L<xmlstarlet(1)>, L<http://libguestfs.org/>."
19427 msgstr ""
19428
19429 #. type: textblock
19430 #: ../inspector/virt-inspector.pod:399
19431 msgid "Matthew Booth L<mbooth@redhat.com>"
19432 msgstr ""
19433
19434 #. type: textblock
19435 #: ../java/examples/guestfs-java.pod:5
19436 msgid "guestfs-java - How to use libguestfs from Java"
19437 msgstr ""
19438
19439 #. type: verbatim
19440 #: ../java/examples/guestfs-java.pod:9
19441 #, no-wrap
19442 msgid ""
19443 " import com.redhat.et.libguestfs.*;\n"
19444 " \n"
19445 msgstr ""
19446
19447 #. type: verbatim
19448 #: ../java/examples/guestfs-java.pod:11
19449 #, no-wrap
19450 msgid ""
19451 " GuestFS g = new GuestFS ();\n"
19452 " g.add_drive_opts (\"disk.img\", null);\n"
19453 " g.launch ();\n"
19454 "\n"
19455 msgstr ""
19456
19457 #. type: textblock
19458 #: ../java/examples/guestfs-java.pod:17
19459 msgid ""
19460 "This manual page documents how to call libguestfs from the Java programming "
19461 "language.  This page just documents the differences from the C API and gives "
19462 "some examples.  If you are not familiar with using libguestfs, you also need "
19463 "to read L<guestfs(3)>."
19464 msgstr ""
19465
19466 #. type: =head2
19467 #: ../java/examples/guestfs-java.pod:22 ../ocaml/examples/guestfs-ocaml.pod:53
19468 msgid "CLOSING THE HANDLE"
19469 msgstr ""
19470
19471 #. type: textblock
19472 #: ../java/examples/guestfs-java.pod:24
19473 msgid ""
19474 "The handle is closed when it is reaped by the garbage collector.  Because "
19475 "libguestfs handles include a lot of state, it is also possible to close (and "
19476 "hence free) them explicitly by calling the C<close> method."
19477 msgstr ""
19478
19479 #. type: =head2
19480 #: ../java/examples/guestfs-java.pod:29 ../ocaml/examples/guestfs-ocaml.pod:60 ../python/examples/guestfs-python.pod:21 ../ruby/examples/guestfs-ruby.pod:22
19481 msgid "EXCEPTIONS"
19482 msgstr ""
19483
19484 #. type: textblock
19485 #: ../java/examples/guestfs-java.pod:31
19486 msgid ""
19487 "Errors from libguestfs functions are mapped into the C<LibGuestFSException> "
19488 "exception.  This has a single parameter which is the error message (a "
19489 "C<String>)."
19490 msgstr ""
19491
19492 #. type: textblock
19493 #: ../java/examples/guestfs-java.pod:35
19494 msgid "Calling any method on a closed handle raises the same exception."
19495 msgstr ""
19496
19497 #. type: textblock
19498 #: ../java/examples/guestfs-java.pod:47
19499 msgid ""
19500 "L<guestfs(3)>, L<guestfs-examples(3)>, L<guestfs-ocaml(3)>, "
19501 "L<guestfs-perl(3)>, L<guestfs-python(3)>, L<guestfs-recipes(1)>, "
19502 "L<guestfs-ruby(3)>, L<http://libguestfs.org/>, L<http://caml.inria.fr/>."
19503 msgstr ""
19504
19505 #. type: textblock
19506 #: ../java/examples/guestfs-java.pod:63 ../perl/examples/guestfs-perl.pod:57
19507 msgid "Copyright (C) 2011 Red Hat Inc. L<http://libguestfs.org/>"
19508 msgstr ""
19509
19510 #. type: textblock
19511 #: ../ocaml/examples/guestfs-ocaml.pod:5
19512 msgid "guestfs-ocaml - How to use libguestfs from OCaml"
19513 msgstr ""
19514
19515 #. type: textblock
19516 #: ../ocaml/examples/guestfs-ocaml.pod:9
19517 msgid "Module style:"
19518 msgstr ""
19519
19520 #. type: verbatim
19521 #: ../ocaml/examples/guestfs-ocaml.pod:11
19522 #, no-wrap
19523 msgid ""
19524 " let g = Guestfs.create () in\n"
19525 " Guestfs.add_drive_opts g ~format:\"raw\" ~readonly:true \"disk.img\";\n"
19526 " Guestfs.launch g;\n"
19527 "\n"
19528 msgstr ""
19529
19530 #. type: textblock
19531 #: ../ocaml/examples/guestfs-ocaml.pod:15
19532 msgid "Object-oriented style:"
19533 msgstr ""
19534
19535 #. type: verbatim
19536 #: ../ocaml/examples/guestfs-ocaml.pod:17
19537 #, no-wrap
19538 msgid ""
19539 " let g = new Guestfs.guestfs () in\n"
19540 " g#add_drive_opts ~format:\"raw\" ~readonly:true \"disk.img\";\n"
19541 " g#launch ();\n"
19542 "\n"
19543 msgstr ""
19544
19545 #. type: verbatim
19546 #: ../ocaml/examples/guestfs-ocaml.pod:21
19547 #, no-wrap
19548 msgid ""
19549 " ocamlfind opt prog.ml -package guestfs -linkpkg -o prog\n"
19550 "or:\n"
19551 " ocamlopt -I +guestfs mlguestfs.cmxa prog.ml -o prog\n"
19552 "\n"
19553 msgstr ""
19554
19555 #. type: textblock
19556 #: ../ocaml/examples/guestfs-ocaml.pod:27
19557 msgid ""
19558 "This manual page documents how to call libguestfs from the OCaml programming "
19559 "language.  This page just documents the differences from the C API and gives "
19560 "some examples.  If you are not familiar with using libguestfs, you also need "
19561 "to read L<guestfs(3)>."
19562 msgstr ""
19563
19564 #. type: =head2
19565 #: ../ocaml/examples/guestfs-ocaml.pod:32
19566 msgid "PROGRAMMING STYLES"
19567 msgstr ""
19568
19569 #. type: textblock
19570 #: ../ocaml/examples/guestfs-ocaml.pod:34
19571 msgid ""
19572 "There are two different programming styles supported by the OCaml bindings.  "
19573 "You can use a module style, with each C function mapped to an OCaml "
19574 "function:"
19575 msgstr ""
19576
19577 #. type: verbatim
19578 #: ../ocaml/examples/guestfs-ocaml.pod:38
19579 #, no-wrap
19580 msgid ""
19581 " int guestfs_set_verbose (guestfs_h *g, int flag);\n"
19582 "\n"
19583 msgstr ""
19584
19585 #. type: textblock
19586 #: ../ocaml/examples/guestfs-ocaml.pod:40
19587 msgid "becomes:"
19588 msgstr ""
19589
19590 #. type: verbatim
19591 #: ../ocaml/examples/guestfs-ocaml.pod:42
19592 #, no-wrap
19593 msgid ""
19594 " val Guestfs.set_verbose : Guestfs.t -> bool -> unit\n"
19595 "\n"
19596 msgstr ""
19597
19598 #. type: textblock
19599 #: ../ocaml/examples/guestfs-ocaml.pod:44
19600 msgid ""
19601 "Alternately you can use an object-oriented style, calling methods on the "
19602 "class C<Guestfs.guestfs>:"
19603 msgstr ""
19604
19605 #. type: verbatim
19606 #: ../ocaml/examples/guestfs-ocaml.pod:47
19607 #, no-wrap
19608 msgid ""
19609 " method set_verbose : bool -> unit\n"
19610 "\n"
19611 msgstr ""
19612
19613 #. type: textblock
19614 #: ../ocaml/examples/guestfs-ocaml.pod:49
19615 msgid ""
19616 "The object-oriented style is usually briefer, and the minor performance "
19617 "penalty isn't noticable in the general overhead of performing libguestfs "
19618 "functions."
19619 msgstr ""
19620
19621 #. type: textblock
19622 #: ../ocaml/examples/guestfs-ocaml.pod:55
19623 msgid ""
19624 "The handle is closed when it is reaped by the garbage collector.  Because "
19625 "libguestfs handles include a lot of state, it is also possible to close (and "
19626 "hence free) them explicitly by calling C<Guestfs.close> or the C<#close> "
19627 "method."
19628 msgstr ""
19629
19630 #. type: textblock
19631 #: ../ocaml/examples/guestfs-ocaml.pod:62
19632 msgid ""
19633 "Errors from libguestfs functions are mapped into the C<Guestfs.Error> "
19634 "exception.  This has a single parameter which is the error message (a "
19635 "string)."
19636 msgstr ""
19637
19638 #. type: textblock
19639 #: ../ocaml/examples/guestfs-ocaml.pod:66
19640 msgid ""
19641 "Calling any function/method on a closed handle raises "
19642 "C<Guestfs.Handle_closed>.  The single parameter is the name of the function "
19643 "that you called."
19644 msgstr ""
19645
19646 #. type: textblock
19647 #: ../ocaml/examples/guestfs-ocaml.pod:80
19648 msgid ""
19649 "L<guestfs(3)>, L<guestfs-examples(3)>, L<guestfs-java(3)>, "
19650 "L<guestfs-perl(3)>, L<guestfs-python(3)>, L<guestfs-recipes(1)>, "
19651 "L<guestfs-ruby(3)>, L<http://libguestfs.org/>, L<http://caml.inria.fr/>."
19652 msgstr ""
19653
19654 #. type: textblock
19655 #: ../perl/examples/guestfs-perl.pod:5
19656 msgid "guestfs-perl - How to use libguestfs from Perl"
19657 msgstr ""
19658
19659 #. type: verbatim
19660 #: ../perl/examples/guestfs-perl.pod:9
19661 #, no-wrap
19662 msgid ""
19663 " use Sys::Guestfs;\n"
19664 " \n"
19665 msgstr ""
19666
19667 #. type: verbatim
19668 #: ../perl/examples/guestfs-perl.pod:11
19669 #, no-wrap
19670 msgid ""
19671 " my $h = Sys::Guestfs->new ();\n"
19672 " $h->add_drive_opts ('guest.img', format => 'raw');\n"
19673 " $h->launch ();\n"
19674 " $h->mount_options ('', '/dev/sda1', '/');\n"
19675 " $h->touch ('/hello');\n"
19676 " $h->sync ();\n"
19677 "\n"
19678 msgstr ""
19679
19680 #. type: textblock
19681 #: ../perl/examples/guestfs-perl.pod:20
19682 msgid ""
19683 "This manual page documents how to call libguestfs from the Perl programming "
19684 "language.  This page just documents the differences from the C API and gives "
19685 "some examples.  If you are not familiar with using libguestfs, you also need "
19686 "to read L<guestfs(3)>.  To read the full Perl API, see L<Sys::Guestfs(3)>."
19687 msgstr ""
19688
19689 #. type: =head2
19690 #: ../perl/examples/guestfs-perl.pod:26
19691 msgid "ERRORS"
19692 msgstr ""
19693
19694 #. type: textblock
19695 #: ../perl/examples/guestfs-perl.pod:28
19696 msgid ""
19697 "Errors from libguestfs functions turn into calls to C<croak> (see "
19698 "L<Carp(3)>)."
19699 msgstr ""
19700
19701 #. type: textblock
19702 #: ../perl/examples/guestfs-perl.pod:41
19703 msgid ""
19704 "L<Sys::Guestfs(3)>, L<guestfs(3)>, L<guestfs-examples(3)>, "
19705 "L<guestfs-java(3)>, L<guestfs-ocaml(3)>, L<guestfs-python(3)>, "
19706 "L<guestfs-recipes(1)>, L<guestfs-ruby(3)>, L<http://libguestfs.org/>."
19707 msgstr ""
19708
19709 #. type: textblock
19710 #: ../python/examples/guestfs-python.pod:5
19711 msgid "guestfs-python - How to use libguestfs from Python"
19712 msgstr ""
19713
19714 #. type: verbatim
19715 #: ../python/examples/guestfs-python.pod:9
19716 #, no-wrap
19717 msgid ""
19718 " import guestfs\n"
19719 " g = guestfs.GuestFS ()\n"
19720 " g.add_drive_opts (\"disk.img\", format=\"raw\", readonly=1)\n"
19721 " g.launch\n"
19722 "\n"
19723 msgstr ""
19724
19725 #. type: textblock
19726 #: ../python/examples/guestfs-python.pod:16
19727 msgid ""
19728 "This manual page documents how to call libguestfs from the Python "
19729 "programming language.  This page just documents the differences from the C "
19730 "API and gives some examples.  If you are not familiar with using libguestfs, "
19731 "you also need to read L<guestfs(3)>."
19732 msgstr ""
19733
19734 #. type: textblock
19735 #: ../python/examples/guestfs-python.pod:23
19736 msgid ""
19737 "Errors from libguestfs functions are mapped into C<RuntimeException> with a "
19738 "single string argument which is the error message."
19739 msgstr ""
19740
19741 #. type: =head2
19742 #: ../python/examples/guestfs-python.pod:26
19743 msgid "MORE DOCUMENTATION"
19744 msgstr ""
19745
19746 #. type: textblock
19747 #: ../python/examples/guestfs-python.pod:28
19748 msgid "Type:"
19749 msgstr ""
19750
19751 #. type: verbatim
19752 #: ../python/examples/guestfs-python.pod:30
19753 #, no-wrap
19754 msgid ""
19755 " $ python\n"
19756 " >>> import guestfs\n"
19757 " >>> help (guestfs)\n"
19758 "\n"
19759 msgstr ""
19760
19761 #. type: textblock
19762 #: ../python/examples/guestfs-python.pod:44
19763 msgid ""
19764 "L<guestfs(3)>, L<guestfs-examples(3)>, L<guestfs-java(3)>, "
19765 "L<guestfs-ocaml(3)>, L<guestfs-perl(3)>, L<guestfs-recipes(1)>, "
19766 "L<guestfs-ruby(3)>, L<http://libguestfs.org/>."
19767 msgstr ""
19768
19769 #. type: textblock
19770 #: ../rescue/virt-rescue.pod:5
19771 msgid "virt-rescue - Run a rescue shell on a virtual machine"
19772 msgstr ""
19773
19774 #. type: verbatim
19775 #: ../rescue/virt-rescue.pod:9
19776 #, no-wrap
19777 msgid ""
19778 " virt-rescue [--options] -d domname\n"
19779 "\n"
19780 msgstr ""
19781
19782 #. type: verbatim
19783 #: ../rescue/virt-rescue.pod:11
19784 #, no-wrap
19785 msgid ""
19786 " virt-rescue [--options] -a disk.img [-a disk.img ...]\n"
19787 "\n"
19788 msgstr ""
19789
19790 #. type: verbatim
19791 #: ../rescue/virt-rescue.pod:15
19792 #, no-wrap
19793 msgid ""
19794 " virt-rescue [--options] domname\n"
19795 "\n"
19796 msgstr ""
19797
19798 #. type: verbatim
19799 #: ../rescue/virt-rescue.pod:17
19800 #, no-wrap
19801 msgid ""
19802 " virt-rescue [--options] disk.img [disk.img ...]\n"
19803 "\n"
19804 msgstr ""
19805
19806 #. type: textblock
19807 #: ../rescue/virt-rescue.pod:21
19808 msgid ""
19809 "You must I<not> use C<virt-rescue> on live virtual machines.  Doing so will "
19810 "probably result in disk corruption in the VM.  C<virt-rescue> tries to stop "
19811 "you from doing this, but doesn't catch all cases."
19812 msgstr ""
19813
19814 #. type: textblock
19815 #: ../rescue/virt-rescue.pod:25
19816 msgid ""
19817 "However if you use the I<--ro> (read only) option, then you can attach a "
19818 "shell to a live virtual machine.  The results might be strange or "
19819 "inconsistent at times but you won't get disk corruption."
19820 msgstr ""
19821
19822 #. type: textblock
19823 #: ../rescue/virt-rescue.pod:31
19824 msgid ""
19825 "virt-rescue is like a Rescue CD, but for virtual machines, and without the "
19826 "need for a CD.  virt-rescue gives you a rescue shell and some simple "
19827 "recovery tools which you can use to examine or rescue a virtual machine or "
19828 "disk image."
19829 msgstr ""
19830
19831 #. type: textblock
19832 #: ../rescue/virt-rescue.pod:36
19833 msgid ""
19834 "You can run virt-rescue on any virtual machine known to libvirt, or directly "
19835 "on disk image(s):"
19836 msgstr ""
19837
19838 #. type: verbatim
19839 #: ../rescue/virt-rescue.pod:39
19840 #, no-wrap
19841 msgid ""
19842 " virt-rescue -d GuestName\n"
19843 "\n"
19844 msgstr ""
19845
19846 #. type: verbatim
19847 #: ../rescue/virt-rescue.pod:41
19848 #, no-wrap
19849 msgid ""
19850 " virt-rescue --ro -a /path/to/disk.img\n"
19851 "\n"
19852 msgstr ""
19853
19854 #. type: verbatim
19855 #: ../rescue/virt-rescue.pod:43
19856 #, no-wrap
19857 msgid ""
19858 " virt-rescue -a /dev/sdc\n"
19859 "\n"
19860 msgstr ""
19861
19862 #. type: textblock
19863 #: ../rescue/virt-rescue.pod:45
19864 msgid "For live VMs you I<must> use the --ro option."
19865 msgstr ""
19866
19867 #. type: textblock
19868 #: ../rescue/virt-rescue.pod:47
19869 msgid ""
19870 "When you run virt-rescue on a virtual machine or disk image, you are placed "
19871 "in an interactive bash shell where you can use many ordinary Linux "
19872 "commands.  What you see in C</> (C</bin>, C</lib> etc) is the rescue "
19873 "appliance.  You must mount the virtual machine's filesystems by hand.  There "
19874 "is an empty directory called C</sysroot> where you can mount filesystems."
19875 msgstr ""
19876
19877 #. type: textblock
19878 #: ../rescue/virt-rescue.pod:54
19879 msgid ""
19880 "In the example below, we list logical volumes, then choose one to mount "
19881 "under C</sysroot>:"
19882 msgstr ""
19883
19884 #. type: verbatim
19885 #: ../rescue/virt-rescue.pod:57
19886 #, no-wrap
19887 msgid ""
19888 " ><rescue> lvs\n"
19889 " LV      VG        Attr   LSize   Origin Snap%  Move Log Copy%  Convert\n"
19890 " lv_root vg_f11x64 -wi-a-   8.83G\n"
19891 " lv_swap vg_f11x64 -wi-a- 992.00M\n"
19892 " ><rescue> mount /dev/vg_f11x64/lv_root /sysroot\n"
19893 " ><rescue> ls /sysroot\n"
19894 "\n"
19895 msgstr ""
19896
19897 #. type: textblock
19898 #: ../rescue/virt-rescue.pod:64
19899 msgid ""
19900 "If you don't know what filesystems are available on the virtual machine then "
19901 "you can use commands such as L<parted(8)> and L<lvs(8)> to find out."
19902 msgstr ""
19903
19904 #. type: textblock
19905 #: ../rescue/virt-rescue.pod:70
19906 msgid ""
19907 "Virt-rescue can be used on I<any> disk image file or device, not just a "
19908 "virtual machine.  For example you can use it on a blank file if you want to "
19909 "partition that file (although we would recommend using L<guestfish(1)> "
19910 "instead as it is more suitable for this purpose).  You can even use "
19911 "virt-rescue on things like SD cards."
19912 msgstr ""
19913
19914 #. type: textblock
19915 #: ../rescue/virt-rescue.pod:76
19916 msgid ""
19917 "Virt-rescue does not require root.  You only need to run it as root if you "
19918 "need root to open the disk image."
19919 msgstr ""
19920
19921 #. type: textblock
19922 #: ../rescue/virt-rescue.pod:79
19923 msgid ""
19924 "This tool is just designed for quick interactive hacking on a virtual "
19925 "machine.  For more structured access to a virtual machine disk image, you "
19926 "should use L<guestfs(3)>.  To get a structured shell that you can use to "
19927 "make scripted changes to guests, use L<guestfish(1)>."
19928 msgstr ""
19929
19930 #. type: =item
19931 #: ../rescue/virt-rescue.pod:103
19932 msgid "B<--append kernelopts>"
19933 msgstr ""
19934
19935 #. type: textblock
19936 #: ../rescue/virt-rescue.pod:105
19937 msgid "Pass additional options to the rescue kernel."
19938 msgstr ""
19939
19940 #. type: verbatim
19941 #: ../rescue/virt-rescue.pod:135
19942 #, no-wrap
19943 msgid ""
19944 " virt-rescue --format=raw -a disk.img\n"
19945 "\n"
19946 msgstr ""
19947
19948 #. type: verbatim
19949 #: ../rescue/virt-rescue.pod:139
19950 #, no-wrap
19951 msgid ""
19952 " virt-rescue --format=raw -a disk.img --format -a another.img\n"
19953 "\n"
19954 msgstr ""
19955
19956 #. type: =item
19957 #: ../rescue/virt-rescue.pod:148
19958 msgid "B<-m MB>"
19959 msgstr ""
19960
19961 #. type: =item
19962 #: ../rescue/virt-rescue.pod:150
19963 msgid "B<--memsize MB>"
19964 msgstr ""
19965
19966 #. type: textblock
19967 #: ../rescue/virt-rescue.pod:152
19968 msgid ""
19969 "Change the amount of memory allocated to the rescue system.  The default is "
19970 "set by libguestfs and is small but adequate for running system tools.  The "
19971 "occasional program might need more memory.  The parameter is specified in "
19972 "megabytes."
19973 msgstr ""
19974
19975 #. type: =item
19976 #: ../rescue/virt-rescue.pod:157
19977 msgid "B<--network>"
19978 msgstr ""
19979
19980 #. type: textblock
19981 #: ../rescue/virt-rescue.pod:159
19982 msgid "Enable QEMU user networking in the guest.  See L</NETWORK>."
19983 msgstr ""
19984
19985 #. type: textblock
19986 #: ../rescue/virt-rescue.pod:165
19987 msgid "Open the image read-only."
19988 msgstr ""
19989
19990 #. type: textblock
19991 #: ../rescue/virt-rescue.pod:175
19992 msgid ""
19993 "Enable SELinux in the rescue appliance.  You should read "
19994 "L<guestfs(3)/SELINUX> before using this option."
19995 msgstr ""
19996
19997 #. type: textblock
19998 #: ../rescue/virt-rescue.pod:194
19999 msgid ""
20000 "This changes the I<-a> and I<-d> options so that disks are added and mounts "
20001 "are done read-write."
20002 msgstr ""
20003
20004 #. type: textblock
20005 #: ../rescue/virt-rescue.pod:207
20006 msgid "Previous versions of virt-rescue allowed you to write either:"
20007 msgstr ""
20008
20009 #. type: verbatim
20010 #: ../rescue/virt-rescue.pod:209
20011 #, no-wrap
20012 msgid ""
20013 " virt-rescue disk.img [disk.img ...]\n"
20014 "\n"
20015 msgstr ""
20016
20017 #. type: verbatim
20018 #: ../rescue/virt-rescue.pod:213
20019 #, no-wrap
20020 msgid ""
20021 " virt-rescue guestname\n"
20022 "\n"
20023 msgstr ""
20024
20025 #. type: =head1
20026 #: ../rescue/virt-rescue.pod:221
20027 msgid "NETWORK"
20028 msgstr ""
20029
20030 #. type: textblock
20031 #: ../rescue/virt-rescue.pod:223
20032 msgid ""
20033 "Adding the I<--network> option enables QEMU user networking in the rescue "
20034 "appliance.  There are some differences between user networking and ordinary "
20035 "networking:"
20036 msgstr ""
20037
20038 #. type: =item
20039 #: ../rescue/virt-rescue.pod:229
20040 msgid "ping does not work"
20041 msgstr ""
20042
20043 #. type: textblock
20044 #: ../rescue/virt-rescue.pod:231
20045 msgid ""
20046 "Because the ICMP ECHO_REQUEST protocol generally requires root in order to "
20047 "send the ping packets, and because virt-rescue must be able to run as "
20048 "non-root, QEMU user networking is not able to emulate the L<ping(8)> "
20049 "command.  The ping command will appear to resolve addresses but will not be "
20050 "able to send or receive any packets.  This does not mean that the network is "
20051 "not working."
20052 msgstr ""
20053
20054 #. type: =item
20055 #: ../rescue/virt-rescue.pod:238
20056 msgid "cannot receive connections"
20057 msgstr ""
20058
20059 #. type: textblock
20060 #: ../rescue/virt-rescue.pod:240
20061 msgid "QEMU user networking cannot receive incoming connections."
20062 msgstr ""
20063
20064 #. type: =item
20065 #: ../rescue/virt-rescue.pod:242
20066 msgid "making TCP connections"
20067 msgstr ""
20068
20069 #. type: textblock
20070 #: ../rescue/virt-rescue.pod:244
20071 msgid ""
20072 "The virt-rescue appliance needs to be small and so does not include many "
20073 "network tools.  In particular there is no L<telnet(1)> command.  You can "
20074 "make TCP connections from the shell using the magical "
20075 "C</dev/tcp/E<lt>hostnameE<gt>/E<lt>portE<gt>> syntax:"
20076 msgstr ""
20077
20078 #. type: verbatim
20079 #: ../rescue/virt-rescue.pod:249
20080 #, no-wrap
20081 msgid ""
20082 " exec 3<>/dev/tcp/redhat.com/80\n"
20083 " echo \"GET /\" >&3\n"
20084 " cat <&3\n"
20085 "\n"
20086 msgstr ""
20087
20088 #. type: textblock
20089 #: ../rescue/virt-rescue.pod:253
20090 msgid "See L<bash(1)> for more details."
20091 msgstr ""
20092
20093 #. type: textblock
20094 #: ../rescue/virt-rescue.pod:259
20095 msgid ""
20096 "Several environment variables affect virt-rescue.  See "
20097 "L<guestfs(3)/ENVIRONMENT VARIABLES> for the complete list."
20098 msgstr ""
20099
20100 #. type: textblock
20101 #: ../rescue/virt-rescue.pod:286
20102 msgid ""
20103 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-edit(1)>, "
20104 "L<http://libguestfs.org/>."
20105 msgstr ""
20106
20107 #. type: textblock
20108 #: ../resize/virt-resize.pod:5
20109 msgid "virt-resize - Resize a virtual machine disk"
20110 msgstr ""
20111
20112 #. type: verbatim
20113 #: ../resize/virt-resize.pod:9
20114 #, no-wrap
20115 msgid ""
20116 " virt-resize [--resize /dev/sdaN=[+/-]<size>[%]]\n"
20117 "   [--expand /dev/sdaN] [--shrink /dev/sdaN]\n"
20118 "   [--ignore /dev/sdaN] [--delete /dev/sdaN] [...] indisk outdisk\n"
20119 "\n"
20120 msgstr ""
20121
20122 #. type: textblock
20123 #: ../resize/virt-resize.pod:15
20124 msgid ""
20125 "Virt-resize is a tool which can resize a virtual machine disk, making it "
20126 "larger or smaller overall, and resizing or deleting any partitions contained "
20127 "within."
20128 msgstr ""
20129
20130 #. type: textblock
20131 #: ../resize/virt-resize.pod:19
20132 msgid ""
20133 "Virt-resize B<cannot> resize disk images in-place.  Virt-resize B<should "
20134 "not> be used on live virtual machines - for consistent results, shut the "
20135 "virtual machine down before resizing it."
20136 msgstr ""
20137
20138 #. type: textblock
20139 #: ../resize/virt-resize.pod:23
20140 msgid ""
20141 "If you are not familiar with the associated tools: L<virt-filesystems(1)> "
20142 "and L<virt-df(1)>, we recommend you go and read those manual pages first."
20143 msgstr ""
20144
20145 #. type: =item
20146 #: ../resize/virt-resize.pod:31 ../resize/virt-resize.pod:520 ../src/guestfs.pod:469 ../src/guestfs.pod:1257 ../src/guestfs.pod:1396 ../src/guestfs.pod:2574
20147 msgid "1."
20148 msgstr ""
20149
20150 #. type: textblock
20151 #: ../resize/virt-resize.pod:33
20152 msgid ""
20153 "Copy C<olddisk> to C<newdisk>, extending one of the guest's partitions to "
20154 "fill the extra 5GB of space."
20155 msgstr ""
20156
20157 #. type: verbatim
20158 #: ../resize/virt-resize.pod:36
20159 #, no-wrap
20160 msgid ""
20161 " virt-filesystems --long -h --all -a olddisk\n"
20162 " \n"
20163 msgstr ""
20164
20165 #. type: verbatim
20166 #: ../resize/virt-resize.pod:38
20167 #, no-wrap
20168 msgid ""
20169 " truncate -r olddisk newdisk\n"
20170 " truncate -s +5G newdisk\n"
20171 " \n"
20172 msgstr ""
20173
20174 #. type: verbatim
20175 #: ../resize/virt-resize.pod:41
20176 #, no-wrap
20177 msgid ""
20178 " # Note \"/dev/sda2\" is a partition inside the \"olddisk\" file.\n"
20179 " virt-resize --expand /dev/sda2 olddisk newdisk\n"
20180 "\n"
20181 msgstr ""
20182
20183 #. type: =item
20184 #: ../resize/virt-resize.pod:44 ../resize/virt-resize.pod:527 ../src/guestfs.pod:475 ../src/guestfs.pod:1261 ../src/guestfs.pod:1400 ../src/guestfs.pod:2599
20185 msgid "2."
20186 msgstr ""
20187
20188 #. type: textblock
20189 #: ../resize/virt-resize.pod:46
20190 msgid ""
20191 "As above, but make the /boot partition 200MB bigger, while giving the "
20192 "remaining space to /dev/sda2:"
20193 msgstr ""
20194
20195 #. type: verbatim
20196 #: ../resize/virt-resize.pod:49
20197 #, no-wrap
20198 msgid ""
20199 " virt-resize --resize /dev/sda1=+200M --expand /dev/sda2 \\\n"
20200 "   olddisk newdisk\n"
20201 "\n"
20202 msgstr ""
20203
20204 #. type: =item
20205 #: ../resize/virt-resize.pod:52 ../resize/virt-resize.pod:533 ../src/guestfs.pod:486 ../src/guestfs.pod:1406
20206 msgid "3."
20207 msgstr ""
20208
20209 #. type: textblock
20210 #: ../resize/virt-resize.pod:54
20211 msgid ""
20212 "As in the first example, but expand a logical volume as the final step.  "
20213 "This is what you would typically use for Linux guests that use LVM:"
20214 msgstr ""
20215
20216 #. type: verbatim
20217 #: ../resize/virt-resize.pod:58
20218 #, no-wrap
20219 msgid ""
20220 " virt-resize --expand /dev/sda2 --LV-expand /dev/vg_guest/lv_root \\\n"
20221 "   olddisk newdisk\n"
20222 "\n"
20223 msgstr ""
20224
20225 #. type: =item
20226 #: ../resize/virt-resize.pod:61
20227 msgid "4."
20228 msgstr ""
20229
20230 #. type: textblock
20231 #: ../resize/virt-resize.pod:63
20232 msgid ""
20233 "As in the first example, but the output format will be qcow2 instead of a "
20234 "raw disk:"
20235 msgstr ""
20236
20237 #. type: verbatim
20238 #: ../resize/virt-resize.pod:66
20239 #, no-wrap
20240 msgid ""
20241 " qemu-img create -f qcow2 newdisk.qcow2 15G\n"
20242 " virt-resize --expand /dev/sda2 olddisk newdisk.qcow2\n"
20243 "\n"
20244 msgstr ""
20245
20246 #. type: =head1
20247 #: ../resize/virt-resize.pod:71
20248 msgid "DETAILED USAGE"
20249 msgstr ""
20250
20251 #. type: =head2
20252 #: ../resize/virt-resize.pod:73
20253 msgid "EXPANDING A VIRTUAL MACHINE DISK"
20254 msgstr ""
20255
20256 #. type: =item
20257 #: ../resize/virt-resize.pod:77
20258 msgid "1. Shut down the virtual machine"
20259 msgstr ""
20260
20261 #. type: =item
20262 #: ../resize/virt-resize.pod:79
20263 msgid "2. Locate input disk image"
20264 msgstr ""
20265
20266 #. type: textblock
20267 #: ../resize/virt-resize.pod:81
20268 msgid ""
20269 "Locate the input disk image (ie. the file or device on the host containing "
20270 "the guest's disk).  If the guest is managed by libvirt, you can use C<virsh "
20271 "dumpxml> like this to find the disk image name:"
20272 msgstr ""
20273
20274 #. type: verbatim
20275 #: ../resize/virt-resize.pod:85
20276 #, no-wrap
20277 msgid ""
20278 " # virsh dumpxml guestname | xpath /domain/devices/disk/source\n"
20279 " Found 1 nodes:\n"
20280 " -- NODE --\n"
20281 " <source dev=\"/dev/vg/lv_guest\" />\n"
20282 "\n"
20283 msgstr ""
20284
20285 #. type: =item
20286 #: ../resize/virt-resize.pod:90
20287 msgid "3. Look at current sizing"
20288 msgstr ""
20289
20290 #. type: textblock
20291 #: ../resize/virt-resize.pod:92
20292 msgid "Use L<virt-filesystems(1)> to display the current partitions and sizes:"
20293 msgstr ""
20294
20295 #. type: verbatim
20296 #: ../resize/virt-resize.pod:95
20297 #, no-wrap
20298 msgid ""
20299 " # virt-filesystems --long --parts --blkdevs -h -a /dev/vg/lv_guest\n"
20300 " Name       Type       Size  Parent\n"
20301 " /dev/sda1  partition  101M  /dev/sda\n"
20302 " /dev/sda2  partition  7.9G  /dev/sda\n"
20303 " /dev/sda   device     8.0G  -\n"
20304 "\n"
20305 msgstr ""
20306
20307 #. type: textblock
20308 #: ../resize/virt-resize.pod:101
20309 msgid ""
20310 "(This example is a virtual machine with an 8 GB disk which we would like to "
20311 "expand up to 10 GB)."
20312 msgstr ""
20313
20314 #. type: =item
20315 #: ../resize/virt-resize.pod:104
20316 msgid "4. Create output disk"
20317 msgstr ""
20318
20319 #. type: textblock
20320 #: ../resize/virt-resize.pod:106
20321 msgid ""
20322 "Virt-resize cannot do in-place disk modifications.  You have to have space "
20323 "to store the resized output disk."
20324 msgstr ""
20325
20326 #. type: textblock
20327 #: ../resize/virt-resize.pod:109
20328 msgid "To store the resized disk image in a file, create a file of a suitable size:"
20329 msgstr ""
20330
20331 #. type: verbatim
20332 #: ../resize/virt-resize.pod:112
20333 #, no-wrap
20334 msgid ""
20335 " # rm -f outdisk\n"
20336 " # truncate -s 10G outdisk\n"
20337 "\n"
20338 msgstr ""
20339
20340 #. type: textblock
20341 #: ../resize/virt-resize.pod:115
20342 msgid "Or use L<lvcreate(1)> to create a logical volume:"
20343 msgstr ""
20344
20345 #. type: verbatim
20346 #: ../resize/virt-resize.pod:117
20347 #, no-wrap
20348 msgid ""
20349 " # lvcreate -L 10G -n lv_name vg_name\n"
20350 "\n"
20351 msgstr ""
20352
20353 #. type: textblock
20354 #: ../resize/virt-resize.pod:119
20355 msgid "Or use L<virsh(1)> vol-create-as to create a libvirt storage volume:"
20356 msgstr ""
20357
20358 #. type: verbatim
20359 #: ../resize/virt-resize.pod:121
20360 #, no-wrap
20361 msgid ""
20362 " # virsh pool-list\n"
20363 " # virsh vol-create-as poolname newvol 10G\n"
20364 "\n"
20365 msgstr ""
20366
20367 #. type: =item
20368 #: ../resize/virt-resize.pod:124
20369 msgid "5. Resize"
20370 msgstr ""
20371
20372 #. type: textblock
20373 #: ../resize/virt-resize.pod:126
20374 msgid ""
20375 "virt-resize takes two mandatory parameters, the input disk (eg. device or "
20376 "file) and the output disk.  The output disk is the one created in the "
20377 "previous step."
20378 msgstr ""
20379
20380 #. type: verbatim
20381 #: ../resize/virt-resize.pod:130
20382 #, no-wrap
20383 msgid ""
20384 " # virt-resize indisk outdisk\n"
20385 "\n"
20386 msgstr ""
20387
20388 #. type: textblock
20389 #: ../resize/virt-resize.pod:132
20390 msgid ""
20391 "This command just copies disk image C<indisk> to disk image C<outdisk> "
20392 "I<without> resizing or changing any existing partitions.  If C<outdisk> is "
20393 "larger, then an extra, empty partition is created at the end of the disk "
20394 "covering the extra space.  If C<outdisk> is smaller, then it will give an "
20395 "error."
20396 msgstr ""
20397
20398 #. type: textblock
20399 #: ../resize/virt-resize.pod:138
20400 msgid ""
20401 "More realistically you'd want to expand existing partitions in the disk "
20402 "image by passing extra options (for the full list see the L</OPTIONS> "
20403 "section below)."
20404 msgstr ""
20405
20406 #. type: textblock
20407 #: ../resize/virt-resize.pod:142
20408 msgid ""
20409 "L</--expand> is the most useful option.  It expands the named partition "
20410 "within the disk to fill any extra space:"
20411 msgstr ""
20412
20413 #. type: verbatim
20414 #: ../resize/virt-resize.pod:145
20415 #, no-wrap
20416 msgid ""
20417 " # virt-resize --expand /dev/sda2 indisk outdisk\n"
20418 "\n"
20419 msgstr ""
20420
20421 #. type: textblock
20422 #: ../resize/virt-resize.pod:147
20423 msgid ""
20424 "(In this case, an extra partition is I<not> created at the end of the disk, "
20425 "because there will be no unused space)."
20426 msgstr ""
20427
20428 #. type: textblock
20429 #: ../resize/virt-resize.pod:150
20430 msgid ""
20431 "L</--resize> is the other commonly used option.  The following would "
20432 "increase the size of /dev/sda1 by 200M, and expand /dev/sda2 to fill the "
20433 "rest of the available space:"
20434 msgstr ""
20435
20436 #. type: verbatim
20437 #: ../resize/virt-resize.pod:154
20438 #, no-wrap
20439 msgid ""
20440 " # virt-resize --resize /dev/sda1=+200M --expand /dev/sda2 \\\n"
20441 "     indisk outdisk\n"
20442 "\n"
20443 msgstr ""
20444
20445 #. type: textblock
20446 #: ../resize/virt-resize.pod:157
20447 msgid ""
20448 "If the expanded partition in the image contains a filesystem or LVM PV, then "
20449 "if virt-resize knows how, it will resize the contents, the equivalent of "
20450 "calling a command such as L<pvresize(8)>, L<resize2fs(8)>, L<ntfsresize(8)> "
20451 "or L<btrfs(8)>.  However virt-resize does not know how to resize some "
20452 "filesystems, so you would have to online resize them after booting the "
20453 "guest."
20454 msgstr ""
20455
20456 #. type: textblock
20457 #: ../resize/virt-resize.pod:164
20458 msgid "Other options are covered below."
20459 msgstr ""
20460
20461 #. type: =item
20462 #: ../resize/virt-resize.pod:166
20463 msgid "6. Test"
20464 msgstr ""
20465
20466 #. type: textblock
20467 #: ../resize/virt-resize.pod:168
20468 msgid "Thoroughly test the new disk image I<before> discarding the old one."
20469 msgstr ""
20470
20471 #. type: textblock
20472 #: ../resize/virt-resize.pod:170
20473 msgid "If you are using libvirt, edit the XML to point at the new disk:"
20474 msgstr ""
20475
20476 #. type: verbatim
20477 #: ../resize/virt-resize.pod:172
20478 #, no-wrap
20479 msgid ""
20480 " # virsh edit guestname\n"
20481 "\n"
20482 msgstr ""
20483
20484 #. type: textblock
20485 #: ../resize/virt-resize.pod:174
20486 msgid ""
20487 "Change E<lt>source ...E<gt>, see "
20488 "L<http://libvirt.org/formatdomain.html#elementsDisks>"
20489 msgstr ""
20490
20491 #. type: textblock
20492 #: ../resize/virt-resize.pod:177
20493 msgid "Then start up the domain with the new, resized disk:"
20494 msgstr ""
20495
20496 #. type: verbatim
20497 #: ../resize/virt-resize.pod:179
20498 #, no-wrap
20499 msgid ""
20500 " # virsh start guestname\n"
20501 "\n"
20502 msgstr ""
20503
20504 #. type: textblock
20505 #: ../resize/virt-resize.pod:181
20506 msgid ""
20507 "and check that it still works.  See also the L</NOTES> section below for "
20508 "additional information."
20509 msgstr ""
20510
20511 #. type: =item
20512 #: ../resize/virt-resize.pod:184
20513 msgid "7. Resize LVs etc inside the guest"
20514 msgstr ""
20515
20516 #. type: textblock
20517 #: ../resize/virt-resize.pod:186
20518 msgid "(This can also be done offline using L<guestfish(1)>)"
20519 msgstr ""
20520
20521 #. type: textblock
20522 #: ../resize/virt-resize.pod:188
20523 msgid ""
20524 "Once the guest has booted you should see the new space available, at least "
20525 "for filesystems that virt-resize knows how to resize, and for PVs.  The user "
20526 "may need to resize LVs inside PVs, and also resize filesystem types that "
20527 "virt-resize does not know how to expand."
20528 msgstr ""
20529
20530 #. type: =head2
20531 #: ../resize/virt-resize.pod:195
20532 msgid "SHRINKING A VIRTUAL MACHINE DISK"
20533 msgstr ""
20534
20535 #. type: textblock
20536 #: ../resize/virt-resize.pod:197
20537 msgid ""
20538 "Shrinking is somewhat more complex than expanding, and only an overview is "
20539 "given here."
20540 msgstr ""
20541
20542 #. type: textblock
20543 #: ../resize/virt-resize.pod:200
20544 msgid ""
20545 "Firstly virt-resize will not attempt to shrink any partition content (PVs, "
20546 "filesystems).  The user has to shrink content before passing the disk image "
20547 "to virt-resize, and virt-resize will check that the content has been shrunk "
20548 "properly."
20549 msgstr ""
20550
20551 #. type: textblock
20552 #: ../resize/virt-resize.pod:205
20553 msgid "(Shrinking can also be done offline using L<guestfish(1)>)"
20554 msgstr ""
20555
20556 #. type: textblock
20557 #: ../resize/virt-resize.pod:207
20558 msgid ""
20559 "After shrinking PVs and filesystems, shut down the guest, and proceed with "
20560 "steps 3 and 4 above to allocate a new disk image."
20561 msgstr ""
20562
20563 #. type: textblock
20564 #: ../resize/virt-resize.pod:210
20565 msgid "Then run virt-resize with any of the I<--shrink> and/or I<--resize> options."
20566 msgstr ""
20567
20568 #. type: =head2
20569 #: ../resize/virt-resize.pod:213
20570 msgid "IGNORING OR DELETING PARTITIONS"
20571 msgstr ""
20572
20573 #. type: textblock
20574 #: ../resize/virt-resize.pod:215
20575 msgid ""
20576 "virt-resize also gives a convenient way to ignore or delete partitions when "
20577 "copying from the input disk to the output disk.  Ignoring a partition speeds "
20578 "up the copy where you don't care about the existing contents of a "
20579 "partition.  Deleting a partition removes it completely, but note that it "
20580 "also renumbers any partitions after the one which is deleted, which can "
20581 "leave some guests unbootable."
20582 msgstr ""
20583
20584 #. type: =head2
20585 #: ../resize/virt-resize.pod:222
20586 msgid "QCOW2 AND NON-SPARSE RAW FORMATS"
20587 msgstr ""
20588
20589 #. type: textblock
20590 #: ../resize/virt-resize.pod:224
20591 msgid ""
20592 "If the input disk is in qcow2 format, then you may prefer that the output is "
20593 "in qcow2 format as well.  Alternately, virt-resize can convert the format on "
20594 "the fly.  The output format is simply determined by the format of the empty "
20595 "output container that you provide.  Thus to create qcow2 output, use:"
20596 msgstr ""
20597
20598 #. type: verbatim
20599 #: ../resize/virt-resize.pod:230
20600 #, no-wrap
20601 msgid ""
20602 " qemu-img create [-c] -f qcow2 outdisk [size]\n"
20603 "\n"
20604 msgstr ""
20605
20606 #. type: textblock
20607 #: ../resize/virt-resize.pod:232
20608 msgid "instead of the truncate command (use I<-c> for a compressed disk)."
20609 msgstr ""
20610
20611 #. type: textblock
20612 #: ../resize/virt-resize.pod:234
20613 msgid "Similarly, to get non-sparse raw output use:"
20614 msgstr ""
20615
20616 #. type: verbatim
20617 #: ../resize/virt-resize.pod:236
20618 #, no-wrap
20619 msgid ""
20620 " fallocate -l size outdisk\n"
20621 "\n"
20622 msgstr ""
20623
20624 #. type: textblock
20625 #: ../resize/virt-resize.pod:238
20626 msgid ""
20627 "(on older systems that don't have the L<fallocate(1)> command use C<dd "
20628 "if=/dev/zero of=outdisk bs=1M count=..>)"
20629 msgstr ""
20630
20631 #. type: textblock
20632 #: ../resize/virt-resize.pod:247
20633 msgid "Display help."
20634 msgstr ""
20635
20636 #. type: =item
20637 #: ../resize/virt-resize.pod:249
20638 msgid "B<-d>"
20639 msgstr ""
20640
20641 #. type: =item
20642 #: ../resize/virt-resize.pod:251 ../tools/virt-make-fs.pl:177 ../tools/virt-win-reg.pl:120
20643 msgid "B<--debug>"
20644 msgstr ""
20645
20646 #. type: textblock
20647 #: ../resize/virt-resize.pod:253 ../tools/virt-win-reg.pl:122
20648 msgid "Enable debugging messages."
20649 msgstr ""
20650
20651 #. type: =item
20652 #: ../resize/virt-resize.pod:255
20653 msgid "B<--delete part>"
20654 msgstr ""
20655
20656 #. type: textblock
20657 #: ../resize/virt-resize.pod:257
20658 msgid ""
20659 "Delete the named partition.  It would be more accurate to describe this as "
20660 "\"don't copy it over\", since virt-resize doesn't do in-place changes and "
20661 "the original disk image is left intact."
20662 msgstr ""
20663
20664 #. type: textblock
20665 #: ../resize/virt-resize.pod:261
20666 msgid ""
20667 "Note that when you delete a partition, then anything contained in the "
20668 "partition is also deleted.  Furthermore, this causes any partitions that "
20669 "come after to be I<renumbered>, which can easily make your guest unbootable."
20670 msgstr ""
20671
20672 #. type: textblock
20673 #: ../resize/virt-resize.pod:266 ../resize/virt-resize.pod:327 ../resize/virt-resize.pod:454
20674 msgid "You can give this option multiple times."
20675 msgstr ""
20676
20677 #. type: =item
20678 #: ../resize/virt-resize.pod:268
20679 msgid "B<--expand part>"
20680 msgstr ""
20681
20682 #. type: textblock
20683 #: ../resize/virt-resize.pod:270
20684 msgid ""
20685 "Expand the named partition so it uses up all extra space (space left over "
20686 "after any other resize changes that you request have been done)."
20687 msgstr ""
20688
20689 #. type: textblock
20690 #: ../resize/virt-resize.pod:273
20691 msgid ""
20692 "If virt-resize knows how, it will expand the direct content of the "
20693 "partition.  For example, if the partition is an LVM PV, it will expand the "
20694 "PV to fit (like calling L<pvresize(8)>).  Virt-resize leaves any other "
20695 "content it doesn't know about alone."
20696 msgstr ""
20697
20698 #. type: textblock
20699 #: ../resize/virt-resize.pod:278
20700 msgid "Currently virt-resize can resize:"
20701 msgstr ""
20702
20703 #. type: textblock
20704 #: ../resize/virt-resize.pod:284
20705 msgid "ext2, ext3 and ext4 filesystems."
20706 msgstr ""
20707
20708 #. type: textblock
20709 #: ../resize/virt-resize.pod:288
20710 msgid "NTFS filesystems, if libguestfs was compiled with support for NTFS."
20711 msgstr ""
20712
20713 #. type: textblock
20714 #: ../resize/virt-resize.pod:290
20715 msgid ""
20716 "The filesystem must have been shut down consistently last time it was used.  "
20717 "Additionally, L<ntfsresize(8)> marks the resized filesystem as requiring a "
20718 "consistency check, so at the first boot after resizing Windows will check "
20719 "the disk."
20720 msgstr ""
20721
20722 #. type: textblock
20723 #: ../resize/virt-resize.pod:297
20724 msgid ""
20725 "LVM PVs (physical volumes).  virt-resize does not usually resize anything "
20726 "inside the PV, but see the I<--LV-expand> option.  The user could also "
20727 "resize LVs as desired after boot."
20728 msgstr ""
20729
20730 #. type: textblock
20731 #: ../resize/virt-resize.pod:303
20732 msgid "Btrfs filesystems, if libguestfs was compiled with support for btrfs."
20733 msgstr ""
20734
20735 #. type: textblock
20736 #: ../resize/virt-resize.pod:307 ../resize/virt-resize.pod:482
20737 msgid "Note that you cannot use I<--expand> and I<--shrink> together."
20738 msgstr ""
20739
20740 #. type: =item
20741 #: ../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
20742 msgid "B<--format> raw"
20743 msgstr ""
20744
20745 #. type: textblock
20746 #: ../resize/virt-resize.pod:311
20747 msgid ""
20748 "Specify the format of the input disk image.  If this flag is not given then "
20749 "it is auto-detected from the image itself."
20750 msgstr ""
20751
20752 #. type: textblock
20753 #: ../resize/virt-resize.pod:317
20754 msgid ""
20755 "Note that this option I<does not> affect the output format.  See L</QCOW2 "
20756 "AND NON-SPARSE RAW FORMATS>."
20757 msgstr ""
20758
20759 #. type: =item
20760 #: ../resize/virt-resize.pod:320
20761 msgid "B<--ignore part>"
20762 msgstr ""
20763
20764 #. type: textblock
20765 #: ../resize/virt-resize.pod:322
20766 msgid ""
20767 "Ignore the named partition.  Effectively this means the partition is "
20768 "allocated on the destination disk, but the content is not copied across from "
20769 "the source disk.  The content of the partition will be blank (all zero "
20770 "bytes)."
20771 msgstr ""
20772
20773 #. type: =item
20774 #: ../resize/virt-resize.pod:329
20775 msgid "B<--LV-expand logvol>"
20776 msgstr ""
20777
20778 #. type: textblock
20779 #: ../resize/virt-resize.pod:331
20780 msgid ""
20781 "This takes the logical volume and, as a final step, expands it to fill all "
20782 "the space available in its volume group.  A typical usage, assuming a Linux "
20783 "guest with a single PV C</dev/sda2> and a root device called "
20784 "C</dev/vg_guest/lv_root> would be:"
20785 msgstr ""
20786
20787 #. type: verbatim
20788 #: ../resize/virt-resize.pod:336
20789 #, no-wrap
20790 msgid ""
20791 " virt-resize indisk outdisk \\\n"
20792 "   --expand /dev/sda2 --LV-expand /dev/vg_guest/lv_root\n"
20793 "\n"
20794 msgstr ""
20795
20796 #. type: textblock
20797 #: ../resize/virt-resize.pod:339
20798 msgid ""
20799 "This would first expand the partition (and PV), and then expand the root "
20800 "device to fill the extra space in the PV."
20801 msgstr ""
20802
20803 #. type: textblock
20804 #: ../resize/virt-resize.pod:342
20805 msgid ""
20806 "The contents of the LV are also resized if virt-resize knows how to do "
20807 "that.  You can stop virt-resize from trying to expand the content by using "
20808 "the option I<--no-expand-content>."
20809 msgstr ""
20810
20811 #. type: textblock
20812 #: ../resize/virt-resize.pod:346
20813 msgid "Use L<virt-filesystems(1)> to list the filesystems in the guest."
20814 msgstr ""
20815
20816 #. type: textblock
20817 #: ../resize/virt-resize.pod:348
20818 msgid ""
20819 "You can give this option multiple times, I<but> it doesn't make sense to do "
20820 "this unless the logical volumes you specify are all in different volume "
20821 "groups."
20822 msgstr ""
20823
20824 #. type: =item
20825 #: ../resize/virt-resize.pod:352
20826 msgid "B<--machine-readable>"
20827 msgstr ""
20828
20829 #. type: textblock
20830 #: ../resize/virt-resize.pod:354
20831 msgid ""
20832 "This option is used to make the output more machine friendly when being "
20833 "parsed by other programs.  See L</MACHINE READABLE OUTPUT> below."
20834 msgstr ""
20835
20836 #. type: =item
20837 #: ../resize/virt-resize.pod:360
20838 msgid "B<--dryrun>"
20839 msgstr ""
20840
20841 #. type: textblock
20842 #: ../resize/virt-resize.pod:362
20843 msgid "Print a summary of what would be done, but don't do anything."
20844 msgstr ""
20845
20846 #. type: =item
20847 #: ../resize/virt-resize.pod:364
20848 msgid "B<--no-copy-boot-loader>"
20849 msgstr ""
20850
20851 #. type: textblock
20852 #: ../resize/virt-resize.pod:366
20853 msgid ""
20854 "By default, virt-resize copies over some sectors at the start of the disk "
20855 "(up to the beginning of the first partition).  Commonly these sectors "
20856 "contain the Master Boot Record (MBR) and the boot loader, and are required "
20857 "in order for the guest to boot correctly."
20858 msgstr ""
20859
20860 #. type: textblock
20861 #: ../resize/virt-resize.pod:371
20862 msgid ""
20863 "If you specify this flag, then this initial copy is not done.  You may need "
20864 "to reinstall the boot loader in this case."
20865 msgstr ""
20866
20867 #. type: =item
20868 #: ../resize/virt-resize.pod:374
20869 msgid "B<--no-extra-partition>"
20870 msgstr ""
20871
20872 #. type: textblock
20873 #: ../resize/virt-resize.pod:376
20874 msgid ""
20875 "By default, virt-resize creates an extra partition if there is any extra, "
20876 "unused space after all resizing has happened.  Use this option to prevent "
20877 "the extra partition from being created.  If you do this then the extra space "
20878 "will be inaccessible until you run fdisk, parted, or some other partitioning "
20879 "tool in the guest."
20880 msgstr ""
20881
20882 #. type: textblock
20883 #: ../resize/virt-resize.pod:382
20884 msgid ""
20885 "Note that if the surplus space is smaller than 10 MB, no extra partition "
20886 "will be created."
20887 msgstr ""
20888
20889 #. type: =item
20890 #: ../resize/virt-resize.pod:385
20891 msgid "B<--no-expand-content>"
20892 msgstr ""
20893
20894 #. type: textblock
20895 #: ../resize/virt-resize.pod:387
20896 msgid ""
20897 "By default, virt-resize will try to expand the direct contents of "
20898 "partitions, if it knows how (see I<--expand> option above)."
20899 msgstr ""
20900
20901 #. type: textblock
20902 #: ../resize/virt-resize.pod:390
20903 msgid ""
20904 "If you give the I<--no-expand-content> option then virt-resize will not "
20905 "attempt this."
20906 msgstr ""
20907
20908 #. type: =item
20909 #: ../resize/virt-resize.pod:393
20910 msgid "B<--ntfsresize-force>"
20911 msgstr ""
20912
20913 #. type: textblock
20914 #: ../resize/virt-resize.pod:395
20915 msgid ""
20916 "Pass the I<--force> option to L<ntfsresize(8)>, allowing resizing even if "
20917 "the NTFS disk is marked as needing a consistency check.  You have to use "
20918 "this option if you want to resize a Windows guest multiple times without "
20919 "booting into Windows between each resize."
20920 msgstr ""
20921
20922 #. type: =item
20923 #: ../resize/virt-resize.pod:401
20924 msgid "B<--output-format> raw"
20925 msgstr ""
20926
20927 #. type: textblock
20928 #: ../resize/virt-resize.pod:403
20929 msgid ""
20930 "Specify the format of the output disk image.  If this flag is not given then "
20931 "it is auto-detected from the image itself."
20932 msgstr ""
20933
20934 #. type: textblock
20935 #: ../resize/virt-resize.pod:409
20936 msgid ""
20937 "Note that this option I<does not create> the output format.  This option "
20938 "just tells libguestfs what it is so it doesn't try to guess it.  You still "
20939 "need to create the output disk with the right format.  See L</QCOW2 AND "
20940 "NON-SPARSE RAW FORMATS>."
20941 msgstr ""
20942
20943 #. type: =item
20944 #: ../resize/virt-resize.pod:414
20945 msgid "B<-q>"
20946 msgstr ""
20947
20948 #. type: =item
20949 #: ../resize/virt-resize.pod:416
20950 msgid "B<--quiet>"
20951 msgstr ""
20952
20953 #. type: textblock
20954 #: ../resize/virt-resize.pod:418
20955 msgid "Don't print the summary."
20956 msgstr ""
20957
20958 #. type: =item
20959 #: ../resize/virt-resize.pod:420
20960 msgid "B<--resize part=size>"
20961 msgstr ""
20962
20963 #. type: textblock
20964 #: ../resize/virt-resize.pod:422
20965 msgid ""
20966 "Resize the named partition (expanding or shrinking it) so that it has the "
20967 "given size."
20968 msgstr ""
20969
20970 #. type: textblock
20971 #: ../resize/virt-resize.pod:425
20972 msgid ""
20973 "C<size> can be expressed as an absolute number followed by b/K/M/G to mean "
20974 "bytes, Kilobytes, Megabytes, or Gigabytes; or as a percentage of the current "
20975 "size; or as a relative number or percentage.  For example:"
20976 msgstr ""
20977
20978 #. type: verbatim
20979 #: ../resize/virt-resize.pod:431
20980 #, no-wrap
20981 msgid ""
20982 " --resize /dev/sda2=10G\n"
20983 "\n"
20984 msgstr ""
20985
20986 #. type: verbatim
20987 #: ../resize/virt-resize.pod:433
20988 #, no-wrap
20989 msgid ""
20990 " --resize /dev/sda4=90%\n"
20991 "\n"
20992 msgstr ""
20993
20994 #. type: verbatim
20995 #: ../resize/virt-resize.pod:435
20996 #, no-wrap
20997 msgid ""
20998 " --resize /dev/sda2=+1G\n"
20999 "\n"
21000 msgstr ""
21001
21002 #. type: verbatim
21003 #: ../resize/virt-resize.pod:437
21004 #, no-wrap
21005 msgid ""
21006 " --resize /dev/sda2=-200M\n"
21007 "\n"
21008 msgstr ""
21009
21010 #. type: verbatim
21011 #: ../resize/virt-resize.pod:439
21012 #, no-wrap
21013 msgid ""
21014 " --resize /dev/sda1=+128K\n"
21015 "\n"
21016 msgstr ""
21017
21018 #. type: verbatim
21019 #: ../resize/virt-resize.pod:441
21020 #, no-wrap
21021 msgid ""
21022 " --resize /dev/sda1=+10%\n"
21023 "\n"
21024 msgstr ""
21025
21026 #. type: verbatim
21027 #: ../resize/virt-resize.pod:443
21028 #, no-wrap
21029 msgid ""
21030 " --resize /dev/sda1=-10%\n"
21031 "\n"
21032 msgstr ""
21033
21034 #. type: textblock
21035 #: ../resize/virt-resize.pod:445
21036 msgid ""
21037 "You can increase the size of any partition.  Virt-resize will expand the "
21038 "direct content of the partition if it knows how (see I<--expand> below)."
21039 msgstr ""
21040
21041 #. type: textblock
21042 #: ../resize/virt-resize.pod:449
21043 msgid ""
21044 "You can only I<decrease> the size of partitions that contain filesystems or "
21045 "PVs which have already been shrunk.  Virt-resize will check this has been "
21046 "done before proceeding, or else will print an error (see also "
21047 "I<--resize-force>)."
21048 msgstr ""
21049
21050 #. type: =item
21051 #: ../resize/virt-resize.pod:456
21052 msgid "B<--resize-force part=size>"
21053 msgstr ""
21054
21055 #. type: textblock
21056 #: ../resize/virt-resize.pod:458
21057 msgid ""
21058 "This is the same as I<--resize> except that it will let you decrease the "
21059 "size of any partition.  Generally this means you will lose any data which "
21060 "was at the end of the partition you shrink, but you may not care about that "
21061 "(eg. if shrinking an unused partition, or if you can easily recreate it such "
21062 "as a swap partition)."
21063 msgstr ""
21064
21065 #. type: textblock
21066 #: ../resize/virt-resize.pod:464
21067 msgid "See also the I<--ignore> option."
21068 msgstr ""
21069
21070 #. type: =item
21071 #: ../resize/virt-resize.pod:466
21072 msgid "B<--shrink part>"
21073 msgstr ""
21074
21075 #. type: textblock
21076 #: ../resize/virt-resize.pod:468
21077 msgid ""
21078 "Shrink the named partition until the overall disk image fits in the "
21079 "destination.  The named partition B<must> contain a filesystem or PV which "
21080 "has already been shrunk using another tool (eg. L<guestfish(1)> or other "
21081 "online tools).  Virt-resize will check this and give an error if it has not "
21082 "been done."
21083 msgstr ""
21084
21085 #. type: textblock
21086 #: ../resize/virt-resize.pod:474
21087 msgid ""
21088 "The amount by which the overall disk must be shrunk (after carrying out all "
21089 "other operations requested by the user) is called the \"deficit\".  For "
21090 "example, a straight copy (assume no other operations)  from a 5GB disk image "
21091 "to a 4GB disk image results in a 1GB deficit.  In this case, virt-resize "
21092 "would give an error unless the user specified a partition to shrink and that "
21093 "partition had more than a gigabyte of free space."
21094 msgstr ""
21095
21096 #. type: =head1
21097 #: ../resize/virt-resize.pod:492
21098 msgid "MACHINE READABLE OUTPUT"
21099 msgstr ""
21100
21101 #. type: textblock
21102 #: ../resize/virt-resize.pod:494
21103 msgid ""
21104 "The I<--machine-readable> option can be used to make the output more machine "
21105 "friendly, which is useful when calling virt-resize from other programs, GUIs "
21106 "etc."
21107 msgstr ""
21108
21109 #. type: textblock
21110 #: ../resize/virt-resize.pod:498
21111 msgid "There are two ways to use this option."
21112 msgstr ""
21113
21114 #. type: textblock
21115 #: ../resize/virt-resize.pod:500
21116 msgid ""
21117 "Firstly use the option on its own to query the capabilities of the "
21118 "virt-resize binary.  Typical output looks like this:"
21119 msgstr ""
21120
21121 #. type: verbatim
21122 #: ../resize/virt-resize.pod:503
21123 #, no-wrap
21124 msgid ""
21125 " $ virt-resize --machine-readable\n"
21126 " virt-resize\n"
21127 " ntfsresize-force\n"
21128 " 32bitok\n"
21129 " ntfs\n"
21130 " btrfs\n"
21131 "\n"
21132 msgstr ""
21133
21134 #. type: textblock
21135 #: ../resize/virt-resize.pod:510
21136 msgid ""
21137 "A list of features is printed, one per line, and the program exits with "
21138 "status 0."
21139 msgstr ""
21140
21141 #. type: textblock
21142 #: ../resize/virt-resize.pod:513
21143 msgid ""
21144 "Secondly use the option in conjunction with other options to make the "
21145 "regular program output more machine friendly."
21146 msgstr ""
21147
21148 #. type: textblock
21149 #: ../resize/virt-resize.pod:516
21150 msgid "At the moment this means:"
21151 msgstr ""
21152
21153 #. type: textblock
21154 #: ../resize/virt-resize.pod:522
21155 msgid ""
21156 "Progress bar messages can be parsed from stdout by looking for this regular "
21157 "expression:"
21158 msgstr ""
21159
21160 #. type: verbatim
21161 #: ../resize/virt-resize.pod:525
21162 #, no-wrap
21163 msgid ""
21164 " ^[0-9]+/[0-9]+$\n"
21165 "\n"
21166 msgstr ""
21167
21168 #. type: textblock
21169 #: ../resize/virt-resize.pod:529
21170 msgid ""
21171 "The calling program should treat messages sent to stdout (except for "
21172 "progress bar messages) as status messages.  They can be logged and/or "
21173 "displayed to the user."
21174 msgstr ""
21175
21176 #. type: textblock
21177 #: ../resize/virt-resize.pod:535
21178 msgid ""
21179 "The calling program should treat messages sent to stderr as error messages.  "
21180 "In addition, virt-resize exits with a non-zero status code if there was a "
21181 "fatal error."
21182 msgstr ""
21183
21184 #. type: textblock
21185 #: ../resize/virt-resize.pod:541
21186 msgid ""
21187 "Versions of the program prior to 1.13.9 did not support the "
21188 "I<--machine-readable> option and will return an error."
21189 msgstr ""
21190
21191 #. type: =head2
21192 #: ../resize/virt-resize.pod:546
21193 msgid "\"Partition 1 does not end on cylinder boundary.\""
21194 msgstr ""
21195
21196 #. type: textblock
21197 #: ../resize/virt-resize.pod:548
21198 msgid ""
21199 "Virt-resize aligns partitions to multiples of 64 sectors.  Usually this "
21200 "means the partitions will not be aligned to the ancient CHS geometry.  "
21201 "However CHS geometry is meaningless for disks manufactured since the early "
21202 "1990s, and doubly so for virtual hard drives.  Alignment of partitions to "
21203 "cylinders is not required by any modern operating system."
21204 msgstr ""
21205
21206 #. type: =head2
21207 #: ../resize/virt-resize.pod:555
21208 msgid "RESIZING WINDOWS VIRTUAL MACHINES"
21209 msgstr ""
21210
21211 #. type: textblock
21212 #: ../resize/virt-resize.pod:557
21213 msgid ""
21214 "In Windows Vista and later versions, Microsoft switched to using a separate "
21215 "boot partition.  In these VMs, typically C</dev/sda1> is the boot partition "
21216 "and C</dev/sda2> is the main (C:) drive.  We have not had any luck resizing "
21217 "the boot partition.  Doing so seems to break the guest completely.  However "
21218 "expanding the second partition (ie. C: drive) should work."
21219 msgstr ""
21220
21221 #. type: textblock
21222 #: ../resize/virt-resize.pod:564
21223 msgid ""
21224 "Windows may initiate a lengthy \"chkdsk\" on first boot after a resize, if "
21225 "NTFS partitions have been expanded.  This is just a safety check and (unless "
21226 "it find errors) is nothing to worry about."
21227 msgstr ""
21228
21229 #. type: =head2
21230 #: ../resize/virt-resize.pod:568
21231 msgid "GUEST BOOT STUCK AT \"GRUB\""
21232 msgstr ""
21233
21234 #. type: textblock
21235 #: ../resize/virt-resize.pod:570
21236 msgid ""
21237 "If a Linux guest does not boot after resizing, and the boot is stuck after "
21238 "printing C<GRUB> on the console, try reinstalling grub.  This sometimes "
21239 "happens on older (RHEL 5-era) guests, for reasons we don't fully understand, "
21240 "although we think is to do with partition alignment."
21241 msgstr ""
21242
21243 #. type: verbatim
21244 #: ../resize/virt-resize.pod:575
21245 #, no-wrap
21246 msgid ""
21247 " guestfish -i -a newdisk\n"
21248 " ><fs> cat /boot/grub/device.map\n"
21249 " # check the contents of this file are sensible or\n"
21250 " # edit the file if necessary\n"
21251 " ><fs> grub-install / /dev/vda\n"
21252 " ><fs> exit\n"
21253 "\n"
21254 msgstr ""
21255
21256 #. type: textblock
21257 #: ../resize/virt-resize.pod:582
21258 msgid ""
21259 "For more flexible guest reconfiguration, including if you need to specify "
21260 "other parameters to grub-install, use L<virt-rescue(1)>."
21261 msgstr ""
21262
21263 #. type: =head1
21264 #: ../resize/virt-resize.pod:585
21265 msgid "ALTERNATIVE TOOLS"
21266 msgstr ""
21267
21268 #. type: textblock
21269 #: ../resize/virt-resize.pod:587
21270 msgid ""
21271 "There are several proprietary tools for resizing partitions.  We won't "
21272 "mention any here."
21273 msgstr ""
21274
21275 #. type: textblock
21276 #: ../resize/virt-resize.pod:590
21277 msgid ""
21278 "L<parted(8)> and its graphical shell gparted can do some types of resizing "
21279 "operations on disk images.  They can resize and move partitions, but I don't "
21280 "think they can do anything with the contents, and they certainly don't "
21281 "understand LVM."
21282 msgstr ""
21283
21284 #. type: textblock
21285 #: ../resize/virt-resize.pod:595
21286 msgid ""
21287 "L<guestfish(1)> can do everything that virt-resize can do and a lot more, "
21288 "but at a much lower level.  You will probably end up hand-calculating sector "
21289 "offsets, which is something that virt-resize was designed to avoid.  If you "
21290 "want to see the guestfish-equivalent commands that virt-resize runs, use the "
21291 "I<--debug> flag."
21292 msgstr ""
21293
21294 #. type: textblock
21295 #: ../resize/virt-resize.pod:615
21296 msgid ""
21297 "L<virt-filesystems(1)>, L<virt-df(1)>, L<guestfs(3)>, L<guestfish(1)>, "
21298 "L<lvm(8)>, L<pvresize(8)>, L<lvresize(8)>, L<resize2fs(8)>, "
21299 "L<ntfsresize(8)>, L<btrfs(8)>, L<virsh(1)>, L<parted(8)>, L<truncate(1)>, "
21300 "L<fallocate(1)>, L<grub(8)>, L<grub-install(8)>, L<virt-rescue(1)>, "
21301 "L<http://libguestfs.org/>."
21302 msgstr ""
21303
21304 #. type: textblock
21305 #: ../ruby/examples/guestfs-ruby.pod:5
21306 msgid "guestfs-ruby - How to use libguestfs from Ruby"
21307 msgstr ""
21308
21309 #. type: verbatim
21310 #: ../ruby/examples/guestfs-ruby.pod:9
21311 #, no-wrap
21312 msgid ""
21313 " require 'guestfs'\n"
21314 " g = Guestfs::Guestfs.new()\n"
21315 " g.add_drive_opts(\"disk.img\",\n"
21316 "                  :readonly => 1, :format => \"raw\")\n"
21317 " g.launch()\n"
21318 "\n"
21319 msgstr ""
21320
21321 #. type: textblock
21322 #: ../ruby/examples/guestfs-ruby.pod:17
21323 msgid ""
21324 "This manual page documents how to call libguestfs from the Ruby programming "
21325 "language.  This page just documents the differences from the C API and gives "
21326 "some examples.  If you are not familiar with using libguestfs, you also need "
21327 "to read L<guestfs(3)>."
21328 msgstr ""
21329
21330 #. type: textblock
21331 #: ../ruby/examples/guestfs-ruby.pod:24
21332 msgid ""
21333 "Errors from libguestfs functions are mapped into the C<Error> exception.  "
21334 "This has a single parameter which is the error message (a string)."
21335 msgstr ""
21336
21337 #. type: textblock
21338 #: ../ruby/examples/guestfs-ruby.pod:38
21339 msgid ""
21340 "L<guestfs(3)>, L<guestfs-examples(3)>, L<guestfs-java(3)>, "
21341 "L<guestfs-ocaml(3)>, L<guestfs-perl(3)>, L<guestfs-python(3)>, "
21342 "L<guestfs-recipes(1)>, L<http://libguestfs.org/>."
21343 msgstr ""
21344
21345 #. type: =head2
21346 #: ../src/guestfs-actions.pod:1
21347 msgid "guestfs_add_cdrom"
21348 msgstr ""
21349
21350 #. type: verbatim
21351 #: ../src/guestfs-actions.pod:3
21352 #, no-wrap
21353 msgid ""
21354 " int\n"
21355 " guestfs_add_cdrom (guestfs_h *g,\n"
21356 "                    const char *filename);\n"
21357 "\n"
21358 msgstr ""
21359
21360 #. type: textblock
21361 #: ../src/guestfs-actions.pod:7 ../src/guestfs-actions.pod:249 ../src/guestfs-actions.pod:270
21362 msgid ""
21363 "I<This function is deprecated.> In new code, use the "
21364 "L</guestfs_add_drive_opts> call instead."
21365 msgstr ""
21366
21367 #. type: textblock
21368 #: ../src/guestfs-actions.pod:24
21369 msgid ""
21370 "This call checks for the existence of C<filename>.  This stops you from "
21371 "specifying other types of drive which are supported by qemu such as C<nbd:> "
21372 "and C<http:> URLs.  To specify those, use the general C<guestfs_config> call "
21373 "instead."
21374 msgstr ""
21375
21376 #. type: textblock
21377 #: ../src/guestfs-actions.pod:31
21378 msgid ""
21379 "If you just want to add an ISO file (often you use this as an efficient way "
21380 "to transfer large files into the guest), then you should probably use "
21381 "C<guestfs_add_drive_ro> instead."
21382 msgstr ""
21383
21384 #. type: textblock
21385 #: ../src/guestfs-actions.pod:37 ../src/guestfs-actions.pod:140 ../src/guestfs-actions.pod:201 ../src/guestfs-actions.pod:238 ../src/guestfs-actions.pod:259 ../src/guestfs-actions.pod:280 ../src/guestfs-actions.pod:293 ../src/guestfs-actions.pod:307 ../src/guestfs-actions.pod:427 ../src/guestfs-actions.pod:447 ../src/guestfs-actions.pod:461 ../src/guestfs-actions.pod:506 ../src/guestfs-actions.pod:534 ../src/guestfs-actions.pod:552 ../src/guestfs-actions.pod:619 ../src/guestfs-actions.pod:652 ../src/guestfs-actions.pod:666 ../src/guestfs-actions.pod:681 ../src/guestfs-actions.pod:780 ../src/guestfs-actions.pod:798 ../src/guestfs-actions.pod:812 ../src/guestfs-actions.pod:826 ../src/guestfs-actions.pod:863 ../src/guestfs-actions.pod:1046 ../src/guestfs-actions.pod:1066 ../src/guestfs-actions.pod:1084 ../src/guestfs-actions.pod:1168 ../src/guestfs-actions.pod:1186 ../src/guestfs-actions.pod:1205 ../src/guestfs-actions.pod:1219 ../src/guestfs-actions.pod:1239 ../src/guestfs-actions.pod:1309 ../src/guestfs-actions.pod:1340 ../src/guestfs-actions.pod:1365 ../src/guestfs-actions.pod:1407 ../src/guestfs-actions.pod:1520 ../src/guestfs-actions.pod:1547 ../src/guestfs-actions.pod:1762 ../src/guestfs-actions.pod:1784 ../src/guestfs-actions.pod:1871 ../src/guestfs-actions.pod:2346 ../src/guestfs-actions.pod:2490 ../src/guestfs-actions.pod:2551 ../src/guestfs-actions.pod:2586 ../src/guestfs-actions.pod:3626 ../src/guestfs-actions.pod:3641 ../src/guestfs-actions.pod:3666 ../src/guestfs-actions.pod:3855 ../src/guestfs-actions.pod:3869 ../src/guestfs-actions.pod:3882 ../src/guestfs-actions.pod:3896 ../src/guestfs-actions.pod:3911 ../src/guestfs-actions.pod:3947 ../src/guestfs-actions.pod:4019 ../src/guestfs-actions.pod:4039 ../src/guestfs-actions.pod:4056 ../src/guestfs-actions.pod:4079 ../src/guestfs-actions.pod:4102 ../src/guestfs-actions.pod:4137 ../src/guestfs-actions.pod:4156 ../src/guestfs-actions.pod:4175 ../src/guestfs-actions.pod:4210 ../src/guestfs-actions.pod:4222 ../src/guestfs-actions.pod:4258 ../src/guestfs-actions.pod:4274 ../src/guestfs-actions.pod:4287 ../src/guestfs-actions.pod:4302 ../src/guestfs-actions.pod:4319 ../src/guestfs-actions.pod:4412 ../src/guestfs-actions.pod:4432 ../src/guestfs-actions.pod:4445 ../src/guestfs-actions.pod:4496 ../src/guestfs-actions.pod:4514 ../src/guestfs-actions.pod:4532 ../src/guestfs-actions.pod:4548 ../src/guestfs-actions.pod:4562 ../src/guestfs-actions.pod:4576 ../src/guestfs-actions.pod:4593 ../src/guestfs-actions.pod:4608 ../src/guestfs-actions.pod:4635 ../src/guestfs-actions.pod:4698 ../src/guestfs-actions.pod:4771 ../src/guestfs-actions.pod:4802 ../src/guestfs-actions.pod:4821 ../src/guestfs-actions.pod:4840 ../src/guestfs-actions.pod:4852 ../src/guestfs-actions.pod:4869 ../src/guestfs-actions.pod:4882 ../src/guestfs-actions.pod:4897 ../src/guestfs-actions.pod:4912 ../src/guestfs-actions.pod:4954 ../src/guestfs-actions.pod:4980 ../src/guestfs-actions.pod:5019 ../src/guestfs-actions.pod:5039 ../src/guestfs-actions.pod:5053 ../src/guestfs-actions.pod:5070 ../src/guestfs-actions.pod:5119 ../src/guestfs-actions.pod:5172 ../src/guestfs-actions.pod:5219 ../src/guestfs-actions.pod:5262 ../src/guestfs-actions.pod:5290 ../src/guestfs-actions.pod:5307 ../src/guestfs-actions.pod:5325 ../src/guestfs-actions.pod:5465 ../src/guestfs-actions.pod:5522 ../src/guestfs-actions.pod:5544 ../src/guestfs-actions.pod:5562 ../src/guestfs-actions.pod:5594 ../src/guestfs-actions.pod:5660 ../src/guestfs-actions.pod:5677 ../src/guestfs-actions.pod:5690 ../src/guestfs-actions.pod:5704 ../src/guestfs-actions.pod:5993 ../src/guestfs-actions.pod:6012 ../src/guestfs-actions.pod:6031 ../src/guestfs-actions.pod:6045 ../src/guestfs-actions.pod:6057 ../src/guestfs-actions.pod:6071 ../src/guestfs-actions.pod:6083 ../src/guestfs-actions.pod:6097 ../src/guestfs-actions.pod:6113 ../src/guestfs-actions.pod:6134 ../src/guestfs-actions.pod:6153 ../src/guestfs-actions.pod:6172 ../src/guestfs-actions.pod:6202 ../src/guestfs-actions.pod:6220 ../src/guestfs-actions.pod:6243 ../src/guestfs-actions.pod:6261 ../src/guestfs-actions.pod:6280 ../src/guestfs-actions.pod:6301 ../src/guestfs-actions.pod:6320 ../src/guestfs-actions.pod:6337 ../src/guestfs-actions.pod:6356 ../src/guestfs-actions.pod:6384 ../src/guestfs-actions.pod:6408 ../src/guestfs-actions.pod:6427 ../src/guestfs-actions.pod:6451 ../src/guestfs-actions.pod:6470 ../src/guestfs-actions.pod:6485 ../src/guestfs-actions.pod:6504 ../src/guestfs-actions.pod:6548 ../src/guestfs-actions.pod:6578 ../src/guestfs-actions.pod:6611 ../src/guestfs-actions.pod:6726 ../src/guestfs-actions.pod:6847 ../src/guestfs-actions.pod:6859 ../src/guestfs-actions.pod:6872 ../src/guestfs-actions.pod:6885 ../src/guestfs-actions.pod:6907 ../src/guestfs-actions.pod:6920 ../src/guestfs-actions.pod:6933 ../src/guestfs-actions.pod:6946 ../src/guestfs-actions.pod:6961 ../src/guestfs-actions.pod:7020 ../src/guestfs-actions.pod:7037 ../src/guestfs-actions.pod:7053 ../src/guestfs-actions.pod:7069 ../src/guestfs-actions.pod:7086 ../src/guestfs-actions.pod:7099 ../src/guestfs-actions.pod:7119 ../src/guestfs-actions.pod:7155 ../src/guestfs-actions.pod:7169 ../src/guestfs-actions.pod:7210 ../src/guestfs-actions.pod:7223 ../src/guestfs-actions.pod:7241 ../src/guestfs-actions.pod:7275 ../src/guestfs-actions.pod:7311 ../src/guestfs-actions.pod:7427 ../src/guestfs-actions.pod:7442 ../src/guestfs-actions.pod:7456 ../src/guestfs-actions.pod:7511 ../src/guestfs-actions.pod:7524 ../src/guestfs-actions.pod:7569 ../src/guestfs-actions.pod:7609 ../src/guestfs-actions.pod:7665 ../src/guestfs-actions.pod:7685 ../src/guestfs-actions.pod:7718 ../src/guestfs-actions.pod:7782 ../src/guestfs-actions.pod:7805 ../src/guestfs-actions.pod:7834
21386 msgid "This function returns 0 on success or -1 on error."
21387 msgstr ""
21388
21389 #. type: textblock
21390 #: ../src/guestfs-actions.pod:39 ../src/guestfs-actions.pod:142 ../src/guestfs-actions.pod:1170 ../src/guestfs-actions.pod:1985 ../src/guestfs-actions.pod:2083 ../src/guestfs-actions.pod:2197 ../src/guestfs-actions.pod:3628 ../src/guestfs-actions.pod:3648 ../src/guestfs-actions.pod:4956 ../src/guestfs-actions.pod:6222 ../src/guestfs-actions.pod:6339 ../src/guestfs-actions.pod:6472 ../src/guestfs-actions.pod:6963 ../src/guestfs-actions.pod:7088 ../src/guestfs-actions.pod:7611
21391 msgid "(Added in 0.3)"
21392 msgstr ""
21393
21394 #. type: =head2
21395 #: ../src/guestfs-actions.pod:41
21396 msgid "guestfs_add_domain"
21397 msgstr ""
21398
21399 #. type: verbatim
21400 #: ../src/guestfs-actions.pod:43
21401 #, no-wrap
21402 msgid ""
21403 " int\n"
21404 " guestfs_add_domain (guestfs_h *g,\n"
21405 "                     const char *dom,\n"
21406 "                     ...);\n"
21407 "\n"
21408 msgstr ""
21409
21410 #. type: textblock
21411 #: ../src/guestfs-actions.pod:48 ../src/guestfs-actions.pod:151 ../src/guestfs-actions.pod:837 ../src/guestfs-actions.pod:2831 ../src/guestfs-actions.pod:4647 ../src/guestfs-actions.pod:4966 ../src/guestfs-actions.pod:5183
21412 msgid ""
21413 "You may supply a list of optional arguments to this call.  Use zero or more "
21414 "of the following pairs of parameters, and terminate the list with C<-1> on "
21415 "its own.  See L</CALLS WITH OPTIONAL ARGUMENTS>."
21416 msgstr ""
21417
21418 #. type: verbatim
21419 #: ../src/guestfs-actions.pod:53
21420 #, no-wrap
21421 msgid ""
21422 " GUESTFS_ADD_DOMAIN_LIBVIRTURI, const char *libvirturi,\n"
21423 " GUESTFS_ADD_DOMAIN_READONLY, int readonly,\n"
21424 " GUESTFS_ADD_DOMAIN_IFACE, const char *iface,\n"
21425 " GUESTFS_ADD_DOMAIN_LIVE, int live,\n"
21426 " GUESTFS_ADD_DOMAIN_ALLOWUUID, int allowuuid,\n"
21427 "\n"
21428 msgstr ""
21429
21430 #. type: textblock
21431 #: ../src/guestfs-actions.pod:59
21432 msgid ""
21433 "This function adds the disk(s) attached to the named libvirt domain C<dom>.  "
21434 "It works by connecting to libvirt, requesting the domain and domain XML from "
21435 "libvirt, parsing it for disks, and calling C<guestfs_add_drive_opts> on each "
21436 "one."
21437 msgstr ""
21438
21439 #. type: textblock
21440 #: ../src/guestfs-actions.pod:94
21441 msgid ""
21442 "The other optional parameters are passed directly through to "
21443 "C<guestfs_add_drive_opts>."
21444 msgstr ""
21445
21446 #. type: textblock
21447 #: ../src/guestfs-actions.pod:97 ../src/guestfs-actions.pod:350 ../src/guestfs-actions.pod:520 ../src/guestfs-actions.pod:698 ../src/guestfs-actions.pod:729 ../src/guestfs-actions.pod:747 ../src/guestfs-actions.pod:766 ../src/guestfs-actions.pod:1385 ../src/guestfs-actions.pod:1741 ../src/guestfs-actions.pod:1944 ../src/guestfs-actions.pod:2055 ../src/guestfs-actions.pod:2106 ../src/guestfs-actions.pod:2161 ../src/guestfs-actions.pod:2184 ../src/guestfs-actions.pod:2477 ../src/guestfs-actions.pod:2949 ../src/guestfs-actions.pod:2967 ../src/guestfs-actions.pod:5142 ../src/guestfs-actions.pod:5362 ../src/guestfs-actions.pod:5774 ../src/guestfs-actions.pod:5800 ../src/guestfs-actions.pod:7196 ../src/guestfs-actions.pod:7622 ../src/guestfs-actions.pod:7635 ../src/guestfs-actions.pod:7648
21448 msgid "On error this function returns -1."
21449 msgstr ""
21450
21451 #. type: textblock
21452 #: ../src/guestfs-actions.pod:99
21453 msgid "(Added in 1.7.4)"
21454 msgstr ""
21455
21456 #. type: =head2
21457 #: ../src/guestfs-actions.pod:101
21458 msgid "guestfs_add_domain_va"
21459 msgstr ""
21460
21461 #. type: verbatim
21462 #: ../src/guestfs-actions.pod:103
21463 #, no-wrap
21464 msgid ""
21465 " int\n"
21466 " guestfs_add_domain_va (guestfs_h *g,\n"
21467 "                        const char *dom,\n"
21468 "                        va_list args);\n"
21469 "\n"
21470 msgstr ""
21471
21472 #. type: textblock
21473 #: ../src/guestfs-actions.pod:108
21474 msgid "This is the \"va_list variant\" of L</guestfs_add_domain>."
21475 msgstr ""
21476
21477 #. type: textblock
21478 #: ../src/guestfs-actions.pod:110 ../src/guestfs-actions.pod:121 ../src/guestfs-actions.pod:214 ../src/guestfs-actions.pod:225 ../src/guestfs-actions.pod:876 ../src/guestfs-actions.pod:887 ../src/guestfs-actions.pod:2915 ../src/guestfs-actions.pod:2927 ../src/guestfs-actions.pod:4712 ../src/guestfs-actions.pod:4724 ../src/guestfs-actions.pod:4994 ../src/guestfs-actions.pod:5006 ../src/guestfs-actions.pod:5232 ../src/guestfs-actions.pod:5243
21479 msgid "See L</CALLS WITH OPTIONAL ARGUMENTS>."
21480 msgstr ""
21481
21482 #. type: =head2
21483 #: ../src/guestfs-actions.pod:112
21484 msgid "guestfs_add_domain_argv"
21485 msgstr ""
21486
21487 #. type: verbatim
21488 #: ../src/guestfs-actions.pod:114
21489 #, no-wrap
21490 msgid ""
21491 " int\n"
21492 " guestfs_add_domain_argv (guestfs_h *g,\n"
21493 "                          const char *dom,\n"
21494 "                          const struct guestfs_add_domain_argv *optargs);\n"
21495 "\n"
21496 msgstr ""
21497
21498 #. type: textblock
21499 #: ../src/guestfs-actions.pod:119
21500 msgid "This is the \"argv variant\" of L</guestfs_add_domain>."
21501 msgstr ""
21502
21503 #. type: =head2
21504 #: ../src/guestfs-actions.pod:123
21505 msgid "guestfs_add_drive"
21506 msgstr ""
21507
21508 #. type: verbatim
21509 #: ../src/guestfs-actions.pod:125
21510 #, no-wrap
21511 msgid ""
21512 " int\n"
21513 " guestfs_add_drive (guestfs_h *g,\n"
21514 "                    const char *filename);\n"
21515 "\n"
21516 msgstr ""
21517
21518 #. type: textblock
21519 #: ../src/guestfs-actions.pod:129
21520 msgid ""
21521 "This function is the equivalent of calling C<guestfs_add_drive_opts> with no "
21522 "optional parameters, so the disk is added writable, with the format being "
21523 "detected automatically."
21524 msgstr ""
21525
21526 #. type: textblock
21527 #: ../src/guestfs-actions.pod:133
21528 msgid ""
21529 "Automatic detection of the format opens you up to a potential security hole "
21530 "when dealing with untrusted raw-format images.  See CVE-2010-3851 and "
21531 "RHBZ#642934.  Specifying the format closes this security hole.  Therefore "
21532 "you should think about replacing calls to this function with calls to "
21533 "C<guestfs_add_drive_opts>, and specifying the format."
21534 msgstr ""
21535
21536 #. type: =head2
21537 #: ../src/guestfs-actions.pod:144
21538 msgid "guestfs_add_drive_opts"
21539 msgstr ""
21540
21541 #. type: verbatim
21542 #: ../src/guestfs-actions.pod:146
21543 #, no-wrap
21544 msgid ""
21545 " int\n"
21546 " guestfs_add_drive_opts (guestfs_h *g,\n"
21547 "                         const char *filename,\n"
21548 "                         ...);\n"
21549 "\n"
21550 msgstr ""
21551
21552 #. type: verbatim
21553 #: ../src/guestfs-actions.pod:156
21554 #, no-wrap
21555 msgid ""
21556 " GUESTFS_ADD_DRIVE_OPTS_READONLY, int readonly,\n"
21557 " GUESTFS_ADD_DRIVE_OPTS_FORMAT, const char *format,\n"
21558 " GUESTFS_ADD_DRIVE_OPTS_IFACE, const char *iface,\n"
21559 "\n"
21560 msgstr ""
21561
21562 #. type: textblock
21563 #: ../src/guestfs-actions.pod:185
21564 msgid ""
21565 "This forces the image format.  If you omit this (or use C<guestfs_add_drive> "
21566 "or C<guestfs_add_drive_ro>) then the format is automatically detected.  "
21567 "Possible formats include C<raw> and C<qcow2>."
21568 msgstr ""
21569
21570 #. type: textblock
21571 #: ../src/guestfs-actions.pod:196
21572 msgid ""
21573 "This rarely-used option lets you emulate the behaviour of the deprecated "
21574 "C<guestfs_add_drive_with_if> call (q.v.)"
21575 msgstr ""
21576
21577 #. type: textblock
21578 #: ../src/guestfs-actions.pod:203
21579 msgid "(Added in 1.5.23)"
21580 msgstr ""
21581
21582 #. type: =head2
21583 #: ../src/guestfs-actions.pod:205
21584 msgid "guestfs_add_drive_opts_va"
21585 msgstr ""
21586
21587 #. type: verbatim
21588 #: ../src/guestfs-actions.pod:207
21589 #, no-wrap
21590 msgid ""
21591 " int\n"
21592 " guestfs_add_drive_opts_va (guestfs_h *g,\n"
21593 "                            const char *filename,\n"
21594 "                            va_list args);\n"
21595 "\n"
21596 msgstr ""
21597
21598 #. type: textblock
21599 #: ../src/guestfs-actions.pod:212
21600 msgid "This is the \"va_list variant\" of L</guestfs_add_drive_opts>."
21601 msgstr ""
21602
21603 #. type: =head2
21604 #: ../src/guestfs-actions.pod:216
21605 msgid "guestfs_add_drive_opts_argv"
21606 msgstr ""
21607
21608 #. type: verbatim
21609 #: ../src/guestfs-actions.pod:218
21610 #, no-wrap
21611 msgid ""
21612 " int\n"
21613 " guestfs_add_drive_opts_argv (guestfs_h *g,\n"
21614 "                              const char *filename,\n"
21615 "                              const struct guestfs_add_drive_opts_argv "
21616 "*optargs);\n"
21617 "\n"
21618 msgstr ""
21619
21620 #. type: textblock
21621 #: ../src/guestfs-actions.pod:223
21622 msgid "This is the \"argv variant\" of L</guestfs_add_drive_opts>."
21623 msgstr ""
21624
21625 #. type: =head2
21626 #: ../src/guestfs-actions.pod:227
21627 msgid "guestfs_add_drive_ro"
21628 msgstr ""
21629
21630 #. type: verbatim
21631 #: ../src/guestfs-actions.pod:229
21632 #, no-wrap
21633 msgid ""
21634 " int\n"
21635 " guestfs_add_drive_ro (guestfs_h *g,\n"
21636 "                       const char *filename);\n"
21637 "\n"
21638 msgstr ""
21639
21640 #. type: textblock
21641 #: ../src/guestfs-actions.pod:233
21642 msgid ""
21643 "This function is the equivalent of calling C<guestfs_add_drive_opts> with "
21644 "the optional parameter C<GUESTFS_ADD_DRIVE_OPTS_READONLY> set to 1, so the "
21645 "disk is added read-only, with the format being detected automatically."
21646 msgstr ""
21647
21648 #. type: textblock
21649 #: ../src/guestfs-actions.pod:240
21650 msgid "(Added in 1.0.38)"
21651 msgstr ""
21652
21653 #. type: =head2
21654 #: ../src/guestfs-actions.pod:242
21655 msgid "guestfs_add_drive_ro_with_if"
21656 msgstr ""
21657
21658 #. type: verbatim
21659 #: ../src/guestfs-actions.pod:244
21660 #, no-wrap
21661 msgid ""
21662 " int\n"
21663 " guestfs_add_drive_ro_with_if (guestfs_h *g,\n"
21664 "                               const char *filename,\n"
21665 "                               const char *iface);\n"
21666 "\n"
21667 msgstr ""
21668
21669 #. type: textblock
21670 #: ../src/guestfs-actions.pod:256
21671 msgid ""
21672 "This is the same as C<guestfs_add_drive_ro> but it allows you to specify the "
21673 "QEMU interface emulation to use at run time."
21674 msgstr ""
21675
21676 #. type: textblock
21677 #: ../src/guestfs-actions.pod:261 ../src/guestfs-actions.pod:282 ../src/guestfs-actions.pod:2436
21678 msgid "(Added in 1.0.84)"
21679 msgstr ""
21680
21681 #. type: =head2
21682 #: ../src/guestfs-actions.pod:263
21683 msgid "guestfs_add_drive_with_if"
21684 msgstr ""
21685
21686 #. type: verbatim
21687 #: ../src/guestfs-actions.pod:265
21688 #, no-wrap
21689 msgid ""
21690 " int\n"
21691 " guestfs_add_drive_with_if (guestfs_h *g,\n"
21692 "                            const char *filename,\n"
21693 "                            const char *iface);\n"
21694 "\n"
21695 msgstr ""
21696
21697 #. type: textblock
21698 #: ../src/guestfs-actions.pod:277
21699 msgid ""
21700 "This is the same as C<guestfs_add_drive> but it allows you to specify the "
21701 "QEMU interface emulation to use at run time."
21702 msgstr ""
21703
21704 #. type: =head2
21705 #: ../src/guestfs-actions.pod:284
21706 msgid "guestfs_aug_clear"
21707 msgstr ""
21708
21709 #. type: verbatim
21710 #: ../src/guestfs-actions.pod:286
21711 #, no-wrap
21712 msgid ""
21713 " int\n"
21714 " guestfs_aug_clear (guestfs_h *g,\n"
21715 "                    const char *augpath);\n"
21716 "\n"
21717 msgstr ""
21718
21719 #. type: textblock
21720 #: ../src/guestfs-actions.pod:295 ../src/guestfs-actions.pod:2186
21721 msgid "(Added in 1.3.4)"
21722 msgstr ""
21723
21724 #. type: =head2
21725 #: ../src/guestfs-actions.pod:297
21726 msgid "guestfs_aug_close"
21727 msgstr ""
21728
21729 #. type: verbatim
21730 #: ../src/guestfs-actions.pod:299
21731 #, no-wrap
21732 msgid ""
21733 " int\n"
21734 " guestfs_aug_close (guestfs_h *g);\n"
21735 "\n"
21736 msgstr ""
21737
21738 #. type: textblock
21739 #: ../src/guestfs-actions.pod:302
21740 msgid ""
21741 "Close the current Augeas handle and free up any resources used by it.  After "
21742 "calling this, you have to call C<guestfs_aug_init> again before you can use "
21743 "any other Augeas functions."
21744 msgstr ""
21745
21746 #. type: textblock
21747 #: ../src/guestfs-actions.pod:309 ../src/guestfs-actions.pod:334 ../src/guestfs-actions.pod:352 ../src/guestfs-actions.pod:366 ../src/guestfs-actions.pod:429 ../src/guestfs-actions.pod:449 ../src/guestfs-actions.pod:463 ../src/guestfs-actions.pod:494 ../src/guestfs-actions.pod:508 ../src/guestfs-actions.pod:522 ../src/guestfs-actions.pod:536 ../src/guestfs-actions.pod:554 ../src/guestfs-actions.pod:5851
21748 msgid "(Added in 0.7)"
21749 msgstr ""
21750
21751 #. type: =head2
21752 #: ../src/guestfs-actions.pod:311
21753 msgid "guestfs_aug_defnode"
21754 msgstr ""
21755
21756 #. type: verbatim
21757 #: ../src/guestfs-actions.pod:313
21758 #, no-wrap
21759 msgid ""
21760 " struct guestfs_int_bool *\n"
21761 " guestfs_aug_defnode (guestfs_h *g,\n"
21762 "                      const char *name,\n"
21763 "                      const char *expr,\n"
21764 "                      const char *val);\n"
21765 "\n"
21766 msgstr ""
21767
21768 #. type: textblock
21769 #: ../src/guestfs-actions.pod:322
21770 msgid ""
21771 "If C<expr> evaluates to an empty nodeset, a node is created, equivalent to "
21772 "calling C<guestfs_aug_set> C<expr>, C<value>.  C<name> will be the nodeset "
21773 "containing that single node."
21774 msgstr ""
21775
21776 #. type: textblock
21777 #: ../src/guestfs-actions.pod:330
21778 msgid ""
21779 "This function returns a C<struct guestfs_int_bool *>, or NULL if there was "
21780 "an error.  I<The caller must call C<guestfs_free_int_bool> after use>."
21781 msgstr ""
21782
21783 #. type: =head2
21784 #: ../src/guestfs-actions.pod:336
21785 msgid "guestfs_aug_defvar"
21786 msgstr ""
21787
21788 #. type: verbatim
21789 #: ../src/guestfs-actions.pod:338
21790 #, no-wrap
21791 msgid ""
21792 " int\n"
21793 " guestfs_aug_defvar (guestfs_h *g,\n"
21794 "                     const char *name,\n"
21795 "                     const char *expr);\n"
21796 "\n"
21797 msgstr ""
21798
21799 #. type: =head2
21800 #: ../src/guestfs-actions.pod:354
21801 msgid "guestfs_aug_get"
21802 msgstr ""
21803
21804 #. type: verbatim
21805 #: ../src/guestfs-actions.pod:356
21806 #, no-wrap
21807 msgid ""
21808 " char *\n"
21809 " guestfs_aug_get (guestfs_h *g,\n"
21810 "                  const char *augpath);\n"
21811 "\n"
21812 msgstr ""
21813
21814 #. type: textblock
21815 #: ../src/guestfs-actions.pod:363 ../src/guestfs-actions.pod:927 ../src/guestfs-actions.pod:945 ../src/guestfs-actions.pod:1005 ../src/guestfs-actions.pod:1021 ../src/guestfs-actions.pod:1124 ../src/guestfs-actions.pod:1254 ../src/guestfs-actions.pod:1271 ../src/guestfs-actions.pod:1290 ../src/guestfs-actions.pod:1424 ../src/guestfs-actions.pod:1612 ../src/guestfs-actions.pod:1724 ../src/guestfs-actions.pod:1887 ../src/guestfs-actions.pod:1904 ../src/guestfs-actions.pod:1971 ../src/guestfs-actions.pod:2014 ../src/guestfs-actions.pod:2035 ../src/guestfs-actions.pod:2209 ../src/guestfs-actions.pod:2401 ../src/guestfs-actions.pod:2605 ../src/guestfs-actions.pod:2695 ../src/guestfs-actions.pod:2799 ../src/guestfs-actions.pod:2818 ../src/guestfs-actions.pod:3032 ../src/guestfs-actions.pod:3060 ../src/guestfs-actions.pod:3081 ../src/guestfs-actions.pod:3115 ../src/guestfs-actions.pod:3174 ../src/guestfs-actions.pod:3194 ../src/guestfs-actions.pod:3214 ../src/guestfs-actions.pod:3841 ../src/guestfs-actions.pod:4194 ../src/guestfs-actions.pod:4364 ../src/guestfs-actions.pod:4474 ../src/guestfs-actions.pod:5380 ../src/guestfs-actions.pod:5579 ../src/guestfs-actions.pod:5749 ../src/guestfs-actions.pod:5927 ../src/guestfs-actions.pod:5976 ../src/guestfs-actions.pod:6632 ../src/guestfs-actions.pod:6648 ../src/guestfs-actions.pod:6672 ../src/guestfs-actions.pod:6696 ../src/guestfs-actions.pod:7370 ../src/guestfs-actions.pod:7389 ../src/guestfs-actions.pod:7407 ../src/guestfs-actions.pod:7581 ../src/guestfs-actions.pod:7898
21816 msgid ""
21817 "This function returns a string, or NULL on error.  I<The caller must free "
21818 "the returned string after use>."
21819 msgstr ""
21820
21821 #. type: =head2
21822 #: ../src/guestfs-actions.pod:368
21823 msgid "guestfs_aug_init"
21824 msgstr ""
21825
21826 #. type: verbatim
21827 #: ../src/guestfs-actions.pod:370
21828 #, no-wrap
21829 msgid ""
21830 " int\n"
21831 " guestfs_aug_init (guestfs_h *g,\n"
21832 "                   const char *root,\n"
21833 "                   int flags);\n"
21834 "\n"
21835 msgstr ""
21836
21837 #. type: textblock
21838 #: ../src/guestfs-actions.pod:379
21839 msgid "You must call this before using any other C<guestfs_aug_*> commands."
21840 msgstr ""
21841
21842 #. type: textblock
21843 #: ../src/guestfs-actions.pod:404
21844 msgid ""
21845 "This option is only useful when debugging Augeas lenses.  Use of this option "
21846 "may require additional memory for the libguestfs appliance.  You may need to "
21847 "set the C<LIBGUESTFS_MEMSIZE> environment variable or call "
21848 "C<guestfs_set_memsize>."
21849 msgstr ""
21850
21851 #. type: textblock
21852 #: ../src/guestfs-actions.pod:419
21853 msgid "Do not load the tree in C<guestfs_aug_init>."
21854 msgstr ""
21855
21856 #. type: textblock
21857 #: ../src/guestfs-actions.pod:423
21858 msgid "To close the handle, you can call C<guestfs_aug_close>."
21859 msgstr ""
21860
21861 #. type: =head2
21862 #: ../src/guestfs-actions.pod:431
21863 msgid "guestfs_aug_insert"
21864 msgstr ""
21865
21866 #. type: verbatim
21867 #: ../src/guestfs-actions.pod:433
21868 #, no-wrap
21869 msgid ""
21870 " int\n"
21871 " guestfs_aug_insert (guestfs_h *g,\n"
21872 "                     const char *augpath,\n"
21873 "                     const char *label,\n"
21874 "                     int before);\n"
21875 "\n"
21876 msgstr ""
21877
21878 #. type: =head2
21879 #: ../src/guestfs-actions.pod:451
21880 msgid "guestfs_aug_load"
21881 msgstr ""
21882
21883 #. type: verbatim
21884 #: ../src/guestfs-actions.pod:453
21885 #, no-wrap
21886 msgid ""
21887 " int\n"
21888 " guestfs_aug_load (guestfs_h *g);\n"
21889 "\n"
21890 msgstr ""
21891
21892 #. type: =head2
21893 #: ../src/guestfs-actions.pod:465
21894 msgid "guestfs_aug_ls"
21895 msgstr ""
21896
21897 #. type: verbatim
21898 #: ../src/guestfs-actions.pod:467
21899 #, no-wrap
21900 msgid ""
21901 " char **\n"
21902 " guestfs_aug_ls (guestfs_h *g,\n"
21903 "                 const char *augpath);\n"
21904 "\n"
21905 msgstr ""
21906
21907 #. type: textblock
21908 #: ../src/guestfs-actions.pod:471
21909 msgid ""
21910 "This is just a shortcut for listing C<guestfs_aug_match> C<path/*> and "
21911 "sorting the resulting nodes into alphabetical order."
21912 msgstr ""
21913
21914 #. type: textblock
21915 #: ../src/guestfs-actions.pod:474 ../src/guestfs-actions.pod:490 ../src/guestfs-actions.pod:636 ../src/guestfs-actions.pod:1143 ../src/guestfs-actions.pod:1439 ../src/guestfs-actions.pod:1458 ../src/guestfs-actions.pod:1561 ../src/guestfs-actions.pod:1580 ../src/guestfs-actions.pod:1826 ../src/guestfs-actions.pod:2281 ../src/guestfs-actions.pod:2297 ../src/guestfs-actions.pod:2316 ../src/guestfs-actions.pod:2359 ../src/guestfs-actions.pod:2383 ../src/guestfs-actions.pod:2454 ../src/guestfs-actions.pod:2503 ../src/guestfs-actions.pod:2760 ../src/guestfs-actions.pod:3134 ../src/guestfs-actions.pod:3410 ../src/guestfs-actions.pod:3724 ../src/guestfs-actions.pod:3741 ../src/guestfs-actions.pod:3761 ../src/guestfs-actions.pod:3823 ../src/guestfs-actions.pod:3928 ../src/guestfs-actions.pod:4336 ../src/guestfs-actions.pod:5103 ../src/guestfs-actions.pod:5721 ../src/guestfs-actions.pod:5847 ../src/guestfs-actions.pod:5961 ../src/guestfs-actions.pod:6712 ../src/guestfs-actions.pod:6773 ../src/guestfs-actions.pod:6828 ../src/guestfs-actions.pod:6974 ../src/guestfs-actions.pod:6998 ../src/guestfs-actions.pod:7474 ../src/guestfs-actions.pod:7494 ../src/guestfs-actions.pod:7541 ../src/guestfs-actions.pod:7735 ../src/guestfs-actions.pod:7754 ../src/guestfs-actions.pod:7848 ../src/guestfs-actions.pod:7867 ../src/guestfs-actions.pod:7913 ../src/guestfs-actions.pod:7932
21916 msgid ""
21917 "This function returns a NULL-terminated array of strings (like "
21918 "L<environ(3)>), or NULL if there was an error.  I<The caller must free the "
21919 "strings and the array after use>."
21920 msgstr ""
21921
21922 #. type: textblock
21923 #: ../src/guestfs-actions.pod:478 ../src/guestfs-actions.pod:1068 ../src/guestfs-actions.pod:1086 ../src/guestfs-actions.pod:1496 ../src/guestfs-actions.pod:3488 ../src/guestfs-actions.pod:3519 ../src/guestfs-actions.pod:4177 ../src/guestfs-actions.pod:4227 ../src/guestfs-actions.pod:4414 ../src/guestfs-actions.pod:4447 ../src/guestfs-actions.pod:4610 ../src/guestfs-actions.pod:5107 ../src/guestfs-actions.pod:5662 ../src/guestfs-actions.pod:6059 ../src/guestfs-actions.pod:6073 ../src/guestfs-actions.pod:6085 ../src/guestfs-actions.pod:6553 ../src/guestfs-actions.pod:7212 ../src/guestfs-actions.pod:7225 ../src/guestfs-actions.pod:7458 ../src/guestfs-actions.pod:7723
21924 msgid "(Added in 0.8)"
21925 msgstr ""
21926
21927 #. type: =head2
21928 #: ../src/guestfs-actions.pod:480
21929 msgid "guestfs_aug_match"
21930 msgstr ""
21931
21932 #. type: verbatim
21933 #: ../src/guestfs-actions.pod:482
21934 #, no-wrap
21935 msgid ""
21936 " char **\n"
21937 " guestfs_aug_match (guestfs_h *g,\n"
21938 "                    const char *augpath);\n"
21939 "\n"
21940 msgstr ""
21941
21942 #. type: =head2
21943 #: ../src/guestfs-actions.pod:496
21944 msgid "guestfs_aug_mv"
21945 msgstr ""
21946
21947 #. type: verbatim
21948 #: ../src/guestfs-actions.pod:498
21949 #, no-wrap
21950 msgid ""
21951 " int\n"
21952 " guestfs_aug_mv (guestfs_h *g,\n"
21953 "                 const char *src,\n"
21954 "                 const char *dest);\n"
21955 "\n"
21956 msgstr ""
21957
21958 #. type: =head2
21959 #: ../src/guestfs-actions.pod:510
21960 msgid "guestfs_aug_rm"
21961 msgstr ""
21962
21963 #. type: verbatim
21964 #: ../src/guestfs-actions.pod:512
21965 #, no-wrap
21966 msgid ""
21967 " int\n"
21968 " guestfs_aug_rm (guestfs_h *g,\n"
21969 "                 const char *augpath);\n"
21970 "\n"
21971 msgstr ""
21972
21973 #. type: =head2
21974 #: ../src/guestfs-actions.pod:524
21975 msgid "guestfs_aug_save"
21976 msgstr ""
21977
21978 #. type: verbatim
21979 #: ../src/guestfs-actions.pod:526
21980 #, no-wrap
21981 msgid ""
21982 " int\n"
21983 " guestfs_aug_save (guestfs_h *g);\n"
21984 "\n"
21985 msgstr ""
21986
21987 #. type: textblock
21988 #: ../src/guestfs-actions.pod:531
21989 msgid ""
21990 "The flags which were passed to C<guestfs_aug_init> affect exactly how files "
21991 "are saved."
21992 msgstr ""
21993
21994 #. type: =head2
21995 #: ../src/guestfs-actions.pod:538
21996 msgid "guestfs_aug_set"
21997 msgstr ""
21998
21999 #. type: verbatim
22000 #: ../src/guestfs-actions.pod:540
22001 #, no-wrap
22002 msgid ""
22003 " int\n"
22004 " guestfs_aug_set (guestfs_h *g,\n"
22005 "                  const char *augpath,\n"
22006 "                  const char *val);\n"
22007 "\n"
22008 msgstr ""
22009
22010 #. type: textblock
22011 #: ../src/guestfs-actions.pod:547
22012 msgid ""
22013 "In the Augeas API, it is possible to clear a node by setting the value to "
22014 "NULL.  Due to an oversight in the libguestfs API you cannot do that with "
22015 "this call.  Instead you must use the C<guestfs_aug_clear> call."
22016 msgstr ""
22017
22018 #. type: =head2
22019 #: ../src/guestfs-actions.pod:556
22020 msgid "guestfs_available"
22021 msgstr ""
22022
22023 #. type: verbatim
22024 #: ../src/guestfs-actions.pod:558
22025 #, no-wrap
22026 msgid ""
22027 " int\n"
22028 " guestfs_available (guestfs_h *g,\n"
22029 "                    char *const *groups);\n"
22030 "\n"
22031 msgstr ""
22032
22033 #. type: textblock
22034 #: ../src/guestfs-actions.pod:566
22035 msgid ""
22036 "The libguestfs groups, and the functions that those groups correspond to, "
22037 "are listed in L<guestfs(3)/AVAILABILITY>.  You can also fetch this list at "
22038 "runtime by calling C<guestfs_available_all_groups>."
22039 msgstr ""
22040
22041 #. type: textblock
22042 #: ../src/guestfs-actions.pod:590
22043 msgid "You must call C<guestfs_launch> before calling this function."
22044 msgstr ""
22045
22046 #. type: textblock
22047 #: ../src/guestfs-actions.pod:612
22048 msgid ""
22049 "This call was added in version C<1.0.80>.  In previous versions of "
22050 "libguestfs all you could do would be to speculatively execute a command to "
22051 "find out if the daemon implemented it.  See also C<guestfs_version>."
22052 msgstr ""
22053
22054 #. type: textblock
22055 #: ../src/guestfs-actions.pod:621 ../src/guestfs-actions.pod:1241
22056 msgid "(Added in 1.0.80)"
22057 msgstr ""
22058
22059 #. type: =head2
22060 #: ../src/guestfs-actions.pod:623
22061 msgid "guestfs_available_all_groups"
22062 msgstr ""
22063
22064 #. type: verbatim
22065 #: ../src/guestfs-actions.pod:625
22066 #, no-wrap
22067 msgid ""
22068 " char **\n"
22069 " guestfs_available_all_groups (guestfs_h *g);\n"
22070 "\n"
22071 msgstr ""
22072
22073 #. type: textblock
22074 #: ../src/guestfs-actions.pod:628
22075 msgid ""
22076 "This command returns a list of all optional groups that this daemon knows "
22077 "about.  Note this returns both supported and unsupported groups.  To find "
22078 "out which ones the daemon can actually support you have to call "
22079 "C<guestfs_available> on each member of the returned list."
22080 msgstr ""
22081
22082 #. type: textblock
22083 #: ../src/guestfs-actions.pod:634
22084 msgid "See also C<guestfs_available> and L<guestfs(3)/AVAILABILITY>."
22085 msgstr ""
22086
22087 #. type: textblock
22088 #: ../src/guestfs-actions.pod:640
22089 msgid "(Added in 1.3.15)"
22090 msgstr ""
22091
22092 #. type: =head2
22093 #: ../src/guestfs-actions.pod:642
22094 msgid "guestfs_base64_in"
22095 msgstr ""
22096
22097 #. type: verbatim
22098 #: ../src/guestfs-actions.pod:644
22099 #, no-wrap
22100 msgid ""
22101 " int\n"
22102 " guestfs_base64_in (guestfs_h *g,\n"
22103 "                    const char *base64file,\n"
22104 "                    const char *filename);\n"
22105 "\n"
22106 msgstr ""
22107
22108 #. type: textblock
22109 #: ../src/guestfs-actions.pod:654 ../src/guestfs-actions.pod:668
22110 msgid "(Added in 1.3.5)"
22111 msgstr ""
22112
22113 #. type: =head2
22114 #: ../src/guestfs-actions.pod:656
22115 msgid "guestfs_base64_out"
22116 msgstr ""
22117
22118 #. type: verbatim
22119 #: ../src/guestfs-actions.pod:658
22120 #, no-wrap
22121 msgid ""
22122 " int\n"
22123 " guestfs_base64_out (guestfs_h *g,\n"
22124 "                     const char *filename,\n"
22125 "                     const char *base64file);\n"
22126 "\n"
22127 msgstr ""
22128
22129 #. type: =head2
22130 #: ../src/guestfs-actions.pod:670
22131 msgid "guestfs_blockdev_flushbufs"
22132 msgstr ""
22133
22134 #. type: verbatim
22135 #: ../src/guestfs-actions.pod:672
22136 #, no-wrap
22137 msgid ""
22138 " int\n"
22139 " guestfs_blockdev_flushbufs (guestfs_h *g,\n"
22140 "                             const char *device);\n"
22141 "\n"
22142 msgstr ""
22143
22144 #. type: textblock
22145 #: ../src/guestfs-actions.pod:683 ../src/guestfs-actions.pod:700 ../src/guestfs-actions.pod:715 ../src/guestfs-actions.pod:731 ../src/guestfs-actions.pod:749 ../src/guestfs-actions.pod:768 ../src/guestfs-actions.pod:782 ../src/guestfs-actions.pod:800 ../src/guestfs-actions.pod:814 ../src/guestfs-actions.pod:828
22146 msgid "(Added in 0.9.3)"
22147 msgstr ""
22148
22149 #. type: =head2
22150 #: ../src/guestfs-actions.pod:685
22151 msgid "guestfs_blockdev_getbsz"
22152 msgstr ""
22153
22154 #. type: verbatim
22155 #: ../src/guestfs-actions.pod:687
22156 #, no-wrap
22157 msgid ""
22158 " int\n"
22159 " guestfs_blockdev_getbsz (guestfs_h *g,\n"
22160 "                          const char *device);\n"
22161 "\n"
22162 msgstr ""
22163
22164 #. type: =head2
22165 #: ../src/guestfs-actions.pod:702
22166 msgid "guestfs_blockdev_getro"
22167 msgstr ""
22168
22169 #. type: verbatim
22170 #: ../src/guestfs-actions.pod:704
22171 #, no-wrap
22172 msgid ""
22173 " int\n"
22174 " guestfs_blockdev_getro (guestfs_h *g,\n"
22175 "                         const char *device);\n"
22176 "\n"
22177 msgstr ""
22178
22179 #. type: textblock
22180 #: ../src/guestfs-actions.pod:713 ../src/guestfs-actions.pod:1479 ../src/guestfs-actions.pod:1494 ../src/guestfs-actions.pod:1983 ../src/guestfs-actions.pod:1994 ../src/guestfs-actions.pod:2066 ../src/guestfs-actions.pod:2092 ../src/guestfs-actions.pod:2132 ../src/guestfs-actions.pod:2147 ../src/guestfs-actions.pod:2172 ../src/guestfs-actions.pod:2195 ../src/guestfs-actions.pod:3231 ../src/guestfs-actions.pod:3247 ../src/guestfs-actions.pod:3265 ../src/guestfs-actions.pod:3427 ../src/guestfs-actions.pod:3441 ../src/guestfs-actions.pod:3456 ../src/guestfs-actions.pod:3470 ../src/guestfs-actions.pod:3486 ../src/guestfs-actions.pod:3501 ../src/guestfs-actions.pod:3517 ../src/guestfs-actions.pod:3531 ../src/guestfs-actions.pod:3544 ../src/guestfs-actions.pod:3558 ../src/guestfs-actions.pod:3573 ../src/guestfs-actions.pod:3588 ../src/guestfs-actions.pod:3601 ../src/guestfs-actions.pod:3615 ../src/guestfs-actions.pod:5344
22181 msgid "This function returns a C truth value on success or -1 on error."
22182 msgstr ""
22183
22184 #. type: =head2
22185 #: ../src/guestfs-actions.pod:717
22186 msgid "guestfs_blockdev_getsize64"
22187 msgstr ""
22188
22189 #. type: verbatim
22190 #: ../src/guestfs-actions.pod:719
22191 #, no-wrap
22192 msgid ""
22193 " int64_t\n"
22194 " guestfs_blockdev_getsize64 (guestfs_h *g,\n"
22195 "                             const char *device);\n"
22196 "\n"
22197 msgstr ""
22198
22199 #. type: textblock
22200 #: ../src/guestfs-actions.pod:725
22201 msgid "See also C<guestfs_blockdev_getsz>."
22202 msgstr ""
22203
22204 #. type: =head2
22205 #: ../src/guestfs-actions.pod:733
22206 msgid "guestfs_blockdev_getss"
22207 msgstr ""
22208
22209 #. type: verbatim
22210 #: ../src/guestfs-actions.pod:735
22211 #, no-wrap
22212 msgid ""
22213 " int\n"
22214 " guestfs_blockdev_getss (guestfs_h *g,\n"
22215 "                         const char *device);\n"
22216 "\n"
22217 msgstr ""
22218
22219 #. type: textblock
22220 #: ../src/guestfs-actions.pod:742
22221 msgid ""
22222 "(Note, this is not the size in sectors, use C<guestfs_blockdev_getsz> for "
22223 "that)."
22224 msgstr ""
22225
22226 #. type: =head2
22227 #: ../src/guestfs-actions.pod:751
22228 msgid "guestfs_blockdev_getsz"
22229 msgstr ""
22230
22231 #. type: verbatim
22232 #: ../src/guestfs-actions.pod:753
22233 #, no-wrap
22234 msgid ""
22235 " int64_t\n"
22236 " guestfs_blockdev_getsz (guestfs_h *g,\n"
22237 "                         const char *device);\n"
22238 "\n"
22239 msgstr ""
22240
22241 #. type: textblock
22242 #: ../src/guestfs-actions.pod:760
22243 msgid ""
22244 "See also C<guestfs_blockdev_getss> for the real sector size of the device, "
22245 "and C<guestfs_blockdev_getsize64> for the more useful I<size in bytes>."
22246 msgstr ""
22247
22248 #. type: =head2
22249 #: ../src/guestfs-actions.pod:770
22250 msgid "guestfs_blockdev_rereadpt"
22251 msgstr ""
22252
22253 #. type: verbatim
22254 #: ../src/guestfs-actions.pod:772
22255 #, no-wrap
22256 msgid ""
22257 " int\n"
22258 " guestfs_blockdev_rereadpt (guestfs_h *g,\n"
22259 "                            const char *device);\n"
22260 "\n"
22261 msgstr ""
22262
22263 #. type: =head2
22264 #: ../src/guestfs-actions.pod:784
22265 msgid "guestfs_blockdev_setbsz"
22266 msgstr ""
22267
22268 #. type: verbatim
22269 #: ../src/guestfs-actions.pod:786
22270 #, no-wrap
22271 msgid ""
22272 " int\n"
22273 " guestfs_blockdev_setbsz (guestfs_h *g,\n"
22274 "                          const char *device,\n"
22275 "                          int blocksize);\n"
22276 "\n"
22277 msgstr ""
22278
22279 #. type: =head2
22280 #: ../src/guestfs-actions.pod:802
22281 msgid "guestfs_blockdev_setro"
22282 msgstr ""
22283
22284 #. type: verbatim
22285 #: ../src/guestfs-actions.pod:804
22286 #, no-wrap
22287 msgid ""
22288 " int\n"
22289 " guestfs_blockdev_setro (guestfs_h *g,\n"
22290 "                         const char *device);\n"
22291 "\n"
22292 msgstr ""
22293
22294 #. type: =head2
22295 #: ../src/guestfs-actions.pod:816
22296 msgid "guestfs_blockdev_setrw"
22297 msgstr ""
22298
22299 #. type: verbatim
22300 #: ../src/guestfs-actions.pod:818
22301 #, no-wrap
22302 msgid ""
22303 " int\n"
22304 " guestfs_blockdev_setrw (guestfs_h *g,\n"
22305 "                         const char *device);\n"
22306 "\n"
22307 msgstr ""
22308
22309 #. type: =head2
22310 #: ../src/guestfs-actions.pod:830
22311 msgid "guestfs_btrfs_filesystem_resize"
22312 msgstr ""
22313
22314 #. type: verbatim
22315 #: ../src/guestfs-actions.pod:832
22316 #, no-wrap
22317 msgid ""
22318 " int\n"
22319 " guestfs_btrfs_filesystem_resize (guestfs_h *g,\n"
22320 "                                  const char *mountpoint,\n"
22321 "                                  ...);\n"
22322 "\n"
22323 msgstr ""
22324
22325 #. type: verbatim
22326 #: ../src/guestfs-actions.pod:842
22327 #, no-wrap
22328 msgid ""
22329 " GUESTFS_BTRFS_FILESYSTEM_RESIZE_SIZE, int64_t size,\n"
22330 "\n"
22331 msgstr ""
22332
22333 #. type: textblock
22334 #: ../src/guestfs-actions.pod:865
22335 msgid "(Added in 1.11.17)"
22336 msgstr ""
22337
22338 #. type: =head2
22339 #: ../src/guestfs-actions.pod:867
22340 msgid "guestfs_btrfs_filesystem_resize_va"
22341 msgstr ""
22342
22343 #. type: verbatim
22344 #: ../src/guestfs-actions.pod:869
22345 #, no-wrap
22346 msgid ""
22347 " int\n"
22348 " guestfs_btrfs_filesystem_resize_va (guestfs_h *g,\n"
22349 "                                     const char *mountpoint,\n"
22350 "                                     va_list args);\n"
22351 "\n"
22352 msgstr ""
22353
22354 #. type: textblock
22355 #: ../src/guestfs-actions.pod:874
22356 msgid "This is the \"va_list variant\" of L</guestfs_btrfs_filesystem_resize>."
22357 msgstr ""
22358
22359 #. type: =head2
22360 #: ../src/guestfs-actions.pod:878
22361 msgid "guestfs_btrfs_filesystem_resize_argv"
22362 msgstr ""
22363
22364 #. type: verbatim
22365 #: ../src/guestfs-actions.pod:880
22366 #, no-wrap
22367 msgid ""
22368 " int\n"
22369 " guestfs_btrfs_filesystem_resize_argv (guestfs_h *g,\n"
22370 "                                       const char *mountpoint,\n"
22371 "                                       const struct "
22372 "guestfs_btrfs_filesystem_resize_argv *optargs);\n"
22373 "\n"
22374 msgstr ""
22375
22376 #. type: textblock
22377 #: ../src/guestfs-actions.pod:885
22378 msgid "This is the \"argv variant\" of L</guestfs_btrfs_filesystem_resize>."
22379 msgstr ""
22380
22381 #. type: =head2
22382 #: ../src/guestfs-actions.pod:889
22383 msgid "guestfs_case_sensitive_path"
22384 msgstr ""
22385
22386 #. type: verbatim
22387 #: ../src/guestfs-actions.pod:891
22388 #, no-wrap
22389 msgid ""
22390 " char *\n"
22391 " guestfs_case_sensitive_path (guestfs_h *g,\n"
22392 "                              const char *path);\n"
22393 "\n"
22394 msgstr ""
22395
22396 #. type: textblock
22397 #: ../src/guestfs-actions.pod:917
22398 msgid ""
22399 "Thus C<guestfs_case_sensitive_path> (\"/Windows/System32\")  might return "
22400 "C<\"/WINDOWS/system32\"> (the exact return value would depend on details of "
22401 "how the directories were originally created under Windows)."
22402 msgstr ""
22403
22404 #. type: textblock
22405 #: ../src/guestfs-actions.pod:925
22406 msgid "See also C<guestfs_realpath>."
22407 msgstr ""
22408
22409 #. type: textblock
22410 #: ../src/guestfs-actions.pod:930 ../src/guestfs-actions.pod:7392
22411 msgid "(Added in 1.0.75)"
22412 msgstr ""
22413
22414 #. type: =head2
22415 #: ../src/guestfs-actions.pod:932
22416 msgid "guestfs_cat"
22417 msgstr ""
22418
22419 #. type: verbatim
22420 #: ../src/guestfs-actions.pod:934
22421 #, no-wrap
22422 msgid ""
22423 " char *\n"
22424 " guestfs_cat (guestfs_h *g,\n"
22425 "              const char *path);\n"
22426 "\n"
22427 msgstr ""
22428
22429 #. type: textblock
22430 #: ../src/guestfs-actions.pod:940
22431 msgid ""
22432 "Note that this function cannot correctly handle binary files (specifically, "
22433 "files containing C<\\0> character which is treated as end of string).  For "
22434 "those you need to use the C<guestfs_read_file> or C<guestfs_download> "
22435 "functions which have a more complex interface."
22436 msgstr ""
22437
22438 #. type: textblock
22439 #: ../src/guestfs-actions.pod:951 ../src/guestfs-actions.pod:3745 ../src/guestfs-actions.pod:3827 ../src/guestfs-actions.pod:3844 ../src/guestfs-actions.pod:3932 ../src/guestfs-actions.pod:4340 ../src/guestfs-actions.pod:4354 ../src/guestfs-actions.pod:5725 ../src/guestfs-actions.pod:5739 ../src/guestfs-actions.pod:7545 ../src/guestfs-actions.pod:7559
22440 msgid "(Added in 0.4)"
22441 msgstr ""
22442
22443 #. type: =head2
22444 #: ../src/guestfs-actions.pod:953
22445 msgid "guestfs_checksum"
22446 msgstr ""
22447
22448 #. type: verbatim
22449 #: ../src/guestfs-actions.pod:955
22450 #, no-wrap
22451 msgid ""
22452 " char *\n"
22453 " guestfs_checksum (guestfs_h *g,\n"
22454 "                   const char *csumtype,\n"
22455 "                   const char *path);\n"
22456 "\n"
22457 msgstr ""
22458
22459 #. type: textblock
22460 #: ../src/guestfs-actions.pod:1001
22461 msgid "To get the checksum for a device, use C<guestfs_checksum_device>."
22462 msgstr ""
22463
22464 #. type: textblock
22465 #: ../src/guestfs-actions.pod:1003
22466 msgid "To get the checksums for many files, use C<guestfs_checksums_out>."
22467 msgstr ""
22468
22469 #. type: textblock
22470 #: ../src/guestfs-actions.pod:1008 ../src/guestfs-actions.pod:1316 ../src/guestfs-actions.pod:2163 ../src/guestfs-actions.pod:3443 ../src/guestfs-actions.pod:3472 ../src/guestfs-actions.pod:3533 ../src/guestfs-actions.pod:3560 ../src/guestfs-actions.pod:7248
22471 msgid "(Added in 1.0.2)"
22472 msgstr ""
22473
22474 #. type: =head2
22475 #: ../src/guestfs-actions.pod:1010
22476 msgid "guestfs_checksum_device"
22477 msgstr ""
22478
22479 #. type: verbatim
22480 #: ../src/guestfs-actions.pod:1012
22481 #, no-wrap
22482 msgid ""
22483 " char *\n"
22484 " guestfs_checksum_device (guestfs_h *g,\n"
22485 "                          const char *csumtype,\n"
22486 "                          const char *device);\n"
22487 "\n"
22488 msgstr ""
22489
22490 #. type: textblock
22491 #: ../src/guestfs-actions.pod:1017
22492 msgid ""
22493 "This call computes the MD5, SHAx or CRC checksum of the contents of the "
22494 "device named C<device>.  For the types of checksums supported see the "
22495 "C<guestfs_checksum> command."
22496 msgstr ""
22497
22498 #. type: textblock
22499 #: ../src/guestfs-actions.pod:1024 ../src/guestfs-actions.pod:5174 ../src/guestfs-actions.pod:5309 ../src/guestfs-actions.pod:5346 ../src/guestfs-actions.pod:5364 ../src/guestfs-actions.pod:5546 ../src/guestfs-actions.pod:7157 ../src/guestfs-actions.pod:7171 ../src/guestfs-actions.pod:7571
22500 msgid "(Added in 1.3.2)"
22501 msgstr ""
22502
22503 #. type: =head2
22504 #: ../src/guestfs-actions.pod:1026
22505 msgid "guestfs_checksums_out"
22506 msgstr ""
22507
22508 #. type: verbatim
22509 #: ../src/guestfs-actions.pod:1028
22510 #, no-wrap
22511 msgid ""
22512 " int\n"
22513 " guestfs_checksums_out (guestfs_h *g,\n"
22514 "                        const char *csumtype,\n"
22515 "                        const char *directory,\n"
22516 "                        const char *sumsfile);\n"
22517 "\n"
22518 msgstr ""
22519
22520 #. type: textblock
22521 #: ../src/guestfs-actions.pod:1048
22522 msgid "(Added in 1.3.7)"
22523 msgstr ""
22524
22525 #. type: =head2
22526 #: ../src/guestfs-actions.pod:1050
22527 msgid "guestfs_chmod"
22528 msgstr ""
22529
22530 #. type: verbatim
22531 #: ../src/guestfs-actions.pod:1052
22532 #, no-wrap
22533 msgid ""
22534 " int\n"
22535 " guestfs_chmod (guestfs_h *g,\n"
22536 "                int mode,\n"
22537 "                const char *path);\n"
22538 "\n"
22539 msgstr ""
22540
22541 #. type: =head2
22542 #: ../src/guestfs-actions.pod:1070
22543 msgid "guestfs_chown"
22544 msgstr ""
22545
22546 #. type: verbatim
22547 #: ../src/guestfs-actions.pod:1072
22548 #, no-wrap
22549 msgid ""
22550 " int\n"
22551 " guestfs_chown (guestfs_h *g,\n"
22552 "                int owner,\n"
22553 "                int group,\n"
22554 "                const char *path);\n"
22555 "\n"
22556 msgstr ""
22557
22558 #. type: =head2
22559 #: ../src/guestfs-actions.pod:1088
22560 msgid "guestfs_command"
22561 msgstr ""
22562
22563 #. type: verbatim
22564 #: ../src/guestfs-actions.pod:1090
22565 #, no-wrap
22566 msgid ""
22567 " char *\n"
22568 " guestfs_command (guestfs_h *g,\n"
22569 "                  char *const *arguments);\n"
22570 "\n"
22571 msgstr ""
22572
22573 #. type: textblock
22574 #: ../src/guestfs-actions.pod:1099
22575 msgid ""
22576 "The single parameter is an argv-style list of arguments.  The first element "
22577 "is the name of the program to run.  Subsequent elements are parameters.  The "
22578 "list must be non-empty (ie. must contain a program name).  Note that the "
22579 "command runs directly, and is I<not> invoked via the shell (see "
22580 "C<guestfs_sh>)."
22581 msgstr ""
22582
22583 #. type: textblock
22584 #: ../src/guestfs-actions.pod:1130 ../src/guestfs-actions.pod:1150 ../src/guestfs-actions.pod:1615
22585 msgid "(Added in 0.9.1)"
22586 msgstr ""
22587
22588 #. type: =head2
22589 #: ../src/guestfs-actions.pod:1132
22590 msgid "guestfs_command_lines"
22591 msgstr ""
22592
22593 #. type: verbatim
22594 #: ../src/guestfs-actions.pod:1134
22595 #, no-wrap
22596 msgid ""
22597 " char **\n"
22598 " guestfs_command_lines (guestfs_h *g,\n"
22599 "                        char *const *arguments);\n"
22600 "\n"
22601 msgstr ""
22602
22603 #. type: textblock
22604 #: ../src/guestfs-actions.pod:1138
22605 msgid ""
22606 "This is the same as C<guestfs_command>, but splits the result into a list of "
22607 "lines."
22608 msgstr ""
22609
22610 #. type: textblock
22611 #: ../src/guestfs-actions.pod:1141
22612 msgid "See also: C<guestfs_sh_lines>"
22613 msgstr ""
22614
22615 #. type: =head2
22616 #: ../src/guestfs-actions.pod:1152
22617 msgid "guestfs_config"
22618 msgstr ""
22619
22620 #. type: verbatim
22621 #: ../src/guestfs-actions.pod:1154
22622 #, no-wrap
22623 msgid ""
22624 " int\n"
22625 " guestfs_config (guestfs_h *g,\n"
22626 "                 const char *qemuparam,\n"
22627 "                 const char *qemuvalue);\n"
22628 "\n"
22629 msgstr ""
22630
22631 #. type: =head2
22632 #: ../src/guestfs-actions.pod:1172
22633 msgid "guestfs_copy_size"
22634 msgstr ""
22635
22636 #. type: verbatim
22637 #: ../src/guestfs-actions.pod:1174
22638 #, no-wrap
22639 msgid ""
22640 " int\n"
22641 " guestfs_copy_size (guestfs_h *g,\n"
22642 "                    const char *src,\n"
22643 "                    const char *dest,\n"
22644 "                    int64_t size);\n"
22645 "\n"
22646 msgstr ""
22647
22648 #. type: textblock
22649 #: ../src/guestfs-actions.pod:1188 ../src/guestfs-actions.pod:1311 ../src/guestfs-actions.pod:1342 ../src/guestfs-actions.pod:1387 ../src/guestfs-actions.pod:1764 ../src/guestfs-actions.pod:1786 ../src/guestfs-actions.pod:3643 ../src/guestfs-actions.pod:7243 ../src/guestfs-actions.pod:7277 ../src/guestfs-actions.pod:7784 ../src/guestfs-actions.pod:7807
22650 msgid ""
22651 "This long-running command can generate progress notification messages so "
22652 "that the caller can display a progress bar or indicator.  To receive these "
22653 "messages, the caller must register a progress event callback.  See "
22654 "L<guestfs(3)/GUESTFS_EVENT_PROGRESS>."
22655 msgstr ""
22656
22657 #. type: textblock
22658 #: ../src/guestfs-actions.pod:1193 ../src/guestfs-actions.pod:4367 ../src/guestfs-actions.pod:5752 ../src/guestfs-actions.pod:7478 ../src/guestfs-actions.pod:7498 ../src/guestfs-actions.pod:7584
22659 msgid "(Added in 1.0.87)"
22660 msgstr ""
22661
22662 #. type: =head2
22663 #: ../src/guestfs-actions.pod:1195
22664 msgid "guestfs_cp"
22665 msgstr ""
22666
22667 #. type: verbatim
22668 #: ../src/guestfs-actions.pod:1197
22669 #, no-wrap
22670 msgid ""
22671 " int\n"
22672 " guestfs_cp (guestfs_h *g,\n"
22673 "             const char *src,\n"
22674 "             const char *dest);\n"
22675 "\n"
22676 msgstr ""
22677
22678 #. type: textblock
22679 #: ../src/guestfs-actions.pod:1207 ../src/guestfs-actions.pod:1221 ../src/guestfs-actions.pod:1293 ../src/guestfs-actions.pod:1367 ../src/guestfs-actions.pod:1481 ../src/guestfs-actions.pod:5121 ../src/guestfs-actions.pod:5596
22680 msgid "(Added in 1.0.18)"
22681 msgstr ""
22682
22683 #. type: =head2
22684 #: ../src/guestfs-actions.pod:1209
22685 msgid "guestfs_cp_a"
22686 msgstr ""
22687
22688 #. type: verbatim
22689 #: ../src/guestfs-actions.pod:1211
22690 #, no-wrap
22691 msgid ""
22692 " int\n"
22693 " guestfs_cp_a (guestfs_h *g,\n"
22694 "               const char *src,\n"
22695 "               const char *dest);\n"
22696 "\n"
22697 msgstr ""
22698
22699 #. type: =head2
22700 #: ../src/guestfs-actions.pod:1223
22701 msgid "guestfs_dd"
22702 msgstr ""
22703
22704 #. type: verbatim
22705 #: ../src/guestfs-actions.pod:1225
22706 #, no-wrap
22707 msgid ""
22708 " int\n"
22709 " guestfs_dd (guestfs_h *g,\n"
22710 "             const char *src,\n"
22711 "             const char *dest);\n"
22712 "\n"
22713 msgstr ""
22714
22715 #. type: textblock
22716 #: ../src/guestfs-actions.pod:1235
22717 msgid ""
22718 "If the destination is a device, it must be as large or larger than the "
22719 "source file or device, otherwise the copy will fail.  This command cannot do "
22720 "partial copies (see C<guestfs_copy_size>)."
22721 msgstr ""
22722
22723 #. type: =head2
22724 #: ../src/guestfs-actions.pod:1243
22725 msgid "guestfs_df"
22726 msgstr ""
22727
22728 #. type: verbatim
22729 #: ../src/guestfs-actions.pod:1245
22730 #, no-wrap
22731 msgid ""
22732 " char *\n"
22733 " guestfs_df (guestfs_h *g);\n"
22734 "\n"
22735 msgstr ""
22736
22737 #. type: textblock
22738 #: ../src/guestfs-actions.pod:1250 ../src/guestfs-actions.pod:1267
22739 msgid ""
22740 "This command is mostly useful for interactive sessions.  It is I<not> "
22741 "intended that you try to parse the output string.  Use C<guestfs_statvfs> "
22742 "from programs."
22743 msgstr ""
22744
22745 #. type: textblock
22746 #: ../src/guestfs-actions.pod:1257 ../src/guestfs-actions.pod:1274 ../src/guestfs-actions.pod:1392 ../src/guestfs-actions.pod:2366 ../src/guestfs-actions.pod:2390 ../src/guestfs-actions.pod:2458 ../src/guestfs-actions.pod:4477 ../src/guestfs-actions.pod:5021 ../src/guestfs-actions.pod:6981 ../src/guestfs-actions.pod:7005 ../src/guestfs-actions.pod:7624 ../src/guestfs-actions.pod:7637 ../src/guestfs-actions.pod:7650
22747 msgid "(Added in 1.0.54)"
22748 msgstr ""
22749
22750 #. type: =head2
22751 #: ../src/guestfs-actions.pod:1259
22752 msgid "guestfs_df_h"
22753 msgstr ""
22754
22755 #. type: verbatim
22756 #: ../src/guestfs-actions.pod:1261
22757 #, no-wrap
22758 msgid ""
22759 " char *\n"
22760 " guestfs_df_h (guestfs_h *g);\n"
22761 "\n"
22762 msgstr ""
22763
22764 #. type: =head2
22765 #: ../src/guestfs-actions.pod:1276
22766 msgid "guestfs_dmesg"
22767 msgstr ""
22768
22769 #. type: verbatim
22770 #: ../src/guestfs-actions.pod:1278
22771 #, no-wrap
22772 msgid ""
22773 " char *\n"
22774 " guestfs_dmesg (guestfs_h *g);\n"
22775 "\n"
22776 msgstr ""
22777
22778 #. type: textblock
22779 #: ../src/guestfs-actions.pod:1285
22780 msgid ""
22781 "Another way to get the same information is to enable verbose messages with "
22782 "C<guestfs_set_verbose> or by setting the environment variable "
22783 "C<LIBGUESTFS_DEBUG=1> before running the program."
22784 msgstr ""
22785
22786 #. type: =head2
22787 #: ../src/guestfs-actions.pod:1295
22788 msgid "guestfs_download"
22789 msgstr ""
22790
22791 #. type: verbatim
22792 #: ../src/guestfs-actions.pod:1297
22793 #, no-wrap
22794 msgid ""
22795 " int\n"
22796 " guestfs_download (guestfs_h *g,\n"
22797 "                   const char *remotefilename,\n"
22798 "                   const char *filename);\n"
22799 "\n"
22800 msgstr ""
22801
22802 #. type: textblock
22803 #: ../src/guestfs-actions.pod:1307
22804 msgid "See also C<guestfs_upload>, C<guestfs_cat>."
22805 msgstr ""
22806
22807 #. type: =head2
22808 #: ../src/guestfs-actions.pod:1318
22809 msgid "guestfs_download_offset"
22810 msgstr ""
22811
22812 #. type: verbatim
22813 #: ../src/guestfs-actions.pod:1320
22814 #, no-wrap
22815 msgid ""
22816 " int\n"
22817 " guestfs_download_offset (guestfs_h *g,\n"
22818 "                          const char *remotefilename,\n"
22819 "                          const char *filename,\n"
22820 "                          int64_t offset,\n"
22821 "                          int64_t size);\n"
22822 "\n"
22823 msgstr ""
22824
22825 #. type: textblock
22826 #: ../src/guestfs-actions.pod:1333
22827 msgid ""
22828 "Note that there is no limit on the amount of data that can be downloaded "
22829 "with this call, unlike with C<guestfs_pread>, and this call always reads the "
22830 "full amount unless an error occurs."
22831 msgstr ""
22832
22833 #. type: textblock
22834 #: ../src/guestfs-actions.pod:1338
22835 msgid "See also C<guestfs_download>, C<guestfs_pread>."
22836 msgstr ""
22837
22838 #. type: textblock
22839 #: ../src/guestfs-actions.pod:1347 ../src/guestfs-actions.pod:7282
22840 msgid "(Added in 1.5.17)"
22841 msgstr ""
22842
22843 #. type: =head2
22844 #: ../src/guestfs-actions.pod:1349
22845 msgid "guestfs_drop_caches"
22846 msgstr ""
22847
22848 #. type: verbatim
22849 #: ../src/guestfs-actions.pod:1351
22850 #, no-wrap
22851 msgid ""
22852 " int\n"
22853 " guestfs_drop_caches (guestfs_h *g,\n"
22854 "                      int whattodrop);\n"
22855 "\n"
22856 msgstr ""
22857
22858 #. type: =head2
22859 #: ../src/guestfs-actions.pod:1369
22860 msgid "guestfs_du"
22861 msgstr ""
22862
22863 #. type: verbatim
22864 #: ../src/guestfs-actions.pod:1371
22865 #, no-wrap
22866 msgid ""
22867 " int64_t\n"
22868 " guestfs_du (guestfs_h *g,\n"
22869 "             const char *path);\n"
22870 "\n"
22871 msgstr ""
22872
22873 #. type: =head2
22874 #: ../src/guestfs-actions.pod:1394
22875 msgid "guestfs_e2fsck_f"
22876 msgstr ""
22877
22878 #. type: verbatim
22879 #: ../src/guestfs-actions.pod:1396
22880 #, no-wrap
22881 msgid ""
22882 " int\n"
22883 " guestfs_e2fsck_f (guestfs_h *g,\n"
22884 "                   const char *device);\n"
22885 "\n"
22886 msgstr ""
22887
22888 #. type: textblock
22889 #: ../src/guestfs-actions.pod:1404
22890 msgid ""
22891 "This command is only needed because of C<guestfs_resize2fs> (q.v.).  "
22892 "Normally you should use C<guestfs_fsck>."
22893 msgstr ""
22894
22895 #. type: textblock
22896 #: ../src/guestfs-actions.pod:1409
22897 msgid "(Added in 1.0.29)"
22898 msgstr ""
22899
22900 #. type: =head2
22901 #: ../src/guestfs-actions.pod:1411
22902 msgid "guestfs_echo_daemon"
22903 msgstr ""
22904
22905 #. type: verbatim
22906 #: ../src/guestfs-actions.pod:1413
22907 #, no-wrap
22908 msgid ""
22909 " char *\n"
22910 " guestfs_echo_daemon (guestfs_h *g,\n"
22911 "                      char *const *words);\n"
22912 "\n"
22913 msgstr ""
22914
22915 #. type: textblock
22916 #: ../src/guestfs-actions.pod:1422
22917 msgid "See also C<guestfs_ping_daemon>."
22918 msgstr ""
22919
22920 #. type: textblock
22921 #: ../src/guestfs-actions.pod:1427 ../src/guestfs-actions.pod:2174 ../src/guestfs-actions.pod:6453
22922 msgid "(Added in 1.0.69)"
22923 msgstr ""
22924
22925 #. type: =head2
22926 #: ../src/guestfs-actions.pod:1429
22927 msgid "guestfs_egrep"
22928 msgstr ""
22929
22930 #. type: verbatim
22931 #: ../src/guestfs-actions.pod:1431
22932 #, no-wrap
22933 msgid ""
22934 " char **\n"
22935 " guestfs_egrep (guestfs_h *g,\n"
22936 "                const char *regex,\n"
22937 "                const char *path);\n"
22938 "\n"
22939 msgstr ""
22940
22941 #. type: textblock
22942 #: ../src/guestfs-actions.pod:1446 ../src/guestfs-actions.pod:1465 ../src/guestfs-actions.pod:1522 ../src/guestfs-actions.pod:1568 ../src/guestfs-actions.pod:1587 ../src/guestfs-actions.pod:2304 ../src/guestfs-actions.pod:2323 ../src/guestfs-actions.pod:2479 ../src/guestfs-actions.pod:2492 ../src/guestfs-actions.pod:2507 ../src/guestfs-actions.pod:2553 ../src/guestfs-actions.pod:2575 ../src/guestfs-actions.pod:2588 ../src/guestfs-actions.pod:3857 ../src/guestfs-actions.pod:3871 ../src/guestfs-actions.pod:3884 ../src/guestfs-actions.pod:3898 ../src/guestfs-actions.pod:4899 ../src/guestfs-actions.pod:5930 ../src/guestfs-actions.pod:5979 ../src/guestfs-actions.pod:6849 ../src/guestfs-actions.pod:6861 ../src/guestfs-actions.pod:6874 ../src/guestfs-actions.pod:6887 ../src/guestfs-actions.pod:6909 ../src/guestfs-actions.pod:6922 ../src/guestfs-actions.pod:6935 ../src/guestfs-actions.pod:6948 ../src/guestfs-actions.pod:7742 ../src/guestfs-actions.pod:7761 ../src/guestfs-actions.pod:7855 ../src/guestfs-actions.pod:7874 ../src/guestfs-actions.pod:7920 ../src/guestfs-actions.pod:7939
22943 msgid "(Added in 1.0.66)"
22944 msgstr ""
22945
22946 #. type: =head2
22947 #: ../src/guestfs-actions.pod:1448
22948 msgid "guestfs_egrepi"
22949 msgstr ""
22950
22951 #. type: verbatim
22952 #: ../src/guestfs-actions.pod:1450
22953 #, no-wrap
22954 msgid ""
22955 " char **\n"
22956 " guestfs_egrepi (guestfs_h *g,\n"
22957 "                 const char *regex,\n"
22958 "                 const char *path);\n"
22959 "\n"
22960 msgstr ""
22961
22962 #. type: =head2
22963 #: ../src/guestfs-actions.pod:1467
22964 msgid "guestfs_equal"
22965 msgstr ""
22966
22967 #. type: verbatim
22968 #: ../src/guestfs-actions.pod:1469
22969 #, no-wrap
22970 msgid ""
22971 " int\n"
22972 " guestfs_equal (guestfs_h *g,\n"
22973 "                const char *file1,\n"
22974 "                const char *file2);\n"
22975 "\n"
22976 msgstr ""
22977
22978 #. type: =head2
22979 #: ../src/guestfs-actions.pod:1483
22980 msgid "guestfs_exists"
22981 msgstr ""
22982
22983 #. type: verbatim
22984 #: ../src/guestfs-actions.pod:1485
22985 #, no-wrap
22986 msgid ""
22987 " int\n"
22988 " guestfs_exists (guestfs_h *g,\n"
22989 "                 const char *path);\n"
22990 "\n"
22991 msgstr ""
22992
22993 #. type: textblock
22994 #: ../src/guestfs-actions.pod:1492
22995 msgid "See also C<guestfs_is_file>, C<guestfs_is_dir>, C<guestfs_stat>."
22996 msgstr ""
22997
22998 #. type: =head2
22999 #: ../src/guestfs-actions.pod:1498
23000 msgid "guestfs_fallocate"
23001 msgstr ""
23002
23003 #. type: verbatim
23004 #: ../src/guestfs-actions.pod:1500
23005 #, no-wrap
23006 msgid ""
23007 " int\n"
23008 " guestfs_fallocate (guestfs_h *g,\n"
23009 "                    const char *path,\n"
23010 "                    int len);\n"
23011 "\n"
23012 msgstr ""
23013
23014 #. type: textblock
23015 #: ../src/guestfs-actions.pod:1505
23016 msgid ""
23017 "I<This function is deprecated.> In new code, use the L</guestfs_fallocate64> "
23018 "call instead."
23019 msgstr ""
23020
23021 #. type: =head2
23022 #: ../src/guestfs-actions.pod:1524
23023 msgid "guestfs_fallocate64"
23024 msgstr ""
23025
23026 #. type: verbatim
23027 #: ../src/guestfs-actions.pod:1526
23028 #, no-wrap
23029 msgid ""
23030 " int\n"
23031 " guestfs_fallocate64 (guestfs_h *g,\n"
23032 "                      const char *path,\n"
23033 "                      int64_t len);\n"
23034 "\n"
23035 msgstr ""
23036
23037 #. type: textblock
23038 #: ../src/guestfs-actions.pod:1535
23039 msgid ""
23040 "Note that this call allocates disk blocks for the file.  To create a sparse "
23041 "file use C<guestfs_truncate_size> instead."
23042 msgstr ""
23043
23044 #. type: textblock
23045 #: ../src/guestfs-actions.pod:1538
23046 msgid ""
23047 "The deprecated call C<guestfs_fallocate> does the same, but owing to an "
23048 "oversight it only allowed 30 bit lengths to be specified, effectively "
23049 "limiting the maximum size of files created through that call to 1GB."
23050 msgstr ""
23051
23052 #. type: textblock
23053 #: ../src/guestfs-actions.pod:1549
23054 msgid "(Added in 1.3.17)"
23055 msgstr ""
23056
23057 #. type: =head2
23058 #: ../src/guestfs-actions.pod:1551
23059 msgid "guestfs_fgrep"
23060 msgstr ""
23061
23062 #. type: verbatim
23063 #: ../src/guestfs-actions.pod:1553
23064 #, no-wrap
23065 msgid ""
23066 " char **\n"
23067 " guestfs_fgrep (guestfs_h *g,\n"
23068 "                const char *pattern,\n"
23069 "                const char *path);\n"
23070 "\n"
23071 msgstr ""
23072
23073 #. type: =head2
23074 #: ../src/guestfs-actions.pod:1570
23075 msgid "guestfs_fgrepi"
23076 msgstr ""
23077
23078 #. type: verbatim
23079 #: ../src/guestfs-actions.pod:1572
23080 #, no-wrap
23081 msgid ""
23082 " char **\n"
23083 " guestfs_fgrepi (guestfs_h *g,\n"
23084 "                 const char *pattern,\n"
23085 "                 const char *path);\n"
23086 "\n"
23087 msgstr ""
23088
23089 #. type: =head2
23090 #: ../src/guestfs-actions.pod:1589
23091 msgid "guestfs_file"
23092 msgstr ""
23093
23094 #. type: verbatim
23095 #: ../src/guestfs-actions.pod:1591
23096 #, no-wrap
23097 msgid ""
23098 " char *\n"
23099 " guestfs_file (guestfs_h *g,\n"
23100 "               const char *path);\n"
23101 "\n"
23102 msgstr ""
23103
23104 #. type: textblock
23105 #: ../src/guestfs-actions.pod:1609
23106 msgid ""
23107 "See also: L<file(1)>, C<guestfs_vfs_type>, C<guestfs_lstat>, "
23108 "C<guestfs_is_file>, C<guestfs_is_blockdev> (etc), C<guestfs_is_zero>."
23109 msgstr ""
23110
23111 #. type: =head2
23112 #: ../src/guestfs-actions.pod:1617
23113 msgid "guestfs_file_architecture"
23114 msgstr ""
23115
23116 #. type: verbatim
23117 #: ../src/guestfs-actions.pod:1619
23118 #, no-wrap
23119 msgid ""
23120 " char *\n"
23121 " guestfs_file_architecture (guestfs_h *g,\n"
23122 "                            const char *filename);\n"
23123 "\n"
23124 msgstr ""
23125
23126 #. type: textblock
23127 #: ../src/guestfs-actions.pod:1727 ../src/guestfs-actions.pod:1890 ../src/guestfs-actions.pod:1907 ../src/guestfs-actions.pod:2608 ../src/guestfs-actions.pod:2698 ../src/guestfs-actions.pod:2764 ../src/guestfs-actions.pod:2951 ../src/guestfs-actions.pod:2969 ../src/guestfs-actions.pod:3009 ../src/guestfs-actions.pod:3084 ../src/guestfs-actions.pod:3177 ../src/guestfs-actions.pod:3414 ../src/guestfs-actions.pod:3546
23128 msgid "(Added in 1.5.3)"
23129 msgstr ""
23130
23131 #. type: =head2
23132 #: ../src/guestfs-actions.pod:1729
23133 msgid "guestfs_filesize"
23134 msgstr ""
23135
23136 #. type: verbatim
23137 #: ../src/guestfs-actions.pod:1731
23138 #, no-wrap
23139 msgid ""
23140 " int64_t\n"
23141 " guestfs_filesize (guestfs_h *g,\n"
23142 "                   const char *file);\n"
23143 "\n"
23144 msgstr ""
23145
23146 #. type: textblock
23147 #: ../src/guestfs-actions.pod:1737
23148 msgid ""
23149 "To get other stats about a file, use C<guestfs_stat>, C<guestfs_lstat>, "
23150 "C<guestfs_is_dir>, C<guestfs_is_file> etc.  To get the size of block "
23151 "devices, use C<guestfs_blockdev_getsize64>."
23152 msgstr ""
23153
23154 #. type: textblock
23155 #: ../src/guestfs-actions.pod:1743
23156 msgid "(Added in 1.0.82)"
23157 msgstr ""
23158
23159 #. type: =head2
23160 #: ../src/guestfs-actions.pod:1745
23161 msgid "guestfs_fill"
23162 msgstr ""
23163
23164 #. type: verbatim
23165 #: ../src/guestfs-actions.pod:1747
23166 #, no-wrap
23167 msgid ""
23168 " int\n"
23169 " guestfs_fill (guestfs_h *g,\n"
23170 "               int c,\n"
23171 "               int len,\n"
23172 "               const char *path);\n"
23173 "\n"
23174 msgstr ""
23175
23176 #. type: textblock
23177 #: ../src/guestfs-actions.pod:1757
23178 msgid ""
23179 "To fill a file with zero bytes (sparsely), it is much more efficient to use "
23180 "C<guestfs_truncate_size>.  To create a file with a pattern of repeating "
23181 "bytes use C<guestfs_fill_pattern>."
23182 msgstr ""
23183
23184 #. type: textblock
23185 #: ../src/guestfs-actions.pod:1769
23186 msgid "(Added in 1.0.79)"
23187 msgstr ""
23188
23189 #. type: =head2
23190 #: ../src/guestfs-actions.pod:1771
23191 msgid "guestfs_fill_pattern"
23192 msgstr ""
23193
23194 #. type: verbatim
23195 #: ../src/guestfs-actions.pod:1773
23196 #, no-wrap
23197 msgid ""
23198 " int\n"
23199 " guestfs_fill_pattern (guestfs_h *g,\n"
23200 "                       const char *pattern,\n"
23201 "                       int len,\n"
23202 "                       const char *path);\n"
23203 "\n"
23204 msgstr ""
23205
23206 #. type: textblock
23207 #: ../src/guestfs-actions.pod:1779
23208 msgid ""
23209 "This function is like C<guestfs_fill> except that it creates a new file of "
23210 "length C<len> containing the repeating pattern of bytes in C<pattern>.  The "
23211 "pattern is truncated if necessary to ensure the length of the file is "
23212 "exactly C<len> bytes."
23213 msgstr ""
23214
23215 #. type: textblock
23216 #: ../src/guestfs-actions.pod:1791
23217 msgid "(Added in 1.3.12)"
23218 msgstr ""
23219
23220 #. type: =head2
23221 #: ../src/guestfs-actions.pod:1793
23222 msgid "guestfs_find"
23223 msgstr ""
23224
23225 #. type: verbatim
23226 #: ../src/guestfs-actions.pod:1795
23227 #, no-wrap
23228 msgid ""
23229 " char **\n"
23230 " guestfs_find (guestfs_h *g,\n"
23231 "               const char *directory);\n"
23232 "\n"
23233 msgstr ""
23234
23235 #. type: textblock
23236 #: ../src/guestfs-actions.pod:1811
23237 msgid "then the returned list from C<guestfs_find> C</tmp> would be 4 elements:"
23238 msgstr ""
23239
23240 #. type: textblock
23241 #: ../src/guestfs-actions.pod:1824
23242 msgid "See also C<guestfs_find0>."
23243 msgstr ""
23244
23245 #. type: textblock
23246 #: ../src/guestfs-actions.pod:1833 ../src/guestfs-actions.pod:4304 ../src/guestfs-actions.pod:6014
23247 msgid "(Added in 1.0.27)"
23248 msgstr ""
23249
23250 #. type: =head2
23251 #: ../src/guestfs-actions.pod:1835
23252 msgid "guestfs_find0"
23253 msgstr ""
23254
23255 #. type: verbatim
23256 #: ../src/guestfs-actions.pod:1837
23257 #, no-wrap
23258 msgid ""
23259 " int\n"
23260 " guestfs_find0 (guestfs_h *g,\n"
23261 "                const char *directory,\n"
23262 "                const char *files);\n"
23263 "\n"
23264 msgstr ""
23265
23266 #. type: textblock
23267 #: ../src/guestfs-actions.pod:1846
23268 msgid ""
23269 "This command works the same way as C<guestfs_find> with the following "
23270 "exceptions:"
23271 msgstr ""
23272
23273 #. type: textblock
23274 #: ../src/guestfs-actions.pod:1873
23275 msgid "(Added in 1.0.74)"
23276 msgstr ""
23277
23278 #. type: =head2
23279 #: ../src/guestfs-actions.pod:1875
23280 msgid "guestfs_findfs_label"
23281 msgstr ""
23282
23283 #. type: verbatim
23284 #: ../src/guestfs-actions.pod:1877
23285 #, no-wrap
23286 msgid ""
23287 " char *\n"
23288 " guestfs_findfs_label (guestfs_h *g,\n"
23289 "                       const char *label);\n"
23290 "\n"
23291 msgstr ""
23292
23293 #. type: textblock
23294 #: ../src/guestfs-actions.pod:1885
23295 msgid "To find the label of a filesystem, use C<guestfs_vfs_label>."
23296 msgstr ""
23297
23298 #. type: =head2
23299 #: ../src/guestfs-actions.pod:1892
23300 msgid "guestfs_findfs_uuid"
23301 msgstr ""
23302
23303 #. type: verbatim
23304 #: ../src/guestfs-actions.pod:1894
23305 #, no-wrap
23306 msgid ""
23307 " char *\n"
23308 " guestfs_findfs_uuid (guestfs_h *g,\n"
23309 "                      const char *uuid);\n"
23310 "\n"
23311 msgstr ""
23312
23313 #. type: textblock
23314 #: ../src/guestfs-actions.pod:1902
23315 msgid "To find the UUID of a filesystem, use C<guestfs_vfs_uuid>."
23316 msgstr ""
23317
23318 #. type: =head2
23319 #: ../src/guestfs-actions.pod:1909
23320 msgid "guestfs_fsck"
23321 msgstr ""
23322
23323 #. type: verbatim
23324 #: ../src/guestfs-actions.pod:1911
23325 #, no-wrap
23326 msgid ""
23327 " int\n"
23328 " guestfs_fsck (guestfs_h *g,\n"
23329 "               const char *fstype,\n"
23330 "               const char *device);\n"
23331 "\n"
23332 msgstr ""
23333
23334 #. type: textblock
23335 #: ../src/guestfs-actions.pod:1946 ../src/guestfs-actions.pod:7789
23336 msgid "(Added in 1.0.16)"
23337 msgstr ""
23338
23339 #. type: =head2
23340 #: ../src/guestfs-actions.pod:1948
23341 msgid "guestfs_get_append"
23342 msgstr ""
23343
23344 #. type: verbatim
23345 #: ../src/guestfs-actions.pod:1950
23346 #, no-wrap
23347 msgid ""
23348 " const char *\n"
23349 " guestfs_get_append (guestfs_h *g);\n"
23350 "\n"
23351 msgstr ""
23352
23353 #. type: textblock
23354 #: ../src/guestfs-actions.pod:1958
23355 msgid ""
23356 "This function returns a string which may be NULL.  There is no way to return "
23357 "an error from this function.  The string is owned by the guest handle and "
23358 "must I<not> be freed."
23359 msgstr ""
23360
23361 #. type: textblock
23362 #: ../src/guestfs-actions.pod:1962 ../src/guestfs-actions.pod:5692 ../src/guestfs-actions.pod:6174 ../src/guestfs-actions.pod:6616 ../src/guestfs-actions.pod:6635 ../src/guestfs-actions.pod:6651 ../src/guestfs-actions.pod:6675 ../src/guestfs-actions.pod:7429 ../src/guestfs-actions.pod:7444 ../src/guestfs-actions.pod:7836
23363 msgid "(Added in 1.0.26)"
23364 msgstr ""
23365
23366 #. type: =head2
23367 #: ../src/guestfs-actions.pod:1964
23368 msgid "guestfs_get_attach_method"
23369 msgstr ""
23370
23371 #. type: verbatim
23372 #: ../src/guestfs-actions.pod:1966
23373 #, no-wrap
23374 msgid ""
23375 " char *\n"
23376 " guestfs_get_attach_method (guestfs_h *g);\n"
23377 "\n"
23378 msgstr ""
23379
23380 #. type: textblock
23381 #: ../src/guestfs-actions.pod:1969
23382 msgid "Return the current attach method.  See C<guestfs_set_attach_method>."
23383 msgstr ""
23384
23385 #. type: textblock
23386 #: ../src/guestfs-actions.pod:1974 ../src/guestfs-actions.pod:6204
23387 msgid "(Added in 1.9.8)"
23388 msgstr ""
23389
23390 #. type: =head2
23391 #: ../src/guestfs-actions.pod:1976
23392 msgid "guestfs_get_autosync"
23393 msgstr ""
23394
23395 #. type: verbatim
23396 #: ../src/guestfs-actions.pod:1978
23397 #, no-wrap
23398 msgid ""
23399 " int\n"
23400 " guestfs_get_autosync (guestfs_h *g);\n"
23401 "\n"
23402 msgstr ""
23403
23404 #. type: =head2
23405 #: ../src/guestfs-actions.pod:1987
23406 msgid "guestfs_get_direct"
23407 msgstr ""
23408
23409 #. type: verbatim
23410 #: ../src/guestfs-actions.pod:1989
23411 #, no-wrap
23412 msgid ""
23413 " int\n"
23414 " guestfs_get_direct (guestfs_h *g);\n"
23415 "\n"
23416 msgstr ""
23417
23418 #. type: textblock
23419 #: ../src/guestfs-actions.pod:1996 ../src/guestfs-actions.pod:6245
23420 msgid "(Added in 1.0.72)"
23421 msgstr ""
23422
23423 #. type: =head2
23424 #: ../src/guestfs-actions.pod:1998
23425 msgid "guestfs_get_e2label"
23426 msgstr ""
23427
23428 #. type: verbatim
23429 #: ../src/guestfs-actions.pod:2000
23430 #, no-wrap
23431 msgid ""
23432 " char *\n"
23433 " guestfs_get_e2label (guestfs_h *g,\n"
23434 "                      const char *device);\n"
23435 "\n"
23436 msgstr ""
23437
23438 #. type: textblock
23439 #: ../src/guestfs-actions.pod:2004
23440 msgid ""
23441 "I<This function is deprecated.> In new code, use the L</guestfs_vfs_label> "
23442 "call instead."
23443 msgstr ""
23444
23445 #. type: textblock
23446 #: ../src/guestfs-actions.pod:2017 ../src/guestfs-actions.pod:2038 ../src/guestfs-actions.pod:6263 ../src/guestfs-actions.pod:6282
23447 msgid "(Added in 1.0.15)"
23448 msgstr ""
23449
23450 #. type: =head2
23451 #: ../src/guestfs-actions.pod:2019
23452 msgid "guestfs_get_e2uuid"
23453 msgstr ""
23454
23455 #. type: verbatim
23456 #: ../src/guestfs-actions.pod:2021
23457 #, no-wrap
23458 msgid ""
23459 " char *\n"
23460 " guestfs_get_e2uuid (guestfs_h *g,\n"
23461 "                     const char *device);\n"
23462 "\n"
23463 msgstr ""
23464
23465 #. type: textblock
23466 #: ../src/guestfs-actions.pod:2025
23467 msgid ""
23468 "I<This function is deprecated.> In new code, use the L</guestfs_vfs_uuid> "
23469 "call instead."
23470 msgstr ""
23471
23472 #. type: =head2
23473 #: ../src/guestfs-actions.pod:2040
23474 msgid "guestfs_get_memsize"
23475 msgstr ""
23476
23477 #. type: verbatim
23478 #: ../src/guestfs-actions.pod:2042
23479 #, no-wrap
23480 msgid ""
23481 " int\n"
23482 " guestfs_get_memsize (guestfs_h *g);\n"
23483 "\n"
23484 msgstr ""
23485
23486 #. type: textblock
23487 #: ../src/guestfs-actions.pod:2048
23488 msgid ""
23489 "If C<guestfs_set_memsize> was not called on this handle, and if "
23490 "C<LIBGUESTFS_MEMSIZE> was not set, then this returns the compiled-in default "
23491 "value for memsize."
23492 msgstr ""
23493
23494 #. type: textblock
23495 #: ../src/guestfs-actions.pod:2057 ../src/guestfs-actions.pod:4595 ../src/guestfs-actions.pod:4804 ../src/guestfs-actions.pod:4823 ../src/guestfs-actions.pod:4842 ../src/guestfs-actions.pod:4854 ../src/guestfs-actions.pod:4871 ../src/guestfs-actions.pod:4884 ../src/guestfs-actions.pod:5917 ../src/guestfs-actions.pod:6303 ../src/guestfs-actions.pod:6583 ../src/guestfs-actions.pod:7198
23496 msgid "(Added in 1.0.55)"
23497 msgstr ""
23498
23499 #. type: =head2
23500 #: ../src/guestfs-actions.pod:2059
23501 msgid "guestfs_get_network"
23502 msgstr ""
23503
23504 #. type: verbatim
23505 #: ../src/guestfs-actions.pod:2061
23506 #, no-wrap
23507 msgid ""
23508 " int\n"
23509 " guestfs_get_network (guestfs_h *g);\n"
23510 "\n"
23511 msgstr ""
23512
23513 #. type: textblock
23514 #: ../src/guestfs-actions.pod:2068 ../src/guestfs-actions.pod:6322
23515 msgid "(Added in 1.5.4)"
23516 msgstr ""
23517
23518 #. type: =head2
23519 #: ../src/guestfs-actions.pod:2070
23520 msgid "guestfs_get_path"
23521 msgstr ""
23522
23523 #. type: verbatim
23524 #: ../src/guestfs-actions.pod:2072
23525 #, no-wrap
23526 msgid ""
23527 " const char *\n"
23528 " guestfs_get_path (guestfs_h *g);\n"
23529 "\n"
23530 msgstr ""
23531
23532 #. type: textblock
23533 #: ../src/guestfs-actions.pod:2080 ../src/guestfs-actions.pod:2120
23534 msgid ""
23535 "This function returns a string, or NULL on error.  The string is owned by "
23536 "the guest handle and must I<not> be freed."
23537 msgstr ""
23538
23539 #. type: =head2
23540 #: ../src/guestfs-actions.pod:2085
23541 msgid "guestfs_get_pgroup"
23542 msgstr ""
23543
23544 #. type: verbatim
23545 #: ../src/guestfs-actions.pod:2087
23546 #, no-wrap
23547 msgid ""
23548 " int\n"
23549 " guestfs_get_pgroup (guestfs_h *g);\n"
23550 "\n"
23551 msgstr ""
23552
23553 #. type: textblock
23554 #: ../src/guestfs-actions.pod:2094 ../src/guestfs-actions.pod:6358 ../src/guestfs-actions.pod:7690
23555 msgid "(Added in 1.11.18)"
23556 msgstr ""
23557
23558 #. type: =head2
23559 #: ../src/guestfs-actions.pod:2096
23560 msgid "guestfs_get_pid"
23561 msgstr ""
23562
23563 #. type: verbatim
23564 #: ../src/guestfs-actions.pod:2098
23565 #, no-wrap
23566 msgid ""
23567 " int\n"
23568 " guestfs_get_pid (guestfs_h *g);\n"
23569 "\n"
23570 msgstr ""
23571
23572 #. type: textblock
23573 #: ../src/guestfs-actions.pod:2108
23574 msgid "(Added in 1.0.56)"
23575 msgstr ""
23576
23577 #. type: =head2
23578 #: ../src/guestfs-actions.pod:2110
23579 msgid "guestfs_get_qemu"
23580 msgstr ""
23581
23582 #. type: verbatim
23583 #: ../src/guestfs-actions.pod:2112
23584 #, no-wrap
23585 msgid ""
23586 " const char *\n"
23587 " guestfs_get_qemu (guestfs_h *g);\n"
23588 "\n"
23589 msgstr ""
23590
23591 #. type: textblock
23592 #: ../src/guestfs-actions.pod:2123 ../src/guestfs-actions.pod:6386
23593 msgid "(Added in 1.0.6)"
23594 msgstr ""
23595
23596 #. type: =head2
23597 #: ../src/guestfs-actions.pod:2125
23598 msgid "guestfs_get_recovery_proc"
23599 msgstr ""
23600
23601 #. type: verbatim
23602 #: ../src/guestfs-actions.pod:2127
23603 #, no-wrap
23604 msgid ""
23605 " int\n"
23606 " guestfs_get_recovery_proc (guestfs_h *g);\n"
23607 "\n"
23608 msgstr ""
23609
23610 #. type: textblock
23611 #: ../src/guestfs-actions.pod:2134 ../src/guestfs-actions.pod:3668 ../src/guestfs-actions.pod:3999 ../src/guestfs-actions.pod:4402 ../src/guestfs-actions.pod:4434 ../src/guestfs-actions.pod:5622 ../src/guestfs-actions.pod:5965 ../src/guestfs-actions.pod:6410 ../src/guestfs-actions.pod:7101 ../src/guestfs-actions.pod:7121 ../src/guestfs-actions.pod:7313
23612 msgid "(Added in 1.0.77)"
23613 msgstr ""
23614
23615 #. type: =head2
23616 #: ../src/guestfs-actions.pod:2136
23617 msgid "guestfs_get_selinux"
23618 msgstr ""
23619
23620 #. type: verbatim
23621 #: ../src/guestfs-actions.pod:2138
23622 #, no-wrap
23623 msgid ""
23624 " int\n"
23625 " guestfs_get_selinux (guestfs_h *g);\n"
23626 "\n"
23627 msgstr ""
23628
23629 #. type: textblock
23630 #: ../src/guestfs-actions.pod:2141
23631 msgid ""
23632 "This returns the current setting of the selinux flag which is passed to the "
23633 "appliance at boot time.  See C<guestfs_set_selinux>."
23634 msgstr ""
23635
23636 #. type: textblock
23637 #: ../src/guestfs-actions.pod:2149 ../src/guestfs-actions.pod:2212 ../src/guestfs-actions.pod:6429 ../src/guestfs-actions.pod:6487
23638 msgid "(Added in 1.0.67)"
23639 msgstr ""
23640
23641 #. type: =head2
23642 #: ../src/guestfs-actions.pod:2151
23643 msgid "guestfs_get_state"
23644 msgstr ""
23645
23646 #. type: verbatim
23647 #: ../src/guestfs-actions.pod:2153
23648 #, no-wrap
23649 msgid ""
23650 " int\n"
23651 " guestfs_get_state (guestfs_h *g);\n"
23652 "\n"
23653 msgstr ""
23654
23655 #. type: =head2
23656 #: ../src/guestfs-actions.pod:2165
23657 msgid "guestfs_get_trace"
23658 msgstr ""
23659
23660 #. type: verbatim
23661 #: ../src/guestfs-actions.pod:2167
23662 #, no-wrap
23663 msgid ""
23664 " int\n"
23665 " guestfs_get_trace (guestfs_h *g);\n"
23666 "\n"
23667 msgstr ""
23668
23669 #. type: =head2
23670 #: ../src/guestfs-actions.pod:2176
23671 msgid "guestfs_get_umask"
23672 msgstr ""
23673
23674 #. type: verbatim
23675 #: ../src/guestfs-actions.pod:2178
23676 #, no-wrap
23677 msgid ""
23678 " int\n"
23679 " guestfs_get_umask (guestfs_h *g);\n"
23680 "\n"
23681 msgstr ""
23682
23683 #. type: textblock
23684 #: ../src/guestfs-actions.pod:2181
23685 msgid ""
23686 "Return the current umask.  By default the umask is C<022> unless it has been "
23687 "set by calling C<guestfs_umask>."
23688 msgstr ""
23689
23690 #. type: =head2
23691 #: ../src/guestfs-actions.pod:2188
23692 msgid "guestfs_get_verbose"
23693 msgstr ""
23694
23695 #. type: verbatim
23696 #: ../src/guestfs-actions.pod:2190
23697 #, no-wrap
23698 msgid ""
23699 " int\n"
23700 " guestfs_get_verbose (guestfs_h *g);\n"
23701 "\n"
23702 msgstr ""
23703
23704 #. type: =head2
23705 #: ../src/guestfs-actions.pod:2199
23706 msgid "guestfs_getcon"
23707 msgstr ""
23708
23709 #. type: verbatim
23710 #: ../src/guestfs-actions.pod:2201
23711 #, no-wrap
23712 msgid ""
23713 " char *\n"
23714 " guestfs_getcon (guestfs_h *g);\n"
23715 "\n"
23716 msgstr ""
23717
23718 #. type: textblock
23719 #: ../src/guestfs-actions.pod:2206
23720 msgid "See the documentation about SELINUX in L<guestfs(3)>, and C<guestfs_setcon>"
23721 msgstr ""
23722
23723 #. type: =head2
23724 #: ../src/guestfs-actions.pod:2214
23725 msgid "guestfs_getxattr"
23726 msgstr ""
23727
23728 #. type: verbatim
23729 #: ../src/guestfs-actions.pod:2216
23730 #, no-wrap
23731 msgid ""
23732 " char *\n"
23733 " guestfs_getxattr (guestfs_h *g,\n"
23734 "                   const char *path,\n"
23735 "                   const char *name,\n"
23736 "                   size_t *size_r);\n"
23737 "\n"
23738 msgstr ""
23739
23740 #. type: textblock
23741 #: ../src/guestfs-actions.pod:2222
23742 msgid ""
23743 "Get a single extended attribute from file C<path> named C<name>.  This call "
23744 "follows symlinks.  If you want to lookup an extended attribute for the "
23745 "symlink itself, use C<guestfs_lgetxattr>."
23746 msgstr ""
23747
23748 #. type: textblock
23749 #: ../src/guestfs-actions.pod:2226 ../src/guestfs-actions.pod:3682
23750 msgid ""
23751 "Normally it is better to get all extended attributes from a file in one go "
23752 "by calling C<guestfs_getxattrs>.  However some Linux filesystem "
23753 "implementations are buggy and do not provide a way to list out attributes.  "
23754 "For these filesystems (notably ntfs-3g)  you have to know the names of the "
23755 "extended attributes you want in advance and call this function."
23756 msgstr ""
23757
23758 #. type: textblock
23759 #: ../src/guestfs-actions.pod:2236
23760 msgid "See also: C<guestfs_getxattrs>, C<guestfs_lgetxattr>, L<attr(5)>."
23761 msgstr ""
23762
23763 #. type: textblock
23764 #: ../src/guestfs-actions.pod:2238 ../src/guestfs-actions.pod:2429 ../src/guestfs-actions.pod:2899 ../src/guestfs-actions.pod:3694 ../src/guestfs-actions.pod:5615 ../src/guestfs-actions.pod:5641 ../src/guestfs-actions.pod:5822
23765 msgid ""
23766 "This function returns a buffer, or NULL on error.  The size of the returned "
23767 "buffer is written to C<*size_r>.  I<The caller must free the returned buffer "
23768 "after use>."
23769 msgstr ""
23770
23771 #. type: textblock
23772 #: ../src/guestfs-actions.pod:2242 ../src/guestfs-actions.pod:3698
23773 msgid "(Added in 1.7.24)"
23774 msgstr ""
23775
23776 #. type: =head2
23777 #: ../src/guestfs-actions.pod:2244
23778 msgid "guestfs_getxattrs"
23779 msgstr ""
23780
23781 #. type: verbatim
23782 #: ../src/guestfs-actions.pod:2246
23783 #, no-wrap
23784 msgid ""
23785 " struct guestfs_xattr_list *\n"
23786 " guestfs_getxattrs (guestfs_h *g,\n"
23787 "                    const char *path);\n"
23788 "\n"
23789 msgstr ""
23790
23791 #. type: textblock
23792 #: ../src/guestfs-actions.pod:2256
23793 msgid "See also: C<guestfs_lgetxattrs>, L<attr(5)>."
23794 msgstr ""
23795
23796 #. type: textblock
23797 #: ../src/guestfs-actions.pod:2258 ../src/guestfs-actions.pod:3710 ../src/guestfs-actions.pod:4398
23798 msgid ""
23799 "This function returns a C<struct guestfs_xattr_list *>, or NULL if there was "
23800 "an error.  I<The caller must call C<guestfs_free_xattr_list> after use>."
23801 msgstr ""
23802
23803 #. type: textblock
23804 #: ../src/guestfs-actions.pod:2262 ../src/guestfs-actions.pod:3714 ../src/guestfs-actions.pod:3913 ../src/guestfs-actions.pod:3949 ../src/guestfs-actions.pod:5995 ../src/guestfs-actions.pod:6506 ../src/guestfs-actions.pod:7901
23805 msgid "(Added in 1.0.59)"
23806 msgstr ""
23807
23808 #. type: =head2
23809 #: ../src/guestfs-actions.pod:2264
23810 msgid "guestfs_glob_expand"
23811 msgstr ""
23812
23813 #. type: verbatim
23814 #: ../src/guestfs-actions.pod:2266
23815 #, no-wrap
23816 msgid ""
23817 " char **\n"
23818 " guestfs_glob_expand (guestfs_h *g,\n"
23819 "                      const char *pattern);\n"
23820 "\n"
23821 msgstr ""
23822
23823 #. type: textblock
23824 #: ../src/guestfs-actions.pod:2285 ../src/guestfs-actions.pod:6699 ../src/guestfs-actions.pod:6716
23825 msgid "(Added in 1.0.50)"
23826 msgstr ""
23827
23828 #. type: =head2
23829 #: ../src/guestfs-actions.pod:2287
23830 msgid "guestfs_grep"
23831 msgstr ""
23832
23833 #. type: verbatim
23834 #: ../src/guestfs-actions.pod:2289
23835 #, no-wrap
23836 msgid ""
23837 " char **\n"
23838 " guestfs_grep (guestfs_h *g,\n"
23839 "               const char *regex,\n"
23840 "               const char *path);\n"
23841 "\n"
23842 msgstr ""
23843
23844 #. type: =head2
23845 #: ../src/guestfs-actions.pod:2306
23846 msgid "guestfs_grepi"
23847 msgstr ""
23848
23849 #. type: verbatim
23850 #: ../src/guestfs-actions.pod:2308
23851 #, no-wrap
23852 msgid ""
23853 " char **\n"
23854 " guestfs_grepi (guestfs_h *g,\n"
23855 "                const char *regex,\n"
23856 "                const char *path);\n"
23857 "\n"
23858 msgstr ""
23859
23860 #. type: =head2
23861 #: ../src/guestfs-actions.pod:2325
23862 msgid "guestfs_grub_install"
23863 msgstr ""
23864
23865 #. type: verbatim
23866 #: ../src/guestfs-actions.pod:2327
23867 #, no-wrap
23868 msgid ""
23869 " int\n"
23870 " guestfs_grub_install (guestfs_h *g,\n"
23871 "                       const char *root,\n"
23872 "                       const char *device);\n"
23873 "\n"
23874 msgstr ""
23875
23876 #. type: textblock
23877 #: ../src/guestfs-actions.pod:2348
23878 msgid "(Added in 1.0.17)"
23879 msgstr ""
23880
23881 #. type: =head2
23882 #: ../src/guestfs-actions.pod:2350
23883 msgid "guestfs_head"
23884 msgstr ""
23885
23886 #. type: verbatim
23887 #: ../src/guestfs-actions.pod:2352
23888 #, no-wrap
23889 msgid ""
23890 " char **\n"
23891 " guestfs_head (guestfs_h *g,\n"
23892 "               const char *path);\n"
23893 "\n"
23894 msgstr ""
23895
23896 #. type: =head2
23897 #: ../src/guestfs-actions.pod:2368
23898 msgid "guestfs_head_n"
23899 msgstr ""
23900
23901 #. type: verbatim
23902 #: ../src/guestfs-actions.pod:2370
23903 #, no-wrap
23904 msgid ""
23905 " char **\n"
23906 " guestfs_head_n (guestfs_h *g,\n"
23907 "                 int nrlines,\n"
23908 "                 const char *path);\n"
23909 "\n"
23910 msgstr ""
23911
23912 #. type: =head2
23913 #: ../src/guestfs-actions.pod:2392
23914 msgid "guestfs_hexdump"
23915 msgstr ""
23916
23917 #. type: verbatim
23918 #: ../src/guestfs-actions.pod:2394
23919 #, no-wrap
23920 msgid ""
23921 " char *\n"
23922 " guestfs_hexdump (guestfs_h *g,\n"
23923 "                  const char *path);\n"
23924 "\n"
23925 msgstr ""
23926
23927 #. type: textblock
23928 #: ../src/guestfs-actions.pod:2407 ../src/guestfs-actions.pod:6780 ../src/guestfs-actions.pod:6835
23929 msgid "(Added in 1.0.22)"
23930 msgstr ""
23931
23932 #. type: =head2
23933 #: ../src/guestfs-actions.pod:2409
23934 msgid "guestfs_initrd_cat"
23935 msgstr ""
23936
23937 #. type: verbatim
23938 #: ../src/guestfs-actions.pod:2411
23939 #, no-wrap
23940 msgid ""
23941 " char *\n"
23942 " guestfs_initrd_cat (guestfs_h *g,\n"
23943 "                     const char *initrdpath,\n"
23944 "                     const char *filename,\n"
23945 "                     size_t *size_r);\n"
23946 "\n"
23947 msgstr ""
23948
23949 #. type: textblock
23950 #: ../src/guestfs-actions.pod:2427
23951 msgid "See also C<guestfs_initrd_list>."
23952 msgstr ""
23953
23954 #. type: =head2
23955 #: ../src/guestfs-actions.pod:2438
23956 msgid "guestfs_initrd_list"
23957 msgstr ""
23958
23959 #. type: verbatim
23960 #: ../src/guestfs-actions.pod:2440
23961 #, no-wrap
23962 msgid ""
23963 " char **\n"
23964 " guestfs_initrd_list (guestfs_h *g,\n"
23965 "                      const char *path);\n"
23966 "\n"
23967 msgstr ""
23968
23969 #. type: =head2
23970 #: ../src/guestfs-actions.pod:2460
23971 msgid "guestfs_inotify_add_watch"
23972 msgstr ""
23973
23974 #. type: verbatim
23975 #: ../src/guestfs-actions.pod:2462
23976 #, no-wrap
23977 msgid ""
23978 " int64_t\n"
23979 " guestfs_inotify_add_watch (guestfs_h *g,\n"
23980 "                            const char *path,\n"
23981 "                            int mask);\n"
23982 "\n"
23983 msgstr ""
23984
23985 #. type: =head2
23986 #: ../src/guestfs-actions.pod:2481
23987 msgid "guestfs_inotify_close"
23988 msgstr ""
23989
23990 #. type: verbatim
23991 #: ../src/guestfs-actions.pod:2483
23992 #, no-wrap
23993 msgid ""
23994 " int\n"
23995 " guestfs_inotify_close (guestfs_h *g);\n"
23996 "\n"
23997 msgstr ""
23998
23999 #. type: =head2
24000 #: ../src/guestfs-actions.pod:2494
24001 msgid "guestfs_inotify_files"
24002 msgstr ""
24003
24004 #. type: verbatim
24005 #: ../src/guestfs-actions.pod:2496
24006 #, no-wrap
24007 msgid ""
24008 " char **\n"
24009 " guestfs_inotify_files (guestfs_h *g);\n"
24010 "\n"
24011 msgstr ""
24012
24013 #. type: textblock
24014 #: ../src/guestfs-actions.pod:2499
24015 msgid ""
24016 "This function is a helpful wrapper around C<guestfs_inotify_read> which just "
24017 "returns a list of pathnames of objects that were touched.  The returned "
24018 "pathnames are sorted and deduplicated."
24019 msgstr ""
24020
24021 #. type: =head2
24022 #: ../src/guestfs-actions.pod:2509
24023 msgid "guestfs_inotify_init"
24024 msgstr ""
24025
24026 #. type: verbatim
24027 #: ../src/guestfs-actions.pod:2511
24028 #, no-wrap
24029 msgid ""
24030 " int\n"
24031 " guestfs_inotify_init (guestfs_h *g,\n"
24032 "                       int maxevents);\n"
24033 "\n"
24034 msgstr ""
24035
24036 #. type: textblock
24037 #: ../src/guestfs-actions.pod:2519
24038 msgid ""
24039 "C<maxevents> is the maximum number of events which will be queued up between "
24040 "calls to C<guestfs_inotify_read> or C<guestfs_inotify_files>.  If this is "
24041 "passed as C<0>, then the kernel (or previously set)  default is used.  For "
24042 "Linux 2.6.29 the default was 16384 events.  Beyond this limit, the kernel "
24043 "throws away events, but records the fact that it threw them away by setting "
24044 "a flag C<IN_Q_OVERFLOW> in the returned structure list (see "
24045 "C<guestfs_inotify_read>)."
24046 msgstr ""
24047
24048 #. type: textblock
24049 #: ../src/guestfs-actions.pod:2529
24050 msgid ""
24051 "Before any events are generated, you have to add some watches to the "
24052 "internal watch list.  See: C<guestfs_inotify_add_watch>, "
24053 "C<guestfs_inotify_rm_watch> and C<guestfs_inotify_watch_all>."
24054 msgstr ""
24055
24056 #. type: textblock
24057 #: ../src/guestfs-actions.pod:2535
24058 msgid ""
24059 "Queued up events should be read periodically by calling "
24060 "C<guestfs_inotify_read> (or C<guestfs_inotify_files> which is just a helpful "
24061 "wrapper around C<guestfs_inotify_read>).  If you don't read the events out "
24062 "often enough then you risk the internal queue overflowing."
24063 msgstr ""
24064
24065 #. type: textblock
24066 #: ../src/guestfs-actions.pod:2542
24067 msgid ""
24068 "The handle should be closed after use by calling C<guestfs_inotify_close>.  "
24069 "This also removes any watches automatically."
24070 msgstr ""
24071
24072 #. type: =head2
24073 #: ../src/guestfs-actions.pod:2555
24074 msgid "guestfs_inotify_read"
24075 msgstr ""
24076
24077 #. type: verbatim
24078 #: ../src/guestfs-actions.pod:2557
24079 #, no-wrap
24080 msgid ""
24081 " struct guestfs_inotify_event_list *\n"
24082 " guestfs_inotify_read (guestfs_h *g);\n"
24083 "\n"
24084 msgstr ""
24085
24086 #. type: textblock
24087 #: ../src/guestfs-actions.pod:2571
24088 msgid ""
24089 "This function returns a C<struct guestfs_inotify_event_list *>, or NULL if "
24090 "there was an error.  I<The caller must call "
24091 "C<guestfs_free_inotify_event_list> after use>."
24092 msgstr ""
24093
24094 #. type: =head2
24095 #: ../src/guestfs-actions.pod:2577
24096 msgid "guestfs_inotify_rm_watch"
24097 msgstr ""
24098
24099 #. type: verbatim
24100 #: ../src/guestfs-actions.pod:2579
24101 #, no-wrap
24102 msgid ""
24103 " int\n"
24104 " guestfs_inotify_rm_watch (guestfs_h *g,\n"
24105 "                           int wd);\n"
24106 "\n"
24107 msgstr ""
24108
24109 #. type: textblock
24110 #: ../src/guestfs-actions.pod:2583
24111 msgid ""
24112 "Remove a previously defined inotify watch.  See "
24113 "C<guestfs_inotify_add_watch>."
24114 msgstr ""
24115
24116 #. type: =head2
24117 #: ../src/guestfs-actions.pod:2590
24118 msgid "guestfs_inspect_get_arch"
24119 msgstr ""
24120
24121 #. type: verbatim
24122 #: ../src/guestfs-actions.pod:2592
24123 #, no-wrap
24124 msgid ""
24125 " char *\n"
24126 " guestfs_inspect_get_arch (guestfs_h *g,\n"
24127 "                           const char *root);\n"
24128 "\n"
24129 msgstr ""
24130
24131 #. type: textblock
24132 #: ../src/guestfs-actions.pod:2596
24133 msgid ""
24134 "This returns the architecture of the inspected operating system.  The "
24135 "possible return values are listed under C<guestfs_file_architecture>."
24136 msgstr ""
24137
24138 #. type: =head2
24139 #: ../src/guestfs-actions.pod:2610
24140 msgid "guestfs_inspect_get_distro"
24141 msgstr ""
24142
24143 #. type: verbatim
24144 #: ../src/guestfs-actions.pod:2612
24145 #, no-wrap
24146 msgid ""
24147 " char *\n"
24148 " guestfs_inspect_get_distro (guestfs_h *g,\n"
24149 "                             const char *root);\n"
24150 "\n"
24151 msgstr ""
24152
24153 #. type: =head2
24154 #: ../src/guestfs-actions.pod:2700
24155 msgid "guestfs_inspect_get_drive_mappings"
24156 msgstr ""
24157
24158 #. type: verbatim
24159 #: ../src/guestfs-actions.pod:2702
24160 #, no-wrap
24161 msgid ""
24162 " char **\n"
24163 " guestfs_inspect_get_drive_mappings (guestfs_h *g,\n"
24164 "                                     const char *root);\n"
24165 "\n"
24166 msgstr ""
24167
24168 #. type: textblock
24169 #: ../src/guestfs-actions.pod:2731
24170 msgid ""
24171 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
24172 "C<guestfs_inspect_get_mountpoints>, C<guestfs_inspect_get_filesystems>."
24173 msgstr ""
24174
24175 #. type: textblock
24176 #: ../src/guestfs-actions.pod:2735 ../src/guestfs-actions.pod:3003 ../src/guestfs-actions.pod:3801 ../src/guestfs-actions.pod:5083 ../src/guestfs-actions.pod:7137
24177 msgid ""
24178 "This function returns a NULL-terminated array of strings, or NULL if there "
24179 "was an error.  The array of strings will always have length C<2n+1>, where "
24180 "C<n> keys and values alternate, followed by the trailing NULL entry.  I<The "
24181 "caller must free the strings and the array after use>."
24182 msgstr ""
24183
24184 #. type: textblock
24185 #: ../src/guestfs-actions.pod:2741 ../src/guestfs-actions.pod:3197
24186 msgid "(Added in 1.9.17)"
24187 msgstr ""
24188
24189 #. type: =head2
24190 #: ../src/guestfs-actions.pod:2743
24191 msgid "guestfs_inspect_get_filesystems"
24192 msgstr ""
24193
24194 #. type: verbatim
24195 #: ../src/guestfs-actions.pod:2745
24196 #, no-wrap
24197 msgid ""
24198 " char **\n"
24199 " guestfs_inspect_get_filesystems (guestfs_h *g,\n"
24200 "                                  const char *root);\n"
24201 "\n"
24202 msgstr ""
24203
24204 #. type: textblock
24205 #: ../src/guestfs-actions.pod:2757
24206 msgid ""
24207 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
24208 "C<guestfs_inspect_get_mountpoints>."
24209 msgstr ""
24210
24211 #. type: =head2
24212 #: ../src/guestfs-actions.pod:2766
24213 msgid "guestfs_inspect_get_format"
24214 msgstr ""
24215
24216 #. type: verbatim
24217 #: ../src/guestfs-actions.pod:2768
24218 #, no-wrap
24219 msgid ""
24220 " char *\n"
24221 " guestfs_inspect_get_format (guestfs_h *g,\n"
24222 "                             const char *root);\n"
24223 "\n"
24224 msgstr ""
24225
24226 #. type: textblock
24227 #: ../src/guestfs-actions.pod:2802 ../src/guestfs-actions.pod:3233 ../src/guestfs-actions.pod:3249 ../src/guestfs-actions.pod:3267 ../src/guestfs-actions.pod:6033
24228 msgid "(Added in 1.9.4)"
24229 msgstr ""
24230
24231 #. type: =head2
24232 #: ../src/guestfs-actions.pod:2804
24233 msgid "guestfs_inspect_get_hostname"
24234 msgstr ""
24235
24236 #. type: verbatim
24237 #: ../src/guestfs-actions.pod:2806
24238 #, no-wrap
24239 msgid ""
24240 " char *\n"
24241 " guestfs_inspect_get_hostname (guestfs_h *g,\n"
24242 "                               const char *root);\n"
24243 "\n"
24244 msgstr ""
24245
24246 #. type: textblock
24247 #: ../src/guestfs-actions.pod:2821
24248 msgid "(Added in 1.7.9)"
24249 msgstr ""
24250
24251 #. type: =head2
24252 #: ../src/guestfs-actions.pod:2823
24253 msgid "guestfs_inspect_get_icon"
24254 msgstr ""
24255
24256 #. type: verbatim
24257 #: ../src/guestfs-actions.pod:2825
24258 #, no-wrap
24259 msgid ""
24260 " char *\n"
24261 " guestfs_inspect_get_icon (guestfs_h *g,\n"
24262 "                           const char *root,\n"
24263 "                           size_t *size_r,\n"
24264 "                           ...);\n"
24265 "\n"
24266 msgstr ""
24267
24268 #. type: verbatim
24269 #: ../src/guestfs-actions.pod:2836
24270 #, no-wrap
24271 msgid ""
24272 " GUESTFS_INSPECT_GET_ICON_FAVICON, int favicon,\n"
24273 " GUESTFS_INSPECT_GET_ICON_HIGHQUALITY, int highquality,\n"
24274 "\n"
24275 msgstr ""
24276
24277 #. type: textblock
24278 #: ../src/guestfs-actions.pod:2903 ../src/guestfs-actions.pod:3728 ../src/guestfs-actions.pod:4982
24279 msgid "(Added in 1.11.12)"
24280 msgstr ""
24281
24282 #. type: =head2
24283 #: ../src/guestfs-actions.pod:2905
24284 msgid "guestfs_inspect_get_icon_va"
24285 msgstr ""
24286
24287 #. type: verbatim
24288 #: ../src/guestfs-actions.pod:2907
24289 #, no-wrap
24290 msgid ""
24291 " char *\n"
24292 " guestfs_inspect_get_icon_va (guestfs_h *g,\n"
24293 "                              const char *root,\n"
24294 "                              size_t *size_r,\n"
24295 "                              va_list args);\n"
24296 "\n"
24297 msgstr ""
24298
24299 #. type: textblock
24300 #: ../src/guestfs-actions.pod:2913
24301 msgid "This is the \"va_list variant\" of L</guestfs_inspect_get_icon>."
24302 msgstr ""
24303
24304 #. type: =head2
24305 #: ../src/guestfs-actions.pod:2917
24306 msgid "guestfs_inspect_get_icon_argv"
24307 msgstr ""
24308
24309 #. type: verbatim
24310 #: ../src/guestfs-actions.pod:2919
24311 #, no-wrap
24312 msgid ""
24313 " char *\n"
24314 " guestfs_inspect_get_icon_argv (guestfs_h *g,\n"
24315 "                                const char *root,\n"
24316 "                                size_t *size_r,\n"
24317 "                                const struct guestfs_inspect_get_icon_argv "
24318 "*optargs);\n"
24319 "\n"
24320 msgstr ""
24321
24322 #. type: textblock
24323 #: ../src/guestfs-actions.pod:2925
24324 msgid "This is the \"argv variant\" of L</guestfs_inspect_get_icon>."
24325 msgstr ""
24326
24327 #. type: =head2
24328 #: ../src/guestfs-actions.pod:2929
24329 msgid "guestfs_inspect_get_major_version"
24330 msgstr ""
24331
24332 #. type: verbatim
24333 #: ../src/guestfs-actions.pod:2931
24334 #, no-wrap
24335 msgid ""
24336 " int\n"
24337 " guestfs_inspect_get_major_version (guestfs_h *g,\n"
24338 "                                    const char *root);\n"
24339 "\n"
24340 msgstr ""
24341
24342 #. type: =head2
24343 #: ../src/guestfs-actions.pod:2953
24344 msgid "guestfs_inspect_get_minor_version"
24345 msgstr ""
24346
24347 #. type: verbatim
24348 #: ../src/guestfs-actions.pod:2955
24349 #, no-wrap
24350 msgid ""
24351 " int\n"
24352 " guestfs_inspect_get_minor_version (guestfs_h *g,\n"
24353 "                                    const char *root);\n"
24354 "\n"
24355 msgstr ""
24356
24357 #. type: textblock
24358 #: ../src/guestfs-actions.pod:2964
24359 msgid ""
24360 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
24361 "C<guestfs_inspect_get_major_version>."
24362 msgstr ""
24363
24364 #. type: =head2
24365 #: ../src/guestfs-actions.pod:2971
24366 msgid "guestfs_inspect_get_mountpoints"
24367 msgstr ""
24368
24369 #. type: verbatim
24370 #: ../src/guestfs-actions.pod:2973
24371 #, no-wrap
24372 msgid ""
24373 " char **\n"
24374 " guestfs_inspect_get_mountpoints (guestfs_h *g,\n"
24375 "                                  const char *root);\n"
24376 "\n"
24377 msgstr ""
24378
24379 #. type: textblock
24380 #: ../src/guestfs-actions.pod:2994
24381 msgid ""
24382 "For operating systems like Windows which still use drive letters, this call "
24383 "will only return an entry for the first drive \"mounted on\" C</>.  For "
24384 "information about the mapping of drive letters to partitions, see "
24385 "C<guestfs_inspect_get_drive_mappings>."
24386 msgstr ""
24387
24388 #. type: textblock
24389 #: ../src/guestfs-actions.pod:3000
24390 msgid ""
24391 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
24392 "C<guestfs_inspect_get_filesystems>."
24393 msgstr ""
24394
24395 #. type: =head2
24396 #: ../src/guestfs-actions.pod:3011
24397 msgid "guestfs_inspect_get_package_format"
24398 msgstr ""
24399
24400 #. type: verbatim
24401 #: ../src/guestfs-actions.pod:3013
24402 #, no-wrap
24403 msgid ""
24404 " char *\n"
24405 " guestfs_inspect_get_package_format (guestfs_h *g,\n"
24406 "                                     const char *root);\n"
24407 "\n"
24408 msgstr ""
24409
24410 #. type: textblock
24411 #: ../src/guestfs-actions.pod:3017
24412 msgid ""
24413 "This function and C<guestfs_inspect_get_package_management> return the "
24414 "package format and package management tool used by the inspected operating "
24415 "system.  For example for Fedora these functions would return C<rpm> (package "
24416 "format) and C<yum> (package management)."
24417 msgstr ""
24418
24419 #. type: textblock
24420 #: ../src/guestfs-actions.pod:3035 ../src/guestfs-actions.pod:3063
24421 msgid "(Added in 1.7.5)"
24422 msgstr ""
24423
24424 #. type: =head2
24425 #: ../src/guestfs-actions.pod:3037
24426 msgid "guestfs_inspect_get_package_management"
24427 msgstr ""
24428
24429 #. type: verbatim
24430 #: ../src/guestfs-actions.pod:3039
24431 #, no-wrap
24432 msgid ""
24433 " char *\n"
24434 " guestfs_inspect_get_package_management (guestfs_h *g,\n"
24435 "                                         const char *root);\n"
24436 "\n"
24437 msgstr ""
24438
24439 #. type: textblock
24440 #: ../src/guestfs-actions.pod:3043
24441 msgid ""
24442 "C<guestfs_inspect_get_package_format> and this function return the package "
24443 "format and package management tool used by the inspected operating system.  "
24444 "For example for Fedora these functions would return C<rpm> (package format) "
24445 "and C<yum> (package management)."
24446 msgstr ""
24447
24448 #. type: =head2
24449 #: ../src/guestfs-actions.pod:3065
24450 msgid "guestfs_inspect_get_product_name"
24451 msgstr ""
24452
24453 #. type: verbatim
24454 #: ../src/guestfs-actions.pod:3067
24455 #, no-wrap
24456 msgid ""
24457 " char *\n"
24458 " guestfs_inspect_get_product_name (guestfs_h *g,\n"
24459 "                                   const char *root);\n"
24460 "\n"
24461 msgstr ""
24462
24463 #. type: =head2
24464 #: ../src/guestfs-actions.pod:3086
24465 msgid "guestfs_inspect_get_product_variant"
24466 msgstr ""
24467
24468 #. type: verbatim
24469 #: ../src/guestfs-actions.pod:3088
24470 #, no-wrap
24471 msgid ""
24472 " char *\n"
24473 " guestfs_inspect_get_product_variant (guestfs_h *g,\n"
24474 "                                      const char *root);\n"
24475 "\n"
24476 msgstr ""
24477
24478 #. type: textblock
24479 #: ../src/guestfs-actions.pod:3111
24480 msgid ""
24481 "Please read L<guestfs(3)/INSPECTION> for more details.  See also "
24482 "C<guestfs_inspect_get_product_name>, C<guestfs_inspect_get_major_version>."
24483 msgstr ""
24484
24485 #. type: textblock
24486 #: ../src/guestfs-actions.pod:3118
24487 msgid "(Added in 1.9.13)"
24488 msgstr ""
24489
24490 #. type: =head2
24491 #: ../src/guestfs-actions.pod:3120
24492 msgid "guestfs_inspect_get_roots"
24493 msgstr ""
24494
24495 #. type: verbatim
24496 #: ../src/guestfs-actions.pod:3122
24497 #, no-wrap
24498 msgid ""
24499 " char **\n"
24500 " guestfs_inspect_get_roots (guestfs_h *g);\n"
24501 "\n"
24502 msgstr ""
24503
24504 #. type: textblock
24505 #: ../src/guestfs-actions.pod:3125
24506 msgid ""
24507 "This function is a convenient way to get the list of root devices, as "
24508 "returned from a previous call to C<guestfs_inspect_os>, but without redoing "
24509 "the whole inspection process."
24510 msgstr ""
24511
24512 #. type: textblock
24513 #: ../src/guestfs-actions.pod:3129
24514 msgid ""
24515 "This returns an empty list if either no root devices were found or the "
24516 "caller has not called C<guestfs_inspect_os>."
24517 msgstr ""
24518
24519 #. type: textblock
24520 #: ../src/guestfs-actions.pod:3138
24521 msgid "(Added in 1.7.3)"
24522 msgstr ""
24523
24524 #. type: =head2
24525 #: ../src/guestfs-actions.pod:3140
24526 msgid "guestfs_inspect_get_type"
24527 msgstr ""
24528
24529 #. type: verbatim
24530 #: ../src/guestfs-actions.pod:3142
24531 #, no-wrap
24532 msgid ""
24533 " char *\n"
24534 " guestfs_inspect_get_type (guestfs_h *g,\n"
24535 "                           const char *root);\n"
24536 "\n"
24537 msgstr ""
24538
24539 #. type: =head2
24540 #: ../src/guestfs-actions.pod:3179
24541 msgid "guestfs_inspect_get_windows_current_control_set"
24542 msgstr ""
24543
24544 #. type: verbatim
24545 #: ../src/guestfs-actions.pod:3181
24546 #, no-wrap
24547 msgid ""
24548 " char *\n"
24549 " guestfs_inspect_get_windows_current_control_set (guestfs_h *g,\n"
24550 "                                                  const char *root);\n"
24551 "\n"
24552 msgstr ""
24553
24554 #. type: =head2
24555 #: ../src/guestfs-actions.pod:3199
24556 msgid "guestfs_inspect_get_windows_systemroot"
24557 msgstr ""
24558
24559 #. type: verbatim
24560 #: ../src/guestfs-actions.pod:3201
24561 #, no-wrap
24562 msgid ""
24563 " char *\n"
24564 " guestfs_inspect_get_windows_systemroot (guestfs_h *g,\n"
24565 "                                         const char *root);\n"
24566 "\n"
24567 msgstr ""
24568
24569 #. type: textblock
24570 #: ../src/guestfs-actions.pod:3217
24571 msgid "(Added in 1.5.25)"
24572 msgstr ""
24573
24574 #. type: =head2
24575 #: ../src/guestfs-actions.pod:3219
24576 msgid "guestfs_inspect_is_live"
24577 msgstr ""
24578
24579 #. type: verbatim
24580 #: ../src/guestfs-actions.pod:3221
24581 #, no-wrap
24582 msgid ""
24583 " int\n"
24584 " guestfs_inspect_is_live (guestfs_h *g,\n"
24585 "                          const char *root);\n"
24586 "\n"
24587 msgstr ""
24588
24589 #. type: textblock
24590 #: ../src/guestfs-actions.pod:3225
24591 msgid ""
24592 "If C<guestfs_inspect_get_format> returns C<installer> (this is an install "
24593 "disk), then this returns true if a live image was detected on the disk."
24594 msgstr ""
24595
24596 #. type: =head2
24597 #: ../src/guestfs-actions.pod:3235
24598 msgid "guestfs_inspect_is_multipart"
24599 msgstr ""
24600
24601 #. type: verbatim
24602 #: ../src/guestfs-actions.pod:3237
24603 #, no-wrap
24604 msgid ""
24605 " int\n"
24606 " guestfs_inspect_is_multipart (guestfs_h *g,\n"
24607 "                               const char *root);\n"
24608 "\n"
24609 msgstr ""
24610
24611 #. type: textblock
24612 #: ../src/guestfs-actions.pod:3241
24613 msgid ""
24614 "If C<guestfs_inspect_get_format> returns C<installer> (this is an install "
24615 "disk), then this returns true if the disk is part of a set."
24616 msgstr ""
24617
24618 #. type: =head2
24619 #: ../src/guestfs-actions.pod:3251
24620 msgid "guestfs_inspect_is_netinst"
24621 msgstr ""
24622
24623 #. type: verbatim
24624 #: ../src/guestfs-actions.pod:3253
24625 #, no-wrap
24626 msgid ""
24627 " int\n"
24628 " guestfs_inspect_is_netinst (guestfs_h *g,\n"
24629 "                             const char *root);\n"
24630 "\n"
24631 msgstr ""
24632
24633 #. type: textblock
24634 #: ../src/guestfs-actions.pod:3257
24635 msgid ""
24636 "If C<guestfs_inspect_get_format> returns C<installer> (this is an install "
24637 "disk), then this returns true if the disk is a network installer, ie. not a "
24638 "self-contained install CD but one which is likely to require network access "
24639 "to complete the install."
24640 msgstr ""
24641
24642 #. type: =head2
24643 #: ../src/guestfs-actions.pod:3269
24644 msgid "guestfs_inspect_list_applications"
24645 msgstr ""
24646
24647 #. type: verbatim
24648 #: ../src/guestfs-actions.pod:3271
24649 #, no-wrap
24650 msgid ""
24651 " struct guestfs_application_list *\n"
24652 " guestfs_inspect_list_applications (guestfs_h *g,\n"
24653 "                                    const char *root);\n"
24654 "\n"
24655 msgstr ""
24656
24657 #. type: textblock
24658 #: ../src/guestfs-actions.pod:3277
24659 msgid ""
24660 "I<Note:> This call works differently from other parts of the inspection "
24661 "API.  You have to call C<guestfs_inspect_os>, then "
24662 "C<guestfs_inspect_get_mountpoints>, then mount up the disks, before calling "
24663 "this.  Listing applications is a significantly more difficult operation "
24664 "which requires access to the full filesystem.  Also note that unlike the "
24665 "other C<guestfs_inspect_get_*> calls which are just returning data cached in "
24666 "the libguestfs handle, this call actually reads parts of the mounted "
24667 "filesystems during the call."
24668 msgstr ""
24669
24670 #. type: textblock
24671 #: ../src/guestfs-actions.pod:3367
24672 msgid ""
24673 "This function returns a C<struct guestfs_application_list *>, or NULL if "
24674 "there was an error.  I<The caller must call C<guestfs_free_application_list> "
24675 "after use>."
24676 msgstr ""
24677
24678 #. type: textblock
24679 #: ../src/guestfs-actions.pod:3371
24680 msgid "(Added in 1.7.8)"
24681 msgstr ""
24682
24683 #. type: =head2
24684 #: ../src/guestfs-actions.pod:3373
24685 msgid "guestfs_inspect_os"
24686 msgstr ""
24687
24688 #. type: verbatim
24689 #: ../src/guestfs-actions.pod:3375
24690 #, no-wrap
24691 msgid ""
24692 " char **\n"
24693 " guestfs_inspect_os (guestfs_h *g);\n"
24694 "\n"
24695 msgstr ""
24696
24697 #. type: textblock
24698 #: ../src/guestfs-actions.pod:3391
24699 msgid ""
24700 "You can pass the root string(s) returned to other C<guestfs_inspect_get_*> "
24701 "functions in order to query further information about each operating system, "
24702 "such as the name and version."
24703 msgstr ""
24704
24705 #. type: textblock
24706 #: ../src/guestfs-actions.pod:3396
24707 msgid ""
24708 "This function uses other libguestfs features such as C<guestfs_mount_ro> and "
24709 "C<guestfs_umount_all> in order to mount and unmount filesystems and look at "
24710 "the contents.  This should be called with no disks currently mounted.  The "
24711 "function may also use Augeas, so any existing Augeas handle will be closed."
24712 msgstr ""
24713
24714 #. type: textblock
24715 #: ../src/guestfs-actions.pod:3408 ../src/guestfs-actions.pod:3739 ../src/guestfs-actions.pod:3821
24716 msgid "See also C<guestfs_list_filesystems>."
24717 msgstr ""
24718
24719 #. type: =head2
24720 #: ../src/guestfs-actions.pod:3416
24721 msgid "guestfs_is_blockdev"
24722 msgstr ""
24723
24724 #. type: verbatim
24725 #: ../src/guestfs-actions.pod:3418
24726 #, no-wrap
24727 msgid ""
24728 " int\n"
24729 " guestfs_is_blockdev (guestfs_h *g,\n"
24730 "                      const char *path);\n"
24731 "\n"
24732 msgstr ""
24733
24734 #. type: textblock
24735 #: ../src/guestfs-actions.pod:3425 ../src/guestfs-actions.pod:3454 ../src/guestfs-actions.pod:3484 ../src/guestfs-actions.pod:3499 ../src/guestfs-actions.pod:3515 ../src/guestfs-actions.pod:3571 ../src/guestfs-actions.pod:3586
24736 msgid "See also C<guestfs_stat>."
24737 msgstr ""
24738
24739 #. type: textblock
24740 #: ../src/guestfs-actions.pod:3429 ../src/guestfs-actions.pod:3458 ../src/guestfs-actions.pod:3503 ../src/guestfs-actions.pod:3575 ../src/guestfs-actions.pod:3590
24741 msgid "(Added in 1.5.10)"
24742 msgstr ""
24743
24744 #. type: =head2
24745 #: ../src/guestfs-actions.pod:3431
24746 msgid "guestfs_is_busy"
24747 msgstr ""
24748
24749 #. type: verbatim
24750 #: ../src/guestfs-actions.pod:3433
24751 #, no-wrap
24752 msgid ""
24753 " int\n"
24754 " guestfs_is_busy (guestfs_h *g);\n"
24755 "\n"
24756 msgstr ""
24757
24758 #. type: =head2
24759 #: ../src/guestfs-actions.pod:3445
24760 msgid "guestfs_is_chardev"
24761 msgstr ""
24762
24763 #. type: verbatim
24764 #: ../src/guestfs-actions.pod:3447
24765 #, no-wrap
24766 msgid ""
24767 " int\n"
24768 " guestfs_is_chardev (guestfs_h *g,\n"
24769 "                     const char *path);\n"
24770 "\n"
24771 msgstr ""
24772
24773 #. type: =head2
24774 #: ../src/guestfs-actions.pod:3460
24775 msgid "guestfs_is_config"
24776 msgstr ""
24777
24778 #. type: verbatim
24779 #: ../src/guestfs-actions.pod:3462
24780 #, no-wrap
24781 msgid ""
24782 " int\n"
24783 " guestfs_is_config (guestfs_h *g);\n"
24784 "\n"
24785 msgstr ""
24786
24787 #. type: =head2
24788 #: ../src/guestfs-actions.pod:3474
24789 msgid "guestfs_is_dir"
24790 msgstr ""
24791
24792 #. type: verbatim
24793 #: ../src/guestfs-actions.pod:3476
24794 #, no-wrap
24795 msgid ""
24796 " int\n"
24797 " guestfs_is_dir (guestfs_h *g,\n"
24798 "                 const char *path);\n"
24799 "\n"
24800 msgstr ""
24801
24802 #. type: =head2
24803 #: ../src/guestfs-actions.pod:3490
24804 msgid "guestfs_is_fifo"
24805 msgstr ""
24806
24807 #. type: verbatim
24808 #: ../src/guestfs-actions.pod:3492
24809 #, no-wrap
24810 msgid ""
24811 " int\n"
24812 " guestfs_is_fifo (guestfs_h *g,\n"
24813 "                  const char *path);\n"
24814 "\n"
24815 msgstr ""
24816
24817 #. type: =head2
24818 #: ../src/guestfs-actions.pod:3505
24819 msgid "guestfs_is_file"
24820 msgstr ""
24821
24822 #. type: verbatim
24823 #: ../src/guestfs-actions.pod:3507
24824 #, no-wrap
24825 msgid ""
24826 " int\n"
24827 " guestfs_is_file (guestfs_h *g,\n"
24828 "                  const char *path);\n"
24829 "\n"
24830 msgstr ""
24831
24832 #. type: =head2
24833 #: ../src/guestfs-actions.pod:3521
24834 msgid "guestfs_is_launching"
24835 msgstr ""
24836
24837 #. type: verbatim
24838 #: ../src/guestfs-actions.pod:3523
24839 #, no-wrap
24840 msgid ""
24841 " int\n"
24842 " guestfs_is_launching (guestfs_h *g);\n"
24843 "\n"
24844 msgstr ""
24845
24846 #. type: =head2
24847 #: ../src/guestfs-actions.pod:3535
24848 msgid "guestfs_is_lv"
24849 msgstr ""
24850
24851 #. type: verbatim
24852 #: ../src/guestfs-actions.pod:3537
24853 #, no-wrap
24854 msgid ""
24855 " int\n"
24856 " guestfs_is_lv (guestfs_h *g,\n"
24857 "                const char *device);\n"
24858 "\n"
24859 msgstr ""
24860
24861 #. type: =head2
24862 #: ../src/guestfs-actions.pod:3548
24863 msgid "guestfs_is_ready"
24864 msgstr ""
24865
24866 #. type: verbatim
24867 #: ../src/guestfs-actions.pod:3550
24868 #, no-wrap
24869 msgid ""
24870 " int\n"
24871 " guestfs_is_ready (guestfs_h *g);\n"
24872 "\n"
24873 msgstr ""
24874
24875 #. type: =head2
24876 #: ../src/guestfs-actions.pod:3562
24877 msgid "guestfs_is_socket"
24878 msgstr ""
24879
24880 #. type: verbatim
24881 #: ../src/guestfs-actions.pod:3564
24882 #, no-wrap
24883 msgid ""
24884 " int\n"
24885 " guestfs_is_socket (guestfs_h *g,\n"
24886 "                    const char *path);\n"
24887 "\n"
24888 msgstr ""
24889
24890 #. type: =head2
24891 #: ../src/guestfs-actions.pod:3577
24892 msgid "guestfs_is_symlink"
24893 msgstr ""
24894
24895 #. type: verbatim
24896 #: ../src/guestfs-actions.pod:3579
24897 #, no-wrap
24898 msgid ""
24899 " int\n"
24900 " guestfs_is_symlink (guestfs_h *g,\n"
24901 "                     const char *path);\n"
24902 "\n"
24903 msgstr ""
24904
24905 #. type: =head2
24906 #: ../src/guestfs-actions.pod:3592
24907 msgid "guestfs_is_zero"
24908 msgstr ""
24909
24910 #. type: verbatim
24911 #: ../src/guestfs-actions.pod:3594
24912 #, no-wrap
24913 msgid ""
24914 " int\n"
24915 " guestfs_is_zero (guestfs_h *g,\n"
24916 "                  const char *path);\n"
24917 "\n"
24918 msgstr ""
24919
24920 #. type: textblock
24921 #: ../src/guestfs-actions.pod:3603 ../src/guestfs-actions.pod:3617
24922 msgid "(Added in 1.11.8)"
24923 msgstr ""
24924
24925 #. type: =head2
24926 #: ../src/guestfs-actions.pod:3605
24927 msgid "guestfs_is_zero_device"
24928 msgstr ""
24929
24930 #. type: verbatim
24931 #: ../src/guestfs-actions.pod:3607
24932 #, no-wrap
24933 msgid ""
24934 " int\n"
24935 " guestfs_is_zero_device (guestfs_h *g,\n"
24936 "                         const char *device);\n"
24937 "\n"
24938 msgstr ""
24939
24940 #. type: =head2
24941 #: ../src/guestfs-actions.pod:3619
24942 msgid "guestfs_kill_subprocess"
24943 msgstr ""
24944
24945 #. type: verbatim
24946 #: ../src/guestfs-actions.pod:3621
24947 #, no-wrap
24948 msgid ""
24949 " int\n"
24950 " guestfs_kill_subprocess (guestfs_h *g);\n"
24951 "\n"
24952 msgstr ""
24953
24954 #. type: =head2
24955 #: ../src/guestfs-actions.pod:3630
24956 msgid "guestfs_launch"
24957 msgstr ""
24958
24959 #. type: verbatim
24960 #: ../src/guestfs-actions.pod:3632
24961 #, no-wrap
24962 msgid ""
24963 " int\n"
24964 " guestfs_launch (guestfs_h *g);\n"
24965 "\n"
24966 msgstr ""
24967
24968 #. type: =head2
24969 #: ../src/guestfs-actions.pod:3650
24970 msgid "guestfs_lchown"
24971 msgstr ""
24972
24973 #. type: verbatim
24974 #: ../src/guestfs-actions.pod:3652
24975 #, no-wrap
24976 msgid ""
24977 " int\n"
24978 " guestfs_lchown (guestfs_h *g,\n"
24979 "                 int owner,\n"
24980 "                 int group,\n"
24981 "                 const char *path);\n"
24982 "\n"
24983 msgstr ""
24984
24985 #. type: textblock
24986 #: ../src/guestfs-actions.pod:3658
24987 msgid ""
24988 "Change the file owner to C<owner> and group to C<group>.  This is like "
24989 "C<guestfs_chown> but if C<path> is a symlink then the link itself is "
24990 "changed, not the target."
24991 msgstr ""
24992
24993 #. type: =head2
24994 #: ../src/guestfs-actions.pod:3670
24995 msgid "guestfs_lgetxattr"
24996 msgstr ""
24997
24998 #. type: verbatim
24999 #: ../src/guestfs-actions.pod:3672
25000 #, no-wrap
25001 msgid ""
25002 " char *\n"
25003 " guestfs_lgetxattr (guestfs_h *g,\n"
25004 "                    const char *path,\n"
25005 "                    const char *name,\n"
25006 "                    size_t *size_r);\n"
25007 "\n"
25008 msgstr ""
25009
25010 #. type: textblock
25011 #: ../src/guestfs-actions.pod:3692
25012 msgid "See also: C<guestfs_lgetxattrs>, C<guestfs_getxattr>, L<attr(5)>."
25013 msgstr ""
25014
25015 #. type: =head2
25016 #: ../src/guestfs-actions.pod:3700
25017 msgid "guestfs_lgetxattrs"
25018 msgstr ""
25019
25020 #. type: verbatim
25021 #: ../src/guestfs-actions.pod:3702
25022 #, no-wrap
25023 msgid ""
25024 " struct guestfs_xattr_list *\n"
25025 " guestfs_lgetxattrs (guestfs_h *g,\n"
25026 "                     const char *path);\n"
25027 "\n"
25028 msgstr ""
25029
25030 #. type: textblock
25031 #: ../src/guestfs-actions.pod:3706
25032 msgid ""
25033 "This is the same as C<guestfs_getxattrs>, but if C<path> is a symbolic link, "
25034 "then it returns the extended attributes of the link itself."
25035 msgstr ""
25036
25037 #. type: =head2
25038 #: ../src/guestfs-actions.pod:3716
25039 msgid "guestfs_list_9p"
25040 msgstr ""
25041
25042 #. type: verbatim
25043 #: ../src/guestfs-actions.pod:3718
25044 #, no-wrap
25045 msgid ""
25046 " char **\n"
25047 " guestfs_list_9p (guestfs_h *g);\n"
25048 "\n"
25049 msgstr ""
25050
25051 #. type: =head2
25052 #: ../src/guestfs-actions.pod:3730
25053 msgid "guestfs_list_devices"
25054 msgstr ""
25055
25056 #. type: verbatim
25057 #: ../src/guestfs-actions.pod:3732
25058 #, no-wrap
25059 msgid ""
25060 " char **\n"
25061 " guestfs_list_devices (guestfs_h *g);\n"
25062 "\n"
25063 msgstr ""
25064
25065 #. type: =head2
25066 #: ../src/guestfs-actions.pod:3747
25067 msgid "guestfs_list_dm_devices"
25068 msgstr ""
25069
25070 #. type: verbatim
25071 #: ../src/guestfs-actions.pod:3749
25072 #, no-wrap
25073 msgid ""
25074 " char **\n"
25075 " guestfs_list_dm_devices (guestfs_h *g);\n"
25076 "\n"
25077 msgstr ""
25078
25079 #. type: textblock
25080 #: ../src/guestfs-actions.pod:3754
25081 msgid ""
25082 "The returned list contains C</dev/mapper/*> devices, eg. ones created by a "
25083 "previous call to C<guestfs_luks_open>."
25084 msgstr ""
25085
25086 #. type: textblock
25087 #: ../src/guestfs-actions.pod:3757
25088 msgid ""
25089 "Device mapper devices which correspond to logical volumes are I<not> "
25090 "returned in this list.  Call C<guestfs_lvs> if you want to list logical "
25091 "volumes."
25092 msgstr ""
25093
25094 #. type: textblock
25095 #: ../src/guestfs-actions.pod:3765 ../src/guestfs-actions.pod:5221
25096 msgid "(Added in 1.11.15)"
25097 msgstr ""
25098
25099 #. type: =head2
25100 #: ../src/guestfs-actions.pod:3767
25101 msgid "guestfs_list_filesystems"
25102 msgstr ""
25103
25104 #. type: verbatim
25105 #: ../src/guestfs-actions.pod:3769
25106 #, no-wrap
25107 msgid ""
25108 " char **\n"
25109 " guestfs_list_filesystems (guestfs_h *g);\n"
25110 "\n"
25111 msgstr ""
25112
25113 #. type: textblock
25114 #: ../src/guestfs-actions.pod:3789
25115 msgid ""
25116 "This command runs other libguestfs commands, which might include "
25117 "C<guestfs_mount> and C<guestfs_umount>, and therefore you should use this "
25118 "soon after launch and only when nothing is mounted."
25119 msgstr ""
25120
25121 #. type: textblock
25122 #: ../src/guestfs-actions.pod:3793
25123 msgid ""
25124 "Not all of the filesystems returned will be mountable.  In particular, swap "
25125 "partitions are returned in the list.  Also this command does not check that "
25126 "each filesystem found is valid and mountable, and some filesystems might be "
25127 "mountable but require special options.  Filesystems may not all belong to a "
25128 "single logical operating system (use C<guestfs_inspect_os> to look for "
25129 "OSes)."
25130 msgstr ""
25131
25132 #. type: textblock
25133 #: ../src/guestfs-actions.pod:3807 ../src/guestfs-actions.pod:5582
25134 msgid "(Added in 1.5.15)"
25135 msgstr ""
25136
25137 #. type: =head2
25138 #: ../src/guestfs-actions.pod:3809
25139 msgid "guestfs_list_partitions"
25140 msgstr ""
25141
25142 #. type: verbatim
25143 #: ../src/guestfs-actions.pod:3811
25144 #, no-wrap
25145 msgid ""
25146 " char **\n"
25147 " guestfs_list_partitions (guestfs_h *g);\n"
25148 "\n"
25149 msgstr ""
25150
25151 #. type: textblock
25152 #: ../src/guestfs-actions.pod:3818
25153 msgid ""
25154 "This does not return logical volumes.  For that you will need to call "
25155 "C<guestfs_lvs>."
25156 msgstr ""
25157
25158 #. type: =head2
25159 #: ../src/guestfs-actions.pod:3829
25160 msgid "guestfs_ll"
25161 msgstr ""
25162
25163 #. type: verbatim
25164 #: ../src/guestfs-actions.pod:3831
25165 #, no-wrap
25166 msgid ""
25167 " char *\n"
25168 " guestfs_ll (guestfs_h *g,\n"
25169 "             const char *directory);\n"
25170 "\n"
25171 msgstr ""
25172
25173 #. type: =head2
25174 #: ../src/guestfs-actions.pod:3846
25175 msgid "guestfs_ln"
25176 msgstr ""
25177
25178 #. type: verbatim
25179 #: ../src/guestfs-actions.pod:3848
25180 #, no-wrap
25181 msgid ""
25182 " int\n"
25183 " guestfs_ln (guestfs_h *g,\n"
25184 "             const char *target,\n"
25185 "             const char *linkname);\n"
25186 "\n"
25187 msgstr ""
25188
25189 #. type: =head2
25190 #: ../src/guestfs-actions.pod:3859
25191 msgid "guestfs_ln_f"
25192 msgstr ""
25193
25194 #. type: verbatim
25195 #: ../src/guestfs-actions.pod:3861
25196 #, no-wrap
25197 msgid ""
25198 " int\n"
25199 " guestfs_ln_f (guestfs_h *g,\n"
25200 "               const char *target,\n"
25201 "               const char *linkname);\n"
25202 "\n"
25203 msgstr ""
25204
25205 #. type: =head2
25206 #: ../src/guestfs-actions.pod:3873
25207 msgid "guestfs_ln_s"
25208 msgstr ""
25209
25210 #. type: verbatim
25211 #: ../src/guestfs-actions.pod:3875
25212 #, no-wrap
25213 msgid ""
25214 " int\n"
25215 " guestfs_ln_s (guestfs_h *g,\n"
25216 "               const char *target,\n"
25217 "               const char *linkname);\n"
25218 "\n"
25219 msgstr ""
25220
25221 #. type: =head2
25222 #: ../src/guestfs-actions.pod:3886
25223 msgid "guestfs_ln_sf"
25224 msgstr ""
25225
25226 #. type: verbatim
25227 #: ../src/guestfs-actions.pod:3888
25228 #, no-wrap
25229 msgid ""
25230 " int\n"
25231 " guestfs_ln_sf (guestfs_h *g,\n"
25232 "                const char *target,\n"
25233 "                const char *linkname);\n"
25234 "\n"
25235 msgstr ""
25236
25237 #. type: =head2
25238 #: ../src/guestfs-actions.pod:3900
25239 msgid "guestfs_lremovexattr"
25240 msgstr ""
25241
25242 #. type: verbatim
25243 #: ../src/guestfs-actions.pod:3902
25244 #, no-wrap
25245 msgid ""
25246 " int\n"
25247 " guestfs_lremovexattr (guestfs_h *g,\n"
25248 "                       const char *xattr,\n"
25249 "                       const char *path);\n"
25250 "\n"
25251 msgstr ""
25252
25253 #. type: textblock
25254 #: ../src/guestfs-actions.pod:3907
25255 msgid ""
25256 "This is the same as C<guestfs_removexattr>, but if C<path> is a symbolic "
25257 "link, then it removes an extended attribute of the link itself."
25258 msgstr ""
25259
25260 #. type: =head2
25261 #: ../src/guestfs-actions.pod:3915
25262 msgid "guestfs_ls"
25263 msgstr ""
25264
25265 #. type: verbatim
25266 #: ../src/guestfs-actions.pod:3917
25267 #, no-wrap
25268 msgid ""
25269 " char **\n"
25270 " guestfs_ls (guestfs_h *g,\n"
25271 "             const char *directory);\n"
25272 "\n"
25273 msgstr ""
25274
25275 #. type: textblock
25276 #: ../src/guestfs-actions.pod:3925
25277 msgid ""
25278 "This command is mostly useful for interactive sessions.  Programs should "
25279 "probably use C<guestfs_readdir> instead."
25280 msgstr ""
25281
25282 #. type: =head2
25283 #: ../src/guestfs-actions.pod:3934
25284 msgid "guestfs_lsetxattr"
25285 msgstr ""
25286
25287 #. type: verbatim
25288 #: ../src/guestfs-actions.pod:3936
25289 #, no-wrap
25290 msgid ""
25291 " int\n"
25292 " guestfs_lsetxattr (guestfs_h *g,\n"
25293 "                    const char *xattr,\n"
25294 "                    const char *val,\n"
25295 "                    int vallen,\n"
25296 "                    const char *path);\n"
25297 "\n"
25298 msgstr ""
25299
25300 #. type: textblock
25301 #: ../src/guestfs-actions.pod:3943
25302 msgid ""
25303 "This is the same as C<guestfs_setxattr>, but if C<path> is a symbolic link, "
25304 "then it sets an extended attribute of the link itself."
25305 msgstr ""
25306
25307 #. type: =head2
25308 #: ../src/guestfs-actions.pod:3951
25309 msgid "guestfs_lstat"
25310 msgstr ""
25311
25312 #. type: verbatim
25313 #: ../src/guestfs-actions.pod:3953
25314 #, no-wrap
25315 msgid ""
25316 " struct guestfs_stat *\n"
25317 " guestfs_lstat (guestfs_h *g,\n"
25318 "                const char *path);\n"
25319 "\n"
25320 msgstr ""
25321
25322 #. type: textblock
25323 #: ../src/guestfs-actions.pod:3959
25324 msgid ""
25325 "This is the same as C<guestfs_stat> except that if C<path> is a symbolic "
25326 "link, then the link is stat-ed, not the file it refers to."
25327 msgstr ""
25328
25329 #. type: textblock
25330 #: ../src/guestfs-actions.pod:3965 ../src/guestfs-actions.pod:6740
25331 msgid ""
25332 "This function returns a C<struct guestfs_stat *>, or NULL if there was an "
25333 "error.  I<The caller must call C<guestfs_free_stat> after use>."
25334 msgstr ""
25335
25336 #. type: textblock
25337 #: ../src/guestfs-actions.pod:3969 ../src/guestfs-actions.pod:6744 ../src/guestfs-actions.pod:6762 ../src/guestfs-actions.pod:7143
25338 msgid "(Added in 0.9.2)"
25339 msgstr ""
25340
25341 #. type: =head2
25342 #: ../src/guestfs-actions.pod:3971
25343 msgid "guestfs_lstatlist"
25344 msgstr ""
25345
25346 #. type: verbatim
25347 #: ../src/guestfs-actions.pod:3973
25348 #, no-wrap
25349 msgid ""
25350 " struct guestfs_stat_list *\n"
25351 " guestfs_lstatlist (guestfs_h *g,\n"
25352 "                    const char *path,\n"
25353 "                    char *const *names);\n"
25354 "\n"
25355 msgstr ""
25356
25357 #. type: textblock
25358 #: ../src/guestfs-actions.pod:3978
25359 msgid ""
25360 "This call allows you to perform the C<guestfs_lstat> operation on multiple "
25361 "files, where all files are in the directory C<path>.  C<names> is the list "
25362 "of files from this directory."
25363 msgstr ""
25364
25365 #. type: textblock
25366 #: ../src/guestfs-actions.pod:3987
25367 msgid ""
25368 "This call is intended for programs that want to efficiently list a directory "
25369 "contents without making many round-trips.  See also C<guestfs_lxattrlist> "
25370 "for a similarly efficient call for getting extended attributes.  Very long "
25371 "directory listings might cause the protocol message size to be exceeded, "
25372 "causing this call to fail.  The caller must split up such requests into "
25373 "smaller groups of names."
25374 msgstr ""
25375
25376 #. type: textblock
25377 #: ../src/guestfs-actions.pod:3995
25378 msgid ""
25379 "This function returns a C<struct guestfs_stat_list *>, or NULL if there was "
25380 "an error.  I<The caller must call C<guestfs_free_stat_list> after use>."
25381 msgstr ""
25382
25383 #. type: =head2
25384 #: ../src/guestfs-actions.pod:4001
25385 msgid "guestfs_luks_add_key"
25386 msgstr ""
25387
25388 #. type: verbatim
25389 #: ../src/guestfs-actions.pod:4003
25390 #, no-wrap
25391 msgid ""
25392 " int\n"
25393 " guestfs_luks_add_key (guestfs_h *g,\n"
25394 "                       const char *device,\n"
25395 "                       const char *key,\n"
25396 "                       const char *newkey,\n"
25397 "                       int keyslot);\n"
25398 "\n"
25399 msgstr ""
25400
25401 #. type: textblock
25402 #: ../src/guestfs-actions.pod:4015
25403 msgid ""
25404 "Note that if C<keyslot> already contains a key, then this command will "
25405 "fail.  You have to use C<guestfs_luks_kill_slot> first to remove that key."
25406 msgstr ""
25407
25408 #. type: textblock
25409 #: ../src/guestfs-actions.pod:4021 ../src/guestfs-actions.pod:4061 ../src/guestfs-actions.pod:4084 ../src/guestfs-actions.pod:4104 ../src/guestfs-actions.pod:4139 ../src/guestfs-actions.pod:4158
25410 msgid ""
25411 "This function takes a key or passphrase parameter which could contain "
25412 "sensitive material.  Read the section L</KEYS AND PASSPHRASES> for more "
25413 "information."
25414 msgstr ""
25415
25416 #. type: textblock
25417 #: ../src/guestfs-actions.pod:4025 ../src/guestfs-actions.pod:4065 ../src/guestfs-actions.pod:4088 ../src/guestfs-actions.pod:4108
25418 msgid "(Added in 1.5.2)"
25419 msgstr ""
25420
25421 #. type: =head2
25422 #: ../src/guestfs-actions.pod:4027
25423 msgid "guestfs_luks_close"
25424 msgstr ""
25425
25426 #. type: verbatim
25427 #: ../src/guestfs-actions.pod:4029
25428 #, no-wrap
25429 msgid ""
25430 " int\n"
25431 " guestfs_luks_close (guestfs_h *g,\n"
25432 "                     const char *device);\n"
25433 "\n"
25434 msgstr ""
25435
25436 #. type: textblock
25437 #: ../src/guestfs-actions.pod:4033
25438 msgid ""
25439 "This closes a LUKS device that was created earlier by C<guestfs_luks_open> "
25440 "or C<guestfs_luks_open_ro>.  The C<device> parameter must be the name of the "
25441 "LUKS mapping device (ie. C</dev/mapper/mapname>) and I<not> the name of the "
25442 "underlying block device."
25443 msgstr ""
25444
25445 #. type: textblock
25446 #: ../src/guestfs-actions.pod:4041 ../src/guestfs-actions.pod:4143 ../src/guestfs-actions.pod:4162 ../src/guestfs-actions.pod:4212 ../src/guestfs-actions.pod:4260
25447 msgid "(Added in 1.5.1)"
25448 msgstr ""
25449
25450 #. type: =head2
25451 #: ../src/guestfs-actions.pod:4043
25452 msgid "guestfs_luks_format"
25453 msgstr ""
25454
25455 #. type: verbatim
25456 #: ../src/guestfs-actions.pod:4045
25457 #, no-wrap
25458 msgid ""
25459 " int\n"
25460 " guestfs_luks_format (guestfs_h *g,\n"
25461 "                      const char *device,\n"
25462 "                      const char *key,\n"
25463 "                      int keyslot);\n"
25464 "\n"
25465 msgstr ""
25466
25467 #. type: =head2
25468 #: ../src/guestfs-actions.pod:4067
25469 msgid "guestfs_luks_format_cipher"
25470 msgstr ""
25471
25472 #. type: verbatim
25473 #: ../src/guestfs-actions.pod:4069
25474 #, no-wrap
25475 msgid ""
25476 " int\n"
25477 " guestfs_luks_format_cipher (guestfs_h *g,\n"
25478 "                             const char *device,\n"
25479 "                             const char *key,\n"
25480 "                             int keyslot,\n"
25481 "                             const char *cipher);\n"
25482 "\n"
25483 msgstr ""
25484
25485 #. type: textblock
25486 #: ../src/guestfs-actions.pod:4076
25487 msgid ""
25488 "This command is the same as C<guestfs_luks_format> but it also allows you to "
25489 "set the C<cipher> used."
25490 msgstr ""
25491
25492 #. type: =head2
25493 #: ../src/guestfs-actions.pod:4090
25494 msgid "guestfs_luks_kill_slot"
25495 msgstr ""
25496
25497 #. type: verbatim
25498 #: ../src/guestfs-actions.pod:4092
25499 #, no-wrap
25500 msgid ""
25501 " int\n"
25502 " guestfs_luks_kill_slot (guestfs_h *g,\n"
25503 "                         const char *device,\n"
25504 "                         const char *key,\n"
25505 "                         int keyslot);\n"
25506 "\n"
25507 msgstr ""
25508
25509 #. type: =head2
25510 #: ../src/guestfs-actions.pod:4110
25511 msgid "guestfs_luks_open"
25512 msgstr ""
25513
25514 #. type: verbatim
25515 #: ../src/guestfs-actions.pod:4112
25516 #, no-wrap
25517 msgid ""
25518 " int\n"
25519 " guestfs_luks_open (guestfs_h *g,\n"
25520 "                    const char *device,\n"
25521 "                    const char *key,\n"
25522 "                    const char *mapname);\n"
25523 "\n"
25524 msgstr ""
25525
25526 #. type: textblock
25527 #: ../src/guestfs-actions.pod:4130
25528 msgid ""
25529 "If this block device contains LVM volume groups, then calling "
25530 "C<guestfs_vgscan> followed by C<guestfs_vg_activate_all> will make them "
25531 "visible."
25532 msgstr ""
25533
25534 #. type: textblock
25535 #: ../src/guestfs-actions.pod:4134
25536 msgid "Use C<guestfs_list_dm_devices> to list all device mapper devices."
25537 msgstr ""
25538
25539 #. type: =head2
25540 #: ../src/guestfs-actions.pod:4145
25541 msgid "guestfs_luks_open_ro"
25542 msgstr ""
25543
25544 #. type: verbatim
25545 #: ../src/guestfs-actions.pod:4147
25546 #, no-wrap
25547 msgid ""
25548 " int\n"
25549 " guestfs_luks_open_ro (guestfs_h *g,\n"
25550 "                       const char *device,\n"
25551 "                       const char *key,\n"
25552 "                       const char *mapname);\n"
25553 "\n"
25554 msgstr ""
25555
25556 #. type: textblock
25557 #: ../src/guestfs-actions.pod:4153
25558 msgid ""
25559 "This is the same as C<guestfs_luks_open> except that a read-only mapping is "
25560 "created."
25561 msgstr ""
25562
25563 #. type: =head2
25564 #: ../src/guestfs-actions.pod:4164
25565 msgid "guestfs_lvcreate"
25566 msgstr ""
25567
25568 #. type: verbatim
25569 #: ../src/guestfs-actions.pod:4166
25570 #, no-wrap
25571 msgid ""
25572 " int\n"
25573 " guestfs_lvcreate (guestfs_h *g,\n"
25574 "                   const char *logvol,\n"
25575 "                   const char *volgroup,\n"
25576 "                   int mbytes);\n"
25577 "\n"
25578 msgstr ""
25579
25580 #. type: =head2
25581 #: ../src/guestfs-actions.pod:4179
25582 msgid "guestfs_lvm_canonical_lv_name"
25583 msgstr ""
25584
25585 #. type: verbatim
25586 #: ../src/guestfs-actions.pod:4181
25587 #, no-wrap
25588 msgid ""
25589 " char *\n"
25590 " guestfs_lvm_canonical_lv_name (guestfs_h *g,\n"
25591 "                                const char *lvname);\n"
25592 "\n"
25593 msgstr ""
25594
25595 #. type: textblock
25596 #: ../src/guestfs-actions.pod:4192
25597 msgid "See also C<guestfs_is_lv>."
25598 msgstr ""
25599
25600 #. type: textblock
25601 #: ../src/guestfs-actions.pod:4197
25602 msgid "(Added in 1.5.24)"
25603 msgstr ""
25604
25605 #. type: =head2
25606 #: ../src/guestfs-actions.pod:4199
25607 msgid "guestfs_lvm_clear_filter"
25608 msgstr ""
25609
25610 #. type: verbatim
25611 #: ../src/guestfs-actions.pod:4201
25612 #, no-wrap
25613 msgid ""
25614 " int\n"
25615 " guestfs_lvm_clear_filter (guestfs_h *g);\n"
25616 "\n"
25617 msgstr ""
25618
25619 #. type: textblock
25620 #: ../src/guestfs-actions.pod:4204
25621 msgid ""
25622 "This undoes the effect of C<guestfs_lvm_set_filter>.  LVM will be able to "
25623 "see every block device."
25624 msgstr ""
25625
25626 #. type: =head2
25627 #: ../src/guestfs-actions.pod:4214
25628 msgid "guestfs_lvm_remove_all"
25629 msgstr ""
25630
25631 #. type: verbatim
25632 #: ../src/guestfs-actions.pod:4216
25633 #, no-wrap
25634 msgid ""
25635 " int\n"
25636 " guestfs_lvm_remove_all (guestfs_h *g);\n"
25637 "\n"
25638 msgstr ""
25639
25640 #. type: =head2
25641 #: ../src/guestfs-actions.pod:4229
25642 msgid "guestfs_lvm_set_filter"
25643 msgstr ""
25644
25645 #. type: verbatim
25646 #: ../src/guestfs-actions.pod:4231
25647 #, no-wrap
25648 msgid ""
25649 " int\n"
25650 " guestfs_lvm_set_filter (guestfs_h *g,\n"
25651 "                         char *const *devices);\n"
25652 "\n"
25653 msgstr ""
25654
25655 #. type: =head2
25656 #: ../src/guestfs-actions.pod:4262
25657 msgid "guestfs_lvremove"
25658 msgstr ""
25659
25660 #. type: verbatim
25661 #: ../src/guestfs-actions.pod:4264
25662 #, no-wrap
25663 msgid ""
25664 " int\n"
25665 " guestfs_lvremove (guestfs_h *g,\n"
25666 "                   const char *device);\n"
25667 "\n"
25668 msgstr ""
25669
25670 #. type: textblock
25671 #: ../src/guestfs-actions.pod:4276 ../src/guestfs-actions.pod:5679 ../src/guestfs-actions.pod:7513
25672 msgid "(Added in 1.0.13)"
25673 msgstr ""
25674
25675 #. type: =head2
25676 #: ../src/guestfs-actions.pod:4278
25677 msgid "guestfs_lvrename"
25678 msgstr ""
25679
25680 #. type: verbatim
25681 #: ../src/guestfs-actions.pod:4280
25682 #, no-wrap
25683 msgid ""
25684 " int\n"
25685 " guestfs_lvrename (guestfs_h *g,\n"
25686 "                   const char *logvol,\n"
25687 "                   const char *newlogvol);\n"
25688 "\n"
25689 msgstr ""
25690
25691 #. type: textblock
25692 #: ../src/guestfs-actions.pod:4289 ../src/guestfs-actions.pod:7526
25693 msgid "(Added in 1.0.83)"
25694 msgstr ""
25695
25696 #. type: =head2
25697 #: ../src/guestfs-actions.pod:4291
25698 msgid "guestfs_lvresize"
25699 msgstr ""
25700
25701 #. type: verbatim
25702 #: ../src/guestfs-actions.pod:4293
25703 #, no-wrap
25704 msgid ""
25705 " int\n"
25706 " guestfs_lvresize (guestfs_h *g,\n"
25707 "                   const char *device,\n"
25708 "                   int mbytes);\n"
25709 "\n"
25710 msgstr ""
25711
25712 #. type: =head2
25713 #: ../src/guestfs-actions.pod:4306
25714 msgid "guestfs_lvresize_free"
25715 msgstr ""
25716
25717 #. type: verbatim
25718 #: ../src/guestfs-actions.pod:4308
25719 #, no-wrap
25720 msgid ""
25721 " int\n"
25722 " guestfs_lvresize_free (guestfs_h *g,\n"
25723 "                        const char *lv,\n"
25724 "                        int percent);\n"
25725 "\n"
25726 msgstr ""
25727
25728 #. type: textblock
25729 #: ../src/guestfs-actions.pod:4321
25730 msgid "(Added in 1.3.3)"
25731 msgstr ""
25732
25733 #. type: =head2
25734 #: ../src/guestfs-actions.pod:4323
25735 msgid "guestfs_lvs"
25736 msgstr ""
25737
25738 #. type: verbatim
25739 #: ../src/guestfs-actions.pod:4325
25740 #, no-wrap
25741 msgid ""
25742 " char **\n"
25743 " guestfs_lvs (guestfs_h *g);\n"
25744 "\n"
25745 msgstr ""
25746
25747 #. type: textblock
25748 #: ../src/guestfs-actions.pod:4334
25749 msgid "See also C<guestfs_lvs_full>, C<guestfs_list_filesystems>."
25750 msgstr ""
25751
25752 #. type: =head2
25753 #: ../src/guestfs-actions.pod:4342
25754 msgid "guestfs_lvs_full"
25755 msgstr ""
25756
25757 #. type: verbatim
25758 #: ../src/guestfs-actions.pod:4344
25759 #, no-wrap
25760 msgid ""
25761 " struct guestfs_lvm_lv_list *\n"
25762 " guestfs_lvs_full (guestfs_h *g);\n"
25763 "\n"
25764 msgstr ""
25765
25766 #. type: textblock
25767 #: ../src/guestfs-actions.pod:4350
25768 msgid ""
25769 "This function returns a C<struct guestfs_lvm_lv_list *>, or NULL if there "
25770 "was an error.  I<The caller must call C<guestfs_free_lvm_lv_list> after "
25771 "use>."
25772 msgstr ""
25773
25774 #. type: =head2
25775 #: ../src/guestfs-actions.pod:4356
25776 msgid "guestfs_lvuuid"
25777 msgstr ""
25778
25779 #. type: verbatim
25780 #: ../src/guestfs-actions.pod:4358
25781 #, no-wrap
25782 msgid ""
25783 " char *\n"
25784 " guestfs_lvuuid (guestfs_h *g,\n"
25785 "                 const char *device);\n"
25786 "\n"
25787 msgstr ""
25788
25789 #. type: =head2
25790 #: ../src/guestfs-actions.pod:4369
25791 msgid "guestfs_lxattrlist"
25792 msgstr ""
25793
25794 #. type: verbatim
25795 #: ../src/guestfs-actions.pod:4371
25796 #, no-wrap
25797 msgid ""
25798 " struct guestfs_xattr_list *\n"
25799 " guestfs_lxattrlist (guestfs_h *g,\n"
25800 "                     const char *path,\n"
25801 "                     char *const *names);\n"
25802 "\n"
25803 msgstr ""
25804
25805 #. type: textblock
25806 #: ../src/guestfs-actions.pod:4390
25807 msgid ""
25808 "This call is intended for programs that want to efficiently list a directory "
25809 "contents without making many round-trips.  See also C<guestfs_lstatlist> for "
25810 "a similarly efficient call for getting standard stats.  Very long directory "
25811 "listings might cause the protocol message size to be exceeded, causing this "
25812 "call to fail.  The caller must split up such requests into smaller groups of "
25813 "names."
25814 msgstr ""
25815
25816 #. type: =head2
25817 #: ../src/guestfs-actions.pod:4404
25818 msgid "guestfs_mkdir"
25819 msgstr ""
25820
25821 #. type: verbatim
25822 #: ../src/guestfs-actions.pod:4406
25823 #, no-wrap
25824 msgid ""
25825 " int\n"
25826 " guestfs_mkdir (guestfs_h *g,\n"
25827 "                const char *path);\n"
25828 "\n"
25829 msgstr ""
25830
25831 #. type: =head2
25832 #: ../src/guestfs-actions.pod:4416
25833 msgid "guestfs_mkdir_mode"
25834 msgstr ""
25835
25836 #. type: verbatim
25837 #: ../src/guestfs-actions.pod:4418
25838 #, no-wrap
25839 msgid ""
25840 " int\n"
25841 " guestfs_mkdir_mode (guestfs_h *g,\n"
25842 "                     const char *path,\n"
25843 "                     int mode);\n"
25844 "\n"
25845 msgstr ""
25846
25847 #. type: textblock
25848 #: ../src/guestfs-actions.pod:4430
25849 msgid "See also C<guestfs_mkdir>, C<guestfs_umask>"
25850 msgstr ""
25851
25852 #. type: =head2
25853 #: ../src/guestfs-actions.pod:4436
25854 msgid "guestfs_mkdir_p"
25855 msgstr ""
25856
25857 #. type: verbatim
25858 #: ../src/guestfs-actions.pod:4438
25859 #, no-wrap
25860 msgid ""
25861 " int\n"
25862 " guestfs_mkdir_p (guestfs_h *g,\n"
25863 "                  const char *path);\n"
25864 "\n"
25865 msgstr ""
25866
25867 #. type: =head2
25868 #: ../src/guestfs-actions.pod:4449
25869 msgid "guestfs_mkdtemp"
25870 msgstr ""
25871
25872 #. type: verbatim
25873 #: ../src/guestfs-actions.pod:4451
25874 #, no-wrap
25875 msgid ""
25876 " char *\n"
25877 " guestfs_mkdtemp (guestfs_h *g,\n"
25878 "                  const char *template);\n"
25879 "\n"
25880 msgstr ""
25881
25882 #. type: =head2
25883 #: ../src/guestfs-actions.pod:4479
25884 msgid "guestfs_mke2fs_J"
25885 msgstr ""
25886
25887 #. type: verbatim
25888 #: ../src/guestfs-actions.pod:4481
25889 #, no-wrap
25890 msgid ""
25891 " int\n"
25892 " guestfs_mke2fs_J (guestfs_h *g,\n"
25893 "                   const char *fstype,\n"
25894 "                   int blocksize,\n"
25895 "                   const char *device,\n"
25896 "                   const char *journal);\n"
25897 "\n"
25898 msgstr ""
25899
25900 #. type: textblock
25901 #: ../src/guestfs-actions.pod:4494
25902 msgid "See also C<guestfs_mke2journal>."
25903 msgstr ""
25904
25905 #. type: textblock
25906 #: ../src/guestfs-actions.pod:4498 ../src/guestfs-actions.pod:4516 ../src/guestfs-actions.pod:4534 ../src/guestfs-actions.pod:4550 ../src/guestfs-actions.pod:4564 ../src/guestfs-actions.pod:4578 ../src/guestfs-actions.pod:4637 ../src/guestfs-actions.pod:4914
25907 msgid "(Added in 1.0.68)"
25908 msgstr ""
25909
25910 #. type: =head2
25911 #: ../src/guestfs-actions.pod:4500
25912 msgid "guestfs_mke2fs_JL"
25913 msgstr ""
25914
25915 #. type: verbatim
25916 #: ../src/guestfs-actions.pod:4502
25917 #, no-wrap
25918 msgid ""
25919 " int\n"
25920 " guestfs_mke2fs_JL (guestfs_h *g,\n"
25921 "                    const char *fstype,\n"
25922 "                    int blocksize,\n"
25923 "                    const char *device,\n"
25924 "                    const char *label);\n"
25925 "\n"
25926 msgstr ""
25927
25928 #. type: textblock
25929 #: ../src/guestfs-actions.pod:4512
25930 msgid "See also C<guestfs_mke2journal_L>."
25931 msgstr ""
25932
25933 #. type: =head2
25934 #: ../src/guestfs-actions.pod:4518
25935 msgid "guestfs_mke2fs_JU"
25936 msgstr ""
25937
25938 #. type: verbatim
25939 #: ../src/guestfs-actions.pod:4520
25940 #, no-wrap
25941 msgid ""
25942 " int\n"
25943 " guestfs_mke2fs_JU (guestfs_h *g,\n"
25944 "                    const char *fstype,\n"
25945 "                    int blocksize,\n"
25946 "                    const char *device,\n"
25947 "                    const char *uuid);\n"
25948 "\n"
25949 msgstr ""
25950
25951 #. type: textblock
25952 #: ../src/guestfs-actions.pod:4530
25953 msgid "See also C<guestfs_mke2journal_U>."
25954 msgstr ""
25955
25956 #. type: =head2
25957 #: ../src/guestfs-actions.pod:4536
25958 msgid "guestfs_mke2journal"
25959 msgstr ""
25960
25961 #. type: verbatim
25962 #: ../src/guestfs-actions.pod:4538
25963 #, no-wrap
25964 msgid ""
25965 " int\n"
25966 " guestfs_mke2journal (guestfs_h *g,\n"
25967 "                      int blocksize,\n"
25968 "                      const char *device);\n"
25969 "\n"
25970 msgstr ""
25971
25972 #. type: =head2
25973 #: ../src/guestfs-actions.pod:4552
25974 msgid "guestfs_mke2journal_L"
25975 msgstr ""
25976
25977 #. type: verbatim
25978 #: ../src/guestfs-actions.pod:4554
25979 #, no-wrap
25980 msgid ""
25981 " int\n"
25982 " guestfs_mke2journal_L (guestfs_h *g,\n"
25983 "                        int blocksize,\n"
25984 "                        const char *label,\n"
25985 "                        const char *device);\n"
25986 "\n"
25987 msgstr ""
25988
25989 #. type: =head2
25990 #: ../src/guestfs-actions.pod:4566
25991 msgid "guestfs_mke2journal_U"
25992 msgstr ""
25993
25994 #. type: verbatim
25995 #: ../src/guestfs-actions.pod:4568
25996 #, no-wrap
25997 msgid ""
25998 " int\n"
25999 " guestfs_mke2journal_U (guestfs_h *g,\n"
26000 "                        int blocksize,\n"
26001 "                        const char *uuid,\n"
26002 "                        const char *device);\n"
26003 "\n"
26004 msgstr ""
26005
26006 #. type: =head2
26007 #: ../src/guestfs-actions.pod:4580
26008 msgid "guestfs_mkfifo"
26009 msgstr ""
26010
26011 #. type: verbatim
26012 #: ../src/guestfs-actions.pod:4582
26013 #, no-wrap
26014 msgid ""
26015 " int\n"
26016 " guestfs_mkfifo (guestfs_h *g,\n"
26017 "                 int mode,\n"
26018 "                 const char *path);\n"
26019 "\n"
26020 msgstr ""
26021
26022 #. type: textblock
26023 #: ../src/guestfs-actions.pod:4587
26024 msgid ""
26025 "This call creates a FIFO (named pipe) called C<path> with mode C<mode>.  It "
26026 "is just a convenient wrapper around C<guestfs_mknod>."
26027 msgstr ""
26028
26029 #. type: =head2
26030 #: ../src/guestfs-actions.pod:4597
26031 msgid "guestfs_mkfs"
26032 msgstr ""
26033
26034 #. type: verbatim
26035 #: ../src/guestfs-actions.pod:4599
26036 #, no-wrap
26037 msgid ""
26038 " int\n"
26039 " guestfs_mkfs (guestfs_h *g,\n"
26040 "               const char *fstype,\n"
26041 "               const char *device);\n"
26042 "\n"
26043 msgstr ""
26044
26045 #. type: =head2
26046 #: ../src/guestfs-actions.pod:4612
26047 msgid "guestfs_mkfs_b"
26048 msgstr ""
26049
26050 #. type: verbatim
26051 #: ../src/guestfs-actions.pod:4614
26052 #, no-wrap
26053 msgid ""
26054 " int\n"
26055 " guestfs_mkfs_b (guestfs_h *g,\n"
26056 "                 const char *fstype,\n"
26057 "                 int blocksize,\n"
26058 "                 const char *device);\n"
26059 "\n"
26060 msgstr ""
26061
26062 #. type: textblock
26063 #: ../src/guestfs-actions.pod:4620
26064 msgid ""
26065 "I<This function is deprecated.> In new code, use the L</guestfs_mkfs_opts> "
26066 "call instead."
26067 msgstr ""
26068
26069 #. type: textblock
26070 #: ../src/guestfs-actions.pod:4627
26071 msgid ""
26072 "This call is similar to C<guestfs_mkfs>, but it allows you to control the "
26073 "block size of the resulting filesystem.  Supported block sizes depend on the "
26074 "filesystem type, but typically they are C<1024>, C<2048> or C<4096> only."
26075 msgstr ""
26076
26077 #. type: =head2
26078 #: ../src/guestfs-actions.pod:4639
26079 msgid "guestfs_mkfs_opts"
26080 msgstr ""
26081
26082 #. type: verbatim
26083 #: ../src/guestfs-actions.pod:4641
26084 #, no-wrap
26085 msgid ""
26086 " int\n"
26087 " guestfs_mkfs_opts (guestfs_h *g,\n"
26088 "                    const char *fstype,\n"
26089 "                    const char *device,\n"
26090 "                    ...);\n"
26091 "\n"
26092 msgstr ""
26093
26094 #. type: verbatim
26095 #: ../src/guestfs-actions.pod:4652
26096 #, no-wrap
26097 msgid ""
26098 " GUESTFS_MKFS_OPTS_BLOCKSIZE, int blocksize,\n"
26099 " GUESTFS_MKFS_OPTS_FEATURES, const char *features,\n"
26100 " GUESTFS_MKFS_OPTS_INODE, int inode,\n"
26101 " GUESTFS_MKFS_OPTS_SECTORSIZE, int sectorsize,\n"
26102 "\n"
26103 msgstr ""
26104
26105 #. type: textblock
26106 #: ../src/guestfs-actions.pod:4700
26107 msgid "(Added in 1.7.19)"
26108 msgstr ""
26109
26110 #. type: =head2
26111 #: ../src/guestfs-actions.pod:4702
26112 msgid "guestfs_mkfs_opts_va"
26113 msgstr ""
26114
26115 #. type: verbatim
26116 #: ../src/guestfs-actions.pod:4704
26117 #, no-wrap
26118 msgid ""
26119 " int\n"
26120 " guestfs_mkfs_opts_va (guestfs_h *g,\n"
26121 "                       const char *fstype,\n"
26122 "                       const char *device,\n"
26123 "                       va_list args);\n"
26124 "\n"
26125 msgstr ""
26126
26127 #. type: textblock
26128 #: ../src/guestfs-actions.pod:4710
26129 msgid "This is the \"va_list variant\" of L</guestfs_mkfs_opts>."
26130 msgstr ""
26131
26132 #. type: =head2
26133 #: ../src/guestfs-actions.pod:4714
26134 msgid "guestfs_mkfs_opts_argv"
26135 msgstr ""
26136
26137 #. type: verbatim
26138 #: ../src/guestfs-actions.pod:4716
26139 #, no-wrap
26140 msgid ""
26141 " int\n"
26142 " guestfs_mkfs_opts_argv (guestfs_h *g,\n"
26143 "                         const char *fstype,\n"
26144 "                         const char *device,\n"
26145 "                         const struct guestfs_mkfs_opts_argv *optargs);\n"
26146 "\n"
26147 msgstr ""
26148
26149 #. type: textblock
26150 #: ../src/guestfs-actions.pod:4722
26151 msgid "This is the \"argv variant\" of L</guestfs_mkfs_opts>."
26152 msgstr ""
26153
26154 #. type: =head2
26155 #: ../src/guestfs-actions.pod:4726
26156 msgid "guestfs_mkmountpoint"
26157 msgstr ""
26158
26159 #. type: verbatim
26160 #: ../src/guestfs-actions.pod:4728
26161 #, no-wrap
26162 msgid ""
26163 " int\n"
26164 " guestfs_mkmountpoint (guestfs_h *g,\n"
26165 "                       const char *exemptpath);\n"
26166 "\n"
26167 msgstr ""
26168
26169 #. type: textblock
26170 #: ../src/guestfs-actions.pod:4732
26171 msgid ""
26172 "C<guestfs_mkmountpoint> and C<guestfs_rmmountpoint> are specialized calls "
26173 "that can be used to create extra mountpoints before mounting the first "
26174 "filesystem."
26175 msgstr ""
26176
26177 #. type: textblock
26178 #: ../src/guestfs-actions.pod:4756
26179 msgid ""
26180 "C<guestfs_mkmountpoint> is not compatible with C<guestfs_umount_all>.  You "
26181 "may get unexpected errors if you try to mix these calls.  It is safest to "
26182 "manually unmount filesystems and remove mountpoints after use."
26183 msgstr ""
26184
26185 #. type: textblock
26186 #: ../src/guestfs-actions.pod:4760
26187 msgid ""
26188 "C<guestfs_umount_all> unmounts filesystems by sorting the paths longest "
26189 "first, so for this to work for manual mountpoints, you must ensure that the "
26190 "innermost mountpoints have the longest pathnames, as in the example code "
26191 "above."
26192 msgstr ""
26193
26194 #. type: textblock
26195 #: ../src/guestfs-actions.pod:4767
26196 msgid ""
26197 "Autosync [see C<guestfs_set_autosync>, this is set by default on handles] "
26198 "can cause C<guestfs_umount_all> to be called when the handle is closed which "
26199 "can also trigger these issues."
26200 msgstr ""
26201
26202 #. type: textblock
26203 #: ../src/guestfs-actions.pod:4773 ../src/guestfs-actions.pod:5089 ../src/guestfs-actions.pod:6099
26204 msgid "(Added in 1.0.62)"
26205 msgstr ""
26206
26207 #. type: =head2
26208 #: ../src/guestfs-actions.pod:4775
26209 msgid "guestfs_mknod"
26210 msgstr ""
26211
26212 #. type: verbatim
26213 #: ../src/guestfs-actions.pod:4777
26214 #, no-wrap
26215 msgid ""
26216 " int\n"
26217 " guestfs_mknod (guestfs_h *g,\n"
26218 "                int mode,\n"
26219 "                int devmajor,\n"
26220 "                int devminor,\n"
26221 "                const char *path);\n"
26222 "\n"
26223 msgstr ""
26224
26225 #. type: textblock
26226 #: ../src/guestfs-actions.pod:4792
26227 msgid ""
26228 "Note that, just like L<mknod(2)>, the mode must be bitwise OR'd with "
26229 "S_IFBLK, S_IFCHR, S_IFIFO or S_IFSOCK (otherwise this call just creates a "
26230 "regular file).  These constants are available in the standard Linux header "
26231 "files, or you can use C<guestfs_mknod_b>, C<guestfs_mknod_c> or "
26232 "C<guestfs_mkfifo> which are wrappers around this command which bitwise OR in "
26233 "the appropriate constant for you."
26234 msgstr ""
26235
26236 #. type: =head2
26237 #: ../src/guestfs-actions.pod:4806
26238 msgid "guestfs_mknod_b"
26239 msgstr ""
26240
26241 #. type: verbatim
26242 #: ../src/guestfs-actions.pod:4808
26243 #, no-wrap
26244 msgid ""
26245 " int\n"
26246 " guestfs_mknod_b (guestfs_h *g,\n"
26247 "                  int mode,\n"
26248 "                  int devmajor,\n"
26249 "                  int devminor,\n"
26250 "                  const char *path);\n"
26251 "\n"
26252 msgstr ""
26253
26254 #. type: textblock
26255 #: ../src/guestfs-actions.pod:4815
26256 msgid ""
26257 "This call creates a block device node called C<path> with mode C<mode> and "
26258 "device major/minor C<devmajor> and C<devminor>.  It is just a convenient "
26259 "wrapper around C<guestfs_mknod>."
26260 msgstr ""
26261
26262 #. type: =head2
26263 #: ../src/guestfs-actions.pod:4825
26264 msgid "guestfs_mknod_c"
26265 msgstr ""
26266
26267 #. type: verbatim
26268 #: ../src/guestfs-actions.pod:4827
26269 #, no-wrap
26270 msgid ""
26271 " int\n"
26272 " guestfs_mknod_c (guestfs_h *g,\n"
26273 "                  int mode,\n"
26274 "                  int devmajor,\n"
26275 "                  int devminor,\n"
26276 "                  const char *path);\n"
26277 "\n"
26278 msgstr ""
26279
26280 #. type: textblock
26281 #: ../src/guestfs-actions.pod:4834
26282 msgid ""
26283 "This call creates a char device node called C<path> with mode C<mode> and "
26284 "device major/minor C<devmajor> and C<devminor>.  It is just a convenient "
26285 "wrapper around C<guestfs_mknod>."
26286 msgstr ""
26287
26288 #. type: =head2
26289 #: ../src/guestfs-actions.pod:4844
26290 msgid "guestfs_mkswap"
26291 msgstr ""
26292
26293 #. type: verbatim
26294 #: ../src/guestfs-actions.pod:4846
26295 #, no-wrap
26296 msgid ""
26297 " int\n"
26298 " guestfs_mkswap (guestfs_h *g,\n"
26299 "                 const char *device);\n"
26300 "\n"
26301 msgstr ""
26302
26303 #. type: =head2
26304 #: ../src/guestfs-actions.pod:4856
26305 msgid "guestfs_mkswap_L"
26306 msgstr ""
26307
26308 #. type: verbatim
26309 #: ../src/guestfs-actions.pod:4858
26310 #, no-wrap
26311 msgid ""
26312 " int\n"
26313 " guestfs_mkswap_L (guestfs_h *g,\n"
26314 "                   const char *label,\n"
26315 "                   const char *device);\n"
26316 "\n"
26317 msgstr ""
26318
26319 #. type: =head2
26320 #: ../src/guestfs-actions.pod:4873
26321 msgid "guestfs_mkswap_U"
26322 msgstr ""
26323
26324 #. type: verbatim
26325 #: ../src/guestfs-actions.pod:4875
26326 #, no-wrap
26327 msgid ""
26328 " int\n"
26329 " guestfs_mkswap_U (guestfs_h *g,\n"
26330 "                   const char *uuid,\n"
26331 "                   const char *device);\n"
26332 "\n"
26333 msgstr ""
26334
26335 #. type: =head2
26336 #: ../src/guestfs-actions.pod:4886
26337 msgid "guestfs_mkswap_file"
26338 msgstr ""
26339
26340 #. type: verbatim
26341 #: ../src/guestfs-actions.pod:4888
26342 #, no-wrap
26343 msgid ""
26344 " int\n"
26345 " guestfs_mkswap_file (guestfs_h *g,\n"
26346 "                      const char *path);\n"
26347 "\n"
26348 msgstr ""
26349
26350 #. type: textblock
26351 #: ../src/guestfs-actions.pod:4894
26352 msgid ""
26353 "This command just writes a swap file signature to an existing file.  To "
26354 "create the file itself, use something like C<guestfs_fallocate>."
26355 msgstr ""
26356
26357 #. type: =head2
26358 #: ../src/guestfs-actions.pod:4901
26359 msgid "guestfs_modprobe"
26360 msgstr ""
26361
26362 #. type: verbatim
26363 #: ../src/guestfs-actions.pod:4903
26364 #, no-wrap
26365 msgid ""
26366 " int\n"
26367 " guestfs_modprobe (guestfs_h *g,\n"
26368 "                   const char *modulename);\n"
26369 "\n"
26370 msgstr ""
26371
26372 #. type: =head2
26373 #: ../src/guestfs-actions.pod:4916
26374 msgid "guestfs_mount"
26375 msgstr ""
26376
26377 #. type: verbatim
26378 #: ../src/guestfs-actions.pod:4918
26379 #, no-wrap
26380 msgid ""
26381 " int\n"
26382 " guestfs_mount (guestfs_h *g,\n"
26383 "                const char *device,\n"
26384 "                const char *mountpoint);\n"
26385 "\n"
26386 msgstr ""
26387
26388 #. type: textblock
26389 #: ../src/guestfs-actions.pod:4923
26390 msgid ""
26391 "I<This function is deprecated.> In new code, use the "
26392 "L</guestfs_mount_options> call instead."
26393 msgstr ""
26394
26395 #. type: textblock
26396 #: ../src/guestfs-actions.pod:4944
26397 msgid ""
26398 "B<Important note:> When you use this call, the filesystem options C<sync> "
26399 "and C<noatime> are set implicitly.  This was originally done because we "
26400 "thought it would improve reliability, but it turns out that I<-o sync> has a "
26401 "very large negative performance impact and negligible effect on "
26402 "reliability.  Therefore we recommend that you avoid using C<guestfs_mount> "
26403 "in any code that needs performance, and instead use C<guestfs_mount_options> "
26404 "(use an empty string for the first parameter if you don't want any options)."
26405 msgstr ""
26406
26407 #. type: =head2
26408 #: ../src/guestfs-actions.pod:4958
26409 msgid "guestfs_mount_9p"
26410 msgstr ""
26411
26412 #. type: verbatim
26413 #: ../src/guestfs-actions.pod:4960
26414 #, no-wrap
26415 msgid ""
26416 " int\n"
26417 " guestfs_mount_9p (guestfs_h *g,\n"
26418 "                   const char *mounttag,\n"
26419 "                   const char *mountpoint,\n"
26420 "                   ...);\n"
26421 "\n"
26422 msgstr ""
26423
26424 #. type: verbatim
26425 #: ../src/guestfs-actions.pod:4971
26426 #, no-wrap
26427 msgid ""
26428 " GUESTFS_MOUNT_9P_OPTIONS, const char *options,\n"
26429 "\n"
26430 msgstr ""
26431
26432 #. type: =head2
26433 #: ../src/guestfs-actions.pod:4984
26434 msgid "guestfs_mount_9p_va"
26435 msgstr ""
26436
26437 #. type: verbatim
26438 #: ../src/guestfs-actions.pod:4986
26439 #, no-wrap
26440 msgid ""
26441 " int\n"
26442 " guestfs_mount_9p_va (guestfs_h *g,\n"
26443 "                      const char *mounttag,\n"
26444 "                      const char *mountpoint,\n"
26445 "                      va_list args);\n"
26446 "\n"
26447 msgstr ""
26448
26449 #. type: textblock
26450 #: ../src/guestfs-actions.pod:4992
26451 msgid "This is the \"va_list variant\" of L</guestfs_mount_9p>."
26452 msgstr ""
26453
26454 #. type: =head2
26455 #: ../src/guestfs-actions.pod:4996
26456 msgid "guestfs_mount_9p_argv"
26457 msgstr ""
26458
26459 #. type: verbatim
26460 #: ../src/guestfs-actions.pod:4998
26461 #, no-wrap
26462 msgid ""
26463 " int\n"
26464 " guestfs_mount_9p_argv (guestfs_h *g,\n"
26465 "                        const char *mounttag,\n"
26466 "                        const char *mountpoint,\n"
26467 "                        const struct guestfs_mount_9p_argv *optargs);\n"
26468 "\n"
26469 msgstr ""
26470
26471 #. type: textblock
26472 #: ../src/guestfs-actions.pod:5004
26473 msgid "This is the \"argv variant\" of L</guestfs_mount_9p>."
26474 msgstr ""
26475
26476 #. type: =head2
26477 #: ../src/guestfs-actions.pod:5008
26478 msgid "guestfs_mount_loop"
26479 msgstr ""
26480
26481 #. type: verbatim
26482 #: ../src/guestfs-actions.pod:5010
26483 #, no-wrap
26484 msgid ""
26485 " int\n"
26486 " guestfs_mount_loop (guestfs_h *g,\n"
26487 "                     const char *file,\n"
26488 "                     const char *mountpoint);\n"
26489 "\n"
26490 msgstr ""
26491
26492 #. type: =head2
26493 #: ../src/guestfs-actions.pod:5023
26494 msgid "guestfs_mount_options"
26495 msgstr ""
26496
26497 #. type: verbatim
26498 #: ../src/guestfs-actions.pod:5025
26499 #, no-wrap
26500 msgid ""
26501 " int\n"
26502 " guestfs_mount_options (guestfs_h *g,\n"
26503 "                        const char *options,\n"
26504 "                        const char *device,\n"
26505 "                        const char *mountpoint);\n"
26506 "\n"
26507 msgstr ""
26508
26509 #. type: textblock
26510 #: ../src/guestfs-actions.pod:5031
26511 msgid ""
26512 "This is the same as the C<guestfs_mount> command, but it allows you to set "
26513 "the mount options as for the L<mount(8)> I<-o> flag."
26514 msgstr ""
26515
26516 #. type: textblock
26517 #: ../src/guestfs-actions.pod:5041 ../src/guestfs-actions.pod:5055 ../src/guestfs-actions.pod:5072
26518 msgid "(Added in 1.0.10)"
26519 msgstr ""
26520
26521 #. type: =head2
26522 #: ../src/guestfs-actions.pod:5043
26523 msgid "guestfs_mount_ro"
26524 msgstr ""
26525
26526 #. type: verbatim
26527 #: ../src/guestfs-actions.pod:5045
26528 #, no-wrap
26529 msgid ""
26530 " int\n"
26531 " guestfs_mount_ro (guestfs_h *g,\n"
26532 "                   const char *device,\n"
26533 "                   const char *mountpoint);\n"
26534 "\n"
26535 msgstr ""
26536
26537 #. type: textblock
26538 #: ../src/guestfs-actions.pod:5050
26539 msgid ""
26540 "This is the same as the C<guestfs_mount> command, but it mounts the "
26541 "filesystem with the read-only (I<-o ro>) flag."
26542 msgstr ""
26543
26544 #. type: =head2
26545 #: ../src/guestfs-actions.pod:5057
26546 msgid "guestfs_mount_vfs"
26547 msgstr ""
26548
26549 #. type: verbatim
26550 #: ../src/guestfs-actions.pod:5059
26551 #, no-wrap
26552 msgid ""
26553 " int\n"
26554 " guestfs_mount_vfs (guestfs_h *g,\n"
26555 "                    const char *options,\n"
26556 "                    const char *vfstype,\n"
26557 "                    const char *device,\n"
26558 "                    const char *mountpoint);\n"
26559 "\n"
26560 msgstr ""
26561
26562 #. type: textblock
26563 #: ../src/guestfs-actions.pod:5066
26564 msgid ""
26565 "This is the same as the C<guestfs_mount> command, but it allows you to set "
26566 "both the mount options and the vfstype as for the L<mount(8)> I<-o> and "
26567 "I<-t> flags."
26568 msgstr ""
26569
26570 #. type: =head2
26571 #: ../src/guestfs-actions.pod:5074
26572 msgid "guestfs_mountpoints"
26573 msgstr ""
26574
26575 #. type: verbatim
26576 #: ../src/guestfs-actions.pod:5076
26577 #, no-wrap
26578 msgid ""
26579 " char **\n"
26580 " guestfs_mountpoints (guestfs_h *g);\n"
26581 "\n"
26582 msgstr ""
26583
26584 #. type: textblock
26585 #: ../src/guestfs-actions.pod:5079
26586 msgid ""
26587 "This call is similar to C<guestfs_mounts>.  That call returns a list of "
26588 "devices.  This one returns a hash table (map) of device name to directory "
26589 "where the device is mounted."
26590 msgstr ""
26591
26592 #. type: =head2
26593 #: ../src/guestfs-actions.pod:5091
26594 msgid "guestfs_mounts"
26595 msgstr ""
26596
26597 #. type: verbatim
26598 #: ../src/guestfs-actions.pod:5093
26599 #, no-wrap
26600 msgid ""
26601 " char **\n"
26602 " guestfs_mounts (guestfs_h *g);\n"
26603 "\n"
26604 msgstr ""
26605
26606 #. type: textblock
26607 #: ../src/guestfs-actions.pod:5101
26608 msgid "See also: C<guestfs_mountpoints>"
26609 msgstr ""
26610
26611 #. type: =head2
26612 #: ../src/guestfs-actions.pod:5109
26613 msgid "guestfs_mv"
26614 msgstr ""
26615
26616 #. type: verbatim
26617 #: ../src/guestfs-actions.pod:5111
26618 #, no-wrap
26619 msgid ""
26620 " int\n"
26621 " guestfs_mv (guestfs_h *g,\n"
26622 "             const char *src,\n"
26623 "             const char *dest);\n"
26624 "\n"
26625 msgstr ""
26626
26627 #. type: =head2
26628 #: ../src/guestfs-actions.pod:5123
26629 msgid "guestfs_ntfs_3g_probe"
26630 msgstr ""
26631
26632 #. type: verbatim
26633 #: ../src/guestfs-actions.pod:5125
26634 #, no-wrap
26635 msgid ""
26636 " int\n"
26637 " guestfs_ntfs_3g_probe (guestfs_h *g,\n"
26638 "                        int rw,\n"
26639 "                        const char *device);\n"
26640 "\n"
26641 msgstr ""
26642
26643 #. type: textblock
26644 #: ../src/guestfs-actions.pod:5144
26645 msgid "(Added in 1.0.43)"
26646 msgstr ""
26647
26648 #. type: =head2
26649 #: ../src/guestfs-actions.pod:5146
26650 msgid "guestfs_ntfsresize"
26651 msgstr ""
26652
26653 #. type: verbatim
26654 #: ../src/guestfs-actions.pod:5148
26655 #, no-wrap
26656 msgid ""
26657 " int\n"
26658 " guestfs_ntfsresize (guestfs_h *g,\n"
26659 "                     const char *device);\n"
26660 "\n"
26661 msgstr ""
26662
26663 #. type: textblock
26664 #: ../src/guestfs-actions.pod:5152 ../src/guestfs-actions.pod:5252
26665 msgid ""
26666 "I<This function is deprecated.> In new code, use the "
26667 "L</guestfs_ntfsresize_opts> call instead."
26668 msgstr ""
26669
26670 #. type: =head2
26671 #: ../src/guestfs-actions.pod:5176
26672 msgid "guestfs_ntfsresize_opts"
26673 msgstr ""
26674
26675 #. type: verbatim
26676 #: ../src/guestfs-actions.pod:5178
26677 #, no-wrap
26678 msgid ""
26679 " int\n"
26680 " guestfs_ntfsresize_opts (guestfs_h *g,\n"
26681 "                          const char *device,\n"
26682 "                          ...);\n"
26683 "\n"
26684 msgstr ""
26685
26686 #. type: verbatim
26687 #: ../src/guestfs-actions.pod:5188
26688 #, no-wrap
26689 msgid ""
26690 " GUESTFS_NTFSRESIZE_OPTS_SIZE, int64_t size,\n"
26691 " GUESTFS_NTFSRESIZE_OPTS_FORCE, int force,\n"
26692 "\n"
26693 msgstr ""
26694
26695 #. type: textblock
26696 #: ../src/guestfs-actions.pod:5208
26697 msgid ""
26698 "After the resize operation, the filesystem is always marked as requiring a "
26699 "consistency check (for safety).  You have to boot into Windows to perform "
26700 "this check and clear this condition.  If you I<don't> set the C<force> "
26701 "option then it is not possible to call C<guestfs_ntfsresize_opts> multiple "
26702 "times on a single filesystem without booting into Windows between each "
26703 "resize."
26704 msgstr ""
26705
26706 #. type: =head2
26707 #: ../src/guestfs-actions.pod:5223
26708 msgid "guestfs_ntfsresize_opts_va"
26709 msgstr ""
26710
26711 #. type: verbatim
26712 #: ../src/guestfs-actions.pod:5225
26713 #, no-wrap
26714 msgid ""
26715 " int\n"
26716 " guestfs_ntfsresize_opts_va (guestfs_h *g,\n"
26717 "                             const char *device,\n"
26718 "                             va_list args);\n"
26719 "\n"
26720 msgstr ""
26721
26722 #. type: textblock
26723 #: ../src/guestfs-actions.pod:5230
26724 msgid "This is the \"va_list variant\" of L</guestfs_ntfsresize_opts>."
26725 msgstr ""
26726
26727 #. type: =head2
26728 #: ../src/guestfs-actions.pod:5234
26729 msgid "guestfs_ntfsresize_opts_argv"
26730 msgstr ""
26731
26732 #. type: verbatim
26733 #: ../src/guestfs-actions.pod:5236
26734 #, no-wrap
26735 msgid ""
26736 " int\n"
26737 " guestfs_ntfsresize_opts_argv (guestfs_h *g,\n"
26738 "                               const char *device,\n"
26739 "                               const struct guestfs_ntfsresize_opts_argv "
26740 "*optargs);\n"
26741 "\n"
26742 msgstr ""
26743
26744 #. type: textblock
26745 #: ../src/guestfs-actions.pod:5241
26746 msgid "This is the \"argv variant\" of L</guestfs_ntfsresize_opts>."
26747 msgstr ""
26748
26749 #. type: =head2
26750 #: ../src/guestfs-actions.pod:5245
26751 msgid "guestfs_ntfsresize_size"
26752 msgstr ""
26753
26754 #. type: verbatim
26755 #: ../src/guestfs-actions.pod:5247
26756 #, no-wrap
26757 msgid ""
26758 " int\n"
26759 " guestfs_ntfsresize_size (guestfs_h *g,\n"
26760 "                          const char *device,\n"
26761 "                          int64_t size);\n"
26762 "\n"
26763 msgstr ""
26764
26765 #. type: textblock
26766 #: ../src/guestfs-actions.pod:5259
26767 msgid ""
26768 "This command is the same as C<guestfs_ntfsresize> except that it allows you "
26769 "to specify the new size (in bytes) explicitly."
26770 msgstr ""
26771
26772 #. type: textblock
26773 #: ../src/guestfs-actions.pod:5264 ../src/guestfs-actions.pod:5706 ../src/guestfs-actions.pod:5779 ../src/guestfs-actions.pod:6047 ../src/guestfs-actions.pod:7670
26774 msgid "(Added in 1.3.14)"
26775 msgstr ""
26776
26777 #. type: =head2
26778 #: ../src/guestfs-actions.pod:5266
26779 msgid "guestfs_part_add"
26780 msgstr ""
26781
26782 #. type: verbatim
26783 #: ../src/guestfs-actions.pod:5268
26784 #, no-wrap
26785 msgid ""
26786 " int\n"
26787 " guestfs_part_add (guestfs_h *g,\n"
26788 "                   const char *device,\n"
26789 "                   const char *prlogex,\n"
26790 "                   int64_t startsect,\n"
26791 "                   int64_t endsect);\n"
26792 "\n"
26793 msgstr ""
26794
26795 #. type: textblock
26796 #: ../src/guestfs-actions.pod:5275
26797 msgid ""
26798 "This command adds a partition to C<device>.  If there is no partition table "
26799 "on the device, call C<guestfs_part_init> first."
26800 msgstr ""
26801
26802 #. type: textblock
26803 #: ../src/guestfs-actions.pod:5287
26804 msgid ""
26805 "Creating a partition which covers the whole disk is not so easy.  Use "
26806 "C<guestfs_part_disk> to do that."
26807 msgstr ""
26808
26809 #. type: textblock
26810 #: ../src/guestfs-actions.pod:5292 ../src/guestfs-actions.pod:5330 ../src/guestfs-actions.pod:5383 ../src/guestfs-actions.pod:5467 ../src/guestfs-actions.pod:5505 ../src/guestfs-actions.pod:5524 ../src/guestfs-actions.pod:5564
26811 msgid "(Added in 1.0.78)"
26812 msgstr ""
26813
26814 #. type: =head2
26815 #: ../src/guestfs-actions.pod:5294
26816 msgid "guestfs_part_del"
26817 msgstr ""
26818
26819 #. type: verbatim
26820 #: ../src/guestfs-actions.pod:5296
26821 #, no-wrap
26822 msgid ""
26823 " int\n"
26824 " guestfs_part_del (guestfs_h *g,\n"
26825 "                   const char *device,\n"
26826 "                   int partnum);\n"
26827 "\n"
26828 msgstr ""
26829
26830 #. type: =head2
26831 #: ../src/guestfs-actions.pod:5311
26832 msgid "guestfs_part_disk"
26833 msgstr ""
26834
26835 #. type: verbatim
26836 #: ../src/guestfs-actions.pod:5313
26837 #, no-wrap
26838 msgid ""
26839 " int\n"
26840 " guestfs_part_disk (guestfs_h *g,\n"
26841 "                    const char *device,\n"
26842 "                    const char *parttype);\n"
26843 "\n"
26844 msgstr ""
26845
26846 #. type: textblock
26847 #: ../src/guestfs-actions.pod:5318
26848 msgid ""
26849 "This command is simply a combination of C<guestfs_part_init> followed by "
26850 "C<guestfs_part_add> to create a single primary partition covering the whole "
26851 "disk."
26852 msgstr ""
26853
26854 #. type: textblock
26855 #: ../src/guestfs-actions.pod:5322
26856 msgid ""
26857 "C<parttype> is the partition table type, usually C<mbr> or C<gpt>, but other "
26858 "possible values are described in C<guestfs_part_init>."
26859 msgstr ""
26860
26861 #. type: =head2
26862 #: ../src/guestfs-actions.pod:5332
26863 msgid "guestfs_part_get_bootable"
26864 msgstr ""
26865
26866 #. type: verbatim
26867 #: ../src/guestfs-actions.pod:5334
26868 #, no-wrap
26869 msgid ""
26870 " int\n"
26871 " guestfs_part_get_bootable (guestfs_h *g,\n"
26872 "                            const char *device,\n"
26873 "                            int partnum);\n"
26874 "\n"
26875 msgstr ""
26876
26877 #. type: textblock
26878 #: ../src/guestfs-actions.pod:5342
26879 msgid "See also C<guestfs_part_set_bootable>."
26880 msgstr ""
26881
26882 #. type: =head2
26883 #: ../src/guestfs-actions.pod:5348
26884 msgid "guestfs_part_get_mbr_id"
26885 msgstr ""
26886
26887 #. type: verbatim
26888 #: ../src/guestfs-actions.pod:5350
26889 #, no-wrap
26890 msgid ""
26891 " int\n"
26892 " guestfs_part_get_mbr_id (guestfs_h *g,\n"
26893 "                          const char *device,\n"
26894 "                          int partnum);\n"
26895 "\n"
26896 msgstr ""
26897
26898 #. type: textblock
26899 #: ../src/guestfs-actions.pod:5358 ../src/guestfs-actions.pod:5540
26900 msgid ""
26901 "Note that only MBR (old DOS-style) partitions have type bytes.  You will get "
26902 "undefined results for other partition table types (see "
26903 "C<guestfs_part_get_parttype>)."
26904 msgstr ""
26905
26906 #. type: =head2
26907 #: ../src/guestfs-actions.pod:5366
26908 msgid "guestfs_part_get_parttype"
26909 msgstr ""
26910
26911 #. type: verbatim
26912 #: ../src/guestfs-actions.pod:5368
26913 #, no-wrap
26914 msgid ""
26915 " char *\n"
26916 " guestfs_part_get_parttype (guestfs_h *g,\n"
26917 "                            const char *device);\n"
26918 "\n"
26919 msgstr ""
26920
26921 #. type: textblock
26922 #: ../src/guestfs-actions.pod:5375
26923 msgid ""
26924 "Common return values include: C<msdos> (a DOS/Windows style MBR partition "
26925 "table), C<gpt> (a GPT/EFI-style partition table).  Other values are "
26926 "possible, although unusual.  See C<guestfs_part_init> for a full list."
26927 msgstr ""
26928
26929 #. type: =head2
26930 #: ../src/guestfs-actions.pod:5385
26931 msgid "guestfs_part_init"
26932 msgstr ""
26933
26934 #. type: verbatim
26935 #: ../src/guestfs-actions.pod:5387
26936 #, no-wrap
26937 msgid ""
26938 " int\n"
26939 " guestfs_part_init (guestfs_h *g,\n"
26940 "                    const char *device,\n"
26941 "                    const char *parttype);\n"
26942 "\n"
26943 msgstr ""
26944
26945 #. type: textblock
26946 #: ../src/guestfs-actions.pod:5396
26947 msgid ""
26948 "Initially there are no partitions.  Following this, you should call "
26949 "C<guestfs_part_add> for each partition required."
26950 msgstr ""
26951
26952 #. type: =head2
26953 #: ../src/guestfs-actions.pod:5469
26954 msgid "guestfs_part_list"
26955 msgstr ""
26956
26957 #. type: verbatim
26958 #: ../src/guestfs-actions.pod:5471
26959 #, no-wrap
26960 msgid ""
26961 " struct guestfs_partition_list *\n"
26962 " guestfs_part_list (guestfs_h *g,\n"
26963 "                    const char *device);\n"
26964 "\n"
26965 msgstr ""
26966
26967 #. type: textblock
26968 #: ../src/guestfs-actions.pod:5488
26969 msgid ""
26970 "Start of the partition I<in bytes>.  To get sectors you have to divide by "
26971 "the device's sector size, see C<guestfs_blockdev_getss>."
26972 msgstr ""
26973
26974 #. type: textblock
26975 #: ../src/guestfs-actions.pod:5501
26976 msgid ""
26977 "This function returns a C<struct guestfs_partition_list *>, or NULL if there "
26978 "was an error.  I<The caller must call C<guestfs_free_partition_list> after "
26979 "use>."
26980 msgstr ""
26981
26982 #. type: =head2
26983 #: ../src/guestfs-actions.pod:5507
26984 msgid "guestfs_part_set_bootable"
26985 msgstr ""
26986
26987 #. type: verbatim
26988 #: ../src/guestfs-actions.pod:5509
26989 #, no-wrap
26990 msgid ""
26991 " int\n"
26992 " guestfs_part_set_bootable (guestfs_h *g,\n"
26993 "                            const char *device,\n"
26994 "                            int partnum,\n"
26995 "                            int bootable);\n"
26996 "\n"
26997 msgstr ""
26998
26999 #. type: =head2
27000 #: ../src/guestfs-actions.pod:5526
27001 msgid "guestfs_part_set_mbr_id"
27002 msgstr ""
27003
27004 #. type: verbatim
27005 #: ../src/guestfs-actions.pod:5528
27006 #, no-wrap
27007 msgid ""
27008 " int\n"
27009 " guestfs_part_set_mbr_id (guestfs_h *g,\n"
27010 "                          const char *device,\n"
27011 "                          int partnum,\n"
27012 "                          int idbyte);\n"
27013 "\n"
27014 msgstr ""
27015
27016 #. type: =head2
27017 #: ../src/guestfs-actions.pod:5548
27018 msgid "guestfs_part_set_name"
27019 msgstr ""
27020
27021 #. type: verbatim
27022 #: ../src/guestfs-actions.pod:5550
27023 #, no-wrap
27024 msgid ""
27025 " int\n"
27026 " guestfs_part_set_name (guestfs_h *g,\n"
27027 "                        const char *device,\n"
27028 "                        int partnum,\n"
27029 "                        const char *name);\n"
27030 "\n"
27031 msgstr ""
27032
27033 #. type: =head2
27034 #: ../src/guestfs-actions.pod:5566
27035 msgid "guestfs_part_to_dev"
27036 msgstr ""
27037
27038 #. type: verbatim
27039 #: ../src/guestfs-actions.pod:5568
27040 #, no-wrap
27041 msgid ""
27042 " char *\n"
27043 " guestfs_part_to_dev (guestfs_h *g,\n"
27044 "                      const char *partition);\n"
27045 "\n"
27046 msgstr ""
27047
27048 #. type: textblock
27049 #: ../src/guestfs-actions.pod:5576
27050 msgid ""
27051 "The named partition must exist, for example as a string returned from "
27052 "C<guestfs_list_partitions>."
27053 msgstr ""
27054
27055 #. type: =head2
27056 #: ../src/guestfs-actions.pod:5584
27057 msgid "guestfs_ping_daemon"
27058 msgstr ""
27059
27060 #. type: verbatim
27061 #: ../src/guestfs-actions.pod:5586
27062 #, no-wrap
27063 msgid ""
27064 " int\n"
27065 " guestfs_ping_daemon (guestfs_h *g);\n"
27066 "\n"
27067 msgstr ""
27068
27069 #. type: =head2
27070 #: ../src/guestfs-actions.pod:5598
27071 msgid "guestfs_pread"
27072 msgstr ""
27073
27074 #. type: verbatim
27075 #: ../src/guestfs-actions.pod:5600
27076 #, no-wrap
27077 msgid ""
27078 " char *\n"
27079 " guestfs_pread (guestfs_h *g,\n"
27080 "                const char *path,\n"
27081 "                int count,\n"
27082 "                int64_t offset,\n"
27083 "                size_t *size_r);\n"
27084 "\n"
27085 msgstr ""
27086
27087 #. type: textblock
27088 #: ../src/guestfs-actions.pod:5613
27089 msgid "See also C<guestfs_pwrite>, C<guestfs_pread_device>."
27090 msgstr ""
27091
27092 #. type: =head2
27093 #: ../src/guestfs-actions.pod:5624
27094 msgid "guestfs_pread_device"
27095 msgstr ""
27096
27097 #. type: verbatim
27098 #: ../src/guestfs-actions.pod:5626
27099 #, no-wrap
27100 msgid ""
27101 " char *\n"
27102 " guestfs_pread_device (guestfs_h *g,\n"
27103 "                       const char *device,\n"
27104 "                       int count,\n"
27105 "                       int64_t offset,\n"
27106 "                       size_t *size_r);\n"
27107 "\n"
27108 msgstr ""
27109
27110 #. type: textblock
27111 #: ../src/guestfs-actions.pod:5639
27112 msgid "See also C<guestfs_pread>."
27113 msgstr ""
27114
27115 #. type: textblock
27116 #: ../src/guestfs-actions.pod:5648
27117 msgid "(Added in 1.5.21)"
27118 msgstr ""
27119
27120 #. type: =head2
27121 #: ../src/guestfs-actions.pod:5650
27122 msgid "guestfs_pvcreate"
27123 msgstr ""
27124
27125 #. type: verbatim
27126 #: ../src/guestfs-actions.pod:5652
27127 #, no-wrap
27128 msgid ""
27129 " int\n"
27130 " guestfs_pvcreate (guestfs_h *g,\n"
27131 "                   const char *device);\n"
27132 "\n"
27133 msgstr ""
27134
27135 #. type: =head2
27136 #: ../src/guestfs-actions.pod:5664
27137 msgid "guestfs_pvremove"
27138 msgstr ""
27139
27140 #. type: verbatim
27141 #: ../src/guestfs-actions.pod:5666
27142 #, no-wrap
27143 msgid ""
27144 " int\n"
27145 " guestfs_pvremove (guestfs_h *g,\n"
27146 "                   const char *device);\n"
27147 "\n"
27148 msgstr ""
27149
27150 #. type: =head2
27151 #: ../src/guestfs-actions.pod:5681
27152 msgid "guestfs_pvresize"
27153 msgstr ""
27154
27155 #. type: verbatim
27156 #: ../src/guestfs-actions.pod:5683
27157 #, no-wrap
27158 msgid ""
27159 " int\n"
27160 " guestfs_pvresize (guestfs_h *g,\n"
27161 "                   const char *device);\n"
27162 "\n"
27163 msgstr ""
27164
27165 #. type: =head2
27166 #: ../src/guestfs-actions.pod:5694
27167 msgid "guestfs_pvresize_size"
27168 msgstr ""
27169
27170 #. type: verbatim
27171 #: ../src/guestfs-actions.pod:5696
27172 #, no-wrap
27173 msgid ""
27174 " int\n"
27175 " guestfs_pvresize_size (guestfs_h *g,\n"
27176 "                        const char *device,\n"
27177 "                        int64_t size);\n"
27178 "\n"
27179 msgstr ""
27180
27181 #. type: textblock
27182 #: ../src/guestfs-actions.pod:5701
27183 msgid ""
27184 "This command is the same as C<guestfs_pvresize> except that it allows you to "
27185 "specify the new size (in bytes) explicitly."
27186 msgstr ""
27187
27188 #. type: =head2
27189 #: ../src/guestfs-actions.pod:5708
27190 msgid "guestfs_pvs"
27191 msgstr ""
27192
27193 #. type: verbatim
27194 #: ../src/guestfs-actions.pod:5710
27195 #, no-wrap
27196 msgid ""
27197 " char **\n"
27198 " guestfs_pvs (guestfs_h *g);\n"
27199 "\n"
27200 msgstr ""
27201
27202 #. type: textblock
27203 #: ../src/guestfs-actions.pod:5719
27204 msgid "See also C<guestfs_pvs_full>."
27205 msgstr ""
27206
27207 #. type: =head2
27208 #: ../src/guestfs-actions.pod:5727
27209 msgid "guestfs_pvs_full"
27210 msgstr ""
27211
27212 #. type: verbatim
27213 #: ../src/guestfs-actions.pod:5729
27214 #, no-wrap
27215 msgid ""
27216 " struct guestfs_lvm_pv_list *\n"
27217 " guestfs_pvs_full (guestfs_h *g);\n"
27218 "\n"
27219 msgstr ""
27220
27221 #. type: textblock
27222 #: ../src/guestfs-actions.pod:5735
27223 msgid ""
27224 "This function returns a C<struct guestfs_lvm_pv_list *>, or NULL if there "
27225 "was an error.  I<The caller must call C<guestfs_free_lvm_pv_list> after "
27226 "use>."
27227 msgstr ""
27228
27229 #. type: =head2
27230 #: ../src/guestfs-actions.pod:5741
27231 msgid "guestfs_pvuuid"
27232 msgstr ""
27233
27234 #. type: verbatim
27235 #: ../src/guestfs-actions.pod:5743
27236 #, no-wrap
27237 msgid ""
27238 " char *\n"
27239 " guestfs_pvuuid (guestfs_h *g,\n"
27240 "                 const char *device);\n"
27241 "\n"
27242 msgstr ""
27243
27244 #. type: =head2
27245 #: ../src/guestfs-actions.pod:5754
27246 msgid "guestfs_pwrite"
27247 msgstr ""
27248
27249 #. type: verbatim
27250 #: ../src/guestfs-actions.pod:5756
27251 #, no-wrap
27252 msgid ""
27253 " int\n"
27254 " guestfs_pwrite (guestfs_h *g,\n"
27255 "                 const char *path,\n"
27256 "                 const char *content,\n"
27257 "                 size_t content_size,\n"
27258 "                 int64_t offset);\n"
27259 "\n"
27260 msgstr ""
27261
27262 #. type: textblock
27263 #: ../src/guestfs-actions.pod:5772
27264 msgid "See also C<guestfs_pread>, C<guestfs_pwrite_device>."
27265 msgstr ""
27266
27267 #. type: =head2
27268 #: ../src/guestfs-actions.pod:5781
27269 msgid "guestfs_pwrite_device"
27270 msgstr ""
27271
27272 #. type: verbatim
27273 #: ../src/guestfs-actions.pod:5783
27274 #, no-wrap
27275 msgid ""
27276 " int\n"
27277 " guestfs_pwrite_device (guestfs_h *g,\n"
27278 "                        const char *device,\n"
27279 "                        const char *content,\n"
27280 "                        size_t content_size,\n"
27281 "                        int64_t offset);\n"
27282 "\n"
27283 msgstr ""
27284
27285 #. type: textblock
27286 #: ../src/guestfs-actions.pod:5798
27287 msgid "See also C<guestfs_pwrite>."
27288 msgstr ""
27289
27290 #. type: textblock
27291 #: ../src/guestfs-actions.pod:5805
27292 msgid "(Added in 1.5.20)"
27293 msgstr ""
27294
27295 #. type: =head2
27296 #: ../src/guestfs-actions.pod:5807
27297 msgid "guestfs_read_file"
27298 msgstr ""
27299
27300 #. type: verbatim
27301 #: ../src/guestfs-actions.pod:5809
27302 #, no-wrap
27303 msgid ""
27304 " char *\n"
27305 " guestfs_read_file (guestfs_h *g,\n"
27306 "                    const char *path,\n"
27307 "                    size_t *size_r);\n"
27308 "\n"
27309 msgstr ""
27310
27311 #. type: textblock
27312 #: ../src/guestfs-actions.pod:5817
27313 msgid ""
27314 "Unlike C<guestfs_cat>, this function can correctly handle files that contain "
27315 "embedded ASCII NUL characters.  However unlike C<guestfs_download>, this "
27316 "function is limited in the total size of file that can be handled."
27317 msgstr ""
27318
27319 #. type: textblock
27320 #: ../src/guestfs-actions.pod:5829
27321 msgid "(Added in 1.0.63)"
27322 msgstr ""
27323
27324 #. type: =head2
27325 #: ../src/guestfs-actions.pod:5831
27326 msgid "guestfs_read_lines"
27327 msgstr ""
27328
27329 #. type: verbatim
27330 #: ../src/guestfs-actions.pod:5833
27331 #, no-wrap
27332 msgid ""
27333 " char **\n"
27334 " guestfs_read_lines (guestfs_h *g,\n"
27335 "                     const char *path);\n"
27336 "\n"
27337 msgstr ""
27338
27339 #. type: textblock
27340 #: ../src/guestfs-actions.pod:5842
27341 msgid ""
27342 "Note that this function cannot correctly handle binary files (specifically, "
27343 "files containing C<\\0> character which is treated as end of line).  For "
27344 "those you need to use the C<guestfs_read_file> function which has a more "
27345 "complex interface."
27346 msgstr ""
27347
27348 #. type: =head2
27349 #: ../src/guestfs-actions.pod:5853
27350 msgid "guestfs_readdir"
27351 msgstr ""
27352
27353 #. type: verbatim
27354 #: ../src/guestfs-actions.pod:5855
27355 #, no-wrap
27356 msgid ""
27357 " struct guestfs_dirent_list *\n"
27358 " guestfs_readdir (guestfs_h *g,\n"
27359 "                  const char *dir);\n"
27360 "\n"
27361 msgstr ""
27362
27363 #. type: textblock
27364 #: ../src/guestfs-actions.pod:5909
27365 msgid ""
27366 "This function is primarily intended for use by programs.  To get a simple "
27367 "list of names, use C<guestfs_ls>.  To get a printable directory for human "
27368 "consumption, use C<guestfs_ll>."
27369 msgstr ""
27370
27371 #. type: textblock
27372 #: ../src/guestfs-actions.pod:5913
27373 msgid ""
27374 "This function returns a C<struct guestfs_dirent_list *>, or NULL if there "
27375 "was an error.  I<The caller must call C<guestfs_free_dirent_list> after "
27376 "use>."
27377 msgstr ""
27378
27379 #. type: =head2
27380 #: ../src/guestfs-actions.pod:5919
27381 msgid "guestfs_readlink"
27382 msgstr ""
27383
27384 #. type: verbatim
27385 #: ../src/guestfs-actions.pod:5921
27386 #, no-wrap
27387 msgid ""
27388 " char *\n"
27389 " guestfs_readlink (guestfs_h *g,\n"
27390 "                   const char *path);\n"
27391 "\n"
27392 msgstr ""
27393
27394 #. type: =head2
27395 #: ../src/guestfs-actions.pod:5932
27396 msgid "guestfs_readlinklist"
27397 msgstr ""
27398
27399 #. type: verbatim
27400 #: ../src/guestfs-actions.pod:5934
27401 #, no-wrap
27402 msgid ""
27403 " char **\n"
27404 " guestfs_readlinklist (guestfs_h *g,\n"
27405 "                       const char *path,\n"
27406 "                       char *const *names);\n"
27407 "\n"
27408 msgstr ""
27409
27410 #. type: =head2
27411 #: ../src/guestfs-actions.pod:5967
27412 msgid "guestfs_realpath"
27413 msgstr ""
27414
27415 #. type: verbatim
27416 #: ../src/guestfs-actions.pod:5969
27417 #, no-wrap
27418 msgid ""
27419 " char *\n"
27420 " guestfs_realpath (guestfs_h *g,\n"
27421 "                   const char *path);\n"
27422 "\n"
27423 msgstr ""
27424
27425 #. type: =head2
27426 #: ../src/guestfs-actions.pod:5981
27427 msgid "guestfs_removexattr"
27428 msgstr ""
27429
27430 #. type: verbatim
27431 #: ../src/guestfs-actions.pod:5983
27432 #, no-wrap
27433 msgid ""
27434 " int\n"
27435 " guestfs_removexattr (guestfs_h *g,\n"
27436 "                      const char *xattr,\n"
27437 "                      const char *path);\n"
27438 "\n"
27439 msgstr ""
27440
27441 #. type: textblock
27442 #: ../src/guestfs-actions.pod:5991
27443 msgid "See also: C<guestfs_lremovexattr>, L<attr(5)>."
27444 msgstr ""
27445
27446 #. type: =head2
27447 #: ../src/guestfs-actions.pod:5997
27448 msgid "guestfs_resize2fs"
27449 msgstr ""
27450
27451 #. type: verbatim
27452 #: ../src/guestfs-actions.pod:5999
27453 #, no-wrap
27454 msgid ""
27455 " int\n"
27456 " guestfs_resize2fs (guestfs_h *g,\n"
27457 "                    const char *device);\n"
27458 "\n"
27459 msgstr ""
27460
27461 #. type: textblock
27462 #: ../src/guestfs-actions.pod:6006
27463 msgid ""
27464 "I<Note:> It is sometimes required that you run C<guestfs_e2fsck_f> on the "
27465 "C<device> before calling this command.  For unknown reasons C<resize2fs> "
27466 "sometimes gives an error about this and sometimes not.  In any case, it is "
27467 "always safe to call C<guestfs_e2fsck_f> before calling this function."
27468 msgstr ""
27469
27470 #. type: =head2
27471 #: ../src/guestfs-actions.pod:6016
27472 msgid "guestfs_resize2fs_M"
27473 msgstr ""
27474
27475 #. type: verbatim
27476 #: ../src/guestfs-actions.pod:6018
27477 #, no-wrap
27478 msgid ""
27479 " int\n"
27480 " guestfs_resize2fs_M (guestfs_h *g,\n"
27481 "                      const char *device);\n"
27482 "\n"
27483 msgstr ""
27484
27485 #. type: textblock
27486 #: ../src/guestfs-actions.pod:6022
27487 msgid ""
27488 "This command is the same as C<guestfs_resize2fs>, but the filesystem is "
27489 "resized to its minimum size.  This works like the I<-M> option to the "
27490 "C<resize2fs> command."
27491 msgstr ""
27492
27493 #. type: textblock
27494 #: ../src/guestfs-actions.pod:6026
27495 msgid ""
27496 "To get the resulting size of the filesystem you should call "
27497 "C<guestfs_tune2fs_l> and read the C<Block size> and C<Block count> values.  "
27498 "These two numbers, multiplied together, give the resulting size of the "
27499 "minimal filesystem in bytes."
27500 msgstr ""
27501
27502 #. type: =head2
27503 #: ../src/guestfs-actions.pod:6035
27504 msgid "guestfs_resize2fs_size"
27505 msgstr ""
27506
27507 #. type: verbatim
27508 #: ../src/guestfs-actions.pod:6037
27509 #, no-wrap
27510 msgid ""
27511 " int\n"
27512 " guestfs_resize2fs_size (guestfs_h *g,\n"
27513 "                         const char *device,\n"
27514 "                         int64_t size);\n"
27515 "\n"
27516 msgstr ""
27517
27518 #. type: textblock
27519 #: ../src/guestfs-actions.pod:6042
27520 msgid ""
27521 "This command is the same as C<guestfs_resize2fs> except that it allows you "
27522 "to specify the new size (in bytes) explicitly."
27523 msgstr ""
27524
27525 #. type: =head2
27526 #: ../src/guestfs-actions.pod:6049
27527 msgid "guestfs_rm"
27528 msgstr ""
27529
27530 #. type: verbatim
27531 #: ../src/guestfs-actions.pod:6051
27532 #, no-wrap
27533 msgid ""
27534 " int\n"
27535 " guestfs_rm (guestfs_h *g,\n"
27536 "             const char *path);\n"
27537 "\n"
27538 msgstr ""
27539
27540 #. type: =head2
27541 #: ../src/guestfs-actions.pod:6061
27542 msgid "guestfs_rm_rf"
27543 msgstr ""
27544
27545 #. type: verbatim
27546 #: ../src/guestfs-actions.pod:6063
27547 #, no-wrap
27548 msgid ""
27549 " int\n"
27550 " guestfs_rm_rf (guestfs_h *g,\n"
27551 "                const char *path);\n"
27552 "\n"
27553 msgstr ""
27554
27555 #. type: =head2
27556 #: ../src/guestfs-actions.pod:6075
27557 msgid "guestfs_rmdir"
27558 msgstr ""
27559
27560 #. type: verbatim
27561 #: ../src/guestfs-actions.pod:6077
27562 #, no-wrap
27563 msgid ""
27564 " int\n"
27565 " guestfs_rmdir (guestfs_h *g,\n"
27566 "                const char *path);\n"
27567 "\n"
27568 msgstr ""
27569
27570 #. type: =head2
27571 #: ../src/guestfs-actions.pod:6087
27572 msgid "guestfs_rmmountpoint"
27573 msgstr ""
27574
27575 #. type: verbatim
27576 #: ../src/guestfs-actions.pod:6089
27577 #, no-wrap
27578 msgid ""
27579 " int\n"
27580 " guestfs_rmmountpoint (guestfs_h *g,\n"
27581 "                       const char *exemptpath);\n"
27582 "\n"
27583 msgstr ""
27584
27585 #. type: textblock
27586 #: ../src/guestfs-actions.pod:6093
27587 msgid ""
27588 "This calls removes a mountpoint that was previously created with "
27589 "C<guestfs_mkmountpoint>.  See C<guestfs_mkmountpoint> for full details."
27590 msgstr ""
27591
27592 #. type: =head2
27593 #: ../src/guestfs-actions.pod:6101
27594 msgid "guestfs_scrub_device"
27595 msgstr ""
27596
27597 #. type: verbatim
27598 #: ../src/guestfs-actions.pod:6103
27599 #, no-wrap
27600 msgid ""
27601 " int\n"
27602 " guestfs_scrub_device (guestfs_h *g,\n"
27603 "                       const char *device);\n"
27604 "\n"
27605 msgstr ""
27606
27607 #. type: textblock
27608 #: ../src/guestfs-actions.pod:6118 ../src/guestfs-actions.pod:6136 ../src/guestfs-actions.pod:6155
27609 msgid "(Added in 1.0.52)"
27610 msgstr ""
27611
27612 #. type: =head2
27613 #: ../src/guestfs-actions.pod:6120
27614 msgid "guestfs_scrub_file"
27615 msgstr ""
27616
27617 #. type: verbatim
27618 #: ../src/guestfs-actions.pod:6122
27619 #, no-wrap
27620 msgid ""
27621 " int\n"
27622 " guestfs_scrub_file (guestfs_h *g,\n"
27623 "                     const char *file);\n"
27624 "\n"
27625 msgstr ""
27626
27627 #. type: =head2
27628 #: ../src/guestfs-actions.pod:6138
27629 msgid "guestfs_scrub_freespace"
27630 msgstr ""
27631
27632 #. type: verbatim
27633 #: ../src/guestfs-actions.pod:6140
27634 #, no-wrap
27635 msgid ""
27636 " int\n"
27637 " guestfs_scrub_freespace (guestfs_h *g,\n"
27638 "                          const char *dir);\n"
27639 "\n"
27640 msgstr ""
27641
27642 #. type: textblock
27643 #: ../src/guestfs-actions.pod:6144
27644 msgid ""
27645 "This command creates the directory C<dir> and then fills it with files until "
27646 "the filesystem is full, and scrubs the files as for C<guestfs_scrub_file>, "
27647 "and deletes them.  The intention is to scrub any free space on the partition "
27648 "containing C<dir>."
27649 msgstr ""
27650
27651 #. type: =head2
27652 #: ../src/guestfs-actions.pod:6157
27653 msgid "guestfs_set_append"
27654 msgstr ""
27655
27656 #. type: verbatim
27657 #: ../src/guestfs-actions.pod:6159
27658 #, no-wrap
27659 msgid ""
27660 " int\n"
27661 " guestfs_set_append (guestfs_h *g,\n"
27662 "                     const char *append);\n"
27663 "\n"
27664 msgstr ""
27665
27666 #. type: =head2
27667 #: ../src/guestfs-actions.pod:6176
27668 msgid "guestfs_set_attach_method"
27669 msgstr ""
27670
27671 #. type: verbatim
27672 #: ../src/guestfs-actions.pod:6178
27673 #, no-wrap
27674 msgid ""
27675 " int\n"
27676 " guestfs_set_attach_method (guestfs_h *g,\n"
27677 "                            const char *attachmethod);\n"
27678 "\n"
27679 msgstr ""
27680
27681 #. type: =head2
27682 #: ../src/guestfs-actions.pod:6206
27683 msgid "guestfs_set_autosync"
27684 msgstr ""
27685
27686 #. type: verbatim
27687 #: ../src/guestfs-actions.pod:6208
27688 #, no-wrap
27689 msgid ""
27690 " int\n"
27691 " guestfs_set_autosync (guestfs_h *g,\n"
27692 "                       int autosync);\n"
27693 "\n"
27694 msgstr ""
27695
27696 #. type: =head2
27697 #: ../src/guestfs-actions.pod:6224
27698 msgid "guestfs_set_direct"
27699 msgstr ""
27700
27701 #. type: verbatim
27702 #: ../src/guestfs-actions.pod:6226
27703 #, no-wrap
27704 msgid ""
27705 " int\n"
27706 " guestfs_set_direct (guestfs_h *g,\n"
27707 "                     int direct);\n"
27708 "\n"
27709 msgstr ""
27710
27711 #. type: textblock
27712 #: ../src/guestfs-actions.pod:6234
27713 msgid ""
27714 "One consequence of this is that log messages aren't caught by the library "
27715 "and handled by C<guestfs_set_log_message_callback>, but go straight to "
27716 "stdout."
27717 msgstr ""
27718
27719 #. type: =head2
27720 #: ../src/guestfs-actions.pod:6247
27721 msgid "guestfs_set_e2label"
27722 msgstr ""
27723
27724 #. type: verbatim
27725 #: ../src/guestfs-actions.pod:6249
27726 #, no-wrap
27727 msgid ""
27728 " int\n"
27729 " guestfs_set_e2label (guestfs_h *g,\n"
27730 "                      const char *device,\n"
27731 "                      const char *label);\n"
27732 "\n"
27733 msgstr ""
27734
27735 #. type: textblock
27736 #: ../src/guestfs-actions.pod:6258
27737 msgid ""
27738 "You can use either C<guestfs_tune2fs_l> or C<guestfs_get_e2label> to return "
27739 "the existing label on a filesystem."
27740 msgstr ""
27741
27742 #. type: =head2
27743 #: ../src/guestfs-actions.pod:6265
27744 msgid "guestfs_set_e2uuid"
27745 msgstr ""
27746
27747 #. type: verbatim
27748 #: ../src/guestfs-actions.pod:6267
27749 #, no-wrap
27750 msgid ""
27751 " int\n"
27752 " guestfs_set_e2uuid (guestfs_h *g,\n"
27753 "                     const char *device,\n"
27754 "                     const char *uuid);\n"
27755 "\n"
27756 msgstr ""
27757
27758 #. type: textblock
27759 #: ../src/guestfs-actions.pod:6277
27760 msgid ""
27761 "You can use either C<guestfs_tune2fs_l> or C<guestfs_get_e2uuid> to return "
27762 "the existing UUID of a filesystem."
27763 msgstr ""
27764
27765 #. type: =head2
27766 #: ../src/guestfs-actions.pod:6284
27767 msgid "guestfs_set_memsize"
27768 msgstr ""
27769
27770 #. type: verbatim
27771 #: ../src/guestfs-actions.pod:6286
27772 #, no-wrap
27773 msgid ""
27774 " int\n"
27775 " guestfs_set_memsize (guestfs_h *g,\n"
27776 "                      int memsize);\n"
27777 "\n"
27778 msgstr ""
27779
27780 #. type: textblock
27781 #: ../src/guestfs-actions.pod:6290
27782 msgid ""
27783 "This sets the memory size in megabytes allocated to the qemu subprocess.  "
27784 "This only has any effect if called before C<guestfs_launch>."
27785 msgstr ""
27786
27787 #. type: =head2
27788 #: ../src/guestfs-actions.pod:6305
27789 msgid "guestfs_set_network"
27790 msgstr ""
27791
27792 #. type: verbatim
27793 #: ../src/guestfs-actions.pod:6307
27794 #, no-wrap
27795 msgid ""
27796 " int\n"
27797 " guestfs_set_network (guestfs_h *g,\n"
27798 "                      int network);\n"
27799 "\n"
27800 msgstr ""
27801
27802 #. type: textblock
27803 #: ../src/guestfs-actions.pod:6317
27804 msgid ""
27805 "You must call this before calling C<guestfs_launch>, otherwise it has no "
27806 "effect."
27807 msgstr ""
27808
27809 #. type: =head2
27810 #: ../src/guestfs-actions.pod:6324
27811 msgid "guestfs_set_path"
27812 msgstr ""
27813
27814 #. type: verbatim
27815 #: ../src/guestfs-actions.pod:6326
27816 #, no-wrap
27817 msgid ""
27818 " int\n"
27819 " guestfs_set_path (guestfs_h *g,\n"
27820 "                   const char *searchpath);\n"
27821 "\n"
27822 msgstr ""
27823
27824 #. type: =head2
27825 #: ../src/guestfs-actions.pod:6341
27826 msgid "guestfs_set_pgroup"
27827 msgstr ""
27828
27829 #. type: verbatim
27830 #: ../src/guestfs-actions.pod:6343
27831 #, no-wrap
27832 msgid ""
27833 " int\n"
27834 " guestfs_set_pgroup (guestfs_h *g,\n"
27835 "                     int pgroup);\n"
27836 "\n"
27837 msgstr ""
27838
27839 #. type: =head2
27840 #: ../src/guestfs-actions.pod:6360
27841 msgid "guestfs_set_qemu"
27842 msgstr ""
27843
27844 #. type: verbatim
27845 #: ../src/guestfs-actions.pod:6362
27846 #, no-wrap
27847 msgid ""
27848 " int\n"
27849 " guestfs_set_qemu (guestfs_h *g,\n"
27850 "                   const char *qemu);\n"
27851 "\n"
27852 msgstr ""
27853
27854 #. type: =head2
27855 #: ../src/guestfs-actions.pod:6388
27856 msgid "guestfs_set_recovery_proc"
27857 msgstr ""
27858
27859 #. type: verbatim
27860 #: ../src/guestfs-actions.pod:6390
27861 #, no-wrap
27862 msgid ""
27863 " int\n"
27864 " guestfs_set_recovery_proc (guestfs_h *g,\n"
27865 "                            int recoveryproc);\n"
27866 "\n"
27867 msgstr ""
27868
27869 #. type: textblock
27870 #: ../src/guestfs-actions.pod:6394
27871 msgid ""
27872 "If this is called with the parameter C<false> then C<guestfs_launch> does "
27873 "not create a recovery process.  The purpose of the recovery process is to "
27874 "stop runaway qemu processes in the case where the main program aborts "
27875 "abruptly."
27876 msgstr ""
27877
27878 #. type: textblock
27879 #: ../src/guestfs-actions.pod:6399
27880 msgid ""
27881 "This only has any effect if called before C<guestfs_launch>, and the default "
27882 "is true."
27883 msgstr ""
27884
27885 #. type: =head2
27886 #: ../src/guestfs-actions.pod:6412
27887 msgid "guestfs_set_selinux"
27888 msgstr ""
27889
27890 #. type: verbatim
27891 #: ../src/guestfs-actions.pod:6414
27892 #, no-wrap
27893 msgid ""
27894 " int\n"
27895 " guestfs_set_selinux (guestfs_h *g,\n"
27896 "                      int selinux);\n"
27897 "\n"
27898 msgstr ""
27899
27900 #. type: =head2
27901 #: ../src/guestfs-actions.pod:6431
27902 msgid "guestfs_set_trace"
27903 msgstr ""
27904
27905 #. type: verbatim
27906 #: ../src/guestfs-actions.pod:6433
27907 #, no-wrap
27908 msgid ""
27909 " int\n"
27910 " guestfs_set_trace (guestfs_h *g,\n"
27911 "                    int trace);\n"
27912 "\n"
27913 msgstr ""
27914
27915 #. type: textblock
27916 #: ../src/guestfs-actions.pod:6447
27917 msgid ""
27918 "Trace messages are normally sent to C<stderr>, unless you register a "
27919 "callback to send them somewhere else (see C<guestfs_set_event_callback>)."
27920 msgstr ""
27921
27922 #. type: =head2
27923 #: ../src/guestfs-actions.pod:6455
27924 msgid "guestfs_set_verbose"
27925 msgstr ""
27926
27927 #. type: verbatim
27928 #: ../src/guestfs-actions.pod:6457
27929 #, no-wrap
27930 msgid ""
27931 " int\n"
27932 " guestfs_set_verbose (guestfs_h *g,\n"
27933 "                      int verbose);\n"
27934 "\n"
27935 msgstr ""
27936
27937 #. type: textblock
27938 #: ../src/guestfs-actions.pod:6466
27939 msgid ""
27940 "Verbose messages are normally sent to C<stderr>, unless you register a "
27941 "callback to send them somewhere else (see C<guestfs_set_event_callback>)."
27942 msgstr ""
27943
27944 #. type: =head2
27945 #: ../src/guestfs-actions.pod:6474
27946 msgid "guestfs_setcon"
27947 msgstr ""
27948
27949 #. type: verbatim
27950 #: ../src/guestfs-actions.pod:6476
27951 #, no-wrap
27952 msgid ""
27953 " int\n"
27954 " guestfs_setcon (guestfs_h *g,\n"
27955 "                 const char *context);\n"
27956 "\n"
27957 msgstr ""
27958
27959 #. type: =head2
27960 #: ../src/guestfs-actions.pod:6489
27961 msgid "guestfs_setxattr"
27962 msgstr ""
27963
27964 #. type: verbatim
27965 #: ../src/guestfs-actions.pod:6491
27966 #, no-wrap
27967 msgid ""
27968 " int\n"
27969 " guestfs_setxattr (guestfs_h *g,\n"
27970 "                   const char *xattr,\n"
27971 "                   const char *val,\n"
27972 "                   int vallen,\n"
27973 "                   const char *path);\n"
27974 "\n"
27975 msgstr ""
27976
27977 #. type: textblock
27978 #: ../src/guestfs-actions.pod:6502
27979 msgid "See also: C<guestfs_lsetxattr>, L<attr(5)>."
27980 msgstr ""
27981
27982 #. type: =head2
27983 #: ../src/guestfs-actions.pod:6508
27984 msgid "guestfs_sfdisk"
27985 msgstr ""
27986
27987 #. type: verbatim
27988 #: ../src/guestfs-actions.pod:6510
27989 #, no-wrap
27990 msgid ""
27991 " int\n"
27992 " guestfs_sfdisk (guestfs_h *g,\n"
27993 "                 const char *device,\n"
27994 "                 int cyls,\n"
27995 "                 int heads,\n"
27996 "                 int sectors,\n"
27997 "                 char *const *lines);\n"
27998 "\n"
27999 msgstr ""
28000
28001 #. type: textblock
28002 #: ../src/guestfs-actions.pod:6518 ../src/guestfs-actions.pod:6562 ../src/guestfs-actions.pod:6596
28003 msgid ""
28004 "I<This function is deprecated.> In new code, use the L</guestfs_part_add> "
28005 "call instead."
28006 msgstr ""
28007
28008 #. type: textblock
28009 #: ../src/guestfs-actions.pod:6545
28010 msgid "See also: C<guestfs_sfdisk_l>, C<guestfs_sfdisk_N>, C<guestfs_part_init>"
28011 msgstr ""
28012
28013 #. type: =head2
28014 #: ../src/guestfs-actions.pod:6555
28015 msgid "guestfs_sfdiskM"
28016 msgstr ""
28017
28018 #. type: verbatim
28019 #: ../src/guestfs-actions.pod:6557
28020 #, no-wrap
28021 msgid ""
28022 " int\n"
28023 " guestfs_sfdiskM (guestfs_h *g,\n"
28024 "                  const char *device,\n"
28025 "                  char *const *lines);\n"
28026 "\n"
28027 msgstr ""
28028
28029 #. type: textblock
28030 #: ../src/guestfs-actions.pod:6569
28031 msgid ""
28032 "This is a simplified interface to the C<guestfs_sfdisk> command, where "
28033 "partition sizes are specified in megabytes only (rounded to the nearest "
28034 "cylinder) and you don't need to specify the cyls, heads and sectors "
28035 "parameters which were rarely if ever used anyway."
28036 msgstr ""
28037
28038 #. type: textblock
28039 #: ../src/guestfs-actions.pod:6575
28040 msgid ""
28041 "See also: C<guestfs_sfdisk>, the L<sfdisk(8)> manpage and "
28042 "C<guestfs_part_disk>"
28043 msgstr ""
28044
28045 #. type: =head2
28046 #: ../src/guestfs-actions.pod:6585
28047 msgid "guestfs_sfdisk_N"
28048 msgstr ""
28049
28050 #. type: verbatim
28051 #: ../src/guestfs-actions.pod:6587
28052 #, no-wrap
28053 msgid ""
28054 " int\n"
28055 " guestfs_sfdisk_N (guestfs_h *g,\n"
28056 "                   const char *device,\n"
28057 "                   int partnum,\n"
28058 "                   int cyls,\n"
28059 "                   int heads,\n"
28060 "                   int sectors,\n"
28061 "                   const char *line);\n"
28062 "\n"
28063 msgstr ""
28064
28065 #. type: textblock
28066 #: ../src/guestfs-actions.pod:6606
28067 msgid ""
28068 "For other parameters, see C<guestfs_sfdisk>.  You should usually pass C<0> "
28069 "for the cyls/heads/sectors parameters."
28070 msgstr ""
28071
28072 #. type: textblock
28073 #: ../src/guestfs-actions.pod:6609
28074 msgid "See also: C<guestfs_part_add>"
28075 msgstr ""
28076
28077 #. type: =head2
28078 #: ../src/guestfs-actions.pod:6618
28079 msgid "guestfs_sfdisk_disk_geometry"
28080 msgstr ""
28081
28082 #. type: verbatim
28083 #: ../src/guestfs-actions.pod:6620
28084 #, no-wrap
28085 msgid ""
28086 " char *\n"
28087 " guestfs_sfdisk_disk_geometry (guestfs_h *g,\n"
28088 "                               const char *device);\n"
28089 "\n"
28090 msgstr ""
28091
28092 #. type: textblock
28093 #: ../src/guestfs-actions.pod:6624
28094 msgid ""
28095 "This displays the disk geometry of C<device> read from the partition table.  "
28096 "Especially in the case where the underlying block device has been resized, "
28097 "this can be different from the kernel's idea of the geometry (see "
28098 "C<guestfs_sfdisk_kernel_geometry>)."
28099 msgstr ""
28100
28101 #. type: =head2
28102 #: ../src/guestfs-actions.pod:6637
28103 msgid "guestfs_sfdisk_kernel_geometry"
28104 msgstr ""
28105
28106 #. type: verbatim
28107 #: ../src/guestfs-actions.pod:6639
28108 #, no-wrap
28109 msgid ""
28110 " char *\n"
28111 " guestfs_sfdisk_kernel_geometry (guestfs_h *g,\n"
28112 "                                 const char *device);\n"
28113 "\n"
28114 msgstr ""
28115
28116 #. type: =head2
28117 #: ../src/guestfs-actions.pod:6653
28118 msgid "guestfs_sfdisk_l"
28119 msgstr ""
28120
28121 #. type: verbatim
28122 #: ../src/guestfs-actions.pod:6655
28123 #, no-wrap
28124 msgid ""
28125 " char *\n"
28126 " guestfs_sfdisk_l (guestfs_h *g,\n"
28127 "                   const char *device);\n"
28128 "\n"
28129 msgstr ""
28130
28131 #. type: textblock
28132 #: ../src/guestfs-actions.pod:6659
28133 msgid ""
28134 "I<This function is deprecated.> In new code, use the L</guestfs_part_list> "
28135 "call instead."
28136 msgstr ""
28137
28138 #. type: textblock
28139 #: ../src/guestfs-actions.pod:6670
28140 msgid "See also: C<guestfs_part_list>"
28141 msgstr ""
28142
28143 #. type: =head2
28144 #: ../src/guestfs-actions.pod:6677
28145 msgid "guestfs_sh"
28146 msgstr ""
28147
28148 #. type: verbatim
28149 #: ../src/guestfs-actions.pod:6679
28150 #, no-wrap
28151 msgid ""
28152 " char *\n"
28153 " guestfs_sh (guestfs_h *g,\n"
28154 "             const char *command);\n"
28155 "\n"
28156 msgstr ""
28157
28158 #. type: textblock
28159 #: ../src/guestfs-actions.pod:6686
28160 msgid "This is like C<guestfs_command>, but passes the command to:"
28161 msgstr ""
28162
28163 #. type: textblock
28164 #: ../src/guestfs-actions.pod:6694
28165 msgid "All the provisos about C<guestfs_command> apply to this call."
28166 msgstr ""
28167
28168 #. type: =head2
28169 #: ../src/guestfs-actions.pod:6701
28170 msgid "guestfs_sh_lines"
28171 msgstr ""
28172
28173 #. type: verbatim
28174 #: ../src/guestfs-actions.pod:6703
28175 #, no-wrap
28176 msgid ""
28177 " char **\n"
28178 " guestfs_sh_lines (guestfs_h *g,\n"
28179 "                   const char *command);\n"
28180 "\n"
28181 msgstr ""
28182
28183 #. type: textblock
28184 #: ../src/guestfs-actions.pod:6707
28185 msgid ""
28186 "This is the same as C<guestfs_sh>, but splits the result into a list of "
28187 "lines."
28188 msgstr ""
28189
28190 #. type: textblock
28191 #: ../src/guestfs-actions.pod:6710
28192 msgid "See also: C<guestfs_command_lines>"
28193 msgstr ""
28194
28195 #. type: =head2
28196 #: ../src/guestfs-actions.pod:6718
28197 msgid "guestfs_sleep"
28198 msgstr ""
28199
28200 #. type: verbatim
28201 #: ../src/guestfs-actions.pod:6720
28202 #, no-wrap
28203 msgid ""
28204 " int\n"
28205 " guestfs_sleep (guestfs_h *g,\n"
28206 "                int secs);\n"
28207 "\n"
28208 msgstr ""
28209
28210 #. type: textblock
28211 #: ../src/guestfs-actions.pod:6728
28212 msgid "(Added in 1.0.41)"
28213 msgstr ""
28214
28215 #. type: =head2
28216 #: ../src/guestfs-actions.pod:6730 ../src/guestfs-structs.pod:109
28217 msgid "guestfs_stat"
28218 msgstr ""
28219
28220 #. type: verbatim
28221 #: ../src/guestfs-actions.pod:6732
28222 #, no-wrap
28223 msgid ""
28224 " struct guestfs_stat *\n"
28225 " guestfs_stat (guestfs_h *g,\n"
28226 "               const char *path);\n"
28227 "\n"
28228 msgstr ""
28229
28230 #. type: =head2
28231 #: ../src/guestfs-actions.pod:6746 ../src/guestfs-structs.pod:135
28232 msgid "guestfs_statvfs"
28233 msgstr ""
28234
28235 #. type: verbatim
28236 #: ../src/guestfs-actions.pod:6748
28237 #, no-wrap
28238 msgid ""
28239 " struct guestfs_statvfs *\n"
28240 " guestfs_statvfs (guestfs_h *g,\n"
28241 "                  const char *path);\n"
28242 "\n"
28243 msgstr ""
28244
28245 #. type: textblock
28246 #: ../src/guestfs-actions.pod:6758
28247 msgid ""
28248 "This function returns a C<struct guestfs_statvfs *>, or NULL if there was an "
28249 "error.  I<The caller must call C<guestfs_free_statvfs> after use>."
28250 msgstr ""
28251
28252 #. type: =head2
28253 #: ../src/guestfs-actions.pod:6764
28254 msgid "guestfs_strings"
28255 msgstr ""
28256
28257 #. type: verbatim
28258 #: ../src/guestfs-actions.pod:6766
28259 #, no-wrap
28260 msgid ""
28261 " char **\n"
28262 " guestfs_strings (guestfs_h *g,\n"
28263 "                  const char *path);\n"
28264 "\n"
28265 msgstr ""
28266
28267 #. type: =head2
28268 #: ../src/guestfs-actions.pod:6782
28269 msgid "guestfs_strings_e"
28270 msgstr ""
28271
28272 #. type: verbatim
28273 #: ../src/guestfs-actions.pod:6784
28274 #, no-wrap
28275 msgid ""
28276 " char **\n"
28277 " guestfs_strings_e (guestfs_h *g,\n"
28278 "                    const char *encoding,\n"
28279 "                    const char *path);\n"
28280 "\n"
28281 msgstr ""
28282
28283 #. type: textblock
28284 #: ../src/guestfs-actions.pod:6789
28285 msgid ""
28286 "This is like the C<guestfs_strings> command, but allows you to specify the "
28287 "encoding of strings that are looked for in the source file C<path>."
28288 msgstr ""
28289
28290 #. type: textblock
28291 #: ../src/guestfs-actions.pod:6799
28292 msgid ""
28293 "Single 7-bit-byte characters like ASCII and the ASCII-compatible parts of "
28294 "ISO-8859-X (this is what C<guestfs_strings> uses)."
28295 msgstr ""
28296
28297 #. type: =head2
28298 #: ../src/guestfs-actions.pod:6837
28299 msgid "guestfs_swapoff_device"
28300 msgstr ""
28301
28302 #. type: verbatim
28303 #: ../src/guestfs-actions.pod:6839
28304 #, no-wrap
28305 msgid ""
28306 " int\n"
28307 " guestfs_swapoff_device (guestfs_h *g,\n"
28308 "                         const char *device);\n"
28309 "\n"
28310 msgstr ""
28311
28312 #. type: textblock
28313 #: ../src/guestfs-actions.pod:6843
28314 msgid ""
28315 "This command disables the libguestfs appliance swap device or partition "
28316 "named C<device>.  See C<guestfs_swapon_device>."
28317 msgstr ""
28318
28319 #. type: =head2
28320 #: ../src/guestfs-actions.pod:6851
28321 msgid "guestfs_swapoff_file"
28322 msgstr ""
28323
28324 #. type: verbatim
28325 #: ../src/guestfs-actions.pod:6853
28326 #, no-wrap
28327 msgid ""
28328 " int\n"
28329 " guestfs_swapoff_file (guestfs_h *g,\n"
28330 "                       const char *file);\n"
28331 "\n"
28332 msgstr ""
28333
28334 #. type: =head2
28335 #: ../src/guestfs-actions.pod:6863
28336 msgid "guestfs_swapoff_label"
28337 msgstr ""
28338
28339 #. type: verbatim
28340 #: ../src/guestfs-actions.pod:6865
28341 #, no-wrap
28342 msgid ""
28343 " int\n"
28344 " guestfs_swapoff_label (guestfs_h *g,\n"
28345 "                        const char *label);\n"
28346 "\n"
28347 msgstr ""
28348
28349 #. type: =head2
28350 #: ../src/guestfs-actions.pod:6876
28351 msgid "guestfs_swapoff_uuid"
28352 msgstr ""
28353
28354 #. type: verbatim
28355 #: ../src/guestfs-actions.pod:6878
28356 #, no-wrap
28357 msgid ""
28358 " int\n"
28359 " guestfs_swapoff_uuid (guestfs_h *g,\n"
28360 "                       const char *uuid);\n"
28361 "\n"
28362 msgstr ""
28363
28364 #. type: =head2
28365 #: ../src/guestfs-actions.pod:6889
28366 msgid "guestfs_swapon_device"
28367 msgstr ""
28368
28369 #. type: verbatim
28370 #: ../src/guestfs-actions.pod:6891
28371 #, no-wrap
28372 msgid ""
28373 " int\n"
28374 " guestfs_swapon_device (guestfs_h *g,\n"
28375 "                        const char *device);\n"
28376 "\n"
28377 msgstr ""
28378
28379 #. type: textblock
28380 #: ../src/guestfs-actions.pod:6895
28381 msgid ""
28382 "This command enables the libguestfs appliance to use the swap device or "
28383 "partition named C<device>.  The increased memory is made available for all "
28384 "commands, for example those run using C<guestfs_command> or C<guestfs_sh>."
28385 msgstr ""
28386
28387 #. type: =head2
28388 #: ../src/guestfs-actions.pod:6911
28389 msgid "guestfs_swapon_file"
28390 msgstr ""
28391
28392 #. type: verbatim
28393 #: ../src/guestfs-actions.pod:6913
28394 #, no-wrap
28395 msgid ""
28396 " int\n"
28397 " guestfs_swapon_file (guestfs_h *g,\n"
28398 "                      const char *file);\n"
28399 "\n"
28400 msgstr ""
28401
28402 #. type: textblock
28403 #: ../src/guestfs-actions.pod:6917
28404 msgid ""
28405 "This command enables swap to a file.  See C<guestfs_swapon_device> for other "
28406 "notes."
28407 msgstr ""
28408
28409 #. type: =head2
28410 #: ../src/guestfs-actions.pod:6924
28411 msgid "guestfs_swapon_label"
28412 msgstr ""
28413
28414 #. type: verbatim
28415 #: ../src/guestfs-actions.pod:6926
28416 #, no-wrap
28417 msgid ""
28418 " int\n"
28419 " guestfs_swapon_label (guestfs_h *g,\n"
28420 "                       const char *label);\n"
28421 "\n"
28422 msgstr ""
28423
28424 #. type: textblock
28425 #: ../src/guestfs-actions.pod:6930
28426 msgid ""
28427 "This command enables swap to a labeled swap partition.  See "
28428 "C<guestfs_swapon_device> for other notes."
28429 msgstr ""
28430
28431 #. type: =head2
28432 #: ../src/guestfs-actions.pod:6937
28433 msgid "guestfs_swapon_uuid"
28434 msgstr ""
28435
28436 #. type: verbatim
28437 #: ../src/guestfs-actions.pod:6939
28438 #, no-wrap
28439 msgid ""
28440 " int\n"
28441 " guestfs_swapon_uuid (guestfs_h *g,\n"
28442 "                      const char *uuid);\n"
28443 "\n"
28444 msgstr ""
28445
28446 #. type: textblock
28447 #: ../src/guestfs-actions.pod:6943
28448 msgid ""
28449 "This command enables swap to a swap partition with the given UUID.  See "
28450 "C<guestfs_swapon_device> for other notes."
28451 msgstr ""
28452
28453 #. type: =head2
28454 #: ../src/guestfs-actions.pod:6950
28455 msgid "guestfs_sync"
28456 msgstr ""
28457
28458 #. type: verbatim
28459 #: ../src/guestfs-actions.pod:6952
28460 #, no-wrap
28461 msgid ""
28462 " int\n"
28463 " guestfs_sync (guestfs_h *g);\n"
28464 "\n"
28465 msgstr ""
28466
28467 #. type: =head2
28468 #: ../src/guestfs-actions.pod:6965
28469 msgid "guestfs_tail"
28470 msgstr ""
28471
28472 #. type: verbatim
28473 #: ../src/guestfs-actions.pod:6967
28474 #, no-wrap
28475 msgid ""
28476 " char **\n"
28477 " guestfs_tail (guestfs_h *g,\n"
28478 "               const char *path);\n"
28479 "\n"
28480 msgstr ""
28481
28482 #. type: =head2
28483 #: ../src/guestfs-actions.pod:6983
28484 msgid "guestfs_tail_n"
28485 msgstr ""
28486
28487 #. type: verbatim
28488 #: ../src/guestfs-actions.pod:6985
28489 #, no-wrap
28490 msgid ""
28491 " char **\n"
28492 " guestfs_tail_n (guestfs_h *g,\n"
28493 "                 int nrlines,\n"
28494 "                 const char *path);\n"
28495 "\n"
28496 msgstr ""
28497
28498 #. type: =head2
28499 #: ../src/guestfs-actions.pod:7007
28500 msgid "guestfs_tar_in"
28501 msgstr ""
28502
28503 #. type: verbatim
28504 #: ../src/guestfs-actions.pod:7009
28505 #, no-wrap
28506 msgid ""
28507 " int\n"
28508 " guestfs_tar_in (guestfs_h *g,\n"
28509 "                 const char *tarfile,\n"
28510 "                 const char *directory);\n"
28511 "\n"
28512 msgstr ""
28513
28514 #. type: textblock
28515 #: ../src/guestfs-actions.pod:7017
28516 msgid "To upload a compressed tarball, use C<guestfs_tgz_in> or C<guestfs_txz_in>."
28517 msgstr ""
28518
28519 #. type: textblock
28520 #: ../src/guestfs-actions.pod:7022 ../src/guestfs-actions.pod:7039 ../src/guestfs-actions.pod:7055 ../src/guestfs-actions.pod:7071
28521 msgid "(Added in 1.0.3)"
28522 msgstr ""
28523
28524 #. type: =head2
28525 #: ../src/guestfs-actions.pod:7024
28526 msgid "guestfs_tar_out"
28527 msgstr ""
28528
28529 #. type: verbatim
28530 #: ../src/guestfs-actions.pod:7026
28531 #, no-wrap
28532 msgid ""
28533 " int\n"
28534 " guestfs_tar_out (guestfs_h *g,\n"
28535 "                  const char *directory,\n"
28536 "                  const char *tarfile);\n"
28537 "\n"
28538 msgstr ""
28539
28540 #. type: textblock
28541 #: ../src/guestfs-actions.pod:7034
28542 msgid ""
28543 "To download a compressed tarball, use C<guestfs_tgz_out> or "
28544 "C<guestfs_txz_out>."
28545 msgstr ""
28546
28547 #. type: =head2
28548 #: ../src/guestfs-actions.pod:7041
28549 msgid "guestfs_tgz_in"
28550 msgstr ""
28551
28552 #. type: verbatim
28553 #: ../src/guestfs-actions.pod:7043
28554 #, no-wrap
28555 msgid ""
28556 " int\n"
28557 " guestfs_tgz_in (guestfs_h *g,\n"
28558 "                 const char *tarball,\n"
28559 "                 const char *directory);\n"
28560 "\n"
28561 msgstr ""
28562
28563 #. type: textblock
28564 #: ../src/guestfs-actions.pod:7051
28565 msgid "To upload an uncompressed tarball, use C<guestfs_tar_in>."
28566 msgstr ""
28567
28568 #. type: =head2
28569 #: ../src/guestfs-actions.pod:7057
28570 msgid "guestfs_tgz_out"
28571 msgstr ""
28572
28573 #. type: verbatim
28574 #: ../src/guestfs-actions.pod:7059
28575 #, no-wrap
28576 msgid ""
28577 " int\n"
28578 " guestfs_tgz_out (guestfs_h *g,\n"
28579 "                  const char *directory,\n"
28580 "                  const char *tarball);\n"
28581 "\n"
28582 msgstr ""
28583
28584 #. type: textblock
28585 #: ../src/guestfs-actions.pod:7067
28586 msgid "To download an uncompressed tarball, use C<guestfs_tar_out>."
28587 msgstr ""
28588
28589 #. type: =head2
28590 #: ../src/guestfs-actions.pod:7073
28591 msgid "guestfs_touch"
28592 msgstr ""
28593
28594 #. type: verbatim
28595 #: ../src/guestfs-actions.pod:7075
28596 #, no-wrap
28597 msgid ""
28598 " int\n"
28599 " guestfs_touch (guestfs_h *g,\n"
28600 "                const char *path);\n"
28601 "\n"
28602 msgstr ""
28603
28604 #. type: =head2
28605 #: ../src/guestfs-actions.pod:7090
28606 msgid "guestfs_truncate"
28607 msgstr ""
28608
28609 #. type: verbatim
28610 #: ../src/guestfs-actions.pod:7092
28611 #, no-wrap
28612 msgid ""
28613 " int\n"
28614 " guestfs_truncate (guestfs_h *g,\n"
28615 "                   const char *path);\n"
28616 "\n"
28617 msgstr ""
28618
28619 #. type: =head2
28620 #: ../src/guestfs-actions.pod:7103
28621 msgid "guestfs_truncate_size"
28622 msgstr ""
28623
28624 #. type: verbatim
28625 #: ../src/guestfs-actions.pod:7105
28626 #, no-wrap
28627 msgid ""
28628 " int\n"
28629 " guestfs_truncate_size (guestfs_h *g,\n"
28630 "                        const char *path,\n"
28631 "                        int64_t size);\n"
28632 "\n"
28633 msgstr ""
28634
28635 #. type: textblock
28636 #: ../src/guestfs-actions.pod:7113
28637 msgid ""
28638 "If the current file size is less than C<size> then the file is extended to "
28639 "the required size with zero bytes.  This creates a sparse file (ie. disk "
28640 "blocks are not allocated for the file until you write to it).  To create a "
28641 "non-sparse file of zeroes, use C<guestfs_fallocate64> instead."
28642 msgstr ""
28643
28644 #. type: =head2
28645 #: ../src/guestfs-actions.pod:7123
28646 msgid "guestfs_tune2fs_l"
28647 msgstr ""
28648
28649 #. type: verbatim
28650 #: ../src/guestfs-actions.pod:7125
28651 #, no-wrap
28652 msgid ""
28653 " char **\n"
28654 " guestfs_tune2fs_l (guestfs_h *g,\n"
28655 "                    const char *device);\n"
28656 "\n"
28657 msgstr ""
28658
28659 #. type: =head2
28660 #: ../src/guestfs-actions.pod:7145
28661 msgid "guestfs_txz_in"
28662 msgstr ""
28663
28664 #. type: verbatim
28665 #: ../src/guestfs-actions.pod:7147
28666 #, no-wrap
28667 msgid ""
28668 " int\n"
28669 " guestfs_txz_in (guestfs_h *g,\n"
28670 "                 const char *tarball,\n"
28671 "                 const char *directory);\n"
28672 "\n"
28673 msgstr ""
28674
28675 #. type: =head2
28676 #: ../src/guestfs-actions.pod:7159
28677 msgid "guestfs_txz_out"
28678 msgstr ""
28679
28680 #. type: verbatim
28681 #: ../src/guestfs-actions.pod:7161
28682 #, no-wrap
28683 msgid ""
28684 " int\n"
28685 " guestfs_txz_out (guestfs_h *g,\n"
28686 "                  const char *directory,\n"
28687 "                  const char *tarball);\n"
28688 "\n"
28689 msgstr ""
28690
28691 #. type: =head2
28692 #: ../src/guestfs-actions.pod:7173
28693 msgid "guestfs_umask"
28694 msgstr ""
28695
28696 #. type: verbatim
28697 #: ../src/guestfs-actions.pod:7175
28698 #, no-wrap
28699 msgid ""
28700 " int\n"
28701 " guestfs_umask (guestfs_h *g,\n"
28702 "                int mask);\n"
28703 "\n"
28704 msgstr ""
28705
28706 #. type: textblock
28707 #: ../src/guestfs-actions.pod:7191
28708 msgid ""
28709 "See also C<guestfs_get_umask>, L<umask(2)>, C<guestfs_mknod>, "
28710 "C<guestfs_mkdir>."
28711 msgstr ""
28712
28713 #. type: =head2
28714 #: ../src/guestfs-actions.pod:7200
28715 msgid "guestfs_umount"
28716 msgstr ""
28717
28718 #. type: verbatim
28719 #: ../src/guestfs-actions.pod:7202
28720 #, no-wrap
28721 msgid ""
28722 " int\n"
28723 " guestfs_umount (guestfs_h *g,\n"
28724 "                 const char *pathordevice);\n"
28725 "\n"
28726 msgstr ""
28727
28728 #. type: =head2
28729 #: ../src/guestfs-actions.pod:7214
28730 msgid "guestfs_umount_all"
28731 msgstr ""
28732
28733 #. type: verbatim
28734 #: ../src/guestfs-actions.pod:7216
28735 #, no-wrap
28736 msgid ""
28737 " int\n"
28738 " guestfs_umount_all (guestfs_h *g);\n"
28739 "\n"
28740 msgstr ""
28741
28742 #. type: =head2
28743 #: ../src/guestfs-actions.pod:7227
28744 msgid "guestfs_upload"
28745 msgstr ""
28746
28747 #. type: verbatim
28748 #: ../src/guestfs-actions.pod:7229
28749 #, no-wrap
28750 msgid ""
28751 " int\n"
28752 " guestfs_upload (guestfs_h *g,\n"
28753 "                 const char *filename,\n"
28754 "                 const char *remotefilename);\n"
28755 "\n"
28756 msgstr ""
28757
28758 #. type: textblock
28759 #: ../src/guestfs-actions.pod:7239
28760 msgid "See also C<guestfs_download>."
28761 msgstr ""
28762
28763 #. type: =head2
28764 #: ../src/guestfs-actions.pod:7250
28765 msgid "guestfs_upload_offset"
28766 msgstr ""
28767
28768 #. type: verbatim
28769 #: ../src/guestfs-actions.pod:7252
28770 #, no-wrap
28771 msgid ""
28772 " int\n"
28773 " guestfs_upload_offset (guestfs_h *g,\n"
28774 "                        const char *filename,\n"
28775 "                        const char *remotefilename,\n"
28776 "                        int64_t offset);\n"
28777 "\n"
28778 msgstr ""
28779
28780 #. type: textblock
28781 #: ../src/guestfs-actions.pod:7268
28782 msgid ""
28783 "Note that there is no limit on the amount of data that can be uploaded with "
28784 "this call, unlike with C<guestfs_pwrite>, and this call always writes the "
28785 "full amount unless an error occurs."
28786 msgstr ""
28787
28788 #. type: textblock
28789 #: ../src/guestfs-actions.pod:7273
28790 msgid "See also C<guestfs_upload>, C<guestfs_pwrite>."
28791 msgstr ""
28792
28793 #. type: =head2
28794 #: ../src/guestfs-actions.pod:7284
28795 msgid "guestfs_utimens"
28796 msgstr ""
28797
28798 #. type: verbatim
28799 #: ../src/guestfs-actions.pod:7286
28800 #, no-wrap
28801 msgid ""
28802 " int\n"
28803 " guestfs_utimens (guestfs_h *g,\n"
28804 "                  const char *path,\n"
28805 "                  int64_t atsecs,\n"
28806 "                  int64_t atnsecs,\n"
28807 "                  int64_t mtsecs,\n"
28808 "                  int64_t mtnsecs);\n"
28809 "\n"
28810 msgstr ""
28811
28812 #. type: =head2
28813 #: ../src/guestfs-actions.pod:7315 ../src/guestfs-structs.pod:175
28814 msgid "guestfs_version"
28815 msgstr ""
28816
28817 #. type: verbatim
28818 #: ../src/guestfs-actions.pod:7317
28819 #, no-wrap
28820 msgid ""
28821 " struct guestfs_version *\n"
28822 " guestfs_version (guestfs_h *g);\n"
28823 "\n"
28824 msgstr ""
28825
28826 #. type: textblock
28827 #: ../src/guestfs-actions.pod:7345
28828 msgid ""
28829 "I<Note:> Don't use this call to test for availability of features.  In "
28830 "enterprise distributions we backport features from later versions into "
28831 "earlier versions, making this an unreliable way to test for features.  Use "
28832 "C<guestfs_available> instead."
28833 msgstr ""
28834
28835 #. type: textblock
28836 #: ../src/guestfs-actions.pod:7351
28837 msgid ""
28838 "This function returns a C<struct guestfs_version *>, or NULL if there was an "
28839 "error.  I<The caller must call C<guestfs_free_version> after use>."
28840 msgstr ""
28841
28842 #. type: textblock
28843 #: ../src/guestfs-actions.pod:7355
28844 msgid "(Added in 1.0.58)"
28845 msgstr ""
28846
28847 #. type: =head2
28848 #: ../src/guestfs-actions.pod:7357
28849 msgid "guestfs_vfs_label"
28850 msgstr ""
28851
28852 #. type: verbatim
28853 #: ../src/guestfs-actions.pod:7359
28854 #, no-wrap
28855 msgid ""
28856 " char *\n"
28857 " guestfs_vfs_label (guestfs_h *g,\n"
28858 "                    const char *device);\n"
28859 "\n"
28860 msgstr ""
28861
28862 #. type: textblock
28863 #: ../src/guestfs-actions.pod:7368
28864 msgid "To find a filesystem from the label, use C<guestfs_findfs_label>."
28865 msgstr ""
28866
28867 #. type: textblock
28868 #: ../src/guestfs-actions.pod:7373 ../src/guestfs-actions.pod:7410
28869 msgid "(Added in 1.3.18)"
28870 msgstr ""
28871
28872 #. type: =head2
28873 #: ../src/guestfs-actions.pod:7375
28874 msgid "guestfs_vfs_type"
28875 msgstr ""
28876
28877 #. type: verbatim
28878 #: ../src/guestfs-actions.pod:7377
28879 #, no-wrap
28880 msgid ""
28881 " char *\n"
28882 " guestfs_vfs_type (guestfs_h *g,\n"
28883 "                   const char *device);\n"
28884 "\n"
28885 msgstr ""
28886
28887 #. type: =head2
28888 #: ../src/guestfs-actions.pod:7394
28889 msgid "guestfs_vfs_uuid"
28890 msgstr ""
28891
28892 #. type: verbatim
28893 #: ../src/guestfs-actions.pod:7396
28894 #, no-wrap
28895 msgid ""
28896 " char *\n"
28897 " guestfs_vfs_uuid (guestfs_h *g,\n"
28898 "                   const char *device);\n"
28899 "\n"
28900 msgstr ""
28901
28902 #. type: textblock
28903 #: ../src/guestfs-actions.pod:7405
28904 msgid "To find a filesystem from the UUID, use C<guestfs_findfs_uuid>."
28905 msgstr ""
28906
28907 #. type: =head2
28908 #: ../src/guestfs-actions.pod:7412
28909 msgid "guestfs_vg_activate"
28910 msgstr ""
28911
28912 #. type: verbatim
28913 #: ../src/guestfs-actions.pod:7414
28914 #, no-wrap
28915 msgid ""
28916 " int\n"
28917 " guestfs_vg_activate (guestfs_h *g,\n"
28918 "                      int activate,\n"
28919 "                      char *const *volgroups);\n"
28920 "\n"
28921 msgstr ""
28922
28923 #. type: =head2
28924 #: ../src/guestfs-actions.pod:7431
28925 msgid "guestfs_vg_activate_all"
28926 msgstr ""
28927
28928 #. type: verbatim
28929 #: ../src/guestfs-actions.pod:7433
28930 #, no-wrap
28931 msgid ""
28932 " int\n"
28933 " guestfs_vg_activate_all (guestfs_h *g,\n"
28934 "                          int activate);\n"
28935 "\n"
28936 msgstr ""
28937
28938 #. type: =head2
28939 #: ../src/guestfs-actions.pod:7446
28940 msgid "guestfs_vgcreate"
28941 msgstr ""
28942
28943 #. type: verbatim
28944 #: ../src/guestfs-actions.pod:7448
28945 #, no-wrap
28946 msgid ""
28947 " int\n"
28948 " guestfs_vgcreate (guestfs_h *g,\n"
28949 "                   const char *volgroup,\n"
28950 "                   char *const *physvols);\n"
28951 "\n"
28952 msgstr ""
28953
28954 #. type: =head2
28955 #: ../src/guestfs-actions.pod:7460
28956 msgid "guestfs_vglvuuids"
28957 msgstr ""
28958
28959 #. type: verbatim
28960 #: ../src/guestfs-actions.pod:7462
28961 #, no-wrap
28962 msgid ""
28963 " char **\n"
28964 " guestfs_vglvuuids (guestfs_h *g,\n"
28965 "                    const char *vgname);\n"
28966 "\n"
28967 msgstr ""
28968
28969 #. type: textblock
28970 #: ../src/guestfs-actions.pod:7469
28971 msgid ""
28972 "You can use this along with C<guestfs_lvs> and C<guestfs_lvuuid> calls to "
28973 "associate logical volumes and volume groups."
28974 msgstr ""
28975
28976 #. type: textblock
28977 #: ../src/guestfs-actions.pod:7472
28978 msgid "See also C<guestfs_vgpvuuids>."
28979 msgstr ""
28980
28981 #. type: =head2
28982 #: ../src/guestfs-actions.pod:7480
28983 msgid "guestfs_vgpvuuids"
28984 msgstr ""
28985
28986 #. type: verbatim
28987 #: ../src/guestfs-actions.pod:7482
28988 #, no-wrap
28989 msgid ""
28990 " char **\n"
28991 " guestfs_vgpvuuids (guestfs_h *g,\n"
28992 "                    const char *vgname);\n"
28993 "\n"
28994 msgstr ""
28995
28996 #. type: textblock
28997 #: ../src/guestfs-actions.pod:7489
28998 msgid ""
28999 "You can use this along with C<guestfs_pvs> and C<guestfs_pvuuid> calls to "
29000 "associate physical volumes and volume groups."
29001 msgstr ""
29002
29003 #. type: textblock
29004 #: ../src/guestfs-actions.pod:7492
29005 msgid "See also C<guestfs_vglvuuids>."
29006 msgstr ""
29007
29008 #. type: =head2
29009 #: ../src/guestfs-actions.pod:7500
29010 msgid "guestfs_vgremove"
29011 msgstr ""
29012
29013 #. type: verbatim
29014 #: ../src/guestfs-actions.pod:7502
29015 #, no-wrap
29016 msgid ""
29017 " int\n"
29018 " guestfs_vgremove (guestfs_h *g,\n"
29019 "                   const char *vgname);\n"
29020 "\n"
29021 msgstr ""
29022
29023 #. type: =head2
29024 #: ../src/guestfs-actions.pod:7515
29025 msgid "guestfs_vgrename"
29026 msgstr ""
29027
29028 #. type: verbatim
29029 #: ../src/guestfs-actions.pod:7517
29030 #, no-wrap
29031 msgid ""
29032 " int\n"
29033 " guestfs_vgrename (guestfs_h *g,\n"
29034 "                   const char *volgroup,\n"
29035 "                   const char *newvolgroup);\n"
29036 "\n"
29037 msgstr ""
29038
29039 #. type: =head2
29040 #: ../src/guestfs-actions.pod:7528
29041 msgid "guestfs_vgs"
29042 msgstr ""
29043
29044 #. type: verbatim
29045 #: ../src/guestfs-actions.pod:7530
29046 #, no-wrap
29047 msgid ""
29048 " char **\n"
29049 " guestfs_vgs (guestfs_h *g);\n"
29050 "\n"
29051 msgstr ""
29052
29053 #. type: textblock
29054 #: ../src/guestfs-actions.pod:7539
29055 msgid "See also C<guestfs_vgs_full>."
29056 msgstr ""
29057
29058 #. type: =head2
29059 #: ../src/guestfs-actions.pod:7547
29060 msgid "guestfs_vgs_full"
29061 msgstr ""
29062
29063 #. type: verbatim
29064 #: ../src/guestfs-actions.pod:7549
29065 #, no-wrap
29066 msgid ""
29067 " struct guestfs_lvm_vg_list *\n"
29068 " guestfs_vgs_full (guestfs_h *g);\n"
29069 "\n"
29070 msgstr ""
29071
29072 #. type: textblock
29073 #: ../src/guestfs-actions.pod:7555
29074 msgid ""
29075 "This function returns a C<struct guestfs_lvm_vg_list *>, or NULL if there "
29076 "was an error.  I<The caller must call C<guestfs_free_lvm_vg_list> after "
29077 "use>."
29078 msgstr ""
29079
29080 #. type: =head2
29081 #: ../src/guestfs-actions.pod:7561
29082 msgid "guestfs_vgscan"
29083 msgstr ""
29084
29085 #. type: verbatim
29086 #: ../src/guestfs-actions.pod:7563
29087 #, no-wrap
29088 msgid ""
29089 " int\n"
29090 " guestfs_vgscan (guestfs_h *g);\n"
29091 "\n"
29092 msgstr ""
29093
29094 #. type: =head2
29095 #: ../src/guestfs-actions.pod:7573
29096 msgid "guestfs_vguuid"
29097 msgstr ""
29098
29099 #. type: verbatim
29100 #: ../src/guestfs-actions.pod:7575
29101 #, no-wrap
29102 msgid ""
29103 " char *\n"
29104 " guestfs_vguuid (guestfs_h *g,\n"
29105 "                 const char *vgname);\n"
29106 "\n"
29107 msgstr ""
29108
29109 #. type: =head2
29110 #: ../src/guestfs-actions.pod:7586
29111 msgid "guestfs_wait_ready"
29112 msgstr ""
29113
29114 #. type: verbatim
29115 #: ../src/guestfs-actions.pod:7588
29116 #, no-wrap
29117 msgid ""
29118 " int\n"
29119 " guestfs_wait_ready (guestfs_h *g);\n"
29120 "\n"
29121 msgstr ""
29122
29123 #. type: textblock
29124 #: ../src/guestfs-actions.pod:7591
29125 msgid ""
29126 "I<This function is deprecated.> In new code, use the L</guestfs_launch> call "
29127 "instead."
29128 msgstr ""
29129
29130 #. type: textblock
29131 #: ../src/guestfs-actions.pod:7598
29132 msgid "This function is a no op."
29133 msgstr ""
29134
29135 #. type: textblock
29136 #: ../src/guestfs-actions.pod:7600
29137 msgid ""
29138 "In versions of the API E<lt> 1.0.71 you had to call this function just after "
29139 "calling C<guestfs_launch> to wait for the launch to complete.  However this "
29140 "is no longer necessary because C<guestfs_launch> now does the waiting."
29141 msgstr ""
29142
29143 #. type: textblock
29144 #: ../src/guestfs-actions.pod:7605
29145 msgid ""
29146 "If you see any calls to this function in code then you can just remove them, "
29147 "unless you want to retain compatibility with older versions of the API."
29148 msgstr ""
29149
29150 #. type: =head2
29151 #: ../src/guestfs-actions.pod:7613
29152 msgid "guestfs_wc_c"
29153 msgstr ""
29154
29155 #. type: verbatim
29156 #: ../src/guestfs-actions.pod:7615
29157 #, no-wrap
29158 msgid ""
29159 " int\n"
29160 " guestfs_wc_c (guestfs_h *g,\n"
29161 "               const char *path);\n"
29162 "\n"
29163 msgstr ""
29164
29165 #. type: =head2
29166 #: ../src/guestfs-actions.pod:7626
29167 msgid "guestfs_wc_l"
29168 msgstr ""
29169
29170 #. type: verbatim
29171 #: ../src/guestfs-actions.pod:7628
29172 #, no-wrap
29173 msgid ""
29174 " int\n"
29175 " guestfs_wc_l (guestfs_h *g,\n"
29176 "               const char *path);\n"
29177 "\n"
29178 msgstr ""
29179
29180 #. type: =head2
29181 #: ../src/guestfs-actions.pod:7639
29182 msgid "guestfs_wc_w"
29183 msgstr ""
29184
29185 #. type: verbatim
29186 #: ../src/guestfs-actions.pod:7641
29187 #, no-wrap
29188 msgid ""
29189 " int\n"
29190 " guestfs_wc_w (guestfs_h *g,\n"
29191 "               const char *path);\n"
29192 "\n"
29193 msgstr ""
29194
29195 #. type: =head2
29196 #: ../src/guestfs-actions.pod:7652
29197 msgid "guestfs_write"
29198 msgstr ""
29199
29200 #. type: verbatim
29201 #: ../src/guestfs-actions.pod:7654
29202 #, no-wrap
29203 msgid ""
29204 " int\n"
29205 " guestfs_write (guestfs_h *g,\n"
29206 "                const char *path,\n"
29207 "                const char *content,\n"
29208 "                size_t content_size);\n"
29209 "\n"
29210 msgstr ""
29211
29212 #. type: textblock
29213 #: ../src/guestfs-actions.pod:7663
29214 msgid "See also C<guestfs_write_append>."
29215 msgstr ""
29216
29217 #. type: =head2
29218 #: ../src/guestfs-actions.pod:7672
29219 msgid "guestfs_write_append"
29220 msgstr ""
29221
29222 #. type: verbatim
29223 #: ../src/guestfs-actions.pod:7674
29224 #, no-wrap
29225 msgid ""
29226 " int\n"
29227 " guestfs_write_append (guestfs_h *g,\n"
29228 "                       const char *path,\n"
29229 "                       const char *content,\n"
29230 "                       size_t content_size);\n"
29231 "\n"
29232 msgstr ""
29233
29234 #. type: textblock
29235 #: ../src/guestfs-actions.pod:7683
29236 msgid "See also C<guestfs_write>."
29237 msgstr ""
29238
29239 #. type: =head2
29240 #: ../src/guestfs-actions.pod:7692
29241 msgid "guestfs_write_file"
29242 msgstr ""
29243
29244 #. type: verbatim
29245 #: ../src/guestfs-actions.pod:7694
29246 #, no-wrap
29247 msgid ""
29248 " int\n"
29249 " guestfs_write_file (guestfs_h *g,\n"
29250 "                     const char *path,\n"
29251 "                     const char *content,\n"
29252 "                     int size);\n"
29253 "\n"
29254 msgstr ""
29255
29256 #. type: textblock
29257 #: ../src/guestfs-actions.pod:7700
29258 msgid ""
29259 "I<This function is deprecated.> In new code, use the L</guestfs_write> call "
29260 "instead."
29261 msgstr ""
29262
29263 #. type: =head2
29264 #: ../src/guestfs-actions.pod:7725
29265 msgid "guestfs_zegrep"
29266 msgstr ""
29267
29268 #. type: verbatim
29269 #: ../src/guestfs-actions.pod:7727
29270 #, no-wrap
29271 msgid ""
29272 " char **\n"
29273 " guestfs_zegrep (guestfs_h *g,\n"
29274 "                 const char *regex,\n"
29275 "                 const char *path);\n"
29276 "\n"
29277 msgstr ""
29278
29279 #. type: =head2
29280 #: ../src/guestfs-actions.pod:7744
29281 msgid "guestfs_zegrepi"
29282 msgstr ""
29283
29284 #. type: verbatim
29285 #: ../src/guestfs-actions.pod:7746
29286 #, no-wrap
29287 msgid ""
29288 " char **\n"
29289 " guestfs_zegrepi (guestfs_h *g,\n"
29290 "                  const char *regex,\n"
29291 "                  const char *path);\n"
29292 "\n"
29293 msgstr ""
29294
29295 #. type: =head2
29296 #: ../src/guestfs-actions.pod:7763
29297 msgid "guestfs_zero"
29298 msgstr ""
29299
29300 #. type: verbatim
29301 #: ../src/guestfs-actions.pod:7765
29302 #, no-wrap
29303 msgid ""
29304 " int\n"
29305 " guestfs_zero (guestfs_h *g,\n"
29306 "               const char *device);\n"
29307 "\n"
29308 msgstr ""
29309
29310 #. type: textblock
29311 #: ../src/guestfs-actions.pod:7779
29312 msgid ""
29313 "See also: C<guestfs_zero_device>, C<guestfs_scrub_device>, "
29314 "C<guestfs_is_zero_device>"
29315 msgstr ""
29316
29317 #. type: =head2
29318 #: ../src/guestfs-actions.pod:7791
29319 msgid "guestfs_zero_device"
29320 msgstr ""
29321
29322 #. type: verbatim
29323 #: ../src/guestfs-actions.pod:7793
29324 #, no-wrap
29325 msgid ""
29326 " int\n"
29327 " guestfs_zero_device (guestfs_h *g,\n"
29328 "                      const char *device);\n"
29329 "\n"
29330 msgstr ""
29331
29332 #. type: textblock
29333 #: ../src/guestfs-actions.pod:7797
29334 msgid ""
29335 "This command writes zeroes over the entire C<device>.  Compare with "
29336 "C<guestfs_zero> which just zeroes the first few blocks of a device."
29337 msgstr ""
29338
29339 #. type: textblock
29340 #: ../src/guestfs-actions.pod:7815
29341 msgid "(Added in 1.3.1)"
29342 msgstr ""
29343
29344 #. type: =head2
29345 #: ../src/guestfs-actions.pod:7817
29346 msgid "guestfs_zerofree"
29347 msgstr ""
29348
29349 #. type: verbatim
29350 #: ../src/guestfs-actions.pod:7819
29351 #, no-wrap
29352 msgid ""
29353 " int\n"
29354 " guestfs_zerofree (guestfs_h *g,\n"
29355 "                   const char *device);\n"
29356 "\n"
29357 msgstr ""
29358
29359 #. type: =head2
29360 #: ../src/guestfs-actions.pod:7838
29361 msgid "guestfs_zfgrep"
29362 msgstr ""
29363
29364 #. type: verbatim
29365 #: ../src/guestfs-actions.pod:7840
29366 #, no-wrap
29367 msgid ""
29368 " char **\n"
29369 " guestfs_zfgrep (guestfs_h *g,\n"
29370 "                 const char *pattern,\n"
29371 "                 const char *path);\n"
29372 "\n"
29373 msgstr ""
29374
29375 #. type: =head2
29376 #: ../src/guestfs-actions.pod:7857
29377 msgid "guestfs_zfgrepi"
29378 msgstr ""
29379
29380 #. type: verbatim
29381 #: ../src/guestfs-actions.pod:7859
29382 #, no-wrap
29383 msgid ""
29384 " char **\n"
29385 " guestfs_zfgrepi (guestfs_h *g,\n"
29386 "                  const char *pattern,\n"
29387 "                  const char *path);\n"
29388 "\n"
29389 msgstr ""
29390
29391 #. type: =head2
29392 #: ../src/guestfs-actions.pod:7876
29393 msgid "guestfs_zfile"
29394 msgstr ""
29395
29396 #. type: verbatim
29397 #: ../src/guestfs-actions.pod:7878
29398 #, no-wrap
29399 msgid ""
29400 " char *\n"
29401 " guestfs_zfile (guestfs_h *g,\n"
29402 "                const char *meth,\n"
29403 "                const char *path);\n"
29404 "\n"
29405 msgstr ""
29406
29407 #. type: textblock
29408 #: ../src/guestfs-actions.pod:7883
29409 msgid ""
29410 "I<This function is deprecated.> In new code, use the L</guestfs_file> call "
29411 "instead."
29412 msgstr ""
29413
29414 #. type: textblock
29415 #: ../src/guestfs-actions.pod:7895
29416 msgid ""
29417 "Since 1.0.63, use C<guestfs_file> instead which can now process compressed "
29418 "files."
29419 msgstr ""
29420
29421 #. type: =head2
29422 #: ../src/guestfs-actions.pod:7903
29423 msgid "guestfs_zgrep"
29424 msgstr ""
29425
29426 #. type: verbatim
29427 #: ../src/guestfs-actions.pod:7905
29428 #, no-wrap
29429 msgid ""
29430 " char **\n"
29431 " guestfs_zgrep (guestfs_h *g,\n"
29432 "                const char *regex,\n"
29433 "                const char *path);\n"
29434 "\n"
29435 msgstr ""
29436
29437 #. type: =head2
29438 #: ../src/guestfs-actions.pod:7922
29439 msgid "guestfs_zgrepi"
29440 msgstr ""
29441
29442 #. type: verbatim
29443 #: ../src/guestfs-actions.pod:7924
29444 #, no-wrap
29445 msgid ""
29446 " char **\n"
29447 " guestfs_zgrepi (guestfs_h *g,\n"
29448 "                 const char *regex,\n"
29449 "                 const char *path);\n"
29450 "\n"
29451 msgstr ""
29452
29453 #. type: =item
29454 #: ../src/guestfs-availability.pod:3
29455 msgid "B<augeas>"
29456 msgstr ""
29457
29458 #. type: textblock
29459 #: ../src/guestfs-availability.pod:5
29460 msgid ""
29461 "The following functions: L</guestfs_aug_clear> L</guestfs_aug_close> "
29462 "L</guestfs_aug_defnode> L</guestfs_aug_defvar> L</guestfs_aug_get> "
29463 "L</guestfs_aug_init> L</guestfs_aug_insert> L</guestfs_aug_load> "
29464 "L</guestfs_aug_ls> L</guestfs_aug_match> L</guestfs_aug_mv> "
29465 "L</guestfs_aug_rm> L</guestfs_aug_save> L</guestfs_aug_set>"
29466 msgstr ""
29467
29468 #. type: =item
29469 #: ../src/guestfs-availability.pod:21
29470 msgid "B<btrfs>"
29471 msgstr ""
29472
29473 #. type: textblock
29474 #: ../src/guestfs-availability.pod:23
29475 msgid "The following functions: L</guestfs_btrfs_filesystem_resize>"
29476 msgstr ""
29477
29478 #. type: =item
29479 #: ../src/guestfs-availability.pod:26
29480 msgid "B<inotify>"
29481 msgstr ""
29482
29483 #. type: textblock
29484 #: ../src/guestfs-availability.pod:28
29485 msgid ""
29486 "The following functions: L</guestfs_inotify_add_watch> "
29487 "L</guestfs_inotify_close> L</guestfs_inotify_files> L</guestfs_inotify_init> "
29488 "L</guestfs_inotify_read> L</guestfs_inotify_rm_watch>"
29489 msgstr ""
29490
29491 #. type: =item
29492 #: ../src/guestfs-availability.pod:36
29493 msgid "B<linuxfsuuid>"
29494 msgstr ""
29495
29496 #. type: textblock
29497 #: ../src/guestfs-availability.pod:38
29498 msgid ""
29499 "The following functions: L</guestfs_mke2fs_JU> L</guestfs_mke2journal_U> "
29500 "L</guestfs_mkswap_U> L</guestfs_swapoff_uuid> L</guestfs_swapon_uuid>"
29501 msgstr ""
29502
29503 #. type: =item
29504 #: ../src/guestfs-availability.pod:45
29505 msgid "B<linuxmodules>"
29506 msgstr ""
29507
29508 #. type: textblock
29509 #: ../src/guestfs-availability.pod:47
29510 msgid "The following functions: L</guestfs_modprobe>"
29511 msgstr ""
29512
29513 #. type: =item
29514 #: ../src/guestfs-availability.pod:50
29515 msgid "B<linuxxattrs>"
29516 msgstr ""
29517
29518 #. type: textblock
29519 #: ../src/guestfs-availability.pod:52
29520 msgid ""
29521 "The following functions: L</guestfs_getxattr> L</guestfs_getxattrs> "
29522 "L</guestfs_lgetxattr> L</guestfs_lgetxattrs> L</guestfs_lremovexattr> "
29523 "L</guestfs_lsetxattr> L</guestfs_lxattrlist> L</guestfs_removexattr> "
29524 "L</guestfs_setxattr>"
29525 msgstr ""
29526
29527 #. type: =item
29528 #: ../src/guestfs-availability.pod:63
29529 msgid "B<luks>"
29530 msgstr ""
29531
29532 #. type: textblock
29533 #: ../src/guestfs-availability.pod:65
29534 msgid ""
29535 "The following functions: L</guestfs_luks_add_key> L</guestfs_luks_close> "
29536 "L</guestfs_luks_format> L</guestfs_luks_format_cipher> "
29537 "L</guestfs_luks_kill_slot> L</guestfs_luks_open> L</guestfs_luks_open_ro>"
29538 msgstr ""
29539
29540 #. type: =item
29541 #: ../src/guestfs-availability.pod:74
29542 msgid "B<lvm2>"
29543 msgstr ""
29544
29545 #. type: textblock
29546 #: ../src/guestfs-availability.pod:76
29547 msgid ""
29548 "The following functions: L</guestfs_is_lv> L</guestfs_lvcreate> "
29549 "L</guestfs_lvm_remove_all> L</guestfs_lvm_set_filter> L</guestfs_lvremove> "
29550 "L</guestfs_lvresize> L</guestfs_lvresize_free> L</guestfs_lvs> "
29551 "L</guestfs_lvs_full> L</guestfs_pvcreate> L</guestfs_pvremove> "
29552 "L</guestfs_pvresize> L</guestfs_pvresize_size> L</guestfs_pvs> "
29553 "L</guestfs_pvs_full> L</guestfs_vg_activate> L</guestfs_vg_activate_all> "
29554 "L</guestfs_vgcreate> L</guestfs_vgremove> L</guestfs_vgs> "
29555 "L</guestfs_vgs_full>"
29556 msgstr ""
29557
29558 #. type: =item
29559 #: ../src/guestfs-availability.pod:99
29560 msgid "B<mknod>"
29561 msgstr ""
29562
29563 #. type: textblock
29564 #: ../src/guestfs-availability.pod:101
29565 msgid ""
29566 "The following functions: L</guestfs_mkfifo> L</guestfs_mknod> "
29567 "L</guestfs_mknod_b> L</guestfs_mknod_c>"
29568 msgstr ""
29569
29570 #. type: =item
29571 #: ../src/guestfs-availability.pod:107
29572 msgid "B<ntfs3g>"
29573 msgstr ""
29574
29575 #. type: textblock
29576 #: ../src/guestfs-availability.pod:109
29577 msgid "The following functions: L</guestfs_ntfs_3g_probe>"
29578 msgstr ""
29579
29580 #. type: =item
29581 #: ../src/guestfs-availability.pod:112
29582 msgid "B<ntfsprogs>"
29583 msgstr ""
29584
29585 #. type: textblock
29586 #: ../src/guestfs-availability.pod:114
29587 msgid ""
29588 "The following functions: L</guestfs_ntfsresize> L</guestfs_ntfsresize_opts> "
29589 "L</guestfs_ntfsresize_size>"
29590 msgstr ""
29591
29592 #. type: =item
29593 #: ../src/guestfs-availability.pod:119
29594 msgid "B<realpath>"
29595 msgstr ""
29596
29597 #. type: textblock
29598 #: ../src/guestfs-availability.pod:121
29599 msgid "The following functions: L</guestfs_realpath>"
29600 msgstr ""
29601
29602 #. type: =item
29603 #: ../src/guestfs-availability.pod:124
29604 msgid "B<scrub>"
29605 msgstr ""
29606
29607 #. type: textblock
29608 #: ../src/guestfs-availability.pod:126
29609 msgid ""
29610 "The following functions: L</guestfs_scrub_device> L</guestfs_scrub_file> "
29611 "L</guestfs_scrub_freespace>"
29612 msgstr ""
29613
29614 #. type: =item
29615 #: ../src/guestfs-availability.pod:131
29616 msgid "B<selinux>"
29617 msgstr ""
29618
29619 #. type: textblock
29620 #: ../src/guestfs-availability.pod:133
29621 msgid "The following functions: L</guestfs_getcon> L</guestfs_setcon>"
29622 msgstr ""
29623
29624 #. type: =item
29625 #: ../src/guestfs-availability.pod:137
29626 msgid "B<xz>"
29627 msgstr ""
29628
29629 #. type: textblock
29630 #: ../src/guestfs-availability.pod:139
29631 msgid "The following functions: L</guestfs_txz_in> L</guestfs_txz_out>"
29632 msgstr ""
29633
29634 #. type: =item
29635 #: ../src/guestfs-availability.pod:143
29636 msgid "B<zerofree>"
29637 msgstr ""
29638
29639 #. type: textblock
29640 #: ../src/guestfs-availability.pod:145
29641 msgid "The following functions: L</guestfs_zerofree>"
29642 msgstr ""
29643
29644 #. type: =head2
29645 #: ../src/guestfs-structs.pod:1
29646 msgid "guestfs_int_bool"
29647 msgstr ""
29648
29649 #. type: verbatim
29650 #: ../src/guestfs-structs.pod:3
29651 #, no-wrap
29652 msgid ""
29653 " struct guestfs_int_bool {\n"
29654 "   int32_t i;\n"
29655 "   int32_t b;\n"
29656 " };\n"
29657 " \n"
29658 msgstr ""
29659
29660 #. type: verbatim
29661 #: ../src/guestfs-structs.pod:8
29662 #, no-wrap
29663 msgid ""
29664 " struct guestfs_int_bool_list {\n"
29665 "   uint32_t len; /* Number of elements in list. */\n"
29666 "   struct guestfs_int_bool *val; /* Elements. */\n"
29667 " };\n"
29668 " \n"
29669 msgstr ""
29670
29671 #. type: verbatim
29672 #: ../src/guestfs-structs.pod:13
29673 #, no-wrap
29674 msgid ""
29675 " void guestfs_free_int_bool (struct guestfs_free_int_bool *);\n"
29676 " void guestfs_free_int_bool_list (struct guestfs_free_int_bool_list *);\n"
29677 "\n"
29678 msgstr ""
29679
29680 #. type: =head2
29681 #: ../src/guestfs-structs.pod:16
29682 msgid "guestfs_lvm_pv"
29683 msgstr ""
29684
29685 #. type: verbatim
29686 #: ../src/guestfs-structs.pod:18
29687 #, no-wrap
29688 msgid ""
29689 " struct guestfs_lvm_pv {\n"
29690 "   char *pv_name;\n"
29691 "   /* The next field is NOT nul-terminated, be careful when printing it: "
29692 "*/\n"
29693 "   char pv_uuid[32];\n"
29694 "   char *pv_fmt;\n"
29695 "   uint64_t pv_size;\n"
29696 "   uint64_t dev_size;\n"
29697 "   uint64_t pv_free;\n"
29698 "   uint64_t pv_used;\n"
29699 "   char *pv_attr;\n"
29700 "   int64_t pv_pe_count;\n"
29701 "   int64_t pv_pe_alloc_count;\n"
29702 "   char *pv_tags;\n"
29703 "   uint64_t pe_start;\n"
29704 "   int64_t pv_mda_count;\n"
29705 "   uint64_t pv_mda_free;\n"
29706 " };\n"
29707 " \n"
29708 msgstr ""
29709
29710 #. type: verbatim
29711 #: ../src/guestfs-structs.pod:36
29712 #, no-wrap
29713 msgid ""
29714 " struct guestfs_lvm_pv_list {\n"
29715 "   uint32_t len; /* Number of elements in list. */\n"
29716 "   struct guestfs_lvm_pv *val; /* Elements. */\n"
29717 " };\n"
29718 " \n"
29719 msgstr ""
29720
29721 #. type: verbatim
29722 #: ../src/guestfs-structs.pod:41
29723 #, no-wrap
29724 msgid ""
29725 " void guestfs_free_lvm_pv (struct guestfs_free_lvm_pv *);\n"
29726 " void guestfs_free_lvm_pv_list (struct guestfs_free_lvm_pv_list *);\n"
29727 "\n"
29728 msgstr ""
29729
29730 #. type: =head2
29731 #: ../src/guestfs-structs.pod:44
29732 msgid "guestfs_lvm_vg"
29733 msgstr ""
29734
29735 #. type: verbatim
29736 #: ../src/guestfs-structs.pod:46
29737 #, no-wrap
29738 msgid ""
29739 " struct guestfs_lvm_vg {\n"
29740 "   char *vg_name;\n"
29741 "   /* The next field is NOT nul-terminated, be careful when printing it: "
29742 "*/\n"
29743 "   char vg_uuid[32];\n"
29744 "   char *vg_fmt;\n"
29745 "   char *vg_attr;\n"
29746 "   uint64_t vg_size;\n"
29747 "   uint64_t vg_free;\n"
29748 "   char *vg_sysid;\n"
29749 "   uint64_t vg_extent_size;\n"
29750 "   int64_t vg_extent_count;\n"
29751 "   int64_t vg_free_count;\n"
29752 "   int64_t max_lv;\n"
29753 "   int64_t max_pv;\n"
29754 "   int64_t pv_count;\n"
29755 "   int64_t lv_count;\n"
29756 "   int64_t snap_count;\n"
29757 "   int64_t vg_seqno;\n"
29758 "   char *vg_tags;\n"
29759 "   int64_t vg_mda_count;\n"
29760 "   uint64_t vg_mda_free;\n"
29761 " };\n"
29762 " \n"
29763 msgstr ""
29764
29765 #. type: verbatim
29766 #: ../src/guestfs-structs.pod:69
29767 #, no-wrap
29768 msgid ""
29769 " struct guestfs_lvm_vg_list {\n"
29770 "   uint32_t len; /* Number of elements in list. */\n"
29771 "   struct guestfs_lvm_vg *val; /* Elements. */\n"
29772 " };\n"
29773 " \n"
29774 msgstr ""
29775
29776 #. type: verbatim
29777 #: ../src/guestfs-structs.pod:74
29778 #, no-wrap
29779 msgid ""
29780 " void guestfs_free_lvm_vg (struct guestfs_free_lvm_vg *);\n"
29781 " void guestfs_free_lvm_vg_list (struct guestfs_free_lvm_vg_list *);\n"
29782 "\n"
29783 msgstr ""
29784
29785 #. type: =head2
29786 #: ../src/guestfs-structs.pod:77
29787 msgid "guestfs_lvm_lv"
29788 msgstr ""
29789
29790 #. type: verbatim
29791 #: ../src/guestfs-structs.pod:79
29792 #, no-wrap
29793 msgid ""
29794 " struct guestfs_lvm_lv {\n"
29795 "   char *lv_name;\n"
29796 "   /* The next field is NOT nul-terminated, be careful when printing it: "
29797 "*/\n"
29798 "   char lv_uuid[32];\n"
29799 "   char *lv_attr;\n"
29800 "   int64_t lv_major;\n"
29801 "   int64_t lv_minor;\n"
29802 "   int64_t lv_kernel_major;\n"
29803 "   int64_t lv_kernel_minor;\n"
29804 "   uint64_t lv_size;\n"
29805 "   int64_t seg_count;\n"
29806 "   char *origin;\n"
29807 "   /* The next field is [0..100] or -1 meaning 'not present': */\n"
29808 "   float snap_percent;\n"
29809 "   /* The next field is [0..100] or -1 meaning 'not present': */\n"
29810 "   float copy_percent;\n"
29811 "   char *move_pv;\n"
29812 "   char *lv_tags;\n"
29813 "   char *mirror_log;\n"
29814 "   char *modules;\n"
29815 " };\n"
29816 " \n"
29817 msgstr ""
29818
29819 #. type: verbatim
29820 #: ../src/guestfs-structs.pod:101
29821 #, no-wrap
29822 msgid ""
29823 " struct guestfs_lvm_lv_list {\n"
29824 "   uint32_t len; /* Number of elements in list. */\n"
29825 "   struct guestfs_lvm_lv *val; /* Elements. */\n"
29826 " };\n"
29827 " \n"
29828 msgstr ""
29829
29830 #. type: verbatim
29831 #: ../src/guestfs-structs.pod:106
29832 #, no-wrap
29833 msgid ""
29834 " void guestfs_free_lvm_lv (struct guestfs_free_lvm_lv *);\n"
29835 " void guestfs_free_lvm_lv_list (struct guestfs_free_lvm_lv_list *);\n"
29836 "\n"
29837 msgstr ""
29838
29839 #. type: verbatim
29840 #: ../src/guestfs-structs.pod:111
29841 #, no-wrap
29842 msgid ""
29843 " struct guestfs_stat {\n"
29844 "   int64_t dev;\n"
29845 "   int64_t ino;\n"
29846 "   int64_t mode;\n"
29847 "   int64_t nlink;\n"
29848 "   int64_t uid;\n"
29849 "   int64_t gid;\n"
29850 "   int64_t rdev;\n"
29851 "   int64_t size;\n"
29852 "   int64_t blksize;\n"
29853 "   int64_t blocks;\n"
29854 "   int64_t atime;\n"
29855 "   int64_t mtime;\n"
29856 "   int64_t ctime;\n"
29857 " };\n"
29858 " \n"
29859 msgstr ""
29860
29861 #. type: verbatim
29862 #: ../src/guestfs-structs.pod:127
29863 #, no-wrap
29864 msgid ""
29865 " struct guestfs_stat_list {\n"
29866 "   uint32_t len; /* Number of elements in list. */\n"
29867 "   struct guestfs_stat *val; /* Elements. */\n"
29868 " };\n"
29869 " \n"
29870 msgstr ""
29871
29872 #. type: verbatim
29873 #: ../src/guestfs-structs.pod:132
29874 #, no-wrap
29875 msgid ""
29876 " void guestfs_free_stat (struct guestfs_free_stat *);\n"
29877 " void guestfs_free_stat_list (struct guestfs_free_stat_list *);\n"
29878 "\n"
29879 msgstr ""
29880
29881 #. type: verbatim
29882 #: ../src/guestfs-structs.pod:137
29883 #, no-wrap
29884 msgid ""
29885 " struct guestfs_statvfs {\n"
29886 "   int64_t bsize;\n"
29887 "   int64_t frsize;\n"
29888 "   int64_t blocks;\n"
29889 "   int64_t bfree;\n"
29890 "   int64_t bavail;\n"
29891 "   int64_t files;\n"
29892 "   int64_t ffree;\n"
29893 "   int64_t favail;\n"
29894 "   int64_t fsid;\n"
29895 "   int64_t flag;\n"
29896 "   int64_t namemax;\n"
29897 " };\n"
29898 " \n"
29899 msgstr ""
29900
29901 #. type: verbatim
29902 #: ../src/guestfs-structs.pod:151
29903 #, no-wrap
29904 msgid ""
29905 " struct guestfs_statvfs_list {\n"
29906 "   uint32_t len; /* Number of elements in list. */\n"
29907 "   struct guestfs_statvfs *val; /* Elements. */\n"
29908 " };\n"
29909 " \n"
29910 msgstr ""
29911
29912 #. type: verbatim
29913 #: ../src/guestfs-structs.pod:156
29914 #, no-wrap
29915 msgid ""
29916 " void guestfs_free_statvfs (struct guestfs_free_statvfs *);\n"
29917 " void guestfs_free_statvfs_list (struct guestfs_free_statvfs_list *);\n"
29918 "\n"
29919 msgstr ""
29920
29921 #. type: =head2
29922 #: ../src/guestfs-structs.pod:159
29923 msgid "guestfs_dirent"
29924 msgstr ""
29925
29926 #. type: verbatim
29927 #: ../src/guestfs-structs.pod:161
29928 #, no-wrap
29929 msgid ""
29930 " struct guestfs_dirent {\n"
29931 "   int64_t ino;\n"
29932 "   char ftyp;\n"
29933 "   char *name;\n"
29934 " };\n"
29935 " \n"
29936 msgstr ""
29937
29938 #. type: verbatim
29939 #: ../src/guestfs-structs.pod:167
29940 #, no-wrap
29941 msgid ""
29942 " struct guestfs_dirent_list {\n"
29943 "   uint32_t len; /* Number of elements in list. */\n"
29944 "   struct guestfs_dirent *val; /* Elements. */\n"
29945 " };\n"
29946 " \n"
29947 msgstr ""
29948
29949 #. type: verbatim
29950 #: ../src/guestfs-structs.pod:172
29951 #, no-wrap
29952 msgid ""
29953 " void guestfs_free_dirent (struct guestfs_free_dirent *);\n"
29954 " void guestfs_free_dirent_list (struct guestfs_free_dirent_list *);\n"
29955 "\n"
29956 msgstr ""
29957
29958 #. type: verbatim
29959 #: ../src/guestfs-structs.pod:177
29960 #, no-wrap
29961 msgid ""
29962 " struct guestfs_version {\n"
29963 "   int64_t major;\n"
29964 "   int64_t minor;\n"
29965 "   int64_t release;\n"
29966 "   char *extra;\n"
29967 " };\n"
29968 " \n"
29969 msgstr ""
29970
29971 #. type: verbatim
29972 #: ../src/guestfs-structs.pod:184
29973 #, no-wrap
29974 msgid ""
29975 " struct guestfs_version_list {\n"
29976 "   uint32_t len; /* Number of elements in list. */\n"
29977 "   struct guestfs_version *val; /* Elements. */\n"
29978 " };\n"
29979 " \n"
29980 msgstr ""
29981
29982 #. type: verbatim
29983 #: ../src/guestfs-structs.pod:189
29984 #, no-wrap
29985 msgid ""
29986 " void guestfs_free_version (struct guestfs_free_version *);\n"
29987 " void guestfs_free_version_list (struct guestfs_free_version_list *);\n"
29988 "\n"
29989 msgstr ""
29990
29991 #. type: =head2
29992 #: ../src/guestfs-structs.pod:192
29993 msgid "guestfs_xattr"
29994 msgstr ""
29995
29996 #. type: verbatim
29997 #: ../src/guestfs-structs.pod:194
29998 #, no-wrap
29999 msgid ""
30000 " struct guestfs_xattr {\n"
30001 "   char *attrname;\n"
30002 "   /* The next two fields describe a byte array. */\n"
30003 "   uint32_t attrval_len;\n"
30004 "   char *attrval;\n"
30005 " };\n"
30006 " \n"
30007 msgstr ""
30008
30009 #. type: verbatim
30010 #: ../src/guestfs-structs.pod:201
30011 #, no-wrap
30012 msgid ""
30013 " struct guestfs_xattr_list {\n"
30014 "   uint32_t len; /* Number of elements in list. */\n"
30015 "   struct guestfs_xattr *val; /* Elements. */\n"
30016 " };\n"
30017 " \n"
30018 msgstr ""
30019
30020 #. type: verbatim
30021 #: ../src/guestfs-structs.pod:206
30022 #, no-wrap
30023 msgid ""
30024 " void guestfs_free_xattr (struct guestfs_free_xattr *);\n"
30025 " void guestfs_free_xattr_list (struct guestfs_free_xattr_list *);\n"
30026 "\n"
30027 msgstr ""
30028
30029 #. type: =head2
30030 #: ../src/guestfs-structs.pod:209
30031 msgid "guestfs_inotify_event"
30032 msgstr ""
30033
30034 #. type: verbatim
30035 #: ../src/guestfs-structs.pod:211
30036 #, no-wrap
30037 msgid ""
30038 " struct guestfs_inotify_event {\n"
30039 "   int64_t in_wd;\n"
30040 "   uint32_t in_mask;\n"
30041 "   uint32_t in_cookie;\n"
30042 "   char *in_name;\n"
30043 " };\n"
30044 " \n"
30045 msgstr ""
30046
30047 #. type: verbatim
30048 #: ../src/guestfs-structs.pod:218
30049 #, no-wrap
30050 msgid ""
30051 " struct guestfs_inotify_event_list {\n"
30052 "   uint32_t len; /* Number of elements in list. */\n"
30053 "   struct guestfs_inotify_event *val; /* Elements. */\n"
30054 " };\n"
30055 " \n"
30056 msgstr ""
30057
30058 #. type: verbatim
30059 #: ../src/guestfs-structs.pod:223
30060 #, no-wrap
30061 msgid ""
30062 " void guestfs_free_inotify_event (struct guestfs_free_inotify_event *);\n"
30063 " void guestfs_free_inotify_event_list (struct "
30064 "guestfs_free_inotify_event_list *);\n"
30065 "\n"
30066 msgstr ""
30067
30068 #. type: =head2
30069 #: ../src/guestfs-structs.pod:226
30070 msgid "guestfs_partition"
30071 msgstr ""
30072
30073 #. type: verbatim
30074 #: ../src/guestfs-structs.pod:228
30075 #, no-wrap
30076 msgid ""
30077 " struct guestfs_partition {\n"
30078 "   int32_t part_num;\n"
30079 "   uint64_t part_start;\n"
30080 "   uint64_t part_end;\n"
30081 "   uint64_t part_size;\n"
30082 " };\n"
30083 " \n"
30084 msgstr ""
30085
30086 #. type: verbatim
30087 #: ../src/guestfs-structs.pod:235
30088 #, no-wrap
30089 msgid ""
30090 " struct guestfs_partition_list {\n"
30091 "   uint32_t len; /* Number of elements in list. */\n"
30092 "   struct guestfs_partition *val; /* Elements. */\n"
30093 " };\n"
30094 " \n"
30095 msgstr ""
30096
30097 #. type: verbatim
30098 #: ../src/guestfs-structs.pod:240
30099 #, no-wrap
30100 msgid ""
30101 " void guestfs_free_partition (struct guestfs_free_partition *);\n"
30102 " void guestfs_free_partition_list (struct guestfs_free_partition_list *);\n"
30103 "\n"
30104 msgstr ""
30105
30106 #. type: =head2
30107 #: ../src/guestfs-structs.pod:243
30108 msgid "guestfs_application"
30109 msgstr ""
30110
30111 #. type: verbatim
30112 #: ../src/guestfs-structs.pod:245
30113 #, no-wrap
30114 msgid ""
30115 " struct guestfs_application {\n"
30116 "   char *app_name;\n"
30117 "   char *app_display_name;\n"
30118 "   int32_t app_epoch;\n"
30119 "   char *app_version;\n"
30120 "   char *app_release;\n"
30121 "   char *app_install_path;\n"
30122 "   char *app_trans_path;\n"
30123 "   char *app_publisher;\n"
30124 "   char *app_url;\n"
30125 "   char *app_source_package;\n"
30126 "   char *app_summary;\n"
30127 "   char *app_description;\n"
30128 " };\n"
30129 " \n"
30130 msgstr ""
30131
30132 #. type: verbatim
30133 #: ../src/guestfs-structs.pod:260
30134 #, no-wrap
30135 msgid ""
30136 " struct guestfs_application_list {\n"
30137 "   uint32_t len; /* Number of elements in list. */\n"
30138 "   struct guestfs_application *val; /* Elements. */\n"
30139 " };\n"
30140 " \n"
30141 msgstr ""
30142
30143 #. type: verbatim
30144 #: ../src/guestfs-structs.pod:265
30145 #, no-wrap
30146 msgid ""
30147 " void guestfs_free_application (struct guestfs_free_application *);\n"
30148 " void guestfs_free_application_list (struct guestfs_free_application_list "
30149 "*);\n"
30150 "\n"
30151 msgstr ""
30152
30153 #. type: textblock
30154 #: ../src/guestfs.pod:5
30155 msgid "guestfs - Library for accessing and modifying virtual machine images"
30156 msgstr ""
30157
30158 #. type: verbatim
30159 #: ../src/guestfs.pod:11
30160 #, no-wrap
30161 msgid ""
30162 " guestfs_h *g = guestfs_create ();\n"
30163 " guestfs_add_drive (g, \"guest.img\");\n"
30164 " guestfs_launch (g);\n"
30165 " guestfs_mount (g, \"/dev/sda1\", \"/\");\n"
30166 " guestfs_touch (g, \"/hello\");\n"
30167 " guestfs_umount (g, \"/\");\n"
30168 " guestfs_close (g);\n"
30169 "\n"
30170 msgstr ""
30171
30172 #. type: textblock
30173 #: ../src/guestfs.pod:25
30174 msgid ""
30175 "Libguestfs is a library for accessing and modifying guest disk images.  "
30176 "Amongst the things this is good for: making batch configuration changes to "
30177 "guests, getting disk used/free statistics (see also: virt-df), migrating "
30178 "between virtualization systems (see also: virt-p2v), performing partial "
30179 "backups, performing partial guest clones, cloning guests and changing "
30180 "registry/UUID/hostname info, and much else besides."
30181 msgstr ""
30182
30183 #. type: textblock
30184 #: ../src/guestfs.pod:33
30185 msgid ""
30186 "Libguestfs uses Linux kernel and qemu code, and can access any type of guest "
30187 "filesystem that Linux and qemu can, including but not limited to: ext2/3/4, "
30188 "btrfs, FAT and NTFS, LVM, many different disk partition schemes, qcow, "
30189 "qcow2, vmdk."
30190 msgstr ""
30191
30192 #. type: textblock
30193 #: ../src/guestfs.pod:38
30194 msgid ""
30195 "Libguestfs provides ways to enumerate guest storage (eg. partitions, LVs, "
30196 "what filesystem is in each LV, etc.).  It can also run commands in the "
30197 "context of the guest.  Also you can access filesystems over FUSE."
30198 msgstr ""
30199
30200 #. type: textblock
30201 #: ../src/guestfs.pod:43
30202 msgid ""
30203 "Libguestfs is a library that can be linked with C and C++ management "
30204 "programs (or management programs written in OCaml, Perl, Python, Ruby, Java, "
30205 "PHP, Haskell or C#).  You can also use it from shell scripts or the command "
30206 "line."
30207 msgstr ""
30208
30209 #. type: textblock
30210 #: ../src/guestfs.pod:48
30211 msgid ""
30212 "You don't need to be root to use libguestfs, although obviously you do need "
30213 "enough permissions to access the disk images."
30214 msgstr ""
30215
30216 #. type: textblock
30217 #: ../src/guestfs.pod:51
30218 msgid ""
30219 "Libguestfs is a large API because it can do many things.  For a gentle "
30220 "introduction, please read the L</API OVERVIEW> section next."
30221 msgstr ""
30222
30223 #. type: textblock
30224 #: ../src/guestfs.pod:54
30225 msgid ""
30226 "There are also some example programs in the L<guestfs-examples(3)> manual "
30227 "page."
30228 msgstr ""
30229
30230 #. type: =head1
30231 #: ../src/guestfs.pod:57
30232 msgid "API OVERVIEW"
30233 msgstr ""
30234
30235 #. type: textblock
30236 #: ../src/guestfs.pod:59
30237 msgid ""
30238 "This section provides a gentler overview of the libguestfs API.  We also try "
30239 "to group API calls together, where that may not be obvious from reading "
30240 "about the individual calls in the main section of this manual."
30241 msgstr ""
30242
30243 #. type: =head2
30244 #: ../src/guestfs.pod:64
30245 msgid "HANDLES"
30246 msgstr ""
30247
30248 #. type: textblock
30249 #: ../src/guestfs.pod:66
30250 msgid ""
30251 "Before you can use libguestfs calls, you have to create a handle.  Then you "
30252 "must add at least one disk image to the handle, followed by launching the "
30253 "handle, then performing whatever operations you want, and finally closing "
30254 "the handle.  By convention we use the single letter C<g> for the name of the "
30255 "handle variable, although of course you can use any name you want."
30256 msgstr ""
30257
30258 #. type: textblock
30259 #: ../src/guestfs.pod:73
30260 msgid "The general structure of all libguestfs-using programs looks like this:"
30261 msgstr ""
30262
30263 #. type: verbatim
30264 #: ../src/guestfs.pod:76
30265 #, no-wrap
30266 msgid ""
30267 " guestfs_h *g = guestfs_create ();\n"
30268 " \n"
30269 msgstr ""
30270
30271 #. type: verbatim
30272 #: ../src/guestfs.pod:78
30273 #, no-wrap
30274 msgid ""
30275 " /* Call guestfs_add_drive additional times if there are\n"
30276 "  * multiple disk images.\n"
30277 "  */\n"
30278 " guestfs_add_drive (g, \"guest.img\");\n"
30279 " \n"
30280 msgstr ""
30281
30282 #. type: verbatim
30283 #: ../src/guestfs.pod:83
30284 #, no-wrap
30285 msgid ""
30286 " /* Most manipulation calls won't work until you've launched\n"
30287 "  * the handle 'g'.  You have to do this _after_ adding drives\n"
30288 "  * and _before_ other commands.\n"
30289 "  */\n"
30290 " guestfs_launch (g);\n"
30291 " \n"
30292 msgstr ""
30293
30294 #. type: verbatim
30295 #: ../src/guestfs.pod:89
30296 #, no-wrap
30297 msgid ""
30298 " /* Now you can examine what partitions, LVs etc are available.\n"
30299 "  */\n"
30300 " char **partitions = guestfs_list_partitions (g);\n"
30301 " char **logvols = guestfs_lvs (g);\n"
30302 " \n"
30303 msgstr ""
30304
30305 #. type: verbatim
30306 #: ../src/guestfs.pod:94
30307 #, no-wrap
30308 msgid ""
30309 " /* To access a filesystem in the image, you must mount it.\n"
30310 "  */\n"
30311 " guestfs_mount (g, \"/dev/sda1\", \"/\");\n"
30312 " \n"
30313 msgstr ""
30314
30315 #. type: verbatim
30316 #: ../src/guestfs.pod:98
30317 #, no-wrap
30318 msgid ""
30319 " /* Now you can perform filesystem actions on the guest\n"
30320 "  * disk image.\n"
30321 "  */\n"
30322 " guestfs_touch (g, \"/hello\");\n"
30323 " \n"
30324 msgstr ""
30325
30326 #. type: verbatim
30327 #: ../src/guestfs.pod:103
30328 #, no-wrap
30329 msgid ""
30330 " /* This is only needed for libguestfs < 1.5.24.  Since then\n"
30331 "  * it is done automatically when you close the handle.  See\n"
30332 "  * discussion of autosync in this page.\n"
30333 "  */\n"
30334 " guestfs_sync (g);\n"
30335 " \n"
30336 msgstr ""
30337
30338 #. type: verbatim
30339 #: ../src/guestfs.pod:109
30340 #, no-wrap
30341 msgid ""
30342 " /* Close the handle 'g'. */\n"
30343 " guestfs_close (g);\n"
30344 "\n"
30345 msgstr ""
30346
30347 #. type: textblock
30348 #: ../src/guestfs.pod:112
30349 msgid ""
30350 "The code above doesn't include any error checking.  In real code you should "
30351 "check return values carefully for errors.  In general all functions that "
30352 "return integers return C<-1> on error, and all functions that return "
30353 "pointers return C<NULL> on error.  See section L</ERROR HANDLING> below for "
30354 "how to handle errors, and consult the documentation for each function call "
30355 "below to see precisely how they return error indications.  See "
30356 "L<guestfs-examples(3)> for fully worked examples."
30357 msgstr ""
30358
30359 #. type: =head2
30360 #: ../src/guestfs.pod:121
30361 msgid "DISK IMAGES"
30362 msgstr ""
30363
30364 #. type: textblock
30365 #: ../src/guestfs.pod:123
30366 msgid ""
30367 "The image filename (C<\"guest.img\"> in the example above) could be a disk "
30368 "image from a virtual machine, a L<dd(1)> copy of a physical hard disk, an "
30369 "actual block device, or simply an empty file of zeroes that you have created "
30370 "through L<posix_fallocate(3)>.  Libguestfs lets you do useful things to all "
30371 "of these."
30372 msgstr ""
30373
30374 #. type: textblock
30375 #: ../src/guestfs.pod:129
30376 msgid ""
30377 "The call you should use in modern code for adding drives is "
30378 "L</guestfs_add_drive_opts>.  To add a disk image, allowing writes, and "
30379 "specifying that the format is raw, do:"
30380 msgstr ""
30381
30382 #. type: verbatim
30383 #: ../src/guestfs.pod:133
30384 #, no-wrap
30385 msgid ""
30386 " guestfs_add_drive_opts (g, filename,\n"
30387 "                         GUESTFS_ADD_DRIVE_OPTS_FORMAT, \"raw\",\n"
30388 "                         -1);\n"
30389 "\n"
30390 msgstr ""
30391
30392 #. type: textblock
30393 #: ../src/guestfs.pod:137
30394 msgid "You can add a disk read-only using:"
30395 msgstr ""
30396
30397 #. type: verbatim
30398 #: ../src/guestfs.pod:139
30399 #, no-wrap
30400 msgid ""
30401 " guestfs_add_drive_opts (g, filename,\n"
30402 "                         GUESTFS_ADD_DRIVE_OPTS_FORMAT, \"raw\",\n"
30403 "                         GUESTFS_ADD_DRIVE_OPTS_READONLY, 1,\n"
30404 "                         -1);\n"
30405 "\n"
30406 msgstr ""
30407
30408 #. type: textblock
30409 #: ../src/guestfs.pod:144
30410 msgid ""
30411 "or by calling the older function L</guestfs_add_drive_ro>.  In either case "
30412 "libguestfs won't modify the file."
30413 msgstr ""
30414
30415 #. type: textblock
30416 #: ../src/guestfs.pod:147
30417 msgid ""
30418 "Be extremely cautious if the disk image is in use, eg. if it is being used "
30419 "by a virtual machine.  Adding it read-write will almost certainly cause disk "
30420 "corruption, but adding it read-only is safe."
30421 msgstr ""
30422
30423 #. type: textblock
30424 #: ../src/guestfs.pod:151
30425 msgid ""
30426 "You must add at least one disk image, and you may add multiple disk images.  "
30427 "In the API, the disk images are usually referred to as C</dev/sda> (for the "
30428 "first one you added), C</dev/sdb> (for the second one you added), etc."
30429 msgstr ""
30430
30431 #. type: textblock
30432 #: ../src/guestfs.pod:156
30433 msgid ""
30434 "Once L</guestfs_launch> has been called you cannot add any more images.  You "
30435 "can call L</guestfs_list_devices> to get a list of the device names, in the "
30436 "order that you added them.  See also L</BLOCK DEVICE NAMING> below."
30437 msgstr ""
30438
30439 #. type: =head2
30440 #: ../src/guestfs.pod:161
30441 msgid "MOUNTING"
30442 msgstr ""
30443
30444 #. type: textblock
30445 #: ../src/guestfs.pod:163
30446 msgid ""
30447 "Before you can read or write files, create directories and so on in a disk "
30448 "image that contains filesystems, you have to mount those filesystems using "
30449 "L</guestfs_mount_options> or L</guestfs_mount_ro>.  If you already know that "
30450 "a disk image contains (for example) one partition with a filesystem on that "
30451 "partition, then you can mount it directly:"
30452 msgstr ""
30453
30454 #. type: verbatim
30455 #: ../src/guestfs.pod:170
30456 #, no-wrap
30457 msgid ""
30458 " guestfs_mount_options (g, \"\", \"/dev/sda1\", \"/\");\n"
30459 "\n"
30460 msgstr ""
30461
30462 #. type: textblock
30463 #: ../src/guestfs.pod:172
30464 msgid ""
30465 "where C</dev/sda1> means literally the first partition (C<1>) of the first "
30466 "disk image that we added (C</dev/sda>).  If the disk contains Linux LVM2 "
30467 "logical volumes you could refer to those instead (eg. C</dev/VG/LV>).  Note "
30468 "that these are libguestfs virtual devices, and are nothing to do with host "
30469 "devices."
30470 msgstr ""
30471
30472 #. type: textblock
30473 #: ../src/guestfs.pod:178
30474 msgid ""
30475 "If you are given a disk image and you don't know what it contains then you "
30476 "have to find out.  Libguestfs can do that too: use "
30477 "L</guestfs_list_partitions> and L</guestfs_lvs> to list possible partitions "
30478 "and LVs, and either try mounting each to see what is mountable, or else "
30479 "examine them with L</guestfs_vfs_type> or L</guestfs_file>.  To list just "
30480 "filesystems, use L</guestfs_list_filesystems>."
30481 msgstr ""
30482
30483 #. type: textblock
30484 #: ../src/guestfs.pod:186
30485 msgid ""
30486 "Libguestfs also has a set of APIs for inspection of unknown disk images (see "
30487 "L</INSPECTION> below).  But you might find it easier to look at higher level "
30488 "programs built on top of libguestfs, in particular L<virt-inspector(1)>."
30489 msgstr ""
30490
30491 #. type: textblock
30492 #: ../src/guestfs.pod:191
30493 msgid ""
30494 "To mount a filesystem read-only, use L</guestfs_mount_ro>.  There are "
30495 "several other variations of the C<guestfs_mount_*> call."
30496 msgstr ""
30497
30498 #. type: =head2
30499 #: ../src/guestfs.pod:194
30500 msgid "FILESYSTEM ACCESS AND MODIFICATION"
30501 msgstr ""
30502
30503 #. type: textblock
30504 #: ../src/guestfs.pod:196
30505 msgid ""
30506 "The majority of the libguestfs API consists of fairly low-level calls for "
30507 "accessing and modifying the files, directories, symlinks etc on mounted "
30508 "filesystems.  There are over a hundred such calls which you can find listed "
30509 "in detail below in this man page, and we don't even pretend to cover them "
30510 "all in this overview."
30511 msgstr ""
30512
30513 #. type: textblock
30514 #: ../src/guestfs.pod:202
30515 msgid ""
30516 "Specify filenames as full paths, starting with C<\"/\"> and including the "
30517 "mount point."
30518 msgstr ""
30519
30520 #. type: textblock
30521 #: ../src/guestfs.pod:205
30522 msgid ""
30523 "For example, if you mounted a filesystem at C<\"/\"> and you want to read "
30524 "the file called C<\"etc/passwd\"> then you could do:"
30525 msgstr ""
30526
30527 #. type: verbatim
30528 #: ../src/guestfs.pod:208
30529 #, no-wrap
30530 msgid ""
30531 " char *data = guestfs_cat (g, \"/etc/passwd\");\n"
30532 "\n"
30533 msgstr ""
30534
30535 #. type: textblock
30536 #: ../src/guestfs.pod:210
30537 msgid ""
30538 "This would return C<data> as a newly allocated buffer containing the full "
30539 "content of that file (with some conditions: see also L</DOWNLOADING> below), "
30540 "or C<NULL> if there was an error."
30541 msgstr ""
30542
30543 #. type: textblock
30544 #: ../src/guestfs.pod:214
30545 msgid ""
30546 "As another example, to create a top-level directory on that filesystem "
30547 "called C<\"var\"> you would do:"
30548 msgstr ""
30549
30550 #. type: verbatim
30551 #: ../src/guestfs.pod:217
30552 #, no-wrap
30553 msgid ""
30554 " guestfs_mkdir (g, \"/var\");\n"
30555 "\n"
30556 msgstr ""
30557
30558 #. type: textblock
30559 #: ../src/guestfs.pod:219
30560 msgid "To create a symlink you could do:"
30561 msgstr ""
30562
30563 #. type: verbatim
30564 #: ../src/guestfs.pod:221
30565 #, no-wrap
30566 msgid ""
30567 " guestfs_ln_s (g, \"/etc/init.d/portmap\",\n"
30568 "               \"/etc/rc3.d/S30portmap\");\n"
30569 "\n"
30570 msgstr ""
30571
30572 #. type: textblock
30573 #: ../src/guestfs.pod:224
30574 msgid ""
30575 "Libguestfs will reject attempts to use relative paths and there is no "
30576 "concept of a current working directory."
30577 msgstr ""
30578
30579 #. type: textblock
30580 #: ../src/guestfs.pod:227
30581 msgid ""
30582 "Libguestfs can return errors in many situations: for example if the "
30583 "filesystem isn't writable, or if a file or directory that you requested "
30584 "doesn't exist.  If you are using the C API (documented here)  you have to "
30585 "check for those error conditions after each call.  (Other language bindings "
30586 "turn these errors into exceptions)."
30587 msgstr ""
30588
30589 #. type: textblock
30590 #: ../src/guestfs.pod:233
30591 msgid ""
30592 "File writes are affected by the per-handle umask, set by calling "
30593 "L</guestfs_umask> and defaulting to 022.  See L</UMASK>."
30594 msgstr ""
30595
30596 #. type: =head2
30597 #: ../src/guestfs.pod:236
30598 msgid "PARTITIONING"
30599 msgstr ""
30600
30601 #. type: textblock
30602 #: ../src/guestfs.pod:238
30603 msgid ""
30604 "Libguestfs contains API calls to read, create and modify partition tables on "
30605 "disk images."
30606 msgstr ""
30607
30608 #. type: textblock
30609 #: ../src/guestfs.pod:241
30610 msgid ""
30611 "In the common case where you want to create a single partition covering the "
30612 "whole disk, you should use the L</guestfs_part_disk> call:"
30613 msgstr ""
30614
30615 #. type: verbatim
30616 #: ../src/guestfs.pod:245
30617 #, no-wrap
30618 msgid ""
30619 " const char *parttype = \"mbr\";\n"
30620 " if (disk_is_larger_than_2TB)\n"
30621 "   parttype = \"gpt\";\n"
30622 " guestfs_part_disk (g, \"/dev/sda\", parttype);\n"
30623 "\n"
30624 msgstr ""
30625
30626 #. type: textblock
30627 #: ../src/guestfs.pod:250
30628 msgid ""
30629 "Obviously this effectively wipes anything that was on that disk image "
30630 "before."
30631 msgstr ""
30632
30633 #. type: =head2
30634 #: ../src/guestfs.pod:253
30635 msgid "LVM2"
30636 msgstr ""
30637
30638 #. type: textblock
30639 #: ../src/guestfs.pod:255
30640 msgid ""
30641 "Libguestfs provides access to a large part of the LVM2 API, such as "
30642 "L</guestfs_lvcreate> and L</guestfs_vgremove>.  It won't make much sense "
30643 "unless you familiarize yourself with the concepts of physical volumes, "
30644 "volume groups and logical volumes."
30645 msgstr ""
30646
30647 #. type: textblock
30648 #: ../src/guestfs.pod:260
30649 msgid ""
30650 "This author strongly recommends reading the LVM HOWTO, online at "
30651 "L<http://tldp.org/HOWTO/LVM-HOWTO/>."
30652 msgstr ""
30653
30654 #. type: =head2
30655 #: ../src/guestfs.pod:263
30656 msgid "DOWNLOADING"
30657 msgstr ""
30658
30659 #. type: textblock
30660 #: ../src/guestfs.pod:265
30661 msgid ""
30662 "Use L</guestfs_cat> to download small, text only files.  This call is "
30663 "limited to files which are less than 2 MB and which cannot contain any ASCII "
30664 "NUL (C<\\0>) characters.  However the API is very simple to use."
30665 msgstr ""
30666
30667 #. type: textblock
30668 #: ../src/guestfs.pod:269
30669 msgid ""
30670 "L</guestfs_read_file> can be used to read files which contain arbitrary 8 "
30671 "bit data, since it returns a (pointer, size) pair.  However it is still "
30672 "limited to \"small\" files, less than 2 MB."
30673 msgstr ""
30674
30675 #. type: textblock
30676 #: ../src/guestfs.pod:273
30677 msgid ""
30678 "L</guestfs_download> can be used to download any file, with no limits on "
30679 "content or size (even files larger than 4 GB)."
30680 msgstr ""
30681
30682 #. type: textblock
30683 #: ../src/guestfs.pod:276
30684 msgid "To download multiple files, see L</guestfs_tar_out> and L</guestfs_tgz_out>."
30685 msgstr ""
30686
30687 #. type: =head2
30688 #: ../src/guestfs.pod:279
30689 msgid "UPLOADING"
30690 msgstr ""
30691
30692 #. type: textblock
30693 #: ../src/guestfs.pod:281
30694 msgid ""
30695 "It's often the case that you want to write a file or files to the disk "
30696 "image."
30697 msgstr ""
30698
30699 #. type: textblock
30700 #: ../src/guestfs.pod:284
30701 msgid ""
30702 "To write a small file with fixed content, use L</guestfs_write>.  To create "
30703 "a file of all zeroes, use L</guestfs_truncate_size> (sparse) or "
30704 "L</guestfs_fallocate64> (with all disk blocks allocated).  There are a "
30705 "variety of other functions for creating test files, for example "
30706 "L</guestfs_fill> and L</guestfs_fill_pattern>."
30707 msgstr ""
30708
30709 #. type: textblock
30710 #: ../src/guestfs.pod:290
30711 msgid ""
30712 "To upload a single file, use L</guestfs_upload>.  This call has no limits on "
30713 "file content or size (even files larger than 4 GB)."
30714 msgstr ""
30715
30716 #. type: textblock
30717 #: ../src/guestfs.pod:293
30718 msgid "To upload multiple files, see L</guestfs_tar_in> and L</guestfs_tgz_in>."
30719 msgstr ""
30720
30721 #. type: textblock
30722 #: ../src/guestfs.pod:295
30723 msgid ""
30724 "However the fastest way to upload I<large numbers of arbitrary files> is to "
30725 "turn them into a squashfs or CD ISO (see L<mksquashfs(8)> and "
30726 "L<mkisofs(8)>), then attach this using L</guestfs_add_drive_ro>.  If you add "
30727 "the drive in a predictable way (eg. adding it last after all other drives) "
30728 "then you can get the device name from L</guestfs_list_devices> and mount it "
30729 "directly using L</guestfs_mount_ro>.  Note that squashfs images are "
30730 "sometimes non-portable between kernel versions, and they don't support "
30731 "labels or UUIDs.  If you want to pre-build an image or you need to mount it "
30732 "using a label or UUID, use an ISO image instead."
30733 msgstr ""
30734
30735 #. type: =head2
30736 #: ../src/guestfs.pod:306
30737 msgid "COPYING"
30738 msgstr ""
30739
30740 #. type: textblock
30741 #: ../src/guestfs.pod:308
30742 msgid ""
30743 "There are various different commands for copying between files and devices "
30744 "and in and out of the guest filesystem.  These are summarised in the table "
30745 "below."
30746 msgstr ""
30747
30748 #. type: =item
30749 #: ../src/guestfs.pod:314
30750 msgid "B<file> to B<file>"
30751 msgstr ""
30752
30753 #. type: textblock
30754 #: ../src/guestfs.pod:316
30755 msgid ""
30756 "Use L</guestfs_cp> to copy a single file, or L</guestfs_cp_a> to copy "
30757 "directories recursively."
30758 msgstr ""
30759
30760 #. type: =item
30761 #: ../src/guestfs.pod:319
30762 msgid "B<file or device> to B<file or device>"
30763 msgstr ""
30764
30765 #. type: textblock
30766 #: ../src/guestfs.pod:321
30767 msgid ""
30768 "Use L</guestfs_dd> which efficiently uses L<dd(1)> to copy between files and "
30769 "devices in the guest."
30770 msgstr ""
30771
30772 #. type: textblock
30773 #: ../src/guestfs.pod:324
30774 msgid "Example: duplicate the contents of an LV:"
30775 msgstr ""
30776
30777 #. type: verbatim
30778 #: ../src/guestfs.pod:326
30779 #, no-wrap
30780 msgid ""
30781 " guestfs_dd (g, \"/dev/VG/Original\", \"/dev/VG/Copy\");\n"
30782 "\n"
30783 msgstr ""
30784
30785 #. type: textblock
30786 #: ../src/guestfs.pod:328
30787 msgid ""
30788 "The destination (C</dev/VG/Copy>) must be at least as large as the source "
30789 "(C</dev/VG/Original>).  To copy less than the whole source device, use "
30790 "L</guestfs_copy_size>."
30791 msgstr ""
30792
30793 #. type: =item
30794 #: ../src/guestfs.pod:332
30795 msgid "B<file on the host> to B<file or device>"
30796 msgstr ""
30797
30798 #. type: textblock
30799 #: ../src/guestfs.pod:334
30800 msgid "Use L</guestfs_upload>.  See L</UPLOADING> above."
30801 msgstr ""
30802
30803 #. type: =item
30804 #: ../src/guestfs.pod:336
30805 msgid "B<file or device> to B<file on the host>"
30806 msgstr ""
30807
30808 #. type: textblock
30809 #: ../src/guestfs.pod:338
30810 msgid "Use L</guestfs_download>.  See L</DOWNLOADING> above."
30811 msgstr ""
30812
30813 #. type: =head2
30814 #: ../src/guestfs.pod:342
30815 msgid "UPLOADING AND DOWNLOADING TO PIPES AND FILE DESCRIPTORS"
30816 msgstr ""
30817
30818 #. type: textblock
30819 #: ../src/guestfs.pod:344
30820 msgid ""
30821 "Calls like L</guestfs_upload>, L</guestfs_download>, L</guestfs_tar_in>, "
30822 "L</guestfs_tar_out> etc appear to only take filenames as arguments, so it "
30823 "appears you can only upload and download to files.  However many Un*x-like "
30824 "hosts let you use the special device files C</dev/stdin>, C</dev/stdout>, "
30825 "C</dev/stderr> and C</dev/fd/N> to read and write from stdin, stdout, "
30826 "stderr, and arbitrary file descriptor N."
30827 msgstr ""
30828
30829 #. type: textblock
30830 #: ../src/guestfs.pod:352
30831 msgid "For example, L<virt-cat(1)> writes its output to stdout by doing:"
30832 msgstr ""
30833
30834 #. type: verbatim
30835 #: ../src/guestfs.pod:355
30836 #, no-wrap
30837 msgid ""
30838 " guestfs_download (g, filename, \"/dev/stdout\");\n"
30839 "\n"
30840 msgstr ""
30841
30842 #. type: textblock
30843 #: ../src/guestfs.pod:357
30844 msgid "and you can write tar output to a file descriptor C<fd> by doing:"
30845 msgstr ""
30846
30847 #. type: verbatim
30848 #: ../src/guestfs.pod:359
30849 #, no-wrap
30850 msgid ""
30851 " char devfd[64];\n"
30852 " snprintf (devfd, sizeof devfd, \"/dev/fd/%d\", fd);\n"
30853 " guestfs_tar_out (g, \"/\", devfd);\n"
30854 "\n"
30855 msgstr ""
30856
30857 #. type: =head2
30858 #: ../src/guestfs.pod:363
30859 msgid "LISTING FILES"
30860 msgstr ""
30861
30862 #. type: textblock
30863 #: ../src/guestfs.pod:365
30864 msgid ""
30865 "L</guestfs_ll> is just designed for humans to read (mainly when using the "
30866 "L<guestfish(1)>-equivalent command C<ll>)."
30867 msgstr ""
30868
30869 #. type: textblock
30870 #: ../src/guestfs.pod:368
30871 msgid ""
30872 "L</guestfs_ls> is a quick way to get a list of files in a directory from "
30873 "programs, as a flat list of strings."
30874 msgstr ""
30875
30876 #. type: textblock
30877 #: ../src/guestfs.pod:371
30878 msgid ""
30879 "L</guestfs_readdir> is a programmatic way to get a list of files in a "
30880 "directory, plus additional information about each one.  It is more "
30881 "equivalent to using the L<readdir(3)> call on a local filesystem."
30882 msgstr ""
30883
30884 #. type: textblock
30885 #: ../src/guestfs.pod:375
30886 msgid ""
30887 "L</guestfs_find> and L</guestfs_find0> can be used to recursively list "
30888 "files."
30889 msgstr ""
30890
30891 #. type: =head2
30892 #: ../src/guestfs.pod:378
30893 msgid "RUNNING COMMANDS"
30894 msgstr ""
30895
30896 #. type: textblock
30897 #: ../src/guestfs.pod:380
30898 msgid ""
30899 "Although libguestfs is primarily an API for manipulating files inside guest "
30900 "images, we also provide some limited facilities for running commands inside "
30901 "guests."
30902 msgstr ""
30903
30904 #. type: textblock
30905 #: ../src/guestfs.pod:384
30906 msgid "There are many limitations to this:"
30907 msgstr ""
30908
30909 #. type: textblock
30910 #: ../src/guestfs.pod:390
30911 msgid ""
30912 "The kernel version that the command runs under will be different from what "
30913 "it expects."
30914 msgstr ""
30915
30916 #. type: textblock
30917 #: ../src/guestfs.pod:395
30918 msgid ""
30919 "If the command needs to communicate with daemons, then most likely they "
30920 "won't be running."
30921 msgstr ""
30922
30923 #. type: textblock
30924 #: ../src/guestfs.pod:400
30925 msgid "The command will be running in limited memory."
30926 msgstr ""
30927
30928 #. type: textblock
30929 #: ../src/guestfs.pod:404
30930 msgid ""
30931 "The network may not be available unless you enable it (see "
30932 "L</guestfs_set_network>)."
30933 msgstr ""
30934
30935 #. type: textblock
30936 #: ../src/guestfs.pod:409
30937 msgid "Only supports Linux guests (not Windows, BSD, etc)."
30938 msgstr ""
30939
30940 #. type: textblock
30941 #: ../src/guestfs.pod:413
30942 msgid "Architecture limitations (eg. won't work for a PPC guest on an X86 host)."
30943 msgstr ""
30944
30945 #. type: textblock
30946 #: ../src/guestfs.pod:418
30947 msgid ""
30948 "For SELinux guests, you may need to enable SELinux and load policy first.  "
30949 "See L</SELINUX> in this manpage."
30950 msgstr ""
30951
30952 #. type: textblock
30953 #: ../src/guestfs.pod:423
30954 msgid ""
30955 "I<Security:> It is not safe to run commands from untrusted, possibly "
30956 "malicious guests.  These commands may attempt to exploit your program by "
30957 "sending unexpected output.  They could also try to exploit the Linux kernel "
30958 "or qemu provided by the libguestfs appliance.  They could use the network "
30959 "provided by the libguestfs appliance to bypass ordinary network partitions "
30960 "and firewalls.  They could use the elevated privileges or different SELinux "
30961 "context of your program to their advantage."
30962 msgstr ""
30963
30964 #. type: textblock
30965 #: ../src/guestfs.pod:432
30966 msgid ""
30967 "A secure alternative is to use libguestfs to install a \"firstboot\" script "
30968 "(a script which runs when the guest next boots normally), and to have this "
30969 "script run the commands you want in the normal context of the running guest, "
30970 "network security and so on.  For information about other security issues, "
30971 "see L</SECURITY>."
30972 msgstr ""
30973
30974 #. type: textblock
30975 #: ../src/guestfs.pod:440
30976 msgid ""
30977 "The two main API calls to run commands are L</guestfs_command> and "
30978 "L</guestfs_sh> (there are also variations)."
30979 msgstr ""
30980
30981 #. type: textblock
30982 #: ../src/guestfs.pod:443
30983 msgid ""
30984 "The difference is that L</guestfs_sh> runs commands using the shell, so any "
30985 "shell globs, redirections, etc will work."
30986 msgstr ""
30987
30988 #. type: =head2
30989 #: ../src/guestfs.pod:446
30990 msgid "CONFIGURATION FILES"
30991 msgstr ""
30992
30993 #. type: textblock
30994 #: ../src/guestfs.pod:448
30995 msgid ""
30996 "To read and write configuration files in Linux guest filesystems, we "
30997 "strongly recommend using Augeas.  For example, Augeas understands how to "
30998 "read and write, say, a Linux shadow password file or X.org configuration "
30999 "file, and so avoids you having to write that code."
31000 msgstr ""
31001
31002 #. type: textblock
31003 #: ../src/guestfs.pod:453
31004 msgid ""
31005 "The main Augeas calls are bound through the C<guestfs_aug_*> APIs.  We don't "
31006 "document Augeas itself here because there is excellent documentation on the "
31007 "L<http://augeas.net/> website."
31008 msgstr ""
31009
31010 #. type: textblock
31011 #: ../src/guestfs.pod:457
31012 msgid ""
31013 "If you don't want to use Augeas (you fool!) then try calling "
31014 "L</guestfs_read_lines> to get the file as a list of lines which you can "
31015 "iterate over."
31016 msgstr ""
31017
31018 #. type: =head2
31019 #: ../src/guestfs.pod:461
31020 msgid "SELINUX"
31021 msgstr ""
31022
31023 #. type: textblock
31024 #: ../src/guestfs.pod:463
31025 msgid ""
31026 "We support SELinux guests.  To ensure that labeling happens correctly in "
31027 "SELinux guests, you need to enable SELinux and load the guest's policy:"
31028 msgstr ""
31029
31030 #. type: textblock
31031 #: ../src/guestfs.pod:471
31032 msgid "Before launching, do:"
31033 msgstr ""
31034
31035 #. type: verbatim
31036 #: ../src/guestfs.pod:473
31037 #, no-wrap
31038 msgid ""
31039 " guestfs_set_selinux (g, 1);\n"
31040 "\n"
31041 msgstr ""
31042
31043 #. type: textblock
31044 #: ../src/guestfs.pod:477
31045 msgid ""
31046 "After mounting the guest's filesystem(s), load the policy.  This is best "
31047 "done by running the L<load_policy(8)> command in the guest itself:"
31048 msgstr ""
31049
31050 #. type: verbatim
31051 #: ../src/guestfs.pod:481
31052 #, no-wrap
31053 msgid ""
31054 " guestfs_sh (g, \"/usr/sbin/load_policy\");\n"
31055 "\n"
31056 msgstr ""
31057
31058 #. type: textblock
31059 #: ../src/guestfs.pod:483
31060 msgid ""
31061 "(Older versions of C<load_policy> require you to specify the name of the "
31062 "policy file)."
31063 msgstr ""
31064
31065 #. type: textblock
31066 #: ../src/guestfs.pod:488
31067 msgid ""
31068 "Optionally, set the security context for the API.  The correct security "
31069 "context to use can only be known by inspecting the guest.  As an example:"
31070 msgstr ""
31071
31072 #. type: verbatim
31073 #: ../src/guestfs.pod:492
31074 #, no-wrap
31075 msgid ""
31076 " guestfs_setcon (g, \"unconfined_u:unconfined_r:unconfined_t:s0\");\n"
31077 "\n"
31078 msgstr ""
31079
31080 #. type: textblock
31081 #: ../src/guestfs.pod:496
31082 msgid "This will work for running commands and editing existing files."
31083 msgstr ""
31084
31085 #. type: textblock
31086 #: ../src/guestfs.pod:498
31087 msgid ""
31088 "When new files are created, you may need to label them explicitly, for "
31089 "example by running the external command C<restorecon pathname>."
31090 msgstr ""
31091
31092 #. type: =head2
31093 #: ../src/guestfs.pod:502
31094 msgid "UMASK"
31095 msgstr ""
31096
31097 #. type: textblock
31098 #: ../src/guestfs.pod:504
31099 msgid ""
31100 "Certain calls are affected by the current file mode creation mask (the "
31101 "\"umask\").  In particular ones which create files or directories, such as "
31102 "L</guestfs_touch>, L</guestfs_mknod> or L</guestfs_mkdir>.  This affects "
31103 "either the default mode that the file is created with or modifies the mode "
31104 "that you supply."
31105 msgstr ""
31106
31107 #. type: textblock
31108 #: ../src/guestfs.pod:510
31109 msgid ""
31110 "The default umask is C<022>, so files are created with modes such as C<0644> "
31111 "and directories with C<0755>."
31112 msgstr ""
31113
31114 #. type: textblock
31115 #: ../src/guestfs.pod:513
31116 msgid ""
31117 "There are two ways to avoid being affected by umask.  Either set umask to 0 "
31118 "(call C<guestfs_umask (g, 0)> early after launching).  Or call "
31119 "L</guestfs_chmod> after creating each file or directory."
31120 msgstr ""
31121
31122 #. type: textblock
31123 #: ../src/guestfs.pod:517
31124 msgid "For more information about umask, see L<umask(2)>."
31125 msgstr ""
31126
31127 #. type: textblock
31128 #: ../src/guestfs.pod:521
31129 msgid ""
31130 "Libguestfs allows you to access Linux guests which have been encrypted using "
31131 "whole disk encryption that conforms to the Linux Unified Key Setup (LUKS) "
31132 "standard.  This includes nearly all whole disk encryption systems used by "
31133 "modern Linux guests."
31134 msgstr ""
31135
31136 #. type: textblock
31137 #: ../src/guestfs.pod:527
31138 msgid ""
31139 "Use L</guestfs_vfs_type> to identify LUKS-encrypted block devices (it "
31140 "returns the string C<crypto_LUKS>)."
31141 msgstr ""
31142
31143 #. type: textblock
31144 #: ../src/guestfs.pod:530
31145 msgid ""
31146 "Then open these devices by calling L</guestfs_luks_open>.  Obviously you "
31147 "will require the passphrase!"
31148 msgstr ""
31149
31150 #. type: textblock
31151 #: ../src/guestfs.pod:533
31152 msgid ""
31153 "Opening a LUKS device creates a new device mapper device called "
31154 "C</dev/mapper/mapname> (where C<mapname> is the string you supply to "
31155 "L</guestfs_luks_open>).  Reads and writes to this mapper device are "
31156 "decrypted from and encrypted to the underlying block device respectively."
31157 msgstr ""
31158
31159 #. type: textblock
31160 #: ../src/guestfs.pod:539
31161 msgid ""
31162 "LVM volume groups on the device can be made visible by calling "
31163 "L</guestfs_vgscan> followed by L</guestfs_vg_activate_all>.  The logical "
31164 "volume(s) can now be mounted in the usual way."
31165 msgstr ""
31166
31167 #. type: textblock
31168 #: ../src/guestfs.pod:543
31169 msgid ""
31170 "Use the reverse process to close a LUKS device.  Unmount any logical volumes "
31171 "on it, deactivate the volume groups by caling C<guestfs_vg_activate (g, 0, "
31172 "[\"/dev/VG\"])>.  Then close the mapper device by calling "
31173 "L</guestfs_luks_close> on the C</dev/mapper/mapname> device (I<not> the "
31174 "underlying encrypted block device)."
31175 msgstr ""
31176
31177 #. type: =head2
31178 #: ../src/guestfs.pod:550
31179 msgid "INSPECTION"
31180 msgstr ""
31181
31182 #. type: textblock
31183 #: ../src/guestfs.pod:552
31184 msgid ""
31185 "Libguestfs has APIs for inspecting an unknown disk image to find out if it "
31186 "contains operating systems, an install CD or a live CD.  (These APIs used to "
31187 "be in a separate Perl-only library called L<Sys::Guestfs::Lib(3)> but since "
31188 "version 1.5.3 the most frequently used part of this library has been "
31189 "rewritten in C and moved into the core code)."
31190 msgstr ""
31191
31192 #. type: textblock
31193 #: ../src/guestfs.pod:559
31194 msgid ""
31195 "Add all disks belonging to the unknown virtual machine and call "
31196 "L</guestfs_launch> in the usual way."
31197 msgstr ""
31198
31199 #. type: textblock
31200 #: ../src/guestfs.pod:562
31201 msgid ""
31202 "Then call L</guestfs_inspect_os>.  This function uses other libguestfs calls "
31203 "and certain heuristics, and returns a list of operating systems that were "
31204 "found.  An empty list means none were found.  A single element is the root "
31205 "filesystem of the operating system.  For dual- or multi-boot guests, "
31206 "multiple roots can be returned, each one corresponding to a separate "
31207 "operating system.  (Multi-boot virtual machines are extremely rare in the "
31208 "world of virtualization, but since this scenario can happen, we have built "
31209 "libguestfs to deal with it.)"
31210 msgstr ""
31211
31212 #. type: textblock
31213 #: ../src/guestfs.pod:571
31214 msgid ""
31215 "For each root, you can then call various C<guestfs_inspect_get_*> functions "
31216 "to get additional details about that operating system.  For example, call "
31217 "L</guestfs_inspect_get_type> to return the string C<windows> or C<linux> for "
31218 "Windows and Linux-based operating systems respectively."
31219 msgstr ""
31220
31221 #. type: textblock
31222 #: ../src/guestfs.pod:577
31223 msgid ""
31224 "Un*x-like and Linux-based operating systems usually consist of several "
31225 "filesystems which are mounted at boot time (for example, a separate boot "
31226 "partition mounted on C</boot>).  The inspection rules are able to detect how "
31227 "filesystems correspond to mount points.  Call "
31228 "C<guestfs_inspect_get_mountpoints> to get this mapping.  It might return a "
31229 "hash table like this example:"
31230 msgstr ""
31231
31232 #. type: verbatim
31233 #: ../src/guestfs.pod:584
31234 #, no-wrap
31235 msgid ""
31236 " /boot => /dev/sda1\n"
31237 " /     => /dev/vg_guest/lv_root\n"
31238 " /usr  => /dev/vg_guest/lv_usr\n"
31239 "\n"
31240 msgstr ""
31241
31242 #. type: textblock
31243 #: ../src/guestfs.pod:588
31244 msgid ""
31245 "The caller can then make calls to L</guestfs_mount_options> to mount the "
31246 "filesystems as suggested."
31247 msgstr ""
31248
31249 #. type: textblock
31250 #: ../src/guestfs.pod:591
31251 msgid ""
31252 "Be careful to mount filesystems in the right order (eg. C</> before "
31253 "C</usr>).  Sorting the keys of the hash by length, shortest first, should "
31254 "work."
31255 msgstr ""
31256
31257 #. type: textblock
31258 #: ../src/guestfs.pod:595
31259 msgid ""
31260 "Inspection currently only works for some common operating systems.  "
31261 "Contributors are welcome to send patches for other operating systems that we "
31262 "currently cannot detect."
31263 msgstr ""
31264
31265 #. type: textblock
31266 #: ../src/guestfs.pod:599
31267 msgid ""
31268 "Encrypted disks must be opened before inspection.  See L</ENCRYPTED DISKS> "
31269 "for more details.  The L</guestfs_inspect_os> function just ignores any "
31270 "encrypted devices."
31271 msgstr ""
31272
31273 #. type: textblock
31274 #: ../src/guestfs.pod:603
31275 msgid ""
31276 "A note on the implementation: The call L</guestfs_inspect_os> performs "
31277 "inspection and caches the results in the guest handle.  Subsequent calls to "
31278 "C<guestfs_inspect_get_*> return this cached information, but I<do not> "
31279 "re-read the disks.  If you change the content of the guest disks, you can "
31280 "redo inspection by calling L</guestfs_inspect_os> again.  "
31281 "(L</guestfs_inspect_list_applications> works a little differently from the "
31282 "other calls and does read the disks.  See documentation for that function "
31283 "for details)."
31284 msgstr ""
31285
31286 #. type: =head3
31287 #: ../src/guestfs.pod:612
31288 msgid "INSPECTING INSTALL DISKS"
31289 msgstr ""
31290
31291 #. type: textblock
31292 #: ../src/guestfs.pod:614
31293 msgid ""
31294 "Libguestfs (since 1.9.4) can detect some install disks, install CDs, live "
31295 "CDs and more."
31296 msgstr ""
31297
31298 #. type: textblock
31299 #: ../src/guestfs.pod:617
31300 msgid ""
31301 "Call L</guestfs_inspect_get_format> to return the format of the operating "
31302 "system, which currently can be C<installed> (a regular operating system) or "
31303 "C<installer> (some sort of install disk)."
31304 msgstr ""
31305
31306 #. type: textblock
31307 #: ../src/guestfs.pod:621
31308 msgid ""
31309 "Further information is available about the operating system that can be "
31310 "installed using the regular inspection APIs like "
31311 "L</guestfs_inspect_get_product_name>, L</guestfs_inspect_get_major_version> "
31312 "etc."
31313 msgstr ""
31314
31315 #. type: textblock
31316 #: ../src/guestfs.pod:626
31317 msgid ""
31318 "Some additional information specific to installer disks is also available "
31319 "from the L</guestfs_inspect_is_live>, L</guestfs_inspect_is_netinst> and "
31320 "L</guestfs_inspect_is_multipart> calls."
31321 msgstr ""
31322
31323 #. type: =head2
31324 #: ../src/guestfs.pod:631
31325 msgid "SPECIAL CONSIDERATIONS FOR WINDOWS GUESTS"
31326 msgstr ""
31327
31328 #. type: textblock
31329 #: ../src/guestfs.pod:633
31330 msgid ""
31331 "Libguestfs can mount NTFS partitions.  It does this using the "
31332 "L<http://www.ntfs-3g.org/> driver."
31333 msgstr ""
31334
31335 #. type: =head3
31336 #: ../src/guestfs.pod:636
31337 msgid "DRIVE LETTERS AND PATHS"
31338 msgstr ""
31339
31340 #. type: textblock
31341 #: ../src/guestfs.pod:638
31342 msgid ""
31343 "DOS and Windows still use drive letters, and the filesystems are always "
31344 "treated as case insensitive by Windows itself, and therefore you might find "
31345 "a Windows configuration file referring to a path like "
31346 "C<c:\\windows\\system32>.  When the filesystem is mounted in libguestfs, "
31347 "that directory might be referred to as C</WINDOWS/System32>."
31348 msgstr ""
31349
31350 #. type: textblock
31351 #: ../src/guestfs.pod:644
31352 msgid ""
31353 "Drive letter mappings can be found using inspection (see L</INSPECTION> and "
31354 "L</guestfs_inspect_get_drive_mappings>)"
31355 msgstr ""
31356
31357 #. type: textblock
31358 #: ../src/guestfs.pod:647
31359 msgid ""
31360 "Dealing with separator characters (backslash vs forward slash) is outside "
31361 "the scope of libguestfs, but usually a simple character replacement will "
31362 "work."
31363 msgstr ""
31364
31365 #. type: textblock
31366 #: ../src/guestfs.pod:651
31367 msgid ""
31368 "To resolve the case insensitivity of paths, call "
31369 "L</guestfs_case_sensitive_path>."
31370 msgstr ""
31371
31372 #. type: =head3
31373 #: ../src/guestfs.pod:654
31374 msgid "ACCESSING THE WINDOWS REGISTRY"
31375 msgstr ""
31376
31377 #. type: textblock
31378 #: ../src/guestfs.pod:656
31379 msgid ""
31380 "Libguestfs also provides some help for decoding Windows Registry \"hive\" "
31381 "files, through the library C<hivex> which is part of the libguestfs project "
31382 "although ships as a separate tarball.  You have to locate and download the "
31383 "hive file(s) yourself, and then pass them to C<hivex> functions.  See also "
31384 "the programs L<hivexml(1)>, L<hivexsh(1)>, L<hivexregedit(1)> and "
31385 "L<virt-win-reg(1)> for more help on this issue."
31386 msgstr ""
31387
31388 #. type: =head3
31389 #: ../src/guestfs.pod:664
31390 msgid "SYMLINKS ON NTFS-3G FILESYSTEMS"
31391 msgstr ""
31392
31393 #. type: textblock
31394 #: ../src/guestfs.pod:666
31395 msgid ""
31396 "Ntfs-3g tries to rewrite \"Junction Points\" and NTFS \"symbolic links\" to "
31397 "provide something which looks like a Linux symlink.  The way it tries to do "
31398 "the rewriting is described here:"
31399 msgstr ""
31400
31401 #. type: textblock
31402 #: ../src/guestfs.pod:670
31403 msgid "L<http://www.tuxera.com/community/ntfs-3g-advanced/junction-points-and-symbolic-links/>"
31404 msgstr ""
31405
31406 #. type: textblock
31407 #: ../src/guestfs.pod:672
31408 msgid ""
31409 "The essential problem is that ntfs-3g simply does not have enough "
31410 "information to do a correct job.  NTFS links can contain drive letters and "
31411 "references to external device GUIDs that ntfs-3g has no way of resolving.  "
31412 "It is almost certainly the case that libguestfs callers should ignore what "
31413 "ntfs-3g does (ie. don't use L</guestfs_readlink> on NTFS volumes)."
31414 msgstr ""
31415
31416 #. type: textblock
31417 #: ../src/guestfs.pod:679
31418 msgid ""
31419 "Instead if you encounter a symbolic link on an ntfs-3g filesystem, use "
31420 "L</guestfs_lgetxattr> to read the C<system.ntfs_reparse_data> extended "
31421 "attribute, and read the raw reparse data from that (you can find the format "
31422 "documented in various places around the web)."
31423 msgstr ""
31424
31425 #. type: =head3
31426 #: ../src/guestfs.pod:684
31427 msgid "EXTENDED ATTRIBUTES ON NTFS-3G FILESYSTEMS"
31428 msgstr ""
31429
31430 #. type: textblock
31431 #: ../src/guestfs.pod:686
31432 msgid ""
31433 "There are other useful extended attributes that can be read from ntfs-3g "
31434 "filesystems (using L</guestfs_getxattr>).  See:"
31435 msgstr ""
31436
31437 #. type: textblock
31438 #: ../src/guestfs.pod:689
31439 msgid "L<http://www.tuxera.com/community/ntfs-3g-advanced/extended-attributes/>"
31440 msgstr ""
31441
31442 #. type: =head2
31443 #: ../src/guestfs.pod:691
31444 msgid "USING LIBGUESTFS WITH OTHER PROGRAMMING LANGUAGES"
31445 msgstr ""
31446
31447 #. type: textblock
31448 #: ../src/guestfs.pod:693
31449 msgid ""
31450 "Although we don't want to discourage you from using the C API, we will "
31451 "mention here that the same API is also available in other languages."
31452 msgstr ""
31453
31454 #. type: textblock
31455 #: ../src/guestfs.pod:696
31456 msgid ""
31457 "The API is broadly identical in all supported languages.  This means that "
31458 "the C call C<guestfs_add_drive_ro(g,file)> is C<$g-E<gt>add_drive_ro($file)> "
31459 "in Perl, C<g.add_drive_ro(file)> in Python, and C<g#add_drive_ro file> in "
31460 "OCaml.  In other words, a straightforward, predictable isomorphism between "
31461 "each language."
31462 msgstr ""
31463
31464 #. type: textblock
31465 #: ../src/guestfs.pod:702
31466 msgid ""
31467 "Error messages are automatically transformed into exceptions if the language "
31468 "supports it."
31469 msgstr ""
31470
31471 #. type: textblock
31472 #: ../src/guestfs.pod:705
31473 msgid ""
31474 "We don't try to \"object orientify\" parts of the API in OO languages, "
31475 "although contributors are welcome to write higher level APIs above what we "
31476 "provide in their favourite languages if they wish."
31477 msgstr ""
31478
31479 #. type: =item
31480 #: ../src/guestfs.pod:711
31481 msgid "B<C++>"
31482 msgstr ""
31483
31484 #. type: textblock
31485 #: ../src/guestfs.pod:713
31486 msgid ""
31487 "You can use the I<guestfs.h> header file from C++ programs.  The C++ API is "
31488 "identical to the C API.  C++ classes and exceptions are not used."
31489 msgstr ""
31490
31491 #. type: =item
31492 #: ../src/guestfs.pod:717
31493 msgid "B<C#>"
31494 msgstr ""
31495
31496 #. type: textblock
31497 #: ../src/guestfs.pod:719
31498 msgid ""
31499 "The C# bindings are highly experimental.  Please read the warnings at the "
31500 "top of C<csharp/Libguestfs.cs>."
31501 msgstr ""
31502
31503 #. type: =item
31504 #: ../src/guestfs.pod:722
31505 msgid "B<Haskell>"
31506 msgstr ""
31507
31508 #. type: textblock
31509 #: ../src/guestfs.pod:724
31510 msgid ""
31511 "This is the only language binding that is working but incomplete.  Only "
31512 "calls which return simple integers have been bound in Haskell, and we are "
31513 "looking for help to complete this binding."
31514 msgstr ""
31515
31516 #. type: =item
31517 #: ../src/guestfs.pod:728
31518 msgid "B<Java>"
31519 msgstr ""
31520
31521 #. type: textblock
31522 #: ../src/guestfs.pod:730
31523 msgid ""
31524 "Full documentation is contained in the Javadoc which is distributed with "
31525 "libguestfs.  For examples, see L<guestfs-java(3)>."
31526 msgstr ""
31527
31528 #. type: =item
31529 #: ../src/guestfs.pod:733
31530 msgid "B<OCaml>"
31531 msgstr ""
31532
31533 #. type: textblock
31534 #: ../src/guestfs.pod:735
31535 msgid "See L<guestfs-ocaml(3)>."
31536 msgstr ""
31537
31538 #. type: =item
31539 #: ../src/guestfs.pod:737
31540 msgid "B<Perl>"
31541 msgstr ""
31542
31543 #. type: textblock
31544 #: ../src/guestfs.pod:739
31545 msgid "See L<guestfs-perl(3)> and L<Sys::Guestfs(3)>."
31546 msgstr ""
31547
31548 #. type: =item
31549 #: ../src/guestfs.pod:741
31550 msgid "B<PHP>"
31551 msgstr ""
31552
31553 #. type: textblock
31554 #: ../src/guestfs.pod:743
31555 msgid ""
31556 "For documentation see C<README-PHP> supplied with libguestfs sources or in "
31557 "the php-libguestfs package for your distribution."
31558 msgstr ""
31559
31560 #. type: textblock
31561 #: ../src/guestfs.pod:746
31562 msgid "The PHP binding only works correctly on 64 bit machines."
31563 msgstr ""
31564
31565 #. type: =item
31566 #: ../src/guestfs.pod:748
31567 msgid "B<Python>"
31568 msgstr ""
31569
31570 #. type: textblock
31571 #: ../src/guestfs.pod:750
31572 msgid "See L<guestfs-python(3)>."
31573 msgstr ""
31574
31575 #. type: =item
31576 #: ../src/guestfs.pod:752
31577 msgid "B<Ruby>"
31578 msgstr ""
31579
31580 #. type: textblock
31581 #: ../src/guestfs.pod:754
31582 msgid "See L<guestfs-ruby(3)>."
31583 msgstr ""
31584
31585 #. type: =item
31586 #: ../src/guestfs.pod:756
31587 msgid "B<shell scripts>"
31588 msgstr ""
31589
31590 #. type: textblock
31591 #: ../src/guestfs.pod:758
31592 msgid "See L<guestfish(1)>."
31593 msgstr ""
31594
31595 #. type: =head2
31596 #: ../src/guestfs.pod:762
31597 msgid "LIBGUESTFS GOTCHAS"
31598 msgstr ""
31599
31600 #. type: textblock
31601 #: ../src/guestfs.pod:764
31602 msgid ""
31603 "L<http://en.wikipedia.org/wiki/Gotcha_(programming)>: \"A feature of a "
31604 "system [...] that works in the way it is documented but is counterintuitive "
31605 "and almost invites mistakes.\""
31606 msgstr ""
31607
31608 #. type: textblock
31609 #: ../src/guestfs.pod:768
31610 msgid ""
31611 "Since we developed libguestfs and the associated tools, there are several "
31612 "things we would have designed differently, but are now stuck with for "
31613 "backwards compatibility or other reasons.  If there is ever a libguestfs 2.0 "
31614 "release, you can expect these to change.  Beware of them."
31615 msgstr ""
31616
31617 #. type: =item
31618 #: ../src/guestfs.pod:776
31619 msgid "Autosync / forgetting to sync."
31620 msgstr ""
31621
31622 #. type: textblock
31623 #: ../src/guestfs.pod:778
31624 msgid ""
31625 "I<Update:> Autosync is enabled by default for all API users starting from "
31626 "libguestfs 1.5.24.  This section only applies to older versions."
31627 msgstr ""
31628
31629 #. type: textblock
31630 #: ../src/guestfs.pod:781
31631 msgid ""
31632 "When modifying a filesystem from C or another language, you B<must> unmount "
31633 "all filesystems and call L</guestfs_sync> explicitly before you close the "
31634 "libguestfs handle.  You can also call:"
31635 msgstr ""
31636
31637 #. type: verbatim
31638 #: ../src/guestfs.pod:785
31639 #, no-wrap
31640 msgid ""
31641 " guestfs_set_autosync (g, 1);\n"
31642 "\n"
31643 msgstr ""
31644
31645 #. type: textblock
31646 #: ../src/guestfs.pod:787
31647 msgid ""
31648 "to have the unmount/sync done automatically for you when the handle 'g' is "
31649 "closed.  (This feature is called \"autosync\", L</guestfs_set_autosync> "
31650 "q.v.)"
31651 msgstr ""
31652
31653 #. type: textblock
31654 #: ../src/guestfs.pod:791
31655 msgid ""
31656 "If you forget to do this, then it is entirely possible that your changes "
31657 "won't be written out, or will be partially written, or (very rarely) that "
31658 "you'll get disk corruption."
31659 msgstr ""
31660
31661 #. type: textblock
31662 #: ../src/guestfs.pod:795
31663 msgid ""
31664 "Note that in L<guestfish(3)> autosync is the default.  So quick and dirty "
31665 "guestfish scripts that forget to sync will work just fine, which can make "
31666 "this very puzzling if you are trying to debug a problem."
31667 msgstr ""
31668
31669 #. type: =item
31670 #: ../src/guestfs.pod:799
31671 msgid "Mount option C<-o sync> should not be the default."
31672 msgstr ""
31673
31674 #. type: textblock
31675 #: ../src/guestfs.pod:801
31676 msgid ""
31677 "If you use L</guestfs_mount>, then C<-o sync,noatime> are added implicitly.  "
31678 "However C<-o sync> does not add any reliability benefit, but does have a "
31679 "very large performance impact."
31680 msgstr ""
31681
31682 #. type: textblock
31683 #: ../src/guestfs.pod:805
31684 msgid ""
31685 "The work around is to use L</guestfs_mount_options> and set the mount "
31686 "options that you actually want to use."
31687 msgstr ""
31688
31689 #. type: =item
31690 #: ../src/guestfs.pod:808
31691 msgid "Read-only should be the default."
31692 msgstr ""
31693
31694 #. type: textblock
31695 #: ../src/guestfs.pod:810
31696 msgid ""
31697 "In L<guestfish(3)>, I<--ro> should be the default, and you should have to "
31698 "specify I<--rw> if you want to make changes to the image."
31699 msgstr ""
31700
31701 #. type: textblock
31702 #: ../src/guestfs.pod:813
31703 msgid "This would reduce the potential to corrupt live VM images."
31704 msgstr ""
31705
31706 #. type: textblock
31707 #: ../src/guestfs.pod:815
31708 msgid ""
31709 "Note that many filesystems change the disk when you just mount and unmount, "
31710 "even if you didn't perform any writes.  You need to use "
31711 "L</guestfs_add_drive_ro> to guarantee that the disk is not changed."
31712 msgstr ""
31713
31714 #. type: =item
31715 #: ../src/guestfs.pod:819
31716 msgid "guestfish command line is hard to use."
31717 msgstr ""
31718
31719 #. type: textblock
31720 #: ../src/guestfs.pod:821
31721 msgid ""
31722 "C<guestfish disk.img> doesn't do what people expect (open C<disk.img> for "
31723 "examination).  It tries to run a guestfish command C<disk.img> which doesn't "
31724 "exist, so it fails.  In earlier versions of guestfish the error message was "
31725 "also unintuitive, but we have corrected this since.  Like the Bourne shell, "
31726 "we should have used C<guestfish -c command> to run commands."
31727 msgstr ""
31728
31729 #. type: =item
31730 #: ../src/guestfs.pod:828
31731 msgid "guestfish megabyte modifiers don't work right on all commands"
31732 msgstr ""
31733
31734 #. type: textblock
31735 #: ../src/guestfs.pod:830
31736 msgid ""
31737 "In recent guestfish you can use C<1M> to mean 1 megabyte (and similarly for "
31738 "other modifiers).  What guestfish actually does is to multiply the number "
31739 "part by the modifier part and pass the result to the C API.  However this "
31740 "doesn't work for a few APIs which aren't expecting bytes, but are already "
31741 "expecting some other unit (eg. megabytes)."
31742 msgstr ""
31743
31744 #. type: textblock
31745 #: ../src/guestfs.pod:837
31746 msgid "The most common is L</guestfs_lvcreate>.  The guestfish command:"
31747 msgstr ""
31748
31749 #. type: verbatim
31750 #: ../src/guestfs.pod:839
31751 #, no-wrap
31752 msgid ""
31753 " lvcreate LV VG 100M\n"
31754 "\n"
31755 msgstr ""
31756
31757 #. type: textblock
31758 #: ../src/guestfs.pod:841
31759 msgid ""
31760 "does not do what you might expect.  Instead because L</guestfs_lvcreate> is "
31761 "already expecting megabytes, this tries to create a 100 I<terabyte> (100 "
31762 "megabytes * megabytes) logical volume.  The error message you get from this "
31763 "is also a little obscure."
31764 msgstr ""
31765
31766 #. type: textblock
31767 #: ../src/guestfs.pod:846
31768 msgid ""
31769 "This could be fixed in the generator by specially marking parameters and "
31770 "return values which take bytes or other units."
31771 msgstr ""
31772
31773 #. type: =item
31774 #: ../src/guestfs.pod:849
31775 msgid "Ambiguity between devices and paths"
31776 msgstr ""
31777
31778 #. type: textblock
31779 #: ../src/guestfs.pod:851
31780 msgid ""
31781 "There is a subtle ambiguity in the API between a device name "
31782 "(eg. C</dev/sdb2>) and a similar pathname.  A file might just happen to be "
31783 "called C<sdb2> in the directory C</dev> (consider some non-Unix VM image)."
31784 msgstr ""
31785
31786 #. type: textblock
31787 #: ../src/guestfs.pod:856
31788 msgid ""
31789 "In the current API we usually resolve this ambiguity by having two separate "
31790 "calls, for example L</guestfs_checksum> and L</guestfs_checksum_device>.  "
31791 "Some API calls are ambiguous and (incorrectly) resolve the problem by "
31792 "detecting if the path supplied begins with C</dev/>."
31793 msgstr ""
31794
31795 #. type: textblock
31796 #: ../src/guestfs.pod:862
31797 msgid ""
31798 "To avoid both the ambiguity and the need to duplicate some calls, we could "
31799 "make paths/devices into structured names.  One way to do this would be to "
31800 "use a notation like grub (C<hd(0,0)>), although nobody really likes this "
31801 "aspect of grub.  Another way would be to use a structured type, equivalent "
31802 "to this OCaml type:"
31803 msgstr ""
31804
31805 #. type: verbatim
31806 #: ../src/guestfs.pod:868
31807 #, no-wrap
31808 msgid ""
31809 " type path = Path of string | Device of int | Partition of int * int\n"
31810 "\n"
31811 msgstr ""
31812
31813 #. type: textblock
31814 #: ../src/guestfs.pod:870
31815 msgid "which would allow you to pass arguments like:"
31816 msgstr ""
31817
31818 #. type: verbatim
31819 #: ../src/guestfs.pod:872
31820 #, no-wrap
31821 msgid ""
31822 " Path \"/foo/bar\"\n"
31823 " Device 1            (* /dev/sdb, or perhaps /dev/sda *)\n"
31824 " Partition (1, 2)    (* /dev/sdb2 (or is it /dev/sda2 or /dev/sdb3?) *)\n"
31825 " Path \"/dev/sdb2\"    (* not a device *)\n"
31826 "\n"
31827 msgstr ""
31828
31829 #. type: textblock
31830 #: ../src/guestfs.pod:877
31831 msgid ""
31832 "As you can see there are still problems to resolve even with this "
31833 "representation.  Also consider how it might work in guestfish."
31834 msgstr ""
31835
31836 #. type: =head2
31837 #: ../src/guestfs.pod:882
31838 msgid "KEYS AND PASSPHRASES"
31839 msgstr ""
31840
31841 #. type: textblock
31842 #: ../src/guestfs.pod:884
31843 msgid ""
31844 "Certain libguestfs calls take a parameter that contains sensitive key "
31845 "material, passed in as a C string."
31846 msgstr ""
31847
31848 #. type: textblock
31849 #: ../src/guestfs.pod:887
31850 msgid ""
31851 "In the future we would hope to change the libguestfs implementation so that "
31852 "keys are L<mlock(2)>-ed into physical RAM, and thus can never end up in "
31853 "swap.  However this is I<not> done at the moment, because of the complexity "
31854 "of such an implementation."
31855 msgstr ""
31856
31857 #. type: textblock
31858 #: ../src/guestfs.pod:892
31859 msgid ""
31860 "Therefore you should be aware that any key parameter you pass to libguestfs "
31861 "might end up being written out to the swap partition.  If this is a concern, "
31862 "scrub the swap partition or don't use libguestfs on encrypted devices."
31863 msgstr ""
31864
31865 #. type: =head2
31866 #: ../src/guestfs.pod:897
31867 msgid "MULTIPLE HANDLES AND MULTIPLE THREADS"
31868 msgstr ""
31869
31870 #. type: textblock
31871 #: ../src/guestfs.pod:899
31872 msgid ""
31873 "All high-level libguestfs actions are synchronous.  If you want to use "
31874 "libguestfs asynchronously then you must create a thread."
31875 msgstr ""
31876
31877 #. type: textblock
31878 #: ../src/guestfs.pod:902
31879 msgid ""
31880 "Only use the handle from a single thread.  Either use the handle exclusively "
31881 "from one thread, or provide your own mutex so that two threads cannot issue "
31882 "calls on the same handle at the same time."
31883 msgstr ""
31884
31885 #. type: textblock
31886 #: ../src/guestfs.pod:906
31887 msgid ""
31888 "See the graphical program guestfs-browser for one possible architecture for "
31889 "multithreaded programs using libvirt and libguestfs."
31890 msgstr ""
31891
31892 #. type: =head2
31893 #: ../src/guestfs.pod:909
31894 msgid "PATH"
31895 msgstr ""
31896
31897 #. type: textblock
31898 #: ../src/guestfs.pod:911
31899 msgid ""
31900 "Libguestfs needs a supermin appliance, which it finds by looking along an "
31901 "internal path."
31902 msgstr ""
31903
31904 #. type: textblock
31905 #: ../src/guestfs.pod:914
31906 msgid ""
31907 "By default it looks for these in the directory C<$libdir/guestfs> "
31908 "(eg. C</usr/local/lib/guestfs> or C</usr/lib64/guestfs>)."
31909 msgstr ""
31910
31911 #. type: textblock
31912 #: ../src/guestfs.pod:917
31913 msgid ""
31914 "Use L</guestfs_set_path> or set the environment variable L</LIBGUESTFS_PATH> "
31915 "to change the directories that libguestfs will search in.  The value is a "
31916 "colon-separated list of paths.  The current directory is I<not> searched "
31917 "unless the path contains an empty element or C<.>.  For example "
31918 "C<LIBGUESTFS_PATH=:/usr/lib/guestfs> would search the current directory and "
31919 "then C</usr/lib/guestfs>."
31920 msgstr ""
31921
31922 #. type: =head2
31923 #: ../src/guestfs.pod:924
31924 msgid "QEMU WRAPPERS"
31925 msgstr ""
31926
31927 #. type: textblock
31928 #: ../src/guestfs.pod:926
31929 msgid ""
31930 "If you want to compile your own qemu, run qemu from a non-standard location, "
31931 "or pass extra arguments to qemu, then you can write a shell-script wrapper "
31932 "around qemu."
31933 msgstr ""
31934
31935 #. type: textblock
31936 #: ../src/guestfs.pod:930
31937 msgid ""
31938 "There is one important rule to remember: you I<must C<exec qemu>> as the "
31939 "last command in the shell script (so that qemu replaces the shell and "
31940 "becomes the direct child of the libguestfs-using program).  If you don't do "
31941 "this, then the qemu process won't be cleaned up correctly."
31942 msgstr ""
31943
31944 #. type: textblock
31945 #: ../src/guestfs.pod:935
31946 msgid ""
31947 "Here is an example of a wrapper, where I have built my own copy of qemu from "
31948 "source:"
31949 msgstr ""
31950
31951 #. type: verbatim
31952 #: ../src/guestfs.pod:938
31953 #, no-wrap
31954 msgid ""
31955 " #!/bin/sh -\n"
31956 " qemudir=/home/rjones/d/qemu\n"
31957 " exec $qemudir/x86_64-softmmu/qemu-system-x86_64 -L $qemudir/pc-bios "
31958 "\"$@\"\n"
31959 "\n"
31960 msgstr ""
31961
31962 #. type: textblock
31963 #: ../src/guestfs.pod:942
31964 msgid ""
31965 "Save this script as C</tmp/qemu.wrapper> (or wherever), C<chmod +x>, and "
31966 "then use it by setting the LIBGUESTFS_QEMU environment variable.  For "
31967 "example:"
31968 msgstr ""
31969
31970 #. type: verbatim
31971 #: ../src/guestfs.pod:946
31972 #, no-wrap
31973 msgid ""
31974 " LIBGUESTFS_QEMU=/tmp/qemu.wrapper guestfish\n"
31975 "\n"
31976 msgstr ""
31977
31978 #. type: textblock
31979 #: ../src/guestfs.pod:948
31980 msgid ""
31981 "Note that libguestfs also calls qemu with the -help and -version options in "
31982 "order to determine features."
31983 msgstr ""
31984
31985 #. type: =head2
31986 #: ../src/guestfs.pod:951
31987 msgid "ATTACHING TO RUNNING DAEMONS"
31988 msgstr ""
31989
31990 #. type: textblock
31991 #: ../src/guestfs.pod:953
31992 msgid ""
31993 "I<Note (1):> This is B<highly experimental> and has a tendency to eat "
31994 "babies.  Use with caution."
31995 msgstr ""
31996
31997 #. type: textblock
31998 #: ../src/guestfs.pod:956
31999 msgid ""
32000 "I<Note (2):> This section explains how to attach to a running daemon from a "
32001 "low level perspective.  For most users, simply using virt tools such as "
32002 "L<guestfish(1)> with the I<--live> option will \"just work\"."
32003 msgstr ""
32004
32005 #. type: =head3
32006 #: ../src/guestfs.pod:960
32007 msgid "Using guestfs_set_attach_method"
32008 msgstr ""
32009
32010 #. type: textblock
32011 #: ../src/guestfs.pod:962
32012 msgid ""
32013 "By calling L</guestfs_set_attach_method> you can change how the library "
32014 "connects to the C<guestfsd> daemon in L</guestfs_launch> (read "
32015 "L</ARCHITECTURE> for some background)."
32016 msgstr ""
32017
32018 #. type: textblock
32019 #: ../src/guestfs.pod:966
32020 msgid ""
32021 "The normal attach method is C<appliance>, where a small appliance is created "
32022 "containing the daemon, and then the library connects to this."
32023 msgstr ""
32024
32025 #. type: textblock
32026 #: ../src/guestfs.pod:969
32027 msgid ""
32028 "Setting attach method to C<unix:I<path>> (where I<path> is the path of a "
32029 "Unix domain socket) causes L</guestfs_launch> to connect to an existing "
32030 "daemon over the Unix domain socket."
32031 msgstr ""
32032
32033 #. type: textblock
32034 #: ../src/guestfs.pod:973
32035 msgid ""
32036 "The normal use for this is to connect to a running virtual machine that "
32037 "contains a C<guestfsd> daemon, and send commands so you can read and write "
32038 "files inside the live virtual machine."
32039 msgstr ""
32040
32041 #. type: =head3
32042 #: ../src/guestfs.pod:977
32043 msgid "Using guestfs_add_domain with live flag"
32044 msgstr ""
32045
32046 #. type: textblock
32047 #: ../src/guestfs.pod:979
32048 msgid ""
32049 "L</guestfs_add_domain> provides some help for getting the correct attach "
32050 "method.  If you pass the C<live> option to this function, then (if the "
32051 "virtual machine is running) it will examine the libvirt XML looking for a "
32052 "virtio-serial channel to connect to:"
32053 msgstr ""
32054
32055 #. type: verbatim
32056 #: ../src/guestfs.pod:985
32057 #, no-wrap
32058 msgid ""
32059 " <domain>\n"
32060 "   ...\n"
32061 "   <devices>\n"
32062 "     ...\n"
32063 "     <channel type='unix'>\n"
32064 "       <source mode='bind' path='/path/to/socket'/>\n"
32065 "       <target type='virtio' name='org.libguestfs.channel.0'/>\n"
32066 "     </channel>\n"
32067 "     ...\n"
32068 "   </devices>\n"
32069 " </domain>\n"
32070 "\n"
32071 msgstr ""
32072
32073 #. type: textblock
32074 #: ../src/guestfs.pod:997
32075 msgid ""
32076 "L</guestfs_add_domain> extracts C</path/to/socket> and sets the attach "
32077 "method to C<unix:/path/to/socket>."
32078 msgstr ""
32079
32080 #. type: textblock
32081 #: ../src/guestfs.pod:1000
32082 msgid ""
32083 "Some of the libguestfs tools (including guestfish) support a I<--live> "
32084 "option which is passed through to L</guestfs_add_domain> thus allowing you "
32085 "to attach to and modify live virtual machines."
32086 msgstr ""
32087
32088 #. type: textblock
32089 #: ../src/guestfs.pod:1004
32090 msgid ""
32091 "The virtual machine needs to have been set up beforehand so that it has the "
32092 "virtio-serial channel and so that guestfsd is running inside it."
32093 msgstr ""
32094
32095 #. type: =head2
32096 #: ../src/guestfs.pod:1008
32097 msgid "ABI GUARANTEE"
32098 msgstr ""
32099
32100 #. type: textblock
32101 #: ../src/guestfs.pod:1010
32102 msgid ""
32103 "We guarantee the libguestfs ABI (binary interface), for public, high-level "
32104 "actions as outlined in this section.  Although we will deprecate some "
32105 "actions, for example if they get replaced by newer calls, we will keep the "
32106 "old actions forever.  This allows you the developer to program in confidence "
32107 "against the libguestfs API."
32108 msgstr ""
32109
32110 #. type: =head2
32111 #: ../src/guestfs.pod:1016
32112 msgid "BLOCK DEVICE NAMING"
32113 msgstr ""
32114
32115 #. type: textblock
32116 #: ../src/guestfs.pod:1018
32117 msgid ""
32118 "In the kernel there is now quite a profusion of schemata for naming block "
32119 "devices (in this context, by I<block device> I mean a physical or virtual "
32120 "hard drive).  The original Linux IDE driver used names starting with "
32121 "C</dev/hd*>.  SCSI devices have historically used a different naming scheme, "
32122 "C</dev/sd*>.  When the Linux kernel I<libata> driver became a popular "
32123 "replacement for the old IDE driver (particularly for SATA devices) those "
32124 "devices also used the C</dev/sd*> scheme.  Additionally we now have virtual "
32125 "machines with paravirtualized drivers.  This has created several different "
32126 "naming systems, such as C</dev/vd*> for virtio disks and C</dev/xvd*> for "
32127 "Xen PV disks."
32128 msgstr ""
32129
32130 #. type: textblock
32131 #: ../src/guestfs.pod:1030
32132 msgid ""
32133 "As discussed above, libguestfs uses a qemu appliance running an embedded "
32134 "Linux kernel to access block devices.  We can run a variety of appliances "
32135 "based on a variety of Linux kernels."
32136 msgstr ""
32137
32138 #. type: textblock
32139 #: ../src/guestfs.pod:1034
32140 msgid ""
32141 "This causes a problem for libguestfs because many API calls use device or "
32142 "partition names.  Working scripts and the recipe (example) scripts that we "
32143 "make available over the internet could fail if the naming scheme changes."
32144 msgstr ""
32145
32146 #. type: textblock
32147 #: ../src/guestfs.pod:1039
32148 msgid ""
32149 "Therefore libguestfs defines C</dev/sd*> as the I<standard naming scheme>.  "
32150 "Internally C</dev/sd*> names are translated, if necessary, to other names as "
32151 "required.  For example, under RHEL 5 which uses the C</dev/hd*> scheme, any "
32152 "device parameter C</dev/sda2> is translated to C</dev/hda2> transparently."
32153 msgstr ""
32154
32155 #. type: textblock
32156 #: ../src/guestfs.pod:1045
32157 msgid ""
32158 "Note that this I<only> applies to parameters.  The L</guestfs_list_devices>, "
32159 "L</guestfs_list_partitions> and similar calls return the true names of the "
32160 "devices and partitions as known to the appliance."
32161 msgstr ""
32162
32163 #. type: =head3
32164 #: ../src/guestfs.pod:1050
32165 msgid "ALGORITHM FOR BLOCK DEVICE NAME TRANSLATION"
32166 msgstr ""
32167
32168 #. type: textblock
32169 #: ../src/guestfs.pod:1052
32170 msgid ""
32171 "Usually this translation is transparent.  However in some (very rare)  cases "
32172 "you may need to know the exact algorithm.  Such cases include where you use "
32173 "L</guestfs_config> to add a mixture of virtio and IDE devices to the "
32174 "qemu-based appliance, so have a mixture of C</dev/sd*> and C</dev/vd*> "
32175 "devices."
32176 msgstr ""
32177
32178 #. type: textblock
32179 #: ../src/guestfs.pod:1058
32180 msgid ""
32181 "The algorithm is applied only to I<parameters> which are known to be either "
32182 "device or partition names.  Return values from functions such as "
32183 "L</guestfs_list_devices> are never changed."
32184 msgstr ""
32185
32186 #. type: textblock
32187 #: ../src/guestfs.pod:1066
32188 msgid "Is the string a parameter which is a device or partition name?"
32189 msgstr ""
32190
32191 #. type: textblock
32192 #: ../src/guestfs.pod:1070
32193 msgid "Does the string begin with C</dev/sd>?"
32194 msgstr ""
32195
32196 #. type: textblock
32197 #: ../src/guestfs.pod:1074
32198 msgid ""
32199 "Does the named device exist? If so, we use that device.  However if I<not> "
32200 "then we continue with this algorithm."
32201 msgstr ""
32202
32203 #. type: textblock
32204 #: ../src/guestfs.pod:1079
32205 msgid "Replace initial C</dev/sd> string with C</dev/hd>."
32206 msgstr ""
32207
32208 #. type: textblock
32209 #: ../src/guestfs.pod:1081
32210 msgid "For example, change C</dev/sda2> to C</dev/hda2>."
32211 msgstr ""
32212
32213 #. type: textblock
32214 #: ../src/guestfs.pod:1083
32215 msgid "If that named device exists, use it.  If not, continue."
32216 msgstr ""
32217
32218 #. type: textblock
32219 #: ../src/guestfs.pod:1087
32220 msgid "Replace initial C</dev/sd> string with C</dev/vd>."
32221 msgstr ""
32222
32223 #. type: textblock
32224 #: ../src/guestfs.pod:1089
32225 msgid "If that named device exists, use it.  If not, return an error."
32226 msgstr ""
32227
32228 #. type: =head3
32229 #: ../src/guestfs.pod:1093
32230 msgid "PORTABILITY CONCERNS WITH BLOCK DEVICE NAMING"
32231 msgstr ""
32232
32233 #. type: textblock
32234 #: ../src/guestfs.pod:1095
32235 msgid ""
32236 "Although the standard naming scheme and automatic translation is useful for "
32237 "simple programs and guestfish scripts, for larger programs it is best not to "
32238 "rely on this mechanism."
32239 msgstr ""
32240
32241 #. type: textblock
32242 #: ../src/guestfs.pod:1099
32243 msgid ""
32244 "Where possible for maximum future portability programs using libguestfs "
32245 "should use these future-proof techniques:"
32246 msgstr ""
32247
32248 #. type: textblock
32249 #: ../src/guestfs.pod:1106
32250 msgid ""
32251 "Use L</guestfs_list_devices> or L</guestfs_list_partitions> to list actual "
32252 "device names, and then use those names directly."
32253 msgstr ""
32254
32255 #. type: textblock
32256 #: ../src/guestfs.pod:1109
32257 msgid "Since those device names exist by definition, they will never be translated."
32258 msgstr ""
32259
32260 #. type: textblock
32261 #: ../src/guestfs.pod:1114
32262 msgid ""
32263 "Use higher level ways to identify filesystems, such as LVM names, UUIDs and "
32264 "filesystem labels."
32265 msgstr ""
32266
32267 #. type: =head1
32268 #: ../src/guestfs.pod:1119
32269 msgid "SECURITY"
32270 msgstr ""
32271
32272 #. type: textblock
32273 #: ../src/guestfs.pod:1121
32274 msgid ""
32275 "This section discusses security implications of using libguestfs, "
32276 "particularly with untrusted or malicious guests or disk images."
32277 msgstr ""
32278
32279 #. type: =head2
32280 #: ../src/guestfs.pod:1124
32281 msgid "GENERAL SECURITY CONSIDERATIONS"
32282 msgstr ""
32283
32284 #. type: textblock
32285 #: ../src/guestfs.pod:1126
32286 msgid ""
32287 "Be careful with any files or data that you download from a guest (by "
32288 "\"download\" we mean not just the L</guestfs_download> command but any "
32289 "command that reads files, filenames, directories or anything else from a "
32290 "disk image).  An attacker could manipulate the data to fool your program "
32291 "into doing the wrong thing.  Consider cases such as:"
32292 msgstr ""
32293
32294 #. type: textblock
32295 #: ../src/guestfs.pod:1136
32296 msgid "the data (file etc) not being present"
32297 msgstr ""
32298
32299 #. type: textblock
32300 #: ../src/guestfs.pod:1140
32301 msgid "being present but empty"
32302 msgstr ""
32303
32304 #. type: textblock
32305 #: ../src/guestfs.pod:1144
32306 msgid "being much larger than normal"
32307 msgstr ""
32308
32309 #. type: textblock
32310 #: ../src/guestfs.pod:1148
32311 msgid "containing arbitrary 8 bit data"
32312 msgstr ""
32313
32314 #. type: textblock
32315 #: ../src/guestfs.pod:1152
32316 msgid "being in an unexpected character encoding"
32317 msgstr ""
32318
32319 #. type: textblock
32320 #: ../src/guestfs.pod:1156
32321 msgid "containing homoglyphs."
32322 msgstr ""
32323
32324 #. type: =head2
32325 #: ../src/guestfs.pod:1160
32326 msgid "SECURITY OF MOUNTING FILESYSTEMS"
32327 msgstr ""
32328
32329 #. type: textblock
32330 #: ../src/guestfs.pod:1162
32331 msgid ""
32332 "When you mount a filesystem under Linux, mistakes in the kernel filesystem "
32333 "(VFS) module can sometimes be escalated into exploits by deliberately "
32334 "creating a malicious, malformed filesystem.  These exploits are very severe "
32335 "for two reasons.  Firstly there are very many filesystem drivers in the "
32336 "kernel, and many of them are infrequently used and not much developer "
32337 "attention has been paid to the code.  Linux userspace helps potential "
32338 "crackers by detecting the filesystem type and automatically choosing the "
32339 "right VFS driver, even if that filesystem type is obscure or unexpected for "
32340 "the administrator.  Secondly, a kernel-level exploit is like a local root "
32341 "exploit (worse in some ways), giving immediate and total access to the "
32342 "system right down to the hardware level."
32343 msgstr ""
32344
32345 #. type: textblock
32346 #: ../src/guestfs.pod:1175
32347 msgid ""
32348 "That explains why you should never mount a filesystem from an untrusted "
32349 "guest on your host kernel.  How about libguestfs? We run a Linux kernel "
32350 "inside a qemu virtual machine, usually running as a non-root user.  The "
32351 "attacker would need to write a filesystem which first exploited the kernel, "
32352 "and then exploited either qemu virtualization (eg. a faulty qemu driver) or "
32353 "the libguestfs protocol, and finally to be as serious as the host kernel "
32354 "exploit it would need to escalate its privileges to root.  This multi-step "
32355 "escalation, performed by a static piece of data, is thought to be extremely "
32356 "hard to do, although we never say 'never' about security issues."
32357 msgstr ""
32358
32359 #. type: textblock
32360 #: ../src/guestfs.pod:1186
32361 msgid ""
32362 "In any case callers can reduce the attack surface by forcing the filesystem "
32363 "type when mounting (use L</guestfs_mount_vfs>)."
32364 msgstr ""
32365
32366 #. type: =head2
32367 #: ../src/guestfs.pod:1189
32368 msgid "PROTOCOL SECURITY"
32369 msgstr ""
32370
32371 #. type: textblock
32372 #: ../src/guestfs.pod:1191
32373 msgid ""
32374 "The protocol is designed to be secure, being based on RFC 4506 (XDR)  with a "
32375 "defined upper message size.  However a program that uses libguestfs must "
32376 "also take care - for example you can write a program that downloads a binary "
32377 "from a disk image and executes it locally, and no amount of protocol "
32378 "security will save you from the consequences."
32379 msgstr ""
32380
32381 #. type: =head2
32382 #: ../src/guestfs.pod:1197
32383 msgid "INSPECTION SECURITY"
32384 msgstr ""
32385
32386 #. type: textblock
32387 #: ../src/guestfs.pod:1199
32388 msgid ""
32389 "Parts of the inspection API (see L</INSPECTION>) return untrusted strings "
32390 "directly from the guest, and these could contain any 8 bit data.  Callers "
32391 "should be careful to escape these before printing them to a structured file "
32392 "(for example, use HTML escaping if creating a web page)."
32393 msgstr ""
32394
32395 #. type: textblock
32396 #: ../src/guestfs.pod:1205
32397 msgid ""
32398 "Guest configuration may be altered in unusual ways by the administrator of "
32399 "the virtual machine, and may not reflect reality (particularly for untrusted "
32400 "or actively malicious guests).  For example we parse the hostname from "
32401 "configuration files like C</etc/sysconfig/network> that we find in the "
32402 "guest, but the guest administrator can easily manipulate these files to "
32403 "provide the wrong hostname."
32404 msgstr ""
32405
32406 #. type: textblock
32407 #: ../src/guestfs.pod:1213
32408 msgid ""
32409 "The inspection API parses guest configuration using two external libraries: "
32410 "Augeas (Linux configuration) and hivex (Windows Registry).  Both are "
32411 "designed to be robust in the face of malicious data, although denial of "
32412 "service attacks are still possible, for example with oversized configuration "
32413 "files."
32414 msgstr ""
32415
32416 #. type: =head2
32417 #: ../src/guestfs.pod:1219
32418 msgid "RUNNING UNTRUSTED GUEST COMMANDS"
32419 msgstr ""
32420
32421 #. type: textblock
32422 #: ../src/guestfs.pod:1221
32423 msgid ""
32424 "Be very cautious about running commands from the guest.  By running a "
32425 "command in the guest, you are giving CPU time to a binary that you do not "
32426 "control, under the same user account as the library, albeit wrapped in qemu "
32427 "virtualization.  More information and alternatives can be found in the "
32428 "section L</RUNNING COMMANDS>."
32429 msgstr ""
32430
32431 #. type: =head2
32432 #: ../src/guestfs.pod:1227
32433 msgid "CVE-2010-3851"
32434 msgstr ""
32435
32436 #. type: textblock
32437 #: ../src/guestfs.pod:1229
32438 msgid "https://bugzilla.redhat.com/642934"
32439 msgstr ""
32440
32441 #. type: textblock
32442 #: ../src/guestfs.pod:1231
32443 msgid ""
32444 "This security bug concerns the automatic disk format detection that qemu "
32445 "does on disk images."
32446 msgstr ""
32447
32448 #. type: textblock
32449 #: ../src/guestfs.pod:1234
32450 msgid ""
32451 "A raw disk image is just the raw bytes, there is no header.  Other disk "
32452 "images like qcow2 contain a special header.  Qemu deals with this by looking "
32453 "for one of the known headers, and if none is found then assuming the disk "
32454 "image must be raw."
32455 msgstr ""
32456
32457 #. type: textblock
32458 #: ../src/guestfs.pod:1239
32459 msgid ""
32460 "This allows a guest which has been given a raw disk image to write some "
32461 "other header.  At next boot (or when the disk image is accessed by "
32462 "libguestfs) qemu would do autodetection and think the disk image format was, "
32463 "say, qcow2 based on the header written by the guest."
32464 msgstr ""
32465
32466 #. type: textblock
32467 #: ../src/guestfs.pod:1244
32468 msgid ""
32469 "This in itself would not be a problem, but qcow2 offers many features, one "
32470 "of which is to allow a disk image to refer to another image (called the "
32471 "\"backing disk\").  It does this by placing the path to the backing disk "
32472 "into the qcow2 header.  This path is not validated and could point to any "
32473 "host file (eg. \"/etc/passwd\").  The backing disk is then exposed through "
32474 "\"holes\" in the qcow2 disk image, which of course is completely under the "
32475 "control of the attacker."
32476 msgstr ""
32477
32478 #. type: textblock
32479 #: ../src/guestfs.pod:1252
32480 msgid "In libguestfs this is rather hard to exploit except under two circumstances:"
32481 msgstr ""
32482
32483 #. type: textblock
32484 #: ../src/guestfs.pod:1259
32485 msgid "You have enabled the network or have opened the disk in write mode."
32486 msgstr ""
32487
32488 #. type: textblock
32489 #: ../src/guestfs.pod:1263
32490 msgid ""
32491 "You are also running untrusted code from the guest (see L</RUNNING "
32492 "COMMANDS>)."
32493 msgstr ""
32494
32495 #. type: textblock
32496 #: ../src/guestfs.pod:1268
32497 msgid ""
32498 "The way to avoid this is to specify the expected disk format when adding "
32499 "disks (the optional C<format> option to L</guestfs_add_drive_opts>).  You "
32500 "should always do this if the disk is raw format, and it's a good idea for "
32501 "other cases too."
32502 msgstr ""
32503
32504 #. type: textblock
32505 #: ../src/guestfs.pod:1273
32506 msgid ""
32507 "For disks added from libvirt using calls like L</guestfs_add_domain>, the "
32508 "format is fetched from libvirt and passed through."
32509 msgstr ""
32510
32511 #. type: textblock
32512 #: ../src/guestfs.pod:1276
32513 msgid ""
32514 "For libguestfs tools, use the I<--format> command line parameter as "
32515 "appropriate."
32516 msgstr ""
32517
32518 #. type: =head1
32519 #: ../src/guestfs.pod:1279
32520 msgid "CONNECTION MANAGEMENT"
32521 msgstr ""
32522
32523 #. type: =head2
32524 #: ../src/guestfs.pod:1281
32525 msgid "guestfs_h *"
32526 msgstr ""
32527
32528 #. type: textblock
32529 #: ../src/guestfs.pod:1283
32530 msgid ""
32531 "C<guestfs_h> is the opaque type representing a connection handle.  Create a "
32532 "handle by calling L</guestfs_create>.  Call L</guestfs_close> to free the "
32533 "handle and release all resources used."
32534 msgstr ""
32535
32536 #. type: textblock
32537 #: ../src/guestfs.pod:1287
32538 msgid ""
32539 "For information on using multiple handles and threads, see the section "
32540 "L</MULTIPLE HANDLES AND MULTIPLE THREADS> above."
32541 msgstr ""
32542
32543 #. type: =head2
32544 #: ../src/guestfs.pod:1290
32545 msgid "guestfs_create"
32546 msgstr ""
32547
32548 #. type: verbatim
32549 #: ../src/guestfs.pod:1292
32550 #, no-wrap
32551 msgid ""
32552 " guestfs_h *guestfs_create (void);\n"
32553 "\n"
32554 msgstr ""
32555
32556 #. type: textblock
32557 #: ../src/guestfs.pod:1294
32558 msgid "Create a connection handle."
32559 msgstr ""
32560
32561 #. type: textblock
32562 #: ../src/guestfs.pod:1296
32563 msgid ""
32564 "On success this returns a non-NULL pointer to a handle.  On error it returns "
32565 "NULL."
32566 msgstr ""
32567
32568 #. type: textblock
32569 #: ../src/guestfs.pod:1299
32570 msgid ""
32571 "You have to \"configure\" the handle after creating it.  This includes "
32572 "calling L</guestfs_add_drive_opts> (or one of the equivalent calls) on the "
32573 "handle at least once."
32574 msgstr ""
32575
32576 #. type: textblock
32577 #: ../src/guestfs.pod:1303
32578 msgid "After configuring the handle, you have to call L</guestfs_launch>."
32579 msgstr ""
32580
32581 #. type: textblock
32582 #: ../src/guestfs.pod:1305
32583 msgid ""
32584 "You may also want to configure error handling for the handle.  See the "
32585 "L</ERROR HANDLING> section below."
32586 msgstr ""
32587
32588 #. type: =head2
32589 #: ../src/guestfs.pod:1308
32590 msgid "guestfs_close"
32591 msgstr ""
32592
32593 #. type: verbatim
32594 #: ../src/guestfs.pod:1310
32595 #, no-wrap
32596 msgid ""
32597 " void guestfs_close (guestfs_h *g);\n"
32598 "\n"
32599 msgstr ""
32600
32601 #. type: textblock
32602 #: ../src/guestfs.pod:1312
32603 msgid "This closes the connection handle and frees up all resources used."
32604 msgstr ""
32605
32606 #. type: textblock
32607 #: ../src/guestfs.pod:1314
32608 msgid ""
32609 "If autosync was set on the handle and the handle was launched, then this "
32610 "implicitly calls various functions to unmount filesystems and sync the "
32611 "disk.  See L</guestfs_set_autosync> for more details."
32612 msgstr ""
32613
32614 #. type: textblock
32615 #: ../src/guestfs.pod:1318
32616 msgid "If a close callback was set on the handle, then it is called."
32617 msgstr ""
32618
32619 #. type: =head1
32620 #: ../src/guestfs.pod:1320
32621 msgid "ERROR HANDLING"
32622 msgstr ""
32623
32624 #. type: textblock
32625 #: ../src/guestfs.pod:1322
32626 msgid ""
32627 "API functions can return errors.  For example, almost all functions that "
32628 "return C<int> will return C<-1> to indicate an error."
32629 msgstr ""
32630
32631 #. type: textblock
32632 #: ../src/guestfs.pod:1325
32633 msgid ""
32634 "Additional information is available for errors: an error message string and "
32635 "optionally an error number (errno) if the thing that failed was a system "
32636 "call."
32637 msgstr ""
32638
32639 #. type: textblock
32640 #: ../src/guestfs.pod:1329
32641 msgid ""
32642 "You can get at the additional information about the last error on the handle "
32643 "by calling L</guestfs_last_error>, L</guestfs_last_errno>, and/or by setting "
32644 "up an error handler with L</guestfs_set_error_handler>."
32645 msgstr ""
32646
32647 #. type: textblock
32648 #: ../src/guestfs.pod:1334
32649 msgid ""
32650 "When the handle is created, a default error handler is installed which "
32651 "prints the error message string to C<stderr>.  For small short-running "
32652 "command line programs it is sufficient to do:"
32653 msgstr ""
32654
32655 #. type: verbatim
32656 #: ../src/guestfs.pod:1338
32657 #, no-wrap
32658 msgid ""
32659 " if (guestfs_launch (g) == -1)\n"
32660 "   exit (EXIT_FAILURE);\n"
32661 "\n"
32662 msgstr ""
32663
32664 #. type: textblock
32665 #: ../src/guestfs.pod:1341
32666 msgid ""
32667 "since the default error handler will ensure that an error message has been "
32668 "printed to C<stderr> before the program exits."
32669 msgstr ""
32670
32671 #. type: textblock
32672 #: ../src/guestfs.pod:1344
32673 msgid ""
32674 "For other programs the caller will almost certainly want to install an "
32675 "alternate error handler or do error handling in-line like this:"
32676 msgstr ""
32677
32678 #. type: verbatim
32679 #: ../src/guestfs.pod:1347
32680 #, no-wrap
32681 msgid ""
32682 " /* This disables the default behaviour of printing errors\n"
32683 "    on stderr. */\n"
32684 " guestfs_set_error_handler (g, NULL, NULL);\n"
32685 " \n"
32686 msgstr ""
32687
32688 #. type: verbatim
32689 #: ../src/guestfs.pod:1351
32690 #, no-wrap
32691 msgid ""
32692 " if (guestfs_launch (g) == -1) {\n"
32693 "   /* Examine the error message and print it etc. */\n"
32694 "   char *msg = guestfs_last_error (g);\n"
32695 "   int errnum = guestfs_last_errno (g);\n"
32696 "   fprintf (stderr, \"%s\", msg);\n"
32697 "   if (errnum != 0)\n"
32698 "     fprintf (stderr, \": %s\", strerror (errnum));\n"
32699 "   fprintf (stderr, \"\\n\");\n"
32700 "   /* ... */\n"
32701 " }\n"
32702 "\n"
32703 msgstr ""
32704
32705 #. type: textblock
32706 #: ../src/guestfs.pod:1362
32707 msgid ""
32708 "Out of memory errors are handled differently.  The default action is to call "
32709 "L<abort(3)>.  If this is undesirable, then you can set a handler using "
32710 "L</guestfs_set_out_of_memory_handler>."
32711 msgstr ""
32712
32713 #. type: textblock
32714 #: ../src/guestfs.pod:1366
32715 msgid ""
32716 "L</guestfs_create> returns C<NULL> if the handle cannot be created, and "
32717 "because there is no handle if this happens there is no way to get additional "
32718 "error information.  However L</guestfs_create> is supposed to be a "
32719 "lightweight operation which can only fail because of insufficient memory (it "
32720 "returns NULL in this case)."
32721 msgstr ""
32722
32723 #. type: =head2
32724 #: ../src/guestfs.pod:1372
32725 msgid "guestfs_last_error"
32726 msgstr ""
32727
32728 #. type: verbatim
32729 #: ../src/guestfs.pod:1374
32730 #, no-wrap
32731 msgid ""
32732 " const char *guestfs_last_error (guestfs_h *g);\n"
32733 "\n"
32734 msgstr ""
32735
32736 #. type: textblock
32737 #: ../src/guestfs.pod:1376
32738 msgid ""
32739 "This returns the last error message that happened on C<g>.  If there has not "
32740 "been an error since the handle was created, then this returns C<NULL>."
32741 msgstr ""
32742
32743 #. type: textblock
32744 #: ../src/guestfs.pod:1380
32745 msgid ""
32746 "The lifetime of the returned string is until the next error occurs, or "
32747 "L</guestfs_close> is called."
32748 msgstr ""
32749
32750 #. type: =head2
32751 #: ../src/guestfs.pod:1383
32752 msgid "guestfs_last_errno"
32753 msgstr ""
32754
32755 #. type: verbatim
32756 #: ../src/guestfs.pod:1385
32757 #, no-wrap
32758 msgid ""
32759 " int guestfs_last_errno (guestfs_h *g);\n"
32760 "\n"
32761 msgstr ""
32762
32763 #. type: textblock
32764 #: ../src/guestfs.pod:1387
32765 msgid "This returns the last error number (errno) that happened on C<g>."
32766 msgstr ""
32767
32768 #. type: textblock
32769 #: ../src/guestfs.pod:1389
32770 msgid "If successful, an errno integer not equal to zero is returned."
32771 msgstr ""
32772
32773 #. type: textblock
32774 #: ../src/guestfs.pod:1391
32775 msgid "If no error, this returns 0.  This call can return 0 in three situations:"
32776 msgstr ""
32777
32778 #. type: textblock
32779 #: ../src/guestfs.pod:1398
32780 msgid "There has not been any error on the handle."
32781 msgstr ""
32782
32783 #. type: textblock
32784 #: ../src/guestfs.pod:1402
32785 msgid ""
32786 "There has been an error but the errno was meaningless.  This corresponds to "
32787 "the case where the error did not come from a failed system call, but for "
32788 "some other reason."
32789 msgstr ""
32790
32791 #. type: textblock
32792 #: ../src/guestfs.pod:1408
32793 msgid ""
32794 "There was an error from a failed system call, but for some reason the errno "
32795 "was not captured and returned.  This usually indicates a bug in libguestfs."
32796 msgstr ""
32797
32798 #. type: textblock
32799 #: ../src/guestfs.pod:1414
32800 msgid ""
32801 "Libguestfs tries to convert the errno from inside the applicance into a "
32802 "corresponding errno for the caller (not entirely trivial: the appliance "
32803 "might be running a completely different operating system from the library "
32804 "and error numbers are not standardized across Un*xen).  If this could not be "
32805 "done, then the error is translated to C<EINVAL>.  In practice this should "
32806 "only happen in very rare circumstances."
32807 msgstr ""
32808
32809 #. type: =head2
32810 #: ../src/guestfs.pod:1422
32811 msgid "guestfs_set_error_handler"
32812 msgstr ""
32813
32814 #. type: verbatim
32815 #: ../src/guestfs.pod:1424
32816 #, no-wrap
32817 msgid ""
32818 " typedef void (*guestfs_error_handler_cb) (guestfs_h *g,\n"
32819 "                                           void *opaque,\n"
32820 "                                           const char *msg);\n"
32821 " void guestfs_set_error_handler (guestfs_h *g,\n"
32822 "                                 guestfs_error_handler_cb cb,\n"
32823 "                                 void *opaque);\n"
32824 "\n"
32825 msgstr ""
32826
32827 #. type: textblock
32828 #: ../src/guestfs.pod:1431
32829 msgid ""
32830 "The callback C<cb> will be called if there is an error.  The parameters "
32831 "passed to the callback are an opaque data pointer and the error message "
32832 "string."
32833 msgstr ""
32834
32835 #. type: textblock
32836 #: ../src/guestfs.pod:1435
32837 msgid ""
32838 "C<errno> is not passed to the callback.  To get that the callback must call "
32839 "L</guestfs_last_errno>."
32840 msgstr ""
32841
32842 #. type: textblock
32843 #: ../src/guestfs.pod:1438
32844 msgid ""
32845 "Note that the message string C<msg> is freed as soon as the callback "
32846 "function returns, so if you want to stash it somewhere you must make your "
32847 "own copy."
32848 msgstr ""
32849
32850 #. type: textblock
32851 #: ../src/guestfs.pod:1442
32852 msgid "The default handler prints messages on C<stderr>."
32853 msgstr ""
32854
32855 #. type: textblock
32856 #: ../src/guestfs.pod:1444
32857 msgid "If you set C<cb> to C<NULL> then I<no> handler is called."
32858 msgstr ""
32859
32860 #. type: =head2
32861 #: ../src/guestfs.pod:1446
32862 msgid "guestfs_get_error_handler"
32863 msgstr ""
32864
32865 #. type: verbatim
32866 #: ../src/guestfs.pod:1448
32867 #, no-wrap
32868 msgid ""
32869 " guestfs_error_handler_cb guestfs_get_error_handler (guestfs_h *g,\n"
32870 "                                                     void **opaque_rtn);\n"
32871 "\n"
32872 msgstr ""
32873
32874 #. type: textblock
32875 #: ../src/guestfs.pod:1451
32876 msgid "Returns the current error handler callback."
32877 msgstr ""
32878
32879 #. type: =head2
32880 #: ../src/guestfs.pod:1453
32881 msgid "guestfs_set_out_of_memory_handler"
32882 msgstr ""
32883
32884 #. type: verbatim
32885 #: ../src/guestfs.pod:1455
32886 #, no-wrap
32887 msgid ""
32888 " typedef void (*guestfs_abort_cb) (void);\n"
32889 " void guestfs_set_out_of_memory_handler (guestfs_h *g,\n"
32890 "                                         guestfs_abort_cb);\n"
32891 "\n"
32892 msgstr ""
32893
32894 #. type: textblock
32895 #: ../src/guestfs.pod:1459
32896 msgid ""
32897 "The callback C<cb> will be called if there is an out of memory situation.  "
32898 "I<Note this callback must not return>."
32899 msgstr ""
32900
32901 #. type: textblock
32902 #: ../src/guestfs.pod:1462
32903 msgid "The default is to call L<abort(3)>."
32904 msgstr ""
32905
32906 #. type: textblock
32907 #: ../src/guestfs.pod:1464
32908 msgid "You cannot set C<cb> to C<NULL>.  You can't ignore out of memory situations."
32909 msgstr ""
32910
32911 #. type: =head2
32912 #: ../src/guestfs.pod:1467
32913 msgid "guestfs_get_out_of_memory_handler"
32914 msgstr ""
32915
32916 #. type: verbatim
32917 #: ../src/guestfs.pod:1469
32918 #, no-wrap
32919 msgid ""
32920 " guestfs_abort_fn guestfs_get_out_of_memory_handler (guestfs_h *g);\n"
32921 "\n"
32922 msgstr ""
32923
32924 #. type: textblock
32925 #: ../src/guestfs.pod:1471
32926 msgid "This returns the current out of memory handler."
32927 msgstr ""
32928
32929 #. type: =head1
32930 #: ../src/guestfs.pod:1473
32931 msgid "API CALLS"
32932 msgstr ""
32933
32934 #. type: =head1
32935 #: ../src/guestfs.pod:1477
32936 msgid "STRUCTURES"
32937 msgstr ""
32938
32939 #. type: textblock
32940 #: ../src/guestfs.pod:1479
32941 msgid "@STRUCTS@"
32942 msgstr ""
32943
32944 #. type: =head1
32945 #: ../src/guestfs.pod:1481
32946 msgid "AVAILABILITY"
32947 msgstr ""
32948
32949 #. type: =head2
32950 #: ../src/guestfs.pod:1483
32951 msgid "GROUPS OF FUNCTIONALITY IN THE APPLIANCE"
32952 msgstr ""
32953
32954 #. type: textblock
32955 #: ../src/guestfs.pod:1485
32956 msgid ""
32957 "Using L</guestfs_available> you can test availability of the following "
32958 "groups of functions.  This test queries the appliance to see if the "
32959 "appliance you are currently using supports the functionality."
32960 msgstr ""
32961
32962 #. type: textblock
32963 #: ../src/guestfs.pod:1490
32964 msgid "@AVAILABILITY@"
32965 msgstr ""
32966
32967 #. type: =head2
32968 #: ../src/guestfs.pod:1492
32969 msgid "GUESTFISH supported COMMAND"
32970 msgstr ""
32971
32972 #. type: textblock
32973 #: ../src/guestfs.pod:1494
32974 msgid ""
32975 "In L<guestfish(3)> there is a handy interactive command C<supported> which "
32976 "prints out the available groups and whether they are supported by this build "
32977 "of libguestfs.  Note however that you have to do C<run> first."
32978 msgstr ""
32979
32980 #. type: =head2
32981 #: ../src/guestfs.pod:1499
32982 msgid "SINGLE CALLS AT COMPILE TIME"
32983 msgstr ""
32984
32985 #. type: textblock
32986 #: ../src/guestfs.pod:1501
32987 msgid ""
32988 "Since version 1.5.8, C<E<lt>guestfs.hE<gt>> defines symbols for each C API "
32989 "function, such as:"
32990 msgstr ""
32991
32992 #. type: verbatim
32993 #: ../src/guestfs.pod:1504
32994 #, no-wrap
32995 msgid ""
32996 " #define LIBGUESTFS_HAVE_DD 1\n"
32997 "\n"
32998 msgstr ""
32999
33000 #. type: textblock
33001 #: ../src/guestfs.pod:1506
33002 msgid "if L</guestfs_dd> is available."
33003 msgstr ""
33004
33005 #. type: textblock
33006 #: ../src/guestfs.pod:1508
33007 msgid ""
33008 "Before version 1.5.8, if you needed to test whether a single libguestfs "
33009 "function is available at compile time, we recommended using build tools such "
33010 "as autoconf or cmake.  For example in autotools you could use:"
33011 msgstr ""
33012
33013 #. type: verbatim
33014 #: ../src/guestfs.pod:1513
33015 #, no-wrap
33016 msgid ""
33017 " AC_CHECK_LIB([guestfs],[guestfs_create])\n"
33018 " AC_CHECK_FUNCS([guestfs_dd])\n"
33019 "\n"
33020 msgstr ""
33021
33022 #. type: textblock
33023 #: ../src/guestfs.pod:1516
33024 msgid ""
33025 "which would result in C<HAVE_GUESTFS_DD> being either defined or not defined "
33026 "in your program."
33027 msgstr ""
33028
33029 #. type: =head2
33030 #: ../src/guestfs.pod:1519
33031 msgid "SINGLE CALLS AT RUN TIME"
33032 msgstr ""
33033
33034 #. type: textblock
33035 #: ../src/guestfs.pod:1521
33036 msgid ""
33037 "Testing at compile time doesn't guarantee that a function really exists in "
33038 "the library.  The reason is that you might be dynamically linked against a "
33039 "previous I<libguestfs.so> (dynamic library)  which doesn't have the call.  "
33040 "This situation unfortunately results in a segmentation fault, which is a "
33041 "shortcoming of the C dynamic linking system itself."
33042 msgstr ""
33043
33044 #. type: textblock
33045 #: ../src/guestfs.pod:1528
33046 msgid ""
33047 "You can use L<dlopen(3)> to test if a function is available at run time, as "
33048 "in this example program (note that you still need the compile time check as "
33049 "well):"
33050 msgstr ""
33051
33052 #. type: verbatim
33053 #: ../src/guestfs.pod:1532
33054 #, no-wrap
33055 msgid ""
33056 " #include <stdio.h>\n"
33057 " #include <stdlib.h>\n"
33058 " #include <unistd.h>\n"
33059 " #include <dlfcn.h>\n"
33060 " #include <guestfs.h>\n"
33061 " \n"
33062 msgstr ""
33063
33064 #. type: verbatim
33065 #: ../src/guestfs.pod:1538
33066 #, no-wrap
33067 msgid ""
33068 " main ()\n"
33069 " {\n"
33070 " #ifdef LIBGUESTFS_HAVE_DD\n"
33071 "   void *dl;\n"
33072 "   int has_function;\n"
33073 " \n"
33074 msgstr ""
33075
33076 #. type: verbatim
33077 #: ../src/guestfs.pod:1544
33078 #, no-wrap
33079 msgid ""
33080 "   /* Test if the function guestfs_dd is really available. */\n"
33081 "   dl = dlopen (NULL, RTLD_LAZY);\n"
33082 "   if (!dl) {\n"
33083 "     fprintf (stderr, \"dlopen: %s\\n\", dlerror ());\n"
33084 "     exit (EXIT_FAILURE);\n"
33085 "   }\n"
33086 "   has_function = dlsym (dl, \"guestfs_dd\") != NULL;\n"
33087 "   dlclose (dl);\n"
33088 " \n"
33089 msgstr ""
33090
33091 #. type: verbatim
33092 #: ../src/guestfs.pod:1553
33093 #, no-wrap
33094 msgid ""
33095 "   if (!has_function)\n"
33096 "     printf (\"this libguestfs.so does NOT have guestfs_dd function\\n\");\n"
33097 "   else {\n"
33098 "     printf (\"this libguestfs.so has guestfs_dd function\\n\");\n"
33099 "     /* Now it's safe to call\n"
33100 "     guestfs_dd (g, \"foo\", \"bar\");\n"
33101 "     */\n"
33102 "   }\n"
33103 " #else\n"
33104 "   printf (\"guestfs_dd function was not found at compile time\\n\");\n"
33105 " #endif\n"
33106 "  }\n"
33107 "\n"
33108 msgstr ""
33109
33110 #. type: textblock
33111 #: ../src/guestfs.pod:1566
33112 msgid ""
33113 "You may think the above is an awful lot of hassle, and it is.  There are "
33114 "other ways outside of the C linking system to ensure that this kind of "
33115 "incompatibility never arises, such as using package versioning:"
33116 msgstr ""
33117
33118 #. type: verbatim
33119 #: ../src/guestfs.pod:1571
33120 #, no-wrap
33121 msgid ""
33122 " Requires: libguestfs >= 1.0.80\n"
33123 "\n"
33124 msgstr ""
33125
33126 #. type: =head1
33127 #: ../src/guestfs.pod:1573
33128 msgid "CALLS WITH OPTIONAL ARGUMENTS"
33129 msgstr ""
33130
33131 #. type: textblock
33132 #: ../src/guestfs.pod:1575
33133 msgid ""
33134 "A recent feature of the API is the introduction of calls which take optional "
33135 "arguments.  In C these are declared 3 ways.  The main way is as a call which "
33136 "takes variable arguments (ie. C<...>), as in this example:"
33137 msgstr ""
33138
33139 #. type: verbatim
33140 #: ../src/guestfs.pod:1580
33141 #, no-wrap
33142 msgid ""
33143 " int guestfs_add_drive_opts (guestfs_h *g, const char *filename, ...);\n"
33144 "\n"
33145 msgstr ""
33146
33147 #. type: textblock
33148 #: ../src/guestfs.pod:1582
33149 msgid ""
33150 "Call this with a list of optional arguments, terminated by C<-1>.  So to "
33151 "call with no optional arguments specified:"
33152 msgstr ""
33153
33154 #. type: verbatim
33155 #: ../src/guestfs.pod:1585
33156 #, no-wrap
33157 msgid ""
33158 " guestfs_add_drive_opts (g, filename, -1);\n"
33159 "\n"
33160 msgstr ""
33161
33162 #. type: textblock
33163 #: ../src/guestfs.pod:1587
33164 msgid "With a single optional argument:"
33165 msgstr ""
33166
33167 #. type: verbatim
33168 #: ../src/guestfs.pod:1589
33169 #, no-wrap
33170 msgid ""
33171 " guestfs_add_drive_opts (g, filename,\n"
33172 "                         GUESTFS_ADD_DRIVE_OPTS_FORMAT, \"qcow2\",\n"
33173 "                         -1);\n"
33174 "\n"
33175 msgstr ""
33176
33177 #. type: textblock
33178 #: ../src/guestfs.pod:1593
33179 msgid "With two:"
33180 msgstr ""
33181
33182 #. type: verbatim
33183 #: ../src/guestfs.pod:1595
33184 #, no-wrap
33185 msgid ""
33186 " guestfs_add_drive_opts (g, filename,\n"
33187 "                         GUESTFS_ADD_DRIVE_OPTS_FORMAT, \"qcow2\",\n"
33188 "                         GUESTFS_ADD_DRIVE_OPTS_READONLY, 1,\n"
33189 "                         -1);\n"
33190 "\n"
33191 msgstr ""
33192
33193 #. type: textblock
33194 #: ../src/guestfs.pod:1600
33195 msgid ""
33196 "and so forth.  Don't forget the terminating C<-1> otherwise Bad Things will "
33197 "happen!"
33198 msgstr ""
33199
33200 #. type: =head2
33201 #: ../src/guestfs.pod:1603
33202 msgid "USING va_list FOR OPTIONAL ARGUMENTS"
33203 msgstr ""
33204
33205 #. type: textblock
33206 #: ../src/guestfs.pod:1605
33207 msgid ""
33208 "The second variant has the same name with the suffix C<_va>, which works the "
33209 "same way but takes a C<va_list>.  See the C manual for details.  For the "
33210 "example function, this is declared:"
33211 msgstr ""
33212
33213 #. type: verbatim
33214 #: ../src/guestfs.pod:1609
33215 #, no-wrap
33216 msgid ""
33217 " int guestfs_add_drive_opts_va (guestfs_h *g, const char *filename,\n"
33218 "                                va_list args);\n"
33219 "\n"
33220 msgstr ""
33221
33222 #. type: =head2
33223 #: ../src/guestfs.pod:1612
33224 msgid "CONSTRUCTING OPTIONAL ARGUMENTS"
33225 msgstr ""
33226
33227 #. type: textblock
33228 #: ../src/guestfs.pod:1614
33229 msgid ""
33230 "The third variant is useful where you need to construct these calls.  You "
33231 "pass in a structure where you fill in the optional fields.  The structure "
33232 "has a bitmask as the first element which you must set to indicate which "
33233 "fields you have filled in.  For our example function the structure and call "
33234 "are declared:"
33235 msgstr ""
33236
33237 #. type: verbatim
33238 #: ../src/guestfs.pod:1620
33239 #, no-wrap
33240 msgid ""
33241 " struct guestfs_add_drive_opts_argv {\n"
33242 "   uint64_t bitmask;\n"
33243 "   int readonly;\n"
33244 "   const char *format;\n"
33245 "   /* ... */\n"
33246 " };\n"
33247 " int guestfs_add_drive_opts_argv (guestfs_h *g, const char *filename,\n"
33248 "              const struct guestfs_add_drive_opts_argv *optargs);\n"
33249 "\n"
33250 msgstr ""
33251
33252 #. type: textblock
33253 #: ../src/guestfs.pod:1629
33254 msgid "You could call it like this:"
33255 msgstr ""
33256
33257 #. type: verbatim
33258 #: ../src/guestfs.pod:1631
33259 #, no-wrap
33260 msgid ""
33261 " struct guestfs_add_drive_opts_argv optargs = {\n"
33262 "   .bitmask = GUESTFS_ADD_DRIVE_OPTS_READONLY_BITMASK |\n"
33263 "              GUESTFS_ADD_DRIVE_OPTS_FORMAT_BITMASK,\n"
33264 "   .readonly = 1,\n"
33265 "   .format = \"qcow2\"\n"
33266 " };\n"
33267 " \n"
33268 msgstr ""
33269
33270 #. type: verbatim
33271 #: ../src/guestfs.pod:1638
33272 #, no-wrap
33273 msgid ""
33274 " guestfs_add_drive_opts_argv (g, filename, &optargs);\n"
33275 "\n"
33276 msgstr ""
33277
33278 #. type: textblock
33279 #: ../src/guestfs.pod:1646
33280 msgid "The C<_BITMASK> suffix on each option name when specifying the bitmask."
33281 msgstr ""
33282
33283 #. type: textblock
33284 #: ../src/guestfs.pod:1651
33285 msgid "You do not need to fill in all fields of the structure."
33286 msgstr ""
33287
33288 #. type: textblock
33289 #: ../src/guestfs.pod:1655
33290 msgid ""
33291 "There must be a one-to-one correspondence between fields of the structure "
33292 "that are filled in, and bits set in the bitmask."
33293 msgstr ""
33294
33295 #. type: =head2
33296 #: ../src/guestfs.pod:1660
33297 msgid "OPTIONAL ARGUMENTS IN OTHER LANGUAGES"
33298 msgstr ""
33299
33300 #. type: textblock
33301 #: ../src/guestfs.pod:1662
33302 msgid ""
33303 "In other languages, optional arguments are expressed in the way that is "
33304 "natural for that language.  We refer you to the language-specific "
33305 "documentation for more details on that."
33306 msgstr ""
33307
33308 #. type: textblock
33309 #: ../src/guestfs.pod:1666
33310 msgid "For guestfish, see L<guestfish(1)/OPTIONAL ARGUMENTS>."
33311 msgstr ""
33312
33313 #. type: =head2
33314 #: ../src/guestfs.pod:1668
33315 msgid "SETTING CALLBACKS TO HANDLE EVENTS"
33316 msgstr ""
33317
33318 #. type: textblock
33319 #: ../src/guestfs.pod:1670
33320 msgid ""
33321 "B<Note:> This section documents the generic event mechanism introduced in "
33322 "libguestfs 1.10, which you should use in new code if possible.  The old "
33323 "functions C<guestfs_set_log_message_callback>, "
33324 "C<guestfs_set_subprocess_quit_callback>, "
33325 "C<guestfs_set_launch_done_callback>, C<guestfs_set_close_callback> and "
33326 "C<guestfs_set_progress_callback> are no longer documented in this manual "
33327 "page.  Because of the ABI guarantee, the old functions continue to work."
33328 msgstr ""
33329
33330 #. type: textblock
33331 #: ../src/guestfs.pod:1679
33332 msgid ""
33333 "Handles generate events when certain things happen, such as log messages "
33334 "being generated, progress messages during long-running operations, or the "
33335 "handle being closed.  The API calls described below let you register a "
33336 "callback to be called when events happen.  You can register multiple "
33337 "callbacks (for the same, different or overlapping sets of events), and "
33338 "individually remove callbacks.  If callbacks are not removed, then they "
33339 "remain in force until the handle is closed."
33340 msgstr ""
33341
33342 #. type: textblock
33343 #: ../src/guestfs.pod:1687
33344 msgid ""
33345 "In the current implementation, events are only generated synchronously: that "
33346 "means that events (and hence callbacks) can only happen while you are in the "
33347 "middle of making another libguestfs call.  The callback is called in the "
33348 "same thread."
33349 msgstr ""
33350
33351 #. type: textblock
33352 #: ../src/guestfs.pod:1692
33353 msgid ""
33354 "Events may contain a payload, usually nothing (void), an array of 64 bit "
33355 "unsigned integers, or a message buffer.  Payloads are discussed later on."
33356 msgstr ""
33357
33358 #. type: =head3
33359 #: ../src/guestfs.pod:1696
33360 msgid "CLASSES OF EVENTS"
33361 msgstr ""
33362
33363 #. type: =item
33364 #: ../src/guestfs.pod:1700
33365 msgid "GUESTFS_EVENT_CLOSE (payload type: void)"
33366 msgstr ""
33367
33368 #. type: textblock
33369 #: ../src/guestfs.pod:1703
33370 msgid ""
33371 "The callback function will be called while the handle is being closed "
33372 "(synchronously from L</guestfs_close>)."
33373 msgstr ""
33374
33375 #. type: textblock
33376 #: ../src/guestfs.pod:1706
33377 msgid ""
33378 "Note that libguestfs installs an L<atexit(3)> handler to try to clean up "
33379 "handles that are open when the program exits.  This means that this callback "
33380 "might be called indirectly from L<exit(3)>, which can cause unexpected "
33381 "problems in higher-level languages (eg. if your HLL interpreter has already "
33382 "been cleaned up by the time this is called, and if your callback then jumps "
33383 "into some HLL function)."
33384 msgstr ""
33385
33386 #. type: textblock
33387 #: ../src/guestfs.pod:1713
33388 msgid ""
33389 "If no callback is registered: the handle is closed without any callback "
33390 "being invoked."
33391 msgstr ""
33392
33393 #. type: =item
33394 #: ../src/guestfs.pod:1716
33395 msgid "GUESTFS_EVENT_SUBPROCESS_QUIT (payload type: void)"
33396 msgstr ""
33397
33398 #. type: textblock
33399 #: ../src/guestfs.pod:1719
33400 msgid ""
33401 "The callback function will be called when the child process quits, either "
33402 "asynchronously or if killed by L</guestfs_kill_subprocess>.  (This "
33403 "corresponds to a transition from any state to the CONFIG state)."
33404 msgstr ""
33405
33406 #. type: textblock
33407 #: ../src/guestfs.pod:1723 ../src/guestfs.pod:1732 ../src/guestfs.pod:1849
33408 msgid "If no callback is registered: the event is ignored."
33409 msgstr ""
33410
33411 #. type: =item
33412 #: ../src/guestfs.pod:1725
33413 msgid "GUESTFS_EVENT_LAUNCH_DONE (payload type: void)"
33414 msgstr ""
33415
33416 #. type: textblock
33417 #: ../src/guestfs.pod:1728
33418 msgid ""
33419 "The callback function will be called when the child process becomes ready "
33420 "first time after it has been launched.  (This corresponds to a transition "
33421 "from LAUNCHING to the READY state)."
33422 msgstr ""
33423
33424 #. type: =item
33425 #: ../src/guestfs.pod:1734
33426 msgid "GUESTFS_EVENT_PROGRESS (payload type: array of 4 x uint64_t)"
33427 msgstr ""
33428
33429 #. type: textblock
33430 #: ../src/guestfs.pod:1737
33431 msgid ""
33432 "Some long-running operations can generate progress messages.  If this "
33433 "callback is registered, then it will be called each time a progress message "
33434 "is generated (usually two seconds after the operation started, and three "
33435 "times per second thereafter until it completes, although the frequency may "
33436 "change in future versions)."
33437 msgstr ""
33438
33439 #. type: textblock
33440 #: ../src/guestfs.pod:1743
33441 msgid ""
33442 "The callback receives in the payload four unsigned 64 bit numbers which are "
33443 "(in order): C<proc_nr>, C<serial>, C<position>, C<total>."
33444 msgstr ""
33445
33446 #. type: textblock
33447 #: ../src/guestfs.pod:1746
33448 msgid ""
33449 "The units of C<total> are not defined, although for some operations C<total> "
33450 "may relate in some way to the amount of data to be transferred (eg. in bytes "
33451 "or megabytes), and C<position> may be the portion which has been "
33452 "transferred."
33453 msgstr ""
33454
33455 #. type: textblock
33456 #: ../src/guestfs.pod:1751
33457 msgid "The only defined and stable parts of the API are:"
33458 msgstr ""
33459
33460 #. type: textblock
33461 #: ../src/guestfs.pod:1757
33462 msgid ""
33463 "The callback can display to the user some type of progress bar or indicator "
33464 "which shows the ratio of C<position>:C<total>."
33465 msgstr ""
33466
33467 #. type: textblock
33468 #: ../src/guestfs.pod:1762
33469 msgid "0 E<lt>= C<position> E<lt>= C<total>"
33470 msgstr ""
33471
33472 #. type: textblock
33473 #: ../src/guestfs.pod:1766
33474 msgid ""
33475 "If any progress notification is sent during a call, then a final progress "
33476 "notification is always sent when C<position> = C<total> (I<unless> the call "
33477 "fails with an error)."
33478 msgstr ""
33479
33480 #. type: textblock
33481 #: ../src/guestfs.pod:1770
33482 msgid ""
33483 "This is to simplify caller code, so callers can easily set the progress "
33484 "indicator to \"100%\" at the end of the operation, without requiring special "
33485 "code to detect this case."
33486 msgstr ""
33487
33488 #. type: textblock
33489 #: ../src/guestfs.pod:1776
33490 msgid ""
33491 "For some calls we are unable to estimate the progress of the call, but we "
33492 "can still generate progress messages to indicate activity.  This is known as "
33493 "\"pulse mode\", and is directly supported by certain progress bar "
33494 "implementations (eg. GtkProgressBar)."
33495 msgstr ""
33496
33497 #. type: textblock
33498 #: ../src/guestfs.pod:1781
33499 msgid ""
33500 "For these calls, zero or more progress messages are generated with "
33501 "C<position = 0> and C<total = 1>, followed by a final message with "
33502 "C<position = total = 1>."
33503 msgstr ""
33504
33505 #. type: textblock
33506 #: ../src/guestfs.pod:1785
33507 msgid ""
33508 "As noted above, if the call fails with an error then the final message may "
33509 "not be generated."
33510 msgstr ""
33511
33512 #. type: textblock
33513 #: ../src/guestfs.pod:1790
33514 msgid ""
33515 "The callback also receives the procedure number (C<proc_nr>) and serial "
33516 "number (C<serial>) of the call.  These are only useful for debugging "
33517 "protocol issues, and the callback can normally ignore them.  The callback "
33518 "may want to print these numbers in error messages or debugging messages."
33519 msgstr ""
33520
33521 #. type: textblock
33522 #: ../src/guestfs.pod:1796
33523 msgid "If no callback is registered: progress messages are discarded."
33524 msgstr ""
33525
33526 #. type: =item
33527 #: ../src/guestfs.pod:1798
33528 msgid "GUESTFS_EVENT_APPLIANCE (payload type: message buffer)"
33529 msgstr ""
33530
33531 #. type: textblock
33532 #: ../src/guestfs.pod:1801
33533 msgid ""
33534 "The callback function is called whenever a log message is generated by qemu, "
33535 "the appliance kernel, guestfsd (daemon), or utility programs."
33536 msgstr ""
33537
33538 #. type: textblock
33539 #: ../src/guestfs.pod:1804
33540 msgid ""
33541 "If the verbose flag (L</guestfs_set_verbose>) is set before launch "
33542 "(L</guestfs_launch>) then additional debug messages are generated."
33543 msgstr ""
33544
33545 #. type: textblock
33546 #: ../src/guestfs.pod:1807 ../src/guestfs.pod:1821
33547 msgid ""
33548 "If no callback is registered: the messages are discarded unless the verbose "
33549 "flag is set in which case they are sent to stderr.  You can override the "
33550 "printing of verbose messages to stderr by setting up a callback."
33551 msgstr ""
33552
33553 #. type: =item
33554 #: ../src/guestfs.pod:1812
33555 msgid "GUESTFS_EVENT_LIBRARY (payload type: message buffer)"
33556 msgstr ""
33557
33558 #. type: textblock
33559 #: ../src/guestfs.pod:1815
33560 msgid ""
33561 "The callback function is called whenever a log message is generated by the "
33562 "library part of libguestfs."
33563 msgstr ""
33564
33565 #. type: textblock
33566 #: ../src/guestfs.pod:1818
33567 msgid ""
33568 "If the verbose flag (L</guestfs_set_verbose>) is set then additional debug "
33569 "messages are generated."
33570 msgstr ""
33571
33572 #. type: =item
33573 #: ../src/guestfs.pod:1826
33574 msgid "GUESTFS_EVENT_TRACE (payload type: message buffer)"
33575 msgstr ""
33576
33577 #. type: textblock
33578 #: ../src/guestfs.pod:1829
33579 msgid ""
33580 "The callback function is called whenever a trace message is generated.  This "
33581 "only applies if the trace flag (L</guestfs_set_trace>) is set."
33582 msgstr ""
33583
33584 #. type: textblock
33585 #: ../src/guestfs.pod:1832
33586 msgid ""
33587 "If no callback is registered: the messages are sent to stderr.  You can "
33588 "override the printing of trace messages to stderr by setting up a callback."
33589 msgstr ""
33590
33591 #. type: =item
33592 #: ../src/guestfs.pod:1836
33593 msgid "GUESTFS_EVENT_ENTER (payload type: function name)"
33594 msgstr ""
33595
33596 #. type: textblock
33597 #: ../src/guestfs.pod:1839
33598 msgid "The callback function is called whenever a libguestfs function is entered."
33599 msgstr ""
33600
33601 #. type: textblock
33602 #: ../src/guestfs.pod:1842
33603 msgid ""
33604 "The payload is a string which contains the name of the function that we are "
33605 "entering (not including C<guestfs_> prefix)."
33606 msgstr ""
33607
33608 #. type: textblock
33609 #: ../src/guestfs.pod:1845
33610 msgid ""
33611 "Note that libguestfs functions can call themselves, so you may see many "
33612 "events from a single call.  A few libguestfs functions do not generate this "
33613 "event."
33614 msgstr ""
33615
33616 #. type: =head3
33617 #: ../src/guestfs.pod:1853
33618 msgid "guestfs_set_event_callback"
33619 msgstr ""
33620
33621 #. type: verbatim
33622 #: ../src/guestfs.pod:1855
33623 #, no-wrap
33624 msgid ""
33625 " int guestfs_set_event_callback (guestfs_h *g,\n"
33626 "                                 guestfs_event_callback cb,\n"
33627 "                                 uint64_t event_bitmask,\n"
33628 "                                 int flags,\n"
33629 "                                 void *opaque);\n"
33630 "\n"
33631 msgstr ""
33632
33633 #. type: textblock
33634 #: ../src/guestfs.pod:1861
33635 msgid ""
33636 "This function registers a callback (C<cb>) for all event classes in the "
33637 "C<event_bitmask>."
33638 msgstr ""
33639
33640 #. type: textblock
33641 #: ../src/guestfs.pod:1864
33642 msgid ""
33643 "For example, to register for all log message events, you could call this "
33644 "function with the bitmask C<GUESTFS_EVENT_APPLIANCE|GUESTFS_EVENT_LIBRARY>.  "
33645 "To register a single callback for all possible classes of events, use "
33646 "C<GUESTFS_EVENT_ALL>."
33647 msgstr ""
33648
33649 #. type: textblock
33650 #: ../src/guestfs.pod:1870
33651 msgid "C<flags> should always be passed as 0."
33652 msgstr ""
33653
33654 #. type: textblock
33655 #: ../src/guestfs.pod:1872
33656 msgid ""
33657 "C<opaque> is an opaque pointer which is passed to the callback.  You can use "
33658 "it for any purpose."
33659 msgstr ""
33660
33661 #. type: textblock
33662 #: ../src/guestfs.pod:1875
33663 msgid ""
33664 "The return value is the event handle (an integer) which you can use to "
33665 "delete the callback (see below)."
33666 msgstr ""
33667
33668 #. type: textblock
33669 #: ../src/guestfs.pod:1878
33670 msgid ""
33671 "If there is an error, this function returns C<-1>, and sets the error in the "
33672 "handle in the usual way (see L</guestfs_last_error> etc.)"
33673 msgstr ""
33674
33675 #. type: textblock
33676 #: ../src/guestfs.pod:1881
33677 msgid ""
33678 "Callbacks remain in effect until they are deleted, or until the handle is "
33679 "closed."
33680 msgstr ""
33681
33682 #. type: textblock
33683 #: ../src/guestfs.pod:1884
33684 msgid ""
33685 "In the case where multiple callbacks are registered for a particular event "
33686 "class, all of the callbacks are called.  The order in which multiple "
33687 "callbacks are called is not defined."
33688 msgstr ""
33689
33690 #. type: =head3
33691 #: ../src/guestfs.pod:1888
33692 msgid "guestfs_delete_event_callback"
33693 msgstr ""
33694
33695 #. type: verbatim
33696 #: ../src/guestfs.pod:1890
33697 #, no-wrap
33698 msgid ""
33699 " void guestfs_delete_event_callback (guestfs_h *g, int event_handle);\n"
33700 "\n"
33701 msgstr ""
33702
33703 #. type: textblock
33704 #: ../src/guestfs.pod:1892
33705 msgid ""
33706 "Delete a callback that was previously registered.  C<event_handle> should be "
33707 "the integer that was returned by a previous call to "
33708 "C<guestfs_set_event_callback> on the same handle."
33709 msgstr ""
33710
33711 #. type: =head3
33712 #: ../src/guestfs.pod:1896
33713 msgid "guestfs_event_callback"
33714 msgstr ""
33715
33716 #. type: verbatim
33717 #: ../src/guestfs.pod:1898
33718 #, no-wrap
33719 msgid ""
33720 " typedef void (*guestfs_event_callback) (\n"
33721 "                  guestfs_h *g,\n"
33722 "                  void *opaque,\n"
33723 "                  uint64_t event,\n"
33724 "                  int event_handle,\n"
33725 "                  int flags,\n"
33726 "                  const char *buf, size_t buf_len,\n"
33727 "                  const uint64_t *array, size_t array_len);\n"
33728 "\n"
33729 msgstr ""
33730
33731 #. type: textblock
33732 #: ../src/guestfs.pod:1907
33733 msgid "This is the type of the event callback function that you have to provide."
33734 msgstr ""
33735
33736 #. type: textblock
33737 #: ../src/guestfs.pod:1910
33738 msgid ""
33739 "The basic parameters are: the handle (C<g>), the opaque user pointer "
33740 "(C<opaque>), the event class (eg. C<GUESTFS_EVENT_PROGRESS>), the event "
33741 "handle, and C<flags> which in the current API you should ignore."
33742 msgstr ""
33743
33744 #. type: textblock
33745 #: ../src/guestfs.pod:1914
33746 msgid ""
33747 "The remaining parameters contain the event payload (if any).  Each event may "
33748 "contain a payload, which usually relates to the event class, but for future "
33749 "proofing your code should be written to handle any payload for any event "
33750 "class."
33751 msgstr ""
33752
33753 #. type: textblock
33754 #: ../src/guestfs.pod:1919
33755 msgid ""
33756 "C<buf> and C<buf_len> contain a message buffer (if C<buf_len == 0>, then "
33757 "there is no message buffer).  Note that this message buffer can contain "
33758 "arbitrary 8 bit data, including NUL bytes."
33759 msgstr ""
33760
33761 #. type: textblock
33762 #: ../src/guestfs.pod:1923
33763 msgid ""
33764 "C<array> and C<array_len> is an array of 64 bit unsigned integers.  At the "
33765 "moment this is only used for progress messages."
33766 msgstr ""
33767
33768 #. type: =head3
33769 #: ../src/guestfs.pod:1926
33770 msgid "EXAMPLE: CAPTURING LOG MESSAGES"
33771 msgstr ""
33772
33773 #. type: textblock
33774 #: ../src/guestfs.pod:1928
33775 msgid ""
33776 "One motivation for the generic event API was to allow GUI programs to "
33777 "capture debug and other messages.  In libguestfs E<le> 1.8 these were sent "
33778 "unconditionally to C<stderr>."
33779 msgstr ""
33780
33781 #. type: textblock
33782 #: ../src/guestfs.pod:1932
33783 msgid ""
33784 "Events associated with log messages are: C<GUESTFS_EVENT_LIBRARY>, "
33785 "C<GUESTFS_EVENT_APPLIANCE> and C<GUESTFS_EVENT_TRACE>.  (Note that error "
33786 "messages are not events; you must capture error messages separately)."
33787 msgstr ""
33788
33789 #. type: textblock
33790 #: ../src/guestfs.pod:1937
33791 msgid ""
33792 "Programs have to set up a callback to capture the classes of events of "
33793 "interest:"
33794 msgstr ""
33795
33796 #. type: verbatim
33797 #: ../src/guestfs.pod:1940
33798 #, no-wrap
33799 msgid ""
33800 " int eh =\n"
33801 "   guestfs_set_event_callback\n"
33802 "     (g, message_callback,\n"
33803 "      GUESTFS_EVENT_LIBRARY|GUESTFS_EVENT_APPLIANCE|\n"
33804 "      GUESTFS_EVENT_TRACE,\n"
33805 "      0, NULL) == -1)\n"
33806 " if (eh == -1) {\n"
33807 "   // handle error in the usual way\n"
33808 " }\n"
33809 "\n"
33810 msgstr ""
33811
33812 #. type: textblock
33813 #: ../src/guestfs.pod:1950
33814 msgid ""
33815 "The callback can then direct messages to the appropriate place.  In this "
33816 "example, messages are directed to syslog:"
33817 msgstr ""
33818
33819 #. type: verbatim
33820 #: ../src/guestfs.pod:1953
33821 #, no-wrap
33822 msgid ""
33823 " static void\n"
33824 " message_callback (\n"
33825 "         guestfs_h *g,\n"
33826 "         void *opaque,\n"
33827 "         uint64_t event,\n"
33828 "         int event_handle,\n"
33829 "         int flags,\n"
33830 "         const char *buf, size_t buf_len,\n"
33831 "         const uint64_t *array, size_t array_len)\n"
33832 " {\n"
33833 "   const int priority = LOG_USER|LOG_INFO;\n"
33834 "   if (buf_len > 0)\n"
33835 "     syslog (priority, \"event 0x%lx: %s\", event, buf);\n"
33836 " }\n"
33837 "\n"
33838 msgstr ""
33839
33840 #. type: =head1
33841 #: ../src/guestfs.pod:1968
33842 msgid "CANCELLING LONG TRANSFERS"
33843 msgstr ""
33844
33845 #. type: textblock
33846 #: ../src/guestfs.pod:1970
33847 msgid ""
33848 "Some operations can be cancelled by the caller while they are in progress.  "
33849 "Currently only operations that involve uploading or downloading data can be "
33850 "cancelled (technically: operations that have C<FileIn> or C<FileOut> "
33851 "parameters in the generator)."
33852 msgstr ""
33853
33854 #. type: =head2
33855 #: ../src/guestfs.pod:1975
33856 msgid "guestfs_user_cancel"
33857 msgstr ""
33858
33859 #. type: verbatim
33860 #: ../src/guestfs.pod:1977
33861 #, no-wrap
33862 msgid ""
33863 " void guestfs_user_cancel (guestfs_h *g);\n"
33864 "\n"
33865 msgstr ""
33866
33867 #. type: textblock
33868 #: ../src/guestfs.pod:1979
33869 msgid "C<guestfs_user_cancel> cancels the current upload or download operation."
33870 msgstr ""
33871
33872 #. type: textblock
33873 #: ../src/guestfs.pod:1982
33874 msgid ""
33875 "Unlike most other libguestfs calls, this function is signal safe and thread "
33876 "safe.  You can call it from a signal handler or from another thread, without "
33877 "needing to do any locking."
33878 msgstr ""
33879
33880 #. type: textblock
33881 #: ../src/guestfs.pod:1986
33882 msgid ""
33883 "The transfer that was in progress (if there is one) will stop shortly "
33884 "afterwards, and will return an error.  The errno (see "
33885 "L</guestfs_last_errno>) is set to C<EINTR>, so you can test for this to find "
33886 "out if the operation was cancelled or failed because of another error."
33887 msgstr ""
33888
33889 #. type: textblock
33890 #: ../src/guestfs.pod:1992
33891 msgid ""
33892 "No cleanup is performed: for example, if a file was being uploaded then "
33893 "after cancellation there may be a partially uploaded file.  It is the "
33894 "caller's responsibility to clean up if necessary."
33895 msgstr ""
33896
33897 #. type: textblock
33898 #: ../src/guestfs.pod:1996
33899 msgid "There are two common places that you might call C<guestfs_user_cancel>."
33900 msgstr ""
33901
33902 #. type: textblock
33903 #: ../src/guestfs.pod:1998
33904 msgid ""
33905 "In an interactive text-based program, you might call it from a C<SIGINT> "
33906 "signal handler so that pressing C<^C> cancels the current operation.  (You "
33907 "also need to call L</guestfs_set_pgroup> so that child processes don't "
33908 "receive the C<^C> signal)."
33909 msgstr ""
33910
33911 #. type: textblock
33912 #: ../src/guestfs.pod:2003
33913 msgid ""
33914 "In a graphical program, when the main thread is displaying a progress bar "
33915 "with a cancel button, wire up the cancel button to call this function."
33916 msgstr ""
33917
33918 #. type: =head1
33919 #: ../src/guestfs.pod:2007
33920 msgid "PRIVATE DATA AREA"
33921 msgstr ""
33922
33923 #. type: textblock
33924 #: ../src/guestfs.pod:2009
33925 msgid ""
33926 "You can attach named pieces of private data to the libguestfs handle, fetch "
33927 "them by name, and walk over them, for the lifetime of the handle.  This is "
33928 "called the private data area and is only available from the C API."
33929 msgstr ""
33930
33931 #. type: textblock
33932 #: ../src/guestfs.pod:2014
33933 msgid "To attach a named piece of data, use the following call:"
33934 msgstr ""
33935
33936 #. type: verbatim
33937 #: ../src/guestfs.pod:2016
33938 #, no-wrap
33939 msgid ""
33940 " void guestfs_set_private (guestfs_h *g, const char *key, void *data);\n"
33941 "\n"
33942 msgstr ""
33943
33944 #. type: textblock
33945 #: ../src/guestfs.pod:2018
33946 msgid ""
33947 "C<key> is the name to associate with this data, and C<data> is an arbitrary "
33948 "pointer (which can be C<NULL>).  Any previous item with the same key is "
33949 "overwritten."
33950 msgstr ""
33951
33952 #. type: textblock
33953 #: ../src/guestfs.pod:2022
33954 msgid ""
33955 "You can use any C<key> you want, but your key should I<not> start with an "
33956 "underscore character.  Keys beginning with an underscore character are "
33957 "reserved for internal libguestfs purposes (eg. for implementing language "
33958 "bindings).  It is recommended that you prefix the key with some unique "
33959 "string to avoid collisions with other users."
33960 msgstr ""
33961
33962 #. type: textblock
33963 #: ../src/guestfs.pod:2028
33964 msgid "To retrieve the pointer, use:"
33965 msgstr ""
33966
33967 #. type: verbatim
33968 #: ../src/guestfs.pod:2030
33969 #, no-wrap
33970 msgid ""
33971 " void *guestfs_get_private (guestfs_h *g, const char *key);\n"
33972 "\n"
33973 msgstr ""
33974
33975 #. type: textblock
33976 #: ../src/guestfs.pod:2032
33977 msgid ""
33978 "This function returns C<NULL> if either no data is found associated with "
33979 "C<key>, or if the user previously set the C<key>'s C<data> pointer to "
33980 "C<NULL>."
33981 msgstr ""
33982
33983 #. type: textblock
33984 #: ../src/guestfs.pod:2036
33985 msgid ""
33986 "Libguestfs does not try to look at or interpret the C<data> pointer in any "
33987 "way.  As far as libguestfs is concerned, it need not be a valid pointer at "
33988 "all.  In particular, libguestfs does I<not> try to free the data when the "
33989 "handle is closed.  If the data must be freed, then the caller must either "
33990 "free it before calling L</guestfs_close> or must set up a close callback to "
33991 "do it (see L</GUESTFS_EVENT_CLOSE>)."
33992 msgstr ""
33993
33994 #. type: textblock
33995 #: ../src/guestfs.pod:2043
33996 msgid "To walk over all entries, use these two functions:"
33997 msgstr ""
33998
33999 #. type: verbatim
34000 #: ../src/guestfs.pod:2045
34001 #, no-wrap
34002 msgid ""
34003 " void *guestfs_first_private (guestfs_h *g, const char **key_rtn);\n"
34004 "\n"
34005 msgstr ""
34006
34007 #. type: verbatim
34008 #: ../src/guestfs.pod:2047
34009 #, no-wrap
34010 msgid ""
34011 " void *guestfs_next_private (guestfs_h *g, const char **key_rtn);\n"
34012 "\n"
34013 msgstr ""
34014
34015 #. type: textblock
34016 #: ../src/guestfs.pod:2049
34017 msgid ""
34018 "C<guestfs_first_private> returns the first key, pointer pair (\"first\" does "
34019 "not have any particular meaning -- keys are not returned in any defined "
34020 "order).  A pointer to the key is returned in C<*key_rtn> and the "
34021 "corresponding data pointer is returned from the function.  C<NULL> is "
34022 "returned if there are no keys stored in the handle."
34023 msgstr ""
34024
34025 #. type: textblock
34026 #: ../src/guestfs.pod:2055
34027 msgid ""
34028 "C<guestfs_next_private> returns the next key, pointer pair.  The return "
34029 "value of this function is also C<NULL> is there are no further entries to "
34030 "return."
34031 msgstr ""
34032
34033 #. type: textblock
34034 #: ../src/guestfs.pod:2059
34035 msgid "Notes about walking over entries:"
34036 msgstr ""
34037
34038 #. type: textblock
34039 #: ../src/guestfs.pod:2065
34040 msgid "You must not call C<guestfs_set_private> while walking over the entries."
34041 msgstr ""
34042
34043 #. type: textblock
34044 #: ../src/guestfs.pod:2070
34045 msgid ""
34046 "The handle maintains an internal iterator which is reset when you call "
34047 "C<guestfs_first_private>.  This internal iterator is invalidated when you "
34048 "call C<guestfs_set_private>."
34049 msgstr ""
34050
34051 #. type: textblock
34052 #: ../src/guestfs.pod:2076
34053 msgid "If you have set the data pointer associated with a key to C<NULL>, ie:"
34054 msgstr ""
34055
34056 #. type: verbatim
34057 #: ../src/guestfs.pod:2078
34058 #, no-wrap
34059 msgid ""
34060 " guestfs_set_private (g, key, NULL);\n"
34061 "\n"
34062 msgstr ""
34063
34064 #. type: textblock
34065 #: ../src/guestfs.pod:2080
34066 msgid "then that C<key> is not returned when walking."
34067 msgstr ""
34068
34069 #. type: textblock
34070 #: ../src/guestfs.pod:2084
34071 msgid ""
34072 "C<*key_rtn> is only valid until the next call to C<guestfs_first_private>, "
34073 "C<guestfs_next_private> or C<guestfs_set_private>."
34074 msgstr ""
34075
34076 #. type: textblock
34077 #: ../src/guestfs.pod:2090
34078 msgid ""
34079 "The following example code shows how to print all keys and data pointers "
34080 "that are associated with the handle C<g>:"
34081 msgstr ""
34082
34083 #. type: verbatim
34084 #: ../src/guestfs.pod:2093
34085 #, no-wrap
34086 msgid ""
34087 " const char *key;\n"
34088 " void *data = guestfs_first_private (g, &key);\n"
34089 " while (data != NULL)\n"
34090 "   {\n"
34091 "     printf (\"key = %s, data = %p\\n\", key, data);\n"
34092 "     data = guestfs_next_private (g, &key);\n"
34093 "   }\n"
34094 "\n"
34095 msgstr ""
34096
34097 #. type: textblock
34098 #: ../src/guestfs.pod:2101
34099 msgid ""
34100 "More commonly you are only interested in keys that begin with an "
34101 "application-specific prefix C<foo_>.  Modify the loop like so:"
34102 msgstr ""
34103
34104 #. type: verbatim
34105 #: ../src/guestfs.pod:2104
34106 #, no-wrap
34107 msgid ""
34108 " const char *key;\n"
34109 " void *data = guestfs_first_private (g, &key);\n"
34110 " while (data != NULL)\n"
34111 "   {\n"
34112 "     if (strncmp (key, \"foo_\", strlen (\"foo_\")) == 0)\n"
34113 "       printf (\"key = %s, data = %p\\n\", key, data);\n"
34114 "     data = guestfs_next_private (g, &key);\n"
34115 "   }\n"
34116 "\n"
34117 msgstr ""
34118
34119 #. type: textblock
34120 #: ../src/guestfs.pod:2113
34121 msgid ""
34122 "If you need to modify keys while walking, then you have to jump back to the "
34123 "beginning of the loop.  For example, to delete all keys prefixed with "
34124 "C<foo_>:"
34125 msgstr ""
34126
34127 #. type: verbatim
34128 #: ../src/guestfs.pod:2117
34129 #, no-wrap
34130 msgid ""
34131 "  const char *key;\n"
34132 "  void *data;\n"
34133 " again:\n"
34134 "  data = guestfs_first_private (g, &key);\n"
34135 "  while (data != NULL)\n"
34136 "    {\n"
34137 "      if (strncmp (key, \"foo_\", strlen (\"foo_\")) == 0)\n"
34138 "        {\n"
34139 "          guestfs_set_private (g, key, NULL);\n"
34140 "          /* note that 'key' pointer is now invalid, and so is\n"
34141 "             the internal iterator */\n"
34142 "          goto again;\n"
34143 "        }\n"
34144 "      data = guestfs_next_private (g, &key);\n"
34145 "    }\n"
34146 "\n"
34147 msgstr ""
34148
34149 #. type: textblock
34150 #: ../src/guestfs.pod:2133
34151 msgid ""
34152 "Note that the above loop is guaranteed to terminate because the keys are "
34153 "being deleted, but other manipulations of keys within the loop might not "
34154 "terminate unless you also maintain an indication of which keys have been "
34155 "visited."
34156 msgstr ""
34157
34158 #. type: =end
34159 #: ../src/guestfs.pod:2138 ../src/guestfs.pod:2143
34160 msgid "html"
34161 msgstr ""
34162
34163 #. type: textblock
34164 #: ../src/guestfs.pod:2140
34165 msgid ""
34166 "<!-- old anchor for the next section --> <a "
34167 "name=\"state_machine_and_low_level_event_api\"/>"
34168 msgstr ""
34169
34170 #. type: =head1
34171 #: ../src/guestfs.pod:2145
34172 msgid "ARCHITECTURE"
34173 msgstr ""
34174
34175 #. type: textblock
34176 #: ../src/guestfs.pod:2147
34177 msgid ""
34178 "Internally, libguestfs is implemented by running an appliance (a special "
34179 "type of small virtual machine) using L<qemu(1)>.  Qemu runs as a child "
34180 "process of the main program."
34181 msgstr ""
34182
34183 #. type: verbatim
34184 #: ../src/guestfs.pod:2151
34185 #, no-wrap
34186 msgid ""
34187 "  ___________________\n"
34188 " /                   \\\n"
34189 " | main program      |\n"
34190 " |                   |\n"
34191 " |                   |           child process / appliance\n"
34192 " |                   |           __________________________\n"
34193 " |                   |          / qemu                     \\\n"
34194 " +-------------------+   RPC    |      +-----------------+ |\n"
34195 " | libguestfs     <--------------------> guestfsd        | |\n"
34196 " |                   |          |      +-----------------+ |\n"
34197 " \\___________________/          |      | Linux kernel    | |\n"
34198 "                                |      +--^--------------+ |\n"
34199 "                                \\_________|________________/\n"
34200 "                                          |\n"
34201 "                                   _______v______\n"
34202 "                                  /              \\\n"
34203 "                                  | Device or    |\n"
34204 "                                  | disk image   |\n"
34205 "                                  \\______________/\n"
34206 "\n"
34207 msgstr ""
34208
34209 #. type: textblock
34210 #: ../src/guestfs.pod:2171
34211 msgid ""
34212 "The library, linked to the main program, creates the child process and hence "
34213 "the appliance in the L</guestfs_launch> function."
34214 msgstr ""
34215
34216 #. type: textblock
34217 #: ../src/guestfs.pod:2174
34218 msgid ""
34219 "Inside the appliance is a Linux kernel and a complete stack of userspace "
34220 "tools (such as LVM and ext2 programs) and a small controlling daemon called "
34221 "L</guestfsd>.  The library talks to L</guestfsd> using remote procedure "
34222 "calls (RPC).  There is a mostly one-to-one correspondence between libguestfs "
34223 "API calls and RPC calls to the daemon.  Lastly the disk image(s) are "
34224 "attached to the qemu process which translates device access by the "
34225 "appliance's Linux kernel into accesses to the image."
34226 msgstr ""
34227
34228 #. type: textblock
34229 #: ../src/guestfs.pod:2183
34230 msgid ""
34231 "A common misunderstanding is that the appliance \"is\" the virtual machine.  "
34232 "Although the disk image you are attached to might also be used by some "
34233 "virtual machine, libguestfs doesn't know or care about this.  (But you will "
34234 "care if both libguestfs's qemu process and your virtual machine are trying "
34235 "to update the disk image at the same time, since these usually results in "
34236 "massive disk corruption)."
34237 msgstr ""
34238
34239 #. type: =head1
34240 #: ../src/guestfs.pod:2190
34241 msgid "STATE MACHINE"
34242 msgstr ""
34243
34244 #. type: textblock
34245 #: ../src/guestfs.pod:2192
34246 msgid "libguestfs uses a state machine to model the child process:"
34247 msgstr ""
34248
34249 #. type: verbatim
34250 #: ../src/guestfs.pod:2194
34251 #, no-wrap
34252 msgid ""
34253 "                         |\n"
34254 "                    guestfs_create\n"
34255 "                         |\n"
34256 "                         |\n"
34257 "                     ____V_____\n"
34258 "                    /          \\\n"
34259 "                    |  CONFIG  |\n"
34260 "                    \\__________/\n"
34261 "                     ^ ^   ^  \\\n"
34262 "                    /  |    \\  \\ guestfs_launch\n"
34263 "                   /   |    _\\__V______\n"
34264 "                  /    |   /           \\\n"
34265 "                 /     |   | LAUNCHING |\n"
34266 "                /      |   \\___________/\n"
34267 "               /       |       /\n"
34268 "              /        |  guestfs_launch\n"
34269 "             /         |     /\n"
34270 "    ______  /        __|____V\n"
34271 "   /      \\ ------> /        \\\n"
34272 "   | BUSY |         | READY  |\n"
34273 "   \\______/ <------ \\________/\n"
34274 "\n"
34275 msgstr ""
34276
34277 #. type: textblock
34278 #: ../src/guestfs.pod:2216
34279 msgid ""
34280 "The normal transitions are (1) CONFIG (when the handle is created, but there "
34281 "is no child process), (2) LAUNCHING (when the child process is booting up), "
34282 "(3) alternating between READY and BUSY as commands are issued to, and "
34283 "carried out by, the child process."
34284 msgstr ""
34285
34286 #. type: textblock
34287 #: ../src/guestfs.pod:2221
34288 msgid ""
34289 "The guest may be killed by L</guestfs_kill_subprocess>, or may die "
34290 "asynchronously at any time (eg. due to some internal error), and that causes "
34291 "the state to transition back to CONFIG."
34292 msgstr ""
34293
34294 #. type: textblock
34295 #: ../src/guestfs.pod:2225
34296 msgid ""
34297 "Configuration commands for qemu such as L</guestfs_add_drive> can only be "
34298 "issued when in the CONFIG state."
34299 msgstr ""
34300
34301 #. type: textblock
34302 #: ../src/guestfs.pod:2228
34303 msgid ""
34304 "The API offers one call that goes from CONFIG through LAUNCHING to READY.  "
34305 "L</guestfs_launch> blocks until the child process is READY to accept "
34306 "commands (or until some failure or timeout).  L</guestfs_launch> internally "
34307 "moves the state from CONFIG to LAUNCHING while it is running."
34308 msgstr ""
34309
34310 #. type: textblock
34311 #: ../src/guestfs.pod:2234
34312 msgid ""
34313 "API actions such as L</guestfs_mount> can only be issued when in the READY "
34314 "state.  These API calls block waiting for the command to be carried out "
34315 "(ie. the state to transition to BUSY and then back to READY).  There are no "
34316 "non-blocking versions, and no way to issue more than one command per handle "
34317 "at the same time."
34318 msgstr ""
34319
34320 #. type: textblock
34321 #: ../src/guestfs.pod:2240
34322 msgid ""
34323 "Finally, the child process sends asynchronous messages back to the main "
34324 "program, such as kernel log messages.  You can register a callback to "
34325 "receive these messages."
34326 msgstr ""
34327
34328 #. type: =head1
34329 #: ../src/guestfs.pod:2244
34330 msgid "INTERNALS"
34331 msgstr ""
34332
34333 #. type: =head2
34334 #: ../src/guestfs.pod:2246
34335 msgid "APPLIANCE BOOT PROCESS"
34336 msgstr ""
34337
34338 #. type: textblock
34339 #: ../src/guestfs.pod:2248
34340 msgid ""
34341 "This process has evolved and continues to evolve.  The description here "
34342 "corresponds only to the current version of libguestfs and is provided for "
34343 "information only."
34344 msgstr ""
34345
34346 #. type: textblock
34347 #: ../src/guestfs.pod:2252
34348 msgid ""
34349 "In order to follow the stages involved below, enable libguestfs debugging "
34350 "(set the environment variable C<LIBGUESTFS_DEBUG=1>)."
34351 msgstr ""
34352
34353 #. type: =item
34354 #: ../src/guestfs.pod:2257
34355 msgid "Create the appliance"
34356 msgstr ""
34357
34358 #. type: textblock
34359 #: ../src/guestfs.pod:2259
34360 msgid ""
34361 "C<febootstrap-supermin-helper> is invoked to create the kernel, a small "
34362 "initrd and the appliance."
34363 msgstr ""
34364
34365 #. type: textblock
34366 #: ../src/guestfs.pod:2262
34367 msgid ""
34368 "The appliance is cached in C</var/tmp/.guestfs-E<lt>UIDE<gt>> (or in another "
34369 "directory if C<TMPDIR> is set)."
34370 msgstr ""
34371
34372 #. type: textblock
34373 #: ../src/guestfs.pod:2265
34374 msgid ""
34375 "For a complete description of how the appliance is created and cached, read "
34376 "the L<febootstrap(8)> and L<febootstrap-supermin-helper(8)> man pages."
34377 msgstr ""
34378
34379 #. type: =item
34380 #: ../src/guestfs.pod:2269
34381 msgid "Start qemu and boot the kernel"
34382 msgstr ""
34383
34384 #. type: textblock
34385 #: ../src/guestfs.pod:2271
34386 msgid "qemu is invoked to boot the kernel."
34387 msgstr ""
34388
34389 #. type: =item
34390 #: ../src/guestfs.pod:2273
34391 msgid "Run the initrd"
34392 msgstr ""
34393
34394 #. type: textblock
34395 #: ../src/guestfs.pod:2275
34396 msgid ""
34397 "C<febootstrap-supermin-helper> builds a small initrd.  The initrd is not the "
34398 "appliance.  The purpose of the initrd is to load enough kernel modules in "
34399 "order that the appliance itself can be mounted and started."
34400 msgstr ""
34401
34402 #. type: textblock
34403 #: ../src/guestfs.pod:2279
34404 msgid ""
34405 "The initrd is a cpio archive called "
34406 "C</var/tmp/.guestfs-E<lt>UIDE<gt>/initrd>."
34407 msgstr ""
34408
34409 #. type: textblock
34410 #: ../src/guestfs.pod:2282
34411 msgid ""
34412 "When the initrd has started you will see messages showing that kernel "
34413 "modules are being loaded, similar to this:"
34414 msgstr ""
34415
34416 #. type: verbatim
34417 #: ../src/guestfs.pod:2285
34418 #, no-wrap
34419 msgid ""
34420 " febootstrap: ext2 mini initrd starting up\n"
34421 " febootstrap: mounting /sys\n"
34422 " febootstrap: internal insmod libcrc32c.ko\n"
34423 " febootstrap: internal insmod crc32c-intel.ko\n"
34424 "\n"
34425 msgstr ""
34426
34427 #. type: =item
34428 #: ../src/guestfs.pod:2290
34429 msgid "Find and mount the appliance device"
34430 msgstr ""
34431
34432 #. type: textblock
34433 #: ../src/guestfs.pod:2292
34434 msgid ""
34435 "The appliance is a sparse file containing an ext2 filesystem which contains "
34436 "a familiar (although reduced in size) Linux operating system.  It would "
34437 "normally be called C</var/tmp/.guestfs-E<lt>UIDE<gt>/root>."
34438 msgstr ""
34439
34440 #. type: textblock
34441 #: ../src/guestfs.pod:2296
34442 msgid ""
34443 "The regular disks being inspected by libguestfs are the first devices "
34444 "exposed by qemu (eg. as C</dev/vda>)."
34445 msgstr ""
34446
34447 #. type: textblock
34448 #: ../src/guestfs.pod:2299
34449 msgid ""
34450 "The last disk added to qemu is the appliance itself (eg. C</dev/vdb> if "
34451 "there was only one regular disk)."
34452 msgstr ""
34453
34454 #. type: textblock
34455 #: ../src/guestfs.pod:2302
34456 msgid ""
34457 "Thus the final job of the initrd is to locate the appliance disk, mount it, "
34458 "and switch root into the appliance, and run C</init> from the appliance."
34459 msgstr ""
34460
34461 #. type: textblock
34462 #: ../src/guestfs.pod:2306
34463 msgid "If this works successfully you will see messages such as:"
34464 msgstr ""
34465
34466 #. type: verbatim
34467 #: ../src/guestfs.pod:2308
34468 #, no-wrap
34469 msgid ""
34470 " febootstrap: picked /sys/block/vdb/dev as root device\n"
34471 " febootstrap: creating /dev/root as block special 252:16\n"
34472 " febootstrap: mounting new root on /root\n"
34473 " febootstrap: chroot\n"
34474 " Starting /init script ...\n"
34475 "\n"
34476 msgstr ""
34477
34478 #. type: textblock
34479 #: ../src/guestfs.pod:2314
34480 msgid ""
34481 "Note that C<Starting /init script ...> indicates that the appliance's init "
34482 "script is now running."
34483 msgstr ""
34484
34485 #. type: =item
34486 #: ../src/guestfs.pod:2317
34487 msgid "Initialize the appliance"
34488 msgstr ""
34489
34490 #. type: textblock
34491 #: ../src/guestfs.pod:2319
34492 msgid ""
34493 "The appliance itself now initializes itself.  This involves starting certain "
34494 "processes like C<udev>, possibly printing some debug information, and "
34495 "finally running the daemon (C<guestfsd>)."
34496 msgstr ""
34497
34498 #. type: =item
34499 #: ../src/guestfs.pod:2323
34500 msgid "The daemon"
34501 msgstr ""
34502
34503 #. type: textblock
34504 #: ../src/guestfs.pod:2325
34505 msgid ""
34506 "Finally the daemon (C<guestfsd>) runs inside the appliance.  If it runs you "
34507 "should see:"
34508 msgstr ""
34509
34510 #. type: verbatim
34511 #: ../src/guestfs.pod:2328
34512 #, no-wrap
34513 msgid ""
34514 " verbose daemon enabled\n"
34515 "\n"
34516 msgstr ""
34517
34518 #. type: textblock
34519 #: ../src/guestfs.pod:2330
34520 msgid ""
34521 "The daemon expects to see a named virtio-serial port exposed by qemu and "
34522 "connected on the other end to the library."
34523 msgstr ""
34524
34525 #. type: textblock
34526 #: ../src/guestfs.pod:2333
34527 msgid ""
34528 "The daemon connects to this port (and hence to the library) and sends a four "
34529 "byte message C<GUESTFS_LAUNCH_FLAG>, which initiates the communication "
34530 "protocol (see below)."
34531 msgstr ""
34532
34533 #. type: =head2
34534 #: ../src/guestfs.pod:2339
34535 msgid "COMMUNICATION PROTOCOL"
34536 msgstr ""
34537
34538 #. type: textblock
34539 #: ../src/guestfs.pod:2341
34540 msgid ""
34541 "Don't rely on using this protocol directly.  This section documents how it "
34542 "currently works, but it may change at any time."
34543 msgstr ""
34544
34545 #. type: textblock
34546 #: ../src/guestfs.pod:2344
34547 msgid ""
34548 "The protocol used to talk between the library and the daemon running inside "
34549 "the qemu virtual machine is a simple RPC mechanism built on top of XDR (RFC "
34550 "1014, RFC 1832, RFC 4506)."
34551 msgstr ""
34552
34553 #. type: textblock
34554 #: ../src/guestfs.pod:2348
34555 msgid ""
34556 "The detailed format of structures is in C<src/guestfs_protocol.x> (note: "
34557 "this file is automatically generated)."
34558 msgstr ""
34559
34560 #. type: textblock
34561 #: ../src/guestfs.pod:2351
34562 msgid ""
34563 "There are two broad cases, ordinary functions that don't have any C<FileIn> "
34564 "and C<FileOut> parameters, which are handled with very simple request/reply "
34565 "messages.  Then there are functions that have any C<FileIn> or C<FileOut> "
34566 "parameters, which use the same request and reply messages, but they may also "
34567 "be followed by files sent using a chunked encoding."
34568 msgstr ""
34569
34570 #. type: =head3
34571 #: ../src/guestfs.pod:2358
34572 msgid "ORDINARY FUNCTIONS (NO FILEIN/FILEOUT PARAMS)"
34573 msgstr ""
34574
34575 #. type: textblock
34576 #: ../src/guestfs.pod:2360
34577 msgid "For ordinary functions, the request message is:"
34578 msgstr ""
34579
34580 #. type: verbatim
34581 #: ../src/guestfs.pod:2362
34582 #, no-wrap
34583 msgid ""
34584 " total length (header + arguments,\n"
34585 "      but not including the length word itself)\n"
34586 " struct guestfs_message_header (encoded as XDR)\n"
34587 " struct guestfs_<foo>_args (encoded as XDR)\n"
34588 "\n"
34589 msgstr ""
34590
34591 #. type: textblock
34592 #: ../src/guestfs.pod:2367
34593 msgid ""
34594 "The total length field allows the daemon to allocate a fixed size buffer "
34595 "into which it slurps the rest of the message.  As a result, the total length "
34596 "is limited to C<GUESTFS_MESSAGE_MAX> bytes (currently 4MB), which means the "
34597 "effective size of any request is limited to somewhere under this size."
34598 msgstr ""
34599
34600 #. type: textblock
34601 #: ../src/guestfs.pod:2373
34602 msgid ""
34603 "Note also that many functions don't take any arguments, in which case the "
34604 "C<guestfs_I<foo>_args> is completely omitted."
34605 msgstr ""
34606
34607 #. type: textblock
34608 #: ../src/guestfs.pod:2376
34609 msgid ""
34610 "The header contains the procedure number (C<guestfs_proc>) which is how the "
34611 "receiver knows what type of args structure to expect, or none at all."
34612 msgstr ""
34613
34614 #. type: textblock
34615 #: ../src/guestfs.pod:2380
34616 msgid ""
34617 "For functions that take optional arguments, the optional arguments are "
34618 "encoded in the C<guestfs_I<foo>_args> structure in the same way as ordinary "
34619 "arguments.  A bitmask in the header indicates which optional arguments are "
34620 "meaningful.  The bitmask is also checked to see if it contains bits set "
34621 "which the daemon does not know about (eg. if more optional arguments were "
34622 "added in a later version of the library), and this causes the call to be "
34623 "rejected."
34624 msgstr ""
34625
34626 #. type: textblock
34627 #: ../src/guestfs.pod:2388
34628 msgid "The reply message for ordinary functions is:"
34629 msgstr ""
34630
34631 #. type: verbatim
34632 #: ../src/guestfs.pod:2390
34633 #, no-wrap
34634 msgid ""
34635 " total length (header + ret,\n"
34636 "      but not including the length word itself)\n"
34637 " struct guestfs_message_header (encoded as XDR)\n"
34638 " struct guestfs_<foo>_ret (encoded as XDR)\n"
34639 "\n"
34640 msgstr ""
34641
34642 #. type: textblock
34643 #: ../src/guestfs.pod:2395
34644 msgid ""
34645 "As above the C<guestfs_I<foo>_ret> structure may be completely omitted for "
34646 "functions that return no formal return values."
34647 msgstr ""
34648
34649 #. type: textblock
34650 #: ../src/guestfs.pod:2398
34651 msgid "As above the total length of the reply is limited to C<GUESTFS_MESSAGE_MAX>."
34652 msgstr ""
34653
34654 #. type: textblock
34655 #: ../src/guestfs.pod:2401
34656 msgid ""
34657 "In the case of an error, a flag is set in the header, and the reply message "
34658 "is slightly changed:"
34659 msgstr ""
34660
34661 #. type: verbatim
34662 #: ../src/guestfs.pod:2404
34663 #, no-wrap
34664 msgid ""
34665 " total length (header + error,\n"
34666 "      but not including the length word itself)\n"
34667 " struct guestfs_message_header (encoded as XDR)\n"
34668 " struct guestfs_message_error (encoded as XDR)\n"
34669 "\n"
34670 msgstr ""
34671
34672 #. type: textblock
34673 #: ../src/guestfs.pod:2409
34674 msgid ""
34675 "The C<guestfs_message_error> structure contains the error message as a "
34676 "string."
34677 msgstr ""
34678
34679 #. type: =head3
34680 #: ../src/guestfs.pod:2412
34681 msgid "FUNCTIONS THAT HAVE FILEIN PARAMETERS"
34682 msgstr ""
34683
34684 #. type: textblock
34685 #: ../src/guestfs.pod:2414
34686 msgid ""
34687 "A C<FileIn> parameter indicates that we transfer a file I<into> the guest.  "
34688 "The normal request message is sent (see above).  However this is followed by "
34689 "a sequence of file chunks."
34690 msgstr ""
34691
34692 #. type: verbatim
34693 #: ../src/guestfs.pod:2418
34694 #, no-wrap
34695 msgid ""
34696 " total length (header + arguments,\n"
34697 "      but not including the length word itself,\n"
34698 "      and not including the chunks)\n"
34699 " struct guestfs_message_header (encoded as XDR)\n"
34700 " struct guestfs_<foo>_args (encoded as XDR)\n"
34701 " sequence of chunks for FileIn param #0\n"
34702 " sequence of chunks for FileIn param #1 etc.\n"
34703 "\n"
34704 msgstr ""
34705
34706 #. type: textblock
34707 #: ../src/guestfs.pod:2426
34708 msgid "The \"sequence of chunks\" is:"
34709 msgstr ""
34710
34711 #. type: verbatim
34712 #: ../src/guestfs.pod:2428
34713 #, no-wrap
34714 msgid ""
34715 " length of chunk (not including length word itself)\n"
34716 " struct guestfs_chunk (encoded as XDR)\n"
34717 " length of chunk\n"
34718 " struct guestfs_chunk (encoded as XDR)\n"
34719 "   ...\n"
34720 " length of chunk\n"
34721 " struct guestfs_chunk (with data.data_len == 0)\n"
34722 "\n"
34723 msgstr ""
34724
34725 #. type: textblock
34726 #: ../src/guestfs.pod:2436
34727 msgid ""
34728 "The final chunk has the C<data_len> field set to zero.  Additionally a flag "
34729 "is set in the final chunk to indicate either successful completion or early "
34730 "cancellation."
34731 msgstr ""
34732
34733 #. type: textblock
34734 #: ../src/guestfs.pod:2440
34735 msgid ""
34736 "At time of writing there are no functions that have more than one FileIn "
34737 "parameter.  However this is (theoretically) supported, by sending the "
34738 "sequence of chunks for each FileIn parameter one after another (from left to "
34739 "right)."
34740 msgstr ""
34741
34742 #. type: textblock
34743 #: ../src/guestfs.pod:2445
34744 msgid ""
34745 "Both the library (sender) I<and> the daemon (receiver) may cancel the "
34746 "transfer.  The library does this by sending a chunk with a special flag set "
34747 "to indicate cancellation.  When the daemon sees this, it cancels the whole "
34748 "RPC, does I<not> send any reply, and goes back to reading the next request."
34749 msgstr ""
34750
34751 #. type: textblock
34752 #: ../src/guestfs.pod:2451
34753 msgid ""
34754 "The daemon may also cancel.  It does this by writing a special word "
34755 "C<GUESTFS_CANCEL_FLAG> to the socket.  The library listens for this during "
34756 "the transfer, and if it gets it, it will cancel the transfer (it sends a "
34757 "cancel chunk).  The special word is chosen so that even if cancellation "
34758 "happens right at the end of the transfer (after the library has finished "
34759 "writing and has started listening for the reply), the \"spurious\" cancel "
34760 "flag will not be confused with the reply message."
34761 msgstr ""
34762
34763 #. type: textblock
34764 #: ../src/guestfs.pod:2460
34765 msgid ""
34766 "This protocol allows the transfer of arbitrary sized files (no 32 bit "
34767 "limit), and also files where the size is not known in advance (eg. from "
34768 "pipes or sockets).  However the chunks are rather small "
34769 "(C<GUESTFS_MAX_CHUNK_SIZE>), so that neither the library nor the daemon need "
34770 "to keep much in memory."
34771 msgstr ""
34772
34773 #. type: =head3
34774 #: ../src/guestfs.pod:2466
34775 msgid "FUNCTIONS THAT HAVE FILEOUT PARAMETERS"
34776 msgstr ""
34777
34778 #. type: textblock
34779 #: ../src/guestfs.pod:2468
34780 msgid ""
34781 "The protocol for FileOut parameters is exactly the same as for FileIn "
34782 "parameters, but with the roles of daemon and library reversed."
34783 msgstr ""
34784
34785 #. type: verbatim
34786 #: ../src/guestfs.pod:2471
34787 #, no-wrap
34788 msgid ""
34789 " total length (header + ret,\n"
34790 "      but not including the length word itself,\n"
34791 "      and not including the chunks)\n"
34792 " struct guestfs_message_header (encoded as XDR)\n"
34793 " struct guestfs_<foo>_ret (encoded as XDR)\n"
34794 " sequence of chunks for FileOut param #0\n"
34795 " sequence of chunks for FileOut param #1 etc.\n"
34796 "\n"
34797 msgstr ""
34798
34799 #. type: =head3
34800 #: ../src/guestfs.pod:2479
34801 msgid "INITIAL MESSAGE"
34802 msgstr ""
34803
34804 #. type: textblock
34805 #: ../src/guestfs.pod:2481
34806 msgid ""
34807 "When the daemon launches it sends an initial word (C<GUESTFS_LAUNCH_FLAG>) "
34808 "which indicates that the guest and daemon is alive.  This is what "
34809 "L</guestfs_launch> waits for."
34810 msgstr ""
34811
34812 #. type: =head3
34813 #: ../src/guestfs.pod:2485
34814 msgid "PROGRESS NOTIFICATION MESSAGES"
34815 msgstr ""
34816
34817 #. type: textblock
34818 #: ../src/guestfs.pod:2487
34819 msgid ""
34820 "The daemon may send progress notification messages at any time.  These are "
34821 "distinguished by the normal length word being replaced by "
34822 "C<GUESTFS_PROGRESS_FLAG>, followed by a fixed size progress message."
34823 msgstr ""
34824
34825 #. type: textblock
34826 #: ../src/guestfs.pod:2491
34827 msgid ""
34828 "The library turns them into progress callbacks (see "
34829 "L</GUESTFS_EVENT_PROGRESS>) if there is a callback registered, or discards "
34830 "them if not."
34831 msgstr ""
34832
34833 #. type: textblock
34834 #: ../src/guestfs.pod:2495
34835 msgid ""
34836 "The daemon self-limits the frequency of progress messages it sends (see "
34837 "C<daemon/proto.c:notify_progress>).  Not all calls generate progress "
34838 "messages."
34839 msgstr ""
34840
34841 #. type: =head1
34842 #: ../src/guestfs.pod:2499
34843 msgid "LIBGUESTFS VERSION NUMBERS"
34844 msgstr ""
34845
34846 #. type: textblock
34847 #: ../src/guestfs.pod:2501
34848 msgid ""
34849 "Since April 2010, libguestfs has started to make separate development and "
34850 "stable releases, along with corresponding branches in our git repository.  "
34851 "These separate releases can be identified by version number:"
34852 msgstr ""
34853
34854 #. type: verbatim
34855 #: ../src/guestfs.pod:2506
34856 #, no-wrap
34857 msgid ""
34858 "                 even numbers for stable: 1.2.x, 1.4.x, ...\n"
34859 "       .-------- odd numbers for development: 1.3.x, 1.5.x, ...\n"
34860 "       |\n"
34861 "       v\n"
34862 " 1  .  3  .  5\n"
34863 " ^           ^\n"
34864 " |           |\n"
34865 " |           `-------- sub-version\n"
34866 " |\n"
34867 " `------ always '1' because we don't change the ABI\n"
34868 "\n"
34869 msgstr ""
34870
34871 #. type: textblock
34872 #: ../src/guestfs.pod:2517
34873 msgid "Thus \"1.3.5\" is the 5th update to the development branch \"1.3\"."
34874 msgstr ""
34875
34876 #. type: textblock
34877 #: ../src/guestfs.pod:2519
34878 msgid ""
34879 "As time passes we cherry pick fixes from the development branch and backport "
34880 "those into the stable branch, the effect being that the stable branch should "
34881 "get more stable and less buggy over time.  So the stable releases are ideal "
34882 "for people who don't need new features but would just like the software to "
34883 "work."
34884 msgstr ""
34885
34886 #. type: textblock
34887 #: ../src/guestfs.pod:2525
34888 msgid "Our criteria for backporting changes are:"
34889 msgstr ""
34890
34891 #. type: textblock
34892 #: ../src/guestfs.pod:2531
34893 msgid ""
34894 "Documentation changes which don't affect any code are backported unless the "
34895 "documentation refers to a future feature which is not in stable."
34896 msgstr ""
34897
34898 #. type: textblock
34899 #: ../src/guestfs.pod:2537
34900 msgid ""
34901 "Bug fixes which are not controversial, fix obvious problems, and have been "
34902 "well tested are backported."
34903 msgstr ""
34904
34905 #. type: textblock
34906 #: ../src/guestfs.pod:2542
34907 msgid ""
34908 "Simple rearrangements of code which shouldn't affect how it works get "
34909 "backported.  This is so that the code in the two branches doesn't get too "
34910 "far out of step, allowing us to backport future fixes more easily."
34911 msgstr ""
34912
34913 #. type: textblock
34914 #: ../src/guestfs.pod:2548
34915 msgid ""
34916 "We I<don't> backport new features, new APIs, new tools etc, except in one "
34917 "exceptional case: the new feature is required in order to implement an "
34918 "important bug fix."
34919 msgstr ""
34920
34921 #. type: textblock
34922 #: ../src/guestfs.pod:2554
34923 msgid ""
34924 "A new stable branch starts when we think the new features in development are "
34925 "substantial and compelling enough over the current stable branch to warrant "
34926 "it.  When that happens we create new stable and development versions 1.N.0 "
34927 "and 1.(N+1).0 [N is even].  The new dot-oh release won't necessarily be so "
34928 "stable at this point, but by backporting fixes from development, that branch "
34929 "will stabilize over time."
34930 msgstr ""
34931
34932 #. type: =head1
34933 #: ../src/guestfs.pod:2562
34934 msgid "EXTENDING LIBGUESTFS"
34935 msgstr ""
34936
34937 #. type: =head2
34938 #: ../src/guestfs.pod:2564
34939 msgid "ADDING A NEW API ACTION"
34940 msgstr ""
34941
34942 #. type: textblock
34943 #: ../src/guestfs.pod:2566
34944 msgid ""
34945 "Large amounts of boilerplate code in libguestfs (RPC, bindings, "
34946 "documentation) are generated, and this makes it easy to extend the "
34947 "libguestfs API."
34948 msgstr ""
34949
34950 #. type: textblock
34951 #: ../src/guestfs.pod:2570
34952 msgid "To add a new API action there are two changes:"
34953 msgstr ""
34954
34955 #. type: textblock
34956 #: ../src/guestfs.pod:2576
34957 msgid ""
34958 "You need to add a description of the call (name, parameters, return type, "
34959 "tests, documentation) to C<generator/generator_actions.ml>."
34960 msgstr ""
34961
34962 #. type: textblock
34963 #: ../src/guestfs.pod:2579
34964 msgid ""
34965 "There are two sorts of API action, depending on whether the call goes "
34966 "through to the daemon in the appliance, or is serviced entirely by the "
34967 "library (see L</ARCHITECTURE> above).  L</guestfs_sync> is an example of the "
34968 "former, since the sync is done in the appliance.  L</guestfs_set_trace> is "
34969 "an example of the latter, since a trace flag is maintained in the handle and "
34970 "all tracing is done on the library side."
34971 msgstr ""
34972
34973 #. type: textblock
34974 #: ../src/guestfs.pod:2587
34975 msgid ""
34976 "Most new actions are of the first type, and get added to the "
34977 "C<daemon_functions> list.  Each function has a unique procedure number used "
34978 "in the RPC protocol which is assigned to that action when we publish "
34979 "libguestfs and cannot be reused.  Take the latest procedure number and "
34980 "increment it."
34981 msgstr ""
34982
34983 #. type: textblock
34984 #: ../src/guestfs.pod:2593
34985 msgid ""
34986 "For library-only actions of the second type, add to the "
34987 "C<non_daemon_functions> list.  Since these functions are serviced by the "
34988 "library and do not travel over the RPC mechanism to the daemon, these "
34989 "functions do not need a procedure number, and so the procedure number is set "
34990 "to C<-1>."
34991 msgstr ""
34992
34993 #. type: textblock
34994 #: ../src/guestfs.pod:2601
34995 msgid "Implement the action (in C):"
34996 msgstr ""
34997
34998 #. type: textblock
34999 #: ../src/guestfs.pod:2603
35000 msgid ""
35001 "For daemon actions, implement the function C<do_E<lt>nameE<gt>> in the "
35002 "C<daemon/> directory."
35003 msgstr ""
35004
35005 #. type: textblock
35006 #: ../src/guestfs.pod:2606
35007 msgid ""
35008 "For library actions, implement the function C<guestfs__E<lt>nameE<gt>> "
35009 "(note: double underscore) in the C<src/> directory."
35010 msgstr ""
35011
35012 #. type: textblock
35013 #: ../src/guestfs.pod:2609
35014 msgid "In either case, use another function as an example of what to do."
35015 msgstr ""
35016
35017 #. type: textblock
35018 #: ../src/guestfs.pod:2613
35019 msgid "After making these changes, use C<make> to compile."
35020 msgstr ""
35021
35022 #. type: textblock
35023 #: ../src/guestfs.pod:2615
35024 msgid ""
35025 "Note that you don't need to implement the RPC, language bindings, manual "
35026 "pages or anything else.  It's all automatically generated from the OCaml "
35027 "description."
35028 msgstr ""
35029
35030 #. type: =head2
35031 #: ../src/guestfs.pod:2619
35032 msgid "ADDING TESTS FOR AN API ACTION"
35033 msgstr ""
35034
35035 #. type: textblock
35036 #: ../src/guestfs.pod:2621
35037 msgid ""
35038 "You can supply zero or as many tests as you want per API call.  The tests "
35039 "can either be added as part of the API description "
35040 "(C<generator/generator_actions.ml>), or in some rarer cases you may want to "
35041 "drop a script into C<regressions/>.  Note that adding a script to "
35042 "C<regressions/> is slower, so if possible use the first method."
35043 msgstr ""
35044
35045 #. type: textblock
35046 #: ../src/guestfs.pod:2627
35047 msgid ""
35048 "The following describes the test environment used when you add an API test "
35049 "in C<generator_actions.ml>."
35050 msgstr ""
35051
35052 #. type: textblock
35053 #: ../src/guestfs.pod:2630
35054 msgid "The test environment has 4 block devices:"
35055 msgstr ""
35056
35057 #. type: =item
35058 #: ../src/guestfs.pod:2634
35059 msgid "C</dev/sda> 500MB"
35060 msgstr ""
35061
35062 #. type: textblock
35063 #: ../src/guestfs.pod:2636
35064 msgid "General block device for testing."
35065 msgstr ""
35066
35067 #. type: =item
35068 #: ../src/guestfs.pod:2638
35069 msgid "C</dev/sdb> 50MB"
35070 msgstr ""
35071
35072 #. type: textblock
35073 #: ../src/guestfs.pod:2640
35074 msgid ""
35075 "C</dev/sdb1> is an ext2 filesystem used for testing filesystem write "
35076 "operations."
35077 msgstr ""
35078
35079 #. type: =item
35080 #: ../src/guestfs.pod:2643
35081 msgid "C</dev/sdc> 10MB"
35082 msgstr ""
35083
35084 #. type: textblock
35085 #: ../src/guestfs.pod:2645
35086 msgid "Used in a few tests where two block devices are needed."
35087 msgstr ""
35088
35089 #. type: =item
35090 #: ../src/guestfs.pod:2647
35091 msgid "C</dev/sdd>"
35092 msgstr ""
35093
35094 #. type: textblock
35095 #: ../src/guestfs.pod:2649
35096 msgid "ISO with fixed content (see C<images/test.iso>)."
35097 msgstr ""
35098
35099 #. type: textblock
35100 #: ../src/guestfs.pod:2653
35101 msgid ""
35102 "To be able to run the tests in a reasonable amount of time, the libguestfs "
35103 "appliance and block devices are reused between tests.  So don't try testing "
35104 "L</guestfs_kill_subprocess> :-x"
35105 msgstr ""
35106
35107 #. type: textblock
35108 #: ../src/guestfs.pod:2657
35109 msgid ""
35110 "Each test starts with an initial scenario, selected using one of the "
35111 "C<Init*> expressions, described in C<generator/generator_types.ml>.  These "
35112 "initialize the disks mentioned above in a particular way as documented in "
35113 "C<generator_types.ml>.  You should not assume anything about the previous "
35114 "contents of other disks that are not initialized."
35115 msgstr ""
35116
35117 #. type: textblock
35118 #: ../src/guestfs.pod:2663
35119 msgid ""
35120 "You can add a prerequisite clause to any individual test.  This is a "
35121 "run-time check, which, if it fails, causes the test to be skipped.  Useful "
35122 "if testing a command which might not work on all variations of libguestfs "
35123 "builds.  A test that has prerequisite of C<Always> means to run "
35124 "unconditionally."
35125 msgstr ""
35126
35127 #. type: textblock
35128 #: ../src/guestfs.pod:2669
35129 msgid ""
35130 "In addition, packagers can skip individual tests by setting environment "
35131 "variables before running C<make check>."
35132 msgstr ""
35133
35134 #. type: verbatim
35135 #: ../src/guestfs.pod:2672
35136 #, no-wrap
35137 msgid ""
35138 " SKIP_TEST_<CMD>_<NUM>=1\n"
35139 "\n"
35140 msgstr ""
35141
35142 #. type: textblock
35143 #: ../src/guestfs.pod:2674
35144 msgid "eg: C<SKIP_TEST_COMMAND_3=1> skips test #3 of L</guestfs_command>."
35145 msgstr ""
35146
35147 #. type: textblock
35148 #: ../src/guestfs.pod:2676
35149 msgid "or:"
35150 msgstr ""
35151
35152 #. type: verbatim
35153 #: ../src/guestfs.pod:2678
35154 #, no-wrap
35155 msgid ""
35156 " SKIP_TEST_<CMD>=1\n"
35157 "\n"
35158 msgstr ""
35159
35160 #. type: textblock
35161 #: ../src/guestfs.pod:2680
35162 msgid "eg: C<SKIP_TEST_ZEROFREE=1> skips all L</guestfs_zerofree> tests."
35163 msgstr ""
35164
35165 #. type: textblock
35166 #: ../src/guestfs.pod:2682
35167 msgid "Packagers can run only certain tests by setting for example:"
35168 msgstr ""
35169
35170 #. type: verbatim
35171 #: ../src/guestfs.pod:2684
35172 #, no-wrap
35173 msgid ""
35174 " TEST_ONLY=\"vfs_type zerofree\"\n"
35175 "\n"
35176 msgstr ""
35177
35178 #. type: textblock
35179 #: ../src/guestfs.pod:2686
35180 msgid ""
35181 "See C<capitests/tests.c> for more details of how these environment variables "
35182 "work."
35183 msgstr ""
35184
35185 #. type: =head2
35186 #: ../src/guestfs.pod:2689
35187 msgid "DEBUGGING NEW API ACTIONS"
35188 msgstr ""
35189
35190 #. type: textblock
35191 #: ../src/guestfs.pod:2691
35192 msgid "Test new actions work before submitting them."
35193 msgstr ""
35194
35195 #. type: textblock
35196 #: ../src/guestfs.pod:2693
35197 msgid "You can use guestfish to try out new commands."
35198 msgstr ""
35199
35200 #. type: textblock
35201 #: ../src/guestfs.pod:2695
35202 msgid ""
35203 "Debugging the daemon is a problem because it runs inside a minimal "
35204 "environment.  However you can fprintf messages in the daemon to stderr, and "
35205 "they will show up if you use C<guestfish -v>."
35206 msgstr ""
35207
35208 #. type: =head2
35209 #: ../src/guestfs.pod:2699
35210 msgid "FORMATTING CODE AND OTHER CONVENTIONS"
35211 msgstr ""
35212
35213 #. type: textblock
35214 #: ../src/guestfs.pod:2701
35215 msgid ""
35216 "Our C source code generally adheres to some basic code-formatting "
35217 "conventions.  The existing code base is not totally consistent on this "
35218 "front, but we do prefer that contributed code be formatted similarly.  In "
35219 "short, use spaces-not-TABs for indentation, use 2 spaces for each "
35220 "indentation level, and other than that, follow the K&R style."
35221 msgstr ""
35222
35223 #. type: textblock
35224 #: ../src/guestfs.pod:2707
35225 msgid ""
35226 "If you use Emacs, add the following to one of one of your start-up files "
35227 "(e.g., ~/.emacs), to help ensure that you get indentation right:"
35228 msgstr ""
35229
35230 #. type: verbatim
35231 #: ../src/guestfs.pod:2710
35232 #, no-wrap
35233 msgid ""
35234 " ;;; In libguestfs, indent with spaces everywhere (not TABs).\n"
35235 " ;;; Exceptions: Makefile and ChangeLog modes.\n"
35236 " (add-hook 'find-file-hook\n"
35237 "     '(lambda () (if (and buffer-file-name\n"
35238 "                          (string-match \"/libguestfs\\\\>\"\n"
35239 "                              (buffer-file-name))\n"
35240 "                          (not (string-equal mode-name \"Change Log\"))\n"
35241 "                          (not (string-equal mode-name \"Makefile\")))\n"
35242 "                     (setq indent-tabs-mode nil))))\n"
35243 " \n"
35244 msgstr ""
35245
35246 #. type: verbatim
35247 #: ../src/guestfs.pod:2720
35248 #, no-wrap
35249 msgid ""
35250 " ;;; When editing C sources in libguestfs, use this style.\n"
35251 " (defun libguestfs-c-mode ()\n"
35252 "   \"C mode with adjusted defaults for use with libguestfs.\"\n"
35253 "   (interactive)\n"
35254 "   (c-set-style \"K&R\")\n"
35255 "   (setq c-indent-level 2)\n"
35256 "   (setq c-basic-offset 2))\n"
35257 " (add-hook 'c-mode-hook\n"
35258 "           '(lambda () (if (string-match \"/libguestfs\\\\>\"\n"
35259 "                               (buffer-file-name))\n"
35260 "                           (libguestfs-c-mode))))\n"
35261 "\n"
35262 msgstr ""
35263
35264 #. type: textblock
35265 #: ../src/guestfs.pod:2732
35266 msgid "Enable warnings when compiling (and fix any problems this finds):"
35267 msgstr ""
35268
35269 #. type: verbatim
35270 #: ../src/guestfs.pod:2735
35271 #, no-wrap
35272 msgid ""
35273 " ./configure --enable-gcc-warnings\n"
35274 "\n"
35275 msgstr ""
35276
35277 #. type: textblock
35278 #: ../src/guestfs.pod:2737
35279 msgid "Useful targets are:"
35280 msgstr ""
35281
35282 #. type: verbatim
35283 #: ../src/guestfs.pod:2739
35284 #, no-wrap
35285 msgid ""
35286 " make syntax-check  # checks the syntax of the C code\n"
35287 " make check         # runs the test suite\n"
35288 "\n"
35289 msgstr ""
35290
35291 #. type: =head2
35292 #: ../src/guestfs.pod:2742
35293 msgid "DAEMON CUSTOM PRINTF FORMATTERS"
35294 msgstr ""
35295
35296 #. type: textblock
35297 #: ../src/guestfs.pod:2744
35298 msgid ""
35299 "In the daemon code we have created custom printf formatters C<%Q> and C<%R>, "
35300 "which are used to do shell quoting."
35301 msgstr ""
35302
35303 #. type: =item
35304 #: ../src/guestfs.pod:2749
35305 msgid "%Q"
35306 msgstr ""
35307
35308 #. type: textblock
35309 #: ../src/guestfs.pod:2751
35310 msgid ""
35311 "Simple shell quoted string.  Any spaces or other shell characters are "
35312 "escaped for you."
35313 msgstr ""
35314
35315 #. type: =item
35316 #: ../src/guestfs.pod:2754
35317 msgid "%R"
35318 msgstr ""
35319
35320 #. type: textblock
35321 #: ../src/guestfs.pod:2756
35322 msgid ""
35323 "Same as C<%Q> except the string is treated as a path which is prefixed by "
35324 "the sysroot."
35325 msgstr ""
35326
35327 #. type: verbatim
35328 #: ../src/guestfs.pod:2763
35329 #, no-wrap
35330 msgid ""
35331 " asprintf (&cmd, \"cat %R\", path);\n"
35332 "\n"
35333 msgstr ""
35334
35335 #. type: textblock
35336 #: ../src/guestfs.pod:2765
35337 msgid "would produce C<cat /sysroot/some\\ path\\ with\\ spaces>"
35338 msgstr ""
35339
35340 #. type: textblock
35341 #: ../src/guestfs.pod:2767
35342 msgid ""
35343 "I<Note:> Do I<not> use these when you are passing parameters to the "
35344 "C<command{,r,v,rv}()> functions.  These parameters do NOT need to be quoted "
35345 "because they are not passed via the shell (instead, straight to exec).  You "
35346 "probably want to use the C<sysroot_path()> function however."
35347 msgstr ""
35348
35349 #. type: =head2
35350 #: ../src/guestfs.pod:2773
35351 msgid "SUBMITTING YOUR NEW API ACTIONS"
35352 msgstr ""
35353
35354 #. type: textblock
35355 #: ../src/guestfs.pod:2775
35356 msgid ""
35357 "Submit patches to the mailing list: "
35358 "L<http://www.redhat.com/mailman/listinfo/libguestfs> and CC to "
35359 "L<rjones@redhat.com>."
35360 msgstr ""
35361
35362 #. type: =head2
35363 #: ../src/guestfs.pod:2779
35364 msgid "INTERNATIONALIZATION (I18N) SUPPORT"
35365 msgstr ""
35366
35367 #. type: textblock
35368 #: ../src/guestfs.pod:2781
35369 msgid "We support i18n (gettext anyhow) in the library."
35370 msgstr ""
35371
35372 #. type: textblock
35373 #: ../src/guestfs.pod:2783
35374 msgid ""
35375 "However many messages come from the daemon, and we don't translate those at "
35376 "the moment.  One reason is that the appliance generally has all locale files "
35377 "removed from it, because they take up a lot of space.  So we'd have to readd "
35378 "some of those, as well as copying our PO files into the appliance."
35379 msgstr ""
35380
35381 #. type: textblock
35382 #: ../src/guestfs.pod:2789
35383 msgid ""
35384 "Debugging messages are never translated, since they are intended for the "
35385 "programmers."
35386 msgstr ""
35387
35388 #. type: =head2
35389 #: ../src/guestfs.pod:2792
35390 msgid "SOURCE CODE SUBDIRECTORIES"
35391 msgstr ""
35392
35393 #. type: textblock
35394 #: ../src/guestfs.pod:2798
35395 msgid "The libguestfs appliance, build scripts and so on."
35396 msgstr ""
35397
35398 #. type: =item
35399 #: ../src/guestfs.pod:2800
35400 msgid "C<capitests>"
35401 msgstr ""
35402
35403 #. type: textblock
35404 #: ../src/guestfs.pod:2802
35405 msgid "Automated tests of the C API."
35406 msgstr ""
35407
35408 #. type: =item
35409 #: ../src/guestfs.pod:2804
35410 msgid "C<cat>"
35411 msgstr ""
35412
35413 #. type: textblock
35414 #: ../src/guestfs.pod:2806
35415 msgid ""
35416 "The L<virt-cat(1)>, L<virt-filesystems(1)> and L<virt-ls(1)> commands and "
35417 "documentation."
35418 msgstr ""
35419
35420 #. type: =item
35421 #: ../src/guestfs.pod:2809
35422 msgid "C<caution>"
35423 msgstr ""
35424
35425 #. type: textblock
35426 #: ../src/guestfs.pod:2811
35427 msgid ""
35428 "Safety and liveness tests of components that libguestfs depends upon (not of "
35429 "libguestfs itself).  Mainly this is for qemu and the kernel."
35430 msgstr ""
35431
35432 #. type: =item
35433 #: ../src/guestfs.pod:2814
35434 msgid "C<contrib>"
35435 msgstr ""
35436
35437 #. type: textblock
35438 #: ../src/guestfs.pod:2816
35439 msgid "Outside contributions, experimental parts."
35440 msgstr ""
35441
35442 #. type: =item
35443 #: ../src/guestfs.pod:2818
35444 msgid "C<daemon>"
35445 msgstr ""
35446
35447 #. type: textblock
35448 #: ../src/guestfs.pod:2820
35449 msgid ""
35450 "The daemon that runs inside the libguestfs appliance and carries out "
35451 "actions."
35452 msgstr ""
35453
35454 #. type: =item
35455 #: ../src/guestfs.pod:2823
35456 msgid "C<df>"
35457 msgstr ""
35458
35459 #. type: textblock
35460 #: ../src/guestfs.pod:2825
35461 msgid "L<virt-df(1)> command and documentation."
35462 msgstr ""
35463
35464 #. type: =item
35465 #: ../src/guestfs.pod:2827
35466 msgid "C<edit>"
35467 msgstr ""
35468
35469 #. type: textblock
35470 #: ../src/guestfs.pod:2829
35471 msgid "L<virt-edit(1)> command and documentation."
35472 msgstr ""
35473
35474 #. type: =item
35475 #: ../src/guestfs.pod:2831
35476 msgid "C<examples>"
35477 msgstr ""
35478
35479 #. type: textblock
35480 #: ../src/guestfs.pod:2833
35481 msgid "C API example code."
35482 msgstr ""
35483
35484 #. type: =item
35485 #: ../src/guestfs.pod:2835
35486 msgid "C<fish>"
35487 msgstr ""
35488
35489 #. type: textblock
35490 #: ../src/guestfs.pod:2837
35491 msgid ""
35492 "L<guestfish(1)>, the command-line shell, and various shell scripts built on "
35493 "top such as L<virt-copy-in(1)>, L<virt-copy-out(1)>, L<virt-tar-in(1)>, "
35494 "L<virt-tar-out(1)>."
35495 msgstr ""
35496
35497 #. type: =item
35498 #: ../src/guestfs.pod:2841
35499 msgid "C<fuse>"
35500 msgstr ""
35501
35502 #. type: textblock
35503 #: ../src/guestfs.pod:2843
35504 msgid "L<guestmount(1)>, FUSE (userspace filesystem) built on top of libguestfs."
35505 msgstr ""
35506
35507 #. type: =item
35508 #: ../src/guestfs.pod:2845
35509 msgid "C<generator>"
35510 msgstr ""
35511
35512 #. type: textblock
35513 #: ../src/guestfs.pod:2847
35514 msgid ""
35515 "The crucially important generator, used to automatically generate large "
35516 "amounts of boilerplate C code for things like RPC and bindings."
35517 msgstr ""
35518
35519 #. type: =item
35520 #: ../src/guestfs.pod:2850
35521 msgid "C<images>"
35522 msgstr ""
35523
35524 #. type: textblock
35525 #: ../src/guestfs.pod:2852
35526 msgid "Files used by the test suite."
35527 msgstr ""
35528
35529 #. type: textblock
35530 #: ../src/guestfs.pod:2854
35531 msgid "Some \"phony\" guest images which we test against."
35532 msgstr ""
35533
35534 #. type: =item
35535 #: ../src/guestfs.pod:2856
35536 msgid "C<inspector>"
35537 msgstr ""
35538
35539 #. type: textblock
35540 #: ../src/guestfs.pod:2858
35541 msgid "L<virt-inspector(1)>, the virtual machine image inspector."
35542 msgstr ""
35543
35544 #. type: =item
35545 #: ../src/guestfs.pod:2860
35546 msgid "C<logo>"
35547 msgstr ""
35548
35549 #. type: textblock
35550 #: ../src/guestfs.pod:2862
35551 msgid "Logo used on the website.  The fish is called Arthur by the way."
35552 msgstr ""
35553
35554 #. type: =item
35555 #: ../src/guestfs.pod:2864
35556 msgid "C<m4>"
35557 msgstr ""
35558
35559 #. type: textblock
35560 #: ../src/guestfs.pod:2866
35561 msgid "M4 macros used by autoconf."
35562 msgstr ""
35563
35564 #. type: =item
35565 #: ../src/guestfs.pod:2868
35566 msgid "C<po>"
35567 msgstr ""
35568
35569 #. type: textblock
35570 #: ../src/guestfs.pod:2870
35571 msgid "Translations of simple gettext strings."
35572 msgstr ""
35573
35574 #. type: =item
35575 #: ../src/guestfs.pod:2872
35576 msgid "C<po-docs>"
35577 msgstr ""
35578
35579 #. type: textblock
35580 #: ../src/guestfs.pod:2874
35581 msgid ""
35582 "The build infrastructure and PO files for translations of manpages and POD "
35583 "files.  Eventually this will be combined with the C<po> directory, but that "
35584 "is rather complicated."
35585 msgstr ""
35586
35587 #. type: =item
35588 #: ../src/guestfs.pod:2878
35589 msgid "C<regressions>"
35590 msgstr ""
35591
35592 #. type: textblock
35593 #: ../src/guestfs.pod:2880
35594 msgid "Regression tests."
35595 msgstr ""
35596
35597 #. type: =item
35598 #: ../src/guestfs.pod:2882
35599 msgid "C<rescue>"
35600 msgstr ""
35601
35602 #. type: textblock
35603 #: ../src/guestfs.pod:2884
35604 msgid "L<virt-rescue(1)> command and documentation."
35605 msgstr ""
35606
35607 #. type: =item
35608 #: ../src/guestfs.pod:2886
35609 msgid "C<src>"
35610 msgstr ""
35611
35612 #. type: textblock
35613 #: ../src/guestfs.pod:2888
35614 msgid "Source code to the C library."
35615 msgstr ""
35616
35617 #. type: =item
35618 #: ../src/guestfs.pod:2890
35619 msgid "C<tools>"
35620 msgstr ""
35621
35622 #. type: textblock
35623 #: ../src/guestfs.pod:2892
35624 msgid "Command line tools written in Perl (L<virt-resize(1)> and many others)."
35625 msgstr ""
35626
35627 #. type: =item
35628 #: ../src/guestfs.pod:2894
35629 msgid "C<test-tool>"
35630 msgstr ""
35631
35632 #. type: textblock
35633 #: ../src/guestfs.pod:2896
35634 msgid ""
35635 "Test tool for end users to test if their qemu/kernel combination will work "
35636 "with libguestfs."
35637 msgstr ""
35638
35639 #. type: =item
35640 #: ../src/guestfs.pod:2899
35641 msgid "C<csharp>"
35642 msgstr ""
35643
35644 #. type: =item
35645 #: ../src/guestfs.pod:2901
35646 msgid "C<haskell>"
35647 msgstr ""
35648
35649 #. type: =item
35650 #: ../src/guestfs.pod:2903
35651 msgid "C<java>"
35652 msgstr ""
35653
35654 #. type: =item
35655 #: ../src/guestfs.pod:2905
35656 msgid "C<ocaml>"
35657 msgstr ""
35658
35659 #. type: =item
35660 #: ../src/guestfs.pod:2907
35661 msgid "C<php>"
35662 msgstr ""
35663
35664 #. type: =item
35665 #: ../src/guestfs.pod:2909
35666 msgid "C<perl>"
35667 msgstr ""
35668
35669 #. type: =item
35670 #: ../src/guestfs.pod:2911
35671 msgid "C<python>"
35672 msgstr ""
35673
35674 #. type: =item
35675 #: ../src/guestfs.pod:2913
35676 msgid "C<ruby>"
35677 msgstr ""
35678
35679 #. type: textblock
35680 #: ../src/guestfs.pod:2915
35681 msgid "Language bindings."
35682 msgstr ""
35683
35684 #. type: =head2
35685 #: ../src/guestfs.pod:2919
35686 msgid "MAKING A STABLE RELEASE"
35687 msgstr ""
35688
35689 #. type: textblock
35690 #: ../src/guestfs.pod:2921
35691 msgid ""
35692 "When we make a stable release, there are several steps documented here.  See "
35693 "L</LIBGUESTFS VERSION NUMBERS> for general information about the stable "
35694 "branch policy."
35695 msgstr ""
35696
35697 #. type: textblock
35698 #: ../src/guestfs.pod:2929
35699 msgid "Check C<make && make check> works on at least Fedora, Debian and Ubuntu."
35700 msgstr ""
35701
35702 #. type: textblock
35703 #: ../src/guestfs.pod:2934
35704 msgid "Finalize RELEASE-NOTES."
35705 msgstr ""
35706
35707 #. type: textblock
35708 #: ../src/guestfs.pod:2938
35709 msgid "Update ROADMAP."
35710 msgstr ""
35711
35712 #. type: textblock
35713 #: ../src/guestfs.pod:2942
35714 msgid "Run C<src/api-support/update-from-tarballs.sh>."
35715 msgstr ""
35716
35717 #. type: textblock
35718 #: ../src/guestfs.pod:2946
35719 msgid "Push and pull from Transifex."
35720 msgstr ""
35721
35722 #. type: textblock
35723 #: ../src/guestfs.pod:2948
35724 msgid "Run:"
35725 msgstr ""
35726
35727 #. type: verbatim
35728 #: ../src/guestfs.pod:2950
35729 #, no-wrap
35730 msgid ""
35731 " tx push -s\n"
35732 "\n"
35733 msgstr ""
35734
35735 #. type: textblock
35736 #: ../src/guestfs.pod:2952
35737 msgid "to push the latest POT files to Transifex.  Then run:"
35738 msgstr ""
35739
35740 #. type: verbatim
35741 #: ../src/guestfs.pod:2954
35742 #, no-wrap
35743 msgid ""
35744 " ./tx-pull.sh\n"
35745 "\n"
35746 msgstr ""
35747
35748 #. type: textblock
35749 #: ../src/guestfs.pod:2956
35750 msgid "which is a wrapper to pull the latest translated C<*.po> files."
35751 msgstr ""
35752
35753 #. type: textblock
35754 #: ../src/guestfs.pod:2960
35755 msgid ""
35756 "Create new stable and development directories under "
35757 "L<http://libguestfs.org/download>."
35758 msgstr ""
35759
35760 #. type: textblock
35761 #: ../src/guestfs.pod:2965
35762 msgid "Create the branch in git:"
35763 msgstr ""
35764
35765 #. type: verbatim
35766 #: ../src/guestfs.pod:2967
35767 #, no-wrap
35768 msgid ""
35769 " git tag -a 1.XX.0 -m \"Version 1.XX.0 (stable)\"\n"
35770 " git tag -a 1.YY.0 -m \"Version 1.YY.0 (development)\"\n"
35771 " git branch stable-1.XX\n"
35772 " git push origin tag 1.XX.0 1.YY.0 stable-1.XX\n"
35773 "\n"
35774 msgstr ""
35775
35776 #. type: =head1
35777 #: ../src/guestfs.pod:2974
35778 msgid "LIMITS"
35779 msgstr ""
35780
35781 #. type: =head2
35782 #: ../src/guestfs.pod:2976
35783 msgid "PROTOCOL LIMITS"
35784 msgstr ""
35785
35786 #. type: textblock
35787 #: ../src/guestfs.pod:2978
35788 msgid ""
35789 "Internally libguestfs uses a message-based protocol to pass API calls and "
35790 "their responses to and from a small \"appliance\" (see L</INTERNALS> for "
35791 "plenty more detail about this).  The maximum message size used by the "
35792 "protocol is slightly less than 4 MB.  For some API calls you may need to be "
35793 "aware of this limit.  The API calls which may be affected are individually "
35794 "documented, with a link back to this section of the documentation."
35795 msgstr ""
35796
35797 #. type: textblock
35798 #: ../src/guestfs.pod:2986
35799 msgid ""
35800 "A simple call such as L</guestfs_cat> returns its result (the file data) in "
35801 "a simple string.  Because this string is at some point internally encoded as "
35802 "a message, the maximum size that it can return is slightly under 4 MB.  If "
35803 "the requested file is larger than this then you will get an error."
35804 msgstr ""
35805
35806 #. type: textblock
35807 #: ../src/guestfs.pod:2992
35808 msgid ""
35809 "In order to transfer large files into and out of the guest filesystem, you "
35810 "need to use particular calls that support this.  The sections L</UPLOADING> "
35811 "and L</DOWNLOADING> document how to do this."
35812 msgstr ""
35813
35814 #. type: textblock
35815 #: ../src/guestfs.pod:2996
35816 msgid ""
35817 "You might also consider mounting the disk image using our FUSE filesystem "
35818 "support (L<guestmount(1)>)."
35819 msgstr ""
35820
35821 #. type: =head2
35822 #: ../src/guestfs.pod:2999
35823 msgid "MAXIMUM NUMBER OF DISKS"
35824 msgstr ""
35825
35826 #. type: textblock
35827 #: ../src/guestfs.pod:3001
35828 msgid "When using virtio disks (the default) the current limit is B<25> disks."
35829 msgstr ""
35830
35831 #. type: textblock
35832 #: ../src/guestfs.pod:3004
35833 msgid ""
35834 "Virtio itself consumes 1 virtual PCI slot per disk, and PCI is limited to 31 "
35835 "slots.  However febootstrap only understands disks with names C</dev/vda> "
35836 "through C</dev/vdz> (26 letters) and it reserves one disk for its own "
35837 "purposes."
35838 msgstr ""
35839
35840 #. type: textblock
35841 #: ../src/guestfs.pod:3009
35842 msgid ""
35843 "We are working to substantially raise this limit in future versions but it "
35844 "requires complex changes to qemu."
35845 msgstr ""
35846
35847 #. type: textblock
35848 #: ../src/guestfs.pod:3012
35849 msgid ""
35850 "In future versions of libguestfs it should also be possible to \"hot plug\" "
35851 "disks (add and remove disks after calling L</guestfs_launch>).  This also "
35852 "requires changes to qemu."
35853 msgstr ""
35854
35855 #. type: =head2
35856 #: ../src/guestfs.pod:3016
35857 msgid "MAXIMUM NUMBER OF PARTITIONS PER DISK"
35858 msgstr ""
35859
35860 #. type: textblock
35861 #: ../src/guestfs.pod:3018
35862 msgid "Virtio limits the maximum number of partitions per disk to B<15>."
35863 msgstr ""
35864
35865 #. type: textblock
35866 #: ../src/guestfs.pod:3020
35867 msgid ""
35868 "This is because it reserves 4 bits for the minor device number (thus "
35869 "C</dev/vda>, and C</dev/vda1> through C</dev/vda15>)."
35870 msgstr ""
35871
35872 #. type: textblock
35873 #: ../src/guestfs.pod:3023
35874 msgid ""
35875 "If you attach a disk with more than 15 partitions, the extra partitions are "
35876 "ignored by libguestfs."
35877 msgstr ""
35878
35879 #. type: =head2
35880 #: ../src/guestfs.pod:3026
35881 msgid "MAXIMUM SIZE OF A DISK"
35882 msgstr ""
35883
35884 #. type: textblock
35885 #: ../src/guestfs.pod:3028
35886 msgid "Probably the limit is between 2**63-1 and 2**64-1 bytes."
35887 msgstr ""
35888
35889 #. type: textblock
35890 #: ../src/guestfs.pod:3030
35891 msgid ""
35892 "We have tested block devices up to 1 exabyte (2**60 or "
35893 "1,152,921,504,606,846,976 bytes) using sparse files backed by an XFS host "
35894 "filesystem."
35895 msgstr ""
35896
35897 #. type: textblock
35898 #: ../src/guestfs.pod:3034
35899 msgid ""
35900 "Although libguestfs probably does not impose any limit, the underlying host "
35901 "storage will.  If you store disk images on a host ext4 filesystem, then the "
35902 "maximum size will be limited by the maximum ext4 file size (currently 16 "
35903 "TB).  If you store disk images as host logical volumes then you are limited "
35904 "by the maximum size of an LV."
35905 msgstr ""
35906
35907 #. type: textblock
35908 #: ../src/guestfs.pod:3040
35909 msgid ""
35910 "For the hugest disk image files, we recommend using XFS on the host for "
35911 "storage."
35912 msgstr ""
35913
35914 #. type: =head2
35915 #: ../src/guestfs.pod:3043
35916 msgid "MAXIMUM SIZE OF A PARTITION"
35917 msgstr ""
35918
35919 #. type: textblock
35920 #: ../src/guestfs.pod:3045
35921 msgid ""
35922 "The MBR (ie. classic MS-DOS) partitioning scheme uses 32 bit sector "
35923 "numbers.  Assuming a 512 byte sector size, this means that MBR cannot "
35924 "address a partition located beyond 2 TB on the disk."
35925 msgstr ""
35926
35927 #. type: textblock
35928 #: ../src/guestfs.pod:3049
35929 msgid ""
35930 "It is recommended that you use GPT partitions on disks which are larger than "
35931 "this size.  GPT uses 64 bit sector numbers and so can address partitions "
35932 "which are theoretically larger than the largest disk we could support."
35933 msgstr ""
35934
35935 #. type: =head2
35936 #: ../src/guestfs.pod:3054
35937 msgid "MAXIMUM SIZE OF A FILESYSTEM, FILES, DIRECTORIES"
35938 msgstr ""
35939
35940 #. type: textblock
35941 #: ../src/guestfs.pod:3056
35942 msgid ""
35943 "This depends on the filesystem type.  libguestfs itself does not impose any "
35944 "known limit.  Consult Wikipedia or the filesystem documentation to find out "
35945 "what these limits are."
35946 msgstr ""
35947
35948 #. type: =head2
35949 #: ../src/guestfs.pod:3060
35950 msgid "MAXIMUM UPLOAD AND DOWNLOAD"
35951 msgstr ""
35952
35953 #. type: textblock
35954 #: ../src/guestfs.pod:3062
35955 msgid ""
35956 "The API functions L</guestfs_upload>, L</guestfs_download>, "
35957 "L</guestfs_tar_in>, L</guestfs_tar_out> and the like allow unlimited sized "
35958 "uploads and downloads."
35959 msgstr ""
35960
35961 #. type: =head2
35962 #: ../src/guestfs.pod:3066
35963 msgid "INSPECTION LIMITS"
35964 msgstr ""
35965
35966 #. type: textblock
35967 #: ../src/guestfs.pod:3068
35968 msgid ""
35969 "The inspection code has several arbitrary limits on things like the size of "
35970 "Windows Registry hive it will read, and the length of product name.  These "
35971 "are intended to stop a malicious guest from consuming arbitrary amounts of "
35972 "memory and disk space on the host, and should not be reached in practice.  "
35973 "See the source code for more information."
35974 msgstr ""
35975
35976 #. type: textblock
35977 #: ../src/guestfs.pod:3094
35978 msgid ""
35979 "Set C<LIBGUESTFS_DEBUG=1> to enable verbose messages.  This has the same "
35980 "effect as calling C<guestfs_set_verbose (g, 1)>."
35981 msgstr ""
35982
35983 #. type: textblock
35984 #: ../src/guestfs.pod:3106
35985 msgid ""
35986 "Set the path that libguestfs uses to search for a supermin appliance.  See "
35987 "the discussion of paths in section L</PATH> above."
35988 msgstr ""
35989
35990 #. type: textblock
35991 #: ../src/guestfs.pod:3115
35992 msgid "See also L</QEMU WRAPPERS> above."
35993 msgstr ""
35994
35995 #. type: textblock
35996 #: ../src/guestfs.pod:3119
35997 msgid ""
35998 "Set C<LIBGUESTFS_TRACE=1> to enable command traces.  This has the same "
35999 "effect as calling C<guestfs_set_trace (g, 1)>."
36000 msgstr ""
36001
36002 #. type: textblock
36003 #: ../src/guestfs.pod:3137
36004 msgid ""
36005 "L<guestfs-examples(3)>, L<guestfs-java(3)>, L<guestfs-ocaml(3)>, "
36006 "L<guestfs-perl(3)>, L<guestfs-python(3)>, L<guestfs-ruby(3)>, "
36007 "L<guestfish(1)>, L<guestmount(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, "
36008 "L<virt-copy-out(1)>, L<virt-df(1)>, L<virt-edit(1)>, L<virt-filesystems(1)>, "
36009 "L<virt-inspector(1)>, L<virt-list-filesystems(1)>, "
36010 "L<virt-list-partitions(1)>, L<virt-ls(1)>, L<virt-make-fs(1)>, "
36011 "L<virt-rescue(1)>, L<virt-tar(1)>, L<virt-tar-in(1)>, L<virt-tar-out(1)>, "
36012 "L<virt-win-reg(1)>, L<qemu(1)>, L<febootstrap(1)>, "
36013 "L<febootstrap-supermin-helper(8)>, L<hivex(3)>, L<http://libguestfs.org/>."
36014 msgstr ""
36015
36016 #. type: textblock
36017 #: ../src/guestfs.pod:3167
36018 msgid ""
36019 "Tools with a similar purpose: L<fdisk(8)>, L<parted(8)>, L<kpartx(8)>, "
36020 "L<lvm(8)>, L<disktype(1)>."
36021 msgstr ""
36022
36023 #. type: =head1
36024 #: ../src/guestfs.pod:3174 ../tools/virt-make-fs.pl:553 ../tools/virt-win-reg.pl:761
36025 msgid "BUGS"
36026 msgstr ""
36027
36028 #. type: textblock
36029 #: ../src/guestfs.pod:3176
36030 msgid "To get a list of bugs against libguestfs use this link:"
36031 msgstr ""
36032
36033 #. type: textblock
36034 #: ../src/guestfs.pod:3178
36035 msgid "L<https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools>"
36036 msgstr ""
36037
36038 #. type: textblock
36039 #: ../src/guestfs.pod:3180
36040 msgid "To report a new bug against libguestfs use this link:"
36041 msgstr ""
36042
36043 #. type: textblock
36044 #: ../src/guestfs.pod:3182
36045 msgid "L<https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools>"
36046 msgstr ""
36047
36048 #. type: textblock
36049 #: ../src/guestfs.pod:3184
36050 msgid "When reporting a bug, please check:"
36051 msgstr ""
36052
36053 #. type: textblock
36054 #: ../src/guestfs.pod:3190
36055 msgid "That the bug hasn't been reported already."
36056 msgstr ""
36057
36058 #. type: textblock
36059 #: ../src/guestfs.pod:3194
36060 msgid "That you are testing a recent version."
36061 msgstr ""
36062
36063 #. type: textblock
36064 #: ../src/guestfs.pod:3198
36065 msgid "Describe the bug accurately, and give a way to reproduce it."
36066 msgstr ""
36067
36068 #. type: textblock
36069 #: ../src/guestfs.pod:3202
36070 msgid ""
36071 "Run libguestfs-test-tool and paste the B<complete, unedited> output into the "
36072 "bug report."
36073 msgstr ""
36074
36075 #. type: textblock
36076 #: ../test-tool/libguestfs-test-tool.pod:5
36077 msgid "libguestfs-test-tool - Diagnostics for libguestfs"
36078 msgstr ""
36079
36080 #. type: verbatim
36081 #: ../test-tool/libguestfs-test-tool.pod:9
36082 #, no-wrap
36083 msgid ""
36084 " libguestfs-test-tool [--options]\n"
36085 "\n"
36086 msgstr ""
36087
36088 #. type: textblock
36089 #: ../test-tool/libguestfs-test-tool.pod:13
36090 msgid ""
36091 "libguestfs-test-tool is a test program shipped with libguestfs to allow you "
36092 "to check basic libguestfs functionality is working.  This is needed because "
36093 "libguestfs occasionally breaks for reasons beyond our control: usually "
36094 "because of changes in the underlying qemu or kernel packages, or the host "
36095 "environment."
36096 msgstr ""
36097
36098 #. type: textblock
36099 #: ../test-tool/libguestfs-test-tool.pod:19
36100 msgid "If you suspect a problem in libguestfs, then just run:"
36101 msgstr ""
36102
36103 #. type: verbatim
36104 #: ../test-tool/libguestfs-test-tool.pod:21
36105 #, no-wrap
36106 msgid ""
36107 " libguestfs-test-tool\n"
36108 "\n"
36109 msgstr ""
36110
36111 #. type: textblock
36112 #: ../test-tool/libguestfs-test-tool.pod:23
36113 msgid "It will print lots of diagnostic messages."
36114 msgstr ""
36115
36116 #. type: textblock
36117 #: ../test-tool/libguestfs-test-tool.pod:25
36118 msgid "If it runs to completion successfully, you will see this near the end:"
36119 msgstr ""
36120
36121 #. type: verbatim
36122 #: ../test-tool/libguestfs-test-tool.pod:27
36123 #, no-wrap
36124 msgid ""
36125 " ===== TEST FINISHED OK =====\n"
36126 "\n"
36127 msgstr ""
36128
36129 #. type: textblock
36130 #: ../test-tool/libguestfs-test-tool.pod:29
36131 msgid "and the test tool will exit with code 0."
36132 msgstr ""
36133
36134 #. type: textblock
36135 #: ../test-tool/libguestfs-test-tool.pod:31
36136 msgid ""
36137 "If it fails (and/or exits with non-zero error code), please paste the "
36138 "I<complete, unedited> output of the test tool into a bug report.  More "
36139 "information about reporting bugs can be found on the "
36140 "L<http://libguestfs.org/> website."
36141 msgstr ""
36142
36143 #. type: textblock
36144 #: ../test-tool/libguestfs-test-tool.pod:42
36145 msgid "Display short usage information and exit."
36146 msgstr ""
36147
36148 #. type: =item
36149 #: ../test-tool/libguestfs-test-tool.pod:44
36150 msgid "B<--qemu qemu_binary>"
36151 msgstr ""
36152
36153 #. type: textblock
36154 #: ../test-tool/libguestfs-test-tool.pod:46
36155 msgid ""
36156 "If you have downloaded another qemu binary, point this option at the full "
36157 "path of the binary to try it."
36158 msgstr ""
36159
36160 #. type: =item
36161 #: ../test-tool/libguestfs-test-tool.pod:49
36162 msgid "B<--qemudir qemu_source_dir>"
36163 msgstr ""
36164
36165 #. type: textblock
36166 #: ../test-tool/libguestfs-test-tool.pod:51
36167 msgid ""
36168 "If you have compiled qemu from source, point this option at the source "
36169 "directory to try it."
36170 msgstr ""
36171
36172 #. type: =item
36173 #: ../test-tool/libguestfs-test-tool.pod:54
36174 msgid "B<-t N>"
36175 msgstr ""
36176
36177 #. type: =item
36178 #: ../test-tool/libguestfs-test-tool.pod:56
36179 msgid "B<--timeout N>"
36180 msgstr ""
36181
36182 #. type: textblock
36183 #: ../test-tool/libguestfs-test-tool.pod:58
36184 msgid ""
36185 "Set the launch timeout to C<N> seconds.  The default is 600 seconds (10 "
36186 "minutes) which does not usually need to be adjusted."
36187 msgstr ""
36188
36189 #. type: =head1
36190 #: ../test-tool/libguestfs-test-tool.pod:63
36191 msgid "TRYING OUT A DIFFERENT VERSION OF QEMU"
36192 msgstr ""
36193
36194 #. type: textblock
36195 #: ../test-tool/libguestfs-test-tool.pod:65
36196 msgid ""
36197 "If you have compiled another version of qemu from source and would like to "
36198 "try that, then you can use the I<--qemudir> option to point to the qemu "
36199 "source directory."
36200 msgstr ""
36201
36202 #. type: textblock
36203 #: ../test-tool/libguestfs-test-tool.pod:69
36204 msgid ""
36205 "If you have downloaded a qemu binary from somewhere, use the I<--qemu> "
36206 "option to point to the binary."
36207 msgstr ""
36208
36209 #. type: textblock
36210 #: ../test-tool/libguestfs-test-tool.pod:72
36211 msgid ""
36212 "Note when using these options, you can ignore the business of qemu wrapper "
36213 "scripts (L<guestfs(3)/QEMU WRAPPERS>), since libguestfs-test-tool writes a "
36214 "wrapper script for you if one is needed."
36215 msgstr ""
36216
36217 #. type: =head1
36218 #: ../test-tool/libguestfs-test-tool.pod:76
36219 msgid "TRYING OUT A DIFFERENT KERNEL"
36220 msgstr ""
36221
36222 #. type: textblock
36223 #: ../test-tool/libguestfs-test-tool.pod:78
36224 msgid ""
36225 "If you are using febootstrap E<ge> 3.8 then you can select which kernel "
36226 "libguestfs tries.  You do this by setting the environment variables "
36227 "C<FEBOOTSTRAP_KERNEL> and/or C<FEBOOTSTRAP_MODULES>."
36228 msgstr ""
36229
36230 #. type: textblock
36231 #: ../test-tool/libguestfs-test-tool.pod:82
36232 msgid ""
36233 "Refer to L<febootstrap-supermin-helper(8)/ENVIRONMENT VARIABLES> for further "
36234 "information."
36235 msgstr ""
36236
36237 #. type: =head1
36238 #: ../test-tool/libguestfs-test-tool.pod:85
36239 msgid "SELF-DIAGNOSIS"
36240 msgstr ""
36241
36242 #. type: textblock
36243 #: ../test-tool/libguestfs-test-tool.pod:87
36244 msgid ""
36245 "Refer to L<guestfs(3)/APPLIANCE BOOT PROCESS> to understand the messages "
36246 "produced by libguestfs-test-tool and/or possible errors."
36247 msgstr ""
36248
36249 #. type: textblock
36250 #: ../test-tool/libguestfs-test-tool.pod:92
36251 msgid ""
36252 "libguestfs-test-tool returns I<0> if the tests completed without error, or "
36253 "I<1> if there was an error."
36254 msgstr ""
36255
36256 #. type: textblock
36257 #: ../test-tool/libguestfs-test-tool.pod:97
36258 msgid ""
36259 "For the full list of environment variables which may affect libguestfs, "
36260 "please see the L<guestfs(3)> manual page."
36261 msgstr ""
36262
36263 #. type: textblock
36264 #: ../test-tool/libguestfs-test-tool.pod:102
36265 msgid "L<guestfs(3)>, L<http://libguestfs.org/>, L<http://qemu.org/>."
36266 msgstr ""
36267
36268 #. type: textblock
36269 #: ../tools/virt-list-filesystems.pl:32
36270 msgid "virt-list-filesystems - List filesystems in a virtual machine or disk image"
36271 msgstr ""
36272
36273 #. type: verbatim
36274 #: ../tools/virt-list-filesystems.pl:36
36275 #, no-wrap
36276 msgid ""
36277 " virt-list-filesystems [--options] domname\n"
36278 "\n"
36279 msgstr ""
36280
36281 #. type: verbatim
36282 #: ../tools/virt-list-filesystems.pl:38
36283 #, no-wrap
36284 msgid ""
36285 " virt-list-filesystems [--options] disk.img [disk.img ...]\n"
36286 "\n"
36287 msgstr ""
36288
36289 #. type: textblock
36290 #: ../tools/virt-list-filesystems.pl:42 ../tools/virt-list-partitions.pl:42
36291 msgid ""
36292 "This tool is obsolete.  Use L<virt-filesystems(1)> as a more flexible "
36293 "replacement."
36294 msgstr ""
36295
36296 #. type: textblock
36297 #: ../tools/virt-list-filesystems.pl:45
36298 msgid ""
36299 "C<virt-list-filesystems> is a command line tool to list the filesystems that "
36300 "are contained in a virtual machine or disk image."
36301 msgstr ""
36302
36303 #. type: textblock
36304 #: ../tools/virt-list-filesystems.pl:49
36305 msgid ""
36306 "C<virt-list-filesystems> is just a simple wrapper around L<libguestfs(3)> "
36307 "functionality.  For more complex cases you should look at the "
36308 "L<guestfish(1)> tool."
36309 msgstr ""
36310
36311 #. type: textblock
36312 #: ../tools/virt-list-filesystems.pl:112
36313 msgid ""
36314 "With this option, C<virt-list-filesystems> displays the type of each "
36315 "filesystem too (where \"type\" means C<ext3>, C<xfs> etc.)"
36316 msgstr ""
36317
36318 #. type: =item
36319 #: ../tools/virt-list-filesystems.pl:119
36320 msgid "B<-a>"
36321 msgstr ""
36322
36323 #. type: textblock
36324 #: ../tools/virt-list-filesystems.pl:123
36325 msgid ""
36326 "Normally we only show mountable filesystems.  If this option is given then "
36327 "swap devices are shown too."
36328 msgstr ""
36329
36330 #. type: textblock
36331 #: ../tools/virt-list-filesystems.pl:197
36332 msgid ""
36333 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-tar(1)>, "
36334 "L<virt-filesystems(1)>, L<virt-list-partitions(1)>, L<Sys::Guestfs(3)>, "
36335 "L<Sys::Guestfs::Lib(3)>, L<Sys::Virt(3)>, L<http://libguestfs.org/>."
36336 msgstr ""
36337
36338 #. type: textblock
36339 #: ../tools/virt-list-filesystems.pl:214 ../tools/virt-tar.pl:317
36340 msgid "Copyright (C) 2009 Red Hat Inc."
36341 msgstr ""
36342
36343 #. type: textblock
36344 #: ../tools/virt-list-partitions.pl:32
36345 msgid "virt-list-partitions - List partitions in a virtual machine or disk image"
36346 msgstr ""
36347
36348 #. type: verbatim
36349 #: ../tools/virt-list-partitions.pl:36
36350 #, no-wrap
36351 msgid ""
36352 " virt-list-partitions [--options] domname\n"
36353 "\n"
36354 msgstr ""
36355
36356 #. type: verbatim
36357 #: ../tools/virt-list-partitions.pl:38
36358 #, no-wrap
36359 msgid ""
36360 " virt-list-partitions [--options] disk.img [disk.img ...]\n"
36361 "\n"
36362 msgstr ""
36363
36364 #. type: textblock
36365 #: ../tools/virt-list-partitions.pl:45
36366 msgid ""
36367 "C<virt-list-partitions> is a command line tool to list the partitions that "
36368 "are contained in a virtual machine or disk image.  It is mainly useful as a "
36369 "first step to using L<virt-resize(1)>."
36370 msgstr ""
36371
36372 #. type: textblock
36373 #: ../tools/virt-list-partitions.pl:50
36374 msgid ""
36375 "C<virt-list-partitions> is just a simple wrapper around L<libguestfs(3)> "
36376 "functionality.  For more complex cases you should look at the "
36377 "L<guestfish(1)> tool."
36378 msgstr ""
36379
36380 #. type: textblock
36381 #: ../tools/virt-list-partitions.pl:113
36382 msgid "Show sizes in human-readable form (eg. \"1G\")."
36383 msgstr ""
36384
36385 #. type: textblock
36386 #: ../tools/virt-list-partitions.pl:123
36387 msgid ""
36388 "With this option, C<virt-list-partitions> displays the type and size of each "
36389 "partition too (where \"type\" means C<ext3>, C<pv> etc.)"
36390 msgstr ""
36391
36392 #. type: =item
36393 #: ../tools/virt-list-partitions.pl:130
36394 msgid "B<-t>"
36395 msgstr ""
36396
36397 #. type: =item
36398 #: ../tools/virt-list-partitions.pl:132
36399 msgid "B<--total>"
36400 msgstr ""
36401
36402 #. type: textblock
36403 #: ../tools/virt-list-partitions.pl:134
36404 msgid "Display the total size of each block device (as a separate row or rows)."
36405 msgstr ""
36406
36407 #. type: textblock
36408 #: ../tools/virt-list-partitions.pl:267
36409 msgid ""
36410 "L<guestfs(3)>, L<guestfish(1)>, L<virt-filesystems(1)>, "
36411 "L<virt-list-filesystems(1)>, L<virt-resize(1)>, L<Sys::Guestfs(3)>, "
36412 "L<Sys::Guestfs::Lib(3)>, L<Sys::Virt(3)>, L<http://libguestfs.org/>."
36413 msgstr ""
36414
36415 #. type: textblock
36416 #: ../tools/virt-list-partitions.pl:283
36417 msgid "Copyright (C) 2009-2010 Red Hat Inc."
36418 msgstr ""
36419
36420 #. type: textblock
36421 #: ../tools/virt-make-fs.pl:37
36422 msgid "virt-make-fs - Make a filesystem from a tar archive or files"
36423 msgstr ""
36424
36425 #. type: verbatim
36426 #: ../tools/virt-make-fs.pl:41
36427 #, no-wrap
36428 msgid ""
36429 " virt-make-fs [--options] input.tar output.img\n"
36430 "\n"
36431 msgstr ""
36432
36433 #. type: verbatim
36434 #: ../tools/virt-make-fs.pl:43
36435 #, no-wrap
36436 msgid ""
36437 " virt-make-fs [--options] input.tar.gz output.img\n"
36438 "\n"
36439 msgstr ""
36440
36441 #. type: verbatim
36442 #: ../tools/virt-make-fs.pl:45
36443 #, no-wrap
36444 msgid ""
36445 " virt-make-fs [--options] directory output.img\n"
36446 "\n"
36447 msgstr ""
36448
36449 #. type: textblock
36450 #: ../tools/virt-make-fs.pl:49
36451 msgid ""
36452 "Virt-make-fs is a command line tool for creating a filesystem from a tar "
36453 "archive or some files in a directory.  It is similar to tools like "
36454 "L<mkisofs(1)>, L<genisoimage(1)> and L<mksquashfs(1)>.  Unlike those tools, "
36455 "it can create common filesystem types like ext2/3 or NTFS, which can be "
36456 "useful if you want to attach these filesystems to existing virtual machines "
36457 "(eg. to import large amounts of read-only data to a VM)."
36458 msgstr ""
36459
36460 #. type: textblock
36461 #: ../tools/virt-make-fs.pl:57
36462 msgid "Basic usage is:"
36463 msgstr ""
36464
36465 #. type: verbatim
36466 #: ../tools/virt-make-fs.pl:59
36467 #, no-wrap
36468 msgid ""
36469 " virt-make-fs input output\n"
36470 "\n"
36471 msgstr ""
36472
36473 #. type: textblock
36474 #: ../tools/virt-make-fs.pl:61
36475 msgid ""
36476 "where C<input> is either a directory containing files that you want to add, "
36477 "or a tar archive (either uncompressed tar or gzip-compressed tar); and "
36478 "C<output> is a disk image.  The input type is detected automatically.  The "
36479 "output disk image defaults to a raw ext2 image unless you specify extra "
36480 "flags (see L</OPTIONS> below)."
36481 msgstr ""
36482
36483 #. type: =head2
36484 #: ../tools/virt-make-fs.pl:67
36485 msgid "EXTRA SPACE"
36486 msgstr ""
36487
36488 #. type: textblock
36489 #: ../tools/virt-make-fs.pl:69
36490 msgid ""
36491 "Unlike formats such as tar and squashfs, a filesystem does not \"just fit\" "
36492 "the files that it contains, but might have extra space.  Depending on how "
36493 "you are going to use the output, you might think this extra space is wasted "
36494 "and want to minimize it, or you might want to leave space so that more files "
36495 "can be added later.  Virt-make-fs defaults to minimizing the extra space, "
36496 "but you can use the I<--size> flag to leave space in the filesystem if you "
36497 "want it."
36498 msgstr ""
36499
36500 #. type: textblock
36501 #: ../tools/virt-make-fs.pl:77
36502 msgid ""
36503 "An alternative way to leave extra space but not make the output image any "
36504 "bigger is to use an alternative disk image format (instead of the default "
36505 "\"raw\" format).  Using I<--format=qcow2> will use the native QEmu/KVM qcow2 "
36506 "image format (check your hypervisor supports this before using it).  This "
36507 "allows you to choose a large I<--size> but the extra space won't actually be "
36508 "allocated in the image until you try to store something in it."
36509 msgstr ""
36510
36511 #. type: textblock
36512 #: ../tools/virt-make-fs.pl:85
36513 msgid ""
36514 "Don't forget that you can also use local commands including L<resize2fs(8)> "
36515 "and L<virt-resize(1)> to resize existing filesystems, or rerun virt-make-fs "
36516 "to build another image from scratch."
36517 msgstr ""
36518
36519 #. type: =head3
36520 #: ../tools/virt-make-fs.pl:89 ../tools/virt-make-fs.pl:123 ../tools/virt-make-fs.pl:142
36521 msgid "EXAMPLE"
36522 msgstr ""
36523
36524 #. type: verbatim
36525 #: ../tools/virt-make-fs.pl:91
36526 #, no-wrap
36527 msgid ""
36528 " virt-make-fs --format=qcow2 --size=+200M input output.img\n"
36529 "\n"
36530 msgstr ""
36531
36532 #. type: =head2
36533 #: ../tools/virt-make-fs.pl:93
36534 msgid "FILESYSTEM TYPE"
36535 msgstr ""
36536
36537 #. type: textblock
36538 #: ../tools/virt-make-fs.pl:95
36539 msgid ""
36540 "The default filesystem type is C<ext2>.  Just about any filesystem type that "
36541 "libguestfs supports can be used (but I<not> read-only formats like "
36542 "ISO9660).  Here are some of the more common choices:"
36543 msgstr ""
36544
36545 #. type: =item
36546 #: ../tools/virt-make-fs.pl:101
36547 msgid "I<ext3>"
36548 msgstr ""
36549
36550 #. type: textblock
36551 #: ../tools/virt-make-fs.pl:103
36552 msgid ""
36553 "Note that ext3 filesystems contain a journal, typically 1-32 MB in size.  If "
36554 "you are not going to use the filesystem in a way that requires the journal, "
36555 "then this is just wasted overhead."
36556 msgstr ""
36557
36558 #. type: =item
36559 #: ../tools/virt-make-fs.pl:107
36560 msgid "I<ntfs> or I<vfat>"
36561 msgstr ""
36562
36563 #. type: textblock
36564 #: ../tools/virt-make-fs.pl:109
36565 msgid "Useful if exporting data to a Windows guest."
36566 msgstr ""
36567
36568 #. type: textblock
36569 #: ../tools/virt-make-fs.pl:111
36570 msgid ""
36571 "I<Note for vfat>: The tar archive or local directory must only contain files "
36572 "which are owned by root (ie. UID:GID = 0:0).  The reason is that the tar "
36573 "program running within libguestfs is unable to change the ownership of "
36574 "non-root files, since vfat itself does not support this."
36575 msgstr ""
36576
36577 #. type: =item
36578 #: ../tools/virt-make-fs.pl:116
36579 msgid "I<minix>"
36580 msgstr ""
36581
36582 #. type: textblock
36583 #: ../tools/virt-make-fs.pl:118
36584 msgid ""
36585 "Lower overhead than C<ext2>, but certain limitations on filename length and "
36586 "total filesystem size."
36587 msgstr ""
36588
36589 #. type: verbatim
36590 #: ../tools/virt-make-fs.pl:125
36591 #, no-wrap
36592 msgid ""
36593 " virt-make-fs --type=minix input minixfs.img\n"
36594 "\n"
36595 msgstr ""
36596
36597 #. type: =head2
36598 #: ../tools/virt-make-fs.pl:127
36599 msgid "TO PARTITION OR NOT TO PARTITION"
36600 msgstr ""
36601
36602 #. type: textblock
36603 #: ../tools/virt-make-fs.pl:129
36604 msgid "Optionally virt-make-fs can add a partition table to the output disk."
36605 msgstr ""
36606
36607 #. type: textblock
36608 #: ../tools/virt-make-fs.pl:131
36609 msgid ""
36610 "Adding a partition can make the disk image more compatible with certain "
36611 "virtualized operating systems which don't expect to see a filesystem "
36612 "directly located on a block device (Linux doesn't care and will happily "
36613 "handle both types)."
36614 msgstr ""
36615
36616 #. type: textblock
36617 #: ../tools/virt-make-fs.pl:136
36618 msgid ""
36619 "On the other hand, if you have a partition table then the output image is no "
36620 "longer a straight filesystem.  For example you cannot run L<fsck(8)> "
36621 "directly on a partitioned disk image.  (However libguestfs tools such as "
36622 "L<guestfish(1)> and L<virt-resize(1)> can still be used)."
36623 msgstr ""
36624
36625 #. type: textblock
36626 #: ../tools/virt-make-fs.pl:144
36627 msgid "Add an MBR partition:"
36628 msgstr ""
36629
36630 #. type: verbatim
36631 #: ../tools/virt-make-fs.pl:146
36632 #, no-wrap
36633 msgid ""
36634 " virt-make-fs --partition -- input disk.img\n"
36635 "\n"
36636 msgstr ""
36637
36638 #. type: textblock
36639 #: ../tools/virt-make-fs.pl:148
36640 msgid ""
36641 "If the output disk image could be terabyte-sized or larger, it's better to "
36642 "use an EFI/GPT-compatible partition table:"
36643 msgstr ""
36644
36645 #. type: verbatim
36646 #: ../tools/virt-make-fs.pl:151
36647 #, no-wrap
36648 msgid ""
36649 " virt-make-fs --partition=gpt --size=+4T --format=qcow2 input disk.img\n"
36650 "\n"
36651 msgstr ""
36652
36653 #. type: textblock
36654 #: ../tools/virt-make-fs.pl:179
36655 msgid "Enable debugging information."
36656 msgstr ""
36657
36658 #. type: =item
36659 #: ../tools/virt-make-fs.pl:185
36660 msgid "B<--size=E<lt>NE<gt>>"
36661 msgstr ""
36662
36663 #. type: =item
36664 #: ../tools/virt-make-fs.pl:187
36665 msgid "B<--size=+E<lt>NE<gt>>"
36666 msgstr ""
36667
36668 #. type: =item
36669 #: ../tools/virt-make-fs.pl:189
36670 msgid "B<-s E<lt>NE<gt>>"
36671 msgstr ""
36672
36673 #. type: =item
36674 #: ../tools/virt-make-fs.pl:191
36675 msgid "B<-s +E<lt>NE<gt>>"
36676 msgstr ""
36677
36678 #. type: textblock
36679 #: ../tools/virt-make-fs.pl:193
36680 msgid "Use the I<--size> (or I<-s>) option to choose the size of the output image."
36681 msgstr ""
36682
36683 #. type: textblock
36684 #: ../tools/virt-make-fs.pl:196
36685 msgid ""
36686 "If this option is I<not> given, then the output image will be just large "
36687 "enough to contain all the files, with not much wasted space."
36688 msgstr ""
36689
36690 #. type: textblock
36691 #: ../tools/virt-make-fs.pl:199
36692 msgid ""
36693 "To choose a fixed size output disk, specify an absolute number followed by "
36694 "b/K/M/G/T/P/E to mean bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, "
36695 "Petabytes or Exabytes.  This must be large enough to contain all the input "
36696 "files, else you will get an error."
36697 msgstr ""
36698
36699 #. type: textblock
36700 #: ../tools/virt-make-fs.pl:204
36701 msgid ""
36702 "To leave extra space, specify C<+> (plus sign) and a number followed by "
36703 "b/K/M/G/T/P/E to mean bytes, Kilobytes, Megabytes, Gigabytes, Terabytes, "
36704 "Petabytes or Exabytes.  For example: I<--size=+200M> means enough space for "
36705 "the input files, and (approximately) an extra 200 MB free space."
36706 msgstr ""
36707
36708 #. type: textblock
36709 #: ../tools/virt-make-fs.pl:210
36710 msgid ""
36711 "Note that virt-make-fs estimates free space, and therefore will not produce "
36712 "filesystems containing precisely the free space requested.  (It is much more "
36713 "expensive and time-consuming to produce a filesystem which has precisely the "
36714 "desired free space)."
36715 msgstr ""
36716
36717 #. type: =item
36718 #: ../tools/virt-make-fs.pl:219
36719 msgid "B<--format=E<lt>fmtE<gt>>"
36720 msgstr ""
36721
36722 #. type: =item
36723 #: ../tools/virt-make-fs.pl:221
36724 msgid "B<-F E<lt>fmtE<gt>>"
36725 msgstr ""
36726
36727 #. type: textblock
36728 #: ../tools/virt-make-fs.pl:223
36729 msgid "Choose the output disk image format."
36730 msgstr ""
36731
36732 #. type: textblock
36733 #: ../tools/virt-make-fs.pl:225
36734 msgid "The default is C<raw> (raw disk image)."
36735 msgstr ""
36736
36737 #. type: textblock
36738 #: ../tools/virt-make-fs.pl:227
36739 msgid ""
36740 "For other choices, see the L<qemu-img(1)> manpage.  The only other choice "
36741 "that would really make sense here is C<qcow2>."
36742 msgstr ""
36743
36744 #. type: =item
36745 #: ../tools/virt-make-fs.pl:234
36746 msgid "B<--type=E<lt>fsE<gt>>"
36747 msgstr ""
36748
36749 #. type: =item
36750 #: ../tools/virt-make-fs.pl:236
36751 msgid "B<-t E<lt>fsE<gt>>"
36752 msgstr ""
36753
36754 #. type: textblock
36755 #: ../tools/virt-make-fs.pl:238
36756 msgid "Choose the output filesystem type."
36757 msgstr ""
36758
36759 #. type: textblock
36760 #: ../tools/virt-make-fs.pl:240
36761 msgid "The default is C<ext2>."
36762 msgstr ""
36763
36764 #. type: textblock
36765 #: ../tools/virt-make-fs.pl:242
36766 msgid "Any filesystem which is supported read-write by libguestfs can be used here."
36767 msgstr ""
36768
36769 #. type: =item
36770 #: ../tools/virt-make-fs.pl:249
36771 msgid "B<--partition>"
36772 msgstr ""
36773
36774 #. type: =item
36775 #: ../tools/virt-make-fs.pl:251
36776 msgid "B<--partition=E<lt>parttypeE<gt>>"
36777 msgstr ""
36778
36779 #. type: textblock
36780 #: ../tools/virt-make-fs.pl:253
36781 msgid ""
36782 "If specified, this flag adds an MBR partition table to the output disk "
36783 "image."
36784 msgstr ""
36785
36786 #. type: textblock
36787 #: ../tools/virt-make-fs.pl:256
36788 msgid ""
36789 "You can change the partition table type, eg. I<--partition=gpt> for large "
36790 "disks."
36791 msgstr ""
36792
36793 #. type: textblock
36794 #: ../tools/virt-make-fs.pl:259
36795 msgid ""
36796 "Note that if you just use a lonesome I<--partition>, the Perl option parser "
36797 "might consider the next parameter to be the partition type.  For example:"
36798 msgstr ""
36799
36800 #. type: verbatim
36801 #: ../tools/virt-make-fs.pl:263
36802 #, no-wrap
36803 msgid ""
36804 " virt-make-fs --partition input.tar ...\n"
36805 "\n"
36806 msgstr ""
36807
36808 #. type: textblock
36809 #: ../tools/virt-make-fs.pl:265
36810 msgid ""
36811 "would cause virt-make-fs to think you wanted to use a partition type of "
36812 "C<input.tar> which is completely wrong.  To avoid this, use I<--> (a double "
36813 "dash) between options and the input file argument:"
36814 msgstr ""
36815
36816 #. type: verbatim
36817 #: ../tools/virt-make-fs.pl:269
36818 #, no-wrap
36819 msgid ""
36820 " virt-make-fs --partition -- input.tar ...\n"
36821 "\n"
36822 msgstr ""
36823
36824 #. type: textblock
36825 #: ../tools/virt-make-fs.pl:541
36826 msgid ""
36827 "L<guestfish(1)>, L<virt-resize(1)>, L<virt-tar-in(1)>, L<mkisofs(1)>, "
36828 "L<genisoimage(1)>, L<mksquashfs(1)>, L<mke2fs(8)>, L<resize2fs(8)>, "
36829 "L<guestfs(3)>, L<Sys::Guestfs(3)>, L<http://libguestfs.org/>."
36830 msgstr ""
36831
36832 #. type: textblock
36833 #: ../tools/virt-make-fs.pl:555 ../tools/virt-win-reg.pl:763
36834 msgid ""
36835 "When reporting bugs, please enable debugging and capture the I<complete> "
36836 "output:"
36837 msgstr ""
36838
36839 #. type: verbatim
36840 #: ../tools/virt-make-fs.pl:558
36841 #, no-wrap
36842 msgid ""
36843 " export LIBGUESTFS_DEBUG=1\n"
36844 " virt-make-fs --debug [...] > /tmp/virt-make-fs.log 2>&1\n"
36845 "\n"
36846 msgstr ""
36847
36848 #. type: textblock
36849 #: ../tools/virt-make-fs.pl:561
36850 msgid ""
36851 "Attach /tmp/virt-make-fs.log to a new bug report at "
36852 "L<https://bugzilla.redhat.com/>"
36853 msgstr ""
36854
36855 #. type: textblock
36856 #: ../tools/virt-tar.pl:33
36857 msgid "virt-tar - Extract or upload files to a virtual machine"
36858 msgstr ""
36859
36860 #. type: verbatim
36861 #: ../tools/virt-tar.pl:37
36862 #, no-wrap
36863 msgid ""
36864 " virt-tar [--options] -x domname directory tarball\n"
36865 "\n"
36866 msgstr ""
36867
36868 #. type: verbatim
36869 #: ../tools/virt-tar.pl:39
36870 #, no-wrap
36871 msgid ""
36872 " virt-tar [--options] -u domname tarball directory\n"
36873 "\n"
36874 msgstr ""
36875
36876 #. type: verbatim
36877 #: ../tools/virt-tar.pl:41
36878 #, no-wrap
36879 msgid ""
36880 " virt-tar [--options] disk.img [disk.img ...] -x directory tarball\n"
36881 "\n"
36882 msgstr ""
36883
36884 #. type: verbatim
36885 #: ../tools/virt-tar.pl:43
36886 #, no-wrap
36887 msgid ""
36888 " virt-tar [--options] disk.img [disk.img ...] -u tarball directory\n"
36889 "\n"
36890 msgstr ""
36891
36892 #. type: =head2
36893 #: ../tools/virt-tar.pl:45 ../tools/virt-win-reg.pl:88
36894 msgid "NOTE"
36895 msgstr ""
36896
36897 #. type: textblock
36898 #: ../tools/virt-tar.pl:47
36899 msgid ""
36900 "This tool is obsolete.  Use L<virt-copy-in(1)>, L<virt-copy-out(1)>, "
36901 "L<virt-tar-in(1)>, L<virt-tar-out(1)> as replacements."
36902 msgstr ""
36903
36904 #. type: textblock
36905 #: ../tools/virt-tar.pl:52
36906 msgid "Download C</home> from the VM into a local tarball:"
36907 msgstr ""
36908
36909 #. type: verbatim
36910 #: ../tools/virt-tar.pl:54
36911 #, no-wrap
36912 msgid ""
36913 " virt-tar -x domname /home home.tar\n"
36914 "\n"
36915 msgstr ""
36916
36917 #. type: verbatim
36918 #: ../tools/virt-tar.pl:56
36919 #, no-wrap
36920 msgid ""
36921 " virt-tar -zx domname /home home.tar.gz\n"
36922 "\n"
36923 msgstr ""
36924
36925 #. type: textblock
36926 #: ../tools/virt-tar.pl:58
36927 msgid "Upload a local tarball and unpack it inside C</tmp> in the VM:"
36928 msgstr ""
36929
36930 #. type: verbatim
36931 #: ../tools/virt-tar.pl:60
36932 #, no-wrap
36933 msgid ""
36934 " virt-tar -u domname uploadstuff.tar /tmp\n"
36935 "\n"
36936 msgstr ""
36937
36938 #. type: verbatim
36939 #: ../tools/virt-tar.pl:62
36940 #, no-wrap
36941 msgid ""
36942 " virt-tar -zu domname uploadstuff.tar.gz /tmp\n"
36943 "\n"
36944 msgstr ""
36945
36946 #. type: textblock
36947 #: ../tools/virt-tar.pl:66
36948 msgid ""
36949 "You must I<not> use C<virt-tar> with the I<-u> option (upload) on live "
36950 "virtual machines.  If you do this, you risk disk corruption in the VM.  "
36951 "C<virt-tar> tries to stop you from doing this, but doesn't catch all cases."
36952 msgstr ""
36953
36954 #. type: textblock
36955 #: ../tools/virt-tar.pl:71
36956 msgid ""
36957 "You can use I<-x> (extract) on live virtual machines, but you might get "
36958 "inconsistent results or errors if there is filesystem activity inside the "
36959 "VM.  If the live VM is synched and quiescent, then C<virt-tar> will usually "
36960 "work, but the only way to guarantee consistent results is if the virtual "
36961 "machine is shut down."
36962 msgstr ""
36963
36964 #. type: textblock
36965 #: ../tools/virt-tar.pl:79
36966 msgid ""
36967 "C<virt-tar> is a general purpose archive tool for downloading and uploading "
36968 "parts of a guest filesystem.  There are many possibilities: making backups, "
36969 "uploading data files, snooping on guest activity, fixing or customizing "
36970 "guests, etc."
36971 msgstr ""
36972
36973 #. type: textblock
36974 #: ../tools/virt-tar.pl:84
36975 msgid ""
36976 "If you want to just view a single file, use L<virt-cat(1)>.  If you just "
36977 "want to edit a single file, use L<virt-edit(1)>.  For more complex cases you "
36978 "should look at the L<guestfish(1)> tool."
36979 msgstr ""
36980
36981 #. type: textblock
36982 #: ../tools/virt-tar.pl:88
36983 msgid ""
36984 "There are two modes of operation: I<-x> (eXtract) downloads a directory and "
36985 "its contents (recursively) from the virtual machine into a local tarball.  "
36986 "I<-u> uploads from a local tarball, unpacking it into a directory inside the "
36987 "virtual machine.  You cannot use these two options together."
36988 msgstr ""
36989
36990 #. type: textblock
36991 #: ../tools/virt-tar.pl:94
36992 msgid ""
36993 "In addition, you may need to use the I<-z> (gZip) option to enable "
36994 "compression.  When uploading, you have to specify I<-z> if the upload file "
36995 "is compressed because virt-tar won't detect this on its own."
36996 msgstr ""
36997
36998 #. type: textblock
36999 #: ../tools/virt-tar.pl:98
37000 msgid ""
37001 "C<virt-tar> can only handle tar (optionally gzipped) format tarballs.  For "
37002 "example it cannot do PKZip files or bzip2 compression.  If you want that "
37003 "then you'll have to rebuild the tarballs yourself.  (This is a limitation of "
37004 "the L<libguestfs(3)> API)."
37005 msgstr ""
37006
37007 #. type: =item
37008 #: ../tools/virt-tar.pl:160
37009 msgid "B<--extract>"
37010 msgstr ""
37011
37012 #. type: =item
37013 #: ../tools/virt-tar.pl:162
37014 msgid "B<--download>"
37015 msgstr ""
37016
37017 #. type: =item
37018 #: ../tools/virt-tar.pl:164
37019 msgid "B<-u>"
37020 msgstr ""
37021
37022 #. type: =item
37023 #: ../tools/virt-tar.pl:166
37024 msgid "B<--upload>"
37025 msgstr ""
37026
37027 #. type: textblock
37028 #: ../tools/virt-tar.pl:168
37029 msgid ""
37030 "Use I<-x> to extract (download) a directory from a virtual machine to a "
37031 "local tarball."
37032 msgstr ""
37033
37034 #. type: textblock
37035 #: ../tools/virt-tar.pl:171
37036 msgid ""
37037 "Use I<-u> to upload and unpack from a local tarball into a virtual machine.  "
37038 "Please read the L</WARNING> section above before using this option."
37039 msgstr ""
37040
37041 #. type: textblock
37042 #: ../tools/virt-tar.pl:175
37043 msgid "You must specify exactly one of these options."
37044 msgstr ""
37045
37046 #. type: =item
37047 #: ../tools/virt-tar.pl:181
37048 msgid "B<-z>"
37049 msgstr ""
37050
37051 #. type: =item
37052 #: ../tools/virt-tar.pl:183
37053 msgid "B<--gzip>"
37054 msgstr ""
37055
37056 #. type: textblock
37057 #: ../tools/virt-tar.pl:185
37058 msgid "Specify that the input or output tarball is gzip-compressed."
37059 msgstr ""
37060
37061 #. type: textblock
37062 #: ../tools/virt-tar.pl:298
37063 msgid ""
37064 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-edit(1)>, "
37065 "L<virt-copy-in(1)>, L<virt-copy-out(1)>, L<virt-tar-in(1)>, "
37066 "L<virt-tar-out(1)>, L<Sys::Guestfs(3)>, L<Sys::Guestfs::Lib(3)>, "
37067 "L<Sys::Virt(3)>, L<http://libguestfs.org/>."
37068 msgstr ""
37069
37070 #. type: textblock
37071 #: ../tools/virt-win-reg.pl:37
37072 msgid ""
37073 "virt-win-reg - Export and merge Windows Registry entries from a Windows "
37074 "guest"
37075 msgstr ""
37076
37077 #. type: verbatim
37078 #: ../tools/virt-win-reg.pl:41
37079 #, no-wrap
37080 msgid ""
37081 " virt-win-reg domname 'HKLM\\Path\\To\\Subkey'\n"
37082 "\n"
37083 msgstr ""
37084
37085 #. type: verbatim
37086 #: ../tools/virt-win-reg.pl:43
37087 #, no-wrap
37088 msgid ""
37089 " virt-win-reg domname 'HKLM\\Path\\To\\Subkey' name\n"
37090 "\n"
37091 msgstr ""
37092
37093 #. type: verbatim
37094 #: ../tools/virt-win-reg.pl:45
37095 #, no-wrap
37096 msgid ""
37097 " virt-win-reg domname 'HKLM\\Path\\To\\Subkey' @\n"
37098 "\n"
37099 msgstr ""
37100
37101 #. type: verbatim
37102 #: ../tools/virt-win-reg.pl:47
37103 #, no-wrap
37104 msgid ""
37105 " virt-win-reg --merge domname [input.reg ...]\n"
37106 "\n"
37107 msgstr ""
37108
37109 #. type: verbatim
37110 #: ../tools/virt-win-reg.pl:49
37111 #, no-wrap
37112 msgid ""
37113 " virt-win-reg [--options] disk.img ... # instead of domname\n"
37114 "\n"
37115 msgstr ""
37116
37117 #. type: textblock
37118 #: ../tools/virt-win-reg.pl:53
37119 msgid ""
37120 "You must I<not> use C<virt-win-reg> with the I<--merge> option on live "
37121 "virtual machines.  If you do this, you I<will> get irreversible disk "
37122 "corruption in the VM.  C<virt-win-reg> tries to stop you from doing this, "
37123 "but doesn't catch all cases."
37124 msgstr ""
37125
37126 #. type: textblock
37127 #: ../tools/virt-win-reg.pl:58
37128 msgid ""
37129 "Modifying the Windows Registry is an inherently risky operation.  The format "
37130 "is deliberately obscure and undocumented, and Registry changes can leave the "
37131 "system unbootable.  Therefore when using the I<--merge> option, make sure "
37132 "you have a reliable backup first."
37133 msgstr ""
37134
37135 #. type: textblock
37136 #: ../tools/virt-win-reg.pl:65
37137 msgid ""
37138 "This program can export and merge Windows Registry entries from a Windows "
37139 "guest."
37140 msgstr ""
37141
37142 #. type: textblock
37143 #: ../tools/virt-win-reg.pl:68
37144 msgid ""
37145 "The first parameter is the libvirt guest name or the raw disk image of a "
37146 "Windows guest."
37147 msgstr ""
37148
37149 #. type: textblock
37150 #: ../tools/virt-win-reg.pl:71
37151 msgid ""
37152 "If I<--merge> is I<not> specified, then the chosen registry key is "
37153 "displayed/exported (recursively).  For example:"
37154 msgstr ""
37155
37156 #. type: verbatim
37157 #: ../tools/virt-win-reg.pl:74
37158 #, no-wrap
37159 msgid ""
37160 " $ virt-win-reg Windows7 'HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft'\n"
37161 "\n"
37162 msgstr ""
37163
37164 #. type: textblock
37165 #: ../tools/virt-win-reg.pl:76
37166 msgid "You can also display single values from within registry keys, for example:"
37167 msgstr ""
37168
37169 #. type: verbatim
37170 #: ../tools/virt-win-reg.pl:79
37171 #, no-wrap
37172 msgid ""
37173 " $ cvkey='HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion'\n"
37174 " $ virt-win-reg Windows7 $cvkey ProductName\n"
37175 " Windows 7 Enterprise\n"
37176 "\n"
37177 msgstr ""
37178
37179 #. type: textblock
37180 #: ../tools/virt-win-reg.pl:83
37181 msgid ""
37182 "With I<--merge>, you can merge a textual regedit file into the Windows "
37183 "Registry:"
37184 msgstr ""
37185
37186 #. type: verbatim
37187 #: ../tools/virt-win-reg.pl:86
37188 #, no-wrap
37189 msgid ""
37190 " $ virt-win-reg --merge Windows7 changes.reg\n"
37191 "\n"
37192 msgstr ""
37193
37194 #. type: textblock
37195 #: ../tools/virt-win-reg.pl:90
37196 msgid ""
37197 "This program is only meant for simple access to the registry.  If you want "
37198 "to do complicated things with the registry, we suggest you download the "
37199 "Registry hive files from the guest using L<libguestfs(3)> or L<guestfish(1)> "
37200 "and access them locally, eg. using L<hivex(3)>, L<hivexsh(1)> or "
37201 "L<hivexregedit(1)>."
37202 msgstr ""
37203
37204 #. type: =item
37205 #: ../tools/virt-win-reg.pl:159
37206 msgid "B<--merge>"
37207 msgstr ""
37208
37209 #. type: textblock
37210 #: ../tools/virt-win-reg.pl:161
37211 msgid ""
37212 "In merge mode, this merges a textual regedit file into the Windows Registry "
37213 "of the virtual machine.  If this flag is I<not> given then virt-win-reg "
37214 "displays or exports Registry entries instead."
37215 msgstr ""
37216
37217 #. type: textblock
37218 #: ../tools/virt-win-reg.pl:165
37219 msgid ""
37220 "Note that I<--merge> is I<unsafe> to use on live virtual machines, and will "
37221 "result in disk corruption.  However exporting (without this flag)  is always "
37222 "safe."
37223 msgstr ""
37224
37225 #. type: =item
37226 #: ../tools/virt-win-reg.pl:173
37227 msgid "B<--encoding> UTF-16LE|ASCII"
37228 msgstr ""
37229
37230 #. type: textblock
37231 #: ../tools/virt-win-reg.pl:175
37232 msgid ""
37233 "When merging (only), you may need to specify the encoding for strings to be "
37234 "used in the hive file.  This is explained in detail in "
37235 "L<Win::Hivex::Regedit(3)/ENCODING STRINGS>."
37236 msgstr ""
37237
37238 #. type: textblock
37239 #: ../tools/virt-win-reg.pl:179
37240 msgid ""
37241 "The default is to use UTF-16LE, which should work with recent versions of "
37242 "Windows."
37243 msgstr ""
37244
37245 #. type: =item
37246 #: ../tools/virt-win-reg.pl:186
37247 msgid "B<--unsafe-printable-strings>"
37248 msgstr ""
37249
37250 #. type: textblock
37251 #: ../tools/virt-win-reg.pl:188
37252 msgid ""
37253 "When exporting (only), assume strings are UTF-16LE and print them as strings "
37254 "instead of hex sequences.  Remove the final zero codepoint from strings if "
37255 "present."
37256 msgstr ""
37257
37258 #. type: textblock
37259 #: ../tools/virt-win-reg.pl:192
37260 msgid ""
37261 "This is unsafe and does not preserve the fidelity of strings in the original "
37262 "Registry for various reasons:"
37263 msgstr ""
37264
37265 #. type: textblock
37266 #: ../tools/virt-win-reg.pl:199
37267 msgid ""
37268 "Assumes the original encoding is UTF-16LE.  ASCII strings and strings in "
37269 "other encodings will be corrupted by this transformation."
37270 msgstr ""
37271
37272 #. type: textblock
37273 #: ../tools/virt-win-reg.pl:204
37274 msgid ""
37275 "Assumes that everything which has type 1 or 2 is really a string and that "
37276 "everything else is not a string, but the type field in real Registries is "
37277 "not reliable."
37278 msgstr ""
37279
37280 #. type: textblock
37281 #: ../tools/virt-win-reg.pl:210
37282 msgid ""
37283 "Loses information about whether a zero codepoint followed the string in the "
37284 "Registry or not."
37285 msgstr ""
37286
37287 #. type: textblock
37288 #: ../tools/virt-win-reg.pl:215
37289 msgid ""
37290 "This all happens because the Registry itself contains no information about "
37291 "how strings are encoded (see L<Win::Hivex::Regedit(3)/ENCODING STRINGS>)."
37292 msgstr ""
37293
37294 #. type: textblock
37295 #: ../tools/virt-win-reg.pl:219
37296 msgid ""
37297 "You should only use this option for quick hacking and debugging of the "
37298 "Registry contents, and I<never> use it if the output is going to be passed "
37299 "into another program or stored in another Registry."
37300 msgstr ""
37301
37302 #. type: =head1
37303 #: ../tools/virt-win-reg.pl:556
37304 msgid "SUPPORTED SYSTEMS"
37305 msgstr ""
37306
37307 #. type: textblock
37308 #: ../tools/virt-win-reg.pl:558
37309 msgid ""
37310 "The program currently supports Windows NT-derived guests starting with "
37311 "Windows XP through to at least Windows 7."
37312 msgstr ""
37313
37314 #. type: textblock
37315 #: ../tools/virt-win-reg.pl:561
37316 msgid "The following Registry keys are supported:"
37317 msgstr ""
37318
37319 #. type: =item
37320 #: ../tools/virt-win-reg.pl:565
37321 msgid "C<HKEY_LOCAL_MACHINE\\SAM>"
37322 msgstr ""
37323
37324 #. type: =item
37325 #: ../tools/virt-win-reg.pl:567
37326 msgid "C<HKEY_LOCAL_MACHINE\\SECURITY>"
37327 msgstr ""
37328
37329 #. type: =item
37330 #: ../tools/virt-win-reg.pl:569
37331 msgid "C<HKEY_LOCAL_MACHINE\\SOFTWARE>"
37332 msgstr ""
37333
37334 #. type: =item
37335 #: ../tools/virt-win-reg.pl:571
37336 msgid "C<HKEY_LOCAL_MACHINE\\SYSTEM>"
37337 msgstr ""
37338
37339 #. type: =item
37340 #: ../tools/virt-win-reg.pl:573
37341 msgid "C<HKEY_USERS\\.DEFAULT>"
37342 msgstr ""
37343
37344 #. type: =item
37345 #: ../tools/virt-win-reg.pl:575
37346 msgid "C<HKEY_USERS\\I<SID>>"
37347 msgstr ""
37348
37349 #. type: textblock
37350 #: ../tools/virt-win-reg.pl:577
37351 msgid "where I<SID> is a Windows User SID (eg. C<S-1-5-18>)."
37352 msgstr ""
37353
37354 #. type: =item
37355 #: ../tools/virt-win-reg.pl:579
37356 msgid "C<HKEY_USERS\\I<username>>"
37357 msgstr ""
37358
37359 #. type: textblock
37360 #: ../tools/virt-win-reg.pl:581
37361 msgid "where I<username> is a local user name (this is a libguestfs extension)."
37362 msgstr ""
37363
37364 #. type: textblock
37365 #: ../tools/virt-win-reg.pl:585
37366 msgid ""
37367 "You can use C<HKLM> as a shorthand for C<HKEY_LOCAL_MACHINE>, and C<HKU> for "
37368 "C<HKEY_USERS>."
37369 msgstr ""
37370
37371 #. type: textblock
37372 #: ../tools/virt-win-reg.pl:588
37373 msgid ""
37374 "The literal keys C<HKEY_USERS\\$SID> and C<HKEY_CURRENT_USER> are not "
37375 "supported (there is no \"current user\")."
37376 msgstr ""
37377
37378 #. type: =head1
37379 #: ../tools/virt-win-reg.pl:591
37380 msgid "ENCODING"
37381 msgstr ""
37382
37383 #. type: textblock
37384 #: ../tools/virt-win-reg.pl:593
37385 msgid ""
37386 "C<virt-win-reg> expects that regedit files have already been reencoded in "
37387 "the local encoding.  Usually on Linux hosts, this means UTF-8 with "
37388 "Unix-style line endings.  Since Windows regedit files are often in UTF-16LE "
37389 "with Windows-style line endings, you may need to reencode the whole file "
37390 "before or after processing."
37391 msgstr ""
37392
37393 #. type: textblock
37394 #: ../tools/virt-win-reg.pl:599
37395 msgid ""
37396 "To reencode a file from Windows format to Linux (before processing it with "
37397 "the I<--merge> option), you would do something like this:"
37398 msgstr ""
37399
37400 #. type: verbatim
37401 #: ../tools/virt-win-reg.pl:602
37402 #, no-wrap
37403 msgid ""
37404 " iconv -f utf-16le -t utf-8 < win.reg | dos2unix > linux.reg\n"
37405 "\n"
37406 msgstr ""
37407
37408 #. type: textblock
37409 #: ../tools/virt-win-reg.pl:604
37410 msgid ""
37411 "To go in the opposite direction, after exporting and before sending the file "
37412 "to a Windows user, do something like this:"
37413 msgstr ""
37414
37415 #. type: verbatim
37416 #: ../tools/virt-win-reg.pl:607
37417 #, no-wrap
37418 msgid ""
37419 " unix2dos linux.reg | iconv -f utf-8 -t utf-16le > win.reg\n"
37420 "\n"
37421 msgstr ""
37422
37423 #. type: textblock
37424 #: ../tools/virt-win-reg.pl:609
37425 msgid "For more information about encoding, see L<Win::Hivex::Regedit(3)>."
37426 msgstr ""
37427
37428 #. type: textblock
37429 #: ../tools/virt-win-reg.pl:611
37430 msgid ""
37431 "If you are unsure about the current encoding, use the L<file(1)> command.  "
37432 "Recent versions of Windows regedit.exe produce a UTF-16LE file with "
37433 "Windows-style (CRLF) line endings, like this:"
37434 msgstr ""
37435
37436 #. type: verbatim
37437 #: ../tools/virt-win-reg.pl:615
37438 #, no-wrap
37439 msgid ""
37440 " $ file software.reg\n"
37441 " software.reg: Little-endian UTF-16 Unicode text, with very long lines,\n"
37442 " with CRLF line terminators\n"
37443 "\n"
37444 msgstr ""
37445
37446 #. type: textblock
37447 #: ../tools/virt-win-reg.pl:619
37448 msgid "This file would need conversion before you could I<--merge> it."
37449 msgstr ""
37450
37451 #. type: =head1
37452 #: ../tools/virt-win-reg.pl:621
37453 msgid "CurrentControlSet etc."
37454 msgstr ""
37455
37456 #. type: textblock
37457 #: ../tools/virt-win-reg.pl:623
37458 msgid ""
37459 "Registry keys like C<CurrentControlSet> don't really exist in the Windows "
37460 "Registry at the level of the hive file, and therefore you cannot modify "
37461 "these."
37462 msgstr ""
37463
37464 #. type: textblock
37465 #: ../tools/virt-win-reg.pl:627
37466 msgid ""
37467 "C<CurrentControlSet> is usually an alias for C<ControlSet001>.  In some "
37468 "circumstances it might refer to another control set.  The way to find out is "
37469 "to look at the C<HKLM\\SYSTEM\\Select> key:"
37470 msgstr ""
37471
37472 #. type: verbatim
37473 #: ../tools/virt-win-reg.pl:631
37474 #, no-wrap
37475 msgid ""
37476 " # virt-win-reg WindowsGuest 'HKLM\\SYSTEM\\Select'\n"
37477 " [HKEY_LOCAL_MACHINE\\SYSTEM\\Select]\n"
37478 " \"Current\"=dword:00000001\n"
37479 " \"Default\"=dword:00000001\n"
37480 " \"Failed\"=dword:00000000\n"
37481 " \"LastKnownGood\"=dword:00000002\n"
37482 "\n"
37483 msgstr ""
37484
37485 #. type: textblock
37486 #: ../tools/virt-win-reg.pl:638
37487 msgid "\"Current\" is the one which Windows will choose when it boots."
37488 msgstr ""
37489
37490 #. type: textblock
37491 #: ../tools/virt-win-reg.pl:640
37492 msgid "Similarly, other C<Current...> keys in the path may need to be replaced."
37493 msgstr ""
37494
37495 #. type: =head1
37496 #: ../tools/virt-win-reg.pl:643
37497 msgid "WINDOWS TIPS"
37498 msgstr ""
37499
37500 #. type: textblock
37501 #: ../tools/virt-win-reg.pl:645
37502 msgid ""
37503 "Note that some of these tips modify the guest disk image.  The guest I<must> "
37504 "be shut off, else you will get disk corruption."
37505 msgstr ""
37506
37507 #. type: =head2
37508 #: ../tools/virt-win-reg.pl:648
37509 msgid "RUNNING A BATCH SCRIPT WHEN A USER LOGS IN"
37510 msgstr ""
37511
37512 #. type: textblock
37513 #: ../tools/virt-win-reg.pl:650
37514 msgid ""
37515 "Prepare a DOS batch script, VBScript or executable.  Upload this using "
37516 "L<guestfish(1)>.  For this example the script is called C<test.bat> and it "
37517 "is uploaded into C<C:\\>:"
37518 msgstr ""
37519
37520 #. type: verbatim
37521 #: ../tools/virt-win-reg.pl:654
37522 #, no-wrap
37523 msgid ""
37524 " guestfish -i -d WindowsGuest upload test.bat /test.bat\n"
37525 "\n"
37526 msgstr ""
37527
37528 #. type: textblock
37529 #: ../tools/virt-win-reg.pl:656
37530 msgid "Prepare a regedit file containing the registry change:"
37531 msgstr ""
37532
37533 #. type: verbatim
37534 #: ../tools/virt-win-reg.pl:658
37535 #, no-wrap
37536 msgid ""
37537 " cat > test.reg <<'EOF'\n"
37538 " [HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce]\n"
37539 " \"Test\"=\"c:\\\\test.bat\"\n"
37540 " EOF\n"
37541 "\n"
37542 msgstr ""
37543
37544 #. type: textblock
37545 #: ../tools/virt-win-reg.pl:663
37546 msgid ""
37547 "In this example we use the key C<RunOnce> which means that the script will "
37548 "run precisely once when the first user logs in.  If you want it to run every "
37549 "time a user logs in, replace C<RunOnce> with C<Run>."
37550 msgstr ""
37551
37552 #. type: textblock
37553 #: ../tools/virt-win-reg.pl:667
37554 msgid "Now update the registry:"
37555 msgstr ""
37556
37557 #. type: verbatim
37558 #: ../tools/virt-win-reg.pl:669
37559 #, no-wrap
37560 msgid ""
37561 " virt-win-reg --merge WindowsGuest test.reg\n"
37562 "\n"
37563 msgstr ""
37564
37565 #. type: =head2
37566 #: ../tools/virt-win-reg.pl:671
37567 msgid "INSTALLING A SERVICE"
37568 msgstr ""
37569
37570 #. type: textblock
37571 #: ../tools/virt-win-reg.pl:673
37572 msgid ""
37573 "This section assumes you are familiar with Windows services, and you either "
37574 "have a program which handles the Windows Service Control Protocol directly "
37575 "or you want to run any program using a service wrapper like SrvAny or the "
37576 "free RHSrvAny."
37577 msgstr ""
37578
37579 #. type: textblock
37580 #: ../tools/virt-win-reg.pl:678
37581 msgid ""
37582 "First upload the program and optionally the service wrapper.  In this case "
37583 "the test program is called C<test.exe> and we are using the RHSrvAny "
37584 "wrapper:"
37585 msgstr ""
37586
37587 #. type: verbatim
37588 #: ../tools/virt-win-reg.pl:682
37589 #, no-wrap
37590 msgid ""
37591 " guestfish -i -d WindowsGuest <<EOF\n"
37592 "   upload rhsrvany.exe /rhsrvany.exe\n"
37593 "   upload test.exe /test.exe\n"
37594 " EOF\n"
37595 "\n"
37596 msgstr ""
37597
37598 #. type: textblock
37599 #: ../tools/virt-win-reg.pl:687
37600 msgid ""
37601 "Prepare a regedit file containing the registry changes.  In this example, "
37602 "the first registry change is needed for the service itself or the service "
37603 "wrapper (if used).  The second registry change is only needed because I am "
37604 "using the RHSrvAny service wrapper."
37605 msgstr ""
37606
37607 #. type: verbatim
37608 #: ../tools/virt-win-reg.pl:692
37609 #, no-wrap
37610 msgid ""
37611 " cat > service.reg <<'EOF'\n"
37612 " [HKLM\\SYSTEM\\ControlSet001\\services\\RHSrvAny]\n"
37613 " \"Type\"=dword:00000010\n"
37614 " \"Start\"=dword:00000002\n"
37615 " \"ErrorControl\"=dword:00000001\n"
37616 " \"ImagePath\"=\"c:\\\\rhsrvany.exe\"\n"
37617 " \"DisplayName\"=\"RHSrvAny\"\n"
37618 " \"ObjectName\"=\"NetworkService\"\n"
37619 " \n"
37620 msgstr ""
37621
37622 #. type: verbatim
37623 #: ../tools/virt-win-reg.pl:701
37624 #, no-wrap
37625 msgid ""
37626 " [HKLM\\SYSTEM\\ControlSet001\\services\\RHSrvAny\\Parameters]\n"
37627 " \"CommandLine\"=\"c:\\\\test.exe\"\n"
37628 " \"PWD\"=\"c:\\\\Temp\"\n"
37629 " EOF\n"
37630 "\n"
37631 msgstr ""
37632
37633 #. type: textblock
37634 #: ../tools/virt-win-reg.pl:712
37635 msgid ""
37636 "For use of C<ControlSet001> see the section above in this manual page.  You "
37637 "may need to adjust this according to the control set that is in use by the "
37638 "guest."
37639 msgstr ""
37640
37641 #. type: textblock
37642 #: ../tools/virt-win-reg.pl:718
37643 msgid ""
37644 "C<\"ObjectName\"> controls the privileges that the service will have.  An "
37645 "alternative is C<\"ObjectName\"=\"LocalSystem\"> which would be the most "
37646 "privileged account."
37647 msgstr ""
37648
37649 #. type: textblock
37650 #: ../tools/virt-win-reg.pl:724
37651 msgid ""
37652 "For the meaning of the magic numbers, see this Microsoft KB article: "
37653 "L<http://support.microsoft.com/kb/103000>."
37654 msgstr ""
37655
37656 #. type: textblock
37657 #: ../tools/virt-win-reg.pl:729
37658 msgid "Update the registry:"
37659 msgstr ""
37660
37661 #. type: verbatim
37662 #: ../tools/virt-win-reg.pl:731
37663 #, no-wrap
37664 msgid ""
37665 " virt-win-reg --merge WindowsGuest service.reg\n"
37666 "\n"
37667 msgstr ""
37668
37669 #. type: textblock
37670 #: ../tools/virt-win-reg.pl:735
37671 msgid ""
37672 "Be careful when passing parameters containing C<\\> (backslash) in the "
37673 "shell.  Usually you will have to use 'single quotes' or double backslashes "
37674 "(but not both) to protect them from the shell."
37675 msgstr ""
37676
37677 #. type: textblock
37678 #: ../tools/virt-win-reg.pl:739
37679 msgid "Paths and value names are case-insensitive."
37680 msgstr ""
37681
37682 #. type: textblock
37683 #: ../tools/virt-win-reg.pl:748
37684 msgid ""
37685 "L<hivex(3)>, L<hivexsh(1)>, L<hivexregedit(1)>, L<guestfs(3)>, "
37686 "L<guestfish(1)>, L<virt-cat(1)>, L<Sys::Guestfs(3)>, "
37687 "L<Sys::Guestfs::Lib(3)>, L<Win::Hivex(3)>, L<Win::Hivex::Regedit(3)>, "
37688 "L<Sys::Virt(3)>, L<http://libguestfs.org/>."
37689 msgstr ""
37690
37691 #. type: verbatim
37692 #: ../tools/virt-win-reg.pl:766
37693 #, no-wrap
37694 msgid ""
37695 " export LIBGUESTFS_DEBUG=1\n"
37696 " virt-win-reg --debug [... rest ...] > /tmp/virt-win-reg.log 2>&1\n"
37697 "\n"
37698 msgstr ""
37699
37700 #. type: textblock
37701 #: ../tools/virt-win-reg.pl:769
37702 msgid ""
37703 "Attach /tmp/virt-win-reg.log to a new bug report at "
37704 "L<https://bugzilla.redhat.com/>"
37705 msgstr ""