如何从 /proc 和/或 /sys 获取硬盘信息

sha*_*has 5 linux hard-disk proc sysfs

如何使用/proc/sys文件系统获取硬盘容量、使用情况等?

如果可能,请告诉我需要处理哪些文件才能获得该信息。

sha*_*has 7

这是答案

   cat /sys/block/sda/size
Run Code Online (Sandbox Code Playgroud)

上面的文件将返回一些数字,例如 312581808,然后这个数字需要乘以512标准块大小,然后你将得到以字节为单位的 long int 值,然后你可以转换为GB

  • 这是使用情况、可用性还是总容量? (2认同)
  • 这只是容量...问题还要求使用...所以大概不可用? (2认同)

yae*_*shi 5

请参阅块设备子系统的内核文档stat.txt用于块设备 I/O 统计信息。

内核/用户空间 ABI 文档也很有用,请参阅sysfs-block以获取可用 sysfs 条目的完整列表。

您还可以从 获取块设备容量/proc/partitions