Un groupe de volumes se compose de volumes physiques entiers. Un volume physique se compose de plusieurs extensions (une extension est généralement de 4 Mo); chaque étendue peut appartenir à un volume logique différent. Pour transférer un volume logique vers un autre groupe, vous ne pouvez pas simplement transférer des extensions, car cela pourrait diviser le volume physique entre le VG source et le VG cible.
Ce que vous pouvez faire est de transférer un ou plusieurs PV du VG source vers le VG cible, avec la vgsplitcommande. Vous pouvez spécifier les PV que vous souhaitez transférer ou quel LV (mais un seul à la fois). Si vous spécifiez un LV, celui-ci et les autres LV du VG source doivent se trouver sur des PV distincts. Le VG de destination sera créé s'il n'existe aucun VG portant le nom spécifié.
Vous devrez peut-être utiliser d' pvmoveabord pour organiser les volumes logiques que vous souhaitez déplacer pour être sur des PV séparés.
Si vous vouliez conserver les limites physiques du VG et déplacer les données, il n'y a pas d'outil intégré, mais vous pouvez créer un miroir puis retirer l'original .
On dirait que le groupe_cible peut être préexistant?
XTL
8
À la LVM dans Debian tronçon (9.0), à savoir 2.02.168-2, il est possible de faire une copie d'un volume logique pour les groupes de volumes utilisant une combinaison de vgmerge, lvconvert, et vgsplit. Puisqu'un déplacement est une combinaison d'une copie et d'une suppression, cela fonctionnera également pour un déplacement.
Alternativement, vous pouvez utiliser pvmovepour simplement déplacer le volume.
Un exemple de session complète autonome utilisant des périphériques en boucle et
lvconvertsuit.
Résumé: nous créons un groupe de volumes vg1avec un volume logique lv1, et vg2avec lv2, et faisons une copie de lv1in vg2.
Vous pouvez éventuellement écrire quelque chose sur lv1 afin de pouvoir vérifier ultérieurement que la copie a été correctement créée. Rendez vg1 inactif.
vgchange -a n vg1
Exécutez la commande de fusion en mode test. Cela fusionne vg1 en vg2.
vgmerge -A y -l -t -v <<destination-vg>> <<source-vg>>
vgmerge -A y -l -t -v vg2 vg1
Et puis pour de vrai.
vgmerge -A y -l -v vg2 vg1
Créez ensuite une paire de miroirs RAID 1 à l' lv1aide de lvconvert. L'
dest-pvargument indique lvconvertd'activer la copie miroir /dev/loop2.
1) La plupart de ces commandes devront être exécutées en tant que root.
2) En cas de duplication des noms des volumes logiques dans les deux groupes de volumes, vgmergerefusera de continuer.
3) Lors de la fusion, les volumes logiques dans vg1doivent être inactifs. Et en cas de division, les volumes logiques vg2appartenant à vg1doivent être inactifs. Dans notre cas, c'est le cas lv1.
À la LVM dans Debian tronçon (9.0), à savoir 2.02.168-2, il est possible de faire une copie d'un volume logique pour les groupes de volumes utilisant une combinaison de
vgmerge
,lvconvert
, etvgsplit
. Puisqu'un déplacement est une combinaison d'une copie et d'une suppression, cela fonctionnera également pour un déplacement.Alternativement, vous pouvez utiliser
pvmove
pour simplement déplacer le volume.Un exemple de session complète autonome utilisant des périphériques en boucle et
lvconvert
suit.Résumé: nous créons un groupe de volumes
vg1
avec un volume logiquelv1
, etvg2
aveclv2
, et faisons une copie delv1
invg2
.Créez des fichiers.
Configurez des périphériques de boucle sur des fichiers.
Créez des volumes physiques sur les périphériques de boucle (initialisez les périphériques de boucle à utiliser par LVM).
Créez les groupes de volumes vg1 et vg2 sur / dev / loop1 et / dev / loop2 respectivement.
Créez des volumes logiques lv1 et lv2 sur vg1 et vg2 respectivement.
Créez des systèmes de fichiers ext4 sur lv1 et lv2.
Vous pouvez éventuellement écrire quelque chose sur lv1 afin de pouvoir vérifier ultérieurement que la copie a été correctement créée. Rendez vg1 inactif.
Exécutez la commande de fusion en mode test. Cela fusionne vg1 en vg2.
Et puis pour de vrai.
Créez ensuite une paire de miroirs RAID 1 à l'
lv1
aide delvconvert
. L'dest-pv
argument indiquelvconvert
d'activer la copie miroir/dev/loop2
.Ensuite, divisez le miroir. Le nouveau LV est maintenant
lv1_copy
.Rendez
vg2/lv1
inactif.Ensuite (mode test)
Pour de vrai
Sortie résultante:
REMARQUES:
1) La plupart de ces commandes devront être exécutées en tant que root.
2) En cas de duplication des noms des volumes logiques dans les deux groupes de volumes,
vgmerge
refusera de continuer.3) Lors de la fusion, les volumes logiques dans
vg1
doivent être inactifs. Et en cas de division, les volumes logiquesvg2
appartenant àvg1
doivent être inactifs. Dans notre cas, c'est le caslv1
.la source
J'offrirai le mien:
si tout va bien, supprimez la source
la source