12

В настоящее время я делаю cp -aR для копирования данных с моего (заполненного на 99%) 1 ТБ отформатированного диска ext4 на новый диск LVM-with-ext4-on-it. Это займет вечность.

Есть ли способ попытаться "конвертировать" диск на место? Я на EC2, поэтому резервное копирование занимает минуты.

Или, альтернативно, есть ли способ, который может быть быстрее, чем cp напрямую копировать файловую систему ext4 на диск LVM?

3 ответа3

22

Я написал блоки (née lvmify), которые делают это преобразование на месте. Он работает, немного сжимая файловую систему, перемещая начало файловой системы в конец раздела и копируя суперблок LVM (предварительно настроенный с нужным PV/LV/VG) на его место.

2

Я не уверен, как конвертировать диск в реальном времени, но я думаю, что rsync будет лучшим и более безопасным способом копирования ваших данных. Это позволит вам возобновить и сохранить данные без изменений в случае остановки передачи.

Я обнаружил, что подобный процесс завершается тем, что кто-то добавляет внешний диск в свою локальную систему в качестве LVM. Там не так много информации, но я думаю, что этого будет достаточно, чтобы начать:

«Итак, сегодня я обнаружил, что это потрясающий LVM. Устанавливая Debian, я выбрал« LVM - Использовать весь диск ». Но основным приводом был медленный и маленький 5200rpm ноутбук. Сегодня я вставил свой запасной диск объемом 1,5 ТБ и загрузился. Вместо этого нужна система на этом более быстром диске.

Подход LVM: добавьте /dev /sdc в группу томов, затем запустите «pvmove /dev /sda». Это перемещает все данные из sda на другие диски (доступен только sdc). Не нужно перезагружать, не нужно размонтировать. Пока я пишу это, данные перемещаются.

Позже выполните «vgreduce megatron /dev /sda», чтобы удалить медленный диск из группы томов и вуаля. Данные перемещены. (Мегатрон - это имя группы томов и моего компьютера). Для многих это может быть старой новостью, но я просто подумал, что это действительно круто :)»

Конечно, это было сделано локально, но я думаю, что с дополнительными исследованиями, вы, возможно, сможете это сделать.

источник

2

Не существует способа сделать такое преобразование LVM «на лету».

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

Что вам нужно будет сделать, это сделать резервную копию или архивировать данные на этом устройстве, затем уничтожить существующую файловую систему, создать логический том и переместить файловую систему поверх. Если это корневая файловая система в ОС Linux, рассмотрите возможность переустановки. Это может быть быстрее.

Для более быстрых копий мне нравится dd , но я не часто его использую. Ошибиться с dd опасно. Одна вещь, которую вы можете попробовать, это tar czv <source fs> | (cd <destination fs>; tar x) который будет передавать сжатый файл tar на лету.

Удачи!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .