Tuesday, September 29, 2015

File Permission pada Linux

Sebelum Membahas lebih dalam mengenai File Permission pada Linux, saya akan membahas Konsep Dasar

Konsep Dasar
Pada dasarnya konsep file permission di GNU/Linux adalah suatu pengaturan kepimilikann file/folder berdasarkan user atau group.
file permission dibagi menjadi 3 yaitu user, group dan other dan setiap file/folder di system file memiliki 3 atribut yaitu owner, group dan mode.
Owner adalah id dari user pemilik file/folder tersebut, Group adalah gid dari group dimana user pemilik file/folder tersebut terdaftar, mode adalah sederetan angka 1 dan 0 untuk menyatakan flags akses terhadap suatu file/folder.

Cara paling mudah untuk melihat atau  mengetahui ketiga atribut tersebut adalah dengan menjalankan perintah ls dengan memberikan opsi -l
   Gambar 1. Perintah ls -l di linux

 Dari hasil perintah tersebut terlihat ada 4 berkas, keempat berkas itu dimiliki oleh user root dan navalin yang tergabung dalam groupnya masing masing. sedangkan mode atau permission berkas tersebut dapat dilihat pada kolom kedua yang sama-sama bernilai rw-r--r--. penjelasan kolom lainnya adalah sebagai berikut:   

d      =       untuk direktori, sama seperti folder Docs dengan permission
drwxr-xr-x

    =      Untuk Regular file (berkas biasa), sama seperti file chatbot dan file zip  lainnya

rwx  =   file permission, akan dibahas setelah ini

kolom ketiga = menyatakan banyaknya hard link ke berkas tersebut, perhatikan gambar 1 terdapat angka 1 dan 2

kolom keempat = terdapat root dan navalin pada kolom keempat, itu adalah User atau Owner dari berkas tersebut

kolom kelima = sama seperti kolom keempat, jika kolom keempat adalah user/Owner dan kolom kelima adalah kolom Group

kolom keenam = ukuran bytes dari berkas tersebut 1 bytes = 8 bit

kolom ketujuh = tanggal dan waktu berkas tersebut dirubah terakhir kali


pada kolom permission, tiga karakter pertama merupakan perizinan untuk user pemilik berkas tersebut (Owner), tiga berikutnya untuk grup (group), tiga terakhir untuk lainnya (other). Karakter karakter tersebut mewakili permission read (dapat dibaca), write (dapat ditulis), execute (dapat dieksekusi).
Pengaturan file permission dengan cara ini (menggunakan karakter huruf)
sebenarnya dapat dinyatakan dengan bilangan oktal (dan inilah sebenarnya yang berlaku karena karakter rwx digunakan hanya untuk mempermudah)

dalam sistem bilangan oktal, permission dinyatakan dalam bentuk digit.
4 = r, 2 = w, 1 = x. dari contoh sebelumnya dapat diketahui bahwa 3 dari 4 berkas tersebut memiliki Permission 644, kenapa 644 ? kenapa nggak 446 dan sebagainya ? Jadi Gini mas xD

r = 4, w = 2, i = 1
sedangkan permission dari file chatbot misalnya seperti pada gambar 1 yaitu
-rw-r--r--. seperti yang saya bilang tadi, digit pertama untuk file jika ( - ) dan folder jika (" d ") dari situ kita tahu bahwa chatbot bukanlah sebuah direktori melainkan file biasa, kemudian 3 karakter pertama untuk ? untuk Owner ya mas, baca lagi keatas :v disitu jelas bahwa owner hanya bisa read dan write saja... kenapa ? karena permissionnya adalah rw-.

nah jika r = 4, w = 2, x = 1 maka rw- = 4 + 2 = 6 untuk karakter ( - ) itu sama dengan Null atau tidak ada/ owner tidak bisa mengeksekusi file, jadi kita tahu bahwa dalam digit Oktal permission Owner = 6

kemudian 3 karakter setelahnya adalah  r--, sudah jelas ya ? kalau r = 4 berarti dalam digit Oktal permission group = 4, begitu pun dengan 3 karakter terakhir yaitu r-- = 4, nah maka jika digabungkan menjadi 644

dari situ dapat kita simpulkan bahwa Owner hanya dapat membaca dan menulis (read and write) sedangkan group dan Other hanya bisa Membaca (read)

Ok, cukup sekian sekiranya kurang jelas, bisa Kontak saya lewat Email pada Contact Us