LINUX.ORG.RU

LVM снапшот на другой диск

 ,


0

3

Задача: Откат при неудачных обновлениях (Arch).

Что имеем (гипотетически):

  • sda - 100G Корень системы
  • sdb - 50G Свободный диск

Помечаю диски, что они будут использоваться для LVM:

pvcreate /dev/sda /dev/sdb

Создаю группу томов, пока что с одного диска:

vgcreate vgrp /dev/sda

Создаю логический том:

lvcreate --name root -l 100%FREE vgrp

Расширяю группу на второй диск. По идее сюда будут писаться снапшоты, так как первый диск уже полностью занят:

vgextend vgrp /dev/sdb

Делаю снапшот:

lvcreate --size 50G --snapshot --name snap /dev/vgrp/root

Итак, уважаемые знатоки lvm, вопрос:

Что я делаю не так. А если точнее, будет ли такая схема работать так как я описал. Нет ли здесь подводных камней, типа перемещения экстентов и т.д.

Откат при неудачных обновлениях

Почему ты пытаешься связывать это с местом хранения снапшота?

futurama ★★★★★ ()
Ответ на: комментарий от SyntaxError

Да и теоретически COW на второй диск должна быть быстрее.

Обычные снапшоты сохраняют оригинальное состояние в снапшоте и изменения записываются в оригинальный. Поэтому будет сильно хуже, чем думаешь, двойная запись. По CoW логике работают тонкие тома, вроде.

boowai ★★★★ ()
Последнее исправление: boowai (всего исправлений: 1)
Ответ на: комментарий от boowai

Обычные снапшоты сохраняют оригинальное состояние в снапшоте и изменения записываются в оригинальный

Это CoW

По CoW логике работают тонкие тома, вроде.

А это RoW

Поэтому будет сильно хуже, чем думаешь

Я в курсе. Но все же чтения с одного диска и запись в другой быстрее чем чтения и запись на одном диске. Хотя это не точно.

SyntaxError ()

lvcreate –name root -l 100%FREE vgrp

Зачем так делать? Ты же теряешь возможность расширения тома, равно как и создания новых в этой группе, и умножаешь весь LVM на 0. Делай по минимуму (10-20 GB).

d_a ★★★★★ ()
Ответ на: комментарий от d_a

Читай следующую команду, которая добавляет свободное место в группу.

SyntaxError ()

Вроде как должно работать?

targitaj ★★★★★ ()

lvm не перемещает экстенты без команды. Будет работать так, как ты задумал. Будет ли от этого выигрыш в производительности на практике - хз.

На самом деле можно сразу делать

vgcreate vgrp /dev/sda /dev/sdb
lvcreate --name root -l 50G vgrp /dev/sda
lvcreate --size 50G --snapshot --name snap /dev/vgrp/root /dev/sdb

т.е. явно указывать pv, где создать lv

legolegs ★★★★★ ()
Ответ на: комментарий от SyntaxError

Не знаю, но вроде пять лет назад не ставил.

t184256 ★★★★★ ()
Ограничение на отправку комментариев: только для зарегистрированных пользователей