Этот КБ также применяется. http://support.microsoft.com/kb/162797
You can grow a logical volume online. You'd have to unmount it to shrink it (which requires a LiveCD / Rescue Mode.)
pvresize /dev/sda2
(assuming your LVM partition is sda2
. Replace as required.)lvextend /dev/mapper/root -l+100%FREE
(or, whatever your root logical volume is called.)resize2fs /dev/mapper/root
(assuming ext2/3/4)Did your system really change from 20 to 50 GB? That seems really odd since your sda2 device is ~40GB, lv_root shows 36GB, and swap shows 6GB.
Your output of fdisk -l
shows the total sectors of /dev/sda
is 104857600
. The last sector used by /dev/sda2
is 83886079
. This tells me that you have not adjusted the partition size to use all the available space on the drive. The pvresize command doesn't change the partition table. You need to change the partition table first.
Если физический том LVM находится в разделе, вы не можете изменить его размер без перезагрузки.
Вы можете редактировать раздел таблица на диске, но Linux откажется использовать ее до перезагрузки.
Если вы используете XFS, переключите resize2fs
на xfs_growfs
.
Вы можете отобразить PV. вы используете и LV в группе томов, используя pvs
и lvs
.
pvresize /dev/sda
lvextend /dev/<volume-group>/<lv-name> -L +<size>G
resize2fs /dev/<volume-group>/<lv-name>
Сначала вам нужно изменить размер раздела, используйте parted
, fdisk
или аналогичный инструмент для этого.
Помните, что эти инструменты редактируют только описание, где находятся разделы, они не перемещают данные.
Другими словами, вы можете легко расширить только последний раздел на диске.
Затем перезагрузите компьютер, и после этого вы сможете сообщить LVM, что на нем есть дополнительное пространство:
pvresize /dev/sda2
lvextend /dev/<volume-group>/<lv-name> -L +<size>G
resize2fs /dev/<volume-group>/<lv-name>
Попробуйте testdisk
sudo dnf install testdisk
sudo testdisk
Просто установите файл журнала Затем он перечислит разделы, - выбрать носитель / раздел - затем введите - и проанализировать - быстрый поиск - выберите и напишите
Установите gparted. Запуск от имени root (используйте ssh -X или x2go, если удаленно). Выберите раздел. Он должен показывать свободное пространство за концом (справа). Если это не так, вам необходимо перезагрузить виртуальную машину, чтобы увидеть новый размер виртуального устройства. Это должно быть минимальным временем простоя с systemd.
Щелкните правой кнопкой мыши и выберите изменить размер. Перетащите конец в конец диска. Убедитесь, что вы не касаетесь начала. gparted может перемещать раздел во время изменения размера, но это, конечно, разрушит работающую систему. Но сдвинуть конец - это нормально. Просмотрите ожидающую операцию, которую будет выполнять gparted, чтобы убедиться, что вы расширяете, а не перемещаете раздел. Нажмите "Применить". gparted изменит раздел на диске, а затем вызовет команду ioctl ядра для повторного чтения таблицы разделов, также изменив размер живого блочного устройства. Затем, поскольку он видит, что это LVM PV, он запускает для вас pvresize. Выйдите из gparted, и vgs теперь покажет ваше новое пространство.
Я слышал слухи, что parted может делать все это без накладных расходов на графический интерфейс, но мне так и не удалось разобраться в voodoo. Parted должен быть одним из худших интерфейсов CLI, которые я когда-либо пробовал использовать.
Не используйте fdisk, вы должны удалить и перераспределить раздел для изменения размера, и по умолчанию он стирает подпись LVM2 при записи. Я думаю, что видел «продвинутый» вариант отключения этого деструктивного поведения, но я никогда его не тестировал.
Вы также можете попробовать cfdisk (curses fdisk). У него может быть полезный размер раздела. Достаточно легко запустить pvresize вручную, и есть команда, указывающая ядру, что нужно перечитать таблицу разделов. Но мне пришлось бы протестировать, чтобы убедиться, что он не стирает подпись LVM, как fdisk.
После объединения 25 практических рекомендаций я наконец получил это решение. Для этого не требуется live cd, он полностью на лету.
Шаг 1. Отформатируйте раздел с помощью parted (без графического интерфейса). В этом примере максимальный размер диска увеличился с 8 ГБ до 32 ГБ в виртуальном блоке.
# parted
....
Number Begin End Size Type FileSystem Flags
1 1049kB 1075MB 1074MB primary ext4 boot
2 1075MB 8590MB 7515MB primary lvm
....
(parted) mkpart primary ext2 8590 100%
....
Number Begin End Size Type FileSystem Flags
1 1049kB 1075MB 1074MB primary ext4 boot
2 1075MB 8590MB 7515MB primary lvm
3 8590MB 34,4GB 25,8GB primary ext2 lba
....
(parted) set 3 lvm on
(parted) set 3 lba off
(parted) print
....
3 8590MB 34,4GB 25,8GB primary ext2 lvm
....
(parted) quit
Шаг 2. Создайте физический том на основе нового раздела
# pvcreate /dev/sda3
Physical volume "/dev/sda3" successfully created.
Шаг 3. Добавьте физический том в группу томов. При установке простого сервера Fedora 28 группа томов называется Fedora.
# vgextend fedora /dev/sda3
Volume group "fedora" successfully extended
Шаг 4. Добавьте доступное пространство в группе томов к логическому тому. При установке простого сервера Fedora 28 логический том называется root.
# lvextend -l+100%FREE /dev/fedora/root
Size of logical volume fedora/root changed from <6,20 GiB (1586 extents) to 30,19 GiB (7729 extents).
Logical volume fedora/root successfully resized.
Шаг 5. Укажите файловой системе в логическом томе использовать дополнительное пространство. Файловая система Fedora - xfs.
Команда 'xfs_growfs / dev / mapper / fedora-root' сообщит вам / dev / mapper / fedora-root не является смонтированной файловой системой XFS. Если вы используете другую файловую систему, обратитесь к https://www.tldp.org/HOWTO/LVM-HOWTO/extendlv.html
# xfs_growfs /
data blocks changed from 1624064 to 7914496
Шаг 6. Наслаждайтесь
# df
FileSystem 1K-blocks Used Available used% Mounted on
....
/dev/mapper/fedora-root 31647744 6492840 25154904 21% /
/dev/sda1 999320 125576 804932 14% /boot
....
Я бы посмотрел ssm (system-storagee-manager), если он доступен на вашем дистрибутиве.
Посмотрите на это немного подробнее: https://unix.stackexchange.com/a/293173
ssm, похоже, облегчает изменение размеров логических томов без необходимости делать всё самостоятельно.
Я смог использовать его для расширения своего домашнего раздела после перезагрузки операционной системы и входа в систему в качестве корневого. (Всего пришлось перезагружаться дважды, но в конце концов это сработало, и теперь у меня в /home parition есть дополнительные 50Гб.)
.