Comment créer un instantané en lecture seule dans LVM, puis y revenir après un certain travail?

12

Quelles sont les commandes à utiliser dans LVM au cas où je souhaiterais:

  1. créer un instantané en lecture seule d'un volume;
  2. (faire quelques expériences dans le volume);
  3. puis restaurer le volume à l'instantané?
imz - Ivan Zakharyaschev
la source

Réponses:

11

Je pense que vous cherchez lvconvert --merge. Depuis la page de manuel:

--fusionner

Fusionne un instantané dans son volume d'origine. Pour vérifier si votre noyau prend en charge cette fonctionnalité, recherchez snapshot-mergedans la sortie de dmsetup targets. Si le volume d'origine et le volume d'instantanés ne sont pas ouverts, la fusion démarre immédiatement. Sinon, la fusion démarre la première fois que l'origine ou l'instantané sont activés et les deux sont fermés. La fusion d'un instantané dans une origine qui ne peut pas être fermée, par exemple un système de fichiers racine, est différée jusqu'à la prochaine activation du volume d'origine. Lorsque la fusion démarre, le volume logique résultant aura le nom d'origine, le numéro mineur et l'UUID.
Pendant la fusion, les lectures ou écritures à l'origine s'affichent telles qu'elles étaient dirigées vers l'instantané en cours de fusion.Une fois la fusion terminée, l'instantané fusionné est supprimé. Plusieurs instantanés peuvent être spécifiés sur la ligne de commande ou un @tag peut être utilisé pour spécifier plusieurs instantanés à fusionner avec leur origine respective.

Supposons que vous ayez un volume logique vg0 / system qui contient votre système de fichiers /.

# create a read-only snapshot
lvcreate -pr --snapshot --name system_snapshot vg0/system
# upgrade or something
# if it fails, reboot and do this from a livecd
lvconvert --merge vg0/system_snapshot
# reboot again and you have your old system back

Les redémarrages ne sont nécessaires que parce que dans ce scénario, vous ne pouvez pas démonter le système de fichiers. Si ce n'est pas le / fs, démonter est suffisant.

Gardez à l'esprit que l'instantané sera supprimé après la fusion.

stribika
la source
Merci d'avoir répondu! Et si l'on ne donne pas l' option -pr( --permission r) à lvcreate, l'instantané sera-t-il en lecture seule par défaut? ( LVM autorise-t - il les instantanés inscriptibles ? Si oui, un scénario alternatif pourrait être possible, où les expériences temporaires ne seraient pas visibles dans le volume principal, mais seraient effectuées dans l'instantané inscriptible temporaire.)
imz - Ivan Zakharyaschev
1
La valeur par défaut est RW.
stribika
3
Vous ne devriez pas faire la fusion à partir d'un CD live, vous pouvez lancer la commande et après le redémarrage, elle fusionnera automatiquement.
Hanan N.