Установка Debian Lenny AMD64 GNU/Linux на серверную материнку Supermicro X8DTI с ее RAID контроллером LSI M1068E (Актуально и для 8208ELP)

Что имеем: есть мать на данном контроллере, 2 SAS винта, средствами оного объединенные в RAID 1 (зеркало), и еще один обычный SATA винт.

Ставим систему на SATA винт и устанавливаем необходимые для сборки пакеты. Fakeroot я не использовал, делал все от root, т.к. система, на которой делалась сборка, — одноразовая, и использовалась только для самой сборки и экспериментов.

aptitude install linux-headers-2.6.26-2-amd64 dpkg-dev devscripts dpatch

Пакет заголовков ядра может иметь другую версию. На момент написания статейки последней версией была 2.6.26-2-amd64.

Добавляем в список репозиториев репозиторий ХОРОШЕГО человека, который сделал сырци для сборки.

echo “deb-src http://mentors.debian.net/debian/ unstable non-free #Mentors sources for Non-Free” >> /etc/apt/sources.list

Делаем обновление и скачиваем исходники, перейдя для начала в каталог \usr\src (просто так, для порядка).

cd \usr\src

apt-get update

apt-get source megasr

Исходники скачались и распаковались. Далее переходим в появившийся каталог. (Обратите внимание на имя каталога, если в репозиториях сменится версия, название каталога поменяется. На момент написания статейки она была такой).

cd /usr/src/megasr-13.07.0318.2009

Можно уже собирать, но в конце сборки будет предупреждение о том, что ключ, которым подписаны исходники, просрочен. Чтобы сделать все по феншую, хорошо бы подписать новый пакет своим новым ключом (хотя делать это не обязательно). Для этого:

Добавляем свои данные как сборщика пакета:

export EMAIL=адрес_вашей@почты.com

export DEBFULLNAME="ваше_имя"

export DEBEMAIL=адрес_вашей@почты.com

Генерируем сам ключ:

gpg --gen-key

Далее выбираем
тип ключа — RSA
размер ключа — 2048 бит
срок действия ключа — без ограничений

После этого будет предложено ввести имя и почту (вводить надо то же самое, что и выше в команде export):
Ваше имя: ваше_имя
e-mail: адрес_вашей@почты.com
Комментарий: оставлю пустым

Генерацию ключа делать надо не через SSH, а, так сказать, вживую. Ибо сколько раз по забывчивости я пытался делать ключ через SSH, еще ни разу у меня не получилось. Складывается мнение, что нажатия на клавиатуру и движения мыши, которые просит генератор случайных чисел, через SSH не проходят.

Пароль, который просит генератор, писать от фонаря не стоит: в конце сборки его попросят для подписи созданного пакета.

После генерации ключа обновляем данные в исходниках (во время этих действий все еще надо находиться в директории с исходниками).

dch -i

Подготовительный этап закончен, начинаем сборку. Внимательно смотрите за сборкой, вдруг где проскочит ошибка. А собираем мы не календари для гнома.

debuild -sa

Предварительные пакеты собраны. Далее переходим в /etc/src и начинаем сборку под свою архитектуру. Для этого ставим получившийся после предыдущей сборки пакет megasr-source_13.07.0318.2009-1.2_all.deb и с помощью module-assistant собираем готовый deb с модулем.

cd ..

dpkg -i megasr-source_13.07.0318.2009-1.2_all.deb

m-a build megasr

Поздравляю! Пакет с модулем собран и имеет имя megasr-modules-2.6.26-2-amd64_13.07.0318.2009-1.2+2.6.26-25lenny1_amd64.deb

Его можно поставить в систему и загрузить модуль для проверки. Сразу хочу сказать, что модуль грузится не быстро, поэтому придется немного подождать. Сразу после загрузки модуля RAID массив будет виден через fdisk -l. Можно создавать разделы, форматировать, монтировать и использовать.

dpkg -i megasr-modules-2.6.26-2-amd64_13.07.0318.2009-1.2+2.6.26-25lenny1_amd64.deb

modprobe megasr

Если нет необходимости ставить на RAID систему (загружаться с него), то можно и, я думаю, нужно обойтись добавлением модуля в список загружаемых модулей.

echo “megasr” >> /etc/modules

А вот если надо загружаться и работать с RAID, читаем дальше.

Для того чтобы загрузиться с RAID массива необходимо, чтобы система смогла его подключить. Как происходит загрузка? Сначала стартует GRUB, который установлен в mbr (случаи с использованием других загрузчиков и их установкой не в mbr я не рассматриваю), GRUB нужен только для того, чтобы загрузить образ ядра initrd.img находящийся в /boot.

Как раз в этом образе и находятся все модули (драйвера), необходимые для работы с железом. Значит, для нормальной загрузки и работы RAID массива надо добавить модуль megasr в образ ядра.

Для этого добавляем модуль в файлик modules в /etc/initramfs-tools и запускаем обновление образа ядра.

echo "megasr" >> /etc/initramfs-tools/modules

update-initramfs -u

После этого надо скопировать обновленный образ на флешку (желательно поменьше размером и пустую).

cp initrd.img-2.6.26-2-amd64 /ну_а_тут_точка_монтирования_флешки

На эту же флешку копируем deb пакет, получившийся после сборки, и выключаем компьютер. Отсоединяем SATA винт, на котором проводились все манипуляции, вставляем в привод диск с Debian и начинаем установку как обычно. При этом в момент определения дисков, система не найдет RAID и предложит выбрать драйвер из списка. Опускаемся в низ списка и выбираем поиск драйвера на внешнем носителе. Делаем все по инструкции системы, то есть вставляем флешку (система сама делает на ней поиск).

После поиска система скажет, что модули найти или загрузить не может (что-то такое), но при этом, когда вы перейдете к разметке диска, RAID массив будет виден и доступен для разметки!

Разбиваем диск и продолжаем установку системы в обычном режиме. В конце установки, когда система размонтирует CD и просит перезагрузки, нажимаем Esc и заходим в консоль. В консоли с флешки надо скопировать образ ядра и заменить им образ ядра находящийся в /boot.

После того как подменили образ, можно перезагружаться. Если все было сделано правильно, система должна загрузиться и работать с RAID массива. Ура!!!

Смотрите так же:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.