Debian系统中,/proc/cpuinfo文件仅显示当前CPU实时信息,不会自动保存历史记录。若需查看CPU信息的历史变化,可通过以下方法间接获取或记录:
系统日志(如/var/log/syslog、/var/log/kern.log)可能记录CPU状态变化(如温度、风扇速度、驱动更新等),但通常不会包含CPU型号或架构的历史变更。可通过以下命令过滤关键字:
grep -i "cpu\|temperature\|fan" /var/log/syslog
grep "cpu" /var/log/kern.log
若需长期保存日志,可配置logrotate(Debian默认安装)定期归档日志。
通过lm-sensors(监控温度、电压)、psensor(图形化展示)、sar(系统活动报告)等工具,可定期记录CPU历史数据:
sudo apt update && sudo apt install lm-sensors psensor sysstat
sensors-detect并按提示确认,生成传感器配置文件(/etc/sensors3.conf)。sudo apt install sysstat  # 默认未开启数据收集,需修改/etc/default/sysstat
sudo systemctl enable --now sysstat  # 启动服务
sar -u 1 5 > cpu_history.log  # 每1秒采样1次,共5次(示例)
历史数据默认存储在/var/log/sa/saXX(XX为日期)中,可通过sar -f /var/log/sa/saXX查看指定日期数据。若CPU相关信息存储在配置文件(如/etc/default/grub、/etc/modules)中,可使用Git等工具跟踪文件变更:
cd /etc
sudo git init
sudo git add default/grub modules
sudo git commit -m "Initial CPU config snapshot"
后续修改配置文件后,再次提交即可查看历史变更。
创建脚本自动生成/proc/cpuinfo的快照,并保存到指定目录(如~/cpu_history):
mkdir -p ~/cpu_history
echo "CPU Info - $(date)" > ~/cpu_history/cpuinfo_$(date +%Y%m%d_%H%M%S).txt
cat /proc/cpuinfo >> ~/cpu_history/cpuinfo_$(date +%Y%m%d_%H%M%S).txt
通过cron定时任务(如每天凌晨1点运行)自动化该过程:
crontab -e
添加以下内容:
0 1 * * * /bin/bash -c 'mkdir -p ~/cpu_history; echo "CPU Info - $(date)" > ~/cpu_history/cpuinfo_$(date +%Y%m%d_%H%M%S).txt; cat /proc/cpuinfo >> ~/cpu_history/cpuinfo_$(date +%Y%m%d_%H%M%S).txt'
D键查看CPU历史数据(需提前安装并配置日志保存):sudo apt install atop
sudo atop
F键保存历史数据到文件(如nmon -f -s 10 -c 60表示每10秒采样1次,共60次):sudo apt install nmon
nmon