diff --git a/internal/nodes/node_status_executor.go b/internal/nodes/node_status_executor.go index 1c44a487..044af6bf 100644 --- a/internal/nodes/node_status_executor.go +++ b/internal/nodes/node_status_executor.go @@ -137,8 +137,8 @@ func (this *NodeStatusExecutor) updateDisk(status *nodeconfigs.NodeStatus) { }) // 当前TeaWeb所在的fs - rootFS := "" - rootTotal := uint64(0) + var rootFS = "" + var rootTotal = uint64(0) if lists.ContainsString([]string{"darwin", "linux", "freebsd"}, runtime.GOOS) { for _, p := range partitions { if p.Mountpoint == "/" { @@ -152,9 +152,9 @@ func (this *NodeStatusExecutor) updateDisk(status *nodeconfigs.NodeStatus) { } } - total := rootTotal - totalUsage := uint64(0) - maxUsage := float64(0) + var total = rootTotal + var totalUsage = uint64(0) + var maxUsage = float64(0) for _, partition := range partitions { if runtime.GOOS != "windows" && !strings.Contains(partition.Device, "/") && !strings.Contains(partition.Device, "\\") { continue @@ -180,6 +180,8 @@ func (this *NodeStatusExecutor) updateDisk(status *nodeconfigs.NodeStatus) { } } status.DiskTotal = total - status.DiskUsage = float64(totalUsage) / float64(total) + if total > 0 { + status.DiskUsage = float64(totalUsage) / float64(total) + } status.DiskMaxUsage = maxUsage / 100 }