mount.go 474 B

123456789101112131415161718192021222324
  1. package docker
  2. import (
  3. "os"
  4. "path/filepath"
  5. "syscall"
  6. )
  7. func Mounted(mountpoint string) (bool, error) {
  8. mntpoint, err := os.Stat(mountpoint)
  9. if err != nil {
  10. if os.IsNotExist(err) {
  11. return false, nil
  12. }
  13. return false, err
  14. }
  15. parent, err := os.Stat(filepath.Join(mountpoint, ".."))
  16. if err != nil {
  17. return false, err
  18. }
  19. mntpointSt := mntpoint.Sys().(*syscall.Stat_t)
  20. parentSt := parent.Sys().(*syscall.Stat_t)
  21. return mntpointSt.Dev != parentSt.Dev, nil
  22. }