- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF77:FreeBSD
Материал из Linuxformat.
Содержание |
Знакомьтесь: FreeBSD
Linux – это не единственное «лакомство» для тех, кому нравятся Unix-подобные операционные системы. FreeBSD бесплатна, стабильна и открыта. Майк Сондерс (Mike Saunders) следит за её развитием и предлагает руководство по установке для тех, у кого возникнет желание попробовать ее в работе...
FreeBSD была одной из заветнейших тайн компьютерного сообщества. Эта открытая Unix-подобная операционная система существует с 1993 года, но лишь недавно проект пересмотрел свой сайт, запустил релизновой линейки и (наконец-то) удостоился внимания со стороны СМИ. Больше десяти лет компьютеры с FreeBSD тихо трудились как супер-надежные серверы и рабочие станции, но их преимущества затмевались взрывным распространением Linux. Теперь, с выходом последнего релиза 6.0, FreeBSD готова предстать во всей своей красе. Путь к этой версии был тернистым. Во FreeBSD 5.0 были внесены радикальные изменения и обновления системы (например, улучшенная поддержка многопроцессорности и потоков), но программистов подвели амбиции: FreeBSD временно потеряла свою знаменитую стабильность, и многие пользователи предпочли остаться на несокрушимой 4.x. Ветвь 5.x приобрела клеймо неустойчивой – анафема для пользователей BSD. Новый старт с линейкой 6.x стал для разработчиков шансом восстановить былую репутацию, которую FreeBSD завоевала пусть у небольшой, но преданной армии поклонников.
Если раньше вы уже работали с FreeBSD и хотите узнать, почему столько шума поднято вокруг 6.0, здесь вы найдете краткий отчет о новых функциях, добавленных в этот релиз:
- Улучшена производительность файловой системы и доступа к диску. В файловой системе появилась улучшенная поддержка многопоточности и многопроцессорности.
- Теперь поддерживаются процессоры PowerPC, хотя и в статусе «экспериментальной» платформы.
- Вы найдёте улучшенную поддержку специальных функций, присутствующих в ноутбуках IBM, Fujitsu и Sony.
- Появилась более широкая поддержка беспроводных сетей, а также протокола безопасности WPA.
- Улучшена безопасность благодаря новой технологии распределения памяти ядра – memguard.
- Оптимизирован планировщик ULE, что улучшило время отклика системы.
- Добавлена возможность шифрования диска – GEOM_ELI.
Впрочем, не только ошибки отразились на развитии FreeBSD. Из-за разногласий с коллегами один из наиболее талантливых FreeBSD-программистов (приверженцы Amiga знают его как человека, стоящего за компилятором Dice C), мэтт Диллон (Matt Dillon), покинул проект и занялся Dragonfly BSD – ответвлением 4.x. Это подорвало настрой FreeBSD-сообщества, и встал вопрос о разумности традиции вести работу над открытым проектом закрытой командой разработчиков. Естественно, и ошибки и потеря ведущего разработчика не прошли бесследно для истории, опыта и уважения, которые FreeBSD приобретала долгие годы. Проект был отброшен назад.
Про Linux мы знаем, что он возник на базе проекта GNU; а где зародилась FreeBSD? На самом деле, в Калифорнии. Разработанная в Университете города Беркли версия системы Unix – Berkeley Software Distribution (BSD) – была весь ма популярна в университетской среде в 70-х годах. Но в ней содержалось немало строк исходного кода Unix, права на который принадлежали AT&T, так что в конце 80-х разработчики приступили к «чистке», заменяя проприетарные фрагменты открытым кодом.
К несчастью, в 1992 году AT&T затеяла судебный процесс против BSDi – компании, которая портировала BSD на обычные ПК архитектуры x86. Соглашения они достигли без суда в 1993 году – абсолютную законность коду BSD придали удаление всего трех файлов и пригоршня изменений. Однако ущерб был нанесен: хотя Интернет добрался до широких масс и концепция свободного ПО набирала обороты, немногие разработчики решались связываться с кодом, сомнительным (как им казалось) с точки зрения закона. Как следствие, центр внимания переместился к Linux. Потребовалось много лет, чтобы разработчики преодолели дискомфорт, вызываемый BSD.
FreeBSD возникла как наиболее успешный порт BSD для ПК, вместе со своими «кузинами» – NetBSD и OpenBSD, нацеленными на переносимость и безопасность соответственно. FreeBSD как ОС ориентировалась и на рабочие станции общего назначения, и на серверы; высокая степень совместимости с другими разновидностями Unix позволяла ей запускать большинство программ, предназначенных для Linux, однако акцент делался на сплоченное сообщество разработчиков и длительное тестирование новых функций. Похвальная цель, особенно учитывая, что разработка Linux в середине девяностых велась в стиле Дикого запада – «хватай-кто-успел».
Два миллиона причин
Развитие Linux идёт семимильными шагами, но почему FreeBSD всё ещё привлекает разработчиков и пользователей (обеспечивая, по последним оценкам, работу двух миллионов web-серверов)? Факторов, способствующих данному выбору, немало: философия разработки, инженерный опыт, общие стандарты... зачастую дополнительным аргументом для многих программистов и пользователей является её лицензия (см. врезку «Лицензия BSD»).
FreeBSD запросто соорудит сервер из старого «железа» – достаточно процессора 486 и 24 МБ оперативной памяти. Для «настольного» использования потребуется по крайней мере 300 МГц-процессор и 128 МБ ОЗУ. Перед началом установки скопируйте или распечатайте файлы HARDWARE.TXT и INSTALL.TXT с нашего диска. вероятно, они вам не потребуются, но если что-то пойдёт не так, с ними можно проконсультироваться насчёт дальнейших шагов.
Перед тем, как ставить FreeBSD, поговорим о системном инсталляторе – Sysinstall. Sysinstall почти не менялся уже несколько лет – благодаря диалогам и меню он удобнее инсталлятора OpenBSD, основанного на интерфейсе командной строки, но ему далеко до дружественных графических инструментов, обычно используемых в Linux. тем не менее, он делает работу чётко и надёжно, не злоупотребляя ресурсами, поэтому инсталляция выполняется очень быстро. Sysinstall выполняет разбиение жёсткого диска и установку ПО вместе с некоторыми настройками (например, раскладкой клавиатуры и запуском сервисов). Последующая конфигурация выполняется из командной строки при «моральной поддержке» замечательно подробного руководства. Думая, что это очень похоже на установку Debian или Slackware, вы будете правы.
И, конечно, нельзя не упомянуть легендарную стабильность FreeBSD: её использует Yahoo! (один из крупнейших интернет-порталов), и долгие годы именно она обеспечивала работу Hotmail. Кроме того, из нее пришел ряд пользовательских инструментов в Mac OS X компании Apple. FreeBSD хорошо известна своим консервативным подходом к свежеизобретенным функциям. Вместо того, чтобы «выкатить» новый код, а уж потом работать над его стабилизацией, команда FreeBSD ищет долгосрочные решения – даже если решение приходит не вдруг. релизы с проблемами, вроде ранних версий ветви 5.x, крайне редки. Конечный результат – «вылизанная» и непротиворечивая система, качество которой заметно во всем, от аккуратных справочных страниц до надежного как скала ядра. В итоге, администрирование системы FreeBSD очень эффективно. «мастера конфигурации» здесь не водят вас за ручку, но это с лихвой компенсируется логичной и предельно понятной документацией.
Плюсы и минусы
Одна из привлекательных особенностей FreeBSD – её единство: одна система, одно дерево исходного кода, один инсталлятор, одно руководство пользователя, один формат пакетов, один набор сценариев инициализации. Когда вы изучаете FreeBSD, вы изучаете операционную систему, а не просто одну из ее разновидностей: вам не придётся иметь дело с аллергией на отдельно взятые дистрибутивы. Однако Linux всё ещё лидирует в ряде областей (прежде всего на рабочих столах пользователей), обеспечивая более качественную поддержку современной комплектации оборудования домашних ПК, а также коммерческих приложений. (Во FreeBSD поддерживается двоичная совместимость с Linux, но она не идеальна). Кроме того, по Linux имеется гораздо больше руководств для начинающих пользователей. Несмотря на изначальную обособленность, FreeBSD пользуется некоторыми разработками GNU, например, компилятором GCC. Что касается ПО, по нашим оценкам, 95% открытых программ, обычно используемых в Linux, замечательно работают и на FreeBSD – Apache, MySQL, KDE, Gnome, Firefox, OpenOffice.org и тысячи других. Удобная система портов во FreeBSD, которые обеспечивают скачивание программ, установку необходимых «заплаток» и их компиляцию при минимуме нажатий на клавиши, настолько удачна, что оказала сильное влияние на систему портов Portage в Gentoo. При повседневной работе в качестве сервера или рабочей станции FreeBSD и Linux очень похожи: запустите Bash и KDE, и вы практически не почувствуете разницы. Администрирование системы и вопросы разработки, однако, отличаются.
В этом месяце мы поместили на наш диск FreeBSD 6.0, и на следующей паре страниц покажем, как установить и использовать эту впечатляющую ОС. Сперва ознакомьтесь со врезкой «Об инсталляторе FreeBSD», а потом приступайте собственно к инсталляции.
Советы по настройке
Если вы планируете использовать FreeBSD на рабочем столе, то наверняка захотите запустить X Window System. Это можно сделать несколькими способами: команда X -configure автоматически создаст конфигурационный файл, который, возможно, придётся слегка подправить; xorgcfg настраивает «иксы» с помощью графического интерфейса; наконец, когда все остальное не работает, спасательным кругом послужит текстовая утилита xorgconfig. Если вы не уверены, что знаете характеристики вашего оборудования, выбирайте графический драйвер VESA: он не слишком быстр, зато работает практически на любой машине. (Учтите, что мышь PS/2 во FreeBSD – это устройство /dev/psm0).
Наверное, вам захочется установить и другие полезные программы. Вставив наш диск, наберите sysinstall (от имени root) и выберите Configure > Packages. Теперь установите дополнительные программы с CD/DVD – перейдите в меню All, отметьте Bash (эта оболочка удобна для работы) и выберите оконные менеджеры и приложения, какие нравятся (их распаковка обычно идет в директорию /usr/local). Если у вас есть широкополосное подключение к Интернету, вы сможете выбрать гораздо больше программ, указав в качестве источника HTTP или FTP.
Следующий этап – небольшая настройка базовых функций.
Взгляните на файл /etc/defaults/rc.conf – это основной конфигурационный файл, определяющий, что происходит с системой во время её загрузки. Все настройки документированы; если нужно что-то изменить, лучше всего переписать /etc/rc.conf (а не редактировать непосредственно /etc/defaults/rc.conf). Вы можете использовать клавиши Alt+Fn для переключения виртуальных терминалов – очень полезная возможность читать конфигурационный файл в одном терминале, а редактировать в другом.
Если на этапе выбора пакетов вы не позаботились о текстовом редакторе, единственно возможным будет Vi.
Зайти дальше
Соберите в одной комнате нескольких пользователей BSD и Linux, скажите слово «лицензия» – и сбегите. Когда вы вернётесь, увидеть что-то, кроме дымящейся воронки, будет большой удачей. Причиной такого противостояния этих двух сообществ является различное понимание термина «свободный»: с точки зрения GNU и ричарда Столмана (Richard Stallman), он означает свободу доступа к коду и распространение этой свободы. а вот разработчики BSD считают, что каждый может делать с исходным кодом всё, что заблагорассудится. Короче, в лицензии BSD говорится: «Делайте с кодом всё, что хотите, только не говорите, что это вы его написали».
В противоположность этому, GPL явно запрещает кому-либо помещать код в проприетарные продукты без публикации сделанных изменений. Легко видеть, что лицензия BSD наиболее привлекательна для традиционного рынка ПО, хотя многие сторонники Open Source не испытывают комфорта при мысли, что код, который они разработали, может оказаться закрытым в проприетарном продукте. Их первоначальный код, распространяемый по BSD-лицензии, по-прежнему останется свободным – но это не гарантирует свободу доступа к любой версии этого кода.
Примеры вы можете встретить в Microsoft Windows. запустите программу ftp из командной строки, и вы увидите упоминание Университета Беркли (где возникла BSD). Microsoft может использовать код BSD в своих сетевых утилитах, но никакой благодарностью разработчикам не связана.
Мы не ставим перед собой задачу решить, какая же из двух лицензий лучше – BSD или GPL: просто радуйтесь, что выбор есть.
Куда вы двинетесь теперь, зависит только от вас – если вы планируете использовать FreeBSD как сервер, можете заняться безопасностью вашей машины, установить серверное ПО и подстроить производительность. Если вам нужна настольная система, займитесь поддержкой 3D-графики, пересоберите ядро с поддержкой дополнительного оборудования и настройте уровень совместимости с Linux. Всё это, да и многое другое, отлично разъяснено в исчерпывающем руководстве пользователя (FreeBSD Handbook), копию которого вы найдёте на нашем диске (см. handbook.html).
Система Ports заслуживает особого внимания. Если вы установили её при инсталляции ОС, вы найдёте огромное дерево каталогов в /usr/ports, содержащее почти все существующие открытые приложения. здесь нет файлов программ – только скрипты Makefile и примочки, обеспечивающие автоматическую сборку и установку. Просто перейдите в каталог требуемой программы (например, cd /usr/ports/x11-wm/xfce4) и введите команду make install. Ports сама скачает исходный код программы, наложит специфические для FreeBSD заплатки, скомпилирует код и выполнит установку. Это фантастически просто – даже необходимые зависимости скачаются и установятся без вашего участия. мы поместили на наш диск несколько собранных пакетов из коллекции портов, кроме того, вы можете «вытянуть» их из Сети, например, так: pkg_add -r xfce4.
FreeBSD имеет активное Интернет-сообщество. Обновлённый сайт проекта – http://www.freebsd.org/ – предоставляет доступ ко множеству списков рассылки и руководствам [в т.ч. и переведённым на русский язык, – прим. перев.] и является превосходным местом для получения помощи. Взгляните на последние выпуски программ для FreeBSD на http://www.freshports.org/, а чтобы поддержать проект, можете купить «коробочную» версию на http://www.freebsdmall.com/. различные дискуссии проходят на сайте http://www.bsdforums.org/ [см. также всеобъемлющий русскоязычный ресурс: http://www.bsdportal.ru/, – прим. перев.], ну и мы тоже не возражаем против вопросов на засыпку о FreeBSD на форуме журнала...