Документация по ОС FreeBSD Вторник, 17.06.2025, 20:50
Приветствую Вас Гость | RSS
Меню сайта

Категории каталога
Мои статьи [0]
Установка и настройка [281]
X Window [25]
Man pages [30]
Ports & Packages [26]
cvs [18]
Multimedia [20]
Нововсти в мире Unix [0]
RFC [4]
RFC (Request for Comments, Запрос на комментарии) - серия документов, публикуемая сообществом исследователей и разработчиков, руководствующихся практическими интересами, в которой описывается набор протоколов и обобщается опыт функционирования Интернет.
Безопасность [52]
Работа с железом [58]
Книги по FreeBSD [17]
Сеть [505]
Программирование [40]
FireWall [58]
Темы экзамена BSDA [14]
Официальные темы экзамена BSDA, включая подробноые описания и советы по обучению.

Главная » Статьи » Установка и настройка

Бессмертный BSD [2006]

Естественно, такие дистрибутивы имеются. Их пока еще немного, но они активно развиваются.

В этой статье я расскажу о существующих LiveCD на основе BSD-систем, об их внутреннем устройстве и о том, как создать такие LiveCD самостоятельно. Ну что, приступим?

FreeBSD LiveCD.

Первый LiveCD на основе ОС FreeBSD был создан в 2001 году Бразильской группой пользователей FreeBSD. Назывался он весьма незатейливо – «FreeBSD LiveCD». Его разработка была прекращена в 2002 году. Та же судьба в разное время постигла еще несколько проектов (BSDeviant, LiveBSD, Snarl).

В наши дни единственными развивающимися LiveCD на базе FreeBSD являются итальянский FreeSBIE и украинский Frenzy.

FreeSBIE

WWW: www.freesbie.org/

Размер: 610 Mb

Версия: 1.1

Созданием этого дистрибутива занимается итальянская группа пользователей FreeBSD.

Основными задачами проекта FreeSBIE являются:

1 Разработка набора программ для создания собственных CD.

2 Создание набора готовых ISO-образов для различных задач.

На данный момент командой FreeSBIE выпущен только один вариант готового LiveCD, предназначенного для тех, кто желает познакомиться с FreeBSD или использовать ее в качестве своей рабочей операционной системы.

После загрузки системы нужно выбрать предпочительную раскладку клавиатуры для консоли и иксов, а также графическую оболочку. В качестве рабочего окружения предлагаются на выбор XFce или fluxbox. Набор софта традиционен для подобных LiveCD - офис, браузер, почтовый клиент и различные мультимедийные приложения. FreeSBIE можно установить на жесткий диск, для этого в комплект входит программа установки, основанная на BSDinstaller. Имеется также возможность сохранить настройки на любой смонтированный диск. На диске можно найти краткую (очень краткую :-) ) документацию по системе на английском языке.

К сожалению, с поддержкой русского языка дела совсем плохи. Несмотря на то, что русский язык можно выбрать из списка, русских букв в FreeSBIE ты не увидишь по причине отсутствия русских шрифтов. Более того, ты не сможешь даже использовать английский язык, так как в конфиге иксов устанавливается только одна раскладка клавиатуры. В общем, засада.

Единственное, чем выделяется этот дистрибутив - отличные сборочные скрипты. Но о них чуть позже.

Frenzy

WWW: http://frenzy.org.ua/

Размер: 50-250 Mb

Версия: 1.0

Задачей проекта Frenzy является создание удобного инструмента для системных администраторов. Последняя версия, Frenzy 1.0 (Dreamchild), вышла совсем недавно, в июне этого года. Выпускается она в трех версиях: Frenzy standard для системных администраторов (200 мегабайт), Frenzy extended - для админов и опытных пользователей (250 мегабайт) и Frenzy lite с консольными утилитами (50 мегабайт).

Всего в состав дистрибутива входит более 500 приложений, в качестве графической оболочки используется Fluxbox.

Иксы по умолчанию не стартуют, их можно запустить командой «startx», либо указав опцию «gui» при загрузке системы.

Набор программ весьма разнообразен, но разобраться в этом ворохе софта очень просто - в меню Fluxbox он рассортирован по темам. В общем, админу или хакеру подборка софта очень понравится.

Помимо традиционного sysinstall, в Frenzy присутствует утилита конфигурации frconf для настройки системы. Сетевой конфигуратор netconf поможет настроить локальную сеть, модемное соединение, а также VPN и ADSL-подключение, а с помощью конфигурационной утилиты serconf можно быстро поднять ssh-сервер или сделать из Frenzy web-сервер, ftp-сервер и сервер Samba.

Настройки можно сохранить с помощью утилиты frbk на дискету, жесткий диск или USB Flash, при следующей загрузке они будут автоматически восстановлены. Более того, в Frenzy FAQ описан метод включения сохраненных настроек в ISO-образ - для этого достаточно открыть исошник с помощью программы UltraISO и добавить архив с настройками в папку frenzy/backup.

Frenzy 1.0 можно установить на жесткий диск или USB Flash с помощью простой программы-инсталлятора. Правда, простота не обошлась даром - при установке на жесткий диск вся система устанавливается на один слайс, и создать отдельные разделы для /var, /usr и т.п. не выйдет. Так что ставить Frenzy на HDD в качестве сервера я бы не стал :). После установки Frenzy на жесткий диск ты получишь практически полноценную ОС FreeBSD с отличным набором программ. Останется только скачать и установить исходные коды системы и коллекцию портов.

Что касается установки на флешку, стоит отметить, что утилита установки разбивает ее на два раздела - FAT32 для хранения данных и UFS2 для Frenzy, так что после установки Flash-диск вполне можно использовать для хранения данных.

Немаловажным достоинством Frenzy является качественная русификация системы - проблем с русским ни в консоли, ни в графической оболочке не возникает. Да и подробная документация на русском языке присутствует. В общем, must have :).

OpenBSD и NetBSD LiveCD.

Тут количество LiveCD заметно меньше. Кроме Anonym.OS, OliveBSD и NetBSD live!, единственным кандидатом на включение в обзор мог бы стать NetBSD’шный Newbie (http://arudius.sourceforge.net/), но он находится на стадии зародыша.

Основная проблема LiveCD на базе OpenBSD и NetBSD - отсутствие поддержки сжатой файловой системы, поэтому они показывают весьма низкую скорость загрузки программ. Наберитесь терпения :).

Anonym.OS

WWW: http://sourceforge.net/projects/anonym-os/

Размер: 550 Mb

Версия: ShmooCon 2006

Этот дистрибутив был разработан security-командой kaos.theory и представлен общественности на хакерской конференции Shmoo Con в феврале 2006 года. Основная задача Anonym.OS - обеспечить безопасные и анонимные веб-серфинг, переписку и общение. Набор программ соответствует назначению - кроме Firefox, Thunderbird и Gaim в состав Anonym.OS входят анонимайзер Tor и прокси-сервер Privoxy. Свою задачу по обеспечению анонимности Anonym.OS выполняет отлично (стоит отметить, что он прикидывается Windows XP SP1, если попытаться просканить его nmap’ом), но кроме работы в инете дистрибутив больше ни для чего не пригоден, да и с русским языком он совсем не дружит.

OliveBSD

WWW: http://g.paderni.free.fr/olivebsd/

Размер: 700 Mb

Версия: нет

Я так понимаю, что назначение этого дистрибутива - показать, что и на OpenBSD можно сделать нормальный LiveCD :). Что ж, разработчику это удалось! OliveBSD основан на OpenBSD 3.8 и использует в качестве графической оболочки IceWM. Набор программ невелик, однако покрывает все потребности обычного пользователя. Многие пользователи отмечают, что OliveBSD отказывается загружаться на некоторых компьютерах, а это совсем не радует. В общем, как advocacy tool дистрибутив весьма полезен, но для реальной работы лучше поискать что-то еще.

NetBSD Live!

WWW: ftp://ftp.netbsd.org/pub/NetBSD/misc/xtraeme/

Размер: 646 Mb

Версия: 3.99.7

NetBSD’шный LiveCD, увы, не имеет своего сайта и просто лежит себе на официальном FTP. Так что единственным кладезем информации стал лежащий там же файлик README.LIVECD. Итак, этот LiveCD позволяет нам попробовать поработать с NetBSD, не устанавливая ее на жесткий диск. В качестве графической среды нам предлагается KDE и стандартный набор программ для него - для пользователя этого вполне достаточно. Так что свою задачу - познакомить людей с NetBSD - дистрибутив успешно выполняет.

как устроены LiveCD.

Создание LiveCD – теоретически, весьма несложный процесс. Первое, что приходит в голову - создать на CD точную копию файловой системы, указать в качестве загрузчика cdboot и немного подправить стартовые скрипты. По этому принципу построены почти все BSD’шные LiveCD.

Однако у этого способа есть большой недостаток. Скорость работы такого LiveCD будет крайне низкой, в 3-5 раз ниже, чем у линуксовых аналогов, что нам и демонстрируют LiveCD на основе NetBSD и OpenBSD. Замедление происходит из-за того, что много времени тратится на чтение данных с компакта, а уж если

они разбросаны по разным частям CD, загрузка программы осуществляется мучительно долго :). Использование сжатой файловой системы улучшает ситуацию: объем данных, читаемых с компакта для запуска той или иной программы, сокращается в несколько раз, а распаковка этих данных на современных компьютерах происходит почти мгновенно, и скорость работы LiveCD существенно повышается.

В настоящее время сжатая файловая система есть только в FreeBSD. За ее поддержку отвечает модуль geom_uzip, написанный Максимом Хоном. По функциональности он аналогичен cloop из KNOPPIX и совместим с ним, но использует совсем другой механизм работы с файловой системой. Сжатие, предоставляемое geom_uzip, составляет порядка 65%.

Первым дистрибутивом с использованием geom_uzip стал FreeSBIE. В нем использовалась комбинированная схема - корневая файловая система находилась на CD, а файловые системы /usr, /usr/X11R6 и /var подключались из сжатого образа.

В Frenzy использован совершенно другой подход. После загрузки ядра в качестве корневой файловой системы подключается небольшой образ файловой системы с минимумом утилит, необходимым для поиска компакт-диска, его монтирования и подключения сжатой файловой системы из файла на нем. Вся файловая система Frenzy находится в одном файле frenzy.uzip, что позволило реализовать такие возможности, как полная загрузка в оперативную память и загрузка из образа на жестком диске.

Следующая задача, стоящая перед разработчиками LiveCD - сделать так, чтобы система, загруженная с диска, могла куда-то записывать файлы, и чтобы некоторые файлы на CD можно было создавать и редактировать - в общем, имитировать работу с жесткого диска. В большинстве линуксовых дистрибутивов для этого используется unionfs - с ее помощью можно сымитировать, что весь CD доступен для записи, смонтировав диск в оперативной памяти поверх файловой системы на CD.

Но, увы, в FreeBSD штатный unionfs пока что в плачевном состоянии и почти непригоден к повседневному использованию. Оздоровлением ситуации сейчас занимается японец Даичи Гото, и, судя по отзывам, новый unionfs уже сейчас показывает отличные результаты. Так что приходится использовать обходные пути. В FreeSBIE, основанной на FreeBSD 5.3, используется unionfs (там он еще кое-как работает), но только для подключения /etc, /var и /root. В Frenzy, где базовой системой является FreeBSD 6.1, использовать unionfs было бесполезно, поэтому там использовано mount_nullfs, с помощью которого поверх оригинальных /etc, /root, /var монтируются файловые системы с теми же файлами (предварительно скопированными), но уже с RAM-диска.

Для того чтобы LiveCD корректно работал на любом компьютере, он должен определять состав аппаратного обеспечения компа для обеспечения поддержки всех девайсов. Вопрос с определением оборудования решается разработчиками BSD-шных LiveCD «в лоб» - в ядро вкомпилирована поддержка практически всего оборудования, поддерживаемого системой. Это ускоряет загрузку, но в то же время увеличивает размер памяти, занимаемой ядром. Правда, разработчики FreeSBIE решили выделиться и сделали скрипт определения звуковой карты с загрузкой соответствующего модуля ядра.

В FreeSBIE и Frenzy есть утилиты для автоматического поиска и монтирования разделов винчестера. В Frenzy это происходит автоматически при загрузке (по умолчанию разделы монтируются в режиме «только для чтения», но можно выбрать и режим «для записи» или вообще отказаться от монтирования разделов), а в FreeSBIE скрипт монтирования нужно запускать вручную.

Делаем LiveCD сами.

Использовать готовые LiveCD - это, конечно, приятно и полезно. Но что делать, если хочется создать свой, единственный и неповторимый LiveCD на основе любимой тобой BSD-оси?

Поклонникам NetBSD далеко ходить не надо: LiveCD можно создать с помощью пакета sysutils/mklivecd из коллекции pkgsrc. А вот для OpenBSD готовых решений вообще не существует, немного информации по сборке LiveCD на опенке можно найти по этим адресам: www.onlamp.com/pub/a/bsd/2005/07/14/openbsd_live.html и www.blackant.net/other/docs/howto-bootable-cdrom-openbsd.php.

Зато для фришников есть целых два набора сборочных скриптов - FreeSBIE и Frenzy SDK. Вот с ними мы и познакомимся более внимательно.

Скрипты FreeSBIE заслуживают наивысшей похвалы. Текущая их версия, названная FreeSBIE2, написана Даниэлем Френи в рамках проекта Google Summer of Code и позволяет собирать LiveCD для архитектур i386, amd64 и powerpc. В основе этих скриптов лежат традиционные Makefile и конфигурационные файлы. Самой мощной фичей является модульная структура, позволяющая добавлять в сборочную инфраструктуру свои модули для поддержки различных дополнительных возможностей (к примеру, установки на HDD, определения оборудования и т.п.).

Свежую версию скриптов FreeSBIE можно получить через CVS:

cvs -d :pserver:anonymous@cvs.freesbie.org:/cvs login

cvs -d :pserver:anonymous@cvs.freesbie.org:/cvs co freesbie2

Перед началом сборки запускаем команду

make pkgselect

для выбора пакетов, которые будут включены в создаваемый LiveCD. Пакеты выбираются из тех, что уже есть в системе. Теперь, если мы хотим что-то изменить в параметрах сборки, идем в каталог conf и копируем файл freesbie.defaults.conf в freesbie.conf, после чего меняем значения переменных уже в нем. Особенно полезен для нас параметр EXTRA, позволяющий указать список плагинов, используемых при сборке LiveCD. Сами плагины лежат в каталоге extra.

Итак, мы сделали все нужные настройки, и все готово к сборке. Переходим в основной каталог скриптов и набираем:

make iso

Разработчики рекомендуют посмотреть кино, пока идет сборка. Занимает она несколько часов, так что советом стоит воспользоваться :-). После окончания сборки готовый исошник будет лежать в /usr/obj.

В отличие от FreeSBIE, сборочные скрипты Frenzy не так универсальны,

поскольку оптимизированы для построения одного-единственного дистрибутива :).

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

Для начала нам нужно скачать сам SDK. Полный SDK занимает около гигабайта. Найти его можно на разных ftp-миррорах Frenzy, например на ftp://ftp.frenzy.org.ua/pub/Frenzy/1.0/sdk/.

Создаем chroot-окружение:

make buildworld

make installworld DESTDIR=/usr/Frenzy

Закидываем туда дерево исходных кодов (/usr/Frenzy/usr/src), дерево портов (если будем собирать какие-то дополнительные пакаджи, /usr/Frenzy/usr/ports) и сами сборочные скрипты (/usr/Frenzy/buildscripts).

Теперь подредактируем файл config, находящийся в каталоге со сборочными скриптами.

Для нас важны параметры FRENZY_TYPE (может принимать значения std или ext) и FRENZY_LANG (ru или en).

Пакаджи нужно собрать и положить в нужные каталоги заранее. Пакаджи, собранные специально для Frenzy, скачиваем из SDK (файл Frenzy.tar) и складываем в buildscripts/packages/Frenzy. Обычные фришные пакаджи нужно сложить в buildscripts/packages/FreeBSD.std или в buildscripts/packages/FreeBSD.ext, в зависимости от выбранного типа сборки. Можно просто скачать с ftp те пакаджи, которые были собраны для имеющейся версии Frenzy, выбрать софт из них и положить нужные пакаджи в каталог.

Наконец, все готово. Переходим в наше chroot-окружение и начинаем сборку:

chroot /usr/Frenzy mount -t devfs devfs /dev

chroot /usr/Frenzy /bin/tcsh

cd buildscripts

./frbuild all

После сборки готовый исошник будет лежать в каталоге ISO.

Подробнее о сборке Frenzy можно прочесть в документации по Frenzy SDK:

http://frenzy.org.ua/ru/releases/1.0/doc/doc-sdk.html.

Подведе�г.

Мы убедились, что LiveCD на BSD-платформе есть и активно развиваются, что не может не радовать. По итогам тестирования можно сделать вывод, что среди BSD-систем на данный момент самой перспективной платформой для создания LiveCD является FreeBSD. Живые CD для NetBSD и OpenBSD пока что далеки от идеала, однако можно надеяться, что в будущем ситуация изменится в лучшую сторону.

Поскольку русский язык нормально поддерживает только один LiveCD из вышеперечисленных (Frenzy), его бы я и порекомендовал для повседневного использования. Остальные LiveCD, на мой взгляд, вполне годятся для ознакомления с возможностями операционной системы или же для выполнения работ, где поддержка русского языка не нужна. Теперь у тебя достаточно информации для размышления. Выбор, как всегда, остается только за тобой!



Источник: http://www.xakep.ru/magazine/xs/069/014/1.asp
Категория: Установка и настройка | Добавил: oleg (24.02.2008) | Автор: МОЖАЙСКИЙ СЕРГЕЙ
Просмотров: 1005 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Beastie

Друзья сайта

Статистика

Онлайн всего: 3
Гостей: 3
Пользователей: 0
links

Copyright MyCorp © 2025