Назад | Перейти на главную страницу

Преобразование всего жесткого диска в LVM без внешнего хранилища

Недавно на моем жестком диске емкостью 2 ТБ закончилось место, поэтому я купил еще один, чтобы дополнить его. Мой старый диск смонтирован в определенной папке (без системных файлов и прочего). Технически я мог бы просто создать новую папку и использовать ее в качестве точки монтирования для нового диска, но было бы намного удобнее, если бы я мог использовать LVM для объединения двух дисков так, чтобы была только одна точка монтирования.

Есть ли способ преобразовать мой существующий диск емкостью 2 ТБ в LVM live? У меня нет внешнего хранилища, которое можно было бы использовать в качестве носителя для передачи, и других носителей резервных копий, которых было бы достаточно, поэтому мне нужен способ преобразовать его, не удаляя на нем ничего (а диск заполнен, поэтому я не могу создать новый раздел и используйте его как резервную копию).

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

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

Однако вы говорите, что купили новый диск, так что я предполагаю, что он не менее 2 ТБ, верно? Это дает вам возможность миграции, если вы можете одновременно запустить в системе оба диска.

Во-первых, подключите большой новый диск в качестве второго диска (я предполагаю, что это sata). Он появится в системе как / dev / sdb. Используйте fdisk, чтобы создать на нем два раздела. Один должен быть небольшой загрузочный раздел, гига наверное много. Остальное посвятите новому разделу lvm. Используйте инструменты lvm (pvcreate, vgcreate и т. Д.), Чтобы настроить LVM на этом втором диске. Оставьте небольшой загрузочный раздел пустым.

Выключите машину и отсоедините старый диск емкостью 2 ТБ. Переместите новый диск в основной интерфейс sata или используйте BIOS, чтобы сделать его основным. Загрузите машину с установочного DVD. Установите новую систему Linux только на созданный вами небольшой загрузочный раздел.

После того, как вы это заработаете, повторно подключите исходный диск, теперь уже на вторичном канале sata. Поднимите систему и настройте новую файловую систему на основе LVM как / newdrive (помните, сейчас на / dev / sda). Смонтируйте старый диск где-нибудь вроде /olddrive.

Скопируйте все данные со старого жесткого диска на новый, заполнив команду вроде rsync, чтобы скопировать содержимое / olddrive в / newdrive. Теперь вы переместили все свои данные в новую файловую систему LVM.

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

Когда исходный диск станет пустым, настройте его как LVM-устройство с помощью pvcreate. Затем вы можете использовать vgextend и lvresize для увеличения вашей группы томов LVM на этом новом устройстве. Это можно сделать во время работы системы и не повлияет на ваши данные на новом диске. Как только эта операция будет выполнена, у вас будет группа томов 4 ТБ. Вы можете использовать resizefs в результирующей файловой системе, чтобы она заполнила все пространство.

Обратите внимание, что есть много способов испортить эту операцию, но это выполнимо. Я настоятельно рекомендую вам как-нибудь сделать дополнительные резервные копии. Также обратите внимание, что одна гигантская группа томов, работающая поверх двух отдельных дисков, не очень надежна - если один из дисков выйдет из строя, вы можете потерять много данных. Лучше всего запускать lvm поверх нулевого массива из двух зеркальных дисков. Таким образом вы получаете только 2 ТБ пространства, но отказ одного диска не приводит к тому, что все полностью выходит из строя. Вот как я выполнил миграцию LVM некоторое время назад, для справки.

Другой вариант - установить в машину третий диск и использовать его только для загрузки. Это немного упрощает работу, поскольку вам не нужно создавать отдельные разделы normal и lvm на загрузочном устройстве. На самом деле, современные дистрибутивы Linux могли это исправить, но я знаю несколько лет назад, что загрузчики, такие как grub, не могли работать с lvm, поэтому вам всегда приходилось загружаться с устройства, отличного от lvm.

Да, это можно сделать, это старый вопрос, но мне нужно было ответить, поскольку вы можете преобразовать существующий жесткий диск в LVM, не перемещая данные, и никто не сказал, что это можно сделать. Вам нужно создать один новый раздел LVM на новом диске, а затем запустить pvcreate с -Zn в старой файловой системе, чтобы создать физический том LVM, но не забудьте использовать -Zn при создании vg или lv, иначе вы потеряете все свои данные, и если вы привезли новый жесткий диск на 2 ТБ, ваш общий диск будет 2 + 2 ТБ.