Di Linux, setiap file dikaitkan dengan pemilik dan grup dan memiliki izin yang menentukan pengguna mana yang dapat membaca, menulis, atau mengeksekusi file tersebut.

Perintah chgrp di rancang untuk mengubah kepemilikan grup dari file yang diberikan.

Panduan ini menjelaskan tentang penggunaan perintah chgrp , perintah chgrp bekerja di hampir semua sistem operasi Linux dan Unix.

Sintaks Perintah chgrp

Perintah chgrp mengambil bentuk berikut:

chgrp [OPTIONS] GROUP FILE..
  • GROUP, nama grup baru atau group ID (GID). GID numerik harus diawali dengan simbol +.
  • FILE.., nama satu atau lebih file.

Berbeda dengan perintah chown yang memungkinkan Anda untuk mengubah kepemilikan user dan grup, perintah chgrp hanya mengubah kepemilikan grup.

Untuk mencari tahu suatu file tersebut berasal dari grup mana, gunakan perintah ls -l.

Hanya root atau pengguna dengan hak sudo yang dapat mengubah kepemilikan grup atas suatu file.

Cara Mengubah Grup Kepemilikan File

Untuk mengubah kepemilikan grup dari suatu file atau direktori gunakan perintah chgrp diikuti oleh nama grup baru dan file target sebagai argumen.

Misalnya, untuk mengubah grup index.php ke www-data yang akan Anda jalankan:

chgrp www-data index.php

Perintah di atas akan mengubah kepemilikan file ke dalam grup www-data, sedangkan kepemilikan user tidak berubah.

Jika Anda menjalankan perintah dengan user yang tidak berhak, Anda akan mendapatkan kesalahan “Operation not permitted”. Untuk suppresskesalahan, jalankan perintah dengan opsi -f. Secara default, saat sukses, chgrp tidak menghasilkan output apa pun.

Anda juga bisa mengirimkan banyak file sebagai argumen ke perintah chgrp :

chgrp www-data file1 file2 dir1

Gunakan opsi -v untuk mendapatkan informasi tentang file yang sedang diproses:

chgrp www-data file1 file2
changed group of 'file1' from nginx to www-data
group of 'file2' retained as www-data

Untuk mencetak informasi hanya tentang file-file yang benar-benar diubah oleh grup, gunakan opsi -c bukannya -v.

ID grup numerik (GID) dapat digunakan sebagai ganti nama pengguna. Contoh berikut mengubah kepemilikan grup file ke grup baru dengan GID 1000:

chgrp +1000 namafile

Cara Mengubah Kepemilikan Symlinks

Ketika tidak beroperasi secara rekursif, perilaku default dari perintah chgrp adalah mengubah kepemilikan grup target symlink, bukan symbolic links itu sendiri.

Misalnya, jika Anda mencoba mengubah grup symlink1 yang menunjuk ke /opt/file1, chgrp akan mengubah kepemilikan file atau direktori yang ditunjuk symlink :

chgrp www-data symlink1

Kemungkinannya adalah bahwa alih-alih mengubah grup target, Anda akan mendapatkan kesalahan “cannot dereference ‘symlink1’: Permission denied”

Kesalahan terjadi karena secara default pada kebanyakan distribusi Linux symlink dilindungi, dan Anda tidak dapat beroperasi pada file target. Opsi ini ditentukan di /proc/sys/fs/protected_symlink. 1 berarti diaktifkan dan 0 dinonaktifkan. Kami menyarankan untuk tidak menonaktifkan perlindungan symlink.

Untuk mengubah kepemilikan grup dari symlink itu sendiri, gunakan opsi -h:

chgrp -h www-data symlink1

Cara Mengubah Kepemilikan Grup secara Rekursif

Untuk secara rekursif mengubah kepemilikan grup dari semua file dan direktori di bawah direktori yang diberikan, gunakan opsi -R.

Sebagai contoh, perintah berikut akan mengubah kepemilikan semua file dan direktori di bawah direktori /var/www ke grup www-data:

chgrp -R www-data /var/www

Ketika opsi rekursif ditentukan, chgrp tidak akan melintasi symbolic links dan tidak akan membuat perubahan pada symlink. Untuk mengubah kepemilikan grup atas tautan simbolik, berikan opsi -h:

chgrp -hR www-data /var/www

Opsi lain yang dapat digunakan ketika mengubah kepemilikan grup secara rekursif adalah -H dan -L.

Jika argumen yang diteruskan ke perintah chgrp adalah symbolic link, opsi -H akan menyebabkan perintah untuk melewatinya. Opsi -L memberitahu chgrp untuk melintasi setiap symlink ke direktori yang ditemui. Dalam kebanyakan kasus, Anda tidak boleh menggunakan opsi ini karena Anda mungkin mengacaukan sistem Anda atau membuat risiko keamanan.

Kesimpulan

Perintah chgrp digunakan untuk mengubah kepemilikan grup atas file, direktori, dan symlink.

Meskipun Anda dapat menggunakan perintah chown yang lebih populer untuk mengubah grup, chgrp memiliki sintaksis sederhana yang mudah diingat.

Untuk informasi lebih lanjut tentang perintah chgrp, kunjungi halaman manual chgrp atau ketik man chgrp di terminal Anda.