Prawa dostępu do plików i katalogów
Prawa dostępu do
plików i katalogów
Wstęp
Prawa dostępu do
plików i katalogów są jedną z ciekawszych rzeczy, których niestety
brakuje systemom Win 9X. Dlatego dla początkujących użytkowników
Linuxa mogą okazać się niezrozumiałe, ale zapoznanie się z nimi i
późniejsza praca nie jest wcale trudna! Wystarczy tylko mieć
wszystko podane i zebrane w jednym miejscu, co postaram się uczynić
w tym artykule. :-)
Po co
prawa?
Jak już zapewne
zauważyłeś, Linux to nie W** i jeśli nie masz udzielonego dostępu do
systemu to niestety, ale nic nie zamieszasz :-). W Linuxie masz
swoje konto, masz swój katalog domowy. Dostęp do niego masz tylko TY
(no i root :-)). Tworzysz pliki, katalogi, do których dostęp mają
jednak tylko osoby upoważnione! Każdy plik posiada informacje o
prawach dostępu do niego i jeśli sobie zażyczysz nikt inny nie
będzie mógł z niego skorzystać. Być może będziesz chciał go
udostępnić, także i tutaj niezbędne będzie ustawienie odpowiednich
praw - zaczynamy!
Właściciel i
grupa
Jeśli utworzysz plik
lub katalog stajesz się automatycznie jego właścicielem i dostaje on
Twój identyfikator zamieszczony w rubryce - owner. W polu group
dostanie on info o grupie do której należałeś w momencie utworzenia
pliku. Ale po kolei.
Właściciel
pliku jest to osoba do której dany plik należy. Jeśli jesteś
zalogowany np. jako artur to po utworzeniu nowego pliku właścicielem
będzie osoba o identyfikatorze artur (czyli TY). Istnieją też pliki
systemowe, które należą do różnych osób (ale nie zwykłych
użytkowników) i NIE należy ich zmieniać np. root, bin, daemon itd.
chown - jeśli
jesteś pewien, że plik nie jest plikiem systemowym możesz śmiało
spróbować zmienić jego właściciele poleceniem - chown. Ma ono
następującą składnie:
chown <właściciel> <nazwa
pliku>
System sprawdzi czy w
systemie istnieje odpowiedni plik i użytkownik. Pamiętaj, że jeśli
zmienisz prawa dostępu dla innej osoby, może sie okazać, że stracisz
odpowiednie uprawnienia! Wtedy pozostaje tylko zmiana tych praw z
poziomu konta root.
Grupy - są
bardzo przydatną rzeczą służącą do organizacji użytkowników mających
dostęp do systemu na tych samych zasadach. Możesz podzielić
użytkowników na zaufanych, obcych itd. Wtedy jedni będa mieli dostęp
do niektórych plików, inni nie. Rodzaj grupy jest ustalany w
momencie tworzenia konta. Jeśli chcesz zmienić prawa dostępu do
pliku przez grupę użyj polecenia:
chgrp <grupa> <nazwa
pliku>
Tak jak w wypadku
chown system sprawdzi czy plik i grupa istnieją.
Typy
praw
W linuxie istnieją
tylko trzy typu praw dostępu. W zupełności jednak wystarczają do
całkowitej kontroli systemu. Prawo do zapisu pliku (write), pozwala
na modyfikacje go, a także na usuwanie, prawo do odczytu (read) daje
możliwość przeczytania pliku, ale i skopiowania! Trzeci typ to
wykonywanie (execute). Jeśli plik nadaje się do uruchomienia
(binaria, skrypty), system go wykona. Nadawanie prawa execute dla
zwykłego pliku nie ma sensu, gdyż system nie będzie potrafił go
wykonać.
Jeśli chodzi o
katalogi to prawo do zapisu pozwala na tworzenie, przenoszenie,
usuwanie plików w nim zawartych. Prawo wykonywania daje możliwość
wejścia do katalogu poleceniem cd.
Format zapisu
praw
Linux używa trzech
pozycji w zapisie praw dostępu. Pierwsza to właściciel (owner),
druga grupa (group) i ostatnia dla pozostałych userów (other). Takie
posegregowanie pozwala ustawić co kto może z plikiem zrobić.
Informacje te
zapisywane są w postaci kto odczyt|zapis|wykonanie. Tak więc 3
kategorie użytkowników i każdy ma 3 pola na ustawienie praw.
Istnieje jeszcze
jedna kolumna, która określa rodzaj - czy jest plikiem, katalogiem
itd. Symbol "-" oznacza, że jest to plik, literka "d" - świadczy o
katalogu.
Przyjrzymy się teraz
prawą na przykładzie pliku. Wydajemy polcenie ls -l test i
otrzymujemy:
-rw-rw-r-- 1 artur artur 0 Mar 4 13:01
test
System wywalił na
prawa dostępu do pliku test. Pierwsza kolumna od lewej świadczy, że
jest to zwykły plik (-), następne 3 pozycje są prawami dla
właściciela (w tym wypadku artur) i dają mu prawo do odczytu jak i
do zapisu (rw). Pole execute jest puste (-). Tak samo wygląda
sytuacja dla grupy (artur). Natomiast pozostali użytkownicy mogą
tylko przeczytać ten plik (ostatnie 3 symbole) (r).
Podsumowując. Znak -
oznacza brak jakichkolwiek praw, r pozwala na czytanie, w na zapis,
a x na wykonanie pliku. Posegregowane są one w trójki określające
kolejno (owner, group, other), przy czym pierwsza pozycja jest
informacją o rodzaju pliku.
chmod
Wiemy już jak wygląda
sprawa praw, musimy jeszcze poznać jak je ustawiać, modyfikować.
Służy do tego polecenie chmod, którego składnia wygląda tak:
chmod <prawa> <nazwa
pliku>
W linuxie istnieją
dwie możliwości podawania praw: bezpośredni za pomocą wartości
numerycznych (0-7) lub symbolicznych, z którymi już się zetknąłeś
(-rwx).
Ustawiając wartości
symboliczne pierwszą rzeczą, którą musisz ustalić jest argument kogo
ma dotyczyć dane prawo: u -użytkownik, g -grupa,
o -inni, a -wszyscy. Następnym podawanym parametrem
jest czy prawo ma zostać dodane czy odjęte: + i - . Potem podajemy
prawo, które ma być dodane lub odebrane.
chmod [u|g|o|a] [+|-] [r|w|x]
<plik>
Dla przykładu. Chcemy
dać możliwość wykonywania pliku test wszystkim użytkownikom systemu.
Wydajmy polecenie:
chmod a+x test
Analogicznie, nie
chcemy, żeby poza nami ktokolwiek miał dostęp do pliku test2
wpiszmy:
chmod go-rwx test2
Drugi sposób
ustawiania praw dostępu do plików to operowanie za pomocą liczb
ósemkowych. Za pomocą cyfr od 0-7 ustawimy odpowiednie prawa. Oto
dostępne wartości:
0 to - brak praw dostępu1 to -x
wykonywanie2 to -w- zapis3 to -wx zapis i
wykonywanie4 to r- odczyt5 to r-x odczyt i
wykonywanie6 to rw- odczyt i zapis7 to rwx odczyt,
zapis, wykonywanie
Wydając polecenie
chomod podajemy po nim 3 liczby, które oznaczją kolejno -
właściciela, grupę, innych. Dla przykładu:
chmod 755
oznacza, że
właściciel bedzie mógł odczytywać, zapisywać i wykonywać plik (7),
natomiast grupa i inni tylko odczytywać i wykonywać (5).
Pliki ustawione na
chmod 644 pozwalają właścielowi na odczyt i zapis (6), natomast
grupie i innym tylko na odczyt (4).
Zalety poszczególnych
metod:
1. Metoda numeryczna
jest łatwiejsza do przekazania drugiej osobie. Często można się
spotkać np. w dokumentacji cgi z poleceniem chmod 755. Jest krótsze
do napisania niż "ustaw prawa dostępu dla właściciela
...".2. Jeśli chcesz tylko dodać lub odebrać poszczególne
prawa dla pliku metoda symboliczna jest łatwiejsza i szybsza, bo nie
musisz ustawiać wartości dla wszystkich praw, a tylko dopisać to
jedno.
Katalogi
Linux uznaje katalogi
tak samo jak pliki, zatem prawa dostępu do nich ustawia się tak
samo!
Zmienna
UMASK
Zmienna UMASK daje
wytyczne systemowi, jakie prawa dostępu ma ustawić dla nowo
tworzonego pliku. Możesz ją dowolnie ustawiać, jeśli tylko masz do
tego odpowiednie uprawnienia (root, bądź swoje konto). Aby poznać
wartość zmiennej UMASK wydaj polecenie:
umask
Ja dostałem w
odpowiedzi 002 co oznacza, że nowo tworzone pliki mają atrybuty
odczytu i zapisywanie (wykonywanie dla katalogów) dla właściciela
oraz grupy, natomiast dla pozosatłych tylko odczyt w tym wykonywanie
katalogów. Dla wartości chmod byłoby to 664. Oto wartości ósemkowe
dla zmiennej UMASK:
0 - odczyt i zapis oraz wykonywanie
dla katalogów1 - odczyt i zapis2 - odczyt oraz
wykonywanie dla katalogów3 - odczyt4 - zapis oraz
wykonywanie dla katalogów5 - zapis6 - wykonywanie
tylko dla katalogów, dla plików brak dostępu7 - całkowity
brak dostępu
2k Artur Pęczak
arturoza@send.pl
18.03.2000
11:00
Wyszukiwarka
Podobne podstrony:
02 Linux Prawa dostępu do plików i katalogówjak zrobic spis plików i katalogów np do notatnikaOpinie uczniów gimnazjów na temat dostępności do nielegalnych substancji psychoaktywnych i przyczynPrezentacja na zajęcia dostęp do informacji publicznej 9 10 2015 (1)Dostęp do informacji publiczej zawartej w dokumentach osób ubiegających się o pracęRodzaje dostepu do internetuDefiniowanie reguł postępowania dla serwera FireWall określających sposób dostępu do wybranych serweDostęp do poczty z sieci Internet poprzez program Outlook Express i protokół POP3Metody dostępu do nośnikaFOR Ostrzega GUS ogranicza dostep do statystyki pub@PSI W14a Platforma NET Kolekcje dostęp do danychSzerokopasmowy dostęp do internetuHurtownie danych czyli jak zapewnic dostep do wiedzy tkwiacej w danychwięcej podobnych podstron