Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: libguestfs/virt-v2v-docs-master Translate-URL: https://translate.fedoraproject.org/projects/libguestfs/virt-v2v-docs-master/ Update translation files Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: libguestfs/virt-v2v-master Translate-URL: https://translate.fedoraproject.org/projects/libguestfs/virt-v2v-master/
8697 lines
223 KiB
Plaintext
8697 lines
223 KiB
Plaintext
# Zdenek <chmelarz@gmail.com>, 2016. #zanata
|
||
# Zdenek <chmelarz@gmail.com>, 2017. #zanata
|
||
msgid ""
|
||
msgstr ""
|
||
"Project-Id-Version: libguestfs 1.39.12\n"
|
||
"Report-Msgid-Bugs-To: guestfs@lists.libguestfs.org\n"
|
||
"POT-Creation-Date: 2020-08-13 13:17+0200\n"
|
||
"PO-Revision-Date: 2017-09-11 04:54+0000\n"
|
||
"Last-Translator: Zdenek <chmelarz@gmail.com>\n"
|
||
"Language-Team: Czech\n"
|
||
"Language: cs\n"
|
||
"MIME-Version: 1.0\n"
|
||
"Content-Type: text/plain; charset=UTF-8\n"
|
||
"Content-Transfer-Encoding: 8bit\n"
|
||
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2\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 "NÁZEV"
|
||
|
||
#. 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 "SOUHRN"
|
||
|
||
#. 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 "POPIS"
|
||
|
||
#. 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 "VOLBY"
|
||
|
||
#. 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 ""
|
||
|
||
# auto translated by TM merge from project: SSSD, version: master, DocId:
|
||
# src/man/po/sssd-docs
|
||
#. 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 "VIZ TAKÉ"
|
||
|
||
#. 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 "VÝSTUP"
|
||
|
||
#. 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 "Na příklad:"
|
||
|
||
#. 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 ""
|
||
|
||
# auto translated by TM merge from project: virt-manager, version: master,
|
||
# DocId: virt-manager
|
||
#. type: =head2
|
||
#: docs/virt-v2v.pod:1020
|
||
msgid "Windows"
|
||
msgstr "Windows"
|
||
|
||
#. 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 ""
|
||
|
||
# auto translated by TM merge from project: Fedora Cheat Cubes, version:
|
||
# master, DocId: Fedora_Cheat_Cube_Users
|
||
#. type: =item
|
||
#: docs/virt-v2v.pod:1298
|
||
msgid "1"
|
||
msgstr "1"
|
||
|
||
#. type: textblock
|
||
#: docs/virt-v2v.pod:1300
|
||
msgid "Offline conversion."
|
||
msgstr ""
|
||
|
||
# auto translated by TM merge from project: Fedora Cheat Cubes, version:
|
||
# master, DocId: Fedora_Cheat_Cube_Users
|
||
#. type: =item
|
||
#: docs/virt-v2v.pod:1302
|
||
msgid "2"
|
||
msgstr "2"
|
||
|
||
#. 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 ""
|