При установке новой операционной системы, такой как Debian, Ubuntu или любого другого дистрибутива Linux, установщики просят вас указать hostname вашей машины. В этом пункте, большинство пользователей оставляет это поле заполненным по умолчанию.
Позже, допустим, вы решили изменить имя хоста на какой-нибудь осмысленный текст, который поможет вам легко идентифицировать вашу систему. Для этого вы, возможно, воспользовались какими-либо утилитами или прямо упомянули новое имя хоста в файле /etc/hostname.
Но после перезагрузки системы при вызове команды sudo что-то пошло не так и вы получаете сообщение об ошибке: «sudo: unable to resolve host your-hostname: name or service not known».
Давайте разбираться.
Фиксим: sudo: unable to resolve host your-hostname: name or service not known.
Если вы работаете в компании где работает много различных команд, то время от времени вы будете сталкиваться с вышеуказанной ошибкой. Так как, довольно часто, команды пытаются изменить hostname в соответствии со своими предпочтениями. Исправить эту проблему не сложно, и займет не много времени.
Прежде всего, найдите имя хоста вашего текущего компьютера, что можно сделать, выполнив одну из следующих команд:
# cat /etc/hostname my.host --------------------------------------------------------------------- # hostnamectl Static hostname: my.host Icon name: computer-vm Chassis: vm Machine ID: d52cc41b58c90048ad20f129ea91140f Boot ID: 0058217d33a0416da53f3df6a7f60dd8 Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-1127.el7.x86_64 Architecture: x86-64 -------------------------------------------------------------------- # hostname my.host
В моем случае, как можно видеть это my.host.
После того, как узнали имя компьютера или имя хоста из /etc/hostname, посмотрим файл /etc/hosts, чтобы проверить имеется ли имя вашего компьютера в этом файле.
# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 127.0.1.1 centos-host1 centos-host1
Имя моего хоста — my.host, но здесь все еще появляется «centos-host1», что приводит к вышеобозначенной ошибке. Все правильно, я поменял стандартное имя, данное мне при выделении ВМ, но не поменял запись в /etc/hosts.
Меняем старое имя на новое любым удобным редактором.
# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 127.0.1.1 my.host my.host
После этого ошибка: «sudo: unable to resolve host your-hostname: name or service not known.», больше беспокоить вас не будет.
Заключение.
Вот и все, что хотел сказать по исправлению этой ошибки.
Если после того, как вы проделали все вышесказанное, вы все еще сталкиваетесь с проблемой, дайте мне знать в комментариях. Попробуем разобраться вместе.
Так же не забывайте подписываться на мой телеграмм, чтобы не пропустить выход новых статей.
Was this helpful?
0 / 0