You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Slackware 14.2唤醒后黑屏求助:睡眠/锁定由哪个进程控制?

针对Slackware 14.2 32位唤醒后黑屏的排查与修复建议

嘿,看你折腾了这么久——换桌面环境、更内核、更LXsession都没解决唤醒黑屏的问题,我来给你捋捋几个更针对性的方向,毕竟你已经排除了桌面和内核类型的锅,大概率是显卡驱动、ACPI配置或者电源管理的老版本兼容问题。

一、先从显卡驱动下手

Slackware 14.2是2016年的老版本,默认开源驱动对部分集成显卡的唤醒支持可能有bug:

  • Intel显卡用户:试试切换到modesetting驱动代替默认的intel驱动。创建/编辑/etc/X11/xorg.conf.d/20-intel.conf,写入:
    Section "Device"
        Identifier "Intel Graphics"
        Driver "modesetting"
        Option "AccelMethod" "glamor"
        Option "DRI" "3"
    EndSection
    
    要是还不行,可以找Slackware 14.2兼容的xf86-video-intel更新包(别装太新的,避免依赖断裂)。
  • AMD显卡用户:同理,要么更新xf86-video-ati兼容版本,要么也切换到modesetting驱动试试。

二、调整ACPI内核启动参数

老内核和某些上网本BIOS的ACPI交互容易出问题,给内核加几个参数试试:

  1. 编辑/etc/lilo.conf,在append行里添加:
    acpi_sleep=s3_bios,s3_mode
    
    或者换acpi_osi=Linux,强制BIOS用Linux兼容的ACPI模式。
  2. 改完一定要运行lilo生效,不然参数不会被加载。

另外,确认acpid服务在跑:

  • ps aux | grep acpid检查,没运行的话启动它:/etc/rc.d/rc.acpid start,再设开机自启:chmod +x /etc/rc.d/rc.acpid
  • 可以试试禁用pm-utils里的干扰脚本:把/usr/lib/pm-utils/sleep.d/下的脚本逐个重命名加.bak后缀,测试哪个脚本导致的问题。

三、黑屏时别着急重启,先查系统状态

下次再黑屏,先按Ctrl+Alt+F2切换到TTY命令行:

  • 如果能进TTY,说明只是Xorg挂了,不是系统死机——直接pkill Xstartx就能恢复,不用硬重启。
  • 进TTY后赶紧查日志找报错:
    • Xorg日志:cat /var/log/Xorg.0.log | grep -i error
    • 系统ACPI日志:dmesg | grep -i acpicat /var/log/messages | grep -i suspend,重点看唤醒过程中的错误信息。

四、几个小技巧试试

  • 禁用DPMS屏幕节能:在LXDE电源管理里关掉“自动关闭显示器”,或者在Xorg配置里加:
    Section "ServerFlags"
        Option "BlankTime" "0"
        Option "StandbyTime" "0"
        Option "SuspendTime" "0"
        Option "OffTime" "0"
    EndSection
    
  • 暂时不用physlock,试试桌面环境自带的锁屏,排查是不是第三方锁屏工具和电源管理冲突。

内容的提问来源于stack exchange,提问作者C26

火山引擎 最新活动