在Ubuntu系统中,cpustat
本身并不直接支持历史数据查询,但你可以通过配置sysstat
包来记录CPU使用情况的历史数据,并使用其他工具来查看和分析这些历史记录。以下是具体步骤:
首先,确保你已经安装了sysstat
包。如果没有安装,可以使用以下命令进行安装:
sudo apt update
sudo apt install sysstat
编辑配置文件:
打开 /etc/default/sysstat
文件,找到 ENABLED
参数,将其设置为 "true"
以启用系统活动报告。
sudo nano /etc/default/sysstat
修改内容如下(如果文件中没有这些行,可以手动添加):
ENABLED="true"
设置记录间隔和历史记录天数: 在同一个文件中,你可以设置采样间隔(以秒为单位)和保存历史记录的天数。例如,设置采样间隔为10秒,保存历史记录的天数为7天:
SAMPLING_INTERVAL=10
HISTORY_DAYS=7
重启sysstat服务:
修改配置文件后,需要重启sysstat
服务以使更改生效:
sudo systemctl restart sysstat
sysstat
的历史记录通常保存在 /var/log/sysstat/
目录下,文件名为 saXX
,其中 XX
是月份。你可以使用以下命令查看这些文件:
cat /var/log/sysstat/saXX
如果你想查看特定日期的CPU使用情况,可以使用 sar
命令的 -r
选项指定日期:
sar -r -f /var/log/sysstat/saXX
这里的 saXX
是你想要查看的日期文件。
mpstat
是 sysstat
包中的另一个工具,它可以用来查看每个CPU的详细统计信息,并且可以定期记录到日志文件中。
安装sysstat包(如果尚未安装):
sudo apt update
sudo apt install sysstat
配置mpstat以记录数据:
编辑 /etc/cron.d/sysstat
文件,确保以下行存在且未被注释:
*/10 * * * * root /usr/lib64/sa/sa1 -S DISK -A -o /var/log/sa/saXX
这个例子中,mpstat
每10分钟运行一次,并将数据保存到 /var/log/sa/saXX
文件中(XX
是日期)。
查看历史记录:
使用 mpstat
查看日志文件中的数据:
mpstat -P ALL -f /var/log/sa/saXX
这里的 -P ALL
表示显示所有CPU的数据,-f
指定日志文件,1
表示每秒刷新一次数据。
通过以上步骤,你可以在Ubuntu系统中有效地记录和查看CPU的使用情况的历史数据。