Ошибка EXT4-fs после обновления Ubuntu 17.04

У меня Dell XPS 15 9550. Я запускаю Ubuntu 16.10 на нем четыре месяца без драм.

Два дня назад я обновился до Ubuntu 17.04. Примерно через час после обновления мой жесткий диск перешел в режим только для чтения. Когда я прыгнул на tty экран, это появилось:

[ 746.341551] EXT4-fs error (device nvme0n1p7): ext4_find_entry:1463: inode #525023: comm NetworkManager: reading directory iblock 0
[ 746.343318] EXT4-fs error (device nvme0n1p7): ext4_find_entry:1463: inode #524289: comm pool: reading directory iblock 0
[ 746.356125] EXT4-fs error (device nvme0n1p7): ext4_find_entry:1463: inode #11272213: comm systemd-udevd: reading directory iblock 0
[ 746.356139] EXT4-fs error (device nvme0n1p7): ext4_find_entry:1463: inode #11272210: comm systemd-udevd: reading directory iblock 0
[ 746.356332] EXT4-fs error (device nvme0n1p7): ext4_find_entry:1463: inode #11272193: comm systemd-udevd: reading directory iblock 0
[ 746.356338] EXT4-fs error (device nvme0n1p7): ext4_find_entry:1463: inode #11272825: comm systemd-udevd: reading directory iblock 0
[ 746.356400] EXT4-fs error (device nvme0n1p7): ext4_find_entry:1463: inode #11272210: comm systemd-udevd: reading directory iblock 0
[ 746.474632] EXT4-fs error (device nvme0n1p7): ext4_find_entry:1463: inode #524539: comm unity-settings-: reading directory iblock 0
[ 746.992814] EXT4-fs error (device nvme0n1p7): ext4_find_entry:1463: inode #5506108: comm BrowserBlocking: reading directory iblock 0
[ 746.304451] EXT4-fs error (device nvme0n1p7): ext4_find_entry:1463: inode #5506117: comm BrowserBlocking: reading directory iblock 0

Вот что fdisk -l показывает:

Disk /dev/nvme0n1: 477 GiB, 512110190592 bytes, 1000215216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 3CD27380-DAC8-48DC-910A-D084CE857DA3

Device             Start        End   Sectors   Size Type
/dev/nvme0n1p1      2048    1026047   1024000   500M EFI System
/dev/nvme0n1p2   1026048    1288191    262144   128M Microsoft reserved
/dev/nvme0n1p3   1288192  487948287 486660096 232.1G Microsoft basic data
/dev/nvme0n1p4 972302336  973223935    921600   450M Windows recovery environmen
/dev/nvme0n1p5 973223936  998094847  24870912  11.9G Windows recovery environmen
/dev/nvme0n1p6 998094848 1000204287   2109440     1G Windows recovery environmen
/dev/nvme0n1p7 487948288  939046911 451098624 215.1G Linux filesystem
/dev/nvme0n1p8 939046912  972302335  33255424  15.9G Linux swap

Partition table entries are not in disk order.

Я перезагрузился и продолжал получать ошибку примерно раз в час. Поэтому я переустановил Ubuntu 17.04 с нуля. Однако я все еще получаю ту же проблему.

Я попытался запустить fsck, создав файл /forcefsck (я создал сценарий оболочки оболочки, который добавляет -v флаг и выводит стандартный вывод в файл). Вот результат:

fsck.fat 4.0 (2016-05-06)                               
Checking we can access the last sector of the filesystem
Boot sector contents:                                   
System ID "MSDOS5.0"                                    
Media byte 0xf8 (hard disk)                             
       512 bytes per logical sector                     
      4096 bytes per cluster                            
      6206 reserved sectors                             
First FAT starts at byte 3177472 (sector 6206)          
         2 FATs, 32 bit entries                         
    508416 bytes per FAT (= 993 sectors)                
Root directory start at cluster 2 (arbitrary size)      
Data area starts at byte 4194304 (sector 8192)          
    126976 data clusters (520093696 bytes)              
63 sectors/track, 255 heads                             
      2048 hidden sectors                               
   1024000 sectors total                                
Reclaiming unconnected clusters.                        
Checking free cluster summary.                          
/dev/nvme0n1p1: 212 files, 15526/126976 clusters    

Я попытался загрузить с живого USB и работает e2fsck -p /dev/nvme0n1p7 как предложено здесь ( /questions/34413/soobschenie-ob-oshibke-oshibka-ext4-fs-ext4findentry-1451/34426#34426). Это не дало никаких ошибок.

Я тоже пытался бежать smartctl -t long /dev/nvme0n1p7 однако результаты показывают, что инструмент не работает с моим конкретным SSD:

smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.10.0-19-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Number:                       PM951 NVMe SAMSUNG 512GB
Serial Number:                      S29PNX0H611013
Firmware Version:                   BXV77D0Q
PCI Vendor/Subsystem ID:            0x144d
IEEE OUI Identifier:                0x002538
Controller ID:                      1
Number of Namespaces:               1
Namespace 1 Size/Capacity:          512,110,190,592 [512 GB]
Namespace 1 Utilization:            254,982,533,120 [254 GB]
Namespace 1 Formatted LBA Size:     512
Local Time is:                      Mon Apr 17 17:45:48 2017 AEST
Firmware Updates (0x06):            3 Slots
Optional Admin Commands (0x0017):   Security Format Frmw_DL *Other*
Optional NVM Commands (0x001f):     Comp Wr_Unc DS_Mngmt Wr_Zero Sav/Sel_Feat
Maximum Data Transfer Size:         32 Pages

Supported Power States
St Op     Max   Active     Idle   RL RT WL WT  Ent_Lat  Ex_Lat
 0 +     6.00W       -        -    0  0  0  0        5       5
 1 +     4.20W       -        -    1  1  1  1       30      30
 2 +     3.10W       -        -    2  2  2  2      100     100
 3 -   0.0700W       -        -    3  3  3  3      500    5000
 4 -   0.0050W       -        -    4  4  4  4     2000   22000

Supported LBA Sizes (NSID 0x1)
Id Fmt  Data  Metadt  Rel_Perf
 0 +     512       0         0

=== START OF SMART DATA SECTION ===
Read NVMe SMART/Health Information failed: NVMe Status 0x2002

Любая идея о том, почему эта проблема может возникать и как я могу решить ее? Спасибо!:)

5 ответов

Решение

Как указано в комментарии старейшины Гика, это связано с известной ошибкой.

Из сообщения об ошибке:

Поддержка APST только что появилась в последнем ядре Zesty (4.10.0-14.16) как часть https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1664602. Этот патч имеет причуду для некоторых 256-гигабайтных дисков Samsung, которые можно найти в ноутбуках Dell, которые плохо работают при включенном APST. Я испытываю те же симптомы с ноутбуком той же модели, за исключением Samsung 512 ГБ. Перед ручным отключением APST диск погибнет, и система загорится с ошибками ввода-вывода в течение 20-40 минут после загрузки.

До тех пор, пока не будет выполнено правильное исправление, предлагается обходной путь, который включает добавление параметра ядра:

Пожалуйста, попробуй nvme_core.default_ps_max_latency_us=5500Если проблема не устранена, попробуйте nvme_core.default_ps_max_latency_us=200,

Чтобы добавить параметр загрузки ядра, отредактируйте файл конфигурации для GRUB:

sudo nano /etc/default/grub

Найдите начало строки GRUB_CMDLINE_LINUX_DEFAULT и добавьте параметр загрузки к другим уже между кавычками. Например, в этом случае вы, вероятно, в конечном итоге

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvme_core.default_ps_max_latency_us=5500"

Сохраните файл и выйдите, затем, чтобы изменения вступили в силу, запустите

sudo update-grub 

Во-первых, я бы зашел на сайт поддержки Samsung и заверил, что у вас установлена ​​последняя версия прошивки для вашей модели SSD.

Тогда ваш fsck не имел особого смысла, так что сделайте это так...

Чтобы проверить файловую систему на вашем разделе Ubuntu...

  • загрузиться в меню GRUB
  • выберите Дополнительные параметры
  • выберите режим восстановления
  • выберите Root-доступ
  • в командной строке # введите sudo fsck -f /
  • повторите команду fsck, если были ошибки
  • тип reboot

Один из возможных способов обойти известную ошибку, о которой я упоминал, которую я не могу протестировать, поскольку у меня нет соответствующего оборудования NVMe, - это попытаться загрузить текущий основной пакет ежедневной сборки ядра для вашей архетектуры, доступной здесь.

Подождите! прежде чем вы решитесь попробовать это, я должен подчеркнуть, что, если вы не уверены, что точно знаете , что делаете и как избавиться от непредвиденных последствий, настоятельно рекомендуется сделать резервную копию.

Если вы не знаете, что делаете, и у вас есть текущая резервная копия, вы можете найти больше информации о сборке вашего ядра здесь.

Примечание. Если вы прочитали первое предложение, этот ответ основан на исследовании, а не на тестировании. Если он сломается, восстановите резервную копию.

Я наблюдал аналогичную ошибку на Lenovo ThinkPad P570 и после новой установки Ubuntu 20.04 и Ubuntu 21.04.

Это можно решить, отключив параметр «UEFI Secure Boot» в BIOS, который изначально был включен.

Каждый раз, когда я открываю свой ноутбук и пробую эту командную строку. Я делал это несколько раз. и теперь моя проблема с ext4-fs-error решена.

sudo nano /etc/default/grub

и изменить GRUB_CMDLINE_LINUX_DEFAULT= к

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvme_core.default_ps_max_latency_us=5500"

затем сохраните и выйдите. и напишите эту команду

sudo update-grub 

спасибо Ben B за 1-й комментарий. Я получил эту командную строку из его ответа ( ошибка EXT4-fs после обновления Ubuntu 17.04) .

Другие вопросы по тегам