Вход:  Пароль:  
FreeSource: AlexeyBorovskoy/Projects?/InstallOnLvmOverRaid ...
Free Source | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация |

Установка Мастера 2.4 на LVM поверх RAID

Необходимые инградиенты

Немного теории

Инсталляция

Основная идея такова:

Разбиение дисков

Предположим что два наших диска определились как sda и sdb.


Диск sda разобъем на два раздела:


Диск sdb разобъем на шесть разделов:


Разделы sda1 и sdb1 объединим в RAID1 и назовем его md0. На нем будет жить корневая ФС.

Монтируем разделы

Форматируем разделы в XFS и монтируем их следующим образом:

Инсталляция системы и перезагрузка

Устанавливаем систему как обычно.


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

Эта бага появляется при установке на SATA (через libata). Бага стабильная, у меня она вылезла уже на четырех инсталляциях.

Настройка

Если не получается загрузится в первый раз (обычно при этом нет образа initrd), то загружаетесь с болванки в режиме rescue и с помощью chroot /mnt попадаете в систему.

Установка загрузчика

Создаем /etc/lilo.conf со следующим содержимым:


Затем тестируем конфигурацию:

И устанавливаем загрузчик:


Внимание
Для XFS загрузчик прописывается только в MBR, иначе убьем ФС. У XFS с самого начала раздела лежит суперблок, загрузчик писать некуда.

Настройка MD

Создаем /etc/raidtab со следующим содержимым:

Внимание
Раздела sdb2 еще нет (на его месте лежат временные разделы), поэтому md1 будет создан в виде половинки зеркала. failed-disk нужен для правильного создания md1.


Создаем md1 в виде половинки зеркала:


Делаем неактивными две строки в /etc/raidtab:


Проверяем состояние md0 и md1 следующим образом:

Зеркало на md0 должно быть целым, а на md1 в виде половинки.

Пересоздание initrd

Может случится так, что при установке не был сгенерирован initrd. Да и лишний раз не помешает его пересоздать вручную, так спокойнее будет.
В нашем случае структура linuxrc внутри initrd должна быть следующей:


При создании initrd есть возможность залесть во внутрь образа и что-нибудь в нем поправить. Для этого существует ключ --pause у mkinitrd.


Создаем initrd следующим образом:

Обновляем пакет startup

Берем из backports пакет startup (надо не забыть его туда положить) и обновляем существующий в системе.
Почему так? Причины просты:

Перезагружаемся

Перезагружаемся в режиме single. Для этого в промпте lilo говорим следующее:

Заходим в систему рутом и приступаем к созданию LVM.

Создание LVM

Исходные данные следующие:


Сначала проинициализируем lvm:

Затем создадим PV:

Создаём том lvm0 (вообще-то это группа томов aka VG, но так короче):


Теперь lvm0 необходимо распилить на кусочки.

Распиливаем lvm0

Нам надо перенести инфу с временных разделов на lvm0.
Я делаю так (для серверов достаточно):


Распиливаем lvm0:


Создаем на получившихся разделах ФС (у меня XFS):

Переносим инфу с временных разделов

Для переноса необходимо смонтировать наши новые разделы куда-нибудь. Пусть это будет /root/fake-root:


Теперь перенесем нужное. Переносим с помощью cpio. Примерно так:


Правим права на /tmp и /var/tmp


Отмонтируем разделы:

Перемонтируем новые разделы взамен временных


Если всё нормально, то меняем ///etc/fstab/:

Превращаем /dev/md1 в полноценное зеркало

С sdb сносим все разделы кроме sdb1*. Затем на освободившемся месте создаем sdb2 равный по объему sda2. Тип раздела sda2** устанавливаем в FD.
Всё это можно сделать с помощью fdisk.
После чего будет предложено перезагрузится для перечитывания таблицы разделов на sdb.


Перезагружаемся обратно в single.


Убираем комментарии у двух строк в /etc/raidtab:


Запускаем ресинхронизацию на /dev/md1 и ждем:

В процессе синхронизации, sdb2 будет виден как spare disk. По окончанию синхронизации он перейдет в online.


Процесс синхронизации можно посмотреть несколькими способами:

Ссылки


Страницы, ссылающиеся на данную: AlexeyBorovskoy


 
Файлы [Скрыть файлы/форму]
Комментариев нет. [Показать комментарии/форму]