Jawaban:
Saya menemukan nyaman untuk digunakan dalam skrip sesuatu seperti
sudo -u <user> test -r <file-to-test> && ...
man test
untuk lebih jelasnya
sudo -u <user> test -r <file-to-test>; echo $?
Bagian echo $?
akan menampilkan status keluar dari tes.
Hanya ingat di sini bahwa hasilnya akan 0
jika operasi berhasil! Atau non-nol, misalnya 1
, jika tidak.
Seperti komentar @ Thomas pada jawaban @ user72025, gunakan man test
untuk mendapatkan lebih banyak tes operasi, seperti test -x
untuk menguji kemampuan eksekusi, test -w
untuk kemampuan menulis, dll.
Saya menemukan Anda dapat menggunakan su -s <shellname> <username>
untuk memasukkan shell tertentu sebagai pengguna tertentu. Anda kemudian dapat menguji izin file seperti biasa.
Misalnya:
su -s /bin/bash Debian-exim
touch /etc/exim4/exim4.conf.template
cat
mungkin bukan pilihan terbaik ... Anda menguji file besar atau file biner ...