Почему я не могу смонтировать акции SMB со времен High Sierra

Поскольку я обновился до High Sierra (напрямую до 10.13.1), я больше не могу подключать свои iMac и MacBook по протоколу AFP, поэтому я попробовал SMB.

open 'smb: // user: password @ S / Share':: работает, но показывает Finder на экране.

Другая проблема заключается в том, что я не могу выбрать имя точки монтирования. Я работаю из приложений JAVA и, следовательно, должен работать из командной строки:

mkdir / Пользователи / пользователь / Тома / Поделиться /

/ sbin / mount -t smbfs // пользователь: пароль @S/F / Пользователи / пользователь / Тома / Поделиться /

Но это дает:

mount_smbfs: сервер отклонил соединение: ошибка аутентификации

Что я сделал не так или забыл? Заранее спасибо.;JOOP!

6 ответов

Я столкнулся с той же ошибкой "mount_smbfs: сервер отклонил соединение: ошибка аутентификации" при попытке подключения через командную строку с помощью команд:

mkdir /Volumes/test
mount_smbfs //user@server/test /Volumes/test

Однако я смог выявить ошибку, перейдя на сервере Mac к Системным настройкам - Общий доступ - Общий доступ к файлам - Параметры. Затем в разделе "Общий доступ к файлам" Windows щелкните, чтобы включить параметр менее безопасного пароля для учетной записи, которую вы хотите использовать для общего доступа (дополнительно, для этого создайте пользователя только для общего доступа), и введите пароль этой учетной записи. Затем я смог смонтировать общий ресурс с помощью приведенных выше команд.

Мы тоже столкнулись с ужасным явлением: оказалось, что виновником оказался символ # (он же знак решетки, хэштег, знак номера) в пароле пользователя! Символ # оказался последним символом пароля этого пользователя. При использовании другого пароля ошибок больше нет.

Коллега нашел обходной путь для экранирования или цитирования, если в пароле есть специальные символы. Оказывается, эту проблему вызывает ряд специальных символов в конце пароля. См. https://stackoverflow.com/questions/27026168/escape-special-characters-in-mount-command .

В частности, если вы получаетеmount_smbfs: server connection failed: No route to hostошибки, возможно, это связано с тем, что в вашем пароле (или другом) не экранированы специальные символы.

Итак, пароль, такой какpassword$#

Мы попытались добавить одинарные кавычки:

      mount_smbfs '//someusername:somepassword$#@serverurl/shared' /Volumes/shared

вместо этого:

      mount_smbfs //someusername:password$#@serverurl/shared /Volumes/shared

но это НЕ сработало!

Единственное, что мы могли заставить работать, это закодировать URL-адрес пароля, чтобы избежать специальных символов (используйте любой работающий метод - например, https://www.urlencoder.io/ , или мы использовали python urllib.parse.quote_plus(...) )

      mount_smbfs //someusername:password%24%23@serverurl/shared /Volumes/shared

Примечание по использованию версий Linuxmount -t cifsилиmount -t smbfsвместоmount_smbfsкоторый для Mac OS.

Следующая команда может выполняться в High Sierra (протестировано в 10.13.6).

mount_smbfs -f 0755 -d 0755 smb://username:passwd@SAMBA_SERVER/PATH /your_local_pre_exist_folder/

Примечание: "-f" и "-d" необязательны.

Вы случайно пытаетесь пройти аутентификацию в домене? Или, в частности, НЕ желая использовать домен, если компьютер, на котором размещена удаленная файловая система, является частью домена?

В моей ситуации мой Mac не находится в домене, но компьютер, на котором размещена удаленная файловая система, находится в домене. Чтобы заставить удаленный компьютер проходить проверку подлинности против локального пользователя вместо пользователя домена, я должен использовать ключевое слово "local" в компоненте домена:

mount -t smbfs '//local;user:password@S/F' /Volumes/Share

Если вы можете смонтировать свою папку из окна Command-K, вас может заинтересовать эта экономия времени, которую я использую. Смонтируйте все smb// серверы / ресурсы, которые вы используете. Затем откройте окно поиска и перейдите к вашему компьютеру. Вы должны увидеть смонтированные акции там. Перетащите их один за другим в раздел "Избранное" боковой панели; они останутся там после перезагрузки или выхода из системы. В следующий раз, когда вы захотите их смонтировать, предполагая, что вы сохранили учетные данные, все, что вам нужно сделать, это нажать на общий ресурс на боковой панели, и вы окажетесь. Глупо, но эффективно.

Вид решен:

в файлообменнике мне пришлось хранить пароли пользователей, задействованных в разделе "Опции".

Мне это не нравится

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