Які команди слід використовувати в LVM, якщо я хочу:
- створити знімок обсягу лише для читання;
- (зробити кілька експериментів в обсязі);
- а потім відкатати гучність до знімка?
Які команди слід використовувати в LVM, якщо я хочу:
Відповіді:
Я думаю, ти шукаєш lvconvert --merge
. На чоловіковій сторінці:
--мірувати
Об'єднує знімок у початковому обсязі. Щоб перевірити, чи підтримує ваше ядро цю функцію, шукайте
snapshot-merge
у висновкуdmsetup targets
. Якщо походження і обсяг знімка не відкриті, злиття почнеться негайно. В іншому випадку злиття почнеться вперше, або активізується походження або знімок, і обидва закриті. Об'єднання знімка в джерело, яке неможливо закрити, наприклад, в кореневу файлову систему, відкладається до наступного разу, коли не буде активовано том початкового сигналу. Коли почнеться злиття, отриманий логічний том буде мати ім'я початку, незначне число та UUID.
Поки злиття триває, читання чи запис до початку походження відображається так, як вони були спрямовані на злиття знімка.Коли злиття закінчиться, злитий знімок видаляється. Кілька знімків можуть бути вказані в командному рядку, або @tag може бути використаний для визначення декількох знімків, об'єднаних у відповідне походження.
Припустимо, у вас є логічний том vg0 / система, який містить вашу / файлову систему.
# 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
Перезавантаження потрібні лише тому, що в цьому сценарії ви не можете відключити файлову систему. Якщо це не / fs, відключення достатньо.
Майте на увазі, що знімок буде видалено після злиття.
-pr
(--permission r
)lvcreate
, чи буде знімок за замовчуванням лише для читання? ( Чи дозволяє LVM взагалі робити знімки, що записуються ? Якщо так, можливий альтернативний сценарій, коли тимчасові експерименти не були б видимі в основному томі, але виконувалися б у тимчасовому знімку, що записується.)