Dalam tutorial ini, Anda akan belajar bagaimana cara mengganti permission pada file/folder dan
owners (pemilik) melalui command line di sistem Linux/Unix. Ada 2 perintah dasar yang bisa
Anda gunakan untuk melakukan hal tersebut yaitu: chmod dan chown.
Type Explanation
owner Pengguna yang membuat dan memiliki file / direktori.
group Semua pengguna yang merupakan anggota dalam grup yang sama.
others Semua pengguna lainnya dalam sistem yang bukan owner atau member dari sebuah grup..
Perintah ls -l, bisa digunakan untuk melihat permission pada file dan ownernya. Sebagai
contoh, ls -l file1.txt akan menampilkan:
“-rwxr–rw-“ – Bagian ini akan menampilkan permission. Ada 3 huruf yang mungkin
akan sering Anda lihat: r, w, x, d.
d artinya tipe file adalah direktori (folder). Dalam contoh kita tersebut, huruf d tidak ada
(seharusnya berada di urutan pertama, namun pada contoh tidak ada/diwakili oleh simbol
“-” yang artinya “tidak”). Huruf x artinya permission untuk mengeksekusi file/folder
(kita sering membutuhkan permission ini untuk masuk ke dalam folder).
Huruf w artinya permision untuk menulis file/folder (edit, hapus, dll). Terakhir, huruf r
artinya adalah read. Jika kita memiliki permission untuk membacara, kita bisa membaca
isi dari file, namun hanya itu saja. Kita tidak bisa meng-edit atau mengeksekusi file
tersebut.
1 – Jumlah hard links. Biasanya hard link merupakan nama tambahan untuk sebuah file.
user user – Menampilkan pemilik (owner) dan group owner dari file.
0 – Menampilkan ukuran file.
Jan 19 12:59 – Menampilkan kapan terakhir kali file dimodifikasi.
file1.txt – Nama file/folder
Kembali ke perintah chmod. Perintah ini akan memungkinkan kita untuk menggati permission
dari file/folder. Kita akan belajar bagaimana cara melakukannya hanya dengan menyertakan
nomor-nomor secara bersamaan. Setiap tipe permission memiliki nomornya masing-masing:
r (read) – 4
w (write) – 2
x (execute) – 1
Jadi, angka pertama adalah 7. Berdasarkan penjelasan arti angka di atas, satu-satunya cara kita
bisa mendapatkan angka 7 adalah dengan menambahkan angka 4, 2 dan 1, bentuknya: 4+2+1=7.
Artinya SEMUA permission (read, write dan execute – rwx). Angka pertama ini akan membuat
permission untuk owner dari file tersebut.
Angka ke-2 adalah 4. Artinya adalah permission r (read), angka ini memberikan permission ke
group owner.
Angka ke-3 adalah 6, berdasarkan arti angka di atas, cara mendapatkan angka ini adalah dengan
menambahkan 4 dan 2, jadinya 4+2=6. Sehingga kita memberikan others sebuah permission
untuk read (4) dan write (2) pada file.
Bagian ke-3 pada perintah (file1.txt) adalah nama file, kita tulis nama file yang ingin kita atur
permissionnya.
Contoh lainnnya: chmod 777 file2. txt, perinta ini akan memberikan SEMUA permission ke
semua jenis user (owner, group dan other).
Berikut ini adalah list yang paling sering digunakan untuk file:
Numeric
Value Explanation
Value
-rw——- 600 Pemilik bisa membaca dan menulis.
Pemilik bisa membaca dan menulis, group dan orang lain bisa
-rw-r–r– 644
membaca.
-rw-rw-rw- 666 Pemilik, kelompok dan others bisa membaca dan menulis.
Pemilik bisa membaca, menulis dan mengeksekusi, group dan yang
-rwx—— 700
lainnya tidak bisa melakukan apapun dengan file tersebut.
Pemilik bisa membaca, menulis dan mengeksekusi, kelompok dan
-rwx–x–x 711
orang lain bisa mengeksekusi.
Pemilik bisa membaca, menulis dan mengeksekusi, kelompok dan
-rwxr-xr-x 755
orang lain bisa membaca dan mengeksekusi.
- Pemilik, kelompok dan orang lain bisa membaca, menulis dan
777
rwxrwxrwx melaksanakan.
Numeric
Value Explanation
Value
drwx—— 700 Hanya pemilik yang bisa membaca dan menulis di direktori ini.
drwxr-xr- Pemilik, kelompok dan lain-lain bisa membaca direktori, tapi
755
x pemiliknya hanya bisa mengubah isinya.
Pada dasarnya, jika kita memiliki file “demo.txt” dan kita ingin membuat owner file ini menjadi
“bambang” dan group owner menjadi “clients”, maka perinta yang akan kita gunakan adalah:
Kita menghilangkan group owner dan hanya mengetikan owner file yang baru, dalam kondisi
seperti itu, group owner akan tetap tidak berubah. Contoh lain yang serupa adalah jika kita ingin
mengubah group owner dari sebuah file, maka perintahnya akan menjadi seperti berikut:
Dalam kondisi seperti ini, hanya group owner yang akan berganti menjadi clients (owner tetap
tidak berubah).
PENTING! Anda harus berhati-hati dengan opsi ini karena bila salah menggunakannya justru
Anda malah mengganti permission/owners dari semua file di dalam sistem Anda. Efeknya akan
menimbulkan kesalahan fatal dan Anda akan semakin repot untuk mengembalikan ke kondisi
normal.
“-f” – Akan memaksa eksekusi dan tidak memunculkan banyak pesan error.
“-v” – Memberikan Anda diagnosa setiap file yang dipengaruhi oleh perintah.
“-c” – Sama seperti -v, namun hanya akan menyediakan informasi bila perubahan sudah
benar-benar terjadi..
chmod
Sintaksis
chmod [Pilihan] ... Mode [, Mode] ... file ...
Pilihan
-f, --silent, --quiet menekan sebagian besar pesan kesalahan
chmod tidak pernah mengubah izin dari tautan simbolik. Ini bukan masalah karena izin tautan simbolis
tidak pernah digunakan. Namun, untuk setiap tautan simbolis yang terdaftar pada baris perintah, chmod
mengubah izin dari file runcing ke. Sebaliknya, chmod mengabaikan link simbolik yang ditemui selama
traversals direktori rekursif.
Mode numerik:
Digit pertama = memilih atribut untuk set ID pengguna (4) dan mengatur ID grup (2) dan menyimpan
gambar teks (1) S
Digit kedua = izin untuk pengguna yang memiliki file: baca (4), tulis (2), dan eksekusi (1)
Digit ketiga = izin untuk pengguna lain dalam grup file: baca (4), tulis (2), dan eksekusi (1)
Digit keempat = izin untuk pengguna lain TIDAK dalam grup file: baca (4), tulis (2), dan eksekusi (1)
Nilai oktal (0-7) dihitung dengan menambahkan nilai untuk setiap digit
Pengguna (rwx) = 4 + 2 + 1 = 7
Group (rx) = 4 + 1 = 5
Dunia (rx) = 4 + 1 = 5
mode chmode = 0755
Contoh
Kombinasi huruf ugoa mengontrol akses pengguna ke file yang akan diubah:
Surat pengguna
Pengguna yang memilikinya u
Pengguna lain dalam Grup file g
Pengguna lain tidak dalam grup file o
Semua pengguna a
Jika tidak ada yang diberikan, efeknya seolah-olah diberikan, tetapi bit yang diatur dalam umask tidak
terpengaruh.
Operator '+' menyebabkan izin yang dipilih untuk ditambahkan ke izin yang ada dari setiap file; '-'
menyebabkan mereka dihapus; dan '=' menyebabkan mereka menjadi satu-satunya izin yang dimiliki
file.
Surat izin
Baca r
Tulis w
Execute (atau akses untuk direktori) x
Eksekusi hanya jika file tersebut adalah direktori
(atau sudah mengeksekusi izin untuk beberapa pengguna) X
Set ID pengguna atau grup saat eksekusi s
Bendera penghapusan terbatas atau bit tempel t
Izin yang dimiliki Pengguna yang memiliki file saat ini untuk itu u
Izin yang dimiliki pengguna lain dalam Grup file untuknya g
Izin yang tidak dimiliki pengguna lain di grup file untuk itu o
Contoh
Tolak jalankan izin untuk semua orang:
file chmod a-x
Buat file yang dapat dibaca dan ditulis oleh grup dan lainnya:
chmod pergi + file rw
Izinkan semua orang untuk membaca, menulis, dan mengeksekusi file dan mengaktifkan ID grup yang
ditetapkan:
chmod = rwx, file g + s