Что такое nss-myhostname? И почему это не устанавливается?


50

dmesg показывает линию

systemd-hostnamed[3964]: Warning: nss-myhostname is not installed. 
Changing the local hostname might make it unresolveable. Please install nss-myhostname!    

Но

sudo apt-get install nss-myhostname

говорит

Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
E: Paket nss-myhostname kann nicht gefunden werden.

... значение "nss-myhostname not found".

Почему? Должен ли я реагировать на сообщение dmesg?


1
Продолжается ли предупреждение после sudo apt-get libnss-myhostname?
Jobin

1
У меня такая же тревога в настольной версии Ubuntu 14.10, и после установки этого пакета я больше не вижу этого
Риккардо Магрини,

Ответы:


30

Существует подтвержденная ошибка, записанная против высказывания systemd-hostname;

Поскольку nss-myhostname было отклонено как правильный подход в https://bugs.launchpad.net/ubuntu/+source/libnss-myhostname/+bug/1162478/comments/6 , мы не должны печатать предупреждающее сообщение в LTS выпуск, даже если hostname в настоящее время не изменяет / etc / hosts.

Можем ли мы исправить это предупреждение, чтобы пользователи не думали, что что-то не так в их системе, и заставили их установить libnss-myhostname ?.

Даже если это может избежать предупреждения, вы можете не захотеть устанавливать libnss-myhostname только для этой цели.

Любое тело, увидевшее сообщение

 systemd-hostnamed
[16495]: Warning: nss-myhostname is not installed. Changing the local hostname might make it unresolveable. Please install nss-myhostname!

необходимо прочитать этот https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1277608 этот https://bugs.launchpad.net/ubuntu/+source/libnss-myhostname/+bug/1162478/comments / 6 перед установкой пакета nss-myhostname.


1
так что я не должен ничего делать?
Мина Майкл

Помимо вышеупомянутых связанных обсуждений, я настоятельно рекомендую всем, кто рассматривает возможность установки libnss-myhostname, также прочитать этот отчет об ошибках Debian для exim4, который, как выяснилось, был вызван из-за неправильной настройки служб имен libnss-myhostname таким образом, что exim вызывает сбой доставить местную почту. Вы не хотите этот пакет в вашей системе.
Жюль

26

От сюда :

nss-myhostname - это плагин для функциональных возможностей GNU Name Service Switch (NSS) библиотеки GNU C (glibc), обеспечивающий разрешение имени хоста для локально сконфигурированного имени системного хоста, возвращаемого gethostname (2). Существует два возможных решения:

  • Возможно, вы не настроили (или неправильно) настроили ваше имя хоста в /etc/hosts. Исправление, которое может решить эту проблему.

  • Другой способ, как следует из предупреждения, - установить nss-myhostname, который в Debian упоминается как libnss-myhostname. Это только обходной путь, а не предлагаемое решение для соответствующей ошибки. Установить с помощью:

    sudo apt-get install libnss-myhostname
    

Источник: 13.04 dmesg: Предупреждение: nss-myhostname не установлен


5
Есть ли способ объединить ответы? Я чувствую, что ваш ответ не принимает во внимание то, что подчеркивает yoyoma2, так как НЕ рекомендуется устанавливать этот пакет исключительно в целях предотвращения запросов dbus-сообщений. Это известная ошибка, как у yoyoma2. yoyoma2 также объясняет: «Почему? Я должен реагировать на сообщение dmesg?» часть вопроса задала. Я не вижу, как отредактировать ваш ответ, не полностью изменив его!
geezanansa

Кроме того, на ветке форумов ubuntu, связанной ни в какой форме или форме, не рекомендуется устанавливать (хотя это и предлагается, но без обратной связи, подтверждения или объяснения) пакет, который вы предлагаете, является хорошей идеей. чтение ветки предлагает другие обходные пути и объясняет почему!
geezanansa

7

Я сомневаюсь, что вы захотите установить эти библиотеки. Если это не более чем неприятность, вы можете просто замолчать сообщение.

Создайте новый файл конфигурации /etc/rsyslog.d/и скажите, что сообщение будет удалено:

$ sudo nano /etc/rsyslog.d/20-systemd-hostnamed.conf

Добавьте следующую единственную строку:

:msg, contains, "Warning: nss-myhostname is not installed." stop

Сохраните и закройте и перезапустите демон:

$ sudo service rsyslog restart

Дело сделано. Вы можете убедиться, что сообщения удаляются, преднамеренно пытаясь спамить ваши syslog:

$ logger -t TEST "Warning: nss-myhostname is not installed."

Сообщение должно быть тихо отброшено.


-1

У меня была такая же проблема.

Не долгосрочным решением, каким бы то ни было способом, но тем, которое меня устраивало, было удаление старых имен хостов, прикрепленных к моему локальному хосту, в / etc / hosts /, так как они больше не используются.

Сообщение больше не обслуживается.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.