| Crates.io | disk-serial-number |
| lib.rs | disk-serial-number |
| version | 0.2.1 |
| created_at | 2025-06-25 08:41:36.520522+00 |
| updated_at | 2025-07-17 08:28:58.411372+00 |
| description | A Rust library to get disk serial numbers across different platforms. |
| homepage | |
| repository | https://github.com/hayd1n/disk-serial-number-rs |
| max_upload_size | |
| id | 1725505 |
| size | 31,103 |
A Rust library to get disk serial numbers across different platforms.
Due to differences in operating systems and hardware platforms, the method for obtaining the disk serial number may vary. The same hard drive may have different serial numbers on different systems.
Due to the lack of testing platforms, macOS currently only supports NVME and Serial ATA (aka SATA) drives.
If you find a better method, please submit a PR.
Cargo.toml:[dependencies]
disk-serial-number = "*"
See the full example in examples/simple.rs.
use disk_serial_number::get_all_disks;
fn main() {
let disks = get_all_disks();
match disks {
Ok(disk_list) => {
for disk in disk_list {
println!("Disk Name: {}", disk.name);
if let Some(model) = &disk.model {
println!(" - Model: {}", model);
}
if let Some(serial) = &disk.serial_number {
println!(" - Serial Number: {}", serial);
}
}
}
Err(e) => {
eprintln!("Error retrieving disk information: {}", e);
}
}
}