Почему "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")