Linux File Attribute

Da Andreabont's Wiki.

Gli attributi sui file sono una estensione dei permessi file fornita da linux e supportata da alcuni filesystem.

Attributi disponibili

Flag Nome Descrizione
a Append_Only Permette la scrittura del file sono in modalità append (in coda).
c Compression_Requested Il file viene compresso automaticamente in scrittura e decompresso in lettura.
d No_Dump
e Extents Indica che il file usa la modalità extents sul filesystem.
i Immutable Vieta a chiunque la modifica del file, la rinominazione e la cancellazione.
j Journaled_Data Indica che in un filesystem con il journaling il file viene inserito prima nel journal e poi sul disco.
s Secure_Deletion Forza la scrittura a zero della memoria quando il file viene cancellato, in modo da non poterlo recuperare in seguito.
t No_Tailmerging Incica che il file non utilizzerà il Tail-merging sul filesystem.
u Undelete I file cancellati con questo attributo possono essere recuperati.
A No_Atime Il filesystem non terrà conto dell'ultima volta che il file è stato aperto.
S Synchronous_Updates La scrittura del file avviene in modo sincrono con il disco.

Visualizza gli attributi dei file

Versione con i flag:

$> lsattr 
----i---------e---- ./pippo
s-------------e---- ./paperino
-----a--------e---- ./pluto

Versione con i nomi:

$> lsattr -l
./pippo                      Immutable, Extents
./paperino                   Secure_Deletion, Extents
./pluto                      Append_Only, Extents

Modifica gli attributi dei file

La modifica degli attributi avviene solo attraverso i flag. Ogni flag deve essere preceduto dal carattere + se si vuole aggiungere l'attributo, o il carattere - se si vuole rimuoverlo.

$> chattr +a pluto # Aggiunge l'attributo Append_Only al file pluto
$> chattr -a pluto # Rimuove l'attributo Append_Only al file pluto