Категорії
FreeBSD

Установка FreeBSD на RAID-контроллер, который не видится при установке и создание раздела, объёмом больше 2 Тб.

1) Предисловие.

Сейчас, в дни технического прогресса объёмами в 2 Тб уже вряд ли кого-то можно удивить. Поэтому, вопрос использования дискового пространства больше 2 Тб, с каждым днём становиться всё актуальнее. И так, приступим.


В один из дней, когда старый файл-сервер начал понемногу давать сбои, руководство поставило задачу: подготовить новый сервер под файловое хранилище. Купили новый сервер, 8 жёстких дисков по 1 Тб, современный RAID-контроллер (Adaptec 5805) с возможностью горячей замены дисков. Захотелось установить именно FreeBSD 7.0 x64, ибо хотелось, что бы виделось больше 4 Гб памяти. Системы x32 плохо видят 4 и больше Гб памяти, иногда бывает, что видит, а иногда нет. Многие могут тут же возразить, что есть такое понятие как PAE, но с ним не гарантируется стабильная работа и это тема уже для другой статьи. Что из этого получилось – читаем ниже.

2) Установка. Как заставить ОС увидеть RAID-массив?

Создаём RAID-массив, например, 6-ой, в БИОСе самого RAID-контроллера. В итоге получается размер 5.4 Тб. Здесь сложностей не будет. Далее, собственно, вставляем диск и начинаем ставить «фряху». Заходим в режим CUSTOM -> Partition и видим, что жётских дисков у нас нет.

Перегружаемся и заходим опять в утилиту RAID-контроллера, удаляем старый рейд. Теперь немного теории. В мире RAID-массивов существует понятие «лун» (eng. LUN). Сейчас объясню. Когда у вас есть один жёсткий диск, вы его делите на разделы. То же самое можно делать и с RAID-массивами. Только здесь это это называется луны. То есть, лун – это раздел RAID-массива. И так, создаём лун, размером до 2 Тб. Я создал раздел 100 Гб. Иначе ОС опять не увидит разделы для установки. Разбиваем имеющееся место по своему усмотрению. После установки загружаем ОС.
Здесь хотелось сделать некое лирическое отступление. Дело в том, что у меня после установки ОС не могла смонтировать ни корень, ни всё остальное. Пробовал смонтировать вручную, (благо запомнил именование кореневого раздела) – не монтирует, говорит нет такого файла. Далее иду на сайт freebsd.org и смотрю, поддерживается ли мой адаптер. И вижу, что да. Но почему не находит раздел? Вручную подгружаю модули для этого контроллера, но ничего не меняется. Пришло время использовать драйвера, идущие в комплекте с RAID-контроллером, подумал я. Открываю диск и вижу, что дрова только для версии 6.3. Делаю образ диска «фряхи 7.0» и запихиваю туда эти драйвера, предварительно в директорию modules, а так же прописываю их в loader.conf, предварительно отключив стандартные дрова. Загружаюсь, и вижу, что пишет, что неверный исполняемый формат. Думаю, ну что ж не судьба. Качаю фряху 6.3 и проделываю те же операции и теперь, после установки ОС, система грузится! Причина была в драйверах, которые были в дистрибутиве. Толи сам контроллер такой нестандартный, то ли драйвера сбойные попались.

3) Настройка. Создание раздела больше 2 Тб

И так, ОС у нас стоит (стоит уже FreeBSD 6.3 x64 вместо FreeBSD 7.0). Тут меня ждал внеочередной сюрприз. Дело в том, что при установке ОС, когда подгружался модуль нестандартный (aacu64.ko, стандартный имел имя aac.ko) разделы именовались как aacdu0s1a, а когда грузилась ОС после установки она подргружала только стандартный модуль aac.ko (видимо при установке ОС, прописанный мною модуль не скопировался на раздел). Из-за этого не могла смонтировать / , ибо искала его на aacdu0s1a, а он фактически теперь находился на aacd0s1a. После этого вручную подмонтировал корень, поправил fstab в соответствии с новшествами, перегрузился. Теперь ОС грузится, но не видится раздел в 5Тб. Копирую модуль aacu64.ko в /boot/kernel, прописую его в /boot/loader.conf и перегружаюсь. ОС опять не может смонтировать корень (ибо теперь подгрузился модуль aacu64.ko, и разделы теперь именуются aacdu0s1a). Опять монтирую, правлю fstab и ребут. Только после этого ОС загрузилась нормально и увиделся раздел в 5Тб.

Создавать раздел будем с помощью GPT. Для этого последовательно выполним такие команды.

1.   Создайте GPT том (устройство /da1)
# gpt create -f /dev/aacdu1p1
2.   Создайте раздел на этом томе (по умолчанию в UFS)
# gpt add /dev/aacdu1p1
3.   Проверьте результат операции:
# gpt show /dev/aacdu1p1
4.   Отформатируйте раздел
# newfs /dev/aacdu1p1
5.   Смонтируйте этот раздел (например, в /mnt)
# mount /dev/aacdu1p1 /data

Замечу, что на создание файловой системы на этом разделе у меня ушло порядка получаса. Оно и не удивительно, 5.4 Тб. Теперь несколько перезагрузок для тестов и проверка работоспособности.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP
Powered by Muff