c – 如何以编程方式获取linux中设备/分区的uuid?

我是Linux编程的新手.

我的问题是:

>有没有办法以编程方式在Linux中读取设备或分区的UUID?
>用户空间应用程序是否有任何C/C++ API?

我发现了一些命令sudo vol_id –uuid / dev / sda1,sudo blkid和ls -l / dev / disk / by-uuid /.但所有这些都是需要在终端中运行的命令.但我需要从C/C++程序中实现这一目标.

有人可以帮我解决这个问题. (仅供参考:我需要读取已安装Linux的根文件系统(“/”)的UUID.)

先感谢您.

最佳答案
一般方法是:

>例如,通过解析/ etc / mtab找出您所使用的设备
>浏览/ dev / disks / by-uuid目录(使用opendir / readdir / closedir)并找到指向该设备的目录.

请参阅readlink函数以获取符号链接的目标.您将找到大量代码示例,用于解析此站点上的文本文件或您喜欢的搜索引擎.

dawei

【声明】:丽水站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。