应先右键列标题选择“选择列”并勾选【磁盘读取】【磁盘写入】【磁盘总使用率】,再验证/proc/diskstats是否可读、systemd-udevd是否运行,最后killall ukui-system-monitor、清除~/.cache/ukui-system-monitor/io*缓存,并以--enable-io-monitoring参数重启。

银河麒麟V10任务管理器中“磁盘”列空白、显示为“0 B/s”或整列缺失,导致无法监控程序实时IO行为,这通常因列配置被关闭、磁盘统计服务未启用或ukui-system-monitor版本存在IO采集缺陷所致。
检查并启用“磁盘”列显示
任务管理器默认不启用磁盘读写速率列,用户首次打开时往往只看到CPU和内存字段,误以为功能缺失。
1、按下 Ctrl + Shift + Esc 打开任务管理器,确保位于“进程”选项卡。
2、右键任意列标题(如“CPU%”或“内存”),在弹出菜单中选择“选择列”。
3、在“选择列”窗口中,向下滚动勾选【磁盘读取】、【磁盘写入】、【磁盘总使用率】三项——仅勾选其中一项仍无法反映完整IO状态,必须同时启用读/写双通道指标。
4、点击“确定”,观察列表是否立即出现新列;若仍显示“—”或“0 B/s”,说明底层磁盘统计模块未就绪,需进入下一步排查。
确认磁盘I/O统计服务已启用
银河麒麟V10依赖内核的/proc/diskstats与sysfs接口采集磁盘数据,但部分精简版镜像或安全加固策略会禁用block子系统事件通知,导致ukui-system-monitor无法轮询到变化值。
方法一:终端验证磁盘统计源是否可用
1、打开终端,执行:cat /proc/diskstats | head -5
2、若输出为空或报错“Permission denied”,说明内核磁盘统计被屏蔽——此时需检查是否启用了SELinux或安全中心外设管控策略。
方法二:手动触发IO统计刷新
1、在终端中运行:sudo sh -c 'echo 1 > /sys/block/sda/stat'(将sda替换为你的主硬盘设备名,可用lsblk确认)
2、若提示“Invalid argument”,表明该设备不支持运行时stat重置,跳过此步;若无报错,返回任务管理器刷新页面。
3、执行:sudo systemctl status systemd-udevd,确认该服务处于active (running)状态——它是磁盘事件上报的中枢,若为inactive,需执行sudo systemctl start systemd-udevd并设为开机自启。
重置ukui-system-monitor磁盘采集缓存
当列已启用但数值持续为0,大概率是进程内部IO采样器卡在初始化阶段,尤其在从休眠唤醒或长时间运行后易发。此时不能仅重启UI,必须清除其采集上下文。
第一步:终止当前任务管理器进程
killall ukui-system-monitor
第二步:清空临时采集缓存目录
rm -rf ~/.cache/ukui-system-monitor/io*
第三步:以强制IO模式启动新实例
ukui-system-monitor --enable-io-monitoring &
注意:【--enable-io-monitoring 参数不可省略】——旧版本默认关闭磁盘采样以降低开销,该参数会强制加载libgtop的block模块并每秒轮询/proc/diskstats,否则即使列显示也无实际数值。

















