2008-12-18

Доступно шестое обновление дистрибутива Debian GNU/Linux 4.0 (r6)

Анонсирован выход обновленного релиза Debian GNU/Linux 4.0r6 (кодовое имя etch). В 35 пакетах устранены проблемы безопасности, в 10 пакетах исправлены ошибки влияющие на стабильность работы.

Можно отметить следующие изменения:

* В утилите dpkg улучшена обработки символических ссылок;
* В Perl устранены проблемы с выводом точного времени при использовании модуля Time::HiRes с Linux ядром 2.6.22 и выше;
* Версия PostgreSQL в пакетах обновлен до 8.1.15 и 7.4.23;
* Из состава дистрибутива удалены пакеты: fpc (нарушение авторских прав), gearhead (зависит от несвободного fpc), imapcopy: (зависит от несвободного fpc), astrolog (содержит код потенциально не подлежащий распространению), youtube-dl (стабильность пакета не отвечает требованию дистрибутива)

Кроме того, опубликован 17 выпуск новостей проекта Debian, в котором можно выделить следующие моменты:

* По прежнему остается более 100 блокирующих релиз ошибок.
* Выпуск второго кандидата в релизы инсталлятора Debian Lenny задерживается, добровольцы могут помочь в тестировании оценив работу ежедневных сборок.
* До 21 декабря среди разработчиков проекта проводится голосование, касающиеся изменения политики по включению в состав Lenny проприетарных бинарных прошивок (firmware).
* На сайте backports.org появилось два новых сервиса - трекер проблем безопасности и форма для сравнения версий пакетов и релизов Debian;
* Подготовлен список пакетов и возможных альтернатив, зависящих от удаляемой из дистрибутива версии Gtk++ 1.2. Оппоненты подчеркивают, что GTK+ 1.2 используется еще во многих полезных научных приложениях;
* Маноджа Сривастава объявил о своем уходе с поста секретаря проекта Debian, после обвинения в манипулировании голосами во время проведения выборов.

Все это, конечно, хорошо, но когда все же выйдет Lenny?

Появился новый проект m0n0wall-mod

Открыт проект m0n0wall-mod, реализующий дополнительные возможности в мини-дистрибутив m0n0wall.

Основные отличия от оригинального дистрибутива:

* работа интерфейса WAN в режиме DHCP+PPTP (в будущих версиях будет добавлена поддержка DHCP+PPPoE);
* отдельный интерфейс WAN eth для локальной сети провайдера с возможностью разделения трафика по разным интерфейсам;
* дополнительные настройки DHCP и PPTP.

В будущем проект будет интегрирован с основной веткой m0n0wall.

2008-12-15

Настройка DHCP+DDNS сервера

Неделю (даже больше) бился над настройкой связки DHCP3 и BIND9 в виртуальной машине VirtualBox. Как всегда, оказалось, что ничего существенно сложного в этой задаче нет (для текущего случая, по крайней мере), но намучался я здорово.
Итак, существуют 3 машины: us-vpn (Ubuntu Server 8.04.1), mao-vb-ud (Ubuntu Desktop 8.04) и mao-vb-winxp (Windows XP SP2). Из названий ясно, что машина под управлением Ubuntu Server будет сервером, на котором будут подняты сервисы DHCP и DNS для раздачи по локальной сети.

Приведу готовые конфиги (которые еще надо отшлифовать), а уже потом опишу свои ошибки:

/etc/network/interfaces

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0

/etc/resolv.conf

search sapfir.local
nameserver 127.0.0.1
nameserver 192.168.1.1

/etc/hosts (указанная строка добавляется в начало)

127.0.0.1 us-vpn us-vpn.sapfir.local localhost

/etc/dhcp3/dhcpd.conf

server-identifier 192.168.1.1;
ddns-update-style interim;
ddns-updates on;
authoritative;
log-facility local7;

option routers 192.168.1.1;
option broadcast-address 192.168.1.255;
default-lease-time 604800;
max-lease-time 604800;
option subnet-mask 255.255.255.0;
option domain-name "sapfir.local";
option domain-name-servers 192.168.1.1;
#ddns-domainname "sapfir.local";

key dhcp_updater {
algorithm hmac-md5;
secret hu4YF9mEvZkee+H2aW5d7Q==;
};

zone sapfir.local. {
primary 192.168.1.1;
key dhcp_updater;
}

zone 1.168.192.in-addr.arpa. {
primary 192.168.1.1;
key dhcp_updater;
}

subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.5 192.168.1.10;
}

/etc/bind/rndc.key

key "rndc-key" {
algorithm hmac-md5;
secret hu4YF9mEvZkee+H2aW5d7Q==;
};


/etc/bind/named.conf

key dhcp_updater {
algorithm hmac-md5;
secret hu4YF9mEvZkee+H2aW5d7Q==;
};

include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";

// prime the server with knowledge of the root servers

zone "." {
type hint;
file "/etc/bind/db.root";
};

zone "localhost" {
type master;
file "/etc/bind/db.local";
};

zone "127.in-addr.arpa" {
type master;
file "/etc/bind/db.127";
};

zone "0.in-addr.arpa" {
type master;
file "/etc/bind/db.0";
};

zone "255.in-addr.arpa" {
type master;
file "/etc/bind/db.255";
};

/etc/bind/named.conf.local

controls { inet 127.0.0.1 allow { any; } keys { dhcp_updater; }; };

zone "sapfir.local" {
type master;
file "/var/cache/bind/db.sapfir.local";
allow-query { any; };
allow-update { key dhcp_updater; };
};

zone "1.168.192.in-addr.arpa" {
type master;
file "/var/cache/bind/db.192.168.1";
allow-query { any; };
allow-update { key dhcp_updater; };
};

logging {
channel query.log {
file "query.log";
severity debug 3;
};
category queries { query.log; };
};

/etc/bind/named.conf.options

options {
directory "/var/cache/bind";
notify yes;
query-source address * port 53;
recursion yes;
version "REFUSED";
listen-on port 53 { 127.0.0.1; 192.168.1.0/24; };
auth-nxdomain no;
allow-recursion { 127.0.0.1; 192.168.1.0/24; };
allow-query { 127.0.0.1; 192.168.1.0/24; };
};

/var/cache/bind/db.sapfir.local

$ORIGIN .
$TTL 300 ; 5 minutes
sapfir.local IN SOA us-vpn.sapfir.local. root.sapfir.local. (
200806364 ; serial
300 ; refresh (5 minutes)
300 ; retry (5 minutes)
300 ; expire (5 minutes)
300 ; minimum (5 minutes)
)
NS ns.sapfir.local.
A 192.168.1.1
$ORIGIN sapfir.local.
$TTL 302400 ; 3 days 12 hours
mao-vb-ud A 192.168.1.9
TXT "00e7329a66f4b06b3121faaaba5275e0e3"
mao-vb-winxp A 192.168.1.10
TXT "31c9024a383ab7fb34307c70b546a1dac9"
$TTL 300 ; 5 minutes
us-vpn A 192.168.1.1

/var/cache/bind/db.192.168.1

$ORIGIN .
$TTL 86400 ; 1 day
1.168.192.in-addr.arpa IN SOA ns.sapfir.local. root.sapfir.local. (
200806355 ; serial
28800 ; refresh (8 hours)
7200 ; retry (2 hours)
2419200 ; expire (4 weeks)
86400 ; minimum (1 day)
)
NS ns.
$ORIGIN 1.168.192.in-addr.arpa.
1 PTR us-vpn.sapfir.local.
$TTL 302400 ; 3 days 12 hours
10 PTR mao-vb-winxp.sapfir.local.
8 PTR mao-ws002.sapfir.local.
9 PTR mao-vb-ud.sapfir.local.

Типичные ошибки:
1. Сервер не входит в какую-либо сеть.
Проблема у меня возникла в конце пути. когда я вроде бы настроил все правильно, на сервере все работает, соответствие адреса и имени выводится, а на локальных машинах глухо. Т.е. командой dig @192.168.1.1 us-vpn.sapfir.local сервер вроде found, но получить с него информацию нельзя. Оказалось, в пылу борьбы с DHCP/DNS я неправильно выставил маску подсети в /etc/network/interfaces - вместо 255.255.255.0 было 255.255.255.255. Т.е. сервер не входил в какую-либо сеть;
2. На успешный запуск DNS-сервера влияет даже пропущенная точка или другой знак.
Причем определить, где ошибка, не представляется возможным. Такое случалось не раз, и я грешил на неправильные настройки, а все дело было в неверном написании;
3. В разных источниках описание настройки приводится по разному.
В основном в инете пишется про настройку на FreeBSD, и в меньшей степени на GNU/Linux. И если во FreeBSD все более-менее стандартно, то настройка на Linux варьируется. Так что лучший метод - вводить опции по одной и смотреть на реакцию системы. Прошло удачно - двигаемся дальше;

Представлен пакет для управления RAID контроллерами - Einarc v1.3

Обновился Einarc - универсальный единый интерфейс и утилита для работы со всеми аппаратными RAID-контроллерами в Linux - конфигурирования, мониторинга, сборки-разборки массивов и т.п. Позволяет забыть о проприетарных утилитах, которые занимаются этими задачами и использовать для большого парка RAID-контроллеров единый интерфейс работы с одинаковыми командами.

Среди изменений:

* Поддержка новых контроллеров: линейка 3Ware / AMCC.
* Более полная поддержка software RAID.
* Совместимость с более новыми версиями CLI, адаптация под новые условия.
* Более полная поддержка BBU на контроллерах Adaptec.
* Многочисленные багфиксы для более полной совместимости с различным спектром железа.

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

* Adaptec SCSI и SAS/SATA RAID;
* AMCC/3ware
* Areca SATA RAID
* LSI MegaRAID SCSI/SAS/SATA RAID;
* Fusion/MPT HBA;
* Программный RAID (md).

2008-12-01

Xneur - переключатель раскладки клавиатуры

Давно хотел попробовать в работе переключатель раскладок клавиатуры xneur. Когда пользовался Windows, я так привык к Punto Switcher, что на Linux долгое время пытался применить знакомые комбинации клавиш и не смотрел на индикатор раскладки при наборе текста :) Потом мне приходилось набирать заново довольно большие куски текста...
Не припоминаю, чтобы раньше, когда скачивал исходники, возможно было скачивать готовый пакет и добавлять его в репозитории. Сейчас это есть.
Внешний вид переключателя мне понравился, напоминает Punto Switcher. Но работа его несколько разочаровала. К примеру, слово "гыук" не было распознано как "user". К тому же обнаружил проблему в OpenOffice Calc, когда пытался очистить содержимое ячейки клавишей Delete. По нажатию Enter при открытии окна диалога кнопка ОК как бы "замораживается", и нужно еще кликнуть по ней кнопкой "мыши". Такие досадные неувязки несколько портят впечатление от этой программы. Но все же можно сказать, что есть какой-никакой аналог PS в Linux. Возможно, это проблема соответствующего словаря...

Состоялся первый релиз проекта GSQL (версия 0.2.0)

GSQL - это интегрированная среда разработки для баз данных ориентированная на среду GNOME. На текущем этапе поддерживаются две СУБД - MySQL и Oracle.

Возможности этого релиза:

* SQL-редактор
* редактор кода (триггеры, функции, процедуры, пакеты). Эта возможность реализована только в Oracle.
* древовидная навигация по объектам БД
* механизм уведомлений - в случае неактивности приложения, по завершению выполнения SQL-запроса на экране появится соответствующее сообщение.
* дубликат сессии - в один клик открывается новое соединение с параметрами активной сессии.
* настройки - возможность придать желаемый вид приложению, настроить параметры редактора, также выставить опции работы для СУБД (например, задать свои переменные окружения для работы с Oracle в этом приложении).
* плагины
1. Terminal - возможность открывать терминальную сессию с параметрами (логин, пароль и тд) активной сессии.
2. Exporter - экспорт результата выборки в CSV-файл. На текущем этапе поддерживается экспорт только полученных записей.
3. Runner - периодическое выполнение SQL-команд.

Особенности:

* MySQL
1. для корректной работы требуется information_schema, которая доступна только в MySQL Server версий 5.* и выше.
2. отмена выполнения SQL запроса не представляется возможным стандартным API MySQL. Для этих целей можно воспользоваться функционалом плагина Terminal - открыть сессию и выполнить KILL QUERY.
* Oracle
1. эта версия GSQL тестировалась с БД Oracle версии 10.1.0.2.0. Не исключено, что могут возникнуть какие-либо трудности с другими версиями Oracle
2. не рекомендуется использовать oracle-xe-client из репозитария http://oss.oracle.com/debian - с ним могут возникнуть проблемы с NLS.

Также стоит отметить реализованный API, благодаря которому вы сможете написать свой плагин или же engine для поддержки другой СУБД.

Бинарные сборки:

Сейчас доступны сборки для Ubuntu 8.10 (i386, amd64). Также планируется в ближайшее время сделать сборки для Fedora.

PS: Проект весьма большой, поэтому буду очень рад, если кто-то захочет присоединиться. Предполагается внести GSQL в среду GNOME как основное средство разработки для СУБД.

Отдельное спасибо участникам ЛОРа Stalwart и neksa за помощь в подготовке релиза!

>>> Подробности