Cómo Solucionar el Error Resolv.conf Read-Only en Linux Paso a Paso

Cómo Solucionar el Error Resolv.conf Read-Only en Linux Paso a Paso
Anuncio relacionado

Introducción al problema de resolv.conf en modo de solo lectura

Uno de los dolores de cabeza más comunes para los administradores de sistemas y usuarios avanzados de Linux ocurre al intentar cambiar los servidores DNS editando el archivo /etc/resolv.conf, solo para descubrir que cualquier cambio se deshace al reiniciar o que el sistema arroja un error de archivo de solo lectura. Esto suele suceder porque gestores de red modernos como NetworkManager o systemd-resolved sobrescriben este archivo de forma automática.

Causas principales por las que resolv.conf es de solo lectura

  • El archivo es un enlace simbólico apuntando a un servicio de gestión de red dinámico.
  • El gestor de red (NetworkManager) sobrescribe el archivo en cada arranque o reconexión.
  • Los atributos inmutables del sistema de archivos han sido activados explícitamente sobre el archivo.

Método 1: Desactivar la sobrescritura mediante NetworkManager

Si tu distribución de Linux utiliza NetworkManager, la mejor forma de evitar que el archivo sea modificado automáticamente es configurarlo correctamente desde su archivo de configuración principal.

  1. Abre el archivo de configuración de NetworkManager con tu editor favorito: sudo nano /etc/NetworkManager/NetworkManager.conf
  2. Busca la sección [main] y añade la siguiente línea: dns=none
  3. Guarda los cambios presionando Ctrl + O y sal con Ctrl + X.
  4. Reinicia el servicio de red para aplicar los cambios: sudo systemctl restart NetworkManager

Método 2: Eliminar el atributo inmutable con chattr

En ocasiones, el archivo puede tener un bloqueo a nivel de sistema de archivos que impide cualquier modificación, incluso por parte del usuario root.

  1. Comprueba si el archivo tiene el atributo inmutable ejecutando: lsattr /etc/resolv.conf
  2. Si en la salida aparece la letra 'i', remueve el atributo ejecutando: sudo chattr -i /etc/resolv.conf
  3. Ahora podrás editar el archivo manualmente con tu editor de texto preferido e insertar tus servidores DNS estáticos (por ejemplo, nameserver 8.8.8.8).

Método 3: Configurar systemd-resolved correctamente

En distribuciones basadas en Ubuntu o Debian recientes, systemd-resolved gestiona las resoluciones DNS mediante un enlace simbólico.

    • Rompe el enlace simbólico existente si deseas control total: sudo rm /etc/resolv.conf
    • Crea un archivo nuevo y añade tus servidores DNS de forma manual: echo 'nameserver 1.1.1.1' | sudo tee /etc/resolv.conf
Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
Hardware

Cómo Solucionar el Problema de Pitidos de la BIOS al Encender el PC de Forma Definitiva

Los pitidos al encender el ordenador indican un fallo crítico en el hardware. Aprende a interpretar los códigos de la BIOS y soluciona el problema fácilmente.

Leer guía completa →
Desarrollo

Cómo Solucionar el Error CORS en JavaScript de Forma Definitiva

Descubre por qué ocurre el error CORS en tus aplicaciones web y aplica las mejores soluciones para corregirlo rápidamente en tu entorno de desarrollo.

Leer guía completa →
PrestaShop

Cómo Solucionar el Error 500 en PrestaShop de Forma Definitiva

¿Tu tienda PrestaShop muestra el temido Error 500 y no sabes qué hacer? Descubre cómo identificar el origen del fallo y aplicar la solución definitiva.

Leer guía completa →