1virt-v2v(1)                 Virtualization Support                 virt-v2v(1)
2
3
4

NAME

6       virt-v2v - Convert a guest to use KVM
7

SYNOPSIS

9        virt-v2v [-i mode] [other -i* options]
10                 [-o mode] [other -o* options]
11                 [guest|filename]
12

DESCRIPTION

14       Virt-v2v converts a single guest from a foreign hypervisor to run on
15       KVM.  It can read Linux and Windows guests running on VMware, Xen,
16       Hyper-V and some other hypervisors, and convert them to KVM managed by
17       libvirt, OpenStack, oVirt, Red Hat Virtualisation (RHV) or several
18       other targets.  It can modify the guest to make it bootable on KVM and
19       install virtio drivers so it will run quickly.
20
21       There is also a companion front-end called virt-p2v(1) which comes as
22       an ISO, CD or PXE image that can be booted on physical machines to
23       virtualize those machines (physical to virtual, or p2v).
24
25       For in-place conversion, there is a separate tool called
26       virt-v2v-in-place(1).
27
28   Input and Output
29       You normally run virt-v2v with several -i* options controlling the
30       input mode and also several -o* options controlling the output mode.
31       In this sense, "input" refers to the source foreign hypervisor such as
32       VMware, and "output" refers to the target KVM-based management system
33       such as oVirt or OpenStack.
34
35       The input and output sides of virt-v2v are separate and unrelated.
36       Virt-v2v can read from any input and write to any output.  Therefore
37       these sides of virt-v2v are documented separately in this manual.
38
39       Virt-v2v normally copies from the input to the output, called "copying
40       mode".  In this case the source guest is always left unchanged.  In-
41       place conversions may be done using virt-v2v-in-place(1).
42
43   Other virt-v2v topics
44       virt-v2v-support(1) — Supported hypervisors, virtualization management
45       systems, guests.
46
47       virt-v2v-input-vmware(1) — Input from VMware.
48
49       virt-v2v-input-xen(1) — Input from Xen.
50
51       virt-v2v-output-local(1) — Output to local files or local libvirt.
52
53       virt-v2v-output-rhv(1) — Output to oVirt or RHV.
54
55       virt-v2v-output-openstack(1) — Output to OpenStack.
56
57       virt-v2v-release-notes-1.42(1) — Release notes for 1.42 release.
58
59       virt-v2v-release-notes-2.0(1) — Release notes for 2.0 release.
60

EXAMPLES

62   Convert from VMware vCenter server to local libvirt
63       You have a VMware vCenter server called "vcenter.example.com", a
64       datacenter called "Datacenter", and an ESXi hypervisor called "esxi".
65       You want to convert a guest called "vmware_guest" to run locally under
66       libvirt.
67
68        virt-v2v -ic vpx://vcenter.example.com/Datacenter/esxi vmware_guest
69
70       In this case you will most likely have to run virt-v2v as "root", since
71       it needs to talk to the system libvirt daemon and copy the guest disks
72       to /var/lib/libvirt/images.
73
74       For more information see virt-v2v-input-vmware(1).
75
76   Convert from VMware to RHV/oVirt
77       This is the same as the previous example, except you want to send the
78       guest to a RHV Data Domain using the RHV REST API.  Guest network
79       interface(s) are connected to the target network called "ovirtmgmt".
80
81        virt-v2v -ic vpx://vcenter.example.com/Datacenter/esxi vmware_guest \
82          -o rhv-upload -oc https://ovirt-engine.example.com/ovirt-engine/api \
83          -os ovirt-data -op /tmp/ovirt-admin-password -of raw \
84          -oo rhv-cafile=/tmp/ca.pem --bridge ovirtmgmt
85
86       In this case the host running virt-v2v acts as a conversion server.
87
88       For more information see virt-v2v-output-rhv(1).
89
90   Convert from ESXi hypervisor over SSH to local libvirt
91       You have an ESXi hypervisor called "esxi.example.com" with SSH access
92       enabled.  You want to convert from VMFS storage on that server to a
93       local file.
94
95        virt-v2v \
96          -i vmx -it ssh \
97          "ssh://root@esxi.example.com/vmfs/volumes/datastore1/guest/guest.vmx" \
98          -o local -os /var/tmp
99
100       The guest must not be running.  Virt-v2v would not need to be run as
101       root in this case.
102
103       For more information about converting from VMX files see
104       virt-v2v-input-vmware(1).
105
106   Convert disk image to OpenStack
107       Given a disk image from another hypervisor that you want to convert to
108       run on OpenStack (only KVM-based OpenStack is supported), you can run
109       virt-v2v inside an OpenStack VM (called "v2v-vm" below), and do:
110
111        virt-v2v -i disk disk.img -o openstack -oo server-id=v2v-vm
112
113       See virt-v2v-output-openstack(1).
114
115   Convert disk image to disk image
116       Given a disk image from another hypervisor that you want to convert to
117       run on KVM, you have two options.  The simplest way is to try:
118
119        virt-v2v -i disk disk.img -o local -os /var/tmp
120
121       where virt-v2v guesses everything about the input disk.img and (in this
122       case) writes the converted result to /var/tmp.
123
124       A more complex method is to write some libvirt XML describing the input
125       guest (if you can get the source hypervisor to provide you with libvirt
126       XML, then so much the better).  You can then do:
127
128        virt-v2v -i libvirtxml guest-domain.xml -o local -os /var/tmp
129
130       Since guest-domain.xml contains the path(s) to the guest disk image(s)
131       you do not need to specify the name of the disk image on the command
132       line.
133
134       To convert a local disk image and immediately boot it in local qemu,
135       do:
136
137        virt-v2v -i disk disk.img -o qemu -os /var/tmp -oo qemu-boot
138

OPTIONS

140       --help
141           Display help.
142
143       --bandwidth bps
144       --bandwidth-file filename
145           Some input methods are able to limit the network bandwidth they
146           will use statically or dynamically.  In the first variant this sets
147           the bandwidth limit statically in bits per second.  Formats like
148           "10M" may be used (meaning 10 megabits per second).
149
150           In the second variant the bandwidth is limited dynamically from the
151           content of the file (also in bits per second, in the same formats
152           supported by the first variant).  You may use both parameters
153           together, meaning: first limit to a static rate, then you can
154           create the file while virt-v2v is running to adjust the rate
155           dynamically.
156
157           This is only supported for:
158
159           •   input from Xen
160
161           •   input from VMware VMX when using the SSH transport method
162
163           •   input from VDDK
164
165-i libvirtxml when using HTTP or HTTPS disks
166
167           •   input from VMware vCenter server
168
169           The options are silently ignored for other input methods.
170
171       -b ...
172       --bridge ...
173           See --network below.
174
175       --colors
176       --colours
177           Use ANSI colour sequences to colourize messages.  This is the
178           default when the output is a tty.  If the output of the program is
179           redirected to a file, ANSI colour sequences are disabled unless you
180           use this option.
181
182       --compressed
183           This is the same as -oo compressed.
184
185       --echo-keys
186           When prompting for keys and passphrases, virt-v2v normally turns
187           echoing off so you cannot see what you are typing.  If you are not
188           worried about Tempest attacks and there is no one else in the room
189           you can specify this flag to see what you are typing.
190
191           Note this options only applies to keys and passphrases for
192           encrypted devices and partitions, not for passwords used to connect
193           to remote servers.
194
195       -i disk
196           Set the input method to disk.
197
198           In this mode you can read a virtual machine disk image with no
199           metadata.  virt-v2v tries to guess the best default metadata.  This
200           is usually adequate but you can get finer control (eg. of memory
201           and vCPUs) by using -i libvirtxml instead.  Only guests that use a
202           single disk can be imported this way.
203
204       -i libvirt
205           Set the input method to libvirt.  This is the default.
206
207           In this mode you have to specify a libvirt guest name or UUID on
208           the command line.  You may also specify a libvirt connection URI
209           (see -ic).
210
211       -i libvirtxml
212           Set the input method to libvirtxml.
213
214           In this mode you have to pass a libvirt XML file on the command
215           line.  This file is read in order to get metadata about the source
216           guest (such as its name, amount of memory), and also to locate the
217           input disks.  See "Minimal XML for -i libvirtxml option" below.
218
219       -i local
220           This is the same as -i disk.
221
222       -i ova
223           Set the input method to ova.
224
225           In this mode you can read a VMware ova file.  Virt-v2v will read
226           the ova manifest file and check the vmdk volumes for validity
227           (checksums) as well as analyzing the ovf file, and then convert the
228           guest.  See virt-v2v-input-vmware(1).
229
230       -i vmx
231           Set the input method to vmx.
232
233           In this mode you can read a VMware vmx file directly or over SSH.
234           This is useful when VMware VMs are stored on an NFS server which
235           you can mount directly, or where you have access by SSH to an ESXi
236           hypervisor.  See virt-v2v-input-vmware(1).
237
238       -ic libvirtURI
239           Specify a libvirt connection URI to use when reading the guest.
240           This is only used when -i libvirt.
241
242           Only local libvirt connections, VMware vCenter connections, or RHEL
243           5 Xen remote connections can be used.  Other remote libvirt
244           connections will not work in general.
245
246           See also virt-v2v-input-vmware(1), virt-v2v-input-xen(1).
247
248       -if format
249           For -i disk only, this specifies the format of the input disk
250           image.  For other input methods you should specify the input format
251           in the metadata.
252
253       -io OPTION=VALUE
254           Set input option(s) related to the current input mode or transport.
255           To display short help on what options are available you can use:
256
257            virt-v2v -it vddk -io "?"
258
259       -io vddk-libdir=LIBDIR
260           Set the VDDK library directory.  This directory should contain
261           subdirectories called include, lib64 etc., but do not include lib64
262           actually in the parameter.
263
264           In most cases this parameter is required when using the -it vddk
265           (VDDK) transport.  See virt-v2v-input-vmware(1) for details.
266
267       -io vddk-thumbprint=xx:xx:xx:...
268           Set the thumbprint of the remote VMware server.
269
270           This parameter is required when using the -it vddk (VDDK)
271           transport.  See virt-v2v-input-vmware(1) for details.
272
273       -io vddk-config=FILENAME
274       -io vddk-cookie=COOKIE
275       -io vddk-nfchostport=PORT
276       -io vddk-port=PORT
277       -io vddk-snapshot=SNAPSHOT-MOREF
278       -io vddk-transports=MODE:MODE:...
279           When using VDDK mode, these options are passed unmodified to the
280           nbdkit(1) VDDK plugin.  Please refer to nbdkit-vddk-plugin(1).  Do
281           not use these options unless you know what you are doing.  These
282           are all optional.
283
284       -ip filename
285           Supply a file containing a password to be used when connecting to
286           the target hypervisor.  If this is omitted then the input
287           hypervisor may ask for the password interactively.  Note the file
288           should contain the whole password, without any trailing newline,
289           and for security the file should have mode 0600 so that others
290           cannot read it.
291
292       -it ssh
293           When using -i vmx, this enables the ssh transport.  See
294           virt-v2v-input-vmware(1).
295
296       -it vddk
297           Use VMware VDDK as a transport to copy the input disks.  See
298           virt-v2v-input-vmware(1).  If you use this parameter then you may
299           need to use other -io vddk* options to specify how to connect
300           through VDDK.
301
302       --key SELECTOR
303           Specify a key for LUKS, to automatically open a LUKS device when
304           using the inspection.  "ID" can be either the libguestfs device
305           name, or the UUID of the LUKS device.
306
307           --key "ID":key:KEY_STRING
308               Use the specified "KEY_STRING" as passphrase.
309
310           --key "ID":file:FILENAME
311               Read the passphrase from FILENAME.
312
313           --key "ID":clevis
314               Attempt passphrase-less unlocking for "ID" with Clevis, over
315               the network.  Please refer to "ENCRYPTED DISKS" in guestfs(3)
316               for more information on network-bound disk encryption (NBDE).
317
318               Note that if any such option is present on the command line,
319               QEMU user networking will be automatically enabled for the
320               libguestfs appliance.
321
322       --keys-from-stdin
323           Read key or passphrase parameters from stdin.  The default is to
324           try to read passphrases from the user by opening /dev/tty.
325
326           If there are multiple encrypted devices then you may need to supply
327           multiple keys on stdin, one per line.
328
329           Note --keys-from-stdin only applies to keys and passphrases for
330           encrypted devices and partitions, not for passwords used to connect
331           to remote servers.
332
333       --mac aa:bb:cc:dd:ee:ff:network:out
334       --mac aa:bb:cc:dd:ee:ff:bridge:out
335           Map source NIC MAC address to a network or bridge.
336
337           See "Networks and bridges" below.
338
339       --mac aa:bb:cc:dd:ee:ff:ip:ipaddr[,gw[,len[,ns,ns,...]]]
340           Force a particular interface (controlled by its MAC address) to
341           have a static IP address after boot.
342
343           The fields in the parameter are: "ipaddr" is the IP address.  "gw"
344           is the optional gateway IP address.  "len" is the subnet mask
345           length (an integer).  The final parameters are zero or more
346           nameserver IP addresses.
347
348           This option can be supplied zero or more times.
349
350           You only need to use this option for certain broken guests such as
351           Windows which are unable to preserve MAC to static IP address
352           mappings automatically.  You don't need to use it if Windows is
353           using DHCP.  It is currently ignored for Linux guests since they do
354           not have this problem.
355
356       --machine-readable
357       --machine-readable=format
358           This option is used to make the output more machine friendly when
359           being parsed by other programs.  See "Machine readable output"
360           below.
361
362       -n in:out
363       -n out
364       --network in:out
365       --network out
366       -b in:out
367       -b out
368       --bridge in:out
369       --bridge out
370           Map network (or bridge) called "in" to network (or bridge) called
371           "out".  If no "in:" prefix is given, all other networks (or
372           bridges) are mapped to "out".
373
374           See "Networks and bridges" below.
375
376       -o disk
377           This is the same as -o local.
378
379       -o glance
380           This is a legacy option.  You should probably use -o openstack
381           instead.
382
383           Set the output method to OpenStack Glance.  In this mode the
384           converted guest is uploaded to Glance.  See
385           virt-v2v-output-openstack(1).
386
387       -o json
388           This option is deprecated and will be removed in virt-v2v 2.2.
389
390       -o libvirt
391           Set the output method to libvirt.  This is the default.
392
393           In this mode, the converted guest is created as a libvirt guest.
394           You may also specify a libvirt connection URI (see -oc).
395
396           See virt-v2v-output-local(1).
397
398       -o local
399           Set the output method to local.
400
401           In this mode, the converted guest is written to a local directory
402           specified by -os /dir (the directory must exist).  The converted
403           guest’s disks are written as:
404
405            /dir/name-sda
406            /dir/name-sdb
407            [etc]
408
409           and a libvirt XML file is created containing guest metadata:
410
411            /dir/name.xml
412
413           where "name" is the guest name.
414
415       -o null
416           Set the output method to null.
417
418           The guest is converted and copied but the results are thrown away
419           and no metadata is written.
420
421       -o openstack
422           Set the output method to OpenStack.  See
423           virt-v2v-output-openstack(1).
424
425       -o ovirt
426           This is the same as -o rhv.
427
428       -o ovirt-upload
429           This is the same as -o rhv-upload.
430
431       -o qemu
432           Set the output method to qemu.
433
434           This is similar to -o local, except that a shell script is written
435           which you can use to boot the guest in qemu.  The converted disks
436           and shell script are written to the directory specified by -os.
437
438           When using this output mode, you can also specify the -oo qemu-boot
439           option which boots the guest under qemu immediately.
440
441       -o rhev
442           This is the same as -o rhv.
443
444       -o rhv
445           Set the output method to rhv.
446
447           The converted guest is written to a RHV Export Storage Domain.  The
448           -os parameter must also be used to specify the location of the
449           Export Storage Domain.  Note this does not actually import the
450           guest into RHV.  You have to do that manually later using the UI.
451
452           See virt-v2v-output-rhv(1).
453
454       -o rhv-upload
455           Set the output method to rhv-upload.
456
457           The converted guest is written directly to a RHV Data Domain.  This
458           is a faster method than -o rhv, but requires oVirt or RHV ≥ 4.2.
459
460           See virt-v2v-output-rhv(1).
461
462       -o vdsm
463           Set the output method to vdsm.
464
465           This mode is similar to -o rhv, but the full path to the data
466           domain must be given:
467           /rhv/data-center/<data-center-uuid>/<data-domain-uuid>.  This mode
468           is only used when virt-v2v runs under VDSM control.
469
470       -oa sparse
471       -oa preallocated
472           Set the output file allocation mode.  The default is "sparse".
473
474       -oc URI
475           Specify a connection URI to use when writing the converted guest.
476
477           For -o libvirt this is the libvirt URI.  Only local libvirt
478           connections can be used.  Remote libvirt connections will not work.
479           See virt-v2v-output-local(1) for further information.
480
481       -of format
482           When converting the guest, convert the disks to the given format.
483
484           If not specified, then the input format is used.
485
486       -on name
487           Rename the guest when converting it.  If this option is not used
488           then the output name is the same as the input name.
489
490       -oo OPTION=VALUE
491           Set output option(s) related to the current output mode.  To
492           display short help on what options are available you can use:
493
494            virt-v2v -o rhv-upload -oo "?"
495
496       -oo compressed
497           For outputs which support qcow2 format (-of qcow2), this writes a
498           compressed qcow2 file.  It is the equivalent to the -c option of
499           qemu-img(1).
500
501       -oo guest-id="ID"
502           For -o openstack (virt-v2v-output-openstack(1)) only, set a guest
503           ID which is saved on each Cinder volume in the "virt_v2v_guest_id"
504           volume property.
505
506       -oo qemu-boot
507           When using -o qemu only, this boots the guest immediately after
508           virt-v2v finishes.
509
510       -oo verify-server-certificate
511       -oo verify-server-certificate="true|false"
512           For -o openstack (virt-v2v-output-openstack(1)) only, this can be
513           used to disable SSL certification validation when connecting to
514           OpenStack by specifying -oo verify-server-certificate=false.
515
516       -oo os-*=*
517           For -o openstack (virt-v2v-output-openstack(1)) only, set optional
518           OpenStack authentication.  For example -oo os-username=NAME is
519           equivalent to "openstack --os-username=NAME".
520
521       -oo rhv-cafile=ca.pem
522           For -o rhv-upload (virt-v2v-output-rhv(1)) only, the ca.pem file
523           (Certificate Authority), copied from /etc/pki/ovirt-engine/ca.pem
524           on the oVirt engine.
525
526       -oo rhv-cluster="CLUSTERNAME"
527           For -o rhv-upload (virt-v2v-output-rhv(1)) only, set the RHV
528           Cluster Name.  If not given it uses "Default".
529
530       -oo rhv-proxy
531           For -o rhv-upload (virt-v2v-output-rhv(1)) only, proxy the upload
532           through oVirt Engine.  This is slower than uploading directly to
533           the oVirt node but may be necessary if you do not have direct
534           network access to the nodes.
535
536       -oo rhv-verifypeer
537           For -o rhv-upload (virt-v2v-output-rhv(1)) only, verify the
538           oVirt/RHV server’s identity by checking the server‘s certificate
539           against the Certificate Authority.
540
541       -oo server-id="NAME|UUID"
542           For -o openstack (virt-v2v-output-openstack(1)) only, set the name
543           of the conversion appliance where virt-v2v is running.
544
545       -oo vdsm-compat=0.10
546       -oo vdsm-compat=1.1
547           If -o vdsm and the output format is qcow2, then we add the qcow2
548           compat=0.10 option to the output file for compatibility with RHEL 6
549           (see https://bugzilla.redhat.com/1145582).
550
551           If -oo vdsm-compat=1.1 is used then modern qcow2 (compat=1.1) files
552           are generated instead.
553
554           Currently -oo vdsm-compat=0.10 is the default, but this will change
555           to -oo vdsm-compat=1.1 in a future version of virt-v2v (when we can
556           assume that everyone is using a modern version of qemu).
557
558           Note this option only affects -o vdsm output.  All other output
559           modes (including -o rhv) generate modern qcow2 compat=1.1 files,
560           always.
561
562           If this option is available, then "vdsm-compat-option" will appear
563           in the --machine-readable output.
564
565       -oo vdsm-image-uuid=UUID
566       -oo vdsm-vol-uuid=UUID
567       -oo vdsm-vm-uuid=UUID
568       -oo vdsm-ovf-output=DIR
569           Normally the RHV output mode chooses random UUIDs for the target
570           guest.  However VDSM needs to control the UUIDs and passes these
571           parameters when virt-v2v runs under VDSM control.  The parameters
572           control:
573
574           •   the image directory of each guest disk (-oo vdsm-image-uuid)
575               (this option is passed once for each guest disk)
576
577           •   UUIDs for each guest disk (-oo vdsm-vol-uuid) (this option is
578               passed once for each guest disk)
579
580           •   the OVF file name (-oo vdsm-vm-uuid).
581
582           •   the OVF output directory (default current directory) (-oo vdsm-
583               ovf-output).
584
585           The format of UUIDs is: "12345678-1234-1234-1234-123456789abc"
586           (each hex digit can be "0-9" or "a-f"), conforming to OSF DCE 1.1.
587
588           These options can only be used with -o vdsm.
589
590       -oo vdsm-ovf-flavour=flavour
591           This option controls the format of the OVF generated at the end of
592           conversion.  Currently there are two possible flavours:
593
594           rhvexp
595               The OVF format used in RHV export storage domain.
596
597           ovirt
598               The OVF format understood by oVirt REST API.
599
600           For backward compatibility the default is rhvexp, but this may
601           change in the future.
602
603       -op file
604           Supply a file containing a password to be used when connecting to
605           the target hypervisor.  Note the file should contain the whole
606           password, without any trailing newline, and for security the file
607           should have mode 0600 so that others cannot read it.
608
609       -os storage
610           The location of the storage for the converted guest.
611
612           For -o libvirt, this is a libvirt directory pool (see
613           "virsh pool-list") or pool UUID.
614
615           For -o local and -o qemu, this is a directory name.  The directory
616           must exist.
617
618           For -o rhv-upload, this is the name of the destination Storage
619           Domain.
620
621           For -o openstack, this is the optional Cinder volume type.
622
623           For -o rhv, this can be an NFS path of the Export Storage Domain of
624           the form "<host>:<path>", eg:
625
626            rhv-storage.example.com:/rhv/export
627
628           The NFS export must be mountable and writable by the user and host
629           running virt-v2v, since the virt-v2v program has to actually mount
630           it when it runs.  So you probably have to run virt-v2v as "root".
631
632           Or: You can mount the Export Storage Domain yourself, and point -os
633           to the mountpoint.  Note that virt-v2v will still need to write to
634           this remote directory, so virt-v2v will still need to run as
635           "root".
636
637           You will get an error if virt-v2v is unable to mount/write to the
638           Export Storage Domain.
639
640       --print-source
641           Print information about the source guest and stop.  This option is
642           useful when you are setting up network and bridge maps.  See
643           "Networks and bridges".
644
645       --qemu-boot
646           This is the same as -oo qemu-boot.
647
648       -q
649       --quiet
650           This disables progress bars and other unnecessary output.
651
652       --root ask
653       --root single
654       --root first
655       --root /dev/sdX
656       --root /dev/VG/LV
657           Choose the root filesystem to be converted.
658
659           In the case where the virtual machine is dual-boot or multi-boot,
660           or where the VM has other filesystems that look like operating
661           systems, this option can be used to select the root filesystem
662           (a.k.a. "C:" drive or /) of the operating system that is to be
663           converted.  The Windows Recovery Console, certain attached DVD
664           drives, and bugs in libguestfs inspection heuristics, can make a
665           guest look like a multi-boot operating system.
666
667           The default in virt-v2v ≤ 0.7.1 was --root single, which causes
668           virt-v2v to die if a multi-boot operating system is found.
669
670           Since virt-v2v ≥ 0.7.2 the default is now --root ask: If the VM is
671           found to be multi-boot, then virt-v2v will stop and list the
672           possible root filesystems and ask the user which to use.  This
673           requires that virt-v2v is run interactively.
674
675           --root first means to choose the first root device in the case of a
676           multi-boot operating system.  Since this is a heuristic, it may
677           sometimes choose the wrong one.
678
679           You can also name a specific root device, eg. --root /dev/sda2
680           would mean to use the second partition on the first hard drive.  If
681           the named root device does not exist or was not detected as a root
682           device, then virt-v2v will fail.
683
684           Note that there is a bug in grub which prevents it from
685           successfully booting a multiboot system if virtio is enabled.  Grub
686           is only able to boot an operating system from the first virtio
687           disk.  Specifically, /boot must be on the first virtio disk, and it
688           cannot chainload an OS which is not in the first virtio disk.
689
690       -v
691       --verbose
692           Enable verbose messages for debugging.
693
694       -V
695       --version
696           Display version number and exit.
697
698       --wrap
699           Wrap error, warning, and informative messages.  This is the default
700           when the output is a tty.  If the output of the program is
701           redirected to a file, wrapping is disabled unless you use this
702           option.
703
704       -x  Enable tracing of libguestfs API calls.
705

NOTES

707   Xen paravirtualized guests
708       Older versions of virt-v2v could turn a Xen paravirtualized (PV) guest
709       into a KVM guest by installing a new kernel.  This version of virt-v2v
710       does not attempt to install any new kernels.  Instead it will give you
711       an error if there are only Xen PV kernels available.
712
713       Therefore before conversion you should check that a regular kernel is
714       installed.  For some older Linux distributions, this means installing a
715       kernel from the table below:
716
717        RHEL 3         (Does not apply, as there was no Xen PV kernel)
718
719        RHEL 4         i686 with > 10GB of RAM: install 'kernel-hugemem'
720                       i686 SMP: install 'kernel-smp'
721                       other i686: install 'kernel'
722                       x86-64 SMP with > 8 CPUs: install 'kernel-largesmp'
723                       x86-64 SMP: install 'kernel-smp'
724                       other x86-64: install 'kernel'
725
726        RHEL 5         i686: install 'kernel-PAE'
727                       x86-64: install 'kernel'
728
729        SLES 10        i586 with > 10GB of RAM: install 'kernel-bigsmp'
730                       i586 SMP: install 'kernel-smp'
731                       other i586: install 'kernel-default'
732                       x86-64 SMP: install 'kernel-smp'
733                       other x86-64: install 'kernel-default'
734
735        SLES 11+       i586: install 'kernel-pae'
736                       x86-64: install 'kernel-default'
737
738        Windows        (Does not apply, as there is no Xen PV Windows kernel)
739
740   Enabling virtio
741       "Virtio" is the name for a set of drivers which make disk (block
742       device), network and other guest operations work much faster on KVM.
743
744       Older versions of virt-v2v could install these drivers for certain
745       Linux guests.  This version of virt-v2v does not attempt to install new
746       Linux kernels or drivers, but will warn you if they are not installed
747       already.
748
749       In order to enable virtio, and hence improve performance of the guest
750       after conversion, you should ensure that the minimum versions of
751       packages are installed before conversion, by consulting the table
752       below.
753
754        RHEL 3         No virtio drivers are available
755
756        RHEL 4         kernel >= 2.5.9-89.EL
757                       lvm2 >= 2.02.42-5.el4
758                       device-mapper >= 1.02.28-2.el4
759                       selinux-policy-targeted >= 1.17.30-2.152.el4
760                       policycoreutils >= 1.18.1-4.13
761
762        RHEL 5         kernel >= 2.6.18-128.el5
763                       lvm2 >= 2.02.40-6.el5
764                       selinux-policy-targeted >= 2.4.6-203.el5
765
766        RHEL 6+        All versions support virtio
767
768        Fedora         All versions support virtio
769
770        SLES 11+       All versions support virtio
771
772        SLES 10        kernel >= 2.6.16.60-0.85.1
773
774        OpenSUSE 11+   All versions support virtio
775
776        OpenSUSE 10    kernel >= 2.6.25.5-1.1
777
778        Debian 6+      All versions support virtio
779
780        Ubuntu 10.04+  All versions support virtio
781
782        Windows        Drivers are installed from the ISO or directory pointed
783                       to by the "VIRTIO_WIN" environment variable if present.
784                       If the "VIRTIO_WIN" environment variable is absent
785                       (which is the recommended setting), then libosinfo is
786                       consulted first, for driver files that are locally
787                       available on the conversion host.
788
789   RHEL 4: SELinux relabel appears to hang forever
790       In RHEL ≤ 4.7 there was a bug which causes SELinux relabelling to
791       appear to hang forever at:
792
793        *** Warning -- SELinux relabel is required. ***
794        *** Disabling security enforcement.         ***
795        *** Relabeling could take a very long time, ***
796        *** depending on file system size.          ***
797
798       In reality it is waiting for you to press a key (but there is no visual
799       indication of this).  You can either hit the "[Return]" key, at which
800       point the guest will finish relabelling and reboot, or you can install
801       policycoreutils ≥ 1.18.1-4.13 before starting the v2v conversion.  See
802       also https://bugzilla.redhat.com/show_bug.cgi?id=244636
803
804   Debian and Ubuntu
805       "warning: could not determine a way to update the configuration of
806       Grub2"
807
808       Currently, virt-v2v has no way to set the default kernel in Debian and
809       Ubuntu guests using GRUB 2 as bootloader.  This means that virt-v2v
810       will not change the default kernel used for booting, even in case it is
811       not the best kernel available on the guest.  A recommended procedure
812       is, before using virt-v2v, to check that the boot kernel is the best
813       kernel available in the guest (for example by making sure the guest is
814       up-to-date).
815
816       "vsyscall attempted with vsyscall=none"
817
818       When run on a recent Debian host virt-v2v may fail to convert guests
819       which were created before 2013.  In the debugging output you will see a
820       crash message similar to:
821
822        vsyscall attempted with vsyscall=none ip:...
823        segfault at ...
824
825       This is caused because Debian removed support for running old binaries
826       which used the legacy vsyscall page to call into the kernel.
827
828       You can work around this problem by running this command before running
829       virt-v2v:
830
831        export LIBGUESTFS_APPEND="vsyscall=emulate"
832
833       For more information, see https://bugzilla.redhat.com/1592061
834
835   Windows
836       Windows  8 Fast Startup is incompatible with virt-v2v
837
838       Guests which use the Windows ≥ 8 "Fast Startup" feature (or guests
839       which are hibernated) cannot be converted with virt-v2v.  You will see
840       an error:
841
842        virt-v2v: error: unable to mount the disk image for writing. This has
843        probably happened because Windows Hibernation or Fast Restart is being
844        used in this guest. You have to disable this (in the guest) in order
845        to use virt-v2v.
846
847       As the message says, you need to boot the guest and disable the "Fast
848       Startup" feature (Control Panel → Power Options → Choose what the power
849       buttons do → Change settings that are currently unavailable → Turn on
850       fast startup), and shut down the guest, and then you will be able to
851       convert it.
852
853       For more information, see: "WINDOWS HIBERNATION AND WINDOWS 8 FAST
854       STARTUP" in guestfs(3).
855
856       Boot failure: 0x0000007B
857
858       This boot failure is caused by Windows being unable to find or load the
859       right disk driver (eg. viostor.sys).  If you experience this error,
860       here are some things to check:
861
862       •   First ensure that the guest boots on the source hypervisor before
863           conversion.
864
865       •   Check you have the Windows virtio drivers available in
866           /usr/share/virtio-win, and that virt-v2v did not print any warning
867           about not being able to install virtio drivers.
868
869           On Red Hat Enterprise Linux 7, you will need to install the signed
870           drivers available in the "virtio-win" package.  If you do not have
871           access to the signed drivers, then you will probably need to
872           disable driver signing in the boot menus.
873
874       •   Check that you are presenting a virtio-blk interface (not virtio-
875           scsi and not ide) to the guest.  On the qemu/KVM command line you
876           should see something similar to this:
877
878            ... -drive file=windows-sda,if=virtio ...
879
880           In libvirt XML, you should see:
881
882            <target dev='vda' bus='virtio'/>
883
884       •   Check that Windows Group Policy does not prevent the driver from
885           being installed or used.  Try deleting Windows Group Policy before
886           conversion.
887
888       •   Check there is no anti-virus or other software which implements
889           Group Policy-like prohibitions on installing or using new drivers.
890
891       •   Enable boot debugging and check the viostor.sys driver is being
892           loaded.
893
894       OpenStack and Windows reactivation
895
896       OpenStack does not offer stable device / PCI addresses to guests.
897       Every time it creates or starts a guest, it regenerates the libvirt XML
898       for that guest from scratch.  The libvirt XML will have no <address>
899       fields.  Libvirt will then assign addresses to devices, in a
900       predictable manner.  Addresses may change if any of the following are
901       true:
902
903       •   A new disk or network device has been added or removed from the
904           guest.
905
906       •   The version of OpenStack or (possibly) libvirt has changed.
907
908       Because Windows does not like "hardware" changes of this kind, it may
909       trigger Windows reactivation.
910
911       This can also prevent booting with a 7B error [see previous section] if
912       the guest has group policy containing "Device Installation
913       Restrictions".
914
915       Support for SHA-2 certificates in Windows 7 and Windows Server 2008 R2
916
917       Later versions of the Windows virtio drivers are signed using SHA-2
918       certificates (instead of SHA-1).  The original shipping Windows 7 and
919       Windows Server 2008 R2 did not understand SHA-2 certificates and so the
920       Windows virtio drivers will not install properly.
921
922       To fix this you must apply SHA-2 Code Signing Support from:
923       https://docs.microsoft.com/en-us/security-updates/SecurityAdvisories/2015/3033929
924       before converting the guest.
925
926       For further information see:
927       https://bugzilla.redhat.com/show_bug.cgi?id=1624878
928
929   Networks and bridges
930       Guests are usually connected to one or more networks, and when
931       converted to the target hypervisor you usually want to reconnect those
932       networks at the destination.  The options --network, --bridge and --mac
933       allow you to do that.
934
935       If you are unsure of what networks and bridges are in use on the source
936       hypervisor, then you can examine the source metadata (libvirt XML,
937       vCenter information, etc.).  Or you can run virt-v2v with the
938       --print-source option which causes virt-v2v to print out the
939       information it has about the guest on the source and then exit.
940
941       In the --print-source output you will see a section showing the guest’s
942       Network Interface Cards (NICs):
943
944        $ virt-v2v [-i ...] --print-source name
945        [...]
946        NICs:
947            Network "default" mac: 52:54:00:d0:cf:0e
948
949       Bridges are special classes of network devices which are attached to a
950       named external network on the source hypervisor, for example:
951
952        $ virt-v2v [-i ...] --print-source name
953        [...]
954        NICs:
955            Bridge "br0"
956
957       To map a specific source bridge to a target network, for example "br0"
958       on the source to "ovirtmgmt" on the target, use:
959
960        virt-v2v [...] --bridge br0:ovirtmgmt
961
962       To map every bridge to a target network, use:
963
964        virt-v2v [...] --bridge ovirtmgmt
965
966       Fine-grained mapping of guest NICs
967
968       The --mac option gives you more control over the mapping, letting you
969       map single NICs to either networks or bridges on the target.  For
970       example a source guest with two NICs could map them individually to two
971       networks called "mgmt" and "clientdata" like this:
972
973        $ virt-v2v [...] \
974           --mac 52:54:00:d0:cf:0e:network:mgmt \
975           --mac 52:54:00:d0:cf:0f:network:clientdata
976
977       Note that virt-v2v does not have the ability to change a guest’s MAC
978       address.  The MAC address is part of the guest metadata and must remain
979       the same on source and target hypervisors.  Most guests will use the
980       MAC address to set up persistent associations between NICs and internal
981       names (like "eth0"), with firewall settings, or even for other purposes
982       like software licensing.
983
984   Resource requirements
985       Network
986
987       The most important resource for virt-v2v appears to be network
988       bandwidth.  Virt-v2v should be able to copy guest data at gigabit
989       ethernet speeds or greater.
990
991       Ensure that the network connections between servers (conversion server,
992       NFS server, vCenter, Xen) are as fast and as low latency as possible.
993
994       Disk space
995
996       Virt-v2v places potentially large temporary files in $VIRT_V2V_TMPDIR
997       (usually /var/tmp, see also "ENVIRONMENT VARIBLES" below).  Using tmpfs
998       is a bad idea.
999
1000       For each guest disk, an overlay is stored temporarily.  This stores the
1001       changes made during conversion, and is used as a cache.  The overlays
1002       are not particularly large - tens or low hundreds of megabytes per disk
1003       is typical.  In addition to the overlay(s), input and output methods
1004       may use disk space, as outlined in the table below.
1005
1006       -i ova
1007           This temporarily places a full copy of the uncompressed source
1008           disks in $VIRT_V2V_TMPDIR (or /var/tmp).
1009
1010       -o glance
1011           This temporarily places a full copy of the output disks in
1012           $VIRT_V2V_TMPDIR (or /var/tmp).
1013
1014       -o local
1015       -o qemu
1016           You must ensure there is sufficient space in the output directory
1017           for the converted guest.
1018
1019       See also "Minimum free space check in the host" below.
1020
1021       VMware vCenter resources
1022
1023       Copying from VMware vCenter is currently quite slow, but we believe
1024       this to be an issue with VMware.  Ensuring the VMware ESXi hypervisor
1025       and vCenter are running on fast hardware with plenty of memory should
1026       alleviate this.
1027
1028       Compute power and RAM
1029
1030       Virt-v2v is not especially compute or RAM intensive.  If you are
1031       running many parallel conversions, then you may consider allocating one
1032       CPU core and 2 GB of RAM per running instance.
1033
1034       Virt-v2v can be run in a virtual machine.
1035
1036       Trimming
1037
1038       Virt-v2v attempts to optimize the speed of conversion by ignoring guest
1039       filesystem data which is not used.  This would include unused
1040       filesystem blocks, blocks containing zeroes, and deleted files.
1041
1042       To do this, virt-v2v issues a non-destructive fstrim(8) operation.  As
1043       this happens to an overlay placed over the guest data, it does not
1044       affect the source in any way.
1045
1046       If this fstrim operation fails, you will see a warning, but virt-v2v
1047       will continue anyway.  It may run more slowly (in some cases much more
1048       slowly), because it is copying the unused parts of the disk.
1049
1050       Unfortunately support for fstrim is not universal, and it also depends
1051       on specific details of the filesystem, partition alignment, and backing
1052       storage.  As an example, NTFS filesystems cannot be fstrimmed if they
1053       occupy a partition which is not aligned to the underlying storage.
1054       That was the default on Windows before Vista.  As another example, VFAT
1055       filesystems (used by UEFI guests) cannot be trimmed at all.
1056
1057       fstrim support in the Linux kernel is improving gradually, so over time
1058       some of these restrictions will be lifted and virt-v2v will work
1059       faster.
1060
1061   Post-conversion tasks
1062       Guest network configuration
1063
1064       Virt-v2v cannot currently reconfigure a guest’s network configuration.
1065       If the converted guest is not connected to the same subnet as the
1066       source, its network configuration may have to be updated.  See also
1067       virt-customize(1).
1068
1069       Converting a Windows guest
1070
1071       When converting a Windows guests, the conversion process is split into
1072       two stages:
1073
1074       1.  Offline conversion.
1075
1076       2.  First boot.
1077
1078       The guest will be bootable after the offline conversion stage, but will
1079       not yet have all necessary drivers installed to work correctly.  These
1080       will be installed automatically the first time the guest boots.
1081
1082       N.B. Take care not to interrupt the automatic driver installation
1083       process when logging in to the guest for the first time, as this may
1084       prevent the guest from subsequently booting correctly.
1085
1086   Free space for conversion
1087       Free space in the guest
1088
1089       Virt-v2v checks there is sufficient free space in the guest filesystem
1090       to perform the conversion.  Currently it checks:
1091
1092       Linux root filesystem
1093           Minimum free space: 100 MB
1094
1095       Linux /boot
1096           Minimum free space: 50 MB
1097
1098           This is because we need to build a new initramfs for some
1099           Enterprise Linux conversions.
1100
1101       Windows "C:" drive
1102           Minimum free space: 100 MB
1103
1104           We may have to copy in many virtio drivers and guest agents.
1105
1106       Any other mountable filesystem
1107           Minimum free space: 10 MB
1108
1109       In addition to the actual free space, each filesystem is required to
1110       have at least 100 available inodes.
1111
1112       Minimum free space check in the host
1113
1114       You must have sufficient free space in the host directory used to store
1115       large temporary overlays.  To find out which directory this is, use:
1116
1117        $ df -h "`guestfish get-cachedir`"
1118        Filesystem        Size  Used Avail Use% Mounted on
1119        /dev/mapper/root   50G   40G  6.8G  86% /
1120
1121       and look under the "Avail" column.  Virt-v2v will refuse to do the
1122       conversion at all unless at least 1GB is available there.  You can
1123       change the directory that virt-v2v uses by setting $VIRT_V2V_TMPDIR.
1124
1125       See also "Resource requirements" above and "ENVIRONMENT VARIABLES"
1126       below.
1127
1128   Running virt-v2v as root or non-root
1129       Nothing in virt-v2v inherently needs root access, and it will run just
1130       fine as a non-root user.  However, certain external features may
1131       require either root or a special user:
1132
1133       Mounting the Export Storage Domain
1134           When using -o rhv -os server:/esd virt-v2v has to have sufficient
1135           privileges to NFS mount the Export Storage Domain from "server".
1136
1137           You can avoid needing root here by mounting it yourself before
1138           running virt-v2v, and passing -os /mountpoint instead, but first of
1139           all read the next section ...
1140
1141       Writing to the Export Storage Domain as 36:36
1142           RHV-M cannot read files and directories from the Export Storage
1143           Domain unless they have UID:GID 36:36.  You will see VM import
1144           problems if the UID:GID is not correct.
1145
1146           When you run virt-v2v -o rhv as root, virt-v2v attempts to create
1147           files and directories with the correct ownership.  If you run
1148           virt-v2v as non-root, it will probably still work, but you will
1149           need to manually change ownership after virt-v2v has finished.
1150
1151       Writing to libvirt
1152           When using -o libvirt, you may need to run virt-v2v as root so that
1153           it can write to the libvirt system instance (ie. "qemu:///system")
1154           and to the default location for disk images (usually
1155           /var/lib/libvirt/images).
1156
1157           You can avoid this by setting up libvirt connection authentication,
1158           see http://libvirt.org/auth.html.  Alternatively, use -oc
1159           qemu:///session, which will write to your per-user libvirt
1160           instance.
1161
1162       Writing to Openstack
1163           Because of how Cinder volumes are presented as /dev block devices,
1164           using -o openstack normally requires that virt-v2v is run as root.
1165
1166       Writing to Glance
1167           This does not need root (in fact it probably won’t work), but may
1168           require either a special user and/or for you to source a script
1169           that sets authentication environment variables.  Consult the Glance
1170           documentation.
1171
1172       Writing to block devices
1173           This normally requires root.  See the next section.
1174
1175   Writing to block devices
1176       Some output modes write to local files.  In general these modes also
1177       let you write to block devices, but before you run virt-v2v you may
1178       have to arrange for symbolic links to the desired block devices in the
1179       output directory.
1180
1181       For example if using -o local -os /dir then virt-v2v would normally
1182       create files called:
1183
1184        /dir/name-sda     # first disk
1185        /dir/name-sdb     # second disk
1186        ...
1187        /dir/name.xml     # metadata
1188
1189       If you wish the disks to be written to block devices then you would
1190       need to create /dir/name-sda (etc) as symlinks to the block devices:
1191
1192        # lvcreate -L 10G -n VolumeForDiskA VG
1193        # lvcreate -L 6G -n VolumeForDiskB VG
1194        # ln -sf /dev/VG/VolumeForDiskA /dir/name-sda
1195        # ln -sf /dev/VG/VolumeForDiskB /dir/name-sdb
1196
1197       Note that you must precreate the correct number of block devices of the
1198       correct size.  Typically -of raw has to be used too, but other formats
1199       such as qcow2 can be useful occasionally so virt-v2v does not force you
1200       to use raw on block devices.
1201
1202   Minimal XML for -i libvirtxml option
1203       When using the -i libvirtxml option, you have to supply some libvirt
1204       XML.  Writing this from scratch is hard, so the template below is
1205       helpful.
1206
1207       Note this should only be used for testing and/or where you know what
1208       you're doing!  If you have libvirt metadata for the guest, always use
1209       that instead.
1210
1211        <domain type='kvm'>
1212          <name> NAME </name>
1213          <memory>1048576</memory>
1214          <vcpu>2</vcpu>
1215          <os>
1216            <type>hvm</type>
1217            <boot dev='hd'/>
1218          </os>
1219          <features>
1220            <acpi/>
1221            <apic/>
1222            <pae/>
1223          </features>
1224          <devices>
1225            <disk type='file' device='disk'>
1226              <driver name='qemu' type='raw'/>
1227              <source file='/path/to/disk/image'/>
1228              <target dev='hda' bus='ide'/>
1229            </disk>
1230            <interface type='network'>
1231              <mac address='52:54:00:01:02:03'/>
1232              <source network='default'/>
1233              <model type='rtl8139'/>
1234            </interface>
1235          </devices>
1236        </domain>
1237
1238   Machine readable output
1239       The --machine-readable option can be used to make the output more
1240       machine friendly, which is useful when calling virt-v2v from other
1241       programs, GUIs etc.
1242
1243       There are two ways to use this option.
1244
1245       Firstly use the option on its own to query the capabilities of the
1246       virt-v2v binary.  Typical output looks like this:
1247
1248        $ virt-v2v --machine-readable
1249        virt-v2v
1250        libguestfs-rewrite
1251        colours-option
1252        vdsm-compat-option
1253        input:disk
1254        [...]
1255        output:local
1256        [...]
1257        convert:linux
1258        convert:windows
1259
1260       A list of features is printed, one per line, and the program exits with
1261       status 0.
1262
1263       The "input:" and "output:" features refer to -i and -o (input and
1264       output mode) options supported by this binary.  The "convert:" features
1265       refer to guest types that this binary knows how to convert.
1266
1267       Secondly use the option in conjunction with other options to make the
1268       regular program output more machine friendly.
1269
1270       At the moment this means:
1271
1272       1.  Progress bar messages can be parsed from stdout by looking for this
1273           regular expression:
1274
1275            ^[0-9]+/[0-9]+$
1276
1277       2.  The calling program should treat messages sent to stdout (except
1278           for progress bar messages) as status messages.  They can be logged
1279           and/or displayed to the user.
1280
1281       3.  The calling program should treat messages sent to stderr as error
1282           messages.  In addition, virt-v2v exits with a non-zero status code
1283           if there was a fatal error.
1284
1285       Virt-v2v ≤ 0.9.1 did not support the --machine-readable option at all.
1286       The option was added when virt-v2v was rewritten in 2014.
1287
1288       It is possible to specify a format string for controlling the output;
1289       see "ADVANCED MACHINE READABLE OUTPUT" in guestfs(3).
1290

FILES

1292       /usr/share/virtio-win
1293           (Optional)
1294
1295           If this directory is present, then virtio drivers for Windows
1296           guests will be found from this directory and installed in the guest
1297           during conversion.
1298

ENVIRONMENT VARIABLES

1300       "VIRT_V2V_TMPDIR"
1301       "LIBGUESTFS_CACHEDIR"
1302           Location of the temporary directory used for the potentially large
1303           temporary overlay file.  If neither environment variable is set
1304           then /var/tmp is used.
1305
1306           To reliably ensure large temporary files are cleaned up (for
1307           example in case virt-v2v crashes) you should create a randomly
1308           named directory under /var/tmp, set "VIRT_V2V_TMPDIR" to point to
1309           this directory, then when virt-v2v exits remove the directory.
1310
1311           See the "Disk space" section above.
1312
1313       "VIRT_TOOLS_DATA_DIR"
1314           This can point to the directory containing data files used for
1315           Windows conversion.
1316
1317           Normally you do not need to set this.  If not set, a compiled-in
1318           default will be used (something like /usr/share/virt-tools).
1319
1320           This directory may contain the following files:
1321
1322           rhsrvany.exe
1323               (Required when doing conversions of Windows guests)
1324
1325               This is the RHSrvAny Windows binary, used to install a
1326               "firstboot" script in the guest during conversion of Windows
1327               guests.
1328
1329               See also: "https://github.com/rwmjones/rhsrvany"
1330
1331           pnp_wait.exe
1332               (Recommended when doing conversions of Windows guests)
1333
1334               This tool waits for newly installed Windows devices to become
1335               available before trying to configure them, for example to set
1336               network configuration.  It is part of the RHSrvAny project.
1337
1338           pvvxsvc.exe
1339               This is a Windows binary shipped with SUSE VMDP, used to
1340               install a "firstboot" script in Windows guests.  It is an
1341               alternative to RHSrvAny.
1342
1343       "VIRTIO_WIN"
1344           This is an override for where virtio drivers for Windows are
1345           searched for.  It can be a directory or point to virtio-win.iso (CD
1346           ROM image containing drivers).
1347
1348           If unset, then we look for drivers via whichever of these methods
1349           succeeds first:
1350
1351           "osinfo-db"
1352               Load osinfo data from the default paths, and attempt to find
1353               drivers via libosinfo lookup.  This is the preferred method.
1354
1355           /usr/share/virtio-win/virtio-win.iso
1356               The ISO containing virtio drivers for Windows.
1357
1358           /usr/share/virtio-win
1359               The exploded tree of virtio drivers for Windows.  This is
1360               usually incomplete, hence the least preferred method.
1361
1362           See "Enabling virtio".
1363
1364       For other environment variables, see "ENVIRONMENT VARIABLES" in
1365       guestfs(3).
1366

OTHER TOOLS

1368       engine-image-uploader(8)
1369           Variously called "engine-image-uploader", "ovirt-image-uploader" or
1370           "rhevm-image-uploader", this tool allows you to copy a guest from
1371           one oVirt or RHV Export Storage Domain to another.  It only permits
1372           importing a guest that was previously exported from another
1373           oVirt/RHV instance.
1374
1375       import-to-ovirt.pl
1376           This script can be used to import guests that already run on KVM to
1377           oVirt or RHV.  For more information, see this blog posting by the
1378           author of virt-v2v:
1379
1380           https://rwmj.wordpress.com/2015/09/18/importing-kvm-guests-to-ovirt-or-rhev/#content
1381

SEE ALSO

1383       virt-p2v(1), virt-v2v-in-place(1), virt-customize(1), virt-df(1),
1384       virt-filesystems(1), virt-sparsify(1), virt-sysprep(1), guestfs(3),
1385       guestfish(1), qemu-img(1), engine-image-uploader(8),
1386       import-to-ovirt.pl, nbdkit(1), nbdkit-vddk-plugin(1),
1387       http://libguestfs.org/.
1388

AUTHORS

1390       Matthew Booth
1391
1392       Cédric Bosdonnat
1393
1394       Laszlo Ersek
1395
1396       Tomáš Golembiovský
1397
1398       Shahar Havivi
1399
1400       Richard W.M. Jones
1401
1402       Roman Kagan
1403
1404       Mike Latimer
1405
1406       Nir Soffer
1407
1408       Pino Toscano
1409
1410       Xiaodai Wang
1411
1412       Ming Xie
1413
1414       Tingting Zheng
1415
1417       Copyright (C) 2009-2022 Red Hat Inc.
1418

LICENSE

1420       This program is free software; you can redistribute it and/or modify it
1421       under the terms of the GNU General Public License as published by the
1422       Free Software Foundation; either version 2 of the License, or (at your
1423       option) any later version.
1424
1425       This program is distributed in the hope that it will be useful, but
1426       WITHOUT ANY WARRANTY; without even the implied warranty of
1427       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
1428       General Public License for more details.
1429
1430       You should have received a copy of the GNU General Public License along
1431       with this program; if not, write to the Free Software Foundation, Inc.,
1432       51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
1433

BUGS

1435       To get a list of bugs against libguestfs, use this link:
1436       https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools
1437
1438       To report a new bug against libguestfs, use this link:
1439       https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
1440
1441       When reporting a bug, please supply:
1442
1443       •   The version of libguestfs.
1444
1445       •   Where you got libguestfs (eg. which Linux distro, compiled from
1446           source, etc)
1447
1448       •   Describe the bug accurately and give a way to reproduce it.
1449
1450       •   Run libguestfs-test-tool(1) and paste the complete, unedited output
1451           into the bug report.
1452
1453
1454
1455virt-v2v-2.0.7                    2022-07-06                       virt-v2v(1)
Impressum