TanodTools
TR

chmod hesaplayıcı

Unix dosya izinlerini onay kutuları, 755 gibi bir sekizli sayı veya rwxr-xr-x metniyle ayarlayın ve eşleşen chmod komutlarını alın.

Tamamen tarayıcınızda çalışır

İzinler
SahipGrupDiğerleri
Okuma 4
Yazma 2
Çalıştırma 1

Sayısal
Sembolik

Bu modun izin verdikleri

KimDosyadaDizinde

POSIX chmod'daki gibi dokuz izin bitiyle birlikte setuid, setgid ve sticky üzerinde çalışır. Gerçek dosyaları okumaz, sahiplik göstermez; ACL'leri, dosya niteliklerini ve umask'i kapsamaz. Sekizli modlar 3 veya 4 basamaklı olmalıdır.

chmod modu nasıl hesaplanır?

  1. Sahip, grup ve diğerleri için kutuları işaretleyin ya da 644 veya 755 gibi yaygın bir hazır ayar seçin. Bir sekizli sayı veya dokuz harflik metni de yazabilirsiniz; kutular buna uyar.
  2. Her sınıfın bir dosya ve bir dizin üzerinde neler yapabileceğinin sade özetini inceleyin ve gösterilen uyarıları okuyun.
  3. Sayısal veya sembolik chmod komutunu kopyalayın. Komutun yapıştırmaya hazır olmasını istiyorsanız önce dosya adını değiştirin.

Unix dosya izinleri nasıl saklanır?

Unix benzeri bir sistemdeki her dosya ve dizin kısa bir mod taşır: üç sınıfın (sahip kullanıcı, sahip grup, diğer herkes) her biri için üç izin biti (okuma, yazma, çalıştırma) ve ayrıca üç özel bit. Toplam on iki bit eder; sekizli sayı ise bu bitlerin üçer üçer yazılmasından ibarettir, basamakların en fazla 7'ye çıkmasının nedeni budur. ls -l çıktısındaki dokuz harflik biçim aynı bitleri harflerle gösterir.

Okuma, yazma ve çalıştırma bir dizinde farklı anlamlara gelir. Okuma, içindeki adları listelemenizi; yazma, girdi eklemenizi, yeniden adlandırmanızı ve kaldırmanızı; çalıştırma ise dizine girmenizi ve öğelere adlarıyla ulaşmanızı sağlar. Okuma izni olan ama çalıştırma izni olmayan bir dizin adlarını gösterir, ancak içindeki her şeye erişimi reddeder; bu, kafa karıştırıcı izin hatalarının yaygın bir kaynağıdır.

Özel bitler bir modun davranışını değiştirir. Setuid ve setgid, bir programı çağıranın değil dosya sahibinin ya da grubunun yetkileriyle çalıştırır; bu güçlü bir özelliktir ve bu yüzden çoğu sistemde kabuk betikleri için yok sayılır. Bir dizindeki setgid, yeni dosyaların onun grubunu devralmasını sağlar; bir dizindeki sticky bit ise kullanıcıların birbirlerinin dosyalarını silmesini engeller. Bir dosyanın hangi moda ihtiyaç duyduğundan emin değilseniz kısıtlayıcı başlayın ve yalnızca bir hata iletisinin istediğini ekleyin.

İpuçları

Sık sorulan sorular

Sekizli sayı nasıl çalışır?

Her basamak, sahip, grup, diğerleri sırasıyla bir sınıf için okuma (4), yazma (2) ve çalıştırma (1) değerlerini toplar. Yani 7 okuma, yazma ve çalıştırma; 5 okuma ve çalıştırma; 4 yalnızca okumadır. 755, sahibe her şeyi, diğer herkese okuma ve çalıştırma izni verir. Öne eklenen isteğe bağlı dördüncü basamak setuid (4), setgid (2) ve sticky (1) değerlerini tutar.

s, S, t ve T harfleri ne anlama gelir?

Sahip, grup veya diğerleri konumundaki x'in yerini alırlar. Küçük harf, özel bitin ayarlı olduğu ve çalıştırmanın da açık olduğu anlamına gelir; büyük harf ise özel bitin ayarlı, çalıştırmanın kapalı olduğunu gösterir ve bu genellikle bir hatadır. Yani 4755 rwsr-xr-x, 4644 ise rwSr--r-- olur.

644 ile 755 arasındaki fark nedir?

644, sıradan dosyalar için olağan moddur: sahip okuyup yazabilir, diğer herkes yalnızca okuyabilir. 755 herkes için çalıştırma iznini ekler; programların, betiklerin ve dizinlerin buna ihtiyacı vardır. Dizinlere girebilmek için çalıştırma bitine gerek vardır.

777 neden tehlikeli sayılır?

Makinedeki her kullanıcının ve onlar adına çalışan her programın dosyayı değiştirmesine ya da yerine yenisini koymasına izin verir. Bir yere yazması istenen bir web sunucusunun buna ihtiyacı yoktur: doğru kullanıcıya veya gruba sahiplik verip 775 ya da 770 kullanmak, dosyayı herkese açmadan çoğu izin hatasını çözer.

Sticky bit ne yapar?

Bir dizinde, kullanıcıların dizine yazabilseler bile sahibi olmadıkları dosyaları silmesini veya yeniden adlandırmasını engeller. /tmp gibi paylaşılan klasörlerin modu bu yüzden 1777'dir. Modern Linux'ta sıradan dosyalar üzerinde etkisi yoktur.

Bu, bilgisayarımda bir şeyi değiştirir mi?

Hayır. Yalnızca sayıyı ve komutları hesaplar. Girdiğiniz hiçbir şey bir yere gönderilmez ve komutları bir terminalde kendiniz çalıştırırsınız.