Автоматизация монтирования общего ресурса DavFS
Итак, у меня проблема: у меня есть общий ресурс WebDAV, который требует, чтобы я вошел в VPN, чтобы он был доступен. И вообще, у меня есть много акций, к которым у меня есть доступ, но они не всегда доступны. Итак, у меня есть набор сценариев оболочки для создания точек монтирования, а затем для монтирования общего ресурса cifs. Т.е.
#!/bin/bash
# CLI ARGS
LONG_ARGS=unmount::
SHORT_ARGS=u::
OPTS=$(getopt -a -n weather --options $SHORT_ARGS --longoptions $LONG_ARGS -- "$@")
eval set -- "$OPTS"
mount=true
while :
do
case "$1" in
-u | --unmount )
mount=false
echo "Unmounting and removing Folder"
shift 2;
;;
-- )
shift;
break
;;
* )
echo "Unexpected option $1"
exit 2
;;
esac
done
if $mount
then
sudo mkdir /mnt/some-mount
sudo mount -t cifs -o username=uname,password=password //1.1.1.1/remote-mount /mnt/some-mount -o rw,uid=1000,gid=1000
else
sudo umount /mnt/some-mount
sudo rm -rf /mnt/some-mount
fi
echo "Done"
Я пробовал и возился с вариантамиdavfs
. Мне не удалось автоматизировать его правильно. Добавление общего ресурса WebDAV в работу и добавление логина в/etc/davfs/secrets
.
Я прочитал в документахdavfs2
что вы можете иметь конфигурацию в~/.davfs2
ноsudo mount /mnt/webdav-share
с/mnt/webdav-share
в личном конфиге не работает и монтирование ругается, что нет записи в/etc/fstab
для этой точки монтирования.
1 ответ
Итак, проблем было множество, и, начиная с заведомо исправной конфигурации и работая над своими проблемами, я снова добился цели.
Вот шаги, которые мне нужно предпринять для устранения проблем:
- Создайте запись в поле «Эта запись теперь выглядит так»; принять к сведению
noauto
что позволяет избежать проблем с монтированием при загрузке. Думаю, я мог бы добавитьnoexec
иuid
иgid
к нему тоже, но на данный момент это минимально и работает.
https://domain.com/webdav /mnt/olat davfs noauto
- У меня возникла проблема с моей конфигурацией, на осознание которой, глупому мне, потребовалось много времени.
2.1 Не поддерживает линиюnoexec 1
2.2davfs2.conf
не поддерживает строки типа fstab, т.е.
https://domain.com/webdav /mnt/some-mountpoint
что в учебнике было предложено сделать.
Опция
conf
работает, при условии, что ваш конфиг правильно отформатирован и не содержит строк, о которых я упоминал выше.Имея линию
secrets ~/.davfs2/secrets
в/etc/davfs2/davfs2.conf
вызвалоunknown option
ошибка.
- Добавление строки:
secrets /home/user/.davfs2/secrets
к работе, как ни странно.
- и
~/.davfs2/secrets
должен принадлежатьroot
.
Итак, подведем итог:
- Добавьте точку монтирования и параметры монтажа в
/etc/fstab
- Следите за тем, что вы настраиваете в своем
~/.davfs2/davfs2.conf
. Не добавляйте строки типа fstab для точки монтирования и параметров в файл davfs2.conf и следите за тем, что вы делаете с вашими файлами.secrets
строка файла. - Добавьте свои секреты, как в документации
[/mount/point or https://share.point/webdav] username "password"
к вашим пользовательским секретам./etc/davfs2/secrets
содержит примеры на случай, если вам понадобится проверить, есть ли в вашем пароле специальные символы. - Крепление с помощью
sudo mount -t davfs2 /mnt/mountpoint -o conf=~/.davfs2/davfs2.conf
и, надеюсь (!) все работает.
Я надеюсь, что это поможет кому-то, кто борется с отсутствием пароля.
АлиСот2000