Ошибки

Предупреждение «sudo: unable to resolve host»: имени сервера нет в /etc/hosts

Это предупреждение: команда после него выполняется. sudo не нашёл адрес для имени сервера — добавьте имя в файл /etc/hosts.

Обновлено 09.10.2026≈ 3 мин чтения
Содержание 9

Что сделать прямо сейчас

  1. Узнайте имя сервера — шаг 1.
  2. Добавьте строку с этим именем в /etc/hosts — шаг 2.
  3. Если после перезагрузки строка пропала — шаг 3.

Все команды на этой странице вводятся на сервере: подключитесь к нему по SSH (как подключиться) и набирайте их в том же окне.

Что значит это сообщение

sudo: unable to resolve host myserver: Name or service not known

Вместо myserver будет имя вашего сервера. Это предупреждение, а не ошибка: в Ubuntu команда после него выполняется.

При запуске sudo узнаёт полное имя сервера и ищет для него адрес среди известных системе — в файле /etc/hosts и через DNS. Не нашёл — пишет предупреждение. Так бывает после смены имени сервера, если /etc/hosts не поправили.

Шаг 1. Узнайте имя сервера

hostname

Команда выведет имя, например myserver. Посмотрите, есть ли оно в /etc/hosts:

grep myserver /etc/hosts

Если команда ничего не вывела — имени в файле нет.

Шаг 2. Добавьте имя в /etc/hosts

Откройте файл в редакторе (как работать с редактором — в разделе про nano):

sudo nano /etc/hosts

sudo ещё раз покажет предупреждение — это нормально, редактор откроется. В начале файла есть строка 127.0.0.1 localhost. Добавьте под ней строку со своим именем:

127.0.1.1 myserver

Если в файле уже есть строка, начинающаяся с 127.0.1.1, со старым именем — замените в ней старое имя на новое. Сохраните файл и выйдите.

Шаг 3. Если строка пропала после перезагрузки

Файл /etc/hosts может пересобирать cloud-init — программа первоначальной настройки, которую ставят провайдеры. Проверьте, включено ли это:

grep -r manage_etc_hosts /etc/cloud/
  • Ничего не выведено или стоит false — cloud-init файл не трогает, ваша правка останется.
  • true — cloud-init собирает /etc/hosts из шаблона в папке /etc/cloud/templates/ при каждой загрузке. Постоянные правки вносите в шаблон: посмотрите ls /etc/cloud/templates/ и откройте файл, имя которого начинается с hosts.
  • localhost — cloud-init сам добавляет строку 127.0.1.1 с именем сервера при загрузке.

Как проверить

sudo whoami

Команда ответит root без строки unable to resolve host.

Похожие ошибки

СообщениеЧем отличается
Temporary failure resolving '…'apt не может найти адрес репозитория: проблема с DNS
sudo: … command not foundsudo не нашёл программу

Тексты сообщений на этой странице сверены с исходным кодом sudo 1.9.15p5 — эта версия стоит в Ubuntu 24.04. В других версиях слова могут немного отличаться.

Источники

Сверено 9 октября 2026 года.

Что почитать дальше

Проверено и обновлено: 09.10.2026