NAZWA¶
chattr - zmienia atrybuty plików w linuksowym systemie plików
SKŁADNIA¶
chattr [
-RVf ] [
-v wersja ] [
tryb ]
pliki...
OPIS¶
chattr zmienia atrybuty plików w linuksowym systemie
plików.
Format w trybie symbolicznym ma postać
+-=[
aAcCdDeijsStTu].
Operator
+ powoduje dodanie wybranych atrybutów do
istniejących;
- powoduje ich usunięcie, a
=
powoduje, że stają się jedynymi atrybutami jakie
posiadają pliki.
Litery
aAcCdDeijsStTu oznaczają wybór nowych
atrybutów dla plików: tylko dopisywanie (
a), bez
aktualizacji atime (
A), kompresja (
c), bez kopiowania przy
zapisie (
C), bez zrzutów (
d), synchroniczna aktualizacja
katalogu (
D), format ekstentu (
e), niezmienny (
i),
dziennik danych (
j), bezpieczne kasowanie (
s), synchroniczna
aktualizacja (
S), brak łączenia końcówek
(
t), korzeń hierarchii katalogów (
T) oraz
niekasowalność (
u).
Następujące atrybuty mają status tylko do odczytu i
mogą zostać wyświetlone przez
lsattr(1), lecz nie
są modyfikowalne przez
chattr: błąd kompresji (
E), duży plik (
h), katalog indeksowany (
I), dane
wewnątrz i-węzła (
N), surowy dostęp
kompresji (
X) i skompresowany plik "brudny" (
Z).
Nie wszystkie opcje są obsługiwane i wykorzystywane przez
wszystkie systemy plików. Więcej informacji na ten temat
należy szukać w podręcznikach systemowych danych
systemów plików, takich jak
btrfs(5),
ext4(5) i
xfs(5).
OPCJE¶
- -R
- Rekurencyjna zmiana atrybutów katalogów i ich
zawartości.
- -V
- Tryb szczegółowy komunikatów chattr oraz wypisanie
wersji programu.
- -f
- Wyłącza wyświetlanie większości
komunikatów o błędach.
- -v wersja
- Ustawia wersję pliku/numer pokolenia (generation number).
ATRYBUTY¶
Plik z ustawionym atrybutem
a może być otwierany do zapisu
tylko w trybie dopisywania. Jedynie superużytkownik lub proces
posiadający możliwosć CAP_LINUX_IMMUTABLE może
ustawić lub zdjąć ten atrybut.
Gdy modyfikowany jest plik z ustawionym atrybutem
A, jego rekord atime
nie jest zmieniany. Pozwala to uniknąć sporej ilości
dyskowych operacji wejścia/wyjścia w systemach zainstalowanych
na laptopach.
Plik z ustawionym atrybutem
c jest automatycznie kompresowany na dysku
przez jądro. Odczyt tego pliku zwraca zdekompresowane dane. Zapis do
pliku powoduje kompresję danych przed zapisaniem ich na dysku. Uwaga:
proszę zapoznać się z rozdziałem o
błędach i ograniczeniach na końcu niniejszego dokumentu.
Plik z atrybutem
C nie jest przedmiotem aktualizacji kopiowania przy
zapisie. Flaga jest obsługiwana wyłącznie w systemach
przeprowadzających kopiowanie przy zapisie. Uwaga: w btrfs flaga ta
powinna być ustawiana dla pustych i nowych plików. Jeśli
zostanie ustawiona dla pliku mającego bloki danych, nie jest
zdefiniowane, kiedy bloki przypisane do pliku będą w
pełni stabilne. Jeśli flaga jest ustawiona na katalogu, nie ma
wpływu na sam katalog, lecz wszystkie nowe pliki w nim tworzone
będą miały ustawiony atrybut No_COW.
Plik z ustawionym atrybutem
d nie jest kandydatem do archiwizacji,
podczas uruchamiania programu
dump(8).
Gdy modyfikowany jest katalog z ustawionym atrybutem
D, zmiany są
zapisywane na dysk synchronicznie; jest to równoznaczne z opcją
montowania "dirsync", dotyczącą określonego
zbioru plików.
Atrybut
e wskazuje, że plik używa ekstentów do
mapowania bloków na dysku. Nie może być usunięty
przez
chattr(1).
Atrybut
E jest używany przez eksperymentalne łatki
dotyczące kompresji do oznaczenia, że dany skompresowany plik ma
błąd kompresji. Nie może być ustawiony ani
zdjęty przez
chattr(1), choć może być
wyświetlony przez
lsattr(1).
Atrybut
h wskazuje, że plik przechowuje swe bloki w jednostkach
rozmiaru bloków systemu plików, zamiast jednostek
sektorów, co oznacza, że plik jest (lub był)
większy niż 2 TB. Nie może być ustawiony ani
zdjęty przez
chattr(1), choć może być
wyświetlony przez
lsattr(1).
Plik z atrybutem
i nie może być zmieniany: nie może
być kasowany ani nie może być zmieniana jego nazwa, nie
można tworzyć do niego dowiązań i nie można
zapisać do niego żadnych danych. Jedynie superużytkownik
i proces posiadający możliwość CAP_LINUX_IMMUTABLE
może ustawić lub zdjąć ten atrybut.
Atrybut
I jest używany przez kod h-drzew do wskazania, że
dany katalog jest indeksowany za pomocą haszowanych drzew. Nie
może być ustawiony ani zdjęty przez
chattr(1),
choć może być wyświetlony przez
lsattr(1).
Wszystkie dane z pliku z ustawionym atrybutem
j zostaną zapisane
do dziennika ext3 lub ext4 przed zapisaniem ich do pliku, o ile system
plików został zamontowany z opcją
"data=ordered" lub "data=writeback". Gdy system
plików jest zamontowany z opcją "data=journal",
wszystkie dane są zapisywane do dziennika, więc ten atrybut nie
ma znaczenia. Jedynie superużytkownik i proces posiadający
możliwość CAP_LINUX_IMMUTABLE może ustawić
lub zdjąć ten atrybut.
Plik z atrybutem
N wskazuje że plik przechowuje dane
bezpośrednio w i-węźle. Nie da się go
ustawić ani zresetować za pomocą
chattr(1),
choć można go wyświetlić programem
lsattr(1).
Gdy plik z ustawionym atrybutem
s zostanie skasowany, jego bloki
zostają wyzerowane i zapisane z powrotem na dysku. Uwaga: proszę
zapoznać się z rozdziałem o błędach i
ograniczeniach na końcu niniejszego dokumentu.
Gdy modyfikowany jest plik z ustawionym atrybutem
S, zmiany są
zapisywane na dysk synchronicznie; jest to równoznaczne z opcją
montowania "sync", dotyczącą określonego zbioru
plików.
Plik z atrybutem
t nie będzie miał
częściowego fragmentu bloku na końcu pliku
uwspólnionego z innymi plikami (na systemach plików
wspierających łączenie końcówek). Jest to
niezbędne dla programów takich jak LILO, które
dokonują bezpośredniego odczytu z systemu plików i
które nie rozumieją plików o połączonych
końcówkach. Uwaga: w chwili pisania tego tekstu systemy
plików ext2 i ext3 nie obsługują (jeszcze, oprócz
bardzo eksperymentalnych łatek) łączenia
końcówek.
Katalog z atrybutem
T zostanie uznany za będący na szczycie
hierarchii katalogów na potrzeby alokatora bloków Orlov. Jest to
wskazówka dla alokatora bloków używanego przez ext3 i
ext4, że podkatalogi znajdujące się poniżej nie
są ze sobą powiązane i dlatego powinny być
rozmieszczone w innych miejscach do celów alokacji. Dobrym
pomysłem jest np. ustawienie atrybutu "T" dla katalogu /home,
dzięki czemu /home/jasiek i /home/marysia będą
położone w oddzielnych grupach bloków. Do
katalogów, które nie mają ustawionego tego atrybutu,
alokator bloków Orlov będzie się starał
grupować podkatalogi bliżej siebie tam, gdzie to będzie
możliwe.
Gdy kasowany jest plik z ustawionym atrybutem
u, jego
zawartość zostaje zachowana. Umożliwia to
użytkownikowi odzyskanie takiego pliku. Uwaga: proszę
zapoznać się z rozdziałem o błędach i
ograniczaniach na końcu niniejszego dokumentu.
Atrybut
X jest używany przez eksperymentalne łatki
dotyczące kompresji do oznaczenia, że dany skompresowany plik
jest surowy i dostęp do niego może być
bezpośredni. Nie może być ustawiony ani zdjęty
przez
chattr(1), choć może być wyświetlony
przez
lsattr(1).
Atrybut
Z jest używany przez eksperymentalne łatki
dotyczące kompresji do oznaczenia, że dany skompresowany plik
jest "brudny". Nie może być ustawiony ani
zdjęty przez
chattr(1), choć może być
wyświetlony przez
lsattr(1).
AUTOR¶
dumpefs został napisany przez Remy'ego Carda
<Remy.Card@linux.org>. Obecnie opiekuje się nim Theodore Ts'o
<tytso@alum.mit.edu>.
BŁĘDY I OGRANICZENIA¶
Atrybuty "c", "s" i "u" nie są honorowane
przez kod systemów plików ext2, ext3 i ext4 w obecnej
implementacji jąder Linux z głównej gałęzi.
Opcja "j" jest przydatna tylko gdy system plików jest
zamontowany jako ext3 lub ext4.
Opcja "D" jest przydatna tylko przy korzystaniu z jądra Linux w
wersji 2.5.19 lub późniejszej.
DOSTĘPNOŚĆ¶
chattr jest częścią pakietu e2fsprogs i jest
dostępny na stronie
http://e2fsprogs.sourceforge.net.
ZOBACZ TAKŻE¶
lsattr(1),
btrfs(5),
ext4(5),
xfs(5).
TŁUMACZENIE¶
Autorami polskiego tłumaczenia niniejszej strony podręcznika man
są: Przemek Borys (PTM) <pborys@dione.ids.pl>, Andrzej M.
Krzysztofowicz (PTM) <ankry@green.mf.pg.gda.pl> i Michał
Kułach <michal.kulach@gmail.com>.
Polskie tłumaczenie jest częścią projektu
manpages-pl; uwagi, pomoc, zgłaszanie błędów na
stronie
http://sourceforge.net/projects/manpages-pl/. Jest zgodne z
wersją
1.42.12 oryginału.