Files
polaris/pkg/utils/linux.go
2024-09-29 14:27:01 +08:00

26 lines
373 B
Go

//go:build linux
// +build linux
package utils
import (
"golang.org/x/sys/unix"
"math"
"runtime"
"syscall"
)
func AvailableSpace(dir string) uint64 {
if runtime.GOOS != "linux" {
return math.MaxUint64
}
var stat unix.Statfs_t
unix.Statfs(dir, &stat)
return stat.Bavail * uint64(stat.Bsize)
}
func MaxPermission() {
syscall.Umask(0) //max permission 0777
}