Konsep Dasar
Pada dasarnya konsep file
permission di GNU/Linux adalah suatu pengaturan kepemilikan file/folder berdasarkan user dan/atau group.
Kepemilikan file/folderbisa diberikan kepada user/group. Secara garis
besar file permission dibagi menjadi tiga
yaitu user, group dan other.
Setiap file/folder di system file memiliki tiga atribut
yaitu owner, group,
dan mode. Owner adalah id dari user pemilikfile/folder tersebut. Group adalah gid dari
grup dimana user pemilik file/foldertersebut terdaftar. Mode adalah
sederetan angka 0 dan 1 untuk menyatakanflags akses terhadap
suatu file/folder.
Apa itu file permission ?
File permission adalah hak akses
bagi user untuk membaca,menulis dan mengeksekusi sebuah file.
Di linux atau unix mempunyai 3 hak akses berbeda pada sebuah file, yaitu owner (pemilik file) , group dan publik.
Di linux atau unix mempunyai 3 hak akses berbeda pada sebuah file, yaitu owner (pemilik file) , group dan publik.
Apa gunanya ?
Tidak lain adalah untuk keamanan
data, untuk menjaga file-file supaya hanya diakses user yang berkepentingan.
Kepemilikan file
Setiap file di sistem Linux Anda,
termasuk direktori, dimiliki oleh pengguna tertentu
dan grup.
User: username dari orang yang memiliki file tersebut. Pengguna
yang menciptakan file tersebut akan menjadi pemiliknya.
Grup: Grup User yang memiliki file tersebut. Semua pengguna yang
termasuk ke dalam kelompok yang memiliki file tersebut akan memiliki hak akses
yang sama ke file.
Other: Seorang pengguna yang bukan pemilik file tersebut dan tidak
termasuk dalam kelompok yang sama.
Izin akses di Linux
Ada tiga jenis izin akses di
Linux: read, write, dan execute. Izin ini didefinisikan secara terpisah untuk
pemilik file, kelompok dan semua pengguna lain.
Read. Pada file biasa, read berarti file dapat dibuka dan dibaca.
Pada sebuah direktori, read berarti Anda dapat melihat daftar isi direktori.
Write. Pada file biasa, ini berarti Anda dapat memodifikasi file,
alias menulis data baru ke file. Dalam kasus sebuah direktori, write berarti
Anda dapat menambah, menghapus, dan mengubah nama file dalam direktori. Ini
berarti bahwa jika file memiliki izin write, Anda diperbolehkan untuk
memodifikasi isi file, tetapi Anda diperbolehkan untuk
mengubah nama atau
menghapus file hanya
jika hak akses direktori file yang memungkinkan Anda
untuk melakukannya.
Execute. Dalam kasus sebuah file biasa, ini berarti Anda dapat menjalankan
file sebagai program atau shell script.
Pada sebuah direktori, execute (disebut juga "search bit")
memungkinkan Anda untuk mengakses file dalam direktori dan memasukkannya,
dengan perintah cd, misalnya.
Melihat Hak Akses File
Untuk cara melihat sebuah
permission sebuah file kita bisa melihatnya dengan perintah di bash console
dibawah ini
$ ls –l
maka akan list file dalam
direktori yang aktif beserta atribut nya. Exp :
Kolom pertama, salah
satu yang terlihat
seperti sekelompok omong kosong,
menunjukkan jenis file dan
perizinan.
Kolom kedua menunjukkan jumlah
link (entri direktori
yang merujuk ke
file).
Kolom yang ketiga menunjukkan pemilik file, dan yang
keempat menunjukkan kelompok pemilik file.
Kolom lain menunjukkan
ukuran file dalam
byte, tanggal dan
waktu modifikasi terakhir, dan
nama file.
Karakter pertama menunjukkan :
d = directory
- = regular file
l = symbolic link
s = Unix domain socket
p = named pipe
c = character device file
b = block device file
9 karakter berikutnya menyatakan
perizinan. Terdiri dari :
r = read permission
w = write permission
x = execute permission
- = no permission
Chmod
Perintah chmod digunakan untuk
mengubah properti sebuah file atau folder, untuk menggunakan kita harus
memastikan secara tepat setting file permission yang akan diberikan. ada 2 cara
untuk melakukan settingan file permision :
Modus Symbolic
Modus symbolic ini cukup mudah
diingat. karena dapat menentukan hak akses untuk user (u), group (g), others
(o) dan untuk ketiganya (a). kemudian dapat menambahkan permission (+), hapus
permission (-), atau menghapus hak akses sebelumnya dan menambahkan yang baru
(=). berikutnya untuk permission read (r), perizinan write (w), dan untuk
execute (x).Contoh untuk menghapus semua permission tapi menambahkan read untuk
semuanya.
Modus Numerik
modus lain dimana chmod bisa digunakan ialah dengan modus numerik. dalam modus numeric ini permission file bukanlah huruf, melainkan tiga digit oktal.
4 = read (r)
2 = write (w)
1 = execute (x)
0 = no permission (-)
untuk menambahkan permission, kita tinggal menambahkan angka yang sesuai dengan angka yang di atas. sebagai contoh, hak akses rwx maka 4+2+1 = 7, rx maka 4+1 = 5 dan rw maka 4+2 = 6. untuk pengaturan user, group, dan others, tinggal menomorkan tiga digit yang mewakili hak akses kelompok.contoh menambahkan read dan write pada user dan read pada group :
Mengubah kepemilikan file & direktori
Untuk mengganti digunakan
perintah chown. Berikut adalah cara
penulisannya :
chown option pemilik_baru
nama_file/direktori
Untuk mengubah kepemilikan file
contohfile dengan user lain, kita bisa mengetikkan:
chown aku contohfile
Untuk melihat
perubahannya lihat kembali
detailnya dengan menggunakan
perintah.
ls –l contohfile
chown –R ini mengubah permission semua file yang ada dalam
subdirektori dalam direktori yang sedang aktif.
chown -R aku work
Perintah ini memberikan chown
permission bagi user aku terhadap semua file yang ada di direktori work.
Referensi
E-book Tutorial Perintah Dasar
Linux
Module 6 Linux permission