[#] CHMOD, CHOWN - Zaawansowna zmiana uprawnień

( Ostatnio zmieniony pon., 09/06/2008 - 12:07 )
 

Nadawanie uprawnień

Składnia:

chmod kategoria operatory[+/-/=] uprawnienia nazwa_pliku

Opis kategorii użytkowników:

u – użytkownik (user)
g – grupa (group)
o – inni (others)
a – wszyscy (all)

Operatory:
+ dodajemy uprawnienia
- odebramy uprawnienia
= zmieniamy uprawnienia / przypisujemy takie, jakie podamy

Przykład użycia:

chmod u=rwX,g+rw,o-r nasz_plik.txt

Powyższe polecenie wykona operacje na pliku „nasz_plik.txt“, właścicielowi – nadając prawo do odczytu, zapisu oraz wykonania, grupie – dodając prawo odczytu i zapisu, a innym – odebierając prawo odczytu

UWAGA: w naszym przypadku, duża liteka „X“ mówi o tym, że właściciel tylko wtedy będzie mógł wykonywać plik, jeżeli ma on już ustawione prawo wykonania, w innych plikach pozostanie wyłączone (tych co nie mają mieć nie będą)

Uprawnienia

Typ zapisu Prawo odczytu Prawo zapisu Prawo uruchomienia Specjalne prawo uruchomienia UID/GID sticky bit
Numer 4 2 1      
Znak r (read) w (write) x (execute) X s t

Przykłady uprawnień liczbowych:

Prawa dostępu Wartość liczbowa Opis
-rw------- 600 Tylko właściciel ma prawo do odczytu i zapisu.
-rw-r–r-- 644 Właściciel ma prawo do zapisu i odczytu, a reszta tylko prawo odczytu.
-rw-rw-rw- 666 Wszyscy mają prawo do odczytu i zapisu.
-rwx------ 700 Tylko właściciel ma prawo do odczytu, zapisu, uruchomienia.
-rwxr-xr-x 755 Właściciel ma wszystkie prawa do pliku, reszta tylko prawo do odczytu i ruchomienia.
-rwxrwxrwx 777 Wszyscy mają pełne pełne prawa (nie zalecane).
-rwx–x–x 711 Wszystkie prawa ma właściciel, reszta tylko prawo uruchomienia.
drwx------ 700 Właściciel katalogu ma pełne prawa do niego (katalogi mają literkę ‚d‘ na oczątku zamiast ‚-‘)
drwxr–r-- 744 Właściciel ma pełne prawa do katalogu, reszta ma prawo do odczytu.

Przykłady użycia:

1. wszyscy mogą edytować nasz_plik.txt

chmod a+w nasz_plik.txt

2. zabieramy możliwość wykonania nasz_plik.txt przez pozostałych użytkowników

chmod o-x nasz_plik.txt

3. pozostali użytkownicy, oraz grupa będą mogli tylko czytać i wykonywać nasz_plik.txt

chmod go+rx nasz_plik.txt

4. wszyscy będą posiadać pełny dostęp do katalogu /home/tomek oraz jego podkatalogów

chmod 777 /home/tomek -R

Zmień uprawnienia i pokaż co zrobiłeś

-c, –changes (podobne do verbose lecz pokazuje tylko wykonane zmiany)

chmod -c 600 *
uprawnienia do `a.txt' zmienione na 0600 (rw-------)
uprawnienia do `b.txt' zmienione na 0600 (rw-------)
uprawnienia do `c.txt' zmienione na 0600 (rw-------)

Teraz gdy wykonamy to samo polecenie, nie zostanie zwrócony żaden wynik działania. Dzieje się tak, ponieważ polecenie chmod nie ma nic do roboty – wszystkie uprawnienia są jak trzeba.

chmod -c 600 *
$

Ustaw uprawnienia na takie jakie ma inny plik

chmod --reference /home/tomek/plik_ok.txt /home/tomek/pliczki/*
chmod -r /home/tomek/plik.jpg inny.png

lub zamiast „–reference“ użyj „-r“, tylko NIE POMYL SIĘ z „-R“ (rekursywnie)

Każdy modyfikuje swoje, a nie inaczej – bit SICKY

Bit t, zwany sticky bit, ma obecnie znaczenie tylko dla katalogów. Jeśli katalog ma ten bit ustawiony, to użytkownicy mający w nim prawo zapisu nie mogą modyfikować nawzajem swoich plików. Jest to więc bit używany do katalogów współdzielonych między wieloma użytkownikami.

Ustawianie bitu sticky:

sudo chmod 1755 /mnt/katalog/

Spowoduje, że prawa dostępu do tego katalogu ustawione będą na 755 czyli: właściciel może wszystko, gruba i inni mogą jedynie wejść do katalogu i zobaczyć jego zawartość. Jedynka przed 755 oznacza że katalog ten ma ustawiony bit lepkości co spowoduje iż użytkownicy nie będą mogli modyfikować nawzajem swoich plików, a jedynie te których są właścicielem.

Przydatne jeśli tworzymy zasoby udostępniane poprzez Sambę.

Zmieniamy właściciela plików – CHOWN

Przykłady: Niech właścicielem pliku /var/run.pid będzie nasz administrator (ro­ot)

chown root /var/run/httpd.pid

Właścicielem katalogów /home/tomek i /mnt/MAGAZYN, ma być użytkownik tomek i grupa tomek

chown nobody:nobody /home/tomek /mnt/MAGAZYN

Nie znam nazwy grupy ani nie wiem czy istnieje, ale znam „jej“ identyfikator

chown :500 /home

Zmieńmy rekursywnie właściciela katalogu /mnt/DZIAL_X, na użytkownika „tomek“ i przypiszmy katalog do grupy „dzial_x“ (grupa dzial_x musi istnieć)

chown -R tomek:dzial_x /mnt/DZIAL_X

Przdatne linki:

http://pl.wikipedia.org/wiki/Chmod

Twoja ocena: Brak Średnio: 4.3 (6 głosów)

Dodaj nową odpowiedź

Informacja:

Osoby zamieszczające wypowiedzi naruszające prawo lub prawem chronione dobra osób trzecich, mogą ponieść z tego tytułu odpowiedzialność karną lub cywilną. Upewnij się, że twoja wypowiedź nie godzi w niczyje mienie.

  • Internal paths in single or double quotes, written as "internal:node/99", for example, are replaced with the appropriate absolute URL or path. Paths to files in single or double quotes, written as "files:somefile.ext", for example, are replaced with the appropriate URL that can be used to download the file.
  • Adresy internetowe są automatycznie zamieniane w odnośniki, które można kliknąć.
  • Dozwolone znaczniki HTML: <strong> <blockquote> <code>
  • Znaki końca linii i akapitu dodawane są automatycznie.

Więcej informacji na temat formatowania

Łapirobot
Proszę odpowiedzieć
h
m
m
4
a
a
u
4
n
c
Enter the code without spaces and pay attention to upper/lower case.