Tampaknya setiap kali saya membuat file dengan touch
izin diatur ke: -rw-r - r-- .
Apakah ada cara saya dapat mengkonfigurasi izin dengan touch
atau apakah ini harus dilakukan setelah dengan perintah yang berbeda?
sumber
Tampaknya setiap kali saya membuat file dengan touch
izin diatur ke: -rw-r - r-- .
Apakah ada cara saya dapat mengkonfigurasi izin dengan touch
atau apakah ini harus dilakukan setelah dengan perintah yang berbeda?
Anda dapat memodifikasi Anda umask
untuk mengizinkan (untuk sebagian besar implementasi) lebih banyak hak baca / tulis, tetapi tidak dapat dieksekusi, karena umumnya izin yang diminta adalah 0666
.
Jika Anda umask
adalah 022
, Anda akan melihat touch
membuat 0644
berkas.
Menariknya, POSIX menjelaskan perilaku ini dalam hal creat
:
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
, danS_IWOTH
digunakan sebagai argumen modus.
dan hanya dengan mengikuti tautan ke creat
, lalu ke open
, memperhatikan penyebutan umask
dan pelacakan-kembali ke open
(dan creat
) untuk memverifikasi yang umask
seharusnya memengaruhi touch
.
Untuk umask
hanya memengaruhi touch
perintah, 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, touch
tidak akan mengubah izinnya, cukup perbarui stempel waktunya).
Anda dapat memanipulasi umask
. Secara umum diatur ke 022
yang berarti ketika pengguna membuat file, itu akan mendapatkan izin 0644
, Anda dapat memanipulasi umask
sesuai dengan kebutuhan Anda.