Алексей Федорчук
Линуксцентр
актуализированная версия
2005-07-26
Вообще-то тема настройки DragonFly - совершенно особая, и со временем ей будет посвящена специальная статья. Здесь же я просто дам несколько рецептов, направленных на получение, после перезагрузки, базовой системы, готовой к употреблению на все 100% - по выходе из BSD Installer степень готовности можно определить в 99%.
Чтобы перейти к ручным настройкам, нужно вернуться в начальное меню BSD Installer и выбрать в нем пункт Exit to Live CD (см. рис. 1), или просто авторизоваться как root на любой свободной виртуальной консоли. В результате чего в нашем распоряжении оказываются два важнейших инструмента конфигурирования - командная оболочка (полноценный tcsh) и текстовый редактор (ee - не богатый возможностями, но для наших целей достаточный и простой в использовании).
Теперьт определяемся с объектами конфигурирования. В первую очередь нам нужно а) довести до ума русификацию, б) обеспечить монтирование всех необходимых файловых систем, и в) создать комфортные условия для работы в консоли. Все три цели достигаются редактированием трех файлов - /etc/ttys, /etc/fstab и /etc/rc.conf.
Редактирование /etc/ttys понадобится для ликвидации упомянутого выше безобразия с внешностью псевдографических программ. Для чего в строках, описывающих виртуальные консоли и имеющих вид вроде
# name getty type status comments # ttyv0 "/usr/libexec/getty Pc" cons25 on secureдостаточно заменить тип терминала по умолчанию (
cons25) на cons25r.
Файл /etc/fstab формируется автоматически при создании разделов и файловых систем на них. Однако если мы решили монтировать в каталог /tmp и (или) /usr/obj файловую систему mfs (как это было предложено ранее), то об этом нужно позаботиться самостоятельно, дописав в /etc/fstab такие строки:
swap /tmp mfs rw,async,noatime 0 0 swap /usr/obj mfs rw,noauto,async,noatime 0 0
Обращаем внимание на опции монтирования: async предписывает тот самый асинхронный режим, о котором я упоминал в прошлом разделе, а noatime запрещает обновление времени последнего доступа, что несколько способствует быстродействию. Для каталога /usr/obj добавляется еще и опция noauto - этот каталог нужен только при пересборке ядра и базовой системы, и держать его смонтированным постоянно нет никакого резона.
Файл /etc/rc.conf - главный конфиг для стартовых скриптов при загрузке в BSD-стиле, и со временем мы его изучим во всех деталях. Пака же нам важно включить службу консольной мыши, обеспечить нормальную реакцию клавиатуры и правильный вывод русского текста (последнее - только в случае koi8-r как кодировки экранного вывода.
Мышь с USB-интерфейсом включить проще всего: для этого достаточно отыскать в /etc/rc.conf строку
usbd_enable="NO"
и заменить умолчальное значение на YES.
Мышь с разъемом PS/2 (или, скажем, ноутбучный тачпад - интерфейс у него, скорее всего, тот же) потребует уже нескольких строк:
moused_enable="YES" moused_type="auto" moused_port="/dev/psm0"
Скорость реакции клавиатуры - дело вкуса, конечно, но мне та, что по умолчанию, кажется удручающе медленной. Поэтому я всегда вписываю строку
keyrate="fast"И еще мне очень полезной кажется опция вида курсора - так называемого деструктивного, позволяющего легко отличать позицию его от выделения мышью одиночного символа. Это обеспечивается строкой
cursor="destructive"
Наконец, последнее действие. Если у вас есть под рукой русский текст на носителе, который можно смонтировать в DragonFly (если нет - прошу поверить на слово), и вы после русификации консоли в "сквозной" кодировке koi8-r попробуете его посмотреть, то будете весьма удручены: некоторые русские буквы исчезнут с экрана (слаба Богу, что не из файла:-) при первом же движении курсора мыши. В причины этого пока вдаваться не будем, а скорее исправим это безобразие строкой
mousechar_start="3"
Это опять-таки временная мера - в следующей статье мы научимся обходиться без этого.
Да, чуть не забыл - еще хорошо бы создать обычный пользовательский аккаунт - это легко сделать утилитой adduser в интерактивном режиме, ответив на несколько вполне очевидных вопросов. Не забыв только, что на вопрос о классе пользователя нужно отвечать russian - это автоматически установит одноименную локаль (точнее - локаль ru_RU.KOI8-R). Если же аккаунт был создан посредством BSD Installer, то этот класс требуется для него определить, что проще всего сделать так:
Вот теперь действительно все. Можно перезагружаться и смотреть, что же мы получили в итоге.
А получили мы базовую, но вполне систему - правда, без Иксов и практически без всяких приложений, но с полным набором Unix-утилит, список которых устанавливается просмотром содержимого каталогов /bin, /sbin, /usr/bin и /usr/sbin. Что немаловажно - полностью и корректно русифицированную, с работающей консольной мышью.
Умолчальное ядро DragonFly (т.н. GENERIC) собрано с модульной поддержкой максимально широкого круга оборудования. Во всяком случае, почти все наличествующее у меня "железо" никаких проблем не вызвало: вполне справно функционировали "из коробки" и тачпад моего ноутбука в параллели с USB-мышью, и чипсетный звук от Intel (ICH4) вкупе с чипсетной же сетевушкой, и USB-накопители (флэш-драйвы и мобильный винчестер Fujitsu Handy Drive).
Правда, в DragonFly не используется файловая система устройств (devfs) - файлы устройств именуются статически. С чем связаны некоторые, вполне понятные, неудобства при монтировании USB-накопителей: в зависимости от очередности их втыкания они оказываются то устройством /dev/da0, то - /dev/da1, и так далее, однако с этим легко примириться. Тем более, что, по информации с сайта проекта, в дальнейшем в DragonFly планируется поддержка демона devd - некоего аналога механизма udev в Linux.
Что меня весьма порадовало - в DragonFly по умолчанию включена поддержка Линуксовой файловой системы ext2fs - во FreeBSD для этого требуется перекомпиляция ядра. Проблем с монтированием журналируемого ее варианта ext3fs) также не возникает (правда, естественно, без журналирования). И еще одна приятная мелочь: ext2fs при перезагрузке или останове системы (командами reboot и halt, соответственно) размонтируется корректно, с установкой clean byte. Это заслуживает похвалы, так как во FreeBSD по сию пору раздел ext2fs, не размонтированный перед рестартом руками, бита чистого размонтирования не получает, и повторное его монтирование, без проверки утилитой fsck (разумеется, Linux'овой же, установленной из портов, ни в коем случае не от FreeBSD), оказывается невозможным.
Конечно, для полного счастья в DragonFly не хватает очень многих приложений. И возникает вопрос, откуда их брать. Частичный ответ на это был дан в первой заметке: из прекомпилированных пакетов на соответствующих сайтах, портов FreeBSD, pkgsrc проекта NetBSD и, в некотором количестве, из собственного дерева dfports. Да и ручную сборку пока никто не отменил. Ну а подробнее мы поговорим на эту тему, когда речь дойдет до пакетного менеджмента.
Получение дистрибутива:
ftp-сервер проекта
список зеркал
сборка GoBSD
DragonFly BSD
Handbook.
Главный источник сведений об установке.
A Quick Start on DragonFly
Быстрое вхождение в тему (для опытных и нетерпеливых).
Подробности о
дисках и разделах в BSD
файловой системе UFS.