我使用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显示12563788
而df显示11632392
?
无论如何都能获得准确的数值?
由于
答案 0 :(得分:2)
假设您使用某个ext文件系统,默认情况下会为root用户保留一个区域(例如,可以使用tune2fs
工具检查或更改5%的区域)。这就是为什么总数,使用量和免费量都不匹配。
目前没有可靠的PHP函数来获取已用空间。