日志信息:
5月 12 21:57:21 Mt kernel: ACPI Error: Aborting method _SB.PC00.PEG1.PEGP._DSM due to previous error (AE_ALREADY_EXISTS) (20230628/psparse-529)
5月 12 21:57:21 Mt kernel: ACPI BIOS Error (bug): Failure creating named object [_SB.PC00.PEG1.PEGP._DSM.USRG], AE_ALREADY_EXISTS (20230628/dsfield-184)
5月 12 21:57:21 Mt kernel: ACPI Error: AE_ALREADY_EXISTS, CreateBufferField failure (20230628/dswload2-477)这个 ACPI BIOS Error (AE_ALREADY_EXISTS) 是主板 BIOS 不规范 + Linux 内核严格校验导致的,不是系统坏了,也不影响使用,只是日志刷屏。
这两段日志是典型的 Ubuntu 启动 / 硬件兼容警告,不影响系统正常使用,可以放心忽略或简单屏蔽报错输出。
第一步:编辑 GRUB 配置
sudo nano /etc/default/grub
找到这一行:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
完整替换成这一行(专门针对你的 ACPI AE_ALREADY_EXISTS):
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash loglevel=3 acpi_enforce_resources=lax pcie_aspm=off nvidia-drm.modeset=1"
保存,退出
第二步:更新 GRUB
sudo update-grub
第三步:重启生效
sudo reboot
重启后验证
开机进系统后,再看日志就不会再疯狂刷 ACPI 错误了:
dmesg | grep -i acpi
为什么这样能解决?
acpi_enforce_resources=lax让内核对 BIOS 不规范的 ACPI 表宽松处理,不再报AE_ALREADY_EXISTSpcie_aspm=off关闭 PCIe 节能管理,PEG1/PEGP(独显插槽)相关 ACPI 报错直接消失loglevel=3只显示重要错误,不打印警告级别的刷屏信息nvidia-drm.modeset=1让 NVIDIA 显卡更稳定,减少显卡相关 ACPI 冲突
如果想从根源彻底根治(可选)
- 进主板 BIOS
- 关闭 CFG Lock
- 关闭 PCIe Power Management
- 更新到最新版 BIOS
其实既然不是严重影响系统使用,这个没问题的,系统自己都忽略了。