1. NOM▲
chattr - Modifier les attributs des fichiers d'un système de fichiers Linux
2. SYNOPSIS ▲
chattr [ -RVf ] [ -v version ] [ mode ] fichiers ...
3. DESCRIPTION ▲
chattr modifie les attributs des fichiers d'un système de fichiers de Linux.
La représentation symbolique d'un mode est de la forme +-=[acdeijstuACDST].
L'opérateur « + » permet d'ajouter les attributs sélectionnés à la liste des attributs du fichier ; « - » permet de les enlever ; et « = » permet de définir les seuls attributs que les fichiers auront.
Les lettres « acdeijstuACDST » sélectionnent les nouveaux attributs des fichiers ; ajout uniquement (a : append), compressé (c : compressed), pas pour dump (d : no dump), format étendu (e : extent format), immuable (i : immutable), journalisation des données (j : data journalling), suppression sécurisée (s : secure deletion), pas de fusion des fins de fichiers (t : no tail-merging), non supprimable (u : undeletable), pas de mise à jour de la date d'accès (A : no atime updates), de copie sur écriture (C : no copy on write), mises à jour synchrones des répertoires (D : synchronous directory updates), mises à jour synchrones (S : synchronous updates) et répertoire racine (T : top of directory hierarchy).
Les attributs suivants sont en lecture seule. Ils peuvent être affichés par lsattr(1), mais ne peuvent pas être modifiés par chattr(1) : gros fichier (h : huge file), erreur de compression (E : compression error), répertoire indexé (I : indexed directory), accès brut au fichier aux données compressées (X : compression raw access) et fichier sale compressé (Z : compressed dirty file).
4. OPTIONS ▲
- -R
Modifier récursivement les attributs des répertoires et de leurs contenus. - -V
Être bavard dans la sortie de chattr et afficher la version du programme. - -f
Supprimer la plupart des messages d'erreur. - -v version
Fixer la version ou génération du fichier.
5. ATTRIBUTS ▲
Quand on accède à un fichier avec l'attribut « A », sa date d'accès (« atime ») n'est pas modifiée. Un certain nombre d'entrées-sorties sur les systèmes de portables sont ainsi évitées.
Un fichier avec l'attribut « a » ne peut être ouvert qu'en mode ajout pour l'écriture. Seul le superutilisateur ou un processus avec la capacité CAP_LINUX_IMMUTABLE peut ajouter ou supprimer cet attribut.
Un fichier avec l'attribut « c » est automatiquement compressé sur le disque par le noyau. La lecture avec read du fichier renverra les données non compressées. Les écritures dans le fichier compressent les données avant de les enregistrer sur le disque. Remarque : assurez-vous de lire la section sur les bogues et limitations à la fin de ce document.
Un fichier avec l'attribut « C » ne sera pas concerné par les mises à jour de copie sur écriture (« copy-on-write » ou « COW »). Cet attribut n'est pris en charge que sur les systèmes de fichiers qui réalisent de la copie sur écriture. (Remarque : pour Btrfs, l'attribut « C » devrait être défini sur les fichiers nouveaux ou vides. S'il est défini sur un fichier qui a déjà des blocs de données, il est retiré quand les blocs assignés au fichier sont complètement stables. Si l'attribut « C » est défini sur un répertoire, il n'aura pas d'effet sur le répertoire, mais les nouveaux fichiers créés dans ce répertoire auront l'attribut No_COW.)
Quand un répertoire avec l'attribut « D » est modifié, les modifications sont écrites de façon synchrone sur le disque ; c'est équivalent à ce que fait l'option « dirsync » de mount, mais limité à un sous-ensemble de fichiers.
Un fichier avec l'attribut « d » n'est pas candidat pour être sauvegardé par le programme dump(8).
L'attribut « E » est utilisé par les patches expérimentaux de compression pour indiquer que le fichier a une erreur de compression. Il ne peut pas être ajouté ou retiré avec chattr(1), il est tout de même affiché par lsattr(1).
L'attribut « e » indique que le fichier utilise des extensions pour la correspondance des blocs sur le disque. Il ne peut être supprimé avec chattr(1).
L'attribut « I » sert au code des arbres de hachage pour indiquer qu'un répertoire est en train d'y être indexé. Il ne peut pas être ajouté ou retiré avec chattr(1), il est tout de même affiché par lsattr(1).
L'attribut « h » indique que le fichier enregistre ses blocs dans l'unité définie par la taille des blocs du système de fichiers au lieu de la taille des secteurs, et cela signifie que le fichier est (ou a été) plus gros que 2 To. Il ne peut être défini ou supprimé en utilisant chattr(1), mais il peut être affiché par lsattr(1).
Un fichier avec l'attribut « i » ne peut pas être modifié : il ne peut pas être supprimé ou renommé, aucun lien ne peut être fait vers lui et on ne peut pas y écrire de données. Seul le superutilisateur ou un processus avec la capacité CAP_LINUX_IMMUTABLE peut ajouter ou retirer cet attribut.
Un fichier avec l'attribut « j » aura toutes ses données écrites dans le journal ext3 avant qu'elles soient écrites dans le fichier lui-même, que le système de fichiers soit monté avec l'option « data=ordered » ou avec l'option « data=writeback ». Quand le système de fichiers est monté avec l'option « data=journal », toutes les données sont déjà journalisées et cet attribut n'a aucun effet. Seul le superutilisateur ou un processus avec la capacité CAP_SYS_RESOURCE peut ajouter ou supprimer cet attribut.
Quand un fichier avec l'attribut « s » est supprimé, ses blocs sont mis à zéro et écrits sur le disque. Remarque : assurez-vous de lire la section sur les bogues et limitations à la fin de ce document.
Quand un fichier avec l'attribut « S » est modifié, les modifications sont écrites de façon synchrone sur le disque ; c'est équivalent à ce que fait l'option « sync » de mount, mais limité à un sous-ensemble de fichiers.
Un répertoire avec l'attribut « T » va se faire passer pour le répertoire de plus haut niveau auprès de l'allocateur de blocs Orlov. Il s'agit d'une indication pour l'allocateur de blocs utilisé par ext3 et ext4 indiquant que les sous-répertoires de ce répertoire ne sont pas liés et doivent donc être dispersés à différents endroits lors des allocations. Appliquer l'attribut « T » sur le répertoire /home est par exemple une très bonne idée, ce qui permet à /home/jean et /home/marie d'être placés dans différents groupes de blocs. Pour les répertoires qui n'ont pas cet attribut, l'allocateur de blocs Orlov essaiera de grouper les sous-répertoires le plus près possible les uns des autres.
Un fichier avec l'attribut « t » n'aura pas de bloc partiel en fin de fichier fusionné avec d'autres fins de fichiers (pour les systèmes de fichiers permettant le « tail-merging »). Cela est nécessaire pour des applications comme LILO, qui lisent le système de fichiers directement et ne connaissent pas le « tail-merging ». Remarque : Au moment de l'écriture de cette page de manuel, les systèmes de fichiers ext2 et ext3 ne gèrent toujours pas le « tail-merging » (à part dans des patch très expérimentaux).
Quand un fichier avec l'attribut « u » est supprimé, son contenu est sauvegardé. Cela permet à l'utilisateur de demander sa récupération. Remarque : assurez-vous de lire la section sur les bogues et limitations à la fin de ce document.
L'attribut « X » est utilisé par les patches expérimentaux de compression pour indiquer qu'on peut accéder directement au contenu brut du fichier compressé. Il ne peut pas être ajouté ou retiré avec chattr(1), il est tout de même affiché par lsattr(1).
L'attribut « Z » est utilisé par les patches expérimentaux de compression pour indiquer que le fichier compressé est « sale ». Il ne peut pas être ajouté ou retiré avec chattr(1), il est tout de même affiché par lsattr(1).
6. AUTEUR ▲
chattr a été écrit par Rémy Card <>. Et est actuellement maintenu par Theodore Ts'o <>.
7. BOGUES ET LIMITATIONS ▲
Les attributs « c », « s » et « u » ne sont pas respectés par les systèmes de fichiers ext2, ext3 et ext4 tels qu'ils sont implémentés dans les noyaux Linux actuels.
L'option « j » n'est utile que si le système de fichiers est monté en tant que ext3.
L'option « D » n'est utile que sur les noyaux Linux 2.5.19 et postérieurs.
8. DISPONIBILITÉ ▲
chattr fait partie du paquet e2fsprogs et est disponible sur http://e2fsprogs.sourceforge.net.
9. VOIR AUSSI ▲
lsattr(1)
10. TRADUCTION ▲
La traduction de cette page de manuel est maintenue par les membres de la liste <debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.