En Linux, los atributos de archivo son propiedades de metadatos que describen el comportamiento del archivo. Por ejemplo, un atributo puede indicar si un archivo está comprimido o especificar si el archivo se puede eliminar.
Algunos atributos, como la inmutabilidad, se pueden configurar o borrar, mientras que otros, como el cifrado, son de solo lectura y solo se pueden ver. El soporte para ciertos atributos depende del sistema de archivos que se utilice.
Este artículo explica cómo usar el chattr
comando para cambiar los atributos de archivo en los sistemas de archivos de Linux.
chattr
Sintaxis #
El chattr
El comando toma la siguiente forma general:
chattr [OPTIONS] [OPERATOR][ATTRIBUTES] FILE...
El valor del [OPERATOR]
parte puede ser uno de los siguientes símbolos:
+
- El operador más le dice alchattr
para agregar atributos específicos a los existentes.-
- El operador menos le dice alchattr
para eliminar atributos específicos de los existentes.=
- El operador igual le dice alchattr
para establecer los atributos especificados como los únicos atributos.
El operador va seguido de uno o más [ATTRIBUTES]
banderas que desea agregar o eliminar de los atributos del archivo. A continuación se muestra una lista de algunos atributos comunes y banderas asociadas:
a
- Cuando se establece este atributo, el archivo solo se puede abrir en modo de adición para escritura.A
- Cuando se abre un archivo con este conjunto de atributos, su registro atime no cambia. atime (hora de acceso) es la última vez que se accedió/abrió el archivo mediante algún comando o aplicación.e
- Este atributo indica que el archivo usa extensiones para mapear los bloques en el disco. Ele
el atributo no se puede modificar conchattr
.i
- Este atributo indica que el archivo es inmutable, lo que significa que el archivo no se puede eliminar ni cambiar de nombre.
Para obtener una lista completa de todos los atributos y marcas de archivo, escriba man chattr
en tu terminal.
De forma predeterminada, los atributos del archivo no se conservan al copiar un archivo con comandos como cp
o rsync
.
chattr
Ejemplo #
Uno de los usos comunes de chattr
es establecer el indicador inmutable en un archivo o directorio para evitar que los usuarios eliminen o cambien el nombre del archivo.
Puede ver los atributos del archivo con lsattr
comando:
lsattr todo.txt
El siguiente resultado muestra que solo e
la bandera está establecida:
--------------e----- todo.txt
Para hacer que el archivo sea inmutable, agregue i
marcar con el +
operador a los atributos existentes:
sudo chattr +i todo.txt
Estamos usando sudo porque solo la raíz puede cambiar el indicador inmutable.
Confirme que se agregó el atributo:
lsattr todo.txt
----i---------e----- todo.txt
Para revertir los cambios y eliminar la bandera inmutable, use -
operador:
sudo chattr +i todo.txt
Con chattr
, puede agregar o eliminar varios atributos a la vez. Por ejemplo, para hacer que el archivo sea inmutable y decirle al núcleo que no rastree la última vez que se accedió, usaría:
sudo chattr +iA todo.txt
El último operador que puede usar es =
operador. Por ejemplo, para establecer el e
atributo como el único atributo, ejecutaría:
sudo chattr "=e" todo.txt
Tenga en cuenta que el operador y la bandera están entre comillas, para evitar la interpretación de Shell del +
personaje.
Conclusión #
chattr
es una herramienta de línea de comandos para cambiar los atributos de archivo en un sistema de archivos de Linux.
Si tiene alguna pregunta o comentario, no dude en dejar un comentario.