Що таке 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 не знайдено".

Чому? Чи потрібно реагувати на повідомлення dmesg?


1
Чи продовжується попередження після sudo apt-get libnss-myhostname?
jobin

1
У мене така ж сигналізація на настільному виданні ubuntu 14.10, і після встановлення цього пакету я більше цього не бачу
Ріккардо Магріні

Відповіді:


30

Існує підтверджена помилка, зареєстрована у висловлюванні systemd з назвою хоста;

Оскільки nss-myhostname було відхилено як правильний підхід у https://bugs.launchpad.net/ubuntu/+source/libnss-myhostname/+bug/1162478/comments/6 , ми не повинні друкувати попереджувальне повідомлення в LTS випуску, навіть якщо ім'я хоста наразі не змінює / 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 (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

У мене виникло те саме питання.

Не довгостроковим рішенням будь-якими способами - але тим, що мені підходило - було видалити старі імена хостів, приєднані до мого localhost в / etc / hosts /, оскільки вони більше не використовуються.

Повідомлення більше не подається.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.