Di Linux dan sistem operasi mirip Unix, semua file, direktori, dan proses (yang juga merupakan file) dimiliki oleh pengguna. Grup adalah sekumpulan pengguna yang berbagi izin akses yang sama (yaitu membaca, menulis, dan mengeksekusi) untuk objek tersebut (file/direktori).
Perintah chown digunakan di Linux untuk mengubah kepemilikan file, direktori, dan tautan simbolik oleh pengguna dan grup.
Dalam tutorial ini, saya akan menunjukkan cara menggunakan perintah chown dengan beberapa contoh praktis.
Sintaks chwn
Mari periksa sintaks dasar perintah chown sebagai berikut:
chown [OPTIONS] USER[:GROUP] FILE/DIRECTORY
Anda dapat menjalankan ls -l
perintah untuk mencetak detail kepemilikan file.
Pada output berikut, Anda dapat melihat file 'myfile.txt' dimiliki oleh pengguna 'tom' dan grup dimiliki oleh 'developer':
$ ls -l
-rw-r--r-- 1 tom developers 0 Apr 4 01:35 myfile.txt
Ubah Kepemilikan file
Untuk mengubah kepemilikan file, gunakan chown dengan nama pemilik baru dan nama file yang pemiliknya harus diubah.
Perintah berikut mengubah kepemilikan file bernama 'myfile.txt' menjadi pengguna baru 'tom':
# chown tom myfile.txt
Jika perintah berhasil dijalankan, itu tidak akan menampilkan output apa pun di terminal. Biarkan verifikasi menggunakan ls -l
perintah sebagai berikut:
# ls -l myfile.txt
-rw-r--r-- 1 tom root 623 Dec 10 2012 myfile.txt
Mengubah pemilik dan grup file
Jika pemilik diikuti oleh titik dua (:
) dan nama grup (tanpa spasi), nama grup juga diubah.
Contoh berikut menunjukkan cara mengubah pemilik dan grup untuk file bernama 'myfile.txt':
# chown tom:developers myfile.txt
Sekarang pemilik baru file adalah 'tom' dan pemilik grup baru adalah grup 'pengembang'.
# ls -l myfile.txt
-rw-r--r-- 1 tom developers 424 Dec 10 2012 myfile.txt
Jika Anda menghapus nama grup setelah titik dua, grup file akan diubah menjadi grup login pengguna yang ditentukan:
# chown tom: myfile.txt
# ls -l myfile.txt
-rw-r--r-- 1 tom tom 453 Dec 10 2012 myfile.txt
Jika titik dua (:) dan grup disebutkan, hanya grup file yang diubah. Dalam hal ini, perintah tersebut bekerja seperti perintah chgrp.
# chown :developers myfile.txt
# ls -l myfile.txt
-rw-r--r-- 1 tom developers 1579 Dec 10 2012 myfile.txt
Ubah kepemilikan direktori secara rekursif
Untuk menerapkan kepemilikan secara rekursif pada semua file dan direktori di bawah direktori tertentu gunakan -R
pilihan
Dalam contoh berikut, kepemilikan semua file dan direktori di bawah '/var/www/html' akan diubah secara rekursif menjadi 'linoxide' dan kepemilikan grup menjadi 'www-data':
# chown linoxide:www-data -R /var/www/html
Keluaran verbose
--verbose
opsi menunjukkan semua perubahan kepemilikan di terminal. Ini menampilkan diagnostik untuk setiap file yang diproses.
Misalnya:
# chown -R --verbose jones /home/jones/
changed ownership of `/home/jones/hello' to jones
changed ownership of `/home/jones/.emacs' to jones
changed ownership of `/home/jones/.bash_history' to jones
changed ownership of `/home/jones/.bash_logout' to jones
changed ownership of `/home/jones/.bashrc' to jones
changed ownership of `/home/jones/file1' to jones
Opsi verbose menampilkan pemrosesan setiap file bahkan ketika perubahan tidak dilakukan. Tapi dengan -c
atau --changes
pilihan, output dilaporkan hanya ketika perubahan dibuat.
Ubah kepemilikan untuk tautan simbolik
Secara default chown
perintah tidak akan mengubah kepemilikan tautan simbolik melainkan mengubah kepemilikan pada file target. Chmod memiliki opsi -h
yang dapat digunakan untuk mengubah kepemilikan tautan simbolik.
Periksa contoh berikut:
# chown -h tom vmlinuz
# ls -l
total 0
lrwxrwxrwx 1 tom root 31 Apr 5 00:50 vmlinuz -> /boot/vmlinuz-4.15.0-88-generic
Ubah kepemilikan sama seperti file referensi
Anda dapat mereferensikan file dari mana chown
salin kepemilikan pengguna dan grup yang sama ke file baru.
Dalam perintah berikut --reference=myfile1.txt
opsi untuk menyediakan file referensi dan kepemilikan yang ditetapkan ke file bernama 'myfile2.txt':
# chown --reference=myfile1.txt myfile2.txt
Operasi senyap
Pengguna biasa tidak dapat mengubah kepemilikan file yang dimiliki oleh orang lain. Jadi kesalahan ditampilkan saat pengguna biasa mencoba mengubah kepemilikan.
[tom@node051 ~]$ chown tom /etc/
chown: changing ownership of `/etc/': Operation not permitted
Tapi jika kita menggunakan -f
atau --silent
atau --quiet
pilihan, kesalahan tidak ditampilkan.
[tom@node051 ~]$ chown -f tom /etc/
[tom@node051 ~]$
Cara mempertahankan root
Perintah Chmod memiliki opsi --preserve-root
untuk mencegah chmod bertindak secara rekursif pada /
. Opsi ini harus digunakan dengan -R
opsi untuk diterapkan.
[root@node051 ~]# chown -c --preserve-root tom /
changed ownership of '/' from root to tom
Hanya izin dari /
akan diubah dan kepemilikan file dan direktori di dalam /
akan tetap sama.
[root@node051 ~]# ls -ld /
drwxr-xr-x 23 tom root 4096 Feb 19 14:36 /
[root@node051 ~]# ls -l
total 88
drwxr-xr-x 2 root root 4096 Feb 19 14:33 bin
drwxr-xr-x 3 root root 4096 Feb 19 14:36 boot
drwxr-xr-x 16 root root 3660 Mar 28 11:09 dev
drwxr-xr-x 90 root root 4096 Apr 4 02:28 etc
drwxr-xr-x 2 root root 4096 Feb 19 14:35 home
lrwxrwxrwx 1 root root 33 Feb 19 14:35 initrd.img -> boot/initrd.img-4.15.0-88-generic
lrwxrwxrwx 1 root root 33 Feb 19 14:29 initrd.img.old -> boot/initrd.img-4.15.0-76-generic
drwxr-xr-x 22 root root 4096 Feb 19 14:37 lib
drwxr-xr-x 2 root root 4096 Feb 19 14:28 lib64
drwx------ 2 root root 16384 Feb 19 14:27 lost+found
Kesimpulan
Dalam tutorial ini, kita belajar bagaimana mengubah kepemilikan file dan direktori di Linux. Terima kasih telah membaca dan beri tahu kami komentar Anda.