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

Изменение размера предварительно установленных и смонтированных разделов рейда для использования LVM

Каждый раз, когда мы заказываем новый сервер у нового провайдера или даже просто с новым дистрибутивом, мы сталкиваемся с несоответствиями. Это означает, что даже если мы выберем минимальный дистрибутив, сервер будет иметь нежелательные конфигурации. В данном случае я говорю о сервере с жесткими дисками 2x4 ТБ, которые поставляются предустановленными в конфигурации raid 1. Рейд вроде тоже толково настроен. lsblkвозвращает следующее:

NAME    MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda       8:0    0   3.7T  0 disk
├─sda1    8:1    0    16G  0 part
│ └─md0   9:0    0    16G  0 raid1 [SWAP]
├─sda2    8:2    0   512M  0 part
│ └─md1   9:1    0 511.4M  0 raid1 /boot
├─sda3    8:3    0     2T  0 part
│ └─md2   9:2    0     2T  0 raid1 /
├─sda4    8:4    0   1.7T  0 part
│ └─md3   9:3    0   1.7T  0 raid1 /home
└─sda5    8:5    0     1M  0 part
sdb       8:16   0   3.7T  0 disk
├─sdb1    8:17   0    16G  0 part
│ └─md0   9:0    0    16G  0 raid1 [SWAP]
├─sdb2    8:18   0   512M  0 part
│ └─md1   9:1    0 511.4M  0 raid1 /boot
├─sdb3    8:19   0     2T  0 part
│ └─md2   9:2    0     2T  0 raid1 /
├─sdb4    8:20   0   1.7T  0 part
│ └─md3   9:3    0   1.7T  0 raid1 /home
└─sdb5    8:21   0     1M  0 part

Как видите, самый большой раздел размером 2 ТБ смонтирован в /. Это означает, что в настоящее время в нем размещается и работает большая часть системы.
Теперь я планирую добавить на сервер уровень абстракции LVM, чтобы иметь больший / лучший контроль над моим хранилищем. Я конечно не могу umount /dev/md2 так как он занят.
Итак, мой вопрос: как мне правильно и безопасно получить доступ к пространству (или его части) на /dev/md2 чтобы добавить его в мою конфигурацию LVM?
Можно ли смонтировать логический том в / если он не был настроен во время установки (из-за образа, а не ручной установки)? Если да, то как не потерять данные при установке LV на /, или, более конкретно, как я могу смонтировать LV в уже существующую папку и «передать» данные внутри?
Я что-то упускаю или делаю неправильно? Любая помощь приветствуется.

Если провайдер предоставляет вам режим аварийной загрузки: перейдите туда, переустановите всю машину с желаемой компоновкой разделов.

Если у вас уже есть данные на машине, вы можете заказать новую, правильно ее настроить и циклически переключать данные и услуги на новую. Теперь переустановите первый ящик и переместите в него данные и службы из другого старого ящика.
Это самый безопасный способ, который я мог представить.

У меня есть другая идея - но это не так уж и безопасно:

выньте sdb из рейда и настройте его согласно вашей схеме разделов. Теперь смонтируйте все эти разделы в / mnt (/ mnt / boot, / mnt / home и т. Д.), Установите новую систему в / mnt (используя debootstrap или аналогичный) и перенесите туда все данные. Настройте grub для загрузки с sdb и перезагрузитесь. Теперь сделайте то же самое с sda и перестройте рейд с sdb на sda, перенастройте / etc / fstab для загрузки с md-узлов снова и перезагрузитесь. Скрестив пальцы вы НИЧЕГО не забыли! (это руководство далеко не завершено, но должно дать вам подсказку, как вы могли бы сделать это без спасательной системы)