He escuchado que cambiar el nombre de host en las nuevas versiones de Fedora se hace con hostnamectl
comando. Además, recientemente (y con éxito) cambié mi nombre de host en Arch Linux con este método. Sin embargo, al ejecutar:
[root@localhost ~]# hostnamectl set-hostname --static paragon.localdomain [root@localhost ~]# hostnamectl set-hostname --transient paragon.localdomain [root@localhost ~]# hostnamectl set-hostname --pretty paragon.localdomain
Los cambios no se conservan después de un reinicio (al contrario de lo que muchas personas afirman que sí). ¿Qué ocurre?
- Realmente no quiero editar
/etc/hostname
manualmente.
También debo señalar que este es un fedora completamente estándar. Ni siquiera he logrado instalar mis aplicaciones principales todavía.
Comentarios
Respuesta
El comando para establecer el nombre de host es definitivamente, hostnamectl
.
root ~ # hostnamectl set-hostname --static "YOUR-HOSTNAME-HERE"
Aquí hay una fuente adicional que describe esta funcionalidad un poco más, titulada: Configurando correctamente el nombre de host – Fedora 20 en Amazon EC2 .
Además, la página de manual para hostnamectl
:
HOSTNAMECTL(1) hostnamectl HOSTNAMECTL(1) NAME hostnamectl - Control the system hostname SYNOPSIS hostnamectl [OPTIONS...] {COMMAND} DESCRIPTION hostnamectl may be used to query and change the system hostname and related settings. This tool distinguishes three different hostnames: the high-level "pretty" hostname which might include all kinds of special characters (e.g. "Lennart"s Laptop"), the static hostname which is used to initialize the kernel hostname at boot (e.g. "lennarts-laptop"), and the transient hostname which is a default received from network configuration. If a static hostname is set, and is valid (something other than localhost), then the transient hostname is not used. Note that the pretty hostname has little restrictions on the characters used, while the static and transient hostnames are limited to the usually accepted characters of Internet domain names. The static hostname is stored in /etc/hostname, see hostname(5) for more information. The pretty hostname, chassis type, and icon name are stored in /etc/machine-info, see machine-info(5). Use systemd-firstboot(1) to initialize the system host name for mounted (but not booted) system images.
Hay un error en Fedora 21 donde SELinux impide el acceso hostnamectl , que se encuentra aquí, titulado: Error 1133368 – SELinux impide que systemd-hostnam «desvincule» accesos en el nombre de host del archivo .
Este error parece estar relacionado. Hay un problema con los contextos SELinux que no se aplican correctamente al archivo /etc/hostname
durante la instalación. Esto se manifiesta en que la herramienta hostnamectl
no puede manipular el archivo /etc/hostname
. Ese mismo hilo ofreció esta solución alternativa:
$sudo restorecon -v /etc/hostname
NOTA: Que se aplicaron parches a Anaconda (la herramienta de instalación) para que este problema desaparezca en el futuro para los nuevos usuarios.
Respuesta
La causa probable de esto es su cliente dhcp. Si está usando dhcpcd, que es común, la solución es agregar la siguiente línea a /etc/dhcpcd.conf
:
nohook hostname
Esto evita que dhcpcd llame al script que cambia el nombre de host de su sistema.
Por defecto, dhcpcd ejecuta todos los hooks presentes /lib/dhcpcd/dhcpcd-run-hooks
(la ruta puede diferir en su sistema). El uso de nohook
deshabilita algunos específicos.
Comentarios
- Tanto para mi 21 como para rawhide se instala,
/etc/dhcpd.conf
no existe. Además,systemctl status dhcpcd
devuelvenot-found (Reason: No such file or directory)
hostnamectl
comandos? El enlace al error bugzilla que algo publicó parece ser tu mejor pista.hostnamectl
no funcionan, pero ahora funcionan.