burak@unix~$

~bir alkoliğin garip deneyimleri~

Unix/Linux Sistemlerde Dosya İzinleri

yorum ekle »

Dosya izinlerini anlamak
Linux de her bir dosyanin bir sahibi bir de grubu bulunur

Kod:
hakan@haarp ~ $ ls -l
toplam 6744
drwxr-xr-x 10 hakan users 4096 May 9 23:43 3rd_party

r – Read (okuma izni)
w – write (yazma izni)
x – Execute (calistirma izni)

hakan —> dosya sahibi
users —> dosyanin grubu

bunlari uclu gruplar halinde uc gruptan olustugunu varsayarak ayiriyoruz

rwx / r-x / r-x

bu dizilime gore ;
ilk uclu –> dosya sahibi izinlerini
ikinci —-> dosyanin grubunda bulunanlarin izinlerini
ucuncu –> digerlerinin izinlerini gosterir

Simdi benim 3rd_party klasorumun yapisina bakalim
d–> dizin oldugunu gosteriyor
ilk uclu —> rwx (okuma, yazma, calistirma) hepsi ne sahip, yani kim hakan isimli kullanici
ikinci uclu –> r-x (okuma yapar, yazma yapamaz, calistirma yapar) kim bunlar, users grubundakiler
ucuncu uclu –> r-x (okuma yapar, yazma yapamaz, calistirma yapar) digerlerinin iznlerini ifade eder

tum bunlarin ikilik duzende kodlandiklarini dusunursek

421 sistemi –> rwx i olusturur
r = 4
w = 2
x = 1

toplamdaki sayi izinlerin gostergesidir

harhangi bir uclu icin 7 demek = 4 [r] + 2 [w] + 1 [x] yani tum izinlere sahip, peki 6 ne demek bu durumda ?

6 = 4 + 2 + 0 (rw-) okuma yazma izinleri varken calistirma izni yok demek
5 = 4 + 0 + 1 (r-x) okuma ve calistirma var, yazma yok
4 = 4 + 0 + 0 (r–) sadece okuma izni
gibi mantik bu sekilde ilerler

harhangi bir dosya veya klasor un iznini degistirmek icin kullanilan komut chmod tur
bir ornek verelim,

Kod:
hakan@haarp ~ $ ls -l
toplam 6744
-rw-r–r– 1 hakan users 0 May 10 01:51 adosya


izinlerin su haldeki durumu
ilk uclu = 4+ 2 + 0 = 6
ikinci uclu = 4 + 0 + 0 = 4
ucuncu uclu = 4 + 0 + 0 = 4
yani yanyana yazarsak 644 olur

Ben bu “users” grubundakilere calistirma ve yazma izni verecegim ne yapmam gerekir ?
Ortadaki ucluyu degistirmeliyim, degil mi ? cunku “users” grubunu bu ikinci uclu ifade ediyordu

chmod —> kullanilacak komut

Kod:
hakan@haarp ~ $ chmod 674 adosya
hakan@haarp ~ $ ls -l
toplam 6744
-rw-rwxr– 1 hakan users 0 May 10 01:51 adosya


bakiniz ikinci uclu (r–) iken (rwx) haline geldi

simdi yakindan bakalim nolmus ?

ilk grup ayni kaldi 6 idi zaten = 4 + 2 + 0 [6]
ikinci grup 4 idi = 4 + 0 + 0, komutta ikinci sayimiz 7 oldu yani 4 + 2 + 1 dedik [7]
ucuncu grubu degistirmedik 4 idi, 4 olarak biraktik [4]

simdi hepsinden tum izinleri alalim sadece dosya sahibine tum izinleri verelim

Kod:
hakan@haarp ~ $ chmod 700 adosya
hakan@haarp ~ $ ls -l
toplam 6744
-rwx—— 1 hakan users 0 May 10 01:51 adosya


gordugunuz uzere sadece “hakan” yani dosya sahibi tum izinlere sahip (7=4 + 2 + 1)

Peki okuma yazma calistirma izinlerini degistirdik, dosyanin sahibini ve grubunu degistirelim

Hali hazirda dosya sahibi “hakan”, grubu ise “users”
Kullanacagimiz komut —-> chown

Kod:
hakan@haarp ~ $ chown root:muzik adosya
-rwx—— 1 root muzik 0 May 10 01:51 adosya


Simdi dosya sahibi “root”, grubu ise “muzik” oldu nasil sizce de kolay degil mi ?

Not :
Tum dosya izinleri bu kadar degil elbette, digerlerini hazirlik asamasindayim, onlari da bu bolumden takip ediniz

Hazirliktaki belge : Sticky (t) yapiskan, SGID (Set Group Identification), SUID (Set User Identification), umask (default file and directory creation)
Üstad Hakan Sönmez’e çok teşekkür ederim bu yazısı için benim için çok faydalı oldu.Umarım sizin işinizede yarar. Konunun forumdaki sayfası

http://forum.pardus-linux.org/viewtopic.php?t=2141

Written by Burak Sezer

Ağustos 17, 2007 8:56 am

Linux kategorisinde yayınlandı

Yorum Yapın