Gerer du disque au File Systeme

De Avided.info
Aller à : navigation, rechercher


Sommaire

GESTION DES DISQUES ET LVM

Les 5 concepts principaux sont

  1. le volume physique (Physical Volume ou PV) qui désigne un disque physique. Chaque disque a un nom, par exemple hdisk0, hdisk1, ...
  2. le groupe de volumes (Volume Group ou VG) qui désigne un ensemble de volumes physiques. C'est la plus grande quantité de mémoire pouvant être affectée.
  3. les partitions physiques (Physical Partitions ou PPs). Tous les volumes physiques sont divisés en partitions physiques, et la taille d'une partition physique est la même pour tous les volumes physiques appartenant au même groupe de volumes
  4. les partitions logiques (Logical Partitions ou LPs) correspondent aux partitions physiques. A une partition logique correspond au moins une partition physique (ou plus en cas de mirroring) sur laquelle les données sont stockées. C'est la plus petite quantité de mémoire pouvant être affectée.
  5. les volumes logiques (Logical Volumes ou LVs) sont des groupes de partitions logiques. Ils semblent contigues pour l'utilisateur alors qu'elles peuvent être réparties sur plusieurs volumes physiques d'un même groupe de volumes. Chaque groupe de volume a au moins un volume logique.

Exemple :

------------------------+
|
VG ROOTVG |
|
|
hdisk0 |
__________ |
PPs -> |__________| |
|__________| <--------+
|__________| | |
PV | |
| |
| |
hdisk1 | |
__________ | | __________
|__________| | +------ |__________| <- LPs
|__________| <--------------- |__________|
|__________| | +------ |__________|
|__________| | | LV
|__________| | |
PV | |
| |
| |
hdisk2 | |
__________ | |
|__________| | |
|__________| | |
|__________| | |
|__________| | |
|__________| <--------+
|__________| |
|__________| |
|__________| |
PV |
|
|
------------------------+


  • Les 3 disques physiques hdisk0, hdisk1 et hdisk2 appartiennent au même groupe de volume, rootvg (groupe de volume installé par défaut et contenant le système AIX).


Les Disques Physiques

Affiche les disques physiques disponible sur la machine

lsdev -Cc disk

Caracteristique détaille d'un disque

lscfg -vl hdisk0


il peut etre interessant de connaitre la taille du disque

bootinfo -s hdisk2

PV

Affiche les informations des File System du systeme. sans argument affiche tous les disques reconnues par LVM avec le VG associé.

/usr/sbin/lspv

si vous y mettez le nom d'un PV Affiche l'état du OV indiqué avec les VG associer.

lspv hdiskX

Ajouter a celle ci l'argument -l Les LV integreé a ce PV vous serons indiqué.

lspv -l hdiskX

l'option -p est aussi tres utiles


  • Ajouter un dique a LVM

Determiner le disque à ajouter, ici hdisk11

lspv
hdisk0          00c7bedc44aaab2a                    rootvg          active
hdisk1          00c7bedc44aaab88                    altinst_rootvg
hdisk2          00c7bedca60821e2                    rootvg          active
hdisk11         none                                None
hdisk12         00c7bedc4460c3f9                    oradatavg       active
hdisk13         00c7bedc4460ca6a                    oradatavg       active
hdisk14         00c7bedc4460d0e1                    oradatavg       active
hdisk15         00c7bedc4460d77d                    oradatavg       active
hdisk16         00c7bedc4460dfd2                    oradatavg       active
hdisk17         00c7bedc4460e72a                    oradatavg       active
hdisk18         00c7bedc4460ee87                    oradatavg       active

Ajouter le a LVM

chdev -l hdisk11 -a pv=yes

VG - GV

creer un volume groupe

mkvg -y DATAVG -s32 hdiskX
mkvg -t4 -s8 VG

-f permet de forcer comment definir la taille "-sX" des partition en fonction du nombre de partition par VG acepter par le system. comment trouver l'information du nom max de partition qu'un systeme accepte.

modifier le nombre de partition d'un VG

conversion en multiple de 1016 PP (chvg -t x, 1 <= x <= 16 pour faire x * 1016 PP),

chvg

ajout d'un disque a un VG

extendvg -f VG hdsikX

deplacer le contenue d'un PV

extendvg -f rootvg hdsik2
migratepv hdisk1 hdisk2

lister les Volumes Groupes du systeme

lsvg

lister que les Volumes Groupes actifs

lsvg -o

Vérifier les disques physique utilisés par le VG ainsi que l'espace utilisé pour chaque disque

lsvg -p rootvg


Supprimer un VG

La méthode consiste a supprimer tous les disques (PV) du VG

VGDEL=mon_vg_a_supprimer
for i in $(lsvg -p $VGDEL | tail -n +3 | awk '{print $1}' ) ; do
reducevg -d $VGDEL $i
done

mise en mirroire d'un VG

ajouter le disque au VG puis

mirrorvg -m VG hdiskX
mirrorvg rootvg
0516-1126 mirrorvg: rootvg successfully mirrored, user should perform
bosboot of system to initialize boot records. Then, user must modify
bootlist to include: hdisk2 hdisk0.

LV - VL

lister les Volumes Logique d'un VG

lsvg -l VGroupe

lister les Volumes Logique de tous les VG

/usr/sbin/lsvg -o|/usr/sbin/lsvg -i -l

information sur un VL

indique le VG (conteneur ) du VL le point de montage, la taille des PPs, etc..

lslv nom_du_lv

Creer un LV

/usr/sbin/mklv -y'lv_patrol' -t'jfs2' -L'/exec/products/patrol' rootvg taille_en_LPs

Supprimer un VL

/usr/sbin/rmlv -f 'vl_patrol'

Etendre un VL

- vérifier le VG auquel appartiens le LV - vérifier l'espace libre sur le VG - étendre a 4Go le LV ayant "/nom/du/fs" comme nom. Attention cela n'est pas un ajout de 4G, c'est fixé. =+4G ajouterais 4Go au FS.

chfs -a size=4G /nom/du/fs


Augmenter la limite du nombre de PP d'un LV

Afin de determiner le nombre de PP limite.

  • Determiner en Mo la taille que dois faire votre LV
  • Determiner la taille d'un PP
  • tailleLV/taillPP => donne la LimitePP
chlv -x <LimitePP> <NomLV> 

Procédure pour agrandir un LV

Vérifier le VG auquel votre LV appartient je rappel que la commande suivante liste tous le Volume Logique de tous les volume groupe

/usr/sbin/lsvg -o|/usr/sbin/lsvg -i -l
rootvg:
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
hd5 boot 1 1 1 closed/syncd N/A
hd6 paging 26 26 1 open/syncd N/A
lvcheckvar jfs2 1 1 1 open/syncd /var/outillage
hd8 jfslog 1 1 1 open/syncd N/A
hd4 jfs 2 2 1 open/syncd /
hd2 jfs 117 117 1 open/syncd /usr
hd9var jfs 2 2 1 open/syncd /var
hd3 jfs 3 3 1 open/syncd /tmp
hd1 jfs 1 1 1 open/syncd /home
hd10opt jfs 4 4 1 open/syncd /opt
hd7 sysdump 13 13 1 open/syncd N/A
lvcheckos jfs 1 1 1 open/syncd /outillage
lvpatrol jfs 16 16 1 open/syncd /patrol

Dans mon cas il n'existe qu'un VG rootvg Vérifier qu'il existe de l'espace libre dans votre VG

lsvg rootvg
VOLUME GROUP: rootvg VG IDENTIFIER: 0040bbda00004c0000000127d895c5ea
VG STATE: active PP SIZE: 16 megabyte(s)
VG PERMISSION: read/write TOTAL PPs: 268 (4288 megabytes)
MAX LVs: 256 FREE PPs: 80 (1280 megabytes)
LVs: 13 USED PPs: 188 (3008 megabytes)
OPEN LVs: 12 QUORUM: 2
TOTAL PVs: 1 VG DESCRIPTORS: 2
STALE PVs: 0 STALE PPs: 0
ACTIVE PVs: 1 AUTO ON: yes
MAX PPs per PV: 1016 MAX PVs: 32
LTG size: 128 kilobyte(s) AUTO SYNC: no
HOT SPARE: no BB POLICY: relocatable

Dans mon cas je peux étendre le LV de 80 PPs qui représente 1280 Mo Je vais ajouter 160 Mo à ce VG, qui représente 10 PPs. Attention : vous pouvez remarquer le signe +. Il indique d'ajouter a l'existant. Si il est omis, la taille sera = a ce qui est indiqué.

chfs -a size=+160M /var

Procedure de migration d'un LV sur une autre VG

Nous utiliserons cette exemple -- le lv lvmonlv monté sur /rep/de/montage -- Actuellement sur "rootvg" -- VG de destination "destvg"

Demonter le FS

umount /rep/de/montage

renomer le LV original

chlv -n lvmonlv_org lvmonlv 

Copier le LV vers le VG de destination

cplv -y lvmonlv -v destvg lvmonlv_org

Effectuer un check du file système sur le nouveau LV fsck -p /dev/lvmonlv

Récupérer le nom du FS des journalisations pour le VG de destination
Ici le résultat est loglv00, nous l’utilisons dans la prochaine commande

lsvg -l destvg| grep jfs2log
loglv00

Attribution du Nouveau LV au point de montage

chfs -a dev=/dev/lvmonlv -a log=/dev/loglv00 /rep/de/montage

Monter le point de montage

mount /rep/de/montage

Controler que tous vas bien est supprimer le LV original

rmlv lvmonlv_org

information AIX

La seul information certaine permettant de designer un disque est le PVID. C'est la seul information écrite sur le disque. Ne pas prendre en compte les étiquettes du système comme hdisk1.

lspv vous permez de visualiser c'est PVID et faire le lien entre les étiquettes système.

les commande pour le vg

lsvg - mkvg - chvg - reducevg - extendevg

le mirroire ce fait au niveau des VL, meme si dasn smit il le propose au niveau VG. il permet d'automatiser le mirroir de chaque PP

NUMERO PRINCIPAL (major, minor) utiliser que dasn le cas d'un clusteur pour du NFS.

Autres Informations :

/usr/lpp/bosinst/blvset -g menu -d /dev/hdisk0

locale: C C C C C C
console:
blvname: hd5
targ_dev: /dev/hdisk0
root_fsattr: hd4:jfs2:hd8
timestamp: Tue Nov 17 08:50:33 2009
padstring: 6.1 pad string:@%$#~!~~!~#$%@



  1. liste des VG
lsvg
  1. liste des lv avec LVID et le VG assoicié
lspv -L
  1. nombre de VG
/usr/sbin/lqueryvgs -N
  1. Connaitre les informations de lsvg $VGNAME mais présenté en une colonne
  2. Il n'y a pas d'erreur sur la sous commande lsvg
  3. en effet la sous-commande retourne le nom d'un PV du VG
/usr/sbin/lqueryvg -at -p $( lsvg -p $VGNAME | awk '{print $1}' | tail -1 )

Max LVs: 512
PP Size: 27 # echo "( 2^27 ) / 1024" | bc #  pour en Ko ou echo "( 2^27 ) / 1024^2" | bc  # pour en Mo
Free PPs: 342
LV count: 12
PV count: 4
Total VGDAs: 4
Conc Allowed: 0
MAX PPs per PV 1016
MAX PVs: 128
Quorum (disk): 1
Auto Varyon ?: 1
Conc Autovaryo 0
Varied on Conc 0
Total PPs: 3740
LTG size: 128
HOT SPARE: 0
AUTO SYNC: 0
VG PERMISSION: 0
SNAPSHOT VG: 0
IS_PRIMARY VG: 0
PSNFSTPP: 18176
VG Type: 1
Max PPs: 130048
Mirror Pool St n
  1. Liste des VGID + le minor
/usr/sbin/lqueryvgs -G
0058980d00004c00000001232c041015 45
0058980d00004c000000010b373233c3 47
0058980d00004c000000010b47ca32ff 44
0058980d00004c000000010b47caabfc 46
0058980d00004c00000001232c041627 48
0058980d00004c00000001201a313daf 10
  1. information sur le VG
/usr/sbin/lqueryvg -g 0058980d00004c00000001201a313daf -At
Max LVs: 256
PP Size: 26
Free PPs: 6
LV count: 27
PV count: 2
Total VGDAs: 3
Conc Allowed: 0
MAX PPs per PV 1016
MAX PVs: 32
Quorum (disk): 0
Quorum (dd): 0
Auto Varyon ?: 1
Conc Autovaryo 0
Varied on Conc 0
Logical: 0058980d00004c00000001201a313daf.1 hd5 1
0058980d00004c00000001201a313daf.2 hd6 1
0058980d00004c00000001201a313daf.3 hd8 1
0058980d00004c00000001201a313daf.4 hd4 1
0058980d00004c00000001201a313daf.5 hd2 1
0058980d00004c00000001201a313daf.6 hd9var 1
0058980d00004c00000001201a313daf.7 hd3 1
0058980d00004c00000001201a313daf.8 hd1 1
0058980d00004c00000001201a313daf.9 hd10opt 1
0058980d00004c00000001201a313daf.10 lvoutillage 1
0058980d00004c00000001201a313daf.11 lvvaroutil 1
0058980d00004c00000001201a313daf.12 lvdispos 1
0058980d00004c00000001201a313daf.13 lv_controlm 1
0058980d00004c00000001201a313daf.14 lvexpl 1
0058980d00004c00000001201a313daf.15 lv_opnimsip 1
0058980d00004c00000001201a313daf.16 lvlegato 1
0058980d00004c00000001201a313daf.17 outill_log 1
0058980d00004c00000001201a313daf.18 lvpatrol 1
0058980d00004c00000001201a313daf.19 lvnmon 1
0058980d00004c00000001201a313daf.20 lvtivlcf 1
0058980d00004c00000001201a313daf.21 lvtivspe 1
0058980d00004c00000001201a313daf.22 lvomniv1 1
0058980d00004c00000001201a313daf.23 lvchecklog 1
0058980d00004c00000001201a313daf.24 lvvarpatro 1
0058980d00004c00000001201a313daf.25 lvomniv2 1
0058980d00004c00000001201a313daf.26 loglv06 1
0058980d00004c00000001201a313daf.27 lv00 1
Physical: 0058980db3a9960a 2 1
0058980d26c70dd3 1 1
Total PPs: 1084
LTG size: 128
HOT SPARE: 0
AUTO SYNC: 0
VG PERMISSION: 0
SNAPSHOT VG: 0
IS_PRIMARY VG: 0
PSNFSTPP: 4352
VARYON MODE: 0
VG Type: 0
Max PPs: 32512
Mirror Pool St n


odmget CuAt | grep -p 0058980d00004c00000001232c041015

#permet de connaitre le nom de tous les LV distribué par le VG mise en paramètre.
lsvg -M rootvg | awk '{print $2}' | awk -F: '{print $1}' | sort -u | grep -v ^$

decouvrir un VG apres installation

Si vous avez reinstaller votre systeme d'exploitation. Hormis le rootvg, les autres VG devrait etre disponible. Pour cela il faut connaitre le nom d'un disque qui faisait partie du VG et le nom du VG. Dans mon exemple, mon VG se nommait, MON_VG, il y avais au moins le disque hdisk12

importvg -y MON_VG hdisk12


La SWAP

Affiche les information sur les espaces de swap

lsps -a

Affiche la taille et le % utilisé de la swap

lsps -s


Affiche la taille de la mémoire

bootinfo -r

swap active au démarrage

Fichier contenant l'espace de

/etc/swapspaces

Ajout d'un espace de pagination

mkps -s 4 -n -a vgname

-s 4 => Taille 4 LP -n => activé immédiatement -a => activé au démarrage vgname => creer sur le VG vgname

Augmentation de la taille de l'espace de pagination

Controler dans un 1er temps que vous avez assez de LP sur le VG

chps -s 4 paging00

Activation de l'espace de pagination /dev/paging00

swapon /dev/paging00

Activation de tous les espaces de pagination définis dans le fichier /etc/swapspaces

swapon -a

Désactivation de l'espace de pagination /dev/paging00

swapoff /dev/paging01

Suppression de l'espace de swap

Une fois désactivé, vous pouvez supprimer la partition

rmps /dev/paging01