Преименуване на Linux хост: Безопасни стъпки и какво да проверите след това

  • Името на хоста идентифицира всеки компютър в мрежата и трябва да бъде уникално, за да се избегнат конфликти и проблеми с отстраняването на неизправности.
  • Linux ви позволява да промените хоста за постоянно или временно, използвайки инструменти като hostnamectl, nmtui и редактиране на файлове.
  • На сървъри с cloud-init или VPS панели е изключително важно да се коригира конфигурацията им, така че името на хоста да не се губи след рестартиране.
  • Актуализирането на /etc/hosts и проверката на услугите и DNS гарантира, че промяната на името на хоста е последователна в цялата система.

промяна на името на хоста в Linux

Ако работите със сървъри или имате няколко компютъра в домашната си мрежа, да разберете как да преименувате хоста в Linux Почти задължително е. Общо име на отбор, като например Localhost В началото може да работи, но веднага щом управлявате няколко машини, настъпва хаос: дубликати, объркване при свързване чрез SSH и проблеми с идентифицирането на това кое е кое.

В съвременните дистрибуции, както и в малко по-стари системи, има няколко метода за промяна на името на хоста, както постоянно, така и временно. временно и без рестартиранеВ следващите раздели ще видите стъпка по стъпка как да го направите с hostnamectlс текстови инструменти, като например nmtui, модифициране на класически конфигурационни файлове или дори използване на проста команда за име на хост, в допълнение към някои специфични подробности за CentOS, Debian, Ubuntu, RHEL и производни.

Какво е името на хоста в Linux и защо трябва да го промените?

На всяка Linux система, име на хост Това е идентификаторът, с който машината се представя в мрежата. Може да бъде просто име, като например сървъра или нещо по-сложно, като например srv-web-01.empresa.localНо той винаги ще бъде основният ориентир за друго оборудване и услуги.

Обикновено, име по подразбиране се задава по време на инсталирането на дистрибуцията; в много случаи Localhost или общо име, което не казва много. Ако имате няколко устройства с едно и също име на хост В една и съща мрежа може да се сблъскате с конфликти при разрешаване на имена, услуги, които не отговарят там, където очаквате, или просто огромна бъркотия при свързване чрез SSH или управление на лог файлове.

В производствени среди е обичайно всяка машина да има име в съответствие с неговата функция и местоположение (например, LINUX-SYSADMIT-01, db01, mail-srv и др.). Това опростява администрирането, наблюдението и отстраняването на проблеми, а също така избягва разчитането единствено на IP адреси, които могат да се променят по-лесно.

Важно е също да се разбере, че името на хоста обикновено е свързано с специфичен IP адресВ локалните мрежи това често се прави с помощта на файла / Etc / hostsА в по-големи мрежи или интернет, чрез DNS. Следователно, когато променяте името на компютъра си, е добре да проверите за препратки в системата и мрежата, които все още може да сочат към старото име.

име на хост Linux

Проверете текущото име на хост в Linux

Преди да промените нещо, е препоръчително да видите какво Какво име на хост има машината в момента?В Linux има няколко начина да го проверите и всички те са много бързи.

Най-директният вариант е да използвате командата име на хост В терминала:

име на хост

Изходът от тази команда просто показва текущо име на хост, например:

съвети за linuxshell

Ако искате малко повече информация за системата, особено в дистрибуции, базирани на systemd, можете да издърпате от hostnamectlТова е помощна програма от командния ред, която показва компютърни данни и ви позволява да промените името на хоста:

hostnamectl

Изходът включва полета като Статично име на хостоперационна система, версия на ядрото, тип виртуална машинаархитектура и др. Ключовата информация тук е Статично име на хост, което е постоянно дефинираното име за системата.

Ако искате да видите повече информация на „ниско ниво“, можете да се обърнете и към някои системни файлове. Файлът /proc/sys/kernel/име на хост отразява името на хоста, което ядрото използва в момента:

cat / proc / sys / kernel / hostname

И, разбира се, в много дистрибуции файлът / И т.н. / хост Той съхранява конфигурираното име на хоста за постоянно. Можете да го видите с:

котка / и т.н. / име на хост

Променете името на хоста за постоянно в Linux, използвайки hostnamectl

В повечето съвременни дистрибуции (като например Ubuntu 16.04 или по-нова версия, скорошни версии на Debian, RHEL 7+, CentOS 7+ и производни) началната система е systemdИ с него идва и инструментът hostnamectlкойто е препоръчителният начин за трайно преименуване на хоста в Linux.

Първото нещо, което трябва да направите, е да се уверите, че вашата система използва systemd. Той е стандартен за съвременните дистрибуции, но ако работите с по-стара система, може да се наложи да го инсталирате или да използвате алтернативни методи. На системи, базирани на Debian, можете да го инсталирате (ако вече не е там) с:

apt-get инсталиране на systemd

За да видите текущото име на хост, използвайки hostnamectl, изпълнете:

hostnamectl

Ще видите нещо подобно (типичен пример за Ubuntu VPS):

Статично име на хост: hostinger
Име на иконата: computer-vm
Шаси: vm
Machine ID: 45598cbdb6ee462e8696166b520fe788
Boot ID: 99526e56aeea45c2a0f3b2ffaaffe9d9
Виртуализация: openvz
Операционна система: Ubuntu 22.04.3 LTS
Ядро: Linux 5.4.0
Архитектура: x86-64

За да зададете ново постоянно име на хост, използвайте следния синтаксис:

hostnamectl set-hostname НОВО_ИМЕ_НА_ХОСТ

Например, ако искате да се обадите на екипа си LINUX-SYSADMIT-01Бихте направили:

hostnamectl set-hostname LINUX-SYSADMIT-01

Тази команда обикновено не показва нищо на екрана, ако е изпълнена правилно. За да проверите дали промяната е приложена, просто изпълнете командата отново.

hostnamectl

и проверете дали полето Статично име на хост Преименувано е на новото ви име. Можете също така просто да използвате:

име на хост

За да проверите дали системата отговаря с актуализираното име на хоста. С този метод в повечето случаи не е необходимо да рестартирате, тъй като systemd се грижи за разпространението на промяната.

Преименувайте хоста с hostnamectl

Преименувайте хоста, като редактирате класическите конфигурационни файлове

В допълнение към специфичните за systemd инструменти, можете да направите това в почти всяка дистрибуция. Променете името на хоста, като получите директен достъп до конфигурационните файлове.Този метод работи дори на по-стари системи и ви дава много фин контрол върху това, което променяте.

Първият файл за преглед е / И т.н. / хосткъдето обикновено се появява един ред с текущото име на отбора. За да го редактирате, можете да използвате vi, vim, nano или предпочитания от вас редактор. Например:

sudo vim /etc/име_на_хост

Във файла заменете текущото име с новото име на хоста, което искате да използвате, например:

hostinger

Запазете промените и излезте от редактора. Вече сте променили основната конфигурация, но остават няколко ключови стъпки, за да се гарантира, че промяната е последователна в цялата система.

Следващият файл, който ще бъде актуализиран, е / Etc / hosts, използвани за локално разрешаване на имена на хостове в IP адресиОтворете го с обичайния си редактор:

sudo vim / etc / хостове

В този файл обикновено има ред, подобен на:

127.0.0.1 localhost име на стар хост

или нещо еквивалентно. Трябва да замените предишното име с новото, например:

127.0.0.1 хостинг доставчик

В среди, където се използват пълни имена на домейни (FQDN), може да видите записи като:

192.168.0.1 engelausmetall.engel.com engelausmetall

В този случай, ако ще промените името на хоста, ще трябва Коригирайте частта с името и, ако е приложимо, FQDN за да се поддържа съгласуваност с мрежата и услугите, които използват това име.

В много по-стари конфигурации, базирани на Инициализация на система V, особено в системи като Red Hat или производни, файлът се използва и /etc/sysconfig/network за да дефинирате името на хоста. Именно в този файл ще видите ред, деклариращ променливата HOSTNAME:

HOSTNAME=engelausmetall.engel.com

Ако този файл съществува на вашата система, редактирайте го с:

нано /etc/sysconfig/network

и променете променливата HOSTNAME с новото име. Тази стъпка е важна, за да може Промяната би трябвало да се запази след рестартиране, особено в по-старите дистрибуции на семейството Red Hat.

След актуализация /etc/име_на_хост, /etc/hosts и, ако е приложимо, /etc/sysconfig/networkЧесто срещано е рестартирането на определени мрежови услуги или на самата система. Много ръководства препоръчват например следното за класически системи:

Старт на /etc/init.d/hostname.sh

или рестартирайте мрежовата услуга:

рестартиране на сервизната мрежа

След това е препоръчително да затворите терминалната сесия и да отворите нова или дори да излезете и да влезете отново в графичната среда. Това ще потвърди, че Конзолният ред и приложенията вече показват актуализираното име на хоста.

Конфигуриране на името на хоста в Linux с помощта на nmtui (NetworkManager TUI)

В много дистрибуции, базирани на Red Hat, като например RHEL и CentOSВ допълнение към чисто инструментите за команден ред, a текстов интерфейс за NetworkManager повикване nmtui (Текстов потребителски интерфейс на мрежовия мениджър). Тази помощна програма ви позволява да конфигурирате мрежови връзки, а също и коригирайте името на системния хост от нещо като текстово меню.

Ако не го имате инсталиран, можете да го добавите на системи, които използват yum, с пакета NetworkManager-tui:

sudo yum инсталирайте NetworkManager-tui

Когато инсталаторът изброи зависимостите и ви попита дали искате да продължите, отговорете с y и натиснете Enter. Когато сте готови, ще видите съобщение като Пълен!, знак, че пакетът е инсталиран правилно.

Преди да използвате nmtui, уверете се, че услугата NetworkManager работи. Можете да проверите това с:

състояние на услугата NetworkManager

Ако услугата не работи, стартирайте я с:

стартиране на услугата NetworkManager

Сега можете да стартирате интерфейса в текстов режим, като въведете:

sudo nmtui

На главния екран на инструмента ще видите няколко опции, включително Задаване на име на системен хостИзползвайте клавишите със стрелки на клавиатурата, за да отидете до тази опция, натиснете Enter и ще получите достъп до прозорец, където можете въведете новото име на хоста които искате да присвоите на вашата система.

Въведете новото име на хоста, изберете приемам (или OK) и потвърдете промените. След като излезете от nmtui, системата ще приложи новото име. Можете да го проверите отново с:

име на хост

или, ако вашата дистрибуция използва systemd, с:

hostnamectl

Използване на cloud-init и запазване на името на хоста след рестартиране

В много VPS и облачни сървърни изображения, следното влиза в действие облак първоначаленТози инструмент конфигурира системата при първото ѝ стартиране (а понякога и при следващите стартирания) въз основа на шаблони на доставчици. Това включва, наред с други неща, име на хост.

Ако ръчно промените името на хоста на управляван от cloud-init сървър, но не коригирате конфигурацията му, е възможно това След рестартиране, оригиналното име на хоста ще бъде приложено отново. които шаблонът носи, губейки промените си.

За да избегнете това, редактирайте основния конфигурационен файл на cloud-init, обикновено /etc/cloud/cloud.cfgМожете да го направите с:

sudo vim /etc/cloud/cloud.cfg

В този файл потърсете директивата запазване_име_на_хостАко е конфигуриран като фалшив Ако не се появи, добавете или променете реда, така че да изглежда така:

preserve_hostname: true

Тази опция казва на cloud-init, че уважавайте текущото име на хоста на системата и не го презаписвайте при следващи стартирания. След като запазите файла, рестартирайте сървъра, за да проверите дали името на хоста е запазено:

sudo рестартиране

След като се рестартира, изпълнете:

име на хост

и проверете дали името все още е това, което сте конфигурирали. Ако вашата система не използва cloud-init или файлът /etc/cloud/cloud.cfg То не съществува, можеш просто Игнорирайте тези стъпки.

Промяна на името на хоста в Linux без рестартиране на системата

Има моменти, когато просто имаш нужда временна промяна на името на хостаНапример, за да изпълните конкретни тестове или да изпълните определена задача. В тези случаи можете да го направите директно с командата име на хостзнаейки, че промяната Няма да бъде постоянно след рестартиране..

Основният синтаксис на командата за задаване на ново име е:

име на хост NEW_HOSTNAME

Например, ако искате да дадете име на екипа hostinger временно, бихте изпълнили:

име на хост хостинг

Тази промяна влиза в сила незабавно за текущата системна сесия. За да проверите дали е влязла в сила, можете да рестартирате:

име на хост

и ще видите новото име на хоста. Веднага щом обаче рестартирате машината, Системата ще се върне към конфигурираното постоянно име на хост в конфигурационните файлове или с помощта на hostnamectl, така че не замествайте постоянните стъпки за конфигуриране с това, ако е необходимо промяната да бъде постоянна.

Допълнителни съображения и най-добри практики при преименуване на хоста в Linux

Преименуването на хоста не е просто въпрос на промяна на низ в няколко файла; струва си да проверите няколко детайла, за да се уверите, че всичко работи правилно. работят гладкоособено на производствени сървъри или в корпоративна среда.

Първата препоръка е да изберете име на хост ясно и последователно с вашата схема за именуване. Много компании следват модели като РОЛЯ-МЕСТО-НОМЕР (например WEB-MAD-01, DB-BCN-02), което улеснява разбирането на дейността на всеки сървър само с поглед към името му.

Важно е също да проверите дали името на хоста се появява в скриптове, услуги, сертификати или правила на защитната стенаНапример, някои услуги може да са конфигурирани да слушат на конкретно име на хост или да генерират лог файлове, където името на хоста е част от пътища и файлове. След промяната е добре бързо да прегледате тези точки.

Друг аспект, който трябва да се вземе предвид, е възможната връзка между името на хоста и DNS резолюцияАко вашата машина е регистрирана на DNS сървър под определено име, промяната на локалното име на хоста ще изисква и актуализиране на съответния DNS запис, за да съответства. логическо име и IP адрес с което се решава.

И накрая, не забравяйте винаги да проверявате файла / Etc / hosts за да се гарантира, че всички препратки към старото име са правилно актуализирани. Често се случва тази стъпка да се забрави и след това да се окаже, че някои услуги изпълняват непоследователни решения на имена защото в този локален файл все още има стари редове.

Разберете колко устройства са свързани във вашата Wi-Fi мрежа с Windows 11: методи, приложения и сигурност
Свързана статия:
Разберете колко устройства са свързани във вашата Wi-Fi мрежа с Windows 11: методи, приложения и сигурност