Cómo usar el Comando CHATTR en Linux

Chuleta de comandos linux: CIBERED, tu web de linux de confianza 2026

El comando chattr en Linux es una herramienta esencial para modificar atributos especiales de archivos y directorios que no se controlan con los permisos tradicionales. En 2026 sigue ser muy valioso para proteger archivos críticos, prevenir eliminaciones accidentales, forzar escritura solo por añadidura y aplicar medidas de seguridad avanzadas en sistemas de producción.

Su gran diferencia con chmod es que chmod maneja permisos (lectura, escritura, ejecución), mientras que chattr cambia atributos del sistema de archivos (como inmutable, solo añadidura, eliminación segura). Estos atributos tienen un nivel de protección mayor, incluso bloqueo para el usuario root.

¿Qué hace el comando chattr?

chattr cambia atributos de archivos y directorios en Linux. Te permite añadir o quitar características como:

  • Inmutable (i): el archivo no puede ser modificado, eliminado, renombrado ni vinculado, incluso por root.
  • Solo añadidura (a): solo se puede escribir añadiendo contenido, no modificando ni eliminando.
  • Eliminación segura (s): sobrescribe el archivo con zeros al eliminarlo.
  • No eliminable (u): intenta preservar el contenido al eliminar (menos común).

La sintaxis básica es:

sudo chattr [opciones] [archivo]

Opciones principales:

  • +: añade el atributo.
  • -: quita el atributo.
  • i: inmutable.
  • a: solo añadidura.
  • s: eliminación segura.
  • u: no eliminable.

Ejemplos básicos

Pon inmutable un archivo

sudo chattr +i file.txt

Esto protege el archivo ante cualquier modificación o eliminación.

Quitar inmutable

sudo chattr -i file.txt

Ahora el archivo vuelve a ser editable y eliminable normalmente.

Directorio solo añadidura

sudo chattr +a ~/project/logs

En este directorio, los archivos solo se pueden escribir añadiendo contenido, no modificando ni eliminando.

Quitar solo añadidura

sudo chattr -a ~/project/logs

Ahora el directorio vuelve a su comportamiento normal.

Atributo inmutable en detalle

Crea un archivo de prueba:

touch ~/project/file.txt

Ponlo inmutable:

sudo chattr +i ~/project/file.txt

Ahora intenta eliminarlo:

rm ~/project/file.txt

La salida será:

rm: cannot remove '~/project/file.txt': Operation not permitted

El archivo no se puede eliminar, ni modificar, ni renombrar, incluso como root.

Intenta modificarlo:

echo "Cambiando contenido" > ~/project/file.txt

La salida será:

-bash: ~/project/file.txt: Operation not permitted

Esto garantiza protección total contra cambios accidentales o maliciosos.

Para permitir modificaciones de nuevo:

sudo chattr -i ~/project/file.txt

Ahora el archivo vuelve a ser editable y eliminable.

Atributo solo añadidura en directorios

Crea un directorio de logs:

mkdir -p ~/project/logs

Ponlo solo añadidura:

sudo chattr +a ~/project/logs

Ahora puedes añadir contenido a un archivo:

echo "Nuevo log" >> ~/project/logs/log.txt

Pero si intentas modificarlo:

echo "Modificando" > ~/project/logs/log.txt

La salida será:

-bash: ~/project/logs/log.txt: Operation not permitted

Esto es útil para logs que deben crecer pero nunca ser alterados.

Quita el atributo cuando lo necesites:

sudo chattr -a ~/project/logs

¿Cómo proteger archivos importantes?

Crea un archivo crítico:

echo "This is an important file" > ~/project/important.txt

Protégelo con inmutable:

sudo chattr +i ~/project/important.txt

Intenta eliminarlo:

rm ~/project/important.txt

Salida:

rm: cannot remove '~/project/important.txt': Operation not permitted

Intenta modificarlo:

echo "Modificando" > ~/project/important.txt

Salida:

-bash: ~/project/important.txt: Operation not permitted

El archivo queda totalmente protegido. Solo puedes restaurarlo con:

sudo chattr -i ~/project/important.txt

¿Cuándo usar chattr?

chattr es especialmente útil en situaciones como estas:

  • Proteger configuraciones críticas del sistema.
  • Bloquear archivos sensibles ante cambios accidentales.
  • Asegurar logs que solo deben crecer.
  • Prevenir eliminaciones de scripts o usuarios maliciosos.
  • Aplicar seguridad adicional en servidores y entornos productivos.

Es una herramienta de seguridad avanzada que complementa permisos y plazos de custodia.

Buenas prácticas

  • Usa +i para archivos críticos que nunca deben cambiar.
  • Usa +a para logs que deben crecer sin ser modificados.
  • Verifica siempre el atributo antes de usar chattr.
  • Recuerda que necesitas sudo para cambiar atributos.
  • No apliques +i en archivos que necesitan actualización frecuente.
  • Para eliminar archivos protegidos, primero quita +i con chattr -i.

Conclusión

chattr en Linux permite cambiar atributos especiales de archivos y directorios, añadiendo protección avanzada que los permisos tradicionales no ofrecen. En 2026 sigue siendo esencial para seguridad, integridad de datos y protección de configuraciones críticas.

Sus usos más comunes son:

  • sudo chattr +i archivo para inmutable.
  • sudo chattr -i archivo para quitar inmutable.
  • sudo chattr +a directorio para solo añadidura.
  • sudo chattr -a directorio para quitar solo añadidura.
Vistas: 0
Scroll al inicio