Глава из книги Сага о FreeBSD
Алексей Федорчук
2008-11-12
В предыдущей главе мы рассмотрели некоторые не вполне стандартные методы установки, базирующиеся, тем не менее, на стандартном установщике sysinstall (хотя и не только на нём). В этой же главе займёмся нетрадиционным сексом нетрадиционными методами установки — попробуем инсталлировать FreeBSD, не прибегая к помощи sysinstall вовсе.
Как известно, отношение к sysinstall в народе — двоякое: те, кто врубился в ее логику, эту программу любят, те, кто не смог или не захотел, — ненавидят. Кроме того, ее псевдографический облик выглядит в наши дни архаичным — в дни, когда даже самые консервативные дистрибутивы Linux, типа Debian, не считают за грех обзавестись графическим инсталлятором.
На посвященных FreeBSD форумах можно встретить даже чисто религиозное отношение к sysinstall: типа он завещан Великим Красным Деймоном, а любые графические установщики — от врага рода человеческого, Глюкавого. И приведут только к "опопсению" этой системы. Правда, корреляция степени "попсовости" с режимом работы видеоподсистемы мне представляется весьма неоднозначной...
Однако и нарекания в адрес sysinstall я слышу с первого своего дня приобщения к FreeBSD, и касаются они как её удобства, так и функциональности. В отношении первого — вопрос очень спорный. Как только что было сказано, однажды поняв логику этой программы, никаких трудностей от общения с нею не испытываешь. Тем не менее, то, что она не нравится многим из числа тех, кто могли бы стать потенциальными пользователями FreeBSD, представляет собой медицинский факт.
А вот касаемо ограниченной функциональности sysinstall, увы, спорить не приходится: созданная более пятнадцати лет назад, эта программа претерпевала с тех пор лишь косметические изменения, и потому не в состоянии задействовать многие нынешние возможности FreeBSD. Типичные примеры тому — организация программных RAID-массивов и задействование файловой системы ZFS, — приведены в предыдущей главе. Правда, там же описаны и пути обхождения этих ограничений — но необходимость мануальной терапии для таких, достаточно обычных в общем-то, действий, в наши дни выглядит довольно архаично.
В рамках официального проекта FreeBSD до сих пор никто палец о палец не ударил ни для кардинального усовершенствования. Более того, интервью с одним из основных разработчиков FreeBSD, Крисом Кенневэем, не так давно опубликованное в журнале Linuxformat (2008, №106, с. 34–35) показывает, что Core Team даже не особенно и в курсе того, что делается в этой сфере.
В принципе, их можно понять: как сказал некогда один из моих корреспондентов, тех, кто мог бы модернизировать sysinstall, это не интересует, а тем, кто хотел бы видеть его модернизированным, это не под силу. Несколько утрированно, но в целом верно. Однако если речь идёт всё-таки о внедрении FreeBSD на пользовательские десктопы, потребность в более современном инсталляторе выглядит более выпукло.
Как известно, спасение утопающих — дело рук самих утопающих. И потому вот уже несколько лет развивается BSD Installer — программа, созданная в рамках самостоятельного проекта, и предназначенная для установки любых BSD-систем. А надо заметить, что инсталляторы Net- или OpenBSD блистают дружелюбием к пользователю ещё менее, нежели sysinstall. Однако впервые BSD Installer оказался востребованным для установки DragonFlyBSD, а затем — в LiveCD системе на основе FreeBSD, FreeSBIE, где он позволил превратить ее в полноценную FreeBSD (тогда ещё 5-й ветки). Затем тот же движок в обрамлении графического фронт-энда на базе библиотеки Qt был задействован в юзерофильных дистрибутивах PC-BSD и DesktopBSD, также базируемых на FreeBSD, и о которых со временем будет отдельный разговор.
И, наконец, новые веяния в мире инсталляторов дошли и до собственно FreeBSD. Летом 2005 года Эндрю Тернер (Andrew Turner), реализуя программу Google Summer of Code-2005, прикрутил BSD Installer к 1-й Бете 6-й ветки FreeBSD. Некоторое время проект этот развивался довольно активно, но потом заглох: последняя его реализация, датируемая маем 2006 года, в виде iso-образа установочного диска доступна здесь.
Тем не менее, BSD Installer заслуживает некоторого внимания — во-первых, с чисто методической стороны, во-вторых, для лучшего понимания работы инсталляторов PC-BSD и DesktopBSD, в-третьих, ввиду того, что реанимация этого проекта (или отдельных его элементов) нельзя исключить в будущем.
Для начала определяемся — установочный диск по приведённой выше ссылке несёт на себе самую обычную FreeBSD 6-й ветки для архитектуры i386. К ней прикручен BSD Installer с текстовым (псевдографическим) фронт-эндом на базе ncurses. Который и стартует автоматически после столь же обычной загрузки через BSD Loader. Сам инсталлятор запускается на первой виртуальной консоли, на вторую выводятся его сообщения, третья же остается свободной, на ней можно авторизоваться в качестве root'а (без пароля).
Главное меню предлагает такой выбор:
Забегая вперед, отметим — в этом меню работает все, кроме последнего пункта, чтобы попасть в шелл, нужно обратиться к той самой третьей консоли.
Выбираем установку. Она начинается с выбора диска. Тут можно выбрать либо весь диск, либо уже существующий слайс, то есть первичный раздел с идентификатором типа файловой системы 4.2BSD. Каковой (ехидно замечаем) проще всего заранее создать, загрузившись с любого Linux LiveCD — Linux'овыми fdisk или cfdisk. Зато выбранный для установки слайс можно поделить на разделы почти как угодно. Предлагаемая по умолчанию схема разметки такая:
/ 256 Mb swap 2xRAM /var 256 Mb /tmp 256 Mb /usr 8192 Mb /home все остальное
Но эту разметку можно перекроить произвольным образом. Хотя приписать файловые системы на другом диске или первичном разделе не удастся.
Далее — выбор компонентов FreeBSD Distributions. Предлагается такое (по умолчанию для установки отмечено все):
Снимаем отметки с того, что не нужно — я ставил только base и man. После этого получаем предложение начать установку и, согласившись с ним, идем курить. А вернувшись, обнаруживаем следующее предложение: установить загрузчик в boot-сектор всех наличных дисков, на что отвечаем снятием отметки с тех, на которые его помещать не нужно.
Теперь можно или перезагрузиться, или начать конфигурирование. Меню конфигурирования — абсолютно то же самое, что и в DragonFly:
После этого делать нечего — остается только перезагрузиться и посмотреть, что получилось. Как нетрудно догадаться, получилась самая обычная FreeBSD после mini-инсталляции — только без дополнительных пакетов, дерева портов и исходников базовой системы. Каковые следует получить обычным образом — например, через pkg_add и cvsup. Который, правда, тоже сначала надо установить.
Вывод: в том виде, в каком была остановлена разработка, BSD Installer для FreeBSD вряд ли представляет практический интерес. Нет ни малейших красивостей установщиков PC-BSD или DesktopBSD — и нет многих возможностей, предоставляемых традиционным sysinstall. То есть для совсем начинающего пользователя установка через BSD Installer может показаться сложноватой, для чуть-чуть не начинающего — бедноватой. И рассматривать этот вариант установки FreeBSD можно только как пробу пера.