Tambahkan semua pengguna dalam satu grup ke grup lain?

8

Saya memiliki beberapa pengguna dalam grup yang dipanggil aadan saya perlu memberi mereka hak untuk menulis ke folder yang saat ini tomcat:tomcatdeploy.

Cara mudah untuk melakukan ini adalah menambahkan semua pengguna ke tomcatdeploygrup, satu per satu.

Apakah mungkin untuk mengatakan bahwa anggota grup aajuga secara otomatis menjadi anggota tomcatdeploydengan cara menambahkan aagrup ke tomcatdeploygrup?

Atau apakah itu mencoba untuk mendorong skema izin UNIX terlalu jauh?

Kaya
sumber

Jawaban:

7

Anda bisa menggunakan lidperintah untuk mendapatkan daftar pengguna aa, dan mengulangi daftar itu untuk menambahkan mereka ke tomcatdeploy:

for u in $(lid -g -n aa); do usermod -a -G tomcatdeploy $u; done
Justin Ethier
sumber
for u in $(lid -g -n aa); do usermod -a -G tomcatdeploy $u; done(Saya kira Anda maksud $udi usermod, bukan hanya u)
asoundmove
Tangkapan yang bagus! Saya baru saja memperbaiki kode dalam jawaban saya.
Justin Ethier
10

Anda tidak menyebutkan platform apa yang Anda gunakan, tetapi sistem Linux dalam 5 tahun terakhir (atau lebih, mungkin) mendukung ACL, di samping izin sistem file Unix tradisional. Dengan menggunakan ACL, Anda dapat menambahkan grup ke-2 ke direktori dengan akses tulis:

$ setfacl -m group:2ndtomcatdeploy:rwx target_directory

Anda dapat menggunakan getfacluntuk menampilkan ACL dan ls -lakan menampilkan '+' di akhir string mode simbolis biasa.

Wil Cooley
sumber