chattr - Modifier les attributs des fichiers d'un système de fichiers
Linux
chattr [
-RVf ] [
-v version ] [
-p
projet ] [
mode ]
fichiers ...
chattr modifie les attributs des fichiers d'un système de fichiers
Linux.
Le format d'un
mode symbolique est de forme
+-=[
aAcCdDeFijmPsStTux].
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 qu'auront les fichiers.
Les lettres «
aAcCdDeFijmPsStTux »
sélectionnent les nouveaux attributs des fichiers : ajout
uniquement (
a : append), pas de mise à jour de la date
d'accès (
A : no atime updates), compressé
(
c : compressed), pas de copie sur écriture (
C : no copy on write), pas de dump (
d : no dump),
mises à jour synchrones des répertoires (
D :
synchronous directory updates), format étendu (
e :
extent format), recherches de répertoire insensibles à la casse
(
F : case-insensitive directory lookups), immuable (
i : immutable), journalisation des données (
j : data journalling), non compressé (
m :
don't compress), hiérarchie de projet (
P : project
hierarchy), suppression sécurisée (
s : secure
deletion), mises à jour synchrones (
S : synchronous
updates), pas de fusion des fins de fichiers (
t : no
tail-merging), répertoire racine (
T : top of directory
hierarchy), non supprimable (
u : undeletable) et accès
direct aux fichiers (
x : direct access for files).
Les attributs suivants sont en lecture seule. Ils peuvent être
affichés par
lsattr(1), mais ne peuvent pas être
modifiés par : chiffré (
E : encrypted), répertoire indexé (
I : indexed directory), données internes (
N : inline data) et vérité (
V :
verity).
Tous les attributs ne sont pas pris en charge ou utilisés par l'ensemble
des systèmes de fichiers. Veuillez vous référer aux pages
de manuel spécifiques telles que
btrfs(5),
ext4(5),
mkfs.f2fs(8) et
xfs(5) pour les détails particuliers
à chaque système de fichiers.
- -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 le numéro de version ou de création du
fichier.
-
-p projet
- Définir le numéro de projet du fichier.
- a
- 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.
- A
- Quand on accède à un fichier avec l'attribut
« A », sa date d'accès
(« atime ») n'est pas modifiée. Cela
évite un certain nombre d'entrées-sorties sur les
ordinateurs portables.
- c
- Un fichier avec l'attribut
« c » est automatiquement compressé sur
le disque par le noyau. La lecture 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 (Remarque : pour
btrfs, si l'attribut « c » est
positionné, l'attribut « C » ne peut
pas être positionné. Est aussi en conflit avec l'option de
montage « nodatasum » de btrfs).
- C
- Un fichier avec l'attribut
« C » ne sera pas concerné par les
mises à jour de copie sur écriture
(« copy-on-write » ou
« COW »). Ce drapeau 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. Si l'attribut « C »
est positionné, « c » ne peut pas
être positionné).
- d
- Un fichier avec l'attribut
« d » n'est pas candidat pour être
sauvegardé par le programme dump(8).
- D
- 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.
- e
- L'attribut « e » indique que le
fichier utilise des extensions pour la correspondance des blocs sur le
disque. Il ne peut être supprimé avec .
- E
- Un fichier, répertoire ou un lien symbolique
où l'attribut « E » est défini
est chiffré par le système de fichiers. Cet attribut ne peut
pas être ajouté ou retiré avec , il
est tout de même affiché par lsattr(1).
- F
- Un répertoire où apparaît l'attribut
« F » indique que toutes les recherches de
chemins dans ce répertoire se font de façon insensible
à la casse. Cet attribut ne peut être modifié que
dans des répertoires vides sur des systèmes de fichiers
où la fonctionnalité casefold est
activée.
- i
- 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, la plupart
des métadonnées ne peuvent pas être modifiées
et on ne peut y accéder en écriture. Seul le
superutilisateur ou un processus doté de la capacité
CAP_LINUX_IMMUTABLE peut ajouter ou retirer cet attribut.
- I
- 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 , il est tout de même
affiché par lsattr(1).
- j
- Un fichier avec l'attribut
« j » aura toutes ses données
écrites dans le journal ext3 ou ext4 avant qu'elles ne soient
écrites dans le fichier lui-même, si le système de
fichiers est monté avec l'option
« data=ordered » ou avec l'option
« data=writeback » et s'il a un journal. 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.
- m
- Un fichier ayant l'attribut
« m » est exclu de la compression sur des
systèmes de fichiers qui gèrent la compression par
fichier.
- N
- L'attribut « N » d'un fichier
indique que les données de ce fichier sont stockées en
interne, à l'intérieur même de l'inœud. Il ne
peut pas être ajouté ou retiré avec ,
il est tout de même affiché par lsattr(1).
- P
- Un répertoire où l'attribut
« P » est défini renforcera sa
structure hiérarchique pour les ID des projets. Cela veut dire que
les fichiers et les répertoires créés dans ce
répertoire hériteront de l'ID du projet du
répertoire, les opérations de renommage sont contraintes de
sorte que quand on déplace un fichier ou un répertoire dans
un autre répertoire, l'ID du projet devra correspondre. De plus, un
lien en dur vers un fichier ne peut être créé que
lorsque l'ID du projet pour le fichier et pour le répertoire de
destination correspondent.
- s
- 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.
- S
- 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.
- t
- Un fichier avec l'attribut
« t » n'aura pas de bloc partiel en fin de
fichier fusionné avec d'autres 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 reconnaissent pas le
« tail-merging ». Remarque : au moment
de l'écriture de cette page de manuel, les systèmes de
fichiers ext2, ext3 et ext4 ne gèrent pas le
« tail-merging ».
- T
- 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 pour l'allocateur de blocs utilisé par ext3
et ext4 d'une indication que les sous-répertoires de ce
répertoire ne sont pas liés et devraient 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.
- u
- 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.
- x
- Un fichier avec l'attribut
« x » requiert l'utilisation du mode
d'accès direct (dax), si le noyau prend en charge DAX. Cela peut
être annulé par l'option de montage
« dax=never ». Pour plus d'information,
consultez la documentation du noyau :
<https://www.kernel.org/doc/html/latest/filesystems/dax.html>.
- Si l'attribut est positionné sur un
répertoire existant, il sera récupéré par tous
les fichiers et les sous-répertoires créés par la
suite dans le répertoire. Si un répertoire existant contient
des fichiers et des sous-répertoires, la modification de l'attribut
du répertoire parent ne modifie pas ceux de ces fichiers et de ces
sous-répertoires.
- V
- Un fichier où l'attribut
« V » est défini possède un
fs-verity actif. On ne peut pas y écrire et le
système de fichiers vérifiera automatiquement toutes les
données lues par rapport à un hachage de chiffrement qui
couvre tout le contenu du fichier, par exemple avec une arborescence
Merkle. Cela rend possible une authentification efficace du fichier. Cet
attribut ne peut pas être ajouté ou supprimé avec
, il est tout de même affiché par
lsattr(1).
chattr a été écrit par Rémy Card
<
[email protected]> et est actuellement maintenu par Theodore Ts'o
<
[email protected]>.
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.
Définir les attributs « a » et
« i » ne modifiera pas la possibilité
d'écrire dans des descripteurs de fichiers déjà
existants.
L'option « j » n'est utile que pour les
systèmes de fichiers ext3 et ext4.
L'option « D » n'est utile que sur les noyaux
Linux 2.5.19 et postérieurs.
chattr fait partie du paquet e2fsprogs et est disponible sur
http://e2fsprogs.sourceforge.net.
lsattr(1),
btrfs(5),
ext4(5),
mkfs.f2fs(8),
xfs(5).
La traduction française de cette page de manuel a été
créée par Frédéric Delanoy
<
[email protected]>, Thierry Vignaud <
[email protected]>,
Sébastien Blanchet, Emmanuel Araman <
[email protected]>,
Éric Piel <
[email protected]>, Nicolas François
<
[email protected]>, Romain Doumenc
<
[email protected]>, David Prévot <
[email protected]>,
Cédric Boutillier <
[email protected]> et Jean-Philippe
MENGUAL <
[email protected]>
Cette traduction est une documentation libre ; veuillez vous reporter
à la
GNU
General Public License version 3 concernant les conditions de copie
et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel,
veuillez envoyer un message à
[email protected]