# Dosya İzinleri

Adres: https://softwaredictionary.org/tr/terimler/file-permissions
Kategori: İşletim Sistemleri
Son güncelleme: 2026-09-30
İngilizcesi: File Permissions
Okunuşu: fayl pırmişıns

Kısaca: Dosya izinleri, bir dosyayı kimin okuyup değiştirebileceğini ya da çalıştırabileceğini belirleyen ve işletim sisteminin her erişimde uyguladığı kurallardır.

## Dosya izinleri (file permissions) nedir?

Dosya izinleri, işletim sisteminin her dosya ve dizin üzerinde kimin ne yapabileceğini denetleme yoludur. Unix benzeri sistemlerde her dosyanın bir sahibi olan kullanıcısı, bir sahibi olan grubu ve üç izin kümesi vardır: biri sahip için, biri grup üyeleri için ve biri herkes için. Her küme okumaya (r), yazmaya (w) ve çalıştırmaya (x) izin verebilir.

`ls -l` çalıştırmak izinleri `-rwxr-xr--` gibi bir dize olarak gösterir: ilk karakter dosya türüdür, ardından sahip, grup ve diğerleri üçlüleri gelir. Aynı izinler sekizlik (octal) olarak yazılabilir; burada okuma 4, yazma 2 ve çalıştırma 1'dir, dolayısıyla `754`, sahibin her şeyi yapabileceği, grubun okuyup çalıştırabileceği ve diğerlerinin yalnızca okuyabileceği anlamına gelir. Dizinlerde harfler biraz farklı anlam taşır: okuma adları listeler, yazma girdi oluşturmaya, silmeye ve yeniden adlandırmaya izin verir, çalıştırma ise dizine girmeye izin verir. İzinleri `chmod` ile, sahipliği `chown` ile değiştirirsiniz ve kernel bir program bir dosyayı her açtığında bunları kontrol eder.

İzinler bir ofis binasındaki anahtarlar gibidir: sahibin kendi ofisinin anahtarı vardır, ekip proje odasının anahtarını paylaşır ve ziyaretçiler yalnızca pencereden bakabilir. Günlük işte önemlidirler: SSH, diğer kullanıcıların okuyabildiği bir özel anahtarı kullanmayı reddeder, bir betiğin çalıştırılabilmesi için çalıştırma bitine ihtiyacı vardır ve bir web sunucusu kendi kodunun üzerine yazabilmemelidir. Windows ve birçok Linux sistemi, belirli kullanıcılar için daha ince taneli kurallara izin veren erişim denetim listelerini (ACL) de destekler.

Dosya izinleri bazen rol tabanlı erişim denetimi gibi uygulama içi yetkilendirmeyle karıştırılır. Dosya izinleri dosyalar ve dizinler için işletim sistemi kernel'ı tarafından uygulanır; uygulama yetkilendirmesi ise oturum açmış bir kullanıcının o uygulama içinde neler yapabileceğine karar verir. Yaygın bir hata, bir erişim hatasını düzeltmek için `chmod 777` çalıştırmaktır; bu her kullanıcının dosyayı değiştirmesine izin verir. En az ayrıcalık ilkesini izleyip yalnızca gerekeni vermek çok daha güvenlidir.

## Önemli noktalar

- Her dosyanın bir sahibi, bir grubu ve sahip, grup ve diğerleri için izinleri vardır.
- Temel izinler okuma, yazma ve çalıştırmadır.
- Sekizlik gösterim okuma (4), yazma (2) ve çalıştırmayı (1) toplar; `755` ya da `600` gibi.
- `chmod` izinleri, `chown` sahipliği değiştirir.
- `chmod 777`'den kaçının; işe yarayan en az erişimi verin.

## Örnek: Bir Unix shell'inde izinleri okumak ve değiştirmek

```bash
# Type, then owner (rwx), group (r-x), and others (r--)
ls -l deploy.sh
# -rwxr-xr-- 1 ada devs 512 Sep 30 10:00 deploy.sh

# Make a script executable for its owner
chmod u+x deploy.sh

# Owner can read and write; nobody else has access (needed for SSH keys)
chmod 600 ~/.ssh/id_ed25519

# Change the owner and the group
sudo chown ada:devs deploy.sh
```

## Sık sorulan sorular

**chmod 755 ne anlama gelir?**

Sahibe okuma, yazma ve çalıştırma izni (7), gruba ve diğer herkese ise okuma ve çalıştırma izni (5) verir. Başkalarının kullanabileceği ancak değiştiremeyeceği betikler ve dizinler için yaygın bir ayardır.

**chmod 777 neden tehlikelidir?**

Sistemdeki her kullanıcıya dosyayı okuma, değiştirme ve çalıştırma izni verir. Ele geçirilmiş herhangi bir hesap ya da process de onu, örneğin kötü amaçlı kod eklemek için değiştirebilir.

**Unix izinleri ile ACL'ler arasındaki fark nedir?**

Klasik Unix izinleri yalnızca üç grup için kurala izin verir: sahip, grup ve diğerleri. Erişim denetim listeleri ise istediğiniz sayıda belirli kullanıcı ve grup için girdi ekler; Windows dosya erişimini böyle yönetir ve çoğu Linux dosya sisteminde bir seçenektir.

---

Software Dictionary: https://softwaredictionary.org/tr · https://softwaredictionary.org/tr/llms.txt
