检查了一下 PVE 的日志,发现大量 NVME 的报错信息。
cat /var/log/messages Sep 3 06:26:04 pve kernel: [171088.231004] nvme 0000:02:00.0: PCIe Bus Error: severity=Corrected, type=Physical Layer, (Receiver ID) Sep 3 06:26:04 pve kernel: [171088.231009] nvme 0000:02:00.0: device [126f:2263] error status/mask=00000001/0000e000 Sep 3 06:26:04 pve kernel: [171088.231014] nvme 0000:02:00.0: [ 0] RxErr Sep 3 17:45:37 pve kernel: [211863.130656] pcieport 0000:00:01.1: AER: Multiple Corrected error received: 0000:00:01.1 Sep 3 17:45:37 pve kernel: [211863.132722] pcieport 0000:00:01.1: PCIe Bus Error: severity=Corrected, type=Data Link Layer, (Transmitter ID) Sep 3 17:45:37 pve kernel: [211863.132727] pcieport 0000:00:01.1: device [8086:6f03] error status/mask=00001100/00002000 Sep 3 17:45:37 pve kernel: [211863.132732] pcieport 0000:00:01.1: [ 8] Rollover Sep 3 17:45:37 pve kernel: [211863.132735] pcieport 0000:00:01.1: [12] Timeout
|
查了论坛是说硬件相关的问题,需要更新 BIOS,或者尝试使用不同的 PCIe/M.2 插槽。还有就是使用更新的内核。
以上几个方法,在当前都无法执行。最后使用了掩耳盗铃的方法,关闭 AER 通过不记录错误来掩盖问题,但它并不能解决实际的 PCIe 错误。
编辑 grub 引导文件
修改这两参数
GRUB_CMDLINE_LINUX_DEFAULT="quiet pci=nommconf" GRUB_CMDLINE_LINUX="cie_aspm=off
|
pcie_aspm=off,禁用了引发错误的电源管理模式。
pci=nommconf,禁用 nommconf 支持,nommconf 主要作用是提供一种更快速、高效的方法来访问 PCIe 设备的配置信息,但导致系统不稳定性或不兼容性问题。
更新配置,然后重启。
sudo update-grub sudo reboot
|