LINUX LAB

CentOS DOSYA İZİNLERİNİN DEĞİŞTİRİLMESİ: chmod KOMUTU

Dikkat: Bu yazıda geçen komutlar hem Linux tabanlı Centos hem de Linux tabanlı  Red Hat (RHEL) işletim sisteminde geçerlidir.

chmod Komutu:

Linux Red Hat veya CentOS gibi işletim sistemlerinde dosyaların erişimleri okuma, yazma veya çalıştırma gibi izinlere tabidir.

  1. Okuma İzni (r, read)
  2. Yazma İzni (w, write)
  3. Çalıştırma İzni (x, execute)
centos rhel chmod komutu dosya izinleri değiştirme
“Dosya İzinleri Sembolleri”

Bu izinler dosya sahibinin izinleri, grubun izinleri veya diğer kullanıcıların izinleri şeklinde 3’e ayrılmaktadır.

  1. Sahibi
  2. Grup
  3. Diğer

Dosyaların sahip oldukları izinlere “ls –l” komutuyla görebiliriz. Bunu CentOS DOSYA VE DİZİNLERİN LİSTELENMESİ: ls KOMUTU VE PARAMETRELERİ makalemizde görmüştük.

Aşağıda örnek bir “ls –l” çıktısı verilmiştir. Çıktı “/etc” konumundaki “passwd” dosyasına ait detayları vermektedir.

linux centos/rhel red hat ls komutu parametreleri örnek
“ls -l Komut Çıktısı Örneği”

Çıktıya göre “passwd” dosyasının sahibiroot” kullanıcısının okuma ve yazma yetkisi (rw-) vardır, dosyanın dahil olduğu grup olan “root” grubuna dahil kullanıcıların sadece okuma yetkisi (r–) ve diğer tüm kullanıcıların da sadece okuma yetkisi (r–) vardır.

centos rhel chmod komutu dosya izinleri değiştirme
“Dosya İzinleri”

İzinlerin değiştirilmesi için “chmod” komutu kullanılmaktadır. İzinler iki türlü verilebilir.

  1. Sayısal Değerler İle İzinlerin Ayarlanması
  2. Harfler İle İzinlerin Ayarlanması

1- Sayısal Değer İle İzinlerin Ayarlanması:

  • chmod [sayi] [dosyaadi]

Yetkilerin sayısal karşılıkları; r=4, w=2, x=1

Aşağıda örnek bir işlem yapılmıştır.

centos rhel chmod komutu dosya izinleri değiştirme
“Sayısal Değer İle Dosya İzinlerinin Ayarlanması”

1:ls –al” komutu ile “/Desktop/klasör_N” dizininde bulunan dosyaları listeledik. “YeniDosya” isimli dosyayı gördük.

2: Dosyaya ait izinleri değiştirmek istiyoruz.

  • Dosyanın sahibi hem okusun hem yazsın hem de çalıştırabilsin istiyorsak;

Sahibine (nizam kullanıcısı) verilecek izin; rwx=r+w+x=4+2+1=7

  • Dosyanın içerisinde bulunduğu grup üyeleri hem okusun hem yazsın istiyorsak;

Grup (nizam grubu) üyelerine verilecek izin; rw-=r+w+0=4+2+0=6

  • Diğer tüm kullanıcılar sadece okusun istiyor isek;

Diğer kullanıcılar için verilecek izin; r–=r+0+0=4+0+0=4

Sonuç = Kullanılacak izin komut “chmod 764 YeniDosya

3: “ls –al” komutu ile “YeniDosya” isimli dosyanın izinlerinin isteğimiz doğrultusunda değiştiğini yani “rw-rw-r-“ olan iznin artık “rwxrw-r–” olarak değiştirildiğini görebiliriz.

2- Harfler ile İzinlerin Verilmesi veya Kaldırılması:

u (user) = Dosyanın sahibi

g (group) = Dosyanın Grubu

o (others) = Diğer Kullanıcılar

Dosyaya herhangi bir izni vermek için “+” , izni geri almak için ““ kullanılmaktadır.

  • chmod [harfler] [dosyaadi]

Aşağıda örnek bir işlem yapılmıştır.

centos rhel chmod komutu dosya izinleri değiştirme
“Harfler İle Dosyalara İzin Verilmesi ve İzin Kaldırılması”

1:ls –al” komutu ile “/Desktop/klasör_N” dizininde bulunan dosyaları listeledik. “YeniDosya” isimli dosyayı ve detaylarını gördük. Dosyaya ait izinler “———“ şeklinde sıfırlanmış durumdadır.

2: Dosyaya ait izinleri değiştirmek istiyoruz.

  • Dosyanın sahibi hem okusun hem yazsın hem de çalıştırabilsin istiyorsak;

Sahibine (nizam kullanıcısı) verilecek izin; rwx=u+rwx

  • Dosyanın içerisinde bulunduğu grup  üyeleri sadece okusun istiyorsak;

Grup (nizam grubu) üyelerine verilecek izin; r–= g+r

  • Diğer tüm kullanıcılar hem okusun hem de yazsın istiyorsak;

Diğer kullanıcılar için verilecek izin; r-x=o+rx

Sonuç = Kullanılacak izin komut “chmod u+rwx,g+r,o+rx YeniDosya

3:ls –al” komutu ile izinlerin durumunun değiştiğini ve “———“ şeklinden “rwxr—r-x” şekline dönüştüğünü görebiliriz.

4: Şimdi de bir izini iptal edelim. Dosya sahibinin yazma yetkisini kaldıralım.

Sonuç = Kullanılacak izin komut “chmod u-w YeniDosya

5:ls –al” komutu ile izinlerin durumunun değiştiğini ve “rwxr—r-x “ şeklinden “r-xr—r-x” şekline dönüştüğünü görebiliriz.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir