Sys::Virt::StorageVol(User Contributed Perl DocumentatSys::Virt::StorageVol(3)NAMESys::Virt::StorageVol - Represent & manage a libvirt storage volume
DESCRIPTION
The "Sys::Virt::StorageVol" module represents a storage volume managed
by libvirt. A storage volume is always associated with a containing
storage pool ("Sys::Virt::StoragePool").
METHODS
my $name = $vol->get_name()
Returns a string with a locally unique name of the storage vol
my $name = $vol->get_key()
Returns a string with a globally unique key for the storage vol
my $name = $vol->get_path()
Returns a string with a locally unique file path of the storage vol
my $xml = $vol->get_xml_description()
Returns an XML document containing a complete description of the
storage vol's configuration
$vol->delete($flags)
Immediately delete the storage volume freeing its storage
resources. The "flags" parameter indicates any special action to
be taken when deleting the volume.
$vol->resize($newcapacity, $flags=0)
Adjust the size of the storage volume. The $newcapacity value
semantics depend on the $flags parameter. If $flags specifies
"RESIZE_DELTA" then the $newcapacity is relative to the current
size. If $flags specifies "RESIZE_SHRINK" then the $newcapacity
value is the amount of space to remove
$vol->wipe($flags = 0)
Clear the data in the storage volume to avoid future information
leak. The "flags" parameter is currently unused and defaults to
zero.
$vol->wipe_pattern($algorithm, $flags = 0)
Clear the data in the storage volume to avoid future information
leak. The $algorithm parameter specifies the data pattern used to
erase data, and should be one of the WIPE ALGORITHM CONSTANTS
listed later. The "flags" parameter is currently unused and
defaults to zero.
my $info = $vol->get_info()
Retrieve live information about the storage volume. The returned
$info hash reference contains three keys. "type" indicates whether
the volume is a file or block device. "capacity" provides the
maximum logical size of the volume. "allocation" provides the
current physical usage of the volume. The allocation may be less
than the capacity for sparse, or grow-on-demand volumes. The
allocation may also be larger than the capacity, if there is a
metadata overhead for the volume format.
$vol->download($st, $offset, $length);
Download data from $vol using the stream $st. If $offset and
$length are non-zero, then restrict data to the specified volume
byte range.
$vol->upload($st, $offset, $length);
Upload data to $vol using the stream $st. If $offset and $length
are non-zero, then restrict data to the specified volume byte
range.
CONSTANTS
The following sets of constants are useful when dealing with storage
volumes
VOLUME TYPES
The following constants are useful for interpreting the "type" field in
the hash returned by the "get_info" method
Sys::Virt::StorageVol::TYPE_FILE
The volume is a plain file
Sys::Virt::StorageVol::TYPE_BLOCK
The volume is a block device
Sys::Virt::StorageVol::TYPE_DIR
The volume is a directory
Sys::Virt::StorageVol::TYPE_NETWORK
The volume is a network source
CREATE MODES
The following constants are useful for the "flags" parameter of the
"create" method
Sys::Virt::StorageVol::CREATE_PREALLOC_METADATA
Preallocate header metadata when creating the volume.
DELETE MODES
The following constants are useful for the "flags" parameter of the
"delete" method
Sys::Virt::StorageVol::DELETE_NORMAL
Do a plain delete without any attempt to scrub data.
Sys::Virt::StorageVol::DELETE_ZEROED
Zero out current allocated blocks when deleteing the volume
WIPE ALGORITHM CONSTANTS
The following constants specify the algorithm for erasing data
Sys::Virt::StorageVol::WIPE_ALG_BSI
9-pass method recommended by the German Center of Security in
Information Technologies
Sys::Virt::StorageVol::WIPE_ALG_DOD
4-pass Dod 5220.22-M section, 8-306 procedure
Sys::Virt::StorageVol::WIPE_ALG_GUTMANN
The canonical 35-pass sequence
Sys::Virt::StorageVol::WIPE_ALG_NNSA
4-pass NNSA Policy Letter NAP-14.1-C (XVI-8)
Sys::Virt::StorageVol::WIPE_ALG_PFITZNER7
7-pass random
Sys::Virt::StorageVol::WIPE_ALG_PFITZNER33
33-pass random
Sys::Virt::StorageVol::WIPE_ALG_RANDOM
1-pass random
Sys::Virt::StorageVol::WIPE_ALG_SCHNEIER
7-pass method described by Bruce Schneier in "Applied Cryptography"
(1996)
Sys::Virt::StorageVol::WIPE_ALG_ZERO
1-pass, all zeroes
VOLUME RESIZE CONSTANTS
The following constants control how storage volumes can be resized
Sys::Virt::StorageVol::RESIZE_ALLOCATE
Fully allocate the extra space required during resize
Sys::Virt::StorageVol::RESIZE_DELTA
Treat the new capacity as a delta to the current capacity
Sys::Virt::StorageVol::RESIZE_SHRINK
Treat the new capacity as an amount to remove from the capacity
AUTHORS
Daniel P. Berrange <berrange@redhat.com>
COPYRIGHT
Copyright (C) 2006-2009 Red Hat Copyright (C) 2006-2009 Daniel P.
Berrange
LICENSE
This program is free software; you can redistribute it and/or modify it
under the terms of either the GNU General Public License as published
by the Free Software Foundation (either version 2 of the License, or at
your option any later version), or, the Artistic License, as specified
in the Perl README file.
SEE ALSO
Sys::Virt, Sys::Virt::Error, "http://libvirt.org"
perl v5.16.3 2013-07-30 Sys::Virt::StorageVol(3)