восстановить файловую систему, отредактировав файл fstab

При выполнении скрипта awkс awk -fскрипт должен содержать только код awk.

В вашем случае

{if ($2==NULL) print $0"100"}

или

$2 == NULL { print $0 "100" }

Вы можете выполнить это с помощью

awk -F ';' -f my.awk example.txt

Если вы хотите установить FSна ;в скрипте (статически, а не в командной строке с помощью -F), сделайте это в блоке BEGIN:

BEGIN { FS = ";" }

$2 == NULL { print $0 "100" }

Также обратите внимание, что переменная NULLне установлена ​​в вашем коде.

1
21.03.2020, 21:00
2 ответа

Нет, простое редактирование /etc/fstab не может привести к выполнению восстановления xfs _.

Для других типов файловых систем это будет работать. Но XFS здесь особенный.

Изменение 6-го поля /etc/fstabна отличное от -нулевое значение в файловой системе XFS приведет к запуску системы fsck.xfs, чья справочная страница говорит:

NAME
       fsck.xfs - do nothing, successfully

[...]

       However,  the  system  administrator  can force fsck.xfs to run xfs_re‐
       pair(8) at boot time by creating a /forcefsck file or booting the  sys‐
       tem with "fsck.mode=force" on the kernel command line.

Таким образом, обычно fsck.xfsвообще ничего не будет делать.

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

a )Шестое поле /etc/fstabдолжно быть не равно -нулю для рассматриваемой файловой системы XFS, чтобы fsck.xfsвыполнялось.

b )Либо файл /forcefsckдолжен существовать в корневой файловой системе (, либо, возможно, внутри initramfs, если планируется проверка корневой файловой системы ), либо в командной строке ядра должна быть загрузочная fsck.mode=forceвариант. Это приведет к тому, что fsck.xfsзапустит xfs_repairвместо того, чтобы ничего не делать.

Что же такого особенного в ремонте xfs _?

Файловая система XFS и инструмент xfs_repairпредполагают, что базовый диск находится в хорошем состоянии или, по крайней мере, способен прозрачно заменить поврежденные блоки встроенными -запасными блоками (, как это делают все современные диски. ). Если на современном диске есть постоянные сбойные блоки, видимые для операционной системы, это обычно означает, что встроенный -механизм запасных блоков уже перегружен количеством сбойных блоков, и диск, вероятно, в любом случае скоро полностью выйдет из строя..

На справочной странице xfs_repairговорится:

   Disk Errors
       xfs_repair aborts on most disk I/O errors. Therefore, if you are trying
       to  repair  a  filesystem that was damaged due to a disk drive failure,
       steps should be taken to ensure that all blocks in the  filesystem  are
       readable and writable before attempting to use xfs_repair to repair the
       filesystem. A possible method is using dd(8) to copy the  data  onto  a
       good disk.

Таким образом, вы, вероятно, не должны устанавливать xfs_repairдля автоматического запуска в нормальных условиях.

Если в файловой системе XFS есть ошибки, вы всегда должны сначала оценить состояние основного диска:smartctl -a /dev/<disk device>может быть полезно,например, использовать ddдля чтения всего содержимого раздела/LV в /dev/nullи убедиться, что команда может завершиться без ошибок.

Если диск неисправен, сначала следует скопировать содержимое раздела/LV на новый, свободный -диск с ошибкой (, возможно, используя ddили ddrescue), и только после этого следует пытаться запустите xfs_repairв файловой системе на свободном диске с ошибкой -.

Автоматический запуск xfs_repairво время загрузки может быть подходящим обходным решением, если вы знаете, что что-то вызывает ошибки уровня файловой системы -, даже если ваши диски находятся в хорошем состоянии. Но это всего лишь обходной путь, а не исправление :, вы должны выяснить, что вызывает ошибки файловой системы, и устранить основную причину. (Возможно, ошибка драйвера файловой системы, для исправления которой требуется обновленный пакет ядра?)

1
28.04.2021, 23:19

Если в файлах на /dev/sdaесть ошибки, то нужно запустить на нем fsck. Имейте в виду, что на самом деле он не восстановит сам диск, а только файлы. Если на диске действительно есть ошибки и он выходит из строя, то лучше всего заменить диск и восстановить данные из резервной копии, потому что, если все станет достаточно плохо, вы можете потерять данные, особенно если диск полностью выйдет из строя.

1
28.04.2021, 23:19

Теги

Похожие вопросы