Kullanıcı izinleri hakkında (chmod)

Linux ‘te izinler 3 gruptadır.Bunlar sırasıyla sahibi, grup ve diğer kullanıcılardır.Bunları kısaca segment diyeceğim.Bu 3 segmentte 9 karakterden oluşur. Her segment 3 kısıma ayrılır. Bu üç kısım sırasıyla read(okuma), write(yazma), executable(çalıştırılabilir)’dir. Aşağıdaki örnek çıktıda da sıra dizimini görebilirsiniz.


NOT :
Bir dosyanın izin haklarını öğrenmek için “ls -al” komutu kullanılır.

örnek “ls -al” çıktısı :

[murat@fedora ~]$ ls -al .viminfo

-rw------- 1 murat murat 5435 2007-06-05 23:06 .viminfo

Yukarıdaki örnek çıktı da sadece dosya sahibinin (yani murat kullanıcısı) okuyabildiğini ve yazabildiğini görüyorsunuz.

[murat@fedora ~]$ ls -al test

-rwxrw-rwx 1 murat murat 5435 2007-06-09 15:06 test

Yukarıdaki bu çıktı da ise murat kullanıcısı okuyabiliyor, yazabiliyor, çalıştırabiliyor. Grub okuma ve yazma haklarına sahip, diğer kullanıcılar ise okuma, yazma ve çalıştırma izinlerine sahiptir.

Bu örneklerde gördüğünüz - (tire) işareti desteklenmeyen bir izini belirtmektedir. -rwxrw-rwx dikkat ettiyseniz burada 9 karakter değil de 10 karakter bulunmaktadır. İzin olarak bizi ilgilendiren sondan sayarak 9 karakterdir. En baştaki karater ise bize dosya türünü göstermektedir. Eğer ilk karakter - (tire) işareti ise bu bir dosyadır.

İzin haklarını değiştirmek istiyorsak chmod komutunu kullanırız.chmod kullanarak izin haklarını iki yolla değiştirebiliriz. Bunlar sembolik yöntem ve binary yöntemdir.


1.Yöntem


Parametreler :


+ :
İzin ekler


- :
İzin kaldırır


= :
İzinin tamamını ekler

r :
Okuma izini ekler


w :
Yazma izni ekler


x :
Çalıştırma izni ekler.


a :
Kullanıcı, grup, diğer kullanıcılara ait izinleri düzenler


g :
Grup erişim izinlerini düzenler.

u :
Dosya sahibi kullanıcının erişim izinlerini düzenler.

o :
Diğer kullanıcıların izin erişimlerini düzenler.


t :
Sticky bit izin erişimini düzenler.

Aşağıdaki örnekte diğer kullanıcılara okuma izni veriliyor, yazma ve çalıştırılabilir izni kaldırılıyor.

[root@fedora ~]# chmod o+r-wx test

Aşağıdaki örnekte tüm izinler sıfırlanıyor, dosya sahibi için okuma,yazma ve çalıştırma izini veriliyor.

[root@fedora ~]# chmod = test

[root@fedora ~]# chmod u+rwx test

Aşağıdaki örnekte tüm kullacılara okuma ve yazma hakkı veriliyor.

[root@fedora ~]# chmod a+rw test

Aşağıdaki örnekte gruba okuma izni veriliyor, yazma ve çalıştırma izinleri kaldırılıyor.

[root@fedora ~]# chmod g+r-wx test

Aşağıdaki örnekte ise diğer kullanıcılara okuma, yazma ve çalıştırma izini veriliyor.

[root@fedora ~]# chmod o+rwx test


2.Yöntem

octal hali

Yukaridaki tablo sayesinde binary işlemler ile uğraşmıyacağız.Ufak bir soru soralım. Yukarıdaki oktal sayılara göre test dosyasının izinlerini sahibine göre nasıl verebiliriz.(r,w,x)? Cevap : 400 + 200 + 100 = 700 > bu da chmod 700 test demektir. Dosya sahibi tüm haklara sahip olsun, grup okusun diğer kullanıcılar da okusun dersek 400+200+100+40+4 = 744 Buda chmod 744 test olur. Şimdilik bu kadar. Umarım faydalı bir yazı olmuştur. Sevgilerimle.