Unix / Linux - File Permission / Access Modes

Halo teman-teman, para pemula pemrogram! Hari ini, kita akan mendalaminya dunia yang menarik izin file di Unix dan Linux. Jangan khawatir jika Anda baru saja memulai; pada akhir tutorial ini, Anda akan menjadi ahli izin file! Mari kita mulai perjalanan yang menarik ini bersama-sama.

Unix / Linux - File Permission

Penanda Izin

Bayangkan Anda adalah penjaga peti Harta Karun. Anda harus menentukan siapa yang bisa membukanya, siapa yang bisa memasukkan hal-hal ke dalamnya, dan siapa yang bisa mengambil hal-hal dari dalamnya. Itu sebenarnya apa yang izin file di Unix dan Linux!

Ketika Anda mencantumkan file menggunakan perintah ls -l, Anda akan melihat sesuatu seperti ini:

-rwxr-xr-x 1 john users 2048 Jan 15 2023 myfile.txt

mari kitauraikan huruf misterius di awal:

  • Karakter pertama menunjukkan jenis file (- untuk file biasa, d untuk direktori)
  • 9 karakter berikutnya mewakili izin untuk pengguna, grup, dan lainnya

Berikut adalah tabel yang mudah untuk mengingat apa arti setiap huruf:

Huruf Arti
r Izin membaca
w Izin menulis
x Izin menjalankan
- Tidak ada izin

Mode Akses File

Sekarang, mari bicarakan apa izin-izin ini sebenarnya membolehkan Anda melakukan dengan file:

  1. Baca (r): Melihat isi file
  2. Tulis (w): Mengubah atau menghapus file
  3. Jalankan (x): Menjalankan file sebagai program atau skrip

Berikut adalah cara menyenangkan untuk mengingat: Pikirkan "r" sebagai "baca resep", "w" sebagai "tulis resep", dan "x" sebagai "jalankan resep" (membuat makanan)!

Mode Akses Direktori

Direktori memiliki izin yang mirip, tetapi mereka bekerja sedikit berbeda:

  1. Baca (r): Mencantumkan isi direktori
  2. Tulis (w): Menambahkan atau menghapus file di dalam direktori
  3. Jalankan (x): Mengakses direktori dan isinya

Bayangkan direktori sebagai sebuah kamar. "r" membolehkan Anda melihat ke dalam, "w" membolehkan Anda menambahkan atau menghapus furniture, dan "x" membolehkan Anda memasuki kamar.

Mengubah Izin

Sekarang kita mengerti izin, mari belajar bagaimana mengubahnya! Kita menggunakan perintah chmod untuk ini. Ada dua cara untuk menggunakan chmod: mode simbolik dan mode mutlak.

Mode Simbolik

Ini seperti memberikan instruksi untuk menambahkan atau menghapus izin. Berikut adalah sintaksis dasar:

chmod [siapa][+,-,=][izin] namafile
  • siapa bisa adalah u (pengguna), g (grup), o (lainnya), atau a (semua)
  • + menambah izin, - menghapusnya, = menyetel tepat
  • izin adalah r, w, atau x

Misalnya:

chmod u+x myfile.txt

Ini menambah izin menjalankan untuk pengguna.

Menggunakan chmod dengan Izin Mutlak

Mode mutlak menggunakan angka untuk menyetel izin. Setiap izin memiliki nilai:

  • r = 4
  • w = 2
  • x = 1

Kita menambahkan ini untuk setiap kategori (pengguna, grup, lainnya). Berikut adalah tabel untuk membantu Anda mengerti:

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

Misalnya:

chmod 755 myfile.txt

Ini menyetel rwx untuk pengguna, dan rx untuk grup dan lainnya.

Mengubah Pemilik dan Grup

kadang-kadang, Anda perlu mengubah siapa yang memiliki file atau grup mana file itu miliknya. Mari lihat bagaimana melakukan itu.

Mengubah Pemilik

Untuk mengubah pemilik file, kita menggunakan perintah chown:

chown pemilik_baru namafile

Misalnya:

chown alice myfile.txt

Ini mengubah pemilik myfile.txt menjadi alice.

Mengubah Grup Pemilik

Untuk mengubah grup, kita menggunakan perintah chgrp:

chgrp grup_baru namafile

Misalnya:

chgrp developers myfile.txt

Ini mengubah grup myfile.txt menjadi developers.

Izin SUID dan SGID File

Sekarang, mari bicarakan tentang izin khusus: SUID (Set User ID) dan SGID (Set Group ID). Ini seperti kekuatan super bagi file!

  • SUID: Ketika diatur di file eksekutable, ia akan berjalan dengan izin pemilik.
  • SGID: Ketika diatur di file eksekutable, ia akan berjalan dengan izin grup.

Untuk menyetel ini, kita menggunakan chmod dengan nomor khusus:

chmod 4755 myfile    # Set SUID
chmod 2755 myfile    # Set SGID

Angka 4 di awal menyetel SUID, dan 2 menyetel SGID.

Dan itu adalah nya! Anda sekarangah terampil di dunia izin file Unix/Linux. Ingat, dengan kekuatan besar datang tanggung jawab besar. Gunakan izin-izin ini bijaksana untuk menjaga file Anda aman dan terjaga.

Latihan membuat sempurna, jadi jangan takut untuk mencoba (dalam lingkungan yang aman, tentu saja). Sebelum Anda tahu, Anda akan mengelola izin file seperti seorang ahli!

Credits: Image by storyset