ФСК
![]() fsck в действии в системе Linux . | |
Операционная система | Unix и Unix-подобные |
---|---|
Тип | Команда |
Системная утилита fsck
( проверка целостности файловой системы ) — инструмент для проверки целостности файловой системы в Unix и Unix-подобных операционных системах, таких как Linux , macOS и FreeBSD . [1] Эквивалентными программами в MS-DOS и Microsoft Windows являются CHKDSK , SFC и SCANDISK .
Использовать
[ редактировать ]Обычно fsck запускается либо автоматически во время загрузки, либо вручную системным администратором. Команда работает непосредственно со структурами данных, хранящимися на диске, которые являются внутренними и специфичными для конкретной используемой файловой системы, поэтому обычно требуется команда fsck, адаптированная к файловой системе. Точное поведение различных реализаций fsck различается, но обычно они следуют общему порядку внутренних операций и предоставляют пользователю общий интерфейс командной строки. В современных системах fsck просто определяет тип файловой системы и вызывает специализированную fsck.type
(Линукс) или fsck_type
(BSD, macOS) для каждого типа. [1] [2]
Большинство утилит fsck предоставляют возможности либо для интерактивного восстановления поврежденных файловых систем (пользователь должен решить, как исправить конкретные проблемы), либо для автоматического решения того, как исправить конкретные проблемы (чтобы пользователю не приходилось отвечать ни на какие вопросы), или для просмотра проблем, которые необходимо решить. быть решены в файловой системе без их фактического исправления. Частично восстановленные файлы, исходное имя которых невозможно восстановить, обычно восстанавливаются в каталог «потеряно+найдено» , который хранится в корне файловой системы.
Системный администратор также может запустить fsck вручную, если считает, что существует проблема с файловой системой. Файловая система обычно проверяется в размонтированном состоянии, смонтирована только для чтения или когда система находится в специальном режиме обслуживания.
Время загрузки
[ редактировать ]Поскольку ожидается, что во время загрузки fsck будет работать без вмешательства пользователя, по умолчанию он обычно не выполняет никаких разрушительных операций. Это может быть проверка только для чтения (неудачная при обнаружении проблем) или, чаще, «прихорашивание». -p
режим, который исправляет только безобидные проблемы, обычно возникающие после некорректного завершения работы (например, сбой, сбой питания). [2]
ext2/3/4 предлагает возможность принудительной проверки во время загрузки после определенного количества монтирований, чтобы можно было выполнять периодическую проверку. [3]
Некоторые современные файловые системы не требуют, чтобы fsck загружался после некорректного завершения работы. Некоторые примеры:
- XFS , журналируемая файловая система . У него есть фиктивный fsck, который ничего не делает. [4] и настоящий
xfs_repair
инструмент, который следует запускать при подозрении на проблемы. - UFS2 Файловая система во FreeBSD , которая может задержать проверку в фоновом режиме, если мягкие обновления . включены [5] В результате обычно нет необходимости дожидаться завершения fsck, прежде чем получить доступ к диску. Этот дизайн отражен в
-F
флаг, используемый при загрузке. [2] - ZFS и Btrfs — две с возможностью копирования при записи файловые системы . Они избегают внесения изменений на месте, чтобы обеспечить уровень согласованности, аналогичный журнальному. Они также предоставляют фиктивный fsck. [6]
btrfs-check
по-прежнему доступен для проверки на наличие предполагаемых проблем в структуре файловой системы (например, при подозрении на ошибку программного обеспечения или аппаратную проблему).
Независимо от проверки структуры файловой системы, современные файловые системы могут предлагать инструмент очистки данных для проверки скрытого повреждения хранящихся данных по зеркалу или контрольной сумме . Скрабы, как правило, работают медленно, поскольку охватывают все данные на диске, но периодические запуски могут защитить от порчи данных и помочь выявить неисправные диски. [7]
История
[ редактировать ]fsck впервые появился в версии 4.0BSD 1980 года. В свою современную форму-оболочку он превратился в NetBSD 1.3 (1998 год). fsck не определен ни одним существующим стандартом, [2] но примитивная форма без оболочки присутствует в проекте Systems Management: File System and Scheduling Utilities (FSSU) от X/Open 1995 года . [8]
В качестве ругательства
[ редактировать ]Серьезность повреждения файловой системы привела к тому, что термины «fsck» и «fscked» стали использоваться системными администраторами Unix как ругательства для « fuck » и «fucked». [9] Неясно, было ли это использование причиной или следствием, поскольку в отчете о сеансе вопросов и ответов на USENIX 1998 утверждается, что «fsck» изначально имел другое имя:
- Деннис Ритчи : «Значит, изначально fsck назывался как-то по-другому»
- Вопрос : «Как это называлось?»
- Деннис Ритчи : «Ну, второе письмо было другим» [10] [11]
Эту историю подтвердил Роб Пайк в социальной сети Mastodon 17 декабря 2023 года:
Тед Ковальски, имя пользователя frodo, пусть он будет пухом, был первоначальным автором, он жил прямо в коридоре от моего офиса в Мюррей-Хилл, и в его имени для программы была буква «u» там, где сейчас есть «s». Руководство заставило его сменить его для распространения, но не смогло заставить изменить произношение.
«Иди fsck сам» иногда используется в Интернете как указание человеку пойти и исправить свою проблему (отношение, незнание предмета и т. д.) - точно так же, как запуск fsck предполагает исправление фундаментальных ошибок.
Примеры
[ редактировать ]В следующем примере проверяется файловая система, настроенная для монтирования в раздел /usr; сначала необходимо размонтировать файловую систему:
fsck /usr
В следующем примере проверяется файловая система Linux JFS на программном RAID -устройстве mdadm:
fsck -t jfs /dev/md0
См. также
[ редактировать ]- Список команд Unix
- Список файловых систем
- e2fsprogs , который включает в себя
e2fsck
утилита, стандартная для многих дистрибутивов Linux - Scrub , утилита проверки файловой системы Oracle Solaris ZFS
Ссылки
[ редактировать ]- ^ Перейти обратно: а б Linux программиста Руководство – Администрирование и привилегированные команды «На самом деле fsck — это просто интерфейс для различных средств проверки файловой системы (fsck.fstype), доступных в Linux». –
- ^ Перейти обратно: а б с д FreeBSD системного администратора Руководство «Оно было переопределено как независимая от файловой системы оболочка в NetBSD 1.3 и впервые появилось в FreeBSD 5.0». –
- ^ Linux программиста Руководство – Администрирование и привилегированные команды –
- ^ Linux программиста Руководство – Администрирование и привилегированные команды: «XFS — это журналируемая файловая система, которая при необходимости выполняет восстановление во время монтирования (8)» –
- ^ FreeBSD системного администратора Руководство –
- ^ Linux программиста Руководство – Администрирование и привилегированные команды, : «ничего не делать, успешно» «Традиционные файловые системы должны запускать соответствующую утилиту fsck на случай, если файловая система не была размонтирована полностью и перед монтированием необходимо воспроизвести журнал. Это не требуется для БТРФС». –
- ^ Сверинген, Синди. «Запланированные очистки пула в Oracle Solaris ZFS» .
- ^ «Управление системами: утилиты файловой системы и планирования (FSSU)» (PDF) . opengroup.org . 1995. с. 18 . Проверено 8 апреля 2023 г.
- ^ Раймонд, Эрик С. (24 сентября 1999 г.). "черт возьми" . Файл жаргона . Архивировано из оригинала 3 января 2009 г.
черт возьми: /fus'-king/ или /eff'-seek-ing/ прил. [Юсенет; common] Fucking в ругательном смысле (это относится к команде восстановления файловой системы Unix fsck(1), о которой можно сказать, что если вам вообще приходится ее использовать, то у вас плохой день). Возник в { Scary Devil монастыре } и в группах новостей bofh.net , но получил гораздо более широкое распространение после принятия { CDA }. Также иногда встречается в варианте «Что за fsck?»
- ^ Кросби, Мэтью. «Отчет от Usenix» . alt.sysadmin.recovery . Юснет . Проверено 20 февраля 2016 г.
- ^ «Разум Fsck» . ВикиВикиВеб . С2.
- ^ Роб Пайк , Роб Пайк о Мастодонте: правда о произношении fsck и оригинальном названии , получено 18 декабря 2023 г.