Sebenarnya ini merupakan posting untuk melengkapi posting saya sebelumnya dengan sedikit tambahan dan perubahan, pemahaman dasar tentang sistem file pada Linux Operating System terutama pada distro Debian dan turunannya ini lah tema yang akan kita ambil. Baiklah Let's begin..
Sistem file di Linux berbeda dengan sistem file pada operating system lain, misal saja pada Ms. Windows. Secara sederhana pada Linux semua dianggap file, jika sesuatu itu bukan file maka itu adalah proses. Linux tidak membedakan antara file dan direktori karena pada dasarnya direktori adalah file yang berisi nama-nama file yang lainnya. Meskipun semua dianggap file namun terdapat pengecualian.
- Directories - file yang berisi daftar file lainnya
- Special files - Mekanisme yang digunakan input dan output. Kebanyakan berada pada folder /dev.
- Link - file penghubung, menyebabkan file nampak pada beberapa bagian dari system tree.
- Sockets - tipe file khusus, mirip dengan soket pada TCP/IP, menyediakan jaringan antar proses dilindungi oleh kontrol akses file sistem.
- Named pipes - bertindak kurang lebih seperti socket dan membentuk sebuah jalan untuk proses berkomunikasi satu sama lainnya tanpa menggunakan tanpa menggunakan socket jaringan semantik.
Symbol | Meaning |
---|---|
- | Regular file |
d | Directory |
l | Link |
c | Special file |
s | Socket |
p | Named pipe |
b | Block device |
Pemilik, Hak Akses, & Group
Pada GNU/Linux user dapat memproteksi file-filenya dan user mana yang dapat membaca, mengubah, dan menjalankan file tersebut. terdapat 3 macam hak akses dari sebuah file.
- Read - pengguna hanya dapat membaca file.
- Write - pengguna dapat merubah file.
- Execute - pengguna dapat menjalankan file.
- Owner - hak akses untuk pemilik file.
- Group - Hak akses pada group.
- Other - Untuk user lain selain owner dan user dalam group.
total 60
drwxr-xr-x 2 ubuntu ubuntu 4096 Dec 22 06:42 Desktop
drwxr-xr-x 16 ubuntu ubuntu 4096 Dec 23 11:37 Documents
drwxr-xr-x 9 ubuntu ubuntu 4096 Dec 25 09:04 Downloads
-rw-r--r-- 1 ubuntu ubuntu 8445 Dec 22 06:38 examples.desktop
-rwxrwxrwx 1 root root 447 Dec 25 22:30 infosistem.sh
-rw-rw-r-- 1 ubuntu ubuntu 304 Dec 23 01:21 missfont.log
Nilai
|
Arti
|
0
|
---
|
1
|
--x
|
2
|
-w-
|
3
|
-wx
|
4
|
r--
|
5
|
r-x
|
6
|
rw-
|
7
|
rwx
|
Selanjutnya untuk mengubah hak akses ini kita dapat menggunakan perintah chmod. untuk parameternya bisa menggunakan bilangan desimal atau huruf. Sebaiknya kita langsung menuju TKP agar lebih paham.
Pertama-tama kita buat dulu direktori baru pada home dir, saya beri nama "kotak".
ubuntu@ubuntu:~$ mkdir ~/kotak
ubuntu@ubuntu:~$ cd ~/kotak #perintah untuk pindah direktori
ubuntu@ubuntu:~/kotak$
dan selanjutnya, buat sebuah file dan folder.
ubuntu@ubuntu:~/kotak$ touch isi.txt #membuat file isi.txt
ubuntu@ubuntu:~/kotak$ mkdir kotak2 #membuat direktori kotak2
ubuntu@ubuntu:~/kotak$ ls -l
total 4
-rw-rw-r-- 1 ubuntu ubuntu 0 Dec 29 09:51 isi.txt
drwxrwxr-x 2 ubuntu ubuntu 4096 Dec 29 09:52 kotak2
Selanjutnya kita ubah hak akses dengan parameter angka dulu. Kita ubah file isi.txt agar hanya bisa diakses oleh owner saja.
ubuntu@ubuntu:~/kotak$ chmod 700 isi.txt
ubuntu@ubuntu:~/kotak$ ls -l
total 4
-rwx------ 1 ubuntu ubuntu 0 Dec 29 09:51 isi.txt
drwxrwxr-x 2 ubuntu ubuntu 4096 Dec 29 09:52 kotak2
Dapat kita lihat atribut file isi.txt berubah (text dengan warna merah). Sedangkan untuk mengubah hak akses direktori dan file yang ada di dalamnya perlu ditambahkan opsi -R (recursive).
ubuntu@ubuntu:~/kotak$ chmod -R 741 kotak2
ubuntu@ubuntu:~/kotak$ ls -l
total 4
-rwx------ 1 ubuntu ubuntu 0 Dec 29 09:51 isi.txt
drwxr----x 2 ubuntu ubuntu 4096 Dec 29 09:52 kotak2
Perubahan juga bisa dilakukan dengan menggunakan huruf dengan aturan sebagai berikut.
u - user, pemilik file atau direktori.
g - group, user lain dalam satu group yang sama.
o - other, user selain pemilik dan di luar grup yang sama dengan owner.
a - all, seluruh user ekuivalen dengan ugo.
Operator
(+) Menambah hak akses
( - ) Membuang hak akses
(=) Equal
Berikutnya kita praktikkan, kita ubah file isi.txt dengan membuang hak akses eksekusi untuk user/owner.
ubuntu@ubuntu:~/kotak$ chmod u-x isi.txt
ubuntu@ubuntu:~/kotak$ ls -l isi.txt
-rw------- 1 ubuntu ubuntu 0 Dec 29 09:51 isi.txt
Sekarang untuk folder kita ubah hak akses group ke full akses rwx, dan user other hanya read.
ubuntu@ubuntu:~/kotak$ chmod -R g=rwx,o=r kotak2
ubuntu@ubuntu:~/kotak$ ls -l
total 4
-rw------- 1 ubuntu ubuntu 0 Dec 29 09:51 isi.txt
drwxrwxr-- 2 ubuntu ubuntu 4096 Dec 29 09:52 kotak2
Memahami Struktur Direktori Pada Linux OS
Sistem direktori pada Linux tersusun secara hirarki. Direktori teratas adalah direktori root (/). Dibawahnya terdapat subdirektori-subdirektori utama dengan fungsinya masing-masing. Subdirektori-subdirektori tersebut antara lain:ubuntu@ubuntu:~$ ls -l /
total 100
drwxr-xr-x 2 root root 4096 Dec 22 05:21 bin
drwxr-xr-x 4 root root 4096 Dec 24 18:12 boot
drwxr-xr-x 18 root root 4380 Dec 29 21:26 dev
drwxr-xr-x 150 root root 12288 Dec 29 21:16 etc
drwxr-xr-x 3 root root 4096 Dec 22 06:38 home
drwxr-xr-x 21 root root 4096 Dec 24 18:11 lib
drwxr-xr-x 2 root root 4096 Dec 29 21:16 media
drwxr-xr-x 2 root root 4096 Apr 19 2012 mnt
drwxr-xr-x 2 root root 4096 Aug 21 00:56 opt
dr-xr-xr-x 206 root root 0 Dec 30 2013 proc
drwx------ 9 root root 4096 Dec 27 10:09 root
drwxr-xr-x 2 root root 4096 Dec 24 18:11 sbin
drwxr-xr-x 2 root root 4096 Aug 21 00:56 srv
drwxrwxrwt 13 root root 4096 Dec 29 22:06 tmp
drwxr-xr-x 11 root root 4096 Dec 22 06:53 usr
drwxr-xr-x 14 root root 4096 Dec 29 10:20 var
Selanjutnya kita langsung saja membahas Struktur direktori pada GNU/Linux.
/ - Root
- Direktori ini membawahi seluruh direktori dan file.
- Secara default hanya user root yang bisa merubah isi pada direktori ini.
- Berisi file biner, pustaka, dokumentasi dan kode sumber program level kedua.
- /usr/bin berisi file biner untuk program user. Jika file biner tidak ditemukan pada folder /bin. Maka pada folder ini lah kita seharusnya mencarinya.
- /usr/sbin file biner atau program untuk seorang sistem administrator. Folder ini adalah rujukan kedua setelah file binary tidak ada pada folder /sbin.
- /usr/local berisi program user yang diinstall dari kode sumber atau source code.
- Berisi file binary/program yang bisa digunakan oleh seluruh user. Misal ls, ping, dsb.
- Berisi file biner hanya saja penggunaannya untuk admin sistem guna pemeliharaan.
- Contoh programnya ifconfig, iptables, dll.
- Berisi special files, yaitu file-file yang menangani hardware/perangkat keras.
- Berisi file-file konfigurasi dari seluruh program pada sistem operasi.
- Berisi informasi tentang proses sistem sperti RAM, CPU, dll.
- /proc/[PID], berisi proses dengan PID tertentu.
- Berisi file sistem log (/var/log), email (/var/mail), antrian print(/var/spool), file lock (/var/lock), paket file dan database (/var/lib). Merupakan direktori dikhususkan untuk data/file yang berubah secara terus menrus.
- Direktori penyimpanan pribadi untuk masing-masing user.
- Berisi file-file yang diperlukan untuk startup. Termasuk kernel Linux, RAM disk image dan file konfigurasi bootloader seperti GRUB dan LILO.
- Sebagai mount point, tetapi penggunaannya khusus untuk perangkat yang termount sementara seperti network file system.
- Mount point untuk perangkat penyimpanan elsternal, seperti flashdisk, dan CD.
- Bisa berisi direktori data dari suatu layanan/service seperti HTTP (/srv/www) atau FTP.
- Beriisi dynamic library yang sangat penting dan modul-modul kernel.
- Digunakan sebagai tempat aplikasi tambahan yang tidak didukung oleh repository, misal LAMPP, Adobe Reader, dsb.
- Tempat temporary file dari aplikasi yang ada.
- Direktori home untuk user root.
Bismillahirrahmanirrahim.
BalasHapusSaya senang jika ada tulisan yang diawali dengan basmalah. Dengan aplikasi apa akang membuat ilustrasi di atas? Apakah tidak dibuat versi PDF juga, Kang?
Saya menggunakan aplikasi DIA kang untuk membuat ilustrasinya :-). Apa tidak terlalu singkat ya Kang Ade kalau misalnya saya buat versi PDF?
BalasHapus