diff --git a/disk/disk_linux.go b/disk/disk_linux.go index e3d1b3f..d23a4c4 100644 --- a/disk/disk_linux.go +++ b/disk/disk_linux.go @@ -301,7 +301,7 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro } if strings.HasPrefix(d.Device, "/dev/mapper/") { - devpath, err := filepath.EvalSymlinks(d.Device) + devpath, err := filepath.EvalSymlinks(common.HostDev(strings.Replace(d.Device, "/dev", "", -1))) if err == nil { d.Device = devpath } diff --git a/internal/common/common.go b/internal/common/common.go index 4ca8bc9..d46aaeb 100644 --- a/internal/common/common.go +++ b/internal/common/common.go @@ -338,6 +338,10 @@ func HostRun(combineWith ...string) string { return GetEnv("HOST_RUN", "/run", combineWith...) } +func HostDev(combineWith ...string) string { + return GetEnv("HOST_DEV", "/dev", combineWith...) +} + // getSysctrlEnv sets LC_ALL=C in a list of env vars for use when running // sysctl commands (see DoSysctrl). func getSysctrlEnv(env []string) []string {