Вот как читать пользовательский ввод с помощью awk:
awk '
BEGIN {
printf "Enter an ID: "
# "-" is the filename for stdin
getline id < "-"
}
# then we can use that value however we like
$1 == "--" && $2 == id {getline; print}
' file
Это всего лишь артефакт того, как lsblk
отображает устройства, состоящие из нескольких частей. Общий размер centos-root
логического тома LVM составляет 150 ГБ, но точно анализируя, какая его часть физически расположена на sda2
и какая в sda3
потребовало бы подробного изучения отображений LVM, и, по-видимому, lsblk
не анализирует конструкции LVM настолько глубоко.
Сумма текущих размеров centos-root
, centos-swap
и centos-home
, кажется, составляет 199G, что является в точности суммой текущих размеров sda2
и sda3
.
Вы увидите тот же эффект с программными наборами RAID0 или RAID5.Использование lsblk -s
, чтобы показать сначала файловую систему -, содержащую конструкции, а затем разбивку физических устройств, из которых они состоят, может быть поучительным альтернативным представлением здесь.
Вы должны использовать growpart
или parted
для расширения sda3
, так как это раздел, который физически расположен рядом со свободным пространством. В более старых версиях RHEL/CentOS вам может понадобиться partprobe /dev/sda3
, чтобы указать ядру повторно -определить размер раздела, но современные инструменты определения размера раздела должны обрабатывать это автоматически.
Следующим шагом будет pvresize /dev/sda3
автоматическое расширение PV LVM в соответствии с новым размером раздела, в котором он расположен. Это даст вам свободное место в группе томов LVM (, которую можно просмотреть с помощью lvs
или vgdisplay
), который затем можно использовать для расширения существующих логических томов или для создания новых.
Например, чтобы добавить 20 ГБ дополнительного пространства в файловую систему /home
, вы можете:
lvextend -r -L +20G /dev/mapper/centos-home
С опцией -r
(, доступной в CentOS 7 и новее ), размер файловой системы будет автоматически изменяться вместе с LV.
(Поскольку ваша файловая система /boot
выглядит как XFS, я думаю, что мне не нужно беспокоиться о CentOS 6.x и более ранних версиях.)
Если вас беспокоит изменение размера существующих разделов (старой школы ), вы также можете использовать новое пространство для создания нового раздела/dev/sda4
(с parted
или аналогичным ), установите его тип/флаг на lvm
, а затем инициализируйте его для использования LVM и добавьте в существующую centos
группу томов:
pvcreate /dev/sda4
vgextend centos /dev/sda4
После этого следует шаг lvextend
, как описано выше.
Конечный результат несколько менее эстетичен, чем при расширении существующего раздела, но заметной разницы в производительности быть не должно.