From f6dc96c30e5957e74a31347d19aa82e14a374e37 Mon Sep 17 00:00:00 2001 From: arstercz Date: Sun, 1 May 2022 02:33:09 +0000 Subject: [PATCH] follow the psutil principles, do nothing if can not find root device --- disk/disk_linux.go | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/disk/disk_linux.go b/disk/disk_linux.go index a64ff8e..3911af9 100644 --- a/disk/disk_linux.go +++ b/disk/disk_linux.go @@ -349,12 +349,11 @@ func PartitionsWithContext(ctx context.Context, all bool) ([]PartitionStat, erro // /dev/root is not the real device name // so we get the real device name from its major/minor number - if d.Device == "/dev/root" && d.Fstype != "nfs" { + if d.Device == "/dev/root" { devpath, err := os.Readlink(common.HostSys("/dev/block/" + blockDeviceID)) - if err != nil { - return nil, err + if err == nil { + d.Device = strings.Replace(d.Device, "root", filepath.Base(devpath), 1) } - d.Device = strings.Replace(d.Device, "root", filepath.Base(devpath), 1) } } ret = append(ret, d)