Skip to main content

Cambio de hostname permanentemente

Introducción

Algunas veces nos equivocamos, no teníamos el hostname definitivo o bien hemos instalado un VPS desde una plantilla, y necesitamos cambiar de forma permanente el hostname.

El fichero habitual que controla el hostname habitualmente es /etc/hostname pero puedo y suele, haber más ficheros implicados

Conocer el hostname en el shell

Aquí tenemos el comando hostnamectl para ver los datos

# hostnamectl
   Static hostname: template2004
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 1169e389ab834b238027f744b7cf1ae6
           Boot ID: e47b8b52d7fe46bf9659f9758d475a73
    Virtualization: kvm
  Operating System: Ubuntu 20.04.2 LTS
            Kernel: Linux 5.4.0-73-generic
      Architecture: x86-64

Y también podemos ver el propio fichero

# cat /etc/hostname
template2004

Cambiar el hostname permanentemente en Ubuntu 20.04 LTS

Ejecutar hostname con opciones sudo hostnamectl set-hostname newNameHere

Editar el fichero /etc/hosts reemplazando cualquier concurrencia del viejo nombre.

También podemos utilizar sed pero quizás sea mejor hacerlo manualmente con nuestro editor favorito.

sed -i -e ‘s/viejo_nombre/nuevo_nombre/g’ /etc/hosts

Cambiar el hostname sin reiniciar en Ubuntu 20.04 LTS

El procedimiento anterior es válido. Lo unico es que en el terminal seguiremos viendo el nombre antiguo en lugar del actual que podemos verificar con

# hostnamectl
Static hostname: kvm300
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 1169e389ab834b238027f744b7cf1ae6
           Boot ID: e47b8b52d7fe46bf9659f9758d475a73
    Virtualization: kvm
  Operating System: Ubuntu 20.04.2 LTS
            Kernel: Linux 5.4.0-73-generic
      Architecture: x86-64

Para ver el cambio en el indicador del terminal, debemos salir de nuestra shell o hacer un reload de nuestro intérprete de comandos.

Otros ficheros

Si tenemos instalado Postfix u otros demonios que requieren el uso de su propia variable o línea con el nombre del host, puede ser interesante ejecutar el comando de abajo para ver si existe algún otro fichero que debemos corregir.

# find /etc/ -type f -exec grep -il 'template2004' {} \;
/etc/ssh/ssh_host_rsa_key.pub
/etc/ssh/ssh_host_dsa_key.pub
/etc/ssh/ssh_host_ecdsa_key.pub
/etc/ssh/ssh_host_ed25519_key.pub
/etc/postfix/main.cf
/etc/aliases.db

Algunos de ellos, requerirán un reinicio o la aplicación de algún comando para actualizarse.

Aviso

Esta documentación y su contenido, no implica que funcione en tu caso o determinados casos. También implica que tienes conocimientos sobre lo que trata, y que en cualquier caso tienes copias de seguridad. El contenido el contenido se entrega, tal y como está, sin que ello implique ningún obligación ni responsabilidad por parte de Castris

Si necesitas soporte profesional puedes contratar con Castris soporte profesional.