Zapewne nieraz zdarzało Ci się kląć bo maszyna wirtualna którą sobie pieczołowicie wydłubywałeś w pocie i znoju, przy instalacji na niej „czegoś” zakomunikowała Ci radośnie – nic z tego – ten dysk jest za mały. Zanim zaczniesz przeinstalowywać całość, spróbuj poszerzyć dyski wirtualne. Ja nie jestem adminem unix – i trochę mi zajęło aby dojść jak to zrobić sprawnie i szybko – stąd postanowiłem się podzielić tą wiedzą – może i Ty nie jesteś adminem unix.
Zaczynamy od zwiększenia dysku w VBox – maszyna powinna być wcześniej zgaszona.
E:VMsoel7>"c:Program FilesOracleVirtualBoxVBoxManage.exe" modifyhd oel7.vdi --resize 25600
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
E:VMsoel7>"c:Program FilesOracleVirtualBoxVBoxManage.exe" modifyhd oel7-disk1.vdi --resize 25600
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
E:VMsoel7>"c:Program FilesOracleVirtualBoxVBoxManage.exe" modifyhd oel7-disk2.vdi --resize 81920
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
zwiększenie partycji – bootujemy nasz serwer przy użyciu programu gparted – otwórz settings->storage->controlller IDE -> klik w plusik i wybieramy ściągnięty uprzednio ze strony gparted plik iso (wersja aktualna na dzień wpisu to gparted-live-0.33.0-2-i686.iso).
następnie wybieramy kolejność źródeł bootowania:
po czym startujemy wirtualną maszynę:
akceptujemy defaultowo proponowane ustawienia:
potem już tylko quit, exit – i wyłączamy wirtualną maszynę (po kliknięciu exit ja musiałem trochę poczekać na reakcję), mamy powiększone partycje, prawie wszystkie 🙂 w wypadku wolumenów LVM musimy jeszcze wykonać kilka kroków
po pierwsze – wyświetlmy volume group – komendą vgdisplay:
[root@localhost ~]# vgdisplay
--- Volume group ---
VG Name ol
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 6
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size <24.00 GiB
PE Size 4.00 MiB
Total PE 6143
Alloc PE / Size 4863 / <19.00 GiB
Free PE / Size 1280 / 5.00 GiB
VG UUID gTFVc0-5ysZ-xZby-ilyd-MkPO-zbe6-RgYW0V
widzimy volume group ol – a w niej free PE – 5GB do zadysponowania – dokładnie tyle ile rozszerzyliśmy partycję w gpart kolejna komenda lvdisplay powie nam jakie wolumeny się znajdują w tejże grupie
[root@localhost ~]# lvdisplay
--- Logical volume ---
LV Path /dev/ol/swap
LV Name swap
VG Name ol
LV UUID Qgu1M6-L6lT-CVPU-FqG5-xdwS-wlbj-ZQN3SW
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2018-11-03 15:02:31 +0100
LV Status available
# open 2
LV Size <1.20 GiB
Current LE 307
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 249:1
--- Logical volume ---
LV Path /dev/ol/root
LV Name root
VG Name ol
LV UUID jkNECZ-Vxyu-Ca5j-npHS-Az2g-1mSW-5xs2Bv
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2018-11-03 15:02:32 +0100
LV Status available
# open 1
LV Size <17.80 GiB
Current LE 4556
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 249:0
i czas rozszerzyć wolumen root – o całość komendą
lvextend -l +100%FREE /dev/ol/root gdybyśmy chcieli poszerzyć o mniej – wtedy np. lvextend -L+2G /dev/ol/root i np lvextend -L+3G /dev/ol/swap
[root@localhost ~]# lvextend -l +100%FREE /dev/ol/root
Size of logical volume ol/root changed from <17.80 GiB (4556 extents) to <22.80 GiB (5836 extents).
Logical volume ol/root successfully resized.
ostatnim krokiem (uff) będzie daktyczne rozszerzenie filesystemu do rozmiaru wolumenu logicznego – dla ext3/4 będzie to resize2fs , w moim jednak przypadku – filesystemu xfs – będzie to xfs_growfs
[root@localhost ~]# xfs_growfs /dev/ol/root
meta-data=/dev/mapper/ol-root isize=256 agcount=8, agsize=641792 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0 finobt=0 spinodes=0
data = bsize=4096 blocks=4665344, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 4665344 to 5976064
voila! mamy już rozszerzony filesystem o żądaną wielkość:
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs 3.8G 0 3.8G 0% /dev/shm
tmpfs 3.8G 9.5M 3.8G 1% /run
tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/mapper/ol-root 23G 16G 7.0G 70% /
/dev/sdb1 25G 2.5G 21G 11% /install
/dev/sdc1 79G 72M 75G 1% /opt
/dev/sda1 1014M 312M 703M 31% /boot
GridInstall12.2 75G 28G 47G 38% /media/sf_GridInstall12.2
tmpfs 773M 4.0K 773M 1% /run/user/42
tmpfs 773M 28K 773M 1% /run/user/0
dużo trudniej jest taki wolumen zmniejszyć, gdy np. wolumen na którym znajduje się filesystem bootujący jest rozmiaru 100GB z tego obszar zajęty to powiedzmy – 5GB
ale i taki przypadek postaram się opisać wkrótce.