use*_*576 5 mapping disk partition
在 Linux 中,我使用 blkid api 来获取有关磁盘分区的大部分信息。我找不到可以让我找出分区名称与其驱动器之间的映射的 API。
例如,磁盘/dev/sda被分区为/dev/sda1和/dev/sda2。给定两个分区名称,我如何知道它是否来自同一驱动器?通过查找公共前缀 (sda),人们可以查看它们是否属于同一驱动器。但这是万无一失的吗?这在所有情况下都有效吗?如果这是卷的一部分怎么办?另外,驱动器名称/卷名称(“sda”)可以包含数字吗?
我假设应该有一种简单的方法来确定此映射。
我找到了两种方法来获取分区的父磁盘的内核名称,
方法很简单,使用lsblk命令即可获取
sudo lsblk /dev/sda1 -o SIZE,KNAME,PKNAME,MOUNTPOINT,FSTYPE
您可以在选项列表中给出 PKNAME,它将给出父设备的内核名称。
第二种方法有点棘手,您可以使用udevadmn工具查找父磁盘/设备的 MINOR:MAJOR 对,并在连接的设备中搜索这些 MAJOR:MINOR 对。
sudo udevadm info --query=property --name=/dev/sda1 | grep ID_PART_ENTRY_DISK
该列表是 Linux 设备列表,是 Linux 操作系统分配的设备号和 /dev 目录节点的官方注册表。
| 归档时间: |
|
| 查看次数: |
3872 次 |
| 最近记录: |