chmod hesaplayıcı
Unix dosya izinlerini sekizlik (755), harfler (rwxr-xr-x), ls -l ve chmod yantümceleri arasında dönüştürün; onay kutusu ızgarası ile setuid, setgid ve sticky bitleri dahil.
Kod örnekleri
Bu örnekleri kendi projenize kopyalayın. Her biri yalnızca dilin standart kütüphanesini kullanır, bu yüzden kurulacak bir şey yoktur.
const mode = parseInt('755', 8)
const letters = [...'rwxrwxrwx'].map((letter, i) => (mode & (0o400 >> i) ? letter : '-'))
console.log(letters.join(''))Ne yapar
Unix dosya izinlerini sekizlik (755), izin harfleri (rwxr-xr-x), bir ls -l satırı ve chmod ifadeleri (u=rwx,g=rx,o=rx) arasında dönüştürür. Izgarayı işaretleyin, setuid, setgid ve sticky bitleri dahil her gösterim uyar.
Nasıl kullanılır
- Bir modu istediğiniz gösterimde yazın ya da kutuları işaretleyin.
- Her gösterimde okuyun ve birini düzenleyin.
- Dönüştürülen değeri kopyalayın ya da bir dizin veya bağlantı için
ls -lsatırını görmek üzere dosya türünü seçin.
Örnekler
755, rwxr-xr-x demektir: sahip okuyabilir, yazabilir ve çalıştırabilir, diğer herkes okuyabilir ve çalıştırabilir. 644, bir dosya için olağan mod olan rw-r--r--, 1777 ise /tmp gibi paylaşılan bir dizin olan rwxrwxrwt demektir.
Bilmekte fayda var
- Basamaklar sahip, grup ve diğer herkes için okuma 4, yazma 2 ve çalıştırma 1’i toplar. Öne eklenen dördüncü basamak setuid 4, setgid 2 ve sticky 1 ekler.
- Harflerde özel bitler çalıştırma yerini alır: setuid ve setgid için
s, sticky içint. BüyükSveyaT, özel bitin çalıştırma biti olmadan ayarlandığı anlamına gelir. u=rwx,g=rx,o=rxgibi ifadeler her sınıfı tümüyle ayarlar ve hiçbir ifadenin anmadığı sınıfın izni olmaz.u+xgibi göreli biçimler burada okunmaz, çünkü bir dosyanın geçerli moduna bağlıdır.
chmod’daki sayılar ne anlama gelir?
Her basamak bir sınıf için okuma (4), yazma (2) ve çalıştırmayı (1) toplar: ilk basamak sahip, ikincisi grup, üçüncüsü diğer herkes içindir. Yani 755, sahibin okuyabileceği, yazabileceği ve çalıştırabileceği, diğerlerinin ise okuyup çalıştırabileceği anlamına gelir. Öne eklenen dördüncü basamak setuid (4), setgid (2) ve sticky (1) ekler.
Sık sorulan sorular
setuid, setgid ve sticky bit nedir?
setuid ve setgid, bir programın onu başlatanın değil sahibinin veya grubunun izinleriyle çalışmasını sağlar. Bir dizinde setgid, yeni dosyaların grubu devralmasını sağlar; sticky bit (/tmp’deki gibi) bir dosyayı yalnızca sahibinin silmesine izin verir. Harflerle çalıştırma yerinde s veya t olarak görünürler; büyük S veya T çalıştırma bitinin ayarlı olmadığı anlamına gelir.
777 neden kötü bir fikir?
Sistemdeki her kullanıcı dosyayı değiştirebilir veya değiştirebilir hale gelir. Sahibe ihtiyacı olanı, gruba ve diğerlerine yalnızca gereken erişimi verin: betikler için bu genelde 755, özel dosyalar için 600’dür.
Bu araç girdimi bir yere gönderiyor mu?
Hayır. Her şey tarayıcınızda olur. Yazdıklarınız hiçbir zaman sunucularımıza gönderilmez.