
Wpis przygotował Mijagi z serwisu dla uczniów - technik-informatyk.info.
Jak sprawdzić uprawnienia dla pliku lub katalogu?
Odpalamy konsolke. Do sprawdzenia prawa dostępu może nam posłużyć polecenie ls z atrybutem -l (od ang. long).
mijagi@laptop:~$ ls -l
Efektem wykonania polecenia będzie lista plików i katalogów pozaznaczanych na kolorowo (zależy od ustawień konsoli).
Przykład:
drwxr-xr-x 2 mijagi mijagi 12288 2009-08-11 18:21 folder
drwxr-xr-x, oznacza właśnie uprawnienia do pliku. Dalsze parametry to ilość powiązań, właściciel, grupa itd (to nas nie interesuje).
Pierwszy znak tego zapisu symbolizuje jakiego rodzaju jest dany plik.
* - – zwykły plik
* d – katalog
* c – plik znakowy
* b – plik blokowy
* l – dowiązanie symboliczne
* s – gniazdo
* p – nazwany potok
Z tego wynika, że w naszym przypadku mowa o katalogu. Kolejnie widzimy ciąg znaków: rwxr-xr-x. Jest to 9 znaków, podzielonych na trzy grupy. Pierwsze trzy znaki są powiązane z właścicielem pliku, kolejne trzy dotyczą grupy użytkowników a trzy ostatnie określają uprawnienia innych użytkowników. W tym zestawie możemy zobaczyć 4 znaki : (r,w,x,- (nie chodzi o w/w spis)). Opiszę co oznacza każdy z nich:
* r – read, uprawnienie do czytania
* w -write, uprawnienie do zapisu lub zmiany zawartości
* x – execute, uprawnienie do wykonania, lub przejrzenia zawartości katalogu
* - – brak danego uprawnienia
Prawa dostępu zawsze stosuje się w odpowiedniej kolejności (r,w,x). Przeanalizujmy przykład, pierwsze trzy znaki to : rwx, wynika z tego, że właściciel pliku ma uprawnienia do odczytu, zapisu i wykonania. Grupa właściciela, ma prawo (r-x) do odczytu i wykonania, inni użytkownicy mają takie same prawa jak grupa (r-x).
Skoro umiemy już odczytywać uprawnienia, to przydałoby się nauczyć je nadawać.
Jak nadać uprawnienia dla pliku lub katalogu?
Istnieje kilka sposobów na to by dodać uprawnienia / prawa dostępu dla pliku. Do nadawania dostępu użyjemy polecenia chmod (od ang. change mode).
Zanim zaczniemy dodawać/odejmować uprawnienia, musimy zapoznać się z listingiem:
* a – all, wszyscy
* u – user, użytkownik
* g – group, grupa
* o – others, inni
* + – dodanie prawa
* - – odebranie prawa
* = – zastąpienie starego uprawnienia nowym
Powyższe skróty są niezbędne do nadawania uprawnień. Jako przykład, załóżmy, że dla pliku “plik”, chcemy nadać uprawnienia: odczyt i wykonanie dla grupy do której przypisany jest plik.
chmod g+rx plik
Analogicznie możemy podłożyć inne dane.
Drugi sposób nadawania uprawnień, za pomocą liczb ósemkowych.
W tym sposobie prawa określamy za pomocą cyfr od 0-7. Np. 777, pierwsza cyfra oznacza zapis uprawnień dla użytkownika, druga dla grupy, trzecia dla reszty użytkowników (analogicznie jak w powyższych przykładach). Jeśli chcemy rozumieć co oznacza cyfra 7 w tym zapisie, musimy zapamiętać pewną rzecz.
Założenia:
* 1 – x, prawo do wykonania
* 2 – w, prawo do zapisu
* 4 – r, prawo do odczytu
Znając założenia, przeanalizujmy uprawnienia 777 raz jeszcze. Pierwszy znak jak już wcześniej wspomniałem określa uprawnienia dla właściciela pliku. 7 = 4 + 2 + 1, czyli prawo do odczytu (4), prawo do zapisu (2) oraz prawo do wykonania (1). Dla grupy i innych użytkowników ta zasada działa analogicznie. Jeśli chcemy nadać uprawnienia do zapisu i wykonania, wystarczy zsumować (2+1) i wpisać w odpowiedniej kolejności.
Bardziej zaawansowane uprawnienia możemy nadawać za pomocą czterech cyfr. Dodatkową cyfrę stawiamy na początku, by poznać jej znaczenie przeanalizujmy:
* 1 – tzw. lepki bit
* 2 – ustawienie ogólnego zabezpieczenia
* 4 – ustawienie identyfikatora użytkownika podczas uruchamiania
Wtedy nasz zapis wyglądałby następująco:
chmod 2777 plik
To na tyle podstawowych zasad dotyczących uprawnień. Dzięki za uwagę.
Tagi: podstawy