Вы найдете NanoBSD в /usr/src/tools/tools/nanobsd. Базовый набор инструментов включает каталог с именем Files, сценарий командного интерпретатора nanobsd.sh и файл FlashDevice.sub.
Каталог Files содержит файлы, которые следует скопировать в образ NanoBSD. NanoBSD поставляется с несколькими сценариями, упрощающими сопровождение систем NanoBSD, позднее вы сможете добавить их в свой арсенал.
Файл FlashDevice.sub содержит описания геометрии различных flash- дисков. Этот файл далеко не полон из-за неисчислимого множества производителей flash-дисков, но его легко расширить.
Основные функции NanoBSD находятся в сценарии командного интерпретатора nanobsd.sh. Фактически это программа, реализующая процедуру сборки из исходного кода, описанную в главе 13.
В дополнение к этим файлам вам потребуется конфигурационный файл NanoBSD и, возможно, каталог packages.
Дополнение файла FlashDevice.sub
Есть вероятность, что ваша flash-карта отсутствует в файле FlashDevice.sub. Добавить его описание в файл очень просто, дело всего нескольких секунд. Все, что нужно сделать, это скопировать одну из имеющихся записей и исправить ее в соответствии с параметрами вашей flash-карты. Вам необходимо знать название диска и размер, а также его геометрию. Название и размер можно прочитать на наклейке. Геометрия устройства отображается на экране BIOS устройства Soekris, равно как и в устройствах других производителей. Запись для новой карты выглядит примерно так:
О samsung)
#Source: mwlucas@freebsd.org case $а2 in © 128|128mb)
© NANO_MEDIASIZE=’expr 130154496 / 512′
О NAN0_HEADS=8
© NAN0_SECTS=32
© *) "
echo "Unknown Samsung Corp Flash Capacity" exit 2
esac
Сначала нужно указать производителя карты О, при этом запись должна стоять на своем месте в алфавитном порядке внутри файла.
Нам известен один объем flash-карты, что находится в наших руках. Это 128 Мбайт ©. Однако нам требуется, чтобы сценарий мог принимать в качестве аргумента любое из двух обозначений емкости – 128 и 128mb, поэтому указываем оба.
Значение NANO_MEDIASIZE © вычисляется умножением числа цилиндров на число головок, на число секторов в дорожке и на 512. Вычислите это произведение и подставьте его в инструкцию ехрг(1). (Да, Nano- BSD сразу же делит это значение на 512.)
Значения NAN0_HEADS © и NAN0_SECTS © – это число головок и число секторов, которые мы видели на экране BIOS.
У нас также имеется вариант выбора по умолчанию ©, чтобы в случае использования, например, отсутствующей в списке карты Samsung емкостью 256 Мбайт сценарий создания образа NanoBSD прекратил работу, вместо того чтобы создать дефектный образ.
Добавьте в файл FlashDevice.sub запись вроде этой, и можно продолжить создание вашего образа NanoBSD.
Источник: ЛукасМ. FreeBSD. Подробное руководство, 2-е издание. – Пер. с англ. – СПб.: Символ- Плюс, 2009. – 864 е., ил.

November 26th, 2011
admin
Опубликовано в рубрике