¿Cómo cambio el nombre de host sin reiniciar?

Quiero cambiar el nombre de host del sistema operativo, pero no quiero reiniciar.

He editado /etc/hostname pero requiere un reinicio para implementarse. Cómo evitar esto?

Es fácil. Simplemente haga clic en el ícono de ajustes (ubicado en la esquina superior derecha de la pantalla), abra la pantalla "Acerca de esta computadora" (ubicada en el ícono de ajustes ) y edite "Nombre del dispositivo".

O, en una terminal, use el siguiente comando:

sudo hostname your-new-name

Esto establecerá el nombre de host en su-nuevo-nombre hasta que reinicie. Ver man hostname y ¿Cómo cambio el nombre del equipo? para más información. No use _ en tu nombre.

Nota

Después de reiniciar los cambios en /etc/hostname se utilizará, por lo que (como dijiste en la pregunta), aún debes usar

sudo -H gedit /etc/hostname

(o algún otro editor) para que el archivo contenga el nombre de host.

Para comprobar que el archivo está configurado correctamente, ejecute:

sudo service hostname start

También deberías editar /etc/hosts y cambia la línea que dice:

127.0.1.1     your-old-hostname

de modo que ahora contenga su nuevo nombre de host. (Esto es necesario, de lo contrario, muchos comandos dejarán de funcionar.)

Ubuntu 13.04 en adelante

El hostnamectl el comando forma parte de la instalación predeterminada en las ediciones de escritorio y de servidor.

Combina la configuración del nombre de host a través del hostname comando y edición /etc/hostname. Además de establecer el nombre de host estático, puede establecer el nombre de host "bonito", que no se usa en Ubuntu. Desafortunadamente, la edición /etc/hosts todavía tiene que hacerse por separado.

hostnamectl set-hostname new-hostname

Este comando es parte de la systemd-services paquete (que, a partir de Ubuntu 14.04, también incluye el timedatectl y localectl comando). A medida que Ubuntu migra a systemd esta herramienta es el futuro.

Sin Reinicio

Cambiar el nombre de host o el nombre de la computadora en ubuntu sin reinicio

Edite /etc / hostname y cambie al nuevo valor,

nano /etc/hostname 

Edite /etc / hosts y cambie la antigua línea 127.0.1.1 a su nuevo nombre de host

127.0.0.1   localhost127.0.1.1   ubuntu.local    ubuntu   # change to your new hostname/fqdn

Nota> : lo he leído en un foro, edite /etc / hosts y cambie la antigua línea 127.0.1.1 a su nuevo nombre de host (si no hace esto, ya no podrá usar sudo. Si ya lo ha hecho, presione ESC en el menú de grub, elija recuperación y edite su archivo host a la configuración correcta)

Ahora, después de reiniciar, su nombre de host será el nuevo que eligió

Sin Reinicio

Cambiar sin reiniciar, puedes usar hostname.sh después de editar /etc / hostname.Debe mantener ambos nombres de host en /etc / hosts (127.0.0.1 newhost oldhost) hasta que ejecute el siguiente comando:

sudo service hostname start

Nota : Comando anterior para activar el cambio. El nombre de host guardado en este archivo (/etc/hostname) se conservará al reiniciar el sistema (y se configurará con el mismo servicio).

El nombre predeterminado se estableció cuando estaba instalando Ubuntu. Puede cambiarlo fácilmente a lo que desee tanto en el escritorio como en el servidor editando los hosts y los archivos de nombre de host. A continuación se muestra cómo:

  1. Pulsar CtrlAltt en el teclado para abrir la terminal. Cuando se abra, ejecute el siguiente comando: sudo hostname NEW_NAME_HERE

Esto cambiará el nombre de host hasta el próximo reinicio. El cambio no será visible de inmediato en su terminal actual. Inicie un nuevo terminal para ver el nuevo nombre de host.

  1. Para cambiar el nombre de forma permanente, ejecute el comando para editar los archivos host:

    sudo -H gedit /etc/hostname y sudo -H gedit /etc/hosts

Para Ubuntu Server sin GUI, ejecute sudo vi /etc/hostname y sudo vi /etc/hosts y edítalos uno por uno one.In ambos archivos, cambie el nombre a lo que desee y guárdelos.

Finalmente, reinicie su computadora para aplicar los cambios.

Cloud-init (Ubuntu 18+) persistencia de nombres de host

Mientras que los enfoques anteriores (hostnamectl, etc/hostname, etc.) funcionan para el cambio inmediato de nombre de host, con la llegada de inicio en la nube - que puede controlar la configuración del nombre de host, entre muchas otras cosas. Por lo tanto, no se pegará después de un reinicio si cloud-init está instalado. Si desea que el cambio permanezca después de un reinicio, deberá editar el archivos de configuración de cloud-init, deshabilite los iniciadores en la nube módulo de configuración/actualización de nombre de host:

sudo sed 's/preserve_hostname: false/preserve_hostname: true/' /etc/cloud/cloud.cfg

o deshabilite cloud-init por completo:

sudo touch /etc/cloud/cloud-init.disabled

Aquí hay un script que cambia el nombre de host de la manera prescrita. Asegura que no solo sudo pero también las aplicaciones X11 continúan funcionando sin necesidad de reiniciar.

Uso: sudo ./change_hostname.sh new-hostname

#!/usr/bin/env bashNEW_HOSTNAME=$1echo $NEW_HOSTNAME > /proc/sys/kernel/hostnamesed -i 's/127.0.1.1.*/127.0.1.1\t'"$NEW_HOSTNAME"'/g' /etc/hostsecho $NEW_HOSTNAME > /etc/hostnameservice hostname startsu $SUDO_USER -c "xauth add $(xauth list | sed 's/^.*\//'"$NEW_HOSTNAME"'\//g' | awk 'NR==1 {sub($1,"\"&\""); print}')"

Sin reinicio:

  1. cambiar nombre de host en /etc/hostname
  2. actualizar /etc/hosts consecuentemente
  3. sudo sysctl kernel.hostname=mynew.local.host

Verifique su nombre de host actual con hostname -f

Para obtener su nombre de host actual:

cat /etc/hostname

Esto se puede cambiar en cualquier editor de texto. También deberá actualizar la entrada que no sea localhost con 127.0.0.1 en /etc / hosts.

Ubuntu 16.04

Solución basada en respuesta de la Comunidad DigitalOcean.

Editar hosts file.

$ sudo nano /etc/hosts

Reemplazar nombre antiguo con una nueva.

127.0.0.1 localhost newname

Configure un nuevo nombre de host.

$ sudo hostnamectl set-hostname newname

  1. Reemplace el contenido de /etc/hostname con el nombre de host deseado (puede editar con sudo nano /etc/hostname)
  2. En /etc/hosts, reemplace la entrada junto a 127.0.1.1 con el nombre de host deseado (puede editar con sudo nano /etc/hosts)
  3. Ejecutar sudo service hostname restart; sudo service networking restart

Advertencia: no funcionará con Ubuntu 18+ que ejecuta cloud-init de forma predeterminada, que controla el nombre de host en el arranque.

@nslntmnx, Gracias!