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

Можно ли постфактум преобразовать Linux в LVM?

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

Можно ли без переустановки преобразовать существующую систему в LVM? Если да, то какие инструменты могут выполнить эту работу?

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

Да, это можно сделать.

Да, вы можете использовать его для системы Windows с двойной загрузкой, при условии, что вы сделаете Windows первым разделом, а это основной раздел (не расширенный внутри логический). Мои инструкции здесь не охватывают эту ситуацию, для которой требуется некоторый опыт работы с двойной загрузкой. Если вам нужна установка Windows / Linux с двойной загрузкой, не следуйте никаким советам ниже.


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

Предупреждение! Это ОЧЕНЬ ОПАСНО! Предполагается, что вы хорошо знакомы с процессом разбиения на разделы, у вас есть отдельный раздел / boot и вы знать неудачная попытка может привести к повреждению мозга установки, КОТОРАЯ НЕ ЗАГРУЖАЕТСЯ! ВЫ БЫЛИ ПРЕДУПРЕЖДЕНЫ!

Тебе понадобиться:

  • / boot находится в отдельном разделе. Если у вас комбинированная корневая файловая система (все вставлено в /), это не сработает.
  • Возможность загрузки с жесткого диска USB.
  • внешний диск, достаточно большой, чтобы вместить все данные и программы вашей существующей системы. Обязательно запустите "du /" и дождитесь конечного результата, чтобы по-настоящему почувствовать, какое пространство вам нужно.

Общая процедура (простите за отсутствие нескольких команд, я пишу это очень быстро):

  1. Подключите внешний диск и найдите его имя устройства. Представим, что вы видите это как / dev / sdb.
  2. Создайте два раздела на внешнем диске. В нашем примере это будет отображаться как / dev / sdb1 и / dev / sdb2.

    разделенный / dev / sdb

  3. Отформатируйте первый раздел как ext2 или ext3 и пометьте его как «boot». Отформатируйте второй раздел на внешнем диске как тип «Linux LVM».

  4. Получите новый том LVM, распознанный системой, используя

    pvscan; vgscan

  5. Вырежьте достаточно большой кусок внешнего тома LVM, чтобы он мог вместить весь жесткий диск ноутбука. Если сомневаетесь, просто используйте все доступное пространство.

  6. Отформатируйте свой том на основе LVM как ext3 или любую другую файловую систему, которая вам нравится.

    mke3fs / dev / ExternalUSBVolume / ExternalRoot

  7. Для каждого неспециальный при монтировании файловой системы создайте каталог на внешнем диске и скопируйте (с атрибутами) все ваши файлы в каждом монтировании на этот диск. Игнорируйте копии точек монтирования, такие как / proc и т. Д., Поскольку они «особые».

  8. вручную создайте специальные точки монтирования, чтобы они существовали на вашем внешнем диске. Не заполняйте их, просто убедитесь, что имена и разрешения совпадают.
  9. (Очень осторожно) используйте загрузчик, чтобы установить загрузочный образ на внешний диск в раздел / boot. Этот процесс немного сложен, поэтому я оставлю вам поиск информации в другом месте. Это также опасно, если вы его испортите - вы можете попытаться перезаписать загрузчик на диске ноутбука. Быть осторожен.
  10. Перезагрузите ноутбук. Когда он проходит через POST, обязательно укажите внешний диск в качестве загрузочного. На данный момент у вас должна быть (более или менее) копия диска вашего ноутбука. (другим администраторам: да, я знаю, файлы журналов и другие файлы не скопированы на 100%, но не в этом акцент ... это на перенос данных и инструментов ...)
  11. После того, как вы сможете загрузиться с внешнего диска, вы можете использовать его для очистки диска ноутбука. На этом этапе вы «живете за счет» внешнего диска. Имейте это в виду.
  12. Затем используйте редактор разделов - gparted или что-то еще - для удаления исходных разделов портативного компьютера (пока, данные ...), затем отметьте новую область как «LVM». Пройдите процесс распознавания, разбиения, форматирования и т. Д. Тома LVM.
  13. Используя процесс зеркалирования LVM, отразите вашу действующую систему (которая в настоящее время находится на внешнем диске) обратно на диск ноутбука. Сделайте для этого перерыв (или два) на обед, так как это займет время.
  14. Перемонтируйте живую файловую систему, переместив / filesystem с внешнего диска на том LVM вашего ноутбука.
  15. Повторно запустите процесс установки загрузчика. Это очень важно, так как текущий RAM-диск не будет иметь правильных настроек и не будет знать, что вы что-то перемещали. Если этого не сделать, система не загрузится и произойдет обращение к аварийному диску. Если ничего не помогает, вы можете снова загрузиться с внешнего диска (ничего не потеряно ...)
  16. Перезагрузите ноутбук без подключенного внешнего диска, указав вместо него внутренний диск. Он должен нормально загрузиться. Отметьте все, что кажется, выглядит поврежденным или сломанным (ничего не должно быть), и исправьте это.
  17. Устройтесь поудобнее и насладитесь напитком за хорошо выполненную работу.

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

Самый простой способ перенести Linux-систему на LVM - использовать внешний диск (USB, eSATA) и систему на основе CD-ROM, например грмл чтобы переместить все данные с ПК на внешний диск, затем переразметьте ПК с помощью LVM. Наконец, скопируйте все обратно, настройте и переустановите grub в MBR.

Эта процедура немного сложна, но у вас всегда есть данные на внешнем диске и компакт-диске для загрузки вашей системы.

Как и следовало ожидать, Windows не имеет доступа ни к каким томам LVM.

Начиная снизу: нет, окна не могут читать логические тома (разделы) LVM.

Если у вас есть запасной диск, который можно использовать в качестве временного хранилища, это просто вопрос загрузки с live CD, копирования данных во временное расположение, создания одного или нескольких LV и возврата данных. Непрактично (но возможно) выполнить преобразование в LVM на месте; вам в основном нужно сжать старый раздел и несколько раз изменить размер LV (и последний LV будет фрагментирован)

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

Если вы не можете этого сделать, потому что не знаете, где находятся ваши данные, у вас большая проблема, и это ваш шанс ее решить.

http://serialized.net/2006/04/migrating-live-filesystems-to-lvm/ есть интересный способ переноса live fs. Добавьте его как часть группы RAID-1, которую ОС затем отразит на другом устройстве (которое может быть логическим томом LVM). Это немного устарело, поэтому я не знаю, будет ли это работать.

Вероятно, вам придется сделать резервную копию данных на другом диске или разделе (или ISO?), Создать контейнер LVM, а затем восстановить данные в контейнер.