我用它atop
来获得上述一些基本功能,top
但并不太花哨。我在许多系统上都用过它,我知道有时它在第一次运行时会打印出“浮点异常”并退出。
我不明白的是为什么在基本的事情发生之后apt-get install atop
会发生两件事:
- Ubuntu 弹出一个对话框,说明它想要报告错误,单击“更多详细信息”显示这是浮点异常
atop
- 启动时我们再次收到同样的错误
我可以理解,如果我实际运行该程序,它可能会遇到错误,但它是如何在安装后立即遇到错误(这些错误表明它由于某种原因而运行?)以及为什么atop
在启动时自行运行以在启动后显示这些错误?
答案1
什么时候atop
,它还会安装一个系统服务,并在后台持续运行。每次启动计算机时都会启动该服务。
此外,软件包可以有(并且通常有)在安装前、安装后、删除前和删除后自动运行的脚本。
在 的情况下atop
,有一个安装后脚本 ( /var/lib/dpkg/info/atop.postinst
) 运行invoke-rc.d atop start
。这在基于 Debian 的系统上很常见:当您安装服务时,它会自动启动。
atop
那么,这项服务是做什么的呢?阅读/etc/init.d/atop
,它最终运行以下命令(其中$CURDAY
代表当前日期,例如20161220
在撰写本文时):
/usr/bin/atop -a -w /var/log/atop/atop_$CURDAY 600
根据手册页,这会使一个atop
命令始终运行,/var/log/atop
每 10 分钟(600 秒)写入一次原始数据,直到机器关闭。这允许用户检查系统的过去使用情况,而不仅仅是当前使用情况。请查看手册页的原始数据存储部分。
现在,由于atop
您的机器显然崩溃了,因此在安装软件包(并启动服务)时会崩溃一次,每次启动计算机时也会崩溃一次(因为这会启动服务)。还有一项cron
任务会在午夜重新启动服务(以便每天使用新的日志文件),因此您会在午夜再崩溃一次。
如果您只关心atop
从命令行运行,而不关心服务,则可以通过运行来禁用它sudo update-rc.d atop disable
。