1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Red Hat Inc.
3 # This file is distributed under the same license as the libguestfs package.
6 # rjones <rjones@redhat.com>, 2011.
7 # <www.carrotsoft@gmail.com>, 2011.
10 "Project-Id-Version: libguestfs\n"
11 "Report-Msgid-Bugs-To: libguestfs@redhat.com\n"
12 "POT-Creation-Date: 2011-10-27 16:05+0200\n"
13 "PO-Revision-Date: 2011-10-27 09:15+0000\n"
14 "Last-Translator: rjones <rjones@redhat.com>\n"
15 "Language-Team: Japanese <trans-ja@lists.fedoraproject.org>\n"
18 "Content-Type: text/plain; charset=UTF-8\n"
19 "Content-Transfer-Encoding: 8bit\n"
20 "Plural-Forms: nplurals=1; plural=0\n"
23 #: ../align/virt-alignment-scan.pod:3 ../cat/virt-cat.pod:3
24 #: ../cat/virt-filesystems.pod:3 ../cat/virt-ls.pod:3
25 #: ../clone/virt-sysprep.pod:3 ../df/virt-df.pod:3 ../edit/virt-edit.pod:3
26 #: ../erlang/examples/guestfs-erlang.pod:3 ../examples/guestfs-examples.pod:3
27 #: ../examples/guestfs-recipes.pod:14 ../fish/guestfish.pod:3
28 #: ../fish/virt-copy-in.pod:3 ../fish/virt-copy-out.pod:3
29 #: ../fish/virt-tar-in.pod:3 ../fish/virt-tar-out.pod:3
30 #: ../fuse/guestmount.pod:3 ../inspector/virt-inspector.pod:3
31 #: ../java/examples/guestfs-java.pod:3 ../ocaml/examples/guestfs-ocaml.pod:3
32 #: ../perl/examples/guestfs-perl.pod:3 ../python/examples/guestfs-python.pod:3
33 #: ../rescue/virt-rescue.pod:3 ../resize/virt-resize.pod:3
34 #: ../ruby/examples/guestfs-ruby.pod:3 ../sparsify/virt-sparsify.pod:3
35 #: ../src/guestfs.pod:3 ../test-tool/libguestfs-test-tool.pod:3
36 #: ../tools/virt-list-filesystems.pl:30 ../tools/virt-list-partitions.pl:30
37 #: ../tools/virt-make-fs.pl:35 ../tools/virt-tar.pl:31
38 #: ../tools/virt-win-reg.pl:35
43 #: ../align/virt-alignment-scan.pod:5
44 msgid "virt-alignment-scan - Check alignment of virtual machine partitions"
48 #: ../align/virt-alignment-scan.pod:7 ../cat/virt-cat.pod:7
49 #: ../cat/virt-filesystems.pod:7 ../cat/virt-ls.pod:7
50 #: ../clone/virt-sysprep.pod:7 ../df/virt-df.pod:7 ../edit/virt-edit.pod:7
51 #: ../erlang/examples/guestfs-erlang.pod:7 ../examples/guestfs-examples.pod:7
52 #: ../fish/guestfish.pod:7 ../fish/virt-copy-in.pod:7
53 #: ../fish/virt-copy-out.pod:7 ../fish/virt-tar-in.pod:7
54 #: ../fish/virt-tar-out.pod:7 ../fuse/guestmount.pod:7
55 #: ../inspector/virt-inspector.pod:7 ../java/examples/guestfs-java.pod:7
56 #: ../ocaml/examples/guestfs-ocaml.pod:7 ../perl/examples/guestfs-perl.pod:7
57 #: ../python/examples/guestfs-python.pod:7 ../rescue/virt-rescue.pod:7
58 #: ../resize/virt-resize.pod:7 ../ruby/examples/guestfs-ruby.pod:7
59 #: ../sparsify/virt-sparsify.pod:7 ../src/guestfs.pod:7
60 #: ../test-tool/libguestfs-test-tool.pod:7
61 #: ../tools/virt-list-filesystems.pl:34 ../tools/virt-list-partitions.pl:34
62 #: ../tools/virt-make-fs.pl:39 ../tools/virt-tar.pl:35
63 #: ../tools/virt-win-reg.pl:39
68 #: ../align/virt-alignment-scan.pod:9
71 " virt-alignment-scan [--options] -d domname\n"
76 #: ../align/virt-alignment-scan.pod:11
79 " virt-alignment-scan [--options] -a disk.img [-a disk.img ...]\n"
84 #: ../align/virt-alignment-scan.pod:13 ../cat/virt-cat.pod:19
85 #: ../cat/virt-filesystems.pod:13 ../cat/virt-ls.pod:19
86 #: ../clone/virt-sysprep.pod:13 ../df/virt-df.pod:21 ../edit/virt-edit.pod:27
87 #: ../erlang/examples/guestfs-erlang.pod:16
88 #: ../examples/guestfs-examples.pod:19 ../examples/guestfs-recipes.pod:18
89 #: ../fish/guestfish.pod:30 ../fish/virt-copy-in.pod:19
90 #: ../fish/virt-copy-out.pod:13 ../fish/virt-tar-in.pod:21
91 #: ../fish/virt-tar-out.pod:15 ../fuse/guestmount.pod:20
92 #: ../inspector/virt-inspector.pod:19 ../java/examples/guestfs-java.pod:15
93 #: ../ocaml/examples/guestfs-ocaml.pod:25 ../perl/examples/guestfs-perl.pod:18
94 #: ../python/examples/guestfs-python.pod:14 ../rescue/virt-rescue.pod:29
95 #: ../resize/virt-resize.pod:13 ../ruby/examples/guestfs-ruby.pod:15
96 #: ../sparsify/virt-sparsify.pod:11 ../src/guestfs.pod:23
97 #: ../test-tool/libguestfs-test-tool.pod:11
98 #: ../tools/virt-list-filesystems.pl:40 ../tools/virt-list-partitions.pl:40
99 #: ../tools/virt-make-fs.pl:47 ../tools/virt-tar.pl:77
100 #: ../tools/virt-win-reg.pl:63
105 #: ../align/virt-alignment-scan.pod:15
107 "When older operating systems install themselves, the partitioning tools "
108 "place partitions at a sector misaligned with the underlying storage "
109 "(commonly the first partition starts on sector C<63>). Misaligned "
110 "partitions can result in an operating system issuing more I/O than should be "
115 #: ../align/virt-alignment-scan.pod:21
117 "The virt-alignment-scan tool checks the alignment of partitions in virtual "
118 "machines and disk images and warns you if there are alignment problems."
122 #: ../align/virt-alignment-scan.pod:25
124 "Currently there is no virt tool for fixing alignment problems. You can only "
125 "reinstall the guest operating system. The following NetApp document "
126 "summarises the problem and possible solutions: L<http://media.netapp.com/"
127 "documents/tr-3747.pdf>"
131 #: ../align/virt-alignment-scan.pod:30
136 #: ../align/virt-alignment-scan.pod:32
137 msgid "To run this tool on a disk image directly, use the I<-a> option:"
141 #: ../align/virt-alignment-scan.pod:34
144 " $ virt-alignment-scan -a winxp.img\n"
145 " /dev/sda1 32256 512 bad (alignment < 4K)\n"
150 #: ../align/virt-alignment-scan.pod:37
153 " $ virt-alignment-scan -a fedora16.img\n"
154 " /dev/sda1 1048576 1024K ok\n"
155 " /dev/sda2 2097152 2048K ok\n"
156 " /dev/sda3 526385152 2048K ok\n"
161 #: ../align/virt-alignment-scan.pod:42
163 "To run the tool on a guest known to libvirt, use the I<-d> option and "
164 "possibly the I<-c> option:"
168 #: ../align/virt-alignment-scan.pod:45
171 " # virt-alignment-scan -d RHEL5\n"
172 " /dev/sda1 32256 512 bad (alignment < 4K)\n"
173 " /dev/sda2 106928640 512 bad (alignment < 4K)\n"
178 #: ../align/virt-alignment-scan.pod:49
181 " $ virt-alignment-scan -c qemu:///system -d Win7TwoDisks\n"
182 " /dev/sda1 1048576 1024K ok\n"
183 " /dev/sda2 105906176 1024K ok\n"
184 " /dev/sdb1 65536 64K ok\n"
189 #: ../align/virt-alignment-scan.pod:54
191 "The output consists of 4 or more whitespace-separated columns. Only the "
192 "first 4 columns are signficant if you want to parse this from a program. "
197 #: ../align/virt-alignment-scan.pod:60
202 #: ../align/virt-alignment-scan.pod:62
204 "the device and partition name (eg. C</dev/sda1> meaning the first partition "
205 "on the first block device)"
209 #: ../align/virt-alignment-scan.pod:65
214 #: ../align/virt-alignment-scan.pod:67
215 msgid "the start of the partition in bytes"
219 #: ../align/virt-alignment-scan.pod:69
224 #: ../align/virt-alignment-scan.pod:71
225 msgid "the alignment in bytes or Kbytes (eg. C<512> or C<4K>)"
229 #: ../align/virt-alignment-scan.pod:73
234 #: ../align/virt-alignment-scan.pod:75
236 "C<ok> if the alignment is best for performance, or C<bad> if the alignment "
237 "can cause performance problems"
241 #: ../align/virt-alignment-scan.pod:78
246 #: ../align/virt-alignment-scan.pod:80
247 msgid "optional free-text explanation."
251 #: ../align/virt-alignment-scan.pod:84
253 "The exit code from the program changes depending on whether poorly aligned "
254 "partitions were found. See L</EXIT STATUS> below."
258 #: ../align/virt-alignment-scan.pod:87
259 msgid "If you just want the exit code with no output, use the I<-q> option."
263 #: ../align/virt-alignment-scan.pod:89 ../cat/virt-cat.pod:62
264 #: ../cat/virt-filesystems.pod:91 ../cat/virt-ls.pod:261
265 #: ../clone/virt-sysprep.pod:42 ../df/virt-df.pod:59 ../edit/virt-edit.pod:62
266 #: ../fish/guestfish.pod:148 ../fish/virt-copy-in.pod:45
267 #: ../fish/virt-copy-out.pod:34 ../fish/virt-tar-in.pod:42
268 #: ../fish/virt-tar-out.pod:36 ../fuse/guestmount.pod:92
269 #: ../inspector/virt-inspector.pod:55 ../rescue/virt-rescue.pod:84
270 #: ../resize/virt-resize.pod:262 ../sparsify/virt-sparsify.pod:99
271 #: ../test-tool/libguestfs-test-tool.pod:36
272 #: ../tools/virt-list-filesystems.pl:53 ../tools/virt-list-partitions.pl:54
273 #: ../tools/virt-make-fs.pl:153 ../tools/virt-tar.pl:103
274 #: ../tools/virt-win-reg.pl:96
279 #: ../align/virt-alignment-scan.pod:93 ../cat/virt-cat.pod:66
280 #: ../cat/virt-filesystems.pod:95 ../cat/virt-ls.pod:265
281 #: ../clone/virt-sysprep.pod:46 ../df/virt-df.pod:63 ../edit/virt-edit.pod:66
282 #: ../fish/guestfish.pod:152 ../fuse/guestmount.pod:160
283 #: ../inspector/virt-inspector.pod:59 ../rescue/virt-rescue.pod:88
284 #: ../resize/virt-resize.pod:266 ../sparsify/virt-sparsify.pod:103
285 #: ../test-tool/libguestfs-test-tool.pod:40
286 #: ../tools/virt-list-filesystems.pl:61 ../tools/virt-list-partitions.pl:62
287 #: ../tools/virt-make-fs.pl:161 ../tools/virt-tar.pl:111
288 #: ../tools/virt-win-reg.pl:104
293 #: ../align/virt-alignment-scan.pod:95 ../cat/virt-cat.pod:68
294 #: ../cat/virt-filesystems.pod:97 ../cat/virt-ls.pod:267
295 #: ../clone/virt-sysprep.pod:48 ../df/virt-df.pod:65 ../edit/virt-edit.pod:68
296 #: ../inspector/virt-inspector.pod:61 ../rescue/virt-rescue.pod:90
297 #: ../tools/virt-list-filesystems.pl:63 ../tools/virt-list-partitions.pl:64
298 #: ../tools/virt-make-fs.pl:163 ../tools/virt-tar.pl:113
299 #: ../tools/virt-win-reg.pl:106
300 msgid "Display brief help."
304 #: ../align/virt-alignment-scan.pod:97 ../cat/virt-cat.pod:70
305 #: ../cat/virt-filesystems.pod:99 ../cat/virt-ls.pod:269
306 #: ../clone/virt-sysprep.pod:50 ../df/virt-df.pod:67 ../edit/virt-edit.pod:70
307 #: ../inspector/virt-inspector.pod:63 ../rescue/virt-rescue.pod:92
312 #: ../align/virt-alignment-scan.pod:99 ../cat/virt-cat.pod:72
313 #: ../cat/virt-filesystems.pod:101 ../cat/virt-ls.pod:271
314 #: ../clone/virt-sysprep.pod:52 ../df/virt-df.pod:69 ../edit/virt-edit.pod:72
315 #: ../inspector/virt-inspector.pod:65 ../rescue/virt-rescue.pod:94
316 msgid "B<--add> file"
320 #: ../align/virt-alignment-scan.pod:101 ../clone/virt-sysprep.pod:54
321 msgid "Add I<file> which should be a disk image from a virtual machine."
325 #: ../align/virt-alignment-scan.pod:103 ../cat/virt-cat.pod:78
326 #: ../cat/virt-filesystems.pod:107 ../cat/virt-ls.pod:277
327 #: ../clone/virt-sysprep.pod:56 ../df/virt-df.pod:75 ../edit/virt-edit.pod:78
328 #: ../fish/guestfish.pod:174 ../fuse/guestmount.pod:102
329 #: ../inspector/virt-inspector.pod:71 ../rescue/virt-rescue.pod:100
331 "The format of the disk image is auto-detected. To override this and force a "
332 "particular format use the I<--format=..> option."
336 #: ../align/virt-alignment-scan.pod:106 ../cat/virt-cat.pod:81
337 #: ../cat/virt-filesystems.pod:125 ../cat/virt-ls.pod:291
338 #: ../clone/virt-sysprep.pod:59 ../df/virt-df.pod:78
339 #: ../rescue/virt-rescue.pod:107
344 #: ../align/virt-alignment-scan.pod:108 ../cat/virt-cat.pod:83
345 #: ../cat/virt-filesystems.pod:127 ../cat/virt-ls.pod:293
346 #: ../clone/virt-sysprep.pod:61 ../df/virt-df.pod:80
347 #: ../rescue/virt-rescue.pod:109
348 msgid "B<--connect> URI"
352 #: ../align/virt-alignment-scan.pod:110 ../cat/virt-cat.pod:85
353 #: ../cat/virt-filesystems.pod:129 ../cat/virt-ls.pod:295
354 #: ../clone/virt-sysprep.pod:63 ../df/virt-df.pod:82 ../edit/virt-edit.pod:99
355 #: ../inspector/virt-inspector.pod:78 ../rescue/virt-rescue.pod:111
356 #: ../tools/virt-list-filesystems.pl:81 ../tools/virt-list-partitions.pl:82
357 #: ../tools/virt-tar.pl:131 ../tools/virt-win-reg.pl:132
359 "If using libvirt, connect to the given I<URI>. If omitted, then we connect "
360 "to the default libvirt hypervisor."
364 #: ../align/virt-alignment-scan.pod:113 ../cat/virt-cat.pod:88
365 #: ../cat/virt-filesystems.pod:132 ../cat/virt-ls.pod:298
366 #: ../clone/virt-sysprep.pod:66 ../df/virt-df.pod:85
367 #: ../rescue/virt-rescue.pod:114
369 "If you specify guest block devices directly (I<-a>), then libvirt is not "
374 #: ../align/virt-alignment-scan.pod:116 ../cat/virt-cat.pod:91
375 #: ../cat/virt-filesystems.pod:141 ../cat/virt-ls.pod:307
376 #: ../clone/virt-sysprep.pod:69 ../df/virt-df.pod:94 ../edit/virt-edit.pod:105
377 #: ../inspector/virt-inspector.pod:85 ../rescue/virt-rescue.pod:117
382 #: ../align/virt-alignment-scan.pod:118 ../cat/virt-cat.pod:93
383 #: ../cat/virt-filesystems.pod:143 ../cat/virt-ls.pod:309
384 #: ../clone/virt-sysprep.pod:71 ../df/virt-df.pod:96 ../edit/virt-edit.pod:107
385 #: ../inspector/virt-inspector.pod:87 ../rescue/virt-rescue.pod:119
386 msgid "B<--domain> guest"
390 #: ../align/virt-alignment-scan.pod:120 ../cat/virt-cat.pod:95
391 #: ../cat/virt-filesystems.pod:145 ../cat/virt-ls.pod:311
392 #: ../clone/virt-sysprep.pod:73 ../df/virt-df.pod:98 ../edit/virt-edit.pod:109
393 #: ../inspector/virt-inspector.pod:89 ../rescue/virt-rescue.pod:121
395 "Add all the disks from the named libvirt guest. Domain UUIDs can be used "
400 #: ../align/virt-alignment-scan.pod:123 ../cat/virt-cat.pod:105
401 #: ../cat/virt-filesystems.pod:170 ../cat/virt-ls.pod:328
402 #: ../clone/virt-sysprep.pod:95 ../df/virt-df.pod:101
403 #: ../fish/guestfish.pod:233 ../fuse/guestmount.pod:142
404 #: ../inspector/virt-inspector.pod:99 ../rescue/virt-rescue.pod:124
405 msgid "B<--format=raw|qcow2|..>"
409 #: ../align/virt-alignment-scan.pod:125 ../cat/virt-cat.pod:107
410 #: ../cat/virt-filesystems.pod:172 ../cat/virt-ls.pod:330
411 #: ../clone/virt-sysprep.pod:97 ../df/virt-df.pod:103
412 #: ../edit/virt-edit.pod:134 ../fish/guestfish.pod:235
413 #: ../fuse/guestmount.pod:144 ../inspector/virt-inspector.pod:101
414 #: ../rescue/virt-rescue.pod:126
419 #: ../align/virt-alignment-scan.pod:127 ../cat/virt-cat.pod:109
420 #: ../cat/virt-filesystems.pod:174 ../cat/virt-ls.pod:332
421 #: ../clone/virt-sysprep.pod:99 ../df/virt-df.pod:105
422 #: ../edit/virt-edit.pod:136 ../fish/guestfish.pod:237
423 #: ../fuse/guestmount.pod:146 ../rescue/virt-rescue.pod:128
425 "The default for the I<-a> option is to auto-detect the format of the disk "
426 "image. Using this forces the disk format for I<-a> options which follow on "
427 "the command line. Using I<--format> with no argument switches back to auto-"
428 "detection for subsequent I<-a> options."
432 #: ../align/virt-alignment-scan.pod:132 ../cat/virt-cat.pod:114
433 #: ../cat/virt-filesystems.pod:179 ../cat/virt-ls.pod:337
434 #: ../clone/virt-sysprep.pod:104 ../df/virt-df.pod:110
435 #: ../edit/virt-edit.pod:141 ../fish/guestfish.pod:242
436 #: ../fish/guestfish.pod:673 ../inspector/virt-inspector.pod:336
437 #: ../rescue/virt-rescue.pod:133 ../src/guestfs.pod:2877
442 #: ../align/virt-alignment-scan.pod:134
445 " virt-alignment-scan --format=raw -a disk.img\n"
450 #: ../align/virt-alignment-scan.pod:136 ../cat/virt-cat.pod:118
451 #: ../cat/virt-filesystems.pod:183 ../cat/virt-ls.pod:341
452 #: ../clone/virt-sysprep.pod:108 ../df/virt-df.pod:114
453 #: ../edit/virt-edit.pod:145 ../fish/guestfish.pod:246
454 #: ../rescue/virt-rescue.pod:137
455 msgid "forces raw format (no auto-detection) for C<disk.img>."
459 #: ../align/virt-alignment-scan.pod:138
462 " virt-alignment-scan --format=raw -a disk.img --format -a another.img\n"
467 #: ../align/virt-alignment-scan.pod:140 ../cat/virt-cat.pod:122
468 #: ../cat/virt-filesystems.pod:187 ../cat/virt-ls.pod:345
469 #: ../clone/virt-sysprep.pod:112 ../df/virt-df.pod:118
470 #: ../edit/virt-edit.pod:149 ../fish/guestfish.pod:250
471 #: ../rescue/virt-rescue.pod:141
473 "forces raw format (no auto-detection) for C<disk.img> and reverts to auto-"
474 "detection for C<another.img>."
478 #: ../align/virt-alignment-scan.pod:143 ../cat/virt-cat.pod:125
479 #: ../cat/virt-filesystems.pod:190 ../cat/virt-ls.pod:348
480 #: ../clone/virt-sysprep.pod:115 ../df/virt-df.pod:121
481 #: ../edit/virt-edit.pod:152 ../rescue/virt-rescue.pod:144
483 "If you have untrusted raw-format guest disk images, you should use this "
484 "option to specify the disk format. This avoids a possible security problem "
485 "with malicious guests (CVE-2010-3851)."
489 #: ../align/virt-alignment-scan.pod:147 ../resize/virt-resize.pod:491
490 #: ../sparsify/virt-sparsify.pod:153
495 #: ../align/virt-alignment-scan.pod:149 ../resize/virt-resize.pod:493
496 #: ../sparsify/virt-sparsify.pod:155
501 #: ../align/virt-alignment-scan.pod:151
503 "Don't produce any output. Just set the exit code (see L</EXIT STATUS> "
508 #: ../align/virt-alignment-scan.pod:154 ../cat/virt-cat.pod:134
509 #: ../cat/virt-filesystems.pod:261 ../cat/virt-ls.pod:425
510 #: ../clone/virt-sysprep.pod:138 ../df/virt-df.pod:173
511 #: ../edit/virt-edit.pod:161 ../fish/guestfish.pod:390
512 #: ../fuse/guestmount.pod:266 ../inspector/virt-inspector.pod:119
513 #: ../rescue/virt-rescue.pod:182 ../sparsify/virt-sparsify.pod:159
518 #: ../align/virt-alignment-scan.pod:156 ../cat/virt-cat.pod:136
519 #: ../cat/virt-filesystems.pod:263 ../cat/virt-ls.pod:427
520 #: ../clone/virt-sysprep.pod:140 ../df/virt-df.pod:175
521 #: ../edit/virt-edit.pod:163 ../fish/guestfish.pod:392
522 #: ../fuse/guestmount.pod:268 ../inspector/virt-inspector.pod:121
523 #: ../rescue/virt-rescue.pod:184 ../sparsify/virt-sparsify.pod:161
528 #: ../align/virt-alignment-scan.pod:158 ../cat/virt-cat.pod:138
529 #: ../cat/virt-filesystems.pod:265 ../cat/virt-ls.pod:429
530 #: ../clone/virt-sysprep.pod:142 ../df/virt-df.pod:177
531 #: ../edit/virt-edit.pod:165 ../inspector/virt-inspector.pod:123
532 #: ../rescue/virt-rescue.pod:186 ../sparsify/virt-sparsify.pod:163
533 msgid "Enable verbose messages for debugging."
537 #: ../align/virt-alignment-scan.pod:160 ../cat/virt-cat.pod:140
538 #: ../cat/virt-filesystems.pod:267 ../cat/virt-ls.pod:431
539 #: ../clone/virt-sysprep.pod:144 ../df/virt-df.pod:179
540 #: ../edit/virt-edit.pod:167 ../fish/guestfish.pod:397
541 #: ../fuse/guestmount.pod:272 ../inspector/virt-inspector.pod:125
542 #: ../rescue/virt-rescue.pod:188 ../resize/virt-resize.pod:561
543 #: ../sparsify/virt-sparsify.pod:165
548 #: ../align/virt-alignment-scan.pod:162 ../cat/virt-cat.pod:142
549 #: ../cat/virt-filesystems.pod:269 ../cat/virt-ls.pod:433
550 #: ../clone/virt-sysprep.pod:146 ../df/virt-df.pod:181
551 #: ../edit/virt-edit.pod:169 ../fish/guestfish.pod:399
552 #: ../fuse/guestmount.pod:274 ../inspector/virt-inspector.pod:127
553 #: ../rescue/virt-rescue.pod:190 ../resize/virt-resize.pod:563
554 #: ../sparsify/virt-sparsify.pod:167 ../tools/virt-list-filesystems.pl:69
555 #: ../tools/virt-list-partitions.pl:70 ../tools/virt-make-fs.pl:169
556 #: ../tools/virt-tar.pl:119 ../tools/virt-win-reg.pl:112
561 #: ../align/virt-alignment-scan.pod:164 ../cat/virt-cat.pod:144
562 #: ../cat/virt-filesystems.pod:271 ../cat/virt-ls.pod:435
563 #: ../clone/virt-sysprep.pod:148 ../df/virt-df.pod:183
564 #: ../edit/virt-edit.pod:171 ../inspector/virt-inspector.pod:129
565 #: ../rescue/virt-rescue.pod:192 ../resize/virt-resize.pod:565
566 #: ../sparsify/virt-sparsify.pod:169 ../tools/virt-list-filesystems.pl:71
567 #: ../tools/virt-list-partitions.pl:72 ../tools/virt-make-fs.pl:171
568 #: ../tools/virt-tar.pl:121 ../tools/virt-win-reg.pl:114
569 msgid "Display version number and exit."
573 #: ../align/virt-alignment-scan.pod:166 ../cat/virt-cat.pod:146
574 #: ../cat/virt-filesystems.pod:281 ../cat/virt-ls.pod:437
575 #: ../clone/virt-sysprep.pod:150 ../df/virt-df.pod:185
576 #: ../edit/virt-edit.pod:173 ../fish/guestfish.pod:412
577 #: ../fuse/guestmount.pod:287 ../inspector/virt-inspector.pod:131
578 #: ../rescue/virt-rescue.pod:203 ../sparsify/virt-sparsify.pod:171
579 #: ../tools/virt-tar.pl:158
584 #: ../align/virt-alignment-scan.pod:168 ../cat/virt-cat.pod:148
585 #: ../cat/virt-filesystems.pod:283 ../cat/virt-ls.pod:439
586 #: ../clone/virt-sysprep.pod:152 ../df/virt-df.pod:187
587 #: ../edit/virt-edit.pod:175 ../inspector/virt-inspector.pod:133
588 #: ../rescue/virt-rescue.pod:205 ../sparsify/virt-sparsify.pod:173
589 msgid "Enable tracing of libguestfs API calls."
593 #: ../align/virt-alignment-scan.pod:172
594 msgid "RECOMMENDED ALIGNMENT"
598 #: ../align/virt-alignment-scan.pod:174
600 "Operating systems older than Windows 2008 and Linux before ca.2010 place the "
601 "first sector of the first partition at sector 63, with a 512 byte sector "
602 "size. This happens because of a historical accident. Drives have to report "
603 "a cylinder / head / sector (CHS) geometry to the BIOS. The geometry is "
604 "completely meaningless on modern drives, but it happens that the geometry "
605 "reported always has 63 sectors per track. The operating system therefore "
606 "places the first partition at the start of the second \"track\", at sector "
611 #: ../align/virt-alignment-scan.pod:183
613 "When the guest OS is virtualized, the host operating system and hypervisor "
614 "may prefer accesses aligned to one of:"
618 #: ../align/virt-alignment-scan.pod:188
623 #: ../align/virt-alignment-scan.pod:190
625 "if the host OS uses local storage directly on hard drive partitions, and the "
626 "hard drive has 512 byte physical sectors."
630 #: ../align/virt-alignment-scan.pod:193
635 #: ../align/virt-alignment-scan.pod:195
637 "for local storage on new hard drives with 4Kbyte physical sectors; for file-"
638 "backed storage on filesystems with 4Kbyte block size; or for some types of "
639 "network-attached storage."
643 #: ../align/virt-alignment-scan.pod:199
648 #: ../align/virt-alignment-scan.pod:201
650 "for high-end network-attached storage. This is the optimal block size for "
651 "some NetApp hardware."
655 #: ../align/virt-alignment-scan.pod:204
660 #: ../align/virt-alignment-scan.pod:206
661 msgid "see L</1 MB PARTITION ALIGNMENT> below."
665 #: ../align/virt-alignment-scan.pod:210
667 "Partitions which are not aligned correctly to the underlying storage cause "
668 "extra I/O. For example:"
672 #: ../align/virt-alignment-scan.pod:213
676 " +--------------------------+------\n"
678 " | filesystem block |\n"
679 " ---+------------------+------+-------------------+-----+---\n"
680 " | host block | host block |\n"
682 " ---+-------------------------+-------------------------+---\n"
687 #: ../align/virt-alignment-scan.pod:222
689 "In this example, each time a 4K guest block is read, two blocks on the host "
690 "must be accessed (so twice as much I/O is done). When a 4K guest block is "
691 "written, two host blocks must first be read, the old and new data combined, "
692 "and the two blocks written back (4x I/O)."
696 #: ../align/virt-alignment-scan.pod:227
697 msgid "LINUX HOST BLOCK AND I/O SIZE"
701 #: ../align/virt-alignment-scan.pod:229
703 "New versions of the Linux kernel expose the physical and logical block size, "
704 "and minimum and recommended I/O size."
708 #: ../align/virt-alignment-scan.pod:232
709 msgid "For a typical consumer hard drive with 512 byte sectors:"
713 #: ../align/virt-alignment-scan.pod:234
716 " $ cat /sys/block/sda/queue/hw_sector_size\n"
718 " $ cat /sys/block/sda/queue/physical_block_size\n"
720 " $ cat /sys/block/sda/queue/logical_block_size\n"
722 " $ cat /sys/block/sda/queue/minimum_io_size\n"
724 " $ cat /sys/block/sda/queue/optimal_io_size\n"
730 #: ../align/virt-alignment-scan.pod:245
731 msgid "For a new consumer hard drive with 4Kbyte sectors:"
735 #: ../align/virt-alignment-scan.pod:247
738 " $ cat /sys/block/sda/queue/hw_sector_size\n"
740 " $ cat /sys/block/sda/queue/physical_block_size\n"
742 " $ cat /sys/block/sda/queue/logical_block_size\n"
744 " $ cat /sys/block/sda/queue/minimum_io_size\n"
746 " $ cat /sys/block/sda/queue/optimal_io_size\n"
752 #: ../align/virt-alignment-scan.pod:258
753 msgid "For a NetApp LUN:"
757 #: ../align/virt-alignment-scan.pod:260
760 " $ cat /sys/block/sdc/queue/logical_block_size\n"
762 " $ cat /sys/block/sdc/queue/physical_block_size\n"
764 " $ cat /sys/block/sdc/queue/minimum_io_size\n"
766 " $ cat /sys/block/sdc/queue/optimal_io_size\n"
772 #: ../align/virt-alignment-scan.pod:269
774 "The NetApp allows 512 byte accesses (but they will be very inefficient), "
775 "prefers a minimum 4K I/O size, but the optimal I/O size is 64K."
779 #: ../align/virt-alignment-scan.pod:273
781 "For detailed information about what these numbers mean, see L<http://docs."
782 "redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/"
783 "Storage_Administration_Guide/newstorage-iolimits.html>"
787 #: ../align/virt-alignment-scan.pod:276
789 "[Thanks to Matt Booth for providing 4K drive data. Thanks to Mike Snitzer "
790 "for providing NetApp data and additional information.]"
794 #: ../align/virt-alignment-scan.pod:279
795 msgid "1 MB PARTITION ALIGNMENT"
799 #: ../align/virt-alignment-scan.pod:281
801 "Microsoft picked 1 MB as the default alignment for all partitions starting "
802 "with Windows 2008 Server, and Linux has followed this."
806 #: ../align/virt-alignment-scan.pod:284
808 "Assuming 512 byte sectors in the guest, you will now see the first partition "
809 "starting at sector 2048, and subsequent partitions (if any) will start at a "
810 "multiple of 2048 sectors."
814 #: ../align/virt-alignment-scan.pod:288
816 "1 MB alignment is compatible with all current alignment requirements (4K, "
817 "64K) and provides room for future growth in physical block sizes."
821 #: ../align/virt-alignment-scan.pod:291
822 msgid "SETTING ALIGNMENT"
826 #: ../align/virt-alignment-scan.pod:293
828 "L<virt-resize(1)> can change the alignment of the partitions of some "
829 "guests. Currently it can fully align all the partitions of all Windows "
830 "guests, and it will fix the bootloader where necessary. For Linux guests, "
831 "it can align the second and subsequent partitions, so the majority of OS "
832 "accesses except at boot will be aligned."
836 #: ../align/virt-alignment-scan.pod:299
838 "Another way to correct partition alignment problems is to reinstall your "
839 "guest operating systems. If you install operating systems from templates, "
840 "ensure these have correct partition alignment too."
844 #: ../align/virt-alignment-scan.pod:303
846 "For older versions of Windows, the following NetApp document contains useful "
847 "information: L<http://media.netapp.com/documents/tr-3747.pdf>"
851 #: ../align/virt-alignment-scan.pod:306
853 "For Red Hat Enterprise Linux E<le> 5, use a Kickstart script that contains "
854 "an explicit C<%pre> section that creates aligned partitions using L<parted(8)"
855 ">. Do not use the Kickstart C<part> command. The NetApp document above "
856 "contains an example."
860 #: ../align/virt-alignment-scan.pod:311 ../cat/virt-cat.pod:231
861 #: ../cat/virt-filesystems.pod:373 ../cat/virt-ls.pod:483
862 #: ../clone/virt-sysprep.pod:475 ../df/virt-df.pod:215
863 #: ../edit/virt-edit.pod:342 ../inspector/virt-inspector.pod:352
864 #: ../rescue/virt-rescue.pod:266 ../resize/virt-resize.pod:676
865 #: ../tools/virt-list-filesystems.pl:188 ../tools/virt-list-partitions.pl:258
866 #: ../tools/virt-make-fs.pl:550 ../tools/virt-tar.pl:289
867 #: ../tools/virt-win-reg.pl:744
868 msgid "SHELL QUOTING"
872 #: ../align/virt-alignment-scan.pod:313 ../cat/virt-cat.pod:233
873 #: ../cat/virt-filesystems.pod:375 ../cat/virt-ls.pod:485
874 #: ../clone/virt-sysprep.pod:477 ../df/virt-df.pod:217
875 #: ../edit/virt-edit.pod:344 ../inspector/virt-inspector.pod:354
876 #: ../rescue/virt-rescue.pod:268 ../resize/virt-resize.pod:678
877 #: ../tools/virt-list-filesystems.pl:190 ../tools/virt-list-partitions.pl:260
878 #: ../tools/virt-make-fs.pl:552 ../tools/virt-tar.pl:291
879 #: ../tools/virt-win-reg.pl:752
881 "Libvirt guest names can contain arbitrary characters, some of which have "
882 "meaning to the shell such as C<#> and space. You may need to quote or "
883 "escape these characters on the command line. See the shell manual page L<sh"
888 #: ../align/virt-alignment-scan.pod:318 ../cat/virt-cat.pod:238
889 #: ../cat/virt-filesystems.pod:380 ../cat/virt-ls.pod:490
890 #: ../clone/virt-sysprep.pod:482 ../df/virt-df.pod:222
891 #: ../edit/virt-edit.pod:349 ../fish/guestfish.pod:1114
892 #: ../fuse/guestmount.pod:312 ../inspector/virt-inspector.pod:375
893 #: ../resize/virt-resize.pod:683 ../sparsify/virt-sparsify.pod:227
894 #: ../test-tool/libguestfs-test-tool.pod:90
899 #: ../align/virt-alignment-scan.pod:320
900 msgid "This program returns:"
904 #: ../align/virt-alignment-scan.pod:324 ../align/virt-alignment-scan.pod:330
905 #: ../align/virt-alignment-scan.pod:336 ../align/virt-alignment-scan.pod:343
906 #: ../cat/virt-cat.pod:177 ../cat/virt-cat.pod:182 ../cat/virt-cat.pod:187
907 #: ../cat/virt-cat.pod:198 ../cat/virt-cat.pod:202
908 #: ../clone/virt-sysprep.pod:283 ../clone/virt-sysprep.pod:287
909 #: ../clone/virt-sysprep.pod:291 ../clone/virt-sysprep.pod:295
910 #: ../clone/virt-sysprep.pod:310 ../clone/virt-sysprep.pod:314
911 #: ../clone/virt-sysprep.pod:318 ../clone/virt-sysprep.pod:322
912 #: ../clone/virt-sysprep.pod:326 ../clone/virt-sysprep.pod:362
913 #: ../clone/virt-sysprep.pod:384 ../clone/virt-sysprep.pod:388
914 #: ../df/virt-df.pod:148 ../df/virt-df.pod:154 ../edit/virt-edit.pod:266
915 #: ../edit/virt-edit.pod:271 ../edit/virt-edit.pod:276
916 #: ../edit/virt-edit.pod:287 ../edit/virt-edit.pod:291
917 #: ../examples/guestfs-recipes.pod:98 ../examples/guestfs-recipes.pod:102
918 #: ../examples/guestfs-recipes.pod:106 ../examples/guestfs-recipes.pod:132
919 #: ../examples/guestfs-recipes.pod:137 ../examples/guestfs-recipes.pod:227
920 #: ../examples/guestfs-recipes.pod:231 ../examples/guestfs-recipes.pod:235
921 #: ../examples/guestfs-recipes.pod:239 ../examples/guestfs-recipes.pod:243
922 #: ../fish/guestfish-actions.pod:13 ../fish/guestfish-actions.pod:20
923 #: ../fish/guestfish-actions.pod:441 ../fish/guestfish-actions.pod:449
924 #: ../fish/guestfish-actions.pod:456 ../fish/guestfish-actions.pod:463
925 #: ../fish/guestfish-actions.pod:1262 ../fish/guestfish-actions.pod:1266
926 #: ../fish/guestfish-actions.pod:1270 ../fish/guestfish-actions.pod:1274
927 #: ../fish/guestfish-actions.pod:1282 ../fish/guestfish-actions.pod:1286
928 #: ../fish/guestfish-actions.pod:1290 ../fish/guestfish-actions.pod:1300
929 #: ../fish/guestfish-actions.pod:1304 ../fish/guestfish-actions.pod:1308
930 #: ../fish/guestfish-actions.pod:1398 ../fish/guestfish-actions.pod:1402
931 #: ../fish/guestfish-actions.pod:1407 ../fish/guestfish-actions.pod:1412
932 #: ../fish/guestfish-actions.pod:1454 ../fish/guestfish-actions.pod:1458
933 #: ../fish/guestfish-actions.pod:1463 ../fish/guestfish-actions.pod:1719
934 #: ../fish/guestfish-actions.pod:1726 ../fish/guestfish-actions.pod:1733
935 #: ../fish/guestfish-actions.pod:2136 ../fish/guestfish-actions.pod:2142
936 #: ../fish/guestfish-actions.pod:2150 ../fish/guestfish-actions.pod:2157
937 #: ../fish/guestfish-actions.pod:2164 ../fish/guestfish.pod:445
938 #: ../fish/guestfish.pod:449 ../fish/guestfish.pod:453
939 #: ../fish/guestfish.pod:457 ../inspector/virt-inspector.pod:393
940 #: ../inspector/virt-inspector.pod:397 ../resize/virt-resize.pod:359
941 #: ../resize/virt-resize.pod:363 ../resize/virt-resize.pod:372
942 #: ../resize/virt-resize.pod:378 ../sparsify/virt-sparsify.pod:32
943 #: ../sparsify/virt-sparsify.pod:39 ../sparsify/virt-sparsify.pod:43
944 #: ../sparsify/virt-sparsify.pod:49 ../sparsify/virt-sparsify.pod:54
945 #: ../sparsify/virt-sparsify.pod:58 ../sparsify/virt-sparsify.pod:64
946 #: ../src/guestfs-actions.pod:22 ../src/guestfs-actions.pod:29
947 #: ../src/guestfs-actions.pod:641 ../src/guestfs-actions.pod:649
948 #: ../src/guestfs-actions.pod:656 ../src/guestfs-actions.pod:663
949 #: ../src/guestfs-actions.pod:2079 ../src/guestfs-actions.pod:2083
950 #: ../src/guestfs-actions.pod:2087 ../src/guestfs-actions.pod:2091
951 #: ../src/guestfs-actions.pod:2099 ../src/guestfs-actions.pod:2103
952 #: ../src/guestfs-actions.pod:2107 ../src/guestfs-actions.pod:2117
953 #: ../src/guestfs-actions.pod:2121 ../src/guestfs-actions.pod:2125
954 #: ../src/guestfs-actions.pod:2263 ../src/guestfs-actions.pod:2267
955 #: ../src/guestfs-actions.pod:2272 ../src/guestfs-actions.pod:2277
956 #: ../src/guestfs-actions.pod:2338 ../src/guestfs-actions.pod:2342
957 #: ../src/guestfs-actions.pod:2347 ../src/guestfs-actions.pod:2762
958 #: ../src/guestfs-actions.pod:2769 ../src/guestfs-actions.pod:2776
959 #: ../src/guestfs-actions.pod:3321 ../src/guestfs-actions.pod:3327
960 #: ../src/guestfs-actions.pod:3335 ../src/guestfs-actions.pod:3342
961 #: ../src/guestfs-actions.pod:3349 ../src/guestfs.pod:403
962 #: ../src/guestfs.pod:408 ../src/guestfs.pod:413 ../src/guestfs.pod:417
963 #: ../src/guestfs.pod:422 ../src/guestfs.pod:426 ../src/guestfs.pod:431
964 #: ../src/guestfs.pod:436 ../src/guestfs.pod:1109 ../src/guestfs.pod:1113
965 #: ../src/guestfs.pod:1117 ../src/guestfs.pod:1122 ../src/guestfs.pod:1130
966 #: ../src/guestfs.pod:1149 ../src/guestfs.pod:1157 ../src/guestfs.pod:1179
967 #: ../src/guestfs.pod:1183 ../src/guestfs.pod:1187 ../src/guestfs.pod:1191
968 #: ../src/guestfs.pod:1195 ../src/guestfs.pod:1199 ../src/guestfs.pod:1689
969 #: ../src/guestfs.pod:1694 ../src/guestfs.pod:1698 ../src/guestfs.pod:1800
970 #: ../src/guestfs.pod:1805 ../src/guestfs.pod:1809 ../src/guestfs.pod:1819
971 #: ../src/guestfs.pod:2108 ../src/guestfs.pod:2113 ../src/guestfs.pod:2119
972 #: ../src/guestfs.pod:2127 ../src/guestfs.pod:2645 ../src/guestfs.pod:2651
973 #: ../src/guestfs.pod:2656 ../src/guestfs.pod:2662 ../src/guestfs.pod:3062
974 #: ../src/guestfs.pod:3067 ../src/guestfs.pod:3071 ../src/guestfs.pod:3075
975 #: ../src/guestfs.pod:3079 ../src/guestfs.pod:3093 ../src/guestfs.pod:3098
976 #: ../src/guestfs.pod:3329 ../src/guestfs.pod:3333 ../src/guestfs.pod:3337
977 #: ../src/guestfs.pod:3341 ../tools/virt-win-reg.pl:197
978 #: ../tools/virt-win-reg.pl:202 ../tools/virt-win-reg.pl:208
979 #: ../tools/virt-win-reg.pl:721 ../tools/virt-win-reg.pl:727
980 #: ../tools/virt-win-reg.pl:733
985 #: ../align/virt-alignment-scan.pod:326
990 #: ../align/virt-alignment-scan.pod:328
992 "successful exit, all partitions are aligned E<ge> 64K for best performance"
996 #: ../align/virt-alignment-scan.pod:332
1001 #: ../align/virt-alignment-scan.pod:334
1002 msgid "an error scanning the disk image or guest"
1006 #: ../align/virt-alignment-scan.pod:338
1011 #: ../align/virt-alignment-scan.pod:340
1013 "successful exit, some partitions have alignment E<lt> 64K which can result "
1014 "in poor performance on high end network storage"
1018 #: ../align/virt-alignment-scan.pod:345
1023 #: ../align/virt-alignment-scan.pod:347
1025 "successful exit, some partitions have alignment E<lt> 4K which can result in "
1026 "poor performance on most hypervisors"
1030 #: ../align/virt-alignment-scan.pod:352 ../cat/virt-cat.pod:243
1031 #: ../cat/virt-filesystems.pod:385 ../cat/virt-ls.pod:495
1032 #: ../clone/virt-sysprep.pod:486 ../df/virt-df.pod:227
1033 #: ../edit/virt-edit.pod:354 ../erlang/examples/guestfs-erlang.pod:97
1034 #: ../examples/guestfs-examples.pod:33 ../examples/guestfs-recipes.pod:384
1035 #: ../fish/guestfish.pod:1268 ../fish/virt-copy-in.pod:50
1036 #: ../fish/virt-copy-out.pod:39 ../fish/virt-tar-in.pod:47
1037 #: ../fish/virt-tar-out.pod:41 ../fuse/guestmount.pod:317
1038 #: ../inspector/virt-inspector.pod:380 ../java/examples/guestfs-java.pod:45
1039 #: ../ocaml/examples/guestfs-ocaml.pod:78 ../perl/examples/guestfs-perl.pod:39
1040 #: ../python/examples/guestfs-python.pod:42 ../rescue/virt-rescue.pod:288
1041 #: ../resize/virt-resize.pod:688 ../ruby/examples/guestfs-ruby.pod:36
1042 #: ../sparsify/virt-sparsify.pod:251 ../src/guestfs.pod:3270
1043 #: ../test-tool/libguestfs-test-tool.pod:100
1044 #: ../tools/virt-list-filesystems.pl:195 ../tools/virt-list-partitions.pl:265
1045 #: ../tools/virt-make-fs.pl:557 ../tools/virt-tar.pl:296
1046 #: ../tools/virt-win-reg.pl:757
1051 #: ../align/virt-alignment-scan.pod:354
1053 "L<guestfs(3)>, L<guestfish(1)>, L<virt-filesystems(1)>, L<virt-rescue(1)>, "
1054 "L<virt-resize(1)>, L<http://libguestfs.org/>."
1058 #: ../align/virt-alignment-scan.pod:361 ../cat/virt-cat.pod:252
1059 #: ../cat/virt-filesystems.pod:396 ../cat/virt-ls.pod:507
1060 #: ../clone/virt-sysprep.pod:501 ../df/virt-df.pod:235
1061 #: ../edit/virt-edit.pod:368 ../rescue/virt-rescue.pod:296
1062 #: ../resize/virt-resize.pod:711 ../sparsify/virt-sparsify.pod:264
1063 #: ../tools/virt-list-filesystems.pl:208 ../tools/virt-list-partitions.pl:277
1064 #: ../tools/virt-make-fs.pl:582 ../tools/virt-tar.pl:311
1065 #: ../tools/virt-win-reg.pl:783
1070 #: ../align/virt-alignment-scan.pod:363 ../cat/virt-cat.pod:254
1071 #: ../cat/virt-filesystems.pod:398 ../cat/virt-ls.pod:509
1072 #: ../clone/virt-sysprep.pod:503 ../df/virt-df.pod:237
1073 #: ../edit/virt-edit.pod:370 ../inspector/virt-inspector.pod:395
1074 #: ../rescue/virt-rescue.pod:298 ../resize/virt-resize.pod:713
1075 #: ../sparsify/virt-sparsify.pod:266 ../tools/virt-list-filesystems.pl:210
1076 #: ../tools/virt-list-partitions.pl:279 ../tools/virt-make-fs.pl:584
1077 #: ../tools/virt-tar.pl:313 ../tools/virt-win-reg.pl:785
1078 msgid "Richard W.M. Jones L<http://people.redhat.com/~rjones/>"
1082 #: ../align/virt-alignment-scan.pod:365 ../cat/virt-cat.pod:256
1083 #: ../cat/virt-filesystems.pod:400 ../cat/virt-ls.pod:511
1084 #: ../clone/virt-sysprep.pod:505 ../df/virt-df.pod:239
1085 #: ../edit/virt-edit.pod:372 ../erlang/examples/guestfs-erlang.pod:114
1086 #: ../examples/guestfs-examples.pod:49 ../examples/guestfs-recipes.pod:401
1087 #: ../fish/guestfish.pod:1300 ../fish/virt-copy-in.pod:64
1088 #: ../fish/virt-copy-out.pod:53 ../fish/virt-tar-in.pod:62
1089 #: ../fish/virt-tar-out.pod:55 ../fuse/guestmount.pod:332
1090 #: ../inspector/virt-inspector.pod:403 ../java/examples/guestfs-java.pod:62
1091 #: ../ocaml/examples/guestfs-ocaml.pod:95 ../perl/examples/guestfs-perl.pod:56
1092 #: ../python/examples/guestfs-python.pod:58 ../rescue/virt-rescue.pod:300
1093 #: ../resize/virt-resize.pod:715 ../ruby/examples/guestfs-ruby.pod:52
1094 #: ../sparsify/virt-sparsify.pod:268 ../src/guestfs.pod:3352
1095 #: ../test-tool/libguestfs-test-tool.pod:110
1096 #: ../tools/virt-list-filesystems.pl:212 ../tools/virt-list-partitions.pl:281
1097 #: ../tools/virt-make-fs.pl:586 ../tools/virt-tar.pl:315
1098 #: ../tools/virt-win-reg.pl:787
1103 #: ../align/virt-alignment-scan.pod:367 ../clone/virt-sysprep.pod:507
1104 #: ../sparsify/virt-sparsify.pod:270
1105 msgid "Copyright (C) 2011 Red Hat Inc."
1109 #: ../align/virt-alignment-scan.pod:369 ../cat/virt-cat.pod:260
1110 #: ../cat/virt-filesystems.pod:404 ../cat/virt-ls.pod:515
1111 #: ../clone/virt-sysprep.pod:509 ../df/virt-df.pod:243
1112 #: ../edit/virt-edit.pod:376 ../fish/guestfish.pod:1305
1113 #: ../fish/virt-copy-in.pod:69 ../fish/virt-copy-out.pod:58
1114 #: ../fish/virt-tar-in.pod:67 ../fish/virt-tar-out.pod:60
1115 #: ../fuse/guestmount.pod:337 ../inspector/virt-inspector.pod:407
1116 #: ../rescue/virt-rescue.pod:304 ../resize/virt-resize.pod:719
1117 #: ../sparsify/virt-sparsify.pod:272 ../test-tool/libguestfs-test-tool.pod:115
1118 #: ../tools/virt-list-filesystems.pl:216 ../tools/virt-list-partitions.pl:285
1119 #: ../tools/virt-make-fs.pl:590 ../tools/virt-tar.pl:319
1120 #: ../tools/virt-win-reg.pl:791
1122 "This program is free software; you can redistribute it and/or modify it "
1123 "under the terms of the GNU General Public License as published by the Free "
1124 "Software Foundation; either version 2 of the License, or (at your option) "
1125 "any later version."
1129 #: ../align/virt-alignment-scan.pod:374 ../cat/virt-cat.pod:265
1130 #: ../cat/virt-filesystems.pod:409 ../cat/virt-ls.pod:520
1131 #: ../clone/virt-sysprep.pod:514 ../df/virt-df.pod:248
1132 #: ../edit/virt-edit.pod:381 ../fish/guestfish.pod:1310
1133 #: ../fish/virt-copy-in.pod:74 ../fish/virt-copy-out.pod:63
1134 #: ../fish/virt-tar-in.pod:72 ../fish/virt-tar-out.pod:65
1135 #: ../fuse/guestmount.pod:342 ../inspector/virt-inspector.pod:412
1136 #: ../rescue/virt-rescue.pod:309 ../resize/virt-resize.pod:724
1137 #: ../sparsify/virt-sparsify.pod:277 ../test-tool/libguestfs-test-tool.pod:120
1138 #: ../tools/virt-list-filesystems.pl:221 ../tools/virt-list-partitions.pl:290
1139 #: ../tools/virt-make-fs.pl:595 ../tools/virt-tar.pl:324
1140 #: ../tools/virt-win-reg.pl:796
1142 "This program is distributed in the hope that it will be useful, but WITHOUT "
1143 "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
1144 "FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for "
1149 #: ../align/virt-alignment-scan.pod:379 ../cat/virt-cat.pod:270
1150 #: ../cat/virt-filesystems.pod:414 ../cat/virt-ls.pod:525
1151 #: ../clone/virt-sysprep.pod:519 ../df/virt-df.pod:253
1152 #: ../edit/virt-edit.pod:386 ../fish/guestfish.pod:1315
1153 #: ../fish/virt-copy-in.pod:79 ../fish/virt-copy-out.pod:68
1154 #: ../fish/virt-tar-in.pod:77 ../fish/virt-tar-out.pod:70
1155 #: ../fuse/guestmount.pod:347 ../inspector/virt-inspector.pod:417
1156 #: ../rescue/virt-rescue.pod:314 ../resize/virt-resize.pod:729
1157 #: ../sparsify/virt-sparsify.pod:282 ../test-tool/libguestfs-test-tool.pod:125
1158 #: ../tools/virt-list-filesystems.pl:226 ../tools/virt-list-partitions.pl:295
1159 #: ../tools/virt-make-fs.pl:600 ../tools/virt-tar.pl:329
1160 #: ../tools/virt-win-reg.pl:801
1162 "You should have received a copy of the GNU General Public License along with "
1163 "this program; if not, write to the Free Software Foundation, Inc., 675 Mass "
1164 "Ave, Cambridge, MA 02139, USA."
1168 #: ../cat/virt-cat.pod:5
1169 msgid "virt-cat - Display files in a virtual machine"
1173 #: ../cat/virt-cat.pod:9
1176 " virt-cat [--options] -d domname file [file ...]\n"
1181 #: ../cat/virt-cat.pod:11
1184 " virt-cat [--options] -a disk.img [-a disk.img ...] file [file ...]\n"
1189 #: ../cat/virt-cat.pod:13 ../edit/virt-edit.pod:15
1190 #: ../inspector/virt-inspector.pod:13
1195 #: ../cat/virt-cat.pod:15
1198 " virt-cat domname file\n"
1203 #: ../cat/virt-cat.pod:17
1206 " virt-cat disk.img file\n"
1211 #: ../cat/virt-cat.pod:21
1213 "C<virt-cat> is a command line tool to display the contents of C<file> where "
1214 "C<file> exists in the named virtual machine (or disk image)."
1218 #: ../cat/virt-cat.pod:24
1220 "Multiple filenames can be given, in which case they are concatenated "
1221 "together. Each filename must be a full path, starting at the root directory "
1222 "(starting with '/')."
1226 #: ../cat/virt-cat.pod:28
1228 "C<virt-cat> can be used to quickly view a file. To edit a file, use C<virt-"
1229 "edit>. For more complex cases you should look at the L<guestfish(1)> tool "
1230 "(see L</USING GUESTFISH> below)."
1234 #: ../cat/virt-cat.pod:32 ../cat/virt-ls.pod:35 ../df/virt-df.pod:43
1235 #: ../edit/virt-edit.pod:44 ../fish/guestfish.pod:41
1236 #: ../fish/guestfish.pod:1051 ../fish/virt-copy-in.pod:29
1237 #: ../fish/virt-copy-out.pod:21 ../fish/virt-tar-in.pod:30
1238 #: ../fish/virt-tar-out.pod:24 ../fuse/guestmount.pod:39
1239 #: ../resize/virt-resize.pod:27 ../sparsify/virt-sparsify.pod:75
1240 #: ../tools/virt-tar.pl:50
1245 #: ../cat/virt-cat.pod:34
1247 "Display C</etc/fstab> file from inside the libvirt VM called C<mydomain>:"
1251 #: ../cat/virt-cat.pod:37
1254 " virt-cat -d mydomain /etc/fstab\n"
1259 #: ../cat/virt-cat.pod:39
1260 msgid "List syslog messages from a VM disk image file:"
1264 #: ../cat/virt-cat.pod:41
1267 " virt-cat -a disk.img /var/log/messages | tail\n"
1272 #: ../cat/virt-cat.pod:43
1273 msgid "Find out what DHCP IP address a VM acquired:"
1277 #: ../cat/virt-cat.pod:45
1280 " virt-cat -d mydomain /var/log/messages | \\\n"
1281 " grep 'dhclient: bound to' | tail\n"
1286 #: ../cat/virt-cat.pod:48
1287 msgid "Find out what packages were recently installed:"
1291 #: ../cat/virt-cat.pod:50
1294 " virt-cat -d mydomain /var/log/yum.log | tail\n"
1299 #: ../cat/virt-cat.pod:52
1300 msgid "Find out who is logged on inside a virtual machine:"
1304 #: ../cat/virt-cat.pod:54
1307 " virt-cat -d mydomain /var/run/utmp > /tmp/utmp\n"
1313 #: ../cat/virt-cat.pod:57
1314 msgid "or who was logged on:"
1318 #: ../cat/virt-cat.pod:59
1321 " virt-cat -d mydomain /var/log/wtmp > /tmp/wtmp\n"
1322 " last -f /tmp/wtmp\n"
1327 #: ../cat/virt-cat.pod:74 ../cat/virt-filesystems.pod:103
1328 #: ../cat/virt-ls.pod:273 ../df/virt-df.pod:71 ../edit/virt-edit.pod:74
1329 #: ../inspector/virt-inspector.pod:67 ../rescue/virt-rescue.pod:96
1331 "Add I<file> which should be a disk image from a virtual machine. If the "
1332 "virtual machine has multiple block devices, you must supply all of them with "
1333 "separate I<-a> options."
1337 #: ../cat/virt-cat.pod:98 ../cat/virt-filesystems.pod:148
1338 #: ../cat/virt-ls.pod:314 ../edit/virt-edit.pod:112 ../fish/guestfish.pod:217
1339 #: ../fuse/guestmount.pod:135 ../inspector/virt-inspector.pod:92
1340 msgid "B<--echo-keys>"
1344 #: ../cat/virt-cat.pod:100
1346 "When prompting for keys and passphrases, virt-cat normally turns echoing off "
1347 "so you cannot see what you are typing. If you are not worried about Tempest "
1348 "attacks and there is no one else in the room you can specify this flag to "
1349 "see what you are typing."
1353 #: ../cat/virt-cat.pod:116
1356 " virt-cat --format=raw -a disk.img file\n"
1361 #: ../cat/virt-cat.pod:120
1364 " virt-cat --format=raw -a disk.img --format -a another.img file\n"
1369 #: ../cat/virt-cat.pod:129 ../cat/virt-filesystems.pod:200
1370 #: ../cat/virt-ls.pod:361 ../edit/virt-edit.pod:156 ../fish/guestfish.pod:289
1371 #: ../fuse/guestmount.pod:172 ../inspector/virt-inspector.pod:114
1372 msgid "B<--keys-from-stdin>"
1376 #: ../cat/virt-cat.pod:131 ../cat/virt-filesystems.pod:202
1377 #: ../cat/virt-ls.pod:363 ../edit/virt-edit.pod:158 ../fish/guestfish.pod:291
1378 #: ../fuse/guestmount.pod:174 ../inspector/virt-inspector.pod:116
1380 "Read key or passphrase parameters from stdin. The default is to try to read "
1381 "passphrases from the user by opening C</dev/tty>."
1385 #: ../cat/virt-cat.pod:152 ../cat/virt-ls.pod:443 ../edit/virt-edit.pod:179
1386 #: ../inspector/virt-inspector.pod:137 ../rescue/virt-rescue.pod:209
1387 msgid "OLD-STYLE COMMAND LINE ARGUMENTS"
1391 #: ../cat/virt-cat.pod:154
1392 msgid "Previous versions of virt-cat allowed you to write either:"
1396 #: ../cat/virt-cat.pod:156
1399 " virt-cat disk.img [disk.img ...] file\n"
1404 #: ../cat/virt-cat.pod:158 ../cat/virt-ls.pod:449 ../edit/virt-edit.pod:185
1405 #: ../inspector/virt-inspector.pod:143 ../rescue/virt-rescue.pod:215
1410 #: ../cat/virt-cat.pod:160
1413 " virt-cat guestname file\n"
1418 #: ../cat/virt-cat.pod:162 ../cat/virt-ls.pod:453 ../edit/virt-edit.pod:189
1419 #: ../inspector/virt-inspector.pod:147 ../rescue/virt-rescue.pod:219
1421 "whereas in this version you should use I<-a> or I<-d> respectively to avoid "
1422 "the confusing case where a disk image might have the same name as a guest."
1426 #: ../cat/virt-cat.pod:166 ../cat/virt-ls.pod:457 ../edit/virt-edit.pod:193
1427 #: ../inspector/virt-inspector.pod:151 ../rescue/virt-rescue.pod:223
1428 msgid "For compatibility the old style is still supported."
1432 #: ../cat/virt-cat.pod:168 ../edit/virt-edit.pod:257 ../fish/guestfish.pod:858
1433 msgid "WINDOWS PATHS"
1437 #: ../cat/virt-cat.pod:170
1439 "C<virt-cat> has a limited ability to understand Windows drive letters and "
1440 "paths (eg. C<E:\\foo\\bar.txt>)."
1444 #: ../cat/virt-cat.pod:173 ../edit/virt-edit.pod:262
1445 msgid "If and only if the guest is running Windows then:"
1449 #: ../cat/virt-cat.pod:179 ../edit/virt-edit.pod:268
1451 "Drive letter prefixes like C<C:> are resolved against the Windows Registry "
1452 "to the correct filesystem."
1456 #: ../cat/virt-cat.pod:184 ../edit/virt-edit.pod:273
1458 "Any backslash (C<\\>) characters in the path are replaced with forward "
1459 "slashes so that libguestfs can process it."
1463 #: ../cat/virt-cat.pod:189
1465 "The path is resolved case insensitively to locate the file that should be "
1470 #: ../cat/virt-cat.pod:194 ../edit/virt-edit.pod:283
1471 msgid "There are some known shortcomings:"
1475 #: ../cat/virt-cat.pod:200 ../edit/virt-edit.pod:289
1476 msgid "Some NTFS symbolic links may not be followed correctly."
1480 #: ../cat/virt-cat.pod:204 ../edit/virt-edit.pod:293
1481 msgid "NTFS junction points that cross filesystems are not followed."
1485 #: ../cat/virt-cat.pod:208 ../edit/virt-edit.pod:297
1486 msgid "USING GUESTFISH"
1490 #: ../cat/virt-cat.pod:210
1492 "L<guestfish(1)> is a more powerful, lower level tool which you can use when "
1493 "C<virt-cat> doesn't work."
1497 #: ../cat/virt-cat.pod:213
1498 msgid "Using C<virt-cat> is approximately equivalent to doing:"
1502 #: ../cat/virt-cat.pod:215
1505 " guestfish --ro -i -d domname download file -\n"
1510 #: ../cat/virt-cat.pod:217
1512 "where C<domname> is the name of the libvirt guest, and C<file> is the full "
1513 "path to the file. Note the final C<-> (meaning \"output to stdout\")."
1517 #: ../cat/virt-cat.pod:221
1519 "The command above uses libguestfs's guest inspection feature and so does not "
1520 "work on guests that libguestfs cannot inspect, or on things like arbitrary "
1521 "disk images that don't contain guests. To display a file from a disk image "
1526 #: ../cat/virt-cat.pod:226
1529 " guestfish --ro -a disk.img -m /dev/sda1 download file -\n"
1534 #: ../cat/virt-cat.pod:228
1536 "where C<disk.img> is the disk image, C</dev/sda1> is the filesystem within "
1537 "the disk image, and C<file> is the full path to the file."
1541 #: ../cat/virt-cat.pod:240 ../cat/virt-filesystems.pod:382
1542 #: ../cat/virt-ls.pod:492 ../df/virt-df.pod:224 ../edit/virt-edit.pod:351
1543 #: ../fuse/guestmount.pod:314 ../inspector/virt-inspector.pod:377
1544 #: ../resize/virt-resize.pod:685 ../sparsify/virt-sparsify.pod:229
1546 "This program returns 0 if successful, or non-zero if there was an error."
1550 #: ../cat/virt-cat.pod:245
1552 "L<guestfs(3)>, L<guestfish(1)>, L<virt-copy-out(1)>, L<virt-edit(1)>, L<virt-"
1553 "tar-out(1)>, L<http://libguestfs.org/>."
1557 #: ../cat/virt-cat.pod:258 ../inspector/virt-inspector.pod:405
1558 #: ../resize/virt-resize.pod:717 ../tools/virt-make-fs.pl:588
1559 msgid "Copyright (C) 2010-2011 Red Hat Inc."
1563 #: ../cat/virt-filesystems.pod:5
1565 "virt-filesystems - List filesystems, partitions, block devices, LVM in a "
1566 "virtual machine or disk image"
1570 #: ../cat/virt-filesystems.pod:9
1573 " virt-filesystems [--options] -d domname\n"
1578 #: ../cat/virt-filesystems.pod:11
1581 " virt-filesystems [--options] -a disk.img [-a disk.img ...]\n"
1586 #: ../cat/virt-filesystems.pod:15
1588 "This tool allows you to discover filesystems, partitions, logical volumes, "
1589 "and their sizes in a disk image or virtual machine. It is a replacement for "
1590 "L<virt-list-filesystems(1)> and L<virt-list-partitions(1)>."
1594 #: ../cat/virt-filesystems.pod:20
1596 "One use for this tool is from shell scripts to iterate over all filesystems "
1597 "from a disk image:"
1601 #: ../cat/virt-filesystems.pod:23
1604 " for fs in $(virt-filesystems -a disk.img); do\n"
1611 #: ../cat/virt-filesystems.pod:27
1613 "Another use is to list partitions before using another tool to modify those "
1614 "partitions (such as L<virt-resize(1)>). If you are curious about what an "
1615 "unknown disk image contains, use this tool along with L<virt-inspector(1)>."
1619 #: ../cat/virt-filesystems.pod:32
1621 "Various command line options control what this program displays. You need "
1622 "to give either I<-a> or I<-d> options to specify the disk image or libvirt "
1623 "guest respectively. If you just specify that then the program shows "
1624 "filesystems found, one per line, like this:"
1628 #: ../cat/virt-filesystems.pod:37
1631 " $ virt-filesystems -a disk.img\n"
1633 " /dev/vg_guest/lv_root\n"
1638 #: ../cat/virt-filesystems.pod:41
1640 "If you add I<-l> or I<--long> then the output includes extra information:"
1644 #: ../cat/virt-filesystems.pod:44
1647 " $ virt-filesystems -a disk.img -l\n"
1648 " Name Type VFS Label Size\n"
1649 " /dev/sda1 filesystem ext4 boot 524288000\n"
1650 " /dev/vg_guest/lv_root filesystem ext4 root 10212081664\n"
1655 #: ../cat/virt-filesystems.pod:49
1657 "If you add I<--extra> then non-mountable (swap, unknown) filesystems are "
1662 #: ../cat/virt-filesystems.pod:52
1665 " $ virt-filesystems -a disk.img --extra\n"
1667 " /dev/vg_guest/lv_root\n"
1668 " /dev/vg_guest/lv_swap\n"
1669 " /dev/vg_guest/lv_data\n"
1674 #: ../cat/virt-filesystems.pod:58
1676 "If you add I<--partitions> then partitions are shown instead of filesystems:"
1680 #: ../cat/virt-filesystems.pod:60
1683 " $ virt-filesystems -a disk.img --partitions\n"
1690 #: ../cat/virt-filesystems.pod:64
1692 "Similarly you can use I<--logical-volumes>, I<--volume-groups>, I<--physical-"
1693 "volumes>, I<--block-devices> to list those items."
1697 #: ../cat/virt-filesystems.pod:67
1699 "You can use these options in combination as well (if you want a combination "
1700 "including filesystems, you have to add I<--filesystems>). Notice that some "
1701 "items fall into several categories (eg. C</dev/sda1> might be both a "
1702 "partition and a filesystem). These items are listed several times. To get "
1703 "a list which includes absolutely everything that virt-filesystems knows "
1704 "about, use the I<--all> option."
1708 #: ../cat/virt-filesystems.pod:74
1710 "UUIDs (because they are quite long) are not shown by default. Add the I<--"
1711 "uuid> option to display device and filesystem UUIDs in the long output."
1715 #: ../cat/virt-filesystems.pod:78
1717 "I<--all --long --uuid> is a useful combination to display all possible "
1718 "information about everything."
1722 #: ../cat/virt-filesystems.pod:81
1725 " $ virt-filesystems -a win.img --all --long --uuid -h\n"
1726 " Name Type VFS Label Size Parent UUID\n"
1727 " /dev/sda1 filesystem ntfs System Reserved 100M - F81C92571C92112C\n"
1728 " /dev/sda2 filesystem ntfs - 20G - F2E8996AE8992E3B\n"
1729 " /dev/sda1 partition - - 100M /dev/sda -\n"
1730 " /dev/sda2 partition - - 20G /dev/sda -\n"
1731 " /dev/sda device - - 20G - -\n"
1736 #: ../cat/virt-filesystems.pod:89
1738 "For machine-readable output, use I<--csv> to get Comma-Separated Values."
1742 #: ../cat/virt-filesystems.pod:110 ../tools/virt-list-filesystems.pl:121
1747 #: ../cat/virt-filesystems.pod:112
1749 "Display everything. This is currently the same as specifying these options: "
1750 "I<--filesystems>, I<--extra>, I<--partitions>, I<--block-devices>, I<--"
1751 "logical-volumes>, I<--volume-groups>, I<--physical-volumes>. (More may be "
1752 "added to this list in future)."
1756 #: ../cat/virt-filesystems.pod:117
1757 msgid "See also I<--long>."
1761 #: ../cat/virt-filesystems.pod:119
1762 msgid "B<--blkdevs>"
1766 #: ../cat/virt-filesystems.pod:121
1767 msgid "B<--block-devices>"
1771 #: ../cat/virt-filesystems.pod:123
1772 msgid "Display block devices."
1776 #: ../cat/virt-filesystems.pod:135 ../cat/virt-ls.pod:301 ../df/virt-df.pod:88
1781 #: ../cat/virt-filesystems.pod:137 ../cat/virt-ls.pod:303 ../df/virt-df.pod:90
1783 "Write out the results in CSV format (comma-separated values). This format "
1784 "can be imported easily into databases and spreadsheets, but read L</NOTE "
1785 "ABOUT CSV FORMAT> below."
1789 #: ../cat/virt-filesystems.pod:150
1791 "When prompting for keys and passphrases, virt-filesystems normally turns "
1792 "echoing off so you cannot see what you are typing. If you are not worried "
1793 "about Tempest attacks and there is no one else in the room you can specify "
1794 "this flag to see what you are typing."
1798 #: ../cat/virt-filesystems.pod:155
1803 #: ../cat/virt-filesystems.pod:157
1805 "This causes filesystems that are not ordinary, mountable filesystems to be "
1806 "displayed. This category includes swapspace, and filesystems that are empty "
1807 "or contain unknown data."
1811 #: ../cat/virt-filesystems.pod:161
1812 msgid "This option implies I<--filesystems>."
1816 #: ../cat/virt-filesystems.pod:163
1817 msgid "B<--filesystems>"
1821 #: ../cat/virt-filesystems.pod:165
1823 "Display mountable filesystems. If no display option was selected then this "
1824 "option is implied."
1828 #: ../cat/virt-filesystems.pod:168
1829 msgid "With I<--extra>, non-mountable filesystems are shown too."
1833 #: ../cat/virt-filesystems.pod:181
1836 " virt-filesystems --format=raw -a disk.img\n"
1841 #: ../cat/virt-filesystems.pod:185
1844 " virt-filesystems --format=raw -a disk.img --format -a another.img\n"
1849 #: ../cat/virt-filesystems.pod:194 ../cat/virt-ls.pod:352
1850 #: ../df/virt-df.pod:125 ../fish/guestfish.pod:156
1851 #: ../tools/virt-list-partitions.pl:109
1856 #: ../cat/virt-filesystems.pod:196 ../cat/virt-ls.pod:354
1857 #: ../df/virt-df.pod:127 ../tools/virt-list-partitions.pl:111
1858 msgid "B<--human-readable>"
1862 #: ../cat/virt-filesystems.pod:198
1863 msgid "In I<--long> mode, display sizes in human-readable format."
1867 #: ../cat/virt-filesystems.pod:205 ../cat/virt-ls.pod:366
1868 #: ../tools/virt-list-filesystems.pl:108 ../tools/virt-list-partitions.pl:119
1873 #: ../cat/virt-filesystems.pod:207 ../cat/virt-ls.pod:368
1874 #: ../tools/virt-list-filesystems.pl:110 ../tools/virt-list-partitions.pl:121
1879 #: ../cat/virt-filesystems.pod:209
1880 msgid "Display extra columns of data (\"long format\")."
1884 #: ../cat/virt-filesystems.pod:211
1885 msgid "A title row is added unless you also specify I<--no-title>."
1889 #: ../cat/virt-filesystems.pod:213
1891 "The extra columns displayed depend on what output you select, and the "
1892 "ordering of columns may change in future versions. Use the title row, I<--"
1893 "csv> output and/or L<csvtool(1)> to match columns to data in external "
1898 #: ../cat/virt-filesystems.pod:218
1900 "Use I<-h> if you want sizes to be displayed in human-readable format. The "
1901 "default is to show raw numbers of I<bytes>."
1905 #: ../cat/virt-filesystems.pod:221
1906 msgid "Use I<--uuid> to display UUIDs too."
1910 #: ../cat/virt-filesystems.pod:223
1915 #: ../cat/virt-filesystems.pod:225
1916 msgid "B<--logvols>"
1920 #: ../cat/virt-filesystems.pod:227
1921 msgid "B<--logical-volumes>"
1925 #: ../cat/virt-filesystems.pod:229
1927 "Display LVM logical volumes. In this mode, these are displayed irrespective "
1928 "of whether the LVs contain filesystems."
1932 #: ../cat/virt-filesystems.pod:232
1933 msgid "B<--no-title>"
1937 #: ../cat/virt-filesystems.pod:234
1938 msgid "In I<--long> mode, don't add a title row."
1942 #: ../cat/virt-filesystems.pod:236
1944 "Note that the order of the columns is not fixed, and may change in future "
1945 "versions of virt-filesystems, so using this option may give you unexpected "
1950 #: ../cat/virt-filesystems.pod:240
1955 #: ../cat/virt-filesystems.pod:242
1956 msgid "B<--partitions>"
1960 #: ../cat/virt-filesystems.pod:244
1962 "Display partitions. In this mode, these are displayed irrespective of "
1963 "whether the partitions contain filesystems."
1967 #: ../cat/virt-filesystems.pod:247
1972 #: ../cat/virt-filesystems.pod:249
1973 msgid "B<--physvols>"
1977 #: ../cat/virt-filesystems.pod:251
1978 msgid "B<--physical-volumes>"
1982 #: ../cat/virt-filesystems.pod:253
1983 msgid "Display LVM physical volumes."
1987 #: ../cat/virt-filesystems.pod:255 ../df/virt-df.pod:163
1992 #: ../cat/virt-filesystems.pod:257
1997 #: ../cat/virt-filesystems.pod:259
1998 msgid "In I<--long> mode, display UUIDs as well."
2002 #: ../cat/virt-filesystems.pod:273
2007 #: ../cat/virt-filesystems.pod:275
2008 msgid "B<--volgroups>"
2012 #: ../cat/virt-filesystems.pod:277
2013 msgid "B<--volume-groups>"
2017 #: ../cat/virt-filesystems.pod:279
2018 msgid "Display LVM volume groups."
2022 #: ../cat/virt-filesystems.pod:287
2027 #: ../cat/virt-filesystems.pod:289
2029 "Note that columns in the output are subject to reordering and change in "
2030 "future versions of this tool."
2034 #: ../cat/virt-filesystems.pod:294
2039 #: ../cat/virt-filesystems.pod:296
2040 msgid "The filesystem, partition, block device or LVM name."
2044 #: ../cat/virt-filesystems.pod:298
2046 "For device and partition names these are displayed as canonical libguestfs "
2047 "names, so that for example C</dev/sda2> is the second partition on the first "
2052 #: ../cat/virt-filesystems.pod:302
2054 "If the I<--long> option is B<not> specified, then only the name column is "
2055 "shown in the output."
2059 #: ../cat/virt-filesystems.pod:305
2064 #: ../cat/virt-filesystems.pod:307
2065 msgid "The object type, for example C<filesystem>, C<lv>, C<device> etc."
2069 #: ../cat/virt-filesystems.pod:309
2074 #: ../cat/virt-filesystems.pod:311
2076 "If there is a filesystem, then this column displays the filesystem type if "
2077 "one could be detected, eg. C<ext4>."
2081 #: ../cat/virt-filesystems.pod:314
2086 #: ../cat/virt-filesystems.pod:316
2088 "If the object has a label (used for identifying and mounting filesystems) "
2089 "then this column contains the label."
2093 #: ../cat/virt-filesystems.pod:319
2098 #: ../cat/virt-filesystems.pod:321
2100 "The partition type byte, displayed as a two digit hexadecimal number. A "
2101 "comprehensive list of partition types can be found here: L<http://www.win."
2102 "tue.nl/~aeb/partitions/partition_types-1.html>"
2106 #: ../cat/virt-filesystems.pod:325
2107 msgid "This is only applicable for DOS (MBR) partitions."
2111 #: ../cat/virt-filesystems.pod:327
2116 #: ../cat/virt-filesystems.pod:329
2118 "The size of the object in bytes. If the I<--human> option is used then the "
2119 "size is displayed in a human-readable form."
2123 #: ../cat/virt-filesystems.pod:332
2128 #: ../cat/virt-filesystems.pod:334
2130 "The parent column records the parent relationship between objects. For "
2131 "example, if the object is a partition, then this column contains the name of "
2132 "the containing device. If the object is a logical volume, then this column "
2133 "is the name of the volume group."
2137 #: ../cat/virt-filesystems.pod:339
2142 #: ../cat/virt-filesystems.pod:341
2144 "If the object has a UUID (used for identifying and mounting filesystems and "
2145 "block devices) then this column contains the UUID as a string."
2149 #: ../cat/virt-filesystems.pod:345
2150 msgid "The UUID is only displayed if the I<--uuid> option is given."
2154 #: ../cat/virt-filesystems.pod:349 ../cat/virt-ls.pod:459
2155 #: ../df/virt-df.pod:191
2156 msgid "NOTE ABOUT CSV FORMAT"
2160 #: ../cat/virt-filesystems.pod:351 ../cat/virt-ls.pod:461
2161 #: ../df/virt-df.pod:193
2163 "Comma-separated values (CSV) is a deceptive format. It I<seems> like it "
2164 "should be easy to parse, but it is definitely not easy to parse."
2168 #: ../cat/virt-filesystems.pod:354 ../cat/virt-ls.pod:464
2169 #: ../df/virt-df.pod:196
2171 "Myth: Just split fields at commas. Reality: This does I<not> work "
2172 "reliably. This example has two columns:"
2176 #: ../cat/virt-filesystems.pod:357 ../cat/virt-ls.pod:467
2177 #: ../df/virt-df.pod:199
2180 " \"foo,bar\",baz\n"
2185 #: ../cat/virt-filesystems.pod:359 ../cat/virt-ls.pod:469
2186 #: ../df/virt-df.pod:201
2188 "Myth: Read the file one line at a time. Reality: This does I<not> work "
2189 "reliably. This example has one row:"
2193 #: ../cat/virt-filesystems.pod:362 ../cat/virt-ls.pod:472
2194 #: ../df/virt-df.pod:204
2203 #: ../cat/virt-filesystems.pod:365 ../cat/virt-ls.pod:475
2204 #: ../df/virt-df.pod:207
2206 "For shell scripts, use C<csvtool> (L<http://merjis.com/developers/csv> also "
2207 "packaged in major Linux distributions)."
2211 #: ../cat/virt-filesystems.pod:368 ../cat/virt-ls.pod:478
2212 #: ../df/virt-df.pod:210
2214 "For other languages, use a CSV processing library (eg. C<Text::CSV> for Perl "
2215 "or Python's built-in csv library)."
2219 #: ../cat/virt-filesystems.pod:371 ../cat/virt-ls.pod:481
2220 #: ../df/virt-df.pod:213
2221 msgid "Most spreadsheets and databases can import CSV directly."
2225 #: ../cat/virt-filesystems.pod:387
2227 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-df(1)>, L<virt-list-"
2228 "filesystems(1)>, L<virt-list-partitions(1)>, L<csvtool(1)>, L<http://"
2233 #: ../cat/virt-filesystems.pod:402 ../tools/virt-win-reg.pl:789
2234 msgid "Copyright (C) 2010 Red Hat Inc."
2238 #: ../cat/virt-ls.pod:5
2239 msgid "virt-ls - List files in a virtual machine"
2243 #: ../cat/virt-ls.pod:9
2246 " virt-ls [--options] -d domname directory [directory ...]\n"
2251 #: ../cat/virt-ls.pod:11
2254 " virt-ls [--options] -a disk.img [-a disk.img ...] directory [directory ...]\n"
2259 #: ../cat/virt-ls.pod:13 ../df/virt-df.pod:15 ../rescue/virt-rescue.pod:13
2264 #: ../cat/virt-ls.pod:15
2267 " virt-ls [--options] domname directory\n"
2272 #: ../cat/virt-ls.pod:17
2275 " virt-ls [--options] disk.img [disk.img ...] directory\n"
2280 #: ../cat/virt-ls.pod:21
2282 "C<virt-ls> lists filenames, file sizes, checksums, extended attributes and "
2283 "more from a virtual machine or disk image."
2287 #: ../cat/virt-ls.pod:24
2289 "Multiple directory names can be given, in which case the output from each is "
2294 #: ../cat/virt-ls.pod:27
2296 "To list directories from a libvirt guest use the I<-d> option to specify the "
2297 "name of the guest. For a disk image, use the I<-a> option."
2301 #: ../cat/virt-ls.pod:31
2303 "C<virt-ls> can do many simple file listings. For more complicated cases you "
2304 "may need to use L<guestfish(1)>, or write a program directly to the L<guestfs"
2309 #: ../cat/virt-ls.pod:37
2310 msgid "Get a list of all files and directories in a virtual machine:"
2314 #: ../cat/virt-ls.pod:39
2317 " virt-ls -R -d guest /\n"
2322 #: ../cat/virt-ls.pod:41
2323 msgid "List all setuid or setgid programs in a Linux virtual machine:"
2327 #: ../cat/virt-ls.pod:43
2330 " virt-ls -lR -d guest / | grep '^- [42]'\n"
2335 #: ../cat/virt-ls.pod:45
2336 msgid "List all public-writable directories in a Linux virtual machine:"
2340 #: ../cat/virt-ls.pod:47
2343 " virt-ls -lR -d guest / | grep '^d ...7'\n"
2348 #: ../cat/virt-ls.pod:49
2349 msgid "List all Unix domain sockets in a Linux virtual machine:"
2353 #: ../cat/virt-ls.pod:51
2356 " virt-ls -lR -d guest / | grep '^s'\n"
2361 #: ../cat/virt-ls.pod:53
2362 msgid "List all regular files with filenames ending in '.png':"
2366 #: ../cat/virt-ls.pod:55
2369 " virt-ls -lR -d guest / | grep -i '^-.*\\.png$'\n"
2374 #: ../cat/virt-ls.pod:57
2375 msgid "To display files larger than 10MB in home directories:"
2379 #: ../cat/virt-ls.pod:59
2382 " virt-ls -lR -d guest /home | awk '$3 > 10*1024*1024'\n"
2387 #: ../cat/virt-ls.pod:61
2388 msgid "Find everything modified in the last 7 days:"
2392 #: ../cat/virt-ls.pod:63
2395 " virt-ls -lR -d guest --time-days / | awk '$6 <= 7'\n"
2400 #: ../cat/virt-ls.pod:65
2401 msgid "Find regular files modified in the last 24 hours:"
2405 #: ../cat/virt-ls.pod:67
2408 " virt-ls -lR -d guest --time-days / | grep '^-' | awk '$6 < 1'\n"
2413 #: ../cat/virt-ls.pod:69
2414 msgid "DIFFERENCES IN SNAPSHOTS AND BACKING FILES"
2418 #: ../cat/virt-ls.pod:71
2420 "Find the differences between files in a guest and an earlier snapshot of the "
2425 #: ../cat/virt-ls.pod:74
2428 " virt-ls -lR -a snapshot.img / --uids --time-t > old\n"
2429 " virt-ls -lR -a current.img / --uids --time-t > new\n"
2430 " diff -u old new | less\n"
2435 #: ../cat/virt-ls.pod:78
2437 "The commands above won't find files where the content has changed but the "
2438 "metadata (eg. file size and modification date) is the same. To do that, you "
2439 "need to add the I<--checksum> parameter to both C<virt-ls> commands. I<--"
2440 "checksum> can be quite slow since it has to read and compute a checksum of "
2441 "every regular file in the virtual machine."
2445 #: ../cat/virt-ls.pod:84
2446 msgid "OUTPUT MODES"
2450 #: ../cat/virt-ls.pod:86
2452 "C<virt-ls> has four output modes, controlled by different combinations of "
2453 "the I<-l> and I<-R> options."
2457 #: ../cat/virt-ls.pod:89
2458 msgid "SIMPLE LISTING"
2462 #: ../cat/virt-ls.pod:91
2463 msgid "A simple listing is like the ordinary L<ls(1)> command:"
2467 #: ../cat/virt-ls.pod:93
2470 " $ virt-ls -d guest /\n"
2478 #: ../cat/virt-ls.pod:98
2479 msgid "LONG LISTING"
2483 #: ../cat/virt-ls.pod:100
2485 "With the I<-l> (I<--long>) option, the output is like the C<ls -l> command "
2486 "(more specifically, like the C<guestfs_ll> function)."
2490 #: ../cat/virt-ls.pod:103
2493 " $ virt-ls -l -d guest /\n"
2495 " dr-xr-xr-x. 2 root root 4096 2009-08-25 19:06 bin\n"
2496 " dr-xr-xr-x. 5 root root 3072 2009-08-25 19:06 boot\n"
2502 #: ../cat/virt-ls.pod:109
2504 "Note that while this is useful for displaying a directory, do not try "
2505 "parsing this output in another program. Use L</RECURSIVE LONG LISTING> "
2510 #: ../cat/virt-ls.pod:113
2511 msgid "RECURSIVE LISTING"
2515 #: ../cat/virt-ls.pod:115
2517 "With the I<-R> (I<--recursive>) option, C<virt-ls> lists the names of files "
2518 "and directories recursively:"
2522 #: ../cat/virt-ls.pod:118
2525 " $ virt-ls -R -d guest /tmp\n"
2533 #: ../cat/virt-ls.pod:123
2535 "To generate this output, C<virt-ls> runs the C<guestfs_find0> function and "
2536 "converts C<\\0> characters to C<\\n>."
2540 #: ../cat/virt-ls.pod:126
2541 msgid "RECURSIVE LONG LISTING"
2545 #: ../cat/virt-ls.pod:128
2547 "Using I<-lR> options together changes the output to display directories "
2548 "recursively, with file stats, and optionally other features such as "
2549 "checksums and extended attributes."
2553 #: ../cat/virt-ls.pod:132
2555 "Most of the interesting features of C<virt-ls> are only available when using "
2560 #: ../cat/virt-ls.pod:135
2562 "The fields are normally space-separated. Filenames are B<not> quoted, so "
2563 "you cannot use the output in another program (because filenames can contain "
2564 "spaces and other unsafe characters). If the guest was untrusted and someone "
2565 "knew you were using C<virt-ls> to analyze the guest, they could play tricks "
2566 "on you by creating filenames with embedded newline characters. To B<safely> "
2567 "parse the output in another program, use the I<--csv> (Comma-Separated "
2572 #: ../cat/virt-ls.pod:143
2574 "Note that this output format is completely unrelated to the C<ls -lR> "
2579 #: ../cat/virt-ls.pod:146
2582 " $ virt-ls -lR -d guest /bin\n"
2583 " d 0555 4096 /bin\n"
2584 " - 0755 123 /bin/alsaunmute\n"
2585 " - 0755 28328 /bin/arch\n"
2586 " l 0777 4 /bin/awk -> gawk\n"
2587 " - 0755 27216 /bin/basename\n"
2588 " - 0755 943360 /bin/bash\n"
2594 #: ../cat/virt-ls.pod:155
2595 msgid "These basic fields are always shown:"
2599 #: ../cat/virt-ls.pod:159
2604 #: ../cat/virt-ls.pod:161
2606 "The file type, one of: C<-> (regular file), C<d> (directory), C<c> "
2607 "(character device), C<b> (block device), C<p> (named pipe), C<l> (symbolic "
2608 "link), C<s> (socket) or C<u> (unknown)."
2612 #: ../cat/virt-ls.pod:171
2617 #: ../cat/virt-ls.pod:173
2618 msgid "The Unix permissions, displayed as a 4 digit octal number."
2622 #: ../cat/virt-ls.pod:175
2627 #: ../cat/virt-ls.pod:177
2629 "The size of the file. This is shown in bytes unless I<-h> or I<--human-"
2630 "readable> option is given, in which case this is shown as a human-readable "
2635 #: ../cat/virt-ls.pod:181 ../fish/guestfish-actions.pod:4380
2640 #: ../cat/virt-ls.pod:183
2641 msgid "The full path of the file or directory."
2645 #: ../cat/virt-ls.pod:185
2650 #: ../cat/virt-ls.pod:187
2651 msgid "For symbolic links only, the link target."
2655 #: ../cat/virt-ls.pod:191
2657 "In I<-lR> mode, additional command line options enable the display of more "
2662 #: ../cat/virt-ls.pod:194
2664 "With the I<--uids> flag, these additional fields are displayed before the "
2669 #: ../cat/virt-ls.pod:199
2674 #: ../cat/virt-ls.pod:201
2679 #: ../cat/virt-ls.pod:203
2681 "The UID and GID of the owner of the file (displayed numerically). Note "
2682 "these only make sense in the context of a Unix-like guest."
2686 #: ../cat/virt-ls.pod:208
2687 msgid "With the I<--times> flag, these additional fields are displayed:"
2691 #: ../cat/virt-ls.pod:212
2696 #: ../cat/virt-ls.pod:214
2697 msgid "The time of last access."
2701 #: ../cat/virt-ls.pod:216
2706 #: ../cat/virt-ls.pod:218
2707 msgid "The time of last modification."
2711 #: ../cat/virt-ls.pod:220
2716 #: ../cat/virt-ls.pod:222
2717 msgid "The time of last status change."
2721 #: ../cat/virt-ls.pod:226
2723 "The time fields are displayed as string dates and times, unless one of the "
2724 "I<--time-t>, I<--time-relative> or I<--time-days> flags is given."
2728 #: ../cat/virt-ls.pod:229
2729 msgid "With the I<--extra-stats> flag, these additional fields are displayed:"
2733 #: ../cat/virt-ls.pod:233
2738 #: ../cat/virt-ls.pod:235
2740 "The device containing the file (displayed as major:minor). This may not "
2741 "match devices as known to the guest."
2745 #: ../cat/virt-ls.pod:238
2750 #: ../cat/virt-ls.pod:240
2751 msgid "The inode number."
2755 #: ../cat/virt-ls.pod:242
2760 #: ../cat/virt-ls.pod:244
2761 msgid "The number of hard links."
2765 #: ../cat/virt-ls.pod:246
2770 #: ../cat/virt-ls.pod:248
2772 "For block and char special files, the device (displayed as major:minor)."
2776 #: ../cat/virt-ls.pod:251
2781 #: ../cat/virt-ls.pod:253
2782 msgid "The number of 512 byte blocks allocated to the file."
2786 #: ../cat/virt-ls.pod:257
2788 "With the I<--checksum> flag, the checksum of the file contents is shown "
2789 "(only for regular files). Computing file checksums can take a considerable "
2794 #: ../cat/virt-ls.pod:280
2795 msgid "B<--checksum>"
2799 #: ../cat/virt-ls.pod:282
2800 msgid "B<--checksum=crc|md5|sha1|sha224|sha256|sha384|sha512>"
2804 #: ../cat/virt-ls.pod:284
2806 "Display checksum over file contents for regular files. With no argument, "
2807 "this defaults to using I<md5>. Using an argument, you can select the "
2808 "checksum type to use."
2812 #: ../cat/virt-ls.pod:288 ../cat/virt-ls.pod:325 ../cat/virt-ls.pod:358
2813 #: ../cat/virt-ls.pod:391 ../cat/virt-ls.pod:401 ../cat/virt-ls.pod:408
2814 #: ../cat/virt-ls.pod:415 ../cat/virt-ls.pod:422
2816 "This option only has effect in I<-lR> output mode. See L</RECURSIVE LONG "
2821 #: ../cat/virt-ls.pod:316
2823 "When prompting for keys and passphrases, virt-ls normally turns echoing off "
2824 "so you cannot see what you are typing. If you are not worried about Tempest "
2825 "attacks and there is no one else in the room you can specify this flag to "
2826 "see what you are typing."
2830 #: ../cat/virt-ls.pod:321
2831 msgid "B<--extra-stats>"
2835 #: ../cat/virt-ls.pod:323
2836 msgid "Display extra stats."
2840 #: ../cat/virt-ls.pod:339
2843 " virt-ls --format=raw -a disk.img /dir\n"
2848 #: ../cat/virt-ls.pod:343
2851 " virt-ls --format=raw -a disk.img --format -a another.img /dir\n"
2856 #: ../cat/virt-ls.pod:356
2857 msgid "Display file sizes in human-readable format."
2861 #: ../cat/virt-ls.pod:370
2866 #: ../cat/virt-ls.pod:372
2867 msgid "B<--recursive>"
2871 #: ../cat/virt-ls.pod:374
2873 "Select the mode. With neither of these options, C<virt-ls> produces a "
2874 "simple, flat list of the files in the named directory. See L</SIMPLE "
2879 #: ../cat/virt-ls.pod:378
2881 "C<virt-ls -l> produces a \"long listing\", which shows more detail. See L</"
2886 #: ../cat/virt-ls.pod:381
2888 "C<virt-ls -R> produces a recursive list of files starting at the named "
2889 "directory. See L</RECURSIVE LISTING>."
2893 #: ../cat/virt-ls.pod:384
2895 "C<virt-ls -lR> produces a recursive long listing which can be more easily "
2896 "parsed. See L</RECURSIVE LONG LISTING>."
2900 #: ../cat/virt-ls.pod:387
2905 #: ../cat/virt-ls.pod:389
2906 msgid "Display time fields."
2910 #: ../cat/virt-ls.pod:394
2911 msgid "B<--time-days>"
2915 #: ../cat/virt-ls.pod:396
2916 msgid "Display time fields as days before now (negative if in the future)."
2920 #: ../cat/virt-ls.pod:398
2922 "Note that C<0> in output means \"up to 1 day before now\", or that the age "
2923 "of the file is between 0 and 86399 seconds."
2927 #: ../cat/virt-ls.pod:404
2928 msgid "B<--time-relative>"
2932 #: ../cat/virt-ls.pod:406
2933 msgid "Display time fields as seconds before now (negative if in the future)."
2937 #: ../cat/virt-ls.pod:411
2942 #: ../cat/virt-ls.pod:413
2943 msgid "Display time fields as seconds since the Unix epoch."
2947 #: ../cat/virt-ls.pod:418
2952 #: ../cat/virt-ls.pod:420
2953 msgid "Display UID and GID fields."
2957 #: ../cat/virt-ls.pod:445
2958 msgid "Previous versions of virt-ls allowed you to write either:"
2962 #: ../cat/virt-ls.pod:447
2965 " virt-ls disk.img [disk.img ...] /dir\n"
2970 #: ../cat/virt-ls.pod:451
2973 " virt-ls guestname /dir\n"
2978 #: ../cat/virt-ls.pod:497
2980 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-out(1)>, L<virt-"
2981 "tar-out(1)>, L<Sys::Guestfs(3)>, L<Sys::Guestfs::Lib(3)>, L<Sys::Virt(3)>, "
2982 "L<http://libguestfs.org/>."
2986 #: ../cat/virt-ls.pod:513 ../df/virt-df.pod:241 ../edit/virt-edit.pod:374
2987 #: ../rescue/virt-rescue.pod:302
2988 msgid "Copyright (C) 2009-2011 Red Hat Inc."
2992 #: ../clone/virt-sysprep.pod:5
2994 "virt-sysprep - Reset or unconfigure a virtual machine so clones can be made"
2998 #: ../clone/virt-sysprep.pod:9
3001 " virt-sysprep [--options] -d domname\n"
3006 #: ../clone/virt-sysprep.pod:11
3009 " virt-sysprep [--options] -a disk.img [-a disk.img ...]\n"
3014 #: ../clone/virt-sysprep.pod:15
3016 "Virt-sysprep \"resets\" or \"unconfigures\" a virtual machine so that clones "
3017 "can be made from it. Steps in this process include removing SSH host keys, "
3018 "removing persistent network MAC configuration, and removing user accounts. "
3019 "Each step can be enabled or disabled as required."
3023 #: ../clone/virt-sysprep.pod:21
3025 "Virt-sysprep is a simple shell script, allowing easy inspection or "
3026 "customization by the system administrator."
3030 #: ../clone/virt-sysprep.pod:24
3032 "Virt-sysprep modifies the guest or disk image I<in place>. The guest must "
3033 "be shut down. If you want to preserve the existing contents of the guest, "
3034 "you I<must copy or clone the disk first>. See L</COPYING AND CLONING> below."
3038 #: ../clone/virt-sysprep.pod:29
3040 "You do I<not> need to run virt-sysprep as root. In fact we'd generally "
3041 "recommend that you don't. The time you might want to run it as root is when "
3042 "you need root in order to access the disk image, but even in this case it "
3043 "would be better to change the permissions on the disk image to be writable "
3044 "as the non-root user running virt-sysprep."
3048 #: ../clone/virt-sysprep.pod:35
3050 "\"Sysprep\" stands for \"system preparation\" tool. The name comes from the "
3051 "Microsoft program C<sysprep.exe> which is used to unconfigure Windows "
3052 "machines in preparation for cloning them. Having said that, virt-sysprep "
3053 "does I<not> currently work on Microsoft Windows guests. We plan to support "
3054 "Windows sysprepping in a future version, and we already have code to do it."
3058 #: ../clone/virt-sysprep.pod:76
3059 msgid "B<--enable=...>"
3063 #: ../clone/virt-sysprep.pod:78
3065 "Choose which sysprep operations to perform. Give a comma-separated list of "
3066 "operations, for example:"
3070 #: ../clone/virt-sysprep.pod:81
3073 " --enable=ssh-hostkeys,udev-persistent-net\n"
3078 #: ../clone/virt-sysprep.pod:83
3080 "would enable ONLY C<ssh-hostkeys> and C<udev-persistent-net> operations."
3084 #: ../clone/virt-sysprep.pod:85
3086 "If the I<--enable> option is not given, then we default to trying all "
3087 "possible sysprep operations. But some sysprep operations are skipped for "
3092 #: ../clone/virt-sysprep.pod:89
3094 "Use I<--list-operations> to list operations supported by a particular "
3095 "version of virt-sysprep."
3099 #: ../clone/virt-sysprep.pod:92
3101 "See L</OPERATIONS> below for a list and an explanation of each operation."
3105 #: ../clone/virt-sysprep.pod:106
3108 " virt-sysprep --format=raw -a disk.img\n"
3113 #: ../clone/virt-sysprep.pod:110
3116 " virt-sysprep --format=raw -a disk.img --format -a another.img\n"
3121 #: ../clone/virt-sysprep.pod:119
3122 msgid "B<--hostname> newhostname"
3126 #: ../clone/virt-sysprep.pod:121
3128 "Change the hostname. See the L</hostname> operation below. If not given, "
3129 "defaults to C<localhost.localdomain>."
3133 #: ../clone/virt-sysprep.pod:124
3134 msgid "B<--list-operations>"
3138 #: ../clone/virt-sysprep.pod:126
3139 msgid "List the operations supported by the virt-sysprep program."
3143 #: ../clone/virt-sysprep.pod:128
3144 msgid "B<--selinux-relabel>"
3148 #: ../clone/virt-sysprep.pod:130
3149 msgid "B<--no-selinux-relabel>"
3153 #: ../clone/virt-sysprep.pod:132
3155 "I<--selinux-relabel> forces SELinux relabelling next time the guest boots. "
3156 "I<--no-selinux-relabel> disables relabelling."
3160 #: ../clone/virt-sysprep.pod:135
3162 "The default is to try to detect if SELinux relabelling is required. See L</"
3163 "SELINUX RELABELLING> below for more details."
3167 #: ../clone/virt-sysprep.pod:156
3172 #: ../clone/virt-sysprep.pod:158
3174 "If the I<--enable> option is I<not> given, then I<all sysprep operations are "
3175 "enabled>, although some are skipped depending on the type of guest."
3179 #: ../clone/virt-sysprep.pod:162
3181 "Operations can be individually enabled using the I<--enable> option. Use a "
3182 "comma-separated list, for example:"
3186 #: ../clone/virt-sysprep.pod:165
3189 " virt-sysprep --enable=ssh-hostkeys,udev-persistent-net [etc..]\n"
3194 #: ../clone/virt-sysprep.pod:167
3196 "To list the operations supported by the current version of virt-sysprep, use "
3197 "I<--list-operations>."
3201 #: ../clone/virt-sysprep.pod:170
3203 "Future versions of virt-sysprep may add more operations. If you are using "
3204 "virt-sysprep and want predictable behaviour, specify only the operations "
3205 "that you want to have enabled."
3209 #: ../clone/virt-sysprep.pod:174
3214 #: ../clone/virt-sysprep.pod:176
3215 msgid "Remove user at-jobs and cron-jobs."
3219 #: ../clone/virt-sysprep.pod:178
3220 msgid "dhcp-client-state"
3224 #: ../clone/virt-sysprep.pod:180
3225 msgid "Remove DHCP client leases."
3229 #: ../clone/virt-sysprep.pod:182
3230 msgid "dhcp-server-state"
3234 #: ../clone/virt-sysprep.pod:184
3235 msgid "Remove DHCP server leases."
3239 #: ../clone/virt-sysprep.pod:186
3244 #: ../clone/virt-sysprep.pod:188
3246 "Changes the hostname of the guest to the value given in the I<--hostname> "
3251 #: ../clone/virt-sysprep.pod:191
3253 "If the I<--hostname> parameter is not given, then the hostname is changed to "
3254 "C<localhost.localdomain>."
3258 #: ../clone/virt-sysprep.pod:194
3263 #: ../clone/virt-sysprep.pod:196
3264 msgid "Remove many log files."
3268 #: ../clone/virt-sysprep.pod:198
3273 #: ../clone/virt-sysprep.pod:200
3274 msgid "Remove email from the local mail spool directory."
3278 #: ../clone/virt-sysprep.pod:202
3283 #: ../clone/virt-sysprep.pod:204
3285 "Remove HWADDR (hard-coded MAC address) configuration. For Fedora and Red "
3286 "Hat Enterprise Linux, this is removed from C<ifcfg-*> files."
3290 #: ../clone/virt-sysprep.pod:207
3295 #: ../clone/virt-sysprep.pod:209
3297 "Write some random bytes from the host into the random seed file of the guest."
3301 #: ../clone/virt-sysprep.pod:212
3302 msgid "See L</RANDOM SEED> below."
3306 #: ../clone/virt-sysprep.pod:214
3307 msgid "rhn-systemid"
3311 #: ../clone/virt-sysprep.pod:216
3312 msgid "Remove the RHN system ID."
3316 #: ../clone/virt-sysprep.pod:218
3321 #: ../clone/virt-sysprep.pod:220
3322 msgid "Remove the Smolt hardware UUID."
3326 #: ../clone/virt-sysprep.pod:222
3327 msgid "ssh-hostkeys"
3331 #: ../clone/virt-sysprep.pod:224
3332 msgid "Remove the SSH host keys in the guest."
3336 #: ../clone/virt-sysprep.pod:226
3338 "The SSH host keys are regenerated (differently) next time the guest is "
3343 #: ../clone/virt-sysprep.pod:229
3345 "If, after cloning, the guest gets the same IP address, ssh will give you a "
3346 "stark warning about the host key changing:"
3350 #: ../clone/virt-sysprep.pod:232
3353 " @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"
3354 " @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @\n"
3355 " @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n"
3356 " IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!\n"
3361 #: ../clone/virt-sysprep.pod:237
3362 msgid "udev-persistent-net"
3366 #: ../clone/virt-sysprep.pod:239
3368 "Remove udev persistent net rules which map the guest's existing MAC address "
3369 "to a fixed ethernet device (eg. eth0)."
3373 #: ../clone/virt-sysprep.pod:242
3375 "After a guest is cloned, the MAC address usually changes. Since the old MAC "
3376 "address occupies the old name (eg. eth0), this means the fresh MAC address "
3377 "is assigned to a new name (eg. eth1) and this is usually undesirable. "
3378 "Erasing the udev persistent net rules avoids this."
3382 #: ../clone/virt-sysprep.pod:247
3387 #: ../clone/virt-sysprep.pod:249
3388 msgid "Remove the utmp file."
3392 #: ../clone/virt-sysprep.pod:251
3394 "This records who is currently logged in on a machine. In modern Linux "
3395 "distros it is stored in a ramdisk and hence not part of the virtual "
3396 "machine's disk, but it was stored on disk in older distros."
3400 #: ../clone/virt-sysprep.pod:255
3405 #: ../clone/virt-sysprep.pod:257
3406 msgid "Remove the yum UUID."
3410 #: ../clone/virt-sysprep.pod:259
3412 "Yum creates a fresh UUID the next time it runs when it notices that the "
3413 "original UUID has been erased."
3417 #: ../clone/virt-sysprep.pod:262
3418 msgid "COPYING AND CLONING"
3422 #: ../clone/virt-sysprep.pod:264
3424 "Virt-sysprep can be used as part of a process of cloning guests, or to "
3425 "prepare a template from which guests can be cloned. There are many "
3426 "different ways to achieve this using the virt tools, and this section is "
3427 "just an introduction."
3431 #: ../clone/virt-sysprep.pod:269
3432 msgid "A virtual machine (when switched off) consists of two parts:"
3436 #: ../clone/virt-sysprep.pod:273
3437 msgid "I<configuration>"
3441 #: ../clone/virt-sysprep.pod:275
3443 "The configuration or description of the guest. eg. The libvirt XML (see "
3444 "C<virsh dumpxml>), the running configuration of the guest, or another "
3445 "external format like OVF."
3449 #: ../clone/virt-sysprep.pod:279
3450 msgid "Some configuration items that might need to be changed:"
3454 #: ../clone/virt-sysprep.pod:285
3459 #: ../clone/virt-sysprep.pod:289 ../clone/virt-sysprep.pod:316
3464 #: ../clone/virt-sysprep.pod:293
3465 msgid "path to block device(s)"
3469 #: ../clone/virt-sysprep.pod:297
3470 msgid "network card MAC address"
3474 #: ../clone/virt-sysprep.pod:301
3475 msgid "I<block device(s)>"
3479 #: ../clone/virt-sysprep.pod:303
3481 "One or more hard disk images, themselves containing files, directories, "
3482 "applications, kernels, configuration, etc."
3486 #: ../clone/virt-sysprep.pod:306
3487 msgid "Some things inside the block devices that might need to be changed:"
3491 #: ../clone/virt-sysprep.pod:312
3492 msgid "hostname and other net configuration"
3496 #: ../clone/virt-sysprep.pod:320
3497 msgid "SSH host keys"
3501 #: ../clone/virt-sysprep.pod:324
3502 msgid "Windows unique security ID (SID)"
3506 #: ../clone/virt-sysprep.pod:328
3507 msgid "Puppet registration"
3511 #: ../clone/virt-sysprep.pod:334
3512 msgid "COPYING THE BLOCK DEVICE"
3516 #: ../clone/virt-sysprep.pod:336
3518 "Starting with an original guest, you probably wish to copy the guest block "
3519 "device and its configuration to make a template. Then once you are happy "
3520 "with the template, you will want to make many clones from it."
3524 #: ../clone/virt-sysprep.pod:341
3530 " original guest --------> template ---------->\n"
3531 " \\------> cloned\n"
3532 " \\-----> guests\n"
3538 #: ../clone/virt-sysprep.pod:349
3540 "You can, of course, just copy the block device on the host using L<cp(1)> or "
3545 #: ../clone/virt-sysprep.pod:352
3549 " original guest --------> template ---------->\n"
3550 " \\------> cloned\n"
3551 " \\-----> guests\n"
3557 #: ../clone/virt-sysprep.pod:358
3558 msgid "There are some smarter (and faster) ways too:"
3562 #: ../clone/virt-sysprep.pod:364
3566 " template ---------->\n"
3567 " \\------> cloned\n"
3568 " \\-----> guests\n"
3574 #: ../clone/virt-sysprep.pod:370
3576 "Use the block device as a backing file and create a snapshot on top for each "
3577 "guest. The advantage is that you don't need to copy the block device (very "
3578 "fast) and only changes are stored (less storage required)."
3582 #: ../clone/virt-sysprep.pod:375
3584 "Note that writing to the backing file once you have created guests on top of "
3585 "it is not possible: you will corrupt the guests."
3589 #: ../clone/virt-sysprep.pod:378
3591 "Tools that can do this include: L<qemu-img(1)> (with the I<create -f qcow2 -"
3592 "o backing_file> option), L<lvcreate(8)> (I<--snapshot> option). Some "
3593 "filesystems (such as btrfs) and most Network Attached Storage devices can "
3594 "also create cheap snapshots from files or LUNs."
3598 #: ../clone/virt-sysprep.pod:386
3599 msgid "Get your NAS to snapshot and/or duplicate the LUN."
3603 #: ../clone/virt-sysprep.pod:390
3604 msgid "Prepare your template using L<virt-sparsify(1)>. See below."
3608 #: ../clone/virt-sysprep.pod:394
3613 #: ../clone/virt-sysprep.pod:396
3615 "A separate tool, L<virt-clone(1)>, can be used to duplicate the block device "
3616 "and/or modify the external libvirt configuration of a guest. It will reset "
3617 "the name, UUID and MAC address of the guest in the libvirt XML."
3621 #: ../clone/virt-sysprep.pod:401
3623 "L<virt-clone(1)> does not use libguestfs and cannot look inside the disk "
3624 "image. This was the original motivation to write virt-sysprep."
3628 #: ../clone/virt-sysprep.pod:404
3633 #: ../clone/virt-sysprep.pod:406
3637 " original guest --------> template\n"
3642 #: ../clone/virt-sysprep.pod:409
3644 "L<virt-sparsify(1)> can be used to make the cloning template smaller, making "
3645 "it easier to compress and/or faster to copy."
3649 #: ../clone/virt-sysprep.pod:412
3651 "Notice that since virt-sparsify also copies the image, you can use it to "
3652 "make the initial copy (instead of C<dd>)."
3656 #: ../clone/virt-sysprep.pod:415
3661 #: ../clone/virt-sysprep.pod:417
3665 " template ---------->\n"
3666 " \\------> cloned\n"
3667 " \\-----> guests\n"
3673 #: ../clone/virt-sysprep.pod:423
3675 "If you want to give people cloned guests, but let them pick the size of the "
3676 "guest themselves (eg. depending on how much they are prepared to pay for "
3677 "disk space), then instead of copying the template, you can run L<virt-resize"
3678 "(1)>. Virt-resize performs a copy and resize, and thus is ideal for cloning "
3679 "guests from a template."
3683 #: ../clone/virt-sysprep.pod:429 ../src/guestfs.pod:1164
3688 #: ../clone/virt-sysprep.pod:431
3690 "Although virt-sysprep removes some sensitive information from the guest, it "
3691 "does not pretend to remove all of it. You should examine the L</OPERATIONS> "
3692 "above, and the implementation of the operations in the shell script. You "
3693 "should also examine the guest afterwards."
3697 #: ../clone/virt-sysprep.pod:436
3699 "Sensitive files are simply removed. The data they contained may still exist "
3700 "on the disk, easily recovered with a hex editor or undelete tool. Use "
3701 "L<virt-sparsify(1)> as one way to remove this content. See also the L<scrub"
3702 "(1)> command to get rid of deleted content in directory entries and inodes."
3706 #: ../clone/virt-sysprep.pod:442
3711 #: ../clone/virt-sysprep.pod:444
3712 msgid "I<(This section applies to Linux guests only)>"
3716 #: ../clone/virt-sysprep.pod:446
3718 "The virt-sysprep C<random-seed> operation writes a few bytes of randomness "
3719 "from the host into the guest's random seed file."
3723 #: ../clone/virt-sysprep.pod:449
3725 "If this is just done once and the guest is cloned from the same template, "
3726 "then each guest will start with the same entropy, and things like SSH host "
3727 "keys and TCP sequence numbers may be predictable."
3731 #: ../clone/virt-sysprep.pod:453
3733 "Therefore you should arrange to add more randomness I<after> cloning from a "
3734 "template too, which can be done by just enabling the C<random-seed> "
3739 #: ../clone/virt-sysprep.pod:457
3742 " cp template.img newguest.img\n"
3743 " virt-sysprep --enable=random-seed -a newguest.img\n"
3748 #: ../clone/virt-sysprep.pod:460
3749 msgid "SELINUX RELABELLING"
3753 #: ../clone/virt-sysprep.pod:462
3754 msgid "I<(This section applies to Linux guests using SELinux only)>"
3758 #: ../clone/virt-sysprep.pod:464
3760 "If any new files are created by virt-sysprep, then virt-sysprep touches C</."
3761 "autorelabel> so that these will be correctly labelled by SELinux the next "
3762 "time the guest is booted. This process interrupts boot and can take some "
3767 #: ../clone/virt-sysprep.pod:469
3769 "You can force relabelling for all guests by supplying the I<--selinux-"
3774 #: ../clone/virt-sysprep.pod:472
3776 "You can disable relabelling entirely by supplying the I<--no-selinux-"
3781 #: ../clone/virt-sysprep.pod:484
3782 msgid "This program returns 0 on success, or 1 if there was an error."
3786 #: ../clone/virt-sysprep.pod:488
3788 "L<guestfs(3)>, L<guestfish(1)>, L<virt-clone(1)>, L<virt-rescue(1)>, L<virt-"
3789 "resize(1)>, L<virt-sparsify(1)>, L<virsh(1)>, L<lvcreate(8)>, L<qemu-img(1)"
3790 ">, L<scrub(1)>, L<http://libguestfs.org/>, L<http://libvirt.org/>."
3794 #: ../df/virt-df.pod:5
3795 msgid "virt-df - Display free space on virtual filesystems"
3799 #: ../df/virt-df.pod:9
3802 " virt-df [--options]\n"
3807 #: ../df/virt-df.pod:11
3810 " virt-df [--options] -d domname\n"
3815 #: ../df/virt-df.pod:13
3818 " virt-df [--options] -a disk.img [-a disk.img ...]\n"
3823 #: ../df/virt-df.pod:17
3826 " virt-df [--options] domname\n"
3831 #: ../df/virt-df.pod:19
3834 " virt-df [--options] disk.img [disk.img ...]\n"
3839 #: ../df/virt-df.pod:23
3841 "C<virt-df> is a command line tool to display free space on virtual machine "
3842 "filesystems. Unlike other tools, it doesn't just display the size of disk "
3843 "allocated to a virtual machine, but can look inside disk images to see how "
3844 "much space is really being used."
3848 #: ../df/virt-df.pod:28
3850 "If used without any I<-a> or I<-d> arguments, C<virt-df> checks with libvirt "
3851 "to get a list of all active and inactive guests, and performs a C<df>-type "
3852 "operation on each one in turn, printing out the results."
3856 #: ../df/virt-df.pod:32
3858 "If any I<-a> or I<-d> arguments are specified, C<virt-df> performs a C<df>-"
3859 "type operation on either the single named libvirt domain, or on the disk "
3860 "image(s) listed on the command line (which must all belong to a single VM). "
3861 "In this mode (with arguments), C<virt-df> will I<only work for a single "
3862 "guest>. If you want to run on multiple guests, then you have to invoke "
3863 "C<virt-df> multiple times."
3867 #: ../df/virt-df.pod:39
3869 "Use the I<--csv> option to get a format which can be easily parsed by other "
3870 "programs. Other options are similar to the standard L<df(1)> command."
3874 #: ../df/virt-df.pod:45
3876 "Show disk usage for a single libvirt guest called C<F14x64>. Make the "
3877 "output human-readable:"
3881 #: ../df/virt-df.pod:48
3884 " # virt-df -d F14x64 -h\n"
3885 " Filesystem Size Used Available Use%\n"
3886 " F14x64:/dev/sda1 484M 66M 393M 14%\n"
3887 " F14x64:/dev/vg_f13x64/lv_root 7.4G 3.4G 4.0G 46%\n"
3892 #: ../df/virt-df.pod:53
3893 msgid "Show disk usage for a disk image file called C<test.img>:"
3897 #: ../df/virt-df.pod:55
3900 " $ virt-df -a test1.img\n"
3901 " Filesystem 1K-blocks Used Available Use%\n"
3902 " test1.img:/dev/sda1 99099 1551 92432 2%\n"
3907 #: ../df/virt-df.pod:112
3910 " virt-df --format=raw -a disk.img\n"
3915 #: ../df/virt-df.pod:116
3918 " virt-df --format=raw -a disk.img --format -a another.img\n"
3923 #: ../df/virt-df.pod:129
3924 msgid "Print sizes in human-readable format."
3928 #: ../df/virt-df.pod:131
3929 msgid "You are not allowed to use I<-h> and I<--csv> at the same time."
3933 #: ../df/virt-df.pod:133 ../fish/guestfish.pod:258 ../fuse/guestmount.pod:164
3938 #: ../df/virt-df.pod:135
3943 #: ../df/virt-df.pod:137
3944 msgid "Print inodes instead of blocks."
3948 #: ../df/virt-df.pod:139
3949 msgid "B<--one-per-guest>"
3953 #: ../df/virt-df.pod:141
3955 "Run one libguestfs appliance per guest. Normally C<virt-df> will add the "
3956 "disks from several guests to a single libguestfs appliance."
3960 #: ../df/virt-df.pod:144
3961 msgid "You might use this option in the following circumstances:"
3965 #: ../df/virt-df.pod:150
3967 "If you think an untrusted guest might actively try to exploit the libguestfs "
3968 "appliance kernel, then this prevents one guest from interfering with the "
3969 "stats printed for another guest."
3973 #: ../df/virt-df.pod:156
3975 "If the kernel has a bug which stops it from accessing a filesystem in one "
3976 "guest (see for example RHBZ#635373) then this allows libguestfs to continue "
3977 "and report stats for further guests."
3981 #: ../df/virt-df.pod:165
3983 "Print UUIDs instead of names. This is useful for following a guest even "
3984 "when the guest is migrated or renamed, or when two guests happen to have the "
3989 #: ../df/virt-df.pod:169
3991 "Note that only domains that we fetch from libvirt come with UUIDs. For disk "
3992 "images, we still print the disk image name even when this option is "
3997 #: ../df/virt-df.pod:229
3999 "L<df(1)>, L<guestfs(3)>, L<guestfish(1)>, L<virt-filesystems(1)>, L<http://"
4004 #: ../edit/virt-edit.pod:5
4005 msgid "virt-edit - Edit a file in a virtual machine"
4009 #: ../edit/virt-edit.pod:9
4012 " virt-edit [--options] -d domname file [file ...]\n"
4017 #: ../edit/virt-edit.pod:11
4020 " virt-edit [--options] -a disk.img [-a disk.img ...] file [file ...]\n"
4025 #: ../edit/virt-edit.pod:13
4028 " virt-edit [-d domname|-a disk.img] file -e 'expr'\n"
4033 #: ../edit/virt-edit.pod:17
4036 " virt-edit domname file\n"
4041 #: ../edit/virt-edit.pod:19 ../edit/virt-edit.pod:183
4044 " virt-edit disk.img [disk.img ...] file\n"
4049 #: ../edit/virt-edit.pod:21 ../fish/guestfish.pod:23
4050 #: ../fish/virt-copy-in.pod:13 ../fish/virt-tar-in.pod:15
4051 #: ../fuse/guestmount.pod:15 ../rescue/virt-rescue.pod:19
4052 #: ../tools/virt-tar.pl:64 ../tools/virt-win-reg.pl:51
4057 #: ../edit/virt-edit.pod:23
4059 "You must I<not> use C<virt-edit> on live virtual machines. If you do this, "
4060 "you risk disk corruption in the VM. C<virt-edit> tries to stop you from "
4061 "doing this, but doesn't catch all cases."
4065 #: ../edit/virt-edit.pod:29
4067 "C<virt-edit> is a command line tool to edit C<file> where each C<file> "
4068 "exists in the named virtual machine (or disk image)."
4072 #: ../edit/virt-edit.pod:32
4074 "Multiple filenames can be given, in which case they are each edited in "
4075 "turn. Each filename must be a full path, starting at the root directory "
4076 "(starting with '/')."
4080 #: ../edit/virt-edit.pod:36
4081 msgid "If you want to just view a file, use L<virt-cat(1)>."
4085 #: ../edit/virt-edit.pod:38
4087 "For more complex cases you should look at the L<guestfish(1)> tool (see L</"
4088 "USING GUESTFISH> below)."
4092 #: ../edit/virt-edit.pod:41
4094 "C<virt-edit> cannot be used to create a new file. L<guestfish(1)> can do "
4095 "that and much more."
4099 #: ../edit/virt-edit.pod:46
4100 msgid "Edit the named files interactively:"
4104 #: ../edit/virt-edit.pod:48
4107 " virt-edit -d mydomain /boot/grub/grub.conf\n"
4112 #: ../edit/virt-edit.pod:50
4115 " virt-edit -d mydomain /etc/passwd\n"
4120 #: ../edit/virt-edit.pod:52
4121 msgid "For Windows guests, some Windows paths are understood:"
4125 #: ../edit/virt-edit.pod:54
4128 " virt-edit -d mywindomain 'c:\\autoexec.bat'\n"
4133 #: ../edit/virt-edit.pod:56
4135 "If Perl is installed, you can also edit files non-interactively (see L</NON-"
4136 "INTERACTIVE EDITING> below). To change the init default level to 5:"
4140 #: ../edit/virt-edit.pod:60
4143 " virt-edit -d mydomain /etc/inittab -e 's/^id:.*/id:5:initdefault:/'\n"
4148 #: ../edit/virt-edit.pod:81
4149 msgid "B<-b> extension"
4153 #: ../edit/virt-edit.pod:83
4154 msgid "B<--backup> extension"
4158 #: ../edit/virt-edit.pod:85
4160 "Create a backup of the original file I<in the guest disk image>. The backup "
4161 "has the original filename with C<extension> added."
4165 #: ../edit/virt-edit.pod:88
4167 "Usually the first character of C<extension> would be a dot C<.> so you would "
4172 #: ../edit/virt-edit.pod:91
4175 " virt-edit -b .orig [etc]\n"
4180 #: ../edit/virt-edit.pod:93
4181 msgid "By default, no backup file is made."
4185 #: ../edit/virt-edit.pod:95 ../fish/guestfish.pod:181
4186 #: ../fuse/guestmount.pod:105 ../inspector/virt-inspector.pod:74
4187 #: ../tools/virt-list-filesystems.pl:77 ../tools/virt-list-partitions.pl:78
4188 #: ../tools/virt-tar.pl:127 ../tools/virt-win-reg.pl:128
4193 #: ../edit/virt-edit.pod:97 ../fish/guestfish.pod:183
4194 #: ../fuse/guestmount.pod:107 ../inspector/virt-inspector.pod:76
4195 #: ../tools/virt-list-filesystems.pl:79 ../tools/virt-list-partitions.pl:80
4196 #: ../tools/virt-tar.pl:129 ../tools/virt-win-reg.pl:130
4197 msgid "B<--connect URI>"
4201 #: ../edit/virt-edit.pod:102 ../tools/virt-list-filesystems.pl:84
4202 #: ../tools/virt-list-partitions.pl:85 ../tools/virt-tar.pl:134
4203 #: ../tools/virt-win-reg.pl:135
4205 "If you specify guest block devices directly, then libvirt is not used at all."
4209 #: ../edit/virt-edit.pod:114
4211 "When prompting for keys and passphrases, virt-edit normally turns echoing "
4212 "off so you cannot see what you are typing. If you are not worried about "
4213 "Tempest attacks and there is no one else in the room you can specify this "
4214 "flag to see what you are typing."
4218 #: ../edit/virt-edit.pod:119
4223 #: ../edit/virt-edit.pod:121
4224 msgid "B<--expr> EXPR"
4228 #: ../edit/virt-edit.pod:123
4230 "Instead of launching the external editor, non-interactively apply the Perl "
4231 "expression C<EXPR> to each line in the file. See L</NON-INTERACTIVE "
4236 #: ../edit/virt-edit.pod:127
4238 "Be careful to properly quote the expression to prevent it from being altered "
4243 #: ../edit/virt-edit.pod:130
4244 msgid "Note that this option is only available when Perl 5 is installed."
4248 #: ../edit/virt-edit.pod:132
4249 msgid "B<--format> raw|qcow2|..."
4253 #: ../edit/virt-edit.pod:143
4256 " virt-edit --format=raw -a disk.img file\n"
4261 #: ../edit/virt-edit.pod:147
4264 " virt-edit --format=raw -a disk.img --format -a another.img file\n"
4269 #: ../edit/virt-edit.pod:181
4270 msgid "Previous versions of virt-edit allowed you to write either:"
4274 #: ../edit/virt-edit.pod:187
4277 " virt-edit guestname file\n"
4282 #: ../edit/virt-edit.pod:195
4283 msgid "NON-INTERACTIVE EDITING"
4287 #: ../edit/virt-edit.pod:197
4289 "C<virt-edit> normally calls out to C<$EDITOR> (or vi) so the system "
4290 "administrator can interactively edit the file."
4294 #: ../edit/virt-edit.pod:200
4296 "There are two ways also to use C<virt-edit> from scripts in order to make "
4297 "automated edits to files. (Note that although you I<can> use C<virt-edit> "
4298 "like this, it's less error-prone to write scripts directly using the "
4299 "libguestfs API and Augeas for configuration file editing.)"
4303 #: ../edit/virt-edit.pod:206
4305 "The first method is to temporarily set C<$EDITOR> to any script or program "
4306 "you want to run. The script is invoked as C<$EDITOR tmpfile> and it should "
4307 "update C<tmpfile> in place however it likes."
4311 #: ../edit/virt-edit.pod:210
4313 "The second method is to use the I<-e> parameter of C<virt-edit> to run a "
4314 "short Perl snippet in the style of L<sed(1)>. For example to replace all "
4315 "instances of C<foo> with C<bar> in a file:"
4319 #: ../edit/virt-edit.pod:214
4322 " virt-edit -d domname filename -e 's/foo/bar/'\n"
4327 #: ../edit/virt-edit.pod:216
4329 "The full power of Perl regular expressions can be used (see L<perlre(1)>). "
4330 "For example to delete root's password you could do:"
4334 #: ../edit/virt-edit.pod:219
4337 " virt-edit -d domname /etc/passwd -e 's/^root:.*?:/root::/'\n"
4342 #: ../edit/virt-edit.pod:221
4344 "What really happens is that the snippet is evaluated as a Perl expression "
4345 "for each line of the file. The line, including the final C<\\n>, is passed "
4346 "in C<$_> and the expression should update C<$_> or leave it unchanged."
4350 #: ../edit/virt-edit.pod:226
4352 "To delete a line, set C<$_> to the empty string. For example, to delete the "
4353 "C<apache> user account from the password file you can do:"
4357 #: ../edit/virt-edit.pod:229
4360 " virt-edit -d mydomain /etc/passwd -e '$_ = \"\" if /^apache:/'\n"
4365 #: ../edit/virt-edit.pod:231
4367 "To insert a line, prepend or append it to C<$_>. However appending lines to "
4368 "the end of the file is rather difficult this way since there is no concept "
4369 "of \"last line of the file\" - your expression just doesn't get called "
4370 "again. You might want to use the first method (setting C<$EDITOR>) if you "
4375 #: ../edit/virt-edit.pod:237
4377 "The variable C<$lineno> contains the current line number. As is "
4378 "traditional, the first line in the file is number C<1>."
4382 #: ../edit/virt-edit.pod:240
4384 "The return value from the expression is ignored, but the expression may call "
4385 "C<die> in order to abort the whole program, leaving the original file "
4390 #: ../edit/virt-edit.pod:244
4392 "Remember when matching the end of a line that C<$_> may contain the final C<"
4393 "\\n>, or (for DOS files) C<\\r\\n>, or if the file does not end with a "
4394 "newline then neither of these. Thus to match or substitute some text at the "
4395 "end of a line, use this regular expression:"
4399 #: ../edit/virt-edit.pod:249
4402 " /some text(\\r?\\n)?$/\n"
4407 #: ../edit/virt-edit.pod:251
4409 "Alternately, use the perl C<chomp> function, being careful not to chomp C<"
4410 "$_> itself (since that would remove all newlines from the file):"
4414 #: ../edit/virt-edit.pod:255
4417 " my $m = $_; chomp $m; $m =~ /some text$/\n"
4422 #: ../edit/virt-edit.pod:259
4424 "C<virt-edit> has a limited ability to understand Windows drive letters and "
4425 "paths (eg. C<E:\\foo\\bar.txt>)."
4429 #: ../edit/virt-edit.pod:278
4431 "The path is resolved case insensitively to locate the file that should be "
4436 #: ../edit/virt-edit.pod:299
4438 "L<guestfish(1)> is a more powerful, lower level tool which you can use when "
4439 "C<virt-edit> doesn't work."
4443 #: ../edit/virt-edit.pod:302
4444 msgid "Using C<virt-edit> is approximately equivalent to doing:"
4448 #: ../edit/virt-edit.pod:304
4451 " guestfish --rw -i -d domname edit /file\n"
4456 #: ../edit/virt-edit.pod:306
4458 "where C<domname> is the name of the libvirt guest, and C</file> is the full "
4463 #: ../edit/virt-edit.pod:309
4465 "The command above uses libguestfs's guest inspection feature and so does not "
4466 "work on guests that libguestfs cannot inspect, or on things like arbitrary "
4467 "disk images that don't contain guests. To edit a file on a disk image "
4472 #: ../edit/virt-edit.pod:314
4475 " guestfish --rw -a disk.img -m /dev/sda1 edit /file\n"
4480 #: ../edit/virt-edit.pod:316
4482 "where C<disk.img> is the disk image, C</dev/sda1> is the filesystem within "
4483 "the disk image to edit, and C</file> is the full path to the file."
4487 #: ../edit/virt-edit.pod:320
4489 "C<virt-edit> cannot create new files. Use the guestfish commands C<touch>, "
4490 "C<write> or C<upload> instead:"
4494 #: ../edit/virt-edit.pod:323
4497 " guestfish --rw -i -d domname touch /newfile\n"
4502 #: ../edit/virt-edit.pod:325
4505 " guestfish --rw -i -d domname write /newfile \"new content\"\n"
4510 #: ../edit/virt-edit.pod:327
4513 " guestfish --rw -i -d domname upload localfile /newfile\n"
4518 #: ../edit/virt-edit.pod:329 ../fish/guestfish.pod:1119
4519 #: ../rescue/virt-rescue.pod:261 ../sparsify/virt-sparsify.pod:232
4520 #: ../src/guestfs.pod:3209 ../test-tool/libguestfs-test-tool.pod:95
4521 msgid "ENVIRONMENT VARIABLES"
4525 #: ../edit/virt-edit.pod:333
4530 #: ../edit/virt-edit.pod:335
4532 "If set, this string is used as the editor. It may contain arguments, eg. C<"
4537 #: ../edit/virt-edit.pod:338
4538 msgid "If not set, C<vi> is used."
4542 #: ../edit/virt-edit.pod:356
4544 "L<guestfs(3)>, L<guestfish(1)>, L<virt-cat(1)>, L<virt-copy-in(1)>, L<virt-"
4545 "tar-in(1)>, L<Sys::Guestfs(3)>, L<Sys::Guestfs::Lib(3)>, L<Sys::Virt(3)>, "
4546 "L<http://libguestfs.org/>, L<perl(1)>, L<perlre(1)>."
4550 #: ../erlang/examples/guestfs-erlang.pod:5
4551 msgid "guestfs-erlang - How to use libguestfs from Erlang"
4555 #: ../erlang/examples/guestfs-erlang.pod:9
4558 " {ok, G} = guestfs:create(),\n"
4559 " ok = guestfs:add_drive_opts(G, Disk,\n"
4560 " [{format, \"raw\"}, {readonly, true}]),\n"
4561 " ok = guestfs:launch(G),\n"
4562 " [Device] = guestfs:list_devices(G),\n"
4563 " ok = guestfs:close(G).\n"
4568 #: ../erlang/examples/guestfs-erlang.pod:18
4570 "This manual page documents how to call libguestfs from the Erlang "
4571 "programming language. This page just documents the differences from the C "
4572 "API and gives some examples. If you are not familiar with using libguestfs, "
4573 "you also need to read L<guestfs(3)>."
4577 #: ../erlang/examples/guestfs-erlang.pod:23
4578 msgid "OPENING AND CLOSING THE HANDLE"
4582 #: ../erlang/examples/guestfs-erlang.pod:25
4584 "The Erlang bindings are implemented using an external program called C<erl-"
4585 "guestfs>. This program must be on the current PATH, or else you should "
4586 "specify the full path to the program:"
4590 #: ../erlang/examples/guestfs-erlang.pod:29
4593 " {ok, G} = guestfs:create().\n"
4598 #: ../erlang/examples/guestfs-erlang.pod:31
4601 " {ok, G} = guestfs:create(\"/path/to/erl-guestfs\").\n"
4606 #: ../erlang/examples/guestfs-erlang.pod:33
4607 msgid "C<G> is the libguestfs handle which you should pass to other functions."
4611 #: ../erlang/examples/guestfs-erlang.pod:36
4612 msgid "To close the handle:"
4616 #: ../erlang/examples/guestfs-erlang.pod:38
4619 " ok = guestfs:close(G).\n"
4624 #: ../erlang/examples/guestfs-erlang.pod:40
4625 msgid "FUNCTIONS WITH OPTIONAL ARGUMENTS"
4629 #: ../erlang/examples/guestfs-erlang.pod:42
4631 "For functions that take optional arguments, the first arguments are the non-"
4632 "optional ones. The last argument is a list of tuples supplying the "
4633 "remaining optional arguments."
4637 #: ../erlang/examples/guestfs-erlang.pod:46
4640 " ok = guestfs:add_drive_opts(G, Disk,\n"
4641 " [{format, \"raw\"}, {readonly, true}]).\n"
4646 #: ../erlang/examples/guestfs-erlang.pod:49
4647 msgid "If the last argument would be an empty list, you can also omit it:"
4651 #: ../erlang/examples/guestfs-erlang.pod:51
4654 " ok = guestfs:add_drive_opts(G, Disk).\n"
4659 #: ../erlang/examples/guestfs-erlang.pod:53
4660 msgid "RETURN VALUES AND ERRORS"
4664 #: ../erlang/examples/guestfs-erlang.pod:55
4666 "On success, most functions return a C<Result> term (which could be a list, "
4667 "string, tuple etc.). If there is nothing for the function to return, then "
4668 "the atom C<ok> is returned."
4672 #: ../erlang/examples/guestfs-erlang.pod:59
4673 msgid "On error, you would see one of the following tuples:"
4677 #: ../erlang/examples/guestfs-erlang.pod:63
4678 msgid "C<{error, Msg, Errno}>"
4682 #: ../erlang/examples/guestfs-erlang.pod:65
4683 msgid "This indicates an ordinary error from the function."
4687 #: ../erlang/examples/guestfs-erlang.pod:67
4689 "C<Msg> is the error message (string) and C<Errno> is the Unix error "
4694 #: ../erlang/examples/guestfs-erlang.pod:70
4695 msgid "C<Errno> can be zero. See L<guestfs(3)/guestfs_last_errno>."
4699 #: ../erlang/examples/guestfs-erlang.pod:72
4700 msgid "C<{unknown, Function}>"
4704 #: ../erlang/examples/guestfs-erlang.pod:74
4706 "This indicates that the function you called is not known. Generally this "
4707 "means you are mixing C<erl-guestfs> from another version of libguestfs, "
4708 "which you should not do."
4712 #: ../erlang/examples/guestfs-erlang.pod:78
4713 msgid "C<Function> is the name of the unknown function."
4717 #: ../erlang/examples/guestfs-erlang.pod:80
4718 msgid "C<{unknownarg, Arg}>"
4722 #: ../erlang/examples/guestfs-erlang.pod:82
4724 "This indicates that you called a function with optional arguments, with an "
4725 "unknown argument name."
4729 #: ../erlang/examples/guestfs-erlang.pod:85
4730 msgid "C<Arg> is the name of the unknown argument."
4734 #: ../erlang/examples/guestfs-erlang.pod:89
4735 #: ../examples/guestfs-examples.pod:25 ../java/examples/guestfs-java.pod:37
4736 #: ../ocaml/examples/guestfs-ocaml.pod:70 ../perl/examples/guestfs-perl.pod:31
4737 #: ../python/examples/guestfs-python.pod:34
4738 #: ../ruby/examples/guestfs-ruby.pod:28
4739 msgid "EXAMPLE 1: CREATE A DISK IMAGE"
4743 #: ../erlang/examples/guestfs-erlang.pod:91
4744 #: ../examples/guestfs-examples.pod:27 ../java/examples/guestfs-java.pod:39
4745 #: ../ocaml/examples/guestfs-ocaml.pod:72 ../perl/examples/guestfs-perl.pod:33
4746 #: ../python/examples/guestfs-python.pod:36
4747 #: ../ruby/examples/guestfs-ruby.pod:30
4752 #: ../erlang/examples/guestfs-erlang.pod:93
4753 #: ../examples/guestfs-examples.pod:29 ../java/examples/guestfs-java.pod:41
4754 #: ../ocaml/examples/guestfs-ocaml.pod:74 ../perl/examples/guestfs-perl.pod:35
4755 #: ../python/examples/guestfs-python.pod:38
4756 #: ../ruby/examples/guestfs-ruby.pod:32
4757 msgid "EXAMPLE 2: INSPECT A VIRTUAL MACHINE DISK IMAGE"
4761 #: ../erlang/examples/guestfs-erlang.pod:95
4762 #: ../examples/guestfs-examples.pod:31 ../java/examples/guestfs-java.pod:43
4763 #: ../ocaml/examples/guestfs-ocaml.pod:76 ../perl/examples/guestfs-perl.pod:37
4764 #: ../python/examples/guestfs-python.pod:40
4765 #: ../ruby/examples/guestfs-ruby.pod:34
4770 #: ../erlang/examples/guestfs-erlang.pod:99
4772 "L<guestfs(3)>, L<guestfs-examples(3)>, L<guestfs-java(3)>, L<guestfs-ocaml(3)"
4773 ">, L<guestfs-perl(3)>, L<guestfs-python(3)>, L<guestfs-recipes(1)>, "
4774 "L<guestfs-ruby(3)>, L<http://www.erlang.org/>. L<http://libguestfs.org/>."
4778 #: ../erlang/examples/guestfs-erlang.pod:110
4779 #: ../examples/guestfs-examples.pod:45 ../examples/guestfs-recipes.pod:397
4780 #: ../fish/guestfish.pod:1296 ../fish/virt-copy-in.pod:60
4781 #: ../fish/virt-copy-out.pod:49 ../fish/virt-tar-in.pod:58
4782 #: ../fish/virt-tar-out.pod:51 ../fuse/guestmount.pod:328
4783 #: ../inspector/virt-inspector.pod:389 ../java/examples/guestfs-java.pod:58
4784 #: ../ocaml/examples/guestfs-ocaml.pod:91 ../perl/examples/guestfs-perl.pod:52
4785 #: ../python/examples/guestfs-python.pod:54
4786 #: ../ruby/examples/guestfs-ruby.pod:48 ../src/guestfs.pod:3348
4787 #: ../test-tool/libguestfs-test-tool.pod:106
4792 #: ../erlang/examples/guestfs-erlang.pod:112
4793 #: ../examples/guestfs-examples.pod:47 ../examples/guestfs-recipes.pod:399
4794 #: ../fish/guestfish.pod:1298 ../fish/virt-copy-in.pod:62
4795 #: ../fish/virt-copy-out.pod:51 ../fish/virt-tar-in.pod:60
4796 #: ../fish/virt-tar-out.pod:53 ../fuse/guestmount.pod:330
4797 #: ../java/examples/guestfs-java.pod:60 ../ocaml/examples/guestfs-ocaml.pod:93
4798 #: ../perl/examples/guestfs-perl.pod:54
4799 #: ../python/examples/guestfs-python.pod:56
4800 #: ../ruby/examples/guestfs-ruby.pod:50 ../src/guestfs.pod:3350
4801 #: ../test-tool/libguestfs-test-tool.pod:108
4802 msgid "Richard W.M. Jones (C<rjones at redhat dot com>)"
4806 #: ../erlang/examples/guestfs-erlang.pod:116
4807 #: ../java/examples/guestfs-java.pod:64 ../perl/examples/guestfs-perl.pod:58
4808 msgid "Copyright (C) 2011 Red Hat Inc. L<http://libguestfs.org/>"
4812 #: ../erlang/examples/guestfs-erlang.pod:118
4813 #: ../examples/guestfs-examples.pod:53 ../examples/guestfs-recipes.pod:405
4814 #: ../java/examples/guestfs-java.pod:66 ../ocaml/examples/guestfs-ocaml.pod:99
4815 #: ../perl/examples/guestfs-perl.pod:60
4816 #: ../python/examples/guestfs-python.pod:62
4817 #: ../ruby/examples/guestfs-ruby.pod:56
4819 "The examples in this manual page may be freely copied, modified and "
4820 "distributed without any restrictions."
4824 #: ../erlang/examples/guestfs-erlang.pod:121
4825 #: ../examples/guestfs-examples.pod:56 ../examples/guestfs-recipes.pod:408
4826 #: ../java/examples/guestfs-java.pod:69
4827 #: ../ocaml/examples/guestfs-ocaml.pod:102
4828 #: ../perl/examples/guestfs-perl.pod:63
4829 #: ../python/examples/guestfs-python.pod:65
4830 #: ../ruby/examples/guestfs-ruby.pod:59 ../src/guestfs.pod:3357
4832 "This library is free software; you can redistribute it and/or modify it "
4833 "under the terms of the GNU Lesser General Public License as published by the "
4834 "Free Software Foundation; either version 2 of the License, or (at your "
4835 "option) any later version."
4839 #: ../erlang/examples/guestfs-erlang.pod:126
4840 #: ../examples/guestfs-examples.pod:61 ../examples/guestfs-recipes.pod:413
4841 #: ../java/examples/guestfs-java.pod:74
4842 #: ../ocaml/examples/guestfs-ocaml.pod:107
4843 #: ../perl/examples/guestfs-perl.pod:68
4844 #: ../python/examples/guestfs-python.pod:70
4845 #: ../ruby/examples/guestfs-ruby.pod:64 ../src/guestfs.pod:3362
4847 "This library is distributed in the hope that it will be useful, but WITHOUT "
4848 "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
4849 "FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License "
4854 #: ../erlang/examples/guestfs-erlang.pod:131
4855 #: ../examples/guestfs-examples.pod:66 ../examples/guestfs-recipes.pod:418
4856 #: ../java/examples/guestfs-java.pod:79
4857 #: ../ocaml/examples/guestfs-ocaml.pod:112
4858 #: ../perl/examples/guestfs-perl.pod:73
4859 #: ../python/examples/guestfs-python.pod:75
4860 #: ../ruby/examples/guestfs-ruby.pod:69 ../src/guestfs.pod:3367
4862 "You should have received a copy of the GNU Lesser General Public License "
4863 "along with this library; if not, write to the Free Software Foundation, "
4864 "Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA"
4868 #: ../examples/guestfs-examples.pod:5
4869 msgid "guestfs-examples - Examples of using libguestfs from C"
4873 #: ../examples/guestfs-examples.pod:9 ../src/guestfs.pod:9
4876 " #include <guestfs.h>\n"
4878 msgstr "#include <guestfs.h>\n"
4881 #: ../examples/guestfs-examples.pod:11
4884 " guestfs_h *g = guestfs_create ();\n"
4885 " guestfs_add_drive_ro (g, \"disk.img\");\n"
4886 " guestfs_launch (g);\n"
4891 #: ../examples/guestfs-examples.pod:15 ../src/guestfs.pod:19
4894 " cc prog.c -o prog -lguestfs\n"
4896 " cc prog.c -o prog `pkg-config libguestfs --cflags --libs`\n"
4899 " cc prog.c -o prog -lguestfs\n"
4901 " cc prog.c -o prog `pkg-config libguestfs --cflags --libs`\n"
4905 #: ../examples/guestfs-examples.pod:21
4907 "This manual page contains examples of calling libguestfs from the C "
4908 "programming language. If you are not familiar with using libguestfs, you "
4909 "also need to read L<guestfs(3)>."
4913 #: ../examples/guestfs-examples.pod:35
4915 "L<guestfs(3)>, L<guestfs-erlang(3)>, L<guestfs-java(3)>, L<guestfs-ocaml(3)"
4916 ">, L<guestfs-perl(3)>, L<guestfs-python(3)>, L<guestfs-recipes(1)>, "
4917 "L<guestfs-ruby(3)>, L<http://libguestfs.org/>."
4921 #: ../examples/guestfs-examples.pod:51 ../ocaml/examples/guestfs-ocaml.pod:97
4922 #: ../python/examples/guestfs-python.pod:60
4923 #: ../ruby/examples/guestfs-ruby.pod:54
4924 msgid "Copyright (C) 2010 Red Hat Inc. L<http://libguestfs.org/>"
4928 #: ../examples/guestfs-recipes.pod:3 ../examples/guestfs-recipes.pod:12
4933 #: ../examples/guestfs-recipes.pod:5
4935 "pod2man and pod2html have differing bugs which makes it hard to write URLs "
4936 "here. The only way which works for both sorts of output is to just write "
4937 "the URL directly. Do NOT use L<...> for URLs."
4941 #: ../examples/guestfs-recipes.pod:9
4943 "We break with tradition here and don't use ALL CAPS for the section "
4944 "headings, as this makes them much easier to read."
4948 #: ../examples/guestfs-recipes.pod:16
4949 msgid "guestfs-recipes - libguestfs, guestfish and virt tools recipes"
4953 #: ../examples/guestfs-recipes.pod:20
4955 "This page contains recipes for and links to things you can do using "
4956 "libguestfs, L<guestfish(1)> and the virt tools."
4960 #: ../examples/guestfs-recipes.pod:23
4961 msgid "Audit a virtual machine for setuid files"
4965 #: ../examples/guestfs-recipes.pod:25
4967 "The link below contains a small program which can be used to audit a Linux "
4968 "virtual machine to see what setuid and setgid files it contains."
4972 #: ../examples/guestfs-recipes.pod:28
4974 "https://rwmj.wordpress.com/2010/12/15/tip-audit-virtual-machine-for-setuid-"
4979 #: ../examples/guestfs-recipes.pod:30
4980 msgid "Change the background image in a Windows XP VM"
4984 #: ../examples/guestfs-recipes.pod:32
4986 "The links below explain how to use L<guestfish(1)> to change the background "
4987 "image for a user of a Windows XP VM. Unfortunately the technique appears to "
4988 "be substantially different for each version of Windows."
4992 #: ../examples/guestfs-recipes.pod:37
4994 "https://lists.fedoraproject.org/pipermail/virt/2011-May/002655.html https://"
4995 "lists.fedoraproject.org/pipermail/virt/2011-May/002658.html"
4999 #: ../examples/guestfs-recipes.pod:40
5000 msgid "Cloning a virtual machine (Linux)"
5004 #: ../examples/guestfs-recipes.pod:42
5006 "The guestfish technique described in the link below works well for most "
5007 "Linux VMs. Depending on the Linux distro you may need to change the paths "
5012 #: ../examples/guestfs-recipes.pod:46
5014 "https://rwmj.wordpress.com/2010/09/24/tip-my-procedure-for-cloning-a-fedora-"
5019 #: ../examples/guestfs-recipes.pod:48
5021 "Avoid L<virt-clone(1)>. Currently what to do about virt-clone is under "
5026 #: ../examples/guestfs-recipes.pod:51
5027 msgid "https://www.redhat.com/archives/virt-tools-list/2011-May/msg00019.html"
5031 #: ../examples/guestfs-recipes.pod:53
5032 msgid "Cloning a virtual machine (Windows)"
5036 #: ../examples/guestfs-recipes.pod:55
5038 "It is possible to do a \"sysprep\" using libguestfs alone, although not "
5039 "straightforward. Currently there is code in the Aeolus Oz project which "
5040 "does this (using libguestfs). As part of our review of the virt-clone tool, "
5041 "we may add sysprepping ability."
5045 #: ../examples/guestfs-recipes.pod:60
5047 "https://github.com/clalancette/oz https://www.redhat.com/archives/virt-tools-"
5048 "list/2011-May/msg00019.html"
5052 #: ../examples/guestfs-recipes.pod:63
5053 msgid "Convert a CD-ROM / DVD / ISO to a tarball"
5057 #: ../examples/guestfs-recipes.pod:65
5058 msgid "This converts input C<cd.iso> to output C<cd.tar.gz>:"
5062 #: ../examples/guestfs-recipes.pod:67
5065 " guestfish --ro -a cd.iso -m /dev/sda tgz-out / cd.tar.gz\n"
5070 #: ../examples/guestfs-recipes.pod:69
5071 msgid "To export just a subdirectory, eg. C</files>, do:"
5075 #: ../examples/guestfs-recipes.pod:71