
у нас есть разные машины Linux и каждой машине Linux нужен свой размер раздела
Чтобы расширить корневую файловую систему или файловую систему var с помощью скрипта, мы можем использовать следующий lvextend
синтаксис, с переменной как -PARTITION_VAL_SIZE
PARTITION_VAL_SIZE=100
lvextend -L"$PARTITION_VAL_SIZE"G /dev/vg-data/lv-var
PARTITION_VAL_SIZE=30
lvextend -L"$PARTITION_VAL_SIZE"G /dev/vg-data/lv-root
.
.
PARTITION_VAL_SIZE=50
lvextend -L"$PARTITION_VAL_SIZE"G /dev/vg-data/lv-var
PARTITION_VAL_SIZE=20
lvextend -L"$PARTITION_VAL_SIZE"G /dev/vg-data/lv-root
.
.
поскольку мы используем значения в GIGA, то мы добавляем «G» по lvextend
команде
можем ли мы сделать это лучше? или наш подход достаточно хорош для того, чтобы увеличить раздел Linux с помощью переменной?
решение1
Проверка документации с помощью man lvextend
,
-L|--size [+]Size[m|UNIT]
Указывает новый размер LV. Параметры--size
и--extents
являются альтернативными методами указания размера. […] При использовании префикса плюс+
или минус-
значение не является абсолютным размером, а является относительным и добавляется или вычитается из текущего размера.
Также с той же страницы,
Size[UNIT]
Size
— это входное число, которое принимает необязательную единицу измерения. Входные единицы всегда рассматриваются как базовые два значения […].UNIT
представляет другие возможные входные единицы: […]g
|G
— это ГиБ […].
Итак, когда вы пишете:
PARTITION_VAL_SIZE=100
lvextend -L"$PARTITION_VAL_SIZE"G /dev/vg-data/lv-var
Вы должны знать, что оболочка расширит это до:
lvextend -L100G /dev/vg-data/lv-var
И это значитизменить размер раздела до 100 Гибибайт. Этонеиметь в видурасширить раздел еще на 100 Гибибайт. Помните, что GiB > GB, но если вы уже думаете о размерах в терминах 2 n , а не 10 n, то все будет в порядке.
В качестве предпочтения я бы рекомендовал использовать --size
here вместо -L
. Это то же самое, но легче читать:
lvextend --size 100G /dev/vg-data/lv-var