# Marco Aurélio Krause <ouesten@me.com>, 2015. #zanata
# Rodrigo de Araujo Sousa Fonseca <rodrigodearaujo@fedoraproject.org>, 2017. #zanata
msgid ""
msgstr ""
"Project-Id-Version: libguestfs 1.39.12\n"
"Report-Msgid-Bugs-To: libguestfs@redhat.com\n"
"POT-Creation-Date: 2020-08-13 13:17+0200\n"
"PO-Revision-Date: 2017-01-29 09:50+0000\n"
"Last-Translator: Rodrigo de Araujo Sousa Fonseca "
"<rodrigodearaujo@fedoraproject.org>\n"
"Language-Team: Portuguese (Brazil)\n"
"Language: pt_BR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
"X-Generator: Zanata 4.6.2\n"

#. type: =end
#: common/mlcustomize/customize-options.pod:1
#: common/mlcustomize/customize-options.pod:25
#: docs/virt-v2v-release-notes-1.42.pod:141
#: docs/virt-v2v-release-notes-1.42.pod:145
msgid "comment"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:3
#, no-wrap
msgid ""
"libguestfs generated file\n"
" WARNING: THIS FILE IS GENERATED FROM THE FOLLOWING FILES:\n"
"          generator/customize.ml\n"
"          and from the code in the generator/ subdirectory.\n"
" ANY CHANGES YOU MAKE TO THIS FILE WILL BE LOST.\n"
"\n"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:9
#, no-wrap
msgid ""
" Copyright (C) 2009-2020 Red Hat Inc.\n"
"\n"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:11
#, no-wrap
msgid ""
" This program is free software; you can redistribute it and/or modify\n"
" it under the terms of the GNU General Public License as published by\n"
" the Free Software Foundation; either version 2 of the License, or\n"
" (at your option) any later version.\n"
"\n"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:16
#, no-wrap
msgid ""
" This program is distributed in the hope that it will be useful,\n"
" but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n"
" GNU General Public License for more details.\n"
"\n"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:21
#, no-wrap
msgid ""
" You should have received a copy of the GNU General Public License along\n"
" with this program; if not, write to the Free Software Foundation, Inc.,\n"
" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\n"
"\n"
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:29
msgid "B<--append-line> FILE:LINE"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:31
msgid ""
"Append a single line of text to the C<FILE>.  If the file does not already "
"end with a newline, then one is added before the appended line.  Also a "
"newline is added to the end of the C<LINE> string automatically."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:36
msgid "For example (assuming ordinary shell quoting) this command:"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:38
#, no-wrap
msgid ""
" --append-line '/etc/hosts:10.0.0.1 foo'\n"
"\n"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:40
msgid ""
"will add either C<10.0.0.1 foo⏎> or C<⏎10.0.0.1 foo⏎> to the file, the "
"latter only if the existing file does not already end with a newline."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:44
msgid ""
"C<⏎> represents a newline character, which is guessed by looking at the "
"existing content of the file, so this command does the right thing for files "
"using Unix or Windows line endings.  It also works for empty or non-existent "
"files."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:49
msgid "To insert several lines, use the same option several times:"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:51
#, no-wrap
msgid ""
" --append-line '/etc/hosts:10.0.0.1 foo'\n"
" --append-line '/etc/hosts:10.0.0.2 bar'\n"
"\n"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:54
msgid "To insert a blank line before the appended line, do:"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:56
#, no-wrap
msgid ""
" --append-line '/etc/hosts:'\n"
" --append-line '/etc/hosts:10.0.0.1 foo'\n"
"\n"
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:59
msgid "B<--chmod> PERMISSIONS:FILE"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:61
msgid "Change the permissions of C<FILE> to C<PERMISSIONS>."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:63
msgid ""
"I<Note>: C<PERMISSIONS> by default would be decimal, unless you prefix it "
"with C<0> to get octal, ie. use C<0700> not C<700>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:66
msgid "B<--commands-from-file> FILENAME"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:68
msgid ""
"Read the customize commands from a file, one (and its arguments)  each line."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:71
msgid ""
"Each line contains a single customization command and its arguments, for "
"example:"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:74
#, no-wrap
msgid ""
" delete /some/file\n"
" install some-package\n"
" password some-user:password:its-new-password\n"
"\n"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:78
msgid ""
"Empty lines are ignored, and lines starting with C<#> are comments and are "
"ignored as well.  Furthermore, arguments can be spread across multiple "
"lines, by adding a C<\\> (continuation character) at the of a line, for "
"example"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:83
#, no-wrap
msgid ""
" edit /some/file:\\\n"
"   s/^OPT=.*/OPT=ok/\n"
"\n"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:86
msgid ""
"The commands are handled in the same order as they are in the file, as if "
"they were specified as I<--delete /some/file> on the command line."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:90
msgid "B<--copy> SOURCE:DEST"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:92
msgid "Copy files or directories recursively inside the guest."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:94
#: common/mlcustomize/customize-options.pod:101
#: common/mlcustomize/customize-options.pod:199
msgid "Wildcards cannot be used."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:96
msgid "B<--copy-in> LOCALPATH:REMOTEDIR"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:98
msgid ""
"Copy local files or directories recursively into the disk image, placing "
"them in the directory C<REMOTEDIR> (which must exist)."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:103
msgid "B<--delete> PATH"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:105
msgid ""
"Delete a file from the guest.  Or delete a directory (and all its contents, "
"recursively)."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:108
msgid ""
"You can use shell glob characters in the specified path.  Be careful to "
"escape glob characters from the host shell, if that is required.  For "
"example:"
msgstr ""

#. type: verbatim
#: common/mlcustomize/customize-options.pod:112
#, no-wrap
msgid ""
" virt-customize --delete '/var/log/*.log'.\n"
"\n"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:114
msgid "See also: I<--upload>, I<--scrub>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:116
msgid "B<--edit> FILE:EXPR"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:118
msgid "Edit C<FILE> using the Perl expression C<EXPR>."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:120
msgid ""
"Be careful to properly quote the expression to prevent it from being altered "
"by the shell."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:123
msgid "Note that this option is only available when Perl 5 is installed."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:125
msgid "See L<virt-edit(1)/NON-INTERACTIVE EDITING>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:127
msgid "B<--firstboot> SCRIPT"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:129
msgid ""
"Install C<SCRIPT> inside the guest, so that when the guest first boots up, "
"the script runs (as root, late in the boot process)."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:132
msgid "The script is automatically chmod +x after installation in the guest."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:134
msgid ""
"The alternative version I<--firstboot-command> is the same, but it "
"conveniently wraps the command up in a single line script for you."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:137
#: common/mlcustomize/customize-options.pod:150
msgid ""
"You can have multiple I<--firstboot> options.  They run in the same order "
"that they appear on the command line."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:140
#: common/mlcustomize/customize-options.pod:153
msgid ""
"Please take a look at L<virt-builder(1)/FIRST BOOT SCRIPTS> for more "
"information and caveats about the first boot scripts."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:143
#: common/mlcustomize/customize-options.pod:156
msgid "See also I<--run>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:145
msgid "B<--firstboot-command> 'CMD+ARGS'"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:147
msgid ""
"Run command (and arguments) inside the guest when the guest first boots up "
"(as root, late in the boot process)."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:158
msgid "B<--firstboot-install> PKG,PKG.."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:160
msgid ""
"Install the named packages (a comma-separated list).  These are installed "
"when the guest first boots using the guest’s package manager (eg. apt, yum, "
"etc.) and the guest’s network connection."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:164
#: common/mlcustomize/customize-options.pod:178
msgid ""
"For an overview on the different ways to install packages, see L<virt-"
"builder(1)/INSTALLING PACKAGES>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:167
msgid "B<--hostname> HOSTNAME"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:169
msgid ""
"Set the hostname of the guest to C<HOSTNAME>.  You can use a dotted hostname."
"domainname (FQDN) if you want."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:172
msgid "B<--install> PKG,PKG.."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:174
msgid ""
"Install the named packages (a comma-separated list).  These are installed "
"during the image build using the guest’s package manager (eg. apt, yum, "
"etc.) and the host’s network connection."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:181
msgid "See also I<--update>, I<--uninstall>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:183
msgid "B<--link> TARGET:LINK[:LINK..]"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:185
msgid ""
"Create symbolic link(s) in the guest, starting at C<LINK> and pointing at "
"C<TARGET>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:188
msgid "B<--mkdir> DIR"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:190
msgid "Create a directory in the guest."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:192
msgid ""
"This uses S<C<mkdir -p>> so any intermediate directories are created, and it "
"also works if the directory already exists."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:195
msgid "B<--move> SOURCE:DEST"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:197
msgid "Move files or directories inside the guest."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:201
msgid "B<--no-logfile>"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:203
msgid ""
"Scrub C<builder.log> (log file from build commands) from the image after "
"building is complete.  If you don't want to reveal precisely how the image "
"was built, use this option."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:207
msgid "See also: L</LOG FILE>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:209
msgid "B<--password> USER:SELECTOR"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:211
msgid ""
"Set the password for C<USER>.  (Note this option does I<not> create the user "
"account)."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:214
#: common/mlcustomize/customize-options.pod:243
msgid ""
"See L<virt-builder(1)/USERS AND PASSWORDS> for the format of the C<SELECTOR> "
"field, and also how to set up user accounts."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:217
msgid "B<--password-crypto> md5|sha256|sha512"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:219
msgid ""
"When the virt tools change or set a password in the guest, this option sets "
"the password encryption of that password to C<md5>, C<sha256> or C<sha512>."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:223
msgid ""
"C<sha256> and C<sha512> require glibc E<ge> 2.7 (check crypt(3) inside the "
"guest)."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:226
msgid ""
"C<md5> will work with relatively old Linux guests (eg. RHEL 3), but is not "
"secure against modern attacks."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:229
msgid ""
"The default is C<sha512> unless libguestfs detects an old guest that didn't "
"have support for SHA-512, in which case it will use C<md5>.  You can "
"override libguestfs by specifying this option."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:233
msgid ""
"Note this does not change the default password encryption used by the guest "
"when you create new user accounts inside the guest.  If you want to do that, "
"then you should use the I<--edit> option to modify C</etc/sysconfig/"
"authconfig> (Fedora, RHEL) or C</etc/pam.d/common-password> (Debian, Ubuntu)."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:239
msgid "B<--root-password> SELECTOR"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:241
msgid "Set the root password."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:246
msgid ""
"Note: In virt-builder, if you I<don't> set I<--root-password> then the guest "
"is given a I<random> root password."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:249
msgid "B<--run> SCRIPT"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:251
msgid ""
"Run the shell script (or any program) called C<SCRIPT> on the disk image.  "
"The script runs virtualized inside a small appliance, chrooted into the "
"guest filesystem."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:255
msgid "The script is automatically chmod +x."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:257
#: common/mlcustomize/customize-options.pod:273
msgid ""
"If libguestfs supports it then a limited network connection is available but "
"it only allows outgoing network connections.  You can also attach data disks "
"(eg. ISO files) as another way to provide data (eg. software packages) to "
"the script without needing a network connection (I<--attach>).  You can also "
"upload data files (I<--upload>)."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:263
msgid ""
"You can have multiple I<--run> options.  They run in the same order that "
"they appear on the command line."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:266
#: common/mlcustomize/customize-options.pod:282
msgid "See also: I<--firstboot>, I<--attach>, I<--upload>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:268
msgid "B<--run-command> 'CMD+ARGS'"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:270
msgid ""
"Run the command and arguments on the disk image.  The command runs "
"virtualized inside a small appliance, chrooted into the guest filesystem."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:279
msgid ""
"You can have multiple I<--run-command> options.  They run in the same order "
"that they appear on the command line."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:284
msgid "B<--scrub> FILE"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:286
msgid "Scrub a file from the guest.  This is like I<--delete> except that:"
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:290
#: common/mlcustomize/customize-options.pod:294
#: docs/virt-v2v-copy-to-local.pod:29 docs/virt-v2v-hacking.pod:23
#: docs/virt-v2v-hacking.pod:27 docs/virt-v2v-input-vmware.pod:413
#: docs/virt-v2v-input-vmware.pod:417 docs/virt-v2v-input-vmware.pod:421
#: docs/virt-v2v-input-vmware.pod:425 docs/virt-v2v-input-vmware.pod:429
#: docs/virt-v2v-output-local.pod:81 docs/virt-v2v-output-local.pod:86
#: docs/virt-v2v-output-local.pod:91 docs/virt-v2v-output-rhv.pod:121
#: docs/virt-v2v-output-rhv.pod:126 docs/virt-v2v.pod:179 docs/virt-v2v.pod:183
#: docs/virt-v2v.pod:188 docs/virt-v2v.pod:192 docs/virt-v2v.pod:196
#: docs/virt-v2v.pod:697 docs/virt-v2v.pod:702 docs/virt-v2v.pod:707
#: docs/virt-v2v.pod:711 docs/virt-v2v.pod:1050 docs/virt-v2v.pod:1055
#: docs/virt-v2v.pod:1066 docs/virt-v2v.pod:1078 docs/virt-v2v.pod:1084
#: docs/virt-v2v.pod:1089 docs/virt-v2v.pod:1107 docs/virt-v2v.pod:1111
#: test-harness/virt-v2v-test-harness.pod:175
#: test-harness/virt-v2v-test-harness.pod:179
#: test-harness/virt-v2v-test-harness.pod:183
msgid "*"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:292
msgid "It scrubs the data so a guest could not recover it."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:296
msgid "It cannot delete directories, only regular files."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:300
msgid "B<--selinux-relabel>"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:302
msgid "Relabel files in the guest so that they have the correct SELinux label."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:304
msgid ""
"This will attempt to relabel files immediately, but if the operation fails "
"this will instead touch F</.autorelabel> on the image to schedule a relabel "
"operation for the next time the image boots."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:308
msgid "You should only use this option for guests which support SELinux."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:310
msgid "B<--sm-attach> SELECTOR"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:312
msgid "Attach to a pool using C<subscription-manager>."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:314
#: common/mlcustomize/customize-options.pod:321
msgid ""
"See L<virt-builder(1)/SUBSCRIPTION-MANAGER> for the format of the "
"C<SELECTOR> field."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:317
msgid "B<--sm-credentials> SELECTOR"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:319
msgid "Set the credentials for C<subscription-manager>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:324
msgid "B<--sm-register>"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:326
msgid "Register the guest using C<subscription-manager>."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:328
msgid "This requires credentials being set using I<--sm-credentials>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:330
msgid "B<--sm-remove>"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:332
msgid ""
"Remove all the subscriptions from the guest using C<subscription-manager>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:335
msgid "B<--sm-unregister>"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:337
msgid "Unregister the guest using C<subscription-manager>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:339
msgid "B<--ssh-inject> USER[:SELECTOR]"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:341
msgid ""
"Inject an ssh key so the given C<USER> will be able to log in over ssh "
"without supplying a password.  The C<USER> must exist already in the guest."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:345
msgid ""
"See L<virt-builder(1)/SSH KEYS> for the format of the C<SELECTOR> field."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:348
msgid ""
"You can have multiple I<--ssh-inject> options, for different users and also "
"for more keys for each user."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:351
msgid "B<--timezone> TIMEZONE"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:353
msgid ""
"Set the default timezone of the guest to C<TIMEZONE>.  Use a location string "
"like C<Europe/London>"
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:356
msgid "B<--touch> FILE"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:358
msgid "This command performs a L<touch(1)>-like operation on C<FILE>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:360
msgid "B<--truncate> FILE"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:362
msgid ""
"This command truncates C<FILE> to a zero-length file. The file must exist "
"already."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:365
msgid "B<--truncate-recursive> PATH"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:367
msgid ""
"This command recursively truncates all files under C<PATH> to zero-length."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:369
msgid "B<--uninstall> PKG,PKG.."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:371
msgid ""
"Uninstall the named packages (a comma-separated list).  These are removed "
"during the image build using the guest’s package manager (eg. apt, yum, "
"etc.).  Dependent packages may also need to be uninstalled to satisfy the "
"request."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:376
msgid "See also I<--install>, I<--update>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:378
msgid "B<--update>"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:380
msgid ""
"Do the equivalent of C<yum update>, C<apt-get upgrade>, or whatever command "
"is required to update the packages already installed in the template to "
"their latest versions."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:384
msgid "See also I<--install>, I<--uninstall>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:386
msgid "B<--upload> FILE:DEST"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:388
msgid ""
"Upload local file C<FILE> to destination C<DEST> in the disk image.  File "
"owner and permissions from the original are preserved, so you should set "
"them to what you want them to be in the disk image."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:392
msgid ""
"C<DEST> could be the final filename.  This can be used to rename the file on "
"upload."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:395
msgid ""
"If C<DEST> is a directory name (which must already exist in the guest)  then "
"the file is uploaded into that directory, and it keeps the same name as on "
"the local filesystem."
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:399
msgid "See also: I<--mkdir>, I<--delete>, I<--scrub>."
msgstr ""

#. type: =item
#: common/mlcustomize/customize-options.pod:401
msgid "B<--write> FILE:CONTENT"
msgstr ""

#. type: textblock
#: common/mlcustomize/customize-options.pod:403
msgid "Write C<CONTENT> to C<FILE>."
msgstr ""

#. type: =item
#: common/options/blocksize-option.pod:1
msgid "B<--blocksize=512>"
msgstr ""

#. type: =item
#: common/options/blocksize-option.pod:3
msgid "B<--blocksize=4096>"
msgstr ""

#. type: =item
#: common/options/blocksize-option.pod:5
msgid "B<--blocksize>"
msgstr ""

#. type: textblock
#: common/options/blocksize-option.pod:7
msgid ""
"This parameter sets the sector size of the disk image.  It affects all "
"explicitly added subsequent disks after this parameter.  Using I<--"
"blocksize> with no argument switches the disk sector size to the default "
"value which is usually 512 bytes.  See also L<guestfs(3)/"
"guestfs_add_drive_opts>."
msgstr ""

#. type: =item
#: common/options/key-option.pod:1
msgid "B<--key> SELECTOR"
msgstr ""

#. type: textblock
#: common/options/key-option.pod:3
msgid ""
"Specify a key for LUKS, to automatically open a LUKS device when using the "
"inspection.  C<ID> can be either the libguestfs device name, or the UUID of "
"the LUKS device."
msgstr ""

#. type: =item
#: common/options/key-option.pod:9
msgid "B<--key> C<ID>:key:KEY_STRING"
msgstr ""

#. type: textblock
#: common/options/key-option.pod:11
msgid "Use the specified C<KEY_STRING> as passphrase."
msgstr ""

#. type: =item
#: common/options/key-option.pod:13
msgid "B<--key> C<ID>:file:FILENAME"
msgstr ""

#. type: textblock
#: common/options/key-option.pod:15
msgid "Read the passphrase from F<FILENAME>."
msgstr ""

#. type: =item
#: common/options/keys-from-stdin-option.pod:1
msgid "B<--keys-from-stdin>"
msgstr ""

#. type: textblock
#: common/options/keys-from-stdin-option.pod:3
msgid ""
"Read key or passphrase parameters from stdin.  The default is to try to read "
"passphrases from the user by opening F</dev/tty>."
msgstr ""

#. type: textblock
#: common/options/keys-from-stdin-option.pod:6
msgid ""
"If there are multiple encrypted devices then you may need to supply multiple "
"keys on stdin, one per line."
msgstr ""

#. type: =head1
#: docs/virt-v2v-copy-to-local.pod:1 docs/virt-v2v-hacking.pod:1
#: docs/virt-v2v-input-vmware.pod:1 docs/virt-v2v-input-xen.pod:1
#: docs/virt-v2v-output-local.pod:1 docs/virt-v2v-output-openstack.pod:1
#: docs/virt-v2v-output-rhv.pod:1 docs/virt-v2v-release-notes-1.42.pod:1
#: docs/virt-v2v-support.pod:1 docs/virt-v2v.pod:1
#: test-harness/virt-v2v-test-harness.pod:1
msgid "NAME"
msgstr "NOME"

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:3
msgid "virt-v2v-copy-to-local - Copy a remote guest to the local machine"
msgstr ""

#. type: =head1
#: docs/virt-v2v-copy-to-local.pod:5 docs/virt-v2v-input-vmware.pod:5
#: docs/virt-v2v-input-xen.pod:5 docs/virt-v2v-output-local.pod:6
#: docs/virt-v2v-output-openstack.pod:5 docs/virt-v2v-output-rhv.pod:5
#: docs/virt-v2v.pod:5 test-harness/virt-v2v-test-harness.pod:5
msgid "SYNOPSIS"
msgstr "SINOPSE"

#. type: verbatim
#: docs/virt-v2v-copy-to-local.pod:7
#, no-wrap
msgid ""
" virt-v2v-copy-to-local -ic LIBVIRT_URI GUEST\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-copy-to-local.pod:9
#, no-wrap
msgid ""
" virt-v2v-copy-to-local -ic xen+ssh://root@xen.example.com xen_guest\n"
"\n"
msgstr ""

#. type: =head1
#: docs/virt-v2v-copy-to-local.pod:11 docs/virt-v2v-hacking.pod:5
#: docs/virt-v2v-input-vmware.pod:29 docs/virt-v2v-input-xen.pod:12
#: docs/virt-v2v-output-local.pod:19 docs/virt-v2v-output-openstack.pod:15
#: docs/virt-v2v-output-rhv.pod:23 docs/virt-v2v-release-notes-1.42.pod:5
#: docs/virt-v2v-support.pod:6 docs/virt-v2v.pod:15
#: test-harness/virt-v2v-test-harness.pod:17
msgid "DESCRIPTION"
msgstr "DESCRIÇÃO"

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:13
msgid ""
"C<virt-v2v-copy-to-local> copies a guest from a remote hypervisor to the "
"local machine, in preparation for conversion by L<virt-v2v(1)>.  Note this "
"tool alone B<does not> do the virt-v2v conversion."
msgstr ""

#. type: =head2
#: docs/virt-v2v-copy-to-local.pod:17
msgid "When to use this tool"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:19
msgid ""
"This tool is not usually necessary, but there are a few special cases (see "
"list below) where you might need it."
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:22
msgid ""
"If your case does not fit one of these special cases, then ignore this tool "
"and read L<virt-v2v(1)> instead.  The virt-v2v-copy-to-local process is "
"slower than using virt-v2v directly, because it has to copy unused parts of "
"the guest disk."
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:31
msgid ""
"You have a Xen guest using host block devices.  Virt-v2v cannot convert such "
"guests directly."
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:34
msgid "See L<virt-v2v-input-xen(1)>."
msgstr ""

#. type: =head2
#: docs/virt-v2v-copy-to-local.pod:38
msgid "How this tool works"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:40
msgid ""
"This tool uses libvirt to get the libvirt XML (metadata) of the remote "
"guest, essentially equivalent to running C<virsh dumpxml guest>."
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:43
msgid ""
"It then uses the XML to locate the remote guest disks, which are copied over "
"using a hypervisor-specific method.  It uses ssh for remote Xen hypervisors."
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:47
msgid ""
"It then modifies the libvirt XML so that it points at the local copies of "
"the guest disks."
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:50
msgid ""
"The libvirt XML is output to a file called F<guest.xml> (where I<guest> is "
"the name of the guest).  The disk(s) are output to file(s)  called F<guest-"
"disk1>, F<guest-disk2> and so on."
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:54
msgid "After copying the guest locally, you can convert it using:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-copy-to-local.pod:56
#, no-wrap
msgid ""
" virt-v2v -i libvirtxml guest.xml [-o options ...]\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:58
msgid "Virt-v2v finds the local copies of the disks by looking in the XML."
msgstr ""

#. type: =head1
#: docs/virt-v2v-copy-to-local.pod:60 docs/virt-v2v.pod:66
msgid "EXAMPLES"
msgstr ""

#. type: =head2
#: docs/virt-v2v-copy-to-local.pod:62
msgid "Copy and convert from Xen hypervisor that uses host block devices"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:64
msgid "For full instructions, see L<virt-v2v-input-xen(1)>."
msgstr ""

#. type: verbatim
#: docs/virt-v2v-copy-to-local.pod:66
#, no-wrap
msgid ""
" virt-v2v-copy-to-local -ic xen+ssh://root@xen.example.com xen_guest\n"
" virt-v2v -i libvirtxml xen_guest.xml -o local -os /var/tmp\n"
" rm xen_guest.xml xen_guest-disk*\n"
"\n"
msgstr ""

#. type: =head1
#: docs/virt-v2v-copy-to-local.pod:70 docs/virt-v2v.pod:152
msgid "OPTIONS"
msgstr ""

#. type: =item
#: docs/virt-v2v-copy-to-local.pod:74 docs/virt-v2v.pod:156
msgid "B<--help>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:76 docs/virt-v2v.pod:158
msgid "Display help."
msgstr ""

#. type: =item
#: docs/virt-v2v-copy-to-local.pod:78 docs/virt-v2v.pod:291
msgid "B<-ic> libvirtURI"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:80
msgid "Specify a libvirt connection URI"
msgstr ""

#. type: =item
#: docs/virt-v2v-copy-to-local.pod:82
msgid "B<-ip> file"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:84
msgid ""
"Instead of asking for password(s) interactively, pass the password through a "
"file.  Note the file should contain the whole password, B<without any "
"trailing newline>, and for security the file should have mode C<0600> so "
"that others cannot read it."
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:89
msgid ""
"Currently this option does not have any effect on xen+ssh transfers, but "
"that is a bug."
msgstr ""

#. type: =item
#: docs/virt-v2v-copy-to-local.pod:92 docs/virt-v2v.pod:823
msgid "B<-q>"
msgstr ""

#. type: =item
#: docs/virt-v2v-copy-to-local.pod:94 docs/virt-v2v.pod:825
msgid "B<--quiet>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:96 docs/virt-v2v.pod:827
msgid "This disables progress bars and other unnecessary output."
msgstr ""

#. type: =item
#: docs/virt-v2v-copy-to-local.pod:98 docs/virt-v2v.pod:872
msgid "B<-v>"
msgstr ""

#. type: =item
#: docs/virt-v2v-copy-to-local.pod:100 docs/virt-v2v.pod:874
msgid "B<--verbose>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:102 docs/virt-v2v.pod:876
msgid "Enable verbose messages for debugging."
msgstr ""

#. type: =item
#: docs/virt-v2v-copy-to-local.pod:104 docs/virt-v2v.pod:878
msgid "B<-V>"
msgstr ""

#. type: =item
#: docs/virt-v2v-copy-to-local.pod:106 docs/virt-v2v.pod:880
msgid "B<--version>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:108 docs/virt-v2v.pod:882
msgid "Display version number and exit."
msgstr ""

#. type: =head1
#: docs/virt-v2v-copy-to-local.pod:112 docs/virt-v2v-hacking.pod:48
#: docs/virt-v2v-input-vmware.pod:585 docs/virt-v2v-input-xen.pod:117
#: docs/virt-v2v-output-local.pod:198 docs/virt-v2v-output-openstack.pod:210
#: docs/virt-v2v-output-rhv.pod:228 docs/virt-v2v-release-notes-1.42.pod:211
#: docs/virt-v2v-support.pod:143 docs/virt-v2v.pod:1665
#: test-harness/virt-v2v-test-harness.pod:263
msgid "SEE ALSO"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:114
msgid ""
"L<virt-v2v(1)>, L<virsh(1)>, L<http://libguestfs.org/>, L<https://libvirt."
"org/uri.html>, L<https://libvirt.org/remote.html>."
msgstr ""

#. type: =head1
#: docs/virt-v2v-copy-to-local.pod:120 docs/virt-v2v-hacking.pod:53
#: docs/virt-v2v-release-notes-1.42.pod:218 docs/virt-v2v.pod:1684
#: test-harness/virt-v2v-test-harness.pod:273
msgid "AUTHORS"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:122
#: test-harness/virt-v2v-test-harness.pod:275
msgid "Richard W.M. Jones L<http://people.redhat.com/~rjones/>"
msgstr ""

#. type: =head1
#: docs/virt-v2v-copy-to-local.pod:124 docs/virt-v2v-hacking.pod:57
#: docs/virt-v2v-input-vmware.pod:593 docs/virt-v2v-input-xen.pod:125
#: docs/virt-v2v-output-local.pod:206 docs/virt-v2v-output-openstack.pod:220
#: docs/virt-v2v-output-rhv.pod:236 docs/virt-v2v-release-notes-1.42.pod:236
#: docs/virt-v2v-support.pod:152 docs/virt-v2v.pod:1706
#: test-harness/virt-v2v-test-harness.pod:277
msgid "COPYRIGHT"
msgstr ""

#. type: textblock
#: docs/virt-v2v-copy-to-local.pod:126 docs/virt-v2v-hacking.pod:59
#: docs/virt-v2v-input-vmware.pod:595 docs/virt-v2v-input-xen.pod:127
#: docs/virt-v2v-output-local.pod:208 docs/virt-v2v-output-openstack.pod:222
#: docs/virt-v2v-output-rhv.pod:238 docs/virt-v2v-release-notes-1.42.pod:238
#: docs/virt-v2v-support.pod:154 docs/virt-v2v.pod:1708
msgid "Copyright (C) 2009-2020 Red Hat Inc."
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:3
msgid "virt-v2v-hacking -"
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:7
msgid ""
"First a little history.  Virt-v2v has been through at least two complete "
"rewrites, so this is probably about the third version (but we don't intend "
"to rewrite it again).  The previous version was written in Perl and can be "
"found here: L<https://git.fedorahosted.org/git/virt-v2v.git>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:13
msgid ""
"The current version started out as almost a line-for-line rewrite of the "
"Perl code in OCaml + C, and it still has a fairly similar structure.  "
"Therefore if there are details of this code that you don't understand "
"(especially in the details of guest conversion), checking the Perl code may "
"help."
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:19
msgid "The files to start with when reading this code are:"
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:25
msgid "F<types.mli>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:29
msgid "F<v2v.ml>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:33
msgid ""
"F<types.mli> defines all the structures used and passed around when "
"communicating between different bits of the program.  F<v2v.ml> controls how "
"the program runs in stages."
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:37
msgid ""
"After studying those files, you may want to branch out into the input "
"modules (F<input_*>), the output modules (F<output_*>) or the conversion "
"modules (F<convert_*>).  The input and output modules define I<-i> and I<-o> "
"options (see the manual).  The conversion modules define what guest types we "
"can handle and the detailed steps involved in converting them."
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:44
msgid ""
"Every other file in this directory is a support module / library of some "
"sort.  Some code is written in C, especially where we want to use an "
"external C library such as libxml2."
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:50
msgid "L<virt-p2v(1)>, L<virt-v2v(1)>."
msgstr ""

#. type: textblock
#: docs/virt-v2v-hacking.pod:55 docs/virt-v2v-input-vmware.pod:591
#: docs/virt-v2v-input-xen.pod:123 docs/virt-v2v-output-local.pod:204
#: docs/virt-v2v-output-openstack.pod:218 docs/virt-v2v-output-rhv.pod:234
#: docs/virt-v2v-release-notes-1.42.pod:222 docs/virt-v2v-support.pod:150
#: docs/virt-v2v.pod:1700
msgid "Richard W.M. Jones"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:3
msgid "virt-v2v-input-vmware - Using virt-v2v to convert guests from VMware"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:7
#, no-wrap
msgid ""
" virt-v2v -i vmx GUEST.vmx [-o* options]\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:9
#, no-wrap
msgid ""
" virt-v2v -i vmx\n"
"    -it ssh\n"
"    -ip passwordfile\n"
"    'ssh://root@esxi.example.com/vmfs/volumes/datastore1/guest/guest.vmx'\n"
"    [-o* options]\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:15
#, no-wrap
msgid ""
" virt-v2v\n"
"    -ic 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1'\n"
"    -it vddk\n"
"    -io vddk-libdir=/path/to/vmware-vix-disklib-distrib\n"
"    -io vddk-thumbprint=xx:xx:xx:...\n"
"    \"GUEST NAME\"\n"
"    [-o* options]\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:23
#, no-wrap
msgid ""
" virt-v2v -i ova DISK.ova [-o* options]\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:25
#, no-wrap
msgid ""
" virt-v2v\n"
"    -ic 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1'\n"
"    \"GUEST NAME\" [-o* options]\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:31
msgid ""
"This page documents how to use L<virt-v2v(1)> to convert guests from "
"VMware.  There are currently five different methods to access VMware:"
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:36
msgid "B<-i vmx> GUESTB<.vmx>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:38 docs/virt-v2v-input-vmware.pod:46
msgid "Full documentation: L</INPUT FROM VMWARE VMX>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:40
msgid ""
"If you either have a F<GUEST.vmx> file and one or more F<GUEST.vmdk> disk "
"image files, or if you are able to NFS-mount the VMware storage, then you "
"can use the I<-i vmx> method to read the source guest."
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:44
msgid "B<-i vmx> B<-it ssh> ssh://..."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:48
msgid ""
"This is similar to the method above, except it uses an SSH connection to "
"ESXi to read the F<GUEST.vmx> file and associated disks.  This requires that "
"you have enabled SSH access to the VMware ESXi hypervisor - in the default "
"ESXi configuration this is turned off."
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:53
msgid "B<-ic vpx://...> B<-it vddk>"
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:55
msgid "B<-ic esx://...> B<-it vddk>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:57
msgid "Full documentation: L</INPUT FROM VDDK>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:59
msgid ""
"This method uses the proprietary VDDK library (a.k.a. VixDiskLib) to access "
"the VMware vCenter server or VMware ESXi hypervisor."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:62
msgid ""
"If you have the proprietary library then this method is usually the fastest "
"and most flexible.  If you don't have or don't want to use non-free software "
"then the VMX or SSH methods above will be best."
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:66
msgid "B<-i ova> DISKB<.ova>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:68
msgid "Full documentation: L</INPUT FROM VMWARE OVA>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:70
msgid ""
"With this method you must first export the guest (eg. from vSphere) as an F<."
"ova> file, which virt-v2v can then read directly.  Note this method only "
"works with files exported from VMware, not OVA files that come from other "
"hypervisors or management systems, since OVA is only a pretend standard and "
"is not compatible or interoperable between vendors."
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:77
msgid "B<-ic vpx://...> \"GUEST NAME\""
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:79
msgid "Full documentation: L</INPUT FROM VMWARE VCENTER SERVER>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:81
msgid ""
"If none of the above methods is available, then use this method to import a "
"guest from VMware vCenter.  This is the slowest method."
msgstr ""

#. type: =head1
#: docs/virt-v2v-input-vmware.pod:86
msgid "INPUT FROM VMWARE VMX"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:88
msgid "Virt-v2v is able to import guests from VMware’s vmx files."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:90
msgid "This is useful in two cases:"
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:94 docs/virt-v2v-input-vmware.pod:182
#: docs/virt-v2v-input-vmware.pod:497 docs/virt-v2v-output-local.pod:102
#: docs/virt-v2v.pod:1513
msgid "1."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:96
msgid ""
"VMware virtual machines are stored on a separate NFS server and you are able "
"to mount the NFS storage directly."
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:99 docs/virt-v2v-input-vmware.pod:189
#: docs/virt-v2v-input-vmware.pod:501 docs/virt-v2v-output-local.pod:116
#: docs/virt-v2v.pod:1520
msgid "2."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:101
msgid ""
"You have enabled SSH access to the VMware ESXi hypervisor and there is a C</"
"vmfs/volumes> folder containing the virtual machines."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:106
msgid ""
"If you find a folder of files called F<I<guest>.vmx>, F<I<guest>.vmxf>, "
"F<I<guest>.nvram> and one or more F<.vmdk> disk images, then you can use "
"this method."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:110
msgid "VMX: Guest must be shut down"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:112
msgid ""
"B<The guest must be shut down before conversion starts>.  If you don't shut "
"it down, you will end up with a corrupted VM disk on the target.  With other "
"methods, virt-v2v tries to prevent concurrent access, but because the I<-i "
"vmx> method works directly against the storage, checking for concurrent "
"access is not possible."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:118
msgid "VMX: Access to the storage containing the VMX and VMDK files"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:120
msgid ""
"If the vmx and vmdk files aren't available locally then you must I<either> "
"mount the NFS storage on the conversion server I<or> enable passwordless SSH "
"on the ESXi hypervisor."
msgstr ""

#. type: =head3
#: docs/virt-v2v-input-vmware.pod:124
msgid "VMX: SSH authentication"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:126
msgid ""
"You can use SSH password authentication, by supplying the name of a file "
"containing the password to the I<-ip> option (note this option does I<not> "
"take the password directly).  You may need to adjust F</etc/ssh/sshd_config> "
"on the VMware server to set C<PasswordAuthentication yes>."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:132
msgid ""
"If you are not using password authentication, an alternative is to use ssh-"
"agent, and add your ssh public key to F</etc/ssh/keys-root/authorized_keys> "
"(on the ESXi hypervisor).  After doing this, you should check that "
"passwordless access works from the virt-v2v server to the ESXi hypervisor.  "
"For example:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:138
#, no-wrap
msgid ""
" $ ssh root@esxi.example.com\n"
" [ logs straight into the shell, no password is requested ]\n"
"\n"
msgstr ""

#. type: =head3
#: docs/virt-v2v-input-vmware.pod:141
msgid "VMX: Construct the SSH URI"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:143
msgid ""
"When using the SSH input transport you must specify a remote C<ssh://...> "
"URI pointing to the VMX file.  A typical URI looks like:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:146
#, no-wrap
msgid ""
" ssh://root@esxi.example.com/vmfs/volumes/datastore1/my%20guest/my%20guest.vmx\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:148
msgid ""
"Any space must be escaped with C<%20> and other non-ASCII characters may "
"also need to be URI-escaped."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:151
msgid "The username is not required if it is the same as your local username."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:153
msgid ""
"You may optionally supply a port number after the hostname if the SSH server "
"is not listening on the default port (22)."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:156
msgid "VMX: Importing a guest"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:158
msgid "To import a vmx file from a local file or NFS, do:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:160
#, no-wrap
msgid ""
" $ virt-v2v -i vmx guest.vmx -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:162
msgid ""
"To import a vmx file over SSH, add I<-it ssh> to select the SSH transport "
"and supply a remote SSH URI:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:165
#, no-wrap
msgid ""
" $ virt-v2v \\\n"
"     -i vmx -it ssh \\\n"
"     \"ssh://root@esxi.example.com/vmfs/volumes/datastore1/guest/guest.vmx\" \\\n"
"     -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:170
msgid ""
"Virt-v2v processes the vmx file and uses it to find the location of any vmdk "
"disks."
msgstr ""

#. type: =head1
#: docs/virt-v2v-input-vmware.pod:173
msgid "INPUT FROM VDDK"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:175
msgid ""
"Virt-v2v is able to import guests using VMware’s proprietary VDDK library (a."
"k.a. VixDiskLib)."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:178
msgid "VDDK: Prerequisites"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:184
msgid ""
"As the VDDK library is not open source, and the license of this library does "
"not permit redistribution or commercial use, you must obtain VDDK yourself "
"and satisfy yourself that your usage of the library is permitted by the "
"license."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:191
msgid ""
"nbdkit E<ge> 1.6 is recommended, as it ships with the VDDK plugin enabled "
"unconditionally."
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:194 docs/virt-v2v-output-local.pod:124
#: docs/virt-v2v.pod:1526
msgid "3."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:196
msgid ""
"You must find the SSL \"thumbprint\" of your VMware server.  How to do this "
"is explained in L<nbdkit-vddk-plugin(1)>, also available at the link above."
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:200 docs/virt-v2v-output-local.pod:145
msgid "4."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:202
msgid "VDDK imports require a feature added in libvirt E<ge> 3.7."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:206
msgid "VDDK: ESXi NFC service memory limits"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:208
msgid "In the verbose log you may see errors like:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:210
#, no-wrap
msgid ""
" nbdkit: vddk[3]: error: [NFC ERROR] NfcFssrvrProcessErrorMsg:\n"
" received NFC error 5 from server: Failed to allocate the\n"
" requested 2097176 bytes\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:214
msgid ""
"This seems especially common when there are multiple parallel connections "
"open to the VMware server."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:217
msgid ""
"These can be caused by resource limits set on the VMware server.  You can "
"increase the limit for the NFC service by editing F</etc/vmware/hostd/config."
"xml> and adjusting the C<E<lt>maxMemoryE<gt>> setting:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:222
#, no-wrap
msgid ""
" <nfcsvc>\n"
"   <path>libnfcsvc.so</path>\n"
"   <enabled>true</enabled>\n"
"   <maxMemory>50331648</maxMemory>\n"
"   <maxStreamMemory>10485760</maxStreamMemory>\n"
" </nfcsvc>\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:229
msgid "and restarting the C<hostd> service:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:231
#, no-wrap
msgid ""
" # /etc/init.d/hostd restart\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:233
msgid "For more information see L<https://bugzilla.redhat.com/1614276>."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:235
msgid "VDDK: URI"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:237
msgid ""
"Construct the correct C<vpx://> (for vCenter) or C<esx://> (for ESXi)  URL.  "
"It will look something like these:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:240
#, no-wrap
msgid ""
" vpx://root@vcenter.example.com/Datacenter/esxi\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:242
#, no-wrap
msgid ""
" esx://root@esxi.example.com\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:244
msgid ""
"To verify that you have the correct URL, use the L<virsh(1)> command to list "
"the guests on the server:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:247 docs/virt-v2v-input-vmware.pod:440
#, no-wrap
msgid ""
" $ virsh -c 'vpx://root@vcenter.example.com/Datacenter/esxi' list --all\n"
" Enter root's password for vcenter.example.com: ***\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:250 docs/virt-v2v-input-vmware.pod:443
#, no-wrap
msgid ""
"  Id    Name                           State\n"
" ----------------------------------------------------\n"
"  -     Fedora 20                      shut off\n"
"  -     Windows 2003                   shut off\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:255 docs/virt-v2v-input-vmware.pod:448
msgid ""
"If you get an error \"Peer certificate cannot be authenticated with given CA "
"certificates\" or similar, then you can either import the vCenter host’s "
"certificate, or bypass signature verification by adding the C<?no_verify=1> "
"flag:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:260 docs/virt-v2v-input-vmware.pod:453
#, no-wrap
msgid ""
" $ virsh -c 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1' list --all\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:262 docs/virt-v2v-input-vmware.pod:455
#: docs/virt-v2v-input-xen.pod:51
msgid ""
"You should also try dumping the metadata from any guest on your server, like "
"this:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:265
#, no-wrap
msgid ""
" $ virsh -c 'vpx://root@vcenter.example.com/Datacenter/esxi' dumpxml \"Windows 2003\"\n"
" <domain type='vmware'>\n"
"   <name>Windows 2003</name>\n"
"   [...]\n"
"   <vmware:moref>vm-123</vmware:moref>\n"
" </domain>\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:272
msgid ""
"If C<E<lt>vmware:morefE<gt>> does not appear in the metadata, then you need "
"to upgrade libvirt."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:275
msgid ""
"B<If the above commands do not work, then virt-v2v is not going to work "
"either>.  Fix your URI and/or your VMware server before continuing."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:279
msgid "VDDK: Importing a guest"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:281
msgid ""
"The I<-it vddk> parameter selects VDDK as the input transport for disks."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:283
msgid ""
"To import a particular guest from vCenter server or ESXi hypervisor, use a "
"command like the following, substituting the URI, guest name and SSL "
"thumbprint:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:287
#, no-wrap
msgid ""
" $ virt-v2v \\\n"
"     -ic 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1' \\\n"
"     -it vddk \\\n"
"     -io vddk-libdir=/path/to/vmware-vix-disklib-distrib \\\n"
"     -io vddk-thumbprint=xx:xx:xx:... \\\n"
"     \"Windows 2003\" \\\n"
"     -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:295
msgid ""
"Other options that you might need to add in rare circumstances include I<-io "
"vddk-config>, I<-io vddk-cookie>, I<-io vddk-nfchostport>, I<-io vddk-port>, "
"I<-io vddk-snapshot>, and I<-io vddk-transports>, which are all explained in "
"the L<nbdkit-vddk-plugin(1)> documentation.  Do not use these options unless "
"you know what you are doing."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:301
msgid "VDDK: Debugging VDDK failures"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:303
msgid ""
"The VDDK library can be operated in a verbose mode where it gives (very) "
"verbose messages.  Use ‘virt-v2v -v -x’ as usual to enable verbose messages."
msgstr ""

#. type: =head1
#: docs/virt-v2v-input-vmware.pod:307
msgid "INPUT FROM VMWARE OVA"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:309
msgid ""
"Virt-v2v is able to import guests from VMware’s OVA (Open Virtualization "
"Appliance) files.  Only OVAs exported from VMware vSphere will work."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:313
msgid "OVA: Create OVA"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:315
msgid ""
"To create an OVA in vSphere, use the \"Export OVF Template\" option (from "
"the VM context menu, or from the File menu).  Either \"Folder of files"
"\" (OVF) or \"Single file\" (OVA) will work, but OVA is probably easier to "
"deal with.  OVA files are really just uncompressed tar files, so you can use "
"commands like C<tar tf VM.ova> to view their contents."
msgstr ""

#. type: =head3
#: docs/virt-v2v-input-vmware.pod:322
msgid "Create OVA with ovftool"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:324
msgid "You can also use VMware’s proprietary C<ovftool>:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:326
#, no-wrap
msgid ""
" ovftool --noSSLVerify \\\n"
"   vi://USER:PASSWORD@esxi.example.com/VM \\\n"
"   VM.ova\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:330
msgid "To connect to vCenter:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:332
#, no-wrap
msgid ""
" ovftool  --noSSLVerify \\\n"
"   vi://USER:PASSWORD@vcenter.example.com/DATACENTER-NAME/vm/VM \\\n"
"   VM.ova\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:336
msgid ""
"For Active Directory-aware authentication using down-level logon names "
"(C<DOMAIN\\USER>), you have to express the C<\\> character in the form of "
"its ascii hex-code (C<%5c>):"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:340
#, no-wrap
msgid ""
" vi://DOMAIN%5cUSER:PASSWORD@...\n"
"\n"
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:342
msgid "OVA: Importing a guest"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:344
msgid "To import an OVA file called F<VM.ova>, do:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:346
#, no-wrap
msgid ""
" $ virt-v2v -i ova VM.ova -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:348
msgid ""
"If you exported the guest as a \"Folder of files\", I<or> if you unpacked "
"the OVA tarball yourself, then you can point virt-v2v at the directory "
"containing the files:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:352
#, no-wrap
msgid ""
" $ virt-v2v -i ova /path/to/files -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: =head1
#: docs/virt-v2v-input-vmware.pod:354
msgid "INPUT FROM VMWARE VCENTER SERVER"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:356
msgid "Virt-v2v is able to import guests from VMware vCenter Server."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:358
msgid ""
"vCenter E<ge> 5.0 is required.  If you don’t have vCenter, using OVA or VMX "
"is recommended instead (see L</INPUT FROM VMWARE OVA> and/or L</INPUT FROM "
"VMWARE VMX>)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:362
msgid ""
"Virt-v2v uses libvirt for access to vCenter, and therefore the input mode "
"should be I<-i libvirt>.  As this is the default, you don't need to specify "
"it on the command line."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:366
msgid "vCenter: URI"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:368
msgid "The libvirt URI of a vCenter server looks something like this:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:370
#, no-wrap
msgid ""
" vpx://user@server/Datacenter/esxi\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:372
msgid "where:"
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:376
msgid "C<user@>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:378
msgid "is the (optional, but recommended) user to connect as."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:380
msgid ""
"If the username contains a backslash (eg. C<DOMAIN\\USER>) then you will "
"need to URI-escape that character using C<%5c>: C<DOMAIN%5cUSER> (5c is the "
"hexadecimal ASCII code for backslash.)  Other punctuation may also have to "
"be escaped."
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:385
msgid "C<server>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:387
msgid "is the vCenter Server (I<not> hypervisor)."
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:389
msgid "C<Datacenter>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:391
msgid "is the name of the datacenter."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:393
msgid ""
"If the name contains a space, replace it with the URI-escape code C<%20>."
msgstr ""

#. type: =item
#: docs/virt-v2v-input-vmware.pod:396
msgid "C<esxi>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:398
msgid "is the name of the ESXi hypervisor running the guest."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:402
msgid ""
"If the VMware deployment is using folders, then these may need to be added "
"to the URI, eg:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:405
#, no-wrap
msgid ""
" vpx://user@server/Folder/Datacenter/esxi\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:407
msgid ""
"For full details of libvirt URIs, see: L<http://libvirt.org/drvesx.html>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:409
msgid "Typical errors from libvirt / virsh when the URI is wrong include:"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:415
msgid "Could not find datacenter specified in [...]"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:419
msgid "Could not find compute resource specified in [...]"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:423
msgid "Path [...] does not specify a compute resource"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:427
msgid "Path [...] does not specify a host system"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:431
msgid "Could not find host system specified in [...]"
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:435
msgid "vCenter: Test libvirt connection to vCenter"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:437
msgid ""
"Use the L<virsh(1)> command to list the guests on the vCenter Server like "
"this:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:458
#, no-wrap
msgid ""
" $ virsh -c 'vpx://root@vcenter.example.com/Datacenter/esxi' dumpxml \"Windows 2003\"\n"
" <domain type='vmware'>\n"
"   <name>Windows 2003</name>\n"
"   [...]\n"
" </domain>\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:464
msgid ""
"B<If the above commands do not work, then virt-v2v is not going to work "
"either>.  Fix your libvirt configuration and/or your VMware vCenter Server "
"before continuing."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:468
msgid "vCenter: Importing a guest"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:470
msgid "To import a particular guest from vCenter Server, do:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:472
#, no-wrap
msgid ""
" $ virt-v2v -ic 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1' \\\n"
"   \"Windows 2003\" \\\n"
"   -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:476
msgid ""
"where C<Windows 2003> is the name of the guest (which must be shut down)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:479
msgid ""
"Note that you may be asked for the vCenter password I<twice>.  This happens "
"once because libvirt needs it, and a second time because virt-v2v itself "
"connects directly to the server.  Use I<-ip> F<filename> to supply a "
"password via a file."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:484 docs/virt-v2v-input-xen.pod:80
msgid ""
"In this case the output flags are set to write the converted guest to a "
"temporary directory as this is just an example, but you can also write to "
"libvirt or any other supported target."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:488
msgid "vCenter: Non-administrator role"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:490
msgid ""
"Instead of using the vCenter Administrator role, you can create a custom non-"
"administrator role to perform the conversion.  You will however need to give "
"it a minimum set of permissions as follows (using VMware vCenter 6.5):"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:499
msgid "Create a custom role in vCenter."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:503
msgid "Enable (check) the following objects:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:505
#, no-wrap
msgid ""
" Datastore:\n"
"  - Browse datastore\n"
"  - Low level file operations\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:509
#, no-wrap
msgid ""
" Sessions:\n"
"  - Validate session\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:512
#, no-wrap
msgid ""
" Virtual Machine:\n"
"   Interaction:\n"
"     - Guest operating system management by VIX API\n"
"   Provisioning:\n"
"     - Allow disk access\n"
"     - Allow read-only disk access\n"
"\n"
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:521
msgid "vCenter: Firewall and proxy settings"
msgstr ""

#. type: =head3
#: docs/virt-v2v-input-vmware.pod:523
msgid "vCenter: Ports"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:525
msgid ""
"If there is a firewall between the virt-v2v conversion server and the "
"vCenter server, then you will need to open port 443 (https) and port 5480."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:529
msgid ""
"Port 443 is used to copy the guest disk image(s).  Port 5480 is used to "
"query vCenter for guest metadata."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:532
msgid ""
"These port numbers are only the defaults.  It is possible to reconfigure "
"vCenter to use other port numbers.  In that case you would need to specify "
"those ports in the C<vpx://> URI.  See L</vCenter: URI> above."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:537
msgid ""
"These ports only apply to virt-v2v conversions.  You may have to open other "
"ports for other vCenter functionality, for example the web user interface.  "
"VMware documents the required ports for vCenter in their online "
"documentation."
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:542
#, no-wrap
msgid ""
" ┌────────────┐   port 443 ┌────────────┐        ┌────────────┐\n"
" │ virt-v2v   │────────────▶ vCenter    │────────▶ ESXi       │\n"
" │ conversion │────────────▶ server     │        │ hypervisor │\n"
" │ server     │  port 5480 │            │        │   ┌─────┐  │\n"
" └────────────┘            └────────────┘        │   │guest│  │\n"
"                                                 └───┴─────┴──┘\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:549
msgid ""
"(In the diagram above the arrows show the direction in which the TCP "
"connection is initiated, I<not> necessarily the direction of data transfer.)"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:553
msgid ""
"Virt-v2v itself does not connect directly to the ESXi hypervisor containing "
"the guest.  However vCenter connects to the hypervisor and forwards the "
"information, so if you have a firewall between vCenter and its hypervisors "
"you may need to open additional ports (consult VMware documentation)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:559
msgid ""
"The proxy environment variables (C<https_proxy>, C<all_proxy>, C<no_proxy>, "
"C<HTTPS_PROXY>, C<ALL_PROXY> and C<NO_PROXY>) are B<ignored> when doing "
"vCenter conversions."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-vmware.pod:563
msgid "vCenter: SSL/TLS certificate problems"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:565
msgid "You may see this error:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-vmware.pod:567
#, no-wrap
msgid ""
"  CURL: Error opening file: SSL: no alternative certificate subject\n"
"  name matches target host name\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:570
msgid ""
"(You may need to enable debugging with ‘virt-v2v -v -x’ to see this message)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:573
msgid ""
"This can be caused by using an IP address instead of the fully-qualified DNS "
"domain name of the vCenter server, ie.  use C<vpx://vcenter.example.com/...> "
"instead of C<vpx://11.22.33.44/...>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:577
msgid ""
"Another certificate problem can be caused by the vCenter server having a "
"mismatching FQDN and IP address, for example if the server acquired a new IP "
"address from DHCP.  To fix this you need to change your DHCP server or "
"network configuration so that the vCenter server always gets a stable IP "
"address.  After that log in to the vCenter server’s admin console at "
"C<https://vcenter:5480/>.  Under the C<Admin> tab, select C<Certificate "
"regeneration enabled> and then reboot it."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-vmware.pod:587 docs/virt-v2v-input-xen.pod:119
#: docs/virt-v2v-output-local.pod:200 docs/virt-v2v-output-rhv.pod:230
#: docs/virt-v2v-release-notes-1.42.pod:213
msgid "L<virt-v2v(1)>."
msgstr ""

#. type: =head1
#: docs/virt-v2v-input-vmware.pod:589 docs/virt-v2v-input-xen.pod:121
#: docs/virt-v2v-output-local.pod:202 docs/virt-v2v-output-openstack.pod:216
#: docs/virt-v2v-output-rhv.pod:232 docs/virt-v2v-support.pod:148
msgid "AUTHOR"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:3
msgid "virt-v2v-input-xen - Using virt-v2v to convert guests from Xen"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-xen.pod:7
#, no-wrap
msgid ""
" export LIBGUESTFS_BACKEND=direct\n"
" virt-v2v -ic 'xen+ssh://root@xen.example.com'\n"
"          -ip passwordfile\n"
"          GUEST_NAME [-o* options]\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:14
msgid ""
"This page documents how to use L<virt-v2v(1)> to convert guests from RHEL 5 "
"Xen, or SLES and OpenSUSE Xen hosts."
msgstr ""

#. type: =head1
#: docs/virt-v2v-input-xen.pod:17
msgid "INPUT FROM XEN"
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-xen.pod:19
msgid "SSH authentication"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:21
msgid ""
"You can use SSH password authentication, by supplying the name of a file "
"containing the password to the I<-ip> option (note this option does I<not> "
"take the password directly)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:25
msgid ""
"If you are not using password authentication, an alternative is to use ssh-"
"agent, and add your ssh public key to F</root/.ssh/authorized_keys> (on the "
"Xen host).  After doing this, you should check that passwordless access "
"works from the virt-v2v server to the Xen host.  For example:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-xen.pod:31
#, no-wrap
msgid ""
" $ ssh root@xen.example.com\n"
" [ logs straight into the shell, no password is requested ]\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:34
msgid ""
"With some modern ssh implementations, legacy crypto policies required to "
"interoperate with RHEL 5 sshd are disabled.  To enable them you may need to "
"run this command on the conversion server (ie. ssh client), but read "
"L<update-crypto-policies(8)> first:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-xen.pod:39
#, no-wrap
msgid ""
" # update-crypto-policies --set LEGACY\n"
"\n"
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-xen.pod:41
msgid "Test libvirt connection to remote Xen host"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:43
msgid "Use the L<virsh(1)> command to list the guests on the remote Xen host:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-xen.pod:45
#, no-wrap
msgid ""
" $ virsh -c xen+ssh://root@xen.example.com list --all\n"
"  Id    Name                           State\n"
" ----------------------------------------------------\n"
"  0     Domain-0                       running\n"
"  -     rhel49-x86_64-pv               shut off\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-xen.pod:54
#, no-wrap
msgid ""
" $ virsh -c xen+ssh://root@xen.example.com dumpxml rhel49-x86_64-pv\n"
" <domain type='xen'>\n"
"   <name>rhel49-x86_64-pv</name>\n"
"   [...]\n"
" </domain>\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:60
msgid ""
"B<If the above commands do not work, then virt-v2v is not going to work "
"either>.  Fix your libvirt configuration or the remote server before "
"continuing."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:64
msgid ""
"B<If the guest disks are located on a host block device>, then the "
"conversion will fail.  See L</Xen or ssh conversions from block devices> "
"below for a workaround."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-xen.pod:68
msgid "Importing a guest"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:70
msgid "To import a particular guest from a Xen server, do:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-xen.pod:72
#, no-wrap
msgid ""
" $ LIBGUESTFS_BACKEND=direct \\\n"
"       virt-v2v -ic 'xen+ssh://root@xen.example.com' \\\n"
"           rhel49-x86_64-pv \\\n"
"           -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:77
msgid ""
"where C<rhel49-x86_64-pv> is the name of the guest (which must be shut down)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:84
msgid ""
"Setting the L<backend|guestfs(3)/BACKEND> to C<direct> is a temporary "
"workaround until L<libvirt bug 1140166|https://bugzilla.redhat.com/1140166> "
"is fixed."
msgstr ""

#. type: =head2
#: docs/virt-v2v-input-xen.pod:88
msgid "Xen or ssh conversions from block devices"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:90
msgid ""
"Currently virt-v2v cannot directly access a Xen guest (or any guest located "
"remotely over ssh) if that guest’s disks are located on host block devices."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:94
msgid ""
"To tell if a Xen guest uses host block devices, look at the guest XML.  You "
"will see:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-xen.pod:97
#, no-wrap
msgid ""
"  <disk type='block' device='disk'>\n"
"    ...\n"
"    <source dev='/dev/VG/guest'/>\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:101
msgid ""
"where C<type='block'>, C<source dev=> and C</dev/...> are all indications "
"that the disk is located on a host block device."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:104
msgid ""
"This happens because the qemu ssh block driver that we use to access remote "
"disks uses the ssh sftp protocol, and this protocol cannot correctly detect "
"the size of host block devices."
msgstr ""

#. type: textblock
#: docs/virt-v2v-input-xen.pod:108
msgid ""
"The workaround is to copy the guest over to the conversion server, using the "
"separate L<virt-v2v-copy-to-local(1)> tool, followed by running virt-v2v.  "
"You will need sufficient space on the conversion server to store a full copy "
"of the guest."
msgstr ""

#. type: verbatim
#: docs/virt-v2v-input-xen.pod:113
#, no-wrap
msgid ""
" virt-v2v-copy-to-local -ic xen+ssh://root@xen.example.com guest\n"
" virt-v2v -i libvirtxml guest.xml -o local -os /var/tmp\n"
" rm guest.xml guest-disk*\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:3
msgid ""
"virt-v2v-output-local - Using virt-v2v to convert guests to local files or "
"libvirt"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:8
#, no-wrap
msgid ""
" virt-v2v [-i* options] [-o libvirt] -os POOL\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:10
#, no-wrap
msgid ""
" virt-v2v [-i* options] -o local -os DIRECTORY\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:12
#, no-wrap
msgid ""
" virt-v2v [-i* options] -o qemu -os DIRECTORY [--qemu-boot]\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:14
#, no-wrap
msgid ""
" virt-v2v [-i* options] -o json -os DIRECTORY\n"
"                        [-oo json-disks-pattern=PATTERN]\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:17
#, no-wrap
msgid ""
" virt-v2v [-i* options] -o null\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:21
msgid ""
"This page documents how to use L<virt-v2v(1)> to convert guests to local "
"files or to a locally running libvirt instance.  There are four output modes "
"you can select on the virt-v2v command line:"
msgstr ""

#. type: =item
#: docs/virt-v2v-output-local.pod:27
msgid "B<-o libvirt -os> C<POOL>"
msgstr ""

#. type: =item
#: docs/virt-v2v-output-local.pod:29
msgid "B<-os> C<POOL>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:31
msgid ""
"This converts the guest to a libvirt directory pool call C<POOL>, and "
"instantiates the guest in libvirt (but does not start it running).  See L</"
"OUTPUT TO LIBVIRT> below."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:35
msgid ""
"I<-o libvirt> is the default if no I<-o> option is given, so you can omit it."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-local.pod:38
msgid "B<-o local -os> C<DIRECTORY>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:40
msgid ""
"This converts the guest to files in C<DIRECTORY>.  A libvirt XML file is "
"also created, but unlike I<-o libvirt> the guest is not instantiated in "
"libvirt, only files are created."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:44
msgid "The files will be called:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:46
#, no-wrap
msgid ""
" NAME-sda, NAME-sdb, etc.      Guest disk(s).\n"
" NAME.xml                      Libvirt XML.\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:49 docs/virt-v2v-output-local.pod:160
msgid "where C<NAME> is the guest name."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-local.pod:51
msgid "B<-o qemu -os> C<DIRECTORY>"
msgstr ""

#. type: =item
#: docs/virt-v2v-output-local.pod:53
msgid "B<-o qemu -os> C<DIRECTORY> B<--qemu-boot>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:55
msgid ""
"This converts the guest to files in C<DIRECTORY>.  Unlike I<-o local> above, "
"a shell script is created which contains the raw qemu command you would need "
"to boot the guest.  However the shell script is not run, I<unless> you also "
"add the I<--qemu-boot> option."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-local.pod:60
msgid "B<-o json -os> C<DIRECTORY>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:62
msgid ""
"This converts the guest to files in C<DIRECTORY>.  The metadata produced is "
"a JSON file containing the majority of the data virt-v2v gathers during the "
"conversion.  See L</OUTPUT TO JSON> below."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-local.pod:67
msgid "B<-o null>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:69
msgid ""
"The guest is converted, but the final result is thrown away and no metadata "
"is created.  This is mainly useful for testing."
msgstr ""

#. type: =head1
#: docs/virt-v2v-output-local.pod:74
msgid "OUTPUT TO LIBVIRT"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:76
msgid ""
"The I<-o libvirt> option lets you upload the converted guest to a libvirt-"
"managed host.  There are several limitations:"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:83
msgid ""
"You can only use a local libvirt connection [see below for how to workaround "
"this]."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:88
msgid ""
"The I<-os pool> option must specify a directory pool, not anything more "
"exotic such as iSCSI [but see below]."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:93
msgid "You can only upload to a KVM hypervisor."
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-local.pod:97
msgid ""
"Workaround for output to a remote libvirt instance and/or a non-directory "
"storage pool"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:104
msgid ""
"Use virt-v2v in I<-o local> mode to convert the guest disks and metadata "
"into a local temporary directory:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:107
#, no-wrap
msgid ""
" virt-v2v [...] -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:109
msgid "This creates two (or more) files in F</var/tmp> called:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:111
#, no-wrap
msgid ""
" /var/tmp/NAME.xml     # the libvirt XML (metadata)\n"
" /var/tmp/NAME-sda     # the guest’s first disk\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:114
msgid "(for C<NAME> substitute the guest’s name)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:118
msgid "Upload the converted disk(s) into the storage pool called C<POOL>:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:120
#, no-wrap
msgid ""
" size=$(stat -c%s /var/tmp/NAME-sda)\n"
" virsh vol-create-as POOL NAME-sda $size --format raw\n"
" virsh vol-upload --pool POOL NAME-sda /var/tmp/NAME-sda\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:126
msgid ""
"Edit F</var/tmp/NAME.xml> to change F</var/tmp/NAME-sda> to the pool name.  "
"In other words, locate the following bit of XML:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:129
#, no-wrap
msgid ""
" <disk type='file' device='disk'>\n"
"   <driver name='qemu' type='raw' />\n"
"   <source file='/var/tmp/NAME-sda' />\n"
"   <target dev='hda' bus='ide' />\n"
" </disk>\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:135
msgid ""
"and change two things: The C<type='file'> attribute must be changed to "
"C<type='volume'>, and the C<E<lt>sourceE<gt>> element must be changed to "
"include C<pool> and C<volume> attributes:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:139
#, no-wrap
msgid ""
" <disk type='volume' device='disk'>\n"
"   ...\n"
"   <source pool='POOL' volume='NAME-sda' />\n"
"   ...\n"
" </disk>\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:147
msgid "Define the final guest in libvirt:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:149
#, no-wrap
msgid ""
" virsh define /var/tmp/NAME.xml\n"
"\n"
msgstr ""

#. type: =head1
#: docs/virt-v2v-output-local.pod:153
#, fuzzy
#| msgid "OUTPUT"
msgid "OUTPUT TO JSON"
msgstr "SAÍDA"

#. type: textblock
#: docs/virt-v2v-output-local.pod:155
msgid "The I<-o json> option produces the following files by default:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:157
#, no-wrap
msgid ""
" NAME.json                     JSON metadata.\n"
" NAME-sda, NAME-sdb, etc.      Guest disk(s).\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:162
msgid ""
"It is possible to change the pattern of the disks using the I<-oo json-disks-"
"pattern=...> option: it allows parameters in form of C<%{...}> variables, "
"for example:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:166
#, no-wrap
msgid ""
" -oo json-disks-pattern=disk%{DiskNo}.img\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:168
msgid "Recognized variables are:"
msgstr ""

#. type: =item
#: docs/virt-v2v-output-local.pod:172
msgid "C<%{DiskNo}>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:174
msgid "The index of the disk, starting from 1."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-local.pod:176
msgid "C<%{DiskDeviceName}>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:178
msgid "The destination device of the disk, e.g. C<sda>, C<sdb>, etc."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-local.pod:180
msgid "C<%{GuestName}>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:182
msgid "The name of the guest."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:186
msgid ""
"Using a pattern it is possible use subdirectories for the disks, even with "
"names depending on variables; for example:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-local.pod:189
#, no-wrap
msgid ""
" -oo json-disks-pattern=%{GuestName}-%{DiskNo}/disk.img\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:191
msgid "The default pattern is C<%{GuestName}-%{DiskDeviceName}>."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-local.pod:193
msgid ""
"If the literal C<%{...}> text is needed, it is possible to avoid the escape "
"it with a leading C<%>; for example, C<%%{GuestName}-%{DiskNo}.img> will "
"create file names for the disks like C<%%{GuestName}-1.img>, C<%"
"%{GuestName}-2.img>, etc."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:3
msgid ""
"virt-v2v-output-openstack - Using virt-v2v to convert guests to OpenStack"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:7
#, no-wrap
msgid ""
" virt-v2v [-i* options] -o openstack\n"
"                        -oo server-id=SERVER\n"
"                        [-oo guest-id=GUEST]\n"
"                        [-oo verify-server-certificate=false]\n"
"                        [-oo os-username=admin] [-oo os-*=*]\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:13
#, no-wrap
msgid ""
" virt-v2v [-i* options] -o glance\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:17
msgid ""
"This page documents how to use L<virt-v2v(1)> to convert guests to run on "
"OpenStack.  There are two output modes you can select, but only I<-o "
"openstack> should be used normally."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-openstack.pod:23
msgid "B<-o openstack> B<-oo server-id=>SERVER [...]"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:25
msgid "Full description: L</OUTPUT TO OPENSTACK>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:27
msgid ""
"This is the modern method for uploading to OpenStack via the REST API.  "
"Guests can be directly converted into Cinder volumes."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-openstack.pod:30
msgid "B<-o glance>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:32
msgid "Full description: L</OUTPUT TO GLANCE>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:34
msgid ""
"This is the old method for uploading to Glance.  Unfortunately Glance is not "
"well suited to storing converted guests (since virt-v2v deals with \"pets\" "
"not templated \"cattle\"), so this method is not recommended unless you "
"really know what you are doing."
msgstr ""

#. type: =head1
#: docs/virt-v2v-output-openstack.pod:41
msgid "OUTPUT TO OPENSTACK"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:43
msgid "To output to OpenStack, use the I<-o openstack> option."
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-openstack.pod:45
msgid "OpenStack: Setting up a conversion appliance"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:47
msgid ""
"When virt-v2v is converting to OpenStack, it is unusual in that virt-v2v "
"B<must> be running inside a virtual machine running on top of the OpenStack "
"overcloud.  This virtual machine is called the \"conversion appliance\".  "
"Note this virtual machine is unrelated to the guest which is being converted."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:53
msgid ""
"The reason for this is because to create Cinder volumes that will contain "
"the guest data (for the converted guest) we must attach those Cinder volumes "
"to an OpenStack virtual machine."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:57
msgid ""
"The C<openstack> command must be installed in the appliance.  We use it for "
"communicating with OpenStack."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:60
msgid ""
"When virt-v2v is running in the conversion appliance, you must supply the "
"name or UUID of the conversion appliance to virt-v2v, eg:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:63
#, no-wrap
msgid ""
" $ openstack server list\n"
" +--------------------------------------+-----------+--------+\n"
" | ID                                   | Name      | Status |\n"
" +--------------------------------------+-----------+--------+\n"
" | bbb0147a-44b9-4d19-9a9d-10ca9a984744 | test1     | ACTIVE |\n"
" +--------------------------------------+-----------+--------+\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:70
#, no-wrap
msgid ""
" # virt-v2v [...] \\\n"
"       -o openstack -oo server-id=bbb0147a-44b9-4d19-9a9d-10ca9a984744\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:73 docs/virt-v2v-output-openstack.pod:99
msgid "or:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:75
#, no-wrap
msgid ""
" # virt-v2v [...] -o openstack -oo server-id=test1\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:77
msgid ""
"You can run many parallel conversions inside a single conversion appliance "
"if you want, subject to having enough resources available.  However "
"OpenStack itself imposes a limit that you should be aware of: OpenStack "
"cannot attach more than around 25 disks [the exact number varies with "
"configuration] to a single appliance, and that limits the number of guests "
"which can be converted in parallel, because each guest's disk must be "
"attached to the appliance while being copied."
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-openstack.pod:85
msgid "OpenStack: Authentication"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:87
msgid ""
"Converting to OpenStack requires access to the tenant (non-admin) API "
"endpoints.  You will need to either set up your C<$OS_*> environment "
"variables or use output options on the virt-v2v command line to authenticate "
"with OpenStack."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:92
msgid ""
"Normally there is a file called something like C<stackrc>, C<overcloudrc> "
"etc which you can simply C<source> to set everything up."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:95
msgid "For example:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:97
#, no-wrap
msgid ""
" export OS_USERNAME=admin\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:101
#, no-wrap
msgid ""
" virt-v2v [...] -o openstack -oo os-username=admin\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:103
msgid ""
"are equivalent, and have the same effect as using I<--os-username> on the "
"command line of OpenStack tools."
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-openstack.pod:106
msgid "OpenStack: Running as root"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:108
msgid ""
"Because virt-v2v must access Cinder volumes which are presented as F</dev> "
"devices to the conversion appliance, virt-v2v must usually run as root in I<-"
"o openstack> mode."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:112
msgid ""
"If you use C<sudo> to start virt-v2v and you are using environment variables "
"for authentication, remember to use the C<sudo -E> option to preserve the "
"environment."
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-openstack.pod:116
msgid "OpenStack: Guest ID"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:118
#, no-wrap
msgid ""
" virt-v2v [...] -o openstack -oo guest-id=123-456-7890\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:120
msgid ""
"You may optionally specify I<-oo guest-id=...> on the command line.  The ID "
"(which can be any string) is saved on each Cinder volume in the "
"C<virt_v2v_guest_id> volume property."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:124
msgid ""
"This can be used to find disks associated with a guest, or to associate "
"which disks are related to which guests when converting many guests."
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-openstack.pod:128
msgid "OpenStack: Ignore server certificate"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:130
msgid ""
"Using I<-oo verify-server-certificate=false> you can tell the openstack "
"client to ignore the server certificate when connecting to the OpenStack API "
"endpoints.  This has the same effect as passing the I<--insecure> option to "
"the C<openstack> command."
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-openstack.pod:135
msgid "OpenStack: Converting a guest"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:137
msgid "The final command to convert the guest, running as root, will be:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:139
#, no-wrap
msgid ""
" # virt-v2v [-i options ...] \\\n"
"       -o openstack -oo server-id=NAME|UUID [-oo guest-id=ID]\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:142
msgid "If you include authentication options on the command line then:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:144
#, no-wrap
msgid ""
" # virt-v2v [-i options ...] \\\n"
"       -o openstack -oo server-id=NAME|UUID -oo os-username=admin [etc]\n"
"\n"
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-openstack.pod:147
msgid "OpenStack: Booting the guest"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:149
msgid ""
"Guests are converted as Cinder volume(s) (one volume per disk in the "
"original guest).  To boot them use the C<openstack server create --volume> "
"option:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-openstack.pod:153
#, no-wrap
msgid ""
" $ openstack volume list\n"
" +--------------------------------------+---------------+-----------+\n"
" | ID                                   | Name          | Status    |\n"
" +--------------------------------------+---------------+-----------+\n"
" | c4d06d15-22ef-462e-9eff-ab54ab285a1f | fedora-27-sda | available |\n"
" +--------------------------------------+---------------+-----------+\n"
" $ openstack server create \\\n"
"       --flavor x1.small \\\n"
"       --volume c4d06d15-22ef-462e-9eff-ab54ab285a1f \\\n"
"       myguest\n"
" $ openstack console url show myguest\n"
"\n"
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-openstack.pod:165
msgid "OpenStack: Other conversion options"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:167
msgid ""
"To specify the Cinder volume type, use I<-os>.  If not specified then no "
"Cinder volume type is used."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:170
msgid ""
"The following options are B<not> supported with OpenStack: I<-oa>, I<-of>."
msgstr ""

#. type: =head1
#: docs/virt-v2v-output-openstack.pod:173
msgid "OUTPUT TO GLANCE"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:175
msgid ""
"Note this is a legacy option.  In most cases you should use L</OUTPUT TO "
"OPENSTACK> instead."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:178
msgid "To output to OpenStack Glance, use the I<-o glance> option."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:180
msgid ""
"This runs the L<glance(1)> CLI program which must be installed on the virt-"
"v2v conversion host.  For authentication to work, you will need to set "
"C<OS_*> environment variables.  In most cases you can do this by sourcing a "
"file called something like F<keystonerc_admin>."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:185
msgid ""
"Virt-v2v adds metadata for the guest to Glance, describing such things as "
"the guest operating system and what drivers it requires.  The command "
"C<glance image-show> will display the metadata as \"Property\" fields such "
"as C<os_type> and C<hw_disk_bus>."
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-openstack.pod:190
msgid "Glance and sparseness"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:192
msgid ""
"Glance image upload doesn't appear to correctly handle sparseness.  For this "
"reason, using qcow2 will be faster and use less space on the Glance server.  "
"Use the virt-v2v S<I<-of qcow2>> option."
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-openstack.pod:196
msgid "Glance and multiple disks"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:198
msgid ""
"If the guest has a single disk, then the name of the disk in Glance will be "
"the name of the guest.  You can control this using the I<-on> option."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:202
msgid ""
"Glance doesn't have a concept of associating multiple disks with a single "
"guest, and Nova doesn't allow you to boot a guest from multiple Glance disks "
"either.  If the guest has multiple disks, then the first (assumed to be the "
"system disk) will have the name of the guest, and the second and subsequent "
"data disks will be called C<I<guestname>-disk2>, C<I<guestname>-disk3> etc.  "
"It may be best to leave the system disk in Glance, and import the data disks "
"to Cinder."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-openstack.pod:212
msgid ""
"L<virt-v2v(1)>, L<https://docs.openstack.org/python-openstackclient/latest/"
"cli/man/openstack.html>, L<glance(1)>."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:3
msgid "virt-v2v-output-rhv - Using virt-v2v to convert guests to oVirt or RHV"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-rhv.pod:7
#, no-wrap
msgid ""
" virt-v2v [-i* options] -o rhv-upload [-oc ENGINE_URL] -os STORAGE\n"
"                        [-op PASSWORD] [-of raw]\n"
"                        [-oo rhv-cafile=FILE]\n"
"                        [-oo rhv-cluster=CLUSTER]\n"
"                        [-oo rhv-direct]\n"
"                        [-oo rhv-disk-uuid=UUID ...]\n"
"                        [-oo rhv-verifypeer]\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-rhv.pod:15
#, no-wrap
msgid ""
" virt-v2v [-i* options] -o rhv -os [esd:/path|/path]\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-rhv.pod:17
#, no-wrap
msgid ""
" virt-v2v [-i* options] -o vdsm\n"
"                        [-oo vdsm-image-uuid=UUID]\n"
"                        [-oo vdsm-vol-uuid=UUID]\n"
"                        [-oo vdsm-vm-uuid=UUID]\n"
"                        [-oo vdsm-ovf-output=DIR]\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:25
msgid ""
"This page documents how to use L<virt-v2v(1)> to convert guests to an oVirt "
"or RHV management instance.  There are three output modes that you can "
"select, but only I<-o rhv-upload> should be used normally, the other two are "
"deprecated:"
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:32
msgid "B<-o rhv-upload> B<-os> STORAGE"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:34
msgid "Full description: L</OUTPUT TO RHV>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:36
msgid ""
"This is the modern method for uploading to oVirt/RHV via the REST API.  It "
"requires oVirt/RHV E<ge> 4.2."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:39
msgid "B<-o rhv> B<-os> esd:/path"
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:41
msgid "B<-o rhv> B<-os> /path"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:43
msgid "Full description: L</OUTPUT TO EXPORT STORAGE DOMAIN>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:45
msgid ""
"This is the old method for uploading to oVirt/RHV via the Export Storage "
"Domain (ESD).  The ESD can either be accessed over NFS (using the I<-os esd:/"
"path> form) or if you have already NFS-mounted it somewhere specify the path "
"to the mountpoint as I<-os /path>."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:51
msgid ""
"The Export Storage Domain was deprecated in oVirt 4, and so we expect that "
"this method will stop working at some point in the future."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:54
msgid "B<-o vdsm>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:56
msgid ""
"This is the old method used internally by the RHV-M user interface.  It is "
"never intended to be used directly by end users."
msgstr ""

#. type: =head1
#: docs/virt-v2v-output-rhv.pod:61
msgid "OUTPUT TO RHV"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:63
msgid ""
"This new method to upload guests to oVirt or RHV directly via the REST API "
"requires oVirt/RHV E<ge> 4.2."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:66
msgid ""
"You need to specify I<-o rhv-upload> as well as the following extra "
"parameters:"
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:71
msgid "I<-oc> C<https://ovirt-engine.example.com/ovirt-engine/api>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:73
msgid ""
"The URL of the REST API which is usually the server name with C</ovirt-"
"engine/api> appended, but might be different if you installed oVirt Engine "
"on a different path."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:77
msgid ""
"You can optionally add a username and port number to the URL.  If the "
"username is not specified then virt-v2v defaults to using C<admin@internal> "
"which is the typical superuser account for oVirt instances."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:82
msgid "I<-of raw>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:84
msgid ""
"Currently you must use I<-of raw> and you cannot use I<-oa preallocated>."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:86
msgid "These restrictions will be loosened in a future version."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:88
msgid "I<-op> F<password-file>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:90
msgid ""
"A file containing a password to be used when connecting to the oVirt "
"engine.  Note the file should contain the whole password, B<without any "
"trailing newline>, and for security the file should have mode C<0600> so "
"that others cannot read it."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:95
msgid "I<-os> C<ovirt-data>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:97
msgid "The storage domain."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:99
msgid "I<-oo rhv-cafile=>F<ca.pem>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:101
msgid ""
"The F<ca.pem> file (Certificate Authority), copied from F</etc/pki/ovirt-"
"engine/ca.pem> on the oVirt engine."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:104
msgid ""
"If I<-oo rhv-verifypeer> is enabled then this option can be used to control "
"which CA is used to verify the client’s identity.  If this option is not "
"used then the system’s global trust store is used."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:109
msgid "I<-oo rhv-cluster=>C<CLUSTERNAME>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:111
msgid "Set the RHV Cluster Name.  If not given it uses C<Default>."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:113
msgid "I<-oo rhv-disk-uuid=>C<UUID>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:115
msgid ""
"This option can used to manually specify UUIDs for the disks when creating "
"the virtual machine.  If not specified, the oVirt engine will generate "
"random UUIDs for the disks.  Please note that:"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:123
msgid ""
"you B<must> pass as many I<-oo rhv-disk-uuid=UUID> options as the amount of "
"disks in the guest"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:128
msgid ""
"the specified UUIDs are used as they are, without checking whether they are "
"already used by other disks"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:133
msgid ""
"This option is considered advanced, and to be used mostly in combination "
"with I<--no-copy>."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:136
msgid "I<-oo rhv-direct>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:138
msgid ""
"If this option is given then virt-v2v will attempt to directly upload the "
"disk to the oVirt node, otherwise it will proxy the upload through the oVirt "
"engine.  Direct upload requires that you have network access to the oVirt "
"nodes.  Non-direct upload is slightly slower but should work in all "
"situations."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:144
msgid "I<-oo rhv-verifypeer>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:146
msgid ""
"Verify the oVirt/RHV server’s identity by checking the server‘s certificate "
"against the Certificate Authority."
msgstr ""

#. type: =head1
#: docs/virt-v2v-output-rhv.pod:151
msgid "OUTPUT TO EXPORT STORAGE DOMAIN"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:153
msgid ""
"This section only applies to the I<-o rhv> output mode.  If you use virt-v2v "
"from the RHV-M user interface, then behind the scenes the import is managed "
"by VDSM using the I<-o vdsm> output mode (which end users should not try to "
"use directly)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:158
msgid ""
"You have to specify I<-o rhv> and an I<-os> option that points to the RHV-M "
"Export Storage Domain.  You can either specify the NFS server and "
"mountpoint, eg. S<C<-os rhv-storage:/rhv/export>>, or you can mount that "
"first and point to the directory where it is mounted, eg. S<C<-os /tmp/"
"mnt>>.  Be careful not to point to the Data Storage Domain by accident as "
"that will not work."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:165
msgid ""
"On successful completion virt-v2v will have written the new guest to the "
"Export Storage Domain, but it will not yet be ready to run.  It must be "
"imported into RHV using the UI before it can be used."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:169
msgid ""
"In RHV E<ge> 2.2 this is done from the Storage tab.  Select the export "
"domain the guest was written to.  A pane will appear underneath the storage "
"domain list displaying several tabs, one of which is \"VM Import\".  The "
"converted guest will be listed here.  Select the appropriate guest an click "
"\"Import\".  See the RHV documentation for additional details."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:176
msgid ""
"If you export several guests, then you can import them all at the same time "
"through the UI."
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-rhv.pod:179
msgid "Testing RHV conversions"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:181
msgid ""
"If you do not have an oVirt or RHV instance to test against, then you can "
"test conversions by creating a directory structure which looks enough like a "
"RHV-M Export Storage Domain to trick virt-v2v:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v-output-rhv.pod:185
#, no-wrap
msgid ""
" uuid=`uuidgen`\n"
" mkdir /tmp/rhv\n"
" mkdir /tmp/rhv/$uuid\n"
" mkdir /tmp/rhv/$uuid/images\n"
" mkdir /tmp/rhv/$uuid/master\n"
" mkdir /tmp/rhv/$uuid/master/vms\n"
" touch /tmp/rhv/$uuid/dom_md\n"
" virt-v2v [...] -o rhv -os /tmp/rhv\n"
"\n"
msgstr ""

#. type: =head2
#: docs/virt-v2v-output-rhv.pod:194
msgid "Debugging RHV-M import failures"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:196
msgid ""
"When you export to the RHV-M Export Storage Domain, and then import that "
"guest through the RHV-M UI, you may encounter an import failure.  Diagnosing "
"these failures is infuriatingly difficult as the UI generally hides the true "
"reason for the failure."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:201
msgid "There are several log files of interest:"
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:205
msgid "F</var/log/vdsm/import/>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:207
msgid ""
"In oVirt E<ge> 4.1.0, VDSM preserves the virt-v2v log file for 30 days in "
"this directory."
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:210
msgid ""
"This directory is found on the host which performed the conversion.  The "
"host can be selected in the import dialog, or can be found under the "
"C<Events> tab in oVirt administration."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:214
msgid "F</var/log/vdsm/vdsm.log>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:216
msgid ""
"As above, this file is present on the host which performed the conversion.  "
"It contains detailed error messages from low-level operations executed by "
"VDSM, and is useful if the error was not caused by virt-v2v, but by VDSM."
msgstr ""

#. type: =item
#: docs/virt-v2v-output-rhv.pod:221
msgid "F</var/log/ovirt-engine/engine.log>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-output-rhv.pod:223
msgid ""
"This log file is stored on the RHV-M server.  It contains more detail for "
"any errors caused by the oVirt GUI."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:3
msgid "virt-v2v-release-notes - virt-v2v Release Notes"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:7
msgid ""
"These are the release notes for S<B<virt-v2v 1.42>>, released on S<B<16th "
"April 2020>>."
msgstr ""

#. type: =head2
#: docs/virt-v2v-release-notes-1.42.pod:10
msgid "New features"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:12
msgid ""
"This is the first release where virt-v2v lives in a separate repository from "
"libguestfs.  The two projects are now broadly decoupled from one another."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:16
msgid ""
"Add a new I<-o json> output mode.  Primarily this is used to do conversions "
"to KubeVirt (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:19
msgid ""
"Use new libvirt C<E<lt>firmwareE<gt>> feature to get the source guest "
"firmware (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:22
msgid ""
"virt-v2v I<-o rhv-upload> new option I<-oo rhv-disk-uuid> allows disk UUIDs "
"to be specified.  Also I<-oo rhv-cafile> is now optional (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:26
msgid ""
"Conversions over ssh now use L<nbdkit-ssh-plugin(1)> instead of the QEMU ssh "
"driver.  Similarly L<nbdkit-curl-plugin(1)> is used instead of the QEMU curl "
"driver.  This allowed us to add more flexible features such as password "
"authentication, bandwidth throttling (new I<--bandwidth> option), readahead, "
"and automatic retry on network failures."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:33
msgid ""
"For Windows guests, QEMU Guest Agent MSI may now be installed (Tomáš "
"Golembiovský)."
msgstr ""

#. type: =head2
#: docs/virt-v2v-release-notes-1.42.pod:36
msgid "Other fixes"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:38
msgid "In I<-o libvirt> mode, support Windows Server 2019 (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:40
msgid "Fix Ubuntu Server conversions (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:42
msgid ""
"Fix installation of qemu-ga by only installing arch-specific files in the "
"guest (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:45
msgid ""
"Delay installation of qemu-ga until after virtio-win drivers have been "
"installed and rebooted (Tomáš Golembiovský)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:48
msgid ""
"Save the log from running RHEV-APT installer to allow debugging (Tomáš "
"Golembiovský)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:51
msgid ""
"Check RHV cluster exists before trying to convert when using I<-o rhv-"
"upload> mode.  Also allows us to detect and reject various other conditions "
"early.  (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:55
msgid "Label nbdkit sockets correctly for SELinux/sVirt (Martin Kletzander)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:58
msgid "You can use a block device as the Windows virtio driver ISO."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:60
msgid ""
"Multiple fixes to RHV uploads: Set C<DISKTYPE> field correctly when "
"converting to RHV and VDSM.  Properly clean up on failure.  Display disk ID "
"in error messages, and log script parameters, to help with debugging.  "
"Multiple code cleanups.  (Nir Soffer)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:65
msgid "Support conversions to RHV in qcow2 format (Nir Soffer)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:67
msgid ""
"Fix detection of disk status and failures after conversion to RHV (Daniel "
"Erez)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:70
msgid ""
"Cancel disk transfer and remove uploaded disks on failure of conversion to "
"RHV (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:73
msgid ""
"Images containing small holes (sparse regions) should now convert faster "
"(Nir Soffer)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:76
msgid ""
"The L<nbdkit-cacheextents-filter(1)> is used to accelerate sources which "
"have slow sparseness detection, primarily this means VMware sources using "
"VDDK (Martin Kletzander)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:80
msgid ""
"Require at least 100 free inodes on each guest filesystem before doing "
"conversion, since lack of inodes could cause conversion failures (Pino "
"Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:84
msgid "Fix osinfo output for CentOS 8 conversions (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:86
msgid ""
"VMware tools are now removed from Windows guests automatically in most cases "
"(Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:89
msgid ""
"I<-i ova> mode no longer reads the whole input OVF into memory, but parses "
"it off disk (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:92
msgid ""
"When converting to OpenStack, we now wait up to 5 minutes (instead of 60 "
"seconds) for the Cinder volume to get attached to the conversion appliance, "
"since in some cases it was taking a long time."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:96
msgid ""
"If using a new enough version of nbdkit, virt-v2v logs should be much less "
"verbose."
msgstr ""

#. type: =head2
#: docs/virt-v2v-release-notes-1.42.pod:99
msgid "Security"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:101
msgid "There were no security-related bugs found in this release."
msgstr ""

#. type: =head2
#: docs/virt-v2v-release-notes-1.42.pod:103
msgid "Build changes"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:105
msgid ""
"Libguestfs E<ge> 1.40 is required, it is now packaged and distributed "
"separately from virt-v2v.  For developers you can use a locally built (and "
"not installed) copy of libguestfs."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:109
msgid ""
"Libvirt is now required to build virt-v2v.  Additionally you will require "
"the OCaml bindings to libvirt (L<https://libvirt.org/ocaml/>), although a "
"copy is bundled for now (it will be removed later).  (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:114
msgid ""
"Libosinfo is required to build virt-v2v.  It is used to query information "
"about guest drivers.  (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:117
msgid ""
"Fixes for OCaml E<ge> 4.10.  The minimum version of OCaml required is still "
"4.01, but may be increased to 4.05 in future."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:120
msgid "Test conversions of Debian 9 and Fedora 29 (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:122
msgid "Various fixes to srcdir != builddir (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:124
msgid "Remove gnulib modules not used by virt-v2v (Pino Toscano)."
msgstr ""

#. type: =head2
#: docs/virt-v2v-release-notes-1.42.pod:126
msgid "Internals"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:128
msgid ""
"When converting SUSE guests, always try to install QXL driver (Mike Latimer)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:131
msgid ""
"Two new modules (Nbdkit and Nbdkit_sources) factor out generic nbdkit "
"operations and nbdkit source operations respectively."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:134
msgid "Format Python code to comply with PEP 8 / pycodestyle (Pino Toscano)."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:136
msgid ""
"Tests have been moved to the F<tests/> subdirectory, and manuals to the "
"F<docs/> subdirectory."
msgstr ""

#. type: =head2
#: docs/virt-v2v-release-notes-1.42.pod:139
msgid "Bugs fixed"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:143
msgid "https_proxy= ./bugs-in-changelog.sh v1.40.0.."
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:149
msgid "L<https://bugzilla.redhat.com/1791802>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:151
msgid "virt-v2v does not install qemu-ga on EL8 guest"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:153
msgid "L<https://bugzilla.redhat.com/1791257>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:155
msgid ""
"update-crypto-policies command example is incorrect in virt-v2v-input-xen"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:157
msgid "L<https://bugzilla.redhat.com/1791240>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:159
msgid "[RFE] Make the rhv-cafile optional"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:161
msgid "L<https://bugzilla.redhat.com/1785528>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:163
msgid ""
"Should remove info about \"Remove VMware tools from Windows guests\" in virt-"
"v2v-input-vmware man page"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:165
msgid "L<https://bugzilla.redhat.com/1746699>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:167
msgid ""
"Can't import guest from export domain to data domain on rhv4.3 due to error "
"\"Invalid parameter: 'DiskType=1'\""
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:169
msgid "L<https://bugzilla.redhat.com/1733168>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:171
msgid "virt-v2v: Use scp -T in -i vmx -it ssh mode"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:173
msgid "L<https://bugzilla.redhat.com/1723305>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:175
msgid ""
"Delete info \"export PATH=/path/to/nbdkit-1.1.x:$PATH\" in virt-v2v-input-"
"vmware manual page"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:177
msgid "L<https://bugzilla.redhat.com/1691659>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:179
msgid ""
"virt-v2v should show a message when qemu-guest-agent is installed in guest "
"successfully during conversion"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:181
msgid "L<https://bugzilla.redhat.com/1690574>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:183
msgid ""
"virt-v2v fails to import a guest while cannot find `file_architecture` for a "
"file"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:185
msgid "L<https://bugzilla.redhat.com/1680361>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:187
msgid ""
"[v2v][RHV][Scale] v2v Migration to RHV failed on timed out waiting for "
"transfer to finalize"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:189
msgid "L<https://bugzilla.redhat.com/1626503>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:191
msgid "Unable to maintain static IP address configuration post VM migration"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:193
msgid "L<https://bugzilla.redhat.com/1612653>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:195
msgid ""
"Guest has no disk after rhv-upload converting if target data domain has "
"similar name with other data domain on rhv4.2"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:197
msgid "L<https://bugzilla.redhat.com/1605242>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:199
msgid "Update nbdkit info for vddk in v2v man page"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:201
msgid "L<https://bugzilla.redhat.com/1584678>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:203
msgid ""
"On W2K12r2 rhev-apt does not run non-interactively, causing race when "
"starting rhev-apt service from the command line"
msgstr ""

#. type: =item
#: docs/virt-v2v-release-notes-1.42.pod:205
msgid "L<https://bugzilla.redhat.com/1518539>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:207
msgid "Macvtap network will be lost during v2v conversion"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:215
msgid ""
"Previous release notes covering virt-v2v can be found in the libguestfs "
"project: L<guestfs-release-notes-1.40(1)>."
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:220
msgid "Daniel Erez"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:224 docs/virt-v2v.pod:1690
msgid "Tomáš Golembiovský"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:226
msgid "Martin Kletzander"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:228 docs/virt-v2v.pod:1696
msgid "Mike Latimer"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:230 docs/virt-v2v.pod:1698
msgid "Nir Soffer"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:232 docs/virt-v2v.pod:1702
msgid "Pino Toscano"
msgstr ""

#. type: textblock
#: docs/virt-v2v-release-notes-1.42.pod:234
msgid "Ming Xie"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:3
msgid ""
"virt-v2v-support - Supported hypervisors, virtualization management systems "
"and guests in virt-v2v"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:8
msgid ""
"This page documents which foreign hypervisors, virtualization management "
"systems and guest types that L<virt-v2v(1)> can support."
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:11
msgid ""
"Note this page applies to upstream virt-v2v from L<http://libguestfs.org> "
"and in downstream distributions of virt-v2v sometimes features are "
"intentionally removed, or are present but not supported."
msgstr ""

#. type: =head2
#: docs/virt-v2v-support.pod:16
msgid "Hypervisors (Input)"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:20
msgid "VMware ESXi"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:22
msgid "Must be managed by VMware vCenter E<ge> 5.0 unless VDDK is available."
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:24
msgid "OVA exported from VMware"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:26
msgid "OVAs from other hypervisors will not work."
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:28
msgid "VMX from VMware"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:30
msgid "VMX files generated by other hypervisors will not work."
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:32
msgid "RHEL 5 Xen"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:34
msgid "SUSE Xen"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:36
msgid "Citrix Xen"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:38
msgid "Citrix Xen has not been recently tested."
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:40
msgid "Hyper-V"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:42
msgid ""
"Not recently tested.  Requires that you export the disk or use L<virt-"
"p2v(1)> on Hyper-V."
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:45
msgid "Direct from disk images"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:47
msgid ""
"Only disk images exported from supported hypervisors, and using container "
"formats supported by qemu."
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:50
msgid "Physical machines"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:52
msgid "Using the L<virt-p2v(1)> tool."
msgstr ""

#. type: =head2
#: docs/virt-v2v-support.pod:56
msgid "Hypervisors (Output)"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:58
msgid "QEMU and KVM only."
msgstr ""

#. type: =head2
#: docs/virt-v2v-support.pod:60
msgid "Virtualization management systems (Output)"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:64
msgid "OpenStack"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:66
msgid "Red Hat Virtualization (RHV) 4.1 and up"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:68
msgid "Local libvirt"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:70
msgid "And hence L<virsh(1)>, L<virt-manager(1)>, and similar tools."
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:72
msgid "Local disk"
msgstr ""

#. type: =head2
#: docs/virt-v2v-support.pod:76
msgid "Guests"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:80
msgid "Red Hat Enterprise Linux 3, 4, 5, 6, 7"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:82
msgid "CentOS 3, 4, 5, 6, 7"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:84
msgid "Scientific Linux 3, 4, 5, 6, 7"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:86
msgid "Oracle Linux"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:88
msgid "Fedora"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:90
msgid "SLES 10 and up"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:92
msgid "OpenSUSE 10 and up"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:94
msgid "Debian 6 and up"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:96
msgid "Ubuntu 10.04, 12.04, 14.04, 16.04, and up"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:98
msgid "Windows XP to Windows 10 / Windows Server 2016"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:100
msgid ""
"We use Windows internal version numbers, see L<https://en.wikipedia.org/wiki/"
"List_of_Microsoft_Windows_versions>"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:103
msgid "Currently NT 5.2 to NT 6.3 are supported."
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:105
msgid ""
"See L</WINDOWS> below for additional notes on converting Windows guests."
msgstr ""

#. type: =head2
#: docs/virt-v2v-support.pod:110
msgid "Guest firmware"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:112
msgid "BIOS is supported for all guest types and hypervisors."
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:114
msgid ""
"VMware allows you to present UEFI firmware to guests (instead of the "
"ordinary PC BIOS).  Virt-v2v can convert these guests, but requires that "
"UEFI is supported by the target hypervisor."
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:118
msgid ""
"Currently KVM supports OVMF, an open source UEFI firmware, and can run these "
"guests."
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:121
msgid ""
"Since OVMF support was only recently added to KVM (in 2014/2015), not all "
"target environments support UEFI guests yet:"
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:126
msgid "UEFI on libvirt, qemu"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:128
msgid ""
"Supported.  Virt-v2v will generate the correct libvirt XML (metadata)  "
"automatically, but note that the same version of OVMF must be installed on "
"the conversion host as is installed on the target hypervisor, else you will "
"have to adjust paths in the metadata."
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:133
msgid "UEFI on OpenStack"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:135
msgid "Not supported."
msgstr ""

#. type: =item
#: docs/virt-v2v-support.pod:137
msgid "UEFI on oVirt or RHV"
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:139
msgid "Supported since oVirt/RHV E<ge> 4.2 and virt-v2v E<ge> 1.39.12."
msgstr ""

#. type: textblock
#: docs/virt-v2v-support.pod:145
msgid "L<virt-v2v(1)>, L<http://libguestfs.org>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:3
msgid "virt-v2v - Convert a guest to use KVM"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:7
#, no-wrap
msgid ""
" virt-v2v [-i mode] [other -i* options]\n"
"          [-o mode] [other -o* options]\n"
"          [guest|filename]\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:11
#, no-wrap
msgid ""
" virt-v2v --in-place\n"
"          [-i mode] [other -i* options]\n"
"          [guest|filename]\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:17
msgid ""
"Virt-v2v converts a single guest from a foreign hypervisor to run on KVM.  "
"It can read Linux and Windows guests running on VMware, Xen, Hyper-V and "
"some other hypervisors, and convert them to KVM managed by libvirt, "
"OpenStack, oVirt, Red Hat Virtualisation (RHV) or several other targets.  It "
"can modify the guest to make it bootable on KVM and install virtio drivers "
"so it will run quickly."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:24
msgid ""
"There is also a companion front-end called L<virt-p2v(1)> which comes as an "
"ISO, CD or PXE image that can be booted on physical machines to virtualize "
"those machines (physical to virtual, or p2v)."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:28
msgid "Input and Output"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:30
msgid ""
"You normally run virt-v2v with several I<-i*> options controlling the input "
"mode and also several I<-o*> options controlling the output mode.  In this "
"sense, \"input\" refers to the source foreign hypervisor such as VMware, and "
"\"output\" refers to the target KVM-based management system such as oVirt or "
"OpenStack."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:36
msgid ""
"The input and output sides of virt-v2v are separate and unrelated.  Virt-v2v "
"can read from any input and write to any output.  Therefore these sides of "
"virt-v2v are documented separately in this manual."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:40
msgid ""
"Virt-v2v normally copies from the input to the output, called \"copying mode"
"\".  In this case the source guest is always left unchanged.  In-place "
"conversion (I<--in-place>) only uses the I<-i*> options and modifies the "
"source guest in-place.  (See L</In-place conversion> below.)"
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:46
msgid "Other virt-v2v topics"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:48
msgid ""
"L<virt-v2v-support(1)> — Supported hypervisors, virtualization management "
"systems, guests."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:51
msgid "L<virt-v2v-input-vmware(1)> — Input from VMware."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:53
msgid "L<virt-v2v-input-xen(1)> — Input from Xen."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:55
msgid "L<virt-v2v-output-local(1)> — Output to local files or local libvirt."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:57
msgid "L<virt-v2v-output-rhv(1)> — Output to oVirt or RHV."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:59
msgid "L<virt-v2v-output-openstack(1)> — Output to OpenStack."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:61
msgid "L<virt-v2v-release-notes-1.42(1)> — Release notes for this release."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:63
msgid ""
"L<virt-v2v-copy-to-local(1)> — Deprecated tool to handle Xen guests using "
"host block device storage."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:68
msgid "Convert from VMware vCenter server to local libvirt"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:70
msgid ""
"You have a VMware vCenter server called C<vcenter.example.com>, a datacenter "
"called C<Datacenter>, and an ESXi hypervisor called C<esxi>.  You want to "
"convert a guest called C<vmware_guest> to run locally under libvirt."
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:75
#, no-wrap
msgid ""
" virt-v2v -ic vpx://vcenter.example.com/Datacenter/esxi vmware_guest\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:77
msgid ""
"In this case you will most likely have to run virt-v2v as C<root>, since it "
"needs to talk to the system libvirt daemon and copy the guest disks to F</"
"var/lib/libvirt/images>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:81
msgid "For more information see L<virt-v2v-input-vmware(1)>."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:83
msgid "Convert from VMware to RHV/oVirt"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:85
msgid ""
"This is the same as the previous example, except you want to send the guest "
"to a RHV Data Domain using the RHV REST API.  Guest network interface(s) are "
"connected to the target network called C<ovirtmgmt>."
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:89
#, no-wrap
msgid ""
" virt-v2v -ic vpx://vcenter.example.com/Datacenter/esxi vmware_guest \\\n"
"   -o rhv-upload -oc https://ovirt-engine.example.com/ovirt-engine/api \\\n"
"   -os ovirt-data -op /tmp/ovirt-admin-password -of raw \\\n"
"   -oo rhv-cafile=/tmp/ca.pem -oo rhv-direct \\\n"
"   --bridge ovirtmgmt\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:95
msgid "In this case the host running virt-v2v acts as a B<conversion server>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:97
msgid "For more information see L<virt-v2v-output-rhv(1)>."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:99
msgid "Convert from ESXi hypervisor over SSH to local libvirt"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:101
msgid ""
"You have an ESXi hypervisor called C<esxi.example.com> with SSH access "
"enabled.  You want to convert from VMFS storage on that server to a local "
"file."
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:105
#, no-wrap
msgid ""
" virt-v2v \\\n"
"   -i vmx -it ssh \\\n"
"   \"ssh://root@esxi.example.com/vmfs/volumes/datastore1/guest/guest.vmx\" \\\n"
"   -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:110
msgid ""
"The guest must not be running.  Virt-v2v would I<not> need to be run as root "
"in this case."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:113
msgid ""
"For more information about converting from VMX files see L<virt-v2v-input-"
"vmware(1)>."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:116
msgid "Convert disk image to OpenStack"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:118
msgid ""
"Given a disk image from another hypervisor that you want to convert to run "
"on OpenStack (only KVM-based OpenStack is supported), you can run virt-v2v "
"inside an OpenStack VM (called C<v2v-vm> below), and do:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:122
#, no-wrap
msgid ""
" virt-v2v -i disk disk.img -o openstack -oo server-id=v2v-vm\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:124
msgid "See L<virt-v2v-output-openstack(1)>."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:126
msgid "Convert disk image to disk image"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:128
msgid ""
"Given a disk image from another hypervisor that you want to convert to run "
"on KVM, you have two options.  The simplest way is to try:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:131
#, no-wrap
msgid ""
" virt-v2v -i disk disk.img -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:133
msgid ""
"where virt-v2v guesses everything about the input F<disk.img> and (in this "
"case) writes the converted result to F</var/tmp>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:136
msgid ""
"A more complex method is to write some L<libvirt XML|http://libvirt.org/"
"formatdomain.html> describing the input guest (if you can get the source "
"hypervisor to provide you with libvirt XML, then so much the better).  You "
"can then do:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:141
#, no-wrap
msgid ""
" virt-v2v -i libvirtxml guest-domain.xml -o local -os /var/tmp\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:143
msgid ""
"Since F<guest-domain.xml> contains the path(s) to the guest disk image(s) "
"you do not need to specify the name of the disk image on the command line."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:147
msgid ""
"To convert a local disk image and immediately boot it in local qemu, do:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:150
#, no-wrap
msgid ""
" virt-v2v -i disk disk.img -o qemu -os /var/tmp --qemu-boot\n"
"\n"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:160
msgid "B<--bandwidth> bps"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:162
msgid "B<--bandwidth-file> filename"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:164
msgid ""
"Some input methods are able to limit the network bandwidth they will use "
"statically or dynamically.  In the first variant this sets the bandwidth "
"limit statically in bits per second.  Formats like C<10M> may be used "
"(meaning 10 megabits per second)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:169
msgid ""
"In the second variant the bandwidth is limited dynamically from the content "
"of the file (also in bits per second, in the same formats supported by the "
"first variant).  You may use both parameters together, meaning: first limit "
"to a static rate, then you can create the file while virt-v2v is running to "
"adjust the rate dynamically."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:175
msgid "This is only supported for:"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:181
msgid "L<input from Xen|virt-v2v-input-xen(1)>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:185
msgid ""
"L<input from VMware VMX|virt-v2v-input-vmware(1)/INPUT FROM VMWARE VMX> when "
"using the SSH transport method"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:190
msgid "L<input from VDDK|virt-v2v-input-vmware(1)/INPUT FROM VDDK>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:194
msgid "I<-i libvirtxml> when using HTTP or HTTPS disks"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:198
msgid ""
"L<input from VMware vCenter server|virt-v2v-input-vmware(1)/INPUT FROM "
"VMWARE VCENTER SERVER>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:202
msgid "The options are silently ignored for other input methods."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:204
msgid "B<-b> ..."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:206
msgid "B<--bridge> ..."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:208
msgid "See I<--network> below."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:210
msgid "B<--colors>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:212
msgid "B<--colours>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:214
msgid ""
"Use ANSI colour sequences to colourize messages.  This is the default when "
"the output is a tty.  If the output of the program is redirected to a file, "
"ANSI colour sequences are disabled unless you use this option."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:219
msgid "B<--compressed>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:221
msgid ""
"Write a compressed output file.  This is only allowed if the output format "
"is qcow2 (see I<-of> below), and is equivalent to the I<-c> option of L<qemu-"
"img(1)>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:225
msgid "B<--debug-overlays>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:227
msgid ""
"Save the overlay file(s) created during conversion.  This option is only "
"used for debugging virt-v2v and may be removed in a future version."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:231
msgid "B<--echo-keys>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:233
msgid ""
"When prompting for keys and passphrases, virt-v2v normally turns echoing off "
"so you cannot see what you are typing.  If you are not worried about Tempest "
"attacks and there is no one else in the room you can specify this flag to "
"see what you are typing."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:238
msgid ""
"Note this options only applies to keys and passphrases for encrypted devices "
"and partitions, not for passwords used to connect to remote servers."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:242
msgid "B<-i> B<disk>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:244
msgid "Set the input method to I<disk>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:246
msgid ""
"In this mode you can read a virtual machine disk image with no metadata.  "
"virt-v2v tries to guess the best default metadata.  This is usually adequate "
"but you can get finer control (eg. of memory and vCPUs) by using I<-i "
"libvirtxml> instead.  Only guests that use a single disk can be imported "
"this way."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:252
msgid "B<-i> B<libvirt>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:254
msgid "Set the input method to I<libvirt>.  This is the default."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:256
msgid ""
"In this mode you have to specify a libvirt guest name or UUID on the command "
"line.  You may also specify a libvirt connection URI (see I<-ic>)."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:260
msgid "B<-i> B<libvirtxml>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:262
msgid "Set the input method to I<libvirtxml>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:264
msgid ""
"In this mode you have to pass a libvirt XML file on the command line.  This "
"file is read in order to get metadata about the source guest (such as its "
"name, amount of memory), and also to locate the input disks.  See L</Minimal "
"XML for -i libvirtxml option> below."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:269
msgid "B<-i> B<local>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:271
msgid "This is the same as I<-i disk>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:273
msgid "B<-i> B<ova>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:275
msgid "Set the input method to I<ova>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:277
msgid ""
"In this mode you can read a VMware ova file.  Virt-v2v will read the ova "
"manifest file and check the vmdk volumes for validity (checksums)  as well "
"as analyzing the ovf file, and then convert the guest.  See L<virt-v2v-input-"
"vmware(1)>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:282
msgid "B<-i> B<vmx>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:284
msgid "Set the input method to I<vmx>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:286
msgid ""
"In this mode you can read a VMware vmx file directly or over SSH.  This is "
"useful when VMware VMs are stored on an NFS server which you can mount "
"directly, or where you have access by SSH to an ESXi hypervisor.  See L<virt-"
"v2v-input-vmware(1)>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:293
msgid ""
"Specify a libvirt connection URI to use when reading the guest.  This is "
"only used when S<I<-i libvirt>>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:296
msgid ""
"Only local libvirt connections, VMware vCenter connections, or RHEL 5 Xen "
"remote connections can be used.  Other remote libvirt connections will not "
"work in general."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:300
msgid "See also L<virt-v2v-input-vmware(1)>, L<virt-v2v-input-xen(1)>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:303
msgid "B<-if> format"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:305
msgid ""
"For I<-i disk> only, this specifies the format of the input disk image.  For "
"other input methods you should specify the input format in the metadata."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:309
msgid "B<--in-place>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:311
msgid ""
"Do not create an output virtual machine in the target hypervisor.  Instead, "
"adjust the guest OS in the source VM to run in the input hypervisor."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:315
msgid ""
"This mode is meant for integration with other toolsets, which take the "
"responsibility of converting the VM configuration, providing for rollback in "
"case of errors, transforming the storage, etc."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:319
msgid "See L</In-place conversion> below."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:321
msgid "Conflicts with all I<-o *> options."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:323
msgid "B<-io> OPTION=VALUE"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:325
msgid ""
"Set input option(s) related to the current input mode or transport.  To "
"display short help on what options are available you can use:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:328
#, no-wrap
msgid ""
" virt-v2v -it vddk -io \"?\"\n"
"\n"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:330
msgid "B<-io vddk-libdir=>LIBDIR"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:332
msgid ""
"Set the VDDK library directory.  This directory should I<contain> "
"subdirectories called F<include>, F<lib64> etc., but do not include F<lib64> "
"actually in the parameter."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:336
msgid ""
"In most cases this parameter is required when using the I<-it vddk> (VDDK) "
"transport.  See L<virt-v2v-input-vmware(1)> for details."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:339
msgid "B<-io vddk-thumbprint=>xx:xx:xx:..."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:341
msgid "Set the thumbprint of the remote VMware server."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:343
msgid ""
"This parameter is required when using the I<-it vddk> (VDDK) transport.  See "
"L<virt-v2v-input-vmware(1)> for details."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:346
msgid "B<-io vddk-config=>FILENAME"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:348
msgid "B<-io vddk-cookie=>COOKIE"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:350
msgid "B<-io vddk-nfchostport=>PORT"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:352
msgid "B<-io vddk-port=>PORT"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:354
msgid "B<-io vddk-snapshot=>SNAPSHOT-MOREF"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:356
msgid "B<-io vddk-transports=>MODE:MODE:..."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:358
msgid ""
"When using VDDK mode, these options are passed unmodified to the "
"L<nbdkit(1)> VDDK plugin.  Please refer to L<nbdkit-vddk-plugin(1)>.  Do not "
"use these options unless you know what you are doing.  These are all "
"optional."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:363
msgid "B<-ip> filename"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:365
msgid ""
"Supply a file containing a password to be used when connecting to the target "
"hypervisor.  If this is omitted then the input hypervisor may ask for the "
"password interactively.  Note the file should contain the whole password, "
"B<without any trailing newline>, and for security the file should have mode "
"C<0600> so that others cannot read it."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:371
msgid "B<-it> B<ssh>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:373
msgid ""
"When using I<-i vmx>, this enables the ssh transport.  See L<virt-v2v-input-"
"vmware(1)>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:376
msgid "B<-it> B<vddk>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:378
msgid ""
"Use VMware VDDK as a transport to copy the input disks.  See L<virt-v2v-"
"input-vmware(1)>.  If you use this parameter then you may need to use other "
"I<-io vddk*> options to specify how to connect through VDDK."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:383
msgid "__INCLUDE:key-option.pod__"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:385
msgid "__INCLUDE:keys-from-stdin-option.pod__"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:387
msgid ""
"Note I<--keys-from-stdin> only applies to keys and passphrases for encrypted "
"devices and partitions, not for passwords used to connect to remote servers."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:391
msgid "B<--mac> aa:bb:cc:dd:ee:ffB<:network:>out"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:393
msgid "B<--mac> aa:bb:cc:dd:ee:ffB<:bridge:>out"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:395
msgid "Map source NIC MAC address to a network or bridge."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:397 docs/virt-v2v.pod:445
msgid "See L</Networks and bridges> below."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:399
msgid "B<--mac> aa:bb:cc:dd:ee:ffB<:ip:>ipaddr[,gw[,len[,ns,ns,...]]]"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:401
msgid ""
"Force a particular interface (controlled by its MAC address) to have a "
"static IP address after boot."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:404
msgid ""
"The fields in the parameter are: C<ipaddr> is the IP address.  C<gw> is the "
"optional gateway IP address.  C<len> is the subnet mask length (an "
"integer).  The final parameters are zero or more nameserver IP addresses."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:409
msgid "This option can be supplied zero or more times."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:411
msgid ""
"You only need to use this option for certain broken guests such as Windows "
"which are unable to preserve MAC to static IP address mappings "
"automatically.  You don't need to use it if Windows is using DHCP.  It is "
"currently ignored for Linux guests since they do not have this problem."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:417
msgid "B<--machine-readable>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:419
msgid "B<--machine-readable>=format"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:421
msgid ""
"This option is used to make the output more machine friendly when being "
"parsed by other programs.  See L</Machine readable output> below."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:425
msgid "B<-n> in:out"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:427
msgid "B<-n> out"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:429
msgid "B<--network> in:out"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:431
msgid "B<--network> out"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:433
msgid "B<-b> in:out"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:435
msgid "B<-b> out"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:437
msgid "B<--bridge> in:out"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:439
msgid "B<--bridge> out"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:441
msgid ""
"Map network (or bridge) called C<in> to network (or bridge) called C<out>.  "
"If no C<in:> prefix is given, all other networks (or bridges)  are mapped to "
"C<out>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:447
msgid "B<--no-copy>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:449
msgid ""
"Don’t copy the disks.  Instead, conversion is performed (and thrown away), "
"and metadata is written, but no disks are created.  See also discussion of "
"S<I<-o null>> below."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:453
msgid ""
"This is useful in two cases: Either you want to test if conversion is likely "
"to succeed, without the long copying process.  Or you are only interested in "
"looking at the metadata."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:457
msgid ""
"This option is not compatible with I<-o libvirt> since it would create a "
"faulty guest (one with no disks)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:460
msgid "This option is not compatible with I<-o glance> for technical reasons."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:462
msgid "B<-o> B<disk>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:464
msgid "This is the same as I<-o local>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:466
msgid "B<-o> B<glance>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:468
msgid ""
"This is a legacy option.  You should probably use I<-o openstack> instead."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:471
msgid ""
"Set the output method to OpenStack Glance.  In this mode the converted guest "
"is uploaded to Glance.  See L<virt-v2v-output-openstack(1)>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:474
msgid "B<-o> B<json>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:476
msgid "Set the output method to I<json>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:478
msgid ""
"In this mode, the converted guest is written to a local directory specified "
"by I<-os /dir> (the directory must exist), with a JSON file containing the "
"majority of the metadata that virt-v2v gathered during the conversion."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:483 docs/virt-v2v.pod:492
msgid "See L<virt-v2v-output-local(1)>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:485
msgid "B<-o> B<libvirt>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:487
msgid "Set the output method to I<libvirt>.  This is the default."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:489
msgid ""
"In this mode, the converted guest is created as a libvirt guest.  You may "
"also specify a libvirt connection URI (see I<-oc>)."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:494
msgid "B<-o> B<local>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:496
msgid "Set the output method to I<local>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:498
msgid ""
"In this mode, the converted guest is written to a local directory specified "
"by I<-os /dir> (the directory must exist).  The converted guest’s disks are "
"written as:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:502
#, no-wrap
msgid ""
" /dir/name-sda\n"
" /dir/name-sdb\n"
" [etc]\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:506
msgid "and a libvirt XML file is created containing guest metadata:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:508
#, no-wrap
msgid ""
" /dir/name.xml\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:510
msgid "where C<name> is the guest name."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:512
msgid "B<-o> B<null>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:514
msgid "Set the output method to I<null>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:516
msgid ""
"The guest is converted and copied (unless you also specify I<--no-copy>), "
"but the results are thrown away and no metadata is written."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:520
msgid "B<-o> B<openstack>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:522
msgid ""
"Set the output method to OpenStack.  See L<virt-v2v-output-openstack(1)>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:524
msgid "B<-o> B<ovirt>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:526 docs/virt-v2v.pod:545
msgid "This is the same as I<-o rhv>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:528
msgid "B<-o> B<ovirt-upload>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:530
msgid "This is the same as I<-o rhv-upload>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:532
msgid "B<-o> B<qemu>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:534
msgid "Set the output method to I<qemu>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:536
msgid ""
"This is similar to I<-o local>, except that a shell script is written which "
"you can use to boot the guest in qemu.  The converted disks and shell script "
"are written to the directory specified by I<-os>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:540
msgid ""
"When using this output mode, you can also specify the I<--qemu-boot> option "
"which boots the guest under qemu immediately."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:543
msgid "B<-o> B<rhev>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:547
msgid "B<-o> B<rhv>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:549
msgid "Set the output method to I<rhv>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:551
msgid ""
"The converted guest is written to a RHV Export Storage Domain.  The I<-os> "
"parameter must also be used to specify the location of the Export Storage "
"Domain.  Note this does not actually import the guest into RHV.  You have to "
"do that manually later using the UI."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:556 docs/virt-v2v.pod:566
msgid "See L<virt-v2v-output-rhv(1)>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:558
msgid "B<-o> B<rhv-upload>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:560
msgid "Set the output method to I<rhv-upload>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:562
msgid ""
"The converted guest is written directly to a RHV Data Domain.  This is a "
"faster method than I<-o rhv>, but requires oVirt or RHV E<ge> 4.2."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:568
msgid "B<-o> B<vdsm>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:570
msgid "Set the output method to I<vdsm>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:572
msgid ""
"This mode is similar to I<-o rhv>, but the full path to the data domain must "
"be given: F</rhv/data-center/E<lt>data-center-uuidE<gt>/E<lt>data-domain-"
"uuidE<gt>>.  This mode is only used when virt-v2v runs under VDSM control."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:577
msgid "B<-oa> B<sparse>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:579
msgid "B<-oa> B<preallocated>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:581
msgid "Set the output file allocation mode.  The default is C<sparse>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:583
msgid "B<-oc> URI"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:585
msgid "Specify a connection URI to use when writing the converted guest."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:587
msgid ""
"For S<I<-o libvirt>> this is the libvirt URI.  Only local libvirt "
"connections can be used.  Remote libvirt connections will not work.  See "
"L<virt-v2v-output-local(1)> for further information."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:591
msgid "B<-of> format"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:593
msgid "When converting the guest, convert the disks to the given format."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:595
msgid "If not specified, then the input format is used."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:597
msgid "B<-on> name"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:599
msgid ""
"Rename the guest when converting it.  If this option is not used then the "
"output name is the same as the input name."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:602
msgid "B<-oo> OPTION=VALUE"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:604
msgid ""
"Set output option(s) related to the current output mode.  To display short "
"help on what options are available you can use:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:607
#, no-wrap
msgid ""
" virt-v2v -o rhv-upload -oo \"?\"\n"
"\n"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:609
msgid "B<-oo guest-id=>C<ID>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:611
msgid ""
"For I<-o openstack> (L<virt-v2v-output-openstack(1)>) only, set a guest ID "
"which is saved on each Cinder volume in the C<virt_v2v_guest_id> volume "
"property."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:615
msgid "B<-oo verify-server-certificate>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:617
msgid "B<-oo verify-server-certificate=>C<true|false>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:619
msgid ""
"For I<-o openstack> (L<virt-v2v-output-openstack(1)>) only, this can be used "
"to disable SSL certification validation when connecting to OpenStack by "
"specifying I<-oo verify-server-certificate=false>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:623
msgid "B<-oo os->*B<=>*"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:625
msgid ""
"For I<-o openstack> (L<virt-v2v-output-openstack(1)>) only, set optional "
"OpenStack authentication.  For example I<-oo os-username=>NAME is equivalent "
"to C<openstack --os-username=NAME>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:629
msgid "B<-oo rhv-cafile=>F<ca.pem>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:631
msgid ""
"For I<-o rhv-upload> (L<virt-v2v-output-rhv(1)>) only, the F<ca.pem> file "
"(Certificate Authority), copied from F</etc/pki/ovirt-engine/ca.pem> on the "
"oVirt engine."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:635
msgid "B<-oo rhv-cluster=>C<CLUSTERNAME>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:637
msgid ""
"For I<-o rhv-upload> (L<virt-v2v-output-rhv(1)>) only, set the RHV Cluster "
"Name.  If not given it uses C<Default>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:640
msgid "B<-oo rhv-direct>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:642
msgid ""
"For I<-o rhv-upload> (L<virt-v2v-output-rhv(1)>) only, if this option is "
"given then virt-v2v will attempt to directly upload the disk to the oVirt "
"node, otherwise it will proxy the upload through the oVirt engine.  Direct "
"upload requires that you have network access to the oVirt nodes.  Non-direct "
"upload is slightly slower but should work in all situations."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:649
msgid "B<-oo rhv-verifypeer>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:651
msgid ""
"For I<-o rhv-upload> (L<virt-v2v-output-rhv(1)>) only, verify the oVirt/RHV "
"server’s identity by checking the server‘s certificate against the "
"Certificate Authority."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:655
msgid "B<-oo server-id=>C<NAME|UUID>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:657
msgid ""
"For I<-o openstack> (L<virt-v2v-output-openstack(1)>) only, set the name of "
"the conversion appliance where virt-v2v is running."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:660
msgid "B<-oo vdsm-compat=0.10>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:662
msgid "B<-oo vdsm-compat=1.1>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:664
msgid ""
"If I<-o vdsm> and the output format is qcow2, then we add the qcow2 "
"I<compat=0.10> option to the output file for compatibility with RHEL 6 (see "
"L<https://bugzilla.redhat.com/1145582>)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:668
msgid ""
"If I<-oo vdsm-compat=1.1> is used then modern qcow2 (I<compat=1.1>)  files "
"are generated instead."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:671
msgid ""
"Currently I<-oo vdsm-compat=0.10> is the default, but this will change to I<-"
"oo vdsm-compat=1.1> in a future version of virt-v2v (when we can assume that "
"everyone is using a modern version of qemu)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:675
msgid ""
"B<Note this option only affects I<-o vdsm> output>.  All other output modes "
"(including I<-o rhv>) generate modern qcow2 I<compat=1.1> files, always."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:679
msgid ""
"If this option is available, then C<vdsm-compat-option> will appear in the "
"I<--machine-readable> output."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:682
msgid "B<-oo vdsm-image-uuid=>UUID"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:684
msgid "B<-oo vdsm-vol-uuid=>UUID"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:686
msgid "B<-oo vdsm-vm-uuid=>UUID"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:688
msgid "B<-oo vdsm-ovf-output=>DIR"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:690
msgid ""
"Normally the RHV output mode chooses random UUIDs for the target guest.  "
"However VDSM needs to control the UUIDs and passes these parameters when "
"virt-v2v runs under VDSM control.  The parameters control:"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:699
msgid ""
"the image directory of each guest disk (I<-oo vdsm-image-uuid>) (this option "
"is passed once for each guest disk)"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:704
msgid ""
"UUIDs for each guest disk (I<-oo vdsm-vol-uuid>) (this option is passed once "
"for each guest disk)"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:709
msgid "the OVF file name (I<-oo vdsm-vm-uuid>)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:713
msgid ""
"the OVF output directory (default current directory) (I<-oo vdsm-ovf-"
"output>)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:717
msgid ""
"The format of UUIDs is: C<12345678-1234-1234-1234-123456789abc> (each hex "
"digit can be C<0-9> or C<a-f>), conforming to S<OSF DCE 1.1>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:720
msgid "These options can only be used with I<-o vdsm>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:722
msgid "B<-oo vdsm-ovf-flavour=>flavour"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:724
msgid ""
"This option controls the format of the OVF generated at the end of "
"conversion.  Currently there are two possible flavours:"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:729
msgid "rhvexp"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:731
msgid "The OVF format used in RHV export storage domain."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:733
msgid "ovirt"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:735
msgid "The OVF format understood by oVirt REST API."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:739
msgid ""
"For backward compatibility the default is I<rhvexp>, but this may change in "
"the future."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:742
msgid "B<-op> file"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:744
msgid ""
"Supply a file containing a password to be used when connecting to the target "
"hypervisor.  Note the file should contain the whole password, B<without any "
"trailing newline>, and for security the file should have mode C<0600> so "
"that others cannot read it."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:749
msgid "B<-os> storage"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:751
msgid "The location of the storage for the converted guest."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:753
msgid ""
"For I<-o libvirt>, this is a libvirt directory pool (see S<C<virsh pool-"
"list>>) or pool UUID."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:756
msgid ""
"For I<-o json>, I<-o local> and I<-o qemu>, this is a directory name.  The "
"directory must exist."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:759
msgid ""
"For I<-o rhv-upload>, this is the name of the destination Storage Domain."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:762
msgid "For I<-o openstack>, this is the optional Cinder volume type."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:764
msgid ""
"For I<-o rhv>, this can be an NFS path of the Export Storage Domain of the "
"form C<E<lt>hostE<gt>:E<lt>pathE<gt>>, eg:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:767
#, no-wrap
msgid ""
" rhv-storage.example.com:/rhv/export\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:769
msgid ""
"The NFS export must be mountable and writable by the user and host running "
"virt-v2v, since the virt-v2v program has to actually mount it when it runs.  "
"So you probably have to run virt-v2v as C<root>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:773
msgid ""
"B<Or:> You can mount the Export Storage Domain yourself, and point I<-os> to "
"the mountpoint.  Note that virt-v2v will still need to write to this remote "
"directory, so virt-v2v will still need to run as C<root>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:778
msgid ""
"You will get an error if virt-v2v is unable to mount/write to the Export "
"Storage Domain."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:781
msgid "B<--print-estimate>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:783
msgid ""
"Print the estimated size of the data which will be copied from the source "
"disk(s) and stop.  One number (the size in bytes) is printed per disk, and a "
"total:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:787
#, no-wrap
msgid ""
" $ virt-v2v --print-estimate\n"
" ...\n"
" disk 1: 100000\n"
" disk 2: 200000\n"
" total: 300000\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:793
msgid ""
"With the I<--machine-readable> option you get JSON output which can be "
"directed into a file or elsewhere:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:796
#, no-wrap
msgid ""
" $ virt-v2v --print-estimate --machine-readable=file:estimates\n"
" ...\n"
" $ cat estimates\n"
" {\n"
"  \"disks\": [ 100000, 200000 ],\n"
"  \"total\": 300000\n"
" }\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:804
msgid ""
"When using this option you must specify an output mode.  This is because "
"virt-v2v has to perform the conversion in order to print the estimate, and "
"the conversion depends on the output mode.  Using I<-o null> should be safe "
"for most purposes."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:809
msgid ""
"When this option is used along with I<--machine-readable> you can direct the "
"output to an alternate file."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:812
msgid "B<--print-source>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:814
msgid ""
"Print information about the source guest and stop.  This option is useful "
"when you are setting up network and bridge maps.  See L</Networks and "
"bridges>."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:818
msgid "B<--qemu-boot>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:820
msgid ""
"When using I<-o qemu> only, this boots the guest immediately after virt-v2v "
"finishes."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:829
msgid "B<--root ask>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:831
msgid "B<--root single>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:833
msgid "B<--root first>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:835
msgid "B<--root> /dev/sdX"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:837
msgid "B<--root> /dev/VG/LV"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:839
msgid "Choose the root filesystem to be converted."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:841
msgid ""
"In the case where the virtual machine is dual-boot or multi-boot, or where "
"the VM has other filesystems that look like operating systems, this option "
"can be used to select the root filesystem (a.k.a. C<C:> drive or F</>) of "
"the operating system that is to be converted.  The Windows Recovery Console, "
"certain attached DVD drives, and bugs in libguestfs inspection heuristics, "
"can make a guest look like a multi-boot operating system."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:849
msgid ""
"The default in virt-v2v E<le> 0.7.1 was S<I<--root single>>, which causes "
"virt-v2v to die if a multi-boot operating system is found."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:852
msgid ""
"Since virt-v2v E<ge> 0.7.2 the default is now S<I<--root ask>>: If the VM is "
"found to be multi-boot, then virt-v2v will stop and list the possible root "
"filesystems and ask the user which to use.  This requires that virt-v2v is "
"run interactively."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:857
msgid ""
"S<I<--root first>> means to choose the first root device in the case of a "
"multi-boot operating system.  Since this is a heuristic, it may sometimes "
"choose the wrong one."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:861
msgid ""
"You can also name a specific root device, eg. S<I<--root /dev/sda2>> would "
"mean to use the second partition on the first hard drive.  If the named root "
"device does not exist or was not detected as a root device, then virt-v2v "
"will fail."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:866
msgid ""
"Note that there is a bug in grub which prevents it from successfully booting "
"a multiboot system if virtio is enabled.  Grub is only able to boot an "
"operating system from the first virtio disk.  Specifically, F</boot> must be "
"on the first virtio disk, and it cannot chainload an OS which is not in the "
"first virtio disk."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:884
msgid "B<-x>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:886
msgid "Enable tracing of libguestfs API calls."
msgstr ""

#. type: =head1
#: docs/virt-v2v.pod:890
msgid "NOTES"
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:892
msgid "Xen paravirtualized guests"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:894
msgid ""
"Older versions of virt-v2v could turn a Xen paravirtualized (PV) guest into "
"a KVM guest by installing a new kernel.  This version of virt-v2v does "
"I<not> attempt to install any new kernels.  Instead it will give you an "
"error if there are I<only> Xen PV kernels available."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:899
msgid ""
"Therefore before conversion you should check that a regular kernel is "
"installed.  For some older Linux distributions, this means installing a "
"kernel from the table below:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:903
#, no-wrap
msgid ""
" RHEL 3         (Does not apply, as there was no Xen PV kernel)\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:905
#, no-wrap
msgid ""
" RHEL 4         i686 with > 10GB of RAM: install 'kernel-hugemem'\n"
"                i686 SMP: install 'kernel-smp'\n"
"                other i686: install 'kernel'\n"
"                x86-64 SMP with > 8 CPUs: install 'kernel-largesmp'\n"
"                x86-64 SMP: install 'kernel-smp'\n"
"                other x86-64: install 'kernel'\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:912
#, no-wrap
msgid ""
" RHEL 5         i686: install 'kernel-PAE'\n"
"                x86-64: install 'kernel'\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:915
#, no-wrap
msgid ""
" SLES 10        i586 with > 10GB of RAM: install 'kernel-bigsmp'\n"
"                i586 SMP: install 'kernel-smp'\n"
"                other i586: install 'kernel-default'\n"
"                x86-64 SMP: install 'kernel-smp'\n"
"                other x86-64: install 'kernel-default'\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:921
#, no-wrap
msgid ""
" SLES 11+       i586: install 'kernel-pae'\n"
"                x86-64: install 'kernel-default'\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:924
#, no-wrap
msgid ""
" Windows        (Does not apply, as there is no Xen PV Windows kernel)\n"
"\n"
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:926
msgid "Enabling virtio"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:928
msgid ""
"\"Virtio\" is the name for a set of drivers which make disk (block device), "
"network and other guest operations work much faster on KVM."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:931
msgid ""
"Older versions of virt-v2v could install these drivers for certain Linux "
"guests.  This version of virt-v2v does I<not> attempt to install new Linux "
"kernels or drivers, but will warn you if they are not installed already."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:936
msgid ""
"In order to enable virtio, and hence improve performance of the guest after "
"conversion, you should ensure that the B<minimum> versions of packages are "
"installed I<before> conversion, by consulting the table below."
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:941
#, no-wrap
msgid ""
" RHEL 3         No virtio drivers are available\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:943
#, no-wrap
msgid ""
" RHEL 4         kernel >= 2.5.9-89.EL\n"
"                lvm2 >= 2.02.42-5.el4\n"
"                device-mapper >= 1.02.28-2.el4\n"
"                selinux-policy-targeted >= 1.17.30-2.152.el4\n"
"                policycoreutils >= 1.18.1-4.13\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:949
#, no-wrap
msgid ""
" RHEL 5         kernel >= 2.6.18-128.el5\n"
"                lvm2 >= 2.02.40-6.el5\n"
"                selinux-policy-targeted >= 2.4.6-203.el5\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:953
#, no-wrap
msgid ""
" RHEL 6+        All versions support virtio\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:955
#, no-wrap
msgid ""
" Fedora         All versions support virtio\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:957
#, no-wrap
msgid ""
" SLES 11+       All versions support virtio\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:959
#, no-wrap
msgid ""
" SLES 10        kernel >= 2.6.16.60-0.85.1\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:961
#, no-wrap
msgid ""
" OpenSUSE 11+   All versions support virtio\n"
" \n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:963
#, no-wrap
msgid ""
" OpenSUSE 10    kernel >= 2.6.25.5-1.1\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:965
#, no-wrap
msgid ""
" Debian 6+      All versions support virtio\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:967
#, no-wrap
msgid ""
" Ubuntu 10.04+  All versions support virtio\n"
"\n"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:969
#, no-wrap
msgid ""
" Windows        Drivers are installed from the ISO or directory pointed\n"
"                to by \"VIRTIO_WIN\" environment variable if present\n"
"\n"
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:972
msgid "RHEL 4: SELinux relabel appears to hang forever"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:974
msgid ""
"In RHEL E<le> 4.7 there was a bug which causes SELinux relabelling to appear "
"to hang forever at:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:977
#, no-wrap
msgid ""
" *** Warning -- SELinux relabel is required. ***\n"
" *** Disabling security enforcement.         ***\n"
" *** Relabeling could take a very long time, ***\n"
" *** depending on file system size.          ***\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:982
msgid ""
"In reality it is waiting for you to press a key (but there is no visual "
"indication of this).  You can either hit the C<[Return]> key, at which point "
"the guest will finish relabelling and reboot, or you can install "
"policycoreutils E<ge> 1.18.1-4.13 before starting the v2v conversion.  See "
"also L<https://bugzilla.redhat.com/show_bug.cgi?id=244636>"
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:989
msgid "Debian and Ubuntu"
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:991
msgid ""
"\"warning: could not determine a way to update the configuration of Grub2\""
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:993
msgid ""
"Currently, virt-v2v has no way to set the default kernel in Debian and "
"Ubuntu guests using GRUB 2 as bootloader.  This means that virt-v2v will not "
"change the default kernel used for booting, even in case it is not the best "
"kernel available on the guest.  A recommended procedure is, before using "
"virt-v2v, to check that the boot kernel is the best kernel available in the "
"guest (for example by making sure the guest is up-to-date)."
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1001
msgid "\"vsyscall attempted with vsyscall=none\""
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1003
msgid ""
"When run on a recent Debian host virt-v2v may fail to convert guests which "
"were created before 2013.  In the debugging output you will see a crash "
"message similar to:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1007
#, no-wrap
msgid ""
" vsyscall attempted with vsyscall=none ip:...\n"
" segfault at ...\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1010
msgid ""
"This is caused because Debian removed support for running old binaries which "
"used the legacy vsyscall page to call into the kernel."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1013
msgid ""
"You can work around this problem by running this command before running virt-"
"v2v:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1016
#, no-wrap
msgid ""
" export LIBGUESTFS_APPEND=\"vsyscall=emulate\"\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1018
msgid "For more information, see L<https://bugzilla.redhat.com/1592061>"
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:1020
msgid "Windows"
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1022
msgid "Windows E<ge> 8 Fast Startup is incompatible with virt-v2v"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1024
msgid ""
"Guests which use the Windows E<ge> 8 \"Fast Startup\" feature (or guests "
"which are hibernated) cannot be converted with virt-v2v.  You will see an "
"error:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1028
#, no-wrap
msgid ""
" virt-v2v: error: unable to mount the disk image for writing. This has\n"
" probably happened because Windows Hibernation or Fast Restart is being\n"
" used in this guest. You have to disable this (in the guest) in order\n"
" to use virt-v2v.\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1033
msgid ""
"As the message says, you need to boot the guest and disable the \"Fast "
"Startup\" feature (Control Panel → Power Options → Choose what the power "
"buttons do → Change settings that are currently unavailable → Turn on fast "
"startup), and shut down the guest, and then you will be able to convert it."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1039
msgid ""
"For more information, see: L<guestfs(3)/WINDOWS HIBERNATION AND WINDOWS 8 "
"FAST STARTUP>."
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1042
msgid "Boot failure: 0x0000007B"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1044
msgid ""
"This boot failure is caused by Windows being unable to find or load the "
"right disk driver (eg. F<viostor.sys>).  If you experience this error, here "
"are some things to check:"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1052
msgid ""
"First ensure that the guest boots on the source hypervisor before conversion."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1057
msgid ""
"Check you have the Windows virtio drivers available in F</usr/share/virtio-"
"win>, and that virt-v2v did not print any warning about not being able to "
"install virtio drivers."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1061
msgid ""
"On S<Red Hat Enterprise Linux 7>, you will need to install the signed "
"drivers available in the C<virtio-win> package.  If you do not have access "
"to the signed drivers, then you will probably need to disable driver signing "
"in the boot menus."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1068
msgid ""
"Check that you are presenting a virtio-blk interface (B<not> virtio-scsi and "
"B<not> ide) to the guest.  On the qemu/KVM command line you should see "
"something similar to this:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1072
#, no-wrap
msgid ""
" ... -drive file=windows-sda,if=virtio ...\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1074
msgid "In libvirt XML, you should see:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1076
#, no-wrap
msgid ""
" <target dev='vda' bus='virtio'/>\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1080
msgid ""
"Check that Windows Group Policy does not prevent the driver from being "
"installed or used.  Try deleting Windows Group Policy before conversion."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1086
msgid ""
"Check there is no anti-virus or other software which implements Group Policy-"
"like prohibitions on installing or using new drivers."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1091
msgid ""
"Enable boot debugging and check the F<viostor.sys> driver is being loaded."
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1096
msgid "OpenStack and Windows reactivation"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1098
msgid ""
"OpenStack does not offer stable device / PCI addresses to guests.  Every "
"time it creates or starts a guest, it regenerates the libvirt XML for that "
"guest from scratch.  The libvirt XML will have no E<lt>addressE<gt> fields.  "
"Libvirt will then assign addresses to devices, in a predictable manner.  "
"Addresses may change if any of the following are true:"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1109
msgid "A new disk or network device has been added or removed from the guest."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1113
msgid "The version of OpenStack or (possibly) libvirt has changed."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1117
msgid ""
"Because Windows does not like \"hardware\" changes of this kind, it may "
"trigger Windows reactivation."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1120
msgid ""
"This can also prevent booting with a 7B error [see previous section] if the "
"guest has group policy containing C<Device Installation Restrictions>."
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1124
msgid "Support for SHA-2 certificates in Windows 7 and Windows Server 2008 R2"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1126
msgid ""
"Later versions of the Windows virtio drivers are signed using SHA-2 "
"certificates (instead of SHA-1).  The original shipping Windows 7 and "
"Windows Server 2008 R2 did not understand SHA-2 certificates and so the "
"Windows virtio drivers will not install properly."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1131
msgid ""
"To fix this you must apply SHA-2 Code Signing Support from: L<https://docs."
"microsoft.com/en-us/security-updates/SecurityAdvisories/2015/3033929> before "
"converting the guest."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1135
msgid ""
"For further information see: L<https://bugzilla.redhat.com/show_bug.cgi?"
"id=1624878>"
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:1138
msgid "Networks and bridges"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1140
msgid ""
"Guests are usually connected to one or more networks, and when converted to "
"the target hypervisor you usually want to reconnect those networks at the "
"destination.  The options I<--network>, I<--bridge> and I<--mac> allow you "
"to do that."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1145
msgid ""
"If you are unsure of what networks and bridges are in use on the source "
"hypervisor, then you can examine the source metadata (libvirt XML, vCenter "
"information, etc.).  Or you can run virt-v2v with the I<--print-source> "
"option which causes virt-v2v to print out the information it has about the "
"guest on the source and then exit."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1151
msgid ""
"In the I<--print-source> output you will see a section showing the guest’s "
"Network Interface Cards (NICs):"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1154
#, no-wrap
msgid ""
" $ virt-v2v [-i ...] --print-source name\n"
" [...]\n"
" NICs:\n"
"     Network \"default\" mac: 52:54:00:d0:cf:0e\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1159
msgid ""
"Bridges are special classes of network devices which are attached to a named "
"external network on the source hypervisor, for example:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1162
#, no-wrap
msgid ""
" $ virt-v2v [-i ...] --print-source name\n"
" [...]\n"
" NICs:\n"
"     Bridge \"br0\"\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1167
msgid ""
"To map a specific source bridge to a target network, for example C<br0> on "
"the source to C<ovirtmgmt> on the target, use:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1170
#, no-wrap
msgid ""
" virt-v2v [...] --bridge br0:ovirtmgmt\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1172
msgid "To map every bridge to a target network, use:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1174
#, no-wrap
msgid ""
" virt-v2v [...] --bridge ovirtmgmt\n"
"\n"
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1176
msgid "Fine-grained mapping of guest NICs"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1178
msgid ""
"The I<--mac> option gives you more control over the mapping, letting you map "
"single NICs to either networks or bridges on the target.  For example a "
"source guest with two NICs could map them individually to two networks "
"called C<mgmt> and C<clientdata> like this:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1183
#, no-wrap
msgid ""
" $ virt-v2v [...] \\\n"
"    --mac 52:54:00:d0:cf:0e:network:mgmt \\\n"
"    --mac 52:54:00:d0:cf:0f:network:clientdata\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1187
msgid ""
"Note that virt-v2v does not have the ability to change a guest’s MAC "
"address.  The MAC address is part of the guest metadata and must remain the "
"same on source and target hypervisors.  Most guests will use the MAC address "
"to set up persistent associations between NICs and internal names (like "
"C<eth0>), with firewall settings, or even for other purposes like software "
"licensing."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:1194
msgid "Resource requirements"
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1196
msgid "Network"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1198
msgid ""
"The most important resource for virt-v2v appears to be network bandwidth.  "
"Virt-v2v should be able to copy guest data at gigabit ethernet speeds or "
"greater."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1202
msgid ""
"Ensure that the network connections between servers (conversion server, NFS "
"server, vCenter, Xen) are as fast and as low latency as possible."
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1206
msgid "Disk space"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1208
msgid ""
"Virt-v2v places potentially large temporary files in C<$LIBGUESTFS_CACHEDIR> "
"(which is F</var/tmp> if you don't set it).  Using tmpfs is a bad idea."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1212
msgid ""
"For each guest disk, an overlay is stored temporarily.  This stores the "
"changes made during conversion, and is used as a cache.  The overlays are "
"not particularly large - tens or low hundreds of megabytes per disk is "
"typical.  In addition to the overlay(s), input and output methods may use "
"disk space, as outlined in the table below."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1220
msgid "I<-i ova>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1222
msgid ""
"This temporarily places a full copy of the uncompressed source disks in C<"
"$LIBGUESTFS_CACHEDIR> (or F</var/tmp>)."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1225
msgid "I<-o glance>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1227
msgid ""
"This temporarily places a full copy of the output disks in C<"
"$LIBGUESTFS_CACHEDIR> (or F</var/tmp>)."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1230
msgid "I<-o local>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1232
msgid "I<-o qemu>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1234
msgid ""
"You must ensure there is sufficient space in the output directory for the "
"converted guest."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1239
msgid "See also L</Minimum free space check in the host> below."
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1241
msgid "VMware vCenter resources"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1243
msgid ""
"Copying from VMware vCenter is currently quite slow, but we believe this to "
"be an issue with VMware.  Ensuring the VMware ESXi hypervisor and vCenter "
"are running on fast hardware with plenty of memory should alleviate this."
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1248
msgid "Compute power and RAM"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1250
msgid ""
"Virt-v2v is not especially compute or RAM intensive.  If you are running "
"many parallel conversions, then you may consider allocating one CPU core and "
"2 GB of RAM per running instance."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1254
msgid "Virt-v2v can be run in a virtual machine."
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1256
msgid "Trimming"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1258
msgid ""
"Virt-v2v attempts to optimize the speed of conversion by ignoring guest "
"filesystem data which is not used.  This would include unused filesystem "
"blocks, blocks containing zeroes, and deleted files."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1262
msgid ""
"To do this, virt-v2v issues a non-destructive L<fstrim(8)> operation.  As "
"this happens to an overlay placed over the guest data, it does B<not> affect "
"the source in any way."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1266
msgid ""
"If this fstrim operation fails, you will see a warning, but virt-v2v will "
"continue anyway.  It may run more slowly (in some cases much more slowly), "
"because it is copying the unused parts of the disk."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1270
msgid ""
"Unfortunately support for fstrim is not universal, and it also depends on "
"specific details of the filesystem, partition alignment, and backing "
"storage.  As an example, NTFS filesystems cannot be fstrimmed if they occupy "
"a partition which is not aligned to the underlying storage.  That was the "
"default on Windows before Vista.  As another example, VFAT filesystems (used "
"by UEFI guests) cannot be trimmed at all."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1278
msgid ""
"fstrim support in the Linux kernel is improving gradually, so over time some "
"of these restrictions will be lifted and virt-v2v will work faster."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:1282
msgid "Post-conversion tasks"
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1284
msgid "Guest network configuration"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1286
msgid ""
"Virt-v2v cannot currently reconfigure a guest’s network configuration.  If "
"the converted guest is not connected to the same subnet as the source, its "
"network configuration may have to be updated.  See also L<virt-customize(1)>."
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1291
msgid "Converting a Windows guest"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1293
msgid ""
"When converting a Windows guests, the conversion process is split into two "
"stages:"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1298
msgid "1"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1300
msgid "Offline conversion."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1302
msgid "2"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1304
msgid "First boot."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1308
msgid ""
"The guest will be bootable after the offline conversion stage, but will not "
"yet have all necessary drivers installed to work correctly.  These will be "
"installed automatically the first time the guest boots."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1312
msgid ""
"B<N.B.> Take care not to interrupt the automatic driver installation process "
"when logging in to the guest for the first time, as this may prevent the "
"guest from subsequently booting correctly."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:1316
msgid "Free space for conversion"
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1318
msgid "Free space in the guest"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1320
msgid ""
"Virt-v2v checks there is sufficient free space in the guest filesystem to "
"perform the conversion.  Currently it checks:"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1325
msgid "Linux root filesystem or Windows C<C:> drive"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1327
msgid "Minimum free space: 20 MB"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1329
msgid "Linux F</boot>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1331
msgid "Minimum free space: 50 MB"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1333
msgid ""
"This is because we need to build a new initramfs for some Enterprise Linux "
"conversions."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1336
msgid "Any other mountable filesystem"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1338
msgid "Minimum free space: 10 MB"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1342
msgid ""
"In addition to the actual free space, each filesystem is required to have at "
"least 100 available inodes."
msgstr ""

#. type: =head3
#: docs/virt-v2v.pod:1345
msgid "Minimum free space check in the host"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1347
msgid ""
"You must have sufficient free space in the host directory used to store "
"temporary overlays (except in I<--in-place> mode).  To find out which "
"directory this is, use:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1351
#, no-wrap
msgid ""
" $ df -h \"`guestfish get-cachedir`\"\n"
" Filesystem        Size  Used Avail Use% Mounted on\n"
" /dev/mapper/root   50G   40G  6.8G  86% /\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1355
msgid ""
"and look under the C<Avail> column.  Virt-v2v will refuse to do the "
"conversion at all unless at least 1GB is available there."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1358
msgid "See also L</Resource requirements> above."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:1360
msgid "Running virt-v2v as root or non-root"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1362
msgid ""
"Nothing in virt-v2v inherently needs root access, and it will run just fine "
"as a non-root user.  However, certain external features may require either "
"root or a special user:"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1368
msgid "Mounting the Export Storage Domain"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1370
msgid ""
"When using I<-o rhv -os server:/esd> virt-v2v has to have sufficient "
"privileges to NFS mount the Export Storage Domain from C<server>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1373
msgid ""
"You can avoid needing root here by mounting it yourself before running virt-"
"v2v, and passing I<-os /mountpoint> instead, but first of all read the next "
"S<section ...>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1377
msgid "Writing to the Export Storage Domain as 36:36"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1379
msgid ""
"RHV-M cannot read files and directories from the Export Storage Domain "
"unless they have UID:GID 36:36.  You will see VM import problems if the UID:"
"GID is not correct."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1383
msgid ""
"When you run virt-v2v I<-o rhv> as root, virt-v2v attempts to create files "
"and directories with the correct ownership.  If you run virt-v2v as non-"
"root, it will probably still work, but you will need to manually change "
"ownership after virt-v2v has finished."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1388
msgid "Writing to libvirt"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1390
msgid ""
"When using I<-o libvirt>, you may need to run virt-v2v as root so that it "
"can write to the libvirt system instance (ie. C<qemu:///system>)  and to the "
"default location for disk images (usually F</var/lib/libvirt/images>)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1395
msgid ""
"You can avoid this by setting up libvirt connection authentication, see "
"L<http://libvirt.org/auth.html>.  Alternatively, use I<-oc qemu:///session>, "
"which will write to your per-user libvirt instance."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1400
msgid "Writing to Openstack"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1402
msgid ""
"Because of how Cinder volumes are presented as F</dev> block devices, using "
"I<-o openstack> normally requires that virt-v2v is run as root."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1405
msgid "Writing to Glance"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1407
msgid ""
"This does I<not> need root (in fact it probably won’t work), but may require "
"either a special user and/or for you to source a script that sets "
"authentication environment variables.  Consult the Glance documentation."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:1414
msgid "Minimal XML for -i libvirtxml option"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1416
msgid ""
"When using the I<-i libvirtxml> option, you have to supply some libvirt "
"XML.  Writing this from scratch is hard, so the template below is helpful."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1420
msgid ""
"B<Note this should only be used for testing and/or where you know what "
"you're doing!> If you have libvirt metadata for the guest, always use that "
"instead."
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1424
#, no-wrap
msgid ""
" <domain type='kvm'>\n"
"   <name> NAME </name>\n"
"   <memory>1048576</memory>\n"
"   <vcpu>2</vcpu>\n"
"   <os>\n"
"     <type>hvm</type>\n"
"     <boot dev='hd'/>\n"
"   </os>\n"
"   <features>\n"
"     <acpi/>\n"
"     <apic/>\n"
"     <pae/>\n"
"   </features>\n"
"   <devices>\n"
"     <disk type='file' device='disk'>\n"
"       <driver name='qemu' type='raw'/>\n"
"       <source file='/path/to/disk/image'/>\n"
"       <target dev='hda' bus='ide'/>\n"
"     </disk>\n"
"     <interface type='network'>\n"
"       <mac address='52:54:00:01:02:03'/>\n"
"       <source network='default'/>\n"
"       <model type='rtl8139'/>\n"
"     </interface>\n"
"   </devices>\n"
" </domain>\n"
"\n"
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:1451
msgid "In-place conversion"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1453
msgid ""
"It is also possible to use virt-v2v in scenarios where a foreign VM has "
"already been imported into a KVM-based hypervisor, but still needs "
"adjustments in the guest to make it run in the new virtual hardware."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1457
msgid ""
"In that case it is assumed that a third-party tool has created the target VM "
"in the supported KVM-based hypervisor based on the source VM configuration "
"and contents, but using virtual devices more appropriate for KVM (e.g. "
"virtio storage and network, etc.)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1462
msgid ""
"Then, to make the guest OS boot and run in the changed environment, one can "
"use:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1465
#, no-wrap
msgid ""
" virt-v2v -ic qemu:///system converted_vm --in-place\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1467
msgid ""
"Virt-v2v will analyze the configuration of C<converted_vm> in the C<qemu:///"
"system> libvirt instance, and apply various fixups to the guest OS "
"configuration to make it match the VM configuration.  This may include "
"installing virtio drivers, configuring the bootloader, the mountpoints, the "
"network interfaces, and so on."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1473
msgid ""
"Should an error occur during the operation, virt-v2v exits with an error "
"code leaving the VM in an undefined state."
msgstr ""

#. type: =head2
#: docs/virt-v2v.pod:1476
msgid "Machine readable output"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1478
msgid ""
"The I<--machine-readable> option can be used to make the output more machine "
"friendly, which is useful when calling virt-v2v from other programs, GUIs "
"etc."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1482
msgid "There are two ways to use this option."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1484
msgid ""
"Firstly use the option on its own to query the capabilities of the virt-v2v "
"binary.  Typical output looks like this:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1487
#, no-wrap
msgid ""
" $ virt-v2v --machine-readable\n"
" virt-v2v\n"
" libguestfs-rewrite\n"
" colours-option\n"
" vdsm-compat-option\n"
" input:disk\n"
" [...]\n"
" output:local\n"
" [...]\n"
" convert:linux\n"
" convert:windows\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1499
msgid ""
"A list of features is printed, one per line, and the program exits with "
"status 0."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1502
msgid ""
"The C<input:> and C<output:> features refer to I<-i> and I<-o> (input and "
"output mode) options supported by this binary.  The C<convert:> features "
"refer to guest types that this binary knows how to convert."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1506
msgid ""
"Secondly use the option in conjunction with other options to make the "
"regular program output more machine friendly."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1509
msgid "At the moment this means:"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1515
msgid ""
"Progress bar messages can be parsed from stdout by looking for this regular "
"expression:"
msgstr ""

#. type: verbatim
#: docs/virt-v2v.pod:1518
#, no-wrap
msgid ""
" ^[0-9]+/[0-9]+$\n"
"\n"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1522
msgid ""
"The calling program should treat messages sent to stdout (except for "
"progress bar messages) as status messages.  They can be logged and/or "
"displayed to the user."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1528
msgid ""
"The calling program should treat messages sent to stderr as error messages.  "
"In addition, virt-v2v exits with a non-zero status code if there was a fatal "
"error."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1534
msgid ""
"Virt-v2v E<le> 0.9.1 did not support the I<--machine-readable> option at "
"all.  The option was added when virt-v2v was rewritten in 2014."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1537
msgid ""
"It is possible to specify a format string for controlling the output; see "
"L<guestfs(3)/ADVANCED MACHINE READABLE OUTPUT>."
msgstr ""

#. type: =head1
#: docs/virt-v2v.pod:1540 test-harness/virt-v2v-test-harness.pod:245
msgid "FILES"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1544 docs/virt-v2v.pod:1622
msgid "F</usr/share/virtio-win>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1546 docs/virt-v2v.pod:1594
msgid "(Optional)"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1548
msgid ""
"If this directory is present, then virtio drivers for Windows guests will be "
"found from this directory and installed in the guest during conversion."
msgstr ""

#. type: =head1
#: docs/virt-v2v.pod:1554
msgid "ENVIRONMENT VARIABLES"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1558
msgid "C<LIBGUESTFS_CACHEDIR>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1560
msgid ""
"Location of the temporary directory used for the potentially large temporary "
"overlay file.  If not set, F</var/tmp> is used."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1563
msgid "See the L</Disk space> section above."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1565
msgid "C<VIRT_TOOLS_DATA_DIR>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1567
msgid ""
"This can point to the directory containing data files used for Windows "
"conversion."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1570
msgid ""
"Normally you do not need to set this.  If not set, a compiled-in default "
"will be used (something like F</usr/share/virt-tools>)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1573
msgid "This directory may contain the following files:"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1577
msgid "F<rhsrvany.exe>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1579
msgid "(Required when doing conversions of Windows guests)"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1581
msgid ""
"This is the RHSrvAny Windows binary, used to install a \"firstboot\" script "
"in the guest during conversion of Windows guests."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1584
msgid "See also: C<https://github.com/rwmjones/rhsrvany>"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1586
msgid "F<pvvxsvc.exe>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1588
msgid ""
"This is a Windows binary shipped with SUSE VMDP, used to install a "
"\"firstboot\" script in Windows guests.  It is required if you intend to use "
"the I<--firstboot> or I<--firstboot-command> options with Windows guests."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1592
msgid "F<rhev-apt.exe>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1596
msgid ""
"The RHV Application Provisioning Tool (RHEV APT).  If this file is present, "
"then RHEV APT will be installed in the Windows guest during conversion.  "
"This tool is a guest agent which ensures that the virtio drivers remain up "
"to date when the guest is running on Red Hat Virtualization (RHV)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1602
msgid ""
"This file comes from Red Hat Virtualization (RHV), and is not distributed "
"with virt-v2v."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1607
msgid "C<VIRTIO_WIN>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1609
msgid ""
"This is where virtio drivers for Windows are searched for.  It can be a "
"directory I<or> point to F<virtio-win.iso> (CD ROM image containing drivers)."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1613
msgid ""
"If unset, then we look for drivers in whichever of these paths is found "
"first:"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1618
msgid "F</usr/share/virtio-win/virtio-win.iso>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1620
msgid "The ISO containing virtio drivers for Windows."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1624
msgid ""
"The exploded tree of virtio drivers for Windows.  This is usually "
"incomplete, hence the ISO is preferred."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1629
msgid "See L</Enabling virtio>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1633
msgid ""
"For other environment variables, see L<guestfs(3)/ENVIRONMENT VARIABLES>."
msgstr ""

#. type: =head1
#: docs/virt-v2v.pod:1635
msgid "OTHER TOOLS"
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1639
msgid "L<virt-v2v-copy-to-local(1)>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1641
msgid ""
"There are some special cases where virt-v2v cannot directly access the "
"remote hypervisor.  In that case you have to use L<virt-v2v-copy-to-"
"local(1)> to make a local copy of the guest first, followed by running "
"C<virt-v2v -i libvirtxml> to perform the conversion."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1647
msgid "L<engine-image-uploader(8)>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1649
msgid ""
"Variously called C<engine-image-uploader>, C<ovirt-image-uploader> or "
"C<rhevm-image-uploader>, this tool allows you to copy a guest from one oVirt "
"or RHV Export Storage Domain to another.  It only permits importing a guest "
"that was previously exported from another oVirt/RHV instance."
msgstr ""

#. type: =item
#: docs/virt-v2v.pod:1655
msgid "L<import-to-ovirt.pl|http://git.annexia.org/?p=import-to-ovirt.git>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1657
msgid ""
"This script can be used to import guests that already run on KVM to oVirt or "
"RHV.  For more information, see this blog posting by the author of virt-v2v:"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1661
msgid ""
"L<https://rwmj.wordpress.com/2015/09/18/importing-kvm-guests-to-ovirt-or-"
"rhev/#content>"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1667
msgid ""
"L<virt-p2v(1)>, L<virt-customize(1)>, L<virt-df(1)>, L<virt-filesystems(1)>, "
"L<virt-sparsify(1)>, L<virt-sysprep(1)>, L<guestfs(3)>, L<guestfish(1)>, "
"L<qemu-img(1)>, L<virt-v2v-copy-to-local(1)>, L<virt-v2v-test-harness(1)>, "
"L<engine-image-uploader(8)>, L<import-to-ovirt.pl|http://git.annexia.org/?"
"p=import-to-ovirt.git>, L<nbdkit(1)>, L<nbdkit-vddk-plugin(1)>, L<http://"
"libguestfs.org/>."
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1686
msgid "Matthew Booth"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1688
msgid "Cédric Bosdonnat"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1692
msgid "Shahar Havivi"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1694
msgid "Roman Kagan"
msgstr ""

#. type: textblock
#: docs/virt-v2v.pod:1704
msgid "Tingting Zheng"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:3
msgid "virt-v2v-test-harness - Used to test virt-v2v against real test cases"
msgstr ""

#. type: verbatim
#: test-harness/virt-v2v-test-harness.pod:7
#: test-harness/virt-v2v-test-harness.pod:165
#: test-harness/virt-v2v-test-harness.pod:194
#, no-wrap
msgid ""
" open V2v_test_harness\n"
" \n"
msgstr ""

#. type: verbatim
#: test-harness/virt-v2v-test-harness.pod:9
#, no-wrap
msgid ""
" let test = \"rhel_45_i386_fv\"\n"
" let test_plan = {\n"
"   default_plan with\n"
"     boot_plan = Boot_to_screenshot (test ^ \"-login.ppm\")\n"
" }\n"
" \n"
msgstr ""

#. type: verbatim
#: test-harness/virt-v2v-test-harness.pod:15
#: test-harness/virt-v2v-test-harness.pod:202
#, no-wrap
msgid ""
" let () = run ~test ~test_plan ()\n"
"\n"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:19
msgid ""
"L<virt-v2v(1)> converts guests from a foreign hypervisor to run on KVM, "
"managed by libvirt, OpenStack, oVirt, Red Hat Virtualisation (RHV) or "
"several other targets."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:23
msgid ""
"Virt-v2v-test-harness is a small library (module name: C<V2v_test_harness>) "
"used to run virt-v2v against a set of test cases consisting of real virtual "
"machines."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:27
msgid ""
"It acts as a test harness, taking a test case, running virt-v2v on it (non-"
"destructively), then test-booting the result.  It can ensure that the test "
"case converts successfully, boots successfully, and reaches a milestone "
"(such as a particular screenshot).  It can also test that the conversion "
"created, modified or deleted the expected files from within the guest."
msgstr ""

#. type: =head2
#: test-harness/virt-v2v-test-harness.pod:34
msgid "GETTING THE TEST CASES"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:36
msgid ""
"Because the test cases are actual virtual machines, we split them into two "
"groups: test cases which are freely redistributable and those which are "
"proprietary.  The former are things like Fedora or CentOS images, which are "
"free software.  The latter are things like Windows or Red Hat Enterprise "
"Linux."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:42
msgid ""
"The freely redistributable test cases can be downloaded from: L<http://git."
"annexia.org/?p=virt-v2v-test-cases-free.git> I<B<not available yet>>"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:46
msgid ""
"The proprietary test cases are available at L<http://git.annexia.org/?p=virt-"
"v2v-test-cases-nonfree.git> This I<does not> contain the proprietary images "
"themselves, which are not made available to the public for licensing reasons."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:51
msgid ""
"The test cases consist of disk images which are very large, from 250 MB "
"through to tens of gigabytes I<each>.  This means that distributing test "
"cases can be very time-consuming and expensive.  We use L<git-annex(1)> to "
"distribute the test images."
msgstr ""

#. type: =head2
#: test-harness/virt-v2v-test-harness.pod:56
msgid "REQUIREMENTS"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:58
msgid ""
"It’s recommended to use an idle machine for testing.  You will need B<a lot "
"of disk space> to run the tests, in excess of S<100 GB>.  You should also "
"ensure the test machine has plenty of RAM, at least S<16 GB>."
msgstr ""

#. type: =head2
#: test-harness/virt-v2v-test-harness.pod:63
msgid "GETTING THE TEST HARNESS"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:65
msgid "To run the test cases you must have the virt-v2v test harness."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:67
msgid "The OCaml module is C<V2v_test_harness>."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:69
msgid ""
"The easiest way is to compile libguestfs from source (I<note> do not install "
"it).  The test harness will be in C<virt-v2v.git/test-harness>"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:73
msgid "It is also possible to install test harness as an OCaml module."
msgstr ""

#. type: =head2
#: test-harness/virt-v2v-test-harness.pod:75
msgid "RUNNING THE TEST CASES"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:77
msgid ""
"Once you have checked out the freely redistributed test cases from the "
"repository, do:"
msgstr ""

#. type: verbatim
#: test-harness/virt-v2v-test-harness.pod:80
#, no-wrap
msgid ""
" ./configure [--with-test-harness=/path/to/virt-v2v/test-harness]\n"
" make\n"
" make check -k\n"
"\n"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:84
msgid ""
"Using the I<-k> option is recommended so the test doesn't stop at the first "
"failure."
msgstr ""

#. type: =head2
#: test-harness/virt-v2v-test-harness.pod:87
msgid "PARALLEL TESTS"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:89
msgid "You can run test cases in parallel by doing:"
msgstr ""

#. type: verbatim
#: test-harness/virt-v2v-test-harness.pod:91
#, no-wrap
msgid ""
" make check -k -j<N>\n"
"\n"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:93
msgid ""
"(eg. I<-j2> for running up to 2 tests in parallel).  Be careful about "
"running too many parallel tests, as it can slow down each test enough to "
"cause false failures."
msgstr ""

#. type: =head2
#: test-harness/virt-v2v-test-harness.pod:97
msgid "RUNNING TEST CASES AGAINST UPSTREAM VIRT-V2V"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:99
msgid ""
"Using C<make check> picks up whatever C<virt-v2v> binary is on your C<$PATH>."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:102
msgid ""
"If you have compiled libguestfs from source and want to test that version of "
"virt-v2v, use the libguestfs C<run> script (in the top-level build directory "
"of the libguestfs sources).  eg:"
msgstr ""

#. type: verbatim
#: test-harness/virt-v2v-test-harness.pod:106
#, no-wrap
msgid ""
" ../libguestfs/run make check -k\n"
"\n"
msgstr ""

#. type: =head1
#: test-harness/virt-v2v-test-harness.pod:108
msgid "WRITING NEW TEST CASES"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:110
msgid ""
"If you are interested in writing test cases, it is suggested that you start "
"by downloading the freely redistributable test cases, or at least look at "
"them online."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:114
msgid ""
"Also you must have the virt-v2v test harness - see L</GETTING THE TEST "
"HARNESS> above."
msgstr ""

#. type: =head2
#: test-harness/virt-v2v-test-harness.pod:117
msgid "FILES IN EACH TEST CASE"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:119
msgid "Each test case consists of:"
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:123
msgid "I<test>.img.xz"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:125
msgid ""
"The disk image of the virtual machine before conversion.  Usually this "
"should be converted to raw format and xz-compressed."
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:128
msgid "I<test>.ova"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:130
msgid "Alternatively, an OVA, exported from VMware, may be used."
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:132
msgid "I<test>.xml"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:134
msgid ""
"The libvirt XML used as input to virt-v2v.  See the discussion of I<-i "
"libvirtxml> in L<virt-v2v(1)>."
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:137
msgid "I<test>.ppm"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:139
msgid "An optional screenshot or screenshots."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:141
msgid ""
"You can supply zero or more \"known good\" screenshots which represent "
"intermediate steps where the guest is booting.  This is useful where a guest "
"sits for some time doing something, and lets the test harness know that it "
"should allow the guest to continue to boot."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:146
msgid ""
"You can supply zero or one \"final\" screenshot.  This is often a screenshot "
"of the login page which indicates that the guest booted successfully."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:150
msgid ""
"The screenshots are captured using L<virsh(1)>.  Comparison of screenshots "
"against the test images is done using the ImageMagick L<compare(1)> program."
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:154
msgid "I<test>.ml"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:156
msgid "The test itself - see below."
msgstr ""

#. type: =head2
#: test-harness/virt-v2v-test-harness.pod:160
msgid "WRITING THE TEST"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:162
msgid ""
"The test file (F<*.ml>) is used to control the test harness, and minimally "
"it would look something like this:"
msgstr ""

#. type: verbatim
#: test-harness/virt-v2v-test-harness.pod:167
#, no-wrap
msgid ""
" let test = \"short_name\"\n"
" \n"
msgstr ""

#. type: verbatim
#: test-harness/virt-v2v-test-harness.pod:169
#, no-wrap
msgid ""
" let () = run ~test ()\n"
"\n"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:171
msgid "That would instruct the test harness to:"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:177
msgid "Uncompress F<I<short_name>.img.xz>"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:181
msgid "Run C<virt-v2v -i libvirtxml I<short_name>.xml [...]>"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:185
msgid ""
"Boot the resulting guest and check that it writes to its disk and then the "
"disk becomes idle."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:190
msgid ""
"The above is a rather simplistic test.  A more realistic test is to ensure "
"the guest reaches a final milestone (screenshot), eg. a login page.  To do "
"that you have to supply a C<~test_plan> parameter:"
msgstr ""

#. type: verbatim
#: test-harness/virt-v2v-test-harness.pod:196
#, no-wrap
msgid ""
" let test = \"short_name\"\n"
" let test_plan = {\n"
"   default_plan with\n"
"     boot_plan = Boot_to_screenshot (test ^ \".ppm\")\n"
" }\n"
" \n"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:204
msgid ""
"For an even better test, you can supply post-conversion and post-boot test "
"cases which examine the disk image (using libguestfs) to verify that files "
"have been created, modified or deleted as expected within the disk image.  "
"See F<V2v_test_harness.mli> for more information on how to do that."
msgstr ""

#. type: =head2
#: test-harness/virt-v2v-test-harness.pod:210
msgid "FILES GENERATED BY RUNNING THE TEST"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:212
msgid "When you run each test, the following files can be created:"
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:216
msgid "I<test>-I<yyyymmdd-hhmmss>.scrn"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:218
msgid ""
"Screenshot(s) of the guest’s graphical console.  These are helpful when "
"writing tests or debugging test failures."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:221
msgid "The screenshot format is Portable Pixmap (PPM)."
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:223
msgid "I<test>.img"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:225
msgid "The uncompressed original disk image (before conversion)."
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:227
msgid "I<test>-converted-sda"
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:229
msgid "I<test>-converted.xml"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:231
msgid ""
"The result of conversion, ie. after running virt-v2v but before test-booting "
"the guest.  See the L<virt-v2v(1)> manual page description of I<-o local>."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:235
msgid "The disk image format is qcow2."
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:237
msgid "I<test>-booted-sda"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:239
msgid ""
"The disk image after test-booting.  This is a qcow2 file which uses the "
"I<test>-converted-sda file as a backing disk, in order to save disk space."
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:249
msgid "F<$ocamllibdir/v2v_test_harness/v2v_test_harness.mli>"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:251
msgid ""
"The test library interface.  Read this for detailed programming "
"documentation."
msgstr ""

#. type: =item
#: test-harness/virt-v2v-test-harness.pod:254
msgid "C<$ocamllibdir/v2v_test_harness/META>"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:256
msgid ""
"The findlib META file allowing you to use the library from L<ocamlfind(1)>."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:261
msgid "NB: To find the value of C<$ocamllibdir>, run C<ocamlc -where>"
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:265
msgid ""
"L<virt-v2v(1)>, L<virt-p2v(1)>, L<guestfs(3)>, L<virsh(1)>, L<compare(1)>, "
"L<git-annex(1)>, L<http://libguestfs.org/>."
msgstr ""

#. type: textblock
#: test-harness/virt-v2v-test-harness.pod:279
msgid "Copyright (C) 2014-2020 Red Hat Inc."
msgstr ""
