Oggi ho installato un nuovo server Linux ed erroneamente ho impostato lo swap di dimensione errata rispetto a quello che avrei voluto utilizzasse.
Il vero problema è che ho impostato un unico volume group (VolGroup00) contenete 2 soli logical volume (LogVol00 di root, e LogVol01 come swap) e ho assegnato tutto lo spazio disponibile, oltre lo swap a root.
L’unica soluzione è ridurre il filesystem di root ed il logical volume corrispondente LogVol00 per avere a disposizione lo spazio necessario ad incrementare il logical volume di swap (LogVol01).
La situazione attuale è:
[root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 248G 5.0G 243G 2% / /dev/sda1 99M 14M 81M 15% /boot [root@localhost ~]# free total used free shared buffers cached Mem: 8173236 1590572 6582664 0 140784 1224916 -/+ buffers/cache: 224872 7948364 Swap: 10485760 0 10485760
Il mio obiettivo è di ridurre di 7Gb il filesystem root ( / ) per poter successivamente espandere l’area di swap.
Il primo passo è riavviare il server con il disco di installazione della versione RedHat con cui ho installato il server, nel mio caso la 5.4, alla schermata di boot del cd:
digita “linux rescue” e procedo come nell’installazione fino alla richiesta da parte di Anaconda di montare i filesystem della macchina nel path /mnt/sysimage, a questo punto scegli di non montare i filesystems in quanto le operazioni da compiere presuppongono che i filesystems non siano montati.
La prima operazione da eseguire quando si presenta il prompt è abilitare il volume group per eseguirvi i comandi di resize:
#> lvm vgchange -a y
verifica che i logical volume siano quindi visibili:
#> ls /dev/VolGroup00/
il risultato dovrebbe essere:
LogVol00 LogVol01 #>
Nel mio caso il LogVol00 contiene il filesystem di root da ridurre ed il LogVol01 contiene il filesystem di swap che in seguito ingrandirò. Per essere sicuro che i dati restino integri durante la fase di riduzione del filesystem puoi eseguire un check del filesystem con il comando:
#> e2fsck -f /dev/VolGroup00/LogVol00
dopo qualche minuto otterrai l’esito del controllo e con esito positivo potrai passare alla fase di riduzione del filesystem:
#> resize2fs /dev/VolGroup00/LogVol00 241G
avrai notato che dopo il comando ho specificato la dimensione del filesystem come 241G (248Gb – 7Gb = 241Gb) infatti la dimensione da specificare è quella ce vuoi raggiunga il filesistema alla fine dell’operazione.
L’ultimo passaggio è ridurre il logical volume creando lo spazio necessario per espandere in seguito il filesystem di swap:
#> lvm lvreduce -L241G /dev/VolGroup00/LogVol00
Riavviamo il server e se tutto è stato eseguito senza problemi otterrai il seguente risultato:
[root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 241G 5.0G 236G 2% / /dev/sda1 99M 14M 81M 15% /boot [root@localhost ~]# free total used free shared buffers cached Mem: 8173236 1590572 6582664 0 140784 1224916 -/+ buffers/cache: 224872 7948364 Swap: 10485760 0 10485760
In un prossimo articolo spiegherò come estendere il filesystem di swap.
2 ping
[…] precedente articolo ho descritto come ridurre un filesystem ed il suo logical volume corrispondente, la procedura si […]
[…] puoi seguire la procedura di riduzione del filesystem di root descritta in precedenza nel mio articolo, questa procedura è valida sia sul Linux RedHat 6 rescue […]