Установка Debian/Формирование конфигурации LVM

Материал из Викиучебника — открытых книг для открытого мира
Перейти к навигации Перейти к поиску

Стоит, пожалуй, отметить, что создание таблицы разделов, конфигурации LVM, и формирование ФС на разделах и логических томах — представлены в D-I единым этапом. Этот же этап включает и подготовку подходящего fstab(5) для целевой системы. С точки зрения использования системы общего назначения, однако, эти этапы разделены, и в данном разделе мы рассмотрим в отдельности.

Инициализация физических томов и объединение их в группы[править]

Инициализировать физические тома LVM и объединить их в группу можно подобно (предполагая именем целевой системы bakau.example.org; раздел №14 tail из примера с parted(8) оставляем в качестве еще одного, весьма скромного, резерва):

# pvcreate -- /dev/sdX{[5-9],1[0-3]} 
# vgcreate -- vgbakau-i /dev/sdX{[5-9],1[0-3]} 

Разумеется, вовсе не обязательно объединять в группу (или группы) все физические тома данного носителя, или даже инициализировать их. Однако, эти действия необходимы для «появления» соответствующего пространства в списках # vgs и # pvs (соответственно.)

Определенный интерес может представлять, однако, выделение несущих системные ФС (/, /var) томов (и, следовательно, их будущих «мгновенных копий», или snapshots, если таковые потребуются) в отдельную группу. Отведем под нее GPT-раздел №6 medium-1 и изменим вызов vgcreate(8) выше на:

# vgcreate -- vgbakau-sys-i /dev/sdX6 
# vgcreate -- vgbakau-u-i   /dev/sdX{[57-9],1[0-3]} 

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

С другой стороны, объединение в одну группу физических томов, размещенных на различных физических носителях, хотя и возможно, может оказаться не лучшей идеей. (В случае, если рассматриваемая группа будет содержать «системные» разделы, это особенно нежелательно, поскольку любое обращение к логическим томам группы, а значит и загрузка системы, окажутся невозможными при недоступности любого из таких физических носителей — вне зависимости от того, размещены ли на нем фактически данные искомых логических томов.)

Создание логических томов и инициализация файловых систем[править]

Создадим теперь логические тома LVM и инициализируем на них нужные нам системные и пользовательские ФС, для чего воспользуемся следующим несложным Shell-кодом.

#!/bin/bash
### mklv.sh  -*- Sh -*-

set -e -x

## Usage:
##   bash mklv.sh VOLUME-GROUP PHYSICAL-VOLUME [LOGICAL-VOLUME,SIZE]...

## Example:
##   bash mklv.sh vgfoo-i /dev/sdXX lvbar,14G lvqux,42G 

vg=${1}
pv=${2}
shift 2

for i ; do
    lv=${i%%,*}.new
    sz=${i#*,}
    f=/dev/${vg}/${lv}
    lvcreate -L "$sz" -n "$lv" "$vg" "$pv"
    mke2fs -j -- "$f" \
        || break
    lvrename "$f" "${f%.new}" \
        || break
done
vgs -- "$vg"
### mklv.sh ends here
# bash mklv.sh vgbakau-i /dev/sdX7 lvroot,8G lvvar,4G lvhome,48G 

Или же, если системные ФС вынесены на тома отдельной группы:

# bash mklv.sh vgbakau-sys-i /dev/sdX6 lvroot,8G lvvar,4G 
# bash mklv.sh vgbakau-u-i   /dev/sdX7 lvhome,56G 

Файловая система /home/storage[править]

Вспомним, однако, что почти наверняка существенную часть имеющегося на носителе пространства займут данные, которые несложно тем или иным способом восстановить (получив с HTTP-сервера, через сеть BitTorrent, или иначе). Создание резервных копий этих данных не является столь уж важной задачей, поэтому под их хранение можно выделить отдельную ФС:

# bash mklv.sh vgbakau-u-i   /dev/sdX8 lvstorage,56G 

которую можно сразу же расширить на соседний физический том:

# lvextend -L 120G -- /dev/vgbakau-u-i/lvstorage /dev/sdX8 /dev/sdX9 
# resize2fs -- /dev/vgbakau-u-i/lvstorage 

Впоследствии, для этой ФС можно будет реализовать особый регламент резервирования.

(Возможность изменять размеры логических томов, наряду с возможностью «на горячую» увеличивать размеры некоторых ФС, включая Ext3+, является, по мнению автора, ключевой при управлении долговременными носителями информации в современном системном администрировании.)

Файловая система /var/cache[править]

Можно отметить, кроме того, что создание резервных копий для /var/cache также может следовать иным, отличным от таковых для /var, правилам, что может побудить к созданию еще одной ФС (на которой, при необходимости, можно разместить и такие данные, как, например, кэш Squid), подобно:

# bash mklv.sh vgbakau-u-i   /dev/sdX9 lvvarcache,7G 

См. также[править]