Creation: 6 mai 2014
Mise à jour: Version: 1.0
Author: Jean-Louis Bicquelet-Salaün
Location: http://jlbicquelet.free.fr
Copyright: (c) 2014 Jean-Louis BICQUELET-SALAÜN
comment réduire un lv de dump
probleme
Il arrive qu'on ait besoin de place sur le rotovg et que l'on ait déjà réduit drastiquement tous les filesystems à la limite du raisonnable.
Il ne reste plus qu'à taper dans l'espace de dump. malheureusement, ce n'est pas un filesystem mai un volume logique et l'utilisation de
lreducevg
est caché au fond d'une armoire chez les premiers utilisateurs d'IBM. Il ne reste plus qu'à désactiver le dump détruire et reconstruire l'espace de dump
ou à réduire le lv avec une commande non documentée
lreducelv.
méthode
méthode sure
dans notre cas l'espace de dump s'appele lv_dump.
- Lister les espace de dump
sysdumpdev -l
primary /dev/lv_dump
secondary /dev/sysdumpnull
copy directory /var/adm/ras
forced copy flag TRUE
- désactiver l'espace de dump
sysdumpdev -p /dev/sysdumpnull
primary /dev/sysdumpnull
secondary /dev/sysdumpnull
copy directory /var/adm/ras
forced copy flag TRUE
always allow dump TRUE
dump compression ON
type of dump traditional
- supprimer le volume groupe associé
/usr/sbin/rmlv -f lv_dump
recréer l'espace de dump
/usr/sbin/mklv -y lv_dump -t sysdump rootvg 1
- éventuellement le retailler
extendlv lv_dump
- remettre l'espace de dump et vérifier
sysdumpdev -p /dev/lv_dump
primary /dev/lv_dump
secondary /dev/sysdumpnull
copy directory /var/adm/ras
forced copy flag TRUE
rmlv: Logical volume lv_dump is removed.
dump compression ON
type of dump traditional
méthode plus rapide mais peut être moins sure
- récupérer le fichier map logique correspondant au lv
lquerylv -L `getlvodm -l lv_dump` ` -r > mapfile
- editer mapfile en supprimant les volumes logiques que l'on veut garder et en laissant ceux qu'on veux supprimer
00f61fa550642b20 7 1 => supprimer ceux-ci si on désire le garder
00f61fa550642b20 8 2 => supprimer
00f61fa550642b20 9 3 => supprimer
00f61fa550642b20 10 4 => supprimer
00f61fa550642b20 11 5 => supprimer
00f61fa550642b20 12 6 => supprimer
00f61fa550642b20 13 7 => supprimer
00f61fa550642b20 14 8 => supprimer
00f61fa550642b20 15 9 => supprimer
00f61fa550642b20 16 10
00f61fa550642b20 17 11
00f61fa550642b20 18 12
00f61fa550642b20 19 13
Le fichier devient
00f61fa550642b20 16 10
00f61fa550642b20 17 11
00f61fa550642b20 18 12
00f61fa550642b20 19 13
On va réduire de 4 lps.
- utiliser la commande non documentée lreducelv
/usr/sbin/lreducelv -l `getlvodm -l lv_dump` -s `wc -l mapfile` mapfile
Le nombre après l'option -s correspond au nombre de lv à supprimer. C'est à dire au nombre de ligne du fichier mapfile. On aurait bien sur put mettre 4.
Cette procédure peut aussi pour réduire des volume logiques de n'importe quel type comme des raw device par exemple, ainsi que des
jfs ou
jfs2 mais il existe la commande par défaut
chfs -a size=128M /fs, qui fonctionne très bien pourvu que la taille donnée soit un multiple de la taille du PP définissant le volume groupe.