| Crates.io | gpt |
| lib.rs | gpt |
| version | 4.1.0 |
| created_at | 2017-04-14 19:44:20.604648+00 |
| updated_at | 2025-03-16 16:47:10.277231+00 |
| description | A pure-Rust library to work with GPT partition tables. |
| homepage | |
| repository | https://github.com/Quyzi/gpt |
| max_upload_size | |
| id | 10604 |
| size | 143,984 |
A pure-Rust library to work with GPT partition tables.
gpt provides support for manipulating (R/W) GPT headers and partition
tables. It supports any that implements the Read + Write + Seek + Debug traits.
use std::error::Error;
fn main() {
// Inspect disk image, handling errors.
if let Err(e) = run() {
eprintln!("Failed to inspect image: {}", e);
std::process::exit(1)
}
}
fn run() -> Result<(), Box<dyn Error>> {
// First parameter is target disk image (optional, default: fixtures sample)
let sample = "tests/fixtures/gpt-disk.img".to_string();
let input = std::env::args().nth(1).unwrap_or(sample);
// Open disk image.
let cfg = gpt::GptConfig::new().writable(false);
let disk = cfg.open(input)?;
// Print GPT layout.
println!("Disk (primary) header: {:#?}", disk.primary_header());
println!("Partition layout: {:#?}", disk.partitions());
Ok(())
}