Как я могу подключиться к серверу Samba, используя его имя хоста вместо IP?
Я начинающий, когда дело доходит до Linux, и недавно собрал медиа-сервер, на котором хранятся все мои фильмы, под управлением Ubuntu 12.04.
После следующих уроков и форумов я могу успешно пропинговать, по имени хоста и IP, мой рабочий стол Windows и мой медиа-сервер Ubuntu нормально, и наоборот.
Я настроил Samba для установки общего ресурса под названием Movies на моем медиасервере. Я также настроил учетную запись на Samba, используя свое имя пользователя Linux, имя пользователя Windows с моим паролем Linux.
Мой ящик Ubuntu теперь виден в моем дереве сети на моем окне win7, как и общий ресурс Movies. однако, когда я пытаюсь получить доступ к общему ресурсу Movies из окна win7, у меня нет разрешения на это.
Я заметил, что, используя статический IP-адрес, который я выдал своему медиасерверу Ubuntu, я могу легко получить доступ к общему ресурсу.
Однако я хотел бы иметь возможность решить эту проблему и получить доступ к общему ресурсу, используя имя хоста моего медиа-сервера Ubuntu.
Извините, если я немного неясен в моей настройке!
3 ответа
Есть несколько проблем, которые могут привести к этому:
Включение Netbios в вашем файле конфигурации samba
в вашем
/etc/samba/smb.conf
файл, после строки WORKGROUP добавьте следующее:netbios name = PC_NAME
Где PC_NAME - это имя вашего ПК, которое будет отображаться в сети. Затем сбросьте службу самбыsudo service smbd restart
Отсутствие статического IP
Нужно установить статический IP-адрес, чтобы другие компьютеры в этой сети могли видеть вас. Это также зависит от вашего роутера и конфигурации вашей сети.
Длина имени хоста должна быть не более 15 символов
Если ваше имя хоста длиннее 15 символов, в некоторых случаях это приведет к ошибке. Тип
hostname
чтобы увидеть ваше имя хоста. Чтобы изменить его, вы можете:sudo sysctl kernel.hostname=NAME
или вы можете редактировать
/etc/hostname
файл и перезагрузка.в
/etc/samba/smb.conf
файл, найдите строку, которая говорит следующее:# What naming service and in what order should we use to resolve host names # to IP addresses ; name resolve order = lmhosts host wins bcast
Раскомментируйте строку с надписью
name resolve order
и убедитесь, чтоbcast
является первым в списке, впоследствии должно выглядеть так:name resolve order = bcast lmhosts host wins
Затем перезапустите службу Samba, как я упоминал выше.
Все это при условии, что это проблема Ubuntu, у вас уже установлена Samba, и вы не работаете через Active Directory.
Во многих случаях это также Windows. Вам нужно будет сделать что-то вроде сброса DNS и регистрации на нем. На Windows в терминале (cmd) сделайте следующее:
ipconfig /flushdns
ipconfig /registerdns
Вам нужно перезагрузить компьютер после этого. После этого проверьте, видите ли вы компьютер Ubuntu, выполнив, например, net view
в винде.
В моем случае мне пришлось перезапустить службу nmbd
sudo systemctl restart nmbd
Для меня это было потому, что моя Ubuntu связывала имя хоста с IPv6-адресом, и если вы продолжаете сталкиваться с проблемами, приведенная ниже статья заслуживает внимания.
http://telsonalva.blogspot.in/2016/07/how-to-access-samba-share-in-linux-by.html
это сработало для меня