Linux menyimpan segalanya dalam satu pohon direktori yang berakar pada /, dan setiap lokasi punya peran yang disepakati lewat Filesystem Hierarchy Standard. Halaman ini adalah peta rujukan cepatnya: tabel hierarki FHS lengkap dengan isi dan contoh nyata, tabel jenis filesystem yang umum dijumpai, serta tabel perintah yang dipakai sehari-hari untuk memeriksa keduanya. Carilah lokasinya dulu di tabel, baru baca chapter Filesystem Hierarchy Standard
atau Struktur Filesystem Linux
saat butuh penjelasan mengapa desainnya demikian.
Hierarki Direktori FHS #
Tabel berikut merangkum direktori tingkat pertama yang dijamin FHS beserta dua pertanyaan praktis: isinya apa, dan bolehkah kita menghapusnya? Kolom terakhir penting saat membereskan disk — jawaban “tidak” berarti sistem atau service akan rusak bila isinya hilang.
| Direktori | Isi | Contoh nyata | Boleh dihapus? |
|---|---|---|---|
/ | Akar pohon direktori tunggal | seluruh sistem berada di bawahnya | tidak — akar tidak bisa dihapus |
/bin | Perintah dasar user; kini symlink ke /usr/bin di banyak distro | /bin/ls, /bin/cat | tidak |
/boot | Kernel, initramfs, dan berkas bootloader | vmlinuz-*, initrd.img-*, grub/ | tidak — sistem tidak akan boot |
/dev | Berkas perangkat yang dibuat kernel | /dev/sda, /dev/null, /dev/tty | tidak — isinya digenerate ulang tiap boot |
/etc | Konfigurasi sistem seluruhnya (teks biasa) | /etc/passwd, /etc/fstab, /etc/ssh/ | jangan asal hapus — cadangkan dulu |
/home | Direktori home setiap user biasa | /home/budi/.bashrc, /home/siti/dokumen/ | hanya milik user terkait |
/lib | Pustaka bersama dan modul kernel; kini symlink ke /usr/lib | libc.so.6, modules/ | tidak |
/media | Titik mount media lepas-pasang (USB, DVD) | /media/budi/USB | aman — isinya hanya titik mount |
/mnt | Titik mount sementara buatan admin | /mnt/backup | aman — sesuai kebutuhan admin |
/opt | Perangkat lunak tambahan pihak ketiga | /opt/app-x/ | boleh bila paketnya memang tidak dipakai |
/proc | Filesystem virtual berisi info proses dan kernel | /proc/cpuinfo, /proc/mounts | tidak — isinya bukan berkas asli |
/root | Home directory milik user root | /root/.bashrc | tidak |
/run | Data runtime sejak boot (tmpfs) | /run/systemd/, berkas PID | tidak — dikosongkan otomatis tiap boot |
/sbin | Perintah administrasi; kini symlink ke /usr/sbin | /sbin/fdisk, /sbin/mkfs.ext4 | tidak |
/srv | Data yang dilayankan keluar oleh sistem ini | /srv/www/, /srv/ftp/ | sesuai kebijakan service-nya |
/sys | Filesystem virtual perangkat dan kernel | /sys/class/net/ | tidak — isinya bukan berkas asli |
/tmp | File sementara milik semua user | /tmp/build-4242/ | boleh — sering dikosongkan otomatis saat boot |
/usr | Program, pustaka, dan dokumentasi dari package manager | /usr/bin/curl, /usr/share/doc/ | tidak — isi paket berada di sini |
/var | Data yang berubah selama sistem beroperasi | /var/log/, /var/lib/, /var/www/ | log lama boleh dibersihkan, /var/lib jangan |
Pola yang membantu menghafal tabel di atas: konfigurasi yang kita sunting ada di /etc, data yang berubah sendiri ada di /var, software dari package manager ada di /usr, dan milik pribadi kita ada di /home. Sisanya — /boot, /dev, /proc, /sys, /run — dikelola oleh sistem dan sebaiknya hanya kita baca; ringkasan singkat tiap direktori juga tersedia di halaman manual hier(7)
. Chapter Mount Configuration
membahas bagaimana filesystem eksternal ditambatkan ke titik-titik ini.
Jenis Filesystem yang Umum #
Perintah lsblk -f menampilkan jenis filesystem tiap partisi, dan nama-nama di tabel inilah yang akan kita temui. Pertimbangan memilih jenisnya dibahas di chapter Filesystems dan Formatting
:
| Filesystem | Ciri utama | Kegunaan umum |
|---|---|---|
ext4 | Jurnaling matang, stabil, bisa tumbuh saat dipasang | Default Debian dan Ubuntu; partisi root serta data umum |
xfs | Jurnaling, andal untuk berkas besar, tidak bisa menyusut | Server data dan penyimpanan besar |
btrfs | Copy-on-write, snapshot bawaan, kompresi transparan | Data yang butuh titik pulih cepat (lihat Filesystem Snapshots ) |
vfat (FAT32) | Tanpa permission dan jurnaling; dibaca hampir semua OS | Partisi EFI dan USB untuk tukar data lintas sistem |
ntfs | Filesystem milik Windows | Partisi data Windows yang perlu dibaca dari Linux |
swap | Bukan penyimpanan berkas, melainkan cadangan RAM | Ditulis kernel saat memori menipis (Swap Space ) |
Aturan praktisnya sederhana: bila tidak ada alasan khusus, ext4 untuk disk internal Linux; vfat untuk partisi EFI dan media tukar lintas sistem operasi; sisanya dipilih karena kebutuhan khusus (snapshot, ukuran raksasa, kompatibilitas Windows).
Perintah Filesystem yang Sering Dipakai #
| Perintah | Fungsi | Contoh singkat | Materi |
|---|---|---|---|
mount | Memasang filesystem ke sebuah mount point | sudo mount /dev/sdb1 /mnt/usb | Mount Configuration |
umount | Melepas filesystem dengan aman | sudo umount /mnt/usb | Mount Configuration |
df | Ruang terpakai per filesystem | df -h | Disk Monitoring |
du | Ukuran total sebuah direktori | du -sh /var/log | Disk Monitoring |
lsblk | Peta disk, partisi, dan mount point-nya | lsblk -f | Disk Partitioning Tools |
findmnt | Tabel mount versi mudah dibaca | findmnt /mnt/usb | Mount Configuration |
stat | Metadata lengkap satu berkas | stat -c '%n %s' laporan.txt | umask |
ln | Membuat hard link atau symlink | ln -s /opt/app/app.sh app | Symbolic Links dan Hard Links |
tar | Membuat dan mengekstrak arsip | tar -czf backup.tar.gz proyek/ | tar dan Compression |
file | Mengenali jenis isi berkas | file laporan.txt | File Types dan File Extensions |
Memeriksa Berkas dengan stat dan du #
Dua perintah dari tabel di atas paling sering dipakai berpasangan saat membereskan disk: stat membongkar metadata satu berkas, sedangkan du menjumlahkan blok-blok yang benar-benar dipakai di disk. Kita coba keduanya pada fixture kecil:
printf 'Laporan penjualan kuartal pertama.\nTotal: 1.250 unit.\n' > laporan.txt
stat -c '%n %s %F' laporan.txt
du -h laporan.txt
mkdir -p arsip
cp laporan.txt arsip/
du -sh arsipOutput yang Dihasilkan:
laporan.txt 54 regular file
4.0K laporan.txt
8.0K arsipMari kita bedah baris per barisnya:
- Baris 1 (
printf ... > laporan.txt): membuat berkas uji dua baris sebagai bahan pemeriksaan — blok ini mandiri dan bisa diulang. - Baris 2 (
stat -c '%n %s %F' laporan.txt): mencetak nama (laporan.txt), ukuran dalam byte (54), dan jenis berkasnya (regular file) — tiga fakta yang olehls -lharus dihitung dari beberapa kolom sekaligus. - Baris 3 (
du -h laporan.txt): menampilkan4.0Kkarenadumenghitung blok alokasi minimal di disk, bukan ukuran byte; berkas 54 byte tetap memakan satu blok penuh. - Baris 4-6 (
mkdir+cp+du -sh arsip): menyalin berkas ke folderarsiplalu mengukur totalnya — hasil8.0Kadalah penjumlahan blok direktori (4.0K) dan blok salinan berkas (4.0K). Bandingkan dengan df yang melihat ruang per filesystem, bukan per folder.
Pola du -sh per direktori adalah cara cepat menemukan folder paling rakus di /var atau /home, sedangkan stat -c adalah cara paling presisi membaca satu berkas tanpa format berat. Setelah peta lokasi dan ruang disk beres, rujukan berikutnya menyangkut penghuni tetap filesystem itu: service dan journal yang dikelola systemd, semuanya dirangkum di Referensi systemd
.