«Монтирование URL-адреса cifs еще не реализовано», когда я пытаюсь смонтировать общий ресурс samba

38

У меня есть сервер для разработки (Ubuntu 12.04). На этой машине у меня есть общая папка с именем "projects". Я пытался

sudo mount -t smbfs smb://192.168.2.28/projects/myProject /mnt/myProject

на моем Ubuntu 11.10 и получил ошибку:

Монтирование URL cifs еще не реализовано. Попытка смонтировать smb: //192.168.2.28/projects/myProject.

Как я могу сделать, чтобы решить это? Мне нужно смонтировать папку, чтобы использовать ее с NetBeans.

Almino Melo
источник
Похоже, сервер samba (192.168.2.28) еще не настроен или не имеет соответствующих открытых портов, позволяющих ему подключаться. Можете ли вы запустить эту команду, чтобы убедиться, что вы видите правильные порты, открытые для соединения с samba: sudo nmap 192.168.2.28
ruffEdgz
@ruffEdgz Проблема не связана с сервером; это сообщение об ошибке появляется перед выполнением любых сетевых операций. Смотрите мой ответ для деталей.
Элия ​​Каган
Хорошо знать. Еще не нужно было делать это на моем ноутбуке, поэтому я должен убедиться, что он работает на моем текущем сервере Samba;)
ruffEdgz

Ответы:

48

Поскольку в сообщении об ошибке говорится, что URL-адреса CIFS (начиная с smb://) не поддерживаются, необходимо использовать «классический» синтаксис для идентификации сервера и общего ресурса. Кроме того, вы не можете смонтировать папку в общем ресурсе, как если бы это был общий ресурс - вы должны смонтировать общий ресурс и затем получить доступ к папке внутри него. При необходимости вы можете сделать символическую ссылку на папку внутри общего ресурса. Наконец, когда вы запускаете smbmount, mount -t smbfsили аналогичные команды удаленного монтирования, как root(например, с sudo), вам нужно указать имя пользователя на сервере (если это не так root, что маловероятно, и, если сервер работает под Unix-подобной системой, не рекомендуемые).

Итак, сначала вы создадите папку (точку монтирования) для общего ресурса:

sudo mkdir /mnt/projects

(Предполагается , что вы хотите создать его /mnt. Это стало более распространенным , чтобы создать все глобально доступные точки монтирования , которые не являются частью самой вашей системы Ubuntu в /mediaвместо , /mntно это нормально для использования , /mntесли вам нравится.)

Затем используйте команду, подобную этой, чтобы смонтировать общий ресурс:

sudo smbmount //192.168.2.28/projects /mnt/projects -o user=USERNAME

Замените USERNAMEимя пользователя на сервере Samba, которое вам необходимо для входа в систему. Вам будет предложено ввести пароль. Вы также можете указать свой пароль в командной строке (с помощью ), но он будет отображаться в виде открытого текста в Терминале и войдет в историю ваших команд, так что вы, вероятно, не хотите этого делать.-o password=PASSWORD

Вы заметите, что я использовал, smbmountно mount -t smbfsили mount -t cifs(или mount.cifs) должен работать так же хорошо, если вы предпочитаете.

Теперь smb://192.168.2.28/projectsсодержимое доступно в /mnt/projects. Если вам нужно иметь доступ к содержимому smb://192.168.2.28/projects/myProjectin /mnt/projects/myProject, вы можете создать символическую ссылку:

sudo ln -s /mnt/projects/myProject /mnt/myProject

Для читателей Ubuntu 12.10 и более поздних версий: Вы должны использовать mount.cifsили mount -t cifs( smbmountи mount -t smbfsбольше не предоставляются). CIFS-Utils Установите cifs-utils пакет требуется. Эти команды будут работать и в более ранних системах.

Элия ​​Каган
источник
4
В Ubuntu 13.04 я должен был установить CIFS-утилиты первыми: sudo aptitude install cifs-utils. После этого я смог смонтировать общий ресурс с этим синтаксисом:sudo mount -t cifs //server/share /mnt/
Джеральд Шнайдер,
@GeraldSchneider Спасибо, я добавил упоминание об этом в ответ.
Элия ​​Каган
Работал со мной, монтируя папку Windows 7 (хост) в Kubuntu 13.04 внутри VirtualBox (используя адаптер только для хоста).
Мохамад Факих
21

Для постоянного подключения общего ресурса SMB используйте следующую процедуру:

  1. создайте папку для монтирования общего ресурса (например, / mnt / windows ):

    sudo mkdir [mount point]
    
  2. Изменить его разрешения

    sudo chown [username]:[username] [mount point]
    
  3. Создайте файл, содержащий учетные данные вашего домена (я использую /home/[user]/.smbcredentials )

    username=[domain user]
    password=[domain password]
    domain=[domain]
    
  4. Добавьте следующую строку в / etc / fstab

    //[smb hostname]/[share name]/        [mount point]  cifs        credentials=[credentials file path],rw,uid=[user],user       0       0
    
  5. Запустить (только один раз, при перезагрузке это произойдет автоматически)

    sudo mount [mount point]
    

Протестировано для работы на Ubuntu 12.10

Я сделаю
источник
То , что работало лучше всего для меня было: echo //192.168.1.1/c$/ /mnt/c cifs credentials=/home/user/.smbcredentials,rw,uid=1001,gid=1001,user 0 0 | sudo tee -a /etc/fstab. Затем, чтобы подняться, я побежал:sudo mount /mnt/c
Росс Смит II
1

Пока принятый ответ правильный, теперь вы можете смонтировать папку в общем ресурсе samba с помощью 3 пакетов:

samba-client
samba-common
cifs-utils

Это базовые пакеты репозитория CentOS (извините, я больше не пользователь Ubuntu, поэтому не могу проверить), но я уверен, что в Ubuntu есть нечто похожее.

МПЗ
источник
0

В Ubuntu 18.04 я смонтировал общий каталог smb напрямую через обозреватель файлов, никаких действий в командной строке не требуется.

яблоня
источник