Touch komutu ile dosya izinleri nasıl ayarlanır?


16

Görünüşe göre touchizinlerle bir dosya oluşturduğumda : -rw-r - r-- .

İzinleri yapılandırabileceğim bir yol var mı touchveya farklı bir komutla daha sonra yapılması gerekiyor mu?

Yanıtlar:


27

Eğer değiştirebilir umaskgenellikle İstenen izinler olduğundan, ancak yürütülebilir, daha okuma / yazma ayrıcalıkları (çoğu uygulamaları için) izin vermek 0666.

Eğer senin umaskolduğunu 022görürsünüz touchbir hale 0644dosyayı.

İlginçtir, POSIX bu davranışı şu açılardan tanımlar creat:

  1. Dosya yoksa:

    Creat () işlevi, aşağıdaki bağımsız değişken olarak adlandırılır:

    • Dosya işleneni yol bağımsız değişkeni olarak kullanılır.

    • Değeri bir cinsindendir ieçren değeri TD arasında S_IRUSR, S_IWUSR, S_IRGRP, S_IWGRP, S_IROTH, ve S_IWOTHmod bağımsız değişken olarak kullanılır.

ve yalnızca bunun etkilenmesi gerektiğini doğrulamak için (ve ) ' nin sözünü ve geri izlemesini fark ederek creat, ardından bağlantılarını izleyerek olur .openumaskopencreatumasktouch

İçin umasksadece etkileyecek touchkomutu, bir altkabuk kullanın:

(umask 066; touch private-file)
(umask 0; touch world-writable-file)
touch file-as-per-current-umask

(her durumda, dosya önceden varsa, touchizinlerini değiştirmeyeceğini, yalnızca zaman damgalarını güncelleyeceğini unutmayın).


2

Sen manipüle edebilirsiniz umask. Genellikle 022, bir kullanıcı bir dosya oluşturduğunda izin alacak , ihtiyaçlarınıza göre 0644manipüle edebileceğiniz anlamına gelir umask.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.