chattr - modifică atributele fișierelor pe un sistem
de fișiere Linux
chattr [ -RVf ] [ -v versiune ] [
-p proiect ] [ mod ] fișiere...
chattr modifică atributele fișierelor pe un
sistem de fișiere Linux.
Formatul unui mod simbolic este:
+-=[aAcCdDeFijmPsStTux].
Operatorul „+” face ca atributele selectate
să fie adăugate la atributele existente ale fișierelor;
„-” face ca acestea să fie eliminate; și
„=” face ca acestea să fie singurele atribute pe
care le au fișierele.
Literele „aAcCdDeFijmPsStTux”
selectează noile atribute pentru fișiere: numai
adăugare (a), fără actualizări ale datei
de acces „atime” (A), comprimat (c),
fără copie la scriere ( C), fără
descărcare (d), actualizări de directoare sincrone
(D), format extent (e), căutări de director care
nu țin cont de diferența dintre majuscule/minuscule
(F), imuabile (i ), jurnalizarea datelor (j), nu se
comprimă (m), ierarhia proiectului (P), ștergere
sigură (s), actualizări sincrone (S),
fără îmbinare a sfârșitului
fișierelor (t), partea de sus a ierarhiei directoarelor
(T), de neșters (u) și acces direct pentru
fișiere (x).
Următoarele atribute sunt numai pentru citire și pot
fi enumerate de lsattr(1), dar nu pot fi modificate de
«chattr»: criptat (E), director indexat (I),
date în linie (N) și verity (V).
Nu toate fanioanele sunt acceptate sau utilizate de toate
sistemele de fișiere; consultați paginile de manual specifice
sistemului de fișiere, cum ar fi btrfs(5), ext4(5),
mkfs.f2fs(8) și xfs(5) pentru mai multe detalii
specifice sistemului de fișiere.
- -R
- Modifică în mod recurent atributele directoarelor și
conținutul acestora.
- -V
- Îi indică lui «chattr» să
producă o ieșire descriptivă și
afișează versiunea programului.
- -f
- Suprimă majoritatea mesajelor de eroare.
- -v versiune
- Stabilește numărul de versiune/generare al
fișierului.
- -p proiect
- Stabilește numărul de proiect al fișierului.
- a
- Un fișier cu atributul „a” definit poate fi deschis
numai în modul „adăugare” pentru scriere.
Numai superutilizatorul sau un proces care posedă capacitatea
CAP_LINUX_IMMUTABLE poate defini sau șterge acest atribut.
- A
- Atunci când un fișier cu atributul „A” este
accesat, înregistrarea datei de acces „atime” a
acestuia nu este modificată. Astfel, se evită o
anumită cantitate de In/Ieș pe disc pentru sistemele
laptop.
- c
- Un fișier cu atributul „c” definit este comprimat
automat pe disc de către nucleu. O citire din acest fișier
returnează date necomprimate. O scriere în acest
fișier comprimă datele înainte de a le stoca pe disc.
Notă: asigurați-vă că ați citit
secțiunea privind erorile și limitările de la
sfârșitul acestui document. Notă: Pentru btrfs,
dacă este definit fanionul „c”, atunci fanionul
„C” nu poate fi definit. De asemenea, intră în
conflict cu opțiunea de montare btrfs
„nodatasum”.
- C
- Un fișier cu atributul „C” definit nu va fi supus
actualizărilor de tip copiere la scriere
„copy-on-write”. Acest fanion este acceptat numai pe
sistemele de fișiere care efectuează copierea la scriere.
Notă: Pentru btrfs, fanionul „C” trebuie să
fie activat în cazul fișierelor noi sau goale. Dacă
este activat pe un fișier care are deja blocuri de date, nu se
știe când blocurile atribuite fișierului vor fi
complet stabile. Dacă fanionul „C” este activat pe un
director, acesta nu va avea niciun efect asupra directorului, dar noile
fișiere create în acel director vor avea atributul No_COW
activat. Dacă este activat fanionul „C”, atunci
fanionul „c” nu poate fi activat.
- d
- Un fișier cu atributul „d” definit nu este un
candidat pentru copierea de rezervă atunci când se
execută programul dump(8).
- D
- Atunci când un director cu atributul „D” definit este
modificat, modificările sunt scrise în mod sincron pe disc;
acest lucru este echivalent cu opțiunea de montare
„dirsync” aplicată la un subset de
fișiere.
- e
- Atributul „e” indică faptul că fișierul
utilizează „extents” pentru cartografierea blocurilor
de pe disc. Acesta nu poate fi eliminat folosind chattr(1).
- E
- Un fișier, un director sau o legătură
simbolică cu atributul „E” definit este
criptată de sistemul de fișiere. Acest atribut nu poate fi
definit sau eliminat folosind chattr(1), deși poate fi
afișat de lsattr(1).
- F
- Un director cu atributul „F” definit indică faptul
că toate căutările de rute în interiorul
directorului respectiv se fac fără a ține seama de
majuscule și minuscule. Acest atribut poate fi modificat numai
în directoare goale pe sisteme de fișiere cu funcția
de majuscule și minuscule „casefold”
activată.
- i
- Un fișier cu atributul „i” nu poate fi modificat: nu
poate fi șters sau redenumit, nu poate fi creată nicio
legătură către acest fișier, majoritatea
metadatelor din fișier nu pot fi modificate, iar fișierul nu
poate fi deschis în modul de scriere. Numai superutilizatorul sau
un proces care posedă capacitatea CAP_LINUX_IMMUTABLE poate defini
sau elimina acest atribut.
- I
- Atributul „I” este utilizat de codul htree pentru a indica
faptul că un director este indexat folosind arbori cu sume de
control. Acesta nu poate fi definit sau eliminat cu chattr(1),
deși poate fi afișat cu lsattr(1).
- j
- Un fișier cu atributul „j” are toate datele sale
scrise în jurnalul ext3 sau ext4 înainte de a fi scrise
în fișierul propriu-zis, dacă sistemul de
fișiere este montat cu opțiunile
„data=ordered” sau „data=writeback” și
dacă sistemul de fișiere are un jurnal. În cazul
în care sistemul de fișiere este montat cu opțiunea
„data=journal”, toate datele din fișier sunt deja
înregistrate în jurnal, iar acest atribut nu are niciun
efect. Numai superutilizatorul sau un proces care posedă
capacitatea CAP_SYS_RESOURCE poate defini sau elimina acest atribut.
- m
- Un fișier cu atributul „m” este exclus de la
comprimare pe sistemele de fișiere care acceptă comprimarea
pe fișier.
- N
- Un fișier cu atributul „N” definit indică
faptul că fișierul are date stocate în linie,
în interiorul nodului-i. Acesta nu poate fi definit sau eliminat cu
chattr(1), deși poate fi afișat cu
lsattr(1).
- P
- Un director cu atributul „P” definit va impune o
structură ierarhică pentru ID-urile de proiect. Aceasta
înseamnă că fișierele și directoarele
create în director vor moșteni codul de proiect al
directorului, iar operațiile de redenumire sunt
restricționate, astfel încât, atunci când un
fișier sau un director este mutat într-un alt director,
codurile de proiect trebuie să se potrivească. În
plus, o legătură directă cu un fișier poate fi
creată numai dacă ID-ul de proiect al fișierului
și cel al directorului de destinație corespund.
- s
- Atunci când un fișier cu atributul „s” definit
este șters, blocurile sale sunt anulate și scrise din nou pe
disc. Notă: asigurați-vă că ați citit
secțiunea privind erorile și limitările de la
sfârșitul acestui document.
- S
- Atunci când un fișier cu atributul „S” este
modificat, modificările sunt scrise în mod sincron pe disc;
acest lucru este echivalent cu opțiunea de montare
„sync” aplicată la un subset de fișiere.
- t
- Un fișier cu atributul „t” nu va avea un fragment de
bloc parțial la sfârșitul fișierului fuzionat
cu alte fișiere (pentru acele sisteme de fișiere care
acceptă fuziunea de coadă „tail-merging”).
Acest lucru este necesar pentru aplicații precum LILO, care citesc
direct sistemul de fișiere și care nu înțeleg
fișierele cu fuziune de coadă. Notă: În
momentul scrierii acestui articol, sistemele de fișiere ext2, ext3
și ext4 nu acceptă fuziunea de coadă.
- T
- Un director cu atributul „T” va fi considerat ca fiind
în vârful ierarhiilor de directoare în sensul
alocatorului de blocuri Orlov. Aceasta este o indicație pentru
alocatorul de blocuri utilizat de ext3 și ext4 că
subdirectoarele din acest director nu sunt legate între ele
și, prin urmare, ar trebui să fie separate în scopul
alocării. De exemplu, este o idee foarte bună să
definiți atributul „T” pentru directorul
„/home”, astfel încât
„/home/adrian” și „/home/maria”
să fie plasate în grupuri de blocuri separate. În
cazul directoarelor în care acest atribut nu este definit,
alocatorul de blocuri Orlov va încerca să grupeze
subdirectoarele mai aproape unele de altele, atunci când este
posibil.
- u
- Atunci când un fișier cu atributul „u” definit
este șters, conținutul său este salvat. Acest lucru
permite utilizatorului să ceară anularea ștergerii.
Notă: asigurați-vă că ați citit
secțiunea privind erorile și limitările de la
sfârșitul acestui document.
- x
- Un fișier cu „x” solicită utilizarea modului
de acces direct (dax), în cazul în care nucleul
acceptă DAX. Acest lucru poate fi anulat prin opțiunea de
montare „dax=never”. Pentru mai multe informații,
consultați documentația nucleului pentru dax:
<https://www.kernel.org/doc/html/latest/filesystems/dax.html>.
- În cazul în care atributul este definit pentru un director
existent, acesta va fi moștenit de toate fișierele și
subdirectoarele care sunt create ulterior în directorul respectiv.
În cazul în care un director existent conținea
anumite fișiere și subdirectoare, modificarea atributului
în directorul părinte nu modifică atributele acestor
fișiere și subdirectoare.
- V
- Un fișier cu atributul „V” are activată
funcția fs-verity. Acesta nu poate fi scris, iar sistemul de
fișiere va verifica automat toate datele citite din el în
raport cu un algoritm criptografic care acoperă întregul
conținut al fișierului, de exemplu, prin intermediul unui
arbore Merkle. Acest lucru face posibilă autentificarea
eficientă a fișierului. Acest atribut nu poate fi definit
sau eliminat cu ajutorul chattr(1), deși poate fi
afișat cu ajutorul lsattr(1).
chattr a fost scris de Remy Card
<Remy.Card@linux.org>. În prezent, este
întreținut de Theodore Ts'o <tytso@alum.mit.edu>.
Atributele „c”, „s” și
„u” nu sunt onorate de sistemele de fișiere ext2, ext3
și ext4, așa cum sunt implementate în nucleele Linux
din linia principală actuală. Stabilirea atributelor
„a” și „i” nu va afecta capacitatea de a
scrie în descriptorii de fișiere deja existenți.
Opțiunea „j” este utilă numai pentru
sistemele de fișiere ext3 și ext4.
Opțiunea „D” este utilă numai pe
nucleul Linux 2.5.19 și ulterior.
chattr face parte din pachetul „e2fsprogs”
și este disponibil la http://e2fsprogs.sourceforge.net.
Traducerea în limba română a acestui manual a
fost făcută de Remus-Gabriel Chelu
<remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită;
citiți
Licența
publică generală GNU Versiunea 3 sau o versiune
ulterioară cu privire la condiții privind drepturile de autor.
NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea
acestui manual, vă rugăm să trimiteți un e-mail
la
translation-team-ro@lists.sourceforge.net.