Почему "hostname -d" дает другой вывод, чем имя домена?

Я подключил компьютер с Ubuntu 14.04 к домену, используя samba 4, но аутентификация не работает. Посмотри, что я получу:

# net ads keytab create -U 'admin'
Enter admin's password:
ads_get_dnshostname: No dNSHostName attribute!
../source3/libads/kerberos_keytab.c:328: unable to determine machine account's dns name in AD! 

Проверяя правильность моего полного доменного имени, я получаю:

# hostname -d
dom.forest.int

# domainname
(none) 

Почему доменное имя отличается от имени хоста -d? Может ли это быть проблемой с Samba?

Это моя конфигурация:

# grep MYPCNAME /etc/hosts
127.0.1.1       MYPCNAME.dom.forest.int MYPCNAME

и это:

# cat /etc/hostname
MYPCNAME

Правильна ли моя конфигурация? Как я могу устранить эту проблему дальше?

3 ответа

Справочная страница объясняет это довольно четко. Цитировать из man hostname:

-d, --domain
                  Display  the  name  of the DNS domain. Don't use the command domainname to get the DNS domain name because it will show the NIS domain name and not the DNS domain name. Use dnsdomainname instead.

Так domainname покажет доменное имя NIS, вам нужно использовать dnsdomainname вместо.

Вы получили другой ответ Bacouse hostaname дать вам "имя перед доменом". команда hostname -d дать вам домен ака DNS domain name,

Ваше полное имя хоста, которое вы получите с помощью команды hostname -f

По какому-то поводу могу сказать hostname + hostname -d знак равно hostname -f

Используйте "dnsdomainname", а не "domainname":

domainname - show or set system's NIS/YP domain name ... dnsdomainname - show the system's DNS domain name

Источник: HOSTNAME(1) ("man domainname")

Другие вопросы по тегам