Я смонтировал общий сервер в своей локальной сети, используя графический интерфейс подключения к серверу, и введенный мной адрес был smb://myServer/myFolder. Затем я попытался добавить общую папку в /mnt каталог, чтобы я мог получить к нему доступ через свою среду разработки, но мне это не удалось, хотя я пытался размонтировать сервер и использовать CLI с помощью команды
С тех пор мой накопитель NAS был смонтирован. Я несколько раз перезагружал свою машину и подтвердил, что теперь она смонтирована и запущена для меня. Как бы то ни было, я использую Ethernet-соединение, чтобы его можно было настроить и запустить быстрее, чем было бы при подключении по Wi-Fi.
Обратите внимание, что вам лучше добавить версию протокола SMB (например,vers=1.0) в параметры монтирования. В файле mount.cifs указано, что по умолчанию используется значение vers=1.0, но это не так, и вы попадаете в ловушку с ошибкой "host down" при попытке подключения к более старому NAS.Затем приведенное выше решение гласит
sudo mount -t cifs -o username=serverUserName,vers=1.0 //myServerIpAdress/sharename /mnt/myFolder/
Видеть это решение для получения подробной информации.
Я всегда хотел использовать сохраненные пароли из моей связки ключей для доступа к общим ресурсам SMB в сценариях (резервных копиях) на моем ноутбуке. Моей целью не было раскрывать пароли в файлах и использовать anacron для запуска резервных копий. После некоторого тестирования я пришел к такому выводу:
Смонтируйте свой общий ресурс один раз с помощью Nautilus и сохраните пароль в связке ключей
пробовать gio mount smb://<server_name>/<share_name>, что должно работать без пароля в вашем сеансе GNOME
Используйте следующий код в сценариях резервного копирования:
Пример протестирован на Ubuntu 19.04:
# set the dbus addressDBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/$(id -u)/bus"# export dbus address to get access to user space keyringexport DBUS_SESSION_BUS_ADDRESS# use new gnome user space mount tool (gvfs-mount is deprecated)gio mount smb://<server_name>/<share_name>#sync from gvfs created mount point to home dir rsync -rav /var/run/user/$(id -u)/gvfs/smb-share\:server\=<server_name>\,share\=<share_name>/<folder>/ ~/<sync_dest>/
При запуске скрипта через anacron из /etc/cron.ежедневно вам необходимо использовать пользователя, имеющего доступ к связке ключей, например:
су -с /home/user/scripts/rsync_sript.sh пользователь
Ответ @Phoenix87 очень помог мне получить доступ к samba-диску, который уже смонтирован через Nautilus, но не показан в VSCode. Поэтому я поместил ссылку под /home/user/.config/gtk-3.0/bookmarks и теперь вы также можете открыть рабочую область через smb в VSCode.
SMBv1 и общие ресурсы без защиты паролем выполняют работу быстро и легко. Но они, безусловно, представляют собой огромные проблемы с безопасностью (например, WannaCry и т.д.).