У меня есть пара машин с Ubuntu и ПК с Windows. Если я создаю общий ресурс на ПК с Windows, любой компьютер с Ubuntu может смонтировать его, используя mount -t cifs -o username=me //computername/sharename /mnt/mountpoint . Если я создаю общий ресурс на любом компьютере с Ubuntu, компьютер Windows может увидеть его по адресу //computername /sharename в сети и получить к нему доступ просто отлично.

Однако, если я создаю общий ресурс на одном компьютере с Ubuntu (либо) и пытаюсь смонтировать его на другом, я получаю mount error: could not resolve address for computername: Unknown error . Использование IP вместо имени netbios делает его монтированным просто персиковым.

Еще более странно, что nmblookup computername выдает IP-адрес.

Что мне нужно сделать на компьютерах с общим доступом и монтированием Ubuntu, чтобы смонтировать общий ресурс по имени netbios вместо IP-адреса? (Помимо создания сценария bash для извлечения IP-адреса из имени netbios каждый раз или установки статических IP-адресов).

1 ответ1

0

Общесистемная поддержка NBNS не является стандартной частью Ubuntu (или большинства других систем Linux). Причина, по которой работает nmblookup заключается в том, что он самостоятельно генерирует и принимает пакеты NBNS, в то время как все другие инструменты (включая mount.cifs) полагаются на глобальную функцию "разрешения имени хоста" для выбора правильного протокола.

Модуль поиска имени хоста для NBNS называется libnss_wins.so.2 , обычно упаковывается как libnss-winbind или просто как часть smbclient. После установки Debian и Ubuntu автоматически активируют его, в противном случае его необходимо добавить в строку "hosts" /etc/nsswitch.conf:

- hosts:          files dns
+ hosts:          files dns wins

Для работы модуля необходим winbindd . (Я думаю, что раньше он работал автономно, или просто с запущенным nmbd , но, видимо, больше не работает.)

Тест с:

  • getent ahosts ComputerName для всех активных модулей (перечисленных в nsswitch.conf),
  • getent -s wins ahosts ComputerName для модуля wins (независимо от того, активен он или нет).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .