Lewati ke konten utama

Linux File Permissions

Di Linux, setiap file dan direktori memiliki izin akses (permission) yang menentukan siapa yang boleh membaca, menulis, atau mengeksekusi file tersebut. Setiap file atau directory memiliki tiga tingkat kepemilikan:

  • User owner (u).
  • Group owner (g).
  • Others (o).

Setiap tingkat kepemilikan dapat diberi izin berikut:

  • Read (r).
  • Write (w).
  • Execute (x).

Cara Cek Permission

Gunakan perintah berikut:

ls -l

Contoh output:

-rwxr-xr--  1 user1 admin  1234 Jul  2 08:00 script.sh

Penjelasan kolom pertama -rwxr-xr--:

KarakterArti
-Tipe: - (file biasa), d (directory), l (symlink), dsb
rwxOwner: read, write, execute
r-xGroup: read, no write, execute
r--Others: read only

Anda juga bisa menggunakan perintah stat sebagai berikut dengan hasil yang lebih lengkap:

stat anaconda-ks.cfg 

Contoh output:

  File: anaconda-ks.cfg
Size: 1326 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 33575044 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:admin_home_t:s0
Access: 2025-06-28 01:09:22.473000000 +0700
Modify: 2025-06-28 01:09:22.606000000 +0700
Change: 2025-06-28 01:09:22.606000000 +0700
Birth: 2025-06-28 01:09:22.473000000 +0700

Cara Mengubah Permission

Menggunakan Simbol

Tambahkan permission execute ke user (owner).

chmod u+x script.sh

Simbol:

  • u = user (owner)

  • g = group

  • o = others

  • a = all (u+g+o)

Operasi:

  • + = tambah izin

  • - = hapus izin

  • = = set izin secara eksplisit

Contoh:

chmod g-w file.txt     # Hapus izin write untuk group
chmod o=rx file.txt # Set others hanya bisa read dan execute

Menggunakan Angka

Format: chmod XYZ nama_file Setiap kategori (user, group, other) diwakili oleh 1 digit:

AngkaIzin
0---
1--x
2-w-
3-wx
4r--
5r-x
6rw-
7rwx

Contoh:

chmod 755 script.sh   # rwx untuk user, rx untuk group & others
chmod 644 file.txt # rw- untuk user, r-- untuk group & others

Mengubah Owner dan Group

Mengganti pemilik file:

chown username file.txt

Mengganti pemilik file dan group:

chown user:group file.txt

Ganti hanya group;

chgrp groupname file.txt

Default Permission

Direktori biasanya menggunakan 755

chmod 755 /var/www

File menggunakan 644

chmod 644 file.txt

Berikut permission yang biasanya digunakan:

TujuanArti
Script hanya bisa dijalankan oleh pemilikchmod 700 script.sh
File bisa dibaca semua, tapi hanya owner bisa editchmod 644 file.txt
Direktori bisa diakses semua orang, hanya owner bisa ubah isichmod 755 /data/public
Script .sh wajib ada executechmod +x script.sh