Перейти к содержанию

Partmgr

Каталоги локального хранилища и каталог журналов узла при необходимости возможно без приостановки работы системы перемещать на другое локальное блочное устройство или расширять с участием дополнительных локальных блочных устройств. Эта операция производится из CLI узла.

Предварительные условия:

  1. Каталог, требующий расширения или перемещения, должен представлять собой файловую систему на отдельном логическом томе (LV) на некоторой группе томов (VG). Это достигается, например, при стандартной процедуре разбивки дисков инсталлятора Space. Расширение и перемещение для файловых систем на простых разделах диска не поддерживается.
  2. при перемещении устройство назначения, на которое требуется переместить каталог, должно являться локальным блочным устройством (SCSI/SAS/SATA диск или логический диск локального RAID контроллера) и иметь объём, достаточный для размещения каталога целиком вне зависимости от объёма, занятого данными, плюс несколько Мбайт для разметки. То есть, например, если каталог имеет размер 80GB, а полезных данных там 100 МB, то устройство назначения должно быть не менее 80 GB.
  3. Следует учесть, что на данный момент доступно только расширение, но не сжатие. То есть если расширили каталог журналов с подключением дополнительного накопителя, то обратно отключить этот накопитель можно будет лишь скопировав весь расширенный каталог на ещё какой-то третий накопитель, а потом исключив первый дополнительный накопитель.

Просмотр состояния разделов и накопителей.

Производится командой CLI system partmgr info. При этом выводится информация об именах LV, VG, на которых находятся разделы локального хранилища и журналов, занимаемых этими разделами PV, а также общая информация о размерах и свободном месте на VG и LV этих разделов. Также выводятся сведения о свободных (неразмеченных) локальных накопителях и их размерах. Для предварительной очистки накопителей при помощи CLI Space можно использовать команду CLI wipefs.

Перенос раздела на другой накопитель.

Производится командой CLI system partmgr move -d <устройство_назначения> <раздел>. Раздел журналов обозначается как log, а локального хранилища как local.

Например, чтобы перенести на локальное устройство /dev/sdc раздел журнала, нужно выполнить команду

system partmgr move log -d /dev/sdc

При этом на весь объём устройства создаётся LVM PV, на которое расширяется VG, принадлежит LV требуемого раздела. Далее на это PV переносится LV с требуемым разделом. Размер раздела остаётся прежним, его можно при необходимости расширить (см.ниже).

Info

При стандартной процедуре разбивки диска инсталлятором Space создаётся VG sys_vg01, общая для раздела журнала, системы, свопа и локального хранилища. LV локального хранилища называется local_storage, LV раздела журналов -- log_storage.

Расширение раздела.

Производится командой CLI system partmgr expand -s <приращение размера, MiB> -d <дополнительное устройство> <раздел>. Разделы обозначаются, как и при перемещении.

Если размер не указан, тогда берётся весь доступный размер с учётом указанного устройства. Если не указано и устройство, тогда берётся весь доступный свободный размер системной VG. (или VG данного раздела, если при установке системные разделы зачем-то размещены на разных VG)

Например, для увеличения раздела локального хранилища на 2TiB с применением устройства /dev/sdd команда имеет вид

system partmgr expand local -d /dev/sdd -s 2048

Логика работы команды: если на существующей VG, которой принадлежит LV, достаточно места для заданного приращения размера, то происходит просто растяжение соответствующей LV с изменением размера файловой системы. Если же места недостаточно, то подключается указанное устройство, на котором создаётся PV, далее системная VG расширяется на всё устройство, и далее растяжение нужной LV с разделом.

Отключение неиспользуемых PV от системных VG.

В результате каких-то манипуляций с перемещением разделов возможно, что системная VG будет находиться на нескольких PV, часть из которых свободна, но простое отключение их приведёт к ошибкам в работе системы. Для информации о занятости PV можно выполнить команду из CLI

pvs -o name,vg_name,lv_name

PV с пустым lv_name можно исключить из VG.

Для этого существует команда CLI

system partmgr reduce

без параметров.

Сообщения типа Removed "/dev/vdg1" from volume group "sys_vg01" говорят о том, что соответствующее устройство можно изъять или очистить командой wipefs и использовать для чего-то ещё.