Belajar Artix Linux - Storage: LVM, Btrfs & Encryption
Episode 10 of 23

Belajar Artix Linux - Storage: LVM, Btrfs & Encryption

Episode ini membahas strategi penyimpanan Artix: LVM untuk manajemen volume fleksibel, Btrfs untuk subvolume dan snapshot, pilihan filesystem ext4/xfs, serta enkripsi disk dengan LUKS/dm-crypt dan integrasi hook mkinitcpio agar boot berjalan mulus.

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

Pendahuluan

Data adalah aset paling berharga di sebuah sistem. Episode 10 membahas tiga lapis penyimpanan yang bisa kalian susun di Artix: LVM untuk fleksibilitas volume, Btrfs untuk subvolume dan snapshot, serta enkripsi dengan LUKS/dm-crypt agar data aman saat mesin dicuri. Kita juga melihat bagaimana semua ini berintegrasi dengan hook mkinitcpio saat boot.

Pilihannya tidak eksklusif — LVM, Btrfs, dan LUKS bisa dipasang berlapis. Kuncinya adalah memahami apa yang masing-masing berikan, lalu menyusun sesuai kebutuhan.

LVM: Logical Volume Manager

Konsep: PV, VG, LV

LVM menambahkan lapisan virtualisasi di atas partisi fisik. Alur kerjanya: Physical Volume (PV) dibuat di partisi, dikumpulkan ke Volume Group (VG), lalu dibagi menjadi Logical Volume (LV) yang dipakai sebagai filesystem. Ukuran LV bisa diubah tanpa mempartisi ulang.

Buat LVM dari partisi:

Setup LVM dasar
pvcreate /dev/sda2
vgcreate vg0 /dev/sda2
lvcreate -L 40G -n root vg0
mkfs.ext4 /dev/vg0/root

lvcreate -L 40G -n root vg0 membuat LV bernama root sebesar 40 GB di volume group vg0. Mount LV seperti filesystem biasa: /dev/vg0/root ke /.

Manajemen Ukuran

Keunggulan LVM terlihat saat kapasitas habis. Perbesar LV dan filesystem tanpa unmount untuk ext4:

Perbesar LV dan filesystem
lvextend -L +10G /dev/vg0/root
resize2fs /dev/vg0/root

Untuk XFS gunakan xfs_growfs. Cek status dengan vgs dan lvs.

Btrfs: Subvolume dan Snapshot

Subvolume sebagai Unit Terpisah

Btrfs mendukung subvolume: direktori yang bisa di-mount, di-snapshot, dan di-rollback secara terpisah. Ini cara modern mengelola sistem — root, home, dan data bisa memiliki subvolume sendiri.

Buat subvolume setelah format:

Setup subvolume Btrfs
mkfs.btrfs -f /dev/vg0/root
mount /dev/vg0/root /mnt
btrfs subvolume create /mnt/@root
btrfs subvolume create /mnt/@home
umount /mnt

Subvolume @root dan @home akan di-mount terpisah di / dan /home. Daftar subvolume dengan btrfs subvolume list /.

Snapshot untuk Rollback

Snapshot adalah salinan instan sebuah subvolume, alat utama backup di episode 16:

Buat snapshot
btrfs subvolume snapshot -r /mnt/@root /mnt/@snap-root-2026-08-10

Snapshot -r bersifat read-only, aman sebagai titik pemulihan. Cek hasilnya dengan btrfs subvolume list /mnt.

Pilihan Filesystem: ext4 dan XFS

ext4: Serbaguna dan Stabil

ext4 adalah default yang paling aman: stabil, didukung di mana-mana, dan mudah diperbaiki. Cocok untuk hampir semua workload, terutama saat dikombinasikan dengan LVM.

XFS: Untuk Beban Tulis Berat

XFS unggul untuk file besar dan workload tulis berat. Di Artix, install dengan sudo pacman -S xfsprogs lalu format dengan mkfs.xfs. Perhatikan bahwa XFS tidak bisa diperkecil dan snapshot Btrfs tidak berlaku padanya — pertimbangkan saat memilih.

Enkripsi dengan LUKS/dm-crypt

Setup Partisi Terenkripsi

LUKS dengan kernel dm-crypt menyediakan enkripsi full-disk. Siapkan partisi terenkripsi sebelum membuat filesystem:

Setup LUKS
cryptsetup luksFormat /dev/sda2
cryptsetup open /dev/sda2 cryptroot
mkfs.ext4 /dev/mapper/cryptroot

cryptsetup luksFormat /dev/sda2 meminta passphrase saat pertama kali. Setelah di-open, partisi terlihat sebagai /dev/mapper/cryptroot yang bisa diformat dan di-mount.

Konfigurasi Boot dengan Hook encrypt

Agar sistem bisa boot dari partisi terenkripsi, tambahkan hook encrypt di /etc/mkinitcpio.conf. Pada sistem dengan hook udev, letakkan encrypt setelahnya:

Hook encrypt di /etc/mkinitcpio.conf
HOOKS=(base udev autodetect modconf kms keyboard keymap consolefont block encrypt filesystems fsck)

Setelah mengubah hook, regenerasi initramfs:

Regenerasi initramfs setelah ubah hook
mkinitcpio -P

Perintah mkinitcpio -P membangun ulang initramfs untuk semua kernel. GRUB juga perlu diberi parameter cryptdevice agar kernel tahu letak partisi terenkripsi. Tanpa hook encrypt, sistem tidak akan bisa menemukan root saat boot.

Verifikasi Enkripsi

Pastikan enkripsi benar-benar aktif dengan memeriksa status mapping:

Cek status LUKS
cryptsetup status cryptroot
lsblk -f

Output cryptsetup status cryptroot menampilkan cipher, mode, dan perangkat yang dipetakan. lsblk -f menunjukkan bahwa partisi terenkripsi tersembunyi di bawah layer cryptroot.

Menyusun Semua Lapisan

Skema Lengkap LUKS + LVM

Skema gabungan yang umum: enkripsi di partisi fisik, LVM di atasnya, lalu filesystem. Urutan setup-nya:

Setup LUKS + LVM
cryptsetup luksFormat /dev/sda2
cryptsetup open /dev/sda2 cryptlvm
pvcreate /dev/mapper/cryptlvm
vgcreate vg0 /dev/mapper/cryptlvm
lvcreate -L 40G -n root vg0
mkfs.ext4 /dev/vg0/root

Kunci utama: LVM hanya boleh dibuat di atas /dev/mapper/cryptlvm, bukan di partisi mentah. Semua data di dalam LV otomatis terenkripsi.

Kebijakan Passphrase

Gunakan passphrase panjang dan unik, lalu simpan LUKS header backup di tempat aman. Header LUKS yang hilang berarti data tidak bisa dibuka walau passphrase benar:

Backup LUKS header
cryptsetup luksHeaderBackup /dev/sda2 --header-backup-file /root/luks-header.bin

Perintah cryptsetup luksHeaderBackup menyimpan header di file eksternal. Simpan file ini di media terpisah dan rahasia.

Penutup

Episode 10 membekali kalian penyimpanan yang fleksibel dan aman: LVM untuk volume yang mudah diresize, Btrfs untuk subvolume dan snapshot, pilihan ext4/XFS, serta enkripsi LUKS/dm-crypt dengan hook encrypt di mkinitcpio.

Inti yang harus dibawa pulang:

  • LVM memisahkan PV, VG, dan LV sehingga resize mudah.
  • Btrfs subvolume memungkinkan mount dan snapshot terpisah.
  • ext4 serbaguna; XFS untuk beban tulis berat.
  • LUKS mengenkripsi disk; dm-crypt menyediakan layer mapping.
  • Hook encrypt wajib di mkinitcpio untuk root terenkripsi.
  • Backup header LUKS; kehilangan header berarti kehilangan data.

Di episode 11 selanjutnya kita akan membahas kernel dan firmware — kernel linux, linux-lts, dan linux-zen, custom kernel, mkinitcpio hooks, linux-firmware, serta microcode intel-ucode dan amd-ucode.

Belajar Artix Linux - Storage: LVM, Btrfs & Encryption | Belajar Artix Linux