Автомонтирование по сети
Что, где и как
Примеры монтирования в /mnt/FOLDER одного и того же ресурса /share/FOLDER с сервера server
через юнит /lib/systemd/system/mnt-FOLDER.mount:
по sshfs |
---|
[Unit]
Description = Mount remote FOLDER over SSH FileSystem
[Mount]
Type = sshfs
Where = /mnt/FOLDER
What = user@server:/share/FOLDER
# Можно подставить любые не конфликтующие опции как mount, так и sshfs:
Options = noauto,_netdev,reconnect
|
по davfs |
---|
[Unit]
Description = Mount remote FOLDER over NextCloud WebDAV
[Mount]
Type = davfs
Where = /mnt/FOLDER
What = https://server/share/FOLDER
# Можно подставить любые не конфликтующие опции как mount, так и davfs:
Options = noauto,_netdev,user,uid=user,gid=users
|
по nfs |
---|
[Unit]
Description = Mount remote FOLDER over Network FileSystem
[Mount]
Type = nfs
Where = /mnt/FOLDER
What = server:/share/FOLDER
# Можно подставить любые не конфликтующие опции как mount, так и nfs:
Options = noauto,_netdev,nolock
|
по cifs |
---|
[Unit]
Description = Mount remote FOLDER over Samba FileSystem
[Mount]
Type = cifs
Where = /mnt/FOLDER
What = //server/share/FOLDER
# Можно подставить любые не конфликтующие опции как mount, так и cifs:
Options = noauto,_netdev,credentials=/etc/cifs.cred,iocharset=utf8,file_mode=0644,dir_mode=0755
|
Все отличия приведённых способов монтирования определяются параметрами Type
, What
и Options
секции [Mount]
сообразно монтируемой файловой системе.
Полагаю, основываясь на данных образчиках, не составит труда додумать иные варианты подключений к мегадрайву и прочим мелкомягким гугляндекс-дискам (ну, а вдруг таки заставит — готов дополнить: присылайте обкатанные примеры во вкладке обсуждения).
Зачем именно автомонтаж
Чтобы входить в удалённый ресурс при первом/каждом обращении к нему, не подключая на этапе загрузки в надежде на его доступность. Для этого понадобится ещё один юнит с расширением .automount, чья привязка к любому из описанных вариантов .mount-а производится через соответствие параметра Where
в обоих.
/lib/systemd/system/mnt-FOLDER.automount |
---|
[Unit]
Description = Automount /mnt/FOLDER share
# Если доступ только через туннель (l2tp, ipsec, wireguard и т.п.):
Requires = openvpn@vpn.service
[Automount]
Where = /mnt/FOLDER
# Если нужно поменять умолчальные допуски:
DirectoryMode = 0775
# Если нужно, длительность доступа без перезапроса на подключение:
TimeoutIdleSec = 300
[Install]
WantedBy = multi-user.target
|
После его создания останется скомандовать: # systemctl enable --now mnt-FOLDER.automount
Источники
Хабр, АТК-динозавр, Бессонная тварюшка.