1

我正在使用 php 来尝试计算磁盘上的总空间、可用空间和已用空间。

这是我正在运行的代码:

$total = (disk_total_space("/")/1024);
$available = (disk_free_space("/")/1024);
$used = ($total - $available);

echo "$total\n\n";
echo "$available\n\n";
echo "$used\n\n";

并返回输出:

305594616

293030828

12563788

同一个分区的df返回的Total和Available的值相同,但是使用的不同。

 df /
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda2      305594616 11632392 293030828   4% /

为什么 php show12563788和 df show 11632392

反正有没有得到准确的值?

谢谢

4

1 回答 1

2

假设您使用一些 ext 文件系统,默认情况下会为 root 用户保留一个区域(tune2fs例如,可以使用工具检查或更改 5%)。这就是为什么总、使用和免费不匹配的原因。

目前没有可靠的方法使用 PHP 函数来获取已用空间。

于 2015-07-10T09:47:05.050 回答