Linux分区到驱动器的映射

问题描述 投票:4回答:2

在Linux中,我正在使用blkid api来获取有关磁盘分区的大多数信息。我找不到能够让我找出分区名称与其驱动器之间的映射的API。

例如,磁盘/ dev / sda分为/ dev / sda1和/ dev / sda2。给定两个分区名称,我如何知道它是否来自同一驱动器?通过查找公用前缀(sda),可以查看它们是否属于同一驱动器。但是,这是傻瓜证明吗?在所有情况下都可以使用吗?如果这是卷的一部分怎么办?另外,驱动器名称/卷名称(“ sda”)是否可以包含数字?

我假设应该有一种简单的方法来确定此映射。

mapping disk partition
2个回答
1
投票

    Straightforward方法,可以使用lsblk命令获取
  1. sudo lsblk /dev/sda1 -o SIZE,KNAME,PKNAME,MOUNTPOINT,FSTYPE

    您可以在选项列表中提供PKNAME,它将提供父设备的内核名称。

  2. 第二种方法有点棘手,您可以使用udevadmn工具找到父磁盘/设备的MINOR:MAJOR对,并在连接的设备中搜索thos MAJOR:MINOR对。

  • sudo udevadm info --query=property --name=/dev/sda1 | grep ID_PART_ENTRY_DISK

    list是Linux设备列表,已分配的正式注册表Linux操作的设备编号和/ dev目录节点系统。


  • 0
    投票
    © www.soinside.com 2019 - 2024. All rights reserved.