Permission Linux (Chmod & Chown) - Hezran77/PRAKERIN-ONLINE GitHub Wiki

Hak Akses & Kepemilikan

CHMOD adalah kependekan dari CHange MODe, atau terjemahan bebasnya adalah merubah mode. Mode disini adalah mode akses dari suatu file / direktori di sistem operasi Linux. Chmod berfungsi untuk mengatur hak akses atau permission terhadap suatu file/direktori kepada user, group dan other. Ada tiga jenis hak akses yang biasanya dipakai chmod beserta simbolnya, yaitu:

  • r = read
  • w = write
  • x = execute

Setiap file dan folder mempunyai kepemilikan yaitu owner dan group. Sedangkan others digunakan untuk user yang tidak menjadi pemilik serta tidak di dalam group yang sama. Semua file yang ada di dalam Linux mempunyai tiga tipe user :

  1. user = Semua user yang membuat dan memiliki file/direktori.
  2. group = Semua user merupakan anggota dari group yang sama.
  3. others = Semua user lain di dalam sistem yang bukan owner atau member dari sebuah group.

Maka kepemilikan Linux menjadi : Ugo

  • u = user
  • g = group
  • o = other

Permission File Linux Seperti ini : d rwx rwx rwx

  • d = Direktori
  • rwx pertama = Permission User
  • rwx kedua = Permission Group
  • rwx ketiga = Permission Other

Perintah chmod juga dapat menggunakan angka/numerik untuk mendeklarasikan tipe hak akses yang diinginkan :

  • 0 = -- = No Permission
  • 1 = -x = Execute
  • 2 = -w = Write
  • 3 = -wx = Write and Execute
  • 4 = r- = Read
  • 5 = r-x = Read and Execute
  • 6 = rw = Read and Write
  • 7 = rwx = Read, Write, and Execute

Angka 7 berasal dari hasil 1 + 2 + 4 = 1(Execute), 2(Write), 4(Read). Jadi 7 menjadi (execute, write and read).

Tugas

  1. Login sebagai super user / root

  1. Buat User baru dengan perintah useradd [namauser]. Sebagai contoh, Saya memakai nama teman - teman Sekolah Saya.

  1. Selanjutnya buat grup dengan perintah groupadd [namagrup] sekaligus buat folder di dalamnya dengan perintah mkdir -p [namafolder].

  1. Atur pembagian user ke dalam grup yang berbeda - beda. Ketik perintah usermod -a [namauser] -d [nama grup] -G [namagrup].

  1. Lakukan pengecekan apabila user sudah masuk kedalam grup-nya. Cek menggunakan perintah cat /etc/group.

User sudah masuk ke dalam grup semua

  1. Masuk ke grup yang dibuat tadi, lalu buatlah file teks dengan perintah touch [namafile].txt. Lakukan pada setiap grup.

PRAKERIN_1

PRAKERIN_2

PRAKERIN_3

PRAKERIN_4

g+w filename

  1. Masuk ke grup / direktori PRAKERIN dengan perintah cd PRAKERIN_1 lalu ketik ls -lah untuk menampilkan permission dan kepemilikan file nya.

  1. Ubah permission file teks nya dengan perintah chmod -R [namafile]. Lalu cek lagi dengan ls -lah.

  1. Setelah itu ubah kepemilikan file dengan perintah chown -R [namauser]:[namagrup] [namafile].

  1. Karena tadi Saya coba menggunakan nama anggifha, masuk sebagai user anggifha untuk mengetes permission dan kepemilikan. Dengan perintah su anggifha lalu nano anggifha.txt.

  1. Ketik sesuatu dalam file nya, kemudian save [CTRL + X]. File dapat di save karena dapat hak akses dan di edit oleh pemiilik folder.

  1. Coba untuk mengedit file nya dengan user lain yang berbeda grup.

  1. Ketika di save, akses ditolak karena berbeda user dan grup.

g-wx filename

  1. Masuk ke grup / direktori PRAKERIN_2 cd PRAKERIN_2 lalu ls -lah untuk melihat hak akses serta kepemilikan file.

  1. Ubah hak akses dengan perintah chmod g+wx [namafile].

  1. Setelah itu ubah kepemilikan dengan perintah chown.

  1. Coba edit file menggunakan user yang memegang kepemilikan file.

  1. Muncul tulisan File is not unwritable yang berarti file tersebut dapat di edit.

  1. Coba edit menggunakan user yang beda grup.

  1. Maka tertulis File is unwritable yang berarti file tidak dapat di edit karena tidak mendapatkan hak akses.

o+w

  1. Masuk ke grup PRAKERIN_3, cd PRAKERIN_3 dan ls -lah

  1. Ubah hak kepemilikan dengan perintah chown.

  1. Ubah hak akses file dengan perintah chmod

  1. Masuk menggunakan user yang berbeda grup atau sebagai other

  1. File tersebut dapat di edit dikarenakan ada akses permission untuk other atau user yang berbeda grup.

  1. Coba masuk menggunakan user lain namun satu grup

  1. File tidak dapat di edit, karena user satu grup tidak mendapatkan hak akses file atau permission file.

o-rwx

  1. Kembali ke direktori utama dengan perintah cd .. lalu ls -lah

  1. Ubah hak akses folder nya dengan perintah chmod o-rwx PRAKERIN_1 lalu ls -lah lagi.

  1. Masuk ke folder yang telah diubah permission nya (PRAKERIN_1). Kemudian masuk dengan salah satu user dari grup PRAKERIN_1, namun buka file dari grup lain.

  1. Maka tertulis Permission denied sebab uses diluar grup tidak mendapat akses read, write dan execute (rwx).