Tanpa menggunakan sudo, lebih disukai?
permissions
filesystem
Evan
sumber
sumber
Jawaban:
Mencoba:
Melakukan hal ini, akan membuat file tersebut tidak dapat dihapus bahkan oleh
root
pengguna - gunakan dengan hati-hati.sumber
touch test && chattr +i test
itu melempar kesalahan;chattr: Operation not permitted while setting flags on test
. Anda membutuhkansudo
ini. Di samping itu: masih mungkin untuk menghapus file:sudo chattr -i test && rm test
berfungsi.Tidak, ini tidak mungkin. Tidak mungkin bagi pengguna normal untuk menghapus file: tentu.
Anda harus
sudo
mencegah pengguna menghapus file. Administrator Anda akan selalu dapat menghapus file.sudo chattr +i test
dapat mencegah penghapusan tetapi memang membutuhkansudo
. Sederhanasudo chattr -i test
memungkinkan untuk menghapus file. Tidak ada pengguna selain admin yang dapat digunakanchattr
.Dan ... cukup reboot dan masuk ke mode penyelamatan akan memungkinkan orang itu untuk dapat menghapus file itu. Ini akan menjadi risiko keamanan jika ada metode untuk tidak pernah dapat menghapus file.
sumber
Agak kasar, tetapi ini dekat - jika Anda menghapus akses tulis pada direktori, file di dalamnya tidak dapat dihapus. Dan itu tidak diperlukan
sudo
jika Anda memilikinya:Jadi, Anda dapat mengatur izin pada file itu sendiri seperti yang Anda inginkan.
Juga, seperti yang dinyatakan oleh @Rinzwind, pasti ada banyak cara untuk mengatasinya.
sumber
Untuk menghapus file, Anda harus menulis izin untuk semua direktori yang terhubung dengan file tersebut. Untuk memutuskan tautannya dari satu direktori, Anda perlu izin tulis ke direktori itu.
Jadi, selama Anda memberikan izin menulis (atau bahkan kepemilikan) ke file tetapi tidak ke direktori atau direktori tempat file itu ditautkan, file itu tidak dapat dihapus.
Cara terbaik untuk mencapainya adalah dengan menautkan file itu ke direktori yang dimiliki oleh root dan itu tidak dapat ditulisi oleh siapa pun. Anda dapat menjadikannya milik Anda sebagai gantinya yang berarti Anda dan root dapat menghapusnya.
Itu masih akan memungkinkan pengguna lain untuk menautkan file itu ke direktori lain dan memutusnya setelah itu, tetapi mereka masih tidak dapat menghapus file karena mereka akan dapat memutuskan tautannya dari direktori Anda sendiri.
Perhatikan bahwa agar itu berfungsi sepenuhnya, izin penulisan setiap komponen jalur ke file harus dikontrol. Karena misalnya jika file tersebut adalah
/a/b/the-file
dan Anda/a/b
belum dapat ditulisi oleh siapa pun tetapi semua orang memiliki akses tulis/a
, maka mereka dapat mengubah nama/a/b
menjadi sesuatu yang lain dan membuat ulang milik mereka sendiri/a/b
dan membuat milik mereka di/a/b/the-file
sana.sumber