目的是获取Linux平台下物理硬盘的信息。所需信息包括:
- 物理硬盘名称(标题)
- 设备路径(如
/dev/sda
) - 每个物理磁盘的读写速率和读写吞吐量
- 磁盘总容量
- 每个物理磁盘的剩余可用容量
我最终需要在 C++ 程序中获取这些信息。但我也接受命令行获取方式。
我已经尝试过,,,,,等等lshw
。但是其中一些命令在不同的Linux发行版上不可用。同样,这些方法也无法获得我想要的所有信息。smartctl
hdparm
lsblk
fdisk
我也尝试从、等处获取信息/proc/diskstats
,/sys/block
但并没有解决问题。逻辑磁盘和物理磁盘的混淆也给处理带来了困难。需要强调的是,您需要获取的信息是针对每个物理磁盘的。
有没有更通用的方法可以在大多数发行版上使用?