У меня есть диск на 400 ГБ с разделом ext4 на 320 ГБ. Я хотел бы расширить раздел ext4, чтобы использовать оставшееся пространство (80 ГБ свободного места).
+--------------------------------+--------+
| ext4 | Free |
+--------------------------------+--------+
Как я мог это сделать?
Я видел, как люди используют эту функцию resize2fs
, но не понимаю, изменяет ли она размер раздела.
Другим решением было бы использовать , fdisk
но я не хочу удалять свой раздел и терять данные. Как я мог бы просто увеличить раздел, не теряя ни одного файла?
Примечание: я говорю о несмонтированном разделе данных без LVM, и у меня есть резервные копии, но я бы не хотел тратить время на восстановление.
решение1
Вы должны начать с размонтированного раздела. Если вы не можете размонтировать его (например, это ваш корневой раздел или что-то еще, что нужно системе для работы), используйте что-то вродеCD-диск для восстановления системывместо.
Запустите
parted
, илиgparted
если вы предпочитаете GUI, и измените размер раздела, чтобы использовать дополнительное пространство. Я предпочитаю,gparted
так как это дает вам хорошее графическое представление, очень похожее на то, что вы нарисовали в своем вопросе.resize2fs /dev/whatever
e2fsck /dev/whatever
(просто чтобы узнать, в безопасности ли вы)Перемонтируйте раздел.
Хотя я ни разу не видел, чтобы это приводило к сбоям, все же сначала сделайте резервную копию своих данных!
решение2
growpart
Пример использования resize2fs
:
Обратите внимание на пробел между
/dev/sda
и 1
в случае growpart /dev/sda 1
:
Вот две команды:
growpart /dev/sda 1
resize2fs /dev/sda1
$ growpart /dev/sda 1
CHANGED: partition=1 start=2048 old: size=39999455 end=40001503 new: size=80000991,end=80003039
$ resize2fs /dev/sda1
resize2fs 1.45.4 (23-Sep-2019)
Filesystem at /dev/sda1 is mounted on /; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 5
The filesystem on /dev/sda1 is now 10000123 (4k) blocks long.
Если это не работает так, как ожидалось, это может быть связано с расширенным разделом, в этом случае следует применить следующий ответ:https://unix.stackexchange.com/a/687489/124109
решение3
Да, вы можете расширить EXT4 fs онлайн, если у вас уже отсортированы разделы. У вас есть отсортированные разделы? У вас есть LVM?
sudo resize2fs /dev/drive_to_grow
fdisk
изменит размер вашего раздела, правда, но если это корневой раздел (или любой смонтированный раздел), его придется сначала размонтировать. Так что, скорее всего, офлайн!
Как и во всем, что касается операций с дисками/фс, я настоятельно рекомендую иметь резервную копию, а также проверенный и хорошо понятный процесс восстановления.
решение4
Принятый ответ несколько устарел: изменение размера файловой системы ext4 лучше сделатьВ сетиа не офлайн, поскольку путь кода расширения онлайн используется гораздо чаще, чем офлайн.
Вероятно, сложнее всего будет расширить базовый раздел, если только вы не используете LVM.иу вас есть свободное место в вашей группе томов. Чтобы расширить раздел в режиме онлайн, вы можете использовать fdisk
или parted
; затем вам нужно запустить , kpartx <device>
чтобы сообщить ядру об изменении. Если вы используете LVM, вам нужно pvresize
только что измененный раздел перед lvresize
томом.
Наконец, вы можете выпустить resize2fs
свою файловую систему.