Восстановление файловой системы Linux после сбоя
Сбой файловой системы в linux случается достаточно редко, но лично у меня пару раз такое происходило из-за экстренного выключения ноутбука, вместо традиционного завершения сеанса операционной системы. И, при следующем включении, дистрибутив просто не загружался и выводил ошибку в терминале о неисправности используемого сектора жесткого диска. Если вам приходилось видеть данную ошибку, то, скорее всего, проблема в коренном (чаще всего он и есть поврежденный) секторе файловой системы.
Для выполнения восстановления нам необходим любой современный LiveCD дистрибутив.
Загружаемся в LiveCD и заходим в терминал от имени суперпользователя.
Для восстановление файловой системы в linux используется консольная утилита под названием fsck. Её вызов очень прост даже для новичков в мире linux.
Последовательность действий:
1. Загружаемся с LiveCD дистрибутива linux, содержащего в себе драйвер для работы с вашей файловой системой (например ext4) и собственно утилиту fsck.
2. Заходим в терминал LiveCD под именем суперпользователя. Например, в той-же Ubuntu нужно просто набрать в основной консоли sudo su. В Debian есть отдельный пункт меню для вызова root консоли. В Gentoo вам вообще ничего не придется делать — после загрузки вы уже под именем root.
3. Если вы не помните путь до поврежденной файловой системы (/dev/sdx), то смотрите на вывод команды fdisk -l и ориентируясь на размер или другие параметры, запоминаете путь до файловой системы (например /dev/sda1).
4. Теперь осталось запустить утилиту восстановления файловой системы командой fsck -fy /dev/sdx , где sdx — имя раздела (например sda1). Опция -f (force) используется для принудительной выполнении проверки. Опция -y (yes) позволяет программе автоматически отвечать «да» на все вопросы в ходе работы.
Также стоит запомнить опцию -t которая задаёт тип файловой системы.
Вот так-бы выглядел запуск проверки диска у меня на ноутбуке:
fsck -fy -t ext4 /dev/sda1
Тип файловой системы обычно определяется автоматически, что еще больше облегчает использование утилиты.
Также будьте аккуратны с разделами, если имеется несколько различных файловых систем, то проверку лучше делать для каждого раздела отдельно!
Комментарии:
Автор: netf0x, дата: 06 сентября 2010 , время: 16:19:44 (MSK).
А зачем LiveCD? Есть же singlemode
Автор: Roman, дата: 06 сентября 2010 , время: 17:01:25 (MSK).
Полагаю дело в том, что система может не загрузится даже в single mode (что видимо и происходит при вышеуказанной ошибке).
Автор: Subsanek, дата: 06 сентября 2010 , время: 17:08:08 (MSK).
Ну так при крахе ФС консоль не открыть. ДЛя того и liveCD.
Автор: iken, дата: 07 сентября 2010 , время: 08:38:25 (MSK).
«. в той-же Ubuntu нужно просто набрать в основной консоли sudo su» — не кошерно. Правильнее sudo -i
Автор: marlock, дата: 07 сентября 2010 , время: 20:59:56 (MSK).
ещё -r неплохо бы добавить
Автор: Станислав, дата: 07 марта 2013 , время: 01:10:59 (MSK).
Спасибо, помогло, не знал, что делать, а тут ваш статья =) в закладки однозначно на всякий =)
Автор: A, дата: 10 марта 2013 , время: 01:45:39 (MSK).
Спасибо огромное!
Автор: Subsanek, дата: 05 октября 2013 , время: 15:06:19 (MSK).
Станислав, А, приятно слышать, что вам помогла моя статья.
Автор: Иван, дата: 24 января 2014 , время: 12:12:24 (MSK).
Очень полезно для начинающих. Спасибо большое. Сейчас буду пробовать, а то уже и не знаю что делать.
Автор: m0sk1t, дата: 25 июня 2014 , время: 10:47:11 (MSK).
Не рассказали про опцию -c «найти bad-блоки readonly тестом и перенести в inod bad-блоков». Не рассказали что LiveCD в принципе не особо нужен, ибо проверка во многих дистрибутивах проходит перед загрузкой (не всегда, а при определённых условиях), а также что можно перезагрузиться с помощью shutdown -Fr now и принудительно запустить проверку. Но в целом неплохо =)
Автор: vasilisc, дата: 18 сентября 2014 , время: 13:40:29 (MSK).
В Ubuntu через определенное количество монтирований жестких дисков (читай «перезагрузок компьютера») принудительно включается fsck для проверки жестких дисков. Многие знают, что с помощью tune2fs можно управлять интервалами проверок fsck.
Но иногда нужно проверить диск «здесь и сейчас». Если запустить fsck с указанием ваших дисков, то скорее всего они примонтированы и fsck предупредит, что это чревато для вас. Как быть? Отмонтировать, чтобы проверить? А как быть с корнем?
Самый простой вариант такой:
sudo touch /forcefsck
Команда sudo (после ввода пароля) даст вам права создать с помощью touch пустой файл в корне диска /forcefsck, который служит сигналом (флагом) для fsck, что нужно проверить диски.
Вам осталось перезагрузить компьютер и fsck примется проверять все жесткие диски, указанные в /etc/fstab.
http://vasilisc.com/tips_ubuntu#force_fsck
Автор: Subsanek, дата: 20 июля 2015 , время: 14:08:35 (MSK).
m0sk1t и vasilisc, спасибо за полезные дополнения!
Автор: Александр, дата: 07 февраля 2019 , время: 14:52:00 (MSK).
Спасибо! Помогло после того как Norton Ghost.ver.11 сломал загрузчик линукса при создании образов разделов.
Автор: Андрей, дата: 30 октября 2020 , время: 21:34:41 (MSK).
А что нужно вбивать когда после выполнения поверки такие последние строчки:*** journal has been regenerated ***
UBUNTU:***** FILE SISTEM WAS MODIFIED *****
UBUNTU: 44625/60669952 files(0,5% non-contiguous), 6921939/242661888 blocks
rot@ubuntu:/home/ubuntu# что вбивать сюда?
Команда Fsck в Linux (восстановление файловой системы)


Добавить в избранное
Главное меню » Операционная система Linux » Команда Fsck в Linux (восстановление файловой системы)

fsck (проверка файловой системы) — это утилита командной строки, которая позволяет выполнять проверки согласованности и интерактивное исправление в одной или нескольких файловых системах Linux. Он использует программы, специфичные для типа файловой системы, которую он проверяет.
Вы можете использовать команду fsck для восстановления поврежденных файловых систем в ситуациях, когда система не загружается или раздел не может быть смонтирован.
В этой статье мы поговорим о команде fsck.
Как пользоваться fsck
Команда fsck принимает следующую общую форму:
fsck [OPTIONS] [FILESYSTEM]
Только root или пользователи с привилегиями sudo могут очистить буфер.
Если FILESYSTEM в качестве аргумента указано no, fsck проверяются устройства, указанные в файле fstab.
Никогда не запускайте fsckна смонтированных разделах, так как это может повредить файловую систему. Прежде чем пытаться проверить или восстановить файловые системы, всегда делайте unmountэто сначала.
Команда fsck является оболочкой для различных контроллеров файловой системы Linux ( fsck.*) и принимает различные параметры в зависимости от типа файловой системы.
Проверьте справочные страницы для получения дополнительной информации о конкретном контролере. Например, чтобы просмотреть доступные параметры fsck.ext4, введите:
man fsck.ext4
Восстановление поврежденной файловой системы
Простейший вариант использования команды fsck — восстановить поврежденную файловую систему ext3 или ext4 без полномочий root.
- Если вы не знаете имя устройства, использовать fdisk, df или любой другой инструмент, чтобы найти его.
- Размонтировать устройство:
sudo umount /dev/sdc1
sudo fsck -p /dev/sdc1
sudo mount /dev/sdc1
Восстановление корневой файловой системы
fsck не может проверить корневую файловую систему на работающей машине, потому что она не может быть размонтирована.
Если вы хотите проверить или восстановить корневую файловую систему, у вас есть несколько вариантов в вашем распоряжении. Вы можете настроить запуск fsck при загрузке, загрузить систему в режиме восстановления или использовать live CD.
Для запуска fsck в режиме восстановления:
- Войдите в меню загрузки и выберите «Дополнительные параметры»
- Выберите режим восстановления и затем «fsck».
- Когда будет предложено перемонтировать корневую файловую систему, выберите «Да».
- После этого возобновите нормальную загрузку.
Чтобы запустить fsck из живого дистрибутива:
- Загрузите живую раздачу.
- Используйте fdisk или, parted чтобы найти имя корневого раздела.
- Откройте терминал и запустите:
sudo fsck -p /dev/sda1
Проверьте файловые системы при загрузке
В большинстве дистрибутивов Linux fsck запускается во время загрузки, если файловая система помечена как грязная или после определенного количества загрузок или времени.
Чтобы увидеть текущий счетчик монтирования, проверить номер частоты, интервал проверки и время последней проверки для определенного раздела, используйте инструмент tune2fs:
sudo tune2fs -l /dev/sdc1 | grep -i 'last checked\|mount count'
Mount count: 292 Maximum mount count: -1 Last checked: Tue Jul 12 14:23:33 2018 Check interval: 0 ()
- «Maximum mount count» — это количество монтирований, после которых будет проверяться файловая система. Значение 0 или -1 означает, что fsck никогда не будет работать.
- «Check interval» — это максимальное время между двумя проверками файловой системы.
Если, например, вы хотите запускать fsck после каждых 25 загрузок (монтирования), введите:
sudo tune2fs -c 25 /dev/sdc1
Вы также можете установить максимальное время между двумя проверками. Например, чтобы установить один месяц, вы должны выполнить:
sudo tune2fs -i 1m /dev/sdc1
Чтобы заставить fsck работать во время загрузки на дистрибутивах SystemD, передайте следующие параметры загрузки ядра:
fsck.mode=force fsck.repair=yes
В старых дистрибутивах fsck будет работать при загрузке, если файл /forcefsck присутствует:
sudo touch /forcefsck
Параметры fstab
fstab это файл конфигурации, который сообщает системе, как и где монтировать разделы.
Файл /etc/fstab содержит список записей в следующем виде:
# [File System] [Mount Point] [File System Type] [Options] [Dump] [PASS] /dev/sda1 / ext4 defaults 0 1 /dev/sda2 /home ext4 defaults 0 2 server:/dir /media/nfs nfs defaults 0 0
Последний, шестой столбец ( [PASS]) — это параметр, который контролирует порядок, в котором проверки файловой системы выполняются во время перезагрузки.
- 0 — Не проверяй.
- 1 — Файловые системы должны проверяться первыми и по одному за раз.
- 2 — Все остальные файловые системы, которые проверяются позже и, возможно, параллельно.
Корневая файловая система должна иметь значение 1, а все остальные файловые системы, которые вы хотите проверить, должны иметь значение 2.
Заключение
fsck является инструментом командной строки для проверки и при необходимости восстановления файловых систем Linux
Чтобы узнать больше о команде fsck, посетите страницу руководства fsck или введите man fsck в свой терминал.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Восстановление повреждённой файловой системы
Файловые системы могут быть повреждены из-за неожиданного отключения питания, системных сбоев и небезопасного извлечения диска. После такого инцидента рекомендуется восстановить или хотя бы проверить файловую систему, чтобы предотвратить потерю данных в будущем.
Иногда требуется восстановление, чтобы смонтировать или изменить файловую систему. Даже если проверка не сообщает о каких-либо повреждениях, файловая система все равно может быть помечена как «испорченная» на внутреннем уровне, что нуждается в восстановлении.
Проверить, не повреждена ли файловая система
- Откройте Обзор и откройте приложение Диски .
- Выберите диск, содержащий необходимую файловую систему, из списка устройств слева. Если на диске более одного тома, выберите том, который содержит файловую систему.
- На панели инструментов под разделом Тома нажмите кнопку меню. Затем нажмите Проверить файловую систему… .
- В зависимости от того, сколько данных хранится в файловой системе, проверка может занять продолжительное время. В появившемся диалоговом окне подтвердите начало действия. Данная операция не изменит файловую систему, но при необходимости отмонтирует её. Будьте терпеливы, пока проверяется файловая система.
- После завершения вы будете уведомлены о состоянии файловой системы. Обратите внимание, что в некоторых случаях, даже если файловая система не повреждена, её всё равно может потребоваться восстановить, чтобы сбросить внутренний маркер «испорченая».
При восстановлении возможна потеря данных
Если структура файловой системы повреждена, это может повлиять на хранящиеся в ней файлы. В некоторых случаях эти файлы не могут быть снова приведены в надлежащий вид и будут удалены или перемещены в специальный каталог. Обычно это папка lost+found в каталоге верхнего уровня файловой системы, где можно найти восстановленные части файлов.
Если данные слишком ценны, чтобы их можно было потерять во время этого процесса, рекомендуется создать их резервную копию, сохранив образ тома перед восстановлением.
Затем это изображение можно обработать с помощью инструментов исследовательского анализа, таких как sleuthkit , для дальнейшего восстановления отсутствующих файлов и частей данных, которые не были восстановлены во время восстановления, а также ранее удаленных файлов.
Восстановление файловой системы
- Откройте Обзор и откройте приложение Диски .
- Выберите диск, содержащий необходимую файловую систему, из списка устройств слева. Если на диске более одного тома, выберите том, который содержит файловую систему.
- На панели инструментов под разделом Тома нажмите кнопку меню. Затем нажмите Восстановить файловую систему… .
- В зависимости от того, сколько данных хранится в файловой системе, восстановление может занять продолжительное время. В появившемся диалоговом окне подтвердите начало действия. При необходимости, во время процесса файловая система будет отмонтирована. Средство восстановления пытается привести файловую систему в корректное состояние и перемещает поврежденные файлы в специальную папку. Будьте терпеливы, пока файловая система восстанавливается.
- После завершения вы будете уведомлены, можно ли успешно восстановить файловую систему. В случае успеха ей можно будет снова пользоваться обычным способом. Если файловая система не может быть восстановлена, создайте её резервную копию, сохранив образ тома, чтобы впоследствии иметь возможность восстановить важные файлы. Это можно сделать монтированием образа в режиме только для чтения или используя инструменты исследовательского анализа, такие как sleuthkit . Чтобы снова использовать том, его необходимо отформатировать с созданием новой файловой системы. Все данные при этом будут удалены.
Команда Fsck в Linux (восстановление файловой системы)
fsck (проверка файловой системы) — это служебная программа командной строки, которая позволяет выполнять проверки согласованности и интерактивное восстановление в одной или нескольких файловых системах Linux. Он использует программы, зависящие от типа проверяемой файловой системы.
Вы можете использовать команду fsck для восстановления поврежденных файловых систем в ситуациях, когда система не загружается или раздел не может быть смонтирован.
В этой статье мы поговорим о команде fsck .
Как использовать fsck
Команда fsck имеет следующий общий вид:
fsck [OPTIONS] [FILESYSTEM]
Только root или пользователи с привилегиями sudo могут очистить буфер.
Если FILESYSTEM не указан в качестве аргумента, fsck проверяет устройства, перечисленные в fstab .
Никогда не запускайте fsck на смонтированных разделах, так как это может повредить файловую систему. Прежде чем пытаться проверить или восстановить файловую систему, всегда сначала unmount ее.
Команда fsck является оболочкой для различных средств проверки файловой системы Linux ( fsck.* ) И принимает разные параметры в зависимости от типа файловой системы.
Просмотрите страницы руководства для получения дополнительной информации о конкретной программе проверки. Например, чтобы просмотреть параметры, доступные для fsck.ext4 , введите:
man fsck.ext4
Восстановить поврежденную файловую систему
Самый простой вариант использования команды fsck — восстановить поврежденную файловую систему ext3 или ext4 без полномочий root.
- Если вы не знаете имя устройства, используйте fdisk , df или любой другой инструмент, чтобы найти его.
- Размонтируйте устройство:
sudo umount /dev/sdc1
sudo fsck -p /dev/sdc1
sudo mount /dev/sdc1
Восстановить корневую файловую систему
fsck не может проверить корневую файловую систему на работающем компьютере, потому что ее нельзя размонтировать.
Если вы хотите проверить или восстановить корневую файловую систему, в вашем распоряжении есть несколько вариантов. Вы можете настроить запуск программы fsck при загрузке, загрузку системы в режиме восстановления или использование Live CD.
Чтобы запустить fsck в режиме восстановления:
- Войдите в меню загрузки и выберите Дополнительные параметры.
- Выберите режим восстановления и затем «fsck».
- Когда будет предложено перемонтировать корневую файловую систему, выберите «Да».
- После этого возобновите обычную загрузку.
Чтобы запустить fsck из живого дистрибутива:
- Загрузите live-дистрибутив.
- Используйте fdisk или parted чтобы найти имя корневого раздела.
- Откройте терминал и запустите:
sudo fsck -p /dev/sda1
Проверить файловые системы при загрузке
В большинстве дистрибутивов Linux fsck запускается во время загрузки, если файловая система помечена как грязная или после определенного количества загрузок или времени.
Чтобы увидеть текущее количество подключений, частоту проверки, интервал проверки и время последней проверки для определенного раздела, используйте инструмент tune2fs :
sudo tune2fs -l /dev/sdc1 | grep -i 'last checked|mount count'
Mount count: 292 Maximum mount count: -1 Last checked: Tue Jul 24 11:10:07 2018 Check interval: 0 ()
- «Максимальное количество подключений» — это количество подключений, после которых файловая система будет проверена. Значение 0 или -1 означает, что fsck никогда не запустится.
- «Интервал проверки» — это максимальное время между двумя проверками файловой системы.
Если, например, вы хотите запускать fsck после каждых 25 загрузок (монтирований), введите:
sudo tune2fs -c 25 /dev/sdc1
Вы также можете установить максимальное время между двумя проверками. Например, чтобы установить его на один месяц, вы должны выполнить:
sudo tune2fs -i 1m /dev/sdc1
Чтобы заставить fsck запускаться во время загрузки в дистрибутивах SystemD, передайте следующие параметры загрузки ядра:
fsck.mode=force fsck.repair=yes
В более старых дистрибутивах fsck будет запускаться при загрузке, если /forcefsck файл /forcefsck :
sudo touch /forcefsck
Параметры fstab
fstab — это файл конфигурации, который сообщает системе, как и где монтировать разделы.
Файл /etc/fstab содержит список записей в следующем виде:
# [File System] [Mount Point] [File System Type] [Options] [Dump] [PASS] /dev/sda1 / ext4 defaults 0 1 /dev/sda2 /home ext4 defaults 0 2 server:/dir /media/nfs nfs defaults 0 0
Последний, шестой столбец ( [PASS] ) — это параметр, который контролирует порядок, в котором проверки файловой системы выполняются во время перезагрузки.
- 0 — Не проверять.
- 1 — файловые системы для проверки в первую очередь и по очереди.
- 2 — Все остальные файловые системы, которые проверяются позже и, возможно, параллельно.
Корневая файловая система должна иметь значение 1 , а все остальные файловые системы, которые вы хотите проверить, должны иметь значение 2 .
Выводы
fsck — это инструмент командной строки для проверки и, при необходимости, восстановления файловых систем Linux.
Чтобы узнать больше о команде fsck , посетите страницу руководства fsck или введите man fsck в своем терминале.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.