Установка PC-BSD 7.1-RC1. Приключения и впечатления

Алексей Федорчук

О персонализированном BSD-демоне, системе PC-BSD — я писал неоднократно (например, здесь и здесь). Однако самостоятельного значения я ей не придавал: система эта мне всегда казалась не более чем трамплином на пути к настоящей FreeBSD. Но вдруг, с выходом очередной пререлизной версии (7.1-RC1) мне подумалось: а не займёт ли она относительно чистой FreeBSD то же самое положение, которое Zenwalk занимает относительно Slackware. И решил я подойти к ней как к самостоятельной системе.Тем более, что кое в чём PC-BSD свою праматерь опережает. Так, уже начиная с версии 7.0.X, она даёт не только ZFS «искаропки», но и позволяет уже при инсталляции разместить на ней корень файловой иерархии — ни о том, ни о другом в чистой FreeBSD пока не идёт и речи. Правда, и в PC-BSD требуется костыль в виде загрузочного раздела /bootdir с файловой системой UFS2, но без него, похоже, пока не обойтись.

Сказано — сделано, скачано — сболванено. Скачивал я PC-BSD DVD 64bit (amd64), и делал это с зеркала Корбины — настоятельно рекомендую если и не всем соотечественникам, то по крайней мере москвичам и гостям столицы: отдача с сервер, похоже, лимитируется только толщиной канала.

Установка выполнялась на десктоп с Intel Core 2 Duo E8400/3 Ггц, конфигурация которого была описана здесь. Из деталей оной, важных для дальнейшего повествования, отмечу только видеосистему — встроенная в северный мост чипсета iG35 интегрированная графика G3500, с разделяемой памятью 128 Мбайт (меньше нельзя, а больше незачем). К чему прилагался LCD-монитор 22″ с разрешением матрицы 1680×1050. И ещё неожиданно сыграли свою роль устройства ввода — в этой роли выступал беспроводной комбо-набор из мыши и клавиатуры от Logitech (хотя последнее как раз и не важно), имевший, разумеется общий приёмник.

Существенно также, что незадолго до описываемых событий в клавиатуре сели батарейки, их запас в холодильнике оказался исчерпанным, идти в лавку мне было лениво, и я просто воткнул резервную проводную USB-клаву. Продолжая после этого работать (для определённости в Zenwalk Linux) как ни в чём ни бывало. Что неоднократно имело место и ранее. Ведь оборотная сторона больших запасов чего бы то ни было — их исчерпание в самый неподходящий момент, и как раз для таких случаев эта клава у меня и лежит.

Пора, однако, возвращаться к инсталляции. Сам процесс в подробностях я описывать не буду — это было сделано раньше. Правда, на примере предыдущей релизной версии (7.01), но в текущем пре-релизе ничего принципиально нового не появилось. Поэтому остановлюсь только на нескольких приятных моментах и моментах, которые, собственно, и создали сюжет настоящей заметки.

Как и раньше, установка с дистрибутивного носителя начинается с загрузки ядра и минимального набора модулей (в том числе и модулей для работы с ZFS), после чего выводится меню BSD Loader’а:

1. Boot PC-BSD installer
2. Boot PC-BSD with ACPI disabled
3. Boot PC-BSD in safe mode
4. Boot PC-BSD in single user mode
5. Boot PC-BSD with verbose logging
6. Boot PC-BSD to emergence console
7. Run installer in VESA mode
8. Enable installer ZFS support
9. Escape to loader prompt

При желании использовать ZFS надо успеть нажать цифру 8 (иначе через десять секунд будет загружен вариант вариант по умолчанию — 1). После этого появляется сообщение

bootzfs set

и отсчёт времени прекращается — для продолжения загрузки надо нажать Enter. К слову сказать, если вместо этого снова нажать цифру 8, появится сообщение

bootzfs unset

и по нажатии Enter загрузка продолжится в умолчальном варианте.

Далее будет задан вопрос о проверке целостности источника установки — это процедура длинная и от неё, экономии времени для, лучше отказаться. Тогда после всё равно неторопливого вывода сообщений о ходе загрузки (времена, когда FreeBSD шрузилась намного быстрее любого Linux’а, остались во глубине 4-й ветки) стартует X-сервер и запускается графический инсталлятор — гордость системы (насколько законная — мы сейчас увидим).

Из приятных моментов в первую очередь стоит отметить окончательную локализацию инсталлятора. Напомню, что если на первом шаге установки в качестве языка выбрать русский, то все дальнейшие сообщения на нём же и будут. Ранее, однако, на следующей стадии установки, при знакомстве с лицензионным соглашением, вместо русского текста выводилась абаракадабра. Ныне это исправлено, и пользователь имеет возможность изнакомиться с текстом BSD-лицензии на языке родных осин (к слову сказать, в отличие от GPL2, русскими переводами BSD-лицензия отнюдь не избалована).

Заодно пользователь узнаёт, что, помимо BSD-лицензии, составляющей первую секцию общего лицензионного соглашения, он принимает также условия лицензии Intel Firmware, правда, уже на английском, и Лицензионное соглашение гуртовщика NVIDIA (оригинальная трактовка NVIDIA driver license agreement, не правда ли?), также приводимое на языке Вильяма нашего, Шекспира.

А вот дальше начались приключения. После выражения согласия с лицензиями и выбора вариантов (новая или обновление/восстановление), типов (десктоп или сервер) и способов (с локального носителя или по сети) установки — все эти действия осуществляются мышью — наступает этап ввода пароля администратора и создания пользовательского аккаунта, где надо уже обратиться к клавиатуре.

И тут я с удивлением обнаруживаю — а клавиатура -то не работает. Вообще. Немало подивился этому обстоятельству, но не очень огорчился: мне встречались случаи, когда USB-клавиатура не подхватывалась на стадии инсталляции, но вполне справно работала потом (архаизм, конечно, ну да ладно). Посему подключил клавиатуру PS/2 (такая у меня в загашнике тоже имеется) и продолжил развлечения.

Однако ожидания мои оказались напрасными. По завершении инсталляции и пирровой победы над Иксами (это будет вторым эпизодом моих PC-BSD’шных приключений) оказалось, выполненных с помощью клавиатуры PS/2, оказалось, сменившая её USB-клавиатура (та самая хвостатая) не работает и в установленной системе. Я начал было грешить на ошибки сборки ядра, как вдруг сообразил, что сразу после загрузки оного клавиатура-то работала — иначе как бы я выбирал пункты меню и нажимал бы Enter для фиксации выбора?

Значит, дело было в ошибке определения клавиатуры при конфигурировании Иксов — успел смекнуть я, подобно тому смекалистому солдату, рядом с которым упала граната. И действительно, оказалось, что конфигуратор Иксов из PC-BSD воспринял приёмник для набора мыши и клавиатуры как два устройства — Mouse0 и Keyboard0, соответственно, — не смотря на отсутствие второго. «Хвостатая клава» же, таким образом, оказалась в роли устройства Keyboard1 — а поскольку она в /etc/X11/xorg сама собой не прописалась, то в Иксах как бы и отсутствовала.

Как временное решение можно было поправить xorg. Но в это время рассвело, я сходил в лавку за батарейками, вставил их, отцепил «хвостатую» — и клавиши волшебным образом ожили…

Венёмся, однако, к приятному — к новым особенностям инсталлятора.

На разметке диска подробно останавливаться не буду. Скажу только, что я выбрал файловую систему ZFS (собственно, ради этого всё и затевалось), но разделы принял те, что были предложены по умолчанию: 200 Мбайт под /bootdir с файловой системой UFS2 (жирно, конечно, но нынче не жалко), 512 Мбайт под swap всё оставшееся пространство под корень файловой иерархии на ZFS.

Следующей приятной неожиданностью было новшество на стадии выбора дополнительных компонентов. Список их достаточно примечателен, чтобы привести его полностью:

  • Amarok — аудиоплейер;
  • Filezilla — универсальный ftp-клиент;
  • Firefox — браузер;
  • Gimp — растровый графический редактор;
  • Inskape — векторный графический редактор;
  • Kdesdk — комплект разработки приложений;
  • K3b — «прожигалка» CD/DVD;
  • Educations and Games — соответствующие пакеты из штатного комплекта KDE;
  • Всякая фигня (ей же Богу, так и написано) — насколько я понял, под фигнёй понимается пакет kdetoys, с определением коего в качестве таковой не могу не согласиться;
  • Quanta Plus — html-редактор из штатного комплекта KDE;
  • OpenOffice.org — офисный пакет в сборке от Infra-ресурса, то есть с полной поддержкой русского языка, правда, довольно старой версии 2.4.2;
  • Opera — ещё один барузер;
  • Pidgin — клиент мгновенных сообщений;
  • Ports — дерево портов FreeBSD;
  • Sources — дерево исходников базовой системы FreeBSD;
  • Thunderbird — почтовый клиент;
  • VLC — универсальный медиапроигрыватель, функционально сходный с Mplayer’ом.

В первую очередь в этом списке обращает на себя внимание наличие портов и исходников собственно FreeBSD — раньше их надо было устанавливать самостоятельно серверов этого проекта, в поставку PC-BSD они не входили ни в каком виде. Ныне же на дистрибутивном диске они представлены отдельными архивами *.tbz (то есть при отказе от них во время инсталляции оба дерева при необходимости легко будет развернуть и позднее).

Удачно, на мой взгляд, вынесены за переделы базовой системы KDE её опциональные (или очень опциональные) составляющие — kdeedu, kdegames, kdesdk, kdetoys, kdewebdev, нужные далеко не каждому. И опячь же, при возникновении потребности, они могут быть установлены впоследствии из таких же tbz-архивов, что и потры с исходниками.

Остальные приложения представлены в собственном формате PC-BSD — pbi) и скомпонованы по принципу минимализма: одна задача — один пакет. Причем эквивалентные им по функциям штатные приложения KDE (такие, как kdemultimedia, krita, kopete, koffice) в базовой системе отсутствуют. К слову сказать, там вообще много чего нет, например, редактора kate, но это отдельная история.

Исключение — браузеры, которые представлены в двух экземплярах плюс имеющийся в штатной поставке konqueror. Что же, в отношении браузеров такая избыточность, на мой взгляд, оправдана (тем более, что никто не неволит ставить все дополнительные). В целом подбор пакетов (с учётом наличествующего в базовой системе) выглядит очень продуманным.

При выборе пакетов надо иметь ввиду следующее: всё они представлены самыми свежими (на момент подготовки дистрибутива) версиями, но за прошедшие несколько дней некоторые из них (например, pidgin) успели стать ещё свежее. И эти освежённые версии (вместе со многими другими приложениями) можно найти в pbi-Каталоге. Так что желательно заранее сравнить версии пакетов в последнем с версиями на диске (это можно сделать только непосредственным просмотром каталога PBI на нём — при инсталляции никакой информации о версиях не выводится). И если первые будут более новыми — отказаться от соответствующих приложений, так как обновление pbi-пакетов всё равно предполагает предварительное удаление предыдущей версии.

Всё сказанное выше исходит из высказанного в начале заметки предложения подходить к PC-BSD как к самостоятельной и, в перспективе, самодостаточной системе. Если же относиться к ней просто как к системе быстрого развёртывания FreeBSD, необходимости в дополнительных компонентах не будет вообще: всё необходимое в дальнейшем можно будет доустанавливать из портов. Напротив, при первом подходе отказываться от портов не следует: число pbi-пакетов пока достаточно ограничено, и вполне вероятно, что жизненно необходимого (или неожиданно понадобившегося) среди них как раз и не окажется. Вот тогда-то старые добрые порты и выручат.

После выбора пакетов происходит собственно установка — разметка диска, создание файловых систем, развёртывание базовой системы (осуществляемое из двух образов *.tar.lzma) и дополнительных компонентов). По завершение этого процесса (на удивление быстром, я едва покурить успел) предлагается перезагрузиться. Установка закончена, но впереди ещё будет конфигурирование видеорежима в Иксах…

Однако сначала появляется меню BSD Loader’F в следующем виде:

1. Boot PC-BSD (default)
2. Boot PC-BSD with ACPI disabled
3. Boot PC-BSD in safe mode
4. Boot PC-BSD in single user mode
5. Boot PC-BSD with verbose logging
6. Run X in VESA
7. Run the Dysplay setup wizard
8. Escape to loader prompt
9. Reboot

Лимит времени на выбор — 5 секунд, после чего грузится вариант из пункта 1. Это приводит к старту Иксов и панели настроек видеорежимов с двумя закладками — основной и «продвинутой». Вторая для меня была не актуальна — на ней можно выставить частотные харатеристики монитора (что не имеет смысла для LCD) и включить вывод на два монитора (у меня был только один). А вот первая…

На первой указываются названия видеочипа и монитора, автоматически определённые разрешение, глубина цвета и видеодрайвер. После чего предлагается либо принять автоматическое определение, либо выставить свои значения, либо просто пропустить этот этап — тогда Иксы теоретически должны бы загрузиться в vesa-режиме, а к настройке их можно было бы вернуться и позднее: не зря же в меню BSD Loader’а присутствует отдельный пункт для запуска визарда настройки экрана.

В прошлый раз я устанавливал PC-BSD на ноутбук с интегрированным видео от ATI (конфигурация описана здесь), и на нём всё было определено и выставлено правильно автоматически: разрешение 1280×768, 24 бита, Иксовый драйвер radeon (фирменных драйверов от ATI/AMD в комплекте нет за их отсутствием в природе, хотя фирменные драйвера от NVIDIA имеются). Так что со своим суперстандартным интегрированным видео от Intel я и в этот раз не ожидал никаких подлянок.

И действительно, видеочип был определён правильно — G35, монитор, естественно, не известен (но это ни на что не влияет), и драйвер прописан как intel. Казалось бы, то, что доктор прописал…

Ан нет. Выставленное автоматически разрешение составило 1024×768, а глубина цвета — 16 бит. Попытки заменить разрешение на родные 1680×1050 (глубина цвета меня не волновала) в ходе тестирования нового видеорежима приводила к странному эффекту: радикально-чёрный экран с многочисленными разноцветными чёрточками, которые сначала мигали и уменьшались в числе, а потом число их стабилизировалось, и мигать они переставали. Впрочем, одновременно переставало всё: машина впадала в полный ступор, выйти из которого можно было только через Reset.

После холодной перезагрузки предложение настроить видеорежим повторилось. Тут я решил прибегнуть к кнопке Пропустить — в расчёте на последующую ручную правку конфига. Результат был почти тот же самый — только чёрточки были почти одноцветные, количество их — поменьше, и мигали они, перед замиранием, подольше, создавая иллюзию, что какое-то тестирование происходит. Впрочем, ступор, вылечиваемый лишь Reset’ом, всё равно наступал — рано или поздно.

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

KDE грузился медленно и печально, но в конце концов предстал во всей красе своей 4-й ипостаси. Видевшие, как выглядит KDE на 22-дюймовом монторе с соотношением сторон 16×9 при разрешении 1024×768, легко представят себе, какое это было душераздирающее зрелище…

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

Сразу скажу, что все попытки ручной правки автоматически сгенерированного xorg.conf оказались безуспешными: Иксы при старте системы запускались или всё в том же режиме 1024x768x16, или не запускались вообще — с описанными ранее симптомами. Да и сам xorg.conf оказался весьма большим и запутсанным, щаставляя вспомнить о временах настройки через xf86config.

В итоге единственным работающим решением оказалось такое. Во-первых, отключить автоматическую загрузку Иксов и менеджера сессий. Кто не знает — в PC-BSD (как и во FreeBSD) это делается через файл /etc/ttys, посредством отключения в нём строки для виртуального терминала ttyv8.

Далее, загрузившись в чисто текстовой консоли, надо (от лица root’а) дать команду

# X -configure

то есть выполнить обычное автоконфигурирование Иксов, как это было описано ранее.

Затем автоматически сгенерированный в ходе этой процедуры файл /root/xorg.conf.new надо скопировать куда следует:

# cp /root/xorg.conf.new /etc/X11/xorg.conf

после чего попробовать загрузить Иксы (уже от имени обычного пользователя) командой

$ startx

Или, при большой вере в удачу, можно вернуть /etc/ttys и сразу грузиться в графическом режиме. Как я и поступил.

На этот раз никакой конфигуратор Иксов не появлялся, сами Иксы грузились в нормальном разрешении, клавиатура работала… но неожиданно отказала мышь. Впрочем, с CRUX’ом плавали, знаем, что делать. Достаточно вписать в xorg.conf строки:

Section "ServerFlags"
	Option	"AutoAddDevices" "False"
	Option	"AllowEmptyInput" "False"
EndSection

После чего всё, наконец, заработало как надо.

А вот стоила ли дивчинка вы…, прадон, очинка выделки, расскажу в другой раз.

Установка PC-BSD 7.1-RC1. Приключения и впечатления: 3 комментария

  1. Так при разбиение диска ни home указать, ни что еще сделать ?

  2. 2 serg markov
    Это ZFS — то есть всё это можно будет сделать потом.
    Скоро опишу, как.

  3. Здраствуйте, я начинающий *nix’оид . Странно , сделал как у вас написано отключил 8-ой терминал(закомментил его стркоу) , написал , при X -configure , вышло сообщение , что не найден терминал для иксов ( ну правно 8-ой то откл. ) Решил продолжить заменил конфиг , написал startx , но вышли лишь сообщения что иксы не могу стартовать на 1-ой консоли . Ну попробывал перезагрузиться(перед этим раскомментил строку терминала) , подумал , что просто 8-ой терминал не перестартовал . Ни фига опять тоже самое . Попробывал опять X -configure . Думал мож просто он сделал конфиг для 1-ого терминала . Неа не вышло . Странно но по нажатию ctrl + alt + f9 , на 8-ую консоль не выходит . Странно вы написала , что есть официальные дрова на nvidia , но я их на офиц. сайте не нашёл (для amd64) . Есть какие-то2006 года , какой-то парень перекомпилировал . Конечно у меню выбора драйвера там есть выбор nv , но он не работает ( вы тоже писали что он у вас не запустился ) . Вообщем , ща под виндой пока сижу =) Дабы свой debian я тоже немного разнёс , выбрав в репозитарии sid =)) Просто сейчас времени нету (сессия ) всё это восстанавливать , но вот с FreeBSD у меня самому точна не получится разобраться , поэтому вас спрашиваю . К слову у меня ноут с видюхой GeForce 7150M . Также вопрос ещё один . Я слышал что во фряхе есть только OSS , и нету ALSA . Просто звук в Debian у меня запускался достаточно хорошо , если не воткнуты наушники (или внешние колонки) то работали колонки ноута , если они воткнуты , то работали наушники (кстати у меня два выхода на наушники работали оба ) . Также работала даже сенсорная панель управления звуков ( я был удивлён =) ) . Во фряхе , у меня работало только колонки ноута ( которые отнюдь не самого лучшего качества и чаще мне бывают нужны либо внешние либо наушники ) . Причём если вставить наушники , то на них никакой реакции не было , и звука в них тоже . То есть звук продолжал идти через наушники ноута . Звуковуха : Conexant High Definition SmartAudio 221 . Слышал что на OSS поддерживается меньше железа и оно постарее чем на алса . Вообще реально настроить на такое железо фряху ? Ноут собственно HP Pavilion dv9819wm . Заранее спасибо .
    P.S. если отправите читать handbook , не обижусь :D

Обсуждение закрыто.