davfs2: /sbin/mount.davfs: другой URL в / etc / fstab

Я пытаюсь смонтировать webdav-сервер в / etc / fstab с помощью davfs, но когда я пытаюсь открыть это в моем файловом менеджере (Thunar), я получаю ошибку:

Failed to mount "My Folder"

/sbin/mount.davfs: different URL in /etc/fstab

Запись в / etc / fstab выглядит следующим образом:

http://<server_url>/my/path/Doe\054\040John/  /home/john/My\040Folder       davfs   user,noauto     0       0

Но я все еще могу успешно смонтировать его с помощью:

sudo mount -t davfs http://<server-url>/my/path/Doe,\ John/ /home/john/My\ Folder

Есть идеи, что я делаю неправильно в / etc / fstab?

Спасибо за вашу помощь!

1
задан 30 April 2016 в 14:53

2 ответа

Лишь немногие информация для предоставления подсказки, что идет не так, как надо здесь, но после установки davfs2 моя fstab запись:

https://my-owncloud-url/remote.php/webdav  /media/owncloud/ davfs user,noauto,rw,_netdev 0 0

работы очень хорошо... сразу после изменения содержания fstab можно проверить, работает ли это путем ввода

sudo mount -a

или путем ввода

sudo mount mountpoint-here

, но имейте в виду - папка должна существовать, прежде чем монтирование может быть инициализировано...

0
ответ дан 1 May 2016 в 00:53
  • 1
    Спасибо! Всего один последний вопрос о разъяснении: Вы рекомендовали бы преобразовать, который управляет в ext4 в конечном счете? (моя внутренняя речь говорит ' yes'):) – Ukrop 3 October 2017 в 18:08

TL;DR aka забавная часть:

В файле /etc/fstab вы должны NOT экранировать символ запятой, в то время как пробелы и табуляции должны быть экранированы с помощью восьмеричных чисел с нулевой подложкой, которым предшествует обратная косая черта , как указано на справочной странице fstab. В вашем случае строка URL должна выглядеть следующим образом:

http://<server_url>/my/path/Doe,\040John/

Скучная часть:

Прежде всего, вы должны взглянуть на этот: https://superuser.com/a/527503/938480

Я процитирую здесь последнее предложение поста выше, которое, на мой взгляд, важно для ответа:

Обратите внимание, что, хотя кодовые точки поддерживаются для других символов как ну, поддержка довольно шелушащаяся. На моей машине вы можете написать 127 вместо W, но не 070 вместо 8...

И davfs2 man заявляет:

URLS И ТОЧКИ МОНТИРОВАНИЯ С ПРОБЕЛАМИ Специальные символы, такие как пробелы в pathnames - это беспорядок. Они интерпретируются по-разному по-разному программ и протоколов, а также существуют разные правила для побега. В Пробелы fstab должны быть заменены трехзначной восьмеричной управляющей последовательностью. Напишите http://foo.bar/path040with040spaces вместо http://foo.bar/path с пробелами. Для davfs2.conf и секретов Файлы, пожалуйста, ознакомьтесь с правилами escape и quotetation, описанными в справочная страница davfs2.conf(5). В командной строке необходимо подчиняться экранированию правила работы оболочки.

И, наконец, давайте посмотрим на само руководство fstab:

Второе поле (fs_file). Это поле описывает точку монтирования для файловой системы. Для разделов подкачки это поле должно быть указано как 'none'. Если имя точки монтирования содержит пробелы, их можно экранировать как '040'

Как мы видим выше, на самом деле нет никаких упоминаний о чем-либо, кроме пробелов и вкладок.

Я проверил проблему с одним из бесплатных онлайн-экземпляров Nextcloud (Nextcloud изначально поставляется со встроенной поддержкой WevDAV), и я получил ту же ошибку, используя то же имя папки, что и в вашем примере Doe, John и ту же экранирующую последовательность 054040. Затем я убрал отрыв из запятой, и он установился нормально.

2
ответ дан 26 July 2020 в 15:53

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

Похожие вопросы: