Tidak mungkin memiliki file yang dimiliki oleh banyak grup Linux dengan izin Unix tradisional. (Namun, dimungkinkan dengan ACL .)
Tetapi Anda dapat menggunakan solusi berikut dan membuat grup baru (mis. Dipanggil devFirms
) yang akan mencakup semua pengguna grup devFirmA
, devFirmB
dan devFirmC
.
Anda membuat grup pengguna baru dengan:
sudo addgroup NEWGROUPNAME
Pertama, Anda mungkin harus menginstal id-utils
untuk mendapatkan lid
perintah-:
sudo apt-get install id-utils
Kemudian Anda dapat menjalankan baris kode berikut untuk dengan mudah menyalin semua pengguna SOURCEGROUP
untuk TARGETGROUP
. Tentu saja Anda harus menjalankan perintah sekali untuk setiap grup yang ingin Anda salin. Jangan lupa ganti placeholder dengan huruf kapital dengan nama grup yang sebenarnya.
for u in $(lid -g -n SOURCEGROUP); do sudo usermod -a -G TARGETGROUP $u; done
Jadi dalam kasus Anda, Anda harus menjalankan perintah (semua baris sekaligus):
sudo addgroup devFirms &&
for u in $(lid -g -n devFirmA); do sudo usermod -a -G devFirms $u; done &&
for u in $(lid -g -n devFirmB); do sudo usermod -a -G devFirms $u; done &&
for u in $(lid -g -n devFirmC); do sudo usermod -a -G devFirms $u; done
Perhatikan bahwa perintah ini hanya menyalin semua pengguna yang saat ini menjadi anggota grup sumber. Setiap pengguna yang ditambahkan kemudian juga harus ditambahkan secara manual ke grup umum Anda dengan adduser
perintah. Ganti sekali lagi placeholder yang dikapitalisasi dengan nama pengguna dan grup yang sebenarnya ( devFirms
):
sudo adduser NEWUSER TARGETGROUP
Terima kasih kepada Justin Ethier untuk jawabannya di Unix & Linux.SE: Tambahkan semua pengguna dari satu grup ke grup lain?