.\" Automatically generated by Podwrapper::Man 1.44.2 (Pod::Simple 3.42) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "virt-v2v 1" .TH virt-v2v 1 "2021-11-24" "virt-v2v-1.44.2" "Virtualization Support" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "НАЗВА" .IX Header "НАЗВА" virt\-v2v \- перетворення гостьової системи для використання \s-1KVM\s0 .SH "КОРОТКИЙ ОПИС" .IX Header "КОРОТКИЙ ОПИС" .Vb 3 \& virt\-v2v [\-i mode] [other \-i* options] \& [\-o mode] [other \-o* options] \& [guest|filename] \& \& virt\-v2v \-\-in\-place \& [\-i mode] [other \-i* options] \& [guest|filename] .Ve .SH "ОПИС" .IX Header "ОПИС" Virt\-v2v converts a single guest from a foreign hypervisor to run on \s-1KVM.\s0 It can read Linux and Windows guests running on VMware, Xen, Hyper-V and some other hypervisors, and convert them to \s-1KVM\s0 managed by libvirt, OpenStack, oVirt, Red Hat Virtualisation (\s-1RHV\s0) or several other targets. It can modify the guest to make it bootable on \s-1KVM\s0 and install virtio drivers so it will run quickly. .PP Існує також супутня оболонка із назвою \fBvirt\-p2v\fR\|(1), яка постачається у форматі \s-1ISO,\s0 образу компакт\-диска або \s-1PXE,\s0 який можна завантажити на фізичних машинах із метою віртуалізації цих машин (фізична машина у віртуальну, або physical to virtual чи p2v). .SS "Input and Output" .IX Subsection "Input and Output" You normally run virt\-v2v with several \fI\-i*\fR options controlling the input mode and also several \fI\-o*\fR options controlling the output mode. In this sense, \*(L"input\*(R" refers to the source foreign hypervisor such as VMware, and \&\*(L"output\*(R" refers to the target KVM-based management system such as oVirt or OpenStack. .PP 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. .PP Virt\-v2v normally copies from the input to the output, called \*(L"copying mode\*(R". In this case the source guest is always left unchanged. In-place conversion (\fI\-\-in\-place\fR) only uses the \fI\-i*\fR options and modifies the source guest in-place. (See \*(L"In-place conversion\*(R" below.) .SS "Other virt\-v2v topics" .IX Subsection "Other virt-v2v topics" \&\fBvirt\-v2v\-support\fR\|(1) — Supported hypervisors, virtualization management systems, guests. .PP \&\fBvirt\-v2v\-input\-vmware\fR\|(1) — Input from VMware. .PP \&\fBvirt\-v2v\-input\-xen\fR\|(1) — Input from Xen. .PP \&\fBvirt\-v2v\-output\-local\fR\|(1) — Output to local files or local libvirt. .PP \&\fBvirt\-v2v\-output\-rhv\fR\|(1) — Output to oVirt or \s-1RHV.\s0 .PP \&\fBvirt\-v2v\-output\-openstack\fR\|(1) — Output to OpenStack. .PP \&\fBvirt\-v2v\-release\-notes\-1.42\fR\|(1) — Release notes for this release. .PP \&\fBvirt\-v2v\-copy\-to\-local\fR\|(1) — Deprecated tool to handle Xen guests using host block device storage. .SH "ПРИКЛАДИ" .IX Header "ПРИКЛАДИ" .SS "Перетворення з сервера vCenter VMware до локальної libvirt" .IX Subsection "Перетворення з сервера vCenter VMware до локальної libvirt" Нехай маємо сервер vCenter VMware із назвою \f(CW\*(C`vcenter.example.com\*(C'\fR, датацентр із назвою \f(CW\*(C`Datacenter\*(C'\fR і гіпервізор ESXi із назвою \f(CW\*(C`esxi\*(C'\fR. Нам потрібно перетворити гостьову систему із назвою \f(CW\*(C`vmware_guest\*(C'\fR так, щоб її можна було запустити локально під керуванням libvirt. .PP .Vb 1 \& virt\-v2v \-ic vpx://vcenter.example.com/Datacenter/esxi vmware_guest .Ve .PP У цьому випадку, найімовірніше, вам доведеться запускати virt\-v2v від імені користувача \f(CW\*(C`root\*(C'\fR, оскільки програмі буде потрібен обмін даними із фоновою службою libvirt системи і копіювання дисків гостьової системи до \&\fI/var/lib/libvirt/images\fR. .PP For more information see \fBvirt\-v2v\-input\-vmware\fR\|(1). .SS "Перетворення з VMware до RHV/oVirt" .IX Subsection "Перетворення з VMware до RHV/oVirt" This is the same as the previous example, except you want to send the guest to a \s-1RHV\s0 Data Domain using the \s-1RHV REST API.\s0 Guest network interface(s) are connected to the target network called \f(CW\*(C`ovirtmgmt\*(C'\fR. .PP .Vb 5 \& virt\-v2v \-ic vpx://vcenter.example.com/Datacenter/esxi vmware_guest \e \& \-o rhv\-upload \-oc https://ovirt\-engine.example.com/ovirt\-engine/api \e \& \-os ovirt\-data \-op /tmp/ovirt\-admin\-password \-of raw \e \& \-oo rhv\-cafile=/tmp/ca.pem \-oo rhv\-direct \e \& \-\-bridge ovirtmgmt .Ve .PP У цьому випадку основна система, де запущено virt\-v2v, працює як \fBсервер перетворення\fR. .PP For more information see \fBvirt\-v2v\-output\-rhv\fR\|(1). .SS "Перетворення з гіпервізору ESXi за допомогою \s-1SSH\s0 до локальної libvirt" .IX Subsection "Перетворення з гіпервізору ESXi за допомогою SSH до локальної libvirt" Нехай маємо гіпервізор ESXi із назвою \f(CW\*(C`esxi.example.com\*(C'\fR і уможливленим доступом за допомогою \s-1SSH.\s0 Потрібно перетворити його зі сховища \s-1VMFS\s0 на сервері до локального файла. .PP .Vb 4 \& virt\-v2v \e \& \-i vmx \-it ssh \e \& "ssh://root@esxi.example.com/vmfs/volumes/datastore1/guest/guest.vmx" \e \& \-o local \-os /var/tmp .Ve .PP Гостьову систему перед перетворенням має бути вимкнено. Потреби у запуску virt\-v2v від імені користувача root у цьому випадку \fIнемає\fR. .PP For more information about converting from \s-1VMX\s0 files see \&\fBvirt\-v2v\-input\-vmware\fR\|(1). .SS "Convert disk image to OpenStack" .IX Subsection "Convert disk image to OpenStack" 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 \s-1VM\s0 (called \f(CW\*(C`v2v\-vm\*(C'\fR below), and do: .PP .Vb 1 \& virt\-v2v \-i disk disk.img \-o openstack \-oo server\-id=v2v\-vm .Ve .PP See \fBvirt\-v2v\-output\-openstack\fR\|(1). .SS "Перетворення образу диска на образ диска" .IX Subsection "Перетворення образу диска на образ диска" Нехай маємо образ диска з іншого гіпервізору, який слід перетворити для запуску на \s-1KVM.\s0 Тоді можна піти одним зі двох шляхів. Найпростішим шляхом буде такий: .PP .Vb 1 \& virt\-v2v \-i disk диск.img \-o local \-os /var/tmp .Ve .PP де virt\-v2v має визначити усі параметри вхідного образу \fIdisk.img\fR і (у цьому випадку) записати перетворений результат до \fI/var/tmp\fR. .PP Складнішим способом є створення \s-1XML\s0 libvirt із описом вхідної гостьової системи (якщо можна якось отримати \s-1XML\s0 libvirt з початкового гіпервізора, все стає набагато простішим). Далі, можна зробити так: .PP .Vb 1 \& virt\-v2v \-i libvirtxml guest\-domain.xml \-o local \-os /var/tmp .Ve .PP Оскільки \fIguest\-domain.xml\fR містить шляхи до образів гостьової системи, вам не потрібно вказувати назву образу диска у рядку команди. .PP Щоб перетворити локальний образ диска і негайно завантажити його у локальному qemu, віддайте таку команду: .PP .Vb 1 \& virt\-v2v \-i disk disk.img \-o qemu \-os /var/tmp \-\-qemu\-boot .Ve .SH "ПАРАМЕТРИ" .IX Header "ПАРАМЕТРИ" .IP "\fB\-\-help\fR" 4 .IX Item "--help" Показати довідкове повідомлення. .IP "\fB\-\-bandwidth\fR bps" 4 .IX Item "--bandwidth bps" .PD 0 .IP "\fB\-\-bandwidth\-file\fR filename" 4 .IX Item "--bandwidth-file filename" .PD 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 \f(CW\*(C`10M\*(C'\fR may be used (meaning 10 megabits per second). .Sp 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. .Sp This is only supported for: .RS 4 .IP "\(bu" 4 input from Xen .IP "\(bu" 4 input from VMware \s-1VMX\s0 when using the \s-1SSH\s0 transport method .IP "\(bu" 4 input from \s-1VDDK\s0 .IP "\(bu" 4 \&\fI\-i libvirtxml\fR when using \s-1HTTP\s0 or \s-1HTTPS\s0 disks .IP "\(bu" 4 input from VMware vCenter server .RE .RS 4 .Sp The options are silently ignored for other input methods. .RE .IP "\fB\-b\fR ..." 4 .IX Item "-b ..." .PD 0 .IP "\fB\-\-bridge\fR ..." 4 .IX Item "--bridge ..." .PD Див. \fI\-\-network\fR нижче. .IP "\fB\-\-colors\fR" 4 .IX Item "--colors" .PD 0 .IP "\fB\-\-colours\fR" 4 .IX Item "--colours" .PD Використовувати послідовності символів \s-1ANSI\s0 для розфарбовування повідомлень. Ці послідовності типово використовуються, якщо дані виводяться на термінал tty. Якщо дані, виведені програмою, спрямовуються до файла, послідовності визначення кольорів \s-1ANSI\s0 буде вимкнено, якщо ви не додасте до команди цей параметр. .IP "\fB\-\-compressed\fR" 4 .IX Item "--compressed" Записати результати до стиснутого файла. Це можна зробити, лише якщо форматом виведення даних є qcow2 (див. \fI\-of\fR нижче). Є еквівалентом параметра \fI\-c\fR у \fBqemu\-img\fR\|(1). .IP "\fB\-\-debug\-overlays\fR" 4 .IX Item "--debug-overlays" Зберегти файли накладок, створені під час перетворення. Цей параметр використовується лише для діагностики virt\-v2v, його може бути вилучено у майбутніх версіях. .IP "\fB\-\-echo\-keys\fR" 4 .IX Item "--echo-keys" Типово, якщо virt\-v2v попросить вас ввести ключ або пароль, програма не відтворюватиме введені символи на екрані. Якщо ви не боїтеся TEMPEST\-нападів, або у вашій кімнаті нікого, окрім вас, немає, ви можете скористатися цим прапорцем, щоб бачити, які саме символи ви вводите. .Sp Зауважте, що цей параметр стосується лише ключів і паролів до зашифрованих пристроїв і розділів, а не паролів, які використовуються для встановлення з'єднання із віддаленими серверами. .IP "\fB\-i\fR \fBdisk\fR" 4 .IX Item "-i disk" Встановити метод введення \fIdisk\fR. .Sp У цьому режимі ви можете читати образ диска віртуальної машини без метаданих. virt\-v2v намагається визначити найкращі типові значення для метаданих. Ці значення, зазвичай, є адекватними, але ви можете додатково змінити їх (наприклад, змінити об'єм пам'яті або кількість віртуальних процесорів) за допомогою параметра \fI\-i libvirtxml\fR. У цей спосіб може бути імпортовано лише гостьові системи, які використовують лише один диск. .IP "\fB\-i\fR \fBlibvirt\fR" 4 .IX Item "-i libvirt" Встановити метод введення \fIlibvirt\fR. Цей метод є типовим. .Sp У цьому режимі вам слід вказати назву гостьової системи libvirt або \s-1UUID\s0 у рядку команди. Ви також можете вказати адресу з'єднання libvirt (див. \fI\-ic\fR). .IP "\fB\-i\fR \fBlibvirtxml\fR" 4 .IX Item "-i libvirtxml" Встановити метод введення \fIlibvirtxml\fR. .Sp In this mode you have to pass a libvirt \s-1XML\s0 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 \&\s-1XML\s0 for \-i libvirtxml option\*(R" below. .IP "\fB\-i\fR \fBlocal\fR" 4 .IX Item "-i local" Те саме, що і \fI\-i disk\fR. .IP "\fB\-i\fR \fBova\fR" 4 .IX Item "-i ova" Встановити метод введення \fIova\fR. .Sp 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 \&\fBvirt\-v2v\-input\-vmware\fR\|(1). .IP "\fB\-i\fR \fBvmx\fR" 4 .IX Item "-i vmx" Встановити метод введення \fIvmx\fR. .Sp In this mode you can read a VMware vmx file directly or over \s-1SSH.\s0 This is useful when VMware VMs are stored on an \s-1NFS\s0 server which you can mount directly, or where you have access by \s-1SSH\s0 to an ESXi hypervisor. See \&\fBvirt\-v2v\-input\-vmware\fR\|(1). .IP "\fB\-ic\fR адреса_libvirt" 4 .IX Item "-ic адреса_libvirt" Вказати адресу з'єднання libvirt, яким слід скористатися під час читання гостьової системи. Використовується, лише якщо \fI\-i libvirt\fR. .Sp Можна використовувати лише локальні з'єднання libvirt, з'єднання vCenter VMware або віддалені з'єднання Xen \s-1RHEL 5.\s0 Інші віддалені з'єднання libvirt, загалом, не працюватимуть. .Sp See also \fBvirt\-v2v\-input\-vmware\fR\|(1), \fBvirt\-v2v\-input\-xen\fR\|(1). .IP "\fB\-if\fR формат" 4 .IX Item "-if формат" Лише для \fI\-i disk\fR. Цей параметр вказує формат образу диска вхідних даних. Для інших варіантів вхідних даних вам слід вказати формат вхідних даних у метаданих. .IP "\fB\-\-in\-place\fR" 4 .IX Item "--in-place" Не створювати виведену віртуальну машину у гіпервізорі призначення. Замість цього, скоригувати гостьову операційну систему у початковій віртуальній машині для запуску у початковому гіпервізорі. .Sp Цей режим призначено для інтеграції із іншими наборами інструментів, які відповідають за перетворення налаштувань віртуальної машини, забезпечення повернення до початкового стану, якщо стануться помилки, перетворення сховища даних тощо. .Sp See \*(L"In-place conversion\*(R" below. .Sp Конфліктує з усіма параметрами \fI\-o *\fR. .IP "\fB\-io\fR OPTION=VALUE" 4 .IX Item "-io OPTION=VALUE" Set input option(s) related to the current input mode or transport. To display short help on what options are available you can use: .Sp .Vb 1 \& virt\-v2v \-it vddk \-io "?" .Ve .IP "\fB\-io vddk\-libdir=\fR\s-1LIBDIR\s0" 4 .IX Item "-io vddk-libdir=LIBDIR" Встановити каталог бібліотеки \s-1VDDK.\s0 У цьому каталозі мають \fIміститися\fR підкаталоги із назвами \fIinclude\fR, \fIlib64\fR тощо, але у аргументі параметра не повинно бути самої частини назви каталогу \fIlib64\fR. .Sp In most cases this parameter is required when using the \fI\-it vddk\fR (\s-1VDDK\s0) transport. See \fBvirt\-v2v\-input\-vmware\fR\|(1) for details. .IP "\fB\-io vddk\-thumbprint=\fRxx:xx:xx:..." 4 .IX Item "-io vddk-thumbprint=xx:xx:xx:..." Встановити відбиток віддаленого сервера VMware. .Sp This parameter is required when using the \fI\-it vddk\fR (\s-1VDDK\s0) transport. See \&\fBvirt\-v2v\-input\-vmware\fR\|(1) for details. .IP "\fB\-io vddk\-config=\fR\s-1FILENAME\s0" 4 .IX Item "-io vddk-config=FILENAME" .PD 0 .IP "\fB\-io vddk\-cookie=\fR\s-1COOKIE\s0" 4 .IX Item "-io vddk-cookie=COOKIE" .IP "\fB\-io vddk\-nfchostport=\fR\s-1PORT\s0" 4 .IX Item "-io vddk-nfchostport=PORT" .IP "\fB\-io vddk\-port=\fR\s-1PORT\s0" 4 .IX Item "-io vddk-port=PORT" .IP "\fB\-io vddk\-snapshot=\fRSNAPSHOT-MOREF" 4 .IX Item "-io vddk-snapshot=SNAPSHOT-MOREF" .IP "\fB\-io vddk\-transports=\fR\s-1MODE:MODE:...\s0" 4 .IX Item "-io vddk-transports=MODE:MODE:..." .PD When using \s-1VDDK\s0 mode, these options are passed unmodified to the \&\fBnbdkit\fR\|(1) \s-1VDDK\s0 plugin. Please refer to \fBnbdkit\-vddk\-plugin\fR\|(1). Do not use these options unless you know what you are doing. These are all optional. .IP "\fB\-ip\fR filename" 4 .IX Item "-ip filename" 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, \&\fBwithout any trailing newline\fR, and for security the file should have mode \&\f(CW0600\fR so that others cannot read it. .IP "\fB\-it\fR \fBssh\fR" 4 .IX Item "-it ssh" When using \fI\-i vmx\fR, this enables the ssh transport. See \&\fBvirt\-v2v\-input\-vmware\fR\|(1). .IP "\fB\-it\fR \fBvddk\fR" 4 .IX Item "-it vddk" Use VMware \s-1VDDK\s0 as a transport to copy the input disks. See \&\fBvirt\-v2v\-input\-vmware\fR\|(1). If you use this parameter then you may need to use other \fI\-io vddk*\fR options to specify how to connect through \s-1VDDK.\s0 .IP "\fB\-\-key\fR \s-1SELECTOR\s0" 4 .IX Item "--key SELECTOR" Specify a key for \s-1LUKS,\s0 to automatically open a \s-1LUKS\s0 device when using the inspection. \f(CW\*(C`ID\*(C'\fR can be either the libguestfs device name, or the \s-1UUID\s0 of the \s-1LUKS\s0 device. .RS 4 .ie n .IP "\fB\-\-key\fR ""ID"":key:KEY_STRING" 4 .el .IP "\fB\-\-key\fR \f(CWID\fR:key:KEY_STRING" 4 .IX Item "--key ID:key:KEY_STRING" Use the specified \f(CW\*(C`KEY_STRING\*(C'\fR as passphrase. .ie n .IP "\fB\-\-key\fR ""ID"":file:FILENAME" 4 .el .IP "\fB\-\-key\fR \f(CWID\fR:file:FILENAME" 4 .IX Item "--key ID:file:FILENAME" Read the passphrase from \fI\s-1FILENAME\s0\fR. .RE .RS 4 .RE .IP "\fB\-\-keys\-from\-stdin\fR" 4 .IX Item "--keys-from-stdin" Прочитати параметри ключа або пароля із джерела стандартного введення. Типово програма намагається читати паролі від користувача відкриттям \fI/dev/tty\fR. .Sp If there are multiple encrypted devices then you may need to supply multiple keys on stdin, one per line. .Sp Note \fI\-\-keys\-from\-stdin\fR only applies to keys and passphrases for encrypted devices and partitions, not for passwords used to connect to remote servers. .IP "\fB\-\-mac\fR aa:bb:cc:dd:ee:ff\fB:network:\fRout" 4 .IX Item "--mac aa:bb:cc:dd:ee:ff:network:out" .PD 0 .IP "\fB\-\-mac\fR aa:bb:cc:dd:ee:ff\fB:bridge:\fRout" 4 .IX Item "--mac aa:bb:cc:dd:ee:ff:bridge:out" .PD Map source \s-1NIC MAC\s0 address to a network or bridge. .Sp See \*(L"Networks and bridges\*(R" below. .IP "\fB\-\-mac\fR aa:bb:cc:dd:ee:ff\fB:ip:\fRipaddr[,gw[,len[,ns,ns,...]]]" 4 .IX Item "--mac aa:bb:cc:dd:ee:ff:ip:ipaddr[,gw[,len[,ns,ns,...]]]" Force a particular interface (controlled by its \s-1MAC\s0 address) to have a static \s-1IP\s0 address after boot. .Sp The fields in the parameter are: \f(CW\*(C`ipaddr\*(C'\fR is the \s-1IP\s0 address. \f(CW\*(C`gw\*(C'\fR is the optional gateway \s-1IP\s0 address. \f(CW\*(C`len\*(C'\fR is the subnet mask length (an integer). The final parameters are zero or more nameserver \s-1IP\s0 addresses. .Sp This option can be supplied zero or more times. .Sp You only need to use this option for certain broken guests such as Windows which are unable to preserve \s-1MAC\s0 to static \s-1IP\s0 address mappings automatically. You don't need to use it if Windows is using \s-1DHCP.\s0 It is currently ignored for Linux guests since they do not have this problem. .IP "\fB\-\-machine\-readable\fR" 4 .IX Item "--machine-readable" .PD 0 .IP "\fB\-\-machine\-readable\fR=format" 4 .IX Item "--machine-readable=format" .PD This option is used to make the output more machine friendly when being parsed by other programs. See \*(L"Machine readable output\*(R" below. .IP "\fB\-n\fR вхід:вихід" 4 .IX Item "-n вхід:вихід" .PD 0 .IP "\fB\-n\fR вихід" 4 .IX Item "-n вихід" .IP "\fB\-\-network\fR вхід:вихід" 4 .IX Item "--network вхід:вихід" .IP "\fB\-\-network\fR вихід" 4 .IX Item "--network вихід" .IP "\fB\-b\fR вхід:вихід" 4 .IX Item "-b вхід:вихід" .IP "\fB\-b\fR вихід" 4 .IX Item "-b вихід" .IP "\fB\-\-bridge\fR вхід:вихід" 4 .IX Item "--bridge вхід:вихід" .IP "\fB\-\-bridge\fR вихід" 4 .IX Item "--bridge вихід" .PD Пов'язати мережу (або місток) із назвою \f(CW\*(C`вхід\*(C'\fR із мережею (або містком) із назвою \f(CW\*(C`вихід\*(C'\fR. Якщо не вказано префікс \f(CW\*(C`вхід:\*(C'\fR, із \f(CW\*(C`вихід\*(C'\fR буде пов'язано усі інші мережі (або містки). .Sp See \*(L"Networks and bridges\*(R" below. .IP "\fB\-\-no\-copy\fR" 4 .IX Item "--no-copy" Не копіювати диски. Замість цього, буде виконано перетворення (а його результати буде відкинуто) і записано метадані, але диски не буде створено. Див. також обговорення щодо \fI\-o null\fR нижче. .Sp Цей параметр корисний у двох випадках: вам потрібно перевірити, чи завершиться перетворення успіхом без довгого процесу копіювання або ви хочете просто подивитися на метадані. .Sp Цей параметр несумісний із \fI\-o libvirt\fR, оскільки їх поєднання створити помилкову гостьову систему (систему без дисків). .Sp Цей параметр несумісний із \fI\-o glance\fR з технічних причин. .IP "\fB\-o\fR \fBdisk\fR" 4 .IX Item "-o disk" Те саме, що і \fI\-o local\fR. .IP "\fB\-o\fR \fBglance\fR" 4 .IX Item "-o glance" This is a legacy option. You should probably use \fI\-o openstack\fR instead. .Sp Set the output method to OpenStack Glance. In this mode the converted guest is uploaded to Glance. See \fBvirt\-v2v\-output\-openstack\fR\|(1). .IP "\fB\-o\fR \fBjson\fR" 4 .IX Item "-o json" Set the output method to \fIjson\fR. .Sp In this mode, the converted guest is written to a local directory specified by \fI\-os /dir\fR (the directory must exist), with a \s-1JSON\s0 file containing the majority of the metadata that virt\-v2v gathered during the conversion. .Sp See \fBvirt\-v2v\-output\-local\fR\|(1). .IP "\fB\-o\fR \fBlibvirt\fR" 4 .IX Item "-o libvirt" Встановити метод виведення \fIlibvirt\fR. Цей метод є типовим. .Sp У цьому режимі перетворену гостьову систему буде створено як гостьову систему libvirt. Ви також можете вказати адресу з'єднання libvirt (див. \fI\-oc\fR). .Sp See \fBvirt\-v2v\-output\-local\fR\|(1). .IP "\fB\-o\fR \fBlocal\fR" 4 .IX Item "-o local" Встановити метод виведення до \fIlocal\fR. .Sp У цьому режимі перетворену гостьову систему буде записано до локального каталогу, вказаного за допомогою параметра \fI\-os /каталог\fR (каталог має існувати). Перетворені диски гостьової системи буде записано так: .Sp .Vb 3 \& /каталог/назва\-sda \& /каталог/назва\-sdb \& [тощо] .Ve .Sp Також буде створено файл \s-1XML\s0 libvirt із метаданими гостьової системи: .Sp .Vb 1 \& /каталог/назва.xml .Ve .Sp де \f(CW\*(C`назва\*(C'\fR — назва гостьової системи. .IP "\fB\-o\fR \fBnull\fR" 4 .IX Item "-o null" Встановити метод виведення до \fInull\fR. .Sp Гостьову систему буде перетворено і скопійовано (якщо ви не вкажете ще і \&\fI\-\-no\-copy\fR), але результати буде викинуто, метадані не записуватимуться. .IP "\fB\-o\fR \fBopenstack\fR" 4 .IX Item "-o openstack" Set the output method to OpenStack. See \fBvirt\-v2v\-output\-openstack\fR\|(1). .IP "\fB\-o\fR \fBovirt\fR" 4 .IX Item "-o ovirt" Те саме, що і \fI\-o rhv\fR. .IP "\fB\-o\fR \fBovirt-upload\fR" 4 .IX Item "-o ovirt-upload" This is the same as \fI\-o rhv-upload\fR. .IP "\fB\-o\fR \fBqemu\fR" 4 .IX Item "-o qemu" Встановити метод виведення до \fIqemu\fR. .Sp Дія параметра подібна до \fI\-o local\fR, але при виконанні команди програма записує скрипт командної оболонки, яким можна скористатися для завантаження гостьової системи у qemu. Перетворені диски і скрипт оболонки буде записано до каталогу, вказаного за допомогою параметра \fI\-os\fR. .Sp Якщо ви використовуєте цей режим виведення, ви також можете вказати параметр \&\fI\-\-qemu\-boot\fR, який завантажує гостьову систему у qemu негайно. .IP "\fB\-o\fR \fBrhev\fR" 4 .IX Item "-o rhev" Те саме, що і \fI\-o rhv\fR. .IP "\fB\-o\fR \fBrhv\fR" 4 .IX Item "-o rhv" Встановити метод виведення до \fIrhv\fR. .Sp Перетворену гостьову систему буде записано до домену сховища експортування \&\s-1RHV.\s0 Слід також вказати параметр \fI\-os\fR для визначення розташування домену сховища експортування. Зауважте, що використання цього параметр не імпортує гостьову систему до \s-1RHV.\s0 Вам доведеться зробити це пізніше за допомогою інтерфейсу сховища. .Sp See \fBvirt\-v2v\-output\-rhv\fR\|(1). .IP "\fB\-o\fR \fBrhv-upload\fR" 4 .IX Item "-o rhv-upload" Set the output method to \fIrhv-upload\fR. .Sp The converted guest is written directly to a \s-1RHV\s0 Data Domain. This is a faster method than \fI\-o rhv\fR, but requires oVirt or \s-1RHV\s0 ≥ 4.2. .Sp See \fBvirt\-v2v\-output\-rhv\fR\|(1). .IP "\fB\-o\fR \fBvdsm\fR" 4 .IX Item "-o vdsm" Встановити метод виведення до \fIvdsm\fR. .Sp Цей режим подібний до \fI\-o rhv\fR, але тут треба вказувати повний шлях до домену даних: \&\fI/rhv/data\-center//\fR. Цей режим використовується, лише якщо virt\-v2v запущено під керуванням \s-1VDSM.\s0 .IP "\fB\-oa\fR \fBsparse\fR" 4 .IX Item "-oa sparse" .PD 0 .IP "\fB\-oa\fR \fBpreallocated\fR" 4 .IX Item "-oa preallocated" .PD Встановити режим розміщення виведеного файла. Типовим режимом є \f(CW\*(C`sparse\*(C'\fR (розріджений файл). .IP "\fB\-oc\fR \s-1URI\s0" 4 .IX Item "-oc URI" Specify a connection \s-1URI\s0 to use when writing the converted guest. .Sp For \fI\-o libvirt\fR this is the libvirt \s-1URI.\s0 Only local libvirt connections can be used. Remote libvirt connections will not work. See \&\fBvirt\-v2v\-output\-local\fR\|(1) for further information. .IP "\fB\-of\fR формат" 4 .IX Item "-of формат" Під час перетворення гостьової системи перетворити диски до вказаного формату. .Sp Якщо не вказано, буде використано формат вхідних даних. .IP "\fB\-on\fR назва" 4 .IX Item "-on назва" Перейменувати гостьову систему під час перетворення. Якщо цей параметр не використано, назва виведеного результату буде тією самою, що і назва вхідної системи. .IP "\fB\-oo\fR OPTION=VALUE" 4 .IX Item "-oo OPTION=VALUE" Set output option(s) related to the current output mode. To display short help on what options are available you can use: .Sp .Vb 1 \& virt\-v2v \-o rhv\-upload \-oo "?" .Ve .ie n .IP "\fB\-oo guest\-id=\fR""ID""" 4 .el .IP "\fB\-oo guest\-id=\fR\f(CWID\fR" 4 .IX Item "-oo guest-id=ID" For \fI\-o openstack\fR (\fBvirt\-v2v\-output\-openstack\fR\|(1)) only, set a guest \s-1ID\s0 which is saved on each Cinder volume in the \f(CW\*(C`virt_v2v_guest_id\*(C'\fR volume property. .IP "\fB\-oo verify-server-certificate\fR" 4 .IX Item "-oo verify-server-certificate" .PD 0 .ie n .IP "\fB\-oo verify\-server\-certificate=\fR""true|false""" 4 .el .IP "\fB\-oo verify\-server\-certificate=\fR\f(CWtrue|false\fR" 4 .IX Item "-oo verify-server-certificate=true|false" .PD For \fI\-o openstack\fR (\fBvirt\-v2v\-output\-openstack\fR\|(1)) only, this can be used to disable \s-1SSL\s0 certification validation when connecting to OpenStack by specifying \fI\-oo verify\-server\-certificate=false\fR. .IP "\fB\-oo os\-\fR*\fB=\fR*" 4 .IX Item "-oo os-*=*" For \fI\-o openstack\fR (\fBvirt\-v2v\-output\-openstack\fR\|(1)) only, set optional OpenStack authentication. For example \fI\-oo os\-username=\fR\s-1NAME\s0 is equivalent to \f(CW\*(C`openstack \-\-os\-username=NAME\*(C'\fR. .IP "\fB\-oo rhv\-cafile=\fR\fIca.pem\fR" 4 .IX Item "-oo rhv-cafile=ca.pem" For \fI\-o rhv-upload\fR (\fBvirt\-v2v\-output\-rhv\fR\|(1)) only, the \fIca.pem\fR file (Certificate Authority), copied from \fI/etc/pki/ovirt\-engine/ca.pem\fR on the oVirt engine. .ie n .IP "\fB\-oo rhv\-cluster=\fR""CLUSTERNAME""" 4 .el .IP "\fB\-oo rhv\-cluster=\fR\f(CWCLUSTERNAME\fR" 4 .IX Item "-oo rhv-cluster=CLUSTERNAME" For \fI\-o rhv-upload\fR (\fBvirt\-v2v\-output\-rhv\fR\|(1)) only, set the \s-1RHV\s0 Cluster Name. If not given it uses \f(CW\*(C`Default\*(C'\fR. .IP "\fB\-oo rhv-direct\fR" 4 .IX Item "-oo rhv-direct" For \fI\-o rhv-upload\fR (\fBvirt\-v2v\-output\-rhv\fR\|(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. .IP "\fB\-oo rhv-verifypeer\fR" 4 .IX Item "-oo rhv-verifypeer" For \fI\-o rhv-upload\fR (\fBvirt\-v2v\-output\-rhv\fR\|(1)) only, verify the oVirt/RHV server’s identity by checking the server‘s certificate against the Certificate Authority. .ie n .IP "\fB\-oo server\-id=\fR""NAME|UUID""" 4 .el .IP "\fB\-oo server\-id=\fR\f(CWNAME|UUID\fR" 4 .IX Item "-oo server-id=NAME|UUID" For \fI\-o openstack\fR (\fBvirt\-v2v\-output\-openstack\fR\|(1)) only, set the name of the conversion appliance where virt\-v2v is running. .IP "\fB\-oo vdsm\-compat=0.10\fR" 4 .IX Item "-oo vdsm-compat=0.10" .PD 0 .IP "\fB\-oo vdsm\-compat=1.1\fR" 4 .IX Item "-oo vdsm-compat=1.1" .PD Якщо вказано \fI\-o vdsm\fR і форматом виведення даних є qcow2, ми додаємо параметр qcow2 \fIcompat=0.10\fR до файла виведених даних для сумісності із \&\s-1RHEL 6\s0 (див. https://bugzilla.redhat.com/1145582). .Sp If \fI\-oo vdsm\-compat=1.1\fR is used then modern qcow2 (\fIcompat=1.1\fR) files are generated instead. .Sp Currently \fI\-oo vdsm\-compat=0.10\fR is the default, but this will change to \&\fI\-oo vdsm\-compat=1.1\fR in a future version of virt\-v2v (when we can assume that everyone is using a modern version of qemu). .Sp \&\fBЗауважте, що цей параметр стосується лише даних, виведених при використанні \f(BI\-o vdsm\fB\fR. В усіх інших режимах виведення (зокрема, при використанні \fI\-o rhv\fR) завжди створюватимуться файли сучасної версії qcow2, \&\fIcompat=1.1\fR. .Sp Якщо доступний цей параметр, \f(CW\*(C`vdsm\-compat\-option\*(C'\fR буде представлено у форматі виведення \fI\-\-machine\-readable\fR. .IP "\fB\-oo vdsm\-image\-uuid=\fR\s-1UUID\s0" 4 .IX Item "-oo vdsm-image-uuid=UUID" .PD 0 .IP "\fB\-oo vdsm\-vol\-uuid=\fR\s-1UUID\s0" 4 .IX Item "-oo vdsm-vol-uuid=UUID" .IP "\fB\-oo vdsm\-vm\-uuid=\fR\s-1UUID\s0" 4 .IX Item "-oo vdsm-vm-uuid=UUID" .IP "\fB\-oo vdsm\-ovf\-output=\fR\s-1DIR\s0" 4 .IX Item "-oo vdsm-ovf-output=DIR" .PD Зазвичай, при використанні режиму виведення \s-1RHV\s0 програма вибирає псевдовипадкові значення \s-1UUID\s0 для гостьової системи призначення. Втім, \s-1VDSM\s0 потребує керування \s-1UUID\s0 і передає значення цих параметрів, якщо virt\-v2v працює під керуванням \s-1VDSM.\s0 Параметри керують такими значеннями: .RS 4 .IP "\(bu" 4 the image directory of each guest disk (\fI\-oo vdsm-image-uuid\fR) (this option is passed once for each guest disk) .IP "\(bu" 4 UUIDs for each guest disk (\fI\-oo vdsm-vol-uuid\fR) (this option is passed once for each guest disk) .IP "\(bu" 4 the \s-1OVF\s0 file name (\fI\-oo vdsm-vm-uuid\fR). .IP "\(bu" 4 the \s-1OVF\s0 output directory (default current directory) (\fI\-oo vdsm-ovf-output\fR). .RE .RS 4 .Sp Формат запису \s-1UUID:\s0 \f(CW\*(C`12345678\-1234\-1234\-1234\-123456789abc\*(C'\fR (кожна шістнадцяткова цифра може приймати значення \f(CW\*(C`0\-9\*(C'\fR або \f(CW\*(C`a\-f\*(C'\fR), відповідно до \s-1OSF DCE 1.1.\s0 .Sp Ці параметри можна використовувати лише з \fI\-o vdsm\fR. .RE .IP "\fB\-oo vdsm\-ovf\-flavour=\fRflavour" 4 .IX Item "-oo vdsm-ovf-flavour=flavour" This option controls the format of the \s-1OVF\s0 generated at the end of conversion. Currently there are two possible flavours: .RS 4 .IP "rhvexp" 4 .IX Item "rhvexp" The \s-1OVF\s0 format used in \s-1RHV\s0 export storage domain. .IP "ovirt" 4 .IX Item "ovirt" The \s-1OVF\s0 format understood by oVirt \s-1REST API.\s0 .RE .RS 4 .Sp For backward compatibility the default is \fIrhvexp\fR, but this may change in the future. .RE .IP "\fB\-op\fR file" 4 .IX Item "-op file" Supply a file containing a password to be used when connecting to the target hypervisor. Note the file should contain the whole password, \fBwithout any trailing newline\fR, and for security the file should have mode \f(CW0600\fR so that others cannot read it. .IP "\fB\-os\fR сховище" 4 .IX Item "-os сховище" Розташування сховища даних для перетвореної гостьової системи. .Sp Для \fI\-o libvirt\fR цей параметр визначає каталог буфера libvirt (див. \f(CW\*(C`virsh pool\-list\*(C'\fR) або \s-1UUID\s0 буфера. .Sp For \fI\-o json\fR, \fI\-o local\fR and \fI\-o qemu\fR, this is a directory name. The directory must exist. .Sp For \fI\-o rhv-upload\fR, this is the name of the destination Storage Domain. .Sp For \fI\-o openstack\fR, this is the optional Cinder volume type. .Sp Для \fI\-o rhv\fR це може бути шлях \s-1NFS\s0 домену сховища експортування (Export Storage Domain) у форматі \f(CW\*(C`<вузол>:<шлях>\*(C'\fR. Приклад: .Sp .Vb 1 \& rhv\-storage.example.com:/rhv/export .Ve .Sp Місце експортування \s-1NFS\s0 має бути придатним до монтування та доступним для запису користувачем та вузлом, де запущено virt\-v2v, оскільки програмі virt\-v2v потрібно буде його змонтувати під час роботи. Отже, ймовірно, вам доведеться запустити virt\-v2v від імені користувача \f(CW\*(C`root\*(C'\fR. .Sp \&\fBАльтернативний варіант:\fR ви можете змонтувати домен сховища експортування власноруч і вказати його точку монтування за допомогою \fI\-os\fR. Зауважте, що virt\-v2v все ще потрібно буде вести запис до цього віддаленого каталогу, тому virt\-v2v все одно доведеться запускати від імені \f(CW\*(C`root\*(C'\fR. .Sp Вам буде повідомлено про помилку, якщо virt\-v2v не вдасться змонтувати домен сховища експортування або здійснити до нього запис. .IP "\fB\-\-print\-estimate\fR" 4 .IX Item "--print-estimate" 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: .Sp .Vb 5 \& $ virt\-v2v \-\-print\-estimate \& ... \& disk 1: 100000 \& disk 2: 200000 \& total: 300000 .Ve .Sp With the \fI\-\-machine\-readable\fR option you get \s-1JSON\s0 output which can be directed into a file or elsewhere: .Sp .Vb 7 \& $ virt\-v2v \-\-print\-estimate \-\-machine\-readable=file:estimates \& ... \& $ cat estimates \& { \& "disks": [ 100000, 200000 ], \& "total": 300000 \& } .Ve .Sp 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 \fI\-o null\fR should be safe for most purposes. .Sp When this option is used along with \fI\-\-machine\-readable\fR you can direct the output to an alternate file. .IP "\fB\-\-print\-source\fR" 4 .IX Item "--print-source" 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\*(R". .IP "\fB\-\-qemu\-boot\fR" 4 .IX Item "--qemu-boot" Лише якщо використовується \fI\-o qemu\fR, негайно завантажує гостьову систему після завершення роботи virt\-v2v. .IP "\fB\-q\fR" 4 .IX Item "-q" .PD 0 .IP "\fB\-\-quiet\fR" 4 .IX Item "--quiet" .PD Цей параметр вимикає смужки поступу та інші необов'язкові до виведення дані. .IP "\fB\-\-root ask\fR" 4 .IX Item "--root ask" .PD 0 .IP "\fB\-\-root single\fR" 4 .IX Item "--root single" .IP "\fB\-\-root first\fR" 4 .IX Item "--root first" .IP "\fB\-\-root\fR /dev/sdX" 4 .IX Item "--root /dev/sdX" .IP "\fB\-\-root\fR /dev/VG/LV" 4 .IX Item "--root /dev/VG/LV" .PD Вибрати кореневу файлову систему для перетворення. .Sp Якщо у віртуальній машині передбачено декілька варіантів завантаження або у віртуальній машині є сторонні файлові системи, які виглядають як розділи операційних систем, за допомогою цього параметра можна вибрати кореневу файлову систему (тобто диск \f(CW\*(C`C:\*(C'\fR або \fI/\fR) операційної системи, яку слід перетворити. Використання консолі відновлення Windows, деякі долучені диски \&\s-1DVD\s0 та вади у евристиці засобу інспектування libguestfs можуть призвести до помилкового визначення гостьової операційної системи як такої, у якій передбачено варіанти завантаження. .Sp Типовим варіантом у virt\-v2v ≤ 0.7.1 був параметр \fI\-\-root single\fR, який спричиняв аварійне завершення virt\-v2v, якщо виявлялася операційна система із варіантами завантаження. .Sp Починаючи з версії virt\-v2v ≥ 0.7.2 типовим режимом є \fI\-\-root ask\fR: якщо буде виявлено варіанти завантаження у віртуальній машині, virt\-v2v припинить роботу, виведе список усіх можливих кореневих файлових системи і попросить користувача вказати ту, яку слід перетворити. Це потребує роботи virt\-v2v у інтерактивному режимі. .Sp \&\fI\-\-root first\fR означає, що слід вибрати перший кореневий пристрій, якщо буде виявлено операційну систему із варіантами завантаження. Оскільки виявлення кореневих пристроїв пов'язано із евристикою, іноді програма може вибрати помилковий пристрій. .Sp Ви також можете вказати певний кореневий пристрій за назвою, наприклад, \&\fI\-\-root /dev/sda2\fR означає, що слід використати другий розділ на першому диску. Якщо іменованого кореневого пристрою не існує або його не вдасться визначити як кореневий пристрій, virt\-v2v повідомить про помилку і завершить роботу. .Sp Зауважте, що у grub є вада, яка заважає успішно завантажувати систему із варіантами завантаження, якщо увімкнено virtio. Grub може завантажувати лише операційні системи з першого диска virtio. Зокрема, \fI/boot\fR має бути першим диском virtio, і grub не може ланцюгово завантажувати операційну систему, яка не зберігається на першому диску virtio. .IP "\fB\-v\fR" 4 .IX Item "-v" .PD 0 .IP "\fB\-\-verbose\fR" 4 .IX Item "--verbose" .PD Увімкнути докладний показ повідомлень з метою діагностики. .IP "\fB\-V\fR" 4 .IX Item "-V" .PD 0 .IP "\fB\-\-version\fR" 4 .IX Item "--version" .PD Показати дані щодо версії і завершити роботу. .IP "\fB\-x\fR" 4 .IX Item "-x" Увімкнути трасування викликів програмного інтерфейсу libguestfs. .SH "ПРИМІТКИ" .IX Header "ПРИМІТКИ" .SS "Xen paravirtualized guests" .IX Subsection "Xen paravirtualized guests" У застарілих версіях virt\-v2v можна було перетворити паравіртуалізовану гостьову систему Xen на гостьову систему \s-1KVM\s0 встановленням нового ядра. Ця версія virt\-v2v \fIне\fR намагатиметься встановити будь\-яке нове ядро. Замість цього, вона повідомить вам про помилку, якщо доступними виявляться \fIлише\fR паравіртуалізовані ядра Xen. .PP Тому, перш ніж виконувати перетворення, вам слід перевірити, чи встановлено у системі звичайне ядро. Для деяких застарілих дистрибутивів Linux це означає, що має бути встановлено ядро із наведеної нижче таблиці: .PP .Vb 1 \& RHEL 3 (Неможливо визначити, не було ядра PV Xen) \& \& RHEL 4 i686 з > 10 ГБ пам\*(Aqяті: встановіть «kernel\-hugemem» \& i686 SMP: встановіть «kernel\-smp» \& інші i686: встановіть «kernel» \& x86\-64 SMP з > 8 процесорів: встановіть «kernel\-largesmp» \& x86\-64 SMP: встановіть «kernel\-smp» \& інші x86\-64: встановіть «kernel» \& \& RHEL 5 i686: встановіть «kernel\-PAE» \& x86\-64: встановіть «kernel» \& \& SLES 10 i586 з > 10 ГБ оперативної пам\*(Aqяті: встановіть «kernel\-bigsmp» \& i586 SMP: встановіть «kernel\-smp» \& інша i586: встановіть «kernel\-default» \& x86\-64 SMP: встановіть «kernel\-smp» \& other x86\-64: встановіть «kernel\-default» \& \& SLES 11+ i586: встановіть «kernel\-pae» \& x86\-64: встановіть «kernel\-default» \& \& Windows (Неможливо визначити, не існує ядер Windows для PV Xen) .Ve .SS "Enabling virtio" .IX Subsection "Enabling virtio" «Virtio» — назва набору драйверів, які значно пришвидшують роботу диска (блокового пристрою), мережі та інших дій у гостьовій системі у \s-1KVM.\s0 .PP У застарілих версіях virt\-v2v можна було встановити ці драйвери для певних гостьових систем Linux. Ця версія virt\-v2v \fIне\fR намагатиметься встановити нові ядра Linux або драйвери, але попередить вас, якщо їх ще не встановлено. .PP Щоб увімкнути virtio і поліпшити швидкодію гостьової системи після перетворення, вам слід переконатися, що у системі встановлено \fBпринаймні\fR вказані у наведеній нижче таблиці версії пакунків ще \fIдо\fR перетворення. .PP .Vb 1 \& RHEL 3 Немає доступних драйверів virtio \& \& RHEL 4 ядро >= 2.5.9\-89.EL \& lvm2 >= 2.02.42\-5.el4 \& device\-mapper >= 1.02.28\-2.el4 \& selinux\-policy\-targeted >= 1.17.30\-2.152.el4 \& policycoreutils >= 1.18.1\-4.13 \& \& RHEL 5 ядро >= 2.6.18\-128.el5 \& lvm2 >= 2.02.40\-6.el5 \& selinux\-policy\-targeted >= 2.4.6\-203.el5 \& \& RHEL 6+ усі версії підтримують virtio \& \& Fedora усі версії підтримують virtio \& \& SLES 11+ усі версії підтримують virtio \& \& SLES 10 ядро >= 2.6.16.60\-0.85.1 \& \& OpenSUSE 11+ усі версії підтримують virtio \& \& OpenSUSE 10 ядро >= 2.6.25.5\-1.1 \& \& Debian 6+ Підтримку virtio передбачено в усіх версіях \& \& Ubuntu 10.04+ — підтримку virtio передбачено в усіх версіях \& \& Windows драйвери встановлюються з ISO або каталогу, на який \& вказує змінна середовища VIRTIO_WIN, якщо її встановлено .Ve .SS "\s-1RHEL 4:\s0 SELinux relabel appears to hang forever" .IX Subsection "RHEL 4: SELinux relabel appears to hang forever" У \s-1RHEL\s0 ≤ 4.7 була вада, яка спричиняла до того, що повторне встановлення міток SELinux «зависало» на такому повідомленні: .PP .Vb 4 \& *** Warning \-\- SELinux relabel is required. *** \& *** Disabling security enforcement. *** \& *** Relabeling could take a very long time, *** \& *** depending on file system size. *** .Ve .PP Насправді, система очікувала від вас натискання клавіші (але ніяк візуально про це не повідомляла). Ви можете або натиснути клавішу \f(CW\*(C`[Return]\*(C'\fR, у результаті чого гостьова система завершить повторне встановлення міток і перезавантажиться, або можете встановити policycoreutils ≥ 1.18.1\-4.13 до запуску перетворення v2v. Див. також https://bugzilla.redhat.com/show_bug.cgi?id=244636 .SS "Debian і Ubuntu" .IX Subsection "Debian і Ubuntu" \fI\*(L"попередження: не вдалося визначити спосіб оновлення налаштувань Grub2\*(R"\fR .IX Subsection "попередження: не вдалося визначити спосіб оновлення налаштувань Grub2" .PP У поточній версії virt\-v2v не передбачено способу визначити типове ядро у гостьових системах Debian та Ubuntu, які використовують завантажувач \s-1GRUB 2.\s0 Це означає, що virt\-v2v не змінюватиме типового ядра для завантаження, навіть якщо це не краще ядро, яке доступне у гостьовій системі. Рекомендуємо, перш ніж користуватися virt\-v2v, зробити так, щоб типове ядро для завантаження було найкращим з доступних у гостьовій системі ядер (наприклад, просто оновивши гостьову систему до найсвіжішої версії). .PP \fI\*(L"vsyscall attempted with vsyscall=none\*(R"\fR .IX Subsection "vsyscall attempted with vsyscall=none" .PP 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: .PP .Vb 2 \& vsyscall attempted with vsyscall=none ip:... \& segfault at ... .Ve .PP This is caused because Debian removed support for running old binaries which used the legacy vsyscall page to call into the kernel. .PP You can work around this problem by running this command before running virt\-v2v: .PP .Vb 1 \& export LIBGUESTFS_APPEND="vsyscall=emulate" .Ve .PP For more information, see https://bugzilla.redhat.com/1592061 .SS "Windows" .IX Subsection "Windows" \fIШвидкий запуск у Windows ≥ 8 є несумісним із virt\-v2v\fR .IX Subsection "Швидкий запуск у Windows ≥ 8 є несумісним із virt-v2v" .PP Гостьові системи, у яких використовується можливість Windows ≥ 8 «Fast Startup» (або гостьові системи, які було приспано), не можна перетворити за допомогою virt\-v2v. Програма повідомлятиме про таку помилку: .PP .Vb 9 \& virtv2v: помилка: не вдалося змонтувати образ диска для запису. Ймовірно, це \& сталося через те, що у гостьовій системі використано Windows Hibernation або \& Fast Restart. Вам слід вимкнути ці можливості (у гостьовій системі), щоб \& скористатися virt\-v2v. \&Як і повідомляється, вам слід завантажити гостьову систему і вимкнути \&можливість швидкого запуску (Панель керування → Живлення → Виберіть дію для \&кнопки живлення → Змінити параметри, які зараз недоступні → Увімкнути \&швидкий запуск), потім вимкнути гостьову систему. Після цього ви зможете \&перетворити її. .Ve .PP Щоб дізнатися більше, див. \*(L"ПРИСИПЛЯННЯ \s-1WINDOWS\s0 ТА ШВИДКИЙ ЗАПУСК \s-1WINDOWS 8\*(R"\s0 in \fBguestfs\fR\|(3). .PP \fIBoot failure: 0x0000007B\fR .IX Subsection "Boot failure: 0x0000007B" .PP Неможливість завантаження спричинено тим, що Windows не може знайти або завантажити належний драйвер диска (наприклад \fIviostor.sys\fR). Якщо у вас виникає ця помилка, ось декілька речей, які можуть допомогти: .IP "\(bu" 4 Спочатку, до перетворення, переконайтеся, що гостьова система завантажується на початковому гіпервізорі. .IP "\(bu" 4 Перевірте, чи є у вас драйвери virtio Windows у \fI/usr/share/virtio\-win\fR, і що virt\-v2v не виводила жодних попереджень щодо неможливості встановити драйвери virtio. .Sp У Red Hat Enterprise Linux 7 вам слід буде встановити підписані драйвери з пакунка \f(CW\*(C`virtio\-win\*(C'\fR. Якщо у вас немає доступу до підписаних драйверів, вам, ймовірно, слід вимкнути підписування драйверів у меню завантаження. .IP "\(bu" 4 Перевірте, чи ви надаєте інтерфейс virtio-blk (\fBне\fR virtio-scsi і \fBне\fR ide) гостьовій системі. У командному рядку qemu/KVM ви маєте бачити щось подібне до такого: .Sp .Vb 1 \& ... \-drive file=windows\-sda,if=virtio ... .Ve .Sp У \s-1XML\s0 libvirt має бути таке: .Sp .Vb 1 \& .Ve .IP "\(bu" 4 Перевірте, чи не запобігає Windows Group Policy встановленню або використанню драйвера. Спробуйте вилучити Windows Group Policy до перетворення. .IP "\(bu" 4 Перевірте, чи не встановлено якогось антивірусного або іншого програмного забезпечення, яке реалізує заборони, подібні до Group Policy, щодо встановлення або використання нових драйверів. .IP "\(bu" 4 Увімкніть діагностику завантаження і перевірте, чи завантажується драйвер \&\fIviostor.sys\fR. .PP \fIOpenStack і повторна активація Windows\fR .IX Subsection "OpenStack і повторна активація Windows" .PP OpenStack не надає гостьовим системам стабільних адрес пристроїв та каналів \&\s-1PCI.\s0 Кожного разу, коли створюється або запускається гостьова система, OpenStack повторно створює від початку \s-1XML\s0 libvirt для цієї гостьової системи. Створений таким чином \s-1XML\s0 libvirt не міститиме полів
. Потім libvirt призначить адреси для пристроїв у передбачуваний спосіб. Адреси можуть змінитися, якщо буде виконано будь\-яку з таких умов: .IP "\(bu" 4 До гостьової системи було додано новий диск або мережевий пристрій або з гостьової системи було вилучено диск або мережевий пристрій. .IP "\(bu" 4 Було змінено версію OpenStack або (можливо) libvirt. .PP Оскільки Windows не подобаються такі «апаратні» зміни, це може спровокувати початок процедури повторної активації Windows. .PP Це також може заважати завантаженню із повідомленням про помилку 7B [див. попередній розділ], якщо у гостьовій системі є group policy із назвою \&\f(CW\*(C`Device Installation Restrictions\*(C'\fR. .PP \fISupport for \s-1SHA\-2\s0 certificates in Windows 7 and Windows Server 2008 R2\fR .IX Subsection "Support for SHA-2 certificates in Windows 7 and Windows Server 2008 R2" .PP Later versions of the Windows virtio drivers are signed using \s-1SHA\-2\s0 certificates (instead of \s-1SHA\-1\s0). The original shipping Windows 7 and Windows Server 2008 R2 did not understand \s-1SHA\-2\s0 certificates and so the Windows virtio drivers will not install properly. .PP To fix this you must apply \s-1SHA\-2\s0 Code Signing Support from: https://docs.microsoft.com/en\-us/security\-updates/SecurityAdvisories/2015/3033929 before converting the guest. .PP For further information see: https://bugzilla.redhat.com/show_bug.cgi?id=1624878 .SS "Networks and bridges" .IX Subsection "Networks and bridges" 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 \fI\-\-network\fR, \fI\-\-bridge\fR and \fI\-\-mac\fR allow you to do that. .PP Якщо ви не певні щодо того, які мережі і містки використовуються у початковому гіпервізорі, ви можете вивчити початкові метадані (\s-1XML\s0 libvirt, дані vCenter тощо). Ви також можете запустити virt\-v2v з параметром \&\fI\-\-print\-source\fR, який призведе до того, що virt\-v2v виведе доступну програмі інформацію щодо початкового варіанта гостьової системи, а потім завершить роботу. .PP У виведених даних з параметром \fI\-\-print\-source\fR ви побачите розділ, де буде показано картки мережевих інтерфейсів (\s-1NIC\s0) гостьової системи: .PP .Vb 4 \& $ virt\-v2v [\-i ...] \-\-print\-source name \& [...] \& NIC: \& Network "default" mac: 52:54:00:d0:cf:0e .Ve .PP Bridges are special classes of network devices which are attached to a named external network on the source hypervisor, for example: .PP .Vb 4 \& $ virt\-v2v [\-i ...] \-\-print\-source name \& [...] \& NICs: \& Bridge "br0" .Ve .PP To map a specific source bridge to a target network, for example \f(CW\*(C`br0\*(C'\fR on the source to \f(CW\*(C`ovirtmgmt\*(C'\fR on the target, use: .PP .Vb 1 \& virt\-v2v [...] \-\-bridge br0:ovirtmgmt .Ve .PP To map every bridge to a target network, use: .PP .Vb 1 \& virt\-v2v [...] \-\-bridge ovirtmgmt .Ve .PP \fIFine-grained mapping of guest NICs\fR .IX Subsection "Fine-grained mapping of guest NICs" .PP The \fI\-\-mac\fR 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 \f(CW\*(C`mgmt\*(C'\fR and \f(CW\*(C`clientdata\*(C'\fR like this: .PP .Vb 3 \& $ virt\-v2v [...] \e \& \-\-mac 52:54:00:d0:cf:0e:network:mgmt \e \& \-\-mac 52:54:00:d0:cf:0f:network:clientdata .Ve .PP Note that virt\-v2v does not have the ability to change a guest’s \s-1MAC\s0 address. The \s-1MAC\s0 address is part of the guest metadata and must remain the same on source and target hypervisors. Most guests will use the \s-1MAC\s0 address to set up persistent associations between NICs and internal names (like \&\f(CW\*(C`eth0\*(C'\fR), with firewall settings, or even for other purposes like software licensing. .SS "Resource requirements" .IX Subsection "Resource requirements" \fIМережа\fR .IX Subsection "Мережа" .PP Здається, найважливішим ресурсом для virt\-v2v є канал мережі. Virt\-v2v повинна мати можливість копіювати дані гостьових систем із гігабітними або навіть вищими швидкостями мережею. .PP Вам слід забезпечити швидке і якомога менш латентне з'єднання між серверами (сервером перетворення, сервером \s-1NFS,\s0 vCenter, Xen). .PP \fIМісце на диску\fR .IX Subsection "Місце на диску" .PP Virt\-v2v places potentially large temporary files in \f(CW$VIRT_V2V_TMPDIR\fR (usually \fI/var/tmp\fR, see also \*(L"\s-1ENVIRONMENT VARIBLES\*(R"\s0 below). Using tmpfs is a bad idea. .PP Для кожного диска гостьової системи тимчасово зберігається накладка. У ній містяться дані щодо змін, які було внесено з часу перетворення, а також дані кешу. Накладки не є дуже великими — типово десятки або декілька сотень мегабайтів. Окрім накладок, місце на диску може використовуватися засобами обробки вхідних і вихідних даних. Дані щодо цих витрат місця на диску наведено у викладеній нижче таблиці. .IP "\fI\-i ova\fR" 4 .IX Item "-i ova" This temporarily places a full copy of the uncompressed source disks in \&\f(CW$VIRT_V2V_TMPDIR\fR (or \fI/var/tmp\fR). .IP "\fI\-o glance\fR" 4 .IX Item "-o glance" This temporarily places a full copy of the output disks in \&\f(CW$VIRT_V2V_TMPDIR\fR (or \fI/var/tmp\fR). .IP "\fI\-o local\fR" 4 .IX Item "-o local" .PD 0 .IP "\fI\-o qemu\fR" 4 .IX Item "-o qemu" .PD Вам слід переконатися щодо у каталозі для виведення даних є достатньо вільного місця для перетвореної гостьової системи. .PP Див. також \*(L"Мінімальне вільне місце у основній системі\*(R" нижче. .PP \fIРесурси vCenter VMware\fR .IX Subsection "Ресурси vCenter VMware" .PP У поточній версії копіювання з vCenter VMware є дуже повільним, ми вважаємо, що це проблема з VMware. Щоб частково усунути цю проблему, слід забезпечити роботу гіпервізору ESXi VMware та vCenter на швидкому обладнанні із великим обсягом пам'яті. .PP \fIОбчислювальні потужності і обсяг оперативної пам’яті\fR .IX Subsection "Обчислювальні потужності і обсяг оперативної пам’яті" .PP Virt\-v2v не є особливо вимогливою до обчислювальних можливостей або обсягу пам'яті. Якщо ви виконуєте багато паралельних перетворень, вам варто виділити одне ядро процесора і 2 ГБ оперативної пам'яті на кожен запущений екземпляр. .PP Virt\-v2v можна запускати у віртуальній машині. .PP \fIОбрізання\fR .IX Subsection "Обрізання" .PP Virt\-v2v намагається оптимізувати перетворення, ігноруючи дані файлової системи гостьової операційної системи, які не використовуються. Це стосується невикористаних блоків файлових систем, блоків, які містять лише нулі, та вилучених файлів. .PP Для виконання цього завдання virt\-v2v використовує неруйнівну дію \&\fBfstrim\fR\|(8). Оскільки відповідна програма виконує дії із накладкою над даними гостьової системи, початкова система \fBніяким чином\fR не змінюється. .PP Якщо робота цієї програми fstrim завершується помилкою, ви побачите попередження, а virt\-v2v продовжить роботу. Програма може працювати повільніше (у деяких випадках набагато повільніше) через те, що копіюватиме і невикористані частини диска. .PP На жаль, підтримка fstrim не є універсальною. Результат також залежить від певних параметрів файлової системи, вирівнювання розділів та резервного сховища даних. Наприклад, fstrim не можна застосовувати до файлових систем \&\s-1NTFS,\s0 якщо вони займають розділи, які не вирівняно із базових сховищем даних. Такого вирівнювання типово не було у Windows до Vista. Іншим прикладом є файлові системи \s-1VFAT\s0 (використовуються гостьовими системами \&\s-1UEFI\s0) — їх взагалі не можна обрізати. .PP Підтримка fstrim у ядрі Linux поступово поліпшується, отже, з часом, ці обмеження буде знято і virt\-v2v працюватиме швидше. .SS "Post-conversion tasks" .IX Subsection "Post-conversion tasks" \fIНалаштовування гостьової мережі\fR .IX Subsection "Налаштовування гостьової мережі" .PP У поточній версії virt\-v2v не може переналаштувати мережу у гостьовій системі. Якщо перетворену гостьову систему не з'єднано із тією самою підмережею, що і початкову, її налаштування мережі має бути оновлено. Див. також \fBvirt\-customize\fR\|(1). .PP \fIПеретворення гостьової системи Windows\fR .IX Subsection "Перетворення гостьової системи Windows" .PP Процес перетворення гостьових систем Windows поділено на два етапи: .IP "1." 4 Автономне перетворення. .IP "2." 4 Перше завантаження. .PP Гостьова система буде придатною до завантаження після етапу автономного перетворення, але у ній усе ще не буде встановлено потрібних для належної роботи драйверів. Драйвери буде встановлено автоматично під час першого завантаження гостьової системи. .PP \&\fBЗауваження\fR: не переривайте процесу автоматичного встановлення драйверів під час першого входу до гостьової системи, оскільки це може завадити усім наступним спробам завантажити гостьову систему належним чином. .SS "Free space for conversion" .IX Subsection "Free space for conversion" \fIВільне місце у гостьовій системі\fR .IX Subsection "Вільне місце у гостьовій системі" .PP Virt\-v2v перевіряє, чи достатньо місця у гостьовій файловій системі для виконання перетворення. У поточній версії програма перевіряє таке: .IP "Linux root filesystem" 4 .IX Item "Linux root filesystem" Minimum free space: 100 \s-1MB\s0 .IP "Linux \fI/boot\fR" 4 .IX Item "Linux /boot" Мінімальний вільний простір: 50 МБ .Sp Причиною є те, що нам потрібно збирати нові initramfs для деяких перетворень Enterprise Linux. .ie n .IP "Windows ""C:"" drive" 4 .el .IP "Windows \f(CWC:\fR drive" 4 .IX Item "Windows C: drive" Minimum free space: 100 \s-1MB\s0 .Sp We may have to copy in many virtio drivers and guest agents. .IP "Будь\-яка інша придатна до монтування файлова система" 4 .IX Item "Будь-яка інша придатна до монтування файлова система" Мінімальний вільний простір: 10 МБ .PP In addition to the actual free space, each filesystem is required to have at least 100 available inodes. .PP \fIМінімальний обсяг місця у основній системі\fR .IX Subsection "Мінімальний обсяг місця у основній системі" .PP You must have sufficient free space in the host directory used to store large temporary overlays (except in \fI\-\-in\-place\fR mode). To find out which directory this is, use: .PP .Vb 3 \& $ df \-h "\`guestfish get\-cachedir\`" \& Ф. система Розм Вик Дост Вик% змонтований на \& /dev/mapper/root 50G 40G 6.8G 86% / .Ve .PP and look under the \f(CW\*(C`Avail\*(C'\fR column. Virt\-v2v will refuse to do the conversion at all unless at least 1GB is available there. You can change the directory that virt\-v2v uses by setting \f(CW$VIRT_V2V_TMPDIR\fR. .PP See also \*(L"Resource requirements\*(R" above and \*(L"\s-1ENVIRONMENT VARIABLES\*(R"\s0 below. .SS "Running virt\-v2v as root or non-root" .IX Subsection "Running virt-v2v as root or non-root" Нічого у virt\-v2v не потребує обов'язкових прав доступу root — програма чудово працює і від імені звичайного користувача. Втім, використання деяких зовнішніх можливостей може потребувати прав доступу root або інших спеціалізованих користувачів: .IP "Монтування Export Storage Domain" 4 .IX Item "Монтування Export Storage Domain" При використанні параметрів \fI\-o rhv \-os server:/esd\fR virt\-v2v повинна мати достатні права доступу до змонтованої системи \s-1NFS\s0 домену сховища експортування з сервера \f(CW\*(C`server\*(C'\fR. .Sp Ви можете уникнути тут потреби у використання прав доступу root, якщо змонтуєте диск власноруч до запуску virt\-v2v і передасте його як параметр команди \fI\-os /точка_монтування\fR, але перед цим прочитайте наступний розділ... .IP "Запис до Export Storage Domain від імені 36:36" 4 .IX Item "Запис до Export Storage Domain від імені 36:36" RHV-M не зможе прочитати файли і каталоги з Export Storage Domain, якщо їхнім власником не буде \s-1UID:GID 36:36.\s0 Якщо значення \s-1UID:GID\s0 виставлено неправильно, ви побачите повідомлення про проблеми з імпортуванням даних з віртуальної машини. .Sp Коли ви запускаєте virt\-v2v \fI\-o rhv\fR від імені користувача root, virt\-v2v намагатиметься створити файли і каталоги із правильними записами власників. Якщо ж virt\-v2v запускатиметься від імені непривілейованого користувача, програма, ймовірно, працюватиме, але вам доведеться вручну змінити права власності на файли і каталоги після завершення роботи virt\-v2v. .IP "Запис до libvirt" 4 .IX Item "Запис до libvirt" Якщо використовується параметр \fI\-o libvirt\fR, може виникнути потреба у запуску virt\-v2v від імені користувача root для уможливлення запису до каталогу загальносистемного екземпляра libvirt (тобто до \f(CW\*(C`qemu:///system\*(C'\fR) і до типового каталогу для образів дисків (зазвичай, \&\fI/var/lib/libvirt/images\fR). .Sp Ви можете уникнути цього, налаштувавши розпізнавання у з'єднанні із libvirt, див. http://libvirt.org/auth.html. Крім того, можна скористатися параметром \fI\-oc qemu:///session\fR, використання якого призведе до запису даних до каталогів libvirt вашого користувача. .IP "Writing to Openstack" 4 .IX Item "Writing to Openstack" Because of how Cinder volumes are presented as \fI/dev\fR block devices, using \&\fI\-o openstack\fR normally requires that virt\-v2v is run as root. .IP "Запис до Glance" 4 .IX Item "Запис до Glance" Ця дія \fIне\fR потребує прав доступу root (фактично, вона, ймовірно, не працюватиме з ними), але може потребувати прав доступу спеціалізованого користувача і/або створення скрипту для встановлення змінних середовища, пов'язаних із розпізнаванням користувача. Зверніться до документації із Glance. .IP "Writing to block devices" 4 .IX Item "Writing to block devices" This normally requires root. See the next section. .SS "Writing to block devices" .IX Subsection "Writing to block devices" Some output modes write to local files. In general these modes also let you write to block devices, but before you run virt\-v2v you may have to arrange for symbolic links to the desired block devices in the output directory. .PP For example if using \fI\-o local \-os /dir\fR then virt\-v2v would normally create files called: .PP .Vb 4 \& /dir/name\-sda # first disk \& /dir/name\-sdb # second disk \& ... \& /dir/name.xml # metadata .Ve .PP If you wish the disks to be written to block devices then you would need to create \fI/dir/\fIname\fI\-sda\fR (etc) as symlinks to the block devices: .PP .Vb 4 \& # lvcreate \-L 10G \-n VolumeForDiskA VG \& # lvcreate \-L 6G \-n VolumeForDiskB VG \& # ln \-sf /dev/VG/VolumeForDiskA /dir/name\-sda \& # ln \-sf /dev/VG/VolumeForDiskB /dir/name\-sdb .Ve .PP Note that you must precreate the correct number of block devices of the correct size. Typically \fI\-of raw\fR has to be used too, but other formats such as qcow2 can be useful occasionally so virt\-v2v does not force you to use raw on block devices. .SS "Minimal \s-1XML\s0 for \-i libvirtxml option" .IX Subsection "Minimal XML for -i libvirtxml option" Якщо використовується параметр \fI\-i libvirtxml\fR, вам слід буде вказати певний файл \s-1XML\s0 libvirt. Написання такого файла «з нуля» є доволі марудною справою, отже, вам буде корисний наведений нижче шаблон. .PP \&\fBЗауважте, що цим слід користуватися лише для тестування і/або там, де ви впевнені у своїх діях!\fR Якщо у вас є метадані libvirt для гостьової системи, завжди користуйтеся ними, а не цим шаблоном. .PP .Vb 10 \& \& NAME \& 1048576 \& 2 \& \& hvm \& \& \& \& \& \& \& \& \& \& \& \& \& \& \& \& \& \& \& \& .Ve .SS "In-place conversion" .IX Subsection "In-place conversion" Крім того, можна скористатися virt\-v2v у сценаріях, де сторонню віртуальну машину вже імпортовано до заснованого на \s-1KVM\s0 гіпервізору, але вона все ще потребує коригування у самій гостьовій системі для того, щоб її можна було запустити на новому віртуальному обладнанні. .PP У цьому випадку припускається, що віртуальну машину призначення створено стороннім інструментом у підтримуваному гіпервізорі на основі \s-1KVM\s0 з використанням налаштувань і вмісту початкової віртуальної машини, але з використанням віртуальних пристроїв, які краще пристосовано до \s-1KVM\s0 (наприклад, сховища і мережі virtio тощо). .PP Далі, щоб уможливити завантаження і роботу гостьової операційної системи у зміненому середовищі, можна скористатися такою командою: .PP .Vb 1 \& virt\-v2v \-ic qemu:///system converted_vm \-\-in\-place .Ve .PP Virt\-v2v проаналізує налаштування перетвореної віртуальної машини \&\f(CW\*(C`converted_vm\*(C'\fR у екземплярі libvirt \f(CW\*(C`qemu:///system\*(C'\fR і застосує різноманітні виправлення у налаштуваннях гостьової операційної системи, щоб зробити їх відповідними до налаштувань віртуальної машини. Це може включати встановлення драйверів virtio, налаштовування завантажувача, точок монтування, інтерфейсів мережі тощо. .PP Якщо під час виконання дії станеться помилка, virt\-v2v завершить роботу із кодом помилки, залишивши віртуальну машину у невизначеному стані. .SS "Machine readable output" .IX Subsection "Machine readable output" Для виведення даних у зручному для машинної обробки форматі можна скористатися параметром \fI\-\-machine\-readable\fR. Додавання цього параметра робить зручним використання virt\-v2v з інших програм, графічних інтерфейсів тощо. .PP Існує два способи використання цього параметра. .PP Спочатку, скористайтеся цим параметром окремо, щоб опитати систему щодо можливостей виконуваного файла virt\-v2v. Типово виведені дані виглядатимуть якось так: .PP .Vb 11 \& $ virt\-v2v \-\-machine\-readable \& virt\-v2v \& libguestfs\-rewrite \& colours\-option \& vdsm\-compat\-option \& input:disk \& [...] \& output:local \& [...] \& convert:linux \& convert:windows .Ve .PP Виводиться список можливостей, по одній на рядок, і програма завершує роботу зі станом 0. .PP Записи \f(CW\*(C`input:\*(C'\fR і \f(CW\*(C`output:\*(C'\fR стосуються аргументів параметрів \fI\-i\fR і \fI\-o\fR (вхідного і вихідного режимів), які підтримуються цим виконуваним файлом. Записи \f(CW\*(C`convert:\*(C'\fR стосуються типів гостьових систем, підтримку перетворення яких передбачено у цьому виконуваному файлі. .PP По\-друге, можна скористатися цим параметром у поєднанні із іншими параметрами для того, щоб зробити звичайні виведені програмою дані придатнішими для подальшої машинної обробки. .PP У поточній версії це означає таке: .IP "1." 4 Повідомлення смужки поступу можна обробляти зі стандартного виведення, шукаючи їх за таким формальним виразом: .Sp .Vb 1 \& ^[0\-9]+/[0\-9]+$ .Ve .IP "2." 4 Програма, яка надсилає виклик, має обробляти повідомлення, надіслані до стандартного виведення, (окрім повідомлень смужки поступу) як повідомлення щодо стану. Ці повідомлення може бути записано до журналу і/або показано користувачеві. .IP "3." 4 Програма, яка надсилає виклик, має обробляти повідомлення, надіслані до stderr як повідомлення про помилки. Крім того, virt\-v2v завершує роботу із ненульовим кодом стану, якщо станеться критична помилка. .PP У virt\-v2v ≤ 0.9.1 взагалі не передбачено підтримки параметра \&\fI\-\-machine\-readable\fR. Цей параметр було додано під час переписування virt\-v2v у 2014 році. .PP It is possible to specify a format string for controlling the output; see \&\*(L"\s-1ADVANCED MACHINE READABLE OUTPUT\*(R"\s0 in \fBguestfs\fR\|(3). .SH "ФАЙЛИ" .IX Header "ФАЙЛИ" .IP "\fI/usr/share/virtio\-win\fR" 4 .IX Item "/usr/share/virtio-win" (Необов’язково) .Sp Якщо існує цей каталог, драйвери virtio для гостьових систем Windows буде знайдено у цьому каталозі і встановлено до гостьової системи під час перетворення. .SH "ЗМІННІ СЕРЕДОВИЩА" .IX Header "ЗМІННІ СЕРЕДОВИЩА" .ie n .IP """VIRT_V2V_TMPDIR""" 4 .el .IP "\f(CWVIRT_V2V_TMPDIR\fR" 4 .IX Item "VIRT_V2V_TMPDIR" .PD 0 .ie n .IP """LIBGUESTFS_CACHEDIR""" 4 .el .IP "\f(CWLIBGUESTFS_CACHEDIR\fR" 4 .IX Item "LIBGUESTFS_CACHEDIR" .PD Location of the temporary directory used for the potentially large temporary overlay file. If neither environment variable is set then \fI/var/tmp\fR is used. .Sp To reliably ensure large temporary files are cleaned up (for example in case virt\-v2v crashes) you should create a randomly named directory under \&\fI/var/tmp\fR, set \f(CW\*(C`VIRT_V2V_TMPDIR\*(C'\fR to point to this directory, then when virt\-v2v exits remove the directory. .Sp Див. розділ \*(L"Місце на диску\*(R" вище. .ie n .IP """VIRT_TOOLS_DATA_DIR""" 4 .el .IP "\f(CWVIRT_TOOLS_DATA_DIR\fR" 4 .IX Item "VIRT_TOOLS_DATA_DIR" Ця змінна визначає каталог, у якому містяться файли даних, які використовуються для перетворення Windows. .Sp Зазвичай, потреби у встановленні власного значення немає. Якщо значення не встановлено, буде використано вбудоване типове значення (щось схоже на \&\fI/usr/share/virt\-tools\fR). .Sp Цей каталог може містити такі файли: .RS 4 .IP "\fIrhsrvany.exe\fR" 4 .IX Item "rhsrvany.exe" (Потрібен для перетворень гостьових систем Windows) .Sp Це виконуваний файл для Windows RHSrvAny, який використовується для встановлення скрипту «firstboot» у гостьові системи під час перетворення гостьових систем Windows. .Sp Див. також \f(CW\*(C`https://github.com/rwmjones/rhsrvany\*(C'\fR .IP "\fIpvvxsvc.exe\fR" 4 .IX Item "pvvxsvc.exe" Це виконуваний файл Windows, що постачається разом із \s-1VMDP SUSE,\s0 використовується для встановлення скрипту «firstboot» у гостьові системи Windows. Він знадобиться, якщо ви маєте намір використовувати параметри \&\fI\-\-firstboot\fR і \fI\-\-firstboot\-command\fR для гостьових операційних систем Windows. .IP "\fIrhev\-apt.exe\fR" 4 .IX Item "rhev-apt.exe" (Необов’язково) .Sp \&\s-1RHV\s0 Application Provisioning Tool (\s-1RHEV APT\s0). Якщо існує цей файл, під час перетворення до гостьової системи Windows буде встановлено \s-1RHEV APT.\s0 Це інструмент, який є агентом у гостьовій системі, який забезпечує актуальність драйверів virtio, якщо гостьова система працює у Red Hat Virtualization (\s-1RHV\s0). .Sp Цей файл походить з Red Hat Virtualization (\s-1RHV\s0) і не поширюється із virt\-v2v. .RE .RS 4 .RE .ie n .IP """VIRTIO_WIN""" 4 .el .IP "\f(CWVIRTIO_WIN\fR" 4 .IX Item "VIRTIO_WIN" This is where virtio drivers for Windows are searched for. It can be a directory \fIor\fR point to \fIvirtio\-win.iso\fR (\s-1CD ROM\s0 image containing drivers). .Sp Якщо не встановлено, відбуватиметься пошук драйверів; знайденим вважатиметься драйвер, який буде першим знайдено у одному з цих місць (за пріоритетністю): .RS 4 .IP "\fI/usr/share/virtio\-win/virtio\-win.iso\fR" 4 .IX Item "/usr/share/virtio-win/virtio-win.iso" Образ \s-1ISO,\s0 де містяться драйвери virtio для Windows. .IP "\fI/usr/share/virtio\-win\fR" 4 .IX Item "/usr/share/virtio-win" Розгорнута ієрархія драйверів virtio для Windows. Зазвичай, там є не усі драйвери, тому слід надавати перевагу образу \s-1ISO.\s0 .RE .RS 4 .Sp See \*(L"Enabling virtio\*(R". .RE .PP Опис інших змінних середовища наведено у розділі \*(L"\s-1ENVIRONMENT VARIABLES\*(R"\s0 in \fBguestfs\fR\|(3). .SH "ІНШІ ІНСТРУМЕНТИ" .IX Header "ІНШІ ІНСТРУМЕНТИ" .IP "\fBvirt\-v2v\-copy\-to\-local\fR\|(1)" 4 .IX Item "virt-v2v-copy-to-local" Існують певні особливі випадки, коли virt\-v2v не може отримати доступ до віддаленого гіпервізору безпосередньо. Якщо ви зіткнулися саме з таким випадком, вам слід спочатку скористатися \fBvirt\-v2v\-copy\-to\-local\fR\|(1) для створення локальної копії гостьової системи, а потім віддати команду \&\f(CW\*(C`virt\-v2v \-i libvirtxml\*(C'\fR для виконання самого перетворення. .IP "\fBengine\-image\-uploader\fR\|(8)" 4 .IX Item "engine-image-uploader" Цей інструмент може називатися \f(CW\*(C`engine\-image\-uploader\*(C'\fR, \&\f(CW\*(C`ovirt\-image\-uploader\*(C'\fR або \f(CW\*(C`rhevm\-image\-uploader\*(C'\fR. За його допомогою можна скопіювати гостьову систему з одного домену сховища експортування oVirt або \&\s-1RHV\s0 до іншого. Його використання надає змогу імпортувати лише ті гостьові системи, які раніше було експортовано з іншого екземпляра oVirt/RHV. .IP "import\-to\-ovirt.pl" 4 .IX Item "import-to-ovirt.pl" Цим скриптом можна скористатися для імпортування гостьових систем, які вже запущено у \s-1KVM\s0 до oVirt або \s-1RHV.\s0 Щоб дізнатися більше, ознайомтеся із цим дописом у блозі автора virt\-v2v: .Sp https://rwmj.wordpress.com/2015/09/18/importing\-kvm\-guests\-to\-ovirt\-or\-rhev/#content .SH "ТАКОЖ ПЕРЕГЛЯНЬТЕ" .IX Header "ТАКОЖ ПЕРЕГЛЯНЬТЕ" \&\fBvirt\-p2v\fR\|(1), \fBvirt\-customize\fR\|(1), \fBvirt\-df\fR\|(1), \fBvirt\-filesystems\fR\|(1), \&\fBvirt\-sparsify\fR\|(1), \fBvirt\-sysprep\fR\|(1), \fBguestfs\fR\|(3), \fBguestfish\fR\|(1), \&\fBqemu\-img\fR\|(1), \fBvirt\-v2v\-copy\-to\-local\fR\|(1), \fBvirt\-v2v\-test\-harness\fR\|(1), \&\fBengine\-image\-uploader\fR\|(8), import\-to\-ovirt.pl, \&\fBnbdkit\fR\|(1), \fBnbdkit\-vddk\-plugin\fR\|(1), http://libguestfs.org/. .SH "АВТОРИ" .IX Header "АВТОРИ" Matthew Booth .PP Cédric Bosdonnat .PP Tomáš Golembiovský .PP Shahar Havivi .PP Roman Kagan .PP Mike Latimer .PP Nir Soffer .PP Richard W.M. Jones .PP Pino Toscano .PP Tingting Zheng .SH "АВТОРСЬКІ ПРАВА" .IX Header "АВТОРСЬКІ ПРАВА" Copyright (C) 2009\-2020 Red Hat Inc. .SH "LICENSE" .IX Header "LICENSE" .SH "BUGS" .IX Header "BUGS" To get a list of bugs against libguestfs, use this link: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools .PP To report a new bug against libguestfs, use this link: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools .PP When reporting a bug, please supply: .IP "\(bu" 4 The version of libguestfs. .IP "\(bu" 4 Where you got libguestfs (eg. which Linux distro, compiled from source, etc) .IP "\(bu" 4 Describe the bug accurately and give a way to reproduce it. .IP "\(bu" 4 Run \fBlibguestfs\-test\-tool\fR\|(1) and paste the \fBcomplete, unedited\fR output into the bug report.