Я слышал, что изменение имени хоста в новых версиях fedora выполняется hostnamectl
командой. Кроме того, я недавно (и успешно) изменил свое имя хоста в Arch Linux с помощью этого метода. Однако при запуске:
[root@localhost ~]# hostnamectl set-hostname --static paragon.localdomain
[root@localhost ~]# hostnamectl set-hostname --transient paragon.localdomain
[root@localhost ~]# hostnamectl set-hostname --pretty paragon.localdomain
Изменения не сохраняются после перезагрузки (вопреки утверждениям многих людей, что это делает). Что не так?
- Я действительно не хочу редактировать
/etc/hostname
вручную.
Следует также отметить, что это полностью стоковая федора. Я даже не удосужился установить свои основные приложения.
hostnamectl
командами? Ссылка на ошибку bugzilla, которую что-то опубликовало, кажется вам лучшим лидером.hostnamectl
команды не работали, но теперь они работают.Ответы:
Команда для установки имени хоста определенно
hostnamectl
.Вот еще один источник, который описывает эту функцию немного под названием: Правильная установка имени хоста - Fedora 20 на Amazon EC2 .
Дополнительно справочная страница для
hostnamectl
:В Fedora 21 есть ошибка, из-за которой SELinux запрещает доступ hostnamectl, найденный здесь, под названием: Ошибка 1133368 - SELinux препятствует доступу systemd-hostnam к unlink для имени файла .
Эта ошибка, кажется, связана. Существует проблема с неправильным применением контекстов SELinux к файлу
/etc/hostname
при установке. Это проявляется в том, что инструментhostnamectl
не может манипулировать файлом/etc/hostname
. Тот же поток предложил этот обходной путь:ПРИМЕЧАНИЕ. Эти исправления были применены к Anaconda (инструменту установки), чтобы эта проблема в будущем исчезла для новых пользователей.
источник
Вероятной причиной этого является ваш клиент DHCP. Если вы используете dhcpcd, что является распространенным решением, добавьте следующую строку
/etc/dhcpcd.conf
:Это не позволяет dhcpcd вызывать скрипт, который меняет имя вашего системного хоста.
По умолчанию dhcpcd запускает все имеющиеся хуки
/lib/dhcpcd/dhcpcd-run-hooks
(путь может отличаться в вашей системе). Использованиеnohook
отключает определенные.источник
/etc/dhcpd.conf
не существует. Кроме того,systemctl status dhcpcd
возвращаетсяnot-found (Reason: No such file or directory)