У меня есть эта запись в fstab:

LABEL=cache /disks/cache ext4 rw,user,x-mount.mkdir,relatime,noauto,errors=remount-ro,x-systemd.idle-timeout=120min  0 0

Что я ожидаю сделать, так это:

  1. монтировать диск с кешем меток в /disks/cache в любое время, когда я этого требую
  2. создать путь /dsisks/cache, если он не существует
  3. Чтобы дать +rwx разрешение моему пользователю или любому пользователю в его дефекте
  4. автоматически размонтировать диск, если он простаивает через 1 час

Почему шаг 4, который не работает, и как сделать, чтобы папка была удалена после размонтирования, есть ли опция x-umount.rmdir?

1
Marcus Müller 3 Ноя 2021 в 02:56
Вы должны попробовать autofs вместо fstab. Он делает именно это.
 – 
user10489
3 Ноя 2021 в 02:01
Вы уверены, что это невозможно сделать с помощью fstab? Потому что я не хочу усложнять это, плюс почему, если нет, уже указан вариант 4?
 – 
ape1
3 Ноя 2021 в 22:08
Да, autofs — это единственный способ автоматического монтирования и размонтирования. fstab либо монтируется один раз при загрузке, либо монтируется вручную, он не поддерживает автоматическое монтирование по запросу. Так делает только autofs.
 – 
user10489
4 Ноя 2021 в 05:49
Итак, для чего тогда написана функция ничегонеделания на человеке?
 – 
ape1
5 Ноя 2021 в 22:04
Мне жаль, что я не могу разобрать какой-либо смысл из этого.
 – 
user10489
6 Ноя 2021 в 01:02

1 ответ

То, что вы описываете, не может быть сделано в fstab.

Ниже приведены типичные способы монтирования дисков:

  • Добавьте их в fstab, чтобы они автоматически монтировались при загрузке. (Опция defaults или auto в fstab делает это.)
  • Монтируйте их вручную, либо как root со всеми указанными параметрами, либо вручную как только точку монтирования или устройство с остальными параметрами из fstab, либо как пользователь для записей, перечисленных в fstab, с параметрами noauto,user в четвертом столбце.
  • Используйте udisks для автоматического монтирования дисков с горячей вставкой, таких как компакт-диски и USB-накопители, обычно в каталоге /media. Однако это отключается только по требованию пользователя. Udisks обычно монтируется при вставке устройства, но его также можно запустить из командной строки.
  • Используйте autofs, чтобы монтировать их по требованию, когда есть ссылка на каталог, и размонтировать их по истечении тайм-аута, когда они больше не используются.

Autofs настраивается путем перечисления управляемых верхних каталогов по одному в строке /etc/auto.master с файлом конфигурации для каждого управляемого каталога, причем в каждом файле конфигурации перечислены подкаталоги управляемых каталогов.

Например, auto.master может перечислить /etc/auto.misc, который, в свою очередь, может указать ряд файловых систем или устройств с потенциальными файловыми системами. Auto.misc по умолчанию, который поставляется с autofs, перечисляет floppy (закомментированные по умолчанию), которые будут смонтированы на /misc/floppy, если к нему будет доступ и файловая система будет доступна на этом устройстве.

Примеры строк из auto.master:

/misc  /etc/auto.misc
/home  /etc/auto.home
/disks  /etc/auto.disks   --timeout=3600

Пример строки из auto.misc:

floppy         -fstype=auto            :/dev/fd0

Пример строки из auto.home:

someuser         homeserver:/export/home/someuser

Autofs может делать все, что вы просили, за исключением установки разрешений, которые обычно наследуются от разрешений корневого каталога в смонтированной файловой системе, или параметров монтирования, если файловая система это поддерживает. Для приведенной выше (непроверенной) строки disks потребуется соответствующий файл /etc/auto.disks, описывающий файловые системы, которые вы хотите смонтировать в /disks/.

0
user10489 6 Ноя 2021 в 02:03