Tech With Ngurah Bagus
Tech With Ngurah Bagus
Published on 2026-01-20 / 20 Visits
1
1

Rocky Linux 9: Cara Resize Root Partition Tanpa Downtime

Pendahuluan

Saat melakukan instalasi Rocky Linux 9 di platform LXD, terkadang kita menemui masalah yang cukup mengganggu terkait alokasi penyimpanan. Meskipun kita sudah menentukan ukuran disk yang besar (misalnya 50GB) saat inisialisasi instance, namun ketika diperiksa di dalam OS, partisi root hanya terbaca dalam ukuran kecil (bawaan image), biasanya hanya sekitar 4GB.

Masalah ini umumnya terjadi karena cloud image tidak secara otomatis melakukan ekspansi atau memperbesar partisi disk yang sudah dialokasikan pada virtual block device.

Berikut adalah kondisi awalnya:

[root@rhel-test ~]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda      8:0    0   50G  0 disk 
├─sda1   8:1    0  100M  0 part /boot/efi
└─sda2   8:2    0  3.9G  0 part /

Seperti yang terlihat, sda memiliki total 50GB, tetapi sda2 (root) hanya menggunakan 3.9GB.

Reclaim Volume untuk Partisi Root

Untuk mengatasi ini, kita akan menggunakan tools growpart dan resize2fs. Secara default, paket-paket ini tidak tersedia di instalasi minimal Rocky Linux 9, jadi kita harus menginstalnya terlebih dahulu.

1. Instalasi Tool yang Diperlukan

Kita perlu menginstal paket cloud-utils-growpart untuk memanipulasi tabel partisi tanpa menghapus data.

dnf install cloud-utils-growpart -y

2. Ekspansi Partisi dengan growpart

Setelah terinstal, kita lakukan klaim sisa ruang pada disk fisik ke partisi tujuan. Gunakan perintah growpart diikuti dengan nama device dan nomor partisinya.

# Format: growpart /dev/sda <nomor-partisi>
# Disini saya menggunakan nomor 2 karena sda2 adalah partisi root.
growpart /dev/sda 2

Output:

CHANGED: partition=2 start=206848 old: size=8181727 end=8388574 new: size=104650719 end=104857566

Sekarang jika kita cek dengan lsblk, partisi sda2 sudah berubah ukurannya menjadi 49.9GB, namun filesystem di dalamnya belum mengenali perubahan ini.

3. Resize Filesystem dengan resize2fs

Langkah terakhir adalah menyesuaikan ukuran filesystem agar mengikuti ukuran partisi yang baru. Karena pada kasus ini saya menggunakan ext4, maka tool yang digunakan adalah resize2fs.

Catatan: Jika Anda menggunakan XFS (default pada beberapa instalasi RHEL/Rocky), gunakan perintah xfs_growfs / sebagai gantinya.

resize2fs /dev/sda2

Output:

resize2fs 1.46.5 (30-Dec-2021)
Filesystem at /dev/sda2 is mounted on /; on-line resizing required
The filesystem on /dev/sda2 is now 13081339 (4k) blocks long.

Verifikasi Hasil

Sekarang, mari kita verifikasi apakah ruang disk sudah benar-benar tersedia dengan perintah df -h.

[root@rhel-test ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        49G  1.4G   47G   3% /
/dev/sda1        92M   13M   79M  14% /boot/efi
...

Berhasil! Partisi root sekarang sudah memiliki kapasitas penuh sesuai dengan yang kita assign di LXD.

Catatan Penting

Langkah-langkah di atas dapat dilakukan secara online tanpa memerlukan reboot pada server. Namun, untuk menjaga keamanan data Anda, perhatikan hal berikut:

  1. Lakukan Snapshot: Selalu ambil snapshot instance LXD Anda sebelum melakukan manipulasi partisi (lxc snapshot <nama-instance>).

  2. Jenis Filesystem: Pastikan Anda mengetahui jenis filesystem Anda (df -T). Gunakan resize2fs untuk ext4 dan xfs_growfs untuk XFS.

  3. Urutan Partisi: growpart hanya bisa bekerja jika ada ruang kosong (unallocated space) tepat setelah partisi yang ingin diperbesar.

Kesimpulan

Masalah partisi root yang tidak otomatis menggunakan alokasi disk pada instalasi Rocky Linux 9 di LXD merupakan hal biasa yang dialami akibat keterbatasan cloud image. Meskipun ukuran dan besarannya disk sudah ditentukan saat pembuatan instance, sistem hanya mengenali ukuran partisi bawaan image.

Dengan memanfaatkan tool growpart untuk memperluas partisi dan resize2fs (atau xfs_growfs untuk XFS) untuk menyesuaikan filesystem, kita dapat mengklaim seluruh ruang disk yang tersedia tanpa kehilangan data dan tanpa perlu melakukan reboot instance. Proses ini relatif sederhana dan aman jika dilakukan dengan benar, serta dapat dijalankan secara online (disaat instance sedang menyala).


Comment