.\" Automatically generated by Podwrapper::Man 1.40.2 (Pod::Simple 3.35)
.\"
.\" 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-output-local 1"
.TH virt-v2v-output-local 1 "2019-02-07" "libguestfs-1.40.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\-output\-local \- Using virt\-v2v to convert guests to local files or
libvirt
.SH "書式"
.IX Header "書式"
.Vb 1
\& virt\-v2v [\-i* options] [\-o libvirt] \-os POOL
\&
\& virt\-v2v [\-i* options] \-o local \-os DIRECTORY
\&
\& virt\-v2v [\-i* options] \-o qemu \-os DIRECTORY [\-\-qemu\-boot]
\&
\& virt\-v2v [\-i* options] \-o null
.Ve
.SH "説明"
.IX Header "説明"
This page documents how to use \fBvirt\-v2v\fR\|(1) to convert guests to local
files or to a locally running libvirt instance. There are four output modes
you can select on the virt\-v2v command line:
.ie n .IP "\fB\-o libvirt \-os\fR ""POOL""" 4
.el .IP "\fB\-o libvirt \-os\fR \f(CWPOOL\fR" 4
.IX Item "-o libvirt -os POOL"
.PD 0
.ie n .IP "\fB\-os\fR ""POOL""" 4
.el .IP "\fB\-os\fR \f(CWPOOL\fR" 4
.IX Item "-os POOL"
.PD
This converts the guest to a libvirt directory pool call \f(CW\*(C`POOL\*(C'\fR, and
instantiates the guest in libvirt (but does not start it running). See
\&\*(L"\s-1OUTPUT TO LIBVIRT\*(R"\s0 below.
.Sp
\&\fI\-o libvirt\fR is the default if no \fI\-o\fR option is given, so you can omit
it.
.ie n .IP "\fB\-o local \-os\fR ""DIRECTORY""" 4
.el .IP "\fB\-o local \-os\fR \f(CWDIRECTORY\fR" 4
.IX Item "-o local -os DIRECTORY"
This converts the guest to files in \f(CW\*(C`DIRECTORY\*(C'\fR. A libvirt \s-1XML\s0 file is
also created, but unlike \fI\-o libvirt\fR the guest is not instantiated in
libvirt, only files are created.
.Sp
The files will be called:
.Sp
.Vb 2
\& NAME\-sda, NAME\-sdb, etc. Guest disk(s).
\& NAME.xml Libvirt XML.
.Ve
.Sp
where \f(CW\*(C`NAME\*(C'\fR is the guest name.
.ie n .IP "\fB\-o qemu \-os\fR ""DIRECTORY""" 4
.el .IP "\fB\-o qemu \-os\fR \f(CWDIRECTORY\fR" 4
.IX Item "-o qemu -os DIRECTORY"
.PD 0
.ie n .IP "\fB\-o qemu \-os\fR ""DIRECTORY"" \fB\-\-qemu\-boot\fR" 4
.el .IP "\fB\-o qemu \-os\fR \f(CWDIRECTORY\fR \fB\-\-qemu\-boot\fR" 4
.IX Item "-o qemu -os DIRECTORY --qemu-boot"
.PD
This converts the guest to files in \f(CW\*(C`DIRECTORY\*(C'\fR. Unlike \fI\-o local\fR above,
a shell script is created which contains the raw qemu command you would need
to boot the guest. However the shell script is not run, \fIunless\fR you also
add the \fI\-\-qemu\-boot\fR option.
.IP "\fB\-o null\fR" 4
.IX Item "-o null"
The guest is converted, but the final result is thrown away and no metadata
is created. This is mainly useful for testing.
.SH "OUTPUT TO LIBVIRT"
.IX Header "OUTPUT TO LIBVIRT"
The \fI\-o libvirt\fR option lets you upload the converted guest to a
libvirt-managed host. There are several limitations:
.IP "\(bu" 4
You can only use a local libvirt connection [see below for how to workaround
this].
.IP "\(bu" 4
The \fI\-os pool\fR option must specify a directory pool, not anything more
exotic such as iSCSI [but see below].
.IP "\(bu" 4
You can only upload to a \s-1KVM\s0 hypervisor.
.SS "Workaround for output to a remote libvirt instance and/or a non-directory storage pool"
.IX Subsection "Workaround for output to a remote libvirt instance and/or a non-directory storage pool"
.IP "1." 4
Use virt\-v2v in \fI\-o local\fR mode to convert the guest disks and metadata
into a local temporary directory:
.Sp
.Vb 1
\& virt\-v2v [...] \-o local \-os /var/tmp
.Ve
.Sp
This creates two (or more) files in \fI/var/tmp\fR called:
.Sp
.Vb 2
\& /var/tmp/NAME.xml # the libvirt XML (metadata)
\& /var/tmp/NAME\-sda # the guest’s first disk
.Ve
.Sp
(for \f(CW\*(C`NAME\*(C'\fR substitute the guest’s name).
.IP "2." 4
Upload the converted disk(s) into the storage pool called \f(CW\*(C`POOL\*(C'\fR:
.Sp
.Vb 3
\& size=$(stat \-c%s /var/tmp/NAME\-sda)
\& virsh vol\-create\-as POOL NAME\-sda $size \-\-format raw
\& virsh vol\-upload \-\-pool POOL NAME\-sda /var/tmp/NAME\-sda
.Ve
.IP "3." 4
Edit \fI/var/tmp/NAME.xml\fR to change \fI/var/tmp/NAME\-sda\fR to the pool name.
In other words, locate the following bit of \s-1XML:\s0
.Sp
.Vb 5
\&
\&
\&
\&
\&
.Ve
.Sp
and change two things: The \f(CW\*(C`type=\*(Aqfile\*(Aq\*(C'\fR attribute must be changed to
\&\f(CW\*(C`type=\*(Aqvolume\*(Aq\*(C'\fR, and the \f(CW\*(C`