Secara default, file yang dibuat dengan root accound memiliki izin seperti:
-rw-r--r-- 1 root root 0 11月 17 23:25 rootfile.txt
Di sini file milik pengguna root dan grup root, dan dapat dibaca dan ditulis oleh root, tetapi hanya dapat dibaca oleh orang lain.
Pendekatan paling sederhana adalah hanya dengan chown
file kembali ke pengguna asli.
chown username:group_name dummy.txt
Anda dapat menggunakan $SUDO_USER
variabel yang hanya dapat diakses saat sudo
dipanggil, seperti:
chown "$SUDO_USER":"$SUDO_USER" dummy.txt
Jika Anda menjalankan skrip sebagai pengguna biasa, chown
bagian itu tidak diperlukan sama sekali, jadi Anda mungkin ingin mempertimbangkan untuk menggunakan pernyataan-if atau &&
menguji untuk menguji kasus ketika skrip dijalankan sebagai root, dan lakukan sesuatu di sepanjang baris ini:
#!/bin/bash
touch dummy.txt
[ $UID -eq 0 ] && chown "$SUDO_USER":"$SUDO_USER" dummy.txt
Pendekatan di atas direkomendasikan. Ada yang lain, seperti menggunakan chmod
untuk mengubah izin baca-tulis-jalankan untuk pengguna dan grup, tetapi tidak disarankan.
chown
danchmod
dalam skrip Anda untuk mengatur kepemilikan dan izin yang diinginkan.