随机SSD关闭 - ext4_find_entry ,读取目录lblock0

随机SSD关闭 - ext4_find_entry ,读取目录lblock0

从过去两周开始,我的 SSD 在 GNU/Linux 中遇到了问题。我认为这不是设备问题,但我不确定。有时(最后几天每隔 1-2 天)我会失去对磁盘的物理访问权限,就好像它已断开连接或断电一样。

错误:

EXT4-fs error (device: sda2): ext4_find_entry:1465: inode #1308161: comm NetworkManager: reading directory lblock 0

我从照片中输入了此错误,因此它可能不完全准确。

笔记:

设备始终是相同的“sda2”,没有注意到其他(大家庭)分区的错误。下次我会尝试检查一下。索引节点和进程名称发生变化,但 NetworkManager 很常见。 lblock 始终为 0。

硬件:

戴尔 E7270 带SSD盘 LITEON CV3-8D512-11 SATA 512GB

软件:

Debian 测试,内核 4.11。

smartctl 简要输出:

Device Model:     LITEON CV3-8D512-11 SATA 512GB
Serial Number:    TW0956WWLOH006CU022Z
LU WWN Device Id: 5 002303 100ce15e0                                                                                                                                         
Firmware Version: T89110D                                                                                                                                                    
User Capacity:    512,110,190,592 bytes [512 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Form Factor:      M.2
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   ATA8-ACS, ATA/ATAPI-7 T13/1532D revision 4a
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Wed Jul  5 12:32:39 2017 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

...

SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0003   100   100   000    Pre-fail  Always       -       0
  9 Power_On_Hours          0x0002   100   100   000    Old_age   Always       -       327
 12 Power_Cycle_Count       0x0003   100   100   000    Pre-fail  Always       -       335
175 Program_Fail_Count_Chip 0x0003   100   100   000    Pre-fail  Always       -       0
176 Erase_Fail_Count_Chip   0x0003   100   100   000    Pre-fail  Always       -       0
177 Wear_Leveling_Count     0x0003   100   100   000    Pre-fail  Always       -       59
178 Used_Rsvd_Blk_Cnt_Chip  0x0003   100   100   000    Pre-fail  Always       -       0
179 Used_Rsvd_Blk_Cnt_Tot   0x0003   100   100   000    Pre-fail  Always       -       0
180 Unused_Rsvd_Blk_Cnt_Tot 0x0033   100   100   005    Pre-fail  Always       -       2688
181 Program_Fail_Cnt_Total  0x0003   100   100   000    Pre-fail  Always       -       0
182 Erase_Fail_Count_Total  0x0003   100   100   000    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0003   100   100   000    Pre-fail  Always       -       0
194 Temperature_Celsius     0x0003   100   100   000    Pre-fail  Always       -       76
195 Hardware_ECC_Recovered  0x0003   100   100   000    Pre-fail  Always       -       0
199 UDMA_CRC_Error_Count    0x0003   100   100   000    Pre-fail  Always       -       0
238 Unknown_Attribute       0x0003   097   100   000    Pre-fail  Always       -       3
241 Total_LBAs_Written      0x0003   100   100   000    Pre-fail  Always       -       4293005286
242 Total_LBAs_Read         0x0003   100   100   000    Pre-fail  Always       -       3510503294

SMART Error Log Version: 0
No Errors Logged

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed without error       00%       298         -
# 2  Short offline       Completed without error       00%       294         -
# 3  Offline             Interrupted (host reset)      80%       294         -
# 4  Offline             Interrupted (host reset)      10%       294         -
# 5  Short offline       Completed without error       00%       294         -
# 6  Short offline       Completed without error       00%         1         -
# 7  Short offline       Aborted by host               90%         1         -

想法:

  • 运行坏块检查
  • 检查连接

答案1

这是APST问题。

有两种解决方法:

  1. 跑步

    sudo nano /etc/default/grub
    

    搜索以 value 开头的行GRUB_CMDLINE_LINUX_DEFAULT并添加为 value nvme_core.default_ps_max_latency_us=0

    结果应该是:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvme_core.default_ps_max_latency_us=0"
    

    然后保存文件:

    sudo update-grub
    reboot
    
  2. 如果第一个变体不起作用,只需禁用 ASPM: pcie_aspm=off。所以最终的结果应该是:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash pcie_aspm=off"
    

    然后保存文件:

    sudo update-grub
    reboot
    

答案2

这可能不是导致您的机器出现上述情况的原因。但就我而言,这是因为我的电脑靠近电线。可能有一些物理现象,比如电磁共振或者其他什么原因导致我的机器一直出现APST问题。我重新布置了办公桌,不再将笔记本电脑放在电源线附近,问题就解决了。简单的。

答案3

我同意关于强电磁场的情况,如果您的家在那里,这可能是搬家甚至搬迁的原因。

我去一家咖啡馆喝咖啡和工作,那里的一切都不对劲:摇摇欲坠的地板,跑来跑去的女服务员。我换了 3 次表,最后一次我开始出现问题中的错误。然后我重新启动了大约 5-7 次,结果相同。我在一种非常恼怒的状态下无法做任何事情(这对我来说很奇怪),我回家了。

现在在家——一切都恢复正常了!

看起来像 SSD 磁盘这样的敏感设备(或者人体的心理情绪状态)可以对这样的电磁环境做出反应。

因此,在对系统进行任何重新配置​​或尝试拯救笔记本电脑的任何其他有风险的更改之前,请先尝试另一个位置!

答案4

我想我已经通过移除 SDD、将空气吹入 M.2 连接器并将其重新插入来解决了这个问题。

当我从 USB 启动拯救 Debian 时,我注意到更详细的内核调试信息。在搜索时我注意到大多数解决方案都是更换 SATA 电缆。笔记本电脑 M.2 连接没有电缆。

我正在发布屏幕 屏幕

一些最重要的日志文本:

exception Emask 0x10 SAct ... SErr ... action 0xe frozen
interface fatal error, PHY RDY changed
SError: { PHYRdyChg LinkSeq }
failed command: WRITE FPDMA QUEUED
Emask 0x10 (ATA bus error)
hard resetting link

相关内容