Рейтинг:3

Почему mount не ждет завершения работы systemd.fsck?

флаг cn

В любое время systemd.fsck на самом деле должен выполнить ремонт * во время загрузки, автоматическое монтирование моего раздела не удается, потому что устанавливать команда не ждет, пока [email protected] готово.

Как мне убедиться, что устанавливать ожидает завершения службы проверки файловой системы вместо немедленного сбоя из-за того, что проверка файловой системы была запущена?

Соответствующая строка в фстаб выглядит так:

LABEL=cfdata/data ext4 defaults,nofail,x-systemd.device-timeout=60 0 0

(ярлык cfdata включен /dev/sda1)

Соответствующие журналы systemd выглядят следующим образом, когда при загрузке происходит сбой монтирования:

23 июня 06:24:45 ядро ​​dev-machine-1: sda: sda1
23 июня 06:24:45 ядро ​​dev-machine-1: sd 0:0:0:0: [sda] Подключенный диск SCSI
23 июня, 06:24:47 dev-machine-1 systemd[1]: запуск проверки файловой системы на /dev/sda1...
23 июня, 06:24:47 dev-machine-1 mount[5563]: mount: /data: /dev/sda1 уже смонтирован или точка монтирования занята.
23 июня, 06:24:47 dev-machine-1 systemd-fsck[5483]: cfdata: восстановление журнала
23 июня, 06:24:49 dev-machine-1 systemd-fsck[5483]: cfdata: очистка осиротевшего inode 13 (uid=0, gid=0, mode=0100644, size=39685)
23 июня, 06:24:49 dev-machine-1 systemd-fsck[5483]: cfdata: clean, 2767944/29310976 файлов, 75558004/117212630 блоков
23 июня, 06:24:49 dev-machine-1 systemd[1]: запущена проверка файловой системы на /dev/sda1.
23 июня, 06:24:49 ядро ​​dev-machine-1: EXT4-fs (sda1): смонтированная файловая система с режимом упорядоченных данных. Опции: (нулевой)

Когда это происходит, диск монтируется в /медиа/<uuid> вместо моей точки монтирования в фстаб.

Примечание: Когда [email protected] должен сделать ремонт, вывод в журнале будет примерно таким: Очистка потерянного inode 13 (uid=0, gid=0, mode=0100644, size=39685). Проблема с монтированием возникает только тогда, когда fsck действительно делает что-то подобное и удерживает устройство.

meuh avatar
флаг in
Посмотрите на соответствующий юнит-файл в `/run/systemd/generator/`, чтобы увидеть, есть ли в нем строка `Requires=systemd-fsck@...` или нет, и соответствует ли это 6-му полю fstab, равному 0, или нет. Если он попадает в `/media`, это не значит, что это udisks2 выполняет fsck-before-mount, так что, возможно, он как-то запускается слишком рано.
Рейтинг:2
флаг ar

Скажите вашей системе включить его в контрольный список файловой системы:

Шестое поле (fs_passno).

Это поле используется fsck(8) для определения порядка, в котором выполняются проверки файловой системы во время загрузки. Корневая файловая система должна быть указана с fs_passno равным 1. Другие файловые системы должны иметь fs_passno равным 2. Файловые системы внутри диска будут проверяться последовательно, но файловые системы на разных дисках будут проверяться одновременно, чтобы использовать параллелизм, доступный в оборудовании. По умолчанию равен нулю (не fsck), если не присутствует.

(От человек)

Сделайте так, чтобы строка читалась

LABEL=cfdata/data ext4 defaults,nofail,x-systemd.device-timeout=60 0 2

И это должно обрабатываться автоматически.

флаг cn
Поскольку сейчас я установил его на 0, не означает ли это, что fsck вообще не должен запускаться?
vidarlo avatar
флаг ar
@ Стивен Т. Снайдер, да. Но это надо будет проверить по журналу при монтаже. Но у вас не будет полного fsck.

Ответить или комментировать

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