Saltar al contenido

¿Cómo configurar `chattr +i` para mi `/etc/resolv.conf`?

Es imprescindible interpretar el código correctamente antes de aplicarlo a tu proyecto si ttienes algo que aportar puedes dejarlo en los comentarios.

Solución:

Su /etc/resolv.conf es probablemente un enlace simbólico. Consulte esta explicación para obtener más información.

Tu podrías intentar:

chattr +i "$(realpath /etc/resolv.conf)"

¿El punto de montaje raíz admite Listas de control de acceso (acl)
o Atributos extendidos?

Compruébelo a través de:

findmnt -fn / | grep -E "acl|user_xattr" || echo "acl or user_xattr mount option not set for mountpoint /"

¿Es su partición raíz del tipo ‘VFAT’? Creo que ‘VFAT’ no es compatible ACL.

Compruébelo a través de:

findmnt -fn / | grep vfat

O tal vez su directorio de destino de enlace simbólico es un tmpfs?
ACL se pierden en tmpfs

Pruébalo:

findmnt -fn $(dirname $(realpath /etc/resolv.conf)) | grep tmpfs && echo $(dirname $(realpath /etc/resolv.conf)) is tmpfs

salud

Como viste, parece que no puedes configurar chattr attributes en enlaces simbólicos. Además, no son compatibles con tmpfs. La página del manual para chattr menciona que

No todas las banderas son compatibles o utilizadas por todos los sistemas de archivos; consulte las páginas del manual específicas del sistema de archivos, como btrfs(5), ext4(5)y xfs(5) para obtener más detalles específicos del sistema de archivos.

Y no hay mención de la bandera inmutable o chattr en tmpfs(5).

ACL o extendidas attributes no tienes nada que ver con esto, chattr attributes se almacenan directamente en el inodo, como se ve para ext4 en esta tabla de la estructura del inodo.


Deberá encontrar alguna otra forma de evitar que sus programas lo modifiquen. systemd-resolved debería ser lo suficientemente inteligente como para dejar el archivo solo si reemplaza el enlace simbólico con un static expediente:

Tres modos de manejo /etc/resolv.conf (ver resolv.conf(5)) son compatibles:

· Alternativamente, /etc/resolv.conf puede ser administrado por otros paquetes, en cuyo caso systemd-resolved lo leerá para los datos de configuración de DNS. En este modo de funcionamiento systemd-resolved es consumidor en lugar de proveedor de este archivo de configuración.

Tenga en cuenta que el modo de funcionamiento seleccionado para este archivo se detecta de forma totalmente automática, dependiendo de si /etc/resolv.conf es un enlace simbólico a /run/systemd/resolve/resolv.conf o listas
127.0.0.53 como servidor DNS.

Si tiene otros programas que podrían modificarlo (como un cliente DHCP), tendrá que volver a configurarlos. O chattr +i /etc/resolv.conf después de convertirlo en un static archivo en lugar de un enlace simbólico, pero tenga en cuenta que sea lo que sea que intente escribirlo, es posible que no le gusten los errores resultantes.

sudo rm /etc/resolv.conf //remove the symlink
sudo nano /etc/resolv.conf //create the new file and populate it as you wish
sudo chattr +i /etc/resolv.conf //change its attributes as you wish.....

Recuerda algo, que te concedemos agregar una reseña .

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *