У меня есть два ноутбука с Ubuntu 13.10 x64 на них. Я хочу, чтобы они оба могли пинговать и монтировать друг друга через имя хоста или имя netbios, что в моем случае одинаково. Компьютеры называются gluk47-notebook и gluk47-pc (на самом деле это 14- дюймовый ноутбук). Тайна в том, что ноутбук пингует компьютер, а не наоборот.

Вот что у меня есть:

[root@gluk47-pc ~]# egrep '^hosts' /etc/nsswitch.conf 
hosts:          files wins dns mdns4
[root@gluk47-pc ~]# grep wins /etc/samba/smb.conf 
   wins support = yes
;   wins server = w.x.y.z
;   name resolve order = lmhosts host wins bcast
[root@gluk47-pc ~]# service winbind status
winbind start/running, process 1633
[root@gluk47-pc ~]# service smbd status
smbd start/running, process 712
[root@gluk47-pc ~]# smbtree -N
EARTH
        \\GLUK47-PC                     gluk47-pc server (Samba, Ubuntu)
                \\GLUK47-PC\print$              Printer Drivers
                \\GLUK47-PC\IPC$                IPC Service (gluk47-pc server (Samba, Ubuntu))
        \\GLUK47-NOTEBOOK               gluk47-notebook server (Samba, Ubuntu)
                \\GLUK47-NOTEBOOK\Home                  Домашний принтер
                \\GLUK47-NOTEBOOK\print$                Printer Drivers
                \\GLUK47-NOTEBOOK\software       
                \\GLUK47-NOTEBOOK\video          
                \\GLUK47-NOTEBOOK\IPC$                  IPC Service (gluk47-notebook server (Samba, Ubuntu))
[gluk47@gluk47-pc ~]$ ssh gluk47-notebook
ssh: Could not resolve hostname gluk47-notebook: Name or service not known

Ответ распознавателя адресов мгновенный, в отличие от обычных задержек smb для каждой операции.

После этого я ssh'ed непосредственно по IP-адресу и получил следующее из записной книжки:

[root@gluk47-notebook ~]# egrep '^hosts' /etc/nsswitch.conf 
hosts:          files dns wins [NOTFOUND=return] mdns4_minimal mdns4
[root@gluk47-notebook ~]# grep wins /etc/samba/smb.conf
   wins support = yes
;   wins server = w.x.y.z
;   name resolve order = lmhosts host wins bcast
[root@gluk47-notebook ~]# service winbind status
winbind start/running, process 2381
[root@gluk47-notebook ~]# service smbd status
smbd start/running, process 23817
[root@gluk47-notebook ~]# smbtree -N
EARTH
        \\GLUK47-PC                     gluk47-pc server (Samba, Ubuntu)
                \\GLUK47-PC\print$              Printer Drivers
                \\GLUK47-PC\IPC$                IPC Service (gluk47-pc server (Samba, Ubuntu))
        \\GLUK47-NOTEBOOK               gluk47-notebook server (Samba, Ubuntu)
[root@gluk47-notebook ~]# smbclient -NL GLUK47-NOTEBOOK
Connection to GLUK47-NOTEBOOK failed (Error NT_STATUS_UNSUCCESSFUL)

Эта ошибка постоянна, и я застрял. Что мне не хватает? Гугл пока не мой друг в этом деле :(

Кстати, если я gluk47-notebook в /etc/hosts на ПК, все работает (я играл в игру на ПК через wine прямо из папки samba ноутбука, когда писал этот пост), но мне нужен динамический нетбиос, а не этот статически созданный файл hosts ... ПК также не может пропинговать другие машины в сети по имени netbios. Ноутбук пингует их успешно. Другие машины могут пинговать как ПК, так и ноутбук.

1 ответ1

4

Поскольку вы уже знали о включении опции wins в nsswitch.conf, я просто даю вам прямой ответ: вам следует дополнительно установить пакет "libnss-winbind", чтобы ваша машина могла разрешить имя через WINS/NetBIOS. Пакет был установлен автоматически во время установки winbind в Ubuntu 13.04 и ниже.

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