LINUX

Cómo mostrar atributos de archivo en Linux

atributos de archivo linuxLinux nos proporciona el control de acceso por permisos de archivos y directorios en tres niveles que son usuario, grupo y otros. Estos permisos de archivo proporcionan el nivel básico de seguridad y control de acceso.

Linux también tiene funciones avanzadas de control de acceso como ACL (listas de control de acceso) y atributos. Los atributos definen las propiedades de los archivos. Este tutorial describe qué son estos atributos y cómo podemos acceder a ellos.

Atributos en Linux

Algunos sistemas de archivos admiten atributos adicionales (distintos de los descritos en las secciones anteriores). En particular, algunos sistemas de archivos nativos de Linux admiten varios atributos que puede ajustar con el comando chattr. Los archivos y directorios pueden tener los siguientes atributos:

  • a – añadir solo
  • C – comprimido
  • D – sin vertedero
  • mi – formato de extensión
  • I – inmutable
  • j – diario de datos
  • s – eliminación segura
  • t – sin fusión de colas
  • tu – imborrable
  • A – sin actualizaciones atime
  • D – actualizaciones de directorio sincrónicas
  • S – actualizaciones sincrónicas
  • T – parte superior de la jerarquía de directorios

Definir los atributos de cada archivo

El significado detallado de estos atributos según la página del manual es:

  • a – añadir solo: este atributo permite agregar un archivo, pero no eliminarlo. Evita cambios accidentales o maliciosos en archivos que registran datos, como archivos de registro.
  • c – comprimido: hace que el kernel comprima los datos escritos en el archivo automáticamente y los descomprima cuando se vuelve a leer.
  • d – sin volcado: se asegura de que el archivo no esté respaldado en las copias de seguridad donde se usa la utilidad de volcado
  • e – formato de extensión: indica que el archivo está usando extensiones para mapear los bloques en el disco.
  • i – inmutable: hace que un archivo sea inmutable, lo que va un paso más allá de simplemente deshabilitar el acceso de escritura al archivo. No se puede eliminar el archivo, no se pueden crear vínculos a él y no se puede cambiar el nombre del archivo.
  • j – registro de datos: asegura que en un sistema de archivos Ext3, el archivo se escribe primero en el diario y solo después en los bloques de datos del disco duro.
  • s – eliminación segura: se asegura de que la recuperación de un archivo no sea posible después de que se haya eliminado.
  • t – sin fusión de colas: La fusión final es un proceso en el que pequeñas piezas de datos al final de un archivo que no llenan un bloque completo se fusionan con piezas similares de datos de otros archivos.
  • u – indeleble: Cuando se elimina un archivo, su contenido se guarda, lo que permite desarrollar una utilidad que trabaja con esa información para salvar los archivos eliminados.
  • A – no hay actualizaciones de tiempo: Linux no actualizará la marca de tiempo de acceso cuando acceda a un archivo.
  • D – actualizaciones de directorio síncronas: se asegura de que los cambios en los archivos se escriban en el disco inmediatamente y no en la caché primero.
  • S – actualizaciones sincrónicas: los cambios en un archivo se escriben sincrónicamente en el disco.
  • T – y parte superior de la jerarquía de directorios: Se considerará que un directorio es la parte superior de las jerarquías de directorios a los efectos del asignador de bloques de Orlov.

Cómo enumerar el atributo de archivo usando el comando lsattr

Algunos sistemas de archivos nativos de Linux admiten varios atributos que puede enumerar con el comando lsattr. Para enumerar los atributos de los archivos y el subdirectorio del directorio actual, haga

$ lsattr
 -----a-----------e- ./file1
 ----i------------e- ./hello_dir
 -----------------e- ./usrcopy
 -----------------e- ./special_characters
 -----------------e- ./file3
 -----------------e- ./contents
 -----------------e- ./hard_link
 -----------------e- ./usrlisting

Aquí podemos ver que el directorio ‘hello_dir’ es inmutable, y el archivo llamado ‘file1’ es append only expediente.

Puede enumerar el atributo del contenido de un directorio en particular con el comando lsattr seguido de un nombre de archivo o directorio como argumento.

# lsattr script-test/
-------------e-- script-test/password-gen.sh
-------------e-- script-test/continue.sh
-------------e-- script-test/hello
-------------e-- script-test/folder1

Como el ls -l comando, el -d La opción con lsattr listará los atributos del directorio en sí en lugar de los archivos en ese directorio.

$ # lsattr -d script-test/
-------------e-- script-test/

los -R La opción listará los atributos de un directorio de forma recursiva. Significa que mostrará los atributos del contenido de los subdirectorios.

# lsattr -R script-test/
-------------e-- script-test/password-gen.sh
-------------e-- script-test/continue.sh
-------------e-- script-test/hello
-------------e-- script-test/folder1

script-test/folder1:
----i--------e-- script-test/folder1/file1

Puede ver que también muestra los atributos del contenido de ‘carpeta1’

Puedes tener la versión del programa con la -V opción

]# lsattr -V
lsattr 1.42.9 (28-Dec-2013)
-------------e-- ./jdk-8u65-linux-x64.tar.gz
-------------e-- ./ttyrec-1.0.6-1.i586.rpm.1
-------------e-- ./bootstrap

Conclusión

Aunque hay bastantes atributos que se pueden usar, debe tener en cuenta que la mayoría de los atributos son bastante experimentales y solo tienen alguna utilidad si se emplea una aplicación que pueda funcionar con el atributo dado.

Publicaciones relacionadas

Deja una respuesta

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

Botón volver arriba
Cerrar