Terkadang saat membuat partisi pada sebuah mesin linux kita tidak atau lupa memperhatikan berapa lama ukuran penyimpanan yang kita buat akan dapat menampung data yang disimpan. 1 tahun? 2 tahun? 3 tahun? sekian tahun? Adakalanya penyimpanan pada partisi tersebut penuh karena kebutuhan menyimpan semakin bertambah. Pada lingkungan virtual Proxmox, terutama untuk mesin virtual (bukan kontainer, untuk kontainer langkahnya lebih mudah), kita dapat menambahkan ukuran penyimpanan pada sebuah partisi tanpa harus mematikan mesin. Berikut ini adalah caranya.
1. Backup terlebih dahulu
Setiap akan melakukan perubahan terhadap sistem, saya sangat menyarankan untuk melakukan backup terlebih dahulu. Backup bisa anda lakukan melalui fasilitas backup di Proxmox VE atau melakukannya dengan manual (transfer file apps, export db dan transfer ke penyimpanan luar yang aman). Yang penting jangan lupa BACKUP DULU.
2. Mengubah ukuran disk pada mesin virtual Proxmox
Untuk mengubah ukuran disk, dalam hal ini menambahkan, maka pilih mesin virtual yang akan diubah, lalu pilih Hardware, lalu klik pada Hard Disk, pilih menu Resize Disk pada bagian atas, lalu tambahkan ukuran disk seperti gambar dibawah ini.

Contoh diatas adalah untuk menambahkan ukuran partisi sebesar 100GB.
3. Perhatikan status virtual group dengan vgdisplay
Berikutnya adalah melihat status virtual group apakah memungkinkan untuk dilakukan perubahan ukuran (resizeable)? Caranya adalah dengan perintah vgdisplay.
[root@apps2 ~]# vgdisplay
--- Volume group ---
VG Name apps2
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size 95.70 GiB
PE Size 4.00 MiB
Total PE 24500
Alloc PE / Size 24500 / 95.70 GiB
Free PE / Size 0 / 0
VG UUID bucLDW-MUWt-vyNO-piuo-Un82-M9Wf-KXUyMK
Perhatikan bahwa VG Status : resizeable.
Selanjutnya periksa menggunakan perintah lsblk. lsblk
adalah sebuah perintah di sistem operasi Linux yang digunakan untuk menampilkan informasi tentang blok perangkat penyimpanan, seperti hard drive dan partisi. Perintah ini dapat memberikan tampilan hierarki yang jelas tentang perangkat penyimpanan yang terhubung ke sistem.
[root@apps2 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 2G 0 part /boot
└─sda2 8:2 0 95.7G 0 part
├─centos-root 253:0 0 58.6G 0 lvm /
├─centos-swap 253:1 0 7.8G 0 lvm [SWAP]
└─centos-var 253:2 0 29.3G 0 lvm /var
sr0 11:0 1 918M 0 rom
Perhatikan drive sda memiliki ukuran 200G sementara yang digunakan hanya 95.7G (lihat pada hasil vgdisplay). Ini berarti kita bisa merubah ukuran pada partisi yang kita inginkan.
4. Resize menggunakan parted
Langkah berikutnya adalah dengan mengubah ukuran partisi dengan menggunakan parted.
root@apps2 ~]# parted
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: QEMU QEMU HARDDISK (scsi)
Disk /dev/sda: 215GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 2098MB 2097MB primary xfs boot
2 2098MB 105GB 103GB primary lvm
(parted) resizepart 2 100%
(parted) print
Model: QEMU QEMU HARDDISK (scsi)
Disk /dev/sda: 215GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 2098MB 2097MB primary xfs boot
2 2098MB 215GB 213GB primary lvm
(parted) quit
Information: You may need to update /etc/fstab.
Perhatikan perintah resizepart 2 100%. Perintah ini artinya mengubah ukuran partisi nomor 2 dari size 103GB menjadi ukuran maksimal sesuai dengan sisa storage yang belum dibuat partisi (+100GB), sehingga hasil akhirnya adalah 213GB.
5. Ubah Physical Volume menggunakan pvresize
Sebelum melakukan perubahan physical volume, kita lihat dulu status saat ini.
[root@apps2 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 7.6G 0 7.6G 0% /dev
tmpfs 7.6G 0 7.6G 0% /dev/shm
tmpfs 7.6G 8.6M 7.6G 1% /run
tmpfs 7.6G 0 7.6G 0% /sys/fs/cgroup
/dev/mapper/centos-root 58G 14G 42G 25% /
/dev/sda1 2.0G 189M 1.8G 10% /boot
/dev/mapper/centos-var 29G 28G 0 100% /var
tmpfs 1.6G 0 1.6G 0% /run/user/0
Dapat dilihat partisi /dev/mapper/centos-var yang di mount ke partisi /var sudah penuh alias 100% penggunaannya. Selanjutnya kita lihat status physical volume eksisting.
[root@apps2 ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name centos
PV Size <95.71 GiB / not usable 4.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 24500
Free PE 0
Allocated PE 24500
PV UUID NaOb7k-6Yqm-BPG1-yvSu-7mh0-I6MG-HL5dAG
Perhatikan PV Size masih <95.71 GiB. Selanjutnya kita resize menggunakan sisa storage dari physical yang belum digunakan dengan perintah pvresize.
[root@apps2 ~]# pvresize /dev/sda2
Physical volume "/dev/sda2" changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
Perhatikan status yang resized atau updated. Selanjutnya periksa kembali menggunakan pvdisplay.
[root@apps2 ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name centos
PV Size 198.04 GiB / not usable 2.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 50699
Free PE 26199
Allocated PE 24500
PV UUID NaOb7k-6Yqm-BPG1-yvSu-7mh0-I6MG-HL5dAG
Perhatikan PV Size sekarang sudah menjadi 198.04 GiB.
6. Ubah logical volume menggunakan lvextend
Setelah physical volume diubah, langkah selanjutnya adalah merubah logical volume. Pada kasus ini yang akan diperluas adalah partisi /dev/centos/var yang di mount ke /var. Berikut ini adalah perintah untuk memperluas /dev/centos/var dengan menggunakan semua sisa physical volume (100%) yang belum dipartisi menggunakan logical volume.
[root@apps2 ~]# lvextend /dev/centos/var -l+100%FREE
Size of logical volume centos/var changed from <29.30 GiB (7500 extents) to <131.64 GiB (33699 extents).
Logical volume centos/var successfully resized.
Perhatikan bahwa logical volume telah diubah dari <29.30 GiB menjadi <131.64 GiB.
7. Finalisasi dengan resize2fs
Langkah terakhir adalah dengan memberitahu sistem linux atas perubahan partisi baru dengan menggunakan perintah resize2fs.
[root@apps2 ~]# resize2fs /dev/centos/var
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/centos/var is mounted on /var; on-line resizing required
old_desc_blocks = 4, new_desc_blocks = 17
The filesystem on /dev/centos/var is now 34507776 blocks long.
Terakhir adalah dengan melihat apakah partisi /var sudah sesuai dengan harapan yaitu bertambah ukurannya.
[root@apps2 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 7.6G 0 7.6G 0% /dev
tmpfs 7.6G 0 7.6G 0% /dev/shm
tmpfs 7.6G 8.6M 7.6G 1% /run
tmpfs 7.6G 0 7.6G 0% /sys/fs/cgroup
/dev/mapper/centos-root 58G 14G 42G 25% /
/dev/sda1 2.0G 189M 1.8G 10% /boot
/dev/mapper/centos-var 130G 28G 97G 22% /var
tmpfs 1.6G 0 1.6G 0% /run/user/0
Dapat dilihat bahwa /dev/mapper/centos-var sekarang sudah 130G. Jangan lupa kerjakan dengan penuh hati-hati dan INGAT! BACKUP DULU. Sekian. 🙂