Назад | Перейти на главную страницу

Можно ли расширить файловую систему на не LVM?

У меня есть AMI Amazon Line с двумя дисками, один для root и один для данных,

8G     /
1024G  /data

раздел данных почти заполнен 93% / данные, и я хочу расширить раздел данных, не стирая диск.

Можно ли изменить существующую файловую систему на разделе, отличном от LVM, и превратить ее в логический том LVM без необходимости очистки диска?

Нет, невозможно изменить существующий раздел без LVM на LVM без pvcrating на нем, уничтожая данные на нем. Вам нужно будет сделать что-то вроде:

  1. Получите новый диск 1024 ГБ и vgcrate new_vg /dev/newdisk (заменить new_vg и newdisk при необходимости)
  2. lvcreate -L+100%FREE -n new_lv (заменить new_lv при необходимости)
  3. Отформатируйте и смонтируйте где-нибудь
  4. переместить файлы (возможно, требуется служебное окно)
  5. когда копируется старый диск, его можно размонтировать vgextend new_vg /dev/datadisk (диск, который в настоящее время установлен на /data)
  6. и lvextend -L+100%FREE new_vg/new_lv , затем увеличьте fs: resize2fs /dev/new_vg/new_lv

Либо так, либо сделайте резервную копию файлов, размонтируйте диск и повторите 1-4 (без получения нового диска)

Сделайте снимок диска, а затем создайте новый том большего размера из этого снимка. Если ваш AMI использует cloud-init, он будет автоматически расти, чтобы заполнить его. Если это так, отредактируйте таблицу разделов в fdisk (сделайте раздел настолько большим, насколько хотите), затем перезагрузитесь и используйте resize2fs для изменения размера в оперативном режиме.

Если вы не хотите использовать потенциально трудоемкий путь преобразования LVM, вот другой подход, который может или не может сработать для вас, в зависимости от того, какой макет каталога у вас есть /data.

Используйте точки монтирования! По сути:

  • Получите новый диск на 1024 ГБ
  • Создайте на нем файловую систему (раздел LVM, если хотите)
  • Смонтируйте вашу новую файловую систему где-нибудь во временном месте, например /data/tmp если этого еще не существует
  • Скопируйте какой-нибудь большой каталог вашего /data, Такие как /data/bigdata к /data/tmp
  • Переименовать оригинал /data/bigdata на другое имя, например /data/bigdata.old
  • Создать новый каталог /data/bigdata
  • Размонтировать /data/tmp (ваш новый диск)
  • Установите новый диск поверх /data/bigdata

Хорошо, я признаю, что это далеко не идеально, но что-то подобное нужно было сделать до того, как появились менеджеры томов. Петтер Х имеет лучшее представление в своем ответе, и вам, вероятно, все равно следует последовать этому.