Sobes.tech
Junior

Bir dosyanın erişim hakları nasıl değiştirilir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Linux/Unix sistemlerinde üç tür izin kullanılır: okuma (read), yazma (write) ve çalıştırma (execute), ayrıca üç kullanıcı kategorisi vardır: dosyanın sahibi (owner), grup (group) ve diğerleri (others).

İzinler chmod komutuyla değiştirilebilir.

1. Sayısal yöntem:

# r=4, w=2, x=1
# Her rakam, sahibi, grup ve diğerleri için izinlerin toplamını temsil eder
# Örneğin: 777 (tüm kullanıcılar için rwx), 755 (sahibi için rwx, grup ve diğerleri için rx)
chmod 755 dosya_adi

2. Sembolik yöntem:

# u (sahibi), g (grup), o (diğerleri), a (tüm - ugo)
# +, - (izin ekle/kaldır), = (belirli izinleri ayarla)
# r (read), w (write), x (execute)
chmod u+x dosya_adi         # Sahibi için çalıştırma izni ekle
chmod g-o-w dosya_adi      # Grup ve diğerleri için yazma iznini kaldır
chmod a=rw- dosya_adi       # Tüm kullanıcılar için okuma ve yazma izinleri ayarla, x kaldır

Örnekler:

  • Dosyayı sadece sahibi için çalıştırılabilir yap:
    chmod u+x dosya_adi
    
  • Sahibi için okuma ve yazma, grup ve diğerleri için sadece okuma izinleri ayarla:
    chmod 644 dosya_adi
    

Ek seçenekler:

  • -R: izinleri dizinler ve içerikleriyle birlikte rekursif olarak değiştirir.
    chmod -R 755 dizin_adi
    

İzinler ls -l komutuyla görüntülenebilir.

# ls -l çıktısı örneği
# -rwxr-xr-x 1 kullanıcı grup 1024 11 Kas 10:00 dosya_adi

Burada:

  • İlk karakter -, bunun bir dosya olduğunu gösterir. d ise dizin olduğunu gösterir.
  • Sonraki üç karakter (rwx), sahibi için izinleri gösterir.
  • Sonraki üç karakter (r-x), grup için izinleri gösterir.
  • Son üç karakter (r-x), diğer kullanıcılar için izinleri gösterir.