Разное

Freebsd desktop: Живее всех живых. Разбираемся с TrueOS, десктопной версией FreeBSD — «Хакер»

Содержание

Использование FreeBSD на десктопе, версия 2.0

Прошло три года с тех пор, как я попрощался с FreeBSD, по крайней мере, как с десктопной операционной системой. Сомнений в том, что FreeBSD по большому счету является неплохой серверной ОС, у меня нет. В частности, веб-сервер, отдающий страницы этого блога, работал и продолжает работать на FreeBSD. А вот о том, изменилось ли что-то в мире FreeBSD в отношении десктопов, достоверных сведений нет. Так что, я решил разобраться в текущем состоянии дел самостоятельно, попробовав установить FreeBSD на ноутбук Toshiba Portege Z930-DKS, который все равно сейчас пылится у меня без дела.

Примечание: Вас также могут заинтересовать мои старые статьи Быстрая установка FreeBSD и настройка воркстейшн и FreeBSD на десктопе — ставим Flash, Skype и OpenOffice.

Вообще, почему FreeBSD?

FreeBSD имеет интересные возможности и особенности, из которых, помимо прочих, хотелось бы отметить: (1) порты, где весь софт всегда самый свежий и в одном месте, а не так, что для каждого приложения нагугли свой PPA и надейся, что автор его не забросит (2) отличную файловую систему ZFS, (3) dtrace, (4) ipfw и pf, фаерволы с нормальным интерфейсом, а не как в iptables, (5) средства виртуализации jails и bhyve, (6) безопасность, уж не знаю, по принципу Неуловимого Джо или потому что код нормальный и (7) превосходную документацию. В Linux вроде как пытаются портировать и ZFS и dtrace. Однако последний раз, когда я узнавал, все эти проекты имели состояние «в разработке» и не годились для использования в боевых условиях.

Дополнение: В Linux теперь есть достойный аналог DTrace в лице bcc/eBPF.

Обратите внимание, что пункт про документацию, возможно, является самым важным. Посмотрите, например, раздел хэндбука, посвященный jails. А теперь покажите мне такую же документацию по LXC. В свое время, чтобы нормально разобраться в LXC, мне потребовалось около месяца кропотливо собирать обрывки информации по спискам рассылок, блогам и ишьюсам на GitHub. Что, как мне кажется, для серьезного проекта просто недопустимо. Да и с интерфейсом у LXC все примерно так же через жопу, как у iptables и apt. В общем, документация у FreeBSD действительно прекрасна и содержит ответы на 99% всех возможных вопросов. Вы сами в этом скоро убедитесь, так как при написании этой заметки я часто обращался к документации и потому не единожды ссылаюсь на нее далее по тексту.

Не удивительно, что даже сегодня, несмотря на, казалось бы, доминирующее положение Ubuntu, FreeBSD используется все еще достаточно широко. Из известных примеров можно привести Netflix и WhatsApp. Или тот факт, что PlayStation 4 на самом деле работает под управлением FreeBSD. Также FreeBSD используется на многих хостингах, крутится в недрах Яндекса, и не только. Специально для читателей, считающих, что дела у FreeBSD идут не очень и что проект не развивается, хотелось бы оставить ссылку на Отчет о развитии FreeBSD за четвертый квартал 2015 года. Динамика развития проекта действительно впечатляет!

См также мою старенькую заметку Почти объективно на тему «чем FreeBSD лучше Linux».

Установка

Для своих экспериментов я использовал FreeBSD 10.2 RELEASE, образ для флешки, без UEFI:

FreeBSD-10.2-RELEASE-amd64-memstick.img

Отмечу, что инталлятор стал намного приятнее, чем он был до этого. Я просто воткнул флешку, загрузился с нее, затем жал Next, Next, Next и получил работающую систему. Инталлятор сам настроил сетевой интерфейс, сам сделал ZFS на диске, и так далее. По умолчанию все просто и понятно, но при желании можно залезть и в расширенные настройки.

На представленной фотографии вы видите систему в процессе загрузки.

Ставим desktop environment

Во FreeBSD появился новый пакетный менеджер pkg. Стало намного лучше, чем было до этого. Все просто и понятно, не хуже, чем в Ubuntu. Впрочем, старые-добрые порты все так же доступны.

Раз уж из коробки никакого десктоп-окружения по умолчанию во FreeBSD нет, я решил использовать i3. Мне он нравится своей легкостью и эффективным использованием пространства на экране. Впрочем, с тем же успехом ставится и более традиционные окружения, например, Xfce.

Ставим пакеты xorg, i3, i3status, i3lock и dmenu. В ~/.xinitrc дописываем:

Правим конфиг ~/.config/i3/config, используя /usr/local/etc/i3/config в качестве шаблона.

Говорим startx, и радуемся. Звук заработал сам собой, ничего дополнительно настраивать не пришлось. Немного пришлось подправить i3status.conf, чтобы в статусной строке i3 правильно отображал количество свободного места на диске, уровень заряда аккумулятора и подобные вещи. Ссылку на репозиторий со всеми конфигами, получившимся в итоге, вы найдете в конце поста.

Дополнение: Заметил, что если воткнуть наушники, звук продолжает идти через спикер. Суть решения описана в последних двух постах данного трэда. Я просто почитал немного man по snd_hda, провел аналогию между выводом dmesg у автора и у себя, после чего поправил соответствующим образом свой device.hints. После первой перезагрузки все заработало, как положено.

Раскладка и локаль

В ~/.xinitrc дописываем:

export LANG=en_US.UTF-8
export MM_CHARSET=UTF-8

setxkbmap -layout ‘us,ru’ -option ‘grp:alt_shift_toggle’

Если использовать локаль ru_RU.UTF-8, все приложения магическим образом получат русскоязычный интерфейс.

Для отображения текущей раскладки в трее можно использовать утилиту gxneur, прописав ее на автозапуск в конце .config/i3/config:

В качестве альтернативного варианта можно посоветовать xxkb, про который я как-то рассказывал в посте Мини заметки — выпуск 9. Впрочем, я лично в итоге забил на индикатор текущей раскладки, так как никогда не смотрю на него.

Для работы с русским языком в консоли без X11 в ~/.bash_profile следует написать:

Также в /etc/rc.conf нужно добавить строчку:

Переключение раскладки при работе без исксов происходит нажатием Caps Lock.

Разное по мелочи

Для удобства поставил sudo и отредактировал /usr/local/etc/sudoers.

В портах не удалось обнаружить pip3. Как его поставить описано здесь.

Время после установки стояло неправильное, пришлось его поправить:

Поставил bash, так как я плохо знаю идущий по умолчанию csh:

sudo pkg install bash
sudo chsh -s /usr/local/bin/bash eax

В /etc/rc.conf дописываем:

Это нужно, например, для Evince и, вероятно, ряда других приложений.

В ~/.bashrc дописываем:

eval «$(ssh-agent)»
ssh-add

Без этого не будет работать ssh-copy-id. Если напрягает множество файлов с именами вроде .serverauth.1234, которые при этом создаются в домашнем каталоге, здесь рассказано, как это исправить.

Если ставили Git, то в ~/.gitconfig дописываем:

[core]
    pager = less -S

Без этого git diff, git log и прочее выглядят очень странно и непривычно.

Яркость экрана

В пакетах нашлась утилита intel_backlight, позволяющая регулировать яркость экрана:

sudo pkg install intel-backlight
sudo intel_backlight 80

Отлично работает, никаких проблем.

Шрифты

По умолчанию в системе используются шрифты, которые сами по себе вроде бы и неплохи, но выглядят в браузере очень непривычно. И некоторые сайты могут поползти, так как их верстка рассчитана на наличие в системе определенных шрифтов, например Arial, Time New Roman, Courier New, Verdana и других.

Бинарного пакета для этих шрифтов нет, будем ставить из портов:

cd /usr/ports
sudo portsnap fetch extract

Или, если уже успели скачать порты при помощи portsnap, то:

sudo portsnap fetch update

Сама установка:

cd /usr/ports/x11-fonts/webfonts
sudo make install

Готово, веб стал выглядеть нормально!

Более подробно работа с портами описана в заметке Установка и обновление софта во FreeBSD.

Настройка Wi-Fi

С Wi-Fi возникли некоторые трудности. Встроенный в ноутбук Wi-Fi адаптер FreeBSD не подцепила, поэтому я решил заказать маааленький внешний USB-адаптер. На этой странице содержится список поддерживаемых FreeBSD устройств. В итоге я остановился на устройстве TP-LINK TL-WN725N. Согласно Яндекс.Маркету, во многих магазинах также имеется совместимый с FreeBSD адаптер Edimax EW-7811Un.

Работу с Wi-Fi во FreeBSD мы немного затрагивали в заметке Настройка D-Link DIR-320 под FreeBSD. Говорим:

sudo ifconfig wlan0 create wlandev urtwn0
sudo ifconfig wlan0 up scan
# если SSID обрезались, поможет verbose:
sudo ifconfig -v wlan0 scan | grep SSID_START

И… ничего не выводится 🙁 Смотрим в dmesg и видим что-то вроде:

You need to read the LICENSE file in /usr/share/doc/legal/realtek/.
If you agree with the license, set legal.realtek.license_ack=1 in
/boot/loader.conf.

Правим loader.conf, как описано выше, говорим sudo reboot.

После перезагрузки повторяем приведенные выше команды, находим ssid интересующей нас сети.

В /etc/rc.conf дописываем:

wlans_urtwn0=»wlan0″
ifconfig_wlan0=»WPA DHCP»

В /etc/wpa_supplicant.conf пишем что-то вроде:

network = {
  ssid=»tp-link»
  psk=»ololotrololo»
}

Говорим:

sudo service netif restart
netstat -nr

Если все было сделано правильно, должны подрубиться к Wi-Fi. В случае возникновения проблем обращайтесь к хэндбуку.

Как альтернативный и более удобный вариант, говорим:

После правки /etc/rc.conf эта утилита позволит рулить Wi-Fi сетями через GUI. К тому же, у меня ssid при выводе в консоль обрезался до TP-LINK_2.4.... Как это обойти, я так и не выяснил. Пришлось узнать полный ssid из веб-интерфейса роутера, который в общем случае может быть и недоступен. У wifimgr нет такой проблемы.

Поддержка OpenGL

Дополнение: Эта часть статьи уже успела устареть и теперь представляет собой разве что историческую ценность. Все изменения уже приняли в CURRENT и они войдут во FreeBSD 11.

Ноутбук оснащен графической картой Intel HD Graphics 4000. В свободное время я потихоньку изучаю OpenGL, и поэтому очень надеялся, что FreeBSD даст на этой железке хотя бы OpenGL 3.3:

sudo pkg install mesa-demos
glxinfo | grep OpenGL

Но мои надежды не оправдались:

OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Mobile
OpenGL core profile version string: 3.2 (Core Profile) Mesa 11.0.8
OpenGL core profile shading language version string: 1.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 11.0.8
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.0.8
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions:

Тогда я обратился за помощью в мейлинг листы. Оказалось, что поддержка современного OpenGL у моей видеокарты появится (может быть) только во FreeBSD 11.

Если очень не терпится, можно собрать ядро из исходников самостоятельно, как описано здесь. Если вы успешно загрузились с новым ядром и вроде бы все работает, переименуйте /boot/kernel и /boot/kernel.good, а собранный вами /boot/kernel.i915 — в /boot/kernel. Так система будет постоянно загружаться с новым ядром.

После установки ядра требуется создать группу video с gid 44 и добавить в нее вашего пользователя:

pw groupadd video -g 44 -M eax

Чтобы DDS/DXT текстуры не отображались черным, скажите:

sudo pkg install libtxn_dxtn-20140604

В итоге OpenGL 3.3 удалось завести. Вроде все работает нормально. Следует однако учитывать, что поддержка OpenGL 3.3 для Intel HD Graphics 4000 на момент написания этих строк находится в разработке. Поэтому ядро вполне спокойно может крэшатся. С другой стороны, это прекрасная возможность стать контрибьютором в проект FreeBSD — просто находим способ уронить ядро и шлем корку в рассылку freebsd-x11@. Я лично пару таких корок уже отправил. Приятно чувствовать свой, хоть и небольшой, но все-таки вклад в развитие FreeBSD.

Приложения

Поставил веб-браузер Chromium. После его установки нужно было что-то там дописать в /etc/sysctl.conf, соответствующее сообщение выводится сразу после установки. Вроде все работает, видео с YouTube показывается, и так далее. В качестве терминала для i3 был выбран xfce4-terminal. Для чтения PDF и DjVu поставил Evince, притом собирал его из портов, как раз чтобы была поддержка DjVu. Нативной сборки Sublime Text для FreeBSD нет, а включать в системе эмуляцию Linux (кстати, еще одна из интересных фичей FreeBSD) мне не хотелось. Впрочем, старый-добрый Vim с ctags умеет все то же самое, что и Sublime Text. Раньше без эмуляции Linux не было htop, и приходилось использовать обычный top в сочетании c freecolor. Утилита freecolor упоминалась в посте Мини заметки — выпуск 5. Однако htop версии 2.0 портировали под FreeBSD и он уже доступен в портах.

Еще из приложений можно рекомендовать Claws Mail для почты, Liferea для чтения RSS, scrot для снятия скриншотов, gpicview для их просмотра, Gimp для их редактирования, Transmission для торрентов, XChat для IRC, Psi для Jabber, Pidgin как для Jabber, так и для других IM, openvpn для VPN, SMPlayer для видео, DeadBeef для прослушивания аудио и Audacity для его редактирования, а также Virtualbox для виртуалок. Еще кое-какой софт и игры для FreeBSD упоминаются в заметке Аналоги Windows-программ для Linux/UNIX.

Flash, к счастью, теперь уже практически нигде не нужен. Раньше без него не работало видео на YouTube, не показывались панорамы на Яндекс.Картах и так далее, было грустно. Skype и LibreOffice на этом компьютере мне не особо нужны, но в статьях, упомянутых в самом начале этого поста, рассказывается, как их можно поставить. В качестве открытой альтернативы Skype доступен клиент и сервер Mumble. Есть OpenJDK. В частности, при его наличии отлично работает CLion. Есть и OracleJDK, но он требует эмуляции Linux. Dropbox’а нет, с ним получится работать только через веб-интерфейс. Может, это и к лучшему, так как сегодня вместо Dropbox я предпочитаю держать Syncthing на каком-нибудь DigitalOcean. Еще в свое время под FreeBSD были некоторые проблемы с платежными системами. Сейчас они все поголовно предоставляют веб-интерфейс, так что ни с Яндекс.Деньгами, ни c PayPal, ни даже c WebMoney проблем нет. Это справедливо и в отношении ряда других приложений, например, уже упомянутого Dropbox или, скажем, Telegram. Кстати, для последнего в пакетах даже нашелся клиент, правда, только консольный.

В целом, с софтом все стало намного лучше, чем было до этого. Удивительно, но похоже, что мир идет сторону открытых технологий.

Что с зарядкой

Вроде нормально держит. В режиме «сидеть в интернете через Wi-Fi и держать яркость экрана такой, чтобы глазам было комфортно» без подзарядки ноутбук держит примерно три часа (uptime показал 2 часа 30 минут и 45 минут оставалось согласно i3status). Учитывая, что ноут не супер новый, и что 8 часов на моей памяти он никогда не держал, считаю, что это неплохо.

Для вывода уведомлений о низком заряде аккумулятора я написал небольшой скрипт на Python, исходники которого вы найдете в репозитории со всеми конфигами и скриптами к этой заметке. Этот скрипт я прописал на автозапуск через конфиг i3. В процессе написания скрипта выяснилось, что для вывода уведомлений нужно установить и немного подтюнить штуку под названием dunst.

Дополнение: См также Экономия заряда аккумулятора во FreeBSD, или как прожить до 10 часов без подзарядки.

Прочее

Принтерами и сканерами я практически не пользуюсь, так что тестировать их не стал, но cups и xsane соответственно доступны. Из тех же соображений не тестировал веб-камеру, SD-ридер и bluetooth. На точпаде не эмулируется колесико мышки при касании двумя пальцами, на это тоже забил. Подсветку клавиатуры по идее можно включать и выключать. По крайней мере, в Ubuntu это работало. Тоже поленился разобраться, можно ли это вообще настроить под FreeBSD. Пробовал сон и гибернацию системы. Похоже, что не работают — у FreeBSD с этим всегда были трудности. С другой стороны, а так ли в наше время нужна гибернация, учитывая, загрузка ОС занимает пару секунд, и что большинство приложений восстанавливают свое состояние при запуске?

Дополнение: Скролинг на точпаде заработал после выполнения шагов из этой инструкции. TL;DR — ставим пакет xf86-input-mouse, в /boot/loader.conf пишем:

hw.psm.synaptics_support=»1″

Также убедитесь, что в /etc/rc.conf у вас есть строчка:

Затем перезагружаемся. Притом работает скролинг, а также левый клик при быстром касании одним пальцем и правый клик при быстром касании двумя пальцами.

Заключение

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

Все конфиги к этой заметке вы найдете в этом репозитории. Также вас может заинтересовать вот эта довольно свежая статья. В ней рассказывается, как установить FreeBSD на ноутбук ThinkPad X240.

Как всегда, буду рад вашим вопросам и дополнениям.

Дополнение: Как оказалось, FreeBSD довольно неплохо работает на ноутбуке Fujitsu Lifebook E733. Все подцепилось, включая точпад, встроенную Wi-Fi сетевую карту, подсветку клавиатуры и изменение яркости экрана. При этом если Toshiba Portege Z930-DKS под управлением FreeBSD довольно сильно греется, так, что его становится некомфортно держать на коленях, то у Fujitsu Liefebook E733 такой проблемы нет. Работает даже гибернация, но, увы, после нескольких гибернаций стабильно ломается USB-стек. Кроме того, перед гибернацией приходится тушить все виртуалки, работающие под VirtualBox. Еще из багов — в 11.0 куда-то выпилился пакет libtxn_dxtn, ядро может просто взять и упасть без особых причин.

Метки: FreeBSD.

FreeBSD вместо Ubuntu на десктопе

Вместо введения

 

Последние лет 10 на рабочем десктопе использую исключительно операционные системы семейства Linux.

Был RHL, Слака, Debian, Gentoo, пробовал SuSE, даже собирал свой дистрибутив с нуля из исходников, тягая исходники гнушного софта откуда только можно. В итоге пришел конечно же к Ubuntu — минимум головной боли, все из коробки, поставил и забыл.

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

От дистрибутива к дистрибутиву постоянно меняется софт… то syslogd, то syslog-ng, то rsyslog. Unity, Gnome-shell — вроде работает, а вроде и нет. До последнего держался за Gnome Classic, но с этим все сложнее.

Последней каплей стало понимание того, что 64-х битную убунту походу никто и не тестит… банально может не работать драйвер видюхи или какая-нибудь галочка в настройках терминала. 32-х битная — все ОК.

 

И решился я на эксперимент по полной смене ориентации, точнее захотелось примкнуть к армии бздунов и лично убедиться есть ли жизнь на той стороне?

 

Для экспериментов взял FreeBSD 10.1 и NetBSD 6.1.5.

 

Начну с NetBSD… судя по истории развития BSD систем, она наиболее породистая (чего нельзя сказать о Linux который без корней и истории).

В NetBSD все стройно, красиво и минималистично. Рабочая система без иксов — 300 метров, с иксами 600, а с портами и исходниками ядра порядка 1.5 гигов.

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

Пакетный менеджер и pkgsrc не могут не порадовать. Но минимум софта (банально просто так не поставишь chromium и slim, не говоря о драйверах nvidia), проблемы с документацией и гемор с нарезкой дисков руками отбили всю охоту продолжать эксперименты. NetBSD безусловно достойна внимания, но она осталась на уровне FreeBSD 2001-го года.

 

Теперь FreeBSD… однозначно с 2001 года фря сильно прогрессировала, там тебе и модули ядра и драйвера для железа и безумное количество софта в портах.

Процесс установки хоть и не такой красивый как в убунте, зато минимум вопросов, очень быстро, а главное на выходе получаем те же 300-600 метров без портов и исходников.

Что радует во фре:

— Русскоязычная документация начиная с handbook (https://www.freebsd.org/doc/ru/books/handbook/), заканчивая man где описан каждый модуль ядра, как его вкомпилить в ядро и как настраивать (man 4) — это реально круто.

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

— Наличие полноценного менеджера пакетов pkg который позволяет ставить бинарные сборки софта вообще не имея на машине портов. При чем порты и pkg можно миксовать, а pkg отлично справляется, например, с удалением пакетов собранных из портов как со своими собственными.

— Минималистичность конфигов — все буквально в нескольких файлах: /boot/loader.conf, /etc/rc.conf (сердце вообще всего), /etc/sysctl.conf и make.conf — не надо лазить по всей файловой системе, все в одном месте которое легко перенести на другую систему.

— Умный загрузчик который находит корень читая прямо /etc/fstab, а модули грузит прямо из файловой системы еще до загрузки ядра (пользователи Linux поймут от чего я так рад).

— Система отлично живет без модулей ядра, а ядро можно уменьшить до 6-ти метров без потери функциональности.

— От devfs никуда не уйти, но, например, procfs фре больше не нужен (все через sysctl), clang вместо gcc, запуск демонов через service, старый добрый syslogd и inetd.

— Все конфиги для человека и нигде не написано — генерится само, не трогать.
— Никто тебя не ограничивает в выборе путей и ничего не навязывает. Можно сделать просто — поставить gnome или KDE, а можно копнуть глубже и ничего за это не будет.

 

Продолжать можно долго, но фря это идеальный компромисс между функционалом Линуксов и Unix традициями с уникальной лаконичностью, ясностью и прозрачностью системы — понятно как все работает и откуда все берется, хэндбук в помощь и не нужны никакие форумы. Все включается одной строчкой в rc.conf, а сборка ядра это 3 минуты на старом Core 2 Duo. Фря идет своим путем не пытаясь угодить всем вокруг, занимаются развитием одни люди которые делают и ядро и окружение, от версии к версии не меняют все и везде, а нововведения строго дозированы — всего в меру и по необходимости.
Как следствие — не надо каждый день ловить обновление ядра, как это любят в Убунте (ее и это не спасает).

 

Из-за этого от фри складывается очень положительное впечатление — это действительно самодостаточная, полноценная операционная система с идеологией и корнями, а не гнушный зоопарк, подрывающий веру в Open source.

 

Теперь попытаюсь расписать как раскатать FreeBSD 10.1 с нуля  и без инсталлятора.

Это полезно знать что бы понимать как оно работает т. к. в итоге имеем массу рецептов на разные случаи жизни.

На изучение и эксперименты ушло порядка недели, до этого никакого опыта с BSD, только Linux.

 

Подготовка носителя

 

Основа любой ОС это носитель на котором она располагается и загрузчик который вдыхает жизнь в компьютер при каждом включении питания.

 

Соответственно сначала необходимо узнать как подготовить диск для новой системы и установить загрузчик.

Бздя использует свою систему разделов, отличную от Linux и Windows и разделов этих может быть много. Она умеет использовать диск в монопольном режиме, но тогда диск будет полностью испорчен для других систем т. к. там не будет ни одной BIOS партиции (которых 4 штуки). Поэтому обычно FreeBSD партиции помещают в одну специально созданную BIOS партицию с типом 165 aka 0xa5 (FreeBSD/NetBSD/386BSD). BIOS партиции в терминах FreeBSD — слайс (что б не было путаницы).

Это накладывает отпечаток и на принцип именования файлов устройств, например: /dev/ada0s1a — это физическое устройство ada0, слайс 1 (т. е. Первая BIOS партиция), раздел ‘a’ (т. е. первая FreeBSD партиция).

 

Инструментарий для работы с разделами в FreeBSD тоже свой. Например, fdisk, который работает с BIOS партициями совсем другой и не такой простой в освоении как в DOS и Linux. Он умеет бить диск и устанавливать стандартный MBR в нулевой сектор, который сможет загрузить не только FreeBSD, но и другие ОС.

Если захочется установить MBR родной для FreeBSD, то для этого есть команда boot0cfg, но это не лучшая идея.

Для работы с FreeBSD разделами (монопольно или внутри BIOS слайса) используется bsdlabel.

 

Теперь к практике…

 

Данный этап предполагает наличие работающей FreeBSD на машине. Если ее нет или нет желания возиться самому смело пропускаем этот этап и ставим систему инсталлятором из ISO образа с сайта freebsd.org.

 

Для примера я буду использовать memory disk но в реале вместо md0 будет, например, ada0.

 

Подготовка md0 на 4 гига (этот шаг только для демонстрации и не требуется):

dd if=/dev/zero of=disk.img bs=1M count=4000

mdconfig -f disk.img

 

После этого появится /dev/md0 который для системы является физическим диском, но реально находится в файле disk.img.

 

Создаем слайс для FreeBSD на весь диск (подробности в мануале: https://www.freebsd.org/doc/ru/books/handbook/boot-blocks.html):

fdisk -I md0

 

Записываем на диск стандартный MBR (для установки родного MBR, как я уже писал, можно использовать boot0cfg):

fdisk -B md0

 

Создаем на только что созданном первом и единственном слайсе дефолтную разметку FreeBSD:

bsdlabel -w md0s1

 

Устанавливаем в первый слайс загрузчик FreeBSD (т. к. слайс активный MBR с легкостью найдет его и передаст управление загрузчику FreeBSD):

bsdlabel -B md0s1

 

Теперь разбиваем слайс в интерактивном режиме на один или несколько разделов FreeBSD:

bsdlabel -e md0s1

 

Запустится текстовый редактор (скорее всего VI). Размер указывается в секторах по 512 байт,

соответственно прежде чем менять цифры желаемую длину делим на 512 и получаем количество секторов для bsdlabel.

Тип раздела для корня должен иметь тип 4.2BSD, для свопа: swap.

Вместо длины и/или смещения можно использовать ‘*’ — значит на всю длину после последнего раздела (bsdlabel сам вычислит нужные значения).

 

Вот пример файла:

# /dev/md0s1:

8 partitions:

#          size     offset    fstype       [fsize bsize bps/cpg]

  a:    7177006         16    4.2BSD        0     0

  b:    *                         *      swap

  c:    8177022          0      unused        0     0     # «raw» part, don’t edit

 

После сохранения и выхода из редактора bsdlabel сделает все что мы заказывали. Теперь форматируем и монтируем корень (вместо mkfs используется newfs):

newfs md0s1a

mount /dev/md0s1a /mnt/

 

Настало время раскатать базовую систему, ядро и порты с исходниками. Взять необходимое можно из дистрибутива на диске (ISO образа) или скачать с сайта.

 

Необходимые файлы (бинаные снепшоты) для 10.1 под amd64 находятся тут:

ftp.freebsd.org/pub/FreeBSD/snapshots/amd64/10.1-STABLE/

 

На диске с дистрибутивом искать тут:

/usr/freebsd-dist/

 

Так же можно скомпилировать всю базовую систему с ядром прямо из исходных текстов (src.txz).
Для справки делается это так — в /usr/src/ делаем:
make buildkernel
make buildworld
make installworld DESTDIR=/mnt/
make installkernel DESTDIR=/mnt/

 

Предположим что решили использовать дистрибутив, для этого монтируем диск в /mnt_dist/ и раскатываем базовую систему:

tar -C /mnt/ -zxf /mnt_dist/usr/freebsd-dist/base.txz

 

Распаковываем стандартное ядро в /boot/kernel либо копируем наше с модулями или без из существующей системы:

tar -C /mnt/ -zxf /mnt_dist/usr/freebsd-dist/kernel.txz

либо:

cp -r /boot/kernel/* /mnt/boot/kernel/

 

По желанию распаковываем исходники системы для сборки ядра:

tar -C /mnt/ -zxf /mnt_dist/usr/freebsd-dist/src.txz

 

Порты можно взять из дистрибутива:

tar -C /mnt/ -zxf /mnt_dist/usr/freebsd-dist/ports.txz

либо скачать актуальный снепшот с ftp.freebsd.org (например, http://ftp.freebsd.org/pub/FreeBSD/ports/ports/ports.tar.gz).

 

Перед chroot монтируем devfs в новую систему (procfs хоть и есть но больше не требуется):

mount -t devfs devfs /mnt/dev/

 

Теперь можно делать chroot в новую систему для начальной настройки:

chroot /mnt /bin/sh

 

Внутри ставим утилиты первой необходимости (нужна сеть, поэтому если есть прокси, то придется установить переменные окружения HTTP_PROXY и HTTPS_PROXY):

pkg install bash mc vim wget sudo (тут все по желанию).

 

Устанавливаем пароль суперпользователя и по желанию меняем шелл:

passwd root

chsh -s /usr/local/bin/bash root

 

Устанавливаем часовой пояс:

tzsetup

 

Создаем /etc/fstab для монтирования корня и подкачки следующего содержания:

/dev/md0s1a    /                    ufs     rw,noatime      1       1

/dev/md0s1b    none            swap    sw                 0       0

# это для Linux

#linproc            /compat/linux/proc linprocfs rw    0       0

#/dev/ada0s2  /u01               ext2fs  ro                    1       2

 

Создаем /etc/host.conf следующего содержания:

hosts

dns

 

На случай последующей сборки монолитного ядра можно сразу создать /etc/make.conf с дефолтными настройками:

KERNCONF=MYKERNEL

NO_MODULES=TRUE

 

Создаем /etc/rc.conf с:

hostname=»mynewhost»            # имя хоста

keymap=»ru.win»

ifconfig_em0=»DHCP»                # настройка сетевого интерфейса, где em0 его имя (ищем подходящий командой ifconfig)

sshd_enable=»YES»                   # включаем sshd

dumpdev=»AUTO»

hald_enable=»YES»                    # нужно для xorg

dbus_enable=»YES»                   # нужно для xorg

#linux_enable=»YES»                  # для совместимости с Linux

slim_enable=»YES»                    # для запуска менеджера дисплея slim

#wlans_urtwn0=»wlan0″            # пример для WiFi с USB донглом

#ifconfig_wlan0=»WPA DHCP»      # пример для WiFi, потребуется создать 

                                                        # /etc/wpa_supplicant.conf командой wpa_passphrase

sendmail_enable=»NO»             # отключаем sendmail

sendmail_submit_enable=»NO»

sendmail_outbound_enable=»NO»

sendmail_msp_queue_enable=»NO»

cron_enable=»NO»                      # отключаем cron

 

Создаем /etc/resolv.conf с:

search mydomain.com              # имя нашего домена

nameserver 192.168.1.1           # адрес DNS сервера

 

В /etc/sysctl.conf добавляем:

kern.ipc.shm_allow_removed=1    # для chrome

#compat.linux.osrelease=2.6.18    # если будут проблемы с эмуляцией Linux

 

В /boot/loader.conf по желанию добавляем:

nvidia_load=»YES»               # загрузка драйвера nvidia который установим позже

kern.vty=vt                              # переключаем консоль на VT драйвер с поддержкой UTF-8 и графики

                                                # (должна быть поддержка в ядре)

#ext2fs_load=»YES»            # для Linux и если ядро не монолит

#linux_load=»YES»              # для Linux и если ядро не монолит

 

В /root/.profile можно указать адрес прокси и локаль:

export HTTP_PROXY=http://login:[email protected]:8080

export HTTPS_PROXY=http://login:[email protected]:8080

export LANG=ru_RU.UTF-8

 

Добавляем не root пользователей командой:

adduser

 

По желанию меняем им шелл на bash:

chsh -s /usr/local/bin/bash ИМЯ_ПОЛЬЗОВАТЕЛЯ

 

Что бы работал su добавляем нашего не root пользователя в группу wheel (руками правим /etc/group или прям при добавлении приглашаем его в группу).

 

Если ставим sudo, то в /usr/local/etc/sudoers (лучше командой visudo) раскомментируем строку:

%wheel ALL=(ALL) ALL

 

В домашней директории пользователей в .profile тоже можно указать локаль и прокси (см. выше).

 

Если нужен tsocks ставим его из портов или через pkg, а в /usr/local/etc/tsocks.conf указываем адрес socks прокси:

server = 192.168.1.1

server_type = 5

server_port = 1080

 

Все, если я нигде не ошибся базовая система готова, делаем:

umount /mnt/dev

umount /mnt/

и можно попробовать перегрузиться, выбрав для загрузки наш новый диск.

 

При желании перед этим можно пересобрать ядро. Если кратко:

1) В /usr/src/sys/amd64/conf создаем копию GENERIC и называем ее MYKERNEL (имя платформы в пути не обязательно amd64).

2) Правим MYKERNEL как нам хочется: добавляем то, что упоминается в dmesg и kldstat и выключаем все что не надо, мое ядро в итоге 5.9 мегов.

3) Поднимаемся в /usr/src/ и делаем ‘make buildkernel KERNCONF= MYKERNEL’

4) Если все ОК то делаем ‘make installkernel’ — в /boot/kernel новое ядро, в /boot/kernel.old старое.

 

Т.к. в /etc/make.conf мы указали дефолтное имя ядра, в make его указывать не обязательно, а модулей на выходе не будет за счет NO_MODULES.

 

Если все верно, то после логина под root мы попадаем в новую чистую систему и имеем консоль на русском языке, рабочую сеть и vim с mc.

 

Настраиваем иксы

 

Устанавливаем xorg, hal, dbus и slim, а из портов /usr/ports/x11-fonts/webfonts и для nvidia /usr/ports/x11/nvidia-driver.

При сборке драйверов nvidia отключаем совместимость с Linux.

 

В /etc/rc.conf мы уже включили  hald и dbus ранее, поэтому теперь только запускаем руками:

service hald start

service dbus start

 

Загружаем руками драйвер nvidia (после перезагрузки подцепится сам благодаря /boot/loader.conf):

kldload nvidia

 

Запускаем Xorg с ключом -configure и получаем в /root/xorg.conf.new дефолтный конфиг иксов.

Переносим его в /etc/X11/xorg.conf и правим.

 

В секции «Module» нужны ‘Load «glx»‘ и ‘Load «freetype»‘.

 

В «Files» если нет добавляем FontPath для:

/usr/local/lib/X11/fonts/TTF/

/usr/local/lib/X11/fonts/Type1/

/usr/local/lib/X11/fonts/cyrillic/

/usr/local/lib/X11/fonts/dejavu/

/usr/local/lib/X11/fonts/LinLibertineG/

/usr/local/lib/X11/fonts/Liberation/

/usr/local/lib/X11/fonts/GentiumBasic/

/usr/local/lib/X11/fonts/Carlito/

/usr/local/lib/X11/fonts/Caladea/

/usr/local/lib/X11/fonts/bitstream-vera/

/usr/local/lib/X11/fonts/webfonts/

 

Для nvidia в «Device» прописываем:

Driver «nvidia»

Option «RenderAccel» «true»

Option «AllowGLXWithComposite» «true»

 

И не забываем добавить:

Section «Extensions»

  Option «Composite» «Enable»

  Option «RENDER» «Enable»

EndSection

 

Конфиг slim в /usr/local/etc/slim.conf

Можно поискать для него темы в Инете и положить распакованные директории с ними в:

/usr/local/share/slim/themes/

 

После этого в slim.conf в current_theme указываем имя темы. Больше ничего трогать не требуется.

 

Иксы готовы.
 

Переходим к оконному менеджеру и оформлению

 

Рассмотрим вариант с openbox, но не менее интересны awesome и evilwm.

 

Ставим (pkg install или /usr/ports/): openbox, openbox-themes, obconf, obmenu, xrandr, xbindkeys, feh, xcompmgr, trayer и alltray.

 

По желанию: pcmanfm, lxpanel, gnome-ssh-askpass2, rox, xscreensaver или xlockmore, gkrellm, transset, tint2 и conky.

 

Скорее всего понадобится: thunderbird, pidgin, chromium, putty и libreoffice с пакетом локализации ru-libreoffice и ru-hunspell, vlc, gqview, mupdf или xpdf.

 

В домашней директории не root пользователя создаем .xinitrc:

 

Там можно указать адрес прокси как в .profile и прописываем локаль:

export LANG=ru_RU.UTF-8

export LC_ALL=ru_RU.UTF-8

 

Если хотим что б пароль от ssh ключей спрашивался не в консоли:

export SSH_ASKPASS=/usr/local/bin/gnome-ssh-askpass2

 

Опять же для ssh лучше запустить это:

killall ssh-agent

eval `ssh-agent`

 

Если мониторов несколько, то можно указать кто где и установить основной (в примере основной DVI-I-1 и он слева):

xrandr —output DVI-I-1 —primary —left-of VGA-0

 

Выключаем бип в терминале если напрягает писк:

xset b 0

 

Раскладка клавиатуры и форма указателя мыши:

setxkbmap -layout «us,ru» -option «grp:ctrl_shift_toggle,grp_led:scrol

xsetroot -cursor_name left_ptr

 

Устанавливаем фон рабочего стола:

feh —bg-center $HOME/Pictures/background.png

 

Либо стартуем pcmanfm для отображения иконок на столе, там же настраивается фон. К сожалению пропадает меню openbox по правой кнопке (для evilwm не страшно):

pcmanfm —desktop &

 

Если нужна панелька:

lxpanel &

 

Горячие клавиши из .xbindkeysrc:

xbindkeys &

 

Плавное затухание окошек и тени (теней у меня не появилось):

FreeBSD на десктопе :Настоящая система

Это заметка относится именно к  настольному применению FreeBSD — использованию его на рабочей станции. В последнее время многие провайдеры телекоммуникаций кроме непосредственно услуг доступа в интернет предоставляют так называемое цифровое телевидение — IPTV. Использование FreeBSD не может быть ограничением для его просмотра, вы согласны? Если да, идем ставить vlc — практически единственный плеер, способный воспроизводить IPTV под настоящей ОС.

# /usr/ports/multimedia/vlc

#  make install clean

Соглашаемся с опциями установки, менять ничего не надо.

Файл с запакованными исходниками vlc-1.0.5.tar.bz2 имеет размер примерно 20 Мбайт, кроме того требуется еще целый ряд мелких портов-зависимостей, так что приготовтесь к длительной сборке (пару часов на процессора 2 GHz).После окончания установки плеер автоматически добавляется в меню Gnome:

Практически все провайдеры осуществляют вещание по протоколу multicast, при котором копии пакетов направляются определённому подмножеству адресатов. Для того, чтобы стать членом группы, узел получателя инициирует запрос на маршрутизатор локальной сети с использованием протокола IGMP. По умолчанию vlc будет искать поток на первом интерфейсе, который не обязательно подключен к провайдеру. Многие псевдоспециалисты на просторах Рунета советуют явно прописать маршрут к сети 224/6. Однако это практически всегда бессмысленно, вот например, если поток приходит через специальный VLAN или через отдельный PVC ATM, что указывать в качестве шлюза? Для vlc необходимо явно указать интерфейс, на которых следует отправлять IGMP-пакеты (у меня в примере msk0). Эта настройка «перекрывает» таблицу маршрутизации.

Вот, собственно и всё. Скачиваем список каналов, запускаем канал.

Вот так выглядит IGMP-запрос:

23:14:33.091026 00:13:77:61:23:34 > 01:00:5e:00:02:02, ethertype IPv4 (0×0800), length 46: (tos 0×0, ttl 1, id 35347, offset

0, flags [none], proto IGMP (2), length 32, options (RA))

Вот мы уже мультикаст-группе:

23:19:36.564825 00:13:77:61:23:34 > 01:00:5e:00:02:06, ethertype IPv4 (0×0800), length 46: (tos 0×0, ttl 1, id 56656, offset

0, flags [none], proto IGMP (2), length 32, options (RA))

0.0.0.1 > 232.0.2.6: igmp v2 report 232.0.2.6

А вот уже пошел udp-поток:

23:19:36.609281 00:11:20:85:19:80 > 01:00:5e:00:02:06, ethertype IPv4 (0×0800), length 1358: (tos 0×0, ttl 5, id 25, offset

0, flags [DF], proto UDP (17), length 1344)

10.253.2.110.3000 > 232.0.2.6.3000: [no cksum] UDP, length 1316

23:19:36.611492 00:11:20:85:19:80 > 01:00:5e:00:02:06, ethertype IPv4 (0×0800), length 1358: (tos 0×0, ttl 5, id 25, offset

0, flags [DF], proto UDP (17), length 1344)

10.253.2.110.3000 > 232.0.2.6.3000: [no cksum] UDP, length 1316

23:19:36.613463 00:11:20:85:19:80 > 01:00:5e:00:02:06, ethertype IPv4 (0×0800), length 1358: (tos 0×0, ttl 5, id 25, offset

0, flags [DF], proto UDP (17), length 1344)

А это смена канала:

23:17:13.294157 00:13:77:61:23:34 > 01:00:5e:00:02:1b, ethertype IPv4 (0×0800), length 46: (tos 0×0, ttl 1, id 1447, offset

0, flags [none], proto IGMP (2), length 32, options (RA))

0.0.0.1 > 232.0.2.27: igmp v2 report 232.0.2.27

Как видно, настроить просмотр IPTV на хосте, подключенном непосредственно к провайдеру, довольно просто. В последующих статьях рассмотрим более сложную и всегда проблемную задачу — проброс IPTV через сервер на FreeBSD. Сразу предупреждаю, что проблемная она только для любителей «несетевых» систем, а-ля Windows/Linux, для настоящей системы нет нереализуемых задач.

FreeBSD Desktop (PCBSD) или FreeBSD 10.1-RC3 в качестве домашней ОС

Наверняка вы когда-нибудь задумывались об использовании бесплатной ОС на домашнем компьютере. Первое, что приходит на ум это конечно же Linux, но сегодня говорить мы будем не о нем. Мы поговорим о такой системе как FreeBSD, а точнее о созданной на ее основе PC-BSD. Кто-то может посчитать, что это не трушно использовать юникс десктоп не настроив его самостоятельно из консоли и возможно будет прав. Но все же мир идет к тому, что «входной порог» для использования систем становится ниже. А значит и FreeBSD на домашнем компьютере не должна удивлять. В этом нам поможет замечательный дистрибутив под названием PC-BSD.

Данная система основана на ядре FreeBSD, но вектор ее развития направлен в сторону десктопных систем и как мне кажется разработчикам удалось сделать малотребовательную, быструю систему. В данной статье хотелось бы продемонстрировать как можно просто и быстро установить данную систему. Скачать дистрибутив можно с оффициального сайта разработчика совершенно бесплатно. Далее поглядим на процесс установки PC-BSD:

После того как мы загрузимся с устройства на котором будет находится образ скаченной нами системы, перед нами возникнет следущая картина:

 

Здесь мы можем выбрать способ установки, а именно Графический либо консольный. В данном примере выберем Graphical Install

Затем пару секунд будем наблюдать не очень интересную картину =)

Дальше установщик предложит выбрать язык:

Далее нам установщик предложит выбрать устанавливаемую систему, а так же можно настроить устанавливаемые компоненты:

В качестве выбора мы имеем 3 позиции. PC-BSD понятно что такое, но вот наверно TrueOS вызвала некоторое удивление. Чтобы прояснить, могу кратко сказать, что TrueOS — это та же серверная bsd но слегка «допиленная» командой pc-bsd. Далее можно выбрать компоненты системы «по вкусу»

Конечно все это можно будет установить и после установки PC-BSD

 

 

Здесь видно список выбранного софта

 

 

 

В следущем шаге установщик предложит настроить раздел на который будет ставить систему, мы оставим все по умолчанию и нажмем «Далее»

Затем начнется установка и придется немного подождать

По окончанию установки увидим характерное сообщение:

Затем нажимаем «завершить» и система автоматически перезагрузится, далее останется сделать парочку штрихов типо выбора языка, временной зоны, создания пользователя:

После чего нужно залогиниться созданным пользователем

После того как вход будет осуществлен перед нами предстанет по сути gnome3 на колесах BSD. Далее представлено несколько скриншотов:

Для установки приложений в системе предусмотрена программа App Cafe. Она по сути является аналогом AppStore. В данной программе мы можем с помощью поиска найти интересующую нас программу и установить, а так же обновить имеющиеся.

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

В заключении могу сказать, что система заслуживает внимания и впринципе удобна в использовании.

LiveCD и десктопные варианты BSD-систем — «Хакер»

Содержание статьи

Даже у ветерана Linux, многие годы живущего на свободном ПО, установка и
использование BSD-системы может вызвать множество вопросов. Несмотря на
кажущееся сходство, у этих систем много различий, а правильно установленная ОС
зачастую требует немалой работы напильником, чтобы стать пригодной к
использованию. Это отпугивает новичков, однако те, кто хочет просто взглянуть на
BSD, не вникая в подробности ее работы, могут попробовать специальные LiveCD и
десктопные варианты этих систем.

В отличие от мира Linux, где ежедневное появление нового дистрибутива уже
давно стало нормой, а общее число различных редакций операционной системы
перевалило за десятки тысяч, количество BSD-систем можно пересчитать буквально
по пальцам. Существует несколько форков когда-то вышедшей из стен Беркли
оригинальной BSD, которые по праву считаются совершенно разными и в большинстве
случаев несовместимыми между собой операционными системами. Имя им – FreeBSD,
NetBSD, OpenBSD и, как бы странно это ни звучало, DragonFly BSD. Каждая из них
представляет собой полноценную ОС, занимает определенную нишу и разрабатывается
независимой командой энтузиастов. До недавнего времени на этом разнообразие
вселенной BSD и заканчивалось, однако времена меняются, и BSD-системы все больше
становятся похожи на операционки общего назначения, которые могут применять для
повседневного использования и те, кто с ними совершенно незнаком. Время от
времени на свет появляются различные редакции BSD, призванные упростить процесс
вливания новых пользователей.

Самый простой путь «показать народным массам BSD» заключается в
распространении LiveCD. В свое время было разработано несколько редакций
BSD-систем, выполненных в этом формате. Наиболее известным их представителем
стал Frenzy, основанный на FreeBSD (хотя, как будет сказано ниже, цель его
разработки была совсем иная). Вслед за ним были созданы Jibbed и BSDAnywhere,
аналогичные системы на базе NetBSD и OpenBSD. Также почти в одно время (с
разницей в три месяца) независимыми командами были созданы десктопные редакции
FreeBSD под названием PC-BSD и DesktopBSD, которые, хоть и не позволяли
загружать ОС прямо с диска, но были укомплектованы простыми в использовании
графическими инсталляторами и утилитами для настройки и сопровождения системы.

 

Инструмент сисадмина Frenzy

Домашняя страница:
frenzy.org.ua (frenzy.bspu.ru)
Последний релиз: 1.3 (26 июля 2010)
Операционная система: FreeBSD 8.1

В отличие от всех остальных систем, описанных в данном обзоре, смысл
разработки Frenzy состоял вовсе не в том, чтобы показать новичкам все чудеса
мира BSD, Сергей Можайский (к слову, один из авторов ][) делал LiveCD для себя и
всего лишь хотел иметь инструмент системного администратора всегда под рукой.
Однако то, во что вырос этот инструмент спустя годы, вполне можно назвать
системой для быстрого ознакомления с FreeBSD. Frenzy содержит не только все
необходимые программы сисадмина, включая различные снифферы, порт-сканеры,
утилиты мониторинга, но и стандартный набор программ повседневного
использования, среди которых есть Firefox, Opera, Chrome, XMMS, MPlayer, Psi,
Sylpheed.

Загрузка Frenzy занимает совсем немного времени, но два раза на своем пути
она будет прервана на 5 и 15 секунд. В первом случае это будет меню загрузчика
FreeBSD, используя которое, можно отключить ACPI, загрузиться в
однопользовательском режиме и произвести любые другие настройки ядра. Во втором
на экран будет выведено уже собственное меню Frenzy, с помощью которого можно
изменить некоторые параметры загрузки системы, включая возможность выбора языка
интерфейса, загрузки всей ОС в память (что сделает ее гораздо более быстрой),
отмены монтирования жесткого диска и т.д. Через несколько секунд после этого
система будет полностью готова к работе, на экране появится стандартное
приглашение командной строки.

После ввода команды startx произойдет запуск X-сервера с оконным менеджером
Fluxbox, монитором Conky внизу рабочего стола, программой для размещения иконок
на рабочем столе idesk и переключателем раскладки клавиатуры xxkb (ее иконку
можно увидеть в трее). Стоит сказать, что запускается и работает все это очень
быстро, а выглядит стильно. Какого-либо конфигурирования иксов не требуется,
разрешение экрана выбирается как раз под монитор. Звук работает из коробки, сеть
придется настраивать руками, но эта операция не должна вызвать проблем, так как
правильный драйвер уже активирован. Совместимость с каким-либо нестандартным
оборудованием не предусмотрена, поэтому если обычная FreeBSD умеет его
подхватывать, должна и Frenzy, иначе – возня с консолью и танцы с бубном.

Как и в стандартном Fluxbox, правая кнопка мыши открывает меню, наполненное
огромным количеством софта на все случаи жизни. Приведу лишь краткий список
того, что есть на диске:

  • Шесть браузеров: Opera, Firefox, Chrome, Dillo, Elinks, Lynx.
  • Почтовые программы Sylpheed и Mutt.
  • Редакторы Leafpad и Vim.
  • Программы для общения Psi, Irssi, CenterIM.
  • Утилита для анализа и взлома беспроводных сетей aircrack-ng.
  • VPN-клиенты openvpn, pptp-client и vpnc.
  • Сетевые мониторы trafshow, bmon, darkstat, iftop.
  • Программы для туннелирования 3proxy, stunnel и другие.
  • Сетевой анонимайзер TOR.
  • Программы для удаленного управления telnet, rdesktop и vnc.
  • Сетевой сканер nmap.
  • Сканеры безопасности nessus и nikto.
  • Сниферы wireshark и ettercap.
  • IDS Snort.
  • Антивирус ClamAV с графическим интерфейсом ClamTK.
  • Виртуальная машина VirtualBox.
  • Архиваторы для всех типов архивов.
  • Множество утилит для работы с жестким диском и
    восстановления/уничтожения данных.
  • Множество утилит для отладки и работы с различными протоколами.

Кроме такого разнообразного набора программ, Frenzy включает в себя программу
настройки системы FrenzyConf (команда frconf, также доступна из меню), которая
позволяет настроить консоль (выбрать шрифты, настроить мышь и т.д.), выбрать
метод подключения к сети (ADSL, LAN, VPN) и настроить его, активировать
различные сетевые сервисы. Также в пункте меню «Настройка» есть две программы,
которые устанавливают Frenzy на жесткий диск или USB-Flash. Во всем остальном
это стандартная FreeBSD, которая умеет сама подстраиваться под оборудование,
наполнена первоклассным софтом и обладает отличным графическим интерфейсом. Если
ты хочешь опробовать FreeBSD в качестве основной системы, я бы рекомендовал
остановиться именно на Frenzy, которая, хоть и не имеет предустановленного KDE,
работает из коробки и снабжена почти всем, что нужно гику.

 

BSDAnywhere – безопасность превыше всего

Домашняя страница:
bsdanywhere.org
Последний релиз: 4.6 (5 ноября 2009)
Операционная система: OpenBSD 4.6

BSDAnywhere – это LiveCD на базе OpenBSD. Загрузка дистрибутива начинается с
нажатия <Enter> в ответ на приглашение загрузчика. В OpenBSD не предусмотрено
какого-либо загрузочного меню, поэтому если появится необходимость в отключении,
например, ACPI, это придется делать руками, с помощью ввода команд и изменения
соответствующих переменных (boot -c; disable acpi; quit). После загрузки ядра и
начальной инициализации системы на экран будет выведено несколько вопросов, на
которые придется ответить, чтобы выполнить первоначальную настройку OpenBSD.
Вопрос первый: выбор раскладки клавиатуры. Эта настройка касается только
консоли, поэтому можно смело жать единицу, чтобы выбрать стандартную английскую
клавиатуру. Вопрос второй: выбор временной зоны. Нет большого смысла в выборе
временной зоны во время первой загрузки LiveCD, поэтому можно просто ввести GMT,
что означает время по Гринвичу. Вопрос третий: автоконфигурирование сети. Если в
сети есть DHCP-сервер, имеет смысл нажать <Enter>, иначе – набираем «no» и
вводим настройки вручную.

После ответа на все вопросы на экран вывалится стандартный getty с
приглашением к вводу логина. На LiveCD активно два аккаунта: live и root, о чем
сказано в предупреждающем сообщении. При входе с именем live будет запущен
X-сервер с любимым многими старожилами менеджером окон IceWM и весьма стильной
обоиной с логотипом проекта в качестве фона. Набор доступных приложений невелик:
терминал xterm, файловый менеджер xfe, просмотрщик изображений xfi, музыкальный
плеер xmms, браузер Firefox, почтовики Thunderbird и Mutt, IRC-клиент irssi,
программы удаленного доступа к рабочему столу OpenNX и VNC.

Само собой разумеется, LiveCD включает в себя все наработки проекта OpenBSD,
включая OpenSSH и OpenCVS. В остальном это даже не ознакомительный LiveCD, а
система, созданная поклонниками OpenBSD для того, чтобы привычная среда всегда
была у них при себе.

 

Jibbed – NetBSD в кармане

Домашняя страница:
www.jibbed.org
Последний релиз: 5.0.1
Операционная система: NetBSD 5.0.1

Уж не знаю, почему разработчики этого LiveCD назвали его именно Jibbed (что в
переводе с английского означает «упрямились»), но нужно быть действительно
упрямым человеком, чтобы заставить его работать. Дистрибутив наотрез отказался
запускаться под VirtualBox и qemu, но это не сильно испортило впечатление,
поскольку систему все равно пришлось бы испытывать в полевых условиях на
настоящем железе. Но с наскоку загрузить ОС на ноутбуке также не удалось, потому
как с включенной подсистемой ACPI ядро просто вываливалось в дебаггер. Во время
повторной загрузки ACPI пришлось принудительно отключить, выбрав третий пункт
меню. В такой конфигурации ядро благополучно прошло все этапы инициализации и
передало эстафету стартовым скриптам, которые включили и настроили сеть,
используя DHCP, а затем сгенерировали конфиг для X.org. После этого система
передала управление командному интерпретатору ksh и начала приветливо мигать
курсором.

Попытка запустить иксы из консоли также не увенчалась успехом. Команда startx
вежливо сообщила, что не может найти подходящую конфигурацию для нестандартного
широкоформатного дисплея, и завершилась. Пришлось открывать вторую консоль
(кстати, это делается с помощью комбинации <Ctrl+Alt+F2>, а вовсе не <Alt+F2>,
как в Linux и FreeBSD), чтобы зайти под именем root и добавить в /etc/X11/xorg.conf
необходимые строки (благо, vim есть из коробки). Только после этого иксы
запустились, и на экране появился стандартный рабочий стол Xfce.

Каких бы то ни было, конфигураторов и LiveCD-утилит в дистрибутиве нет. По
сути, это самая обычная NetBSD, на которую установлена графическая среда Xfce и
небольшой набор дополнительного софта, такого как редактор AbiWord, шеллы bash и
zsh, редактор emacs, просмотрщик pdf-документов epdfview, вьювер изображений feh,
браузер Firefox3, IM-клиент pidgin, мультимедиа-проигрыватель xfmedia, а также
rdesktop, squid, screen, joe, mc, mpg321 и wget. Для беглого ознакомления с
NetBSD этого вполне достаточно, тем более, что все наиболее интересные
особенности ОС находятся на уровне командной строки.

 

PC-BSD – FreeBSD для домохозяек

Домашняя страница:
www.pcbsd.org
Последний релиз: 8.1 (20 июля 2010)
Операционная система: FreeBSD 8.1

PC-BSD – это десктопный вариант FreeBSD, разработанный с целью сделать
BSD-систему близкой обычным пользователям операционкой, которую просто
установить и начать использовать. Дистрибутив включает в себя удобный
графический инсталлятор, основанный на BSD Installer, оригинальную систему
управления пакетами PBI, упрощающую процесс установки пакета в систему, а также
несколько утилит для настройки установленной системы.

Дистрибутив распространяется в виде ISO-образа размером 3,5 Гб, который
включает в себя саму FreeBSD, KDE4 и языковые файлы для нескольких стран. При
загрузке диска система проводит стандартную инициализацию, скрытую за стильным
темным splash-скрином, запускает X-сервер с менеджером окон FluxBox и программой
установки, выступающей в качестве графического фронт-энда к BSD Installer.

В отличие от прародителя, установка PC-BSD действительно очень проста и
состоит из нескольких шагов: выбор языка установщика и самой операционной
системы (среди вариантов есть и русский), выбор раскладки клавиатуры (но его
лучше пропустить из-за одного неприятного бага, о котором будет сказано ниже),
выбора типа установки (новая или обновление), устанавливаемой системы (PC-BSD
способна установить и FreeBSD в ее чистом виде) и источника установки (DVD или
сеть). Далее следует выбрать раздел жесткого диска или создать его (PC-BSD сама
разделит раздел на слайсы, поэтому неподготовленный пользователь легко пройдет
этот шаг), добавить пользователей, выбрать временную зону и опциональные
компоненты (среди которых есть удобная графическая утилита для управления Jail),
после чего начнется копирование файлов на диск.

Загрузка установленной ОС происходит быстро, а по ее окончании запускается
KDE4 с модифицированным окном загрузки. Никаких дополнительных настроек, кроме
предварительного подтверждения конфигурации монитора, делать не требуется, все
работает, как часы, включая звук и сеть (если, конечно, в локалке есть
DHCP-сервер). Единственная проблема заключается в том, что при выборе
альтернативной раскладки во время установки инсталлятор оставляет ее единственно
доступной, так что придется самому настраивать переключение через «Параметры
системы». Сам KDE выглядит привычно, разработчики PC-BSD ничего кардинально не
меняли, а только исправили некоторые иконки (включая меню запуска приложений) и
применили другой стиль графического оформления.

Установка пакетов производится с помощью специальной программы Software
Manager, иконка которой размещена прямо на рабочем столе. По принципу действия
она очень похожа на менеджер deb-пакетов synaptic: ты выбираешь программу из
соответствующего раздела, нажимаешь кнопку «Установить», и пакет скачивается и
устанавливается в автоматическом режиме. Сами пакеты распространяются в виде
специальных архивов с расширением pbi, которые включают в себя программу вместе
со всеми зависимостями. Установка программы происходит не в каталоговую
структуру /usr/local, как это принято во FreeBSD, а в обособленный подкаталог
внутри каталога /Programs (вспоминаем Windows и Mac OS X). Это действительно
удобно – используя PC-BSD, ты никогда не встретишься с проблемой
неудовлетворенных зависимостей или их конфликтов, а для удаления пакета сможешь
просто стереть каталог программы из /Programs. Обновление пакетов происходит в
полуавтоматическом режиме, так же, как это сделано в большинстве дистрибутивов
Linux (когда в репозитории появится обновление пакета, на экране будет
отображено сообщение).

В программе настройки KDE (пункт меню «Параметры системы») ты найдешь
несколько элементов, свойственных только PC-BSD. Во-первых, это пункт «Настройка
сети», через который можно выбрать используемый сетевой драйвер, назначить
машине IP-адрес и настроить другие параметры. Во-вторых, пункт «System Manager»,
отображающий конфигурацию машины и позволяющий произвести такие действия, как
загрузка дерева портов и исходных текстов FreeBSD. В-третьих, пункт «Services
Manager», предназначенный для управления фоновыми сервисами. ОС включает в себя
множество скриптов и доработок системы инициализации FreeBSD, так что с
нестандартным оборудованием система работает гораздо лучше.

 

DesktopBSD – и вновь FreeBSD для домохозяек

Домашняя страница:
www.desktopbsd.net
Последний релиз: 1.7 (7 сентября 2009)
Операционная система: FreeBSD 7.2

У проектов PC-BSD и DesktopBSD много общего. Обе операционные системы
рассчитаны на применение рядовыми пользователями, обе оснащены графическим
инсталлятором, основанным на BSD Installer, в обеих ОС применяется графическое
окружение на базе KDE. Отличие заключается в том, что разработчики DesktopBSD не
стали заново переизобретать систему управления пакетами, а просто включили в
дистрибутив графические инструменты управления системой портов.

DesktopBSD распространяется в виде загрузочных ISO-образов, размером чуть
меньше двух гигабайт. После запуска диска на экране появляется уже знакомое меню
загрузчика FreeBSD, которое лучше не трогать и нажать <Enter>. После завершения
загрузки появится текстовое сообщение, предупреждающее, что выбранная
конфигурация может не подойти для имеющегося монитора, и в этом случае следует
нажать комбинацию <Ctrl+Alt+Backspace> для перехода к следующему разрешению.
Сразу за ним возникает окно с выбором типа загрузки (live или install), что
весьма радует, так как в PC-BSD такого варианта не было.

После выбора пункта Install появляется главное окно инсталлятора, с одной
стороны очень похожее на аналогичное окно PC-BSD, но с другой – более приятное
глазу. Шаги установки все те же: выбор языка, напутственное сообщение,
информация об оборудовании, выбор типа установки (апдейт или обычная), вариант
установки (с диска или сетевой), установка загрузчика, разметка диска (в том
числе в автоматическом режиме). Далее начинается процедура копирования файлов,
по окончании которой происходит перезагрузка.

После ребута DesktopBSD встречает пользователя бодрым «Добро пожаловать!» и
предлагает провести начальную конфигурацию, которую нельзя отменить. Первый шаг
конфигурации: установка дополнительных языковых пакетов. Их нужно выбрать из
предлагаемого списка, при этом конфигуратор оказался достаточно умен, чтобы
запомнить выбор, сделанный во время установки системы, и самостоятельно отметить
русский язык в списке. Второй шаг: добавление новых пользователей и установка
пароля администратора. Третий шаг: включение BSDStats, что приведет к отправке
данных об установленной ОС и аппаратной конфигурации на сервера одноименного
проекта. BSDStats – безобидный проект, который занимается сбором статистики
установок BSD-систем, поэтому о конфиденциальности можно не беспокоиться, тем
более, что все данные отправляются анонимно.

Все, теперь можно благополучно войти в систему под именем созданного ранее
пользователя. Сразу оговорюсь, что DesktopBSD до сих пор использует KDE 3.5 в
качестве окружения рабочего стола, поэтому к некоторому анахронизму нужно быть
готовым (хотя для кого-то это будет плюсом). В общих чертах рабочий стол
выглядит как обычный KDE, однако, взглянув на трей, можно увидеть две иконки,
одна из которых вызывает конфигуратор сети, а вторая позволяет монтировать
накопители. Установка ПО осуществляется с помощью программы с очевидным
названием «Программное обеспечение (ПО)», иконку которой можно найти на рабочем
столе. Она работает напрямую с системой портов и при первом запуске предлагает
скачать это самое дерево портов из интернета (что может занять достаточно
длительное время).

Из ПО, установленного по умолчанию, можно отметить офисный пакет OpenOffice
3.1.1, окружение Java SE 6, проигрыватель Amarok, браузер Firefox и графический
редактор Gimp. Также есть поддержка GRUB в качестве основного загрузчика и
графическая программа для его конфигурирования.

 

Выводы

Несмотря на славу операционок «для своих», BSD могут быть и хорошими
десктопными системами, для установки которых необязательно читать документацию и
иметь постоянный доступ в интернет. Даже если брать в расчет очевидное
отставание LiveCD-вариантов NetBSD и OpenBSD в плане интуитивного использования,
Frenzy, PC-BSD и DesktopBSD красноречиво доказывают, что BSD – это не только
хорошая серверная ОС, но и прекрасный десктоп, который может быть даже проще и
понятней многих дистрибутивов Linux.

 

INFO

В октябре 2006 года разработка PC-BSD перешла под крыло компании
iXsystems, которая полностью оплачивает работу лидера и основателя проекта
Криса Мура, а также занимается коммерческой поддержкой дистрибутива.

PBI-пакеты PC-BSD создаются на основе дерева портов FreeBSD с помощью
автоматизированной системы, поэтому в качестве и актуальности ПО можно не
сомневаться.

После выпуска версии 1.7 Питер Гофер, единственный активный разработчик
дистрибутива DesktopBSD, заявил о своем уходе из проекта. Однако 20 мая 2010
года к проекту подключилась команда из четырех немецких разработчиков,
которая намерена заниматься дальнейшей разработкой и усовершенствованием
дистрибутива.

В декабре 2009 года Сергей Можайский выпустил свой последний релиз Frenzy
– 1.2-Lite. Еще ранее он заявлял, что не собирается продолжать развитие
FreeBSD. Версии 1.2 и 1.3 были выпущены Егором Вершининым.

Freebsd 10 как desktop — Скриншоты — Галерея

Вашему вниманию представлен FreeBSD 10.0-RELEASE-p3 c GNOME 2 в качестве DE.

Оформление:

Тему любезно забрал из Linux Mint-а, т.к. она мне нравится больше всего. Доставил gtk-murrine-engine. Естественно, тему немного допилил, т.к. в gtk3 программах (audacious, например) оно выглядело вырвиглазно. Заменен значок системы в меню «Приложения». Поправлены некоторые значки в трее. Курсор — стандартный для Xorg, мне он нравится не менее, чем белый. Обоина одна из стандартных — я её выбрал т.к. содержит тонкий намек на танцпол.

Шрифты — Sans 10, субпиксельное сглаживание, полное уточнение. К сожалению, ШГ в Firefox я так и не исправил — он настойчиво игнорирует настройки системы. Донастройку шрифтов в FF отложил на потом, ибо я пока не знаю какую конфигурацию он использует. Как временное решение — поставил без засечек: выглядит вот так.

На скриншоте можно увидеть:

1) Терминал с top, в котором можно увидеть кол-во запущенных процессов в системе. Сравните со своим, кстати.
2) Классическое окно браузера с ЛОР-ом
3) Окно nautilus-а с отображаемыми носителями и автопримонтированной флешкой (детали — позже)
4) audacious на gtk3
5) терминал с uname -a и информацией из loader.conf
6) параметры звука на заднем плане — можно мышкокликаньем регулировать устройства ввода/вывода звука и громкость для отдельных приложений
7) bash с собственной донастройкой

Естественно, что за тема о FreeBSD без срача о FreeBSD? Сам скриншот сделан для того, чтобы сообщить всем просмотревшим о том, что FreeBSD как desktop возможен (без всяких велосипедов типа PC-BSD), и вполне пригоден как стабильная система для ежедневного использования. Поэтому, я хочу заранее рассказать о некоторых технических особенностях работы.

Что со звуком?

Все имеющиеся программы перевел на pulseaudio (о горе мне!), работающий через стандартный OSS — голый OSS не умеет принимать на себя несколько одновременно работающих программ + некоторые программы не могут быстро отдавать доступ после закрытия. Кроме того, некоторые программы умеют либо alsa (которого в системе просто быть не может) либо pulseaudio. Производительность пульса нормальная, проблем пока не возникало. Latency отличный. Софт клавиши стабильно регулируют звук (причем, не master канала пульсы а /usr/sbin/mixer 😉 что очень удобно и приятно), иконка громкости адекватно показывает текущую громкость (в отличие от дерьма из xfce), и громкость сохраняется после перезагрузки (в отличие от linux, да-да!). В общем, красота.
Почему я не ставил OSS4? OSS4 прекрасный проект, который нормально взлетел у меня в системе, однако pulseaudio с ним плохо дружит, даже при ручной настройке. В общем, нужно много чего допиливать.

Что с flashplayer-ом?

В связи с тем, что youtube уже перевел все свои ролики на html5, vk.com и vimeo тоже перешли на html5 — я решил не устанавливать flashplugin. И до сих пор не жалею, всё прекрасно работает. Однако, поддержка flashplugin-а (для тех кому он реально нужен) улучшается с каждым годом, говорят, теперь он работает вполне стабильно.

Что с skype?

А что с ним? Я поставил linux compat, порт skype-devel который подтянул всё что нужно, linux-f10-pulseaudio-libs для работы с нативным pulseaudio и всё отлично и стабильно работает. Если использовать эмуляцию alsa которая направляет в oss — часто происходят глюки, тормоза, и пр.
В будущем я планирую запускать skype в песочнице, благо, FreeBSD располагает специальным для этих целей средством — FreeBSD Jail.

Что с работой других linux программ?

Скриншот с работающим нативным Trine1. Производительность такая же как в linux. Даже звук есть, ага. Пришлось, правда, поставить парочку библиотек, но я, помню, этим и в linux занимался. С не 3d программами, я думаю, особых проблем возникнуть не должно. Стим пока не запускал.

Автомонтирование флешек?

Да, редактирование нескольких конфигов — и флешки (в т.ч. fat) сами монтируются и демонтируются средствами GNOME 2. Просто кликаем мышкой в nautilus и всё хорошо. Пытался выдергивать флешку из компа — никаких ребутов не просиходит. Самое худшее, что может произойти — остается mount point. Но мы же не варвары, правда?
К сожалению, строки монтирования ntfs и ext* от лица GNOME я не могу редактировать, и потому я еще не осилил нормальное монтирование ext4 и ntfs-3g — это приходится делать вручную. С ext2/3 всё нормально — его поддерживает ext2fs.ko

ААА! КОДИРОВКИ!!!!

Ничего подобного. KOI8-R остался в прошлом физической консоли. Я 1 раз настроил utf-8 — и вся система (в т.ч. файловая) на utf-8. Примонтированные носители, ext разделы, ntfs разделы отображают и позволяют записывать кириллицу без пританцовок/доп. опций/ковыряний в fstab/etc. За всё время пользования системой (прошлое время и прошлые версии freebsd не в счет) я ни разу не увидел иероглифов и кракозябр.

Что с софтом?

О! Это моя самая любимая часть! Разделю её на 2 части:

1) В портах есть всё что душа пожелает. Даже mpv (к моему удивлению). Все зависимости подтягиваются автоматически. Используя portmaster все необходимые вопросы о конфигурации задаются вначале, кроме того — установленный порт регистрируется в системе еще и как пакет. Т.е. программу можно быстро удалить/обновить с помощью системы пакетов. Выбор опций для порта крайне удобен, в отличие от некоторых. В общем, песня.
2) Пакеты. Новый pkg по скорости работы с огромным отрывом обгоняет apt-get. Мало того, ему не нужно «обновление списка пакетов» — он сам это периодически делает после запуска pkg, причем крайне быстро (занимает обычно 7 секунд, иногда меньше). Функционал теперь не уступает apt-get: недавно я захотел превентивно отключить обновление firefox на 29 версию: # pkg lock firefox. После последующего # pkg upgrade предложений на firefox не поступало. Жаль только, не все программы уже есть в пакетах, но это дело времени.

Чего не хватает?

Не хватает доработки мелочей. Надо бы взять парочку хороших программистов и посидеть пару месяцев над десктопной частью, затем закоммитить всё это. К примеру, у меня не работают нотификации. notify-send не оказывает никакого результата.
Не хватает менеджера программ, который работал с pkg, portmaster и объединял их мощь. Это было бы удобно и просто шикарно.
Не хватает низкоуровневой доработки linux compat и связанных портов.
Не хватает полноценной поддержки ext4 (хотя, с поддержкой ufs2 в linux еще хуже).

И как оно, в целом?

В целом хорошо. Когда всё настроил, естественно 🙂 Очень радует I/O scheduler. Трудоемкие по дисковой части задачи не влияют на (не)трудоемкие задачи по процессорной части (и наоборот), в то время как в linux до сих пор звучат отголоски 12309. Приятный эффект производит производительность на медленных носителях (мой FreeBSD стоит на довольно старом HDD), работа coreutils.

Стоит ли ставить обычному арче/убунтоводу?

Нет, не стоит. Для превращения голого FreeBSD в конфетку (а у меня всё еще не конфетка) с первого раза надо иметь достаточно навыков, знаний, упорства. Профит, возможно, не оправдает тех усилий, которые вы вложите. Быть может, стоит еще немного подождать.

Что дальше?

Спасибо всем, кто оценил/не оценил/пронеадекватил/осилил текст до конца! Возможно, я сделаю скрипт, который автоматическим образом сам всё будет устанавливать и настраивать. Если скрипт будет слишком большой, быть может, в будущем сделаю маленький дистрибутивчик. FreeBSD хорош как одна из юзабельных альтернативных систем. Я пока подожду некоторых обновлений, ребятам из FreeBSD осталось совсем немного поработать напильниками.

С удовольствием предоставлю доп. информацию, конфиги, скриншоты, и пр.

5.7. Окружение рабочего стола

Предоставлено Валентино Ващетто.

В этом разделе описано, как установить три популярных настольных компьютера.
среды в системе FreeBSD. Среда рабочего стола может варьироваться
от простого оконного менеджера до полного набора рабочего стола
Приложения. Доступно более сотни окружений рабочего стола
в категории портов x11-wm
Коллекция.

GNOME — удобный
среда рабочего стола. Включает панель для запуска
приложения и отображение статуса, рабочий стол, набор инструментов
и приложения, а также набор соглашений, которые упрощают
чтобы приложения взаимодействовали и согласовывались с каждым
Другой.Дополнительная информация о
GNOME на FreeBSD можно найти по адресу https://www.FreeBSD.org/gnome.
Этот веб-сайт содержит дополнительную документацию о
установка, настройка и управление
GNOME во FreeBSD.

Эту среду рабочего стола можно установить с
пакет:

  #    pkg install gnome3   

Чтобы вместо этого собрать GNOME из
портов, используйте следующую команду.
GNOME — большое приложение и
потребуется некоторое время для компиляции, даже на быстрой
компьютер.

  #    cd / usr / ports / x11 / gnome3  
  #    сделать установку чистой   

GNOME
требуется смонтировать / proc . Добавь это
строка / etc / fstab для монтирования этого файла
система автоматически при запуске системы:

 proc / proc procfs rw 0 0 

GNOME использует
D-Bus и
HAL для шины сообщений и оборудования
абстракция. Эти приложения устанавливаются автоматически
как зависимости GNOME.включить
их в /etc/rc.conf , поэтому они будут
запускается при загрузке системы:

 dbus_enable = "YES"
hald_enable = "YES" 

После установки
настроить Xorg для запуска
ГНОМ. Самый простой способ сделать это
состоит в том, чтобы включить диспетчер отображения GNOME,
GDM, который устанавливается в составе
пакет или порт GNOME. Это может
можно включить, добавив эту строку в
/etc/rc.conf :

 gdm_enable = "YES" 

Часто желательно также запустить все
Сервисы GNOME.Для достижения этой цели,
добавьте вторую строку в /etc/rc.conf :

 gnome_enable = "YES" 

GDM запустится
автоматически при загрузке системы.

Второй способ запуска
GNOME — набрать
startx из командной строки после
настройка ~ / .xinitrc . Если этот файл
уже существует, замените строку, с которой начинается текущий
оконный менеджер с тем, который запускается
/ usr / local / bin / gnome-session . Если это
файл не существует, создайте его с помощью этой команды:

 %    echo "exec / usr / local / bin / gnome-session"> ~ /.xinitrc   

Третий метод — использовать XDM как
Диспетчер отображения. В этом случае создайте исполняемый файл
~ / .xsession :

 %    echo "exec / usr / local / bin / gnome-session"> ~ / .xsession   

KDE — еще один простой в использовании
среда рабочего стола. Этот рабочий стол предоставляет набор
приложений с единообразным внешним видом, стандартизированной
меню и панели инструментов, сочетания клавиш, цветовые схемы,
интернационализация и централизованный рабочий стол с диалоговым управлением
конфигурация.Больше информации о
KDE можно найти по адресу http://www.kde.org/.
Для получения информации о FreeBSD посетите http://freebsd.kde.org.

Чтобы установить пакет KDE,
введите:

  #    pkg install x11 / kde5   

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

  #    cd / usr / ports / x11 / kde5  
  #    make install clean   

KDE требует
/ proc для установки. Добавьте эту строку в
/ etc / fstab для монтирования этой файловой системы
автоматически при запуске системы:

 proc / proc procfs rw 0 0 

KDE использует
D-Bus и
HAL для шины сообщений и оборудования
абстракция. Эти приложения устанавливаются автоматически
как зависимости KDE.включить
их в /etc/rc.conf , поэтому они будут
запускается при загрузке системы:

 dbus_enable = "YES"
hald_enable = "YES" 

Начиная с KDE Plasma 5, Диспетчер отображения KDE,
KDM больше не разрабатывается.
Возможная замена — SDDM.
Чтобы установить его, введите:

  #    pkg install x11 / sddm   

Добавьте эту строку в
/etc/rc.conf :

 sddm_enable = "YES" 

Второй способ запуска
KDE Plasma — это набирать
startx из командной строки.Для этого
работа, следующая строка необходима в
~ / .xinitrc :

 exec ck-launch-session startplasma-x11 

Третий способ запуска KDE Plasma
есть через XDM. Для этого создайте
исполняемый файл ~ / .xsession как
следующим образом:

 %    echo "exec ck-launch-session startplasma-x11"> ~ / .xsession   

После запуска KDE Plasma см.
его встроенная справочная система для получения дополнительной информации о том, как использовать
его различные меню и приложения.

Xfce — это среда рабочего стола
на основе инструментария GTK +, используемого
ГНОМ. Однако это больше
легкий и обеспечивает простой, эффективный, легкий в использовании
рабочий стол. Он полностью настраивается, имеет основную панель с
меню, апплеты и средства запуска приложений, предоставляет файл
менеджер и звуковой менеджер, а также настраиваемый. Поскольку это
быстрый, легкий и эффективный, он идеально подходит для пожилых или медленных
машины с ограничениями памяти. Больше информации о
Xfce можно найти на http://www.xfce.org.

Для установки Xfce
пакет:

  #    pkg install xfce   

В качестве альтернативы, для сборки порта:

  #    cd / usr / ports / x11-wm / xfce4  
  #    make install clean   

Xfce использует
D-Bus для шины сообщений. Эта
приложение устанавливается автоматически в зависимости от
Xfce. Включить в
/etc/rc.conf , поэтому он будет запущен, когда
система загружается:

 dbus_enable = "YES" 

В отличие от GNOME или
KDE,
Xfce не предоставляет собственный логин
управляющий делами.Чтобы запустить Xfce
из командной строки, набрав startx ,
сначала создайте ~ / .xinitrc с этим
команда:

 %    echo ". / usr / local / etc / xdg / xfce4 / xinitrc"> ~ / .xinitrc   

Альтернативный метод — использовать
XDM. Чтобы настроить этот метод,
создать исполняемый файл ~ / .xsession :

 %    echo ". / usr / local / etc / xdg / xfce4 / xinitrc"> ~ / .xsession   

.

Начало работы с FreeBSD в качестве операционной системы для настольных ПК

FreeBSD — отличная операционная система, но по замыслу она не поставляется с окружением рабочего стола. Без установки дополнительного программного обеспечения из коллекции портов и пакетов FreeBSD FreeBSD работает только из командной строки. На снимке экрана ниже показано, как выглядит вход в FreeBSD 12.1, когда каждый из «дополнительных компонентов системы» выбран во время установки.

FreeBSD можно превратить в настольную операционную систему с любым из широкого набора окружений рабочего стола, но это требует времени, усилий и выполнения большого количества письменных инструкций.Использование пакета desktop-installer , который предоставляет пользователю параметры в текстовом меню и помогает автоматизировать большую часть процесса, по-прежнему занимает много времени. Самая большая проблема с любым из этих методов заключается в том, что пользователи могут обнаружить, что их система не полностью совместима с FreeBSD, после того, как они потратят все время на ее настройку.

FuryBSD решает эту проблему, предоставляя живое изображение рабочего стола, которое пользователи могут оценить перед установкой. В настоящее время FuryBSD предоставляет образ Xfce и образ KDE.Каждый из этих образов обеспечивает установку FreeBSD с предустановленной средой рабочего стола. Если пользователи попробуют образ и обнаружат, что их оборудование работает, они могут установить FuryBSD и получить готовую к работе операционную систему для настольных ПК на базе FreeBSD. Для целей этой статьи я буду использовать образ Xfce, но образ KDE работает точно так же.

Начало работы с FuryBSD должно быть знакомо любому, кто установил дистрибутив Linux, любую из BSD или любую другую Unix-подобную операционную систему с открытым исходным кодом.Загрузите ISO-образ с веб-сайта FuryBSD, скопируйте его на флеш-накопитель и загрузите компьютер с флеш-накопителя. Если загрузка с флэшки не удалась, убедитесь, что безопасная загрузка отключена.

После загрузки с флешки среда рабочего стола загружается автоматически. В дополнение к значкам «Домашняя страница», «Файловая система» и «Корзина» на рабочем столе есть значки для инструмента для настройки Xorg, инструкции по началу работы, установщик FuryBSD и служебная программа для получения информации о системе. Помимо этих дополнений и некоторых пользовательских настроек и обоев Xfce, среда рабочего стола не имеет ничего, кроме базовых приложений Xfce и Firefox.

На данный момент загружены только базовые графические драйверы, но этого достаточно, чтобы проверить, поддерживаются ли FuryBSD проводные и беспроводные сетевые интерфейсы системы. Если ни один из сетевых интерфейсов не работает автоматически, файл Getting Started.txt содержит инструкции по попытке настроить сетевые интерфейсы и другие задачи настройки. Если хотя бы один из сетевых интерфейсов работает, приложение Configure Xorg можно использовать для установки графических драйверов Intel, NVidia или VirtualBox.Драйверы будут загружены и установлены, и Xorg необходимо будет перезапустить. Если система не выполняет автоматический повторный вход в систему для пользователя живого изображения, пароль — furybsd . После их настройки графические драйверы будут перенесены в установленную систему.

Если в реальной среде все работает хорошо, установщик FuryBSD может настроить и установить FuryBSD на компьютер. Этот установщик запускается в терминале, но предоставляет те же возможности, что и в большинстве других установщиков BSD и Linux.Пользователя попросят установить имя хоста системы, настроить хранилище ZFS, установить пароль root, добавить хотя бы одного пользователя без полномочий root и настроить параметры времени и даты. После завершения процесса систему можно перезагрузить в предварительно настроенную FreeBSD с рабочим столом Xfce (или KDE). FuryBSD проделала всю тяжелую работу и даже приложила дополнительные усилия, чтобы рабочий стол выглядел красиво.

Как отмечалось выше, среда рабочего стола не содержит большого количества предустановленного программного обеспечения, поэтому почти наверняка потребуется установка дополнительных пакетов.Самый быстрый способ сделать это — использовать команду pkg в терминале. Эта команда ведет себя так же, как dnf и apt , поэтому пользователи из дистрибутива Linux, который использует один из них, должны чувствовать себя как дома, когда дело доходит до поиска и установки пакетов. Коллекция пакетов FreeBSD велика, поэтому доступно большинство известных пакетов программного обеспечения с открытым исходным кодом.

Пользователи, пробующие FuryBSD, не имеющие большого опыта работы с FreeBSD, должны проконсультироваться по FreeBSD Handbook, чтобы узнать больше о том, как работать с FreeBSD.Пользователи, имеющие опыт использования любого дистрибутива Linux или одной из других BSD, должны уметь разбираться во многих вещах, но есть различия, которые руководство может помочь прояснить. Еще один отличный ресурс для получения дополнительной информации о способах работы FreeBSD — это Absolute FreeBSD, 3rd Edition, от Майкла Лукаса.

.

Проект FreeBSD GNOME

Новости GNOME FreeBSD

Последнее обновление:
14 февраля,
2016

Какое программное обеспечение поддерживает команда GNOME?

Команда GNOME поддерживает GNOME, MATE и
Среды рабочего стола Cinnamon.

Что такое GNOME?

GNOME — это полноценный графический рабочий стол для X,
включая все, от оконного менеджера до
веб-браузеры, аудиоплееры, офисные программы,
графические программы входа в систему и многое другое.MATE — это
продолжение старого рабочего стола GNOME 2
среда. Корица изначально вилка
оболочки GNOME 3, но выросла в
среда рабочего стола.

Как установить эти среды рабочего стола?

Есть несколько так называемых мета-портов, доступных для
установка этих окружений рабочего стола или частей
их. Они есть:

  • gnome3 (полный рабочий стол GNOME)
  • gnome3-lite (минимальный рабочий стол GNOME)
  • mate (полный рабочий стол MATE)
  • mate-lite (минимальный рабочий стол MATE)
  • cinnamon

Самый простой способ установки — запустить
следующую команду и замените gnome3 на
среда рабочего стола по выбору:

# pkg install gnome3

Или, если вы предпочитаете строить из исходников:

# cd / usr / ports / x11 / gnome3
# очистить
# сделать установку чистой

Состояние порта:

GNOME, MATE и Cinnamon для FreeBSD в настоящее время
полностью поддерживается 11.1, 11-СТАБИЛЬНЫЙ и 10.4,
при этом предоставляется поддержка 12.0-CURRENT
на основе максимальных усилий.

GNOME прост и удобен в сборке с использованием портов FreeBSD.
системы, но иногда что-то просто идет не так. пожалуйста
см. наш отчет об ошибках
страницу для получения дополнительной информации.

Ресурсы

Связанные проекты

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *