如何在 Linux 上获取磁盘信息?
Posted
技术标签:
【中文标题】如何在 Linux 上获取磁盘信息?【英文标题】:How to get disk information on Linux? 【发布时间】:2019-08-06 06:18:20 【问题描述】:目的是获取Linux平台下物理硬盘的信息。所需信息包括物理硬盘名称(标题)、设备路径(如/dev/sda
)、读/写速率和每个物理磁盘的读写吞吐量、磁盘总容量和每个物理磁盘的剩余可用容量。我最终需要在 C++ 程序中获取这些信息。但我也接受命令行获取方式。
我尝试过lshw
、smartctl
、hdparm
、lsblk
、fdisk
.etc,但其中一些命令在不同的 Linux 发行版上不可用。而这些方法并不能得到我想要的所有信息。我也尝试从/proc/diskstats
、/sys/block
等处获取信息,但并没有解决问题。逻辑磁盘和物理磁盘之间的混淆也使处理变得困难。需要强调的是,您需要获取的信息是针对每个物理磁盘的。
【问题讨论】:
这个问题可能离题了,但是在 smarctl 和其他工具正在运行的系统上,您可以使用strace
来查看信息的来源。
【参考方案1】:
fdisk -l 命令会详细显示。
【讨论】:
以上是关于如何在 Linux 上获取磁盘信息?的主要内容,如果未能解决你的问题,请参考以下文章
嵌入式Linux QT开发之如何实现获取磁盘空间大小的应用逻辑