使用Java,如何获取solaris zfs文件系统上的可用空间?
我有一个安装有/的内置硬盘的SunFire x4140.它还具有一个连接的JBOD,具有7.6TB的HDD空间,配置为ZFS文件系统并安装为/ app.
我使用java.io.File.getUsableSpace或java.io.File.getFreeSpace来获取文件系统上的可用空间量.在/(板载)HDD FS上,它可以正常工作.
在/ app(zfs分区)上,File.getFreeSpace,File.getUsableSpace和File.getTotalSpace均返回0(零).有人知道为什么吗? java.io.File.getUsableSpace是否可以在ZFS上运行,如果可以,如何运行?
/usr/sbin/zfs list
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,它将zfs命令包装在一个不错的Java API中