ABDURROZAK.MY.ID // DEBIAN LINUX SERVER FUNDAMENTAL
FILE SYSTEM &STORAGE MANAGEMENT
Volume 04 dari seri Debian Linux Server Fundamental. Panduan komprehensif memahami file system Linux, partisi disk, mount/unmount, swap management, dan monitoring storage. Setiap command dijelaskan detail dengan syntax, parameter, contoh penggunaan, dan output. Dari struktur direktori FHS hingga troubleshooting storage.
VOLUME04 / 17
SUB-BAB8
BACA90 MENIT
STORAGE100%
ABDUR ROZAK, S.Kom.
Web Developer & System Administrator - abdurrozak.my.id
VOLUME 04 / 17
FILE SYSTEM & STORAGE MANAGEMENT
Panduan lengkap file system dan storage management di Debian Linux. 8 sub-bab mencakup struktur direktori FHS, jenis file system (ext4, xfs, btrfs), partisi disk dengan fdisk/parted, format dan create file system, mount/unmount, konfigurasi fstab, swap management, hingga monitoring storage dengan df/du/lsblk. Setiap command disertai penjelasan detail.
SUB-BAB8LEVELStorageWAKTU90 MENIT
01
SUB-BAB 01 FHS
STRUKTUR DIREKTORI LINUX (FHS)
Filesystem Hierarchy Standard (FHS)
FHS (Filesystem Hierarchy Standard) adalah standar struktur direktori di Linux. Semua distribusi Linux mengikuti standar ini agar konsisten. Memahami FHS penting untuk administrasi sistem yang efektif.
root directory structure
/
├── bin→ Essential user binaries (commands)
├── boot→ Boot loader files (kernel, initrd)
├── dev→ Device files (hardware devices)
├── etc→ Configuration files
├── home→ User home directories
├── lib→ Essential shared libraries
├── media→ Mount point for removable media
├── mnt→ Temporary mount point
├── opt→ Optional software packages
├── proc→ Virtual filesystem (process info)
├── root→ Home directory for root user
├── run→ Runtime variable data
├── sbin→ Essential system binaries
├── srv→ Service data
├── sys→ Virtual filesystem (hardware info)
├── tmp→ Temporary files
├── usr→ User programs and data
└── var→ Variable data (logs, spool, etc)
Direktori Penting
/etc
Configuration files untuk sistem dan aplikasi. Contoh: /etc/passwd, /etc/fstab, /etc/nginx/nginx.conf
/var
Variable data yang berubah-ubah. Logs (/var/log), spool (/var/spool), cache (/var/cache)
/home
Home directory untuk user biasa. Setiap user punya /home/username
/usr
User programs dan data. /usr/bin (binaries), /usr/lib (libraries), /usr/share (data)
/tmp
Temporary files. Biasanya di-clear saat reboot. Bisa di-mount sebagai tmpfs (RAM)
/var/log
Log files. syslog, auth.log, nginx/access.log, dll. Penting untuk troubleshooting
Direktori Lainnya
DIREKTORI
FUNGSI
CONTOH ISI
/bin
Essential user binaries
ls, cp, mv, bash
/sbin
Essential system binaries
fdisk, iptables, reboot
/boot
Boot loader files
vmlinuz, initrd, grub
/dev
Device files
sda, tty, null, zero
/lib
Essential shared libraries
libc.so, ld-linux.so
/media
Mount point removable media
USB, CD-ROM auto-mount
/mnt
Temporary mount point
Manual mount
/opt
Optional software
Third-party apps
/proc
Virtual filesystem (process)
cpuinfo, meminfo
/root
Home directory root
Root user files
/run
Runtime variable data
PID files, sockets
/srv
Service data
FTP, WWW data
/sys
Virtual filesystem (hardware)
Hardware info
TIPS: Untuk melihat isi direktori, gunakan ls -la /etc, ls -la /var/log, dll. Untuk melihat ukuran, gunakan du -sh /var/log/*.
KOMPETENSI SUB-BAB 01
Memahami struktur direktori FHS
Mengetahui fungsi setiap direktori penting
Mampu navigasi dan eksplorasi struktur direktori
02
SUB-BAB 02 FILESYSTEM
FILE SYSTEM TYPES
Jenis File System Linux
File system adalah metode organisasi dan penyimpanan data di storage. Linux mendukung banyak jenis file system, masing-masing dengan kelebihan dan use case berbeda.
FILE SYSTEM
KELEBIHAN
KEKURANGAN
USE CASE
ext4
Stabil, mature, kompatibel, journaling
Tidak ada snapshot, limit 16TB
General purpose (DEFAULT)
xfs
Performa tinggi, scalable, journaling
Tidak bisa shrink
Large files, server
btrfs
Snapshot, checksum, RAID, compression
Masih berkembang, overhead
Advanced features
swap
Virtual memory
-
RAM overflow
vfat/fat32
Kompatibel semua OS
Max file 4GB, no journaling
USB, compatibility
ntfs
Windows compatible
Linux read/write terbatas
Dual boot Windows
ext4 - Default Linux
KELEBIHAN
Stabil, backward compatible, journaling, max 16TB file, 1EB filesystem
KEKURANGAN
Tidak ada snapshot, tidak ada compression native, limit ukuran file
xfs - High Performance
KELEBIHAN
Performa tinggi untuk large files, parallel I/O, scalable, journaling
KEKURANGAN
Tidak bisa shrink (hanya grow), overhead untuk small files
Masih berkembang, overhead CPU/memory, belum production-ready untuk semua
REKOMENDASI: Untuk server production, gunakan ext4 (stabil) atau xfs (performa tinggi). Untuk desktop/advanced user, btrfs menarik dengan fitur snapshot-nya.
KOMPETENSI SUB-BAB 02
Membedakan jenis file system Linux
Memahami kelebihan dan kekurangan setiap file system
Menentukan file system yang tepat untuk use case tertentu
03
SUB-BAB 03 PARTITION
PARTISI DISK
Konsep Partisi
Partisi adalah pembagian disk menjadi beberapa bagian logis. Setiap partisi bisa diformat dengan file system berbeda dan digunakan untuk tujuan berbeda (/, /home, /var, swap, dll).
Lihat Partisi yang Ada
lsblk
List block devices (disk & partisi)
lsblk [options]
bash
admin@web-server:~$ lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsda 8:0 0 50G 0 disk├─sda1 8:1 0 512M 0 part /boot/efi├─sda2 8:2 0 48.5G 0 part /└─sda3 8:3 0 1G 0 part [SWAP]sr0 11:0 1 1024M 0 rom
admin@web-server:~$ sudo fdisk /dev/sdbWelcome to fdisk (util-linux 2.38.1).Changes will remain in memory only, until you decide to write them.Command (m for help):nPartition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions)Select (default p):pPartition number (1-4, default 1):1First sector (2048-104857599, default 2048):[Enter]Last sector, +sectors or +size{K,M,G,T,P}:+20GCommand (m for help):tPartition type (type L to list all types):83Changed type of partition 'Linux'.Command (m for help):wThe partition table has been altered.Calling ioctl() to re-read partition table.Syncing disks.
Mount adalah proses mengaitkan file system ke directory tertentu di tree Linux. Setelah di-mount, isi file system bisa diakses melalui mount point tersebut.
Mount Manual
mount
Mount file system
sudo mount/dev/sdXN/mount/point
bash
# Buat mount pointadmin@web-server:~$ sudo mkdir -p /mnt/data# Mount partisiadmin@web-server:~$ sudo mount /dev/sdb1 /mnt/data# Mount dengan optionadmin@web-server:~$ sudo mount -o rw,noexec /dev/sdb1 /mnt/data# Mount USB driveadmin@web-server:~$ sudo mount /dev/sdc1 /media/usb# Lihat semua mountadmin@web-server:~$ mountsysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)/dev/sda2 on / type ext4 (rw,relatime,errors=remount-ro)/dev/sdb1 on /mnt/data type ext4 (rw,relatime)# Lihat mount dengan detailadmin@web-server:~$ findmntTARGET SOURCE FSTYPE OPTIONS/ /dev/sda2 ext4 rw,relatime,errors=remount-ro├─/mnt/data /dev/sdb1 ext4 rw,relatime
OPTION
FUNGSI
-t type
Specify file system type
-o options
Mount options (ro, rw, noexec, nosuid, etc)
-a
Mount all dari /etc/fstab
-r atau --read-only
Mount read-only
Unmount
umount
Unmount file system
sudo umount/mount/point|/dev/sdXN
bash
# Unmount by mount pointadmin@web-server:~$ sudo umount /mnt/data# Unmount by deviceadmin@web-server:~$ sudo umount /dev/sdb1# Force unmount (jika busy)admin@web-server:~$ sudo umount -f /mnt/data# Lazy unmount (detach sekarang, cleanup nanti)admin@web-server:~$ sudo umount -l /mnt/data
PERINGATAN: Jangan unmount file system yang sedang digunakan! Pastikan tidak ada process yang mengakses mount point tersebut.
KOMPETENSI SUB-BAB 05
Memahami konsep mount dan mount point
Mampu mount dan unmount file system
Mampu gunakan mount options
06
SUB-BAB 06 FSTAB
FSTAB CONFIGURATION
File /etc/fstab
/etc/fstab (file system table) adalah file konfigurasi yang mendefinisikan file system yang harus di-mount otomatis saat boot.
# Backup fstab dulu!admin@web-server:~$ sudo cp /etc/fstab /etc/fstab.backup# Edit fstabadmin@web-server:~$ sudo nano /etc/fstab# Tambah baris baru:UUID=11223344-5566-7788-9900-aabbccddeeff /mnt/data ext4 defaults 0 2# Test mount tanpa rebootadmin@web-server:~$ sudo mount -a# Verifikasiadmin@web-server:~$ df -hFilesystem Size Used Avail Use% Mounted on/dev/sda2 48G 3.2G 43G 7% //dev/sdb1 25G 200M 24G 1% /mnt/data
PENTING: Salah edit /etc/fstab bisa membuat sistem tidak bisa boot! Selalu backup dulu dan test dengan sudo mount -a sebelum reboot.
Mount Options
OPTION
FUNGSI
defaults
rw, suid, dev, exec, auto, nouser, async
ro
Read-only
rw
Read-write
noexec
Tidak bisa execute binary
nosuid
Ignore SUID bits
nodev
Tidak bisa mount device
auto
Mount otomatis saat boot
noauto
Tidak auto-mount
user
User biasa bisa mount
nofail
Continue boot jika device tidak ada
KOMPETENSI SUB-BAB 06
Memahami struktur /etc/fstab
Mampu gunakan UUID untuk mount
Mampu edit /etc/fstab dengan aman
Memahami mount options
07
SUB-BAB 07 SWAP
SWAP MANAGEMENT
Konsep Swap
Swap adalah ruang di disk yang digunakan sebagai virtual memory ketika RAM penuh. Linux memindahkan halaman memory yang jarang digunakan ke swap untuk membebaskan RAM.
Cek Swap yang Ada
swapon --show
Show swap usage
bash
admin@web-server:~$ swapon --showNAME TYPE SIZE USED PRIO/dev/sda3 partition 1G 0B -2admin@web-server:~$ free -h total used free shared buff/cache availableMem: 1.9Gi 220Mi 1.4Gi 4.0Mi 320Mi 1.6GiSwap: 1.0Gi 0B 1.0Gi
Tambah Swap Partition
Add swap
Create and enable swap partition
bash
# 1. Buat partisi swap (dengan fdisk/parted)admin@web-server:~$ sudo fdisk /dev/sdb# Buat partisi baru, set type ke 82 (Linux swap)# 2. Format sebagai swapadmin@web-server:~$ sudo mkswap /dev/sdb2Setting up swapspace version 1, size = 2 GiB# 3. Enable swapadmin@web-server:~$ sudo swapon /dev/sdb2# 4. Verifikasiadmin@web-server:~$ swapon --showNAME TYPE SIZE USED PRIO/dev/sda3 partition 1G 0B -2/dev/sdb2 partition 2G 0B -3# 5. Tambah ke /etc/fstab (persistent)admin@web-server:~$ sudo blkid /dev/sdb2/dev/sdb2: UUID="abcd1234-..." TYPE="swap"admin@web-server:~$ sudo nano /etc/fstab# Tambah baris:UUID=abcd1234-... none swap sw 0 0
Tambah Swap File (Alternatif)
Swap file
Create swap file (tanpa partisi)
bash
# 1. Buat file swap (2GB)admin@web-server:~$ sudo fallocate -l 2G /swapfile# Atau gunakan dd:admin@web-server:~$ sudo dd if=/dev/zero of=/swapfile bs=1M count=2048# 2. Set permissionadmin@web-server:~$ sudo chmod 600 /swapfile# 3. Format sebagai swapadmin@web-server:~$ sudo mkswap /swapfile# 4. Enable swapadmin@web-server:~$ sudo swapon /swapfile# 5. Verifikasiadmin@web-server:~$ swapon --show# 6. Tambah ke /etc/fstabadmin@web-server:~$ echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Swappiness
Swappiness mengontrol seberapa agresif Linux menggunakan swap. Nilai 0-100 (default 60).
swappiness
Configure swap usage
bash
# Lihat swappiness saat iniadmin@web-server:~$ cat /proc/sys/vm/swappiness60# Set swappiness sementaraadmin@web-server:~$ sudo sysctl vm.swappiness=10# Set swappiness permanentadmin@web-server:~$ echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf# Disable swap sementaraadmin@web-server:~$ sudo swapoff -a# Enable swap kembaliadmin@web-server:~$ sudo swapon -a
TIPS: Untuk server dengan RAM besar, set swappiness rendah (10-20) agar swap jarang digunakan. Untuk desktop, biarkan default (60).
# Lihat ukuran directoryadmin@web-server:~$ du -sh /var/log45M /var/log# Lihat ukuran semua directory di /admin@web-server:~$ du -sh /*7.1M /bin72M /boot4.0K /cdrom4.0K /dev8.2M /etc2.1G /home650M /usr380M /var# Lihat ukuran dengan depthadmin@web-server:~$ du -sh /var/* --max-depth=012K /var/backups45M /var/cache45M /var/log12M /var/lib# Sort by size (terbesar di atas)admin@web-server:~$ du -sh /* 2>/dev/null | sort -rh | head -102.1G /home650M /usr380M /var72M /boot
TIPS: Selalu monitor disk usage secara rutin. Disk penuh bisa menyebabkan sistem crash atau data loss.
KOMPETENSI SUB-BAB 08
Mampu cek disk usage dengan df
Mampu cek directory size dengan du
Mampu monitor I/O dengan iostat
Mampu buat script alert disk penuh
VOLUME 04 SELESAI
SELAMAT!
Kamu telah menyelesaikan Volume 04 - File System & Storage Management. Dari struktur direktori FHS, jenis file system, partisi disk, format, mount/unmount, fstab, swap management, hingga monitoring storage. Kamu sekarang menguasai storage management di Linux. Di Volume 05, kita akan dalami User & Permission Management. Sampai jumpa!
Volume 04 dari seri Debian Linux Server Fundamental - 8 sub-bab storage management.
Fitur Utama:
- Sidebar TOC: Klik sub-bab untuk lompat
- Prev/Next: Tombol navigasi di bawah
- Bookmark: Tandai sub-bab favorit
- Progress Bar: Indikator kemajuan baca
- Copy Code: Klik SALIN untuk copy command
8 Sub-Bab:
01: Struktur Direktori | 02: File System Types | 03: Partisi Disk | 04: Format & Create FS | 05: Mount & Unmount | 06: Fstab | 07: Swap | 08: Monitoring