Изменение размера разделов LVM на работающем сервере CentOS 6

Изменение размера разделов LVM на работающем сервере CentOS 6

На данный момент у меня есть следующие разделы:

  ACTIVE            '/dev/vg_server/lv_root' [50.00 GiB] inherit
  ACTIVE            '/dev/vg_server/lv_home' [1.76 TiB] inherit
  ACTIVE            '/dev/vg_server/lv_swap' [5.86 GiB] inherit

Я хотел бы уменьшить lv_homeраздел, который почти пуст, и увеличить lv_rootраздел, поскольку он приближается к заполнению. У меня есть полная резервная копия, но я хотел бы сделать это на живом сервере, на котором у меня нет возможности использовать Live CD.

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

решение1

Основная проблема — избежать необходимости использовать резервные копии. Если lv_homeдействительно «почти пусто»,

  • вы можете уменьшить его (изменить размер файловой системы, а затем уменьшить логический том) и
  • используйте освободившееся пространство для временного тома для копирования lv_home.
  • Затемсуществующее lv_homeпустует, и вы можете снести его, расширить lv_rootпо мере необходимости и
  • наконец (если lv_homeестьДействительно(поначалу он был небольшим), переместите содержимое временного тома обратно в ту часть пустого пространства, которая вам не нужна lv_root, и объедините его с временным пространством.

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

Теперь - вопрос OP не упоминал, находятся ли все базовые файловые системы на одном физическом диске, и находятся ли их разделы на диске в том же порядке. Если они все находятся на одном физическом диске, возникает вопрос, разбивается ли он с помощью MBR (максимум четыре физических раздела) или GPT (128) -- см. напримерВ чем разница между MBR и GPT?. В первом случае OP, возможно, придется создать расширенный раздел в качестве основы для измененного lv_homeраздела.

LVM по сути представляет собой три слоя: физический, тома и логический. Чтобы все было аккуратно, неплохо иметь физические диски рядом. Но LVM не требует этого. Можно сжать lv_home(и его файловую систему и физический раздел) за один шаг, а затем создать новый физический раздел в пространстве на конце, добавив этот раздел в группу томов, соответствующую, lv_rootи затем запуститьresize2fsдля расширения файловой системы. Увеличение размера широко практикуется; уменьшение — гораздо реже — до недавнего времени в документации были предостережения, объясняющие, что с помощью этого инструмента можно испортить файловую систему.

Это может быть полезно:

решение2

Использование lvextendedкоманды для изменения размера логического тома:

lvextend -l +4607 /dev/vg_home/LogVol01
resize2fs /dev/vg_home/LogVol01

Я предлагаю почитать концептуально оизменение размера и уменьшение lvm на этом сайте.

Связанный контент