Автоматизация монтирования общего ресурса 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 ответ

Итак, проблем было множество, и, начиная с заведомо исправной конфигурации и работая над своими проблемами, я снова добился цели.

Вот шаги, которые мне нужно предпринять для устранения проблем:

  1. Создайте запись в поле «Эта запись теперь выглядит так»; принять к сведениюnoautoчто позволяет избежать проблем с монтированием при загрузке. Думаю, я мог бы добавитьnoexecиuidиgidк нему тоже, но на данный момент это минимально и работает.
      https://domain.com/webdav /mnt/olat     davfs   noauto
  1. У меня возникла проблема с моей конфигурацией, на осознание которой, глупому мне, потребовалось много времени.
    2.1 Не поддерживает линиюnoexec 1
    2.2davfs2.conf не поддерживает строки типа fstab, т.е.
      https://domain.com/webdav /mnt/some-mountpoint 

что в учебнике было предложено сделать.

  1. Опцияconfработает, при условии, что ваш конфиг правильно отформатирован и не содержит строк, о которых я упоминал выше.

  2. Имея линию

      secrets ~/.davfs2/secrets

в/etc/davfs2/davfs2.confвызвалоunknown optionошибка.

  1. Добавление строки:
      secrets /home/user/.davfs2/secrets

к работе, как ни странно.

  1. и~/.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

Другие вопросы по тегам