Chmod Hesaplayıcısı
| Sınıf | Oku (r) | Yaz (w) | Çalıştır (x) |
|---|---|---|---|
| Sahip | |||
| Grup | |||
| Diğerleri |
Unix dosya izinleri üç üçlü hâlinde sunulur: kullanıcı, grup ve diğerleri için okuma, yazma ve çalıştırma izinleri; bu izinler düzenli bir şekilde üç haneli sekizlik bir sayıya dönüştürülebilir. Örneğin chmod 755 script.sh aslında rwxr-xr-x’tir: sahibe tüm izinler verilir; gruba ve diğer kişilere ise yalnızca okuma ve çalıştırma izni verilir. Bu hesaplayıcı, her kontrol kutusunu açıp kapatarak sekizlik değerin nasıl değiştiğini gerçek zamanlı olarak görmenize ya da bir sekizlik sayı yapıştırıp ilgili izin dağılımını (rwx) görüntülemenize olanak tanır; aynı zamanda kopyalamaya hazır tam chmod komutunu da sunar.
chmod izinleri nasıl çalışır?
-
1
9 izin bitini açıp kapatın
Üç grup (kullanıcı, grup, diğer) × üç izin (okuma, yazma, çalıştırma) = toplam 9 kontrol kutusu.
-
2
Her grup bir oktal rakam haline gelir.
Okuma = 4, Yazma = 2, Çalıştırma = 1. Etkinleştirmek istediğiniz bitleri toplayın.
-
3
Elde edilen sekizlik ve sembolik formu okuyun.
örn. 755 → rwxr-xr-x; 644 → rw-r--r--; 600 → rw-------.
-
4
chmod komutunu kopyalayın
Araç, geçerli izinlere uygun chmod komutunu kopyalamaya hazır şekilde gösterir. Örnekler: chmod 755 dosya_adı, chmod u+x dosya_adı, chmod -R 755 dizin.
İzin biti değerleri
| Bit | Değer | Dosyalar için anlamı | Dizinler için anlamı |
|---|---|---|---|
| Okuma | 4 | İçeriği görüntüleyebilir | Girişleri listeleyebilir |
| Yazma | 2 | Değiştirebilir | Giriş oluşturabilir, silebilir veya yeniden adlandırabilir |
| Çalıştırma | 1 | Program olarak çalıştırılabilir | İçinde gezinebilir (cd ile girip içeriğe erişebilir) |
Yaygın chmod değerleri
| Sekizlik | Sembolik | Tipik kullanım |
|---|---|---|
| 777 | rwxrwxrwx | Herkes tarafından yazılabilir, tehlikeli; nadiren doğru |
| 755 | rwxr-xr-x | Betikler, ikili dosyalar, dizinler |
| 750 | rwxr-x--- | Size ve grubunuza özel betikler |
| 700 | rwx------ | Yalnızca size özel betikler (SSH, ~/.ssh) |
| 644 | rw-r--r-- | Genel belgeler, görseller, HTML |
| 640 | rw-r----- | Grup tarafından okunabilir yapılandırmalar |
| 600 | rw------- | Özel yapılandırmalar, SSH özel anahtarları, ~/.netrc |
| 444 | r--r--r-- | Yalnızca okunabilir yayımlanmış dosyalar |
| 400 | r-------- | Özel, yalnızca okunabilir (genelde yanlıştır; 600 kullanın) |
Özel izinler (az rastlanır ancak önemlidir)
- setuid (4xxx): Dosyayı sahibi olarak çalıştırır; kim tarafından çalıştırılırsa çalıştırılsın.
/usr/bin/passwdbu özellikten yararlanır. - setgid (2xxx): Dosyalar için grup adıyla çalışır; klasörler için yeni dosyalar klasörün grubunu devralır.
- Yapışkan bit (1xxx): Kataloglarda yalnızca dosyanın sahibi dosyayı silip veya adını değiştirebilir.
/tmpbu özellikten yararlanır.
Dört haneli oktal değerler şunları içerir: chmod 4755 setuid-binary, 755 ile birlikte setuid’i açar.
Sembolik chmod
Birçok yönetici, kademeli değişiklikler için sembolik biçimleri tercih eder:
chmod u+x script, yalnızca sahibi için “yürütme” komutunu ekleyin.chmod go-w file, grubun ve diğerlerinin yazma yetkisini kaldırın.chmod a+r file, tüm kullanıcılara, gruplara ve diğer kişilere okuma yetkisi verir.chmod u=rw,go=r file, tam olarak bu bitleri ayarlayın.chmod -R 755 directory– rekürsif.
Yaygın Hatalar
- Yükleme klasörlerinde 777: izinleri düzeltiyor gibi görünse de aslında sunucuyu saldırganlara açar. Daha dar bir kombinasyon kullanın (örneğin doğru grup sahipliğiyle 755).
- Dizinlerde chmod -R 644: dizinlerdeki çalıştırma iznini kaldırır; bu yüzden
cdile içlerine giremezsiniz. Dizinler için 755, normal dosyalar için ise 644 değerini kullanın. - 0600 vs 600: Baştaki sıfır, C ve Shell dillerinde oktal sistemi gösterir; çoğu chmod uygulaması her ikisini de kabul eder.
- Umask: Yeni dosyalar, umask değerinden 666 çıkarılarak elde edilen değerini miras alır. Standart umask 022, 644 dosya ve 755 kataloga karşılık gelir.
Sık Sorulan Sorular
Genellikle sahibin verileri değiştirebilmesini, diğer tüm kullanıcıların ise verileri listelemesine ve gezmesine izin vermek istersiniz. 755 = sahipte rwx, grup ve diğer kullanıcılar için ise r-x – tam olarak bu kombinasyon.
Neredeyse hiç değildir. 777, sistemin herkesine dosyayı değiştirmeye izin verir. Çok kullanıcılı sistemlerde bu bir güvenlik açığıdır; tek kullanıcılı sistemlerde ise gereksizdir (sahibi zaten 755 yetkisiyle rwx yetkisine sahiptir). Bir web uygulamasının 777 yetkisine ihtiyaç duyduğu görülüyorsa, asıl çözüm doğru sahiplik ayarlaması (chown) veya grup üyeliğidir.
~/.ssh dizini: 700. Özel anahtarlar (id_rsa, id_ed25519): 600. Genel anahtarlar (.pub): 644. authorized_keys: 600. Güvenlik önlemi olarak SSH, daha geniş izinlere sahip anahtarları reddeder.
chown: Sahibi için; chgrp: Grup için, ayrı komutlardır. chmod yalnızca bit değerlerini değiştirir, dosyayı sahip olan kullanıcıyı veya grubu değiştirmez.
İlgili Araçlar
Gradyan Duvar Kağıdı Oluşturucu
Dizüstü bilgisayar, telefon veya Zoom arka planları için bulanık üç renkli gradyan duvar kağıtları oluşturun. Açıyı ve bulanıklığı rastgele belirleyin ya da elle ayarlayın.
FPS Sayacı
requestAnimationFrame ile tarayıcı FPS değerini ölçün: yumuşatma, en düşük ve en yüksek kare hızı, uyarı eşiği ve isteğe bağlı grafik. Yerel çalışır, yükleme ve API yoktur.
Renk Paleti Jeneratörü
Temel bir HEX renginden monokromatik, analog, tamamlayıcı, triadik veya tetradik paletler oluşturun ve kopyalamaya hazır CSS değişkenleri alın.
JSON Biçimlendirici
JSON metnini 2 veya 4 boşlukla okunabilir hale getirmek, kompakt çıktıya küçültmek ya da sonucu kopyalamadan önce söz dizimini hızlıca kontrol etmek için yapıştırın.
İkiliden Sekizliye Dönüştürücü
Bitleri üçer üçer gruplayarak ikiliyi sekizliye dönüştürün. Unix izinleri, eski sistemler ve kompakt sayısal gösterim için yararlıdır.
HEX Renk Seçici
HEX rengi seçin veya girin; RGB, HSL, yaklaşık CMYK, bağıl parlaklık ve beyaz-siyah kontrast oranlarını görün.