[−][src]Trait disk_types::PartitionExt
Trait to provide methods for interacting with partition-based block device.
Required Methods
fn get_file_system(&self) -> Option<FileSystem>
Defines the file system that this device was partitioned with.
fn get_partition_flags(&self) -> &[PartitionFlag]
Ped partition flags that this disk has been assigned.
fn get_partition_label(&self) -> Option<&str>
The label of the partition, if it has one.
fn get_partition_type(&self) -> PartitionType
Whether this partition is primary, logical, or extended.
fn get_sector_end(&self) -> u64
The sector where this partition ends on the parent block device.
fn get_sector_start(&self) -> u64
The sector where this partition begins on the parent block device..
Provided Methods
fn get_sectors(&self) -> u64
Returns the length of the partition in sectors.
fn is_esp_partition(&self) -> bool
True if the partition is an ESP partition.
fn is_linux_compatible(&self) -> bool
True if the partition is compatible for Linux to be installed on it.
fn is_luks(&self) -> bool
True if this is a LUKS partition
fn is_swap(&self) -> bool
True if the partition is a swap partition.
fn probe<T, F>(&self, func: F) -> T where
F: FnMut(Option<(&Path, UnmountDrop<Mount>)>) -> T,
F: FnMut(Option<(&Path, UnmountDrop<Mount>)>) -> T,
Mount the file system at a temporary directory, and allow the caller to scan it.
fn probe_os(&self) -> Option<OS>
Detects if an OS is installed to this partition, and if so, what the OS is named.
fn sectors_differ_from<P: PartitionExt>(&self, other: &P) -> bool
True if the sectors in the compared partition differs from the source.
fn sector_lies_within(&self, sector: u64) -> bool
True if the given sector lies within this partition.
fn sectors_overlap(&self, start: u64, end: u64) -> bool
True if there is an overlap in sectors between both partitions.
fn sectors_used(&self) -> Result<u64>
Executes a given file system's dump command to obtain the minimum shrink size
Returns io::ErrorKind::NotFound
if getting usage is not supported.