Amit tudni kell:
Adjuk ki valahol a könyvtárszerkezetünkben a következő parancsot:
user@user-desktop:~$ ls -li
Eredmény: (valami hasonlókat kell látnunk)
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
131084 drwxr-xr-x 7 user users 4096 2011-03-08 14:51 Asztal131199 -rw-r--r-- 1 root root 9 2011-02-26 16:39 bin.sh
131724 -rw-r--r-- 1 user users 23 2011-02-26 15:35 bin.txt
1) Az első számsorozat az egyes file-ok inode számát mutatja, mindene gyes file-hoz tartozik egy ilyen szám az alapján egyértelműen meg lehet határozni, hogy hol található a keresett tartalom.
2) Ezután 1+9 darab úgynevezett jogosultsági bit következik:
- Ebből a 10 bitből az első karakter az azt jelzi hogy milyen típusú file-ról van szó.
- A maradék 9-et 3-as csoportokra bontjuk és sorban így kell értelmezni:
Tulajdonos jogosultsága, Tulajdonos csoport jogosultsága, Bárki más. (u,g,o)
3) Link counter
4) Tulajdonos
5) Tulajdonos csoport
6) Hossz
7) Dátum
8) Tartalom neve
A Linux fájl típusai: (első karakter jelöli a 10-ből)
"-" (plain) "egyszerű" fájl
"b" (block) típusú speciális fájl
"c" (character) típusú speciális fájl
"l "(link) szimbolikus link
"d" (directory) könyvtár
"p" (pipe) csővezeték
"s" (socket) kommunikációs végpont
Normál jogosultásgi bitek értékei: (Maradék 9 bit)
"-" nincs adott jogosultság
"r" (read) olvasás vagy listázás például könyvtár esetén
"w" (write) írás (törlés)
"x" (execute) végrehajtás vagy belépés például katalógus esetén
Nincsen külön törlési jogosultság, ha valamit tudunk írni akkor módosítani illetve törölni is tudunk.
Tehát:
A tulajdonosnak 3 jogosultság bitje van
A tulajdonos csoportnak is 3 jogosultság bitje van
Bárki másnak is 3 jogosultság bitje van.
3 bit sorban: r(olvasás),w(írásmtörlés),x(végrehajtás)
PL.:
drwxr-xr-x 3 user users 4096 2011-02-23 11:33 suli
Mit tudunk erről mondani?
1) Ez egy könyvtár ("d")
2) A tulajdonos olvashatja, írhatja,végrehajthatja ("rwx")
3) A tul. csoport olvashat, végrehajthat("r-x")
4) Bárki más olvashat, végrehajthat("r-x")
5) 3 merev link mutat ide ("3")
6) a user a tulajdonos
7) a users a tulajdonos csoport
8) 4096 hosszúságú
9) Ekkor lett módosítva
10) a könyvtár neve suli
Jogosultságok beállítása:
EGY FILE JOGOSULTSÁGÁT CSAK A TULAJDONOSA ILLETVE A ROOT MÓDOSÍTHATJA!!!
Parancs: chmod [opciók] [kinek] files
Pár kapcsoló:
"-f" eltünteti a legtöbb hibaüzenetet
"-v" minden feldolgozott file után üzenetet ír ki
"-c" Kiírja, hogy miken változtak a jogok
"-R" Rekurzívan hajta végre (pl adott könyvtár összes alkönyvtárának és file-jának a jogosultságait megváltoztatja)
"--reference" megadhatunk egy másik file-t és annak a jogosultságait állítjuk be az általunk állítani kívánt file-on
Műveletek:
"+" jogot adunk
"-" jogot elveszünk
"=" a maszkkal megegyező jogosultság beállaítása
PL.:
chmod +x /home/user/Asztal/1.sh -
Mivel nem adtuk meg hogy kinek,ezért mindenkinek jogot adunk végrehajtásra.
chmod ug -w /home/user/Asztal/log.txt
A tulajdonostól illetve a tulajdonos csoportjától elvettük az írási jogot.
Bináris Maszkolás:
Itt nem kell mást érteni csak annyit, hogy például a Tulajdonos 3 jogosultság bitjét felírjuk bináris számokkal.
Tehát: ( (2^2)+(2^1)+(2^1) )
- - - ==> Ha van jogosultság akkor 1, ha nincs akkor 0
4 2 1 Tehát: "rwx = 111" azaz "rwx = 7"
pl.: "r-x = 5" ; "-wx = 3" ...stb
Mivel három darab 3-as csoport van ezért így fog kinézni:
chmod 740 /home/user/Asztal/3.doc
740 = Tulajdonos (rwx) olvas, ír, végrehajt
Tul.csoport (r--) olvas
Bárki más (---) Semmilyen jogosultsága nincsen
Kiegészítő bitek:
Vannak bizonyos esetek amikor nem elég így "simán" beállítani a jogosultságokat, ekkor jönnek az un. kiegészítő bitek.
Három kiegészítő bit van:
1) SUID (Set User ID bit) - A Tulajdonos jogosultságával lehet futtatni az adott file-t
Oktális érték: "4"
ls érték: "S" (a tulajdonos bitjeinél)
Az "x" helyén áll "S", ha van SUID
2) SGID (Set Group ID bit) - Ha egy könyvtáron van beállítva akkor az alatta létrehozott könyvtárak a felső szintű könyvtár tulajdonosáé lesznek, nem a létrehozóé.
Oktális érték: "2"
ls érték: "S" (a tul.csoport bitjein)
AZ "x" helyén áll "S", ha van SGID
3) Sticky (ragadós bit) - Ha egy könyvtárra beállítom, akkor abban bárki létrehozhat file-t, (ha van rá joga), de csak a tulajdonos tudja azokat törölni (pl.: /tmp)
Oktáis érték: "1"
ls érték: "t" (bárki más résznél)
AZ "x" helyén áll "t", ha van Sticky
Hogyan adjunk ilyen jogot?
PL.: chmod u+s /home/........
chmod o+t
VAGY
chmod 2745 /home/.....
chmod 4222 /home/......
chmod 1454 /home/.....
UMASK
Új fájlok létrehozásakor, a rendszer ad egy "alap jogosultságot" amire be van állítva, ha ettől eltérő jogosultsággal szeretnénk létrehozni file-okat akkor erre lehetőséget biztosít az umask.
Használata: umask 022 ennek eredménye = 755
Tehát, amit az umaskba írunk az a maximális "7"-es jogosultságból levonódik!
pl.:
umask 011
touch proba.txt => Létrehozza a proba.txt-t 766-os jogosultsággal
Fájlok tulajdonosának,
tulajdonos csoportjának állítása
Erre szolgál a chown parancs.
Használata: chown [opciók] file (ezt a file tulajdonosa illetve a root hajthatja végre)
PL.:
sudo chown -R user2 /home/user/Asztal/könyvtar2 - A user2 lesz a file tulajdonosa
chown -R user:group2 /home/user.... - group2 lesz a file tulajdonos csoportja (ha user tagja a group2-nek)
sudo chown -R user2.group2 /home.... - a user2 lesz a file Tul. és a group2 lesz a Tul.csop
(feltéve, hogy a user2 tagja a group2-nek)
CHGRP - csoport váltás
PL.:
chgrp group2 /home/Asztal..... - Megváltoztatja group2-re az adott file tul.csop.-ját
SU - (switch user) felhazsnáló váltás
Pár kapcsoló:
"-c" csak addig váltunk felhasználót, amíg futtatjuk a parancsot
"-P" adott felhazsnáló home-jából indulunk
"-s" átjelentkezik, de más shellbe
pl.:
su - = a rootól indulunk
su = megmarad ahol vagyunk
su user2 -c 'mkdir /tmp/f.txt' = a user2 nevében hozunk létre a tmp mappába egy f.txt nevű file-t
su user2 -p = átjelentkezik és ott is marad
SG - (Switch Group) csoport váltás
Ugyan az mint a SU!
SUDO - Root jogosultság
Ezzel tudunk root jogosultságot szerezni, azaz rootként bejelntkezni is akár.
PL.:
sudo su - Bejelentkezik Rootként (nem ajánlatos mindig rootként használni a rendszert, csak addig hazsnáljuk amíg kell)
sudo gedit/etc/init.d/X11/xorg.conf - Rendszergazdaként tudjuk szerkeszteni a gedit-el a xorg.conf file-t (nvidia grafikus kértyáknál konfigurációs file, lásd korábbi bejegyzések)
Sok sikert!
Üdv.: Pracli
Nincsenek megjegyzések:
Megjegyzés küldése