Linux,以编程方式(C)生成磁​​盘驱动器上的分区列表

时间:2015-10-17 01:46:46

标签: linux partition

我需要一种方法来获取与C中特定设备关联的分区列表,最好是通过调用一组库例程,而不是调用exec,popen等和解析。

我在网上看到了一些错误的例子,都有同样的错误, 它们从设备开始,获取分区数,然后生成数字列表1-num_partitions并将其附加到设备。好。这令人困惑,让我举个例子。

如果程序被告知设备是/ dev / sdq。初步使用libblkid告诉你/ dev / sdq上有五个分区。因此,该方法生成分区列表。 / dev / sdq1,...,/ dev / sdq5。

问题当然是,不能保证分区由前n个数字标记。在该示例中,分区可以是/ dev / sdq1,/ dev / sdq5,/ dev / sdq6,/ dev / sdq9,/ dev / sdq10。因此,该算法会告诉您标记为2-4的分区在它们不完整时会存在并且完全错过名为6,9,10的分区。

0 个答案:

没有答案