1 package reaper 2 3 import ( 4 "os" 5 "syscall" 6 ) 7 8 func GetPathUnderlyingDeviceID(path string) (uint64, error) { 9 fp, err := os.Open(path) 10 if err != nil { 11 return 0, err 12 } 13 defer fp.Close() 14 15 fi, err := fp.Stat() 16 if err != nil { 17 return 0, err 18 } 19 stat := fi.Sys().(*syscall.Stat_t) 20 return stat.Dev, nil 21 } 22