[size="3"]Патч к реализации HDA драйвера для FreeBSD[/size]
Александр Мотин опубликовал патчи для звукового драйвера HDA для FreeBSD. Сообщается, что патч содержит значительные изменения к драйверу, целью которых являются более полное соответствие спецификации UAA (Universal Audio Architecture). Кроме того, с опубликованными изменениями в драйвере появляются широкие возможности к конфигурированию как со стороны пользователя, так и со стороны самого HDA кодека (это позволило убрать значительное количество кода, специфичного только для конкретных устройств). Александр, так же сообщил о том, что теперь драйвер стал многоканальным. Для тестирования доступны версии патча для FreeBSD 8.0-CURRENT и 7.0-STABLE.
http://lists.freebsd...ust/008922.html (http://lists.freebsd.org/pipermail/freebsd-multimedia/2008-August/008922.html)
[size="3"]Принято решение о включении нового USB стека во FreeBSD[/size]
Alfred Perlstein сообщил о принятии положительного решения по включению новой реализации USB стека во FreeBSD CURRENT.
Данная реализация так же известна под названием HPS USB стек, её автором является Hans Petter Selasky. Работа над этой реализацией велась несколько лет и после продолжительного тестирования решено включить её в основное дерево исходного кода. Подробнее о новшествах и отличиях HPS стека от существующего можно прочитать здесь, ниже представлены некоторые моменты:
* Полная поддержка разделенных транзакций (Split transactions), что подразумевает возможность использования скоростных USB аудио устройств на современных USB HUB.
* Поддержка HS ISOC транзакций, что, например, открывает двери для создания драйверов для различных высокоскоростных web-камер;
* Поддержка USB для встраиваемых платформ, улучшенный алгоритм сброса содержимого кэшей и буферов;
* Возможность автоопределения установочных USB дисков;
* Расширена поддержка USB устройств, различных режимов работы (например, I/O vectors позволяет увеличить пропускную способность и сократить число прерываний);
* Новый UGEN бэкенд и библиотека libusb, полностью решены проблемы с выгрузкой драйвера;
* Новый USB API;
* Многие USB драйверы избавлены от глобальных блокировок;
* Режим совместимости с USB подсистемой Linux ядра.
[size="3"]Статус развития проекта FreeBSD за 2 квартал 2008[/size]
Опубликован отчет о развитии проекта FreeBSD (http://www.freebsd.org/news/status/report-2008-04-2008-06.html) с апреля по июнь 2008 года.
Главные темы:
* Разрабатывается кластер сборки пакетов для лучшего распределения нагрузки по нескольким серверам. Сейчас для распределения заданий по ним используется диспетчер очереди, в работе находится диспетчер заданий, написаны многие вспомогательные службы
* Проект finstall наконец выпустил LiveCD для i386. В нём почти завершена разработка протокола для взаимодействия фронтэнда и бэкэнда.
* Проведена работа по приведению в порядок сообщений об ошибках. Изменения затронули систему принятия и обработки ошибок, документацию, касающуюся этих процессов, а также мероприятие «Bugathon», в период которого разработчики уделяли особое внимание ошибкам. Изменения в работе системы включают замену одного из менторов и введение (Web 2.0-)тегов, соответствующих манам. Документация пополнилась методическими указаниями, включая добавленные по результатам мероприятий из вышеуказанной серии, и списком часто докладываемых ошибок со ссылками на HowTo-руководства для пользователей по ним.
* Намечаются изменения в FAQ, собираются предложения по обновлению его вида, содержимого и способа выработки.
* Графика в меню /boot/loader -- медленно продвигается.
* Пакетный фильтр второго уровня развился в направлении ethernet: оба файрволла ( pf и ipfw ) теперь могут привязывать правила к выбранным интерфейсам, и содержать в своих таблицах поиска ethernet-адреса.
* Переносятся из OpenBSD утилиты grep ( теперь работает более похоже на GNU-аналог ), diff и sort ( отличаются меньше )
* Над коллекцией портов проведена определённая работа. Однако, обновление Perl до 5.10 так и стоит на очереди. Кроме обновления KDE до 4.1, заслуживают внимания обновления automake, gettext, libtool и m4. Процесс разработки портов претерпел следующие изменения: задействованы вышеупомянутые новые сервисы сборки пакетов, само дерево содержится теперь на ZFS, прекращён жизненный цикл ветки RELENG_5.
* Произошли обновления документации на некоторых европейских языках дальнего зарубежья.
* Значительные изменения пришли с новым USB-стеком. Его модули теперь называются с префиксом "usb2_" (старый также остаётся). В числе новшеств названы возможность раздавать полномочия драйверам по номеру шины, интерфейса и устройства, возможность совместно использовать ugen и через libusb ( также обновлённый ), и как предметное устройство ядра, например, ums, на одном и том же физическом устройстве.
[size="3"]PC-BSD 7.0 -- новая версия FreeBSD для десктопов[/size]
Вышла новая версия свободной операционной системы, основанной на FreeBSD и ориентированной на использование на настольных компьютерах, -- PC-BSD 7.0 (под кодовым названием «Fibonacci»).
Такой значительный рост в версии этой системы (предыдущий стабильный релиз был 1.5.1, а теперь -- сразу 7.0) связан с тем, что разработчики решили провести синхронизацию номеров версий PC-BSD с FreeBSD.
Релиз PC-BSD 7.0 основан на ветке FreeBSD 7-STABLE, а в качестве основного графического окружения использует KDE 4.1.1. Среди прочих новшеств отмечается поддержка файловых систем ZFS и UFS2 (с UFS2+Softupdates и UFS2+Journaling) и выбор ФС при установке, возможность установки с DVD, USB или сети, перевод набора утилит PC-BSD на интерфейс Qt4/KDE4, значительные улучшения в поддержке аппаратного обеспечения, повышение производительности системы за счет улучшенного планировщика ULE.
http://www.nixp.ru/news/9271 (http://www.nixp.ru/news/9271)
Цитата: turbo от 16 Сентября 2008, 19:04[size="3"]PC-BSD 7.0 -- новая версия FreeBSD для десктопов[/size]
поставил на закачку "PCBSD7-x86-DVD.iso" 2.0 GB, ждите релиза на megatorrents.kz. :)
Цитата: turbo от 16 Сентября 2008, 19:04[size="3"]PC-BSD 7.0 -- новая версия FreeBSD для десктопов[/size]
Метод разрешения зависимостей "просто класс"! LOL
И сколько это всё весить и жрать памяти будет в статической сборке, с кучей повторяющегося хлама?
Цитироватьпоставил на закачку "PCBSD7-x86-DVD.iso" 2.0 GB, ждите релиза на megatorrents.kz. :)
извините друзья, но видать не судьба :( успел скачать 7% и скорость упала (10 гигов кончались) и теперь вместо 16 часов все 69. Теперь только в следующем месяце. :(
ЦитироватьМетод разрешения зависимостей "просто класс"! LOL
И сколько это всё весить и жрать памяти будет в статической сборке, с кучей повторяющегося хлама?
Можно посмотреть здесь (pbidir.com) (//\"http://www.pbidir.com/\"), а вообще это прежде всего полноценная FreeBSD и софт можно ставить как из портов так и из пакетов.
ЦитироватьМожно посмотреть здесь (pbidir.com), а вообще это прежде всего полноценная FreeBSD и софт можно ставить как из портов так и из пакетов.
Зачем мне репы PBI? :) Меня просто на ржачь пробивает, от вантуз-way решения с разрешением зависимостей. :P
[size="3"]В состав FreeBSD включена защита от переполнения стека[/size]
В состав FreeBSD-CURRENT добавлена поддержка техники защиты от переполнения стека SSP (ProPolice stack-smashing protection), основная на установке и последующей проверки так называемого "конореечного слова" - случайной последовательности устанавливаемой в стек непосредственно перед адресом возврата.
Патч так же находится на стадии рассмотрения для проведения MFC в RELENG_7 (7-STABLE). Вероятно данная возможность появится уже в версии 7.1, выход которой намечен на ближайшее время.
Проект OpenBSD перешел на сборку системы с использованием SSP в 2002 году, DragonFlyBSD - в 2003 году. Потери производительности при сборке с защитой от переполнения стека составляют 1-2%.
http://tataz.chchile...az/FreeBSD/SSP/ (http://tataz.chchile.org/%7Etataz/FreeBSD/SSP/)
http://www.opennet.r...shtml?num=18273 (http://www.opennet.ru/opennews/art.shtml?num=18273)
[size="3"]Во FreeBSD 8-CURRENT добавлена поддержка HPS USB стека[/size]
Во FreeBSD 8-CURRENT, после нескольких лет разработки, добавлен код переработанного USB стека - HPS, который адаптирован для работы на SMP системах и содержит новые драйверы для современных высокоскоростных хост-контроллеров.
Основные новшества:
* Новый USB API;
* Многие USB драйверы избавлены от глобальных блокировок;
* Режим совместимости с USB подсистемой Linux ядра;
* Новый UGEN бэкенд и библиотека libusb. Полностью решены проблемы с выгрузкой драйвера. Библиотека libusb20 распространяется под лицензией BSD и польностью совместима с GPL библиотекой libusb-0.1.12 (libusb.sourceforge.net);
* Новая утилита "usbconfig", для удобной настройки USB устройств;
* Полная поддержка разделенных транзакций (Split transactions), что подразумевает возможность использования скоростных USB аудио устройств на современных USB HUB.
* Поддержка HS ISOC транзакций, что, например, открывает двери для создания драйверов для различных высокоскоростных web-камер;
* Поддержка USB для встраиваемых платформ, улучшенный алгоритм сброса содержимого кэшей и буферов;
* Возможность автоопределения установочных USB дисков;
* Расширена поддержка USB устройств, различных режимов работы (например, I/O vectors позволяет увеличить пропускную способность и сократить число прерываний).
http://www.opennet.r...shtml?num=18725 (http://www.opennet.ru/opennews/art.shtml?num=18725)
[size="3"]Статус развития FreeBSD с июля по сентябрь 2008 года[/size]
Представлен квартальный отчет, рассказывающий о развитии проекта FreeBSD с июля по сентябрь:
* Для прямого взаимодействия с CVS репозиторием реализован режим CVSMode для csup, аналога CVSup, написанного на языке Си.
* Произведена адаптация FreeBSD для работы на всех моделях субноутбуков ASUS EeePC. Реализована поддержка аппаратного обеспечения: беспроводной карты Atheros, Attansic L2 FastEthernet, High Definition аудио (snd_hda), Synaptics touchpad, режима засыпания с хранением состояния CPU в памяти, контроля за температурой и т.д.
* Создан ресурс для мониторинга состояния зеркал (FTP, WWW, CVSup, RSync) для загрузки FreeBSD. Показано на сколько то или иное зеркало отличается от основного архива;
* Обновлена подборка интерактивных материалов (подкасты, видеоролики, демонстрации, презентации, фотографии) имеющих отношение к FreeBSD. Добавлены записи выступлений с октябрьской конференции EuroBSDCon 2008;
* Порт FreeBSD/powerpc адаптирован для работы на одночиповой системе Freescale MPC8572 SoC, относящейся к семейству PowerQUICC III;
* Близок к завершению проект multi-IPv4/IPv6 jail (легковесная виртуализация IP стека для jail-окружений, созданная в качестве альтернативы полной виртуализации сетевого стека). Разработчики надеются поместить код в ветку FreeBSD 7 до выхода 7.2-RELEASE;
* pkg_trans - попытка добавить поддержку транзакций и группировки операций в утилиты управления пакетами. Система позволит отменить действие, после выполнения pkg_add или pkg_delete. Например, можно будет поставить kde4 со всеми зависимостями, поэкспериментировать, а затем отменить действие и вернуть систему к состоянию до момента установки;
* В драйвере мыши psm улучшена поддержка тачпадов Synaptic. Теперь в консоли можно использовать виртуальный скроллинг, мультитач операции и другие расширенные возможности;
* Во FreeBSD 8-CURRENT, после нескольких лет разработки, добавлен код переработанного USB стека - HPS (USB2), который адаптирован для работы на SMP системах и содержит новые драйверы для современных высокоскоростных хост-контроллеров.
http://www.opennet.r...shtml?num=18851 (http://www.opennet.ru/opennews/art.shtml?num=18851)
[size="3"]Проект FreeBSD ввел в строй официальный web-форум - forums.freebsd.org[/size]
Проект FreeBSD ввел в строй официальный web-форум - forums.freebsd.org. Ранее разработчики предпочитали общаться и отвечать на вопросы пользователей через списки почтовых рассылок. Интересной особенностью форума является то, что все разработчики, имеющих право коммита в CVS/SVN, будут помечены в форуме значком '@' в конце ника.
В качестве движка выбран коммерческий продукт vBulletin, последняя критическая уязвимость в котором была найдена в 2005 году (неопасные уязвимости находят постоянно, например, последняя XSS уязвимость найдена в конце августа).
http://www.opennet.r...shtml?num=18934 (http://www.opennet.ru/opennews/art.shtml?num=18934)
[size="3"]Во FreeBSD появилась поддержка ZFS v13[/size]
В текущей ветке FreeBSD обновлена поддержка ZFS до версии 13. Обновление также привнесло специфический для FreeBSD набор изменений.
* Делегированное администрирование. Позволяет делегировать обычным пользователям создание ФС, снапшотов и т.д.
* 2й уровень кеширования L2ARC. Позволяет использовать для кеширования дополнительные диски. Наибольший прирост производительности на операциях случайного чтения на редко меняющихся данных.
* slog. Позволяет использовать дополнительные диски для Intent Log ZFS в целях ускорения таких операций, как fsync(2).
* vfs.zfs.super_owner. Позволяет обычному пользователю выполнять привилегированные операции с файлами, расположенными на ФС, владельцем которой он является.
* Частичная поддержка chflags(2).
* ZFSBoot. Начальная поддержка загрузки системы с пула ZFS. - Свойства снапшотов.
* Новые режимы отказа при выходе из строя. Может быть выбран один из режимов:
o panic - паника при ошибке записи
o wait - ожидание до момента появления диска
o continue - обслуживание запросов чтения доступных данных с блокировкой запросов записи
* Свойства refquota, refreservation. То же, что и обычные свойства quota и reservation, но без учета места, занимаемого дочерними ФС, клонами и снапшотами.
* Sparse volumes. Массивы ZVOL, не резервирующие пространство в пуле.
* Расширенные атрибуты. Совместимость с extattr(2).
* Начальная поддержка списков контроля доступа ACL формата NFSv4.
* Свойства времени создания.
* Регрессивное тестирование команды zpool(8).
http://www.opennet.r...shtml?num=18957 (http://www.opennet.ru/opennews/art.shtml?num=18957)
[size="3"]FreeBSD Foundation спонсирует окончание разработки виртуального сетевого стека[/size]
Благодаря гранту, полученному от компании NLNet, FreeBSD Foundation продолжит спонсирование разработки виртуального сетевого стека. Бьёрну Зибу (Bjoern Zeeb), разработчику отвечающему за сетевую подсистему FreeBSD, поручено расширить функциональность имеющегося прототипа и провести общий анализ кода подсистемы vimage недавно внесенного в ветку CURRENT .
Введение виртуального сетевого стека позволит значительно расширить сетевую функциональность подсистемы jail. Так, например, появится возможность иметь для каждого jail индивидуальные настройки фаервола, маршрутизации, IPSec и обеспечить возможность их автономного администрирования.
Это очередная инициатива FreeBSD Foundation направленная на адресные улучшения отдельных частей FreeBSD. Напомню, что ранее сообщалось о аналогичном проекте целью которого является устранение неприятной особенности файловой подсистемы проявляющейся в виде паник ядра при ошибках монтирования (извлечение носителя с неотмонтированной ФС приводит к падению ядра).
http://www.opennet.r...shtml?num=19109 (http://www.opennet.ru/opennews/art.shtml?num=19109)
[size="3"]Официально представлен FreeBSD 6.4-RELEASE. Обзор новшеств[/size]
Спустя 1 год 11 месяцев с момента выпуска прошлого релиза вышел FreeBSD 6.4-RELEASE, в котором представлены следующие новшества:
* Ядро
o В фреймворк opencrypto добавлена поддержка 128-битного блочного шифра Camellia, который был разработан компанией Mitsubishi Electric Corporation и открыт для свободного использования весной 2006 года.
o Добавлена поддержка RedZone - улучшение безопасности работы с памятью на уровне ядра, через защиту буфера от повреждения при выделении/освобождении памяти во время вызова malloc(9);
o В ядро добавлена реализация клиентской части функциональности rpc.lockd, используемом для организации блокировок в NFS. Реализация поддерживает восстановление состояния блокировок на стороне клиента после рестарта NFS сервера, а также гарантированный сброс кэша перед установкой блокировки, что позволяет нескольким клиентом устанавливать файловые локи при одновременном использовании данных. Возможность включается через опцию NFSLOCKD в конфигурации ядра, если ядро пересобрано с поддержкой NFSLOCKD процесс rpc.lockd автоматически это определяет и начинает использовать;
o Реализована возможность загрузки FreeBSD с дисков, снабженных GPT (GUID Partition Table) вместо MBR. BTX-ядро, используемое загрузчиком, теперь поддерживает загрузку с USB устройств, благодаря поддержке обращения к функциям BIOS;
o Поддержка оборудования:
+ В драйвер acpi_asus добавлена поддержка управления интенсивностью подсветки экрана для субноутбуков Asus EeePC;
+ DRM драйвер теперь поддерживает видеокарты Intel на базе i915 GME;
+ В bge драйвер добавлена поддержка гигабитных Ethernet адаптеров на базе чипов Broadcom BCM5906;
+ В aac появилась поддержка 64-разрядных дисковых массивов для создания RAID разделов, превышающих 2Тб, а также возможность одновременного доступа к устройству для передачи команд контроллеру;
+ В ata драйвера устранена ошибка, которая могла приводить к повреждению данных на системах, построенных на базе чипов ServerWorks HT1000;
+ Увеличена стабильность работы драйвера iir ( ICP Vortex RAID);
+ В драйвере mpt (LSI Fusion-MPT SCSI/Fibre Channel) реализована поддержка userland интерфейса mpt_user.
o Подсистема dummynet вынесена в отдельный модуль ядра и поддерживает режим быстрого пропуска пакетов в обход dummynet-планировщика, в моменты когда интенсивность контролируемого потока не превышает установленной полосы пропускания. Возможность включается через sysctl переменную net.inet.ip.dummynet.io_fast.
o В DNS резолвере добавлена поддержка имен доменов, содержащих символ подчеркивания, несмотря на то, что это нарушает RFC 1034;
* Утилиты пользовательского уровня
o В утилиту bsdtar добавлена реализация опций --numeric-owner, -S и -s;
o В утилите cp исправлена ошибка, мешающая копированию атрибутов POSIX.1e ACL;
o В утилите cron добавлена поддержка опции "-m", через которую можно принудительно задать email получателя почты от системы cron, если для заданий в crontab явно не задан параметр "MAILTO=";
o В команде cvs теперь поддерживается флаг "-n", выступающий как инверсия флага "-N";
o Утилиты dump и restore теперь поддерживают расширенные атрибуты файлов;
o Во freebsd-update.conf поддерживается новая директива IDSIgnorePaths;
o В утилите fwcontrol добавлена опция "-f" для определения корневого узла при следующем ресете FireWire шины;
o В make появилась поддержка модификатора переменных ":u" для удаления смежных повторяющихся слов;
o В mountd добавлена опция "-h bindip" для явного задания IP, на котором следует принимать TCP и UDP соединения;
o В moused появилась возможность управления скоростью и чувствительностью скроллинга через опции "-L" и "-U";
o В команде mv реализована поддержка POSIX-совместимого поведения, при перемещении директории в другую уже существующую директорию, находящуюся на другом устройстве;
o В top и vmstat добавлена опция "-P", при задании которой отображается статистика с привязкой к CPU;
o Код утилит pkg_install импортирован из ветки 8.0-CURRENT по состоянию на 30 мая 2008 г.;
o Из состава системы удалены утилиты pkg_sign и pkg_check;
o Удален RC-скрипт ike;
o В rc.conf добавлена переменная dummynet_enable для загрузки модуля ядра dummynet, если firewall_enable установлен в YES. Также в rc.conf теперь можно конфигурировать сетевые интерфейсы и подсети с привязкой к группе правил пакетного фильтра, определенных в rc.firewall, когда переменная firewall_type установлена в simple или client. Подробнее см. описание переменных firewall_client_net, firewall_simple_iif, firewall_simple_inet, firewall_simple_oif и firewall_simple_onet;
o RC-скрипт ppp теперь поддерживает конфигурацию нескольких линков, через переменную ppp_profile. RC-скрипт rfcomm_pppd_server поддерживает запуск rfcomm_pppd сервера во время загрузки;
o В RC-скрипте sysctl реализована загрузка настроек из файла /etc/sysctl.conf.local в дополнение к /etc/sysctl.conf;
* Обновление сторонних программ, входящих в базовую систему:
o Пакет am-utils обновлен до версии 6.1.5;
o DNS сервер ISC BIND обновлен до версии 9.3.5-P2;
o bzip2 обновлен с 1.0.4 до 1.0.5;
o NTP обновлен до версии 4.2.4p5;
o Утилита FILE обновлена до версии 4.21;
o Библиотека libarchive обновлена до версии 2.5.4b, но внутренний номер сохранен как 1.9.25 для совместимости API/ABI;
o Библиотека ncurses обновлена до версии 5.6-20080503;
o Пакет OpenPAM обновлен до релиза "Hydrangea";
o sendmail 8.14.2 заменен на версию 8.14.3;
o tcsh обновлен до версии 6.15.00;
o В портах поддерживаемая версия GNOME (x11/gnome2) обновлена с 2.20.1 до 2.22.3, KDE (x11/kde3) с 3.5.8 до 3.5.10.
* Для сборок amd64 и i386 теперь распространяется установочный DVD-диск.
http://www.opennet.r...shtml?num=19139 (http://www.opennet.ru/opennews/art.shtml?num=19139)
[size="3"]Выпущен релиз Frenzy 1.1[/size]
Выпущен релиз портативного инструмента системного администратора Frenzy 1.1, построенного на базе FreeBSD 6.4-STABLE, загрузившись с которого, администратор получает полностью работоспособную систему с набором программного обеспечения для настройки, проверки и анализа сети, тестирования компьютерного "железа" и ряда других задач.
К сожалению, одновременно с анонсом новой версии, Сергей Можайский объявил о прекращении своей работы над проектом. Дальнейшая судьба Frenzy отныне зависит от того найдется ли новый доброволец, готовый взять на себя работу по подготовке будущих релизов.
В версии 1.1 добавлена поддержка unionfs. Это позволило улучшить работу системы (теперь не требуется копирование в память множества файлов при загрузке), а также дало возможность записи практически в любой каталог на LiveCD.
Еще одним следствием введения поддержки unionfs стала система FEM (Frenzy Extension Modules), позволяющая добавлять дополнительные программы без пересборки образа. При загрузке Frenzy производит поиск FEM-модулей на CD, жестких дисках и Flash-накопителях, после чего подключает их к системе - теперь вы можете пользоваться программами из этих модулей. Для создания FEM-модулей написана утилита pkg2fem, позволяющая создать модуль из одного или нескольких пакаджей FreeBSD.
Добавлена возможность загружаться из ISO-образа на жестком диске. Для этого нужно разместить ISO-образ в каталоге frenzy в корне любого раздела жесткого диска. При загрузке с компакта и выборе опции fromhdd основная система будет загружена с образа на жестком диске (в версии 1.0 для этого нужно было копировать все файлы с компакта в каталог)
В меню загрузчика добавлены опции загрузки с отключенным DMA на ATAPI либо ATA-устройствах, это часто помогает в случае проблем с чтением диска на некоторых приводах.
В загрузочное меню добавлены параметры:
* mode для выбора разрешения в консоли (например, можно выставить 1024?768 или другое удобное разрешение экрана)
* sound для автоопределения звуковой карты (по умолчанию звуковые драйвера теперь не загружаются)
* nofem для отключения подгрузки FEM-модулей
Добавлена возможность использовать FAT-раздел в качестве загрузочного (экспериментально). Это позволяет загружать Frenzy с FAT-разделов, используя grub4dos.
http://frenzy.org.ua.../relnotes.shtml (http://frenzy.org.ua/ru/releases/1.1/relnotes.shtml)
http://www.opennet.r...shtml?num=19268 (http://www.opennet.ru/opennews/art.shtml?num=19268)
[size="3"]Код arp-v2 интегрирован во FreeBSD 8-CURRENT[/size]
Наработки проекта arp-v2 (L2+L3 rewrite project) внесены в состав FreeBSD 8-CURRENT. Суть проекта состоит в выносе L2 данных (ARP и ND6) из L3 (IP) таблиц маршрутизации, улучшении параллельной обработки выборок данных за счет исключения лишних блокировок, упрощении логики кода связанного с маршрутизацией.
Как итог интеграции arp-v2 станет возможным уход от концепции клонирования маршрутов (RTF_CLONING), сокращение объема кода в модулях IPv4 ARP и IPv6 NDP, а также уменьшение размера структуры данных rtentry. Для отражения внесенных изменений модификации будут подвергнуты утилиты подобные "arp" и "ndp", а вывод команды "netstat -r" станет отражать только информацию непосредственно связанную с маршрутизацией.
http://www.opennet.r...shtml?num=19397 (http://www.opennet.ru/opennews/art.shtml?num=19397)
[size="3"]Уязвимости в netgraph и ftpd из состава FreeBSD[/size]
Во всех поддерживаемых версиях FreeBSD (6.3, 6.4, 7.x) обнаружены две уязвимости:
* Проблема безопасности в netgraph коде для работы с bluetooth сокетами, позволяющая локальному злоумышленнику выполнить код с повышенными привилегиями или выйти за пределы jail окружения. Уязвимости подвержены только системы с загруженными модулями ядра ng_socket или ng_bluetooth (проверить можно через kldstat -v | grep ng_). Уязвимость исправлена в 7.0-RELEASE-p7, 6.4-RELEASE-p1 и 6.3-RELEASE-p7.
* Недоработка в ftpd позволяет злоумышленнику организовать проведение CSRF (Cross Site Request Forgery) атаки, направленной на незаметное совершение авторизированным пользователем определенной FTP операции, будучи прозрачно перенаправленным на защищенный FTP ресурс.
Также можно отметить, что в настоящее время ведется сборка второго кандидата в релизы FreeBSD 7.1, который появится на ftp в ближайшее время. Что касается релиза, то разработчики рассчитывают выпустить его приблизительно через полторы-две недели.
http://www.opennet.r...shtml?num=19527 (http://www.opennet.ru/opennews/art.shtml?num=19527)
[size="3"]Уязвимости FreeBSD: lukemftpd и openssl[/size]
Две уязвимости во всех поддерживаемых релизах FreeBSD:
* FreeBSD-SA-09:01.lukemftpd (CVE-2008-4247) (http://security.freebsd.org/advisories/FreeBSD-SA-09:01.lukemftpd.asc) - аналогична FreeBSD-SA-08:12.ftpd (http://security.freebsd.org/advisories/FreeBSD-SA-08:12.ftpd.asc); позволяет злоумышленнику организовать проведение CSRF (Cross Site Request Forgery) атаки, направленной на незаметное совершение авторизированным пользователем определенной FTP операции, будучи прозрачно перенаправленным на защищенный FTP ресурс.
* FreeBSD-SA-09:02.openssl (CVE-2008-5077) (http://security.freebsd.org/advisories/FreeBSD-SA-09:02.openssl.asc) - OpenSSL некорректно проверяет результат вызова функции EVP_VerifyFinal, что позволяет принять сформированную злоумышленником подпись как корректную. Уязвимости подвержена проверка подписи ключей DSA и ECDSA, используемые совместно с SSL/TLS. Уязвимости подвержена OpenSSL версии ниже 0.9.8j, функционирующая в роли клиента SSL/TLS при работе с сервером, чей сертификат содержит ключ DSA или ECDSA.
Патчи: lukemftpd.patch (http://security.freebsd.org/patches/SA-09:01/lukemftpd.patch); openssl.patch для 7.x (http://security.freebsd.org/patches/SA-09:02/openssl.patch); openssl.patch6 для 6.x (http://security.freebsd.org/patches/SA-09:02/openssl6.patch)
http://www.opennet.r...shtml?num=19670 (http://www.opennet.ru/opennews/art.shtml?num=19670)
[size="3"]Выполнена реализация 64-битных квот для FreeBSD[/size]
John Kozubik в рассылке freebsd-fs объявил (http://lists.freebsd.org/pipermail/freebsd-fs/2009-January/005568.html) о реализации 64-битных квот, которую подготовил Kirk McKusick в виде патчей для FreeBSD 6.x/7.x в ответ на выдвинутое в июле предложение проспонсировать (http://blog.kozubik.com/john_kozubik/2008/06/32bit-freebsd-quotas.html) разработку.
John Kozubik также отметил, что в настоящий момент данная реализация применяется им в боевых условиях на ресурсе rsync.net. По его словам, в ближайшем будущем Kirk собирается добавить новый код в репозиторий FreeBSD.
http://www.opennet.r...shtml?num=19689 (http://www.opennet.ru/opennews/art.shtml?num=19689)
[size="3"]FreeBSD Foundation удалось собрать запланированные на 2008 год средства[/size]
Несмотря на то, что по состоянию на конц ноябре 2008 года из запланированных 300 тыс. долларов пожертвований было собрано (http://www.opennet.ru/opennews/art.shtml?num=19065) только 187 тыс., призыв в последние дни декабря возымел действие и в итоге организации FreeBSD Foundation удалось собрать $282 481 (http://lists.freebsd.org/pipermail/freebsd-announce/2009-January/001232.html), т.е. совсем немного недобрать до запланированной величины. В фонд FreeBSD в 2008 году было перечислено 450 пожертвований, из которых 173 были осуществлены в декабре. В прошлом году проектом собрано 374 пожертвования, суммарным размером 359 тыс. долларов.
Примерно треть собранных средств будет потрачено на поддержку проектов по улучшению TCP-стека, виртуализации сетевой подсистемы, избавлению от проблем проявляющихся при некорректном размонтировании USB-накопителей, улучшению поддержки Java и т.д. Остальные средства будут направлены на проведение конференций и встреч разработчиков.
http://www.opennet.r...shtml?num=19699 (http://www.opennet.ru/opennews/art.shtml?num=19699)
[size="3"]Во FreeBSD появился "упреждающий" дисковый планировщик[/size]
Luigi Rizzo предлагает (http://lists.freebsd.org/pipermail/freebsd-stable/2009-January/047597.html) пользователям FreeBSD 7-STABLE протестировать новую инфраструктуру для реализации внешних планировщиков ввода-вывода дисковой подсистемы, построенную на базе системы GEOM.
В качестве демонстрации возможностей системы, представлен планировщик, реализующий алгоритм "anticipatory scheduling". С целью уменьшения перемещений головок по диску планировщик пытается упорядочить поступающие запросы для более последовательного обращения к диску, вводя небольшую дополнительную задержку (2..5мс) перед фактической отправкой запроса и объединяя поступившие за это время новые запросы с ожидающими в очереди.
По приведенным результатам тестов видно, что включение данного механизма позволяет ускорить параллельное выполнение задач, требующих последовательного и произвольного доступа к дисковой подсистеме.
http://www.opennet.r...shtml?num=19885 (http://www.opennet.ru/opennews/art.shtml?num=19885)
[size="3"]Во FreeBSD устранена проблема зависания при неправильно настроенном VPN-сервере[/size]
Во FreeBSD 8-CURRENT устранена (http://docs.freebsd.org/cgi/mid.cgi?200901202226.n0KMQ9wI058610) ошибка (http://www.freebsd.org/cgi/query-pr.cgi?pr=129625), связанная с бесконечным зацикливанием в netgraph модуле ng_iface, приводящая к зависанию системы в конфигурациях с неправильно настроенным VPN-сервером (например, при поднятии ошибочных маршрутов в mpd).
http://www.opennet.r...shtml?num=19874 (http://www.opennet.ru/opennews/art.shtml?num=19874)
[size="3"]Во FreeBSD 7-STABLE увеличен размер адресного пространства ядра (KVA) на amd64[/size]
Игорь Сысоев сообщил (http://sysoev.ru/#20.01.2009) о том, что Alan Cox перенёс (http://lists.freebsd.org/pipermail/svn-src-all/2009-January/003850.html) из FreeBSD 8-CURRENT во 7-STABLE возможность увеличения адресного пространства ядра (KVA) на amd64. Сейчас KVA увеличено до 6G, а максимальный размер KVM - до 3.6G, что дает возможность значительного увеличения размера сетевых буферов.
Пример:
# 797M
kern.ipc.nmbjumbop=192000
# 504M
kern.ipc.nmbclusters=229376
# 334M
kern.ipc.maxsockets=204800
не забыв указать в /boot/loader.conf: vm.kmem_size=3G
http://www.opennet.r...shtml?num=19875 (http://www.opennet.ru/opennews/art.shtml?num=19875)
[size="3"]Статус развития FreeBSD с октября по декабрь 2008 года[/size]
Представлен квартальный отчет (http://www.freebsd.org/news/status/report-2008-10-2008-12.html), рассказывающий о развитии проекта FreeBSD с октября по декабрь:
* Выпущены релизы 6.4 и 7.1 ( последний 5 января 2009 г. ), начиная с которых распространению подлежат и DVD-образы для основных арпхитектур ( x86 и amd64 ), которые могут использоваться для установки и как "живая ФС" для восстановительных работ. Для концентрации усилий над ветками 7.X и 8.X выпуск релизов ветки 6.x официально прекращён;
* Представлен проект BSD# (http://www.mono-project.com/Mono:FreeBSD) по переносу приложений Mono во FreeBSD, находится в портах lang/mono и lang/mono-devel;
* В состав FreeBSD 8-Current включен патч, реализующий поддержку назначения нескольких IPv4/IPv6-адресов в окружении jail(4), либо позволяющий обойтись вообще без IP в нём. Разработчики надеются перенести новшество в 7-STABLE до выпуска 7.2-RELEASE.
* Продвигается (http://www.opennet.ru/opennews/art.shtml?num=19109) работа в направлении виртуализации сетевого стека, ставящая целью обеспечить в ядре сущности раздельных состояний сети, в частности, для применения в виртуализованных окружениях, таких, как jail(4), каждый из которых сможет распоряжаться своим собственным виртуальным сетевым интерфейсом, маршрутами, пакетными фильтрами и т. д. Например, разработан виртуальный сетевой интерфейс, напоминающий ethernet-кроссовер, для соединения, например, запущенных jail'ов без привлечения возможностей сетевой подсистемы netgraph.
* Поддержка процессоров: в 8-CURRENT заявлено о поддержке аппаратуры вида sun4u на основе процессоров UltraSPARC III и младше. Готов к загрузке предварительный ISO-образ, проверенный на ряде машин вида Fire и Blade. Также, проводятся работы по поддержке процессоров AMCC/IBM PPC440/460 архитектуры PowerPC.
* Улучшения в звуковых драйверах HDA, в поддержке карт памяти ( MMC/SD ), средствах анализа и мониторинга производительности (PmcTools).
* В BSD-лицензированном варианте утилиты grep, для улучшения совместимости, временно задействованы некоторые GNU библиотеки, в частности regex. По мере разработки от кода GNU в этой утилите обещают избавиться.
* Инженеры по выпускам испытывали затруднения в связи с необходимостью продолжения выпуска ветки 6.X. В дальнейших их планах, помимо выпуска 8.0-RELEASE в июне 2009 г., находятся уменьшение периода заморозки дерева портов ( периода "обкатки" сторонних приложений ). Также упоминается изменение способа обработки сообщений об ошибках, чтобы незначительные сообщения об ошибках и запросы на дополнения не задерживали выпуски. Кроме того, документацию ( handbook и faq ) планируется вынести из базовой сборки в пакеты.
* Количество адаптированных к установке сторонних приложений ( портов ) выросло до 19600. Среди обновлённых версий - gnome 2.24.3, kde 4.1.4, Xorg 7.4. Тем не менее работа над портом Perl 5.10 еще не завершена. Число активных сообщений об ошибках ( PR ) во время заморозки перед недавними релизами ощутимо выросло, но теперь вернулось к своему обычному значению ( примерно 900 ). И хотя команда мантейнеров пополнилась 5 новыми членами, и ещё 2 вернулись, сообщается о том, что большинство наличествующих ошибок находится в состоянии "присвоено мантейнеру", и с этим определенно будут что-то делать. Кроме того, примерно 24% ( 4700 ) портов не поддерживаются мантейнерами, к ним относятся 58 зарегистрированных сообщений о проблемах.
* Представлен генератор описаний уязвимостей в формате VuXML (vuln.xml), на основании заполнения web-формы;
* Запущен официальные web-форум (http://forums.freebsd.org/) и Youtube-канал (http://www.youtube.com/bsdconferences);
* Проведён ряд мероприятий, таких как Bugathon и meetBSD, собраны пожертвования, проведена работа над переводом на некоторые языки дальнего зарубежья.
http://www.opennet.r...shtml?num=20009 (http://www.opennet.ru/opennews/art.shtml?num=20009)
[size="3"]Поддержка графической загрузки FreeBSD. Перевод GENERIC-ядра на новый USB стек[/size]
Oliver Fromme реализовал (http://lists.freebsd.org/pipermail/freebsd-hackers/2009-February/027623.html) поддержку загрузки в графическом режиме для загрузчика FreeBSD 8-CURRENT. Для упрощения тестирования подготовлена (http://wiki.freebsd.org/OliverFromme/BootLoaderTest) бинарная сборка нового /boot/loader для платформ FreeBSD 6.x, 7.x или 8.x (i386 и amd64) и инструкция по его установке.
Alfred Perlstein представил (http://docs.freebsd.org/cgi/mid.cgi?20090206045349.GQ78804) план перевода GENERIC-ядра на новый стек USB (http://www.opennet.ru/opennews/art.shtml?num=18725) во FreeBSD 8-CURRENT. После активации usb2 в GENERIC-ядре планируется портировать недостающие компоненты, устранить недоработки и 22 марта удалить из дерева исходных текстов код старого USB стека.
http://www.opennet.r...shtml?num=20136 (http://www.opennet.ru/opennews/art.shtml?num=20136)
[size="3"]Получение root привилегий через telnetd демон во FreeBSD[/size]
В telnetd демоне, входящем в состав FreeBSD 7.x, обнаружена (http://lists.grok.org.uk/pipermail/full-disclosure/2009-February/067954.html) критическая уязвимость, позволяющая локальному злоумышленнику получить привилегии суперпользователя в системе. Предположительно проблеме подвержены OpenBSD, NetBSD и другие системы.
Эксплоит настолько прост, что вначале даже не верится, что он может работать. Уязвимость связана ненадлежащей чисткой переменных окружения перед вызовом /bin/login из telnetd (отсутствует чистка переменной окружения LD_PRELOAD, которую можно передать со стороны клиента, так как telnet протокол поддерживает передачу переменных окружения). Суть метода в подключении, через LD_PRELOAD простейшей библиотеки, запускающей /bin/sh в процедуре инициализации. Библиотека должна находиться на атакуемом хосте. При этом в момент подключения к локальному telnetd серверу, злоумышленник без аутентификации получает root shell.
Теоретически на основе данной проблемы можно реализовать и сценарий удаленной атаки (например, библиотека может быть загружена через анонимный FTP). Исправления уязвимости в настоящий момент не доступны, рекомендуется отключить telnet сервис, если он используется.
http://www.opennet.r...shtml?num=20302 (http://www.opennet.ru/opennews/art.shtml?num=20302)
[size="3"]Десктоп окружение KDE 4.2.0 включено в состав портов FreeBSD[/size]
"KDE 4.2.0 has been merged into the ports tree (http://www.freebsd.org/news/newsflash.html#event20090214:01)" - завершено портирование KDE 4.2.0 для FreeBSD, пакеты уже доступны (http://freebsd.kde.org/) в портах.
http://www.opennet.r...shtml?num=20297 (http://www.opennet.ru/opennews/art.shtml?num=20297)
[size="3"]Новый USB-стек теперь включен по умолчанию во FreeBSD 8-CURRENT[/size]
Alfred Perlstein завершил (http://docs.freebsd.org/cgi/mid.cgi?20090215223428.GA74071) перевод GENERIC-ядра FreeBSD 8-CURRENT на новый USB2 стек. Все имена опций и модулей USB2 пока носят временный характер, имена будут зафиксированы на следующей стадии, на которой USB2 код будет полностью интегрирован в дерево исходных текстов. В будущем код старого USB стека (oldUSB) планируется удалить из дерева исходных текстов (ранее в качестве сроков назывался конец марта).
http://www.opennet.r...shtml?num=20299 (http://www.opennet.ru/opennews/art.shtml?num=20299)
[size="3"]В HAL появилась поддержка USB2 подсистемы FreeBSD[/size]
"usb2 support for hal (http://lists.freebsd.org/pipermail/freebsd-current/2009-February/003507.html)" - Joe Marcus Clarke завершил работу по обеспечению поддержки новой USB подсистеме FreeBSD в HAL (hardware abstraction layer). Перед коммитом разработчик просит протестировать подготовленный патч. Инструкцию по использованию HAL в GNOME под FreeBSD можно найти здесь.
http://www.opennet.r...shtml?num=20352 (http://www.opennet.ru/opennews/art.shtml?num=20352)
[size="3"]Представлен проект VirtualBSD[/size]
Представлен проект VirtualBSD (http://www.virtualbsd.info/), десктоп-ориентированная сборка FreeBSD 7.1, подготовленная в виде образа для запуска в системе виртуализации VMware. В качестве десктоп окружения используется Xfce 4.4.3 с интегрированной панелью wbar (http://code.google.com/p/wbar/). Из приложений присутствуют Firefox 3.0.5, Thunderbird 2.0.19, Pidgin 2.5.4, Xchat 2.8.6, OpenOffice.org 3.0, Gimp 2.6.4, VLC 0.9.8a, Transmission 1.42, Samba 3.0.34, CUPS 1.3.9. Размер сжатого образа (http://www.virtualbsd.info/download.html) виртуальной машины - 1.5 Гб.
http://www.opennet.r...shtml?num=20422 (http://www.opennet.ru/opennews/art.shtml?num=20422)
[size="3"]Gallium3D портирован для FreeBSD[/size]
"Gallium3D, EGL Now Buildable On FreeBSD (http://www.phoronix.com/scan.php?page=news_item&px=NzA5Mg)" - в коде архитектуры для разработки 3D драйверов Gallium3D (http://en.wikipedia.org/wiki/Gallium3D) появилась поддержка FreeBSD. Gallium3D представляет собой попытку адаптировать OpenGL реализацию Mesa 3D к современным аппаратным архитектурам, создав единый промежуточный интерфейс для упрощенной разработки драйверов. В Gallium3D, для оптимизации работы, используется два модуля ядра - DRM2 (Direct Rendering Manager) для управления памятью, и DRI (Direct Rendering Interface) для взаимодействия с GPU.
Кроме того, для BSD систем в скором времени ожидается появление реализации модуля для переключения видеорежимов на уровне ядра, что позволит уйти от необходимости задействования root привилегий для запуска X-сервера.
http://www.opennet.r...shtml?num=20472 (http://www.opennet.ru/opennews/art.shtml?num=20472)
[size="3"]GUI альтернативного инсталлятора FreeBSD может быть переписан на Java [/size]
После некоторого затишья в разработке опубликован (http://ivoras.sharanet.org/blog/tree/2009-02-19.what-happened-to-finstall.html) отчет о состоянии развития альтернативного инсталлятора FreeBSD. Несмотря на готовность finstall (http://sourceforge.net/projects/finstall) в общем виде, еще многие его части нуждаются в доработке. Главное из планируемых автором изменений - намерение переписать графический интерфейс с Python (PyGTK) на Java. Тем не менее, если найдутся энтузиасты, готовые продолжить развитие GUI на языке Python, благодаря модульной организации с разделением основной логики от интерфейса, будет не трудно поддерживать два варианта GUI или вообще можно будет отказаться от затеи с его переводом на Java. В любом случае автор finstall намерен довести проект до конца.
Отмечается, что готов установочный LiveCD с FreeBSD 7-STABLE, поддерживается инсталляция на жесткий диск базовой системы с одним из фиксированных наборов пакетов, при установке поддерживаются файловые системы UFS2, ZFS или ext2, готова программа для настройки параметров сетевого соединения и активации сервисов (ssh, ntp и т.п.), реализован режим удаленной установки. Неготовыми остаются: редактор дисковых разделов (сейчас диск разбивается автоматически) и утилита для выбора установки индивидуальных пакетов (сейчас просто копируются все пакеты с LiveCD).
http://www.opennet.r...shtml?num=20517 (http://www.opennet.ru/opennews/art.shtml?num=20517)
[size="3"]Twitter-клиент для FreeBSD[/size]
Под FreeBSD до сих пор в портах не существует ни одного twitter-клиента. После поиска подходящего клиента для сервиса twitter (http://twitter.com/) выбор был остановлен на qwit (http://code.google.com/p/qwit/), написанном с использованием QT4, с очень удобным интерфейсом и функционалом.
Создал порт (http://truebsd.org/files/soko1/ports/net-im/qwit/qwit.tar.gz) (возможно скоро появится в дереве портов FreeBSD) и бинарный пакет (http://truebsd.org/files/soko1/ports/packages/net-im/qwit-0.8.tbz) (для FreeBSD 7.1-STABLE, qt.4.4.3) с qwit 0.8.
http://www.opennet.r...shtml?num=20544 (http://www.opennet.ru/opennews/art.shtml?num=20544)
[size="3"]Набор патчей с реализацией протоколов Igmpv3 и Ssm для FreeBSD[/size]
"IGMPv3/SSM: alpha code drop (http://lists.freebsd.org/pipermail/freebsd-current/2009-March/004128.html)" - для IP-стека FreeBSD 8-CURRENT представлен новый набор патчей с реализацией протоколов групповой маршрутизации IGMPv3 (http://en.wikipedia.org/wiki/Internet_Group_Management_Protocol) (Internet Group Management Protocol) и SSM (http://en.wikipedia.org/wiki/Source-specific_multicast) (Source Specific Multicast). IGMP активно используется для организации доставки широковещательного мультимедийного контента в IPTV системах. В будущем планируется бэкпортировать данные патчи для ветки 7-STABLE.
http://www.opennet.r...shtml?num=20586 (http://www.opennet.ru/opennews/art.shtml?num=20586)
[size="3"]Igmpv3 и Ssm были добавлены в стек Ipv4 во FreeBSD-current[/size]
Вo FreeBSD 8-Current принят (http://docs.freebsd.org/cgi/mid.cgi?49B558A2.2050101) код реализацией протоколов групповой маршрутизации IGMPv3 (http://en.wikipedia.org/wiki/Internet_Group_Management_Protocol) (Internet Group Management Protocol) и SSM (Source Specific Multicast). IGMP (http://en.wikipedia.org/wiki/Source-specific_multicast) активно используется для организации доставки широковещательного мультимедийного контента в IPTV системах. В будущем планируется бэкпортировать данные патчи для ветки 7-STABLE.
http://www.opennet.r...shtml?num=20671 (http://www.opennet.ru/opennews/art.shtml?num=20671)
[size="3"]Tomahawk Desktop отказывается от использования Linux ядра в пользу FreeBSD[/size]
Компания Tomahawk Computers объявила о переводе своей десктоп-ориентированной операционной системы Tomahawk Desktop с кодовой базы Linux на FreeBSD. В качестве графической оболочки по прежнему будет использоваться KDE. По заявлению компании главная причина перехода заключается в лицензии GPL, навязывающей обязательность раскрытию исходных текстов смежных разработок.
Первый релиз Tomahawk Desktop 2.0, основанный на ядре и базовых библиотеках FreeBSD, планируется выпустить в течение 2009 года, а следующий 3.0 в 2010 году. В роли файловой системы по умолчанию будет задействована ZFS, недавно портированная для FreeBSD.
Одной из необычных особенностей новой операционной системы является решение по выполнению всех пользовательских приложений в реальном режиме времени, как это сделано в Apple Mac OS X. Что касается ценовой политики, то Tomahawk Desktop будет распространяться на коммерческой основе, но с возможностью бесплатной загрузки для некоммерческого использования.
http://www.opennet.r...shtml?num=20739 (http://www.opennet.ru/opennews/art.shtml?num=20739)
Цитата: turbo от 14 Марта 2009, 20:55[size="3"]Tomahawk Desktop отказывается от использования Linux ядра в пользу FreeBSD[/size]
Кризис, деньги нужны! :-) Поэтому, закроем мы исходники, чтоб было на чем на хлеб зарабатывать! :-)
[size="3"]Открытый видеодрайвер Nouveau адаптирован для FreeBSD[/size]
"Nouveau on FreeBSD (Take 2) (http://lists.freebsd.org/pipermail/freebsd-current/2009-March/004962.html)" - для FreeBSD представлен модифицированный DRM-модуль ядра, позволяющий обеспечить работу режимов акселерации EXA Xv (X-Video) в последней версии открытых драйверов Nouveau. Поддерживаются видеокарты NVIDIA серии NV40 и NV50.
http://www.opennet.r...shtml?num=20930 (http://www.opennet.ru/opennews/art.shtml?num=20930)
[size="3"]Вышла бета-версия FreeBSD 7.2. Обновлен порт Linux-инфраструктуры для эмулятора[/size]
Спустя всего 3 месяца с момента выпуска релиза FreeBSD 7.1 анонсирован (http://lists.freebsd.org/pipermail/freebsd-stable/2009-April/049233.html) выход первой бета версии FreeBSD 7.2. Приятной неожиданностью является намерение 4 мая выпустить релиз FreeBSD 7.2, в два раза сократив время подготовки редиза по сравнению с прошлой версией (на подготовку FreeBSD 7.1 ушло 10 месяцев).
При тестировании FreeBSD 7.2-BETA1 разработчики просят обратить особое внимание на работу сетевого драйвера bce(4) и функционирование многопоточных библиотек, в которые было внесено несколько значительных изменений.
Установочные iso-образы подготовлены для платформ amd64 (ftp://ftp3.ru.freebsd.org/pub/FreeBSD/ISO-IMAGES-amd64/7.2/), i386 (ftp://ftp3.ru.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/7.2/), ia64 (ftp://ftp3.ru.freebsd.org/pub/FreeBSD/ISO-IMAGES-ia64/7.2/), pc98 (ftp://ftp3.ru.freebsd.org/pub/FreeBSD/ISO-IMAGES-pc98/7.2/), powerpc (ftp://ftp3.ru.freebsd.org/pub/FreeBSD/ISO-IMAGES-powerpc/7.2/) и sparc64 (ftp://ftp3.ru.freebsd.org/pub/FreeBSD/ISO-IMAGES-sparc64/7.2/). Кроме того, можно совершить бинарное обновление с версии 7.1-RELEASE, для этого нужно выполнить команды:
Загружаем обновления:
freebsd-update upgrade -r 7.2-BETA1
Устанавливаем обновления, попутно отвечая на вопросы,
касающиеся решения конфликтов при обновлении файлов конфигурации:
freebsd-update install
Перезагружаем систему:
shutdown -r now
В заключение, можно отметить выпуск (http://lists.freebsd.org/pipermail/freebsd-emulation/2009-April/005819.html) обновления программного Linux окружения для эмулятора Linuxulator. Новая сборка Linux инфраструктуры основана на Fedora 8, включает в себя 47 новых портов и реализует поддержку возможности совместного размещения портов на основе разных Linux дистрибутивов в одном дереве. Из обновленных портов можно отметить: acroread8, linux-opera, linux-realplayer, linux-seamonkey, linux-thunderbird, в процессе адаптации находятся приложений google-earth и skype.
http://www.opennet.r...shtml?num=21088 (http://www.opennet.ru/opennews/art.shtml?num=21088)
[size="3"]Поддержка веса для ECMP маршрутов во FreeBSD[/size]
Kip Macy добавил в дерево исходных текстов FreeBSD HEAD реализацию поддержки задания веса для равнозначных маршрутов. Внесенные изменения дополняют добавленную в прошлом году реализацию поддержки создания нескольких ECMP маршрутов (Equal-cost multi-path), которая допускала использование только одинакового веса.
В команде route появилось несколько новых ключей:
* Параметр "weight" для задания веса маршрута (mpath);
* Параметры "sticky" / "nostick" для выключения или включения балансировки нагрузки на уровне соединений;
* Параметр "show", работающий как алиас к "get".
http://www.opennet.r...shtml?num=21262 (http://www.opennet.ru/opennews/art.shtml?num=21262)
[size="3"]Сетевой стек FreeBSD окончательно простился с глобальными блокировками[/size]
Роберт Ватсон (Robert Watson) объявил о завершении четырехлетней работы по переводу сетевой подсистемы FreeBSD на более эффективную систему блокировок. В сетевой стек FreeBSD 8-CURRENT добавлено исправление, удаляющее поддержку флага IFF_NEEDSGIANT, обеспечивающего работоспособность старого кода сетевых драйверов, использующего механизм глобальной блокировки (Giant lock). Иными словами, отныне все сетевые драйверы переведены на новую MPSAFE (Multi Processor Safe) систему блокировок, эффективную для многопроцессорных и многоядерных систем.
http://www.opennet.r...shtml?num=21330 (http://www.opennet.ru/opennews/art.shtml?num=21330)
[size="3"]Во FreeBSD появилась поддержка устройств Broadcom BCM43xx[/size]
Sam Leffler и Andrew Thompson выполнили портирование драйвера bwi для работы с беспроводными устройствами Broadcom BCM4301, BCM4307, BCM4306, BCM4309, BCM4311, BCM4312, BCM4318, BCM4319, разработанного Sepherosa Ziehau в рамках проекта DragonFly. В настоящий момент драйвер обеспечивает работу устройств в режимах 802.11b и 802.11g, а также имеет ряд ограничений:
* Необходим firmware v3, который должен быть получен самостоятельно. Для загрузки этого модуля запланировано создание соответствующего порта.
* Отсутствует поддержка режимов 802.11a и 802.11n - требуется firmware v4 (bcm-v4.sipsolutions.net) .
Драйвер проверен при работе с моделями BCM4319 mini-pci и BCM4318 CardBus и будет подключен к инфраструктуре ядра после фиксации порта firmware.
http://www.opennet.r...shtml?num=21566 (http://www.opennet.ru/opennews/art.shtml?num=21566)
[size="3"]Официально вышел FreeBSD 7.2-release[/size]
Спустя 5 месяцев с момента прошлого выпуска представлен релиз FreeBSD 7.2, доступный для архитектур amd64, i386, ia64, pc98, powerpc и sparc64. Для установки подготовлены iso-образы DVD, CD (3 диска), LiveCD и сокращенный образ для установки по сети.
Основные новшества FreeBSD 7.2-RELEASE:
* Поддержка Superpages, страниц памяти увеличенного размера с возможностью автоматической и прозрачной для приложений группировки в Superpages нескольких обычных страниц памяти. По умолчанию возможность выключена, для активации нужно указать "vm.pmap.pg_ps_enabled=1" в /boot/loader.conf;
* Адресное пространство памяти доступное ядру увеличено для архитектуры amd64 до 6 Гб, а kmem map до 3.6 Гб (отныне значение устанавливается как 60% от адресного пространства ядра);
* Улучшения в работе системы изолированных окружения jail:
o Возможность назначения нескольких IP4/IP6 адресов;
o Поддержка протокола SCTP;
o Возможность жесткой привязки jail к заданному процессору с помощью утилиты cpuset;
o Возможность запуска jail окружения с указанием использовать для него отдельную таблицу маршрутизации (FIB);
o Возможность создания Jail без указания IP-адреса (без поддержки сети), по аналогии с chroot(8);
o Для выполнения отладки в ddb(4) добавлены команды "show jails" и "show mount";
o Улучшена совместимость в плане работы 32-разрядных jail'ов на 64-разрядных системах;
* Утилиты и программы:
o В csup, аналоге cvsup, переписанном на языке Си, появилась поддержка режима CVSMode, при котором осуществляется загрузка CVS репозиториев целиком.
o Из NetBSD портирован демон btpand с реализацией поддержки профилей Bluetooth Network Access Point (NAP), Group Ad-hoc Network (GN) и Personal Area Network User (PANU);
o Добавлена новая утилита makefs для создания образа файловой системы на основе дерева директорий;
o В утилите fsck(8) появилась опция "-D" с реализацией агрессивного режима восстановления серьезно поврежденной файловой системы, когда обычные способы восстановления не помогают или приводят к краху fsck;
o DNS сервер BIND в базовой системе обновлен до версии 9.4.3-P2.
o В систему портов добавлена возможность параллельной сборки, что значительно ускоряет процесс компиляции на многоядерных системах. Число параллельно выполняемых работ задается через параметр MAKE_JOBS_NUMBER в /etc/make.conf;
o Официально поддерживаемая в портах версия KDE обновлена с 3.5.10 (x11/kde3) до 4.2.2 (x11/kde4). Добавлена новая версия GNOME 2.26, вместо 2.22.
* Улучшение поддержки файловых систем и работы с дисками:
o В glabel добавлена возможность использования ufsid меток для уникальной идентификации файловых систем;
o В gjournal появилась поддержка журналирования корневой файловой системы;
o В подсистеме cam(4) появилась возможность задания попыток чтения ( sysctl kern.cam.cd.retry_count), что, например, позволяет значительно эффективнее работать утилитам подобным ddrescue при попытках чтения содержимого сбойных CD/DVD;
o В коде VFS улучшена работа механизма совместной блокировки vnode, что позволяет повысить производительность. По умолчанию возможность выключена, для включения необходимо указать "sysctl vfs.lookup_shared=1";
* Улучшение поддержки оборудования:
o Реализована полная поддержка процессоров семейства UltraSparc-III (Cheetah);
o Добавлен новый драйвер sdhci(4) с поддержкой PCI SD хост контроллеров (кард-ридеров);
o Обновлен модуль ядра DRM (Direct Rendering Manager) в котором улучшена поддержка GPU AMD/ATI r500, r600, r700, и IGP XGI V3XE/V5/V8, Intel i915;
o Обновлены драйверы для сетевых карт Atheros, JMicron, SIS, RealTek, Broadcom. В fxp драйвере появилась поддержка TSO (TCP/IP segmentation offload), WoL (Wake on LAN), вычисления контрольных сумм и установка/очистка VLAN тегов силами сетевой карты;
o Добавлена поддержка новых IDE/SATA/SAS контроллеров, например Marvell PATA M88SX6121 и nForce MCP67/MCP7.
o Добавлен драйвер u3g(4) с поддержкой 3G модемов с USB интерфейсом , среди которых: Vodafone Mobile Connect Card 3G, Qualcomm CDMA MSM, Huawei E220, Novatel U740, Sierra MC875U;
Пользователи версий 7.0-RELEASE, 7.1-RELEASE, 7.2-BETA, 7.2-RC1, и 7.2-RC2 могут произвести бинарное обновление, выполнив команды:
Загружаем обновления:
freebsd-update upgrade -r 7.2-RELEASE
Устанавливаем обновления, попутно отвечая на вопросы,
касающиеся решения конфликтов при обновлении файлов конфигурации:
freebsd-update install
Перезагружаем систему:
shutdown -r now
http://www.opennet.r...shtml?num=21576 (http://www.opennet.ru/opennews/art.shtml?num=21576)
[size="3"]Китай внедрил собственную операционную систему с ядром на основе FreeBSD[/size]
Китайские военные и правительственные учреждения используют собственную операционную систему Kylin, разработанную с особыми требованиями к безопасности. Компьютеры на которые устанавливается ОС Kylin, основаны на разработанном в Китае процессоре, обладающем дополнительными аппаратными возможностями для поддержки выполнения приложений в условиях повышенной изоляции.
Советник Правительства США по вопросам безопасности подтвердил полную неготовность спецслужб США к нанесению кибератак на данную ОС, так как она не является прямым клоном Windows, UNIX или Linux. ОС Kylin разработана в недрах Китайского университета науки и технологий по заказу Министерства национальной безопасности Китая. Предварительный анализ показал, что данная система базируется на ядре FreeBSD, доработанном в плане добавления дополнительных механизмов контроля безопасности. При разработке заимствованы различные компоненты Linux, Darwin и FreeBSD, пользовательский интерфейс основан на GNOME.
Документацию по установке и администрированию Kylin на китайском языке можно загрузить на данной странице, iso-образы раннего прототипа данной ОС доступны здесь (http://220.169.30.235/pub/Kylin-ISO/).
http://www.opennet.r...shtml?num=21763 (http://www.opennet.ru/opennews/art.shtml?num=21763)
[size="3"]Во FreeBSD добавлена поддержка иерархических изолированных окружений[/size]
Jamie Gritton добавил во FreeBSD-CURRENT поддержку иерархических (вложенных) jail'ов. Теперь внутри защищенных контейнеров можно в свою очередь создавать другие контейнеры, при необходимости с более (но никогда не менее) жесткими ограничениями.
Также некоторые настройки, относящиеся к jail и доступные ранее глобально через sysctl, теперь можно изменять для каждого контейнера отдельно (sysctl оставлены для обратной совместимости). Команда jail также претерпела изменения и теперь позволяет вместо предопределенного набора параметров задавать произвольные пары "имя=значение" для более гибкой настройки и возможности последующего расширения. Также параметры jail теперь можно менять "на лету".
Из патчей по улучшению Jail, которые еще не включены в основное дерево исходных текстов можно отметить: возможность для ограничения объема памяти и ресурсов CPU; реализацию отдельных для каждого Jail пространства идентификаторов процессов (pid), идентификаторов пользователей (uid) и SysV IPC.
http://www.opennet.r...shtml?num=21915 (http://www.opennet.ru/opennews/art.shtml?num=21915)
[size="3"]Обновление звуковой подсистемы во FreeBSD 8-current[/size]
В дерево исходных текстов FreeBSD 8-CURRENT внесена большая порция изменений в звуковую подсистему. Реализованы следующие улучшения:
* Поддержка раздельного и независимого управления громкостью для каждого приложения (канала, потока), без изменения основного уровня громкости;
* Новый высококачественный конвертер частоты дискретизации (sample-rate-converter), основанный на методе SINC интерполяции;
* Параметрический программный эквалайзер (feeder_eq), поддерживающий управление частотными характеристиками воспроизводимого pcm-аудиопотока (басы, низкие частоты). Внесенный код предоставляет средства для управления тональностью, как для удовлетворения акустических предпочтений, так и для частотной компенсации звука под заданные характеристики воспроизводящей аппаратуры (например, для оптимизации воспроизведения через наушники или телефон);
* В реализацию виртуальных аудиоканалов добавлена поддержка прозрачного адаптивного/динамического смешивания каналов с аудиоданными разных форматов и частот;
* Режим прямой передачи немодифицированных, чистых pcm-потоков на устройства вывода, в обход средств DSP обработки (например, смешивания или преобразования частоты);
* Режим эксклюзивного доступа к любым видам PCM-потоков (работает через открытие файла с флагом O_EXCL и напоминает режим 'passthrough' для виртуального звукового канала, при котором приглушаются все остальные каналы);
* Мультиканальная матричная обработка для бесшовного преобразования или перенаправления каналов;
* Звуковой Loopback/Null драйвер.
Описание новых sysctl для настройки параметров представленных возможностей можно найти здесь.
http://www.opennet.r...shtml?num=22052 (http://www.opennet.ru/opennews/art.shtml?num=22052)
[size="3"]Во FreeBSD исправлены проблемы с системным вызовом fork и драйверами bce и fxp[/size]
В ветке FreeBSD 7 устранены три серьезные проблемы:
* Взаимная блокировка (deadlock) в системе распределения памяти приводящая к зависанию дочернего процесса при одновременном выполнении в различных нитях родительского многопоточного приложения системного вызова fork и функции malloc;
* Некорректный расчет суммарного размера пакетов в сетевом драйвере bcm (Broadcom Gigabit Ethernet) приводит к неработоспособности с данным драйвером системы агрегации нескольких линков, базирующейся на протоколе LACP и драйвере псевдоинтерфейса lagg;
* При включении TSO (TCP segmentation offload) опции для сетевого интерфейса fxp (Intel Ethernet), кроме ожидаемого снижения нагрузки системы за счет выноса некоторых моментов обработки TCP соединений на плечи сетевых карт, наблюдается ощутимое падение скорости передачи данных из-за большой потери получаемых пакетов, MSS (Maximum Segment Size) которых меньше MTU (Maximum Transmission Unit) на стороне отправителя.
http://www.opennet.r...shtml?num=22311 (http://www.opennet.ru/opennews/art.shtml?num=22311)
[size="3"]Патч для интеграции ATA в подсистему CAM во FreeBSD[/size]
Во FreeBSD подсистему CAM, изначально реализующую унифицированный модульный интерфейс для разработки драйверов для SCSI устройств, добавлена поддержка средств для управления устройствами с шиной ATA/SATA. Патч не влияет на работу текущей ATA подсистемы FreeBSD, но позволяет ускорить реализацию поддержки AHCI контроллеров, например, уже представлены экспериментальные CAM-драйверы для контроллеров ICH8 и JMB363.
Новая инфраструктура поддерживает такие возможности, как NCQ (Native Command Queuing), MSI (Message Signaled Interrupts) и мультипликатор портов (Port Multiplier). Управление производится через стандартную утилиту camcontrol. Патч доступен для дерева исходных текстов FreeBSD 8-CURRENT.
http://www.opennet.r...shtml?num=22353 (http://www.opennet.ru/opennews/art.shtml?num=22353)
[size="3"]Поддержка UTF-8 в консоли FreeBSD 8.0-current[/size]
Ed Schouten сообщил в списке рассылки freebsd-current о первых результатах работы над реализацией нового консольного драйвера newcons, с поддержкой многобайтовых кодировок в консоли. Поддержка во FreeBSD кодировки UTF-8 в X Window доступна уже давно, первым шагом к возможности работы с UTF-8 в консоли послужило принятие в январе в состав FreeBSD кода библиотеки libteken с реализацией эмуляции возможностей vt100/xterm/UTF-8 для виртуальных терминалов, работающих через драйвер консоли syscons(4). В настоящий момент для ядра FreeBSD создан прототип консольного драйвера с поддержкой ремапинга Unicode символов в представление стандартных VGA шрифтов.
Для использования UTF-8 необходимо добавить в файл конфигурации ядра: "options TEKEN_UTF8" и "options TEKEN_XTERM", после чего заменить тип консольного терминала в /etc/ttys с cons25 на xterm.
http://www.opennet.r...shtml?num=22600 (http://www.opennet.ru/opennews/art.shtml?num=22600)
[size="3"]KyivBSD - конференция разработчиков и пользователей FreeBSD/PC-BSD[/size]
26 сентября 2009 года в городе Киеве, Украина, состоится первая конференция разработчиков и пользователей ОС FreeBSD/PC-BSD. Конференция, в работе которой примут участие разработчики из Украины, России и других стран, ставит целью наладить личные контакты между специалистами, обсудить перспективы развития как FreeBSD/PC-BSD, так и свободного программного обеспечения вообще, инициировать новые проекты.
В настоящее время программа конференции формируется. Приглашаются докладчики, а также все желающие пообщаться и познакомиться. Участие для всех будет бесплатным, с частичным возмещением транспортных затрат докладчикам. На сайте присутствует ссылка на форму регистрации для участников, в случае дополнительных (нестандартных) вопросов следует обращаться на email info@kyivbsd.org.ua.
http://www.opennet.r...shtml?num=22678 (http://www.opennet.ru/opennews/art.shtml?num=22678)
[size="3"]Вышел последний релиз проекта DesktopBSD - 1.7[/size]
Спустя 20 месяцев с момента прошлой версии, вышел релиз десктоп-ориентированной операционной системы DesktopBSD 1.7, построенный на базе FreeBSD 7.2, X.Org 7.4, KDE 3.5.10, и снабженных графическим инсталлятором и набором дополнительных GUI утилит для настройки системы. Дистрибутив доступен для загрузки в LiveDVD сборках, размером 1.9 Гб, для архитектур i386 и amd64.
Некоторые из включенных в комплект программ: Java SE 6 update 7, Amarok 1.4.10, K3B 1.0.5, KTorrent 3.2.3, Firefox 3.5.2, Thunderbird 2.0.0.23, Pidgin 2.6.1, VideoLAN client (VLC) 1.0.1, digiKam 0.9.6, OpenOffice.org 3.1.1.
К сожалению, это последний релиз, подготовленный при участии Петера Гофера (Peter Hofer), основателя и единственного активного разработчика DesktopBSD, который объявил об уходе из проекта. Отныне будущее DesktopBSD зависит от того найдутся или нет энтузиасты, готовые продолжить развитие системы, например, заняться переводом дистрибутива на кодовую базу FreeBSD 8.0 и десктоп окружение KDE4. К сожалению несколько месяцев поиска таких энтузиастов не увенчались успехом.
http://www.opennet.r...shtml?num=23328 (http://www.opennet.ru/opennews/art.shtml?num=23328)
[size="3"]ZFS во FreeBSD готова к промышленной эксплуатации[/size]
Pawel Jakub Dawidek объявил о готовности ZFS во FreeBSD к промышленной эксплуатации.
Павел в последние пару недель внёс множество связанных с ZFS исправлений во FreeBSD CURRENT, которые уже включены в кодовую базу будущего релиза FreeBSD 8.0. И по его мнению реализация ZFS во FreeBSD уже готова к промышленной эксплуатации (но это не означает, что она должна работать "из коробки" без каких-либо настроек).
http://www.opennet.r...shtml?num=23444 (http://www.opennet.ru/opennews/art.shtml?num=23444)
[size="3"]FreeBSD: представлена шифрованная ФС и исправлено три серьезные уязвимости[/size]
Обнаруженная Пржемыславом Фрашунеком (Przemyslaw Frasunek) в конце августа уязвимость, позволяющая локальному непривилегированному пользователю FreeBSD получить root-привилегий, получила свое подтверждение. Более того, пока разработчики FreeBSD готовили исправления, Пржемыслав нашел еще одну подобную уязвимость в другой подсистеме. В итоге, сегодня опубликованы три уведомления:
В ветке FreeBSD 6.x найдена уязвимость, позволяющая получить root-привилегии при наличии локального непривилегированного доступа к системе. Уязвимость вызвана проблемой (эффект гонки, "race condition") в коде закрытия pipe и связанна с возможностью обращения к уже освобожденной памяти на многопроцессорных системах в системном вызове kevent.
Во всех поддерживаемых версиях FreeBSD 6.x и 7.x найдена уязвимость, которая может привести к разыменованию NULL-указателя из-за "race condition" (изменение указателя, после его проверки на NULL, но до передачи управления) в момент взаимодействия между подсистемами devfs и VFS. В итоге непривилегированный локальный пользователь может добиться выполнения кода с повышенными привилегиями;
Третье уведомление о проблеме безопасности описывает возможность отражения кода злоумышленника на нулевой адрес (мапинг нулевого адреса на пространство пользователя), что позволяет успешно эксплуатировать предыдущие две уязвимости, позволяющие передать управление по NULL-указателю. Для управления мапингом в нулевой адрес добавлена sysctl переменная "security.bsd.map_at_zero".
Кроме того, можно отметить анонс, разработанной Глебом Карцевым (Gleb Kurtsou) в рамках программы Google Summer of Code шифрованной файловой системы pefs, обладающей следующими возможностями:
Работа на уровне ядра, без использования FUSE;
Случайный для каждого файла вектор инициализации шифрования (tweak-значение);
Запись метаданных только в зашифрованном имени файла, не меняя содержимого файла;
Сохранение прежнего размера файла после шифрования;
Возможность использования произвольного числа ключей;
Поддержка смешивания зашифрованных разными ключами файлов в одной директории;
Прозрачный режим выполнения операций (без шифрования, только для чтения, упрощенный доступ к снапшотам ФС);
Возможность смены ключа для зашифрованного файла;
Поддержка алгоритмов шифрования: AES и Camellia в CTR-режиме, Salsa20.
В настоящее время система pefs используется на рабочей машине для шифрования почтовых ящиков и протестирована при работе поверх файловых систем ZFS, UFS и tmpfs. Инструкцию по установке pefs можно найти здесь. Также доступны результаты измерения производительности, при использовании алгоритмов шифрования salsa20 и aes128 по сравнению с производительностью доступа к незашифрованным данным на ZFS разделе. Разница примерно в два раза, но это в порядке вещей - в Linux система eCryptfs демонстрирует аналогичное замедление.
http://www.opennet.r...shtml?num=23712 (http://www.opennet.ru/opennews/art.shtml?num=23712)
[size="3"]Отчет о состоянии FreeBSD за период с апреля по сентябрь 2009 г.[/size]
Представлен отчет о развитии проекта FreeBSD за второй и третий кварталы 2009 года.
Основные события:
В рамках Google Summer of Code для FreeBSD студентами было выполнено 18 проектов, из которых можно отметить:
Создание распространяемой под лицензией BSD библиотеки iconv, основанной на наработках из проекта NetBSD;
Замена стандартных GNU утилит для обработки текстовых данных на аналоги, распространяемые под лицензией BSD. BSD-вариант утилиты grep доведен до рабочего состояния, но еще требуется проведение оптимизации производительности и реализации недостающий функций в библиотеке для обработки регулярных выражений. С нуля переписана утилита sort. Утилиты bc/dc портированы из OpenBSD;
Ведется работа по улучшению поддержки файловой системы Ext2fs и переписыванию частей кода, распространяемых под лицензией GPL. Из планов можно отметить оптимизацию Ext2 для многопроцессорных систем и реализацию возможностей Ext4;
Разработка библиотеки libnetstat с реализацией API для выполнения функций сетевого мониторинга, оперирующих статистикой сокетов, сетевых интерфейсов, mbuf, bpf, данными о маршрутизации и т.п. Для наглядной оценки трафика подготовлена top-подобная утилита nettop;
Создана шифрованная файловая система pefs, подробности можно почерпнуть из опубликованного на прошлой неделе анонса.
Проекты:
В рамках проекта BSD# ведется портирование Mono с реализацией технологии .NET. В настоящее время Mono 2.2 помещен в дерево портов (lang/mono). Для организации хостинга ASP.NET приложений подготовлены порты www/xsp и www/mod_mono, язык CLI можно установить из порта lang/boo, Visual Basic .NET Framework для Mono размещен как lang/mono-basic, а среда разработки MonoDevelop представлена как devel/monodevelop;
Совместно с разработчиками LLVM продолжается адаптация компилятора clang для сборки базовой системы FreeBSD. Разработка ведется в рамках специально выделенной ветки ClangBSD. В настоящий момент успешно собираются и запускаются ядра FreeBSD для архитектур i386 и amd64, а также 99% всех исходных текстов базовой системы. В будущем планируется использовать в качестве системного компилятора Clang, вместо GCC;
Ведется работа по созданию фреймвора для устройств с мультиплексированием с разделением времени (TDM - Time Division Multiplexing). В настоящий момент обеспечена поддержка голосовых карт на базе Marvell RD-88F6281, Marvell Kirkwood, Discovery SoC, создан SLIC драйвер для Si3215 и DAA драйвер для Si3050. В будущем ожидается интеграция созданных драйверов с пакетом Zaptel/DAHDI;
Под FreeBSD портирована технология центральной диспетчеризации (GCD - Grand Central Dispatch), исходные тексты которой были открыты компанией Apple в сентябре. GCD позволяет без модификации приложения адаптировать его для многопоточного выполнения на многоядерных системах. В будущем планируется рассмотреть вопрос перевода на libdispatch некоторых стандартных приложений из состава FreeBSD. Сейчас библиотека libdispatch доступна в дереве прртов, но начиная с FreeBSD 8.1-RELEASE будет интегрирована в базовую систему;
Подготовлена библиотека libprocstat с API для просмотра детальной информации о процессах, включая данные о используемых файловых дескрипторах, нитях, мапинге памяти и т.п. В дальнейшем планируется перевести утилиты подобные lsof, fstat и fuser на работу поверх данной библиотеки;
Ведется работа над новым отладчиком, распространяемым в рамках лицензии BSD и поддерживающим протокол удаленной отладки GDB. В качестве языка программирования для разработки отладчика используется язык D;
В дополнение к поддержке POSIX.1e ACL для файловых систем UFS и ZFS в дерево исходных текстов FreeBSD включен код с поддержкой NFSv4 ACL. Изменения затронули утилиты setfacl(1)/getfacl, libc API и ядро. Из нерешенных проблем остается поддержка NFSv4 ACL в BSD tar и решение некоторых проблем с UFS;
Реализован новый консольный драйвер newcons, с поддержкой многобайтовых кодировок в консоли через ремапинг Unicode символов в представление стандартных VGA шрифтов.
В дерево портов (emulators/virtualbo) добавлена система виртуализации VirtualBox, обеспечивающая возможность использования FreeBSD в качестве хост-системы для запуска гостевых ОС. В настоящий момент реализована поддержка механизма аппаратной виртуализации VT-x, поддержка сетевого бриджинга, ACPI, доступа к DVD/CD, поддержка SMP и т.д.
Сетевая инфраструктура
Ведется работа по усовершенствованию TCP/IP стека FreeBSD. В частности, во FreeBSD 8.0 будет добавлена реализация поддержки RFC 3465 (Appropriate Byte Counting). Продолжается работа по интеграции SIFTR утилиты для анализа трафика и улучшению работы кода пересборки TCP-пакетов.
Возможность подключения через плагины различных алгоритмов для контроля перегрузки (Congestion Control) в TCP. Реализован модуль с поддержкой алгоритма CUBIC в дополнение к ранее созданным NewReno и H-TCP. В ближайшее время код планируют добавить в FreeBSD-CURRENT и бэкпортировать в 8.1-RELEASE;
Работа по интеграции виртуального сетевого стека (vimage). Введение виртуального сетевого стека позволит значительно расширить сетевую функциональность подсистемы jail. Так, например, появится возможность иметь для каждого jail индивидуальные настройки фаервола, маршрутизации, IPSec и обеспечить возможность их автономного администрирования. Экспериментальный прототип vimage будет включен в релиз 8.0 и достигнет готового для промышленного использования состояния к релизу 8.2;
Ядро
Поддержка файловой системы ZFS во FreeBSD объявлена готовой к промышленной эксплуатации. Ведется работа по портированию ZFS версии v19;
Ведется работа по интеграции поддержки hwpmc (Performance Counter, позволяет задействовать для выявления узких мест, отладки и профилирования специальных "PERFMON" регистров CPU) для архитектуры MIPS;
Значительный прогресс в развитии FreeBSD/sparc64, добавлена поддержка нового оборудования, исправлены ошибки;
Система портов.
Число потов достигло 20700. Бинарные пакеты в настоящее время собираются для архитектур amd64-6, amd64-7, amd64-8, i386-6, i386-7, i386-8, sparc64-7 и sparc64-8.
В рамках проекта FreeBSD Gecko создан репозиторий со сборками программ на базе технологий Mozilla. Ведется работа по добавлению в порты Firefox 3.6 (Alpha 2), Thunderbird 3.0 (Beta 4), libxul 1.9.1.3 и Seamonkey 2.0 (Beta 2). Скоро будут удалены устаревшие порты mozilla, xulrunner и firefox2;
Ищется финансирование для продолжения работы над утилитой для управления портами portmaster;
В порты FreeBSD добавлена последняя версия (3.5.0) системы для выявления ошибок с распределением памяти Valgrind.
http://www.opennet.r...shtml?num=23809 (http://www.opennet.ru/opennews/art.shtml?num=23809)
[size="3"]Организация FreeBSD Foundation объявила о финансировании проектов HAST и FDT[/size]
Организация FreeBSD Foundation приняла решение выделить денежные средства на разработку двух связанных с FreeBSD проектов, которые планируется завершить в феврале 2010 года:
Создание новой системы репликации устройств хранения данных (HAST), которая позволит использовать FreeBSD для создания высоконадежных конфигураций, в которых данные синхронизированы по всем узлам кластера. Кроме FreeBSD Foundation, частично финансирование создания данной системы взяли на себя компании OMCnet Internet Service и TransIP BV. Работу выполнит Pawel Jakub Dawidek, автор порта ZFS и GEOM-классов eli, mirror, gate, label, journal, hsec.
С технической стороны HAST будет реализован в виде GEOM-класса, обеспечивающего синхронную репликацию блочных устройств поверх TCP/TP сетей, независимо от типа накопителя и файловой системы. HASH предусматривает возможность быстрого восстановления после сбоя, причем, при выходе из строя первичного master-узла, его функции могут быть делегированы slave-узлу. После проверки и монтирования UFS раздела или импорта ZFS пула на поврежденном узле, система автоматически синхронизирует внесенные за время восстановления изменения и продолжит работу без потери данных.
Добавление поддержки технологии FDT (Flattened Device Tree), позволяющей описать аппаратные ресурсы компьютерной системы, с учетом всех связей, платформо-независимым и переносимым способом. Технология FDT прежде всего окажется полезной для встраиваемых систем, аппаратные ресурсы которых не поддерживают самоидентификацию и не могут быть определены путем проверок. FDT базируется на реализации дерева устройств в стандарте Open Firmware IEEE 1275 и эталонной спецификации ePAPR.
http://www.opennet.r...shtml?num=23943 (http://www.opennet.ru/opennews/art.shtml?num=23943)
[size="3"]Умер John Birrell, один из коммитеров проекта FreeBSD[/size]
В результате инсульта скончался Джон Биррел (John Birrell), известный разработчик проекта FreeBSD, более 12 лет участвующий в развитии проекта. Среди разработок Джона можно отметить портирование технологии динамической трассировки DTrace, разработку библиотеки libdwarf, портирование FreeBSD на архитектуры DEC Alpha и Sun UltraSPARC-T1 (Niagara), создание многопоточной (pthread) библиотеки libc_r.
Одна из последних разработок Джона, которая к сожалению осталась незавершенной, - система сборки jbuild, над которой он работал в компании Juniper Networks и которая должна была заменить в будущем стандартные механизмы сборки FreeBSD. По сути jbuild представляет собой модифицированный вариант утилиты make, в который добавлены расширенные средства для контроля зависимостей, работающие через слежение за всеми операциями записи и чтения данных, благодаря интеграцией с DTrace или специальным модулем ядра filemon. Разработка позволяет значительно сократить число операций при выполнении действий подобных "make universe" и "make buildworld".
Кроме FreeBSD Джон Биррел принимал участие в разработке таких систем, как SysVR2/3, Solaris, AIX, HP-UX, OSF/1, SCO, VxWorks, LynxOS и Microware's OS9, был вовлечен в открытые проекты NetBSD и OpenBSD.
http://www.opennet.r...shtml?num=24406 (http://www.opennet.ru/opennews/art.shtml?num=24406)
[size="3"]Для файловой системы FreeBSD UFS добавлена поддержка журналирования[/size]
Джефри Робсон (Jeff Roberson), автор планировщика ULE и один из ключевых разработчиков FreeBSD, произвел улучшения в работе механизма Soft Updates файловой системы UFS. В частности, был добавлен механизм журналирования метаданных, изменяемых при работе Soft Updates. Данное нововведение позволит отказаться от необходимости запуска fsck после "грязного" размонтирования файловой системы. Новая система журналирования позволяет достичь очень высокой скорости восстановления состояния файловой системы при очень малом объеме журнала.
Данная работа была выполнена по заказу компаний iXsystems, Yahoo! и Juniper networks. В ближайшее время код будет доступен пользователям ветки FreeBSD 9.0-CURRENT. Ранее журналирование для FreeBSD активировалось при помощи GEOM-класса gjournal и было доступно только на уровне GEOM провайдеров.
http://www.opennet.r...shtml?num=24613 (http://www.opennet.ru/opennews/art.shtml?num=24613)
[size="3"]Релиз Frenzy 1.2, портативного инструмента системного администратора[/size]
Спустя год после выхода прошлого релиза, несмотря на объявление о прекращении развития проекта, вышел Live-дистрибутив для системных администраторов Frenzy 1.2, переведенный на кодовую базу FreeBSD 8.0. Загрузившись с Frenzy администратор получает полностью работоспособную систему с набором программного обеспечения для настройки, анализа работы сети, восстановления системы после краха и тестирования аппаратного обеспечения.
Сергей Можайский, автор проекта, пояснил, что появление Frenzy 1.2 не означает возвращение к продолжению работы над проектом, это всего лишь экспериментальная сборка Frenzy LiveCD на базе FreeBSD 8, подготовленная для личных нужд. Из образа убрана документация и инсталлятор. Дистрибутив вышел в сокращенном варианте - размер ISO-образа 45 Мб, в состав включено 67 пакетов, что примерно в 10 раз меньше, чем было в прошлом выпуске.
Кроме перехода на FreeBSD 8 в сборке вместо ранее используемого uzip-сжатия применено сжатие с использованием lzma: iso-образ файловой системы теперь упакован в lzma-архив, а при загрузке распаковывается целиком в память (в отличие от uzip, работа с lzma-сжатой файловой системой напрямую пока невозможна). Как следствие, для нормальной работы дистрибутива требуется минимум 256 Мб ОЗУ.
http://www.opennet.r...shtml?num=24836 (http://www.opennet.ru/opennews/art.shtml?num=24836)
[size="3"]Комплект исправлений для FreeBSD 8.0. Устранены уязвимости в ZFS, ntpd и BIND [/size]
Разработчики FreeBSD выпустили errata-уведомление об исправлении ряда ошибок во FreeBSD 8.0, связанных со стабильностью и производительностью:
* Медленный реконнект NFS клиента при использовании TCP;
* Крах ядра при попытке изменения файла в ZFS-снапшоте, находящимся в режиме только для чтения. Крах также наблюдается при использовании на ZFS разделе средств мандатного контроля доступа (при установке меток через mac_biba или mac_mls);
* Возможность краха при перенаправлении IPv4 Multicast трафика. Потеря IGMP сообщений при их передаче от фильтра в ядре процессу маршрутизации в пользовательском окружении;
* Крах при получении некорректного SCTP сообщения, инициирующего завершение установленного соединения;
* Крах при передаче в системный вызов rename аргументов файлового пути, заканчивающихся на '/.'.
Кроме вышеприведенных ошибок опубликована информация об исправлении трех уязвимостей в подсистемах, входящих в базовую поставку FreeBSD:
* При восстановлении целостного состояния ZFS после краха системы, созданные, но не сброшенные на диск, файлы восстанавливаются из ZIL лога (ZFS Intent Log) с некорректными правами доступа (0777), допускающими изменения любым пользователем. Проблема исправлена в ветках RELENG_8_0, RELENG_7_2 и RELENG_7_1.
* DoS уязвимость во входящем в базовую поставку NTP-сервере. Атакующий может отправить специально оформленный фиктивный UDP пакет от имени другого NTP сервера, после чего эти два сервера начнут бесконечную "игру в пинг-понг", нагружая полностью сеть и CPU, а также переполняя диск интенсивно растущими логами. Проблема исправлена во всех поддерживаемых ветках FreeBSD (6.x, 7.x, 8.x).
* В DNS сервере Bind исправлена проблема безопасности, дающая возможность злоумышленнику поместить некорректные данные в кэш из-за отсутствия повторной DNSSEC проверки для помещаемых в кэш данных, ранее запрошенных с флагом "Checking Disabled", подразумевающим отсутствие проверки только для текущего запроса. Для успешного проведения атаки DNS сервер должен поддерживать рекурсивное выполнения запросов и выполнять DNSSEC проверку для клиентов (отключение DNSSEC решает проблему).
http://www.opennet.r...shtml?num=24925 (http://www.opennet.ru/opennews/art.shtml?num=24925)
[size="3"]Релиз Frenzy 1.2-reincarnation ознаменовал возрождение проекта [/size]
На базе выпущенной в конце декабря минималистичной консольной сборки Live-дистрибутива для системных администраторов Frenzy 1.2, сформирована первая community-сборка Frenzy 1.2-reincarnation, подготовленная энтузиастами без участия ушедшего от дел автора оригинального проекта. Релиз подготовлен на базе FreeBSD 8.0-RELEASE (i386) и пакетов (tbz) packages-8-stable.
Главным новшеством релиза является подготовленный комплект разработки (SDK), позволяющий собрать свою custom-сборку с включением тех или иных пакетов программ и нужными параметрами конфигурационных файлов.
Другие особенности:
* Возврат к технологии сжатия: geom_uzip (вместо LZMA в 1.2-lite) - как более проверенной и стабильной технологии.
* Полнофункциональное стартовое меню (rc.bootspash) от Frenzy 1.1;
* Большой список программного обеспечения - размер сборки превышает 300 Мб;
* Небольшие косметические улучшения (tcsh, idesk, hal-policy).
Новую версию можно загрузить с сайта frenzy.bspu.ru или c официального зеркала ftp.frenzy.org.ua.
http://www.opennet.r...shtml?num=24971 (http://www.opennet.ru/opennews/art.shtml?num=24971)
[size="3"]Отчет о состоянии развития FreeBSD за четвертый квартал 2009 г.[/size]
Представлен отчет о развитии проекта FreeBSD с октября по декабрь 2009 года. Основные достижения:
* Системы хранения
o Подготовлен тестовый выпуск системы репликации устройств хранения данных (HAST), которая позволяет использовать FreeBSD для создания высоконадежных конфигураций, в которых данные синхронизированы по всем узлам кластера. HAST реализован в виде GEOM-класса, обеспечивающего синхронную репликацию блочных устройств поверх TCP/TP сетей, независимо от типа накопителя и файловой системы. HAST предусматривает возможность быстрого восстановления после сбоя, причем, при выходе из строя первичного master-узла, его функции могут быть делегированы slave-узлу. После проверки и монтирования UFS раздела или импорта ZFS пула на поврежденном узле, система автоматически синхронизирует внесенные за время восстановления изменения и продолжит работу без потери данных. Разработку планируется довести до финального состояния до 31 января 2010 года.
o В 9.0-CURRENT принят код с поддержкой NFSv4 ACL для файловых систем UFS и ZFS. Изменения затронули утилиты setfacl(1)/getfacl, libc API и ядро. Из нерешенных проблем остается поддержка NFSv4 ACL в BSD tar. Поддержка NFSv4 ACL ожидается и в FreeBSD 8.1-RELEASE;
o В конце января планируется добавить в ветку 9.0-CURRENT поддержку механизма журналирования Soft Updates (SU+J) для файловой системы UFS. Данное нововведение позволит отказаться от необходимости запуска fsck после "грязного" размонтирования файловой системы. Новая система журналирования позволяет достичь очень высокой скорости восстановления состояния файловой системы при очень малом объеме журнала.
o Продолжена работа над улучшением, интегрированной во FreeBSD 8.0-RELEASE CAM-реализации подсистемы ATA, позволяющей использовать для взаимодействия с PATA/SATA устройствами более совершенную систему CAM, ранее задействованную для обеспечения работы SCSI устройств. Новая инфраструктура поддерживает такие возможности, как NCQ (Native Command Queuing), MSI (Message Signaled Interrupts) и мультипликатор портов (Port Multiplier). Управление производится через стандартную утилиту camcontrol. Из открытых задач, остается доработка кода восстановления состояния после ошибок передачи данных и таймаутов; улучшение поддержки горячего подключения устройств (hot-plug); написание драйвера для контроллеров Marvell SATA; создание специфичного для SAS транспорта и драйверов для SAS HBA контроллеров;
* Сетевая инфраструктура
o Доведена до рабочего состояния поддержка протокола IPcomp (IP Payload Compression Protocol), введению в промышленную эксплуатацию которой мешал ряд давно наблюдаемых ошибок. Патчи с исправлениями добавлены во все поддерживаемые стабильные ветки FreeBSD, включая 6-STABLE;
o Ведется работа по синхронизации кода пакетного фильтра PF, интегрированного во FreeBSD, с кодовой базой OpenBSD 4.5. Из новшеств отмечена поддержка divert(4), которая позволит использовать совместно с pf утилиты подобные snort_inline. Осталось обеспечить поддержку виртуального сетевого стека VIMAGE в pflow(4)/pflog(4)/pfsync(4) и провести тестирование на предмет обнаружения регрессивных изменений;
* Система
o Продолжается адаптация компилятора clang из проекта LLVM для сборки базовой системы FreeBSD. Разработка ведется в рамках специально выделенной ветки ClangBSD. В будущем планируется использовать в качестве системного компилятора Clang, вместо GCC. В настоящий момент успешно собираются и запускаются ядра FreeBSD для архитектур i386 и amd64, хорошие результаты достигнуты в плане поддержки архитектуры PowerPC. Завершено начальное тестирование сборки системы при помощи LLVM/clang для архитектур ARM и MIPS, начата работа над реализацией поддержки архитектуры sparc64.
При сборке базовой системы основные проблемы связаны со сборкой C++ приложений (до сих пор не удалось собрать все C++ библиотеки, включая libstdc++), тем не менее успешно собираются groff, gperf и devd. Из планов отмечена поддержка сборки для архитектур ARM/MIPS/sparc64, начало тестирования сборки портов и обсуждение процесса интеграции LLVM/clang во FreeBSD;
o Реализация поддержки технологии FDT (Flattened Device Tree), позволяющей описать аппаратные ресурсы компьютерной системы, с учетом всех связей, платформо-независимым и переносимым способом. Технология FDT прежде всего окажется полезной для встраиваемых систем (ARM, AVR32, MIPS, PowerPC), аппаратные ресурсы которых не поддерживают самоидентификацию и не могут быть определены путем проверок. FDT базируется на реализации дерева устройств в стандарте Open Firmware IEEE 1275 и эталонной спецификации ePAPR. Из нерешенных вопросов отмечается завершение реализации поддержки архитектур PowerPC (драйвер PCI) и ARM;
o Расширен лимит на максимально возможное число групп для одного процесса (NGROUPS_MAX) c 15 до 1023 в FreeBSD 8.0-RELEASE. Так как в Linux ядре 2.6.x этот лимит выставлен в еще большее значение, в 9.0-CURRENT (в ближайшее время будет перенесено в 8-STABLE) для регулирования значением лимита добавлена sysctl-переменная kern.ngroups;
o Продолжена работа по интеграции библиотеки iconv, распространяемой под лицензией BSD и основанной на наработках из проекта NetBSD. Удалось добиться неплохой совместимость с GNU iconv, осталось провести работу по оптимизации производительности и доделать код, связанный с транслитирацией. Патчи для публичного тестирования будут представлены в феврале;
o Прогресс в процессе замены стандартных GNU утилит для обработки текстовых данных на аналоги, распространяемые под лицензией BSD:
+ BSD-варианты утилит bc/dc готовы к коммиту в ветку 9.0-CURRENT, осталось провести небольшое тестирование на предмет наличия нежелательных регрессивных изменений.
+ Работа над BSD grep завершена, но пока не может быть интегрирована, из-за нерешенных проблем в библиотеке для работы с регулярными выражениями. Коммит переработанной версии grep будет совершен как только в библиотеке для обработки регулярных выражений будет проведена оптимизация производительности и реализованы недостающие функции.
+ Утилита BSD sort почти готова, не хватает реализации некоторых вторичных возможностей и требуется оптимизация производительности.
o Доведена до рабочего состояния реализация POSIX utmpx для FreeBSD, которая заменит собой базу utmp. К сожалению, многие программы работают с utmp напрямую, поэтому предстоит большая работа по выявлению и правке работающих с utmp программ из коллекции портов.
* Поддержка оборудования
o Для работы с web-камерами во FreeBSD 8/9 представлен демон webcamd, поддерживающий сотни моделей web-камер. webcamd создан на основе портирования Video4Linux-драйверов, для работы в виде работающего на пользовательском уровне процесса. Среди зависимостей webcamd - libc, pthreads, libusb и модуль ядра VIDEO4BSD;
o В 9.0-CURRENT и 8-STABLE добавлен обновленный драйвер u3g, в котором расширена поддержка беспроводных 3G модемов с интерфейсом USB;
o Ведется работа по завершению разработки нового драйвера для беспроводных карт Broadcom - bwn, который заменит собой драйвер bwi. Из возможностей, которые еще не доведены до конца, отмечается поддержка LP/N PHY и режимов MESH/IBSS/HOSTAP. Причины замены:
+ В bwn используется более новая, четвертая, версия прошивки, вместо уже устаревшей третьей версии, в которой нет поддержки N-PHY и не исправлены некоторые ошибки;
+ Поддержка PIO-режима, что важно из-за того, что не для всего оборудования возможно использование DMA-режима;
+ Поддержка 64-разрядных DMA операций;
+ Старый драйвер bwi разделен на два драйвера: siba и bwn, первый чтобы не дублировать лишнюю функциональность созлан для карт на основе Silicon Sonics Backplane, поддерживающий SIBA аппаратно.
o В официальном SVN репозитории проекта Asterisk создан модуль для поддержки DAHDI (Zaptel) на платформе FreeBSD. В настоящий момент портированы драйверы: базовый DAHDI-драйвер, драйверы для подавления эхо, dahdi_dynamic и dahdi_dynamic_loc. Портированы и протестированы аппаратные драйверы: wct4xxp (Digium TExxx), wcb4xxp (Digium B410, Junghanns.NET HFC, OpenVox Bxxx, BeroNet BNxxx);
o Ведется работа по созданию фреймворка для устройств с мультиплексированием с разделением времени (TDM - Time Division Multiplexing). За рассматриваемые в отчете месяцы подготовлен полнофункциональный управляющий TDM драйвер для голосовых карт на базе Marvell Kirkwood и Discovery SoC, доработан voiceband драйвер, доведены до рабочего состояния драйверы кодеков для Si3050 и Si3215, подготовлен комплект демонстрационных приложений, создан начальный прототип драйвера для интеграции с инфраструктурой Zaptel/DAHDI;
o Обновлена поддержка чернового варианта стандарта 802.11s (четвертой версии), регламентирующего работу Mesh-сетей (каждая клиентская точка сети связана через соседние точки). Нереализованной остается поддержка алгоритмов обеспечения безопасности и согласованного канального доступа.
* Аппаратные архитектуры
o Продолжена работа по портированию FreeBSD на архитектуру ia64. В частности, в ветки 9.0-CURRENT и 8-STABLE добавлено множество коммитов, связанных с повышением стабильности, организован процесс сборки пакетов. Для тестирования и сборки пакетов задействованы три ia64-сервера, еще одна машина в процессе конфигурации. Планы: решить проблемы с зависанием при попытке одновременного запуска нескольких процессов сборки пакетов, выявить проблемы с работой порта GCC для архитектуры ia64.
o Поддержка платформы MIPS (ветка base/projects/mips) интегрирована в 9.0-CURRENT, рассматривается возможность в будущем добавление поддержки MIPS в ветку 8-STABLE, после окончательной стабилизации кода. Тестирование проведено как на "big endian" системе Ubiquiti RouterStation, так и на "little endian" gxemul. В разной степени готовности поддержка Atheros AR71xx, SiByte BCM1250 SoC, Octeon SoC (CN3xxx и CN5xxx), RMI XLR SoC;
o Прогресс в развитии FreeBSD/sparc64, решены проблемы с работой шины PCI на серверах Sun Fire V215/V245. Последние наработки добавлены в 9.0-CURRENT и, если повезет, войдут в состав 7.3-RELEASE;
o Во FreeBSD 9.0-CURRENT принят код с поддержкой технологии hwpmc (Performance Counter, позволяет задействовать для выявления узких мест, отладки и профилирования специальных "PERFMON" регистров CPU) для архитектуры Intel XScale;
o В драйвер run добавлена поддержка беспроводных карт с USB интерфейсом Ralink RT2700U/2800U/3000U
* Приложения и система портов
o Под FreeBSD портирован web-браузер Google Chromium, в качестве основы была использована текущая тестовая версия браузера для платформы Linux. До размещения официального порта chromium-devel остается решить несколько проблем, связанных со случайными зависаниями и некорректной работой Javascript-движка v8 на архитектуре i386. Приглашаются желающие принять участие в тестировании;
o Продолжены попытки разбора накопившихся сообщений об ошибках (PR). Группа "Bugbusting Team", в которую в настоящее время входит 4 человека, пытается разобрать накопившиеся сообщения, классифицировать их через привязку тегов и передать требующие внимания PR-ы коммиттерам и мантейнерам портов. Общее число PR в процессе подготовки 8.0-RELEASE превысило отметку в 6200 записей, но затем стабилизировалось на отметке в 6100 незакрытых PR;
o Компания Nvidia выпустила 64-сборку проприетарных драйверов 195.22 для FreeBSD. В драйвере поддерживаются GeForce 6xxx и более новые GPU. Ранее для FreeBSD была доступна только 32-разрядная сборка драйверов Nvidia, реализации 64-разрядной сборки мешало отсутствие некоторых механизмов работы с памятью в ядре FreeBSD, но в версии FreeBSD 8.0 все пожелания разработчиков Nvidia были учтены. Для пользователей ветки FreeBSD 7.x возможность использования 64-битных драйверов Nvidia появится в версии FreeBSD 7.3.
o Число портов достигло 21000, из них около 4700 (22%!) не имеют мантейнера. Бинарные пакеты в настоящее время собираются для архитектур amd64-6, amd64-7, amd64-8, i386-6, i386-7, i386-8, i386-9, ia64-8, sparc64-7, sparc64-8, i386-9, ia64-8. Число связанных с портами PR-ов удалось довести до отметки 950 (было более тысячи). Ведется обсуждение возможности прекращения регулярной сборки пакеджей для FreeBSD 6.X;
o В эмуляторе Linux обеспечена поддержка работы базирующихся на интерфейсе Video4Linux приложений, через трансляцию V4L вызовов в стандартные модули FreeBSD. Разработка протестирована во FreeBSD-8.0/amd64 и FreeBSD-7.2/i386 в таких приложениях, как skype и adobe flash;
o В дерево портов интегрирована новая версия системы виртуализации VirtualBox 3.1.2. Порт переименован в virtualbox-ose, модули ядра вынесены в порт virtualbox-ose-kmod, а дополнения для акселерации работы гостевого режима в порт virtualbox-ose-additions. Реализована корректная поддержка PulseAudio, устранена зависимость от Procfs, значительно улучшена поддержка сетевой подсистемы.
http://www.opennet.r...shtml?num=25085 (http://www.opennet.ru/opennews/art.shtml?num=25085)
[size="3"]В состав FreeBSD принят код HAST и представлен ряд улучшений протокола TCP[/size]
Pawel Jakub Dawidek, известный созданием порта ZFS и GEOM-классов eli, mirror, gate, label, journal, hsec, довел до финальной стадии и добавил в дерево исходных текстов FreeBSD HEAD реализацию системы репликации устройств хранения данных (HAST), которая позволяет использовать FreeBSD для создания высоконадежных конфигураций, в которых данные синхронизированы по всем узлам кластера.
HAST реализован в виде GEOM-класса, обеспечивающего синхронную репликацию блочных устройств поверх TCP/IP сетей, независимо от типа накопителя и файловой системы. HAST предусматривает возможность быстрого восстановления после сбоя, причем, при выходе из строя первичного master-узла, его функции могут быть делегированы slave-узлу. После проверки и монтирования UFS раздела или импорта ZFS пула на поврежденном узле, система автоматически синхронизирует внесенные за время восстановления изменения и продолжит работу без потери данных.
Кроме того, анонсирована публикация набора улучшений для сетевого стека FreeBSD, созданного в рамках исследовательского проекта NewTCP, финансируемого компанией Cisco и развиваемого в Центре расширенных интернет архитектур при Технологическом университете Swinburne.
В частности, представленна обновленная версия модульной системы, позволяющей подключать через плагины различные алгоритмы для контроля перегрузки (Congestion Control) в TCP. Добавлена поддержка алгоритмов Hamilton и Vegas для контроля перегрузки TCP (ранее были реализованы алгоритмы CUBIC, NewReno и H-TCP.). Создан фреймворк Khelp, представляющий интерфейс для создания модулей ядра на лету обеспечивающих выполнение определенных сервисных функций. Подготовлен ERTT (Enhanced Round Trip Time) Khelp модуль, позволяющий более точно измерять параметры TCP потока для использования в алгоритмах управления контроля перегрузки TCP.
http://www.opennet.r...shtml?num=25502 (http://www.opennet.ru/opennews/art.shtml?num=25502)
[size="3"]Доступен релиз десктоп-ориентированной ОС PC-BSD 8.0[/size]
Вышел релиз десктоп-ориентированной операционной системы PC-BSD 8.0, перешедшей на кодовую базу FreeBSD 8.0 и KDE 4.3.5. Из наиболее значительных улучшений, можно отметить интеграцию полностью нового инсталлятора, позволяющего устанавливать не только PC-BSD, но и классический FreeBSD. Система отныне поставляется в виде LiveDVD, позволяя оценить возможности PC-BSD без установки на жесткий диск. Инсталлятор поддерживает создание шифрованных разделов, установку с использованием файловой системы ZFS, создание программных зеркал при помощи gmirror и автоматического назначения меток топом средствами glabel.
В новой версии значительно улучшена работа менеджера по установке дополнительных программ: добавлена возможность установки через web и автоматической загрузки обновлений. Программы упакованы в собственный формат пакетов - PBI, суть которого в избавлении от зависимостей, путем помещения всех необходимых библиотек в каждый пакет. Поддерживается как установка пакетов через один клик на сайте pbidir.com, так установка стандартных FreeBSD портов.
В состав дистрибутива включены свежие версии проприетарных драйверов Nvidia (195.22, 173.14.20 и 96.43.13), для платформы AMD64 поставляется недавно выпущенный 64-разрядный 3D-драйвер Nvidia 195.22. В поставку включено специального приложение "Life-Preserver", позволяющее быстро организовать резервное копирование системы на удаленном rsync сервере (с ssh транспортом). Из включенных в комплект программ можно отметить: FireFox 3.5.7, Opera 10.10, Gimp 2.6.8, K3B 1.0.5, OpenOffice 3.1.1, Pidgin 2.6.4, VLC 1.0.4. Из новинок также можно отметить возможность установки 32-битных PBI на 64-битную ОС, даже такие PBI как Wine работают достаточно стабильно.
http://www.opennet.r...shtml?num=25533 (http://www.opennet.ru/opennews/art.shtml?num=25533)
[size="3"]FreeBSD: Три опасные уязвимости [/size]Во FreeBSD обнаружены три опасные уязвимости: - В коде NFS-клиента обнаружена уязвимость (http://security.freebsd.org/advisories/FreeBSD-SA-10:06.nfsclient.asc), позволяющая локальному злоумышленнику организовать выполнение кода в контексте ядра и получить привилегии суперпользователя. Для успешной эксплуатации уязвимости в системе должен быть активирован отключенный по умолчанию режим vfs.usermount, позволяющий обычным пользователям выполнять операции по монтированию разделов. Уязвимость вызвана ошибкой в коде проверки длины передаваемых при монтировании параметров. Проблеме подвержены все выпуски FreeBSD начиная с версии 7.2, в качестве временной меры достаточно запретить возможность монтирования непривилегированными пользователями (sysctl vfs.usermount=0). Разработчики отмечают, что даже после применения устраняющего уязвимость патча функции монтирования непривилегированными пользователями не могут быть отнесены к категории безопасных. Большинство реализаций файловых систем FreeBSD реализованы без оглядки на возможность злонамеренных действий (например, монтирование определенным образом поврежденной ФС). Несмотря на то, что подобные ошибки исправляются при обнаружении, полный аудит безопасности кода файловых систем не проводился.
- В реализации библиотеки для работы с одноразовыми паролями OPIE обнаружена (http://security.freebsd.org/advisories/FreeBSD-SA-10:05.opie.asc) возможность переполнения буфера, приводящая к записи дополнительного нулевого байта за конец стека. Ошибка позволяет удаленному злоумышленнику инициировать крах серверного процесса сервиса OPIE при включении в системе режима защиты от переполнения стека. Примечательно, что уязвимости подвержены все поддерживающие OPIE-аутентификацию системные сервисы, даже при отключении поддержки OPIE в системе. Например, можно удаленно вызвать крах ftpd. Не исключена, хотя и отнесена к маловероятным, возможность эксплуатации данной проблемы для организации атакующим выполнения своего кода на сервере. Проблеме подвержены все поддерживаемые выпуски FreeBSD (6.x, 7.x, 8.x). В качестве временной меры достаточно недопустить выполнение связанных с libopie.so серверных приложений.
- В утилите jail, через которую осуществляется запуск процесса в изолированном окружении, не производится по умолчанию смена текущей рабочей директории, что позволяет (http://security.freebsd.org/advisories/FreeBSD-SA-10:04.jail.asc) атакующему получить доступ к файлам вне изолированного окружения, если до момента запуска jail одним из родительских процессов был открыт файловый десктиптор, связанный с данной рабочей директорией. По умолчанию скрипт для инициализации Jail-окружений /etc/rc.d/jail не подвержен данной уязвимости, так как для запуска jail в нем используются опции "-l -U root" подразумевающие выполнение вызова chdir. Но если администратор вручную убрал данные флаги путём использования своего набора параметров jail_*flags в rc.conf, данный скрипт может быть использован для совершения атаки. Проблеме подвержены только выпуски FreeBSD 8.x. В качестве временной меры достаточно при вызове Jail указывать параметры "-l -U root".
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=26749)
[size="3"]FreeBSD 8.1: Beta test [/size]Представлена (http://lists.freebsd.org/pipermail/freebsd-stable/2010-May/057040.html) первая бета-версия FreeBSD 8.1. 11 июня ожидается (http://wiki.freebsd.org/Releng/8.1TODO) первый кандидат в релизы, 25 июня - второй кандидат в релизы, а 9 июля - релиз. Тестовая версия доступна (ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/8.1/) для архитектур amd64, i386, ia64, powerpc, pc98 и sparc64 в 5 установочных сборках: bootonly, CD, DVD, LiveFS и Memstick для USB Flash. Поддерживается и бинарное обновление с прошлых версии, для выполнения которого необходимо выполнить:
Загружаем обновления:
freebsd-update upgrade -r 8.1-BETA1
Устанавливаем обновления, попутно отвечая на вопросы,
касающиеся решения конфликтов при обновлении файлов конфигурации:
freebsd-update install
Перезагружаем систему:
shutdown -r now
Еще раз выполняем:
freebsd-update install
shutdown -r now
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=26778)
[size="3"]DesktopBSD: Объявление о продолжении разработки проекта [/size]На сайте десктоп-ориентированной операционной системы DesktopBSD (http://www.desktopbsd.net/) появилось объявление (http://www.desktopbsd.net/index.php?id=43&tx_ttnews%5Btt_news%5D=42&tx_ttnews%5BbackPid%5D=55&cHash=2420638ccb) о продолжении разработки проекта, развитие которого было остановлено осенью прошлого года после ухода (http://www.opennet.ru/opennews/art.shtml?num=23328) из проекта Петера Гофера (Peter Hofer), основателя и единственного активного разработчика DesktopBSD. Несколько дней назад к работе над выпуском DesktopBSD 2.0 подключилась небольшая команда из четырех немецких разработчиков, которые намерены проложить развивать дистрибутив в направлении, ранее намеченном создателем проекта. Последний выпуск DesktopBSD был построен на базе FreeBSD 7.2 и KDE 3.5.10, снабжен графическим инсталлятором и набором дополнительных GUI-утилит для настройки системы. Новая команда разработчиков планирует (http://twitter.com/DesktopBSD) довести до конца начатую несколько лет назад работу по переводу дистрибутива на KDE 4.4.2 и осуществить миграцию на FreeBSD 8.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=26786)
Цитата: Радость от 31 Мая 2010, 15:26[size="3"]DesktopBSD: Объявление о продолжении разработки проекта[/size]
можно глупый вопрос?
PC-BSD и DesktopBSD друг к другу какое-нибудь отношение имеют?
Цитата: Linofka от 31 Мая 2010, 17:37PC-BSD и DesktopBSD друг к другу какое-нибудь отношение имеют?
ЦитироватьВ двух словах - это очередная демо-версия FreeBSD, мало отличающаяся от PC-BSD как по идее, так и по ее воплощении. Основана она на FreeBSD 5.4 с приплюсованной средой KDE и минимальным набором приложений для последней (примерно в объеме kdebase). Главное ее отличие от PC-BSD в том, что хотя этот дистрибутив и являет собой такой же LiveCD, предназначен он в первую очередь для установки системы, а не для демонстрации ее возможностей.
(http://citkit.ru/articles/135/)citkit.ru (http://citkit.ru/articles/135/)
Цитата: Радость от 31 Мая 2010, 17:42
спасибочки за разъяснения.
видела только PC-BSD Fibonacci Edition. оформление очень красивое. )) больше, к сожалению, ничего сказать не могу.
[size="3"]FreeBSD: В /bin/sh появилась поддержка автодополнения для файлов [/size]Во FreeBSD HEAD интегрирован код (http://lists.freebsd.org/pipermail/svn-src-head/2010-June/017943.html), добавляющий к системному Shell-интерпретатору /bin/sh поддержку автодополнения имен набираемых файлов при нажатии клавиши табуляция. Для организации автодополнения задействованы стандартные функции libedit (http://sourceforge.net/projects/libedit/). Поддержка автодополнения основана на коде, портированном из NetBSD. Отсутствие автодополнения в /bin/sh как правило было тем фактором, который вынуждал пользователей FreeBSD менять текущий shell на tcsh или bash, что ограничивало область использования /bin/sh только системными функциями.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=26977)
[size="3"]FreeBSD 8.1 RC1 [/size]С опозданием на одну неделю относительно первоначального плана началось тестирование кандидата в релизы FreeBSD 8.1. С учетом отставания от графика второй кандидат в релизы можно ждать 2 июля, а релиз - 16 июля. Тестовая версия доступна для архитектур amd64, i386, ia64, powerpc, pc98 и sparc64 в 5 установочных сборках: bootonly, CD, DVD, LiveFS и Memstick для USB Flash (к сожалению, из-за ограничения на размер образа в 2Гб, DVD ограничен минимальным набором пакеджей). Поддерживается и бинарное обновление с прошлых версий, для выполнения которого необходимо выполнить:Загружаем обновления: freebsd-update upgrade -r 8.1-RC1
Устанавливаем обновления, попутно отвечая на вопросы,
касающиеся решения конфликтов при обновлении файлов конфигурации: freebsd-update install
Перезагружаем систему: shutdown -r now
Еще раз выполняем: freebsd-update install
shutdown -r now
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=27015)
[size="3"]BSD: PF путем Web [/size]Вышел (http://code.google.com/p/pfw2/) форк проекта PFW (http://www.allard.nu/pfw/), представляющий собой web-приложение для администрирования пакетного фильтра PF в BSD системах. Программа написана на языке PHP и распространяется в рамках лицензии BSD. Основные возможности: - Настройка фильтров
- Настройка портфорвардинга и NAT
- Настройка шейперов и очередей
- Возможность администрирования нескольких серверов из одного пользовательского интерфейса.
- Настройка сетевых интерфейсов
- Статистика и графики
Разработчики отмечают, что в программе еще присутствует много неисправленных ошибок и приглашают заинтересованных энтузиастов принять участие в тестировании.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=27061)
[size="3"]FreeBSD: Альтернативный инсталлятор [/size]В состав FreeBSD HEAD интегрирована (http://lists.freebsd.org/pipermail/svn-src-all/2010-June/025660.html) поддержка pc-sysinstall (http://svn.pcbsd.org/pcbsd/current/pc-sysinstall), альтернативной программы установки, разработанной в недрах проекта PC-BSD (http://www.pcbsd.org/). Главная особенность (http://www.bsdcan.org/2010/schedule/events/173.en.html) нового инсталлятора в разделении составляющих установщика на фронтэнд и бэкенд. Из возможностей отмечена поддержка ZFS, raidz, gmirror-зеркалирования, GPT/EFI, GELI-шифрования, gjournal, присутствует собственный менеджер для MBR слайсов/разделов, после установки формируется подробный лог, отражающий статус выполнения всех операций. В настоящий момент во FreeBSD добавлена реализация консольного (dialog/curses) режима установки, написанного на Shell и напоминающего классический sysinstall. Дополнительно подготовлен графический (на базе Qt) режим установки, который в настоящее время используется в проекте PC-BSD. Что касается фронтэнда, то он выполняет функцию генератора скрипта для выполнения итоговой установки, на вход принимается специально сформированный бэкендом файл конфигурации, что позволяет легко организовать выполнение ранее подготовленных сценариев для автоматизированной установки. На стороне бэкенда организована только работа пользовательского интерфейса.
Следует отметить, что pc-sysinstall не является первым альтернативным инсталлятором, из похожих проектов можно отметить Finstall (http://sourceforge.net/projects/finstall/) (на языке Python) и BSD Installer (http://www.bsdinstaller.org/) (бэкенд на языке Lua). Кроме того, в рамках проекта BSD Installer была предпринята попытка создания бэкенда в виде web-интерфейса, который дает возможность управлять процессом установки с другой машины. Возможно, что найдутся энтузиасты, способные повторить данный опыт для инсталлятора PC-BSD.
Из проблем классического установщика sysinstall, побудивших команду разработчиков PC-BSD к написанию собственной программы установки, отмечаются: отсутствие возможности автоматизации процесса установки и использования скриптов; запутанная архитектура; трудоемкость добавления новых функций (например, поддержки новых файловых систем); отсутствие лога с сохранением текстов ошибок; монолитный дизайн; нет возможности локализации процесса установки на другие языки.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=27131)
[size="3"]PC-BSD 8.1[/size]Вышел (http://www.pcbsd.org/content/view/163/) релиз десктоп-ориентированной операционной системы PC-BSD 8.1 (http://www.pcbsd.org/content/view/171/11/), основанной на кодовой базе FreeBSD 8.1 и KDE 4.4.5. Разработчики PC-BSD сработали оперативно и впервые за всю историю развития дистрибутива выпустили релиз PC-BSD 8.1 раньше официального релиза FreeBSD 8.1. В новой версии PC-BSD многочисленным исправлениям и изменениям подвергся инсталлятор: добавлена поддержка создания GPT-разделов, вместо fdisk проведена миграция на gpart, улучшена поддержка ZFS, в частности добавлена возможность конфигурирования ZFS mirror и raidz через GUI. Также проведена работа по исправлению ошибок в десктоп-утилитах, таких как средство для резервного копирования life-preserver, KDE-плазмоиды и пользовательские приложения системы семантических связей Nepomuk. В качестве минимальной аппаратной конфигурации, на которой может работать PC-BSD называется CPU Pentium II с 256 Мб ОЗУ, но для комфортной работы рекомендуется система уровня Pentium 4 с 512 Мб ОЗУ. Система поддерживает как установку на жесткий диск, так и работу в роли LiveDVD. В комплект поставки включен набор проприетарных драйверов Nvidia (256.35, 173.14.25, 96.43.16). Из поставляемых в составе дистрибутива пакетов отмечены: FireFox 3.6.4, K3B 1.0.5, OpenOffice 3.2.1, Opera 10.10, The Warden 1.0, Thunderbird 3.0.5.
Система PC-BSD снабжена графическим инсталлятором (http://www.opennet.ru/opennews/art.shtml?num=27131) и системой автоопределения установленного оборудования. Программы упакованы в собственный формат пакетов - PBI, суть которого в избавлении от зависимостей, путем помещения всех необходимых библиотек в каждый пакет. Поддерживается автоматическая загрузка обновлений, установка пакетов через один клик на сайте pbidir.com и установка стандартных FreeBSD-портов.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=27382)
[size="3"]FreeBSD: Квартальный отчет развития с апреля по июнь 2010 года [/size]Представлен отчет (http://www.freebsd.org/news/status/report-2010-04-2010-06.html) о развитии проекта FreeBSD с апреля по июнь 2010 года. Основные события: - Системы хранения и файловые системы
- В рамках проекта ExtFS (http://wiki.freebsd.org/SOC2010ZhengLiu) ведется работа над поддержкой монтирования файловой системы ext4 в режиме только для чтения и реализацией алгоритма предварительного резервирования блоков (pre-allocation). Из возможностей ext4 уже готова поддержка экстентов и гигантских файлов (huge_file), остается доделать dir_index, uninit_bg, dir_nlink, flex_bg и extra_isize.
- Ведется работа по созданию inotify-совместимой системы нотификации об изменениях в файловой системе (fsnotify) и добавлению поддержки inotify в linuxulator. В настоящее время код уже работоспособен, но еще плохо совместим с inotify в некоторых деталях;
- Подготовлена основанная на GEOM реализация псевдо-RAID (fakeRAID-контроллеры) - geom_pseudoraid, идущая на смену ataraid. В настоящий момент поддерживается создание массивов RAID-1 на контроллерах VIA Tech V-RAID и Adaptec HostRAID. В geom_pseudoraid пока не реализована поддержка записи мета-данных и пересборки RAID, нет поддержки RAID-0 и SPAN-массивов;
- Переработан код VFS namecache для обеспечения более корректной организации блокировок и поддержки выборки по полному файловому пути без обращения к связанному с файловой системой коду. В настоящий момент на базе нового кода удалось реализовать кеширование содержимого директорий (dircache) для идеализированного окружения с tmpfs;
- Добавлена экспериментальная поддержка работы FreeBSD в качестве клиента распределенной сетевой файловой системы OpenAFS (http://openafs.org/);
- В дерево исходных текстов FreeBSD HEAD интегрирован код 15 версии файловой системы ZFS, соответствующий состоянию Solaris 10 update 8. Новая версия отличается проведением работы по исправлению ошибок, оптимизиацией производительности (тесты показывают прирост скорости на 15-20%) и добавлением поддержки пользовательских и групповых квот. Продолжается работа по портированию 26 версии ZFS, в которой реализована поддержка автоматического распознавания и объединения дубликатов данных. Если в нескольких файлах присутствуют аналогичные блоки данных, то они будут сохранены на физический носитель только один раз, что позволит существенно уменьшить потребление дискового пространства и увеличить производительность - вместо копирования блоков будет лишь изменена запись в соответствующей таблице.
- Система
- В состав базовой системы FreeBSD HEAD включен (http://www.opennet.ru/opennews/art.shtml?num=26913) компилятор Clang, который может быть использован вместо GCC для архитектур i386, amd64 и powerpc. В настоящее время ведется работа по созданию базирующегося на LLVM кода ELF writer, готовится к интеграции в HEAD новая версия Clang/LLVM, рассматривается возможность использования Clang для архитектур ARM/MIPS/SPARC64 и выявляются ошибки при сборке при помощи Clang программ из дерева портов;
- Функциональность реализации распределенной системы аудита (http://wiki.freebsd.org/SOC2010SergioLigregni) для FreeBSD готова на 90%, работает синхронизация данных между связанными в режиме master-slave демонами аудита на двух системах. Осталось привести код в соответствие с требованиями разработчиков FreeBSD, добавить возможность шифрования передаваемых данных, провести проверку кода на предмет потенциальных ошибок безопасности и интегрировать код с текущей подсистемой аудита.
- В рамках проекта FSC (http://people.freebsd.org/%7Etrhodes/fsc/) (FreeBSD Services Control) ведется работа по подготовке похожих на Solaris SMF и daemontools инструментов для управления и мониторинга работой системных сервисов. Для контроля за работой сервисов используется фоновый процесс fscd, сервисы добавляются при помощи утилиты fscadm. В случае аварийного завершения работы сервиса, fscd распознает падение процесса и запускает сервис вновь;
- Подготовлена базовая реализация фреймворка с поддержкой шины GPIO (General Purpose Input/Output). Готовы два драйвера: gpioled с простейшей реализацией функциональности led(4) и gpioiic с поддержкой I2C через GPIO;
- В состав базовой системы FreeBSD HAED интегрирована (http://www.opennet.ru/opennews/art.shtml?num=27131) альтернативная программа установки pc-sysinstall (консольный бэкенд, напоминающий классический sysinstall), разработанная в недрах проекта PC-BSD. Из возможностей отмечена поддержка ZFS, raidz, gmirror-зеркалирования, GPT/EFI, GELI-шифрования, gjournal, присутствует собственный менеджер для MBR слайсов/разделов, после установки формируется подробный лог, отражающий статус выполнения всех операций.
- Изолированные окружения и ограничения ресурсов
- Ведется работа по реализации для FreeBSD системы коллективного ограничения ресурсов (Collective Resource Limits (http://p4db.freebsd.org/depotTreeBrowser.cgi?FSPC=//depot/projects/soc2010/gabor_jobs/irix_jobs)), известной в SGI IRIX как "Jobs". Возможность позволяет назначить определенный лимит (размер памяти, число открытых файлов и т.п.) на ресурсы группы процессов;
- Проект по подготовке инфраструктуры виртуализации (http://www.opennet.ru/opennews/art.shtml?num=26951) на базе Jail в настоящий момент пытается решить две задачи: 1. Обобщение виртулизационного фреймворка с целью упрощения механизмов управления и исключения дублирующихся функций. 2. Развитие виртуального сетевого стека.
- Стартовал (http://www.opennet.ru/opennews/art.shtml?num=27180) проект по поддержке контейнеров ресурсов и реализации простого механизма ограничения ресурсов для отдельных Jail-окружений. Цель данного проекта состоит в том, чтобы создать единую унифицированную инфраструктуру для контроля потребления ресурсов и использовать ее для реализации лимитов ресурсов для отдельных Jail. В будущем, эта инфраструктура может быть использована для реализации более сложных видов контроля над ресурсами (например, иерархического ограничения ресурсов) или для реализации механизмов, аналогичных AIX WLM. Также она может быть использована для точного учета потребления ресурсов в целях администрирования или тарификации.
- Сетевая инфраструктура
- Ведется работа по усовершенствованию (http://caia.swin.edu.au/urp/newtcp/) TCP/IP стека FreeBSD. Готов для публичного тестирвоания код системы автотюнинга параметров пересборки TCP-пакетов. В базовую систему FreeBSD HEAD интегрирован модуль ядра SIFTR (Statistical Information For TCP Research), разработанный при поддержке компании Cisco. SIFTR-модуль осуществляет ведение журнала в который заносится широкий диапазон параметров, связанных со статистикой активных TCP-соединений. Для обеих возможностей готовится бэкпорт для ветки 8-STABLE.
- В рамках проекта libnetstat ведется работа по созданию библиотеки с функциями, связанными с выполнением задач мониторинга и управления сетевой подсистемой. Библиотека выступает в роли враппера и позволяет исключить прямое обращение к интерфейсам kvm(3) и sysctl(3).
- Разрабатывается новый стек для организации перехвата пакетов - ringmap (http://code.google.com/p/ringmap/) (Packet-Capturing Stack), специально оптимизированный для высокоскоростных сетевых интерфейсов. Реализация ringmap напоминает "zero-copy BPF" тем, что минимизирует операции копирования пакетов, благодаря использованию единых совместных буферов. В отличии от "zero-copy BPF" ringmap исключает любое копирование пакета, так как DMA-буфер сетевого адаптера отображается прямо в user-space. С точки зрения API новая система совместима с libpcap;
- Поддержка оборудования
- Близится к завершению (http://www.opennet.ru/opennews/art.shtml?num=27361) портирование во FreeBSD пакета DAHDI (Zaptel), который представляет собой открытый фреймворк для создания драйверов и набор готовых драйверов для E1/T1, цифровых ISDN и аналоговых FXO/FXS карт. Портирование DAHDI позволит использовать FreeBSD в качестве платформы для организации работы PBX-систем (VoIP и офисных АТС) на базе Asterisk. Кроме того в рамках проекта для FreeBSD обеспечена поддержка TDMoE (http://www.voip-info.org/wiki/view/Asterisk+TDMoE) (Time Division Multiplexing over Ethernet), аппаратных и программных механизмов подавления эхо (Octasic, VPMADT032) и возможность использования аппаратных транскодеров (TC400B). В настоящее время работа сосредоточена на тестировании работы драйверов.
- Во FreeBSD HEAD интегрирована реализация поддержки технологии FDT (Flattened Device Tree), позволяющей описать аппаратные ресурсы компьютерной системы, с учетом всех связей, платформо-независимым и переносимым способом. Технология FDT прежде всего окажется полезной для встраиваемых систем (ARM, AVR32, MIPS, PowerPC), аппаратные ресурсы которых не поддерживают самоидентификацию и не могут быть определены путем проверок. FDT базируется на реализации дерева устройств в стандарте Open Firmware IEEE 1275 и эталонной спецификации ePAPR. Поддерживаются платформы Marvell ARM, SheevaPlug и Freescale PowerPC.
- Началась работа по портированию FreeBSD/powerpc64 для поддержки базирующихся на процессоре Cell приставок Sony Playstation 3. Подготовлен загрузчик FreeBSD, обеспечена поддержка framebuffer, MMU и device discovery. После того как будет завершена работа над драйверами для сетевого адаптера и контроллера прерываний на Sony Playstation 3 можно будет загрузить FreeBSD в многопользовательском режиме.
- Продолжается развитие портов FreeBSD для платформ AVR32, Powerpc64 и Sparc64. Поддержка Powerpc64 была недавно добавлена (http://www.opennet.ru/opennews/art.shtml?num=27329) в HEAD, в настоящий момент поддерживаются процессоры Apple Xserve G5, Apple Power Macintosh G5 и Apple iMac G5. В порте для Sparc64 добавлена поддержка серверов Fujitsu (Siemens) PRIMEPOWER 250 (также должны работать модели PRIMEPOWER 450, 650 и 850, но они не тестировались), основанных на SPARC64 V CPU.
- Приложения и система портов
- В рамках проекта pkg_patch (http://wiki.freebsd.org/IvanVoras/pkg_patch) создается инфраструктура для распространения бинарных патчей, которая позволит пользователям на работающей системе эффективно исправлять проблемы в установленных пакетах. Код программы написан на языке Си и использует стандартную библиотеку libpkg, что позволит без проблем после завершения работы интегрировать утилиту в базовую систему.
- Утилита grep, распространяемая под лицензией BSD, в общем виде готова для интеграции в базовую систему FreeBSD HEAD (9-CURRENT), осталось исправить несколько незначительных ошибок.
- Завершена работа над библиотекой iconv, распространяемой под лицензией BSD и основанной на наработках из проекта NetBSD. Библиотека показывает неплохие результаты совместимости с GNU iconv, осталось провести тестирования сборки портов с новой реализацией iconv и исправить возникшие при этом проблемы.
- Продолжается усовершенствование порта (http://wiki.freebsd.org/Chromium) web-браузера Chromium, который теперь основан на базе ветки 5.0.375. Порт уже работает достаточно стабильно, включая такие возможности как HTML 5 тег video, и готов для интеграции в систему портов (ожидает утверждения во FreeBSD Foundation). В будущем планируется обеспечить работу во FreeBSD встроенного менеджера задач Chromium и убедиться в корректности работы дополнений к браузеру. Разработчик порта Chromium использует интересную схему стимулирования финансовой поддержки проекта, свежие сборки распространяются только по платной подписке: патчи сразу доступны только для подписчиков, для остальных они публикуются через определенное время.
- Ведется работа по портированию для FreeBSD функционального языка программирования Haskell, для FreeBSD/i386 и FreeBSD/amd64 уже подготовлен рабочий пакет с Glasgow Haskell Compiler. Ведется работа по переносу библиотек и программ из коллекции пакетов Haskell Cabal в систему портов FreeBSD, готовится к публикации порт с Haskell Platform;
- Подготовлена унифицированная библиотека libpkg (http://code.google.com/p/libpkg) с реализацией типовых функций по работе с базой данных и содержимым пакетов. В настоящий момент полностью реализованы функции чтения информации о пакетах и удаления пакетов. Операции, связанные с записью и логами, еще в процессе реализации;
- Ведется работа по добавлению поддержки интерфейса V4L (Video for Linux) в код Linux-эмулятора. В настоящий момент уже поддерживается работа V4L через универсальный драйвер cuse4bsd, поддерживающий множество web-камер. Код пока реализован для 9-CURRENT, но планируется бэкпортировать его в ветку 8-STABLE;
- Число портов достигло 22000, из них у 1200 имеются незакрытые PR. В порты интегрирован Xorg 7.5, а также свежие версии KDE 4 и GNOME 2. Для сборки портов организация FreeBSD Foundation выдела два новых сервера. Бинарные пакеты в настоящее время собираются для архитектур amd64-6, amd64-7, amd64-8, i386-6, i386-7, i386-8, i386-9, ia64-8, sparc64-7, sparc64-8, ia64-8.
- Разное
- Завершены (http://www.opennet.ru/opennews/art.shtml?num=27295) выборы нового состава FreeBSD Core Team, в состав которого вошли 5 новых члена и 4, уже имеющих опыт работы во FreeBSD Core Team.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=27408)
[size="3"]FreeBSD: 8.1-RELEASE [/size]Спустя 9 месяцев с момента выхода FreeBSD 8.0 увидел свет (http://www.freebsd.org/releases/8.1R/announce.html) релиз FreeBSD 8.1 (http://www.freebsd.org/releases/8.1R/relnotes-detailed.html). Релиз доступен (ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/8.1/) для архитектур amd64, i386, ia64, pc98, powerpc и sparc64 в 5 установочных сборках: bootonly, CD, DVD, LiveFS и Memstick для USB Flash. Ключевые улучшения (http://www.freebsd.org/releases/8.1R/relnotes-detailed.html) новой версии: - Сетевая подсистема:
- Проведена основательная ревизия кода ipfw и dummynet, в результате которой добавлены такие улучшения, как значительное ускорение работы инструкции skipto, поиск заданного правила теперь имеет сложность O(1) или O(log N) вместо O(N), также значительное увеличение производительности могут отметить пользователи конструкций "skipto tablearg" и "pipe tablearg", при большом наборе правил и pipe-ов. В таблицах теперь можно использовать в качестве аргумента опции "ports" и "tos". Атрибут 'log' теперь отправляет пакеты в псевдо-интерфейс "ipfw0" на котором можно запустить tcpdump для формирования дополнительной выборки. Расширено число поддерживаемых планировщиков в dummynet (FIFO, WF2Q+, Deficit Round Robin, Priority и QFQ).
- Фреймворк для фильтрации пакетов pfil(9) поддерживает установку раздельных областей фильтрации пакетов, таких как ipfw(4) для разных VIMAGE jail.
- В псевдо-интерфейсе vlan(4) появилась поддержка TSO (TCP Segmentation Offloading), для которой определен флаг IFCAP_VLAN_HWTSO, отделенный от IFCAP_VLAN_HWTAGGING. TSO поддерживается в драйверах age(4), alc(4), ale(4), bce(4), bge(4), cxgb(4), jme(4), re(4) и mxge(4). Кроме того в псевдо-интерфейс vlan(4) для IEEE 802.1Q VLAN отныне игнорирует переименование родительского интерфейса - сконфигурированный vlan-интерфейс продолжает работать с новым именем (ранее vlan-интерфейс удалялся);
- В rc.conf добавлена поддержка новой директивы firewall_coscripts, позволяющей указать список команд, которые следует выполнять после запуска или остановки межсетевого экрана;
- В rc.conf добавлена поддержка конфигурирования vlan-интерфейсов, как дочерних устройств (примерно так же как ранее сделано для wlan). Список интерфейсов задается через переменную vlans_IF, а параметры через create_args_IF. Если в поле VLAN указано число, то оно воспринимается как тег VLAN-а, интерфейс которого получает имя IF.tag;
- Файловые системы и системы хранения:
- Код ZFS zpool обновлен до версии 14, что позволяет добиться полной совместимости с ZFS-реализацией в OpenSolaris 2009.06. Улучшена стабильность L2ARC-кода, для контроля интенсивости записи добавлена sysctl-переменная vfs.zfs.txg.write_limit_override, а для просмотра статистики - kstat.zfs.misc.zfetchstats. В состав базовой системы добавлен zfsloader, который позволяет загружать систему с ZFS-разделов (для использования загрузчика zfsloader необходимо установить загрузочный код zfsboot или gptzfsboot);
- В дополнение к поддержке POSIX.1e ACL для файловых систем UFS и ZFS реализована поддержка NFSv4 ACL (http://www.suse.de/%7Eagruen/nfs4acl/draft-gruenbacher-nfsv4-acls-in-posix-00.html), возможность работы с которой добавлена в утилиты cp(1), find(1), getfacl(1), mv(1) и setfacl(1);
- В систему интегрирована реализация системы репликации устройств хранения данных (HAST, Highly Avalable STorage), которая позволяет использовать FreeBSD для создания высоконадежных конфигураций, в которых данные синхронизированы по всем узлам кластера. HAST реализован в виде GEOM-класса, обеспечивающего синхронную репликацию блочных устройств поверх TCP/IP сетей, независимо от типа накопителя и файловой системы. HAST предусматривает возможность быстрого восстановления после сбоя, причем, при выходе из строя первичного master-узла, его функции могут быть делегированы slave-узлу. После проверки и монтирования UFS раздела или импорта ZFS пула на поврежденном узле, система автоматически синхронизирует внесенные за время восстановления изменения и продолжит работу без потери данных. В текущем виде HAST поддерживает только конфигурацию из двух узлов (Master-Backup и Master-Slave);
- Проведено улучшение CAM-реализации подсистемы ATA, позволяющей использовать для взаимодействия с PATA/SATA устройствами более совершенную систему CAM, ранее задействованную для обеспечения работы SCSI устройств. Новая инфраструктура поддерживает такие возможности, как NCQ (Native Command Queuing), MSI (Message Signaled Interrupts) и мультипликатор портов (Port Multiplier). Управление производится через стандартную утилиту camcontrol. Доведена до рабочего состояния поддержка горячего подключения устройств (hot-plug), добавлена опция ядра "options ATA_CAM", новые драйверы ahci(4) и siis(4) помечены как стабильные. Возможность по умолчанию отключена в GENERIC-ядре.
- Добавлен GEOM-класс geom_sched, реализующий поддержку планировщиков ввода-вывода для подсистемы GEOM. Класс SCHED занимается планированием очередей запросов ввода-вывода на основании алгоритмов, реализованных в виде отдельных загружаемых модулей.
- Поддержка оборудования:
- Поддержка SMP-режима (симметричное мультипроцессирование) для систем на базе процессоров PowerPC G5 (по умолчанию в конфигурации GENERIC для FreeBSD/powerpc SMP-режим отключен);
- В порт FreeBSD для платформы sparc64 добавлена поддержка процессоров UltraSPARC IV, IV+ и SPARC64 V;
- Добавлен драйвер bwn(4) для беспроводных карт на базе чипсетов Broadcom BCM43xx;
- Добавлен драйвер run(4) для беспроводных карт Ralink RT2700U/RT2800U/RT3000U (802.11agn) с интерфейсом USB;
- Добавлен драйвер sge(4) для Ethernet-адаптеров Silicon Integrated Systems SiS190/191 Fast/Gigabit Ethernet, поддерживающий среди прочего режимы TSO и TSO поверх VLAN;
- Добавлен драйвер uhso(4) для USB-устройств Option HSDPA. Для создания и завершения соединения с сетью необходимо использовать утилиту uhsoctl;
- Улучшена работа драйвера urtw(4), добавлена поддержка устройств на базе чипа RTL8187B;
- Подготовлен CAM ATA драйвер mvs для контроллеров Marvell SATA (88SX50XX/88SX60XX/88SX70XX), который поддерживает те же устройства, что и драйвер ata(4), но поддерживает дополнительные возможности, такие как NCQ и PMP;
- Программы:
- В базовую систему включена библиотека liblzma с поддержкой функций для сжатия данных методом LZMA2, а также добавлены сопутствующие утилиты xz(1), xzdec(1), lzma(1) и lzmainfo(1);
- Для управления rc.d-сервисами добавлена специальная команда service(8);
- В утилиту cp добавлена опция "-x" позволяющая ограничить область работы только текущей точкой монтирования;
- В утилите ifconfig(8) появилась возможность манипулирования NDP-флагами и установки текстового описания интерфейса (команда description);
- В команде netstat опция "-s" теперь выводит связанную с ARP статистику, также добавлена опция "-q" дающая возможность ограничения числа выводимых строк;
- Добавлена утилита pwait, которая ожидает завершения заданного процесса;
- Программы The sshd(8), cron(8), inetd(8) и syslogd(8) теперь запускаются с флагом MADV_PROTECT, что защищает их от принудительного завершения в случае нехватки оперативной памяти;
- В утилите fetch(1) добавлена поддержка HTTP digest аутентификации;
- Обновление версий программ: ISC BIND 9.6.2-P2, ACPI-CA 20100304, OpenSSH 5.4p1, OpenSSL 0.9.8n, sendmail 8.14.4;
- В портах поставляются GNOME 2.28.2 (x11/gnome2) и KDE 4.4.3 (x11/kde4).
Для выполнения бинарного обновления с прошлых версий необходимо выполнить: [color="#461b7e"]
Загружаем обновления:
freebsd-update upgrade -r 8.1-RELEASE
Устанавливаем обновления, попутно отвечая на вопросы,
касающиеся решения конфликтов при обновлении файлов конфигурации:
freebsd-update install
Перезагружаем систему:
shutdown -r now
Еще раз выполняем:
freebsd-update install
shutdown -r now
[/color]
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=27410)
[size="3"]Релиз Frenzy 1.3[/size]Представлена (http://frenzy.bspu.ru/doku.php?id=start) новая сборка LiveCD-дистрибутива Frenzy (http://frenzy.org.ua/) 1.3, позиционируемого как портативный инструмент системного администратора. Загрузившись с Frenzy администратор получает полностью работоспособную систему с набором программного обеспечения для настройки, анализа работы сети, восстановления системы после краха и тестирования аппаратного обеспечения. Как и в прошлый раз, выпущено два варианта LiveCD: - mini-дистрибутив с консольными утилитами (установлен 81 пакет) - 94 Мб
- cd-дистрибутив с Xorg/Fluxbox и рядом графических программ (992 пакета) - 650 Мб
Основные изменения, по сравнению с прошлой версией: - Основа: FreeBSD 8.1-RELEASE (i386), пакеты (packages) также соответствуют данному релизу;
- В CD-дистрибутив внесен новые приложения, отсутствующие в релизе 1.2:
- На выбор возможно использовать 3 браузера: Opera, Firefox и Google Chrome.
- Добавлен Jabber-клиент Psi
- Установлен полнофункциональный Oracle VirtualBox 3.2.6, работающий сразу после запуска графической оболочки.
- В CD-дистрибутив включена специальная micro-сборка новой версии Frenzy (54 Мб) - для демонстрации возможности запуска Frenzy внутри запущенной копии Frenzy (ISO-образ находится в каталоге /root/ISO/).
Новая версия дистрибутива собиралась с использованием предыдущего SDK, поэтому готовый образ нового SDK отсутствует.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=27412)
[size="3"]FreeBSD: USB 3.0 [/size]Представлен (http://lists.freebsd.org/pipermail/freebsd-usb/2010-July/008909.html) код с начальной поддержкой USB 3.0 и хост-контроллеров, соответствующих спецификации XHCI (http://www.intel.com/technology/usb/xhcispec.htm) (eXtensible Host Controller Interface). Стандарт USB 3.0 определяет максимальную скорость передачи данных через USB интерфейс в 4.8 гигабит в сек., что в 10 раз быстрее USB 2.0. Интегрировать поддержку USB 3.0 во FreeBSD планируется до начала сентября.# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=27424)
[size="3"]FreeBSD: Chromium 7 [/size]Разработчик порта web-браузера Chromium для FreeBSD сообщил (http://chromium.hybridsource.org/) о предоставлении возможности любому желающему загрузить последнюю полноценную сборку, построенную на кодовой базе Chromium 7 (единственное исключение - отсутствие поддержки HTML5 тега video). Бесплатный доступ к бинарным сборкам будет открыт только на протяжении одной недели. Для пользователей FreeBSD 8 подготовлены пакеты для архитектур i386 (http://chromium.hybridsource.org/i386/8-stable/chromium-7.0.502r57001.tbz) и amd64 (http://chromium.hybridsource.org/amd64/8-stable/chromium-7.0.502r57001.tbz). Напомню, что при портировании Chromium используется гибридная схема (http://chromium.hybridsource.org/subscriptions) разработки, позволяющая организовать финансирование проекта. При данной схеме все разработанные патчи становятся свободно доступны только через год после их выпуска, для желающих получить доступ к более свежим версиям - на платной основе (7$ в месяц) организована возможность загрузки еженедельных сборок.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=27722)
[size="3"]FreeBSD HEAD: USB 3.0 [/size]В дерево исходных текстов FreeBSD HEAD добавлен (http://lists.freebsd.org/pipermail/svn-src-all/2010-October/029758.html) код написанного с нуля универсального USB-драйвера, обеспечивающего поддержку устройств с интерфейсом USB 3.0, соответствующих спецификации XHCI (http://www.intel.com/technology/usb/xhcispec.htm) (eXtensible Host Controller Interface). Стандарт USB 3.0 определяет максимальную скорость передачи данных через USB интерфейс в 4.8 гигабит в секунду, что в 10 раз быстрее USB 2.0.
В настоящее время в дерево исходных текстов FreeBSD добавлен только код драйвера, необходимые для работы USB 3.0 изменения в основную USB-подсистему будут внесены в течение недели, затем драйвер будет активирован в сборке ядра по умолчанию. Представленный драйвер также совместим с более старыми контроллерами USB 2.0 и USB 1.0, и способен в будущем заменить ранее присутствующие драйверы OHCI/UHCI и EHCI.
by opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=28164)
Цитата: 42 от 04 Октября 2010, 17:29[size="3"]FreeBSD HEAD: USB 3.0[/size]
А в ядре Линупса поддержка USB 3.0 уже была реализована (http://news.softpedia.com/news/Linux-Kernel-2-6-31-Has-USB-3-0-Support-121287.shtml) в сентябре 2009

/tongue.gif\' class=\'bbc_emoticon\' alt=\':P\' />
Цитата: Drone от 04 Октября 2010, 20:40А в ядре Линупса поддержка USB 3.0 уже была реализована (http://news.softpedia.com/news/Linux-Kernel-2-6-31-Has-USB-3-0-Support-121287.shtml) в сентябре 2009
/tongue.gif\' class=\'bbc_emoticon\' alt=\':P\' />
Какая разница, у нас до сих пор нет флешек USB 3.0
[size="3"]Отчет о состоянии развития за третий квартал 2010 года[/size]Представлен (http://www.freebsd.org/news/status/report-2010-07-2010-09.html) отчет о развитии проекта FreeBSD с июля по сентябрь 2010 года. Примечательно, что данный отчет содержит 55 элементов, что делает его самым объемным за всю историю проекта и демонстрирует неплохую тенденцию роста активности представителей сообщества разработчиков FreeBSD. Основные достижения:
- Системы хранения и файловые системы
- В рамках проекта ExtFS (http://wiki.freebsd.org/SOC2010ZhengLiu) ведется работа над поддержкой монтирования файловой системы ext4 в режиме только для чтения и реализацией алгоритма предварительного резервирования блоков (pre-allocation). В настоящее время код уже может быть использован для чтения данных с созданных по умолчанию ext4-разделов, в процессе находится создание модуля ядра "ext4fs";
- В загрузчике gptboot обеспечено (http://lists.freebsd.org/pipermail/svn-src-head/2010-September/020957.html) полное следование спецификации GPT, включая поддержку использования резервных заголовков и таблиц в случае несовпадения контрольных сумм. Новые атрибуты можно использовать для настройки разделов, с которых gptboot попытается загрузиться один раз и в случае сбоя откатится к предыдущим настройкам;
- Отмечен прогресс в оттачивании кода системы репликации устройств хранения данных (HAST), которая позволяет использовать FreeBSD для создания высоконадежных конфигураций, в которых данные синхронизированы по всем узлам кластера. HAST реализован в виде GEOM-класса, обеспечивающего синхронную репликацию блочных устройств поверх TCP/IP сетей, независимо от типа накопителя и файловой системы. HAST предусматривает возможность быстрого восстановления после сбоя, причем, при выходе из строя первичного master-узла, его функции могут быть делегированы slave-узлу. После проверки и монтирования UFS раздела или импорта ZFS пула на поврежденном узле, система автоматически синхронизирует внесенные за время восстановления изменения и продолжит работу без потери данных. За последнее время в HAST добавлена поддержка хуков, позволяющих запустить определенную команду при наступлении указанного события (соединение, рассоединение, начало синхронизации, завершение синхронизации, прерывание синхронизации, смена роли и т.п.). При получении сигнала SIGHUP теперь осуществляется загрузка изменений конфигурации. Добавлена внутренняя реализация механизма keepalive, исправлено множество ошибок;
- Продолжена работа по стабилизации поддержки работы FreeBSD в качестве клиента распределенной сетевой файловой системы OpenAFS (http://openafs.org/);
- Началось тестирование файловой системы ZFS v28 для FreeBSD. Среди новшеств (http://www.opennet.ru/opennews/art.shtml?num=27828) ZFS v28 - поддержка автоматического объединения дубликатов, поддержка RAIDZ3, реализация утилиты "zfs diff", поддержка команды "zpool split", возможность ведения счетчика ссылок на снапшот, поддержка импорта пула в режиме только для чтения;
- Система
- Включенный ранее в состав базовой системы FreeBSD-CURRENT компилятор Clang обновлен до версии 2.8. В систему внесены все необходимые изменения для сборки "мира" с использованием Clang для архитектур i386 и amd64. Отдельное внимание уделяется адаптации портов для сборки в Clang, в большинстве случаев портирование портов сводится к добавлению опции для выбора альтернативного компилятора. Из поставленных задач можно отметить организацию регулярного процесса импортирования новых снапшотов Clang, рассмотрение возможности использования Clang для архитектуры ARM, адаптацию портов для Clang и организацию автоматизированных тестовых сборок портов;
- В рамках проекта XTC (eXternal Tool Chain) осуществлена реализация возможности использования альтернативных инструментариев сборки (компилятор, ассемблер, линковщик и т.п.). Ранее скрипты сборки были завязаны на стандартных программах (CC=cc), но после начала интеграции Clang и появления необходимости сборки для встраиваемых платформ пришлось задуматься о возможности подключения альтернативных инструментов;
- В рамках проекта FSC (http://people.freebsd.org/%7Etrhodes/fsc/) (FreeBSD Services Control) ведется работа по подготовке похожих на Solaris SMF и daemontools инструментов для управления и мониторинга работой системных сервисов. Для контроля за работой сервисов используется фоновый процесс fscd, сервисы добавляются при помощи утилиты fscadm. В случае аварийного завершения работы сервиса, fscd распознает падение процесса и запускает сервис вновь. По сравнению со сторонними пакетами, такими как daemontools, система FSC имеет несколько преимуществ, например fscd использует push-нотификацию вместо пулинга (отправляет уведомления, не требуя периодического опроса состояния), fscd является внутренней подсистемой, легко интегрируемой в rc.d-инфраструктуру FreeBSD и полностью поддерживаемой разработчиками (daemontools является неподконтрольным портом для которого можно лишь поддерживать набор патчей). В течение нескольких недель ожидается начало более активного тестирования и сбор замечаний, после чего код будет готовиться для интеграции в дерево исходных текстов FreeBSD;
- Продолжается (http://wiki.freebsd.org/201010DevSummit?action=AttachFile&do=get&target=timers.pdf) работа над новой инфраструктурой обслуживания событий таймеров. Во FreeBSD-CURRENT рефакторингу подверглось API для работы с таймерами, написан машинонезависимый код для управления таймерами, который может обслуживать как устаревшие периодические, так и новые единичные режимы работы таймера. Единичный режим позволяет значительно сократить число генерируемых таймером прерываний и понизить нагрузку на CPU - прерывание таймера, в случае нахождения CPU в состоянии простоя (idle), генерируется только при необходимости обработки зарегистрированного события. Нагруженные CPU по прежнему получают полный поток прерываний таймера с целью координирования планирования задач, хронометрирования и учета ресурсов. Для примера специальный тюнинг позволяет добиться на 8-ядерных CPU генерации всего 100 прерываний в секунду, что позволяет понизить энергопотребление и повысить эффективность технологии Intel TurboBoost;
- Ведется работа над проектом Netdump (http://wiki.freebsd.org/Netdump), позволяющим отправлять дампы состояния ядра после краха по сети, вместо их сохранения на локальном диске. Для отправки данных используется UDP-протокол, обслуживаемый минимальным обособленным TCP/IPv4 стеком. Прием дампа осуществляется netdump-сервером, запущенным на внешнем хосте. Создание Netdump целесообразно для отслеживания крахов бездисковых узлов кластеров, загружающихся по PXE машин или в случае отладки проблем в дисковой подсистеме;
- Продолжена доработка альтернативной программы установки pc-sysinstall (консольный бэкенд, напоминающий классический sysinstall), разработанной в недрах проекта PC-BSD. Из возможностей отмечена поддержка ZFS, raidz, gmirror-зеркалирования, GPT/EFI, GELI-шифрования, gjournal, присутствует собственный менеджер для MBR слайсов/разделов, после установки формируется подробный лог, отражающий статус выполнения всех операций. Из задач, над которыми ведется работа, отмечается необходимость дополнительного тестирования автоматизированного режима установки и добавление функции создания установочных дисков с pc-sysinstall;
- В Perforce-репозиторий добавлен код (http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/freebsd/t127230759508) для обеспечения регистрации опциональных подсистем ядра через sysctl;
- Завершена работа по портированию во FreeBSD кода DTrace, обеспечивающего возможность динамической трассировки пользовательских приложений (поддержка DTrace появилась еще во FreeBSD 7.0, но позволяла только отслеживать процессы, протекающие внутри ядра). Например, теперь можно устанавливать точки останова, следить за распределением памяти, использованием процессорного времени, наблюдать за блокировками, отслеживать сетевые и файловые операции в приложениях, запущенных на пользовательском уровне. В частности, в рамках портирования из OpenSolaris перенесен pid-провайдер (http://wikis.sun.com/display/DTrace/pid+Provider) (позволяет отслеживать выполнение определенных функций в программе), реализованы USDT-проверки (http://www.solarisinternals.com/wiki/index.php/DTrace_Topics_USDT) (вкомпилирование в пользовательскую программу отладочных вызовов), утилита plockstat (http://wikis.sun.com/display/DTrace/plockstat+Provider) (контроль блокировок в библиотеке pthread), утилита dtruss (аналог ktrace для трассировки системных вызовов), произведена интеграция поддержки Trace в порты с MySQL и PostgreSQL. Улучшение уже интегрировано во FreeBSD HEAD и в будущем войдет в состав релизов FreeBSD 8.2 и 7.4.
- В bsdtar, pkg_create и pkg_add добавлена поддержка метода сжатия "xz". Пакеты сжатые методом xz имеют расширение ".txz". Кроме того в newsyslog добавлена возможности сжатия лог-файлов методом xz, что позволяет сэкономить 15-30% дискового пространства по сравнению с использованием bzip2. В настоящее время рассматривается возможности перехода по умолчанию к пакетам ".txz" вместо ".tbz";
- Изолированные окружения, безопасность и ограничения ресурсов
- В рамках проекта Capsicum (http://www.cl.cam.ac.uk/research/security/capsicum/) создан фреймворк для организации изолированного выполнения приложений и ограничения использования приложениями определенных функций. Capsicum расширяет POSIX API и предоставляет несколько новых системных примитивов, нацеленных на поддержку модели безопасности через управление возможностями объектов ("object-capability") для Unix-систем. Capsicum нацелен на дополнение традиционного централизованного мандатного контроля доступа средствами для защиты отдельных приложений. Используя Capsicum приложение можно запустить в режиме повышенной изоляции (sendbox), при котором программа сможет выполнять только ранее специфицированные штатные действия. В настоящее время уже достаточно много программ, от tcpdump до chromium, модифицированы для поддержки режима изоляции, который может быть использован для уменьшения рисков при обработке сомнительных данных. В настоящее время работа сосредоточена на преобразовании приложений для предоставления возможности их изоляции при помощи Capsicum. В ноябре или декабре планируется интеграция Capsicum во FreeBSD-CURRENT, также проводится анализ KBI на предмет возможности переноса Capsicum в ветку 8-STABLE;
- В GELI, GEOM-классе для обеспечения дискового шифрования, появились следующие улучшения, которые уже добавлены во FreeBSD-CURRENT: Поддержка метода шифрования AES-XTS, который теперь используется по умолчанию. AES-XTS также интегрирован во фреймворк opencrypto и драйвер aesni. Поддержка работы с несколькими ключами шифрования, каждый ключ при этом используется для своего набора секторов на диске. Пароль теперь может быть загружен из файла (опции -J и -j);
- Представлена новая криптографическая файловая система PEFS (http://wiki.freebsd.org/PEFS), работающая на уровне ядра и способная обеспечивать шифрование данных, работая поверх существующих примонтированных файловых систем. Из алгоритмов шифрования реализованы AES и Camellia. В последнее время осуществлен перевод системы на использование режима шифрвоания XTS, реализована поддержка "рассеивания" содержимого файлов, добавлена поддержка ext2. Для выполнения функций аутентификации пользователей по хранимому в файловой системе ключу и для добавления ключей для смонтированных ФС во время входа пользователя подготовлен специальный PAM-модуль. В настоящее время PEFS успешно проходит тесты fsx, pjdfstest, blogbench и dbench при работе поверх UFS и ZFS;
- Начат проект по реализации контейнеров ресурсов и возможности установки индивидуальных ограничений ресурсов в привязке к конкретным Jail-окружениям. В настоящее время разработан общий фреймворк для управления ресурсами, который постепенно расширяется поддержкой лимитирования новых типов ресурсов;
- Близится к завершению работа по синхронизации с кодовой базой OpenBSD 4.5 кода пакетного фильтра PF, интегрированного во FreeBSD. Код уже можно рассматривать как стабильный, но требуется еще проведение ряда регрессивных тестов. Из новшеств отмечена поддержка divert(4), которая позволит использовать совместно с pf утилиты подобные snort_inline. В качестве модуля ядра реализована поддержка pfsync;
- Сетевая инфраструктура
- Проведена доработка проекта BSNMP (http://wiki.freebsd.org/CategorySNMP), представляющего собой легковесный SNMP-сервер (bsnmpd), распространяемый в рамках лицензии BSD. В качестве основного новшества в BSNMP добавлена поддержка SNMPv3-совместимой аутентификации и шифрования трафика. Через модуль snmp_vacmи реализована система ограничения доступа на основе представлений (view). Дополнительно в рамках проекта создан и интегрирован в базовую систему модуль snmp_wlan, нацеленный на обеспечение управления и мониторинга беспроводного сетевого стека FreeBSD;
- Во FreeBSD-CURRENT приняты патчи, подготовленные в рамках проекта по усовершенствованию (http://caia.swin.edu.au/urp/newtcp/) TCP/IP стека FreeBSD. Добавлен код системы автотюнинга параметров пересборки TCP-пакетов, интегрирован модуль ядра SIFTR (Statistical Information For TCP Research), разработанный при поддержке компании Cisco. SIFTR-модуль осуществляет ведение журнала в который заносится широкий диапазон параметров, связанных со статистикой активных TCP-соединений. Ожидается, что код будет бэкпортирован и появится в составе релизов FreeBSD 7.4 и 8.2;
- Начата работа (http://caia.swin.edu.au/freebsd/5cc/) над интеграцией в ядро FreeBSD пяти новых модулей с реализацией различных алгоритмов для контроля перегрузки (Congestion Control) в TCP: HTCP, CUBIC, Vegas, HD и CHD. Готовится к интеграции в ядро FreeBSD фреймворк Khelp, представляющий интерфейс для создания модулей ядра, на лету обеспечивающих выполнение определенных сервисных функций. Также включения в ядро ожидает Khelp-модуль ERTT (Enhanced Round Trip Time), позволяющий более точно измерять параметры TCP потока для использования в алгоритмах управления контроля перегрузки TCP;
- Отмечается прогресс в разработке стека для организации перехвата пакетов - ringmap (Packet-Capturing Stack), специально оптимизированного для высокоскоростных сетевых интерфейсов. Реализация ringmap напоминает "zero-copy BPF" тем, что минимизирует операции копирования пакетов, благодаря использованию единых совместных буферов. В отличии от "zero-copy BPF" ringmap исключает любое копирование пакета, так как DMA-буфер сетевого адаптера отображается прямо в user-space. С точки зрения API новая система совместима с libpcap. Из последних достижений отмечена интеграция с драйвером lem (поддерживаются сетевые адаптеры на базе чипов Intel 8254X), реализация BPF-совместимой фильтрации пакетов на уровне ядра и на пользовательском уровне, частичная интеграция с драйвером ixgbe для перехвата 10 гигабитных потоков;
- Поддержка оборудования
- Во FreeBSD-CURRENT обеспечена (http://wiki.freebsd.org/AdrianChadd/AtherosStuff) поддержка установки на беспроводных маршрутизаторах на базе SoC Atheros AR913x и AR910x. Так как поддержка 802.11n еще находится в процессе разработки, тестируемое оборудование удалось задействовать в качестве WiFi 802.11bg точки досутпа;
- Работа по интеграции поддержки архитектуры ARM в дерево исходных текстов FreeBSD пока находится на начальной стадии.
- Завершен (http://www.opennet.ru/opennews/art.shtml?num=28326) процесс портирования во FreeBSD фреймворка DAHDI (Zaptel), набора драйверов для голосовых карт, модулей с поддержкой TDMoE (Time Division Multiplexing over Ethernet), драйверов с реализацией аппаратных, программных механизмов подавления эхо (Octasic, VPMADT032) и драйверов для аппаратных транскодеров (TC400B). Код для поддержки FreeBSD теперь размещен в официальном SVN-репозитории (http://svn.digium.com/svn/dahdi/freebsd/) проекта DAHDI и отныне будет постоянно синхронизироваться с Linux-версией DAHDI. Для удобства установки DAHDI пользователями FreeBSD подготовлен специальный порт - misc/dahdi (http://www.freshports.org/misc/dahdi/), который помимо основного кода из SVN-репозитория содержит ряд дополнений (например модуль эхоподавления OSLEC и экспериментальный драйвер zaphfc), не включенных в SVN из-за лицензионных ограничений. Из планов можно отметить обеспечение возможности запуска связки asterisk+dahdi с привилегиями обычного пользователя (сейчас запускается от root) и добавление в порт asterisk поддержки ISDN-сигнализации bri_net_ptmp, вместо устаревшей связки zaptel+asterisk-bristuff;
- Организация FreeBSD Foundation готова (http://lists.freedesktop.org/archives/intel-gfx/2010-October/008456.html) профинансировать создание GEM/KMS модулей ядра для FreeBSD, что позволит использовать во FreeBSD новые версии драйверов для видеокарт Intel. Напомню, что начиная с версии 2.10 драйвер xf86-video-intel не поддерживает переключение видеорежимов на пользовательском уровне, возможно только использование KMS-модуля, работающего на уровне ядра;
- Продолжается развитие порта FreeBSD/powerpc64, который уже успешно загружается в SMP-режиме на приставке Sony Playstation 3. Порт достаточно стабилен, например, проходит тестирование собственной пересборкой (self-hosting). Из оборудования пока поддерживается USB и Ethernet. В ближайших планах реализация поддержки SATA, SPU-блоков (http://en.wikipedia.org/wiki/Synergistic_Processing_Unit#Power_Processor_Element) (Synergistic Processing Unit) процессора Cell и создание интерактивного загрузчика;
- Отмечается прогресс в подготовке порта для MIPS-совместимых Octeon SoC (http://wiki.freebsd.org/FreeBSD/mips/Octeon) (CN3xxx и CN5xxx), разработка которого теперь ведется в рамках ветки FreeBSD-CURRENT. Из новинок, отмечается портирование Ethernet-драйвера из Linux, обеспечение стабильной поддержки SMP для двухядерных систем и экспериментальной для систем, имеющих до 16 процессорных ядер. В настоящее время разработка сосредоточена на обеспечении поддержки PCI, USB, ATA Compact Flash;
- Порт FreeBSD/mips адаптирован для работы на беспроводных маршрутизаторах D-Link DAP-1350, основанных на Ralink RT3052F SoC. Из работающих подсистем отмечаются: WiFi 802.11n, Ethernet, USB-контроллер, GPIO и CFI NOR Flash. Пока не реализована поддержка встроенного Ethernet-коммутатора, предстоит написать драйверы для I2C/I2S/PCM/SPI и задействовать аппаратные механизмы акселерации NAT/PPPoE/VLAN. Для беспроводных маршрутизаторов D-Link DIR-320, поддержка которых была обеспечена ранее, добавлен новый сборочный профиль для работы в качестве OpenVPN-сервера;
- В порте FreeBSD для платформы SPARC64 проведена оптимизиация производительности и задействованы некоторые дополнительные возможности CPU Fujitsu SPARC64. Кроме того, разработчики получили доступ к серверу Sun Fire 3800, поддержка которого будет обеспечена в будущем;
- В дерево исходных текстов FreeBSD HEAD добавлен код написанного с нуля универсального USB-драйвера, обеспечивающего поддержку устройств с интерфейсом USB 3.0, соответствующих спецификации XHCI (eXtensible Host Controller Interface). Представленный драйвер совместим с более старыми контроллерами USB 2.0 и USB 1.0, и способен в будущем заменить ранее присутствующие драйверы OHCI, UHCI и EHCI.
- Приложения и система портов
- Завершена работа над проектом pkg_patch (http://wiki.freebsd.org/IvanVoras/pkg_patch), в рамках которого была подготовлена инфраструктура для распространения бинарных патчей, которая позволит пользователям на работающей системе эффективно исправлять проблемы в установленных пакетах. Код программы написан на языке Си и использует стандартную библиотеку libpkg. В настоящее время разработчики занимаются устранением проблем, связанных с будущей интеграцией утилиты в базовую систему. Например, требуется внести изменения в инфраструктуру портов/патчей для реализации поддержки режима "обновления" вместо "удаление+добавление";
- В рамках проекта BSD# (http://code.google.com/p/bsd-sharp/) продолжено портирование во FreeBSD пакета Mono с реализацией технологии .NET. Mono помещен в дерево портов (lang/mono), для организации хостинга ASP.NET приложений подготовлены порты www/xsp и www/mod_mono, язык CLI можно установить из порта lang/boo, Visual Basic .NET Framework для Mono размещен как lang/mono-basic, а среда разработки MonoDevelop представлена как devel/monodevelop. В настоящее время осуществлена адаптация для FreeBSD недавно вышедшего релиза Mono 2.8, но в порты новая версия еще не помещена из-за возникновения проблем с несколькими портами на языке С# (например, с Mono 2.8 недостаточно хорошо функционирует deskutils/gnome-do);
- Порт web-браузера Chromium (http://wiki.freebsd.org/Chromium) адаптирован для сборки при помощи Clang. Порт уже работает достаточно стабильно, включая такие возможности как HTML 5 тег video. В процессе находится обеспечение работы встроенного менеджера задач и перевод звукового кода с ALSA на OSS. Разработчик порта Chromium использует интересную схему стимулирования финансовой поддержки проекта, свежие сборки распространяются только по платной подписке: патчи сразу доступны только для подписчиков, для остальных они публикуются через определенное время;
- Группа, занимающаяся портированием десктоп-оболочки KDE для FreeBSD, сообщила о достижении единого ритма с разработчиками KDE, обеспечивая выпуск порта с новыми версиями KDE в течение недели после официального релиза. Так как поддержка KDE неотъемлемо связана с библиотекой Qt, разработчики FreeBSD отслеживают процесс разработки Qt и обеспечивают интеграцию новых выпусков в собственный репозиторий. Из ближайших планов называется подготовка порта будущих выпусков KDE 4.6.0 и KDE 4.5.4;
- Ведется работа по интеграции во FreeBSD системы mandoc (http://mdocml.bsd.lv/), выступающей в роли упрощенной альтернативы nroff/groff, нацеленной на отображение man-страниц. Из достоинств mandoc отмечается распространение под лицензией BSD, компактный код, очень быстрая работа и высокая устойчивость к ошибкам форматирования. Так как в mandoc отсутствуют некоторые функции, используемые в ряде man-страниц FreeBSD, в настоящее время ведется работа по исправлению и адаптации таких страниц;
- В рамках инструментария sysutils/bsdadminscripts (http://sf.net/projects/bsdadminscripts) для системы портов подготовлена утилита pkg_upgrade для обновления бинарных пакетов. Для использования утилиты не требуется копирования дерева портов. В настоящее время утилита находится на финальной стадии разработки, улучшена поддержка организации совместного доступа к пакетам через NFS или nullfs (например, для распространения пакетов для Jail-окружений), расширены возможности по отслеживанию зависимостей, увеличена производительность;
- Число портов достигло 22000. проведена работа по закрытию накопившихся PR, впервые за долгое время число незакрытых PR оказалось меньше тысячи. Бинарные пакеты в настоящее время собираются для архитектур amd64-6, amd64-7, amd64-8, i386-6, i386-7, i386-8, i386-9, ia64-8, sparc64-7, sparc64-8, ia64-8.
- В рамках проекта distilator (http://people.freebsd.org/%7Eehaupt/distilator/) написан сервис для проверки файлов distfile, оценки их состояния и верификации web-ресурсов, упоминаемых в файлах pkg-descr. В текущем состоянии при использовании MySQL-бэкенда на проверку 432512 файлов distfile при работе в 30 потоков тратится примерно 24 часа;
- В порты FreeBSD добавлена версия 3.6.0 системы для выявления ошибок с распределением памяти Valgrind (http://wiki.freebsd.org/Valgrind);
- Введен в строй сайт updating.versia.com (http://updating.versia.com/), на котором реализованы RSS-каналы для слежения за обновлением UPDATING-файлов различных веток FreeBSD и портов, что дает возможность подписаться на получение важнейших системных изменений;
- Разное
- Продолжается работа по разбору накопившихся сообщений об ошибках (PR). Группа "Bugbusting Team" пытается разобрать накопившиеся сообщения, классифицировать их через привязку тегов и передать требующие внимания PR-ы коммиттерам и мантейнерам портов;
- Опубликованы планы выпуска будущих релизов: версии FreeBSD 7.4 (http://www.freebsd.org/releases/7.4R/schedule.html) и FreeBSD 8.2 (http://www.freebsd.org/releases/8.2R/schedule.html) будут выпущены в один день - 24 января, при этом выпуск FreeBSD 7.4 будет последним в ветке 7.x;
- В настоящий момент организацией FreeBSD Foundation собрано 160 тыс. долларов пожертвований (http://www.freebsdfoundation.org/donate/), при годовом плане в 350 тыс. долларов.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=28437)
[size="3"]Вышли кандидаты в релизы FreeBSD 8.2 и 7.4 [/size]Представлены (http://lists.freebsd.org/pipermail/freebsd-stable/2010-December/060757.html) кандидаты в релизы FreeBSD 8.2 и 7.4. 7 января ожидается (http://wiki.freebsd.org/Releng/8.2TODO) второй кандидат в релизы, а 24 января - релиз. Тестовая версия доступна (ftp://ftp2.ru.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/8.2/) для архитектур amd64, i386, pc98 и sparc64 (плюс поддержка ia64 и powerpc в ветке 8.x) в установочных сборках: bootonly, CD, DVD, LiveFS и Memstick для USB Flash.
Поддерживается бинарное обновление с прошлых версий, для выполнения которого необходимо выполнить:
Загружаем обновления:
freebsd-update upgrade -r 8.2-RC1
Устанавливаем обновления, попутно отвечая на вопросы,
касающиеся решения конфликтов при обновлении файлов конфигурации:
freebsd-update install
Перезагружаем систему:
shutdown -r now
Еще раз выполняем:
freebsd-update install
shutdown -r now
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29134)
[size="3"]Релиз VirtualBSD 8.1[/size]Доступен релиз VirtualBSD 8.1 (http://www.virtualbsd.info/), десктоп-ориентированной сборки FreeBSD 8.1, подготовленной в виде образа, пригодного для запуска в системе виртуализации VMware. В качестве десктоп окружения используется Xfce 4.6 с интегрированной панелью wbar (http://code.google.com/p/wbar/). Размер сжатого образа (http://www.virtualbsd.info/download.html) виртуальной машины - 1.3 Гб.
(http://pics.kz/s4/6a/c6/6b/6ac66b42e4ad4c6aff0ca16bcb395af7.jpg)
Из приложений присутствуют: Firefox 3.6.13, Thunderbird 3.17, Pidgin 2.7.7, Xchat 2.8.8, OpenOffice.org 3.2.1, Gimp 2.6.11, VLC 1.1.5, Transmission 2.13, Miro Player 3.5, Samba 3.4.9, CUPS 1.4.5.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29185)
[size="3"]Отчет о состоянии развития FreeBSD за четвертый квартал 2010 г.[/size]Представлен (http://www.freebsd.org/news/status/report-2010-10-2010-12.html) отчет о развитии проекта FreeBSD с октября по декабрь 2010 года.
Основные достижения:
Система - Представлен проект по созданию новой программы установки BSDInstall (http://wiki.freebsd.org/BSDInstall), выступающей в роли замены ранее доступных sysinstall и pc-sysinstall. BSDInstall отличается модульностью, простотой подключения расширений, поддержкой управляющих установкой скриптов и ускорением выполнения процесса инсталляции. В настоящее время BSDInstall уже почти готов и может использоваться для архитектур i386, amd64, sparc64, powerpc, powerpc64 и PC98. В настоящий момент реализовано:
- Возможность установки на GPT-диски;
- Поддержка установки, охватывающей несколько дисков;
- Поддержка установки внутрь jail-окружений;
- Поддержка упрощенного PXE-режима установки;
- Дружественность к системам виртуализации, например, можно произвести установку в дисковый образ из работающей системы;
- Поддержка платформы PowerPC;
- Значительное ускорение процесса установки системы;
- Гибкое управление установкой через написание скриптов;
- Возможность простой реализации мелких настроек;
- Установочный CD выступает в роли LiveCD.
Еще не реализовано:
- Режим настройки параметров беспроводной сети;
- Поддержка установки на ZFS-разделы.
- В рамках проекта FSC (FreeBSD Services Control) продолжена работа по подготовке похожих на Solaris SMF и daemontools инструментов для управления и мониторинга работой системных сервисов. Для контроля за работой сервисов используется фоновый процесс fscd, сервисы добавляются при помощи утилиты fscadm. В случае аварийного завершения работы сервиса, fscd распознает падение процесса и запускает сервис вновь. По сравнению со сторонними пакетами, такими как daemontools, система FSC имеет несколько преимуществ, например fscd использует push-нотификацию вместо поллинга (отправляет уведомления, не требуя периодического опроса состояния), fscd является внутренней подсистемой, легко интегрируемой в rc.d-инфраструктуру FreeBSD и полностью поддерживаемой разработчиками (daemontools является неподконтрольным портом для которого можно лишь поддерживать набор патчей). В настоящее время базовый код FSC готовиться для интеграции в дерево исходных текстов FreeBSD. Для упрощения тестирования связанные с FSC утилиты будут добавлены в дерево портов;
Сетевая инфраструктура - Подготовлен первый выпуск проекта DIFFUSE (http://caia.swin.edu.au/urp/diffuse/) (DIstributed Firewall and Flow-shaper Using Statistical Evidence), добавляющего в пакетный фильтр IPFW функции классификации IP-трафика на основании статистических данных. Патчи уже доступны (http://caia.swin.edu.au/urp/diffuse/downloads.html) для FreeBSD-CURRENT. Система позволяет для отдельных потоков трафика накапливать и учитывать в IPFW такую статистику, как размер пакетов или время между поступлением пакетов, организуя привязку потоков к определенным классам трафика при помощи техник машинного обучения (http://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5). Подобная классификация может оказаться полезной, когда нет возможность прибегнуть к прямому инспектированию пакетов, напирмер, когда приложение работает через нестандартный для используемого протокола сетевой порт. Другой примечательной особенностью DIFFUSE является возможность организации распределенной системы, в которой накопление статистики и классификация трафика производится на одной машине, а приоритезация или блокирование трафика может производиться на других машинах в сети.
- Представлен Ethernet Switch Framework - фреймворк для управления встроенными Ethernet-коммутаторами, часто встречающимися в различных встраиваемых платформах. В настоящее время для настройки используются расширенные опции ifconfig, реализована поддержка vlan для каждого порта и возможность управления состоянием интерфейсов. Поддерживаются коммутаторы на базе IP175D (платы mikrotik) и AR8316 (Ubiquiti RSPRO);
- Близка к завершению работа по интеграции в ядро FreeBSD пяти новых модулей с реализацией различных алгоритмов для контроля перегрузки (Congestion Control) в TCP: HTCP, CUBIC, Vegas, HD и CHD. Готовится к интеграции в ядро FreeBSD фреймворк Khelp, представляющий интерфейс для создания модулей ядра, на лету обеспечивающих выполнение определенных сервисных функций. Также включения в ядро ожидает Khelp-модуль ERTT (Enhanced Round Trip Time), позволяющий более точно измерять параметры TCP потока для использования в алгоритмах управления контроля перегрузки TCP. Разработчики планируют полностью завершить проект в конце января;
- Проведена большая работа по устранению известных ошибок и увеличению качества работы сетевого стека. Исправления в основном связанны с работой IPv6, портированием патча NAT64 и повышением стабильности виртуального сетевого стека (http://www.opennet.ru/opennews/art.shtml?num=16388) (vimage).
- Близок к завершению проект по увеличению масштабируемости TCP-стека на SMP-системах. В ближайшие несколько месяцев во FreeBSD 9.x будет интегрирован патч с реализацией ряда новшеств: поддержкой группировки TCP-соединений в привязке к CPU, задействованием некоторых аппаратных механизмов снижения нагрузки и возможностью привязки отдельных соединений к заданному CPU;
Поддержка оборудования - Ведется работа по созданию патчей для обеспечения поддержки ARM-платформы OMAP3;
- Отмечается прогресс создании беспроводного 802.11n-стека (http://wiki.freebsd.org/AdrianChadd/AtherosStuff). Для Net80211 добавлена поддержка режима 2.4ghz HT/20 (HT/40 и 5ghz пока не реализованы). Для AR9160 реализована базовая поддержка 802.11 TX и RX. Написан, но еще не отлажен, код для поддержки RX A-MPDU и A-MSDU. Обеспечена поддержка технологии WPA2;
- Обеспечена поддержка (http://www.opennet.ru/opennews/art.shtml?num=29224) работы FreeBSD на игровых приставках Sony PlayStation 3. Код подготовлен для порта FreeBSD/powerpc64 и уже достиг должного уровня стабильности. 5 января все созданные в рамках инициативы патчи были добавлены в ветку FreeBSD 9.0-CURRENT. Работа FreeBSD протестирована на приставке Sony Playstation 3 Fat с прошивкой версии ниже 3.21, установка осуществляется в режиме сетевой загрузки с монтированием файловой системы по NFS. Из видеорежимов поддерживаются только 480i/480p (640 × 480). Несмотря на то, что еще отмечается отсутствие поддержки некоторых аппаратных особенностей приставки, работа FreeBSD на Playstation 3 оценена как стабильная. Порт проходит тестирование собственной пересборкой (self-hosting). Из оборудования поддерживается USB и Ethernet. В ближайших планах реализация поддержки SATA, SPU-блоков (Synergistic Processing Unit) процессора Cell и создание интерактивного загрузчика;
- Значительны расширены возможности порта FreeBSD для платформы SPARC64. Обеспечена поддержка CPUTYPE, что позволяет организовать корректную оптимизацию кода для поддерживаемых CPU "ultrasparc", "ultrasparc3" и "v9". Добавлена поддержка некоторых специфичных для UltraSPARC-III+ возможностей. Ведется работа по обеспечению поддержки серверов Sun Fire 3800;
- Для Ethernet-драйверов добавлена поддержка автоматического полного дуплексного контроля за потоком, в соответствии со спецификацией IEEE 802.3 Annex 31B;
- Улучшена работа демона Webcamd (http://www.freshports.org/multimedia/webcamd/), предназначенного для организации работы с web-камерами. Webcamd, работающий на пользовательском уровне, создан на основе портирования Video4Linux-драйверов. В настоящий момент поддерживается около 1500 различных web-камер, DVB и пультов удаленного управления с интерфейсом USB;
Изолированные окружения, безопасность и ограничения ресурсов - Подготовлен FreeBSD-драйвер VirtIO, позволяющий оптимизировать производительность операций ввода/вывода при работе FreeBSD в качестве гостевой системы KVM/Qemu или Virtualbox. Доступна бета-версия драйвера для оптимизации работы сетевых устройств, ведется работа по созданию аналогичного паравиртуального драйвера для блочных устройств;
- Проведена (http://www.opennet.ru/opennews/art.shtml?num=28994) адаптация FreeBSD для функционирования в качестве гостевой ОС для cloud-окружений Amazon EC2. Поддерживается только запуск в окружениях "t1.micro";
- Для платформ amd64 и PowerPC реализован режим неисполняемого стека, позволяющих защитить приложения от эксплуатации некоторых уязвимостей, вызываемых переполнением буфера. Соответствующие патчи интегрированы в HEAD, но еще не включены по умолчанию;
- Близка к завершению разработка проекта по реализации контейнеров ресурсов и возможности установки индивидуальных ограничений ресурсов в привязке к конкретным Jail-окружениям. Разработан общий фреймворк для управления ресурсами, обеспечена поддержка лимитирования различных типов ресурсов, таких как память и загрузка CPU;
- Подготовке патч, обеспечивающий проверку валидности типов аргументов для различных SYSCTL;
Системы хранения и файловые системы - Подготовлена (http://svn.freebsd.org/viewvc/base/projects/graid/) реализация geom_raid - основанная на GEOM замена системе управления программными RAID-массивами ataraid. Проект выполнен при поддержке компании Cisco и отличается модульным дизайном, позволившим разделить систему на базовый модуль, модули для обработки преобразования данных (RAID-уровни) и модули для определения формата хранения мета-данных на диске. В настоящее время работа сосредоточена на обеспечении поддержки RAID0/RAID1 и формата мета-данных Intel: уже можно создавать разделы, читать и записывать данные, но еще не готов код для восстановления и перестроения массива;
- В GEOM-класс gpart, используемый для управления дисковыми разделами, добавлена поддержка команды для изменения размера раздела - "gpart resize". Другим улучшением является поддержки команды "gpart recover", предназначенной для использования функций по восстановлению мета-данных GPT (Guid Partition Table) из автоматически формируемой резервной копии таблицы разделов. Кроме того, добавлены команды "gpart backup" и "gpart restore" для ручного сохранения и восстановления содержимого GPT;
- Во FreeBSD-HEAD интегрирована поддержка операций TRIM для файловой системы UFS, что позволит увеличить производительность при работе с SSD-накопителями и повысить их срок службы;
- Ведется тестирование реализации файловой системы ZFS v28 для FreeBSD 9-CURRENT и 8-STABLE. C особенностями новой версии можно познакомиться здесь (http://www.opennet.ru/opennews/art.shtml?num=28990).
Приложения и система портов - Доведен до актуального состояния порт с web-браузером Chromium 9-beta. Развитием порта теперь занимается Рене Ладан (Rene Ladan), который продвигает патчи в upstream и непосредственно с Google работает над вопросом обеспечения поддержки платформы FreeBSD. Новая версия Chromium пока не включена в официальное дерево портов - включение ожидается через несколько недель;
- Ведется работа по адаптации FreeBSD для использования в качестве платформы для создания домашнего кинотеатра. В частности, производится портирование медиа-центров Enna и me-tv, улучшение поддержки FreeBSD в медиа-центрах MythTV, VDR, XBMC, обеспечение поддержки пультов дистанционного управления и создание сопутствующей документации;
- Продолжается работа по интеграции во FreeBSD системы mandoc, выступающей в роли упрощенной альтернативы nroff/groff, нацеленной на отображение man-страниц. Из достоинств mandoc отмечается распространение под лицензией BSD, компактный код, очень быстрая работа и высокая устойчивость к ошибкам форматирования;
- На финальную стадию разработки перешел проект Port-Sandbox (http://gitorious.org/port-sandbox), в рамках которого разработана новая система для автоматизации тестирования сборки портов в изолированном окружении, симулирующем установленную с нуля систему. Код Port-Sandbox написан на языке Python и использует СУБД MySQL, управление производится через web-интерфейс;
- Выпущен и интегрирован в дерево портов релиз утилиты для управления портами portmaster 3.6.1 (http://dougbarton.us/portmaster-proposal.html). За последнее время в portmaster существенно расширены возможности по обработке ошибок и поддержанию целостности системы портов, уменьшено потребление памяти;
- Добавлены рабочие порты для таких программ, как обучающая платформа Bigbluebutton (http://bigbluebutton.org/), основанный на технологиях KDE4 браузер сетевых ресурсов smb4k (http://smb4k.berlios.de/) и VoIP-платформа FreeSWITCH (http://www.freeswitch.org/);
- В разработке (ftp://rene-ladan.nl/pub/ros-freebsd.pdf) находится портирование мета-операционной системы ROS (http://www.ros.org/) (Robot Operating System). Например, сформированы порты devel/ros-tutorials и devel/ros-nxt, позволяющие использовать FreeBSD с роботами LEGO Mindstorms NXT;
- Число портов достигло 23000. проведена работа по закрытию накопившихся PR, число незакрытых PR сохраняется на уровне тысячи. Бинарные пакеты в настоящее время собираются для архитектур amd64-6, amd64-7, amd64-8, i386-6, i386-7, i386-8, i386-9, ia64-8, sparc64-7, sparc64-8.
- В pkg_create, pkg_add и bsdtar добавлена поддержка работы с файлами, сжатыми методом xz. Поддержка xz уже интегрирована в ветки 9-CURRENT и 8-STABLE. Протестировать работу с txz-пакетами можно добавив строку "PKG_SUFX=.txz" в файл /etc/make.conf. В ports-mgmt/portupgrade поддержка пакетов txz добавлена начиная с версии 2.4.8, для ports-mgmt/portmaster уже подготовлен, но еще не принят патч. Патч для newsyslog, позволяющий сжимать архивы логов методом XZ, находится на стадии рецензировния.
Разное - Продолжается работа по разбору накопившихся сообщений об ошибках (PR). Группа "Bugbusting Team" пытается разобрать накопившиеся сообщения, классифицировать их через привязку тегов и передать требующие внимания PR-ы коммиттерам и мантейнерам портов;
- Релизы FreeBSD 7.4 и 8.2, изначально запланированные на 24 января, немного запаздывают, но по заявлению разработчиков выйдут до конца месяца.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29389)
[size="3"]FreeBSD получит драйвер для видеокарт Intel с поддержкой KMS/GEM [/size]Организация FreeBSD Foundation, совместно с развивающей дистрибутив PC-BSD компанией iXsystems, объявила (http://freebsdfoundation.blogspot.com/2011/02/freebsd-foundation-announces-new.html) о предоставлении гранта на обеспечение во FreeBSD поддержки технологий KMS/GEM и написание работающего на уровне ядра DRI-драйвера для графических подсистем на базе чипов Intel, в том числе и совмещающих CPU и GPU систем Sandy Bridge (http://www.opennet.ru/opennews/art.shtml?num=29229). Реализация проекта позволит пользователям FreeBSD задействовать последние версии видеодрайверов xf86-video-intel, в которых обеспечена поддержка новых 3D-видеокарт Intel, невозможность использования которых на сегодняшний день является серьезной проблемой при организации работы FreeBSD на рабочих станциях. Технология KMS (Kernel Mode Setting), обеспечивающая переключение видеорежимов на уровне ядра, в настоящее время является базовой технологией по управлению видеокартой в драйвере Intel. Поддержка переключения видеорежимов на пользовательском уровне (UMS) была удалена (http://www.opennet.ru/opennews/art.shtml?num=24903) из кода xf86-video-intel начиная с версии 2.10.
Технология GEM позволяет вынести в работающий на уровне ядра DRM-модуль (Direct Rendering Manager) функции, связанные с управлением памятью видеокарты. Технология GEM, разработана компанией Intel и предназначена для низкоуровневого взаимодействия с GPU, позволяя через специальное GEM API организовать совместный одновременный доступ нескольких приложений к видеокарте.
Грант предоставлен Константину Белоусову, программисту из Украины. Константин является коммитером FreeBSD с 2006 года, занимает пост инженера по выпуску релизов и входит (http://www.opennet.ru/opennews/art.shtml?num=27295) в состав управляющего совета (FreeBSD Core Team). По словам Константина, финансовая поддержка FreeBSD Foundation и iXsystems позволит уделить больше времени разработке и решить одну из главных проблем, мешающих использованию FreeBSD в роли десктоп-системы.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29628)
[size="3"]
Релиз FreeBSD 8.2-RELEASE доступен на официальном FTP[/size]
На официальном FTP-сервере FreeBSD появились (ftp://ftp.freebsd.org/pub/FreeBSD/) ISO-образы и исходные тексты долгожданного релиза FreeBSD 8.2 (http://www.freebsd.org/releases/8.2R/) для архитектур i386 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/8.2) и amd64 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/ISO-IMAGES/8.2). Официально о новом релизе будет объявлено в течение нескольких дней.
Дополнение: одновременно опубликованы iso-образы (ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/7.4) и для FreeBSD 7.4.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29663)
[size="3"]Релиз FreeBSD 8.2 и 7.4[/size]Спустя 7 месяцев с момента выхода FreeBSD 8.1 официально представлен (http://www.freebsd.org/releases/8.2R/announce.html) релиз FreeBSD 8.2 (http://www.freebsd.org/releases/8.2R/relnotes-detailed.html). Релиз доступен (ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/8.2/) для архитектур amd64, i386, ia64, pc98, powerpc и sparc64 в 5 установочных сборках: bootonly, CD, DVD, LiveFS и Memstick для USB Flash. Из ключевых улучшений отмечается интеграция поддержки 15 версии ZFS, улучшение работы FreeBSD в роли госетвой системы под управлением Xen HVM и Xen PV, обеспечение поддержки набора инструкций Intel AESNI для задействования встроенного в CPU криптоакселератора, обновление в портах Gnome 2.32.1 и KDE 4.5.5.
Одновременно выпущен (http://www.freebsd.org/releases/7.4R/announce.html) FreeBSD 7.4 (http://www.freebsd.org/releases/7.4R/relnotes.html), последний релиз в ветке FreeBSD 7.x. Выпуск исправлений критических ошибок и проблем безопасности во FreeBSD 7.4 будет производиться еще два года, после чего поддержка ветки 7.x будет полностью прекращена.
Из добавленных во FreeBSD 8.2 улучшений можно отметить:
- Файловые системы и накопители
- До 15 версии обновлен код с реализацией файловой системы ZFS, дополнительно из OpenSolaris перенесено около 150 исправлений и портирован набор увеличивающих производительность оптимизаций (кэширование ACL, ускорение работы stat, минимизация блокировок). Обновлен код ZFS metaslab, который позволил заметно увеличить производительность операций записи на ZFS-разделы, особенно если в zfs-пуле остается менее 30% свободного места. Добавлена поддержка перевода в offline-режим разделов, хранящих логи. Для увеличения отзывчивости значение sysctl vfs.zfs.vdev.max_pending уменьшено с 35 до 10;
- Расширены функции geli, GEOM-класса для шифрования разделов: Поддержка работы с несколькими ключами шифрования, каждый ключ при этом используется для своего набора секторов на диске. Для шифрования по умолчанию теперь используется режим XTS-AES. Добавлена sysctl-переменная kern.geom.eli.overwrites, позволяющая определить число перезаписей для полной очистки ключей (по умолчанию 5). Для полной отмены любых лог-сообщений от системы geli sysctl-переменной kern.geom.eli.debug можно присвоить значение -1. В пользовательской утилите geli добавлены новые субкоманды: resize для изменения размера шифрованных файловых систем; suspend для выгрузки всех связанных с шифрованием данных из памяти ядра и временной заморозки раздела; resume - для разморозки раздела после выполнения suspend; опции "-J newpassfile" и "-j passfile" для загрузки пароля из файла;
- В реализации linprocfs для Linux-эмулятора добавлена поддержка /proc/$/environment;
- Для NFS-клиента добавлен новый sysctl boot.nfsroot.nfshandlelen, позволяющая активировать NFSv3 при загрузке бездисковых систем (если переменная не установлена используется NFSv2);
- Расширены возможности ata-драйвера: Добавлена возможность установки ATA-режимов через sysctl hint.devname.unit.devN.mode и hint.devname.unit.mode, передаваемые значения для которых аналогичны режимам, поддерживаемым в atacontrol и camcontrol. Обеспечена возможность отключения проверки статуса подключения на стороне контроллера и устройства (в loader.conf hw.ata.ata_dma_check_80pin = 0). Улучшена поддержка горячего подключения устройств и контроля скорости соединения для некоторых SATA-контроллеров Intel, включая ICH5 и ICH8+;
- Сетевая подсистема
- Интегрирован модуль ядра SIFTR (http://www.freebsd.org/cgi/man.cgi?query=siftr&sektion=4&manpath=FreeBSD+8.2-RELEASE) (Statistical Information For TCP Research), разработанный при поддержке компании Cisco. SIFTR-модуль осуществляет ведение журнала в который заносится широкий диапазон параметров, связанных со статистикой активных TCP-соединений;
- Добавлен новый netgraph-узел ng_patch (http://www.freebsd.org/cgi/man.cgi?query=ng_patch&sektion=4&manpath=FreeBSD+8.2-RELEASE), позволяющий модифицировать произвольные поля в заголовках IP-пакетов, в том числе TOS/DSCP и TTL. Пример использования (http://nuclight.livejournal.com/126002.html);
- В виртуальном сетевом стеке (vnet) появилась поддержка IPv4 multicast-маршрутизации;
- Система alq (http://www.freebsd.org/cgi/man.cgi?query=alq&sektion=9&manpath=FreeBSD+8.2-RELEASE) (Asynchronous Logging Queues) теперь доступна в виде модуля ядра;
- Добавлен устанавливаемый через загрузчик параметр net.link.ifqmaxlen (значение по умолчанию 50), определяющий размер очереди отправки пакетов для сетевых интерфейсов;
- Проведена работа по обеспечению параллельной обработки IPsec-потоков;
- В netgrap-узел ng_eiface (http://www.freebsd.org/cgi/man.cgi?query=%D1%8Fg_eiface&sektion=4&manpath=FreeBSD+8.2-RELEASE) добавлена поддержка установки MTU для VLAN и возможность указания значений MTU больше 1500. В узле ng_ether (http://www.freebsd.org/cgi/man.cgi?query=ng_ether&sektion=4&manpath=FreeBSD+8.2-RELEASE) добавлена поддержка передачи сетевого интерфейса между несколькими виртуальными сетевыми стеками, используя команду ifconfig vnet. При перемещении сетевого интерфейса в новый vnet, привязанный к нему ng_ether-узел уничтожается и затем пересоздается автоматически.
- По умолчанию отключен алгоритм ограничения размера TCP-окна Inflight Bandwidth-Delay Limiter (net.inet.tcp.inflight.enable) на основании оценки задержки прихода подтверждения в получении пакетов. Для современных высокоскоростных сетей с RTT менее 10мс данный алгоритм оказался неэффективным. В будущих релизах ожидается интеграция модульной системы подключения реализацией различных алгоритмов для контроля перегрузки (Congestion Control) в TCP, таких как HTCP, CUBIC, Vegas, HD и CHD;
- Приведены в соответствие с RFC 3390 и RFC 5681 параметры формирования начального размера скользящего окна TCP. Для управления введена sysctl-переменная net.inet.tcp.rfc3390;
- Исправлена ошибка в коде PMTU (http://en.wikipedia.org/wiki/PMTU) (TCP Path MTU Discovery), проявляющаяся в неверном расчете параметров при MTU менее 256 октетов;
- Поддержка оборудования
- Добавлен (http://www.opennet.ru/opennews/art.shtml?num=28164) драйвер xhci с поддержкой USB 3.0 и хост-контроллеров xHCI (eXtensible Host Controller Interface). Представленный драйвер совместим с более старыми контроллерами USB 2.0 и USB 1.0, и способен в будущем заменить ранее присутствующие драйверы OHCI, UHCI и EHCI. В старые USB-драйверы ehci, ohci и uhci добавлена поддержка низкоскоростных пакетных режимов передачи данных;
- В подсистему эмуляции Linux добавлена поддержка video4linux API. Для использования данного API необходима установка video4linux-драйверов, таких как multimedia/pwcbsd и multimedia/webcamd;
- Добавлен драйвер aesni с поддержкой аппаратных акселераторов AES-шифрования, встроенных в новые CPU Intel;
- Добавлен драйвер aibs, поддерживающий работу с аппаратными сенсорами материнских плат ASUS. Ранее используемый драйвер acpi_aiboost удален. В драйвер coretemp добавлена поддержка Xeon 5500/5600;
- Добавлен драйвер tpm для обеспечения поддержки TPM-модулей (Trusted Platform Module).
- В драйвере uaudio решены проблемы с работой некоторых звуковых устройств с USB-интерфейсом;
- Добавлена поддержка сетевых адаптеров: Atheros AR8151/AR8152 PCIe Gigabit/Fast Ethernet, Intel 10Gb Ethernet 82599 и Broadcom BCM5718. Существенно доработан драйвер bge (http://www.freebsd.org/cgi/man.cgi?query=bge&sektion=4&manpath=FreeBSD+8.2-RELEASE) (Broadcom), Драйвер em (http://www.freebsd.org/cgi/man.cgi?query=em&sektion=4&manpath=FreeBSD+8.2-RELEASE) (Intel PRO/1000) обновлен до версии 7.1.9, а драйвер igb (http://www.freebsd.org/cgi/man.cgi?query=igb&sektion=4&manpath=FreeBSD+8.2-RELEASE) (Intel PRO/1000 PCI) обновлен до версии 2.0.7, в драйверах добавлена поддержка управлния через led (http://www.freebsd.org/cgi/man.cgi?query=led&sektion=4&manpath=FreeBSD+8.2-RELEASE)-интерфейс и обеспечен экспорт счетчиков статистики в виде MIB-объектов. В драйверах xl, nfe, rl и sis обеспечена поддержка WoL (Wake on LAN);
- Добавлена поддержка беспроводных карт: Intel Wireless WiFi Link 6000, Broadcom BCM430* и BCM431*. В драйвере bwn (http://www.freebsd.org/cgi/man.cgi?query=bwn&sektion=4&manpath=FreeBSD+8.2-RELEASE) (Broadcom BCM43xx) решены проблемы с работой WPA-аутентификации;
- Улучшение утилит, работающих на уровне пользователя:
- Добавлен инструментарий для обеспечения динамической трассировки пользовательских приложений в DTrace (поддержка DTrace появилась еще во FreeBSD 7.0, но позволяла только отслеживать процессы, протекающие внутри ядра). Например, теперь можно устанавливать точки останова, следить за распределением памяти, использованием процессорного времени, наблюдать за блокировками, отслеживать сетевые и файловые операции в приложениях, запущенных на пользовательском уровне. В частности, в рамках портирования из OpenSolaris перенесен pid-провайдер (позволяет отслеживать выполнение определенных функций в программе), реализованы USDT-проверки (вкомпилирование в пользовательскую программу отладочных вызовов), утилита plockstat (контроль блокировок в библиотеке pthread), утилита dtruss (аналог ktrace для трассировки системных вызовов), произведена интеграция поддержки Trace в порты с MySQL и PostgreSQL;
- В утилиту du добавлена опция "-t лимит", позволяющая отобразить только элементы превышающие указанный порог. Если в параметре указано отрицательное значение, то будут выведены элементы меньше указанного порога;
- В fdisk добавлена поддержка дисковых разделов, созданных с использованием GEOM-классов geli или gjournal;
- В GEOM-класс gpart, используемый для управления дисковыми разделами, добавлена поддержка команды для изменения размера раздела - "gpart resize". Другим улучшением является поддержки команды "gpart recover", предназначенной для исправления повреждённых мета-данных таблицы GPT (Guid Partition Table). Кроме того, добавлены команды "gpart backup" и "gpart restore" для ручного сохранения и восстановления таблицы разделов;
- В ifconfig усилена проверка указания некорректных подсетей, например, например, недопускается использование 10.0.0.1/10.0.0.1 (ранее воспринималось как 10.0.0.1/10);
- В библиотеку libarchive и утилиту tar добавлена поддержка формата сжатия LZMA. В утилите tar появилась возможность указания размера блока до 8192 (4 Мб) через опцию "-b blocksize"
- В утилите newsyslog добавлена поддержка специального имени "< include >" для включения в newsyslog.conf содержимого внешнего файла. Также в newsyslog добавлена опция "-S pidfile", позволяющая указать нестандартный путь к PID-файлу syslogd;
- В утилите pmcstat обеспечена возможность использования файла или сетевого сокета как источника данных для формирования top-а. Например, опция "-O filename" позволяет сохранить лог в файл и затем отобразить его в виде топа при помощи "-R filename". Вместо имени файла модно указать "хост:порт", что можно использовать для формирования отображения топа на другой машине;
- В powerd добавлены опции "-m freq" и "-M freq" для указания минимальной и максимальной часты;
- В утилите sleep при поступлении сигнала SIGINFO теперь выводится информация сколько прошло времени с момента запуска и сколько осталось до конца;
- Программы tftp и tftpd усовершенствованы в плане более полной поддержки RFC 1350, 2347, 2348, 2349 и 3617;
- В watchdogd добавлена установка флага MADV_PROTECT, защищающего процесс от принудительного завершения в случае исчерпания памяти в системе;
- Добавлены новые периодические скрипты (/etc/periodic): скрипт для выполнения операции "zfs scrub" и скрипт для выявления файлов установленных портов для которых несовпадают контрольные суммы;
- Ядро
- Во фреймворк opencrypto добавлена поддержка режима шифрования XTS-AES, определенного в спецификации IEEE Std. 1619-2007;
- Расширены возможности встроенного отладчика ddb: Добавлена поддержка определения задержки при выполнении команд reset и reboot, что предоставляет администратору возможность входа в отладчик и выполнения textdump, в случае возникновения краха ядра; Добавлена поддержка команды "show cdev", выводящая список всех созданных cdev с указанием devfs-узла и cdev-адреса;
- Ядро GENERIC по умолчанию собирается с опциями KDB и KDB_TRACE. Добавлена возможность отображения трассировки стека при возникновении краха, через использование подсистемы stack (http://www.freebsd.org/cgi/man.cgi?query=stack&sektion=9&manpath=FreeBSD+8.2-RELEASE) без привлечения отладчика;
- Следующий набор sysctl теперь можно изменять на этапе работы загрузчика (через /boot/loader.conf): vm.kmem_size, vm.kmem_size_max, vm.kmem_size_min, debug.kdb.stop_cpus, debug.trace_on_panic и kern.sync_on_panic;
- Добавлены новые sysctl-переменные: vm.kmem_map_size для указания текущего размера kmem map; vm.kmem_map_free с размером наибольшей непрерывной свободной области в kmem map; vfs.ncsizefactor c коэффициентом размерности namecache; vfs.ncnegfactor с коэффициентом числа отирцательных элементов в namecache;
- В менеджере памяти MemGuard улучшены механизмы определения фактов обращения к давно освобожденной памяти (use-after-free);
- Улучшена поддержка работы amd64-сборки FreeBSD в качестве гостевой системы Xen, выполняемой в режиме аппаратной виртуализации (HVM);
- На платформе amd64 размер KVA теперь выставляется равным или большим размеру ОЗУ, что позволяет избежать краха ядра с выводом ошибки "kmem_map too small", возникающего чаще всего при использовании ZFS;
- Улучшена поддержка функций ACPI по переходу в спящий режим. Добавлены новые sysctl hw.acpi.handle_reboot, hw.acpi.install_interface и hw.acpi.remove_interface. Улучшено определение топологии для процессоров Intel. Добавлена поддержка использования XMM-регистров Intel SSE (Streaming SIMD Extensions);
- Загрузчик
- В загрузчике gptboot обеспечено полное следование спецификации GPT GUID Partition Table), включая поддержку использования резервных заголовков и таблиц в случае несовпадения контрольных сумм. Новые атрибуты можно использовать для настройки разделов, с которых gptboot попытается загрузиться один раз и в случае сбоя откатится к предыдущим настройкам;
- В pxeboot вместо NFSv2 по умолчанию теперь используется NFSv3;
- Порты, инсталлятор и дополнительные приложения:
- В утилите pkg_create обеспечена поддержка метода сжатия LZMA (xz), но по умолчанию по прежнему используется bzip2;
- Изменены используемые по умолчанию размеры для дисковых разделов, создаваемых в инсталляторе: 1 Гб для корня, 4 Гб для /var и 1 Гб для /tmp;
- При отсутствии в системе графической карты, инсталлятор теперь пытается запустить getty на последовательном порту;
- В портах версия поддерживаемого GNOME-окружения (x11/gnome2) обновлена до 2.32.1, а KDE (x11/kde4) до версии 4.5.5;
- Обновлены поставляемые в базовой системе внешние программы:
- ACPI-CA 20101013;
- ee 1.5.2;
- ISC BIND 9.6-ESV-R3;
- netcat 4.8;
- OpenSSL 0.9.8q;
- xz 5.0.0.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29683)
[size="3"]Вышла новая версия десктоп-ориентированной системы PC-BSD 8.2 [/size]Вышел (http://pcbsd.org/) релиз десктоп-ориентированной операционной системы PC-BSD 8.2 (http://www.pcbsd.org/content/view/200/11/), основанной на кодовой базе FreeBSD 8.2 (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__15127) и KDE 4.5.5. В новой версии PC-BSD расширена поддержка беспроводных и сетевых адаптеров, в инсталлятор добавлена поддержка выбора файловой системы и использования шифрования в процессе автоматического разбиения дисковых разделов, обеспечена возможность переключения между MBR и GPT таблицами разделов, обновлен интерфейс для настройки параметров экрана, улучшен код автоконфигурирования оборудования. Особенности PC-BSD:
- Удобный графический инсталлятор (http://www.opennet.ru/opennews/art.shtml?num=27131);
- Установка на выбор PC-BSD или FreeBSD;
- Поддержка live-загрузки для ознакомления;
- Установка на выбор дополнительных пакетов PBI, идущих в комплекте;
- Поддержка создания и установки на ZFS раздел (поддерживается также режим шифрования основного раздела, пароль вводится в процессе загрузки в текстовом режиме);
- Возможность обновления предыдущей версии PC-BSD на актуальную;
- Простой но эффективный xorg-конфигуратор, работает в графическом режиме;
- Поддержка установки пакетов через один клик с сайта pbidir.com (http://pbidir.com/) и установка стандартных FreeBSD-портов;
- Полуавтоматические обновления, как системы, так и отдельных пакетов (в рамках релиза 8.1 всего было выпущено 8 обновлений);
- Система управления изолированными jail-окружениями;
- Поддержка PBI-пакетов ("толстые" пакеты, включающие в себя все зависимости) - особый вид установки программ, который ценою некоторого увеличения занимаемого места гарантирует работоспособность вне зависимости от состояния системы и портов;
- Поддержка установки 32-битных PBI в 64-битную систему (полезно для портов, у которых по тем или иным причинам стоит ONLY_ARCH=i386).
В качестве минимальной аппаратной конфигурации, на которой может работать PC-BSD, называется CPU Pentium II с 256 Мб ОЗУ, но для комфортной работы рекомендуется система уровня Pentium 4 с 1 Гб ОЗУ (для прошлого выпуска требования к размеру ОЗУ были (http://www.pcbsd.org/content/view/171/11/) в два раза ниже). Система поддерживает как установку на жесткий диск, так и работу напрямую с установочного диска (LiveDVD). Из входящих в состав приложений (ftp://ftp.pcbsd.org/pub/mirror/8.2/i386/PCBSD8.2-x86.pkgs) можно отметить: kde 4.5.5, xorg 7.5, fluxbox 1.1.1_2, samba 3.4.9, qt 4.7.1, linux_base-f10-10_3, Mesa 7.4.4, fusefs-ntfs 2010.10.2. Из доступных на диске, но необязательных PBI, можно выделить: FireFox 3.6.13, K3B 2.0.1, OpenOffice 3.2.1, Pidgin 2.7.7, Thunderbird 3.1.7, VLC 1.1.5. Для старых и современных видеокарт Nvidia включено несколько наборов проприетарных драйверов (260.19.29, 173.14.25, 96.43.16).
Одновременно отмечается, что предыдущая версия PC-BSD 7.1.1 переведена в разряд устаревшей и больше не поддерживается, а версия PC-BSD 9.0 находится в этапе альфа-тестирования (ftp://ftp.pcbsd.org/pub/snapshots/).
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29662)
[size="3"]В дерево исходных текстов FreeBSD интегрирована поддержка ZFSv28 [/size]В состав FreeBSD 9-CURRENT интегрирована (http://lists.freebsd.org/pipermail/freebsd-current/2011-February/023132.html) поддержка 28 версии файловой системы ZFS. Для пользователей ранее доступных версий ZFS v13-v15 обеспечена поддержка автоматического преобразования формата разделов до версии ZFS v28. Особенности ZFS v28:
- Поддержка (http://www.opennet.ru/opennews/art.shtml?num=24092) автоматического распознавания и объединения дубликатов данных. Если в нескольких файлах присутствуют аналогичные блоки данных, то они будут сохранены на физический носитель только один раз, что позволит существенно уменьшить потребление дискового пространства и увеличить производительность - вместо копирования блоков будет лишь изменена запись в соответствующей таблице.
- Поддержка RAIDZ3 (http://dtrace.org/blogs/ahl/2009/07/21/triple-parity-raid-z/), варианта RAIDZ (http://blogs.sun.com/bonwick/ru/entry/raid_z_russian) с хранением трех копий отвечающих за обеспечение целостности структур, что позволяет значительно повысить надежность хранения по сравнению с RAID-режимами с двойным дублированием - RAID-6 и RAIDZ2. Например, RAIDZ3 обеспечивает целостность данных при одновременном выходе из стоя сразу трех дисков и позволяет повысить надежность хранения во время перестроения массива после замены диска;
- Поддержка утилиты "zfs diff (http://arc.opensolaris.org/caselog/PSARC/2010/105/20100328_tim.haley)", позволяющей просмотреть список изменений между двумя ZFS-снапшотами или между снапшотом и текущим состоянием ФС. Утилита отображает факты изменения, переименования, создания и удаления файлов и директорий;
- Поддержка команды zpool split (http://arc.opensolaris.org/caselog/PSARC/2009/511/20090924_mark.musante), предназначенной для разбиения отзеркалированного zpool-раздела на несколько раздельных пулов. Данная возможность например позволяет упростить клонирование данных, когда к зеркалу добавляются несколько дисков, производится синхронизация и диски исключаются из пула, после чего диски содержат полную копию данных и могут быть использованы для загрузки аналогичных серверов. С использованием zpool split можно легко исключить диск из пула и затем создать на его основе новый пул;
- Поддержка (http://arc.opensolaris.org/caselog/PSARC/2009/297/20090511_chris.kirby) ведения счетчика ссылок на снапшот, для более гибкого управления удалением неиспользуемых снапшотов. Например, увеличив счетчик пользователь может пометить, что снапшот используется и его нельзя удалять;
- Поддержка команды "zpool import -F", позволяющей перемотать поврежденный пул к состоянию, соответствующему более ранней группе транзакций;
- Возможность импорта пула в режиме только для чтения;
- Проведение работы по оптимизации производительности и устранение ошибок.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29738)
[size="3"]Разработчики FreeBSD продолжат развитие ZFS без помощи Oracle [/size]В интервью (http://itmanagement.earthweb.com/osrc/article.php/3926181/FreeBSD-82-Expands-ZFS-Support----Without-Oracle.htm) изданию Datamation технический директор компании iXsystems, развивающей операционную систему PC-BSD и способствующей улучшению поддержки ZFS во FreeBSD, сообщил, что разработчики FreeBSD намерены продолжить развитие файловой системы ZFS без помощи Oracle.
Напомним, что в соответствии с новой политикой (http://www.opennet.ru/opennews/art.shtml?num=27622) Oracle код подсистем Solaris будет открыт только после выхода финальных Enterprise-версии Solaris. Тот факт, что портирование новой версии ZFS может быть начато только после выхода релиза Solaris 11, который намечен на конец 2011 года, вынудил разработчиков искать альтернативные пути, среди которых наиболее интересным выглядит вариант развития собственной ветки ZFS.
По утверждению представителей iXsystems уже удалось сформировать группу заинтересованных компаний и независимых разработчиков, среди которых присутствуют люди, ранее принимавшие участие в разработке OpenSolaris. По мнению технического директора iXsystems не за горами время, когда FreeBSD станет платформой де факто для ZFS, для чего уже имеются все необходимые предпосылки.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29776)
[size="3"]Релиз GhostBSD 2.0, пользовательского дистрибутива на базе FreeBSD и GNOME [/size]Вышел (http://ghostbsd.org/480/ghostbsd-2-0-is-released/) релиз десктоп-ориентированного Live-дистрибутива GhostBSD 2.0 (http://ghostbsd.org/), построенного на базе FreeBSD 8.2 (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__15127) и использующего графическое окружение GNOME 2.32 (http://linuxforum.kz/index.php?/topic/4196-gnome-232/page__view__findpost__p__12269). Несмотря на поставку в виде LiveDVD, дистрибутив поддерживает установку на жесткий диск (инсталлятор написан на языке Python). Для установки и удаления дополнительных программ в состав дистрибутива входит GTK-оболочка к pkg_add - Bxpkg (http://bxpkg.bsdroot.lv/), пакеты устанавливаются из стандартного репозитория бинарных пакетов FreeBSD. Размер загрузочного iso-образа (http://downloads.sourceforge.net/ghostbsdproject/GhostBSD-2.0-i386.iso) 1.1 Гб.
(http://www.opennet.ru/opennews/pics_base/29901_1300094971.jpg) (http://ghostbsd.org/wp-content/uploads/2011/02/Ghostbsd-screenshot1.png)
В новой версии осуществлен переход на кодовую базу версий FreeBSD 8.2 и GNOME 2.32, добавлена поддержка автоматического монтирования USB-накопителей, для работы live-образа задействова новая файловая система. В состав входят такие программы, как Rhythmbox 0.12.8_3, Pidgin 2.7.7, Abiword 2.8.4, Gnumeric 1.10.12, Firefox 3.6 и Thunderbird 3.0.11.
(http://www.opennet.ru/opennews/pics_base/29901_1300095060.jpg) (http://ghostbsd.org/wp-content/uploads/2011/01/Screenshot-1.png)
opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29901)
[size="3"]Во FreeBSD-CURRENT завершён переход на bsdinstall в качестве инсталлятора по умолчанию [/size]Натан Уайтхорн (Nathan Whitehorn) сообщил (http://lists.freebsd.org/pipermail/freebsd-arch/2011-March/011170.html) о внесении изменений в инфраструктуру сборки релизов FreeBSD, делающих bsdinstall (http://wiki.freebsd.org/BSDInstall) инсталлятором по умолчанию. Новый инсталлятор обладает полным функционалом, за исключением поддержки ZFS в редакторе разделов. Что касается sysinstall, то его поддержка сохранится в течении всего времени жизни ветки 9.x, но уже в качестве альтернативного инсталлятора. Тестовый установочный образ c BSDInstall будет подготовлен в ближайшее время.
BSDInstall отличается модульностью, простотой подключения расширений, поддержкой управляющих установкой скриптов и ускорением выполнения процесса инсталляции. По своей сути BSDInstall представляет собой shell-скрипт, в определенной последовательности вызывающий дополнительные скрипты или приложения. Любое звено установки может быть легко модифицировано или заменено на альтернативную реализацию (например, вместо вызова редактора дисковых разделов можно указать скрипт, который вернет определенную последовательность gpart-команд). В процессе установки, работа инсталлятора сводится к распаковке трех архивов: образа с базовой системы (world.tgz), ядра (kernel.tgz) и коллекции портов (ports.tgz), после чего могут быть запущены постустановочные конфигураторы или скопированы типовые файлы конфигурации (fstab, rc.conf, resolv.conf).
В настоящее время BSDInstall может использоваться для архитектур i386, amd64, sparc64, powerpc, powerpc64 и PC98. Из возможностей можно отметить:
- Возможность установки на GPT-диски;
- Поддержка установки, охватывающей несколько дисков;
- Поддержка установки внутрь jail-окружений;
- Поддержка упрощенного PXE-режима установки;
- Дружественность к системам виртуализации, например, можно произвести установку в дисковый образ из работающей системы;
- Значительное ускорение процесса установки системы;
- Гибкое управление установкой через написание скриптов;
- Возможность простой реализации мелких настроек;
- Установочный CD выступает в роли LiveCD.
- Режим настройки параметров беспроводной сети;
- Поддержка установки на ZFS-разделы (реализация функции не завершена).
opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29918)
[size="3"]Во FreeBSD-CURRENT интегрирована поддержка Infiniband-стека OFED [/size]Джеф Роберсон (Jeff Roberson), добавил (http://lists.freebsd.org/pipermail/svn-src-all/2011-March/036785.html) в дерево исходных текстов FreeBSD-CURRENT портированую версию стека OFED 1.5.3 (http://www.openfabrics.org/jofa/index.php?option=com_content&view=article&id=3&Itemid=119) (OpenFabrics Enterprise Distribution), разработанного организацией OpenFabrics Alliance (http://www.openfabrics.org/jofa/). В состав OFED входит набор драйверов и сопутствующие утилиты для обеспечения работы во FreeBSD Infiniband (http://ru.wikipedia.org/wiki/InfiniBand)-контроллеров, используемых для организации высокоскоростных соединений серверов (от 2.5 до 120 гигабит/с) и организации поддержки технологии RDMA (Remote Direct Memory Access), предназначенной для обеспечения прямого доступа к памяти другой машины (как и в DMA обращение производится напрямую без участия ядра ОС и CPU).
Для сборки системы с компонентами OFED в /etc/make.conf необходимо указать WITH_OFED, так как по умолчанию система собирается без поддержки OFED.
opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=29977)
[size="3"]Во FreeBSD добавлена новая реализация программного RAID - graid [/size] Александр Мотин добавил (http://svn.freebsd.org/viewvc/base?view=revision&revision=219974) в дерево исходных текстов FreeBSD-CURRENT новую реализацию программного RAID - graid (http://svn.freebsd.org/viewvc/base/projects/graid/), призванную заменить устаревшую систему управления программными RAID-массивами ataraid (http://www.freebsd.org/cgi/man.cgi?query=ataraid&apropos=0&sektion=4&manpath=FreeBSD+8.2-RELEASE&format=html). Новая реализация основана на использовании инфраструктуры GEOM (http://www.freebsd.org/cgi/man.cgi?query=geom&apropos=0&sektion=4&manpath=FreeBSD+8.2-RELEASE&format=html) и построена в соответствии с принципами модульной архитектуры, что позволило разделить систему на базовый модуль, модули для обработки преобразования данных (RAID-уровни) и модули для определения формата хранения мета-данных на диске.
В отличии от ataraid (http://www.freebsd.org/cgi/man.cgi?query=ataraid&apropos=0&sektion=4&manpath=FreeBSD+8.2-RELEASE&format=html), новая реализация не зависит от устаревшей подсистемы ata (http://www.freebsd.org/cgi/man.cgi?query=ata&apropos=0&sektion=4&manpath=FreeBSD+8.2-RELEASE&format=html) и может быть использована с любыми драйверами дисковой подсистемы, включая новые, основанные на CAM (http://www.freebsd.org/cgi/man.cgi?query=CAM&apropos=0&sektion=4&manpath=FreeBSD+8.2-RELEASE&format=html) (ahci (http://www.freebsd.org/cgi/man.cgi?query=ahci&apropos=0&sektion=4&manpath=FreeBSD+8.2-RELEASE&format=html), siis (http://www.freebsd.org/cgi/man.cgi?query=siis&apropos=0&sektion=4&manpath=FreeBSD+8.2-RELEASE&format=html), mvs (http://www.freebsd.org/cgi/man.cgi?query=mvs&apropos=0&sektion=4&manpath=FreeBSD+9-current&format=html), ata (http://www.freebsd.org/cgi/man.cgi?query=ata&apropos=0&sektion=4&manpath=FreeBSD+8.2-RELEASE&format=html) с использованием "options ATA_CAM"). Поддерживаются популярные форматы метаданных Intel, JMicron, NVIDIA, Promise (используется AMD/ATI) и SiliconImage. Реализованы следующие RAID-уровни: RAID0, RAID1, RAID1E, RAID10, SINGLE, CONCAT.
Из поддерживаемых операций управления RAID-разделами можно отметить: чтение, запись, создание, удаление, извлечение и добавление дисков; перестроение массива; определение "грязного" выключения и ресинхронизация; восстановление плохих секторов и поддержка запасных дисков (hot-spare). Среди приоритетных планов по улучшению graid названо (http://lists.freebsd.org/pipermail/freebsd-current/2011-March/023677.html) добавление поддержки дополнительных форматов метаданных и реализация уровня RAID5. Разработка выполнена при поддержке компаний Cisco Systems и iXsystems.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=30030)
[size="3"]Отчет о состоянии развития FreeBSD за первый квартал 2011 года [/size]Опубликован (http://www.freebsd.org/news/status/report-2011-01-2011-03.html) отчет о развитии проекта FreeBSD с января по март 2011 года. В первые два месяца 2011 года основные усилия разработчиков были направлены на подготовку релизов FreeBSD 8.2 и 7.4 (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__15127), которые были выпущены в конце февраля. В настоящее время участники проекта начали интенсивную работу по формированию следующей значительной ветки - FreeBSD 9.0.
Основные достижения:
- Сетевая инфраструктура
- Продолжается развитие проекта DIFFUSE (http://caia.swin.edu.au/urp/diffuse/) (DIstributed Firewall and Flow-shaper Using Statistical Evidence), добавляющего в пакетный фильтр IPFW функции классификации IP-трафика на основании статистических данных. Система позволяет для отдельных потоков трафика накапливать и учитывать в IPFW такую статистику, как размер пакетов или время между поступлением пакетов, организуя привязку потоков к определенным классам трафика при помощи техник машинного обучения. Патчи с реализацией DIFFUSE доступны для FreeBSD-CURRENT. В феврале была выпущена версия DIFFUSE v0.2.2 из новшеств которой отмечено добавление утилиты для построения классификаторов моделей. Создан модуль и модель для классификации трафика Skype. В ближайшее время разработчики планируют выпустить релиз DIFFUSE v0.3.
- Полностью доведена до конца работа по интеграции в ядро FreeBSD пяти новых модулей с реализацией различных алгоритмов для контроля перегрузки (Congestion Control) в TCP: HTCP, CUBIC, Vegas, HD и CHD. Готов для интеграции в ядро FreeBSD фреймворк Khelp, представляющий интерфейс для создания модулей ядра, на лету обеспечивающих выполнение определенных сервисных функций. Также включения в ядро ожидает Khelp-модуль ERTT (Enhanced Round Trip Time), позволяющий более точно измерять параметры TCP потока для использования в алгоритмах управления контроля перегрузки TCP. Уже подготовлен тестовый вариант патча (http://people.freebsd.org/%7Elstewart/patches/5cc/modularcc_mfc_8.x.r219091.patch), в котором осуществлено портировние проделанной для FreeBSD-CURRENT работы в 8-STABLE (планируется интегрировать данный патч во FreeBSD 8.3);
- Системы хранения и файловые системы
- В коде поддержки файловой системы ext2fs реализована поддержка перераспределения блоков (reallocblks), примерно так как это уже реализовано в штатной FFS. В дальнейшем в ext2fs планируется добавить поддержку htree-индекса директорий;
- Во FreeBSD 9-CURRENT интегрирована (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__16085) новая реализация программного RAID - graid, призванная заменить устаревшую систему управления программными RAID-массивами ataraid. Новая реализация основана на использовании инфраструктуры GEOM и построена в соответствии с принципами модульной архитектуры, что позволило разделить систему на базовый модуль, модули для обработки преобразования данных (RAID-уровни) и модули для определения формата хранения мета-данных на диске. В отличии от ataraid, graid не зависит от устаревшей подсистемы ata и может быть использован с любыми драйверами дисковой подсистемы, включая новые, основанные на CAM (ahci, siis, mvs, ata с использованием "options ATA_CAM"). Поддерживаются популярные форматы метаданных Intel, JMicron, NVIDIA, Promise (используется AMD/ATI) и SiliconImage. Реализованы следующие RAID-уровни: RAID0, RAID1, RAID1E, RAID10, SINGLE, CONCAT. Среди приоритетных планов по улучшению graid названо добавление поддержки дополнительных форматов метаданных и реализация уровня RAID5;
- Отмечен прогресс в развитии системы репликации устройств хранения данных (HAST), которая позволяет использовать FreeBSD для создания высоконадежных конфигураций, в которых данные синхронизированы по всем узлам кластера. HAST реализован в виде GEOM-класса, обеспечивающего синхронную репликацию блочных устройств поверх TCP/IP сетей, независимо от типа накопителя и файловой системы. HAST предусматривает возможность быстрого восстановления после сбоя, причем, при выходе из строя первичного master-узла, его функции могут быть делегированы slave-узлу. После проверки и монтирования UFS раздела или импорта ZFS пула на поврежденном узле, система автоматически синхронизирует внесенные за время восстановления изменения и продолжит работу без потери данных. С момента прошлого отчета в HAST добавлена поддержка сжатия передаваемых по сети данных, опциональная возможность вычисления и проверки контрольных сумм для передаваемых данных, поддержка изоляции (sandboxing) вторичных узлов и hastctl, поддержка дополнительной защиты (Chroot+setuid+setgid) для первичного узла, возможность выбора IP для инициирования соединений. В HandBook добавлена секция (http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/disks-hast.html), посвященная настройке HAST;
- Во FreeBSD-HEAD решены все известные проблемы (в рассмотрении остается несколько сообщений о проблемах с производительностью) с работой механизма журналирования Soft Updates для файловой системы UFS. Данное нововведение позволяет отказаться от необходимости запуска fsck после "грязного" размонтирования файловой системы и достичь очень высокой скорости восстановления состояния файловой системы при очень малом объеме журнала, при этом система полностью обратно совместима с нежурналируемым вариантом softupdates. Во FreeBSD 9 новая система будет использована по умолчанию, также её можно будет использовать и для корневой ФС;
- Продолжена (http://web.mit.edu/freebsd/openafs/openafs.shar) работа по доведению до рабочего состояния поддержки работы FreeBSD в качестве клиента распределенной сетевой файловой системы OpenAFS (http://openafs.org/). Ожидается, что порт версии OpenAFS 1.6 будет достаточно стабилен для повседневного использования;
- В дерево исходных текстов FreeBSD-CURRENT интегрирована поддержка ZFSv28. Обзор отличий ZFSv28 от ранее доступных версий ZFS v13-v15 можно посмотреть здесь (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__15329);
- Изолированные окружения, безопасность и ограничения ресурсов
- Продолжается работа по адаптации (http://www.opennet.ru/opennews/art.shtml?num=28994) FreeBSD для функционирования в качестве гостевой ОС для cloud-окружений Amazon EC2. В дополнение к ранее реализованному запуску в окружениях "t1.micro", добавлена (http://www.daemonology.net/freebsd-on-ec2/) поддержка окружений "cc1.4xlarge". При работе FreeBSD 8.2-RELEASE пока наблюдаются проблемы, связанные с ограничением micro-окружения размера ОЗУ (600 Мб), но FreeBSD 9.0 ведет себя уже достаточно стабильно. Среди планов на будущее, расширение поддерживаемых EC2-окружений, переработка системы блокировок в head/sys/i386/xen/pmap.c для устранения эффектов гонки, повышение стабильности 9.0-CURRENT при работе в режиме паравиртуализации, решение некоторых проблем с планировкой задач и выделения квантов времени.
- Во FreeBSD-CURRENT интегрирована большая часть кода проекта RCTL по реализации контейнеров ресурсов и возможности установки индивидуальных ограничений ресурсов в привязке к конкретным Jail-окружениям. Разработан общий фреймворк для управления ресурсами, обеспечена поддержка лимитирования различных типов ресурсов, таких как память и загрузка CPU. Для активации системы ядро нужно пересобрать с опциями "options RACCT" и "options RCTL", управление производится утилитой rctl(8). До релиза 9.0-RELEASE остается решить две проблемы: переработать систему аккаунтинга и органичения ресурсов CPU и обеспечить возможность задания правил независимо от наличия Jail (сейчас правила могут быть применены только к уже созданным Jail);
- Поддержка оборудования
- Улучшена (http://people.freebsd.org/%7Enox/dvb/) работа демона Webcamd (http://www.freshports.org/multimedia/webcamd/), предназначенного для организации работы с web-камерами, работающего на пользовательском уровне и созданого на основе портирования Video4Linux-драйверов. В настоящий момент поддерживается около 1500 различных web-камер, DVB и пультов удаленного управления с интерфейсом USB. За отчетный период добавлена трансляции специфичных для Linux ioctl DVB и V4L2, что позволило обеспечить в таких программах, как SageTV, Skype и Flash поддержку работы с тюнерами DVB/ATSC и web-камерами. В будущем, связанный с поддержкой DVB код планируется вынести в отдельный порт, так как в базовую систему интегрировать все наработки мешает поставка некоторых компонентов под лицензией LGPL (в системе будет поставляться враппер linux_dvbwrapper.ko). Также будет продолжена работа по реализации новых ioctl, что позволит задействовать такие функции как акселерация декодирования MPEG2-потоков для аналоговых или DVB-тюнеров;
- Сформирован список (http://wiki.freebsd.org/WebcamCompat) совместимых с FreeBSD web-камер, DVB-устройств и пультов удаленного управления;
- Продолжается работа по обеспечению поддержки ARM-платформы OMAP3. Эмулятор qemu-omap3 пока не портирован для FreeBSD, поэтому приходится запускать эмулятор в Linux. Из незавершенных задач отмечается создание драйверов для процессоров OMAP3;
- В FreeBSD/arm обеспечена поддержка интегрированного RAID-контроллера (RAID-on-Chip) Marvell 88RC8180, основанного на процессорном ядре Feroceon 88FR331 (ARMv5TE), а также более нового контроллера Marvel 88RC9580, основанного на процессорном ядре Sheeva 88SV581 CPU(ARMv6). Поддержка включает возможность загрузки с использованием U-Boot, использование L1 и L2 кэша, контроллера прерываний, таймеров, шины PCI Express, Ethernet-контроллера. Остается довести код до финального вида, почистить и интегрировать во FreeBSD-HEAD;
- Добавление в FreeBSD/powerpc поддержки процессоров Freescale QorIQ, идущих на смену семейству PowerQUICC (MPC85xx). В настоящий момент обеспечена поддержка чипов QorIQ P2020, возможность загрузки с использованием U-Boot, поддержка L1 и L2 кэшей, последовательного порта (UART), контроллера прерываний, Ethernet (в режимах TSEC, SGMII), I2C, EHCI-контроллера, Security Engine (SEC) 3.1, Enhanced SDHC и Dual-core (SMP) систем.
- Ведется работа по улучшению поддержки MIPS-процессоров Octeon интеграции наработок с кодом поддержки других процессоров MIPS;
- Система
- Во FreeBSD-CURRENT завершён переход (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__15785) на bsdinstall в качестве инсталлятора по умолчанию. BSDInstall отличается модульностью, простотой подключения расширений, поддержкой управляющих установкой скриптов и ускорением выполнения процесса инсталляции. По своей сути BSDInstall представляет собой shell-скрипт, в определенной последовательности вызывающий дополнительные скрипты или приложения. Любое звено установки может быть легко модифицировано или заменено на альтернативную реализацию (например, вместо вызова редактора дисковых разделов можно указать скрипт, который вернет определенную последовательность gpart-команд). В процессе установки, работа инсталлятора сводится к распаковке трех архивов: образа с базовой системы (world.tgz), ядра (kernel.tgz) и коллекции портов (ports.tgz), после чего могут быть запущены постустановочные конфигураторы или скопированы типовые файлы конфигурации (fstab, rc.conf, resolv.conf).
Базовые возможности:- Возможность установки на GPT-диски;
- Поддержка установки, охватывающей несколько дисков;
- Поддержка установки внутрь jail-окружений;
- Поддержка упрощенного PXE-режима установки;
- Дружественность к системам виртуализации, например, можно произвести установку в дисковый образ из работающей системы;
- Значительное ускорение процесса установки системы;
- Гибкое управление установкой через написание скриптов;
- Возможность простой реализации мелких настроек;
- Установочный CD выступает в роли LiveCD.
- Режим настройки параметров беспроводной сети;
- Поддержка установки на ZFS-разделы (реализация функции не завершена).
- Старый порт (linux_base) с набором компонентов для работы Linux-эмуляции признан (http://www.leidinger.net/blog/2011/02/25/howto-creating-your-own-updated-linux-rpm-for-the-freebsd-linuxulator/) устаревшим, так как многие программы в нем устарели и уже не поддерживаются. Обновлен порт linux-f10-pango, выполненный на базе Fedora 10. Тем не менее в базовой системе по умолчанию продолжает использоваться linux_base, в связи с чем рассматривается вопрос на базе какого RPM-совместимого дистрибутива создать новый современный порт, подготовить его и протестировать на предмет совместимости с кодом поддержки ядра;
- Приложения и система портов
- Продолжается работа по адаптации FreeBSD для использования в качестве платформы для создания домашнего кинотеатра. Работа сосредоточена на улучшении поддержки во FreeBSD существующих медиа-центров, таких как MythTV, VDR, XBMC, Enna и me-tv. За последние месяцы отмечено расширение возможностей по дистанционному управлению мультимедиа приложениями и web-камерами (webcamd), благодаря улучшению поддержки проекта lirc. Завершено портирование и интегрировано в дерево портов (multimedia/vdr) приложение VDR (Video Disk Recorder), а также 17 сопутствующих плагинов. Из остающихся открытых задач отмечено доведение до конца поддержки lirc и удаленного управления webcamd, портирование дополнительные приложений, таких как Enna и me-tv, создание руководства по созданию домашнего кинотеатра на базе FreeBSD;
- Обновление порта (http://trillian.chruetertee.ch/chromium) web-браузера Chromium максимально приближено к выходу официальных релизов. Обеспечение поддержки платформы FreeBSD производится при тесном взаимодействии с upstream и непосредственно с Google. Проекту требуются добровольцы для работы с командой разработчиков Chromium по продвижению в основную кодовую базу патчей, разработанных при прортировании;
- В порты интегрирована версия 7.0.3 функционального языка программирования Haskell (http://wiki.freebsd.org/Haskell). Другие связанные с Haskell порты, общее число которых уже превышает 200, также обновлены до последних версий. Многие из портов пока доступны только через специальный репозиторий (https://github.com/freebsd-haskell/freebsd-haskell). Из задач на будущее отмечено создание метапорта для установки платформы Haskell, создание портов для систем Happstack и gitit;
- Группа, занимающаяся портированием десктоп-оболочки KDE и Qt для FreeBSD, сообщила об улучшении поддержки совместных ресуросов (например, битовых карт), реализации мониторинга изменения файлов через kevent, обеспечении поддержки новых сенсоров в KSysGuard. Из последних портированных систем отмечены: Qt 4.7.2, KDE 4.5.5, 4.6.1 и 4.6.2, KOffice 2.3.3, KDevelop 4.2.0 и 4.2.2;
- В утилиту для управления портами portmaster (http://dougbarton.us/portmaster-proposal.html) добавлена поддержка опции "--update-if-newer", улучшена реализация опций "--index-only", "--check-depends" и "--packages-only", файл portmaster.rc отныне может быть размещен в текущей директории скрипт;
- Число портов приблизилось к отметке 23000. Проведена работа по закрытию накопившихся PR, число незакрытых PR сохраняется на уровне тысячи. Бинарные пакеты в настоящее время собираются для архитектур amd64-6, amd64-7, amd64-8, i386-6, i386-7, i386-8, i386-9, ia64-8, sparc64-7, sparc64-8.
- На 95% доведена до конца работа по использованию по умолчанию порта www/apache22 при установке Apache (http://wiki.freebsd.org/Apache). К релизам 8.3 и 9.0 все оставшиеся недоработки будут доделаны;
- Разное
- Продолжается работа по разбору накопившихся сообщений об ошибках (PR). Группа "Bugbusting Team" пытается разобрать накопившиеся сообщения, классифицировать их через привязку тегов и передать требующие внимания PR-ы коммиттерам и мантейнерам портов;
- Близится к концу (http://www.opennet.ru/opennews/art.shtml?num=29777) подготовка релиза pfSense 2.0.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=30409)
[size="3"]В дерево портов FreeBSD добавлен инструментарий для поддержки PBI-пакетов [/size]Разработчики проекта PC-BSD сообщили (http://blog.pcbsd.org/2011/05/pbi-manager-now-available-in-freebsd-ports/) об интеграции в стандартное дерево портов FreeBSD инструментария PBI Manager (http://wiki.pcbsd.org/index.php/PBI_Manager) (/ports-mgmt/pbi-manager), позволяющего устанавливать, удалять, обновлять и создавать пакеты в формате PBI 9. Интеграция PBI Manager предоставляет пользователям FreeBSD возможность работы с PBI-пакетами без установки дистрибутива PC-BSD.
Подробнее об особенностях формата PBI, подразумевающего формирование самодостаточных пакетов, включающих все необходимые зависимости, можно прочитать в анонсе (http://www.opennet.ru/opennews/art.shtml?num=29940) переработанной версии PBI.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=30455)
[size="3"]Высокопроизводительный C++ runtime открыт под лицензией BSD [/size]Организации FreeBSD Foundation и NetBSD Foundation объявили (http://freebsdfoundation.blogspot.com/2011/05/libcxxrt-c-runtime-now-available-under.html) о достижении соглашения с компанией PathScale по открытию под лицензией BSD кода C++ runtime-библиотеки libcxxrt. Представленный код способен полностью заменить созданную в рамках проекта GNU библиотеку libsupc++ для платформ, использующих Itanium C++ ABI, включая i386 и x86-64.
В ближайшее время библиотека libcxxrt будет интегрирована в состав FreeBSD и NetBSD, в которых она заменит компоненты, ранее распространявшиеся под лицензией GPL, что позволит приблизить данные операционные системы к идеалу, предусматривающему наличие только компонентов, распространяемых под лицензией BSD.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=30651)
[size="3"]Во FreeBSD увеличен размер блока по умолчанию в файловой системе UFS2 [/size]Вчера во FreeBSD размер блока по умолчанию был увеличен (http://svn.freebsd.org/changeset/base/222319) с 16 Кб до 32 Кб, а размер фрагмента - с 2 Кб до 4 Кб. Это было сделано для улучшения производительности на дисках с размером сектора 4 Кб. Кроме того, наблюдения показали, что настройки по умолчанию увеличиваются в 2 раза каждые 10 лет (в связи с ростом размеров дисков) - предыдущее увеличение было в 2001 году. Максимально возможный размер блока на UFS2 составляет 64 Кб.
На майском саммите разработчиков FreeBSD обсуждались (http://wiki.freebsd.org/201105DevSummit/FileSystems) и другие вопросы, касающихся файловых систем и способов разбиения диска на разделы (корень, /var, /home, /usr и др.) по умолчанию. Однако, такие возможные изменения, как увеличение размера номера inode до 64 бит и поддержка микрофайлов, невозможно реализовать без изменения дискового формата, UFS3 же пока активно не разрабатывается.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=30686)
[size="3"]Началось тестирование сборок FreeBSD и PC-BSD, в которых доступен только IPv6-стек [/size]Накануне дня всемирного тестирования IPv6, который состоится (http://linuxforum.kz/index.php?/topic/4471-%D0%B4%D0%B5%D0%BD%D1%8C-%D0%B2%D1%81%D0%B5%D0%BC%D0%B8%D1%80%D0%BD%D0%BE%D0%B3%D0%BE-%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F-ipv6/) 8 июня, организация FreeBSD Foundation и компания iXsystems объявили (http://www.prweb.com/releases/2011/6/prweb8529718.htm) о создании тестовых сборок FreeBSD (http://www.freebsd.org/ipv6/) и PC-BSD (http://pcbsd.org/IPv6) в которых по умолчанию отсутствует поддержка IPv4 и которые могут работать только с IPv6. Сборки подготовлены с целью всесторонней проверки реализации IPv6-стека во FreeBSD, особенно в направлении проверки его самодостаточности и способности полноценно работать без наличия поддержки IPv4 в системе.
Следует отметить, что поддержка IPv6 во FreeBSD (http://www.freebsd.org/ipv6) уже достаточно хорошо протестирована на двойном IP-стеке, совмещающем поддержку IPv4 и IPv6, и уже восемь лет включенном по умолчанию. Сервера инфраструктуры FreeBSD обслуживают IPv6 запросы с 2007 года. Тем не менее, возможность собрать ядро FreeBSD только с IPv6 (http://www.freebsd.org/ipv6/ipv6only.html) (INET6), без IPv4 (INET), была добавлена (http://svnweb.freebsd.org/base?view=revision&revision=221353) во FreeBSD HEAD только месяц назад. Главный интерес эксперимента связан с выявлением ошибок в конечных приложениях, проблемы поддержки IPv6 в которых часто остаются незамеченными в двойном стеке, так как в случае сбоя программа без лишних предупреждений начинает использовать IPv4.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=30792)
[size="3"]Файловая система ZFSv28 портирована в ветку FreeBSD 8-STABLE [/size]В ветку FreeBSD 8-STABLE портирована (http://www.mail-archive.com/freebsd-stable@freebsd.org/msg116307.html) 28 версия файловой системы ZFS. Пользователям стабильной ветки FreeBSD 8 стали доступны такие возможности (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__15329) ZFSv28, как:
- Дедупликация (http://www.opennet.ru/opennews/art.shtml?num=24092) -- автоматическое распознавание и объединение дубликатов данных. Если в нескольких файлах присутствуют аналогичные блоки данных, то они будут сохранены на физический носитель только один раз, что позволит существенно уменьшить потребление дискового пространства и увеличить производительность - вместо копирования блоков будет лишь изменена запись в соответствующей таблице.
- RAIDZ3 - вариант RAIDZ (http://blogs.sun.com/bonwick/ru/entry/raid_z_russian) с хранением трех копий, отвечающих за обеспечение целостности структур, что позволяет значительно повысить надежность хранения по сравнению с RAID-режимами с двойным дублированием - RAID-6 и RAIDZ2. Например, RAIDZ3 обеспечивает целостность данных при одновременном выходе из стоя сразу трех дисков и позволяет повысить надежность хранения во время перестроения массива после замены диска;
- Поддержка утилиты "zfs diff (http://arc.opensolaris.org/caselog/PSARC/2010/105/20100328_tim.haley)", позволяющей просмотреть список изменений между двумя ZFS-снапшотами или между снапшотом и текущим состоянием ФС. Утилита отображает факты изменения, переименования, создания и удаления файлов и директорий;
- Поддержка команды zpool split (http://arc.opensolaris.org/caselog/PSARC/2009/511/20090924_mark.musante), предназначенной для разбиения отзеркалированного zpool-раздела на несколько раздельных пулов. Данная возможность например позволяет упростить клонирование данных, когда к зеркалу добавляются несколько дисков, производится синхронизация и диски исключаются из пула, после чего диски содержат полную копию данных и могут быть использованы для загрузки аналогичных серверов. С использованием zpool split можно легко исключить диск из пула и затем создать на его основе новый пул;
- Поддержка (http://arc.opensolaris.org/caselog/PSARC/2009/297/20090511_chris.kirby) ведения счетчика ссылок на снапшот, для более гибкого управления удалением неиспользуемых снапшотов. Например, увеличив счетчик пользователь может пометить, что снапшот используется и его нельзя удалять;
- Поддержка команды "zpool import -F", позволяющей перемотать поврежденный пул к состоянию, соответствующему более ранней группе транзакций, что позволяет с высокой вероятностью восстановить повреждённый пул из состояния FAILED;
- Возможность импорта пула в режиме только для чтения;
- Оптимизация производительности и устранение ошибок.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=30797)
[size="3"]В OpenSSH 3.5p1 из состава FreeBSD 4.x найдена удаленная root-уязвимость [/size]В списке рассылки full-disclosure представлена (http://lists.grok.org.uk/pipermail/full-disclosure/attachments/20110630/fcd34bf6/attachment.obj) критическая уязвимость в используемой во FreeBSD 4.x версии OpenSSH, позволяющая удаленному злоумышленнику без аутентификации получить root-доступ к системе. Уже создан и публично опубликован эксплоит, позволяющий получить привилегированный shell на подверженных уязвимости серверах.
Уязвимость проявляется для протоколов SSH1 и SSH2. Проблема вызвана ошибкой в реализации аутентификации с использованием PAM на платформе FreeBSD. Проблема присутствует в функции "pam_thread()" из файла auth2-pam-freebsd.c. Начиная с версии FreeBSD 5.2 содержащий уязвимость файл auth2-pam-freebsd.c (http://www.freebsd.org/cgi/cvsweb.cgi/src/crypto/openssh/Attic/auth2-pam-freebsd.c) был заменен новой реализацией, т.е. с большой долей вероятности можно утверждать, что новые версии FreeBSD проблеме не подвержены. 100% уверенности пока нет, так как точно не ясно, не перекочевал ли проблемный код в какие-либо библиотеки PAM или сторонние реализации OpenSSH, используемые и поныне. Детальный аудит ещё предстоит провести.
Ошибка проявляется при передаче слишком длинного имени пользователя. Простой способ проверить наличие уязвимости - попытаться обратиться к своему серверу, указав логин порядка 100 символов. Например:
[color="#461b7e"]
ssh -l`perl -e 'print "A" x 100'` хост
[/color]
, в случае проблемы, можно наблюдать крах рабочего процесса sshd и вывод в лог /var/log/messages сообщения [color="#461b7e"]
/kernel: pid N (sshd), uid 0: exited on signal 11 (core dumped)
[/color]
Изучение core-дампа показало, что проблема подвержена эксплуатации, так как атакующий может контролировать указатель перехода и позиционировать его на shellcode. Прототип рабочего эксплоита был успешно создан путем небольшой модификации кода ssh-клиента из пакета OpenSSH 5.8p2.
[color="#461b7e"]
$ ./ssh -1 192.168.1.1
$ nc -v -l -p 10000
listening on [any] 10000 ...
192.168.1.1: inverse host lookup failed: Unknown host
connect to [192.168.1.2] from (UNKNOWN) [192.168.1.1] 1038
uname -a
FreeBSD h4x.localdomain 4.11-RELEASE FreeBSD 4.11-RELEASE #0: Fri Jan 21 17:21:22 GMT 2005 /GENERIC i386
id
uid=0(root) gid=0(wheel) groups=0(wheel)
[/color]Поддержка ветки FreeBSD 4.x прекращена ещё в 2007 году, но данная версия все еще используется на некоторых серверах в сети. Пользователям версии FreeBSD 4.x рекомендуется срочно обновить OpenSSH до более новой версии. В качестве обходного пути решения проблемы следует разрешить через пакетный фильтр доступ по SSH только для доверенных хостов и отключить (http://lists.freebsd.org/pipermail/freebsd-security/2011-June/005945.html) поддержку PAM, указав в настройках "ChallengeResponseAuthentication no". Информации о возможности поражения других операционных систем, использующих устаревшие версии OpenSSH с реализацией поддержки PAM от проекта FreeBSD, пока нет.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=31053)
[size="3"]Для FreeBSD доступен рабочий прототип видеодрайвера Intel с поддержкой KMS/GEM [/size]Константин Белоусов представил (http://lists.freebsd.org/pipermail/freebsd-x11/2011-June/010898.html) первый работающий вариант GEM/KMS-драйвера (http://wiki.freebsd.org/Intel_GPU) для графических чипов Intel, реализованный на уровне ядра FreeBSD. Первый выпуск нацелен на разработчиков, желающих принять участие в отладке и доработке драйвера. Драйвер не предназначен для конечных пользователей и даже еще не ориентирован на широкомасштабное тестирование, так как разработка ещё не завершена и многие возможности не реализованы.
Патч (http://people.freebsd.org/%7Ekib/drm/) подготовлен для FreeBSD-HEAD и протестирован с графической подсистемой Core i5 Ironlake при выводе через HDMI (DisplayPort пока не поддерживается). Портировать драйвер для 8-STABLE не планируется. Пока не завершена реализация поддержки Intel Sandy Bridge, а также второго и третьего поколения архитектуры Intel GMA (http://en.wikipedia.org/wiki/Intel_GMA) (основная работа ведется по обеспечению поддержки 4-7 поколений GMA). Для использования драйвера необходимо установить из git-репозиториев самые свежие снапшоты dri2proto, libdrm (+патч (http://people.freebsd.org/%7Ekib/drm/libdrm.1.patch)), xf86-video-intel и Mesa.
После завершения разработки, пользователи FreeBSD получат возможность задействовать последние версии видеодрайверов xf86-video-intel, в которых обеспечена поддержка новых видеокарт Intel. В данный момент во FreeBSD невозможно использование xf86-video-intel начиная с версии 2.10, так как в данном выпуске была удалена поддержка переключения видеорежимов на пользовательском уровне (UMS) и оставлена только поддержка KMS (Kernel Mode Setting), обеспечивающая переключение видеорежимов на уровне ядра.
Технология GEM (Graphics Execution Manager) позволяет вынести в работающий на уровне ядра DRM-модуль (Direct Rendering Manager) функции, связанные с управлением памятью видеокарты. Технология GEM, разработана компанией Intel и предназначена для низкоуровневого взаимодействия с GPU, позволяя через специальное GEM API организовать совместный одновременный доступ нескольких приложений к видеокарте. После завершения реализации поддержки драйвера для карт Intel, Константин не исключает возможность реализации менеджера памяти TTM (Translation Table Maps) и адаптации технологии управления видеопамятью для видеокарт других производителей, в частности, карт ATI/AMD.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=31086)
[size="3"]Утилита atop портирована для FreeBSD [/size] Утилита atop (http://www.atoptool.nl/) портирована для FreeBSD. Atop это консольный (curses) монитор производительности, который предназначен для отображения активности всех процессов. Также утилита позволяет записывать системную активность с заданным интервалом в сжатый файл, для последующего анализа или построения отчета. FreeBSD порт утилиты (http://openfacts2.berlios.de/wikien/index.php/BerliosProject:Atop-freebsd) поддерживает все возможности Linux версии и реализует некоторую специфичную для FreeBSD функциональность.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=31283)
[size="3"]Вышла первая бета-версия FreeBSD 9.0 и PC-BSD 9.0 [/size]С небольшим отставанием от графика (http://www.freebsd.org/releases/9.0R/schedule.html) Кен Смит (Ken Smith) в списках рассылки freebsd-stable и freebsd-current объявил (http://lists.freebsd.org/pipermail/freebsd-stable/2011-August/063457.html) о доступности для тестирования FreeBSD 9.0-BETA1.
ISO образы дистрибутива доступны для платформ: amd64 (ftp://ftp1.freebsd.org/pub/FreeBSD/ISO-IMAGES-amd64/9.0/), i386 (ftp://ftp1.freebsd.org/pub/FreeBSD/ISO-IMAGES-i386/9.0/), ia64 (ftp://ftp1.freebsd.org/pub/FreeBSD/ISO-IMAGES-ia64/9.0/), powerpc (ftp://ftp1.freebsd.org/pub/FreeBSD/ISO-IMAGES-powerpc/9.0/), powerpc64 (ftp://ftp1.freebsd.org/pub/FreeBSD/ISO-IMAGES-pc98/9.0/) и sparc64 (ftp://ftp1.freebsd.org/pub/FreeBSD/ISO-IMAGES-sparc64/9.0). Первая бета версия выпущена на основе исходного кода FreeBSD CURRENT, поэтому для обновления из CVS/CVSup/SVN необходимо использовать соответствующую ветку ("." для CVS, head для SVN).
Перед выходом 9.0-BETA2 будет изменена версия разделяемых библиотек, поэтому после обновления до BETA2 понадобится выполнить пересборку всех пакетов, которые будут установлены при тестировании BETA1. Как обычно в новой значительной версии было проведено большое количество изменений, в том числе, теперь используется новый инсталлятор, тестированию которого нужно уделить особое внимание.
Одновременно началось (http://blog.pcbsd.org/2011/08/release-announcement-pc-bsd-9-0-beta1/) тестирование десктоп-ориентированной операционной системы PC-BSD 9, основанной на кодовой базе FreeBSD 9. Новая версия отличается возможностью работы с несколькими графическими окружениями (KDE 4, GNOME 2, XFCE 4, LXDE, раньше предлагалось использовать только KDE); обновлен инсталлятор в котором упрощена настройка ZFS и GELI-шифрования; представлен новый центр управления; доработан конфигуратор сети; улучшена работа системы резервного копирования Life-Preserver. Множество изменений внесено в систему управления пакетами: задействован обновленный формат пакетов PBI (обзор изменений (http://www.opennet.ru/opennews/art.shtml?num=29940), наиболее важное новшество - это поддержка совместного использования библиотек между разными пакетами); обеспечена поддержка мета-пакетов для быстрой установки тематических групп приложений; добавлен апплет AppCafe для просмотра, установки и управления приложениями; добавлена новая утилита для обновления системы, поддерживающая работу с "freebsd-update"" и позволяющая обновить базовую систему до более нового промежуточного релиза (например, перейти от 9.0 к 9.1).
С подробным списком новшеств FreeBSD 9.0 можно познакомиться в квартальных отчетах: 2-3 2009 (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__7183), 4 2009 (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__8509), 1 2010 (http://www.opennet.ru/opennews/art.shtml?num=26344), 2 2010 (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__11377), 3 2010 (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__12949), 4 2010 (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__14203), 1 2011 (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__17479). Из улучшений можно отметить:
- В состав базовой системы FreeBSD интегрирован (http://www.opennet.ru/opennews/art.shtml?num=26913) код инфраструктуры LLVM (http://www.llvm.org/) и компилятора Clang (http://clang.llvm.org/), который может быть использован вместо GCC для сборки ядра, стандартного окружения и большинства портов.
- Увеличена масштабируемость ядра и TCP-стека на SMP-системах, обеспечена корректная работа на системах с более чем 32 CPU.
- В TCP-стек интегрированы такие новшества, как поддержка группировки TCP-соединений в привязке к CPU, задействование некоторых аппаратных механизмов снижения нагрузки и возможность привязки отдельных соединений к заданному CPU;
- В ядро интегрировано пять новых модулей с реализацией различных алгоритмов для контроля перегрузки (Congestion Control) в TCP: HTCP, CUBIC, Vegas, HD и CHD. Подготовлен фреймворк Khelp, представляющий интерфейс для создания модулей ядра, на лету обеспечивающих выполнение определенных сервисных функций. Также доступен Khelp-модуль ERTT (Enhanced Round Trip Time), позволяющий более точно измерять параметры TCP потока для использования в алгоритмах управления контроля перегрузки TCP.
- Добавлен (http://www.opennet.ru/opennews/art.shtml?num=28164) новый универсальный USB-драйвер, обеспечивающий поддержку устройств с интерфейсом USB 3.0, соответствующих спецификации XHCI (eXtensible Host Controller Interface). Представленный драйвер совместим с более старыми контроллерами USB 2.0 и USB 1.0, и способен в будущем заменить ранее присутствующие драйверы OHCI, UHCI и EHCI;
- Начальная поддержка (http://svnweb.freebsd.org/base?view=revision&revision=210550) архитектуры NUMA в подсистемах управления памятью;
- Новая инфраструктура обслуживания событий таймеров. Рефакторингу подверглось API для работы с таймерами, написан машинонезависимый код для управления таймерами, который может обслуживать как устаревшие периодические, так и новые единичные режимы работы таймера. Единичный режим позволяет значительно сократить число генерируемых таймером прерываний и понизить нагрузку на CPU - прерывание таймера, в случае нахождения CPU в состоянии простоя (idle), генерируется только при необходимости обработки зарегистрированного события. Нагруженные CPU по прежнему получают полный поток прерываний таймера с целью координирования планирования задач, хронометрирования и учета ресурсов. Для примера специальный тюнинг позволяет добиться на 8-ядерных CPU генерации всего 100 прерываний в секунду, что позволяет понизить энергопотребление и повысить эффективность технологии Intel TurboBoost;
- Интеграция Infiniband-стека OFED (OpenFabrics Enterprise Distribution), разработанного организацией OpenFabrics Alliance. В состав OFED входит набор драйверов и сопутствующие утилиты для обеспечения работы во FreeBSD Infiniband-контроллеров, используемых для организации высокоскоростных соединений серверов (от 2.5 до 120 гигабит/с) и организации поддержки технологии RDMA (Remote Direct Memory Access), предназначенной для обеспечения прямого доступа к памяти другой машины (как и в DMA обращение производится напрямую без участия ядра ОС и CPU).
- Новая (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__16085) реализация программного RAID - graid, призванная заменить устаревшую систему управления программными RAID-массивами ataraid. Новая реализация основана на использовании инфраструктуры GEOM и построена в соответствии с принципами модульной архитектуры, что позволило разделить систему на базовый модуль, модули для обработки преобразования данных (RAID-уровни) и модули для определения формата хранения мета-данных на диске. В отличии от ataraid, graid не зависит от устаревшей подсистемы ata и может быть использован с любыми драйверами дисковой подсистемы, включая новые, основанные на CAM (ahci, siis, mvs, ata с использованием "options ATA_CAM"). Поддерживаются популярные форматы метаданных Intel, JMicron, NVIDIA, Promise (используется AMD/ATI) и SiliconImage. Реализованы следующие RAID-уровни: RAID0, RAID1, RAID1E, RAID10, SINGLE, CONCAT.
- Система репликации устройств хранения данных (HAST), которая позволяет использовать FreeBSD для создания высоконадежных конфигураций, в которых данные синхронизированы по всем узлам кластера. HAST реализован в виде GEOM-класса, обеспечивающего синхронную репликацию блочных устройств поверх TCP/IP сетей, независимо от типа накопителя и файловой системы. HAST предусматривает возможность быстрого восстановления после сбоя, причем, при выходе из строя первичного master-узла, его функции могут быть делегированы slave-узлу. После проверки и монтирования UFS раздела или импорта ZFS пула на поврежденном узле, система автоматически синхронизирует внесенные за время восстановления изменения и продолжит работу без потери данных.
- По умолчанию активирован механизм журналирования Soft Updates для файловой системы UFS. Данное нововведение позволяет отказаться от необходимости запуска fsck после "грязного" размонтирования файловой системы и достичь очень высокой скорости восстановления состояния файловой системы при очень малом объеме журнала, при этом система полностью обратно совместима с нежурналируемым вариантом softupdates.
- Поддержка ZFSv28. Обзор отличий ZFSv28 от ранее доступных версий ZFS v13-v15 можно посмотреть здесь (http://linuxforum.kz/index.php?/topic/4326-freebsd/page__view__findpost__p__15329);
- Интегрирована поддержка операций TRIM для файловой системы UFS, что позволит увеличить производительность при работе с SSD-накопителями и повысить их срок службы;
- Capsicum (http://www.cl.cam.ac.uk/research/security/capsicum/) - фреймворк для организации изолированного выполнения приложений и ограничения использования приложениями определенных функций. Capsicum расширяет POSIX API и предоставляет несколько новых системных примитивов, нацеленных на поддержку модели безопасности через управление возможностями объектов ("object-capability") для Unix-систем. Capsicum нацелен на дополнение традиционного централизованного мандатного контроля доступа средствами для защиты отдельных приложений. Используя Capsicum приложение можно запустить в режиме повышенной изоляции (sandbox), при котором программа сможет выполнять только ранее специфицированные штатные действия. В настоящее время уже достаточно много программ, от tcpdump до chromium, модифицированы для поддержки режима изоляции, который может быть использован для уменьшения рисков при обработке сомнительных данных.
- RCTL (Hierarchical Resource Limits (http://wiki.freebsd.org/Hierarchical_Resource_Limits)) - реализация контейнеров ресурсов, позволяющая организовать установку индивидуальных ограничений ресурсов в привязке к конкретным Jail-окружениям. Разработан общий фреймворк для управления ресурсами, обеспечена поддержка лимитирования различных типов ресурсов, таких как память и загрузка CPU.
- Осуществлен переход на bsdinstall в качестве инсталлятора по умолчанию. BSDInstall отличается модульностью, простотой подключения расширений, поддержкой управляющих установкой скриптов и ускорением выполнения процесса инсталляции. По своей сути BSDInstall представляет собой shell-скрипт, в определенной последовательности вызывающий дополнительные скрипты или приложения. Любое звено установки может быть легко модифицировано или заменено на альтернативную реализацию (например, вместо вызова редактора дисковых разделов можно указать скрипт, который вернет определенную последовательность gpart-команд). В процессе установки, работа инсталлятора сводится к распаковке трех архивов: образа с базовой системы (world.tgz), ядра (kernel.tgz) и коллекции портов (ports.tgz), после чего могут быть запущены постустановочные конфигураторы или скопированы типовые файлы конфигурации (fstab, rc.conf, resolv.conf). Базовые возможности:
- Возможность установки на GPT-диски;
- Поддержка установки, охватывающей несколько дисков;
- Поддержка установки внутрь jail-окружений;
- Поддержка упрощенного PXE-режима установки;
- Дружественность к системам виртуализации, например, можно произвести установку в дисковый образ из работающей системы;
- Значительное ускорение процесса установки системы;
- Гибкое управление установкой через написание скриптов;
- Возможность простой реализации мелких настроек;
- Установочный CD выступает в роли LiveCD.
- Режим настройки параметров беспроводной сети;
- Поддержка установки на ZFS-разделы (реализация функции не завершена).
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=31364)
[size="3"]Опубликован анализ ключевых проблем FreeBSD и начат сбор предложений по путям их решения [/size]После известия (http://slonik-v-domene.livejournal.com/96331.html) о начале перевода парка серверов Rambler-почты с FreeBSD на Linux развернулось множество обсуждений проблем FreeBSD, из которых стало известно, в том числе, и о планируемом переводе с FreeBSD поискового кластера Яндекс (более 30000 серверов). Конструктивное зерно этих обсуждений было сведено воедино и опубликовано в статье "Каковы проблемы FreeBSD и пути их решения? Анализ и опрос (http://nuclight.livejournal.com/128712.html?usescheme=XColibur)".
В предварительной части (http://nuclight.livejournal.com/128319.html) автор делает вывод (на основе инсайдерской информации), что миграция на другую ОС конкретно в случае Rambler-почты неоправдана, и вызвана организационными проблемами (например, увольнением нескольких компетентных сотрудников). Тем не менее, это не отменяет наличия у проекта FreeBSD серьезных проблем, ставящих ОС (и, соответственно, связанных с ней рабочих мест) под угрозу вымирания, если сообщество прямо сейчас не осознает необходимость серьезных изменений и не начнет воплощать их в жизнь.
Указывается, что наиболее важной непосредственной проблемой сейчас является сравнительно низкая популярность ОС, то есть малый размер её пользовательской базы. Это приводит как к отсутствию на рынке труда достаточного количества знающих FreeBSD администраторов, так и пользователей, которые помогают проекту - чем больше число всех пользователей, тем больше в абсолютном выражении фиксированный процент тех, кто помогает, несмотря на то, что остальные ничего не делают. При текущих тенденциях, если ничего не предпринять, включится положительная обратная связь, и это число начнет уменьшаться еще больше, приводя к полному вытеснению FreeBSD другими ОС.
Согласно принципу Парето, 80% оттока пользователей от FreeBSD вызваны 20% её проблем. Таким образом, необходимо сконцентрироваться в первую очередь на самых важных задачах, которые на деле оказываются не столь уж ресурсоемки. Автор выделяет здесь два набора проблем - социальные (психологические) и следующие из них технические. При этом в техническом плане фатального отставания у FreeBSD нет, но без решения социальных к техническим попросту никто не приступит.
Социальными проблемами сообщества FreeBSD является наплевательское отношение к потребностям простых пользователей, которые не принадлежат к ядру сообщества. Разработчики пишут систему "для себя", то есть тех, кто будет ею пользоваться, невзирая на неудобства. На потребности других часто выдвигается возражение "нам это не нужно". Между тем, грамотный пользователь не является фанатом. Многие, кто могли бы использовать FreeBSD, уходят из-за сравнительно небольших технических проблем, уже решенных в других системах, потому что сообщество FreeBSD отказывается что-то менять.
В качестве примера, когда подобная позиция уже привела к почти полному вымиранию, приводится история сети Фидо. Излишняя жесткость, упертость и консерватизм её старожилов привели к тому, что технические изменения не были приняты вовремя из-за противоречия традициям. Традиции, однако, уже в то время были не более чем традицией, а через несколько лет что-то менять в технической базе стало уже слишком поздно.
Кроме того, мешают развитию системы так же избыточное ЧСВ многих пользователей и разработчиков, считающих, что слишком большая популярность системе не нужна, потому что будет много неграмотных пользователей, система не будет "столь элитарна" (такое мнение ошибочно и вредно). Между тем, признание своих ошибок и нахождение сил для их реального исправления - более сложно и более почетно, чем провоцировать "священные войны" на форумах, принадлежащих не допускавшей этих ошибок более распространенной ОС.
Техническими проблемами FreeBSD, влияющими на отток пользователей более всего, называются проблемы пакетного менеджера (системы портов), слишком большой монолитной базовой системы, а также в несколько меньшей степени - меньший охват поддержки оборудования и плохая поддержка виртуализации в гостевом режиме (host-режим не является значимым). Здесь следует напомнить, что изнутри сообщества эти проблемы могут казаться незначимыми, но они важны для тех, кто приходит в систему снаружи.
Проблемы пакетного менеджера главным образом сводятся к недостаточной поддержке бинарных пакетов, жестким зависимостям, включающим версию в имя пакета (что зачастую для обновления одного пакета требует пересборки большинства портов в системе), отсутствию указания в зависимостях опций сборки пакета, и др. Проблемы монолитной базовой системы сводятся к сложности бинарного обновления и проверки состава (требуется компиляция).
Базовая система, однако, имеет и ряд указанных в статье преимуществ, в частности, согласованность ПО в системе, поддержание которой разделение на мелкие пакеты только усложнит, в виду отсутствия необходимых ресурсов разработчиков. Однако указывается, что подобное деление не имеет смысла само по себе, и решением может быть более логичный вариант, учитывающий границы административных доменов. Например, не имеет смысла делить на пакеты то, что производится самим freebsd.org, хотя около половины базовой системы находится в /usr/src/contrib и может быть выделено в пакеты.
Философское наблюдение. Для ОС с открытым кодом, можно сказать, что жесткость и величина некоей единой её базовой составляющей имеют обратное влияние на количество пользователей. То есть, чем больше и жестче/монолитнее базовая составляющая, тем меньше userbase. Для Linux такой неделимой базовой компонентой является только ядро, для FreeBSD - еще и базовая система. Влияние базовой составляющей, эдакого Стержня (здесь можно провести аналогию с позвоночными и всеми прочими), определяет некоторые представления о пользователе: что можно, и особенно - чего нельзя. То есть, поскольку базовая система является неотъемлемой частью FreeBSD, она всегда будет занимать меньшую долю рынка, чем Linux (элитисты могут спать спокойно); то же самое, впрочем, касается и любого Linux-дистрибутива - он никогда не сможет захватить все 100% пользователей Linux.
В статье указаны также некоторые другие проблемы и возможные пути их исправления - все желающие помочь приглашаются для обсуждения конструктивных предложений. Собранные русскоязычным сообществом пути решения через неделю планируется обсуждать с англоязычным сообществом в списке рассылки arch@freebsd.org.
В качестве еще одной из идей может быть названо создание системы для голосования, когда голоса простых пользователей принимались бы электронной почтой, с учетом "веса" голоса конкретного человека по его вкладу в проект, так, чтобы у активных участников списков рассылок и авторов патчей было больше голосов, чем у случайных посторонних людей.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=31422)
[size="3"]Первый стабильный релиз BSD Router Project 1.0 [/size]Оливер Кочард (Olivier Cochard-Labbé), создатель дистрибутива FreeNAS, анонсировал (http://sourceforge.net/mailarchive/forum.php?thread_name=CA%2Bq%2BTco7%3DNxTgFSZeAXZFRrgb26SPT6_23k4s5V86VqkCoT%2BQw%40mail.gmail.com&forum_name=bsdrp-announce) первый стабильный релиз специализированного дистрибутива BSD Router Project 1.0 (http://bsdrp.net/bsdrp) (BSDRP), основанного на FreeBSD 8.2 и предназначенного для создания компактных программных маршрутизаторов, поддерживающих широкий спектр протоколов, таких как RIP, OSPF, BGP и PIM. Размер загрузочного образа (http://bsdrp.net/downloads) составляет всего 18 Мб. Дистрибутив может работать на системах с 128 Мб ОЗУ и Flash-накопителях, размером 256 Мб.
Отдельно отмечается, что дистрибутив предназначен исключительно для организации маршрутизации в сети предприятий или небольших интернет-провайдеров, и не рассчитан на создание межсетевых экранов, для которых рекомендуется использовать такие продукты, как m0n0wall (http://www.opennet.ru/opennews/art.shtml?num=29941) и pfSense (http://www.opennet.ru/opennews/art.shtml?num=31779). BSDRP не поддерживает web-интерфейс, всё управление производится в режиме командной строки через CLI-интерфейс, напоминающий Cisco.
Основные характеристики дистрибутива:
- В комплект входят три пакета с реализацией поддержки протоколов маршрутизации:
- Quagga 0.99.20 (http://www.quagga.net/): BGP, RIP, RIPng, OSPF v2, OSFP v3 и ISIS;
- BIRD 1.3.3 (http://bird.network.cz/): BGP, RIP, RIPng , OSPF v2 и OSFP v3;
- mrouted 3.9.5: поддержка протокола мультикаст-маршрутизации DVMRP (Distance Vector Multicast Routing Protocol);
- Ядро FreeBSD и пакет BIRD модифицированы для параллельного использования нескольких обособленных таблиц маршрутизации (FIB). В сумме поддерживается ведение до 16 независимых таблиц маршрутизации, привязанных к реальным и виртуальным интерфейсам;
- Для мониторинга и управления может использоваться SNMP (net-snmp 5.7). Поддерживается экспорт данных о трафике в форме потоков Netflow;
- Для оценки производительности сети в состав входят такие утилиты, как NetPIPE, iperf, netblast, netsend и netreceive. Для накопления статистики о трафике используется fprobe;
- Наличие freevrrpd 1.0 с реализацией протокола VRRP (Virtual Router Redundancy Protocol, RFC 3768) и ucarp 1.5.2_1 с поддержкой протокола CARP, предназначенных для организации работы отказоустойчивых маршрутизаторов путём привязки к активному серверу виртуального MAC-адреса, в случае сбоя перемещающегося на запасной сервер. В штатном режиме нагрузка может быть распределена на оба сервера, но в случае сбоя первый маршрутизатор может взять на себя нагрузку второго, а второй - первого;
- mpd 5.5 (http://mpd.sourceforge.net/) (Multi-link PPP daemon) с поддержкой PPTP, PPPoE и L2TP;
- Для управления пропускной способностью предлагается использовать шейпер из состава IPFW или систему очередей ALTQ;
- Для Ethernet поддерживается работа с VLAN (802.1q), агрегация линков и использование сетевых мостов с задействованием протокола Rapid Spanning Tree Protocol (802.1w);
- В состав входят DHCP-сервер и клиент isc-dhcp 4.2.2, а также почтовый сервер ssmtp 2.64;
- Поддержка управления через SSH, последовательный порт, telnet и локальную консоль. Для упрощения администрирования в комплект входит утилита tmux 1.5 (BSD-аналог screen);
- Загрузочные образы сгенерированы на основе FreeBSD 8.2 при помощи скрипта NanoBSD (http://bsdrp.net/documentation/technical_docs/nanobsd);
- Для обеспечения обновления системы на Flash-карте создаётся два раздела, при наличии обновлённого образа, он загружается во второй раздел, после перезагрузки этот раздел становится активным, а базовый раздел ожидает появления очередного обновления (разделы используются по очереди);
- Для каждого файла имеется контрольная сумма sha256, что позволяет проконтролировать целостность информации;
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=32061)
[size="3"]Кандидат в релизы FreeBSD 9.0 [/size]Анонсирован (http://lists.freebsd.org/pipermail/freebsd-stable/2011-October/064321.html) кандидат в релизы FreeBSD 9.0. Финальный релиз можно ожидать (http://wiki.freebsd.org/Releng/9.0-TODO) через 3-4 недели. Установочные образы FreeBSD 9.0-RC1 доступны в форме bootonly, DVD и Memstick для платформ amd64 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/), i386 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/i386/), powerpc (ftp://ftp.freebsd.org/pub/FreeBSD/releases/powerpc/powerpc/), powerpc64 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/powerpc/powerpc64/), ia64 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/ia64/ia64/) и sparc64 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/sparc64/sparc64/). С обзором новшеств FreeBSD 9.0 можно познакомиться в тексте анонса (http://linuxforum.kz/index.php/topic/4326-freebsd/page__view__findpost__p__20929) первой бета-версии.
Начиная с текущей тестовой версии обеспечена возможность бинарного обновления с использованием утилиты freebsd-update для платформ i386 и amd64. Поддерживается обновление FreeBSD 7.[34]-RELEASE, 8.[12]-RELEASE или 9.0-BETA[123]:
[indent]Перед обновлением необходимо немного изменить код утилиты freebsd-update, добавив возможность использования символа '@' и '%' в именах файлов (иначе в процессе обновления будет выведена ошибка):
[color="#461b7e"]
sed -i '' -e 's/=_/=%@_/' /usr/sbin/freebsd-update
[/color]
Загружаем обновления: [color="#461b7e"]
freebsd-update upgrade -r 9.0-RC1
[/color]
Из-за изменения способа оформления релиза FreeBSD возможно появление двух подводных камней: 1. Ядро FreeBSD, которое раньше могло находиться как в /boot/kernel, так и в /boot/GENERIC, теперь должно быть размещено только в /boot/kernel. Если ядро было в /boot/GENERIC то в процессе обновления оно будет удалено.
2. В процессе обновления будет удалено содержимое /usr/src.
Устанавливаем обновления ядра:
[color="#461b7e"]
freebsd-update install
[/color]
Перезагружаем систему (перед вторым этапом установки необходимо загрузиться с новым ядром): [color="#461b7e"]
shutdown -r now
[/color]
Выполняем установку компонентов не связанных с ядром, попутно отвечая на вопросы, касающиеся решения конфликтов при обновлении файлов конфигурации: [color="#461b7e"]
freebsd-update install
[/color]
После этого шага freebsd-update может предложить пересобрать приложения, установленные из пакетов или портов. После пересборки, если freebsd-update выдал соответствующее предупреждение, нужно запустить freebsd-update ещё раз для очистки старых библиотек. [color="#461b7e"]
freebsd-update install
[/color]
Перезагружаем систему: [color="#461b7e"]
shutdown -r now
[/color]
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=32114)
[/indent]
[size="3"]Отчёт о состоянии развития FreeBSD за третий квартал 2011 года [/size]Представлен отчёт (http://www.freebsd.org/news/status/report-2011-07-2011-09.html) о развитии проекта FreeBSD с июля по сентябрь 2011 года.
Основные достижения:
- Система
- Представлен проект по созданию нового уровня VM, который будет находиться между UMA и системой виртуальной памяти. Назначение нового уровня - распределение кусков (chunks) виртуальной памяти из области ядра, произвольным размером от 2 до 4 Мб. После реализации задуманного UMA-функция page_alloc() больше не будет вызываться напрямую из подсистемы виртуальной памяти. Вместо этого будут использоваться функции представленного нового уровня. Таким образом, выполнение uma_large_malloc() и uma_large_free() не будет приводить к мгновенному выделению и возвращению виртуальной памяти ядра, что положительно повлияет на производительность и приведёт у уменьшению фрагментации памяти;
- Поддержка оборудования
- В рамках проекта ZRouter.org (http://zrouter.org/) ведётся работа по созданию прошивок на базе FreeBSD для различных встраиваемых устройств, таких как беспроводные точки доступа и SOHO-маршрутизаторы. В настоящее время предоставлена возможность сборки рабочих прошивок для следующих устройств: D-Link DAP-1350, D-Link DIR-320/320-NRU/330/615-E4/620/632, D-Link DSA-3110-A1, D-Link DSR-1000N, NorthQ NQ-900, TPLink TL-WR941ND-v3_2 и Ubiquiti RSPRO. Прошивка может быть достаточно легко адаптирована для новых типов устройств, например, для создания прошивки для Asus WL-500g достаточно скопировать базирующуюся на том же SoC прошивку D-Link/DIR-320 и откорректировать настройки. Среди поддерживаемых типовых SoC: Broadcom BCM5354/BCM5836, Ralink RT3052F/RT3050F/RT5350F, Atheros AR7161/AR7242/AR7241/AR7240/AR9132, Intel ixp435 и Cavium CN5010. В ближайшее время для упрощения управления устройствами планируется подготовить web-интерфейс;
- Обеспечена (http://wiki.freebsd.org/AdrianChadd/AtherosTxAgg) поддержка 802.11n для беспроводного оборудования на базе чипов Atheros AR5416, AR9160 и AR9280. Поддерживается работа в режиме станции и точки доступа (hostap), агрегация линков и программная повторная отправка кадров. Производительность драйвера отмечена как хорошая. Пока не реализовано: BAR TX, защита HT, энергосберегающие режимы MIMO, гибкие средства управления интенсивностью потока;
- Во FreeBSD/arm продолжена реализация поддержки SoC-платформы Marvell Armada XP, основанной на ARMv6/v7-совместимых CPU Sheeva. Поддерживается загрузка с использованием U-Boot, последовательный порт, контроллер прерываний, таймеры, USB, Ethernet и PCI-Express. Реализована базовая поддержка SMP, которую ещё предстоит доработать. Пока нет поддержки L2-кэша и SATA;
- Во FreeBSD/powerpc реализована поддержка SoC APM86290, основанного на процессорах семейства AppliedMicro PACKETpro. Чип включает в себя два ядра PPC465 на базе архитектуры Power, соответствующих спецификации Book-E. В рамках проекта предпринята попытка расширения поддержки Book-E во FreeBSD и создания драйверов для интегрированных в SoC APM86290 периферийных устройств. В настоящий момент уже поддерживается загрузка с использованием U-Boot, CPU PPC465, L1-кэш, консоль через последовательный порт, контроллер прерываний, EHCI USB, менеджер очередей, Ethernet-контроллер, GPIO, I2C. Предстоит реализовать поддержку L2-кэша и довести до конца драйвер для Ethernet;
- Изолированные окружения, безопасность и ограничения ресурсов
- В GELI, GEOM-классе для обеспечения дискового шифрования, появились следующие улучшения: поддержка перехода в спящий режим (suspend/resume); новая версия субкоманды для проверки версии GELI-провайдера; новая опция "-V" для субокманды init, позволяющая создать GELI-провайдеры для старых версий FreeBSD; значительное увеличение производительности реализации алгоритма AES-XTS в aesni(4);
- Приложения и система портов
- Представлен набор утилит freebsd-vm-image, предназначенных для автоматизации периодического создания образов виртуальных машин на базе свежего среза исходных текстов FreeBSD из SVN-репозитория проекта. Итоговый образ может быть скопирован при помощи утилиты dd на USB Flash или запущен в роли гостевой системы под управлением VirtualBox (.vdi). Из планов названо обеспечения включения в сборку набора портов, как из основного дерева портов, так и из экспериментальной ветки area51. Также планируется создавать сборки для тестирования определённых драйверов устройств и других экспериментальных улучшений;
- Группа, занимающаяся портированием десктоп-оболочки KDE и Qt для FreeBSD, сообщила о продолжении адаптации данных проектов для FreeBSD и налаживании более тесного взаимодействия с разработчиками из upstream. Важнейшим достижением является обеспечение сборки Qt с использованием компилятора Clang. Из последних портированных систем отмечены: Qt 4.7.3, KDE 4.6.3-4.6.5, Amarok 2.4.1, Digikam (+ KIPI-plugins) 1.9.0. Уже портированы, но требуют дополнительного тестирования (http://freebsd.kde.org/area51.php), менеджер персональной информации KDE PIM 4.6.0 и офисный пакет Calligra 2.3.72;
- В рамках проекта nvi-iconv, проведена работа (https://github.com/lichray/nvi2) по портированию в ветку nvi-1.79, поддержки многобайтовых кодировок. Nvi - входящий в состав базовой системы вариант текстового редактора Vi, распространяемый под лицензией BSD. Из последних работ отмечается выявление утечек памяти, добавление поддержки UTF-16, реализация изменения заголовка окна xterm через опцию 'windowname', завершение работы над кодом автоматического определения кодировки файла, обеспечение сборки только с widechar и без iconv, добавление полного перевода каталога на русский язык;
- Обновлены порты (http://wiki.freebsd.org/Haskell), связанные с языком программирования Haskell. Устранены проблемы с крахом GHC из-за ошибки в rtld, проявляющейся в 9-CURRENT. Начата работа над портом экспериментальной ветки Haskell Platform 2011.3.0.1. Из задач которые предстоит выполнить отмечено тестирование работы GHC с clang/LLVM, расширение числа связанных с Haskell портов, общее число которых уже превышает 200;
- Доступен релиз минидистрибутива для создания межсетевых экранов и сетевых шлюзов pfSense 2.0 (http://www.pfsense.org/), который основан на кодовой базе FreeBSD 8.1 с задействованием наработок проекта m0n0wall и активным использованием pf и ALTQ. Обзор новшеств можно прочитать здесь (http://www.opennet.ru/opennews/art.shtml?num=31779). Из планов на версию 2.1 отмечается обеспечение поддержки IPv6 и реализация возможности установки дополнений, оформленных в виде пакетов PBI (используются в PC-BSD);
- В утилиту для управления портами portmaster (http://dougbarton.us/portmaster-proposal.html) добавлена возможность одновременного указания нескольких опций "-r", что позволяет повысить эффективность работы при необходимости обновления сразу нескольких веток портов в процессе работы систем сборки пакетов;
- Число портов медленно продолжает приближаться к отметке 23000. Проведена работа по закрытию накопившихся PR, число незакрытых PR держится на уровне 1000. Бинарные пакеты в настоящее время собираются для архитектур amd64-6, amd64-7, amd64-8, i386-6, i386-7, i386-8, i386-9, ia64-8, sparc64-7, sparc64-8. Из проведённых работ отмечено обновление портов Python, Boost и Gtk3, а также продолжение тестирования портов Clang, pkgng и ruby19. В качестве порта по умолчанию для http-сервера Apache теперь используется apache22, а языка программирования Fortran - lang/gcc46. Продолжается работа по адаптации портов для обеспечения сборки с использованием компилятора Clang, а также чистки неработоспособных портов для ветки CURRENT;
- Релиз FreeBSD 9.0 немного задерживается, в настоящее время выпущен первый кандидат в релизы. Перед релизом планируется (http://wiki.freebsd.org/Releng/9.0TODO) выпустить ещё две тестовые версии (RC2 и RC3), т.е. ждать FreeBSD 9.0-RELEASE можно не раньше, чем через месяц.
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=32263)
[size="3"]Второй кандидат в релизы FreeBSD 9.0 [/size]Анонсирован (http://lists.freebsd.org/pipermail/freebsd-stable/2011-November/064609.html) второй, предпоследний, кандидат в релизы FreeBSD 9.0. Финальный релиз можно ожидать (http://wiki.freebsd.org/Releng/9.0TODO) в конце декабря. Установочные образы FreeBSD 9.0-RC2 доступны в форме bootonly, DVD и Memstick для платформ amd64 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/), i386 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/i386/), powerpc (ftp://ftp.freebsd.org/pub/FreeBSD/releases/powerpc/powerpc/), powerpc64 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/powerpc/powerpc64/), ia64 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/ia64/ia64/) и sparc64 (ftp://ftp.freebsd.org/pub/FreeBSD/releases/sparc64/sparc64/). С обзором новшеств FreeBSD 9.0 можно познакомиться в тексте анонса (http://linuxforum.kz/index.php/topic/4326-freebsd/page__view__findpost__p__20929) первой бета-версии.
Для упрощения перехода с прошлых версий обеспечена возможность бинарного обновления с использованием утилиты freebsd-update для платформ i386 и amd64. Поддерживается обновление FreeBSD 7.[34]-RELEASE, 8.[12]-RELEASE или 9.0-BETA[123]/RC1:
Перед обновлением необходимо немного изменить код утилиты freebsd-update, добавив возможность использования символа '@' и '%' в именах файлов (иначе в процессе обновления будет выведена ошибка):
sed -i '' -e 's/=_/=%@_/' /usr/sbin/freebsd-update
Загружаем обновления:
freebsd-update upgrade -r 9.0-RC2
Из-за изменения способа оформления релиза FreeBSD возможно появление двух подводных камней:
1. Ядро FreeBSD, которое раньше могло находиться как в /boot/kernel, так и в /boot/GENERIC, теперь должно быть размещено только в /boot/kernel. Если ядро было в /boot/GENERIC то в процессе обновления оно будет удалено.
2. В процессе обновления будет удалено содержимое /usr/src.
Устанавливаем обновления ядра:
freebsd-update install
Перезагружаем систему (перед вторым этапом установки необходимо загрузиться с новым ядром):
shutdown -r now
Выполняем установку компонентов не связанных с ядром, попутно отвечая на вопросы, касающиеся решения конфликтов при обновлении файлов конфигурации:
freebsd-update install
После этого шага freebsd-update может предложить пересобрать приложения, установленные из пакетов или портов. После пересборки, если freebsd-update выдал соответствующее предупреждение, нужно запустить freebsd-update ещё раз для очистки старых библиотек.
freebsd-update install
Перезагружаем систему:
shutdown -r now
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=32339)
[size="3"]Тестирование BHyVe - FreeBSD Hypervisor[/size] Разработчики FreeBSD приглашают принять участие в тестировании BHyVe -- гипервизора для FreeBSD. BHyVe является гипервизором 2-го типа (http://en.wikipedia.org/wiki/Hypervisor#Classification), в качестве гостевой ОС, в настоящий момент, поддерживается только FreeBSD, что совсем неплохо для такого молодого проекта.
BHyVe был создан и открыт компанией netapp осенью этого года (http://www.opennet.ru/opennews/art.shtml?num=31693).
Источник (http://www.opennet.ru/tips/2643_virtual_freebsd_bhyve_bsd_hypervisor.shtml) и инструкция по сборке.
>>> Подробности (http://ivoras.net/blog/tree/2011-11-13.call-for-testing-the-bsd-hypervisor-bhyve.html)
# linux.org.ru (http://www.linux.org.ru/news/bsd/7041729)
[size="3"]Анонсирован redports - репозиторий, ориентированный на создание, тестирование и дальнейшее сопровождение портов FreeBSD[/size] Создатель Blueports (https://svn.bluelife.at/index.cgi/blueports) сообщил о скором закрытии проекта, так как им же был создан Redports, предоставляющий более удобные инструменты для реализации тех же задач.
Этот ресурс может быть полезен всем, кто принимает участие в портировании ПО для FreeBSD (http://freebsd.org/). Это отдельный репозиторий SVN (http://trac.edgewall.org/) с web-интерфейсом Trac (http://trac.edgewall.org/), ориентированный на создание, обкатку и дальнейшее сопровождение модификаций портов, которые не готовы к основному дереву портов. Для этих целей имеется несколько инсталляций Tinderbox (http://tinderbox.marcuscom.com/), обеспечивающих возможность сборки портов для следующик версий FreeBSD: 7.4/8.2/9.0/10, для сборки могут использоваться компиляторы CLANG/LLVM и GCC 4.5. Производится автоматическая сборка и тестирование портов, по итогам тестирования разработчикам может быть отправлен отчёт или лог сборки.
В работе с RedPorts.Org (http://redports.org/), следует иметь ввиду, что ресурс находится в стадии раннего бета-тестирования. Однако, чем больше людей и чем раньше начнут им массово пользоваться - тем быстрее ресурс обретет статус стабильного.
Новость взята с Bsd News in Russia (BSDNiR) (http://bsdnir.blogspot.com/), полный оригинал новости доступен по этой (http://bsdnir.blogspot.com/2011/11/blueports-redports.html) ссылке.
>>> Сайт проекта (http://redports.org/)
# linux.org.ru (http://www.linux.org.ru/news/bsd/7052625)