一、基础配置方案(GRUB参数调整)
- 修改GRUB配置
bash
sudo cp /etc/default/grub /etc/default/grub.bak # 配置文件备份 sudo nano /etc/default/grub # 编辑配置文件
修改内容:
diff
- GRUB_CMDLINE_LINUX_DEFAULT="quiet" + GRUB_CMDLINE_LINUX_DEFAULT="quiet consoleblank=300"
参数说明:consoleblank=300 表示300秒(5分钟)无操作后关闭控制台屏幕
- 应用配置变更
bash
sudo update-grub && sudo reboot
二、增强定时任务方案(双保险机制)
- 配置crontab任务
bash
crontab -e # 编辑当前用户定时任务
添加以下内容:
cron
# 图形界面强制黑屏(每分钟检测) * * * * * echo 1 > /sys/class/graphics/fb0/blank # 终端屏幕强制关闭(每分钟检测) * * * * * setterm --blank force --term linux </dev/tty1
- 注意事项
- 设备路径验证:
ls /sys/class/graphics/查看实际fb设备号 - 终端设备确认:
tty命令查看当前终端设备号 - 执行权限测试:建议先用
sudo -u [用户名]测试命令有效性
三、备选方案(按需选择)
- DPMS电源管理(需X环境):
bash
xset dpms 0 0 300 # 5分钟无操作关闭屏幕
- 系统服务监控: 创建
/etc/systemd/system/screen-saver.service:
ini
[Unit] Description=Screen Blanking Service [Service] ExecStart=/usr/bin/watch -n 300 "echo 1 > /sys/class/graphics/fb0/blank" [Install] WantedBy=multi-user.target
四、故障排查指南
- 日志检查:
bash
grep CRON /var/log/syslog # 查看定时任务执行记录 dmesg | grep -i fb # 检查帧缓冲区设备状态
- 手动测试命令:
bash
# 测试屏幕关闭指令 sudo sh -c 'echo 1 > /sys/class/graphics/fb0/blank' setterm --blank force --term linux </dev/tty1 # 恢复屏幕显示 sudo sh -c 'echo 0 > /sys/class/graphics/fb0/blank' setterm --blank poke --term linux </dev/tty1
- 硬件兼容性检查:
bash
cat /sys/class/graphics/fb0/device/modalias # 查看显示硬件信息 inxi -G # 显示图形子系统信息
五、方案优化建议
- 时间间隔调整:可根据实际需求修改cron表达式
*/5 * * * *每5分钟执行0 */2 * * *每2小时执行
- 权限优化:
bash
sudo visudo # 添加以下内容避免密码验证 [用户名] ALL=(ALL) NOPASSWD: /bin/echo 1 > /sys/class/graphics/fb0/blank
- 环境变量配置:
bash
export DISPLAY=:0 # 确保X环境变量正确设置
建议先测试基础方案,若视频播放后仍有唤醒问题,再启用增强定时任务方案。不同硬件平台可能需要调整fb设备号,建议通过ls /sys/class/graphics/确认实际设备路径。
