Menu
Strona główna
Hacking
Programowanie
Telefonia Komórkowa
Kody do Gier
Linux
Dlaczego?
Programowanie w Delphi
Mapa strony
 Programy
Systemy
Artykuły PDF

Security

Skanery
Sniffery
Security

Windows

Użytkowe
Przegl±darki graficzne
Kodeki
Narzędzia plikowe
Narzędzia dyskowe
Narzędzia systemowe
Sterowniki
Szyfrowanie danych
Zarz±dzanie hasłami
Zarz±dzanie rejestrem
£aty i Patche
Zarz±dzanie pamięci±
Synchronizacja czasu
Nagrywanie płyt
Free Antivirus (Darmowe Antyvirusy)
Sterowniki
Obróbka d¼więku
Edycja wideo

Internetowe

Bezpieczeñstwo
Programy P2P
Komunikatory
Dodatki do przegl±darek
Klienty poczty elektronicznej
Narzędzia Antyspamowe
Przegl±darki grup dyskusyjnych
Przegl±darki Offline
Serwery poczty elektronicznej
Telefonia komórkowa
Wyszukiwarki internetowe
Zdalny dostęp
Cybernianie
Klienty FTP
Narzędzia internetowe
Prywatnośc
Przegl±darki internetowe
Serwery FTP
Serwery WWW
Wspomagacze ści±gania
Zarz±dzanie sieci± lokaln±

Tuning Systemu

Diagnostyka i testowanie
Inne
Rozszerzenia pulpitu
Tapety na pulpit
Tuning Systemu
Ikony
Powłoki
Tuning sprzętu
Wygaszacze ekranu

Programowanie

Kompilatory
Biblioteki i komponenty
Bazy danych
Edytory programistyczne
¦rodowiska programistyczne
Debugery
Tworzenie wersji instalacyjnych

Webmastering

Użytkowe
Kursy

Linux

Użytkowe
Internetowe
Multimedialne

Programy biurowe

Programy dla firm
Pakiety biurowe
Administracja
Edytory tekstu
Grafika prezentacyjna
Kadry i płace
Wspomaganie projektowania
Zarz±dzanie projektami
Bazy danych
Finanse i księgowośc
Handel
Programy ewidencyjne
Zarz±dzanie informacj± osobist± (PIM)
 Download GRY
Pelne Wersje GIER
 Artykuy > Linux > Prawa dostępu do plikó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ępu
1 to -x wykonywanie
2 to -w- zapis
3 to -wx zapis i wykonywanie
4 to r- odczyt
5 to r-x odczyt i wykonywanie
6 to rw- odczyt i zapis
7 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ów
1 - odczyt i zapis
2 - odczyt oraz wykonywanie dla katalogów
3 - odczyt
4 - zapis oraz wykonywanie dla katalogów
5 - zapis
6 - wykonywanie tylko dla katalogów, dla plików brak dostępu
7 - całkowity brak dostępu

komentarz[1] |

Copyright 2006 - 2007 E-comet.info. Wszelkie prawa zastrzeone.

programy,artykuy,gry online,teledyski,filmiki,smieszne reklamy,sterowniki,kodeki,programy,program,download, downloads,security,bramka sms, teledyski,antywirusy,darmowe free program,programy p2p,tapety,programy biurowe,programy dla firm,narzdzia dyskowe,edytory,gry strategiczne,gry przygodowe,gry sportowe, symulatory, gry rpg,gry karciane, gry zrecznosciowe. Zapraszamy.
0.02 |