chmod Sembolik-Oktal Dönüştürücü
chmod kiplerini oktal ve sembolik gösterim arasında dönüştürün: 755'i u=rwx,g=rx,o=rx biçimine ve tersine çevirin. Ayrıca u+x veya go-w gibi değişiklikleri geçerli bir kipe uygular, setuid, setgid ve sticky bit'i işler ve ls -l dizelerini okur. Tarayıcınızda çalışır.
Girdi
Değişiklikten önceki moddur ve u+x gibi sembolik modlarda kullanılır. + buna ekler, - ise kaldırır. +w gibi u, g, o veya a belirtilmeden yapılan sembolik değişiklikleri sınırlar.
Çıktı
Readme
Sekizlik ve sembolik chmod modları nedir?
chmod, Linux, macOS ve diğer Unix sistemlerinde bir dosyanın izinlerini ayarlar ve izinleri iki gösterim biçiminde kabul eder. 755 gibi bir sekizlik mod, sahip, grup ve diğer herkes için birer basamak içerir; burada okuma 4, yazma 2 ve çalıştırma 1 değerindedir. u=rwx,g=rx,o=rx gibi bir sembolik mod ise bunun yerine sınıfları (u sahip, g grup, o diğerleri, a herkes) ve izinleri (r, w, x) adlandırır.
Sembolik modlar, izinleri tamamen ayarlamak yerine değiştirebilir de: u+x sahip için çalıştırma izni ekler, go-w grup ve diğerleri için yazma iznini kaldırır, g=u ise sahibin izinlerini gruba kopyalar. Sekizlik mod her izni her zaman ayarladığından, bir değişikliğin sekizlik sonucu dosyanın önceki moduna bağlıdır.
Araç açıklaması
Bu araç, chmod modlarını sekizlik ve sembolik gösterim arasında dönüştürür. Kaynak ve hedef gösterimi seçin veya kaynağı otomatik algılamada bırakın: sembolik mod olarak u=rwx,g=rx,o=rx elde etmek için 755 girin ya da sekizlik değeri elde etmek için sembolik bir mod girin. u+x veya a+X gibi değişiklikler için dosyanın mevcut modunu girin ve chmod komutunun dosyayı hangi modda bırakacağını görün. Ayrıca ls -l çıktısından -rwxr-xr-x gibi bir izin dizesini veya tüm bir chmod komutunu yapıştırabilirsiniz.
Örnekler
| Sekizlik | Sembolik | ls -l | Tipik kullanım |
|---|---|---|---|
| 644 | u=rw,go=r |
-rw-r--r-- |
Normal dosyalar |
| 755 | u=rwx,go=rx |
-rwxr-xr-x |
Betikler, programlar ve dizinler |
| 600 | u=rw,go= |
-rw------- |
SSH anahtarları gibi özel dosyalar |
| 2775 | u=rwx,g=rwxs,o=rx |
drwxrwsr-x |
Gruplarını koruyan paylaşımlı dizinler |
| 1777 | a=rwx,+t |
drwxrwxrwt |
/tmp ve diğer paylaşımlı geçici klasörler |
| 4755 | u=rwxs,go=rx |
-rwsr-xr-x |
passwd gibi programlar |
Özellikler
- Sekizlik gösterimi sembolik gösterime ve sembolik gösterimi sekizlik gösterime dönüştürür; yönü değiştirmek için bir değiştirme düğmesi sunar
- Girdiğiniz modun gösterim biçimini algılar veya seçtiğiniz gösterim biçiminden dönüştürür
u+x,go-w,a=r,u+w,g=uvea+Xgibi göreli değişiklikleri mevcut bir moda uygular- setuid, setgid ve sticky bit'i (
s,tve 4 basamaklı sekizlik modlar) destekler - Sembolik modu tam (
u=rwx,g=rx,o=rx) veya kısa (u=rwx,go=rx) biçimde yazar s,S,tveTdahil olmak üzerels -lizin dizelerini okur ve yazarsudo chmod -R 755 dirgibi yapıştırılmış komutları kabul eder- Bir mod geçersiz olduğunda tam olarak hangi karakterde hata olduğunu gösterir
Nasıl çalışır?
Sekizlik mod en fazla dört basamak olarak okunur: isteğe bağlı ilk basamak setuid (4), setgid (2) ve sticky bit (1) değerlerini; diğer üç basamak ise sahip, grup ve diğerlerinin izinlerini içerir. Sembolik mod, POSIX söz dizimini izleyerek yan tümce yan tümce okunur ve Linux'taki GNU chmod davranışına uygun olarak mevcut moda uygulanır:
+izin ekler,-izin kaldırır ve=izinleri ayarlar; ayrıca adı belirtilen sınıflar için geri kalan izinleri temizler.X, yalnızca dizinlere ve bir kullanıcıda zaten çalıştırma izni bulunan dosyalara çalıştırma izni ekler.s,uile setuid'yi vegile setgid'yi ayarlar.t,o,aveya sınıf belirtilmediğinde sticky bit'i ayarlar.+xörneğinde olduğu gibi sınıf belirtilmediğinde değişiklik, umask tarafından engellenen bitler dışında herkes için uygulanır.- Dizinlerde setuid ve setgid,
g-sörneğinde olduğu gibi modda belirtilmedikçe mevcut durumlarını korur.
Sembolik çıktı her biti açıkça ayarlar; bu nedenle bir dosya için dosyanın önceki modu ne olursa olsun aynı sonucu verir. GNU ve BSD chmod bu biçimi kabul ettiğinden, sticky bit ayrı bir +t yan tümcesi olarak yazılır.
İpuçları
- Her dosyayı çalıştırılabilir yapmadan dizinlerde gezinmeyi mümkün kılmak için
chmod -Rilea+Xkullanın. - GNU
chmodile bir dizindechmod 755kullanmak setgid'yi temizlemez. Kaldırmak içinchmod 00755veyag-skullanın. - Ansible ve birçok yapılandırma dosyası
0755örneğinde olduğu gibi başında sıfır bulunan bir değer bekler. Bu değeri almak için "Her zaman 4 sekizlik basamak göster" seçeneğini etkinleştirin. - Bir
ls -ldizesinden sonra gelen.veya+, bir SELinux bağlamını veya ACL'yi belirtir. Modun göstermediği ACL girdilerini görmek içingetfaclkullanın.