使用Java,你怎么在Solaris ZFS文件系统上的可用空间量?
题
使用Java,你怎么在Solaris ZFS文件系统上的可用空间量?
我有一个的SunFire X4140与内置HDD安装为/。它还具有与HDD空间7.6TB连接JBOD,配置为ZFS文件系统并安装为/应用
我用java.io.File.getUsableSpace或java.io.File.getFreeSpace获得文件系统上的可用空间的量。上/(车载)HDD FS工作正确。
在/应用程序(所述ZFS分区)File.getFreeSpace,File.getUsableSpace和File.getTotalSpace所有返回0(零)。有谁知道为什么吗?是否对ZFS java.io.File.getUsableSpace工作,如果是这样,怎么样?
下面显示了所讨论的机器上的ZFS文件系统:
/ usr / sbin目录/ ZFS列表
NAME USED AVAIL REFER MOUNTPOINT
internal 196K 98.4G 1K none
internal/logs 18K 98.4G 18K /logs
j4200-1 442G 7.57T 2.44K none
j4200-1/app 442G 7.57T 153M /app
j4200-1/app@first 442G - 442G -
解决方案
我不知道为什么,但你可能看看 libzfs ,即在一个不错的Java API包ZFS命令
其他提示
在DF -kp命令返回的自由空间, 但是最普遍的方法是使用
Apache的百科全书IO FileSystemUtils.freeSpaceKb ( “/体积”);
它利用DF以及DIR用于Windows
这是什么的“DF”命令报告?是,也不能在ZFS正确报告可用空间?
不隶属于 StackOverflow