LINUX.ORG.RU
ФорумAdmin

Сделать чтобы запуск компа не стопорился при отсутствии устройства из /etc/fstab


0

2

Есть ssd-диск. Используется как переносной, подключается через длинный sata-кабель.

В fstab он прописан так:

UUID=<...> /mnt/work ext4 rw,noatime,discard 0 1

Проблема: если диск не подключен, то компьютер не запускается (стопорится на этапе монтирования этого диска).

Как сделать чтобы система (Archlinux) запускалась и при наличии и при отсутствии диска?

★★★★★
Ответ на: комментарий от derlafff

async All I/O to the filesystem should be done asynchronously. (See also the sync option.)

Немного не то

makoven ★★★★★
() автор топика
Ответ на: комментарий от tazhate

Вариант, конечно. Но вдруг кто знает секретную ниндзя-опцию которая решит проблему не удаляя из fstab

makoven ★★★★★
() автор топика

noauto do not mount when «mount -a» is given (e.g., at boot time)

дальше сам ;)

aol ★★★★★
()
Ответ на: комментарий от makoven

Но вдруг кто знает секретную ниндзя-опцию которая решит проблему не удаляя из fstab

noauto

Странно, что вы ман не осилили.

можно следующей командой явно прописать mount -F ssd, если хочется, что-бы девайс всегда монтировался, но загрузку не тормозил.

Для EXT* есть ещё ниндзя-опция errors={continue|remount-ro|panic}.

drBatty ★★
()
Ответ на: комментарий от ATIpro

С это опцией при выключении компа с отсутствующим диском зависает на пару минут, пишет что-то про ошибку размонтирования

makoven ★★★★★
() автор топика
Ответ на: комментарий от drBatty

Если я сделаю noauto то монтировать придется руками

Не верю, что это проблема не решаема средствами mount. Прописанные в fstab nfs/cifs - шары ведут себя аналогично - вешают загрузку при их отсутствии

makoven ★★★★★
() автор топика

Вообще-то система не должна из-за этого стопориться.

heinrich
()

UUID=<...> /mnt/work ext4 rw,noatime,discard 0 1

Попробуй поставить 0 в конце, вместо 1.

heinrich
()
Ответ на: комментарий от tazhate

Проблема знаешь в чем. Вот например /media/work и /media/stuff нахрен не нужны для запуска системы. Там конечно лежат данные для работы, но это данные пользователя, а не системы. И вот если не смонтируются, система будет висеть 5 минут, а потом покажет emergency shell. Это нихрена неправильно. Я хочу такие точки монтирования перевесить зависимостью на graphical.target, например. Но в коде бинарника systemd-fstab-generator жестко прописано ставить все зависимости в local-fs.target.

И тут два варианта. Первый - выкинуть запись из fstab и вручную написать юнит вместо неё. И второй - патчить systemd-fstab-generator.

geekless ★★
()
Последнее исправление: geekless (всего исправлений: 1)

Да, и ТС-у советую - убери запись из fstab и напиши правильный юнит на эту точку монтирования.

geekless ★★
()
Ответ на: комментарий от makoven

Если я сделаю noauto то монтировать придется руками

я же русским языком писал, что тебе надо ман mount читать. Ну или да, руками, если не осилил.

Прописанные в fstab nfs/cifs - шары ведут себя аналогично - вешают загрузку при их отсутствии

и про них в man mount тоже есть. Они и не должны там монтироваться, ибо разделы монтируются ДО подъёма сети. Потому fstab в два захода обрабатывается. Точнее даже в 4.

drBatty ★★
()

[костыль]

Монтируйте его через autofs.

AITap ★★★★★
()
Ответ на: комментарий от geekless

И тут два варианта. Первый - выкинуть запись из fstab и вручную написать юнит вместо неё. И второй - патчить systemd-fstab-generator.

может выкинуть systemd? УМВР ЧЯДНТ?

drBatty ★★
()

добавить опцию _netdev, тогда монтироваться оно будет позже

anonymous
()

noauto не помогает?

teod0r ★★★★★
()

/etc/fstab:

UUID=<...> /mnt/work ext4 rw,noatime,discard,noauto 0 1

/etc/rc.local:

mount /mnt/work >/dev/null 2>&1 || true

gorilych ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.