¿Cuál es el significado de la salida de lsattr

16

Me pregunto lo que la salida de lsattrmeans.It imprime una manera tan extraña de la siguiente manera, cuando he intentado: lsattr /usr.

$ lsattr /usr
-----------------e- /usr/local
-----------------e- /usr/src
-----------------e- /usr/games
--------------I--e- /usr/include
--------------I--e- /usr/share
--------------I--e- /usr/lib
-----------------e- /usr/lib32
--------------I--e- /usr/bin
--------------I--e- /usr/sbin

He leído la página de manual de chattry lsattrtodavía no tengo idea.

Hongxu Chen
fuente
2
¿Estás viendo een un volumen ext3? De Verdad?
Ignacio Vazquez-Abrams
Use lsattr -lpara imprimir las opciones usando nombres largos en lugar de abreviaturas de un solo carácter. Además, consulte esta tabla para obtener una descripción de las opciones individuales.
Matthias Braun

Respuestas:

13

La página del manual chattrcontiene toda la información que necesita para comprender el lsattrresultado.

extracto

    The letters `acdeijstuACDST' select the new attributes for the files: 
    append only (a), compressed (c), no dump (d), extent format (e),  
    immutable (i),  data  journalling  (j),  secure deletion (s), no 
    tail-merging (t), undeletable (u), no atime updates (A), no copy on 
    write (C), synchronous directory updates (D), synchronous updates (S), 
    and top of directory hierarchy (T).

    The following attributes are read-only, and may be listed by lsattr(1) 
    but not modified by chattr: huge file (h), compression error (E), 
    indexed directory (I), compression raw access (X), and compressed dirty 
    file (Z).

Si echa un vistazo a las descripciones de las etiquetas más abajo en esa misma página de manual:

    The 'e' attribute indicates that the file is using extents for mapping 
    the blocks on disk.  It may not be removed using chattr(1).

    The 'I' attribute is used by the htree code to indicate that a directory 
    is being indexed using hashed trees.  It may not be set or  reset  using
    chattr(1), although it can be displayed by lsattr(1).
slm
fuente
10

Desde la página de manual del chattr atributo 'e' indica que el archivo está usando extensiones para mapear los bloques en el disco. No se puede eliminar con chattr.

Una extensión es un área contigua de almacenamiento en un sistema de archivos de computadora, reservado para un archivo. Cuando un proceso crea un archivo, el software de administración del sistema de archivos asigna una extensión completa. Al volver a escribir en el archivo, posiblemente después de realizar otras operaciones de escritura, los datos continúan donde se dejó la escritura anterior. Esto reduce o elimina la fragmentación de archivos y posiblemente la dispersión de archivos también.

Un sistema de archivos basado en extensión (es decir, uno que aborda el almacenamiento a través de extensiones en lugar de en bloques individuales) no necesita limitar cada archivo a una extensión única y contigua.

Los siguientes sistemas admiten extensiones:

ASM - Automatic Storage Management - Oracle's database-oriented filesystem.
BFS - BeOS, Zeta and Haiku operating systems.
Btrfs - GPL'd extent based file storage (16PiB/264 max file size).
Ext4 - Linux filesystem (when the configuration enables extents — the default in Linux since version 2.6.23).
Files-11 - Digital Equipment Corporation (subsequently Hewlett-Packard) OpenVMS filesystem.
HFS and HFS Plus - Hierarchical File System - Apple Macintosh filesystems.
HPFS - High Performance File Syzstem - OS/2 and eComStation.
JFS - Journaled File System - Used by AIX, OS/2/eComStation and Linux operating systems.
Microsoft SQL Server - Versions 2000-2008 supports extents of up to 64KB [1].
Multi-Programming Executive - Filesystem by Hewlett-Packard.
NTFS - Microsoft's latest-generation file system [1]
Reiser4 - Linux filesystem (in "extents" mode).
SINTRAN III - File system used by early computer company Norsk Data.
UDF - Universal Disk Format - Standard for optical media.
VERITAS File System - Enabled via the pre-allocation API and CLI.
XFS - SGI's second generation file system.[2]

de la wikipedia

chattry las lsattrutilidades en Linux y los atributos que manipulan son específicos de la familia Second Extended Filesystem (ext2, ext3) y están disponibles como parte del paquete e2fsprogs . No funcionan en archivos que residen en otros sistemas de archivos, por ejemplo, ReiserFS, FAT.

(j)el registro de datos (t)sin (e)usos de fusión de cola se extiende para asignar bloques en el disco

Normalmente, en el sistema de archivos de extensiones, los archivos normales y los archivos de directorio se almacenan como una secuencia de extensiones, secuencias contiguas de bloques en un disco. La entrada de directorio para un archivo realiza un seguimiento de las extensiones del archivo. Si el sistema de archivos necesita más de una extensión para contener un archivo, utiliza una lista vinculada de bloques de extensión para almacenar información sobre las extensiones.

harish.venkat
fuente