[−][src]Enum libzetta::zpool::vdev::CreateVdevRequest
Consumer friendly wrapper to configure vdev to zpol.
Variants
SingleDisk(PathBuf)
The most basic type of vdev is a standard block device. This can be an entire disk or a partition. In addition to disks, ZFS pools can be backed by regular files, this is especially useful for testing and experimentation. Use the full path to the file as the device path in zpool create. All vdevs must be at least 64MB or 128 MB in size depending on implementation.
A mirror of multiple disks. A mirror vdev will only hold as much data as its smallest member. A mirror vdev can withstand the failure of all but one of its members without losing any data.
ZFS implements RAID-Z, a variation on standard RAID-5 that offers better distribution of parity and eliminates the “RAID-5 write hole”.
The same as RAID-Z, but with 2 parity drives.
The same as RAID-Z, but with 3 parity drives.
Methods
impl CreateVdevRequest
[src]
pub fn is_valid(&self) -> bool
[src]
Check if given CreateVdevRequest is valid.
For SingleDisk it means that what ever it points to exists.
For Mirror it checks that it's at least two valid disks.
For RaidZ it checks that it's at least three valid disk. And so goes on. This gives false negative results in RAIDZ2 and RAIDZ3. This is intentional. possible makes no sense.
pub fn into_args(self) -> Vec<OsString>
[src]
Make turn CreateVdevRequest into list of arguments.
pub fn disk<O: Into<PathBuf>>(value: O) -> CreateVdevRequest
[src]
Short-cut to CreateVdevRequest::SingleDisk(disk)
pub fn kind(&self) -> VdevType
[src]
Get kind
Trait Implementations
impl Clone for CreateVdevRequest
[src]
fn clone(&self) -> CreateVdevRequest
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for CreateVdevRequest
[src]
impl Eq for CreateVdevRequest
[src]
impl PartialEq<CreateVdevRequest> for CreateVdevRequest
[src]
fn eq(&self, other: &CreateVdevRequest) -> bool
[src]
fn ne(&self, other: &CreateVdevRequest) -> bool
[src]
impl PartialEq<CreateVdevRequest> for Vdev
[src]
fn eq(&self, other: &CreateVdevRequest) -> bool
[src]
#[must_use]fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl PartialEq<Vdev> for CreateVdevRequest
[src]
impl StructuralEq for CreateVdevRequest
[src]
impl StructuralPartialEq for CreateVdevRequest
[src]
Auto Trait Implementations
impl RefUnwindSafe for CreateVdevRequest
impl Send for CreateVdevRequest
impl Sync for CreateVdevRequest
impl Unpin for CreateVdevRequest
impl UnwindSafe for CreateVdevRequest
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> SendSyncUnwindSafe for T where
T: Send + Sync + UnwindSafe + ?Sized,
[src]
T: Send + Sync + UnwindSafe + ?Sized,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,