Cara mengatur izin file dengan perintah sentuh


16

Tampaknya setiap kali saya membuat file dengan touchizin diatur ke: -rw-r - r-- .

Apakah ada cara saya dapat mengkonfigurasi izin dengan touchatau apakah ini harus dilakukan setelah dengan perintah yang berbeda?

Jawaban:


27

Anda dapat memodifikasi Anda umaskuntuk mengizinkan (untuk sebagian besar implementasi) lebih banyak hak baca / tulis, tetapi tidak dapat dieksekusi, karena umumnya izin yang diminta adalah 0666.

Jika Anda umaskadalah 022, Anda akan melihat touchmembuat 0644berkas.

Menariknya, POSIX menjelaskan perilaku ini dalam hal creat:

  1. Jika file tidak ada:

    Fungsi creat () dipanggil dengan argumen berikut:

    • Operan file digunakan sebagai argumen path.

    • Nilai dari bitwise-inclusive OR dari S_IRUSR, S_IWUSR, S_IRGRP, S_IWGRP, S_IROTH, dan S_IWOTHdigunakan sebagai argumen modus.

dan hanya dengan mengikuti tautan ke creat, lalu ke open, memperhatikan penyebutan umaskdan pelacakan-kembali ke open(dan creat) untuk memverifikasi yang umaskseharusnya memengaruhi touch.

Untuk umaskhanya memengaruhi touchperintah, gunakan subkulit:

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

(perhatikan bahwa bagaimanapun juga, jika file tersebut ada sebelumnya, touchtidak akan mengubah izinnya, cukup perbarui stempel waktunya).


2

Anda dapat memanipulasi umask. Secara umum diatur ke 022yang berarti ketika pengguna membuat file, itu akan mendapatkan izin 0644, Anda dapat memanipulasi umasksesuai dengan kebutuhan Anda.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.