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

Когда я запускаю e2fsck -nf /dev/sda2 я получаю следующее:

e2fsck 1.43.3 (04-Sep-2016)
Warning!  /dev/sda2 is mounted.
Warning: skipping journal recovery because doing a read-only filesystem check.
Pass 1: Checking inodes, blocks, and sizes
Deleted inode 3540701 has zero dtime.  Fix? no

Inodes that were part of a corrupted orphan linked list found.  Fix? no

Inode 3540770 was part of the orphaned inode list.  IGNORED.
Inode 3543800 was part of the orphaned inode list.  IGNORED.
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Block bitmap differences:  -(12097070--12097071) -(12702285--12702286) -(12704775--12704776)
Fix? no

Free blocks count wrong (14619606, counted=14663655).
Fix? no

Inode bitmap differences:  -3540701 -3540770 -3543800
Fix? no

Free inodes count wrong (3909036, counted=3921813).
Fix? no


/dev/sda2: ********** WARNING: Filesystem still has errors **********

/dev/sda2: 285268/4194304 files (0.2% non-contiguous), 2157610/16777216 blocks

Однако, когда я перезагружаюсь с разделом, смонтированным как readonly, e2fsck не сообщает об ошибках. Затем я обычно перезагружаюсь, чтобы обнаружить, что файловая система ext4 все еще повреждена.

У кого-нибудь есть идеи, что может происходить?

1 ответ1

2

Конечно, это говорит вам прямо здесь:

Warning!  /dev/sda2 is mounted.

Смотрите man-страницу для получения дополнительной информации:

Обратите внимание, что в общем случае запускать e2fsck на смонтированных файловых системах небезопасно. Единственное исключение - если указана опция -n, а опции -c, -l или -L не указаны. Однако, даже если это безопасно, результаты, напечатанные e2fsck, недействительны, если файловая система смонтирована. Если e2fsck спрашивает, стоит ли проверять смонтированную файловую систему, единственный правильный ответ - «нет». Только эксперты, которые действительно знают, что они делают, должны рассмотреть вопрос об ответе на этот вопрос любым другим способом.

Хорошо использовать живой ISO для проверки корневых файловых систем без их монтирования вообще.

И, возможно, ваш диск просто выходит из строя, создайте резервные копии и попробуйте безопасный / размонтированный e2fsck с опциями -c (только для чтения) или -cc (неразрушающего чтения-записи в соответствии с man-страницей) для проверки с помощью badblocks ,

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .