- Команда Fsck в Linux (Восстановление файловой системы)
- Fsck Command in Linux (Repair File System)
- В этой статье мы поговорим о fsck команде.
- Как пользоваться fsck
- Восстановление поврежденной файловой системы
- Восстановление корневой файловой системы
- Проверьте файловые системы при загрузке
- fstab Параметры
- Вывод
- Проверка и восстановление файловых систем в Linux- команда fsck
- Как работает fsck?
- Некоторые особенности использования fsck в Linux
- Синтаксис и основные опции fsck
- Примеры использования fsck
- Заключение
- Команда Fsck в Linux
- Требования:
- Что делает команда fsck
- Команда fsck в Linux
- Проверка и исправление ошибок файловой системы в Linux
- Исправление ошибки корневой файловой системы Linux командой fsck
- Параметры fsck
- Параметры fsck
- Заключение
Команда Fsck в Linux (Восстановление файловой системы)
Fsck Command in Linux (Repair File System)
В этой статье мы поговорим о fsck команде.
fsck (проверка файловой системы) — это утилита командной строки, которая позволяет выполнять проверки согласованности и интерактивное исправление в одной или нескольких файловых системах Linux. Он использует программы, специфичные для типа файловой системы, которую он проверяет.
Вы можете использовать fsck команду для восстановления поврежденных файловых систем в ситуациях, когда система не загружается или раздел не может быть смонтирован.
Как пользоваться fsck
Команда fsck принимает следующую общую форму:
Только root или пользователи с sudo привилегиями могут очистить буфер.
Если FILESYSTEM в качестве аргумента указано no , fsck проверяются устройства, указанные в fstab файле.
Никогда не запускайте fsck на смонтированных разделах, так как это может повредить файловую систему. Прежде чем пытаться проверить или восстановить файловые системы, всегда делайте unmount это сначала.
Команда fsck является оберткой для различных контроллеров файловой системы Linux ( fsck.* ) и принимает различные параметры в зависимости от типа файловой системы.
Проверьте справочные страницы для получения дополнительной информации о конкретном контролере. Например, чтобы просмотреть доступные параметры fsck.ext4 , введите:
Восстановление поврежденной файловой системы
Простейший вариант использования fsck команды — восстановить поврежденную файловую систему ext3 или ext4 без полномочий root.
Если вы не знаете имя устройства, использовать fdisk , df или любой другой инструмент , чтобы найти его.
Запустите fsck для восстановления файловой системы:
-p Опция указывает fsck автоматически исправить все проблемы , которые могут быть надежно закреплены без вмешательства пользователя.
После восстановления файловой системы смонтируйте раздел:
Восстановление корневой файловой системы
fsck не может проверить корневую файловую систему на работающей машине, потому что она не может быть размонтирована.
Если вы хотите проверить или восстановить корневую файловую систему, у вас есть несколько вариантов в вашем распоряжении. Вы можете настроить fsck запуск при загрузке, загрузить систему в режиме восстановления или использовать live CD.
Для запуска fsck в режиме восстановления:
- Войдите в меню загрузки и выберите «Дополнительные параметры»
- Выберите режим восстановления и затем «fsck».
- Когда будет предложено перемонтировать корневую файловую систему, выберите «Да».
- После этого возобновите нормальную загрузку.
Чтобы запустить fsck из живого дистрибутива:
Загрузите дистрибутив в режиме реального времени.
Используйте fdisk или, parted чтобы найти имя корневого раздела.
Откройте терминал и запустите:
После этого перезагрузите дистрибутив и загрузите вашу систему.
Проверьте файловые системы при загрузке
В большинстве дистрибутивов Linux fsck запускается во время загрузки, если файловая система помечена как грязная или после определенного количества загрузок или времени.
Чтобы увидеть текущий счетчик монтирования, проверить номер частоты, интервал проверки и время последней проверки для определенного раздела, используйте tune2fs инструмент:
- «Максимальное количество монтирований» — это количество монтирований, после которых будет проверяться файловая система. Значение 0 или -1 означает, что fsck никогда не будет работать.
- «Интервал проверки» — это максимальное время между двумя проверками файловой системы.
Если, например, вы хотите запускать fsck после каждых 25 загрузок (монтирования), введите:
Вы также можете установить максимальное время между двумя проверками. Например, чтобы установить один месяц, вы должны выполнить:
Чтобы заставить fsck работать во время загрузки на дистрибутивах SystemD, передайте следующие параметры загрузки ядра:
В старых дистрибутивах fsck будет работать при загрузке, если /forcefsck файл присутствует:
fstab Параметры
fstab это файл конфигурации, который сообщает системе, как и где монтировать разделы.
/etc/fstab Файл содержит список записей в следующем виде:
Последний, шестой столбец ( [PASS] ) — это параметр, который контролирует порядок, в котором проверки файловой системы выполняются во время перезагрузки.
- 0 — Не проверяй.
- 1 — Файловые системы должны проверяться первыми и по одному за раз.
- 2 — Все остальные файловые системы, которые проверяются позже и, возможно, параллельно.
Корневая файловая система должна иметь значение 1 , а все остальные файловые системы, которые вы хотите проверить, должны иметь значение 2 .
Вывод
fsck является инструментом командной строки для проверки и при необходимости восстановления файловых систем Linux
Чтобы узнать больше о fsck команде, посетите страницу руководства fsck или введите man fsck свой терминал.
Источник
Проверка и восстановление файловых систем в Linux- команда fsck
Иногда по разным причинам (в результате сбоя, некорректного завершения работы) файловые системы накапливают ошибки. Сами ошибки представляют собой «рассогласованные» структуры данных. Естественно, при возникновении такой ситуации необходимо как можно скорее привести повреждённую файловую систему в порядок. С этой задачей отлично справляется утилита fsck. Она действительно очень эффективна и системные администраторы очень часто в первую очередь используют именно ее для восстановления или починки файловых систем.
Как работает fsck?
Утилита fsck (File System Consistency Check) изначально глубоко проверяла все структуры данных подряд, т. е. целиком всю файловую систему. Для поиска ошибок она задействовала методы эвристического анализа для ускорения и оптимизации процесса поиска ошибок. Однако, даже в этом случае для больших по объёму файловых систем эта процедура могла занимать много часов.
Позднее была реализована схема оценки состояния файловой системы, в основе которой лежит признак «чистого бита файловой системы». Если происходил сбой и файловая система (ФС) некорректно демонтировалась, то в суперблоке ФС устанавливался этот бит. По-умолчанию в Linux-системах на одном из этапов загрузки системы происходит проверка файловых систем, которые зарегистрированы в файлах /etc/fstab, /etc/vfstab, а также в /etc/filesystems. Таким образом, анализируя «чистый бит» ФС во время загрузки системы утилита определяет, стоит ли проводить проверку.
Журналируемые ФС в настоящее время позволяют утилите работать только с теми структурами данных, которым действительно необходима починка или восстановление. При необходимости fsck может восстановить всю ФС целиком благодаря всё тем же журналам ФС.
Некоторые особенности использования fsck в Linux
Для Linux-систем довольно часто (в особенности с использованием ФС ext) проверка ФС может быть организована таким образом, что она будет проводиться при прошествии некоторого числа демонтирований, даже если ФС полностью исправны. Это особенно актуально для настольных компьютеров, которые могут выключаться/включаться каждые сутки, перезагружаться в связи с особенностью их работы и применения, а также из-за свободного к ним доступа для подключения внешних устройств. В таких случаях проверка ФС (хоть и является полезной и благоприятной процедурой), оказывается слишком частой, а потому бессмысленной.
По-умолчанию в Linux проверка ФС проводится по прошествии 20 демонтирований. Для того, чтобы изменить количество демонтирований, после которых нужна проверка ФС нужно воспользоваться командой tune2fs:
Синтаксис и основные опции fsck
У команды fsck следующий синтаксис:
Опция | Описание |
-A | Проверяет все ФС |
-С [ ] | Показывает статус выполнения. Здесь fd – дескриптор файла при отображении через графический интерфейс |
-l | Блокирует устройство для исключительного доступа |
-M | Запрещает проверять примонтированные ФС |
-N | Показывает имитацию выполнения, без запуска реальной проверки |
-P | Проверять вместе с корневой ФС |
-R | Пропускает проверку корневой ФС. Может использоваться только совместно с опцией -A |
-r [ ] | Выводит статистику для каждого проверенного устройства |
-T | Не показывать заголовок при запуске |
-t | Задаёт ФС для проверки. Можно задавать несколько ФС, перечисляя через запятую |
-V | Выводит подробное описание выполняемых действий |
Кроме основных опций для fsck существуют и специфические, зависящие от выполняемой задачи и/или ФС. Об этом более подробно можно прочитать в соответствующих страницах интерактивного руководства, используя команду man fsck. В содержании основного руководства для утилиты (в разделе «SEE ALSO») есть ссылки на другие страницы, например fstab(5), mkfs(8), fsck.ext2(8), fsck.ext3(8) и т. д. Информацию по этим ссылкам можно просматривать выполняя команду man с соответствующими параметрами, например man fsck.ext3.
В следующей таблице приводятся дополнительные (специальные), а также наиболее часто используемые опции, позволяющие использовать команду с максимальной гибкостью и эффективностью:
Опция | Описание |
-a | Устаревшая опция. Указывает исправлять все найденные ошибки без одобрения пользователя. |
-r | Применяется для файловых систем ext. Указывает fsck спрашивать пользователя перед исправлением каждой ошибки |
-n | Выполняет только проверку ФС, без исправления ошибок. Используется также для получения информации о ФС |
-c | Применяется для файловых систем ext3/4. Помечает все повреждённые блоки для исключения последующей записи в них |
-f | Принудительно проверяет ФС, даже если ФС исправна |
-y | Автоматически подтверждает запросы к пользователю |
-b | Задаёт адрес суперблока |
-p | Автоматически исправлять найденные ошибки. Заменяет устаревшую опцию -a |
Примеры использования fsck
Для самой типичной ситуации, характерной для случаев, когда нужно восстановить (а точнее «починить») ФС, например на устройстве /dev/sdb2, следует воспользоваться командой:
Здесь опция -y необходима, т. к. при её отсутствии придётся слишком часто давать подтверждение. Следующая команда позволит произвести принудительную проверку ФС, даже в том случае, если она исправна:
Одной из самых полезных является опция, позволяющая помечать повреждённые сектора и эта же опция используется чаще всего. Обычно такие ситуации (с повреждёнными секторами) возникают после сбоев, вызванных нештатным отключением электропитания:
Работу файловыми системами нужно проводить, когда они отмонтированны от разделов. Однако, если возникает ситуация, когда нужно всё же произвести проверку на примонтированных ФС, то перед тем как использовать команду fsck с соответствующей опцией, нужно сначала перемонтировать нужную ФС в режиме «только для чтения»:
Для указания, какую ФС использовать для раздела:
Если fsck не справляется с исправлением/починкой ФС (что случается очень редко), то это может быть из-за повреждённого суперблока ФС. Его также можно восстановить, поскольку для суперблоков создаются их резервные копии. Но сначала нужно узнать, по каким адресам эти копии записывались, а затем попытаться восстановить суперблок из одной их резервных копий:
Команда fdisk -l упомянута в данном примере для наглядности того, что сначала нужно представлять, с каким устройством работать, т. к. она выводит список (в данном выводе опущен) доступных разделов. Команда mkfs предназначена для создания ФС, но с опцией -n её можно использовать для получения информации о ФС, в том числе и о расположении суперблоков. Следует следить за тем, чтобы ключом -t для mkfs задавалась соответствующая фактическому состоянию файловая система, в данном случае ext4.
Заключение
В данной статье мы рассмотрели работу и использование утилиты fsck. Как видно из статьи использование утилиты не предоставляет большой сложности. А возможности по проверки и восстановлению файловых систем в Linux у нее довольно большие, поэтому знание этой утилиты системному администратору просто необходимы.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
Команда Fsck в Linux
Команда FSCK (Проверка согласованности файловой системы) — это команда предназначена для проверки и исправления ошибок файловой системы Linux. Что гарантирует целостность и согласованность файловой системы.
fsck — это интерфейсная утилита, которая вызывает программу для проверки конкретной файловой системы. Команда Fsck обычно запускается после сбоя загрузки системы, повреждения файловой системы или сбоя в работе подключенного диска.
Например в системе Windows есть подобная утилита, называется chkdsk.
В этой статье мы расскажем о команде fsck и о том, как восстановить систему в дистрибутиве Linux.
Требования:
- Установленная система Linux или Unix-подобная
- Пользователь с правами Sudo (суперпользователь)
Что делает команда fsck
- Система автоматически обнаруживает несогласованность системы, как правило после сбоя системы или потери питания или после неправильного отключения.
- Используйте fsck если система не загружается
- Исправление ошибок ввода-вывода
- Запланированный запуск fsck для проверки файловой системы при загрузке ОС.
Команда fsck в Linux
Команда fsck имеет вот такой синтаксис.
[Опция] в синтаксисе — это параметры, доступные с помощью утилиты fsck (различные опции fsck приведены в конце этой статьи).
[Файловая система] может быть устройством, разделом, точкой монтирования и так далее. Если учетные данные не добавлены в [Файловую систему], fsck проверяет устройства, перечисленные в файле fstab.
fsck по умолчанию включен во все дистрибутивы Linux. Команда fsck проверяет все файлы и целостность файловой системы. Эту команду можно выполнить вручную или автоматически.
ВНИМАНИЕ: Прежде чем пытаться проверить или восстановить файловую систему, всегда помните о необходимости размонтирования раздела. Если этого не сделать, файловая система может быть повреждена.
Проверка и исправление ошибок файловой системы в Linux
Fsck обычно используется для исправления ошибок в поврежденных файловых системах ext3 или ext4. Чтобы использовать утилиту fsck, вы должны сначала убедиться, что раздел был размонтирован. Вы получите сообщение об ошибке и ваш процесс будет прерван, если вы попытаетесь запустить команду fsck в разделе не размонтировав его. После завершения процесса вы можете снова смонтировать файловую систему.
Если вы не уверены в имени устройства которое хотите проверить, используйте команду df, lsblk или fdisk (fdisk-l), чтобы найти его.
Используйте команду размонтировать, чтобы избежать повреждения файловой системы.
Синтаксис команды размонтирования:
Вы можете использовать опцию -p вместе с утилитой fsck для автоматического устранения любых проблем, которые будут безопасно устранены без вмешательства пользователя.
Синтаксис команды проверки файловой системы и файлов:
Пример использования команд :
$ sudo umount /dev/sdc
$ sudo fsck -p /dev/sdc
Ответ в терминала:
$ sudo fsck -p /dev/sdc
fsck from util-linux 2.34
exfatfsck 1.3.0
Checking file system on /dev/sdc.
File system version 1.0
Sector size 512 bytes
Cluster size 128 KB
Volume size 55 GB
Used space 4 MB
Available space 55 GB
Totally 1 directories and 3 files.
File system checking finished. No errors found.
После проверки и ремонта обязательно смонтируйте диск.
Исправление ошибки корневой файловой системы Linux командой fsck
Поскольку корневая система не может быть отключена, Fsck не может проверять наличие ошибок. Но у вас есть возможность запустить fsck в режиме восстановления.
Перезагрузив компьютер в режиме аварийного восстановления, вы можете запустить fsck. Чтобы запустить fsck для исправления ошибок файлов корневой системы, выполнив следующие действия.
Войдите в меню загрузки и выберите «Дополнительные параметры» (Advanced Options).
Дополнительные параметры для запуска fsck
Теперь выберите “Режим восстановления” (Recovery mode), а затем в меню выберите» fsck” .
Исправление ошибки корневой файловой системы Linux командой fsck
Далее появится окно сообщения с вопросом, хотите ли вы переустановить свою / файловую систему. Выберите опцию «Да«.
Меню восстановления системы Linux
Теперь нажмите «ДА» и вернитесь к нормальной загрузке.
Команда Fsck в Linux
Возвращение к нормальной загрузке ОС Linux
Параметры fsck
Существует список опций (параметров), которые доступны с помощью утилиты fsck. Все они используются для конкретных целей. Вот некоторые полезные опций fsck:
1. Perform fsck dry run — это выполнение тестового запуска.
2. Опция -y на все вопросы автоматически ответит ДА, это позволит избежать всех подсказок
3. Параметр -n выведите ошибку fsck без ремонта
4. Запуск fsck во всех файловых системах
-R пропустит корневую файловую систему, так как ее нельзя размонтировать на работающей машине
5. Запуск fsck для определенной файловой системы
Команда fsck является оболочкой и внутренне использует соответствующую команду проверки файловой системы ( fsck.* ). Вы можете найти следующие различные команды проверки fsck, такие как fsck.ext2, fsck.ext3, fsck.ext4 и т.д.).
# cd /sbin
# ls fsck*
fsck fsck.cramfs fsck.ext2 fsck.ext3 fsck.ext4 fsck.minix fsck.xfs
В следующей таблице показаны все параметры (опции) команды fsck.
Параметры fsck
Вариант | Описание |
-A | Проверяет все файловые системы, присутствующие в файле /etc/fstab |
-C | Отображает индикатор выполнения |
-f | Принудительно проверяет файловую систему |
-l | Блокирует устройство |
-M | Не проверяет смонтированные файловые системы |
-N | Выводит на печать без выполнения каких — либо действий |
-P | Параллельная проверка нескольких файловых систем |
-p | Автоматически устранять любые проблемы, которые могут быть безопасно устранены без необходимости взаимодействия с пользователем |
-R | Не проверяет корневую файловую систему при использовании с -A |
-r | Отображает статистику для каждого проверенного устройства |
-T | Не показывает название |
-t | Укажите типы файловых систем, которые необходимо проверить (это можно сделать с помощью команды man ) |
-v | Предоставляет подробную информацию |
-y | Отвечает «да» на все вопросы |
fstab — это файл, который указывает операционной системе, как и где монтировать разделы. Вы так же можете найти список записей в файле fstab /etc/fstab.
определяет порядок, в котором выполняются проверки файловых системы во время перезагрузки. Если значение равно 0, то оно не проверяется. Если значение равно 1, файловые системы проверяются по одной за раз. А если значение равно 2, поиск во всех файловых системах выполняется одновременно. Значение корневой файловой системы равно 1, а все остальные файловые системы, которые вы хотите проверить, должны иметь значение 2.
Образец файла /etc/fstab:
Проверка файловой системы командой Fsck в Linux
Заключение
В этой статье мы показали, как использовать команду fsck для проверки и восстановления файловых систем в Linux. Вы так же можете ознакомиться со справочным материалом fsck для более подробного изучения.
Источник