Kenapa Kita perlu
File Permission?
Jika kita tidak dapat mengakses beberapa
file yang ada di dalah sistem Linux kita sendiri, biasanya itu karena kendala
konfigurasi hak akses.
Kepemilikan File
Setiap file di sistem Linux readers,
termasuk direktori (folder), dimiliki oleh pengguna dan grup tertentu. Oleh
karena itu, hak akses file di definisikan secara terpisah untuk User, Grup, dan Others (pengguna lain)
Pengertian:
User: username orang yg memiliki file. Secara default, pengguna yg
menciptakan file tersebut akan menjadi pemilik file tersebut.
Grup: Grup User yang memiliki File tersebut. Semua pengguna yang masuk ke
dalam kelompok mempunyai hak akses yang sama untuk file tersebut.
Others: Pengguna yang bukan pemilik file dan tisak masuk ke dalam kelompok
yang sama. Dengan kata lain jika readers menetapkan izin untuk ‘others’ maka
orang yg tidak memiliki file atau grup inilah yang akan terkena pengaruhnya.
Hak Akses
Ada tiga jenis izin hak akses di Linux yaitu
Read, Write, Execute
Pengertian:
Read: Pada file biasa, ini berarti file dapat di buka dan di baca. Jika
pada sebuah direktori, berarti readers bisa melihat isi direktori tersebut.
Write: Pada file biasa, ini berarti file dapat di modifikasi (menambah,
mengubah, menghapus, mengubah nama file dalam direktori).
Execute: Pada file biasa, ini berarti readers bisa menjalankan file sebagai
program atau shell script. Pada sebuah direktori, execute (atau biasa di sebut
‘search bit’) memungkinkan readers untuk mengakses file dalam direktori
misalnya : dengan perintah cd.
Bagaimana cara
melihat Hak Akses di Linux (Ubuntu)?
Pertama, kita bisa melihat hak akses dari file dengan mengetikkan perintah
di terminal # ls –l
Hasilnya maka akan seperti ini:
Apa arti outputnya?
Kolom pertama : merupakan jenis file dan perizinan yang mengikat file tersebut
(perzinan meliputi perizinan User, Grup dan Others). Terdiri dari 10 karakter.
Karakter pertama dari kolom pertama ini menunjukkan:
d= directory
-= regular file
l= Symbolic Link
s= Unix Domain Socket
p= named pipe
c= character device file
b= block device file
Lalu sisa 9 karakter lainnya menyatakan
perizinan. Dibagi menjadi 3 grup. Tiap grup berisi 3 karakter yang mewakili :
read, write dan execute. Karakter tersebut mudah diingat, diantaranya:
r= read permission
w= write permission
x= execute permission
-= no permission
Kolom kedua : menunjukkan jumlah Link (entri direktori yang merujuk ke file
tersebut)
Kolom ketiga : menunjukkan pemilik file
Kolom keempat : menunjukan Grup pemilik file
Kolom kelima : menunjukkan ukuran file dalam byte
Kolom keenam,
ketujuh dan kedelapan: menunjukan bulan dan
tanggal terakhir di akses atau di modifikasi
Kolom kesembilan
: menunjukkan nama file
Cara mengatur hak
akses
Kita dapat mengatur hak akses file dengan
perintah chmod. Di chmod terdapat 2 mode yang bisa di gunakan untuk konfigurasi
hak akses file yaitu dengan cara simbolik dan numerik.
Cara Simbolik:
Pertama : readers harus memutuskan apakah readers mengatur hak akses untuk
pengguna (u), kelompok (g), pengguna lainnya (o), atau ketiganya (a).
Kedua : readers bisa menambahkan izin (+), menghapus (-), atau menghapus
izin sebelumnya dan menambahkan izin yang baru (=)
Ketiga : tentukan perizinannya. Apakah readers mengatur izin read (r), write
, execute
(e), atau ketiganya.
![Title: (w)](file:///C:/Users/MUTHIA~1/AppData/Local/Temp/msohtmlclip1/01/clip_image004.gif)
Keempat : readers hanya tinggal memberikan perintah untuk chmod, hak akses
mana yang akan di rubah.
Contoh:
Kita mempunyai regular file bernama
contohfile dan file memiliki izin akses penuh pada semua kelompok (ada
perintah ‘rwx’).
1. kita hapus semua hak akses yang sekarang
dan mengganti dengan hanya izin read untuk semua grup.
Syntax: $ chmod a=r contohfile
$
chmod a=r mutiloveso.sh
Tampilan akan menjadi : -r–r–r–
2. selanjutnya kita akan memberikan izin
kepada grup (yang di tengah) untuk di tambahkan izin execute
Syntax: $ chmod g+x contohfile
$
chmod g+x mutiloveso.sh
Tampilan akan menjadi : -r–r-xr–
3. selanjutnya kita akan memberikan izin
kepada semua grup untuk di tambahkan izin write.
Syntax: $ chmod ugo+w contoh file
$
chmod ugo+w mutiloveso.sh
Tampilan akan menjadi : -rw-rwxrw-
4. selanjutnya kita akan menghapus izin
execute yang ada pada grup (yg di tengah) untuk di hapus.
Syntax:
$ chmod g-x contohfile
Tampilan akan menjadi : -rw-rw-rw-
Mode Numerik :
Mode dimana diwakili oleh 3 angka octal
untuk perizinan filenya.
Standar umumnya adalah:
4= read (r)
2= write(w)
1= execute (x)
0= tidak ada izin (-)
Jika ingin mendapatkan hak akses yang kita
inginkan kita hanya tinggal menjumlahkan angka yang sesuai .
Contoh:
1. Kita ingin mendapatkan hak akses Read
Write dan Execute secara bersamaan maka numeriknya menjadi seperti ini:
Read + write + execute
4 + 2 + 1 = 7
2. Kita ingin mendapatan hak akses read dan
execute secara bersamaan maka numeriknya akan menjadi seperti ini:
Read + Execute
4 + 1 = 5
Contoh penerapan pada syntax:
$ chmod 755 contohfile
$
chmod 755 mutiloveso.sh
Syntax diatas menunjukan hak akses untuk
User adalah 7 (rwx), untuk grup adalah 5 (rx), dan untuk others juga 5
(rx).