Izin apa yang dibutuhkan seseorang untuk menjalankan chmod, chown command pada folder / item?

9

Saya selalu menjalankan perintah chmod / chown sebagai pengguna sudo. Tetapi hari ini saya bertanya-tanya apakah saya tidak menggunakan sudo, izin apa yang saya perlukan untuk benar-benar menjalankan chmod/chownperintah pada folder / file? Saya sudah mencoba mencari pertanyaan di Google, tetapi tidak ada yang muncul yang menjawab pertanyaan ini secara khusus.

Maxim Koretskyi
sumber

Jawaban:

18

Di Linux:

chown : "Hanya proses istimewa (Linux: satu dengan CAP_CHOWN kemampuan) yang dapat mengubah pemilik file." (Sumber: chown (2)) Cara mudah untuk menjadi proses seperti itu harus dijalankan oleh root. Lihat explain_chownbantuan untuk mencari tahu mengapa seseorang chowngagal. Lihat capabilitiescara untuk memberikan proses yang kemampuannya selain berjalan sebagai root.

chmod : Pemilik file atau rootdapat mengubah izin, ditambah proses lain dengan CAP_FOWNERkemampuan. (Sumber)

chgrp : "Pemilik file dapat mengubah grup file menjadi grup yang pemiliknya adalah anggota. Proses istimewa (Linux: dengan CAP_CHOWN) dapat mengubah grup secara sewenang-wenang." (chown (2))

cxw
sumber
1
Linux mulai mengimplementasikan kapabilitas sekitar tahun 2004, tetapi proposal POSIX terkait telah ditarik pada tahun 1997. Jika Anda menggunakan OS modern seperti Solaris, ada PRIV_FILE_CHOWNsemua file lokal dan PRIV_FILE_CHOWN_SELFfile lokal yang Anda miliki. BTW: Sebuah OS yang memungkinkan untuk meng-chown file jarak jauh dari NFS dapat dilihat sebagai risiko keamanan. Pada HP-UX, setiap pengguna biasa dapat mengetahui file-nya dan ini dianggap sebagai risiko keamanan juga.
schily
PS proposal POSIX kemampuan telah ditarik karena hanya menangani hak istimewa antara pengguna biasa dan pengguna root historis. Solaris memiliki dua kali lebih banyak hak istimewa berbutir halus seperti Linux dan memungkinkan untuk menghapus hak istimewa seperti misalnya fork () dan exec ().
schily
Perhatikan bahwa di Linux, ketika tidak diistimewakan, Anda dapat chownmemiliki file yang Anda miliki, tetapi hanya bagian gid (untuk grup mana pun yang Anda menjadi anggotanya). Saya dapat melakukan chown stephane:other-group myfile(atau chown :other-group) selama saya anggota other-group.
Stéphane Chazelas
Bagaimana dengan chgrpperintah? Bisakah Anda menambahkan penjelasan untuk itu?
Maxim Koretskyi
@ StéphaneChazelas, terima kasih, berdasarkan jawaban Anda, saya berasumsi bahwa pemilik dapat berhasil berjalan chgrptanpa menjadi pengguna istimewa?
Maxim Koretskyi