Są pewne atrybuty, które można przypisać plikom i katalogom aby kontrolować jakie operacje mogą lub nie mogą być wykonane na tych plikach i katalogach. Przykładowo można przypisać plikowi atrybut, który spowoduje, że żaden użytkownik łącznie z rootem nie może skasować, zmodyfikować tego pliku, zmienić jego nazwy czy skompresować go. Takie atrybuty mogą być ustawione na plikach i katalogach w systemie plików ext3, ext4 lub xfs.
Atrybut | Działanie |
a (append) | Do pliku można tylko dopisać dane. |
A | Zapobiega aktualizacji czasu dostępu do pliku. |
c (compressed) | Plik jest automatycznie kompresowany na dysku. |
D | Zmiany katalogu są zapisywane synchronicznie na dysku. |
e (extend format) | Plik używa extentów do mapowania bloków na dysku. |
i (immutable) | Plik nie może być zmieniony, skasowany, nie może być zmieniona jego nazwa. |
S (synchronous) | Zmiany pliku są zapisywane synchronicznie na dysku. |
Są dwie komendy do zarządzania atrybutami:
# lsatrr
– wyświetla atrybutu pliku lub katalogu.
# chattr
– ustawia atrybutu pliku lub katalogu.
Aby wyświetlić aktualne atrybuty pliku file1:
1 2 |
# lsattr file1 ---------------- file1 |
Wyjście wskazuje na to, że nie są ustawione żadne atrybuty na pliku. Aby pozwolić tylko na dodawanie danych do pliku (append) używamy komendy chattr
:
1 2 3 |
# chattr +a file1 # lsattr file1 -----a---------- file1 |
Spróbujmy teraz wpisać zawartość pliku /etc/fstab
do pliku file1:
1 2 |
# cat /etc/fstab > file1 -bash: file1: Operation not permitted |
Jeżeli natomiast spróbujemy tylko dodać coś do pliku file1 to zakończy się to powodzeniem:
1 |
# cat /etc/fstab >> file1 |
Dodajmy teraz flagę niezmienności (immutable) do tego pliku aby zabezpieczyć go przed wykasowaniem lub modyfikacją:
1 2 3 |
# chattr +i file1 # lsattr file1 ----ia---------- file1 |
Jeżeli teraz spróbujemy go wykasować otrzymamy:
1 2 3 |
# rm file1 rm: remove regular file `file1'? y rm: cannot remove ‘file1’: Operation not permitted |
By usunąć oba atrybuty:
1 |
# chattr –ia file1 |
Hello my friend! I wish to say that this article is amazing,
nice written and come with almost all vital infos. I’d like to
see extra posts like this .
I really love your blog.. Great colors & theme. Did you make this amazing
site yourself? Please reply back as I’m attempting to create my own website and want to learn where you got this
from or exactly what the theme is called. Many thanks!