Introducción
Uno de los mensajes más molestos que solemos encontrar los administradores de sistemas y usuarios avanzados en distribuciones basadas en Debian y Ubuntu es la advertencia sudo: unable to resolve host [nombre-de-host]. Aunque este pequeño fallo no impide la ejecución de los comandos con privilegios elevados, interrumpe el flujo de trabajo y genera logs innecesarios. Afortunadamente, su solución es bastante directa y requiere pocos minutos.
¿Cuáles son las causas de este error en Linux?
Este problema ocurre principalmente por una discrepancia entre el nombre de host actual del equipo y la configuración local de red almacenada en los archivos del sistema. Las causas más comunes son:
- Se cambió el nombre del equipo (hostname) recientemente sin actualizar los registros locales.
- El archivo de configuración de red local ha sufrido modificaciones erróneas o se eliminó la entrada por defecto.
- Problemas temporales en la lectura del archivo de hosts durante el arranque del sistema operativo.
Método 1: Actualizar el archivo /etc/hosts
La forma más efectiva y recomendada de solucionar este inconveniente es asegurarnos de que nuestro nombre de host actual esté correctamente registrado en el archivo /etc/hosts.
- Abre tu terminal favorita en Linux.
- Descubre tu nombre de host actual ejecutando el comando:
hostname. - Abre el archivo de configuración con un editor de texto con privilegios de superusuario:
sudo nano /etc/hosts. - Localiza la línea que comienza con
127.0.1.1o añade una nueva línea si no existe, asegurándote de que coincida con tu nombre de host actual. Ejemplo:127.0.1.1 tu-nombre-de-host - Guarda los cambios presionando
Ctrl + O, luegoEnter, y sal del editor conCtrl + X.
Método 2: Verificar y actualizar el archivo /etc/hostname
Si el archivo hosts está correcto pero el error persiste, es probable que exista una incongruencia directa en el archivo que define la identidad de la máquina.
- Comprueba el contenido del archivo ejecutando:
cat /etc/hostname. - Abre el archivo para su edición con:
sudo nano /etc/hostname. - Asegúrate de que el nombre escrito sea exactamente el mismo que deseas utilizar y que hayas configurado en el archivo
/etc/hosts. - Reinicia los servicios de red o reinicia por completo tu sistema Linux para aplicar los cambios de manera definitiva.