我在笔记本电脑上运行 Ubuntu 13.10,并且已经laptop-mode-tools
安装。
我注意到,在使用电池供电时,笔记本电脑的硬盘无法正常减速。大约每隔五秒钟,硬盘就会开始减速,但随后又会有一些原因使其重新加速。
我对此进行了一些调查(在 Google 的帮助下),发现了一些事情:
我已经安装并运行了
iotop
。每次磁盘开始旋转时,iotop 都会报告该进程init --user
正在写入磁盘并使用了 99% 的 IO。让笔记本电脑依靠电池“独自”运行 2 或 3 分钟后,
find -cmin -1
我的主目录上显示该文件~/.cache/upstart/unity-panel-service.log
最近被修改了。如果我运行
tail -f ~/.cache/upstart/unity-panel-service.log
,我注意到这个文件每秒都会更新一次,并且行** (unity-panel-service:2711): WARNING **: Unable to support GtkImageType: 0
附后。
sudo strace -p <"init --user"'s PID>
不断输出以下行(或类似内容):read(3, 0x7fff3c96871b, 1) = -1 EAGAIN (Resource temporarily unavailable) waitid(P_ALL, 0, {}, WNOHANG|WEXITED|WSTOPPED|WCONTINUED, NULL) = 0 select(37, [3 5 6 7 8 9 10 11 12 13 19 20 21 26 27 29 36], [], [7 8 9 10 12 20 21], NULL) = 1 (in [36]) read(36, "\r\n** (unity-panel-service:2711):"..., 8192) = 160 read(36, 0x7f5a06c21830, 8032) = -1 EAGAIN (Resource temporarily unavailable) fstat(14, {st_mode=S_IFREG|0640, st_size=384106, ...}) = 0 write(14, "\r\n** (unity-panel-service:2711):"..., 160) = 160
附注:使用交流电和 电池供电时
cat /proc/sys/vm/dirty_writeback_centisecs
可返回。500
60000
有人注意到了同样的事情吗?我不知道这是否发生在全新安装中(或者这是否发生在 13.04 中)。
答案1
在发布此信息之前,我进行了进一步调查,罪魁祸首似乎是日期/时间指示器。我已将指示器配置为显示秒数。如果我删除该设置,unity-panel-服务日志文件不再每秒更新一次(但可能是每分钟更新一次),并且磁盘成功旋转。
因此,解决方法似乎是:不要在日期/时间指示器中显示秒数,或者将其删除。
我想我会报告这个错误。我会把它留在这里,希望这对某些人有用。
答案2
我从 13.04 更新到 13.10,也遇到了同样的问题。不是每 1 秒,而是每 5 秒。关闭 indicator-datetime 可以解决问题。
答案3
另一个参考是导致 unity-service-panel.log 疯狂产生超过 18GB 空间的错误 :-o unity-service-panel.log 占用 18+ GB