Filosofi Sistem Berkas Linux: “Everything is a File”
Bagi kamu yang terbiasa dengan sistem operasi Windows, penyimpanan dibagi berdasarkan partisi huruf drive independen, seperti C:\, D:\, atau E:\. Setiap flashdisk atau harddisk eksternal yang dicolokkan akan mendapatkan huruf drive baru.
Di Linux, konsepnya sangat berbeda:
- Tidak Ada Huruf Drive (
C:\ / D:\): Seluruh penyimpanan sistem berkas Linux berbentuk Satu Pohon Tunggal (Single Inverted Tree) yang berakar dari satu titik awal bernama Root Directory (/).
- “Everything is a File”: Di Linux, hampir semua hal dianggap dan direpresentasikan sebagai sebuah berkas — dokumen teks, folder, proses CPU yang sedang berjalan, harddisk, kartu jaringan, bahkan webcam dan mouse!
- Standar FHS (Filesystem Hierarchy Standard): Semua distribusi Linux (Ubuntu, Debian, Red Hat, Arch) mengikuti aturan standar FHS yang menentukan letak spesifik di mana jenis file tertentu harus disimpan.
Pohon Struktur Direktori Linux
Penjelasan Mendalam Setiap Direktori
Berikut bedah tuntas fungsi masing-masing direktori, isi berkas di dalamnya, dan kapan kamu sebagai SysAdmin/DevOps harus menggunakannya:
1. / (Root Directory)
- Fungsi: Titik pangkal atau akar dari seluruh sistem hierarki berkas Linux. Tidak ada folder yang posisinya berada “di atas”
/.
- Kapan Digunakan: Hanya digunakan sebagai acuan path absolut (misal
/etc/hosts). Jangan pernah menaruh file sembarangan langsung di / agar sistem tetap rapi.
2. /etc (Editable Text Configuration)
- Fungsi: Rumah bagi seluruh berkas konfigurasi sistem dan layanan. Hampir semua berkas di sini berupa teks biasa (plain text) yang bisa kamu edit menggunakan editor seperti
nano atau vim.
- Contoh Berkas Penting:
/etc/passwd: Daftar akun pengguna sistem.
/etc/fstab: Tabel partisi harddisk yang otomatis dimount saat boot.
/etc/hosts: Pemetaan domain lokal ke IP address.
/etc/ssh/sshd_config: Konfigurasi keamanan remote server SSH.
/etc/nginx/: Konfigurasi virtual host web server Nginx.
/etc/network/interfaces atau /etc/netplan/: Konfigurasi kartu jaringan.
- Kapan Digunakan: Setiap kali kamu ingin mengubah setting server, memodifikasi port SSH, mengatur static IP, atau menambah domain website.
3. /var (Variable Data)
- Fungsi: Menyimpan data dinamis yang ukurannya terus berubah dan bertambah saat sistem atau aplikasi sedang berjalan.
- Sub-Direktori Penting:
/var/log/: Tempat seluruh log sistem dan aplikasi tersimpan (syslog, auth.log, nginx/access.log).
/var/www/html/: Direktori default penyimpanan file website HTML/PHP untuk Apache atau Nginx.
/var/lib/: Basis data state aplikasi (misal /var/lib/mysql untuk database MySQL atau /var/lib/docker untuk kontainer Docker).
/var/spool/: Antrean proses cetak dokumen atau antrean pengiriman email (mail spool).
- Kapan Digunakan: Saat menganalisis error aplikasi lewat log, menaruh kode web production, atau saat memeriksa partisi mana yang menyebabkan harddisk server penuh (karena log yang membesar).
4. /home vs /root (User Directories)
/home/<username>:
- Folder pribadi milik pengguna biasa (non-root). Setiap user memiliki subfolder tersendiri (misal
/home/budi, /home/yanto).
- Menyimpan file pribadi, dokumen, desktop, serta berkas konfigurasi profil user (dotfiles seperti
~/.bashrc, ~/.ssh/id_rsa).
- User lain dilarang membaca atau mengedit isi folder home milik orang lain kecuali diberi izin.
/root:
- Home directory khusus untuk akun superuser administrator utama (root).
- Letaknya sengaja dipisahkan langsung di partisi
/ (bukan di /home/root) agar root tetap bisa login untuk memperbaiki sistem meskipun partisi /home mengalami kerusakan harddisk.
- Kapan Digunakan: Saat kamu login sebagai user biasa, kamu akan selalu otomatis berada di
/home/username.
5. /bin, /sbin, dan /usr/bin (Executables / Binaries)
/bin (User Binaries): Berisi program biner dan perintah dasar yang dibutuhkan oleh semua user, terutama saat sistem dalam mode darurat (single-user mode). Contoh: ls, cp, mv, rm, cat, bash.
/sbin (System Binaries): Berisi perintah administrasi yang hanya boleh dijalankan oleh root/administrator untuk pemeliharaan sistem. Contoh: fdisk, reboot, iptables, ip, shutdown.
/usr/bin & /usr/sbin: Berisi aplikasi pengguna yang diinstal lewat package manager (seperti curl, git, python3, htop, nginx).
(Pada distro modern seperti Ubuntu/Debian baru, /bin dan /sbin sebenarnya adalah symlink yang mengarah ke /usr/bin dan /usr/sbin).
6. /opt vs /usr/local (Aplikasi Tambahan & Pihak Ketiga)
Kedua folder ini sering membingungkan pemula:
7. /dev (Device Nodes)
- Fungsi: Bukan berisi file biasa, melainkan antarmuka file representasi perangkat keras fisik.
- Contoh Penting:
/dev/sda, /dev/nvme0n1: Piringan harddisk fisik SATA atau NVMe SSD.
/dev/sda1: Partisi nomor 1 pada harddisk pertama.
/dev/null: “Black Hole” digital. Data apa pun yang kamu alihkan ke sini akan lenyap seketika tanpa memakan memori.
/dev/urandom: Generator angka acak kriptografis yang sangat aman.
- Kapan Digunakan: Saat kamu ingin mempartisi harddisk baru (
fdisk /dev/sdb), memformat partisi (mkfs.ext4 /dev/sdb1), atau membuang pesan error (2>/dev/null).
8. /proc & /sys (Virtual Kernel Filesystems)
- Fungsi: Folder “gaib” yang sebenarnya tidak ada di dalam harddisk, melainkan dibuat secara dinamis oleh kernel Linux langsung di dalam RAM (Memori).
- Isi:
/proc: Berisi jendela informasi status kernel dan proses CPU yang sedang berjalan saat ini. Setiap proses memiliki folder angka sesuai PID-nya (misal /proc/1234/).
/proc/cpuinfo: Rincian spesifikasi prosesor CPU.
/proc/meminfo: Rincian kapasitas RAM real-time.
/sys: Berisi informasi driver perangkat keras terstruktur (PCI, USB, kartu grafis).
- Kapan Digunakan: Saat kamu ingin mengintip statistik performa prosesor atau mengubah parameter kernel secara dinamis (
sysctl).
/media (Automount): Tempat sistem operasi memasang (mount) media penyimpanan eksternal yang dapat dilepas secara otomatis saat dicolokkan (misal flashdisk USB, CD-ROM, atau kartu SD).
/mnt (Manual Mount): Tempat kosong standar yang disediakan bagi administrator sistem untuk memasang sistem berkas sementara secara manual (misal kamu memasang partisi harddisk kedua: mount /dev/sdb1 /mnt/data).
10. /tmp (Temporary Files)
- Fungsi: Tempat aplikasi menyimpan berkas kerja sementara (seperti cache sesi, lock file instalasi, atau socket koneksi).
- Karakteristik: Berkas di
/tmp akan otomatis dihapus bersih oleh sistem saat server di-reboot atau jika file sudah berumur beberapa hari. Jangan pernah menyimpan dokumen penting di folder ini!
Rangkuman Cepat: Di Mana Saya Harus Meletakkan File?
Last modified on October 26, 2026