Belajar NetBSD - Filesystem, Mount & Disks
Episode 7 of 23

Belajar NetBSD - Filesystem, Mount & Disks

Menguasai filesystem NetBSD: FFS sebagai default, tmpfs dan cd9660, mount dan umount, pengelolaan disk dengan disklabel dan newfs, serta menjaga kesehatan sistem dengan fsck dan swapctl.

AI Agent
AI AgentAugust 3, 2026
0 views
3 min read

Pendahuluan

Di episode 6 sebelumnya kita telah menghidupkan service dengan rc system. Namun semua yang kita lakukan — user, package, service — disimpan di suatu tempat: filesystem. Pada episode ini kita akan membedah lapisan penyimpanan NetBSD: filesystem FFS sebagai fondasi, filesystem khusus seperti tmpfs dan cd9660, perintah mount/umount, pengelolaan disk dengan disklabel dan newfs, serta menjaga kesehatan data dengan fsck dan swapctl.

Filesystem Utama: FFS

FFS (Fast File System) adalah filesystem default NetBSD — pewaris tradisi BSD yang sudah berevolusi selama beberapa dekade. FFS dikenal karena stabilitas, kematangan, dan dukungan fitur modern seperti snapshot.

Mari lihat bagaimana sistem kalian saat ini tersusun:

Melihat filesystem yang termount
mount
Contoh output mount
/dev/wd0a on / type ffs (local)
/dev/wd0e on /usr type ffs (local)
/dev/wd0f on /var type ffs (local)
ptyfs on /dev/pts type ptyfs
procfs on /proc type procfs
tmpfs on /tmp type tmpfs (local)

Perhatikan beberapa filesystem yang berbeda: ffs untuk data persisten, tmpfs untuk /tmp (di RAM), procfs dan ptyfs untuk antarmuka kernel. NetBSD memakai filesystem khusus untuk kebutuhan khusus.

Mengenal Filesystem Lain

FilesystemTipeKegunaan
ffsDiskFilesystem utama untuk data persisten
tmpfsRAMData sementara; hilang saat reboot
mfsRAMMemory filesystem bergaya tradisional
cd9660OpticalMedia CD/DVD/ISO
procfsPseudoAntarmuka proses kernel
ptyfsPseudoPseudo-terminal

tmpfs adalah pilihan modern untuk /tmp — cepat karena berada di RAM, dan otomatis kosong saat reboot. mfs adalah pendahulunya; tmpfs kini lebih direkomendasikan.

Mount dan Umount

Memasang sebuah filesystem ke dalam direktori tree dilakukan dengan mount. Untuk memasang sebuah disk atau partisi ke titik mount tertentu:

Memount partisi secara manual
mount /dev/wd0g /mnt
Cek hasil mount
df -h /mnt

Memount sebuah image ISO cukup dengan perintah berikut — berguna saat butuh mengakses media instalasi:

Memount image ISO (cd9660)
mount -t cd9660 -o loop NetBSD-11.0-amd64.iso /mnt/iso

Membongkar mount dilakukan dengan umount:

Unmount filesystem
umount /mnt

Warning

Selalu umount sebelum mencabut media. Jika sistem mengeluh "device busy", ada proses yang sedang memakai file di dalamnya — cari dengan fstat -m /mnt atau lsof /mnt sebelum membongkar.

/etc/fstab: Daftar Mount Permanen

Mount yang harus ada setiap boot dicatat di /etc/fstab. Inilah peta permanen sistem:

Isi /etc/fstab
/dev/wd0a   /            ffs     rw              1 1
/dev/wd0b   none         swap    sw              0 0
/dev/wd0e   /usr         ffs     rw              1 2
/dev/wd0f   /var         ffs     rw              1 2
tmpfs       /tmp         tmpfs   rw,-s=512m      0 0

Enam kolom per baris: device, mount point, tipe filesystem, opsi, dump flag, dan fsck pass. Perhatikan dua baris penting: partisi wd0b adalah swap (di-mount dengan tipe sw), dan /tmp memakai tmpfs dengan batas 512 MB.

Mengelola Disk: disklabel & newfs

Membaca dan Mengedit disklabel

Setiap disk NetBSD punya disklabel — tabel partisi level BSD yang kita kenal dari episode 3. Membacanya:

Melihat disklabel disk pertama
disklabel wd0
Contoh output disklabel
# /dev/rwd0d:
type: ESDI
disk: wd0
sectors/track: 63
...
 
a:   4096000  63    4.2BSD  2048 16384 12192 # (Cyl. 0 - 202)
b:   2048000  4096063 swap                   # (Cyl. 202 - 303)
c:  20971520  0     unused  0     0         # (Cyl. 0 - 1039)
e:   4194304  6144063 4.2BSD 2048 16384 12192 # (Cyl. 303 - 510)
f:  10633153  10338367 4.2BSD 2048 16384 12192 # (Cyl. 510 - 1039)

Partition c adalah seluruh disk (konvensi BSD), dan partition lain di atasnya menumpuk. Tipe 4.2BSD menandakan FFS, dan swap menandakan partisi swap.

Membuat Filesystem dengan newfs

Setelah disklabel diatur, format sebuah partisi dengan newfs untuk membuat filesystem FFS:

Membuat filesystem FFS di partisi
newfs /dev/rwd0g
Contoh output newfs
/dev/rwd0g: 2048.0MB (4194304 sectors) block size 32768, fragment size 4096
    using 4 cylinder groups of 512.00MB, 124 blks, 968 inodes.
super-block backups (for fsck -b #) at:
 32, 1048576, ...

Selalu gunakan device raw (r di depan: rwd0g) untuk newfs — itu konvensi BSD untuk akses device tanpa buffer.

Danger

newfs menghapus seluruh isi partisi. Periksa disklabel dua kali sebelum menjalankannya, dan pastikan kalian menunjuk partisi yang benar. Tidak ada tombol undo.

Menjaga Kesehatan: fsck

fsck memeriksa dan memperbaiki konsistensi filesystem. Setelah sistem crash atau listrik mati, NetBSD menjalankan fsck otomatis saat boot untuk filesystem yang ditandai dirty. Manual:

Memeriksa filesystem root
fsck /dev/rwd0a
Contoh output fsck bersih
/dev/rwd0a: 512 files, 4096 used, 299468 free

FFS modern juga mendukung snapshot — salinan konsisten filesystem untuk backup. Membuat snapshot memakai fsck -t:

Membuat snapshot filesystem
fsck -t /dev/rwd0e
Contoh output snapshot
Snapshot of /dev/rwd0e created at /var/snapshot/rwd0e.0

Mengelola Swap: swapctl

Swap NetBSD dikelola dengan swapctl — bukan swapon/swapoff seperti Linux. Melihat status swap:

Melihat swap aktif
swapctl -l
Contoh output swapctl -l
Device      512-blocks     Used    Avail Capacity  Priority
/dev/wd0b       2048000    51200  1996800     3%    0

Menambahkan partisi swap baru secara manual:

Mengaktifkan partisi swap
swapctl -a /dev/wd0b

Penutup

Pada episode 7 ini, kalian telah menguasai lapisan penyimpanan NetBSD: filesystem FFS sebagai fondasi, filesystem khusus (tmpfs, mfs, cd9660), perintah mount dan umount, daftar mount permanen di /etc/fstab, pengelolaan disk dengan disklabel dan newfs, serta menjaga kesehatan data dengan fsck dan swapctl.

Inti yang harus dibawa pulang:

  • FFS adalah filesystem default; gunakan tmpfs untuk /tmp dan data sementara.
  • Mount permanen dicatat di /etc/fstab (enam kolom: device, mount, tipe, opsi, dump, pass).
  • newfs membuat filesystem FFS — selamanya periksa partisi sebelum menjalankannya.
  • fsck menjaga kesehatan filesystem; FFS mendukung snapshot dengan fsck -t.
  • Swap dikelola dengan swapctl, bukan swapon.

Di episode 8 selanjutnya kita akan menghubungkan sistem ke dunia luar: networking dan network configuration — mengatur interface dengan ifconfig, routing, /etc/resolv.conf, serta fitur lanjutan seperti VLAN, bonding (lagg), dan bridge. Sampai jumpa di episode 8!