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

454

Quiero cambiar el nombre de host del SO, pero no quiero reiniciarlo.

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

    
pregunta Deepak Rajput 14.12.2011 - 09:56

14 respuestas

590

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

O, en un terminal, use el siguiente comando:

sudo hostname your-new-name

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

Nota

Después de reiniciar, se usarán los cambios en /etc/hostname , entonces (como dijiste en la pregunta), todavía deberías usar

sudo -H gedit /etc/hostname

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

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

sudo service hostname start

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

127.0.1.1     your-old-hostname

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

    
respondido por el jasperado 14.12.2011 - 11:27
250

Ubuntu 13.04 en adelante

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

Combina la configuración del nombre de host a través del comando hostname y la edición de /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 de /etc/hosts todavía tiene que hacerse por separado.

hostnamectl set-hostname new-hostname

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

    
respondido por el muru 27.08.2014 - 23:03
58

Sin reinicio

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

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   localhost
127.0.1.1   ubuntu.local    ubuntu   # change to your new hostname/fqdn

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

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

Sin reinicio

Para cambiar sin un reinicio , puede usar hostname.sh después de editar / etc / hostname. Debe mantener sus dos 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á en el reinicio del sistema (y se configurará con el mismo servicio).

    
respondido por el One Zero 13.02.2012 - 21:16
42

El nombre predeterminado se estableció cuando estaba instalando Ubuntu. Puedes cambiarlo fácilmente a lo que quieras en Desktop & amp; Servidor editando los hosts y los archivos de nombre de host. Debajo está cómo:

  1. Presione Ctrl Alt t en el teclado para abrir el 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 inmediatamente en su terminal actual. Inicie una nueva terminal para ver el nuevo nombre de host.

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

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

Para el servidor Ubuntu sin una GUI, ejecute sudo vi /etc/hostname y sudo vi /etc/hosts y edítelos uno por uno. En ambos archivos, cambie el nombre a lo que desee y guárdelos.

Finalmente, reinicie su computadora para aplicar los cambios.

    
respondido por el Mohsen Gh. 01.11.2014 - 23:47
16

Aquí hay una secuencia de comandos que cambia el nombre de host de la manera prescrita. Garantiza que no solo sudo sino también las aplicaciones X11 continúen funcionando sin necesidad de reiniciar.

Uso: sudo ./change_hostname.sh new-hostname

#!/usr/bin/env bash
NEW_HOSTNAME=
echo $NEW_HOSTNAME > /proc/sys/kernel/hostname
sed -i 's/127.0.1.1.*/127.0.1.1\t'"$NEW_HOSTNAME"'/g' /etc/hosts
echo $NEW_HOSTNAME > /etc/hostname
service hostname start
su $SUDO_USER -c "xauth add $(xauth list | sed 's/^.*\//'"$NEW_HOSTNAME"'\//g' | awk 'NR==1 {sub(,"\"&\""); print}')"
    
respondido por el Lucas 07.03.2014 - 07:30
11

Sin reinicio:

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

Verifique su nombre de host actual con hostname -f

    
respondido por el Tombart 31.03.2015 - 16:46
7

Para obtener su nombre de host actual:

cat /etc/hostname

Esto se puede cambiar en cualquier editor de texto. También necesitaría actualizar la entrada que no sea localhost contra 127.0.0.1 en / etc / hosts.

    
respondido por el tagMacher 14.09.2014 - 03:12
4
  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. Ejecute sudo service hostname restart; sudo service networking restart
respondido por el George 08.05.2015 - 20:26
4

Ubuntu 16.04

Esto es sin reiniciar y sin ningún uso de terminal.

  • Vaya a Configuración del sistema - & gt; Detalles .
  • Ahí está. Además del nombre del dispositivo , hay un cuadro de texto.
  • Editar cuadro de texto y cerrar ventana.

Abrir terminal. Vea por ustedes mismos.

(Para versiones anteriores, el cuadro de texto no es editable).

    
respondido por el shonku 13.03.2017 - 19:26
3
sudo hostname your-new-name
sudo /etc/init.d/networking restart

Eso debería hacer el trabajo, creo

    
respondido por el OmarQunsul 20.12.2013 - 13:43
3

He leído las respuestas, pero creo que probablemente esté buscando esto:

Simplemente ejecuta estos dos comandos después de editar el archivo /etc/hostname .

$ sudo service hostname restart
$ exec bash

Eso es todo. No es necesario reiniciar. También asegúrese de cambiar el nombre en /etc/hosts file.

    
respondido por el Raman 28.09.2016 - 20:55
3

La respuesta clásica a la pregunta original del póster es que, una vez que haya editado /etc/hostname , haga que se aplique sin reiniciar ejecutando hostname (1) con la opción -F ( --file ) como raíz:

sudo hostname -F /etc/hostname

El nombre de host (5) manejo con /etc/hostname y dicho programa tiene ha sido el mismo en Debian y sus derivados durante más de veinte años, y el paquete que lo proporciona ha sido etiquetado encial y required , y IIRC los guiones init han usado literalmente lo mismo durante décadas ( /etc/init/hostname.conf todavía lo contiene), así que tengo que decir que estoy realmente desconcertado por el hecho de que ya nadie haya mencionado esto:)

    
respondido por el Josip Rodin 14.10.2017 - 19:55
1

Ubuntu 16.04

Solución basada en responde desde la comunidad DigitalOcean.

Editar hosts archivo.

$ sudo nano /etc/hosts

Reemplace oldname con uno nuevo.

127.0.0.1 localhost newname

Configurar nuevo nombre de host.

$ sudo hostnamectl set-hostname newname

    
respondido por el Jekis 12.01.2018 - 07:29
1

Cloud-init (Ubuntu 18+) persistencia del nombre de host

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

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

o deshabilitar Cloud-init por completo:

sudo touch /etc/cloud/cloud-init.disabled
    
respondido por el Pierz 18.06.2018 - 16:20

Lea otras preguntas en las etiquetas