Qual é o significado da saída de lsattr

16

Eu estou querendo saber o que a saída do lsattrmeans.It imprime tão estranhamente como se segue, quando eu tentei: 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

Eu li a página de manual chattre lsattrainda não faço ideia.

Hongxu Chen
fonte
2
Você está vendo eem um volume ext3? Verdade?
Ignacio Vazquez-Abrams
Use lsattr -lpara imprimir as opções usando nomes longos, em vez de abreviações de um caractere. Além disso, consulte esta tabela para obter uma descrição das opções individuais.
Matthias Braun

Respostas:

13

A página de manual para chattr contém todas as informações necessárias para entender a lsattrsaída.

excerto

    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).

Se você der uma olhada nas descrições das tags mais abaixo na mesma página do 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
fonte
10

Na página de manual do chattr atributo 'e' indica que o arquivo está usando extensões para mapear os blocos no disco. Não pode ser removido usando chattr.

Uma extensão é uma área contígua de armazenamento em um sistema de arquivos de computador, reservada para um arquivo. Quando um processo cria um arquivo, o software de gerenciamento do sistema de arquivos aloca toda uma extensão. Ao gravar no arquivo novamente, possivelmente após realizar outras operações de gravação, os dados continuam onde a gravação anterior parou. Isso reduz ou elimina a fragmentação de arquivos e possivelmente a dispersão de arquivos também.

Um sistema de arquivos baseado em extensão (isto é, um que endereça o armazenamento por extensões em vez de em blocos únicos) não precisa limitar cada arquivo a uma extensão única e contígua.

Os seguintes sistemas suportam extensões:

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]

da wikipedia

chattre lsattrutilitários no Linux e os atributos que eles manipulam são específicos para a família Second Extended Filesystem (ext2, ext3) e estão disponíveis como parte do pacote e2fsprogs . Eles não funcionam em arquivos que residem em outros sistemas de arquivos, por exemplo, ReiserFS, FAT.

(j)journalling dados (t)não-fusão da cauda (e)usos estende para blocos de mapeamento no disco

Normalmente, no sistema de arquivos extents, os arquivos regulares e os arquivos de diretório são armazenados como uma sequência de extensões, sequências contíguas de blocos em um disco. A entrada de diretório para um arquivo controla as extensões do arquivo. Se o sistema de arquivos precisar de mais de uma extensão para armazenar um arquivo, ele usará uma lista vinculada de blocos de extensão para armazenar informações sobre as extensões.

harish.venkat
fonte