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.

DirektoriIsiContoh nyataBoleh dihapus?
/Akar pohon direktori tunggalseluruh sistem berada di bawahnyatidak — akar tidak bisa dihapus
/binPerintah dasar user; kini symlink ke /usr/bin di banyak distro/bin/ls, /bin/cattidak
/bootKernel, initramfs, dan berkas bootloadervmlinuz-*, initrd.img-*, grub/tidak — sistem tidak akan boot
/devBerkas perangkat yang dibuat kernel/dev/sda, /dev/null, /dev/ttytidak — isinya digenerate ulang tiap boot
/etcKonfigurasi sistem seluruhnya (teks biasa)/etc/passwd, /etc/fstab, /etc/ssh/jangan asal hapus — cadangkan dulu
/homeDirektori home setiap user biasa/home/budi/.bashrc, /home/siti/dokumen/hanya milik user terkait
/libPustaka bersama dan modul kernel; kini symlink ke /usr/liblibc.so.6, modules/tidak
/mediaTitik mount media lepas-pasang (USB, DVD)/media/budi/USBaman — isinya hanya titik mount
/mntTitik mount sementara buatan admin/mnt/backupaman — sesuai kebutuhan admin
/optPerangkat lunak tambahan pihak ketiga/opt/app-x/boleh bila paketnya memang tidak dipakai
/procFilesystem virtual berisi info proses dan kernel/proc/cpuinfo, /proc/mountstidak — isinya bukan berkas asli
/rootHome directory milik user root/root/.bashrctidak
/runData runtime sejak boot (tmpfs)/run/systemd/, berkas PIDtidak — dikosongkan otomatis tiap boot
/sbinPerintah administrasi; kini symlink ke /usr/sbin/sbin/fdisk, /sbin/mkfs.ext4tidak
/srvData yang dilayankan keluar oleh sistem ini/srv/www/, /srv/ftp/sesuai kebijakan service-nya
/sysFilesystem virtual perangkat dan kernel/sys/class/net/tidak — isinya bukan berkas asli
/tmpFile sementara milik semua user/tmp/build-4242/boleh — sering dikosongkan otomatis saat boot
/usrProgram, pustaka, dan dokumentasi dari package manager/usr/bin/curl, /usr/share/doc/tidak — isi paket berada di sini
/varData 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 :

FilesystemCiri utamaKegunaan umum
ext4Jurnaling matang, stabil, bisa tumbuh saat dipasangDefault Debian dan Ubuntu; partisi root serta data umum
xfsJurnaling, andal untuk berkas besar, tidak bisa menyusutServer data dan penyimpanan besar
btrfsCopy-on-write, snapshot bawaan, kompresi transparanData yang butuh titik pulih cepat (lihat Filesystem Snapshots )
vfat (FAT32)Tanpa permission dan jurnaling; dibaca hampir semua OSPartisi EFI dan USB untuk tukar data lintas sistem
ntfsFilesystem milik WindowsPartisi data Windows yang perlu dibaca dari Linux
swapBukan penyimpanan berkas, melainkan cadangan RAMDitulis 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 #

PerintahFungsiContoh singkatMateri
mountMemasang filesystem ke sebuah mount pointsudo mount /dev/sdb1 /mnt/usbMount Configuration
umountMelepas filesystem dengan amansudo umount /mnt/usbMount Configuration
dfRuang terpakai per filesystemdf -hDisk Monitoring
duUkuran total sebuah direktoridu -sh /var/logDisk Monitoring
lsblkPeta disk, partisi, dan mount point-nyalsblk -fDisk Partitioning Tools
findmntTabel mount versi mudah dibacafindmnt /mnt/usbMount Configuration
statMetadata lengkap satu berkasstat -c '%n %s' laporan.txtumask
lnMembuat hard link atau symlinkln -s /opt/app/app.sh appSymbolic Links dan Hard Links
tarMembuat dan mengekstrak arsiptar -czf backup.tar.gz proyek/tar dan Compression
fileMengenali jenis isi berkasfile laporan.txtFile 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:

bash
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 arsip

Output yang Dihasilkan:

text
laporan.txt 54 regular file
4.0K	laporan.txt
8.0K	arsip

Mari kita bedah baris per barisnya:

  1. Baris 1 (printf ... > laporan.txt): membuat berkas uji dua baris sebagai bahan pemeriksaan — blok ini mandiri dan bisa diulang.
  2. 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 oleh ls -l harus dihitung dari beberapa kolom sekaligus.
  3. Baris 3 (du -h laporan.txt): menampilkan 4.0K karena du menghitung blok alokasi minimal di disk, bukan ukuran byte; berkas 54 byte tetap memakan satu blok penuh.
  4. Baris 4-6 (mkdir + cp + du -sh arsip): menyalin berkas ke folder arsip lalu mengukur totalnya — hasil 8.0K adalah 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 .