====== Общая информация ======
===== Инициализация =====
^ Команда ^ Значение ^
| **%%pvscan%%** | //Сканирование дисков на предмет наличия физических томов// |
| **%%vgscan%%** | //Сканирование дисков на предмет наличия групп томов// |
| **%%lvscan%%** | //Сканирование дисков на предмет наличия логических томов// |
| **%%pvchange%%** | //Изменение атрибутов физических томов// |
| **%%vgchange%%** | //Изменение атрибутов групп томов// |
| **%%lvchange%%** | //Изменение атрибутов логических томов// |
----
**pvchange**
**Дополнительные примеры:** \\
\\
# Назначить физическому тому новый, случайный ID
pvchange -u /dev/sda2
----
**vgchange**
**Дополнительные примеры:** \\
\\
# Проверить диски на наличие групп томов
vgscan
# Активировать все найденные группы томов
vgchange -a y
----
**lvchange**
^ Ключ ^ Значение ^
| **%%-a, --available [y|n|ey|en|ly|ln]%%** | //Управление доступностью логических томов для их использования. Взаимодействует с драйвером device-mapper, находящимся в ядре, посредством библиотеки libdevmapper для активации (**-ay**) или деактивации (**-an**) логических томов.
Если включено блокирование на уровне кластеров, опция **-aey** включает исключительную блокировку одного узла, а опция **-aly** включит блокировку только локального узла. Для отключения только на локальном узле, воспользуйтесь опцией **-aln**. Логические тома с мгновенными снимками в пределах одного компьютера всегда блокируются в эксклюзивном режиме, поскольку они могут использоваться одновременно только в пределах одного узла// |
| **%%-C, --contiguous {y|n}%%** | //Попытка задать или сбросить политику выделения непрерывного пространства для логических томов. Возможно поменять политику выделения пространства по кускам на политику непрерывного выделения лишь в том случае, если физические блоки уже непрерывны// |
| **%%--resync%%** | //Заставляет выполнить повторную синхронизацию зеркала. Обычно подробности использования этой опции не должны вас волновать, поскольку синхронизация происходит автоматически. Данные читаются из первичного устройства зеркала и копируются на другие, так что это может занять значительное количество времени - и в это время избыточная копия данных будет недоступна// |
| **%%--minor minor%%** | //Задать младший номер устройства// |
| **%%--monitor {y|n}%%** | //Управляет, будет ли наблюдаться зеркальный логический том демоном **dmeventd**, если он был установлен. Если на используемом устройстве будут замечены сообщения об ошибках ввода-вывода при зеркалировании, ошибки будут обработаны в соответствии с **mirror_image_fault_policy** (политикой обработки ошибок зеркалирования образов) и **mirror_log_fault_policy** (политикой журналирования ошибок зеркалирования), заданными в **lvm.conf**// |
| **%%--ignoremonitoring%%** | //Не предпринимать попыток взаимодействия с **dmeventd**, если не указана опция **--monitor**. Не используйте эту опцию, если dmeventd уже наблюдает за устройством// |
| **%%-M, --persistent {y|n}%%** | //Если задан y, то сделать указанный младший номер постоянным// |
| **%%-p, --permission {r|w}%%** | //Изменяет права доступа на только-чтение %%(r)%% или чтение-запись %%(w)%%// |
| **%%-r, --readahead {ReadAheadSectors|auto|none}%%** | //Задаёт количество секторов для чтения логического тома. Для групп томов с метаданными в формате lvm1 это значение должно находиться между 2 и 120 секторами. По умолчанию используется значение "**auto**", которое позволяет ядру выбирать подходящее значение автоматически. Значение "**none**" равнозначно указанию нуля// |
| **%%--refresh%%** | //Если логический том активен, перезагрузить его метаданные. Обычно это не требуется, но может пригодиться если что-то идёт не так или если вы воспользовались ручной кластеризацией, а не кластеризованным менеджером блокировок// |
**Дополнительные примеры:** \\
\\
# Том lvol1 в группе томов vg00 будет переключен в режим только-чтение
lvchange -pr vg00/lvol1
----
===== Вывод подробной информации =====
^ Команда ^ Значение ^
| **%%pvdisplay%%** | //Вывод информации о физических томах// |
| **%%vgdisplay%%** | //Вывод информации о группах// |
| **%%lvdisplay%%** | //Вывод информации о логических томах// |
**Дополнительные примеры:** \\
\\
# Вывод подробной информации о всех физических томах
pvdisplay
# Вывод подробной информации о конкретном физическом томе
pvdisplay /dev/sda5
# Вывод подробной информации о всех группах
vgdisplay
# Вывод подробной информации о конкретной группе томов
vgdisplay lvhdd
# Вывод подробной информации о всех логических томах
lvdisplay
# Вывод подробной информации о конкретном физическом томе
lvdisplay /dev/lvhdd/lvhome
----
====== Работа с физическими томами (PV) ======
----
====== Работа с логическими дисками (LV) ======
===== Изменение размера раздела =====
Изменить размер раздела /dev/lvhdd/lvhome и ФС до 500G:
lvresize -L 500G -r /dev/lvhdd/lvhome
----
===== Увеличение раздела =====
Добавить разделу /dev/lvhdd/lvhome 50Гб и растянуть ФС при помощи lvresize :
lvresize -L +50G -r /dev/lvhdd/lvhome
----
===== Уменьшение раздела =====
Отнять у раздела /dev/lvhdd/lvhome 50Гб и изменить размер ФС при помощи lvresize :
lvresize -L -50G -r /dev/lvhdd/lvhome
----
===== Создание раздела =====
Смотрим, сколько дискового пространства свободно:
vgs
VG #PV #LV #SN Attr VSize VFree
lvhdd 2 1 0 wz--n- 1,40t 934,69g
Создаём новый раздел:
lvcreate -L 100G -n LVNAME VGNAME
**-L 100G** - точный размер раздела; \\
**-n LVNAME** - имя раздела; \\
**VGNAME** - имя группы, в которой создаём раздел.\\
\\
Вместо флага **-L** можно использовать **-l** для того, чтобы указать размер в процентах. \\
Например:
lvcreate -l 100%FREE -n LVNAME VGNAME