Как получить имя хоста Linux

Обновлено: 21.11.2024

В Unix-подобных операционных системах команда hostname показывает или задает системное имя хоста.

Эта страница охватывает версию имени хоста GNU/Linux.

Описание

имя хоста используется для отображения DNS-имени системы, а также для отображения или установки ее имени хоста или доменного имени NIS (Network Information Services).

При вызове без каких-либо аргументов hostname отображает имя системы, возвращаемое функцией gethostname.

При вызове с одним аргументом или с параметром --file hostname задает имя хоста системы с помощью функции sethostname. Только суперпользователь может установить имя хоста.

Имя хоста обычно задается один раз при запуске системы в сценарии /etc/init.d/hostname.sh, обычно путем чтения содержимого файла, содержащего имя хоста, например, /etc/hostname.

Синтаксис

Параметры

Полное доменное имя

Вы не можете изменить полное доменное имя с именем хоста или dnsdomainname.

Рекомендуемый метод установки полного доменного имени – сделать имя хоста псевдонимом для полного имени с использованием /etc/hosts, DNS или NIS. Например, если имя хоста было «mysubdomain», в файле /etc/hosts может быть строка следующего содержания:

Технически: полное доменное имя — это имя, которое getaddrinfo возвращает для имени хоста, возвращенного gethostname. Имя домена DNS — это часть после первой точки.

Поэтому то, как вы можете изменить его, зависит от конфигурации распознавателя (обычно в /etc/host.conf). Обычно файл hosts анализируется перед DNS или NIS, поэтому чаще всего полное доменное имя изменяется в /etc/hosts.

Если компьютер имеет несколько сетевых интерфейсов/адресов или используется в мобильной среде, он может либо иметь несколько полных доменных имен/доменных имен, либо вообще не иметь их. Поэтому избегайте использования имени хоста --fqdn, имени хоста --domain и dnsdomainname.

hostname --ip-address имеет те же ограничения, поэтому его также следует избегать.

Файлы

/etc/hostname Исторически этот файл должен был содержать только имя хоста, а не полное каноническое полное доменное имя. В настоящее время большинство программного обеспечения может справиться с полным полным доменным именем здесь. Этот файл считывается во время загрузки сценариями инициализации системы для установки имени хоста.
/etc/hosts Обычно здесь задается доменное имя путем присвоения имени хоста псевдониму FQDN.

Примеры

Отображает имя хоста системы.

Связанные команды

hostid — вывести числовой идентификатор текущего хоста.
uname — вывести информацию о текущей системе.

Команда Linux hostname используется для просмотра или изменения системного домена и имени хоста. Он также может проверять IP-адрес компьютера.

В этом руководстве мы рассмотрим все способы использования команды hostname в Linux и способы изменения имени хоста вашего компьютера в системе Linux.

  • Система под управлением Linux
  • Доступ к командной строке/окну терминала

Синтаксис команды имени хоста

Команда hostname использует следующий формат:

Используйте параметр [options], чтобы добавить более конкретные инструкции к команде hostname. Без него вывод по умолчанию показывает имя хоста вашего компьютера:

Используйте параметр [new_hostname], если хотите изменить имя хоста вашего компьютера.

Примеры команд hostname

У команды hostname есть несколько параметров, которые можно использовать для получения более конкретных результатов:

  • -a , --alias : отображает псевдоним хоста.
  • -A , --all-fqdns : отображает все FQDN (полное доменное имя) компьютера.
  • -b , --boot : всегда задавать имя хоста.
  • -d , --domain : отображать доменное имя DNS.
  • -f , --fqdn , --long : показать полное доменное имя.
  • -F , --file : Проверить файл для восстановления и отображения имени хоста.
  • -h , --help : напечатать справочное сообщение в качестве вывода.
  • -i , --ip-address : показать IP-адрес компьютера.
  • -I , --all-ip-addresss : показать все сетевые адреса компьютера.
  • -s , --short : показать короткую версию имени хоста.
  • -v , --verbose : расширить весь вывод до подробного.
  • -y , --yp , --nis : показать доменное имя NIS.

Отображаемое имя хоста

При использовании команды hostname без каких-либо дополнительных параметров отображается имя хоста компьютера:

Отображать короткое имя хоста

Используйте параметр -s или --short, чтобы отобразить короткую версию имени хоста, которая обрезается до первой точки:

Отображаемый псевдоним

Используйте параметр -a или --alias, чтобы отобразить псевдоним (замещающее имя хоста) хоста, если он установлен. Этот параметр полезен в очень редких случаях, и его использование больше не рекомендуется.

Поиск имен хостов

Используйте параметр -F или --file для поиска определенного файла (например, имя хоста или hosts) и измените имя хоста вашего компьютера, чтобы оно соответствовало содержимому файла. :

Примечание. При использовании параметров -F или --file также укажите путь к файлу, который вы хотите проверить.

Использовать имя хоста по умолчанию

Если вы не хотите иметь определенный файл, содержащий имя хоста, или хотите оставить этот файл пустым, используйте параметр -b или --boot. Это заставляет ваш компьютер использовать имя хоста по умолчанию (localhost), пока вы не установите другое:

Отображаемое доменное имя

Используйте параметр -d или --domain, чтобы отобразить имя вашего домена DNS:

Показать полное доменное имя

Если вы хотите отобразить полное доменное имя системы, используйте параметр -f , --fqdn или --long:

Полное доменное имя содержит короткое имя хоста и доменное имя DNS.

Показать все полные доменные имена

Чтобы отобразить каждое полное доменное имя вашего компьютера, используйте параметр -A или --all-fqdns:

Эта опция выводит список всех ваших сетевых адресов и их доменных имен DNS. Он пропускает все адреса, которые не может перевести.

Примечание. Различные сетевые адреса могут преобразовываться в одни и те же доменные имена DNS. Это может привести к дублированию выходных записей при использовании параметров -A или --all-fqdns.

Показать домен NIS

Если вы используете NIS (Сетевая информационная служба), вы можете проверить имя своего домена NIS с помощью параметра -y , --yp или --nis:

Изменить доменное имя NIS

Используйте эту команду в следующем формате, чтобы изменить имя домена NIS:

Показать связанные сетевые адреса

Команда hostname также позволяет связать отображаемые сетевые адреса с именем хоста. Для этого используйте опцию -i или --ip-address:

Эта команда работает, только если имя хоста может быть разрешено.

Показать все сетевые адреса

Используйте параметр -I или --all-ip-addresses, чтобы отобразить все сетевые адреса хоста. В отличие от -i, эта опция не зависит от разрешения имени хоста:

Изменить имя хоста до перезагрузки

Вы можете изменить имя хоста вашего компьютера с помощью команды hostname. Для этого используйте следующий формат:

Любые изменения имени хоста, сделанные с помощью этой команды, будут действительны только до следующей перезагрузки.

Изменить имя хоста навсегда

Чтобы навсегда изменить имя хоста, используйте текстовый редактор, например Nano, чтобы внести изменения в файлы hostname и hosts:

Вы также можете использовать команду hostnamectl для постоянного изменения имени хоста:

Дополнительные параметры имени хоста

Используйте параметр -V или --version, чтобы распечатать версию программного пакета имени хоста в вашей системе Linux:

Если вам нужна помощь по какой-либо из команд, используйте параметр -h или --help, чтобы распечатать справочное сообщение:

Изучив это руководство, вы теперь знаете, как использовать команду hostname в Linux, и все параметры, которые могут расширить ее возможности.

Имя хоста — это уникальная буквенно-цифровая метка, назначаемая системе Linux для ее идентификации в сети. Он также может содержать несколько специальных символов, таких как дефис (-), точка (.) и подчеркивание (_). Типичное имя хоста состоит из 253 символов. Как правило, имя хоста хранится в файле /etc/hostname в большинстве дистрибутивов Linux. В этом кратком руководстве мы узнаем о различных командах для поиска имени хоста в операционных системах Linux.

1. Найти имя хоста в Linux с помощью команды hostname

Команда hostname используется для отображения DNS-имени и имени хоста системы Linux. Это также позволяет пользователям изменять или устанавливать имя хоста.

Чтобы найти имя хоста в Linux, запустите команду hostname без каких-либо параметров:

Найти имя хоста в Linux с помощью команды hostname

Как видно из вывода, hostanme моей системы Linux — ostechnix.

Если вы хотите отобразить FQDN (полное доменное имя), выполните:

2. Отображение имени хоста с помощью команды hostnamectl в Linux

Команда hostnamectl используется для получения и установки системного имени хоста и связанных с ним параметров в Linux.

Чтобы отобразить имя хоста вашего компьютера с Linux, запустите команду hostnamectl без каких-либо параметров:

Пример вывода:

Отображение имени хоста с помощью команды hostnamectl в Linux

В отличие от команды hostname, hostnamectl отображает некоторые дополнительные сведения о вашей системе, такие как тип системы (ноутбук или настольный компьютер), идентификатор загрузки и компьютера, версия операционной системы и ядра, архитектура и т. д.

Чтобы отобразить только имя хоста, используйте флаг --static:

3. Проверьте имя хоста Linux с помощью команды nmcli

nmcli — это инструмент командной строки для управления NetworkManager и создания отчетов о состоянии сети. С помощью nmcli мы можем создавать, отображать, редактировать, удалять, активировать и деактивировать сетевые подключения, а также контролировать и отображать состояние сетевых устройств.

Чтобы проверить имя хоста системы Linux с помощью инструмента nmcli, выполните следующую команду:

4. Просмотр имени хоста с помощью команды uname

uname — это инструмент командной строки для вывода всей системной информации, такой как имя хоста, версия ядра, версия ядра, операционная система, архитектура процессора и т. д.

Чтобы просмотреть имя хоста с помощью команды uname, запустите ее с параметром -n:

5. Получить имя хоста, прочитав файл /etc/hostname

Как уже говорилось, имя хоста хранится в файле /etc/hostname в большинстве дистрибутивов Linux. Чтобы получить имя хоста системы Linux, просто отобразите содержимое файла /etc/hostname:

Это наиболее часто используемые команды для поиска имени хоста в Linux. Есть также два необычных способа проверить имя хоста Linux. Они приведены ниже для справки.

6. Распечатать имя хоста в Linux с помощью команды sysctl

Команда sysctl используется для отображения и изменения параметров ядра во время выполнения.

Мы можем напечатать имя хоста системы Linux, используя командную строку sysctl ниже:

7. Определить имя хоста в Linux с помощью ProcFS

Файловая система Proc (или сокращенно procfs) — это виртуальная файловая система, поддерживаемая ядром Linux. Ее также иногда называют псевдофайловой системой с информацией о процессе. Он не содержит «настоящих» файлов, а содержит информацию о системе во время выполнения, такую ​​как системная память, подключенные устройства, конфигурация оборудования и т. д. Вся эта информация доступна в специальном каталоге с именем /proc в Linux.

Чтобы определить имя хоста Linux с помощью prcfs, выполните:

Теперь вы знаете различные способы просмотра имени хоста системы Linux. Как вы его измените? В следующем руководстве объясняется, как установить новое имя хоста или изменить существующее имя хоста либо из командной строки, либо из раздела «Настройки» в графическом режиме.

Имена или ярлыки полезны, поскольку позволяют нам отличить одну вещь или одного человека от другого. Даже имя человека, которое может не быть глобально уникальным, содержит набор символов, позволяющих отличить человека от другого человека.

Аналогичным образом компьютеры поддерживают метки или имена, которые помогают придать им уникальную идентификацию в сети. Вот тут-то и появляется имя хоста. Имя хоста – это набор буквенно-цифровых символов, уникальный для компьютерной сети, позволяющий устройствам взаимодействовать друг с другом.

Как правило, основная технология, идентифицирующая компьютер или устройство в сети, представляет собой набор чисел, известных как IP-адреса. Затем они сопоставляются с определенным именем, преобразованным в IP-адрес машины.

Однако в этом руководстве я покажу вам различные способы, которые можно использовать для получения имени хоста, связанного с определенным IP-адресом. Методы, обсуждаемые в этом руководстве, будут работать практически во всех Linux и Unix-подобных системах.

Если вам нужны подробные инструкции о том, как работают такие системы, как доменные имена, ознакомьтесь с ресурсом по приведенной ниже ссылке:

Покончив с этим, давайте углубимся.

Способ 1. Проверка связи

Самый простой способ получить имя хоста по IP-адресу — использовать ping. Ping — это простая, но мощная утилита командной строки, которая использует пакеты ECHO для связи с хостом.

ПРИМЕЧАНИЕ. Следующая команда работает только на компьютерах с ОС Windows. Для Linux проверьте следующий метод.

Чтобы получить имя хоста по IP-адресу с помощью ping, используйте следующую команду:

Вот результат приведенной выше команды:

Приведенная выше команда не всегда надежна; часто это работает, только если имя хоста доступно в файле hosts.

Метод 2: команда хоста

Второй и распространенный метод получения имени хоста по IP-адресу в Linux — это команда host. Этот простой инструмент является частью пакета dnsutil.

Читайте также: