главная пошаговое создание livecd что такое linux ISO образы |
Операционная система с графическим интерфейсом |
Полезное
http://juliapermanent.ru перманентный макияж цена: перманентныи макияж цена. |
ДОБРО ПОЖАЛОВАТЬ
Frenzy: FreeBSD в кармане сисадминаЛюбой сисадмин хоть раз в своей жизни (или даже не раз) делал себе Системную Дискету. Он любовно подбирал драйверочки, вписывал их в config.sys, а иногда даже делал startup-меню. После чего сдвигал рычажок защиты от записи и любовно надписывал: "СИСТЕМНАЯ ДИСКЕТА", втайне считая при этом, что его Дискета - самая лучшая. Убирал дискету в верхний ящик стола. Через 3 месяца, матерясь, рылся в залежах бумаг и прочего хлама, восклицая "Ну где же она?!". Описанная выше ситуация вам знакома, не так ли? Всем нам хочется носить с собой набор необходимых утилит, чтобы всегда быть готовым к решению любых проблем и не искать нужный для этого софт. За прошедшие с тех пор годы размеры операционных систем и программ для них заметно выросли, и системные дискеты превратились в загрузочные компакт-диски. И если в мире Windows такой подход не особо популярен, то в мире UNIX все наоборот - количество LiveCD-дистрибутивов исчисляется десятками, да и сделать собственный LiveCD теперь может практически каждый, благо скриптов и документации на эту тему написано достаточно. Правда, LiveCD делаются в основном на базе Linux - Knoppix, Blin, Linux-BBC, Phlak, Gentoo LiveCD, RTK... Операционная система FreeBSD куда более "консервативна" и на новомодное увлечение LiveCD внимания не обращала. Несмотря на то, что в портах FreeBSD есть целых три набора скриптов для создания собственного LiveCD (sysutils/cdroot, sysutils/freesbie, sysutils/livecd), готового к использованию набора не предлагал практически никто. Поскольку с FreeBSD я работал уже долгое время, мне всегда хотелось создать LiveCD именно на его основе, и в июле 2003 года я принялся за работу. Информацию по вопросу создания LiveCD на базе FreeBSD приходилось выискивать по крупицам - поиск в Google дал не больше десятка действительно полезных ссылок, которыми я и воспользовался в работе. К началу августа у меня получился первый работоспособный LiveCD. Получившийся дистрибутив я не планировал распространять, поскольку считал, что это мало кому будет интересно, ограничился лишь кратким анонсом о выходе Frenzy 0.1 и выложил сборочные скрипты. Позже, примерно через неделю, я смог выложить в сеть ISO-имидж. Однако новая разработка заинтересовала многих, я получал множество писем и сообщений ICQ по поводу Frenzy. Обзор первой версии Frenzy вы можете прочесть в январском номере журнала. По мере поступления отзывов стало понятно, что необходимо выпустить следующий релиз, в котором будут исправлены недоработки первой версии и учтены высказанные пожелания. Поэтому 20 октября вышла Frenzy 0.2. В новой версии был обновлен набор программного обеспечения, добавлены криптографические утилиты, обеспечена поддержка NFS и SNMP, а также заметно упрощен процесс сборки. Frenzy распространяется в соответствии с лицензией BSD, вы можете скачать ISO-имидж системы, заказать в интернет-магазинах компакт-диск или сделать свой дистрибутив Frenzy самостоятельно, используя сборочные скрипты. Обеспечивается полноценная техническая поддержка - вы можете всегда получить консультацию по работе с системой в форуме сайта проекта или почтовой рассылке. Возможности Frenzy Минимальными требованиями для работы Frenzy является компьютер Pentium с 32 мегабайтами RAM. Однако для некоторых программ требуется существенно больше оперативной памяти, поэтому 128 мегабайт будет вполне достаточно для работы со всеми приложениями из состава Frenzy. В случает нехватки оперативной памяти вы можете создать swap-файл на смонтированных разделах винчестера. После загрузки с CD мы получаем вполне работоспособную операционную систему FreeBSD 4.8-STABLE. В качестве командной оболочки использован стандартный tcsh, но его функциональность была дополнена скриптами из проекта tcshrc - и теперь в нем есть расширенное автодополнение команд, поддержка "горячих" клавиш, проверка синтаксиса введенных команд и многое другое. Для тех, кто привык к файловым менеджерам, есть Midnight Commander и Demos Commander, который менее функционален, но зато намного быстрее и проще. Есть и графическая оболочка XFree86 4.3.0 с оконным менеджером fluxbox. При загрузке разделы жесткого диска монтируются автоматически, потом можно смонтировать сетевые диски NFS и SMB, с DOS-дискетами можно работать и без монтирования - достаточно воспользоваться программами из пакета mtools или файловым менеджером MToolsFM. Если нам нужно настроить сеть, то можно не возиться с ifconfig и редактированием конфигурационных файлов - в Frenzy есть диалоговый скрипт lan-config, позволяющий настроить поддержку локальной сети. Для настройки модемного соединения используется скрипт ppp-config. Теперь можно запускать популярный браузер Opera или консольный lynx для веб-серфинга, скачивать файлы с помощью curl или wget, пользоваться почтовыми и новостными клиентами mutt, tin, sylpheed-claws, общаться в сети ICQ с помощью centericq или licq и чатиться в IRC с помощью xchat. Кроме того, из Frenzy можно сделать тестовый маршрутизатор, файрвол, NAT, NFS или DNS-сервер - все необходимое для этого есть в системе. Теперь перейдем к программам для системного администратора, которые и составляют основу дистрибутива. При неполадках с винчестером могут помочь утилиты gpart (с ее помощью я дважды восстанавливал поврежденную таблицу разделов), disktype, testdisk. Для восстановления удаленных файлов на FAT-дисках есть fatback, для фришной FFS - экспериментальная утилита ffsrecov. Тем, кто хочет протестировать свое "железо", пригодятся программы bytebench, cpuburn, ubench, memtest, pciutils. Набор сетевых утилит, думаю, удовлетворит многих - есть утилиты для работы с DNS, ICMP, DHCP, SNMP, NetBIOS. Для удаленного управления есть сервер и клиент VNC - утилита tightVNC, оптимизированная для работы по медленным каналам связи, а также rdesktop (клиент для Windows Terminal Server). В состав Frenzy входит антивирусный пакет Dr.WEB для проверки на вирусы FAT-разделов, а для UNIX-систем полезным окажется наличие утилит chkrootkit и cops, позволяющих определить наличие руткитов в системе. Для анализа безопасности сети есть пакетные снифферы, сканеры портов, утилиты подбора паролей и многие другие программы. Отмечу лишь некоторые из них - популярный сканер безопасности nessus, система обнаружения сетевых атак snort, знаменитая утилита nmap (с графическим фронтендом nmapfe), удобный пакетный сниффер ethereal. Ко всем программам в системе прилагается документация и сопутствующие man-страницы, так что разбираться во всем "методом тыка" не придется. Кроме того, в каталоге /frenzy/doc есть краткая документация по работе с Frenzy и список приложений с описанием их назначения. Провозившись некоторое время с настройками системы, вам наверняка захочется их сохранить, чтобы не настраивать при следующей загрузке все заново. Для этого есть скрипт backup, который позволит сохранить все изменения в каталогах /etc, /root, /usr/local/etc и /var/drweb на обычную DOS-дискету. При загрузке система проверяет наличие backup-дискеты в дисководе и восстанавливает настройки с нее. Процесс разработки При работе над дистрибутивом Frenzy возникало множество проблем. Сделать загрузку системы с CD удалось не сразу - советы и рекомендации, найденные мной в интернете, не помогали. Как оказалось, для того, чтобы система могла загружаться с CD, достаточно было наличия этих опций в ядре: options CD9660 options CD9660_ROOT а также наличия строки vfs.root.mountfrom="cd9660:acd0a" в файле /boot/loader.conf. Уменьшение размера базовой системы делалось по инструкциям, изложенным в cтатье Мануэля Каспера "miniBSD - reducing FreeBSD" (http://neon1.net/misc/minibsd.html) - ему удалось уместить всю систему вместе с Perl в 22 мегабайта, у меня же вышло порядка 40 за счет добавления man-страниц и ряда полезных утилит.
Патчи в конфигурации системы сводились к добавлению в /etc/rc.conf строки
Одной из главных отличительных черт Frenzy является уменьшение размера установленных приложений, благодаря чему удалось уместить большое количество приложений на 3-дюймовый компакт-диск. В первой версии "препарирование" всех пакаджей проделывалось вручную. Однако при создании версии 0.2, прикинув объем работ, я решил все это автоматизировать с помощью набора скриптов. Из пакаджей удаляются include и info-файлы, ненужные локали (зачем нам, к примеру, X-Chat на китайском?), после чего к пакаджу применяются индивидуальные патчи. В итоге размер системы удалось сократить с 330 до 196 мегабайт.
После всех этих приготовлений загрузочный iso-имидж создается такой командой:
Загрузку с CD можно было реализовать двумя способами - эмуляцией загрузочной дискеты (так называемый El-Toro) или прямой загрузкой (с помощью загрузчика cdboot). В Frenzy используется второй вариант, поскольку он проще в реализации. Получившиеся тестовые сборки я сначала отлаживал в VMWare, после чего стабильный билд записывался на CD и проверялся уже на реальных компьютерах. Поскольку систему не планировалось распространять, процесс ее сборки был автоматизирован лишь частично, некоторые операции приходится делать вручную, однако в следующих версиях процесс сборки будет уже полностью автоматизирован. Желающие более детально ознакомиться с процессом сборки Frenzy могут скачать скрипты с сайта проекта. Кроме того, на CD с Frenzy 0.2 в каталоге /frenzy/devel можно найти сборочные скрипты и краткую документацию к ним. Перспективы развития В настоящее время ведется работа над Frenzy 0.3. Следующая версия Frenzy будет основана на 5-й ветке FreeBSD. Реализация сжатой файловой системы (поддержки которой пока еще нет в FreeBSD) позволит увеличить количество приложений и положительно скажется на скорости загрузки. Также планируется обновить набор софта и включить в состав дистрибутива русскую документацию по ряду приложений. Frenzy прочно заняла свое место в ряду LiveCD-дистрибутивов и помогает в решении повседневных задач многим системным администраторам. Надеюсь, вас она тоже заинтересует. |
LiveCD.SU |