Chmod komutu kullanımı

Ubuntu Türkiye Wiki sitesinden
Şuraya atla: kullan, ara

İsim

chmod — dosya kip bitlerini değiştirir

Kullanım

    chmod [seçenek]... kip[,kip]... dosya...<br />
    chmod [seçenek]... sekizlik-kip dosya...<br />
    chmod [seçenek]... --reference=örnek-dosya dosya...

Açıklama

Bu kılavuz, chmod komutunun GNU sürümünü anlatmaktadır. chmod, belirtilen her dosyanın kip bitlerini belirtilen kipe göre değiştirir. Kip belirtimi yapılacak değişiklilerin sembolik gösterimlerinden oluşabileceği gibi yeni kip bitlerinin belirtildiği bit kalıbını içeren sekizlik sayılardan da oluşabilir.
Sembolik kip sözdizimi

   [ugoa...][[+-=][rwxXstugo...]...][,...] 

biçimindedir. rwxXst harfleri birden fazla belirtilebilirken, ugo harflerinden yalnız biri belirtilebilir. Virgüller ile ayrılarak, çeşitli sembolik kipler belirtilebilir. ugoa harfleri, değiştirilecek dosyaya hangi kullanıcının erişeceğini kontrol eder: sahibi olan kullanıcı u (yoU), dosyanın grubunda bulunan kullanıcılar g (Group), dosya grubunun dışındaki diğer kullanıcılar o (Others) veya bütün kullanıcılar a (All). Şayet bunlardan birisi belirtilmemişse, a seçeneği belirtilmiş gibi işlem yapılır, fakat umask içinde ayarlanmış bitler etkilenmez. + işleci, seçilen kiplerin her dosyadaki mevcut kip bitlerine eklenmesini sağlar; - işleci bunları mevcut kiplerden kaldırmaya yarar;= ise dosyada bulunan izinler üzerine atama yapmaya yarar (= işleci kullanıldıktan sonra eski dosya izinleri geçersiz olur ve yeni atanan izinler kullanılır; dizinlerin kullanıcı ve grup kimliği bitleri bu özellikten etkilenmezler.). rwxXst harfleri, etkiledikleri kullanıcılar için, yeni bit kiplerini seçerler: oku r (Read), yaz w (Write), çalıştır (dizinler için erişim) x (eXecute), dosyanın bir dizin olduğu durumlarda veya bazı kullanıcılar için çalıştırma izninin olduğu durumlarda çalıştır X, çalıştırma için kullanıcı veya grup kimliklerini ayarla s, sınırlı silme bayrağı veya yapışkan bit t (sTicky). Bu harflerin bir veya birkaçı yerine ugo harflerinden yalnızca birini belirtebilirsiniz: izinler dosyanın sahibi olan kullanıcılara aittir u (yoU), izinler dosyanın sahibi olan gruptaki diğer kullanıcılara aittir g (Group) ve izinler önceki iki sınıfta belirtilenlerin dışındaki kullanıcılara tahsis edilmiştir o (Others). Bir sayısal kip, en az bir en çok dört sekizlik (0 ile 7 arasında) rakamdan oluşur ve her rakam 4, 2 ve 1 değerli bitler birbirine eklenerek elde edilir. Atlanmış her bir basamak sıfır kabul edilir. İlk rakam kullanıcı kimliği (4), grup kimliği (2) ve yapışkan bit (1) özniteliklerinden oluşur. İkinci rakam dosyanın sahibi olan kullanıcı için izinleri seçer: okuma (4), yazma (2) ve çalıştırma (1) izinleri. Üçüncüsü aynı değerleri gruptaki kullanıcılara, sonuncusu da grup dışındaki kullanıcılara uygular. chmod asla, sembolik bağların izinlerini değiştirmez, onların izinlerini chmod sistem çağrıları da değiştiremez. Sembolik bağların izinleri asla kullanılmadığı için, bu temelde bir sorun yaratmaz. Bununla beraber, komut satırında listelenen her bir sembolik bağ için, chmod sembolik bağın hedefi olan dosyanın izinlerini değiştirir. Bunun tersi olarak, chmod, ardışık dizin geçişleri sırasında saptadığı sembolik bağları görmezden gelir.

Sınırlı silme bayrağı ve yapışkan bit

Sınırlı silme bayrağı ve yapışkan bit tek bir bit olup, bit dosyanın türüne bağlı olarak yorumlanır. Dizinler için bu bit sıradan kullanıcıların kendilerine ait olmayan dizinleri dosyaları dizinden silmelerini veya isimlerini değiştirmelerini engeller; bu durumda bit, dizin için sınırlı silme bayrağı adını alır ve genelde /tmp gibi herkesin yazabildiği dizinlerde kullanılır. Bazı eski sistemlerdeki normal dosyalarda bu bit programların metin imgesinin takas alanında saklanmasına ve böylece çalıştırılırken daha hızlı yüklenmesini sağlardı; bu durumda bit yapışkan bit adını alırdı. (Linux çekirdeği bu yapışkan bitleri yoksayar.)

Seçenekler

Her bir dosya'nın kipini belirtilen kip ile değiştirir.

-c
--changes
Sadece değişiklik olduğu zaman rapor vermesi dışında --verbose gibidir.
--no-preserve-root
`/' özel olarak ele alınmaz (öntanımlı)
--preserve-root
`/' üzerinde ardışık işlem yapılamaz.
-f
--silent
--quiet
Pekçok hatayı görmezden gelir.
-v
--verbose
İşlem yapılan her bir dosya için bir tanı bilgisi çıktılar.
--reference=örnek-dosya
kip yerine örnek-dosya'nın kipini kullanır.
-R
--recursive
Dosya ve dizinleri ardışık olarak değiştirir.
--help
Bu yardım metnini görüntüler ve çıkar.
--version
Sürüm bilgilerini görüntüler ve çıkar.

Her bir kip ugoa harflerinin sıfır ya da bir kaçından, +-= sembollerinden birinden ve rwxXst harflerinden sıfır veya bir kaçından ugo harflerinin birinden oluşur. (veya kısaca `[ugoa]*([-+=]([rwxXst]*|[ugo]))+')

Yazarı

David MacKenzie ve Jim Meyering tarafından yazılmıştır.

Telif hakkı

Telif hakkı © 2006 Free Software Foundation, Inc. Bu bir özgür yazılımdır; GNU Genel Kamu Lisansının <http://www.gnu.org/licenses/gpl.html> koşullarına bağlı kalarak kopyalarını yeniden dağıtabilirsiniz. Yasaların izin verdiği ölçüde hiçbir garantisi yoktur; hatta SATILABİLİRLİĞİ veya ŞAHSİ KULLANIMINIZA UYGUNLUĞU için bile garanti verilmez.

İlgili belgeler

  • chmod komutu ile ilgili kapsamlı bir kılavuz Texinfo olarak mevcuttur. Şayet info ve chmod yazılımları düzgün bir şekilde sisteminizde mevcutsa, aşağıdaki komut ile bu kılavuzu görüntüleyebilirsiniz.

 info coreutils chmod 

Kaynak

Unix komutları (daha fazla)
Dosya dizgesi catcdchmodchgrpchowncksumcmp cpdddudf fsckfuserlnlslsattrlsofmkdirmountmvpwdrm rmdirsplittouchumask
Süreç ve görev yönetimi atchrootcroncrontabexitkillkillallnicepgreppidofpkillpspstreesleeptimetopwait
Kullanıcı ortamı envfingeridlognamemesgpasswdsusudouptimewwallwhowhoamiwrite
Metin işleme awkcommcsplitcutdiffedexfmtheadiconvjoinlessmorepastesedsortstringstailtalktruniqvivimwcxargs
Kabuk programlama aliasbasenamedirnameechoexprfalseprintftesttrueunset
Ağ Araçları inetdhostifconfignetcatnetstatnslookuppingrlogintraceroute
Arama findgreplocatewhereiswhich
Diğer aproposbannerbccalcleardateddfilehelphistoryinfolplprmanpaxsizeteetputtypeunamewhatisyes