Чтобы различать устройства, пакеты данных используют IP-адреса; однако людям может быть непросто распознать IP-адреса. К счастью, в Linux имя хоста используется в таких местах, как приглашение терминала, для идентификации используемого устройства. В этом руководстве мы покажем вам, как изменить имя хоста устройства в Linux.
Устройства взаимодействуют друг с другом по сети, используя IP-адреса. IP-адрес, назначенный конкретному устройству, может меняться в зависимости от ситуации. Поэтому важно использовать запоминающееся имя хоста, которое не меняется в зависимости от ситуации.
Для изменения имени хоста в Linux можно использовать несколько методов, и эти методы можно разделить на две категории: методы интерфейса командной строки (CLI) и методы графического интерфейса пользователя (GUI).
Методы CLI
Чтобы изменить имя хоста устройства в Linux, мы рекомендуем использовать инструменты командной строки. Эти методы универсальны и работают практически в любом дистрибутиве Linux. Кроме того, нет необходимости устанавливать какие-либо дополнительные пакеты.
Проверить имя хоста
Сначала проверьте имя хоста текущей системы следующим образом.
$ hostname
$ hostnamectl
Изменить имя хоста с помощью hostname
Команду hostname
можно использовать для изменения имени хоста системы, используя следующую структуру команд.
$ sudo hostname
Наконец, проверьте изменение.
$ hostname
Обратите внимание, что с помощью этого метода имя хоста изменяется только временно. Если система будет перезагружена, она вернется к исходному имени хоста. Этот метод следует использовать только в том случае, если вы не собираетесь делать постоянное изменение имени хоста.
Измените имя хоста с помощью hostnamectl
Инструмент hostnamectl контролирует имя хоста системы. Этот инструмент может выполнять широкий спектр действий; например, его можно использовать для отображения текущего имени хоста, для изменения имени хоста, для настройки описания среды и для управления системной строкой LOCATION.
Чтобы использовать hostnamectl для изменения имени хоста, выполните следующую команду.
$ sudo hostnamectl set-hostname
Затем проверьте изменение.
$ hostname
Затем нам нужно вручную обновить файл хоста. Для этого откройте файл в текстовом редакторе.
$ sudo vim /etc/hosts
Измените старое имя хоста на новое имя хоста.
$ 127.0.1.1 localhost $ 127.0.1.1
Если вы используете более старый дистрибутив Linux, то после внесения изменений вам может потребоваться выполнить следующую команду.
$ /etc/init.d/hostname restart
Изменить имя хоста (для системы инициализации)
Выделенный файл содержит имя хоста системы. Мы можем вручную обновить файл, чтобы изменить имя хоста. Для этого откройте файл в текстовом редакторе.
$ sudo vim /etc/hostname
На изображении ниже показано старое имя хоста.
Отредактируйте содержимое, чтобы обновить имя хоста.
Сохраните файл и закройте редактор. Чтобы изменения вступили в силу, перезагрузите систему. После перезагрузки системы убедитесь, что действие выполнено успешно, как показано ниже.
$ hostname
GUI методы
В этом разделе мы будем использовать GNOME для изменения имени хоста устройства. Однако вы можете использовать YaST для изменения имени хоста в openSUSE.
Изменить имя хоста в GNOME
GNOME — мощная среда рабочего стола. Если вы используете GNOME, вы можете изменить имя хоста без выполнения каких-либо команд, открыв приложение «Настройки».
На левой панели прокрутите вниз и выберите «О программе». В этом примере имя хоста системы находится в поле «Имя устройства».
Щелкните «Имя устройства», чтобы открыть запрос на изменение имени хоста.
Введите новое имя хоста и нажмите «Переименовать», чтобы сохранить изменения.
Последние мысли
В этом руководстве мы показали вам несколько простых методов изменения имени хоста вашей системы. Убедитесь, что вы используете правильное имя хоста, чтобы помочь идентифицировать систему.
Debian, Linux, Ubuntu
- 20.04.2017
- 17 570
- 1
- 09.07.2022
- 17
- 17
- 0
- Содержание статьи
- Смена имени через команду и файл hostname
- Смена имени через sysctl
- Смена имени через hostnamectl
- Комментарии к статье ( 1 шт )
- Добавить комментарий
Если вам понадобилось изменить имя на вашем сервере/персональном компьютере/еще чем-то, и это что-то работает под Linux, то сделать это можно следующими способами:
Смена имени через команду и файл hostname
Если целью стоит быстрая смена имени, то для этой цели вполне может подойти команда hostname. Просто пишем следующую команду:
hostname НОВОЕИМЯ
где НОВОЕИМЯ — это новое имя. Смена имени устройства произойдет сразу же как только вы выполните эту команду.
Однако, как только произойдет перезагрузка, то имя компьютера сменится на то, что прописано в текстовом файле /etc/hostname. Поэтому, для постоянной смены имени компьютера, нужно отредактировать так же данный файл, изменив его содержимое на новое имя компьютера. После этого, даже после перезагрузки, у компьютера будет нужное вам имя.
Смена имени через sysctl
В новых дистрибутивах Linux, таких как Debian 8, Ubuntu 16 и т. д, быструю смену имени устройства можно осуществить с помощью команды sysctl kernel.hostname
. Достаточно лишь выполнить команду:
sysctl kernel.hostname=НОВОЕИМЯ
где вместо НОВОЕИМЯ нужно указать желаемое имя. После этого нужно будет просто перелогиниться на устройство, и будет отображаться новое имя.
Смена имени через hostnamectl
Начиная с 7 версий таких дистрибутивов как CentOS и Red Hat Enterprise Linux (а так же в некоторых других, например Ubuntu), в них стала возможна смена имени устройства с помощью команды hostnamectl. Для этого данная команда используется следующим образом:
hostnamectl set-hostname НОВОЕИМЯ
конечно же не забыв поменять НОВОЕИМЯ на нужное вам.
После выполнения команды все, что остается, это перезагрузить сервис systemd-hostnamed для применения изменений:
systemctl restart systemd-hostnamed
Проверить, изменилось ли имя или нет, можно с помощью команды hostnamectl status
.
Hostname (имя компьютера, имя хоста) задается во время установки системы Linux. Hostname определяет название компьютера и используется преимущественно для идентификации компьютера в сети. Нельзя назначать два одинаковых Hostname для компьютеров в одной сети.
Просмотр текущего Hostname
Чтобы показать текущий Hostname можно использовать команду hostname без параметров:
hostname
Также Hostname можно отобразить командой hostnamectl:
hostnamectl
Смотрите также: Как узнать имя компьютера (hostname) в Linux.
Как изменить Hostname
Рассмотрим, как изменить Hostname двумя разными способами.
Способ 1. Используем команду hostnamectl
Во многих systemd-based дистрибутивах (например, в Ubuntu Linux) есть утилита hostnamectl.
Воспользуемся командой hostnamectl, чтобы установить новое значение Hostname равным pingvinus. Используется аргумент set-hostname:
sudo hostnamectl set-hostname pingvinus
Способ 2. Редактируем файлы /etc/hostname и /etc/hosts
Еще один способ изменения Hostname — это ручное редактирование файла /etc/hostname и файла /etc/hosts.
Сначала выполните команду (вместо pingvinus укажите свое значение):
sudo hostname pingvinus
Отредактируем файл /etc/hostname для редактирования в редакторе nano, выполняем команду:
sudo nano /etc/hostname
Измените текущее значение в файле на новое. Сохраните изменения и закройте файл. Это можно сделать, нажав Ctrl+C, затем Y и Enter.
Hostname прописывается также в файле /etc/hosts, поэтому нужно изменить его значение в этом файле. Откроем файл:
sudo nano /etc/hosts
Найдите строку вида «127.0.0.1 ваш_hostname» и впишите новое имя хоста. Сохраните изменения и закройте файл.
Проверка результата
Чтобы проверить, изменилось ли значение Hostname, откройте новое окно терминала и введите команду:
hostname
Как временно изменить Hostname
Чтобы изменить Hostname в текущей работающей системе Linux, но до первой перезагрузки, можно использовать просто команду hostname, указав ей новое значение имени хоста:
hostname новое_имя
Лайков: +1
Войдите, чтобы ставить лайкимне нравится
Смотрите также
- Запуск программ через дискретную видео-карту из меню в openSUSE GNOME
- Видео: Установка и настройка VirtualBox для новичков
- Как узнать версию Linux
- Установка ROSA Fresh R11
- Установка и использование PIP в Linux
- Включаем NumLock при старте
- Установка Xfce в Ubuntu и немного впечатлений
- «Пара» слов о Solus 4.2 под KDE
- Буфер обмена в Linux (копирование и вставка)
- Как узнать IP адрес, используя командную строку Linux
В данной статье мы рассмотрим настройку сетевой карты в Alt Linux из-под консоли. Все действия будем выполнять в режиме суперпользователя (из-под root # ).
Чтобы попасть в консоль, необходимо кликнуть правой клавишей по рабочему столу.
Далее выбираем Запустить Терминал (либо и быстрее Ctrl+T), потом Сеанс-Новая консоль с правами root и вводим пароль для суперпользователя. Чтобы попасть в программу Midnight Commander в окне терминала наберите следующую команду:
# mc
Первое, что необходимо сделать — это выяснить имя компьютера
# hostname
alt777.altdomain.local
Для изменения имени компьютера, если вам это необходимо, надо ввести команду:
# hostname новое_имя
Примечание: Эта команда изменит имя компьютера до первой перезагрузки. Чтобы изменить имя компьютера окончательно, откройте файл по адресу /etc/sysconfig/network и найдите там строку HOSTNAME, измените имя компьютера на новое
# mcedit /etc/sysconfig/network
Второе, обнаруживаем сетевые карты вашего компьютера
Теперь выясним, есть ли вообще у нас сетевые в компьютере, введем команду
# lspci -v
Будет выведен длинный список многих ваших устройств, ваша сетевая может выглядетьтак:
02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit Ethernet Adapter (rev b0)
Subsystem: ASUSTeK Computer Inc. Device 8226
Flags: bus master, fast devsel, latency 0, IRQ 219
Memory at fe9c0000 (64-bit, non-prefetchable) [size=256K]
Expansion ROM at fe9a0000 [disabled] [size=128K]
Capabilities: [40] Power Management version 2
Capabilities: [48] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable+
Capabilities: [58] Express Endpoint, MSI 00
Kernel driver in use: atl1
Kernel modules: atl1
Примечание: последняя строка указывает, какой модуль использует для работы ваша сетевая карта, иногда эти сведения бывают полезными.
Если вы хотите увидеть только сетевую карту, примените фильтр grep
# lspci -v | grep Eth
02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit Ethernet Adapter (rev b0)
Узнаем собственно сетевой адрес нашего компьютера, воспользуемся командой ip addr show либо, если еще короче ip a
# ip addr show
1: lo: mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:1e:8c:da:6a:1e brd ff:ff:ff:ff:ff:ff
inet 192.168.0.20/24 brd 192.168.0.255 scope global eth0
lo внутренний адрес и есть всегда, eth0 это имя нашего интерфейса (как правило, системой по умолчанию назначается именно такое имя, но имя может быть и другим), link/ether 00:1e:8c:da:6a:1e мас-адрес
# ip addr show
1: lo: mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:1e:8c:da:6a:1e brd ff:ff:ff:ff:ff:ff
inet 192.168.0.20/24 brd 192.168.0.255 scope global eth0
Команда ip route show (или просто ip r) позволит узнать ваш шлюз
# ip route show
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.20
default via 192.168.0.10 dev eth0
Команда ethtool имя_интерфейса покажет вам некоторые характеристики вашего соединения
# ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: umbg
Wake-on: d
Link detected: yes
Конфигурирование сетевого интерфейса.
Если к вашей сетевой карте подсоединен ADSL-модем, он может иметь на своем борту встроенный dhcp-сервер, и ваш компьютер может получить настройки сети оттуда, в этом случае вам также вряд ли стоит изменять настройки вашего адаптера.
Но представим, что вам все-таки нужно настроить вашу сетевую карту на статический адрес.
Отключим пока нашу сетевую карту
# ip link set eth0 down
Настройки сети в находятся в папке /etc/net/ifaces, там, если у вас одна сетевая карта, должно быть четыре папки
/default
/eth0
/local
/unknown
Нас интересует папка eth0 (там находятся файлы настройки нашей сетевой карты с именем интерфейса eth0), в которой будет лежать один файл options, откроем его для редактирования
# mcedit /etc/net/ifaces/eth0/options
Откроется файл и в общем случае мы увидим строки
TYPE=eth
DISABLED=no
NM_CONTROLLED=no
BOOTPROTO=dhcp
Меняем в последней строке на BOOTPROTO=static
TYPE=eth
DISABLED=no
NM_CONTROLLED=no
BOOTPROTO=static
сохраняем F2, выходим F10.Теперь нам нужно создать файл, в котором мы запишем наш адрес и маску сети, пусть для примера это будет 192.168.0.48/255.255.255.0, создаем пустой файл ipv4address в каталоге /etc/net/ifaces/eth0/
# echo -n>/etc/net/ifaces/eth0/ipv4address
вписываем ip/маску (/24 это 255.255.255.0)
# echo 192.168.0.48/24>/etc/net/ifaces/eth0/ipv4address
Создадим файл, в который поместим адрес нашего шлюза
# echo -n>/etc/net/ifaces/eth0/ipv4route
# echo default via 192.168.0.10>/etc/net/ifaces/eth0/ipv4route
Включаем интерфейс
# ip link set eth0 up
Чтобы изменения в настройках ip, маски и шлюза вступили в силу, следует перезапустить сеть (предыдущую команду в данном случае можно не делать, после перезапуска сети сетевая карта будет включена, просто показано как это делать)
# service network restart
Также сеть можно перезапустить командой
# /etc/init.d/network restart
Плюс к restart есть команды stop и start, которые соответственно гасят всю сеть и включают ее.
Файл с описанием dns-сервера/etc/resolv.conf у вас по идее должен быть, но если нет, то создадим его и запишем наш, а точнее ваш, dns-сервер (например 192.168.0.9)
# echo -n>/etc/resolv.conf
# echo nameserver 192.168.0.9>/etc/resolv.conf
/etc/chroot.d/resolv.all
Последняя команда нужна для того, чтобы система увидела изменения в настройках dns без перезагрузки компьютера.
Также вы можете изменить IP, маску и шлюз командами
# ip addr add 192.168.0.XX/24 dev eth0
# ip route add dev eth0 XX.XX.XX.XX
Однако эти команды меняют ip и шлюз до ближайшей перезагрузки, для постоянного изменения этих параметров нужно править файлы (именно эти файлы и отвечают за настройки вашей сетевой карты):
/etc/net/ifaces/eth0/ipv4address
/etc/net/ifaces/eth0/ipv4route
/etc/net/ifaces/eth0/options
внося новые значения и делая затем service network restart
Если вы решите дать более информативное название, чем eth0 вашей сетевой (а в некоторых случаях это даже необходимо) вам нужно выполнить следующие действия, отключаем ненужную сетевую:
# ip link set eth0 down
Меняем имя
# ip link set eth0 name local
Теперь нам нужно сменить название папки с настройками бывшей eth0 на новое название
# mv /etc/net/ifaces/eth1 /etc/net/ifaces/local
Перезапускаем сеть.
Иногда, если в системе две сетевые карты, может возникать следующая проблема: может менятся очередность их загрузки, что влечет за собой смену соответствия имени интерфейса физической сетевой карте, таким образом карты становятся подключены не к той сети, к которой должны.
Для жесткого закрепления порядка загрузки наших сетевых карт используем udev, который управляет загрузкой модулей устройств, загружает он их все одновременно, поэтому имена карт могут сменится, но у него существует ряд правил, по которым загружается система, и вот мы создадим правило для наших двух сетевых карт
# echo -n>/etc/udev/rules.d/10-network.rules
# mcedit /etc/udev/rules.d/10-network.rules
SUBSYSTEM==»net», ATTRS{address}==»00:1e:8c:da:6a:1e», NAME=»prov»
SUBSYSTEM==»net», ATTRS{address}==»00:14:d1:13:8b:96″, NAME=»local»
где ATTRS{address} это mac-адрес вашей сетевой, для его получения для каждой сетевой наберите
# udevadm info -a -p /sys/class/net/имя_интерфейса | grep address
Обратите внимание на регистр — мас-адрес пишем маленькими буквами.
Сохраняемся, таким образом первым всегда будет грузиться первая карта в списке и получать нужное имя, в данном случае prov.
Поделиться:
Оставьте свой комментарий!
Комментарий в ВКонтакте
Добавить комментарий
< Предыдущая | Следующая > |
---|
Похожие статьи:
Имя компьютера (или имя хоста – Hostname) задается в процессе установки операционной системы Linux. Это имя необходимо для того, чтобы идентифицировать устройство в локальной сети. Имя хоста также будет указано в терминале перед вводом команды. Если изначальное имя компьютера вас не устраивает, его можно изменить. Графический интерфейс – не помощник в этом деле, поэтому придется обратиться к терминалу.
Несколько важных рекомендации по выбору hostname:
- Выбирайте такое имя компьютера, длина которого не превысит 69 символов. Нижний порог – 2 символа. Имя должно быть составлено из букв английского алфавита (от a до z), из цифр от 0 до 9, из символов «.» и «-».
- Чтобы избежать путаницы и любых вытекающих из неё проблем, не стоит давать хостам повторяющиеся имена. Придумайте абсолютно новое имя компьютера, которое легко отличить и запомнить.
Содержание
- 1 Как задать новое имя хоста в Linux
- 1.1 Способ 1
- 1.2 Способ 2
- 1.2.1 Заключение
Как задать новое имя хоста в Linux
Сначала узнаем текущее имя компьютера в операционной системе Линукс, так называемый hostname.
$ hostnamectl
Или
$ hostname
Дополнительных параметров при вводе не требуется. Далее можно приступать к изменению данных. Это можно проделать посредством нескольких альтернативных способов.
Способ 1
К примеру, пользователь хочет задать имя «venom». В таком случае нужно задать в терминале команду следующего вида:
$ sudo hostnamectl set-hostname venom
Новое значения успешно задано!
Способ 2
Вводим команду hostname, затем новые имя компьютера.
$ sudo hostname venom
Далее выполните редактирование файла:
$ sudo nano /etc/hostname
Найдите текущее имя компьютера и измените его на актуальный вариант. Сохраните изменения и закройте данный файл. Указанные действия легко выполнить посредством нехитрой комбинации клавиш. А именно:
Ctrl+C, после чего следует нажать Y и подтвердить своё действие нажатием на клавишу Enter. Так как имя компьютера прописывается в разных файлах, следует позаботиться о том, что новое значение появилось везде. Для этого редактируем еще один файл:
$ sudo nano /etc/hosts
Найдите текущее значение и измените его. Сохраните и закройте файл так, как было прописано выше.
А теперь нужно проделать завершающий штрих – проверить, какое имя хоста отображается в системе, и получилось ли его изменить. Задайте в терминале:
$ hostname
После выполнения перезагрузки системы можно повторить это действие.
ВАЖНО! Иногда случается так, что пользователь видит старое имя хоста после перезагрузки своего компьютера. Это значит, что новое имя не получилось задать. Но не стоит опускать руки, ведь это лишь следствие определенной причины.
Зачастую такое случается из-за NetworkManager. Если эта программа не является для вас незаменимым инструментом для работы, её можно удалить. После этого придется еще раз проделать манипуляции по изменению hostname. Но на этот раз всё должно получиться – помеха ликвидирована.
Заключение
В данном материале предложено несколько простых и рабочих способов, как изменить имя хоста в дистрибутиве Linux. Выберите подходящий вариант, придумайте имя в соответствии с указанными рекомендациями, и внесите нужные коррективы.