diff --git a/fs/fs.go b/fs/fs.go index fd1bae3df8..a7542158cd 100644 --- a/fs/fs.go +++ b/fs/fs.go @@ -410,8 +410,13 @@ func (self *RealFsInfo) GetFsInfoForPath(mountSet map[string]struct{}) ([]Fs, er klog.V(5).Infof("got devicemapper fs capacity stats: capacity: %v free: %v available: %v:", fs.Capacity, fs.Free, fs.Available) fs.Type = DeviceMapper case ZFS.String(): - fs.Capacity, fs.Free, fs.Available, err = getZfstats(device) - fs.Type = ZFS + if _, devzfs := os.Stat("/dev/zfs"); os.IsExist(devzfs) { + fs.Capacity, fs.Free, fs.Available, err = getZfstats(device) + fs.Type = ZFS + break + } + // if /dev/zfs is not present default to VFS + fallthrough default: var inodes, inodesFree uint64 if utils.FileExists(partition.mountpoint) {