Есть ли способ автоматически смонтировать файловую систему, когда я открываю символическую ссылку на каталог в этой файловой системе?

21

Я использую Arch с Xfce.

Недавно я создал символическую ссылку на каталог в файловой системе.

Но я не хочу монтировать файловую систему во время загрузки или монтировать ее вручную перед открытием символической ссылки.

Есть ли способ автоматически смонтировать эту файловую систему, когда я открываю символическую ссылку на каталог в этой файловой системе?

Тхо Х. Хо
источник

Ответы:

23

autofsмогу сделать это для вас. Можно настроить любое количество точек монтирования с различными параметрами, и соответствующие файловые системы монтируются при каждом обращении к точке монтирования. После определенного периода бездействия файловые системы снова отключаются.

Несомненно, есть разные способы использования autofs, но вот один из способов сделать то, что вы пытаетесь сделать, в зависимости от того, как я его использовал.

Вы начинаете с каталога, который будет содержать несколько autofsточек монтирования (ну, по крайней мере, одну); скажем /misc. Вам не нужно создавать его, но вам нужно создать файл конфигурации, который будет описывать все файловые системы, которые вы хотите смонтировать там; Например, я могу смонтировать CD, DVD и Blu-Rays со следующим файлом, сохраненным как /etc/auto.misc:

cd              -fstype=iso9660,ro,nosuid,nodev    :/dev/cdrom
br              -fstype=udf,ro,nosuid,nodev        :/dev/cdrom

Общий синтаксис - это точка монтирования, за которой следуют любые введенные опции -, а затем точка монтирования, вводимая :в локальной системе. (Я упрощаю, см. autofs(5)Man-страницу для деталей.)

Затем этот файл включается добавлением записи в /etc/auto.master:

/misc   /etc/auto.misc

Перезапустить autofsс

sudo service autofs restart

и вы должны быть в состоянии бежать

ls /misc/cd

и посмотрите содержимое любого компакт-диска в вашем приводе. (Очевидно, замените имя и цель монтирования на то, что подходит в вашем случае.)

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

ln -s /misc/br blu-ray

создает blu-rayссылку везде, где запускается команда. Вы также можете ссылаться дальше в файловой системе,

ln -s /misc/br/BDMV autolinktest

создает autolinktestссылку на содержание фильма. Доступ к ссылкам приведет к монтированию целевой файловой системы.

Стивен Китт
источник
12

Вы можете сделать это с помощью systemd, так что вам не нужно устанавливать дополнительное программное обеспечение и просто иметь небольшое количество дополнительной конфигурации.

Просто добавьте noauto,x-systemd.automountк опциям в fstab.

noautoне монтировать автоматически при загрузке и x-systemd.automountпозволить systemd монтировать его при доступе.

После добавления x-systemd.automount в fstabстроку необходимо выполнить:

  sudo systemctl daemon-reload

И затем одно или оба из следующего:

  sudo systemctl restart remote-fs.target
  sudo systemctl restart local-fs.target

Тогда автомонтирование станет активным и пригодным для использования.

Источник: ArchWiki - fstab

bvolkmer
источник