Linux LVM - Некоторые заметки

Администрирование linux
Ответить
ustim
Администратор
Сообщения: 130
Зарегистрирован: 03 июн 2021, 09:01
Откуда: Краснодар
Контактная информация:

Linux LVM - Некоторые заметки

Сообщение ustim »

1. Создание LVM
Для начала необходимо создать физический том, для этого инициализируем

Код: Выделить всё

pvcreate /dev/sda
либо на двух дисках

Код: Выделить всё

pvcreate /dev/sda
pvcreate /dev/sdb
Если при инициализации получим ошибку, то уничтожаем таблицу разделов на целевом диске такой командой
dd if=/dev/zero of=/dev/diskname bs=1k count=1
blockdev --rereadpt /dev/diskname
Затем создаем группу томов

Код: Выделить всё

vgcreate vg1 /dev/sda /dev/sdb
Активируем группу томов

Код: Выделить всё

vgchange -a y vg1
Смотрим что мы сделали

Код: Выделить всё

vgdisplay vg1
Теперь создаем логические тома с которыми и будем работать

Код: Выделить всё

lvcreate -n lv1 -L 10G vg1
lvcreate -n lv2 -L 20G vg1
Теперь создаем на них файловую систему

Код: Выделить всё

mkfs.ext4 /dev/vg1/lv1
2. Увеличиваем размер логического диска
Увеличиваем ДО 10ГБ

Код: Выделить всё

lvextend -L10G /dev/vg1/lv1
Увеличиваем НА 10ГБ

Код: Выделить всё

lvextend -L+10G /dev/vg1/lv1
Увеличиваем НА 100% всего оставшегося места

Код: Выделить всё

lvextend -l +100%FREE /dev/vg1/lv1
Ну и напоследок увеличиваем размер файловой системы

Код: Выделить всё

resize2fs /dev/vg1/lv1
3. Уменьшаем размер логического диска
Отмонтируем том, который у нас /var и который будет уменьшать:

Код: Выделить всё

umount /dev/vg1/lv1
Скорее всего будет ошибка вроде этой "target is busy", потому что том используется, для этого делаем так

Код: Выделить всё

umount -l /dev/vg1/lv1
Выполняем проверку файловой системы тома:

Код: Выделить всё

fsck.ext4 /dev/vg1/lv1
Команда должна пройти без ошибок.
Выполняем проверку на наличие ошибок (-f - force):

Код: Выделить всё

e2fsck -f /dev/vg1/lv1
Сначала уменьшаем размер файловой системы тома:

Код: Выделить всё

resize2fs -p /dev/vg1/lv1 30G
Внимание: здесь "30G" - это размер, который мы хотим задать для файловой системы, а не на который мы хотим уменьшить файловую систему.
И только после этого изменяем размер тома LVM:

Код: Выделить всё

lvreduce -L 30G /dev/vg1/lv1
4. Переименовать VG (Volume Group)
НЕ ДЕЛАТЬ ТАК!!!

Код: Выделить всё

vgrename /dev/vg1 /dev/new_vg
5. Переименовать LVM том (логический том)

Код: Выделить всё

lvrename /dev/vg02/lvold /dev/vg02/lvnew
либо так

Код: Выделить всё

lvrename vg02 lvold lvnew
где:
vold - старое имя тома
lvnew - новое имя тома
6. Монтируем раздел
Добавление записи в файл /etc/fstab

Код: Выделить всё

/dev/vg/lv /mnt/имя_папки ext4 defaults 0 2
После добавление записи в файл /etc/fstab монтируем без перезагрузки

Код: Выделить всё

mount -a
7. Восстановление LVM
Бывают случаи, когда вдруг исчез ваш логический том. Исправляем это
Переходим в каталог /etc/lvm/archive, находим последний файл, и проверяем содержание на наличие ранее имеющегося тома
Как только вы найдете нужную запись в выбранном файле, значить мы будем восстанавливать именно этот файл.

Код: Выделить всё

vgcfgrestore  -f /etc/lvm/archive/имя-файла.vg vg
Ну а теперь активируем наш восстановленный том

Код: Выделить всё

lvchange -ay /dev/vg/имя_тома
ustim
Администратор
Сообщения: 130
Зарегистрирован: 03 июн 2021, 09:01
Откуда: Краснодар
Контактная информация:

EXT4 - Изменение процента зарезервированных блоков

Сообщение ustim »

На свежесозданном разделе с Ext4 обычно выделяется заметно меньше свободного дискового пространства чем размер раздела. Это происходит потому, что используется порядка 1,8% на служебные нужды: заголовки групп блоков, бинарные поля для учета свободного места, индексные дескрипторы (i-node), основной и множество резервных копий суперблока.
Также по умолчанию, дополнительно резервируется 5% от объема раздела для нужд учетной записи суперпользователя (root) и системных служб (daemons). Обычно это полезно для системного корневого раздела, но на пользовательских разделах необходимости в этом резерве нет, особенно на разделах большого размера, где 5% превращаются в очень приличные объемы (недоступные пользователю).

Изменение процента зарезервированных блоков для нужд суперпользователя
По умолчанию резервируется 5% от объема раздела или диска. Значение 0 отключает резервирование блоков, значение 5 - устанавливает резервирование на 5%.

Код: Выделить всё

tune2fs -m 0 /dev/имя_диска
Изменение числа зарезервированных под служебные нужды блоков
Значение 0 отключает резервирование блоков, значение 5 - устанавливает резервирование 5-и блоков.

Код: Выделить всё

tune2fs -r 0 /dev/имя_диска
Ответить