Tumbleweed 奇怪的死机,应该如何排查硬件问题?

2023 年 3 月开始在这个设备上安装 tw,作为局域网内 pg 服务器使用,最近一次重装是在去年 12 月,经常长时间不关机,一周一升。近两周触发两次系统崩溃,桌面图标变成缺省图标,xfce 小插件消失。第一次开机后自动进入 bios(没有 uefi 引导项),第二次有线键盘无反应,xfceterm 显示文件不存在。
初步怀疑是 m2 固态坏了。

我应该如何排查硬件问题?

eaton@eaton 
----------- 
OS: openSUSE Tumbleweed x86_64 
Host: G1618-04 
Kernel: 6.8.6-1-default 
Uptime: 11 mins 
Packages: 3265 (rpm) 
Shell: bash 5.2.26 
Resolution: 2560x1440 
DE: Xfce 4.18 
WM: Xfwm4 
Theme: Adwaita [GTK2/3] 
Icons: Adwaita [GTK2/3] 
Terminal: xfce4-terminal 
Terminal Font: Monospace 12 
CPU: AMD Ryzen 7 6800U with Radeon Graphics (16) @ 4.768GHz 
GPU: AMD ATI Radeon 680M 
Memory: 2093MiB / 20272MiB 
eaton:/home/eaton # smartctl -l selftest /dev/nvme0
smartctl 7.4 2023-08-01 r5530 [x86_64-linux-6.8.6-1-default] (SUSE RPM)
Copyright (C) 2002-23, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF SMART DATA SECTION ===
Self-test Log (NVMe Log 0x06)
Self-test status: No self-test in progress
Num  Test_Description  Status                       Power_on_Hours  Failing_LBA  NSID Seg SCT Code
 0   Extended          Completed without error                 244            -     -   -   -    -
eaton:/home/eaton # lsblk
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda           8:0    1    0B  0 disk 
sdb           8:16   1    0B  0 disk 
sdc           8:32   0    0B  0 disk 
zram0       254:0    0    4G  0 disk [SWAP]
nvme0n1     259:0    0  1.8T  0 disk 
├─nvme0n1p1 259:1    0  512M  0 part /boot/efi
├─nvme0n1p2 259:2    0  240G  0 part /var
│                                    /srv
│                                    /root
│                                    /opt
│                                    /boot/grub2/x86_64-efi
│                                    /boot/grub2/i386-pc
│                                    /
├─nvme0n1p3 259:3    0  512G  0 part /usr/local
└─nvme0n1p4 259:4    0  1.1T  0 part /home
eaton:/home/eaton # df -Th
文件系统       类型      大小  已用  可用 已用% 挂载点
/dev/nvme0n1p2 btrfs     240G   53G  187G   23% /
devtmpfs       devtmpfs  4.0M     0  4.0M    0% /dev
tmpfs          tmpfs     9.9G   13M  9.9G    1% /dev/shm
efivarfs       efivarfs  128K   21K  103K   18% /sys/firmware/efi/efivars
tmpfs          tmpfs     4.0G  2.1M  4.0G    1% /run
tmpfs          tmpfs     9.9G  3.2M  9.9G    1% /tmp
/dev/nvme0n1p2 btrfs     240G   53G  187G   23% /boot/grub2/i386-pc
/dev/nvme0n1p2 btrfs     240G   53G  187G   23% /boot/grub2/x86_64-efi
/dev/nvme0n1p2 btrfs     240G   53G  187G   23% /opt
/dev/nvme0n1p2 btrfs     240G   53G  187G   23% /root
/dev/nvme0n1p2 btrfs     240G   53G  187G   23% /srv
/dev/nvme0n1p2 btrfs     240G   53G  187G   23% /var
/dev/nvme0n1p3 btrfs     512G  195G  317G   39% /usr/local
/dev/nvme0n1p4 xfs       1.1T  168G  943G   16% /home
/dev/nvme0n1p1 vfat      511M  214M  298M   42% /boot/efi
tmpfs          tmpfs     2.0G   92K  2.0G    1% /run/user/1000

journalctl 查看相应时间段的系统日志。

我看网上有人说如果把 CPU 超频或者改过电压之类的也可能出现系统不稳定的情况。

这种乱七八糟的原因多了去了,总不能一个个地排查吧……

超频这个东西不用排查,因为这玩意儿肯定会导致系统不稳定(发生不明原因当机之类的),如果超频过的话自己肯定知道,改回来就好了。

我回去看了下我看的教程,发现作者是不建议新手超频,但如果对硬件有足够的了解未必一定会出问题,所以我把上面的观点修改一下:如果对自己电脑里的硬件不够了解,没有信心让各个硬件保持协调稳健的运行却超频了的话,就改回来吧。

再添加一些网上剽来的死机可能的原因 (出处是鸟哥的 Linux 私房菜 2009):

系统不稳定的可能原因

除此之外,到底哪个组件特别容易造成系统的不稳定呢?有以下几个常见的系统不稳定的状态。

系统超频:这个行为很不好。不要这么做!

电源不稳:这也是个很严重的问题,当你测试完所有的组件都没有啥大问题时,记得测试一下电源的稳定度。

内存无法负荷:现在的内存质量相差很多,差一点的内存,可能会造成你的主机在忙碌的工作时产生不稳定或死机的现象。

系统过热:“热” 是造成电子零件运行不良的主因之一,如果你的主机在夏天容易死机,冬天却还好,那么考虑一下加几个风扇,有助于机箱内的散热,系统会比较稳定。这个问题也是很常见的系统死机的元凶。(鸟哥之前的一台服务器老是容易死机,后来拆开机箱研究后才发现原来是北桥上面的小风扇坏掉了,导致北桥温度太高。后来换掉风扇就稳定多了。)

事实上,要了解每个硬件的详细架构与构造是很难的!这里鸟哥仅是列出一些比较基本的概念而已。另外,要知道某个硬件的制造商是哪个公司时,可以看该硬件上面的信息。举例来说,主板上面都会列出这个主板的开发商与主板的型号,知道这两个信息就可以找到驱动程序了。另外,显卡上面有个小的芯片,上面也会列出显卡厂商与芯片信息。

这种硬件的原因我觉得也算常见原因了,感觉值得排查一下。

笔记本方案,一台掌上游戏机。睿频基本跑不到,主要目的就是跑 PostgreSQL 在局域网用。第一次引导(硬盘?)消失,用 liveCD 备份了数据库。

无法确定具体是哪一天了,等下一次无法开机后看。看了一下之前的 journalctl,报错有蓝牙、wifi、xfce4 相关组件、tlp 等等……

再次发生死机问题。Xfce terminal 里 su 进不去,xfce 图标全部白标且不可执行。

journalctl -b -1

journalctl_-1.log.tar.gz (57.2 KB)

tty 报错

[333638.412000][ T1914] BTRFS error (device nvme0n1p2 state EA): bdevs /dev/nvme0n1p2 errs: wr 43, rd 211, flush 0, corrupt 0, gen 0

求大佬给个排查思路,我个人判断主要问题在固态硬盘上。

日志文件里没有看到 btrfs 报错信息。你能看到更多的信息吗?

不知道在哪里看 :dizzy_face: