Permission di Linux sebenarnya tidak serumit yang terlihat.
Kalau sudah memahami pola r, w, x,
serta konsep owner, group, dan others, kita bisa membaca permission
seperti 755, 754, atau 644
dengan cukup mudah.
Apa Itu Permission di Linux?
Linux menggunakan sistem permission untuk menentukan siapa yang boleh membaca, mengubah, atau menjalankan sebuah file dan directory.
Misalnya ketika menjalankan perintah:
ls -l
Kita mungkin akan melihat output seperti berikut:
-rwxr-xr-- 1 budi developer 1234 Sep 1 10:30 script.sh
Bagian yang terlihat seperti:
-rwxr-xr--
merupakan informasi jenis file dan permission-nya.
Cara Membaca Permission Linux
Permission tersebut dapat dipecah menjadi beberapa bagian:
- | rwx | r-x | r--
Artinya:
-menunjukkan jenis file.rwxadalah permission untuk owner.r-xadalah permission untuk group.r--adalah permission untuk others.
Jadi Linux membagi hak akses menjadi tiga kategori utama:
- Owner/User: pemilik file atau directory.
- Group: user yang tergabung dalam group file tersebut.
- Others: user lain yang bukan owner dan bukan anggota group tersebut.
Apa Arti r, w dan x?
Setiap kategori user dapat memiliki tiga jenis permission:
r= Readw= Writex= Execute
Read atau r
Permission r memberikan izin untuk membaca isi file.
Write atau w
Permission w memberikan izin untuk mengubah isi file.
Execute atau x
Permission x memberikan izin untuk menjalankan file
sebagai program atau script.
Permission File dan Directory Tidak Persis Sama
Salah satu hal yang sering membingungkan pemula adalah arti
r, w, dan x pada directory.
Pada file, secara sederhana artinya:
r: membaca isi file.w: mengubah isi file.x: menjalankan file.
Sedangkan pada directory:
r: membaca atau melihat daftar nama file di dalam directory.w: membuat, menghapus, atau mengganti nama entry di dalam directory.x: masuk atau melakukan traverse ke dalam directory.
Karena itu, permission x pada directory lebih tepat
dipahami sebagai izin untuk mengakses atau menelusuri directory,
bukan sekadar "menjalankan folder".
Cara Membaca Permission dalam Bentuk Angka
Linux juga sering menggunakan angka seperti:
755
754
644
700
Angka tersebut merupakan representasi octal dari kombinasi permission.
Nilai dasarnya:
r = 4w = 2x = 1
Jika sebuah permission tidak diberikan, nilainya dapat dianggap
sebagai 0.
Contohnya:
7 = 4 + 2 + 1 = rwx
5 = 4 + 0 + 1 = r-x
4 = 4 + 0 + 0 = r--
Penulisan angka 0 sebenarnya tidak wajib, tetapi cukup
membantu untuk pemula karena memperlihatkan posisi permission yang
tidak aktif.
Contoh Permission 754
Permission:
754
dapat dibaca sebagai:
7 = rwx
5 = r-x
4 = r--
Jadi jika dibaca dalam satu kalimat:
Permission 754 berarti owner memiliki izin read, write, dan execute, group memiliki izin read dan execute, sedangkan others hanya memiliki izin read.
Contoh Permission 755
Permission 755 berarti:
7 = rwx
5 = r-x
5 = r-x
Jika dibaca dalam satu kalimat:
Owner memiliki izin read, write, dan execute, sedangkan group dan others memiliki izin read dan execute.
Permission seperti ini sering digunakan pada directory atau file executable yang perlu dapat diakses oleh user lain, tetapi hanya owner yang boleh melakukan perubahan.
Contoh Permission 644
Permission 644 berarti:
6 = 4 + 2 + 0 = rw-
4 = 4 + 0 + 0 = r--
4 = 4 + 0 + 0 = r--
Artinya:
Owner dapat membaca dan mengubah file, sedangkan group dan others hanya dapat membacanya.
Permission 644 cukup umum digunakan untuk file biasa
seperti file konfigurasi atau dokumen.
Mengubah Permission dengan chmod
Command chmod digunakan untuk mengubah permission file
atau directory.
Contoh:
chmod 755 script.sh
Setelah command tersebut dijalankan:
- Owner:
rwx - Group:
r-x - Others:
r-x
Kita juga dapat menggunakan bentuk symbolic.
chmod u+x script.sh
Artinya menambahkan permission execute untuk owner.
Beberapa simbol yang perlu dipahami:
u= user atau ownerg= groupo= othersa= all+= menambahkan permission-= menghapus permission== menetapkan permission secara tepat
Contoh lainnya:
chmod g+w file.txt
chmod o-r file.txt
chmod u=rw file.txt
Apa Bedanya chmod, chown dan chgrp?
Tiga command ini sering dianggap sama karena sama-sama berhubungan dengan akses file, padahal fungsinya berbeda.
chmod
chmod digunakan untuk mengubah permission.
chmod 644 file.txt
chown
chown digunakan untuk mengubah owner file atau directory.
sudo chown budi file.txt
Setelah command tersebut dijalankan, owner dari
file.txt menjadi budi.
chown juga dapat sekaligus mengubah owner dan group:
sudo chown budi:developer file.txt
Artinya:
- Owner:
budi - Group:
developer
chgrp
chgrp digunakan khusus untuk mengubah group.
chgrp developer file.txt
Hal yang sama juga dapat dilakukan menggunakan:
chown :developer file.txt
Cara Mudah Mengingat Permission Linux
Cara paling mudah adalah memisahkan konsepnya menjadi dua pertanyaan:
Siapa yang mendapatkan akses?
u= ownerg= groupo= others
Akses apa yang diberikan?
r= readw= writex= execute
Kemudian ingat tiga command dasarnya:
chmod= mengubah permissionchown= mengubah ownerchgrp= mengubah group
Hindari Menggunakan chmod 777 Sembarangan
Salah satu kebiasaan yang cukup sering ditemui ketika mengalami masalah permission adalah langsung menjalankan:
chmod 777 file-atau-folder
Permission 777 berarti owner, group, dan others semuanya
mendapatkan izin read, write, dan execute.
777 = rwxrwxrwx
Walaupun terkadang terlihat sebagai solusi cepat, memberikan permission seluas ini dapat menimbulkan risiko keamanan.
Lebih baik memberikan permission sekecil mungkin sesuai kebutuhan. Prinsip ini dikenal sebagai principle of least privilege.
Ringkasan
Untuk memahami permission Linux, sebenarnya kita hanya perlu mengingat beberapa hal utama.
r = read = 4w = write = 2x = execute = 1- Digit pertama untuk owner.
- Digit kedua untuk group.
- Digit ketiga untuk others.
chmodmengubah permission.chownmengubah owner.chgrpmengubah group.
Jadi ketika menemukan permission seperti 754, kita bisa
membacanya sebagai:
Owner = rwx
Group = r-x
Others = r--
Setelah memahami pola tersebut, permission Linux yang sebelumnya terlihat seperti kombinasi huruf dan angka acak akan jauh lebih mudah dibaca dan dipahami.

Posting Komentar