You are on page 1of 137

на DVD

LXF8(82) Linux Format Август 2006


SUSE 10.1 Полная версия
Сторона 1
SUSE 10.1
Сторона 2
OpenSource Format
БИТРИКС 5.0
Kororaa X6L.0.2

СОЗДАЙ
3D-ИГРУ
Напиши стрелялку на C++ –

l LINUX ПРОТИВ VISTA l ТАЙНЫЕ КЛАДЫ l FREEBSD 6.1 l СРАВНЕНИЕ ТЕРМИНАЛОВ l GIMP ИЗНУТРИ l СТЮАРТ КОЭН l TENOR l SUBVERSION НА РАБОТЕ И ДОМА
ЧИТАЮТ ВСЕ ПОЛЬЗОВАТЕ ЛИ LINUX
начни с этого номера! с. 84

Чем Linux
круче Vista
3D-интерфейс l Мгновенный поиск l Железная безопасность
Получите все заявленные функции Vista сегодня – в Linux! c. 42

10
Тайных кладов
Горячая десятка приложений, о существовании
и необходимости которых вы даже не
№8 (82)
догадывались! c. 56 август 2006
Стюарт Коэн
Шеф Линуса Торвальдса защищает право
Microsoft присоединиться к OSDL c. 38

LXF ИНТЕРВЬЮ

ПРИГЛАСИТЕЛЬНЫЕ БИЛЕТЫ
для читателей нашего журнала:
• на SofTool/Linuxland – с. 69
• на LinuxWorld - с. 117
ПРИВЕТСТВИЕ

Microsoft, айда с нами!


Мы нечасто упоминаем Microsoft на страницах нашего журнала, и не
К вашим услугам... потому, что находимся с ней в жесткой конфронтации – просто
В этом месяце мы задали Команде LXF формат Linux Format и активное сообщество читателей не дают
следующий вопрос: отвлекаться от основной темы. Однако, в текущем выпуске мы
Каково, по-вашему, секретное оружие Linux в
битве с Vista? решили нарушить эту традицию. И тому имеются веские причины.
Во-первых, не за горами выход Windows Vista. Сложившаяся обстановка
напоминает середину 90-х: в техническом плане Linux уже тогда был способен с
конкурировать с однозадачным MS-DOS и Windows 3.1, однако, отсутствие
поддержки со стороны крупных компаний вывело на первые позиции совсем
другую систему. Сегодня мы имеем ту же ситуацию – разве что за Linux теперь
Пол Хадсон Грэм Моррисон
Ну, это просто. Крылья А зачем нам секретное стоят серьезные игроки. В том, что Linux в техническом смысле способен дать
Тукса защищают не хуже оружие? Vista – по фору Vista, сомневаться не приходится, а если вас все же гложет неуверенность –
стали определению, что-то
далекое, что отодвигается прочитайте спецрепортаж этого номера. Подозреваю, что завидев его самый
от нас по мере нашего
приближения к нему. закоренелый хакер из застенков Microsoft может от огорчения съесть свою
накладную бороду.
Кстати, о застенках. Об интерьере зданий Microsoft ходят самые разные
слухи. Поговаривают, что в комнатах для отдыха сотрудников там развешаны
Эфрейн Эрнандес-
Мендоса мишени дартс с портретом Линуса Торвальдса, а под потолком висят камеры
Любовь... И гранатомет,
нацеленный прямо в пингвинодетекторов. Со свойственной нам прямотой заявляем – либо эти слухи
гордость Билла Гейтса Майк Сондерс не соответствуют действительности, либо система туксобезопасности Microsoft
Я думаю, Linux упрощает
основные парадигмы до сих пор работает под управлением Windows 95. Так или иначе, наш штатный
электронной коммерции и
обладает динамическим литературный редактор Елена Толстякова, гостившая в Редмонде по личным
TCO делам, не только без проблем пронесла в здание Microsoft этот номер Linux
Format, но даже отредактировала там большую часть материалов. Да, вы не
Ребекка Смолли
ослышались – этот номер журнала был подготовлен к печати прямо под носом у
Бизнесмены, готовые Билла Гейтса! И если это как-то отразилось на качестве материалов, то только в
превратно истолковать
MS: все эти фирмы, лучшую сторону.
консультанты и прочие, Наконец, мы протянули руку помощи нашим товарищам, работающим в
пытающиеся убедить Эндрью Грегори
предприятия попробовать Да кому это надо? Ух, глубоком тылу врага. Не имея возможности показать свое истинное лицо, они
FOSS вращающийся куб! Ах,
дрожащие окна! Блеск! разрушают проприетарную систему изнутри, подсовывая закоренелым
пользователям Windows открытые программы. Специально для них мы
разместили на второй стороне DVD сборник
открытого ПО для Windows – Open Source
Format.
Джоно Бэкон Таким образом, открыв августовский номер
Прозрачность и тот факт, LXF, вы приобрели в свой арсенал мощное
что у нас нет секретов. Марк Бейн
Если бы они были, я бы ни Секретное оружие? Одно оружие. Используйте его по своему
за что не сказал вам, что слово – Microsoft. Просто
по выходным Пол откиньтесь на спинку рассмотрению и... пусть расцветают все цветы.
превращается в Паулу. Ой! кресла и ждите еще одной
волны переходов на Linux

С уважением,
КАК С НАМИ СВЯЗАТЬСЯ ВАЛЕНТИН СИНИЦЫН
Нейл Ботвик
Письма для публикации:
главный редактор LinuxFormat в России
Vista – это узкий взгляд на
проблему, так что Linux Энди Ченнел
автоматически Доступность, letters@linuxformat.ru
превращается в решение функциональность, цена,
безопасность, приложения, Подписка и предыдущие номера:
для тех, кто не носит
сообщество, LXF, толстый
наглазники. Не говоря уж о subscribe@linuxformat.ru
том, что для Vista нужна пингвин, гибкость – я могу
говорить долго.
МИССИЯ ЖУРНАЛА
Visa. Техническая поддержка:
answers@linuxformat.ru • Пропаганда свободного ПО в России
Проблемы с дисками: • Продвижение решений с открытым кодом в
disks@linuxformat.ru бизнес-сообществе
Общие вопросы: info@linuxformat.ru • Поддержка российского Open Source
Website: www.linuxformat.ru сообщества
• Организация трибуны для разработчиков
Адрес редакции: Россия, свободного ПО
Санкт-Петербург, ул. Гончарная, 23, офис 54 • Обратная связь между разработчиками и
Телефон редакции: (812) 717-00-37 потребителями ПО
Дополнительная информация на стр.134

www.linuxformat.ru LXF8(82) АВГУСТ 2006 1


Содержание
Добро пожаловать в LinuxFormat – ваш гид в мире Linux! LXF8(82) АВГУСТ 2006

ЧИТАЙТЕ В ЭТОМ ВЫПУСКЕ

LINUX ПРОТИВ VISTA:


НАШИ БЬЮТ! 42
Microsoft начала маркетинговую
компанию... Но Linux уже далеко впереди!

48 Потрошим Gimp
Исправления ошибок для начинающих:
почему бы вам не помочь сообществу?

56 Тайные клады
Самая секретная сокровищница Open Source

60 Жизнь в Subversion
Получите максимум от своей домашней директории

84 Программирование 3D-игр
Вам будет, за чем убить время в ближайшие
несколько месяцев

38 Стюарт Коэн собственной персоной

«SymphonyOS, несомненно, «Оно не хотел говорить об этом. К


самая оригинальная из ныне счастью, никто не может устоять
>> МЫСЛИ
ВСЛУХ

существующих настольных перед LXF!»


ОС.»
14 Заинтригованы? Переходите к рубрике 36 Вдвойне заинтригованы? Джоно Бэкон
DistroWatch Ладислава Боднара расставит все по местам

2 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


На диске
Целый DVD интересных
программ 128

04 Новости 64 Человек ищущий


Qt и NTFS Генеральный директор Webalta о своем
поисковике
09 SlickEdit 11
Кодируйте с умом и за деньги 68 Третье измерение
Несколько способов разнообразить
10 Noise Ninja 2.1 рабочий стол без помощи Xgl
Чистка фотографий DVD!
72 Первые шаги
11 FreeBSD 6.1 Советы по экономии времени SUSE 10.1 Полная версия дистрибутива
Обновление – это просто – установите ее на домашний компьютер,
76 Учебник Inkscape рабочую станцию или сервер
12 Amanda 2.5 Визитка своими руками
Открытая система резервирования
80 Учебник OOo Basic УЧЕБНИКИ PHP 200 страниц руководств,
13 BakBone Netvault 7.4 Работаем с базой данных советов и прочего из LXF30-82.
Панель настройки с 23 вкладками?
Мама! 84 Программирование 3D-игр AMAROK 1.4 Управляйте своей
Пальцы еще не устали? аудиотекой вместе с новым
14 Distrowatch
Странный и прекрасный Linux 88 Учебник PHP музыкальным плеером для KDE
Пол уходит красиво
16 Сравнение: X-терминалы SYLLABLE 0.6.1 Уникальная открытая
Konsole, Gnome Terminal и другие 90 Hardcore Linux настольная ОС, быстрая и простая в
Открытая УАТС
22 Обзор аудиоплейеров использовании – попробуйте!
В чем слушать MP^W OGG? 94 Python для профессионалов
Напишите свой собственный сервер MANIADRIVE
26 HotPicks Достойный
Это надо видеть! 98 Qt/KDE
Создаем офисное приложение продолжатель
32 Марк Шаттлворт традиций Stunt
отчет о визите создателя Ubuntu 102 Unix API Racer.
Очереди сообщений и семафоры
36 Что за штука... Tenor? Попахивает жженой
Ваш рабочий стол уже никогда 106 Учебник Maxima резиной!
не будет прежним Операторы или функции?

38 Стюарт Коэн 112 Учебник PAW


OSDL смещает центр тяжести Реальный пример анализа данных

42 Linux против Vista: наши бьют! 117 Дистрибутивы LINUX


Ура разработчикам Open Source! Путеводитель от LinuxCenter.ru

48 Gimp изнутри 122 Вопрос? Ответ!


Поможем графическому пакету Пингвин-логин

56 10 спрятанных жемчужин 128 Диск Linux Format


У Майка есть кое-что для вас В этом месяце: SUSE 10.1

60 Домашний каталог 135 Подписка Перед использованием диска ознакомьтесь с инструкцией


в Subversion Полная информация для жителей и вырежьте обложку своего DVD на стр. 131–132
Творческий подход к управлению России и СНГ
версиями

ПОДПИШИСЬ СЕГОДНЯ!

LINUX
FORMAT
Подробности на сайте
10 Фото атакует 16 Лучший терминал www.linuxformat.ru

www.linuxformat.ru LXF8(82) АВГУСТ 2006 3


НОВОСТИ

Главные новости
• Qt 4.2 TP 1 • NTFS на чтение и запись • Курсы Linux в двух столицах • Microsoft OpenDocument Format

Qt 4.2 Technology Preview 1


Интеграция, интеграция и еще раз интеграция

Норвежская компания щений Glib, реализованная в Qt 4.2, поз-


Trolltech (www.trolltech.com) волит например, использовать в приложе-
объявила о выпуске Qt 4.2 ниях Qt «чужие» подключаемые модули,
Technology Preview (TP) 1 – первой тесто- и наоборот – использовать подключаемые
вой версии нового поколения популярной модули Qt в «чужих» приложениях.
библиотеки для программирования GUI. По В то время, как рабочая группа про-
сравнению со своими предшественницами, екта Portland только разрабатывает уни-
Qt 4.2 содержит значительное количество версальный механизм открытия web-стра-
улучшений, среди которых хочется особо ницы, запуска почтового клиента и так
отметить работу в области интеграции. далее, Qt 4.2 уже предлагает готовый класс
Как известно, одной из первоочеред- QDesktopServices, предоставляющий кросс-
ных задач Qt является корректная эмуляция платформенный способ для показа различ-
внешнего вида и поведения приложений, ных ресурсов, идентифицируемых по URL.
принятого на той или иной платформе. Впрочем, межпроцессное взаимодейс-
Если в отношении Windows или Mac OS твие никоим образом не ограничивается
X вопросов не возникает, то в Linux дела запуском браузера с последующим пере-
обстоит несколько иначе. В этой системе направлением пользователя по указанному
Ubuntu? Нет, Qt 4.2!
понятие «родное окружение» включает в адресу. В среде Linux все большую силу
себя как построенную на Qt среду KDE, так набирает D-BUS (http://www.freedesktop. вниманию полностью переносимый класс окружения KDE4. Обозначенные выше фун-
и использующий Gtk+ рабочий стол Gnome. org/wiki/Software/dbus) – средство для QSystemTrayIcon, который позволяет раз- кции позволяют надеяться, что как только
Естественно, приложения Gtk+ и Qt выгля- обмена сообщениями, используемое HAL, местить иконку в трее способом, принятым это случится, разнородный рабочий стол
дят и ведут себя несколько по-разному, NetworkManager и другими настольны- на целевой платформе. Linux займет свое почетное место в исто-
однако, выход финальной Qt 4.2 может ми технологиями. Приложения Qt могли Пройдет не так много времени и нахо- рии этой ОС, уступив место крепко сбитому
в значительной степени нивелировать это использовать D-BUS еще в третьей вер- дящаяся сейчас в стадии предварительной интегрированному рабочему окружению.
отличие. сии библиотеки (правда, тогда речь шла версии Qt 4.2 ляжет в основу графического
Начнем с того, что бросается в глаза – только об интеграции с циклом сообщений
внешнего вида. Одним из возможных под- Qt – интерфейс D-BUS был выдержан в сти- C++ GUI PROGRAMMING WITH QT 4
ходов здесь является использование уни- ле C и не соответствовал «Qt way»), одна- В середине июля было официально объявлено о выходе в свет книги «C++ GUI
версальных визуальных тем вроде QtCurve, ко, «привязки» D-BUS стали неотъемлемой Programming with Qt 4», получившей официальное одобрение Trolltech и написанной ее
сотрудниками: Жасмин Бланшетт [Jasmin Blanchette] и Марком Соммерфильдом [Mark
однако, Qt 4.2 предлагает альтернативный частью Qt только в версии 4.2. На сей раз в
Summerfield], правда, последний некоторое время назад покинул компанию и основал
вариант – встроенную тему Cleanlooks, распоряжение программиста предоставлен
собственное дело. Книга, по сути, является расширенной версией «C++ GUI Programming
эмулирующую де-факто стандартный вне- «правильный» C++ интерфейс в стиле Qt.
with Qt 3», включенной в серию Bruce Perens Open Source Series (phptr.com/perens) и
шний вид современных приложений Gnome. С учетом произошедшего несколько меся- изданной в России издательством «Кудиц-Образ». Текст не претерпел существенных
Добавьте к этому родной порядок следо- цев назад портирования kdelibs с DCOP изменений – вы найдете здесь те же главы и примеры, что и в предыдущей версии
вания кнопок в диалогах Gnome (благода- на D-BUS, можно с уверенностью утверж- учебника, адаптированные к Qt4. Существенно новыми являются пара глав, посвящен-
ря соответствующему расширению класса дать, что это нововведение придется весь- ных ключевым нововведениям Qt4: MVC, Arthur, подключаемым модулям. Плюс это
QDialogButtonBox) и вы едва ли сможете ма кстати. или минус, решайте сами. Интерес представляет также схема распространения книги.
отличить Gtk+ от Qt «на глаз». Ну и наконец скажем пару слов о сис- Она не является частью Bruc Perens Open Source Series, однако, надпись на форзаце
Впрочем, интеграция между двумя темном лотке (system tray). Классы для гласит, что ее текст распространяется на условиях Open Publication License, v1.0 или
выше. Найти электронную версию учебника в официальных источниках пока не уда-
ведущими инструментариями имеет куда работы с ним существовали в KDE с начала
лось, возможно, она будет опубликована после продажи некоторого количества
более глубокие корни. Теперь приложения времен, но, по вполне понятным причи-
«бумажных» экземпляров.
Gnome допущены в «святая святых» – цикл нам, область их применения была ограни-
http://www.phptr.com/bookstore/product.asp?isbn=0131872494&rl=1
сообщений Qt. Интеграция с циклом сооб- чена рамками X. Qt 4.2 предлагает вашему

4 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


НОВОСТИ

NTFS на запись и на чтение


В Linux наконец-то появился полноценный драйвер для файловой системы Windows XP
Похоже, что извечная про- Это программа, работающая в пространс- свободный Captive NTFS, так и коммерчес- ной версией программы ntfsmount, разраба-
блема совместного использова- тве пользователя и предоставляющая свои кий Paragon NTFS и уступает только род- тываемой в рамках проекта Linux-NTFS. Он
ния Windows и Linux на одном функции через FUSE. Впрочем, конечному ным для Linux JFS/ReiserFS (см. таблицу). не поддерживает доступ к зашифрованным
компьютере – запись на разделы NTFS, пользователю до этого – какое дело? Ему И это, как говорится, не предел – разра- файлам, запись в сжатые файлы, а также
наконец-то нашла свое решение. Сакашиц важно, что теперь нет никакой необходи- ботчики утверждают, что производитель- изменение имени владельца и прав досту-
Шаболч [Szakacsits Szabolcs] анонсировал мости содержать FAT32-раздел с исклю- ность можно повысить аж в несколько раз. па. Исходные тексты ntfs-3g лицензированы
выпуск бета-версии драйвера ntfs-3g, обес- чительной целью обмена данными между Стабильность работы ntfs-3g также на высо- под GPL и, на момент написания этих строк,
печивающего устойчивую поддержку NTFS Windows и Linux. Кстати, производитель- те – драйвер был протестирован на более были доступны по адресу:
в режиме чтения-записи. ность от использования FUSE отнюдь не чем 40 снимках реальных NTFS-разделов и http://mlf.linux.rulez.org/mlf/ezaz/ntfs-
Строго говоря, ntfs-3g не является страдает – согласно проведенным автором ни разу не привел к краху ФС. 3g-20070714-BETA.tgz.
драйвером в полном смысле этого слова. тестам, ntfs-3g существенно обгоняет как Технически, ntfs-3g является улучшен-

Усредненные данные по скорости создания, удаления и доступа к файлам получены с помощью ‘bonnie++ -s0’, запускаемой на различных ФС.
Число файлов на каталог в каждом случае составляло 16 000

files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
reiserfs 16k 21459 99 +++++ +++ 17856 96 20172 98 +++++ +++ 16414 96
jfs 16k 7015 13 +++++ +++ 5868 10 3068 14 +++++ +++ 1075 3
ntfs-3g 16k 3021 99 14291 99 5226 99 3548 99 16149 99 5223 99
xfs 16k 2401 17 +++++ +++ 2095 15 2301 20 +++++ +++ 347 2
ext3 16k 1862 96 +++++ +++ +++++ +++ 1914 96 +++++ +++ 9695 98
minix 16k 1450 97 +++++ +++ 18148 94 1694 97 +++++ +++ 4847 98
fat32 16k 366 97 +++++ +++ 1809 97 428 97 +++++ +++ 1361 97
paragon ntfs 16k 58 98 1259 99 245 99 55 99 +++++ +++ 832 99
captive ntfs

Microsoft Office становится ближе к ODF


Корпорация Microsoft запустила открытый проект по созданию конвертера Open XML-ODF
Корпорация Microsoft, дол- дения) и запустила проект, целью которо- ствии с принципами Open Source на сайте приложения для Word 2007 уже опубли-
гое время находившаяся в оппо- го будет создать инструмент для конвер- SourceForge.net. кован по адресу http://sourceforge.net/
зиции к OpenDocument и про- тации между Open XML и OpenDocument. Конвертер, получивший гордое назва- projects/odf-converter и распространя-
двигающая собственный фор- Продукт будет бесплатным и доступным ние Open XML Translator, будет разра- ется по лицензии BSD. Финальная версия
мат для офисных документов – Open XML, в качестве дополнения (add-in) для ста- батываться совместно с французской будет доступна к концу 2006 года, сообща-
вняла просьбам своих клиентов (особенно рых версий Microsoft Office, более того, компанией Clever Age, а также Aztecsoft ет Microsoft.
усердствовали правительственные учреж- его разработка будет вестись в соответ- (Индия) и Dialogika (Германия). Прототип

ЧТО БЫЛО выбраться из душного города на берега различных решений для этой ОС: Mandriva,
Восьмой ежегодный фестиваль Linux живописной реки. В палатки. IBM, Novell, R-Style, HP, Oracle, ASPLinux,
Летняя школа Linux в Обнинске в Калужской области Linux-Online (разработчик Linux XP), НПО
22-24 июля 2006 года, Обнинск 28-30 июля, р. Протва ЧТО БУДЕТ “Сеть” (разработчик MOPSLinux), Bitrix,
В период с 22 по 24 июля в Обнинске Восьмой ежегодный фестиваль Linux ПРОМТ, Etersoft и Linuxcenter.ru, журнал
(Калужская область) проходила «Летняя в Калужской области проходил в рам- LinuxLand / SofTool’2006 Linux Format, образовательный центр Lynx
школа Linux», организаторами которой ках «Недели Линукс На Протве» с 28 по 26-29 сентября 2006 года, Москва Education Center и другие. Помимо выста-
выступили компания ALT Linux и Интернет- 30 июля 2006 года в Боровском районе Компании ИТ-Экспо и LinuxCenter.Ru при- вочных стендов, на экспозиции традици-
Университет Информационных Технологий. Калужской области. Фестиваль, как и его глашают вас принять участие в выставке онно будет расположена демо-зона, где
В Школе можно было изучить основы предшественники, стал местом встре- информационных технологий SofTool’2006 посетители LinuxLand смогут вживую поз-
Linux и познакомиться методикой его пре- чи единомышленников «под открытым (26-29 сентября 2006 года), где планирует- накомиться с предлагаемыми продуктами.
подавания (на базе курса «Операционная небом». Команда LXF, занятая подготовкой ся собрать ведущие российские Linux-ком- В ходе выставки будут подведены итоги
система Linux»). Кроме этого, в рамках этого номера к печати, была, к сожалению, пании в одном секторе выставочной пло- конкурса IBM WebSphere Community Edition
Школы прошел семинар, посвященный вынуждена пропустить это мероприятие, щади LinuxLand. LinuxLand будет местом, Contest 2006.
легальной миграции на Linux. но мы не теряем надежды когд-нибудь в котором соберутся поставщики Linux и www.linuxland.ru

www.linuxformat.ru LXF8(82) АВГУСТ 2006 5


НОВОСТИ

6 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


НОВОСТИ

Курсы Linux
в двух столицах

Теперь пройти обучение по программе Linux Professional


Institute стало возможным не только в Санкт-Петербурге,
но и в Москве

География чтения авторизо- сертифицированным независимой орга-


ванных курсов Linux Professional низацией – Linux Professional Institute.
Institute (LPI) расширилась с Ранее подобные курсы читались только
получением учебным центром R-Style на базе LYNX Education Center в городе
(Москва) нового звания «Авторизованный Санкт-Петербурге.
УЦ Mandriva Linux». Это позволит R-Style Особенность курсов LPI состоит в их
проводить обучение по программам, раз- «нейтральности», то есть в отсутствии
работанным специалистами Mandriva и ориентации на конкретный дистрибутив.
Например, тот факт, что курсы, читае-
мые в УЦ R-Style, разработаны компанией
Mandriva, не означает, что их содержа-
КОРОТКОЙ СТРОКОЙ ние будет сведено к фирменным инстру-
ментам, предлагаемым именно этой орга-
низацией. Напротив, слушатели получат
• Вышла в свет финальная версия
SUSE LINUX Enterprise Server/Desktop
информацию об общем устройстве Linux,
10. не привязываясь к специфике конкретного
поставщика.
• Проект Freespire представил на суд
Программа обучения LPI постро-
общественности первую бета-версию
community-редакции Linspire на две
ена таким образом, чтобы охватить все
недели раньше намеченного срока уровни начальной подготовки слушателей.
Начинающий сможет поближе познакомить-
• После продолжительного затишья
ся с новой ОС, а опытный пользователь –
и смены лидера проект SIM-IM
повысить свой уровень. Предлагаемые кур-
выпустил новую версию популярного
IM-клиента: 0.9.4 сы включают в себя:
• LNX70 – базовые концепции и методы
• Корпорация IBM представила Linux-
использования основных средств Linux;
версию пакета Lotus Notes,
• LPI101 – базовый курс по системному
базирующуюся на Eclipse.
администрированию, установке и управле-
• В Алматы (Казахстан) открылся нию отдельной Linux-системой;
собственный Open Source центр.
• LPI201 – дополнительные вопросы сис-
Проект нацелен на снижение уровня
темного администрирования, установки и
использования нелицензионного
программного обеспечения и
управления отдельной Linux-системой;
популяризацию открытого ПО • LPI102 – расширенный курс по сис-
темному администрированию, установке и
• Проект KDE и компания Apple
управлению отдельной Linux-системой;
начали работу по синхронизации
WebKit и Konqueror, а компания
• LPI202 – дополнительные вопросы сете-
Frologic выпустила бесплатную вого администрирования Linux-системы.
версию тестера Squish для KDE- Со временем, авторизованные учебные
приложений. центра Mandriva/LPI будут открыты и в дру-
гих крупных городах России. LXF

LXF8(82) АВГУСТ 2006 7


Обзоры >>
Новинки программного и аппаратного обеспечения в описании наших экспертов
12 Резервное копирование
и даром, и задорого

СЕМЬ ШАГОВ ЧТО НОВОГО?


LINUX-
ДИСТРИБУЦИИ
Первые дистрибутивы Linux,
возникли из стремления
избавиться от лишней ОС –
ведь, чтобы сварить суп из
курицы (Linux), следовало
как минимум иметь кошку
(MINIX). И, например, спа-
Алексей Федорчук сение пользователей от ада
Имеет собственное пакетных зависимостей ос-
мнение насчет тавалось делом рук самих 09 SlickЕdit’ing
финансирования пользователей – благо тако-
OSS. выми в то время были почти
исключительно разработчи-
ки Linux’а же.
Потом началась эпоха промышленного
применения этой ОС – для начала в качест-
ве сетевых узлов разного рода. И к пользо-
вателям-разработчикам присоединились
пользователи-администраторы, которые не
имели времени на ручное разруливание 10 Легким движением руки...
зависимостей – и для них были придуманы
первые дистрибутивы с контролем оных 09 SLICKEDIT 11 11 FREEBSD 6.1
(Debian, Red Hat). Мы всегда с недоверием относились к тексто- Вы, возможно, читали введение во FreeBSD, кото-
В 1998 году впервые заговорили о про- вым редакторам для программистов, особенно с рое Майк опубликовал в LXF76. Он снова с вами и
движении Linux на пользовательские ком- номерами версий больше 10. Стоит ли он своих готов рассмотреть последнюю версию этой ОС!
пьютеры. Итогом их стало появление денег?
Mandrake – первого по-настоящему «юзе-
рофильного» дистрибутива. 10 NOISE NINJA 2.1
12 AMANDA 2.5 VS NETVAULT 7.4
Однако скоро пользователи осознали, Ненавидите шум, но любите ниндзя? Этот пре-
что на своих рабочих столах они являются красный инструмент для фотографов теперь Бесплатное резервирование против платного – и
также и администраторами, что вызвало имеет порт и для Linux! неожиданный результат. Смотрите сами!
волну популярности дистрибутивов Source
Based – и пальму первенства пользователь-
ских симпатий завоевал Gentoo. Каковой
тоже не стал панацеей от всех бед – потре-
бовались системы, совмещающие возмож-
ность полной пересборки с быстротой раз-
вертывания и простотой обновления –
квинтэссенцией этого направления стал НАШ ВЕРДИКТ: ПОЯСНЕНИЕ
Archlinux. Все продукты оцениваются по 10-бал- Продукты, выделяющиеся из основной Все тесты выполняются под управлени-
Дальнейшее стремление к упрощению льной шкале. 4 обычных параметра массы, получают престижную награду Linux ем Red Hat Enterprise Linux 3 AS на соот-
жизни вернуло интерес к Debian и его мно- оценки: возможности, производи- Format Top Stuff Award. Выбираются самые- ветствующей платформе (x86, AMD64,
гочисленным клонам, среди которых бес- тельность, простота использования самые – и только лишь высокая оценка Itanium). Код компилируется при помощи
спорно первенствовал Ubuntu. и соотношение «цена/качество», но здесь еще ни о чем не говорит. GCC, если не указано иное.
И, наконец, нынче намечается обраще- для свободного ПО последний пара- Для тестирования серверов использует-
ние к истокам Linux-дистрибуции – в лице метр может быть заменен на оценку ся наша собственная разработка, LFXBench
современных производных Slackware, в документации. Независимо от набо- 2004, состоящая из 4 основных подсистем:
РЕЗУЛЬТАТЫ ТЕСТИРОВАНИЯ
первых рядах которых выступает ZenWalk – ра категорий, мы MULTI CPU 6.07
Multi CPU, Single CPU, RAM и Hard Disk.
максимально компактный, но легко нара- всегда вычисля- SINGLE CPU 3
Оценки усредняются и дают общий рейтинг.
щиваемый. ем общий рей-
RAM 2.17
1 очко означает, что тестовый компьютер
Каким будет следующий виток пользова- тинг, подводя-
HARD DISK 0.46
равен нашему эталону: Pentium 4 1,8ГГц, 512
тельских предпочтений? щий итог нашим ОБЩИЙ РЕЙТИНГ 2.93
Мб оперативной памяти и жесткий диск IDE. 1 2 3 4
alv@posix.ru высказываниям. 2 очка означает, что он вдвое быстрее.

8 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ОБЗОРЫ SlickEdit 11

ТЕКСТОВЫЙ РЕДАКТОР

SlickEdit 11
Ник Вейч размышляет, стоит ли платить за право
кодировать.
САМОЕ ГЛАВНОЕ Одно из замечательных нововведений –
Очень гибкий редактор для новый, быстрый режим рефакторинга кода
программистов с поддержкой нескольких (Quick Mode). Ранее эта система была очень
языков программирования. Аналоги: устойчива и надежна, но уж больно мед-
Kate, Emacs, а также среды разработки ленна – даже для обычной смены имени
типа Eclipse. переменной или подобных простых вещей.
• РАЗРАБОТЧИК: SlickEdit Новый режим обеспечивает замену имен с
• САЙТ: www.slickedit.com помощью тэг-файла для поиска всех вхож-
• ЦЕНА: $284 для одного пользователя, дений выделенного текста – версия 11 это
$139 за обновление заметно ускорила, но требует известной Рефакторинг простых операторов стал быстрее – но будьте с ним поосторожнее!
осторожности в сложных ситуациях, напри-
мер, при потенциальном конфликте пере-
Программисты в Linux избало- груженных операторов. Среди функций Для программистов
ваны выбором. KDevelop, Anjuta, быстрого рефакторинга – Method Extract, Конечно, одна из причин выбора специ- ГРЭМ СЧИТАЕТ…
Eclipse... множество сред разра- подсветка участка кода для автоматическо- ализированного редактора вроде этого –
ботки для написания, компиляции и отлад- го выделения его как функции. Дополнения богатство инструментария. Подсветка син- «Мне нравится интерфейс
ки вашего кода, и в основе каждой – тек- PHP 5 тоже пришлись ко двору, получить таксиса – такая же необходимость для пользователя, хоть он и съедает
стовый редактор. Так зачем мучиться с бы только правильную подсветку новых сегодняшних профессиональных програм- многовато циклов процессора.
обычным текстовым редактором, созда- вызовов, например, mysqli_connect(). мистов, как автозавершение кода (которое Однако всем этим функциям
вая новейший алгоритмический шедевр, Контроль версий SlickEdit поддержива- всегда было проблемой для разработчи- далеко до дерева откатов Vim».
если можно воспользоваться специально ет и Subversion, и CVS, и кучу других сис- ков). В этом отношении SlickEdit хорош,
созданным инструментом? тем. По правде говоря, это просто ссыл- но при наборе участков кода постоянно
Редакторов для программистов на све- ки на подготовленную командную строку, возникает легкая (и досадная) задержка
те хватает: взять хотя бы Emacs, Kate, или но гибкость SlickEdit такова, что можно перед появлением окна автозавершения. Единственный, но жирный минус –
JEdit – да мало ли добротных бесплатных создавать и свои собственные, назначе- Функция, однако, действует безупречно, а внешний вид программы. Понятно, что
инструментов! Поэтому платная программа нием любых команд таким действиям, как «задумчивости» можно поубавить, ограни- вкусы программистов различаются, но
должна обладать прямо-таки супер-качест- Check In и History. Эта гибкость харак- чив завершение только конкретными вида- интерфейс в стиле Motif с плоховаты-
вом, чтобы ее вообще заметили. К счастью терна для всей программы. В десятках ми кода. ми элементами управления и неудобным
для разработчиков, SlickEdit имеет солид- диалоговых окон настройки можно менять Есть и другие помощники. Если честно, основным окном изрядно затрудняет рабо-
ную репутацию хорошо оснащенной про- сочетания клавиш (которые вам, вероятно, то встроенный калькулятор, хоть и пре- ту с несколькими файлами. Кое в чем
граммы, и настоящая версия добилась еще захочется отредактировать, хотя по умол- красно интегрированный, малость неуклюж. SlickEdit отстает даже от более специа-
больших успехов. чанию SlickEdit предлагает эмуляцию сти- А вот инструмент работы с регулярными лизированных сред разработки для Java.
Со времени нашего последнего обраще- лей Vi, Emcs и др.), цвета кода, подсветку выражениями превосходен – помимо помо- Для обычного корпоративного програм-
ния к SlickEdit включены некоторые новые синтаксиса, расширения файлов, отступы, щи в построении выражений, он поддержи- миста SlickEdit неплох, но учитывая его
функции и, что не менее важно, усовер- шрифты и т.д. вает тестирование правильности их работы. цену, вы, вероятно, предпочтете програм-
шенствованы старые. Наиболее заметные мировать в Kate или Emacs и выполнять
из них – поддержка PHP 5, функция авто- рефакторинг вручную. LXF
генерации для файлов Javadoc и XMLDoc,
улучшенные инструменты регулярных
выражений, поиска и замены, автозавер-
шения кода и закладок. Подарок для Linux-
версии – дополнительный пакет поддержки
шрифтов Xft через fontconfig.

НЕ ЗАБУДЬТЕ
ВЕРДИКТ LINUX FORMAT
О МОДУЛЕ
ФУНКЦИОНАЛЬНОСТЬ 9/10
Если вы Java-программист, то, вероятно,
ПРОИЗВОДИТЕЛЬНОСТЬ 9/10
уже пользуетесь превосходной средой
разработки Eclipse. Но SlickEdit (фирма) ПРОСТОТА ИСПОЛЬЗОВАНИЯ 7/10
разработала версию своей программы в ОПРАВДАННОСТЬ ЦЕНЫ 6/10
виде модуля для Eclipse, так что вы мо-
жете получить функциональность Немного неказист, но хорошо оснащен
для всех видов работ программиста.
SlickEdit, интегрированную в вашу среду
разработки, за более низкую цену ($199)
РЕЙТИНГ 7/10
по сравнению с самостоятельной про-
граммой.
Автозавершение кода «тормозит», но действует безотказно.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 9


ОБЗОРЫ Noise Ninja 2.1

ИНСТРУМЕНТ ФОТОГРАФА

Noise Ninja 2.1


Процесс профессиональной обработки фотографий стал чуточку ближе к Полу Хадсону.

САМОЕ ГЛАВНОЕ накладывать сглаживающие маски легким


Удаляет помехи с цифровых движением руки, а программа сама испра-
фотографий. Попытайте удачи также в вит ваши фотографии.
Gimp. На Mac OS X и Windows есть выбор:
• РАЗРАБОТЧИК: PictureCode можно приобрести программу как самосто-
• САЙТ: www.picturecode.com ятельное приложение, так и в виде модуля
• ЦЕНА: От $34,95 к Adobe Photoshop. А так как Photoshop для
Linux не существует в принципе, то вариан-
ты отсутствуют, вы можете получить только
Фотография – не только искусст- самостоятельный продукт. Требовать моду-
во, но и умение найти баланс тех- ля для Gimp преждевременно – вероятно,
нических параметров. Например, это дело будущего.
для повышения глубины резкости необ- Не имея функциональности модуля,
ходимо выставить малую диафрагму и вы ограничены в выборе типов файлов.
длительную выдержку – но увеличение Например, в Photoshop для OS X мож-
выдержки обычно приводит к размыванию но загрузить и обработать фотографию
изображения. Выдержку можно уменьшить в Noise Ninja в формате RAW, а на Linux
вдвое с каждым очередным номиналом ISO- доступны лишь TIF и JPEG. Имеется под- Простой интерфейс наводит на мысль, что работать в Noise Ninja проще
простого, но не ждите, что она совершит чудо со сложным изображением!

«МОЖНО УБРАТЬ ПОМЕХИ И Ползунки и кнопки


Можно просматривать отдельные каналы
процессе работы Noise Ninja подстроится
автоматически. Владельцев мощных ком-
НАЛОЖИТЬ МАСКУ ОДНИМ и определять, где сосредоточены основ- пьютеров ждет приятная новость: Noise

ДВИЖЕНИЕМ.» ные помехи – особенно часто этим грешат


каналы синего цвета. Если какие-то пятна
Ninja полностью поддерживает многопро-
цессорную и многоядерную архитектуры;
вам захочется оставить, можно «нарисо- есть возможность размещения директории
рейтинга (100, 200, 400 и т.д). Однако уве- держка 16-битных TIF (если вы приобрели вать» первоначальное изображение поверх с файлами на отдельном разделе для повы-
личение рейтинга неминуемо увеличивает версию Pro за $70), но из Gimp они не отфильтрованной версии с помощью инс- шения производительности.
электрический шум – разноцветные зерна и экспортируются, и большинство пользо- трумента Noise Brush (Шумовая Кисть).
пятнышки, производимые фотоэлементом вателей будет довольствоваться 8-битным Он подойдет для восстановления мелких Чудо одним щелчком
камеры. Изображение, прекрасно выгля- цветом. Зато добрые старые JPEG Noise деталей, которые Noise Ninja заутюжил Каждый фотограф сталкивался с пробле-
дящее на ISO 100, на ISO 3200 покроется Ninja чистит отлично. чересчур агрессивно. мой помех, и Noise Ninja – именно то, что
радужными разводами, сведя на нет все Базовые функции удаления помех А вот пакетный процесс – гениальная вам необходимо для решения этой про-
труды по тщательной подборке баланса. хороши для новичков, но в арсенале Noise вещь, это автоматическая фоновая обра- блемы (пробная версия всегда наготове на
На помощь приходит Noise Ninja: смело Ninja есть и более тонкие инструменты. Мы ботка целых директорий с фотография- сайте PictureCode). Нам она уже помогла
повышайте ISO-рейтинг, помехи на ваших добились прекрасных результатов следую- ми. Поскольку удаление помех и фильтры спасти сотни фотографий, и, надеемся, в
фотографиях ликвидируются цифровыми щим способом: до отказа выдвинули пол- настраиваются раздельно, резкость можно будущем спасет еще больше – она на это
методами. зунки Smoothness и Strength (Гладкость и увеличить, скажем, в Gimp, а Noise Ninja способна. LXF
Noise Ninja имеет опыт работы на Mac Интенсивность) и получили нереалистично поручить индивидуальную обработку помех
OS X и Windows, но первый порт для Linux гладкое изображение. Затем постепенно для каждой фотографии. На практике это
появился лишь в этой версии. Технология снижали уровни, пока зерна не появились означает, что вы можете одновременно
отработана: можно избавляться от помех и снова. чистить фотографии ISO 100 и ISO 3200: в

ВЕРДИКТ LINUX FORMAT


Простая в изучении, изощренная в
работе – без такой вещи не обойтись
любому серьезному фотографу.

РЕЙТИНГ 9/10
До удаления помех (слева), зерна отчетливо видны; после удаления (справа) фотография заметно очистилась.

10 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ОБЗОРЫ FreeBSD 6.1

ОТКРЫТАЯ ОПЕРАЦИОННАЯ СИСТЕМА

FreeBSD 6.1
Команда FreeBSD надеется вернуть своей ОС знаменитую стабильность. Майк Сондерс знакомится
с новейшей версией.
САМОЕ ГЛАВНОЕ Вычищенную FreeBSD 6.0 приняли
Открытая операционная система из доброжелательно, но многие продолжали
семьи Berkeley Standard Distribution. ждать следующей точечной версии, наде-
Аналоги – NetBSD, OpenBSD и, конечно ясь, что уж в ней-то FreeBSD точно «уста-
же, Linux! канится». Поэтому 6.1 – эволюционная
версия: в ней нет ни крупных перемен,
• РАЗРАБОТЧИК: The FreeBSD Foundation
• САЙТ: www.freebsd.org ни новых функций, только подчистка и
• ЦЕНА: Бесплатно по лицензии GPL доводка. Написаны новые стресс-тесты для
проверки стабильности штатной файловой
системы FreeBSD, UFS, имеющей функ-
Пользователи FreeBSD – публи- ции журналирования в лице SoftUpdates.
ка консервативная. Они не любят Поддержка Bluetooth была усовершенство-
скоропалительных, непродуман- вана автоматической настройкой многих
ных добавок в исходные тексты каждой устройств, включение поддержки сетевых
новой версии, как и вставок непроверен- карт Broadcom NetXtreme II, AMD Am7900
ного кода в основное дерево, заставляю- LANCE и Am79C9x расширило набор сете-
щих пользователя тратить время на отлов вых драйверов. Текущая версия FreeBSD
ошибок. работает на платформах x86 PC, AMD64,
Поэтому выпуск версии 5.0 в 2003 г., Itanium и SPARC и занимает два диска –
когда многие разработчики и пользователи первый несет собственно систему, а на Рабочие столы Linux и FreeBSD почти неотличимы – у них одинаковы основная
сочли систему нестабильной, нанес репута- втором разместились настольные и сер- среда и большинство популярных приложений.
ции FreeBSD ощутимый удар. Выпуск 5.0 верные пакеты.
затянулся на годы, так что, казалось, вер- Хотите приятных известий? Наши тесты Рабочий стол FreeBSD 6.1 включает мельчайших ее деталей. [Похвала ничуть не
сии 5.х мы не увидим никогда. Команда показали полный возврат 6.1 к уровню ста- X.org 6.9.0, Gnome 2.12.3 и KDE 3.5.1, с преувеличена, к тому же учебник доступен
FreeBSD выпихнула новую версию, намере- бильности 4.х. Тяжелую нагрузку система серверной стороны – MySQL 5.0.18, Apache и в виде архива для автономного чтения, –
ваясь доработать и стабилизировать буду- несет уверенно, оставаясь отзывчивой к 2.2.0, Sendmail 8.13.6 и Bind 9.3.2. прим. пер.] Эта версия будет поддержи-
щие 5.х, но цели не достигла – пресловутая командам даже в периоды высокой актив- ваться как минимум 12 месяцев.
5.0 наложила отпечаток на все 5.х, и боль- ности процессора и жесткого диска. Итоги Если вы счастливый обладатель
шинство FreeBSD-пользователей остались Одно из интересных для конечных Sysinstall, текстовый инсталлятор, не изме- 6.0, то рвануть на 6.1 особой нужды нет.
на 4.х. пользователей новшеств – это Portsnap, нился по сравнению с 6.0. Конечно, с виду Изменения минимальны – как раз в стиле
позволяющий скачивать сжатые сним- он не так изобретателен, как, например, пользователей FreeBSD. Если вы никогда
ки дерева портов (система построения Anaconda или Yast, зато здорово ускоряет еще не пробовали FreeBSD, сейчас самое
ПО FreeBSD, вдохновившая Portage под инсталляцию (меньше 10 минут для базо- время оценить ее непревзойденную ста-
Gentoo). Это помогает держаться в курсе вой системы вместе с X на нашей 2 ГГц бильность, дружелюбный дизайн и перво-
последних событий – ценное дополнение тестовой машине). Время загрузки тоже на классную документацию. А благодаря режи-
для любителей новейших версий программ. шаг впереди большинства Linux-дистрибу- му совместимости с Linux большинство
Пользователи FreeBSD обновляют свои тивов – 40 секунд до экрана входа в систе- бинарных дистрибутивов Linux-программ
системы заплатками на исходный код из му против 73 для SUSE 10.1. прекрасно уживаются с FreeBSD, и вам
Sysinstall на вид несколько староват, CVS; это медленнее бинарных обновлений Пользуетесь ли вы серверным или не придется жертвовать своей коллекцией
зато инсталляция проходит со свистом. Debian, зато дает полный контроль над про- настольным вариантом – FreeBSD почти приложений. LXF
цессом компиляции. неотличима от Linux. В коллекции Ports –
свыше 14 000 программ (сравните с 15 500
для Debian), среди которых найдется почти
ГДЕ РАБОТАЕТ FREEBSD?
любое приложение, название которого вы

Linux, конечно, любимец компьютерной прессы, Настольный вариант FreeBSD нередко


только можете вспомнить. Раскладка фай- ВЕРДИКТ LINUX FORMAT
ловой системы FreeBSD почти такая же,
но FreeBSD достойно несет трудовую вахту на отстает от Linux в поддержке новейшего ФУНКЦИОНАЛЬНОСТЬ 8/10
многих ответственных постах. Например, Yahoo оборудования, а Ports, система построения ПО,
как и в Linux, за исключением нескольких
использует ее на большинстве своих серверов, утратила уникальность после выхода Gentoo. микроразличий – например, все основные ПРОИЗВОДИТЕЛЬНОСТЬ 8/10
Hotmail тоже была привержена FreeBSD до Однако это, быть может, удобнее, чем море загрузочные параметры собраны в /etc/ ПРОСТОТА ИСПОЛЬЗОВАНИЯ 7/10
вхождения в Microsoft. Именно на серверной дистрибутивов Linux – одна кодовая база, один rc.conf, а не разбросаны в разных местах, ДОКУМЕНТАЦИЯ 10/10
территории FreeBSD нашла себя: источник документации, одно централизованное как в Linux. Если вы попробуете установить
администраторы ценят высочайшую хранилище ПО значительно упрощают жизнь FreeBSD с нуля, имея опыт работы в Linux, Серьезную причину для перехода с 6.0 на 6.1
стабильность и безопасность, предпочитая пользователей FreeBSD. Ведь куда проще найти трудно, но FreeBSD снова нерушима, как
то вряд ли наткнетесь на какие-либо сюрп- скала.
долговременную поддержку непрестанной сказать «У меня FreeBSD 6.1», чем «У меня ризы, но в случае затруднений всегда мож-
изменчивости (пример – изменение FooLinux на ядре 2.6.12, Glibc 2.4.0 и X.org
подсистемы виртуальной памяти посреди серии 7.0.0…»
но обратиться к онлайн-учебнику FreeBSD РЕЙТИНГ 8/10
Handbook – блестяще написанному центра-
Linux 2.4).
лизованному ресурсу для всей FreeBSD, до

www.linuxformat.ru LXF8(82) АВГУСТ 2006 11


ОБЗОРЫ Amanda 2.5

СИСТЕМА РЕЗЕРВНОГО КОПИРОВАНИЯ

Amanda 2.5 НА ДИСКЕ


На странице слева – Amanda, выдающаяся свободная система резервного копирования.
Грэм Моррисон решил разобраться, так ли уж она хороша.

САМОЕ ГЛАВНОЕ Как и NetVault, Amanda работает по


Резервирует данные от Linux-, Solaris- и принципу «клиент-сервер». Сервер – лен-
Windows-клиентов на центральном точный хост (tape host), выдающий под-
сервере. Аналоги: NetVault (страница ключения ленточным же клиентам (tape
напротив) или Arkeia Smart Backup client). В случае необходимости Amanda
(LXF78). может работать с сотнями клиентов, при-
• РАЗРАБОТЧИК: Университет чем не только с другими Linux- и Solaris-
Мериленда машинами, но и с компьютерами Windows
• САЙТ: www.amanda.org (через Samba).
• ЦЕНА: Бесплатно по лицензии GPL Нетрудно догадаться, что для резерв-
ного копирования ленточному хосту нуж-
Взгляните на экранный снимок ны ленточные накопители, но если у вас
справа; теперь – на титульный под Linux уже работает такой накопи-
лист. Знаем, о чем вы подума- тель, то с Amanda он уживется почти
ли, и вы совершенно правы: интерфейс наверняка. Amanda пользуется собствен-
Amanda красотой не блещет. В противопо- ными протоколами для клиент-серверно-
ложность лощеному интерфейсу NetVault, го соединения, но работает на стандарт-
внешность Amanda непритязательна: GUI ном Linux-оборудовании; правда, для него
отсутствует, и никуда не денешься от необходимо будет составить определение.
командной строки. Даже при установке Этот процесс способен занять от пяти до Смотреть не на что… Amanda – лабиринт файлов конфигурации и серия
Amanda в виде RPM не обойтись без неко- восьми часов; в итоге Amanda определит командных строк, оттого и картинка скучная.
торой возни с файлами конфигурации доступный объем хранилища и среднюю
(потребуется известный опыт). Зато, как скорость передачи (хотя и в собственной
только все «на мази», в командной строке базе данных Amanda заложены определе- работа клиентов) и аппаратным сжати- полной сохранности критически важных
нужды уже нет – ну, разве что случится ния порядка 14 наиболее распространен- ем. Новшество настоящей версии – воз- данных очень украшает жизнь. Amanda –
катастрофа… ных типов ленточных накопителей, среди можность назначения политики в зави- необычайно полезный инструмент в уме-
Что необычно для открытого проек- них – обычные устройства от Quantum, симости от типов файлов, это сохраняет лых руках; и если ваши руки таковы, при-
та – разработчики позаботились о вари- Sony и HP). Если ленточный накопитель уйму времени на попытках сжатия и без ложите их к делу и исключите малейший
антах RPM не только для SUSE и Fedora, для вас избыточен, с помощью Amanda того сжатых файлов (некоторые аудио- и риск потерь! LXF
но и для корпоративных версий обоих можно создать виртуальный ленточный фото-форматы).
дистрибутивов. Amanda разработана в накопитель, а затем вписать его объем в Безопасность – еще одно важное
Университете Мериленда, отсюда и назва- DVD или CD. Значительное преимущество достоинство программы. Безопасность
ние – Advanced Maryland Automatic Network нынешней версии состоит в поддержке авторизации и передачи данных между
Disk Archiver (Продвинутый Мерилендский многотомной резервной копии – системно- клиентом и сервером усилена поддержкой
Автоматический Сетевой Дисковый му администратору больше не нужно вся- Kerberos 4/5 и OpenSSH. Последний вклю-
Архиватор). кий раз соизмерять объем сохраняемых чается простым изменением строк ‘auth’
данных с размерами носителя. главного файла конфигурации, как на сер-
Имеется поддержка смены лент, но верной, так и на клиентской стороне. Если
чтобы ей воспользоваться, понадобит- Amanda найдет ключи SSH по умолчанию,
ся известное умение: в Amanda включен то ими и воспользуется, но есть возмож-
лишь простейший скрипт, который почти ность прямого ввода таких ключей в файле
наверняка придется править. конфигурации клиента.
Как вы уже заметили, мы часто упоми-
Тонкая работа нали о необходимости правки файлов кон-
Один из важнейших критериев оценки фигурации Amanda – зато других проблем ВЕРДИКТ LINUX FORMAT
любой программы резервного копирова- просто нет. Это инструмент системного
ния – возможная степень сжатия данных. администратора, а не игрушка для взрос- ФУНКЦИОНАЛЬНОСТЬ 9/10
В Amanda и это под контролем, но кое-что лых. Вот почему на сайте Amanda пред- ПРОИЗВОДИТЕЛЬНОСТЬ 7/10
зависит от инсталлированного ПО. Для ставлен столь внушительный список фирм ПРОСТОТА ИСПОЛЬЗОВАНИЯ 4/10
большинства пользователей хорош Gzip, и консультантов, всегда готовых помочь ДОКУМЕНТАЦИЯ 7/10
дающий даже большую степень сжатия, в настройке – или, по их выражению,
чем аппаратное (обычно около 2:1). Есть «внедрению». Существует также корпо- Трудна в настройке, зато свободна и
превосходно оснащена
выбор между сжатием на стороне клиен- ративная версия от Zmanda, для платных
Результаты каждого копирования,
включая отчет о занятой памяти,
та (уменьшает нагрузку на сеть за счет подписчиков. РЕЙТИНГ 7/10
высылаются на на e-mail использования клиентских процессоров), Решение недурное. Даже если в вашей
администратора. сжатием на стороне сервера (облегчается системе все уже отлажено, уверенность в

12 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ОБЗОРЫ BakBone NetVault 7.4

СИСТЕМА РЕЗЕРВНОГО КОПИРОВАНИЯ

BakBone NetVault 7.4


…а справа – необычная для нашего издания, весьма недешевая вещь. NetVault стоит кучу денег и может
хранить терабайты информации, но Грэм Моррисон сомневается, что этого хватит для победы над чарами
свободной Amanda.

хотя оно отделено от главной конфигура-


САМОЕ ГЛАВНОЕ
ционной панели, именно здесь происходит
Клиент-серверная программа резервного каждодневная работа по добавлению новых
копирования с графическим устройств и подключению клиентов, а также
интерфейсом. Аналоги: Amanda 2.5 или просмотр журналов системы.
Arkeia Backup.
После инсталляции первым делом надо
• РАЗРАБОТЧИК: BakBone Software добавить клиентов NetVault к серверу. Когда
• САЙТ: www.bakbone.com программа установлена у клиента, доста-
• ЦЕНА: $1300+НДС (пять клиентов с 12- точно будет просканировать сеть из Панели
слотовым переключателем управления клиентами (Client Management
накопителей и круглосуточная
panel) на сервере – появятся все доступ-
поддержка 24/7)
ные клиенты, и для включения в список на
резервное копирование нужно будет просто
NetVault – ещё один тяжеловес щёлкнуть по ним мышью. Графический
среди инструментов резервно- интерфейс скорее функционален, чем кра-
го копирования, но отнюдь не сив, и больше похож на старые приложе-
свободный. Он пользуется собственны- ния Motif, чем на новейший инструмент.
ми протоколами и поддерживает гораз- Имеются также некоторые шероховатости:
до более узкий диапазон устройств, чем возможно открытие нескольких одинако- Функциональный интерфейс пользователя позволяет просматривать папки,
Amanda, зато прекрасно оснащён. Если вас вых окон сразу – такого мы не наблюдали файлы и даже устройства. В список архивации они добавляются одним щелчком
не запугает 600-страничное руководство с конца 90-х. мыши.
администратора, то уж 23 вкладки пане- Опознав клиентов, можно настраивать
ли конфигурации запугают непременно; и носители архива. Выбор в NetVault беднее, действительно необходимые вещи, боль- восстановить самую первую копию, затем
все-таки инсталлировать NetVault вовсе не чем в Amanda, но и здесь налицо десят- шинство же пользователей вполне устра- каждую успешную из серии последующих
трудно, особенно в сравнении с Amanda 2.5. ки ленточных накопителей и NAS (network- ивают умолчания. Единственное исключе- инкрементальных. Эта задача решается
Единственный скрипт позволяет установить attached storage, сетевых хранилищ), поэто- ние – для случая, когда необходимо копи- превосходным модулем, избавляющим вас
любую клиент-серверную комбинацию или му проблемы вряд ли будут. Как и в Amanda, ровать базу данных без остановки её рабо- от мороки ручного восстановления.
просто клиента. возможно сохранение в локальной фай- ты, тут уж понадобится доплата; имеются NetVault превосходно «упакован», и вы
Системному администратору NetVault ловой системе, с помощью ‘virtual library’ – модули для работы с Oracle, PostgreSQL всегда чувствуете себя уверенно. Настройка
в основном придётся работать с двумя «виртуальной библиотеки», по терминоло- и MySQL. конфигурации и управление копировани-
приложениями. Первое – вышеупомянутая гии NetVault; можно даже назначить целый Важнейший из стандартных модулей ем с помощью консоли и GUI – это две
23-страничная конфигурационная панель, диск в качестве самостоятельного вирту- служит для прохода по клиентским фай- большие разницы; правда, не столько в
именно отсюда настраиваются все низко- ального устройства. Настроив клиентов и ловым системам. Это больше, чем просто удобстве, сколько в наглядности. Гораздо
уровневые параметры NetVault: конфигу- носители информации, смело приступайте навигация по файлам и каталогам клиент- легче понять суть своих действий, когда вы
рация брандмауэра, установка и удаление к архивированию данных. ской машины: существуют специализирво- видите свой маршрут по файловой системе
модулей, аудит и лицензирование. Второе – анные механизмы для каждого типа ФС. клиента, а задания добавляются в очередь
GUI NetVault, известный в командной строке Иметь или не иметь? Так, если вы занялись файловой системой у вас на глазах. Опытного администратора
под именем nvgui. Это приложение одина- NetVault почти везде использует систему Linux-клиента, модуль знает, как обращать- этой косметикой, конечно, не проймёшь, но
ково как для клиента, так и для сервера, и модулей – то есть вы платите только за ся с особыми файлами из /proc или /dev. по крайней мере, в NetVault вы своими гла-
Есть даже доступ к устройствам в /dev и зами видите, куда ушли ваши деньги. LXF
просмотр оборудования по идентификато-
ПОЧЕМУ ИМЕННО ЛЕНТА?
ру – это удобно при архивировании диска
Несмотря на DVD и винчестеры, ничего лучше ленты для резервных
целиком. Мы уже намекали, что другие
копий пока не придумано. ВЕРДИКТ LINUX FORMAT
файловые системы поддерживаются тоже –
Не думайте, что магнитофоны упоминаются лишь в исторических трактатах: лента и резервная значит, доступны и Windows-клиенты. С ФУНКЦИОНАЛЬНОСТЬ 9/10
копия – до сих пор синонимы. Хранить данные на ленте значительно дешевле, чем на любом помощью того же модуля вы получаете ПРОИЗВОДИТЕЛЬНОСТЬ 8/10
другом носителе, а содержать сотни гигабайт информации на одной магнитофонной катушке доступ и к реестру Windows, и к базе дан-
удобнее, чем на десятках DVD. Многие программы Linux специально созданы для прямой работы с
ПРОСТОТА ИСПОЛЬЗОВАНИЯ 7/10
ных классов COM+. Конечно, с файлами
лентой, лучший пример – tar. Он хорошо знаком всем нам как распаковщик файлов из Интернета, ОПРАВДАННОСТЬ ЦЕНЫ 6/10
и папками можно работать и обычным
но мало кто знает, что tar – сокращение от Tape Archiver (Ленточный Архиватор). Старые ленточные
накопители могли записывать данные блоками по 512 байт, отсюда и внутренний стандарт для tar.
способом. Дорого, но по средствам тем, у кого размер
жесткого диска соизмерим с размерами
Amanda 2.5 использует tar для сжатия и конкатенации файлов в резервной копии, однако По умолчанию, резервное копирование
бюджета.
вместимость ограничивается объёмом одной ленты. NetVault в этом отношении продвинулся делается инкрементально – иными слова-
значительно дальше: он может использовать автоматические переключатели устройств – ёмкость ми, NetVault сохраняет лишь разницу между РЕЙТИНГ 8/10
хранилища становится почти неограниченной. последней и текущей копией. Для полного
восстановления данных на диске нужно

www.linuxformat.ru LXF8(82) АВГУСТ 2006 13


DISTROWATCH

Distrowatch
Ежемесячная сводка новостей дистрибутивов Linux.

ВОСХОД SUSE
Когда Novell при-
обрёл SUSE в
Неоконченная Симфония
Symphony OS – новый игрок на рынке настольных систем – достигла бета-статуса.
ноябре 2003-го
года, пользовате-
ли забеспокои- После установки несколь-
лись о будущем ких самых распространён-
любимого дистри- ных дистрибутивов легко
Ладислав Боднар бутива. Каковы заключить, что вы видели их все. Но Райан
основатель,
истинные намере- Квинн [Ryan Quinn], создатель Symphony
руководитель и
ния Novell? А OS, знает непохожий.
сотрудник
DistroWatch.com. вдруг сетевой
На данный момент, Symphony OS – без
гигант превратит
сомнения, одна из самых необычных
SUSE в эксклюзивную операционную
систему для крупных корпораций и настольных ОС. Вместо копирования тради-
проигнорирует домашних пользовате- ционного способа доступа к приложениям и
лей? Или, чего доброго, прекратит утилитам через систему каскадных меню
работу над дешёвым коробочным про- эта система использует так называемые
дуктом и сфокусируется на гораздо десклеты – наборы многофункциональных
более прибыльном серверном рынке? утилит для запуска программ, подключения
к Интернет, поиска файлов и предоставле-
«ОТКРЫТО МНОГОЕ ния всевозможной полезной информации.
ИЗ КОДА SUSE И КОДА Десклеты специально спроектированы для
предоставления простого доступа ко всему,
САМОЙ ФИРМЫ NOVELL.»
что может понадобиться большинству
К счастью, теперь мы знаем, что пользователей.
Mezzo, рабочий стол Symphony OS, легко конфигурируется через Desktop
этот пессимизм был необоснован. Фундаментальную часть Symphony OS
Manager. Видите минимизированную иконку Gimp?
SUSE Linux по-прежнему продаётся в образует рабочий стол, носящий имя Mezzo.
Европе и Северной Америке, причём Помимо вышеупомянутых десклетов, Mezzo
Novell, для привлечения сторонних отличается от большинства традиционных четырёх углах экрана. Десклеты можно И даже если позже вы отбросите идею
разработчиков, вообще открыла дист- рабочих столов тем, что у него нет панели настраивать, и по мере взросления проекта, перехода на Mezzo, вы, наверное, согласи-
рибутив и предоставила к нему сво- задач: если приложение минимизировано скорее всего, созданные сообществом деск- тесь, что всем надо встать и поаплодиро-
бодный доступ, как только вышла
или потеряло фокус, оно становится либо леты покроют все мыслимые виды задач – вать разработчикам Symphony OS за сме-
стабильная версия. Лучше того – боль-
иконкой, либо миниатюрным окном в ниж- подобно расширениям Firefox. лость мыслить по-другому.
шая часть кода SUSE и собственного
кода Novell переведена под лицензию ней части экрана. Mezzo также предоставля- Хотя Symphony OS может использовать www.symphonyos.com
GPL: приложения Yast, AppArmor и, ет четыре других виртуальных рабочих стола обычный набор утилит Debian для установ-
совсем недавно, Xgl и Compiz. с добавочными десклетами. Все они доступ- ки программного обеспечения (система
Пользователи Linux могут радовать- ны по щелчку на иконки, расположенные в построена на базе нестабильной ветки
ся; однако инвесторы Novell скорее Debian), разработчики создали графичес-
всего не так довольны. Компания пока кое приложение для установки дополни-
не сумела превратить успех SUSE тельных программ и удаления ненужных
Linux в источник дохода, и если ситуа- пакетов. One-Click Software (так называется
ция вскорости не изменится, Novell
это приложение) представляет собой web-
окажется под давлением своих акцио-
сервис, предоставляющий доступ к опре-
ЗНАМЕНИТОСТИ MEZZO
неров. Но есть и хорошие новости –
Novell в ближайшие месяцы собирает- делённому количеству категорий программ,
Идея новаторского рабочего стола
ся выпустить два важных продукта: предназначенных для установки одним Mezzo пришла в голову Джейсону
SUSE Linux Enterprise Server и SUSE щелчком, включая игры, Интернет, мульти- Списаку, он в данный момент является
Linux Enterprise Desktop, которые медиа и офисные приложения. лидером проекта Symphony наравне с
должны принести прибыль, достаточ- Непременно попробуйте эту систему в Райаном Квинном. Списак также – соос-
ную для всеобщего счастья. Будем действии, и хотя её последняя версия (на нователь Lycoris и по совместительству
надеяться, что эта стратегия принесёт момент написания статьи это 2006-05 beta) актёр, озвучивающий мультфильмы и
успех. пока что не является полнофункциональной игры – он принимал участие в озвучива-
нии сериала 2001-го года Transformers:
и содержит изрядное количество очевид-
Robots in Disguise.
Создатель системы Райан Квинн – ных ошибок, она гарантирует вам несколько
Perl-хакер, интересующийся часов интересного времяпрепровождения.
дизайном GUI.

14 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


DISTROWATCH

Разбиение – запросто!
GParted Live CD – бесплатное приложение типа Live CD для разбиения жёсткого диска

GParted Live CD – не столь- работающий с компакт-диска. После пары- большинство типов файловых
ко дистрибутив Linux в тройки вопросов о выборе языка и расклад- систем (кроме FAT16 и FAT32)
привычном смысле этого ки клавиатуры, загружается GParted – гра- нельзя перемещать. Главное,
слова, сколько утилита, предназначенная фический интерфейс к GNU Parted с подде- что уменьшение раздела NTFS
для упрощения процедуры разбиения жёст- ржкой drag-and-drop. Он сканирует жёсткие (системы, используемой в
кого диска. Эту программу можно считать диски, определяя их текущее разбиение. Windows XP) поддерживается
аналогом Partition Magic в мире бесплатных GParted поддерживает большинство хорошо!
программ; и действительно, Live CD разме- популярных файловых систем: Ext2, Ext3, Помимо очевидной способ-
ром 31 МБ – не только великолепный инс- FAT16, FAT32, JFS, ReiserFS, Reiser4, NTFS, ности работать с разделами,
трумент разбиения диска, но он также нахо- XFS и несколько других. Все эти файловые GParted также обучен копиро-
дится в свободном доступе, его можно бес- системы могут быть созданы с помощью вать разделы и жёсткие диски,
платно использовать, модифицировать и нескольких щелчков мыши, но изменение что делает его отличной утили-
распространять. их размеров – задача более сложная: неко- той резервного копирования и
GParted: и утилита разбиения
Как следует из его имени, GParted Live торые системы, например, ReiserFS и восстановления. жёсткого диска, и информатор о
CD – это дистрибутив, загружающийся и Reiser4, не могут менять свой размер, а gparted.sourceforge.net файловых системах.

ХИТ-ПАРАД ДИСТРИБУТИВОВ

Мал, но мил
10 самых посещаемых страниц
на DistroWatch.com в мае
(среднее число визитов в день)

1 Ubuntu Linux 2,817


Austrumi Live CD – лёгкий, быстрый и эффектный.
2 SUSE Linux 2,596
3 Fedora Core 1,259
При попытке ранжировать 4 Mepis Linux 1,047
Рабочий стол 5 Mandriva Linux 914
программные проекты по Austrumi – 6 Damn Small Linux 902
степени близости к ком- Enlightenment –
7 Debian GNU/Linux 745
пьютерному эквиваленту понятия нирваны куда красивее,
8 FreeBSD 735
Austrumi Live CD подберётся к самой вер- чем Fluxbox из
Damn Small Linux. 9 PCLinux OS 646
шине списка. А как иначе описать систему, 10 Knoppix 624
которая умещается на мини-CD размером
50 МБ, работает с нечеловеческой скоро-
DistroWatch.com отслеживает популяр-
стью, отлично выглядит и включает столько ность дистрибутивов, основываясь на
программ, что с трудом верится в её загруз- количестве посещений сайтов, посвя-
щённых конкретным дистрибутивам.
ку всего за несколько минут? Ну, а если вам больше пары секунд. Хотя эти цифры и не отражают настоя-
и этого мало – она ещё и понимает Почему бы и вам щее количество инсталляций, они явля-
ются индикатором популярности дист-
по-латышски! не скачать последнюю рибутива на данный момент времени.
Созданный Андреем Мейнертсом версию? Но учтите, как
[Andrej Meinerts], этот дистрибутив – насто- только она окажется на
ящее чудо среди других мини-дистрибути- литы конфигурирования и даже серверы. вашем компьютере, будет очень сложно
вов Linux. Он загружается, целиком копируя Поскольку все эти программы уже загруже- вернуться к старому дистрибутиву. LXF
себя в ОЗУ для более быстрого доступа к ны в память, запуск любой из них не займёт http://sourceforge.net/projects/austrumi
приложениям и для высвобождения CD-
привода под другие, более интересные ИНТЕРЕС К UBUNTU РАСТЁТ И РАСТЁТ
задачи, вроде проигрывания видео. Он так-
же сам опознаёт состав аппаратуры, и не В Google за последнее время создано много полезных инструмен-
успеете вы опомниться, как окажетесь в тов; один из них – Google Trends (www.google.com/trends), бес-
Enlightenment 17 – нестабильной версии платный сервис, позволяющий отследить тенденции поисков по
прекрасного легковесного рабочего стола, ключевым словам на этой популярной поисковой машине. Какие
темы интересуют людей и как этот интерес менялся с течением
славящегося необычными визуальными
времени? Google Trends всё это знает.
эффектами.
Мы приводим графики количества запросов на пять слов:
Крошечный Austrumi включает в себя
Ubuntu, SUSE, Fedora, Mandriva и Debian. Результат подтверждает
почти все мыслимые типы приложений феноменальный рост популярности Ubuntu – кривая начинается с
рабочего стола. Тут есть AbiWord и Gnumeric нулевого числа поисков в середине 2004-го и в итоге опережает
для офисных задач, Bluefish для редакти- все прочие поисковые слова в мире Linux. Тенденции поиска по
рования HTML, Gimp и Inkscape для редак- остальным большим дистрибутивам остаются на постоянном
тирования графики, Firefox, XChat, GFTP и уровне, с пиками около моментов релизов. Исключение составля-
ет Mandriva, к ней интерес за последний год был очень ровным. Были уже и Google Maps и Google Fight, а теперь Google
Linphone для Интернет, MPlayer для проиг-
Trends сообщает, что нынче в моде.
рывания мультимедиа, несколько игр, ути-

www.linuxformat.ru LXF8(82) АВГУСТ 2006 15


Cравнение
СРАВНЕНИЕ X-ТЕРМИНАЛЫ

Каждый месяц мы просматривает тонны ПО, чтобы вам не приходилось заниматься этим самостоятельно.

X-ТЕРМИНАЛЫ
Ах, настоящая работа с компьютером! Нейл Ботвик ныряет в омут терминалов, предлагаемых Linux.
НА ДИСКЕ

Большинство пользователей строки в окне на вашем рабочем столе тора терминала – процесс глубоко личный;
Linux начинают с использова- – здесь-то и появляется X-терминал, или, здесь мы постарались вам дать представле- НАШ ВЫБОР
ния графического интерфейса. полностью, эмулятор X-терминала (назва- ние о том, какие есть приложения и каковы ДЛЯ СРАВНЕНИЯ
Основные дистрибутивы снабжены отлич- ние выдает, что воспроизводится тупой ста- их сравнительные достоинства и недостатки.
ными инсталляторами и инструмента- рый терминал ПК прошлых лет). Терминалы тестировались в разных средах,
Aterm ...............................20
ми конфигурации, с которыми вы могли Запуск терминала на рабочем столе в основном это был Athlon 64, с KDE под
прохлаждаться в комфорте графического означает, что вы сможете прочитать инс- Gentoo, и iBook с Gentoo и Fluxbox.
Eterm................................20
интерфейса пользователя (GUI), но рано трукции в графическом web-браузере или Чтобы вам помочь, мы сконцентрирова- Gnome Terminal..............19
или поздно каждый из нас покидал его почтовой программе, перед тем как выпол- лись на разнице между ними. При этом рас- Konsole ............................19
ради командной строки. К примеру, какое- нить их в терминале. Все терминалы, рас- сматривались: количество имеющихся функ- Mlterm .............................20
то нужное вам приложение не поставляется смотренные здесь, позволяют также встав- ций, простота использования и модификации Rxvt ..................................18
в качестве пакета в вашем дистрибутиве и лять скопированный из другого окна текст, этих функций, влияние внешних украшений
Wterm ..............................18
поэтому приходится устанавливать его из так что вам, возможно, даже не придется – например, прозрачности – на производи-
исходных текстов. Или оказывается, что набирать его – только не вздумайте по тре- тельность терминала и программы: увеличи- Xterm ...............................18
единственные доступные инструкции для бованию какой-нибудь web-странички вста- вается она или, наоборот, снижается. Yakuake ...........................17
выполнения вашей задачи подразумевают вить rm -fr /* ! Производительность – у командной Yeahconsole....................17
использование оболочки (shell). оболочки? А почему бы и нет: разница в
А еще уважительнее следующая при- Проверка скорости скорости, с которой эти программы выво- измеряла затраченное на это время. Если
чина: вы уж так наслушались, что оболоч- Считается, что X-терминалы обладают лишь дят текст, огромна; на большинство опе- ваше отношение к Linux серьезно (а раз уж
ка – это хорошо, что захотели сами в ней базовыми функциями, но в большинстве раций это, может быть, и не повлияет, вы читаете Linux Format, так оно, видимо,
поработать. Можете нажать Ctrl+Alt+F1 и своем они имеют широкий выбор пользова- но иногда бывает важно. Мы измеряли и есть), вы проводите немало времени в
выйти в чистую консоль Linux, но зачастую тельских опций или интегрированы с опреде- скорость с помощью программы, которая своем любимом терминале, так что читайте
куда удобнее запустить сессию командной ленной средой рабочего стола. Выбор эмуля- выводила длинный текст в терминал и внимательно…

16 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


СРАВНЕНИЕ X-ТЕРМИНАЛЫ

Yakuake
Quake знакомится с командной строкой
• ВЕРСИЯ: 2.7.5 • WEB: http://extragear.kde.org/apps/yakuake
• ЦЕНА: Бесплатно по лицензии GPL

Yakuake – это ответвление Kuake, которая позволяет вам запускать команды,


заброшенного больше двух лет назад. Это но не дает увидеть результат.
терминал в стиле Quake, вываливающийся Yakuake основан на Konsole, и позаимс-
из верхней части дисплея, когда вы нажи- твовал оттуда функции типа полос прокрут-
маете клавишу. Если, по-вашему, эмулятор ки, настраиваемых вкладок и прозрачности.
терминала на базе одной из функций стре- Yakuake даже медленнее, чем Konsole (см.
лялки – это круто, берите его. Терминал стр. 35), но это не тот терминал, который
Quake основан на предположении, что может стоит использовать для задач с большой
потребоваться быстро показать и спрятать нагрузкой, требующих скорости. Yakuake может изменять внешний вид,
его в любой момент игры; такой постулат Еще одно различие между Yakuake и и хотя поставляется только с одной «шкур- Yakuake – нетривиальная альтернатива
можно применить и к использованию обыч- окном X-терминала – Yakuake открывает- кой», остальные можно найти на www.kde- стандартам Gnome и KDE, и его стоит
ного рабочего стола – если вам надо выпол- ся на всех рабочих столах, поверх всех look.org, кроме того, там имеется подсказ- исследовать.
нить пару командных строк, то не придется окон, благодаря чему его не потеряешь. ка по созданию собственного дизайна.
открывать терминал, выполнять команды и Это отличное свойство в следующем рели- ТЕРМИНАЛЫ,
закрывать его снова: просто нажмите горя- зе будет опциональным. Вы настраивае-
ВЕРДИКТ LINUX FORMAT ОБОЛОЧКИ И
чую клавишу – и терминал перед вами. те свойства Konsole обычным способом,
Yakuake сохраняет свое состояние меж- а собственные настройки Yakuake можно
Этот терминал скорее годится не для КОМАНДНЫЕ
напряженных сессий оболочки, а для
ду сессиями, и это куда полезнее, чем изменить, редактируя недокументирован- быстрых задач, но уж для них-то он СТРОКИ
весьма полезен.
открытие нового окна всякий раз, как вам ный файл конфигурации на ~/.kde/share/
понадобится командная строка. Это ста- config/Yakuakerc. Полезная информация РЕЙТИНГ 7/10 При описании среды командной строки на
вит его где-то между постоянно открытым в этом файле позволит вам сэкономить терминалах используется целый ряд тер-
окном X-терминала и мини-консолью KDE, немало времени. минов (извините за каламбур), порой вза-
имозаменяемых. Мы попытаемся выло-
вить рыбку смысла в этой мутной водице.
Использование слова «терминал» вос-

Yeahconsole ходит к прошлому, ко временам больших


компьютеров, доступ к которым предо-
ставлялся через отдельное устройство,
называемое тупым терминалом (dumb
Всплывающий терминал в стиле Quake terminal). Эмулятор X-терминала, рас-
сматриваемый здесь – это программа,
• ВЕРСИЯ: 0.3.4 • WEB: http://phrat.de/yeahtools.html выполняющая ту же функцию, но в окне,
• ЦЕНА: Бесплатно по лицензии GPL расположенном на рабочем столе.
Обычно терминал используется для пере-
Yeahconsole – еще один терминал в Yeahconsole. По умол- дачи команд компьютеру, на котором он
запущен, но можно соединить его окно и с
стиле Quake, похожий на Yakuake. Различие чанию – Xterm, снаб-
другим компьютером, через сеть.
между ними в том, что Yakuake основан на женный лишь самым
Консоль, или виртуальная консоль –
Konsole, и поэтому для работы ему нужна необходимым, но это чисто текстовый интерфейс. Именно
хотя бы часть KDE, тогда как Yeahconsole зато всегда имею- ее вы видите, когда загружаете Linux без
использует свободный от зависимостей щийся под рукой. использования X: возникающая подсказ-
Xterm. Можно также взять ка ввести учетную запись находится на
Если вы нажмете нужное сочетание терминалы Urxvt или виртуальной консоли. Большинство дис-
горячих клавиш, в верхней части экрана Urxvtc из ответвле- трибутивов Linux имеют шесть консолей,
выплывет окно Yeahconsole. Оно появит- ния Rxvt с добавкой в которые можно выйти, нажав
ся на всех ваших виртуальных рабочих Unicode. Ctrl+Alt+F1…6 (Ctrl+Alt+F7 обычно нажи-
столах, поверх всех окон. У вас все время мают, чтобы выйти на рабочий стол).
Оболочка – это программа, работаю-
будет одна и та же сессия терминала – он Производительность Yeahconsole
щая в терминале или виртуальной консо-
просто либо прячется, либо показан, а не отнюдь не выдающаяся, особенно при
Yeahconsole предлагает мгновенный ли. Оболочка – настоящий интерпретатор
остановлен и перезапущен. Можно, прав- использовании Xterm, но дело не в этом. командной строки, который считывает
доступ к терминалу с оттенком легкой
да, настроить его и на старт сессии с нуля Yeahconsole предназначен не для труд- Quake-ностальгии. набираемые вами команды и выполняет
при каждом появлении, но это не является ных терминальных задач, а для быстрого их. Существует несколько оболочек, но
установкой по умолчанию и для большинс- выполнения случайных команд, не сходя с почти все дистрибутивы по умолчанию
тва пользователей не особо удобно. рабочего стола, и с этой задачей справля- ВЕРДИКТ LINUX FORMAT используют Bash (Bourne Again Shell –
Yeahconsole настраивается через файл ется очень хорошо. Он не обладает богатс- Далек от гибкости Yakuake, но зато «Возрожденная» оболочка, намек на пер-
полегче и не зависит от рабочего стола. вичную оболочку Bourne в Unix), хотя
~/.Xdefaults; можно задать размеры и твом функций Yakuake, но станет хорошим
многие ругаются с компьютером через
положение окна, скорость всплывания дополнением рабочего стола для всех, кто РЕЙТИНГ 6/10
оболочку zsh с www.zsh.org.
окна и горячие клавиши. Некоторый набор не работает в KDE.
терминалов можно использовать и внутри

www.linuxformat.ru LXF8(82) АВГУСТ 2006 17


СРАВНЕНИЕ X-ТЕРМИНАЛЫ

Xterm
Прототерминал: все еще скудный, все еще медленный

• ВЕРСИЯ: 212 • WEB: http://dickey.his.com/xterm


• ЦЕНА: Бесплатно по лицензии MIT X11

Это самый первый X-терминал, но ветствующих меню (прочие установки ука-


он все еще в активной разработке. В нем не зываются в командной строке), уж эти-то
найдется ни вкладок, ни меню, ни прозрач- меню уникальны. Правда, они не позволяют
ности, ни профилей, и вообще никаких осо- сохранить текущую настройку – редакти-
бых свойств, отличающих другие термина- руйте файл ~/.Xresources.
лы данного Сравнения. Вы можете поду- Кто-то, наверное, скажет, что Xterm не
ВЕРДИКТ LINUX FORMAT
мать, что он зато быстрый и эффективный – стоит выбрасывать на свалку, потому что Xterm самый медленный и бедный
а вот и нет. На самом деле Xterm медленнее благодаря отсутствию зависимостей он Причины рекомендовать этот терминал терминал нашего обзора – но зато
решительно отсутствуют – разве что зависимостей у него меньше всех.
абсолютно всех рассмотренных терминалов, выручит в аварийной ситуации, но, если смутное желание эмулировать что-нибудь
причем здорово медленнее. Шрифты, цве- одна из наших машин дойдет до жизни этакое.
та и эмуляцию, а заодно и другие опции, такой, что на ней не заработает ни один из
можно настраивать нажатием Ctrl и одной других описанных терминалов, мы уж луч-
РЕЙТИНГ 3/10
из трех кнопок мыши для вызова трех соот- ше нажмем Ctrl+Alt+F1.

Rxvt
Функций – минимум, скорость – потрясающая
• ВЕРСИЯ: 2.7.10 • WEB: www.rxvt.org • ЦЕНА: Бесплатно по лицензии GPL

Rxvt («Наш виртуальный X-терми- ся через параметры командной строки,


нал») вознамерился стать быстрой и лег- а также добавлением опций в ваш файл
кой заменой для Xterm, отказавшись от ~/.Xresources, и настройки нельзя
эмуляции Tektronix и меню, и достиг успе- менять, пока работает Rxvt. Единственная Недостаток свойств Rxvt искупает быстротой. Кому нужна версия
ха: его скорость в 15 раз выше скорости уступка любителям красивостей – возмож- со вкладками, переходите на Mrxvt (не показан).
Xterm. Достиг, однако, дорогой ценой: Rxvt ность поместить фоновый рисунок в окне
лишь чуть получше простейшего терми- терминала. Некоторым это нравится, но по Вкладки – хорошее подспорье при работе ВЕРДИКТ LINUX FORMAT
нала. Это вовсе не всегда плохо: базовые жизни приводит только к ухудшению чита- более чем в одной сессии оболочки одно- Rxvt имеет мало функций, использует
свойства плюс быстрота и отсутствие изли- емости текста. временно. Если вам из всех дополнитель- мало ресурсов и очень быстр.
шеств – многим пользователям именно это Если вам нужна функциональность ных функций, предоставляемых терминала- Попробуйте его на старых системах.
и нужно. чуть пошире – попробуйте Mrxvt. По сути, ми, нужна только эта, Mrxvt может оказать- РЕЙТИНГ 6/10
Настройка Rxvt не особо дружествен- это Rxvt со вкладками, при той же скоро- ся лучшим выбором.
ная. Вся конфигурация устанавливает- сти и почти таком же минимуме функций.

Wterm
Оптимизирован для WindowMaker и GNUstep
• ВЕРСИЯ: 6.2.9 • WEB: www.wterm.org • ЦЕНА: Бесплатно по лицензии GPL
Будьте
осторожны при
Это – ответвление Rxvt: man-страни- а фича» (KDE отображает свой фоно-
выборе цветов
ца Wterm ссылается на него как на Rxvt, и вый рисунок поверх корневого окна X). для шрифтов
большинство ранних комментариев к Rxvt Поскольку Wterm не заботится об уступках и фона.
можно отнести и к Wterm. Основное раз- хорошему вкусу, будьте осторожны при
личие – интеграция Wterm с WindowMaker, выборе цвета шрифта и фонового рисун- его скорость удовлетворит и взыскатель-
ВЕРДИКТ LINUX FORMAT
которая придает ему сходство с GNUStep. ка, если используете прозрачность, еще ных пользователей.
Wterm также обладает настраивае- и потому, что великое множество цве- Wterm гармонично сочетается с Если вам не нужна интеграция с Window-
Maker, то от Wterm вам ждать нечего.
мой прозрачностью, превращающей текст тов используется для отображения фай- WindowMaker и/или GNUStep по внешне-
в нечто невразумительное – по крайней лов разного типа. Терминал почти столь му виду; другие козыри против Rxvt у него РЕЙТИНГ 5/10
мере, при работе в Fluxbox. Это не рабо- же быстр, как Aterm и Eterm, то есть не вряд ли найдутся.
тает в KDE, что, возможно, есть «не баг, настолько неприлично быстр, как Rxvt, но

18 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


СРАВНЕНИЕ X-ТЕРМИНАЛЫ

Konsole
Прибамбасы-причиндалы… и звонки впридачу
• ВЕРСИЯ: 3.5.2 • WEB: www.kde.org • ЦЕНА: Бесплатно по лицензии GPL

Konsole — типичное приложение Terminal быстрее почти в два раза, а Rxvt


KDE: в нем больше опций настройки, чем прокручивает текст в восемь раз быстрее.
семечек в арбузе. Полосы прокрутки отоб- Главным образом, в этом повинно исполь-
ражаются на любой из сторон окна либо зование в Konsole сглаженных шрифтов —
не отображаются вообще. Вкладки могут запустите его с помощью опции --noxft,
появляться вверху, внизу или вообще ниг- и скорость показа текста удвоится.
де. Даже если они скрыты, Konsole умеет
рулить несколькими терминалами в одном Сэкономить время
окне, а для переключения с одного на дру- Если вы захотите войти в директории обще-
гой используется клавиатура — чтобы го пользования, благодаря меню закладок
вывести на экран максимальное количест- Konsole (Bookmarks) понадобится меньше
во текста, войдите в полноэкранный режим, ручного набора; даже при наличии функ-
скрывающий вкладки и меню. ции автодополнения те, кто медленно печа-
Konsole способен сохранять варианты тает, согласятся, что это меню — самый
настроек, включая текущую директорию быстрый способ навигации. Поскольку
и команды, которые вы хотите запустить, Konsole — приложение KDE, почти каж-
в профиле. Профиль текущей оболоч- дое действие можно привязать к горячим
ки, в отличие от Gnome Terminal, сменить клавишам (shortcut), которые вы сами
нельзя, но вы можете загрузить профиль назначаете.
Терминал с невообразимым количеством функций. Konsole сделает все, что
в другую вкладку, удерживая кнопку сле- Как и следовало ожидать, Konsole хоро- вообще можно сделать – разве что порой слегка подтормаживая.
ва внизу окна. Имеется несколько предо- шо интегрирован с остальными програм-
пределенных профилей, включая работу мами KDE. Перетащите файл из Konqueror тоже хороша и отлично интегрирована ВЕРДИКТ LINUX FORMAT
в Midnight Commander. в Konsole – и у вас появится выбор: скопи- с Информационным Центром KDE (KDE
Konsole – полнофункционален и всеобъ-
Если у Konsole есть ахиллесова пята, ровать файл, или переместить его, или че- Help Centre). Есть и другие милые мелочи, емлющ, и делает работу в оболочке гораз-
то это – скорость (точнее, ее отсутствие). рез cd забраться в его директорию. Причем например, функция уведомления о завер- до эффективнее. Но для увеличения ско-
Возможно, для большинства пользователей это касается не только локальных фай- шении команды в одной из вкладок, то есть рости отключите сглаживание шрифтов.

терминалов скорость не играет важной роли, лов: для загрузки в текущую директорию мирно работая на одной вкладке, вы узнае- РЕЙТИНГ 9/10
но в конфигурации по умолчанию Konsole Konsole вы можете перетащить даже ссыл- те, что завершилось выполнение команды,
работает действительно медленно. Gnome ку с web-страницы. Документация у Konsole запущенной на другой. Превосходно.

Gnome Terminal
Богатый функциями терминал по умолчанию для Gnome

• ВЕРСИЯ: 2.14.4 • WEB: www.gnome.org • ЦЕНА: Бесплатно по лицензии GPL

Если вы используете дистрибутив на ный диапазон настроек, включая шрифты,


основе Gnome, например, Fedora Core или цвета, положение полосы прокрутки (или ее
Ubuntu, вы, наверное, и не знаете других отсутствие), цвет фона или прозрачность, а
терминалов. И это не так уж плохо: Gnome также работает ли оболочка в режиме «login С украшательством или без,
Terminal – программа добротная, с под- shell». Вы можете также задать команду, Gnome Terminal – программа, с
держкой таких функций, как вкладки или которая будет запускаться вместо стандарт- которой легко работать.
история прокрутки для помощи при работе ной оболочки, что позволяет создавать про-
в оболочке. Пусть над ними глумятся кру- фили для отдельных приложений, напри-
тые пользователи терминалов, но зато они мер, для Midnight Commander или Lynx. мещать огромные тексты на медленном ник, так что вы сможете извлечь максимум
делают рабочий процесс более удобным и Благодаря профилям настраивать оборудовании: 12 000 строк в секунду на пользы из имеющихся функций.
дружественным. Вкладки – тоже исключи- Gnome Terminal проще, чем любой другой Athlon 64 – это намного больше, чем может
тельно полезное дополнение, позволяющее терминал из нашего Сравнения, но по прочесть большинство из нас. ВЕРДИКТ LINUX FORMAT
открыть несколько оболочек или экранных умолчанию профили отсутствуют. Использование памяти зависит от сре- Легко настраиваемый, хотя
сессий (screen sessions) в одном окне. Gnome Terminal работает медленнее, ды рабочего стола, в которой вы работаете: и обладающий меньшим количеством
Gnome Terminal использует профи- чем большинство других терминалов в этот терминал рассчитан на работу с Gnome, опций, чем Konsole, Gnome Terminal
успешно дополняет рабочий стол Gnome.
ли для сохранения свих настроек, так что нашем Сравнении, тем не менее он почти тогда все соответствующие библиотеки
переключение на совершенно непохожую в два раза быстрее Konsole (в режиме по будут загружены и использование ресур- РЕЙТИНГ 8/10
конфигурацию сводится к выбору нового умолчанию). Насколько эта быстрота важна сов будет минимальным. Кстати, у Gnome
профиля из меню. Профиль содержит пол- для вас, зависит от того, нужно ли вам пере- Terminal есть еще очень удобный справоч-

www.linuxformat.ru LXF8(82) АВГУСТ 2006 19


СРАВНЕНИЕ X-ТЕРМИНАЛЫ

Eterm
Терминал Enlightenment – быстр и привлекателен
• ВЕРСИЯ: 0.9.3 • WEB: www.eterm.org • ЦЕНА: Бесплатно по лицензии GPL

Eterm создан для интеграции со сре- Eterm имеет меню для настройки
дой рабочего стола Enlightenment, но рабо- шрифтов, фона и прозрачности, так что нет
тает с любым менеджером окон или с необходимости лазить по справке и затем Eterm: компромисс между
любой другой средой рабочего стола. По перезапускать терминал для того, чтобы минимализмом и перебором..
части скорости Eterm занимает место где- все это изменить. Естественно, при жела-
то посередине списка конкурсантов: впо- нии вы можете также указать эти опции в ВЕРДИКТ LINUX FORMAT
ловину медленнее, чем Rxvt, но намного командной строке или в конфигурацион- Eterm находится ровнехонько посреди
быстрее, чем Xterm или Konsole. В отноше- ном файле. пользователя над настройками темы, что ассортимента – отличный выбор для тех,
кто любит минимальные, но
нии функциональности он тоже занимает На сайте www.eterm.org/themes мно- позволяет просто взять существующую привлекательные среды рабочего стола.
промежуточную позицию, чего и следует го тем для Eterm. Скачайте тему, распакуйте тему, поковыряться в опциях и затем сохра-
ожидать от программы, разработанной для в $HOME/.Eterm/themes – и при запуске нить настройки пользователя, все из меню РЕЙТИНГ 7/10
Enlightenment, привлекательного и легкого Eterm сможете преобразить его внешний Eterm. Eterm быстр, мало весит и легко
оконного менеджера. вид. Eterm отдает приоритет настройкам настраивается.

Aterm
При всем блеске,
Aterm – весьма
обычный эмулятор
терминала. Уж
извиняйте!
Командная строка, доселе невиданная
• ВЕРСИЯ: 1.0.0 • WEB: http://aterm.sourceforge.net
• ЦЕНА: Бесплатно по лицензии GPL

Aterm являет собой развитие Rxvt, с своего босса, что не трудитесь в поте лица,
упором на приятные для глаза визуальные а занимаетесь хакерством.
эффекты. Эффектов навалом: фоновые Чтобы воспользоваться некоторыми читаемый текст на простом контрастном ВЕРДИКТ LINUX FORMAT
рисунки, прозрачность, полупрозрачность с из этих функций, понадобится установить фоне, то прозрачность и фоновые рисун- Не более чем базовый терминал, разве что
с чрезмерными визуальными эффектами.
настраиваемой насыщенностью тона (чтобы оконный менеджер AfterStep. Выберете вы ки только увеличивают размер и снижают
текст оставался читаемым). Можно даже эту программу или нет, будет зависеть от скорость работы программы, хотя Aterm РЕЙТИНГ 5/10
обесцветить текст, щелкнув вне окна – того, насколько для вас важна внешняя при- перелопачивает тексты большого объема во
очень удобно, когда вы хотите скрыть от влекательность: если вам нравится простой вполне приличном темпе.

Mlterm
Исчерпывающая поддержка всех кодовых таблиц
• ВЕРСИЯ: 2.9.3 • WEB: http://mlterm.sourceforge.net
• ЦЕНА: Бесплатно по лицензии BSD

На первый взгляд, Mlterm – выли- лы двойной ширины, подобные использу-


тый Rxvt или Xterm, но нажмите и удержи- емым в восточно-азиатских языках, а еще
те Ctrl и щелкните правой кнопкой мыши Mlterm работает с языками, где написание
в окне – и р-раз! – он откроет конфигу- идет справа налево, например, с арабс- Если вы пишете иероглифами или
справа налево, то Mlterm – терминал
рационное окно GTK2. Число опций впе- ким и ивритом. Поддерживаются и индий- для вас.
чатляет – здесь имеется обычный набор ские шрифты в кодировке ISCII, хотя авто-
шрифтов, цветов и прозрачности, но ключ ры программы пока считают эту функцию ВЕРДИКТ LINUX FORMAT
к главной функции Mlterm лежит во вклад- экспериментальной.
Простая настройка и лучшая поддержка
ке Кодировка (Encoding). Этот терми- Если вы не задали настройки сами, языков превращают этот ничем иным не
нал – для тех, кто использует не латини- Mlterm автоматически выберет правильную примечательный терминал в идеальный
цу, и само название Mlterm – сокращение кодировку на основе ваших локальных уста- выбор для работающих с языками Азии
и Ближнего Востока.
от «эмулятор многоязыкового терминала» новок. Естественно, вы сможете ее изме- и, очевидно, зависит от набора используе-
(multi-lingual terminal emulator). Он имеет нить, если вам понадобится поработать с мых символов, но если вам надо писать и РЕЙТИНГ 6/10
полную поддержку Unicode, но это еще другим языком. Mlterm был написан с нуля. слева направо и справа налево, то выбор
не все. Поддерживаются сложные симво- Производительность у него не выдающаяся у вас невелик.

20 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


СРАВНЕНИЕ X-ТЕРМИНАЛЫ

X-ТЕРМИНАЛЫ
KONSOLE

9/10
ВЕРДИКТ
Если вы сразу открыли эту стра- ке, то лучше всего остановить-
ницу, чтобы узнать, какой тер- ся на Eterm. Возможно, Eterm
минал самый лучший, примите понравится тем, кто работа-
наши извинения – жизнь не всегда столь ет с «минималистическими»
прямолинейна. Выбор терминала зависит менеджерами окон, например,
от ваших потребностей и, в какой-то сте- с Enlightenment, IceWM или
пени, от среды рабочего стола, в которой одним из вариантов *box.
вы работаете. Если желаете, чтобы фон Для пользователей рабо-
рабочего стола сверкал сквозь текст, може- чих столов-тяжеловесов,
те забраковать половину рассматриваемых Gnome и KDE, более знако-
конкурентов. Так вышло, что ни одна из мыми, возможно, окажут-
этих программ не может предложить вам ся собственные терминалы
прозрачности в чистом виде: только псевдо- рабочего стола, которые и
Все, что нужно от терминала, и кое-что еще.
прозрачность, копирующую соответствую- станут для них наилучшим выбором. Да, у Победа была бы за Konsole уже благодаря
щую часть фона рабочего стола в окне тер- Konsole намного больше опций, чем у Gnome одному только управлению сессиями.
минала (на самом деле окон под термина- Terminal, но это иллюстрирует разницу меж- ДЛЯ ВАС
лом увидеть нельзя). Эта функциональность ду философией KDE и Gnome. Те, кому нуж- Мы не включили
в Сравнение
вашу любимую пр
придет от Х и самих оконных менеджеров по на возможность дополнительных настроек Запустив парочку screen-сессий, каждую ограмму? Вам
кажется, что сра
мере того, как вещи вроде Compmgr станут Konsole, очевидно, уже работают в KDE. в отдельной вкладке, заодно с Midnight терминалов – луч внение
шее, что было со
стабильнее. Ладно, хватит топтаться на меже. Commander, причем кое-что из вышепере- времен последнег
о лучшего-что-
было? Напишите
Если вам нужен минималистский тер- Правила требуют, чтобы был назван победи- численного будет еще и работать на удален- нам об
letters@linuxfor этом на
минал без всякого украшательства, то луч- тель, и им должен стать Konsole. Большой ном сервере через SSH, вы сможете оце- mat.ru.

шим выбором станет Rxvt. Если нужно нечто выбор опций и простота их использования нить мощь и гибкость, предлагаемые этой
попривлекательнее и попроще в настрой- превращают его в выдающийся терминал. программой. LXF

ТАБЛИЦА СРАВНЕНИЯ ФУНКЦИЙ


Gnome
Aterm Eterm Konsole Mlterm Rxvt Wterm Xterm Yakuake Yeahconsole
Terminal

Скорость 4/5 4/5 2/5 2/5 2/5 5/5 3/5 1/5 2/5 1/5

Графический
фон
Прозрачный
фон

Темы

Вкладки

Профили

Меню

Настройка
через GUI
Выбор горячих
клавиш
Текст,
читаемый
справа налево
(1) Воспользуйтесь Mrxvt, с сайта http://materm/sourceforge.net, для получения вкладок в Rxvt.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 21


ТРИ ПАТЕФОНА

ТРИ
ПАТЕФОНА
Петр Семилетов представляет вашему вниманию обзор трех аудиоплейеров.

Лет сто тому назад, желая послу- торы. Музыкальные инструменты – в VST- Пользователь сам выбирает цвет «позоло- Gstreamer – в плейерах Gnome/GTK. Хотя,
шать пение Федорова Ивановича плагины. Магнитофоны и проигрыватели ты»! А ручку завода крутит таймер операци- никто не мешает использовать Xine в про-
Шаляпина на дому, человек шел компакт-дисков тоже перешли в цифровое онной системы. грамме на основе GTK, а Gstreamer – в
в лавку и покупал блестящий, будто отпо- измерение. С момента появления XMMS прошло KDE, что некоторые плейеры и делают.
лированный самовар, граммофон. Тогда В Linux первыми появились консоль- уже почти десять лет. За это время появи- Функциональность Xine и Gstreamer выхо-
это было дорогое удовольствие – больше ные плейеры: cdp, mpg123. Справедливости лись десятки, если не сотни других плей- дит далеко за пределы воспроизведения
полусотни рублей за штуку, да пластинки ради отметим, что занимают они куда мень- еров. Прежде чем приступить к обзору звуковых форматов – поддерживается еще
по трешке. Дешевле было выучить ноты и ше места, нежели граммофон, да и лег- наиболее интересных (на мой взгляд) из и видео, однако это уже выходит на рамки
играть на фортепиано, или на балалайке че его по весу. Но – не такие красивые. них, сделаю несколько предварительных нашей статьи.
без всяких нот. Но – песни Шаляпина или Думается, поэтому возникли в Linux плейе- замечаний. Обычно «монолитные» плейеры отли-
Вяльцевой, исходящие из волшебной тру- ры с графическим интерфейсом. Одним из В настоящее время среди плееров наме- чаются друг от друга только интерфейсом
бы чудо-машины, оставались уделом арис- «первых ласточек» стал XMMS, созданный тились две основные архитектуры. Первая – и набором функций утилитного характера,
тократии или купцов. Покрутил купец ручку по образу и подобию Winamp. В самом плейер на основе подключаемых моду- к воспроизведению музыки отношения не
граммофона, сел за стол, узорчатой скатер- деле, зачем изобретать велосипед, если лей, «старая школа» а-ля XMMS. Ярким имеющего. Большинство таких плейеров
тью крытый, и сидит слушает, чай из блюд- уже готовы его чертежи? представителем таких плейеров является оснащены мощными функциями ведения
ца попивает. Сахарок – вприкус. А Федор Winamp предлагал удобную архитекту- Audacious, о котором мы поговорим ниже. коллекции композиций, хранящейся на жес-
Иванович Шаляпин басит, басит... ру плейера. Распознавание форматов обес- Второй архитектурный подход – монолит- тком диске, и даже святая святых – окно
Вечно только искусство, а не техничес- печивают подключаемые модули. Вывод ный плейер, использующий для ввода/ плейера с элементами управления – играет
кие средства его передачи. Граммофоны звука на различные устройства – опять- вывода звуковых данных один из популяр- в них второстепенную роль. Списки песен,
уступили место патефонам, а те – электро- таки посредством расширений. Визуальные ных мультимедийных движков. Речь идет о составленные по различным критериям,
фонам. На пороге двадцать первого века эффекты – снова они. Наконец, механизм таких решениях, как Xine и Gstreamer. По быстрый поиск нужной композиции – вот
наступила эпоха виртуализации. Печатные сменных «шкурок». Это же граммофон с моим наблюдениям, Xine более популярен конек «монолитных» плейеров.
машинки превратились в текстовые редак- бесконечным набором иголок и мембран. в качестве движка в проектах KDE/Qt, а

22 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ТРИ ПАТЕФОНА

Audacious
Представитель старой школы
• ВЕРСИЯ: 1.1 • WEB: http://audacious-media-player.org/
• Цена: лицензии GPL

Плейер XMMS, как известно, написан песен. Какие-либо функции по ведению


под библиотеку GTK+1, то есть под «ста- коллекции песен и поиску в этой коллекции
рую» GTK. Уже много лет как появилась отсутствуют.
GTK+2, с измененной архитектурой и более Число модулей в дистрибутиве с
отвечающая требованиям современности. исходными текстами достаточно вели-
Но XMMS продолжал писаться под первую ко. Поддерживается MP3 (с алгоритмом
GTK, а со временем вообще практически декодера от mpeg123), Ogg, WMA, WAV,
перестал разрабатываться. трекерные форматы (посредством движ-
Время от времени предпринимались ка Modplug), форматы музыки от игро-
попытки портировать его на GTK+2, пока вых приставок Sega Genesis/Megadrive,
за дело не взялась команда разработчиков, NES (известна у нас как Dendy), аудио
поставившая себе цель создать на базе CD с цифровым считыванием, MIDI и
кода XMMS новый плейер. Плейер этот некоторые другие форматы. Как видите,
назывался Beep Media Player, который поз- Audacious построен по принципу «все свое
же был переименован в краткое BMP. несу с собой».
Вдоволь покритиковав код XMMS за Среди модулей, отличных от средств
запутанность, команда BMP ударными тем- декодирования, хочется отметить Song
пами начала портировать его на GTK+2. Change, при помощи которого можно
Затем произошло вот что – разработчики направить данные о текущей песне (напри-
BMP решили, что плейер надо радикально мер, ее название) во внешний файл. Также
переделывать. Дескать, довольно таскать любопытен LADSPA host, который позволя-
за собой звуковой движок, надо исполь- ет «навесить» на канал вывода один или
зовать Xine или Gstreamer. Разработка несколько подключаемых модулей форма-
BMP прекратилась, команда взялась за та LADSPA. Их разработано огромное коли-
BMPx – вначале с движком Xine, затем – чество (только сотня штук лежит одним
Gstreamer. BMPx имеет очень мало общего архивом на http://plugin.org.uk). Среди них
кода с BMP. всё – и эквалайзеры, и нормализаторы
Между тем, от «классического» BMP звука, и различные эффекты. Фактически,
отпочковался проект, который получил при использовании пакета таких расши-
название Audacious. Этот плейер в лучших рений у вас отпадает нужда в каких-либо
традициях продолжает архитектуру XMMS, дополнительных средствах обработки звука
то есть основан на подключаемых модулях: в Audacious. звукового сервера, активно использующе- отличие от аналогичной функции доступа к
для ввода, вывода, визуальных эффектов. Кратко коснемся модулей вывода звука. гося в программах обработки звука и созда- CDDB в Amarok).
Audacious можно расценивать как преем- Разумеется, в наличии и Disk Writer, поз- ния музыки. Однако, на момент написания этих
ника XMMS. воляющий записывать воспроизводимый В плане «шкурок» Audacious совмес- строк, проект www.freedb.org остановлен
Выглядит плейер традиционно – три звук в WAV-файл. А среди современных тим с Winamp 2, XMMS и BMP. Интерфейс из-за неких разногласий между его разра-
плавающих, с возможностью «склейки», драйверов вывода, помимо ALSA, присут- большей частью русифицирован. А вот с ботчиками. Хотя база данных по-прежнему
окошка – сам плейер, эквалайзер и список ствует также драйвер Jack – популярного поддержкой русских тэгов дело обстоит доступна, неизвестно, сколь долго это будет
хуже. В версии 1.0 была нормально реа- продолжаться. В случае чего можете поп-
лизована возможность выбрать кодировку робовать бета-версию нового сервиса на
тэгов для MP3-файлов, и настраиваласьона основе старой FreeDB – freedb2.org (http://
в опциях декодера MP3. А в новой версии freedb2.org/~cddb/cddb.cgi).
плейера, функцию выбора кодировки пере- Итак, Audacious – плейер для люби-
несли на страницу «Список воспроизве- телей классического дизайна, подобного
дения» окна настроек, и должен отметить, старому Winamp 2.x/XMMS, однако со мно-
что задуманное разработчиками не работа- жеством новых функций. С другой стороны,
ет (во всяком случае, на моем компьюте- плейер может разочаровать тех пользовате-
ре). Прописываю нужную мне кодировку – лей, которые привыкли к тому, что их музы-
все равно русские названия отображаются ка всегда под рукой в виде автоматически
«крякозяблами». составленной коллекции. Именно для таких
Модуль поддержки простых музыкаль- пользователей я могу посоветовать два
ных CD в Audacious способен искать назва- следующих в нашем обзоре плейера.
ния песен в базе данных CDDB (по умолча-
нию это www.freedb.org). Скачав названия
дорожек диска один раз, в следующий раз
плейер прочитает их уже с локального дис-
ка, то есть данные с CDDB кэшируются (в

www.linuxformat.ru LXF8(82) АВГУСТ 2006 23


ТРИ ПАТЕФОНА

Gmusicbrowser
Написан на Perl и гибок в настройке
• ВЕРСИЯ: 0.953 • WEB: http://squentin.free.fr/gmusicbrowser/gmusicbrowser.html • Цена: лицензия GPL

Сразу признаюсь, что это мой


основной плейер. После долгих душев-
ных терзаний я перешел на него с Amarok.
Gmusicbrowser написан на языке Perl и
в качестве звукового движка использует
Gstreamer, а если по каким-либо причинам
это невозможно, то Gmusicbrowser будет
воспроизводить музыку через консольные
плейеры mpg321, ogg123 и flac123 (разу-
меется, консолей этих плейеров вы не уви-
дите – все происходит скрытно, под сенью
интерфейса на GTK+2). Обратите внима-
ние на название первого плейера – именно
mpg321, а не mpg123. mpg321 декодирует
MP3, используя целочисленные алгорит-
мы библиотеки MAD, которая обеспечивает
отменное качество звука.
Если сравнивать его с звучанием MP3
у движка Xine, то в MAD звук получается
более сочным, более живым. А в сравнении
с mpg123 у MAD звук более, я бы сказал,
теплый. Кстати, Gstreamer тоже декодирует
MP3 через MAD-плагин.
У Gmusicbrowser на первый взгляд
довольно неказистый интерфейс.
Исключительно стандартные элементы
управления GTK+2, никакой поддержки
«шкурок». Есть несколько режимов внешне-
го вида плейера – настраиваются они в окне
настроек, на вкладке Misc – там есть опция
Player windows layout со списком доступ- ние альбома, жанр, дата, каталог располо- ное окно», если в Gmusicbrowser применим Список песен оснащен удобным кон-
ных значений. Лично мне более удобным жения и флаги. такой термин вообще. текстным меню, из которого можно удалять,
кажется режим «with browser» (смотрите Что за флаги такие? В Gmusicbrowser После некоторых изысканий обнару- копировать, перемещать и переименовы-
иллюстрацию). Кстати, интерфейс плейера вы можете помечать файлы разными живается, что плейер способен на многое. вать файлы, а также экспортировать их во
ни капельки не русифицирован. флажками. Есть предустановленные фла- Например, он может отображать обложки к внешний файл формата m3u. Из того же
Gmusicbrowser умеет воспроизводить ги – например, бутлег (редкая, чаще всего альбомам. Можете выбирать их сами из чис- меню можно вызвать мощный редактор
только файлы, добавленные в его вирту- концертная запись, не попавшая в офици- ла локальных файлов, а можете скачать из тэгов. Кстати, с его помощью можно редак-
альную библиотеку. Составляет он ее авто- альные альбомы). Можно создавать и свои Интернета. Если Amarok вытягивает изобра- тировать тэги не только одного, но и мно-
матически – вам надо лишь указать, в каких собственные флаги – скажем, «Любимые жения обложек с Amazon, то Gmusicbrowser жества файлов одновременно. Кроме того,
каталогах искать музыкальные файлы. При песни». Кроме того, каждой песне можно использует для тех же целей Google. если выделено два или более файлов, то
этом скорость сканирования выше, нежели выставить рейтинг. Кроме того, есть функция, отсутству- в контекстном меню списка песен появит-
у Amarok. Доступ к базе данных осущест- Над панелью списка песен расположе- ющая в Amarok – можно задать картинку ся пункт Mass rename, предназначенный
вляется через достаточно сложную систему но поле быстрого поиска по нескольким не только для альбома, но и для группы/ для массового переименования файлов по
списков. Ведутся динамические списки по десяткам критериев, причем в поиске мож- исполнителя. Далее, из пункта меню Main заданному образцу. И еще одно замечание
таким категориям, как исполнитель, назва- но использовать регулярные выражения. > Open Context window можно вызывать о редакторе тэгов: разумеется, русские тэги
В настоящий момент аналогичное средство контекстное меню, где, при условии, если у поддерживаются.
поиска планируется и для панели со спис- вас включен подключаемый модуль Lyrics Выводы по Gmusicbrowser: из-за
ками категорий. (входит к комплект плейера), будет отобра- довольно хаотичного интерфейса этот пле-
В Gmusicbrowser очень много разных жаться скачиваемый из Сети текст текущей йер может отпугнуть часть пользователей.
кнопок, контекстных меню и информацион- песни. К сожалению, текст этот не кэширу- Однако Gmusicbrowser понравится тем
ных меток, которые разбросаны без какой- ется, то есть не сохраняется для повторного людям, которые любят настраивать каждую
либо системы, а зачастую дублируют друг отображения. мелочь в программе – он предоставляет
друга. Поэтому на изучение интерфейса В списке альбомов могут отображать- такую возможность в полной мере. Кроме
надо потратить какое-то время, а говорить ся обложки. А таких списков – несколько того, если разобраться в этом плейере, то
об интерфейсе трудно, потому что он у штук. Во-первых, один список есть на пане- вы обнаружите, что рабочие его качества –
Gmusicbrowser многолик. Статично только ли категорий, а второй доступен под кнопкой на высоте, а в количестве функций (причем
окно настроек, но тут надо отметить, что Choose album from this artist (которая полезных) Gmusicbrowser дает фору мно-
многие настройки вынесены прямо в «глав- доступна не в каждом режиме интерфейса). гим другим плейерам.

24 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ТРИ ПАТЕФОНА

Amarok
Мы с ним уже где-то встречались...
• ВЕРСИЯ: 1.4.1 • WEB: http://amarok.kde.org • Цена: лицензия GPL

Этот самый многофункциональный и Мало было поддержки скриптов на Python?


популярный плейер для KDE еще не входит Что такого не умеет Python, из-за чего надо
в саму среду KDE по той причине, что цикл было привязывать плейер еще и к Ruby?
разработки/выпусков у Amarok отличается Второй отрицательный факт. Кодировка
от аналогичного цикла KDE. Вот такой тех- тэгов. Жил-был не тужил Amarok, можно
нический момент. Разработчики обновляют было в нем выбирать кодировку. Был такой
Amarok весьма часто, и не всегда новые список кодировок. И вот на каком-то эта-
версии радуют пользователей – потому что пе этот список исчез. Хотите русские тэги
добавляя новшества, разработчики почти в Amarok? Только UTF-8, причем в тэгах
всегда убирают что-то полезное из старого. ID3V2. У вас есть коллекция музыки, где
Кроме того, с каждой новой версией Amarok русские тэги в кодировке Windows 1251? Хотя я читал на форумах, что ситуация фейс для скачивания новых сценариев из
все более зависим от внешних средств. Конвертируйте кодировку тэгов, с помощью «лечится» также патчем для Taglib, однако Сети.
Например, в недавней версии 1.4.1 поя- чего-то вроде EasyTag. Если, конечно, вы я не пробовал. Я ведь на Gmusicbrowser Что еще умеет Amarok? Скачивать и
вилась зависимость от интерпретатора Ruby. хотите видеть эти тэги нормально в Amarok. перешел. отображать тексты песен, обложки от аль-
Но вернемся к Amarok. Amarok заве- бомов, информацию об исполнителе (из
дует коллекцией музыки на вашем жест- Wikipedia). Умеет взаимодействовать с под-
ком диске. Кроме того, из Amarok можно ключенными устройствами – например с
открывать файлы с помощью встроенного iPod. Встроенный в Amarok десятиполос-
менеджера файлов, а также воспроиз- ный, с предусилителем, эквалайзер помо-
водить музыкальные CD (чего не уме- жет улучшить качество воспроизведения на
ет делать GMusicbrowser). Amarok тесно старых звуковых картах. В Amarok можно
интегрирован с «прожигателем» CD/DVD – задавать «глобальные» горячие клавиши –
популярной программой K3b. то есть такие, которые действуют и когда
Плейер может представлять коллекцию окно плейера не активно.
в нескольких видах сортировки, а также В качестве звукового движка Amarok
предоставляет довольно простой поиско- может использовать несколько библиотек –
вик (с несколькими критериями поиска). По Xine, GStreamer 0.10, Helix. Если плейер
сравнению с GMusicbrowser в этом плане у собран с несколькими движками, то они
Amarok функций довольно мало. Есть, как становятся доступными в списке установ-
и в Gmusicbrowser, динамические/умные ленных движков в настройках программы.
списки песен – например, список самых Amarok – отличный плейер для тех
новых песен или наиболее часто воспроиз- пользователей, у которых мощный совре-
водимых. Можно создавать и свои «филь- менный компьютер и нет необходимости
трующие» списки песен. видеть русские тэги во вменяемом виде. Я
В начале я упоминал о скриптах. Да, еще не видел лучшего плейера для KDE. И в
функциональность Amarok расширяется с отличие от того же GMusicbrowser, в Amarok
помощью скриптов, причем плейер предо- можно работать с файлами, которые еще не
ставляет встроенный графический интер- добавлены в коллекцию.

ТАБЛИЦА СВОЙСТВ
АУДИОПЛЕЙЕРЫ Audacious Gmusicbrowser Amarok

ВЕРДИКТ Эквалайзер
Визуализация
да
да
нет
нет
да
да
Подведем итоги. В этой статье не описанные мною плейеры очень хороши
я рассмотрел наиболее, на мой даже на такой относительно старой системе, Ведение коллекции нет да да
взгляд, интересные и функци- как моя. Ведь, как известно, требования мно- Движок Встроенный Внешний Внешний
ональные плейеры. Они не требуют каких- гих других плейеров к версиям библиотек
В режиме
либо экзотических библиотек. Все три плей- часто идут впереди тех версий, которые в «Шкурки» да нет
браузера
ера проверены беспроблемной сборкой из наличии в текущих выпусках больших дис-
исходных текстов в системе Mandriva Linux трибутивов Linux, а обновление по принципу Скрипты нет нет да
2006 – насколько я помню, для сборки «не навреди» не всегда удается. Audacious, Плагины да да нет
плейеров я обновлял лишь TagLib (того тре- Amarok и GMusicbrowser – стабильные,
бовал Amarok), хотя не уверен. обстоятельные плейеры, каждый из которых
Обложки нет да да
Для меня важный критерий качества отлично справится с ответственной задачей Тексты песен нет да да
кода – это легкость его сборки. В этом пла- быть «плейером по умолчанию». LXF

www.linuxformat.ru LXF8(82) АВГУСТ 2006 25


HOTPICKS

Hot Picks Лучшее на планете новинки открытого ПО!


НА ДИСКЕ

УТИЛИТА СОЗДАНИЯ CD/DVD лов перетаскиванием их из окна Nautilus в


Майк Сoндерс
список главного окна. Если вы не пользова-
его новехонький
ноутбук с готовым
Ubuntu только что
прибыл. Как на
Bonfire тель Gnome, можете призвать на помощь
встроенный файловый навигатор.
Список файлов отображает имена
Рождество! • ВЕРСИЯ 0.3.0 • WEB http://perso.wanadoo.fr/bonfire вместе с размерами и типами – а также
Здесь мы проводим обзор неко- полезный полосовой индикатор внизу,
торых из наиболее популярных показывающий, какая часть диска уже
программ в мире. занята. Bonfire позволяет выбрать между 4-
Каждый месяц мы прочесыва- ГБ DVD и несколькими размерами для CD,
ем тысячи проектов с открытым но в нем отсутствуют некоторые редко
кодом и отбираем для вас самые
используемые форматы, вроде двусторон-
новые, самые изобретательные
них DVD и микро-CD.
и просто отличные. Большая
часть программ, попавших в
обзор, записана на прилагаемый Что будем делать
к журналу диск, но мы также Итак, файлы для записи на диск подготов-
предоставляем и web-ссылки, лены; щелчок по кнопке Burn вызовет диа-
чтобы вы могли скачать новей- лог выбора устройства или имени файла
шие версии. (если вы просто хотите сделать ISO-образ,
Если у вас есть идеи о том, а записать его когда-нибудь потом). Выбор
какие проекты с открытым на самом деле невелик, хотя можно указать,
кодом нам стоит включить в
закрыть ли диск или позволить многократ-
обзор, пишите нам на адрес:
ную запись. Но на этой стадии хотелось бы
linuxformat@futurenet.co.uk
видеть кое-что еще, в частности, опцию для
Gnome для Bonfire дом родной, но встроенный файловый навигатор загрузочного файла. Это необходимо, если
уживается и с другими оконными менеджерами. вы создаете дистрибутивы или подготавли-
HOTPICKS ваете демо-диски Linux.
В ЭТОМ РАЗДЕЛЕ Bonfire позволяет сохранять проекты (в
AckerTodo .......................31 Непросто сделать правильно работа- cd-burner, hal и gstreamer. При наличии формате XML) для дальнейшего использо-
Avidemux.........................31 ющее ПО для записи оптических дисков. Totem и Beagle вы сможете перед записью вания, чтобы вы могли создавать диски с
Нужно позаботиться о пользователях, дела- на диск просматривать видеофайлы и небольшими вариациями без необходи-
Bonfire .............................26 ющих резервные копии, записывающих выполнять сложный поиск. мости каждый раз заново воссоздавать
Byzanz .............................30 аудиодиски и создающих загрузочные DVD, всю структуру. Это не самое гибкое прило-
Goupil ..............................30 либо генерирующих диски, читаемые на Меню на выбор жение создания дисков, доступное на дан-
Medit ...............................27 широком спектре устройств. С одного При каждом старте, перед тем как запус- ный момент, и ему еще нужно пройти нема-
No Friction .......................29 взгляда на страницы руководств Mkisofs и тить процесс создания диска, Bonfire пред- лый путь, прежде чем оно сможет соревно-
CDRecord становится понятно, насколько ложит вам простое, ориентированное на ваться с такими асами, как K3b, но у него
Pipepanic ........................29
это сложная задача, а также почему пользо- выполнение конкретной задачи меню. Это уже есть продуманный дизайн и простой
SVGpage..........................27 ватели предпочитают данные утилиты гораздо более дружественный подход, чем подход, способный сделать это приложе-
Visopsys..........................28 командной строки приложениям с графи- предоставление пустого окна – вам не нуж- ние наилучшим выбором для Gnome. В
ческим интерфейсом типа K3b и GnomeBaker. но продираться сквозь меню и справочные среде Gnome постоянно обсуждается воп-
ОБРАТИТЕ ВНИМАНИЕ НА Bonfire – еще один игрок на поле инстру- страницы, чтобы суметь приступить к делу. рос, должны ли приложения Gnome вклю-
ПОБЕДИТЕЛЯ HOTPICKS ментов создания дисков; его интерфейс Предлагаемый выбор – создание аудиодис- чать дополнительные опции или нужно
Все, что попадает в раздел HotPicks, легко осваивается новичками и обладает ка, создание диска данных (например, бороться за простоту. В этом случае мы бы
заслуживает самого пристального
внимания. Однако каждый месяц мы
универсальностью командных утилит. резервной копии), копирование существую- выбрали первый вариант: функциональ-
выбираем всего Поскольку Bonfire – приложение для щего диска или запись ISO-образа. ности Bonfire достаточно для выполнения
один самый Gnome, для сборки его из исходных текс- Когда выбор сделан, Bonfire снабдит базовых задач записи дисков, но он стал
яркий проект.
Побеждает тов потребуется набор зависимостей. вас небольшой подсказкой, описывающей, бы по-настоящему классным инструмен-
лучший! Пользователей Gnome, у которых уже уста- что вам делать дальше – например, наки- том, если бы в нем были настройки для
новлены пакеты для разработчиков, про- дать файлов из Nautilus. Превосходное продвинутых пользователей.
блемы не ожидают. Если же у вас другой решение: вся информация налицо, и вас не
рабочий стол или оконный менеджер, убе- осаждает толпа «мастеров установки».
дитесь, что имеются gnome-cfs, nautilus- Простейший из методов – подготовка фай-

26 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


HOTPICKS

КОНВЕРТОР ИЗОБРАЖЕНИЙ

SVGpage
• ВЕРСИЯ 0.4 • WEB www.gimphelp.org/svgpage.htm

SVG (Scalable Vector Graphics) быстро статический двоичный файл, без каких-
становится стандартным форматом для либо зависимостей. Просто распакуйте
векторной графики. Поддержка этого фор- SVGpage_bin_0.4.tar.bz2 и запустите
мата в Linux достаточно сильна, в частнос- SVGpage из образовавшегося каталога.
ти, благодаря первоклассному редактору Приложение откроется, показав изображе-
Inkscape. Многие приложения добавляют ние, демонстрирующее процесс конверта-
функциональность импорта/экспорта SVG. ции из растровой в векторную графику.
Однако преобразование растровых изобра- Конвертация изображения очень про-
жений в приемлемый векторный формат – ста: откройте файл с помощью меню File, а
дело не простое, если только вы не конвер- затем щелкните Render As An SVG внизу
тируете каждый пиксел в вектор, а это уж главного окна. Получившийся результат
стрельба из пушек по воробьям. SVGpage может оказаться далеко не впечатляющим:

«КОНВЕРТАЦИЯ ИЗОБРАЖЕНИЙ Эти яркие цвета и четкие формы идеальны для векторного изображения.

ПРОСТА.» вать; зато настроив эти параметры, вы местами они чересчур технические. Тем не
получите для ваших изображений идеаль- менее любой человек, разбирающийся в
выполняет преобразование в SVG гораздо иногда отсутствуют детали или возникают ную схему. компьютерной графике, должен без про-
более гибким способом, позволяя пользо- чересчур яркие участки изображения. Но Особо стоит упомянуть документацию, блем с ними справиться. В целом, результа-
вателю самому выбрать уровень именно здесь находит применение основ- которая хоть и не изобилует демонстраци- ты, полученные от SVGpage зависят от
детализации. ная функциональность SVGpage, индивиду- онными изображениями, но предоставляет сложности вашего изображения и выбора
Программа написана на Python с интер- альная настройка. Установить можно самые детальные описания различных опций. Эти настроек, но при создании векторной вер-
фейсом на GTK, поэтому вам понадобится разные параметры: уровень очистки изоб- руководства позаимствованы у Autotrace сии логотипов и других четко прорисован-
PyGTK, чтобы собрать ее из исходных текс- ражения, границы цветов, фильтры и мно- (который обеспечивает внутренности кон- ных изображений программа работает
тов. К счастью, разработчики предоставили гое другое. Придется поэкспериментиро- вертации изображений в SVGpage), поэтому просто на ура.

ТЕКСТОВЫЙ РЕДАКТОР

Medit
• ВЕРСИЯ 0.6.98 • WEB http://ggap.sourceforge.net/medit

Нужен ли миру лишний текстовый кой продуктивности. Основное окно цели-


редактор? Для хакеров у нас есть Vim и ком отведено под редактор, с полезной
Emacs, Leafpad и KEdit годятся для быст- терминальной панелью внизу экрана и со
рых заметок, а GEdit и Kate занимают про- списком файлов справа. Раздражает
межуточное положение, предлагая массу исчезновение этих панелей, как только вы
полезных возможностей. Тем не менее начинаете набирать текст – мы бы пред-
авторы Medit тоже включились в борьбу с почли сообщить лично, убирать их или нет.
программой, которая изначально проек- Присутствуют все базовые операции, пола-
тировалась как компонент GGAP (http:// гающиеся для редактора: вырезание,
ggap.sourceforge.net). вставка, поиск, замена, откат и повтор.
Medit задумывался как многоплат- В Medit немало возможностей для
форменный (работающий под Windows и программистов. Главный компонент редак- У Medit – внушительный набор опций, к удовольствию продвинутых
пользователей.
Linux) инструмент, обладающий широким тирования включает подсветку синтаксиса,
спектром настроек, расширяемый с помо- автоматическое выравнивание, а также но в остальном редактор в хорошей список клавиатурных комбинаций и широ-
щью дополнительных модулей, и все это выравнивание и комментирование выбран- форме. кий спектр настроек, и Medit решительно
с GTK-интерфейсом. Собрать и устано- ного фрагмента. Разработчики утвержда- Пока что это редактор как редактор, но вступает на территорию продвинутых
вить его можно обычным набором ют, что не существует другого такого у него имеются скрытые достоинства. Вы пользователей. Сейчас у него кое-какие
команд: ./configure, make и make «удобного компонента редактирования тек- можете создать модули на C или Python и мелкие проблемы со скоростью и вне-
install (под суперпользователем). ста для GTK» (разработчики Scintilla и оби- расширить функциональность – причем шним видом, но есть и все необходимое
Графический интерфейс Medit муд- деться могут!), и их работа заслуживает поставляется немало готовых модулей, для того, чтобы стать популярным уни-
ро использует панели с варьируемым похвалы. Скорость, правда, не самая например, вышеупомянутая панель с тер- версальным редактором для хакеров.
размером и всплывающие панели, не высокая, а разрекламированная функция миналом, и у него есть свой язык скриптов, Попробуйте его, если вы все еще в поис-
загромождая экран и способствуя высо- завершения слов не работает как должно, MooScript. Добавьте сюда внушительный ках идеального инструмента.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 27


HOTPICKS

ОПЕРАЦИОННАЯ СИСТЕМА

Visopsys
• ВЕРСИЯ 0.62 • WEB www.visopsys.org

Уже полтора года мы делаем обзоры ISO9660 (CD) и базовые сетевые возмож- тестовом компьютере с процессором 1 ГГц тить специальную версию Visopsys, назван-
других ОС с открытым кодом. Мы рассмат- ности. Рассматривается реализация мно- запустились менее чем за секунду. Меню ную Partition Logic, полностью на ней фоку-
ривали BSD-системы, Syllable и OpenSolaris, гопользовательского доступа. Для работы наверху предоставляет доступ к запущен- сирующуюся. Еще здесь есть редактор
а в разделе HotPicks помещали ReactOS Visopsys требуется 64 МБ ОЗУ и процес- ным на данный момент программам (напо- конфигурации и утилита для установки
(клон Windows) и BeOS-подобную систему сор типа Pentium или новее, а также мышь добие урезанной панели задач), а запуска- системы на жесткий диск. Помимо упомя-
Haiku. Это самые известные альтернатив- PS/2 (USB-устройства не поддерживаются).
ные системы, но на свете полно небольших Видео обеспечивается обычным драйве-
проектов, проживающих на компьютерах
умников из разных стран.
ром VESA, поэтому графика не слишком
быстрая, но зато совместимая с большинс- «ОТЛИЧНАЯ ОТПРАВНАЯ
Один из наиболее впечатляющих –
Visopsys, графическая ОС, написанная все-
твом видеокарт.
Для запуска Visopsys запишите образ ТОЧКА ДЛЯ СОЗДАНИЯ
го одним человеком, Энди Маклафлином
[Andy McLaughlin]. Хотя кодирование опе-
на CD-R и загрузите ваш ПК с этого CD.
Если у вас нет CD-привода, выбирайте СОБСТВЕННОЙ ОС.»
рационной системы в одиночку нередко вариант с дискетой. После старта Visopsys
встречалось в 8-битную эпоху, с тех пор спросит, хотите ли вы установить или прос-
ются программы одним нажатием на иконку нутых программ, по большому счету смот-
компьютеры сильно усложнились. Сегодня, то запустить систему – выберите последний
на рабочем столе. Командная оболочка, реть не на что, однако по мере расширения
чтобы написать многозадачную операцион- вариант, чтобы посмотреть, как она работа-
несмотря на свою рудиментарность, поддер- API мы, без сомнения, увидим больше
ную систему с поддержкой виртуальной ет без модификаций жесткого диска. живает завершение команд по таблице и приложений.
памяти и графическим интерфейсом (или набор Unix-подобных команд (ls, uname, ...).
выговорить эти слова вслух), требуется Легкий рабочий стол По сравнению с рабочими столами Linux Разработчик-одиночка
много времени и таланта. По части визуального представления Visopsys выглядит по-спартански: освежаю- Почему же мы не слышали об этой системе
Visopsys – графическая операционнаяVisopsys может предложить не слишком щая легкость и свобода от всякого мусора. раньше? Пусть ей недостает возможностей
система, работающая с дискеты или с Live
много – шрифты и иконки на рабочем столе А как насчет самих программ? В распространенных систем, но это же не
CD (образы и того и другого записаны нане особо привлекательны. Возможно, вы Visopsys входит календарь, две простые уменьшает интерес, например, к Syllable и
наш DVD). С момента ее первого релиза вожидали чего-то более эстетичного от сис- игры и программа просмотра изображе- Haiku. Нет, вероятно, Visopsys потому пря-
1997-м году она превратилась в удобную темы с таким именем, но Visual здесь имеет ний – ничего выдающегося, но достаточно, чется в тени, что Маклафлин не ищет дру-
(хотя и ограниченную) ОС со своим собст-
тот смысл, что система с самого начала чтобы показать возможности графического гих разработчиков. Коль скоро это проект с
венным ядром, библиотекой C, командной задумывалась графической, в отличие от инструментария. Больший интерес пред- открытым кодом, любой разработчик может
строкой, оболочкой и графическим интер-DOS, нарастившей графический интерфейс ставляют утилиты администрирования, ответвить от него свой; однако пока
фейсом. Она поддерживает вытесняющую уже поверх базовой системы. включающие умную утилитку разбиения Маклафлин хочет развивать проект в
многозадачность и многопоточность, под- Загрузка впечатляет быстротой, а вхо- жесткого диска. Эту последнюю приняли направлении, нужном лично ему. Он с
держку файловых систем FAT, ext2/3 и дящие в дистрибутив программы на нашем так хорошо, что Маклафлин решил выпус- радостью выслушает ваши идеи и примет
ваши исправления, но выбор направления
развития системы остается за ним.
Мы считаем, что это мудрый путь, осо-
бенно учитывая ситуацию с некоторыми
проектами, открытыми всем и каждому и
погрязнувшими в спорах и попытках отпоч-
ковать новые ветки. Но когда время придет,
хотелось бы увидеть в этом проекте боль-
ше разработчиков.
Сейчас Visopsys можно рассматривать
как Minix 2006-го года: закрыта для масш-
табных переделок чего ни попадя, но пре-
красная стартовая площадка начинающего
исследователя операционных систем. Linux
и клоны BSD слишком сложны для изуче-
ния системного проектирования, а компакт-
ная база исходного кода Visopsys и простой
дизайн делают ее отличной отправной точ-
кой для создания собственной ОС. В самом
деле, раз эта система распространяется под
GPL, вы вполне можете взять ее за основу
своего проекта.
В любом случае это впечатляющий
объем работы для одного человека, и про-
ект имеет большой потенциал. За ним сто-
ит понаблюдать.
Не ласкает взор, как OS X, зато доморощенный графический интерфейс Visopsys молниеносен.

28 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


HOTPICKS

HOT GA

ME
ИГРА-ГОЛОВОЛОМКА

S
No Friction
• ВЕРСИЯ 0.1 • WEB http://remar.se/fames/games.html

Здесь в здании LXF Towers мы час- цвет может начать давить. Игроки с худо-
тенько играли в Tetris DS. Поразительно, жественными способностями сумеют отре-
что эта классическая игра до сих пор дактировать файлы с картинками самостоя-
доставляет удовольствие и выглядит такой тельно – это обычные BMP-файлы, из ката-
же свежей, как в начале 90-х – но это и лога gfx/, и их можно открыть в Gimp.
есть признак подлинной классики. Ваша задача – катить шар по арене в
Прочесывая сеть в поисках программ для направлении выхода, подбирая зеленые
рубрики HotPicks, мы были счастливы комочки. Просто, не так ли? Но вас подсте-
наткнуться на No Friction – простую на вид регает ловушка: начав передвигать шар, вы
головоломку, которая все усложняется по не сможете его остановить, разве что он
мере продвижения вперед. К счастью, упрется в стенку. Прибавьте к этому всевоз-
игре не требуется ничего, кроме вездесу- можные шипы и другие пакости, разбросан-
щего SDL, и, если пакеты разработчика ные по арене и смертельные для шара, и
SDL у вас и вправду есть, можете просто вам придется тщательно планировать мар- Пойду вниз, налево, вверх, опять налево, опять вверх…
набрать make и затем ./friction. шрут. Кажется, до зеленого комка рукой Черт, а где я был-то?
Графика не блещет, как и следовало подать, но пока вы не подойдете к нему с
ожидать от подобной игры – это просто правильной стороны, ваш шар будет упорно ции основного игрового процесса, напри- формат файла. В целом No Friction – симпа-
дежурное блюдо: домодельные фигуры и натыкаться на шипы. мер, уровень, где вы контролируете сразу тичная небольшая игра-головоломка с
примитивная анимация. С другой стороны, В игре 28 уровней, от начального уров- несколько шаров. Вы можете создать свои искусно спроектированными уровнями,
прорисовка достаточно аккуратная, а ня сложности до довольно трудных арен, уровни в обычном текстовом редакторе: заставляющая пораскинуть серыми
спрайты не сливаются с фоном, хотя пос- требующих серьезного продумывания пере- объекты обозначаются буквами, кроме того, клетками.
ле длительной игры постоянный синий мещений. К счастью, в игре имеются вариа- существует спецификация, описывающая

ИГРА-ГОЛОВОЛОМКА

Pipepanic
• ВЕРСИЯ 0.1.0 • WEB http://www.users.waitrose.com/~thunor/pipepanic

Что мы имеем из игр, посвященных вес ужасам с протекающими кранами, той Pipe Mania, и, кроме SDL, ей ничего ной и конечной труб
прокладке труб? Вероятно, наиболее замороженными трубами и бравыми сан- не надо, так что на большинстве дист- нажимается кнопка
известная игра такого жанра – Mario. техниками, заламывающими суперцены за рибутивов она соберется без проблем. Fill, и в трубу поступа-
Затем была Pipe Mania, представитель погром у вас на кухне. Ну да в Pipepanic вы В Pipepanic ваша задача – соеди- ет вода. Если она
классики всех времен. Возможно, эти уж покажете, кто в доме хозяин. Эта игра нить две трубы, используя доступные достигнет конца трубы – очки
саги о водопроводах созданы в противо- создавалась под влиянием вышеупомяну- запчасти. Вы работаете на сетке разме- посыплются градом; если же обнару-
ром 10x10, на которой вначале есть жится протечка, то игре конец.
только зеленая стартовая труба и Чтобы заработать по-настоящему
красная конечная. много очков, нужно не просто искать
Вам также полагается набор раз- кратчайшее расстояние из точки A в
личных фиттингов – горизонтальные, точку B, а использовать как можно
вертикальные, Т-образные и другие – больше запчастей. Именно этому
но они сваливаются к вам случайным свойству Pipepanic и аналогичные ей
образом, как в Tetris. Так что нельзя прос- игры обязаны долгожительством – каж-
то нарисовать прямую линию от начальной дая игра непохожа на предыдущую, а по
до конечной точки, приходится оптималь- мере того как вы все чаще начинаете
но использовать наличные куски. К счас- выигрывать не благодаря удаче, а благо-
тью, игра показывает вам две следующие даря опыту, вы начинаете понимать, что
находки, это помогает спланировать достигли определенного мастерства.
стратегию. Отличная штука!
Тут, однако, возникает другая пробле-
ма. Соединяя начальную и конечную тру-
бы, нельзя оставлять лишние отверстия,
их нужно затыкать заглушками: если,
например, в ваше сооружение добавляет-
Так становятся специалистами по трубам… Сначала вроде все хорошо, но ся крестовина, заблокируйте неиспользо-
скоро вас заваливает ненужными запчастями. ванные концы. После соединения началь-

www.linuxformat.ru LXF8(82) АВГУСТ 2006 29


HOTPICKS

МЕНЕДЖЕР ЧЛЕНСТВА В КЛУБЕ

Goupil
• ВЕРСИЯ 0.1.0 • WEB http://goupil.tuxfamily.org

Goupil – приложение из категории, между просмотром контактов и инфор-


до сих пор в HotPicks не затронутой: мации о членах организации. Прежде
клубный менеджер. Такого рода програм- чем добавить в организацию нового чле-
мы не столь широко распространены, как на, нужно добавить его в список контак-
текстовые редакторы или игры, но тем не тов; путь обходной, но работает эффек-
менее они важны, особенно для тех, кто тивно. Во время указания членства вы
управляет клубом или сообществом. можете выбрать статус (для различных
Возможно, вы решили организовать уровней членства), даты начала и конца
группу поддержки, или создать сайт с действия «членской карточки», а также
платным доступом, или что там еще тре- сумму денег, уплаченную за вступление.
бует учета зарегистрированных пользо- Таким образом, в основе Goupil –
вателей. Goupil спроектирован с целью простое управление людьми, пригодное Запись браузера, проигрывающего другую запись. Видите, размазано?
максимально упростить учреждение клу- для небольшой группы членов (если
ба или любого группового членства и организация насчитывает более 30 чле- ЗАПИСЬ ПРОИСХОДЯЩЕГО НА ЭКРАНЕ
обойтись без сервера баз данных для нов, то программа, возможно, покажется
хранения информации о членах.
Что ему нужно, так это привязки C++
для различных библиотек Gnome. Если у
вам несколько ограниченной). Однако
имеются кое-какие бонусы: например,
возможность закачки контактов из
Byzanz
• ВЕРСИЯ 0.1.1 • WEB http://people.freedesktop.org/~company/byzanz
вас есть Gnome и установлены его паке- Evolution и генерация HTML-отчетов. В
ты разработчика, то большая часть необ- качестве HTML-отчета создается базовая За несколько лет в HotPicks нам чий стол как обычно, демонстрируя прило-
ходимых зависимостей у вас уже есть, но web-страница со списком членов и дан- встречались программы со странны- жение или показывая, как нужно делать то-
помимо этого понадобятся libgtkmm, ными о каждом – функциональность не ми именами, и Byzanz – одно из самых то и то-то. Затем GIF-файл будет сохранен
libglademm и libgnomevfsmm (вы можете архиважная, но полезная, если вы управ- странных. Что это имя означает? Нечто на диске, и вы сможете открыть его в окне
взять эти библиотеки из директории с ляете онлайн-сообществом. связанное с дорийским царем Византом, браузера. Не понравился результат?
зависимостями для Goupil на нашем Goupil пока довольно молодое при- Константинополем или православием? На Удалите и начните запись снова.
DVD). ложение, и чтобы достичь версии 1.0, самом-то деле это программа для снятия Один из недостатков анимированных
При первом запуске Goupil запросит предстоит сделать еще многое, но основ- экранных снимков рабочего стола и созда- GIF-файлов, в отличие от Flash-роликов
у вас информацию о вашем клубе или ная функциональность есть, и программа ния анимационных GIF-файлов, отобража- (таким путем пошли некоторые аналогич-
организации – название, адрес и валюта, уже может пригодиться небольшим орга- ющих динамику его изменений в связи с ные приложения) – их размер. Byzanz
используемая для оплаты членства. низациям. Если вам нужен незатейливый вашей работой. Есть несколько причин, по использует расширение XDamage, поэтому
После ввода этих данных вы попадаете в способ поддержки списка членов, попро- которым Byzanz может вам пригодиться: отслеживает только те части экрана, на
главное окно, где можно переключаться буйте ее. надо сделать демо для разрабатываемой которых что-либо изменилось, но даже
вами программы; или показать пользо- пяти секунд записи достаточно, чтобы
вателям новые возможности программы; файл разбух до 700 КБ. Лучше всего уста-
или создать пособие, обучающее пользо- новить однотонный фон и не совершать
вателей правильной работе с программой действий, приводящих к радикальным
(это лучше, чем пытаться воссоздать пове- изменениям на экране, например, сверты-
дение программы по набору статических вание и развертывание окон.
картинок). Другая потенциальная проблема – цвет
Byzanz – это апплет для панели Gnome, у GIF-изображений 8-битовый, и, если вы
но есть еще и утилита командной строки, демонстрируете приложение с широкой
на случай, если вы пользуетесь другим цветовой гаммой, может наблюдаться
рабочим столом или оконным менеджером. некрасивое размазывание картинки.
Для сборки программы из исходных кодов Однако факт, что практически каждый бра-
понадобится пакеты разработчика Gnome узер на планете дружит с анимированными
2.12 (или новее), а также XDamage, кото- GIF’ами, перевешивает эти проблемы –
рый в зависимости от вашего дистрибути- вашей аудитории не потребуется устанав-
ва может быть включен в стандартный ливать дополнительные программы для
набор пакетов для X. А, например, в Ubuntu просмотра.
его нужно установить отдельно
из пакета libXDamage-dev.
Пользоваться Byzanz так же
просто, как набрать Byzanz-
record <filename> в окне тер-
минала; после чего начнется
запись в указанный вами GIF-
файл. Теперь, пока вы не нажме-
HTML-экспорт из Goupil выглядит вполне опрятно. те Ctrl-C в окне терминала,
можете использовать ваш рабо- Процесс записи запускается одним щелчком.

30 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


HOTPICKS

HOTPICKS ПОВТОРНЫЙ ВИЗИТ ТАКЖЕ ВЫПУЩЕНЫ


РЕДАКТОР ВИДЕО Новые и обновленные программы,
заслуживающие внимания…

Avidemux • SynchroEdit 0.3.9 Многопользовательский


редактор www.synchroedit.com
• ВЕРСИЯ 2.1.2 • WEB http://fixounet.free.fr/avidemux • SavIRC 2.0 Кроссплатформный IRC клиент
www.savirc.com
Если вы уже давно почитываете LXF,
то, возможно, помните наш обзор Avidemux • KDiff3 0.9.90 Утилита сравнения файлов и
каталогов http://kdiff3.sf.net
из LXF40. Тогда это была версия 0.9rc2,
теперь же перед нами версия 2.1.2, а версия • Monitorix 0.8.1 Легковесная утилита
2.2 стремительно надвигается. Имя системного мониторинга www.monitorix.org
Avidemux – сокращение от AVI de/multiplexer: • ALE 0.8.4 Программа обработки
программа принимает видеопотоки, добав- изображений
ляет всякие фильтры, накладывает допол- http://auricle.dyndns.org/ALE
нительные звуковые дорожки, а затем запи- • Outer Space 0.5.58 Онлайновая
сывает результат. Вы можете вырезать, стратегическая игра www.ospace.net
масштабировать, смазывать изображение
или делать его более резким, а также вра-
щать видео. Программа работает с различ-
ными форматами, поддержка которых зави- держка импорта из PNG, мозаичные филь- Avidemux поставляется с
сит от наличия установленных библиотек и тры и многое другое. Большая работа про- набором фильтров для обработки
видеоряда.
кодеков (типа MPlayer и DivX). делана над интерфейсом программы, кото-
Как вы и ожидали, со времен версии 0.9 рый теперь написан с использованием GTK простыми задачами работы с домашним
в программу добавилось огромное количес- 2 и лучше сочетается с современным рабо- видео, а отдают предпочтение наращива-
тво новых функций: поддержка Ogg Vorbis, чим столом Gnome и Xfce. нию функциональности.
• Katoob 0.3.9 Многоязычный текстовый
дискретизация звука на любой частоте, под- В версии 0.9 больше всего претензий Знакомым с процессом редактиро- редактор http://tinyurl.com/jwjlb
держка MMX/MMX2, улучшающая произво- вызывал интерфейс – он казался сложным вания видео, микшированием и кодека-
• Calcurse 1.4 Текстовый персональный
дительность, внутренний скриптовый дви- для новичков. С тех пор ситуация не сильно ми Avidemux предложит все, что нужно
планировщик http://culot.org/calcurse
жок, фильтр яркости, улучшающий видео- поменялась, однако стало очевидно, что для работы, и развивается этот проект в
захват с VHS, поддержка drag & drop, под- разработчики не намерены ограничиться хорошем темпе. • Qore 0.5 Объектно-ориентированный язык
программирования
http://qore.sourceforge.net

МЕНЕДЖЕР СПИСКА ДЕЛ • Task Coach 0.58 Менеджер списка дел


http://taskcoach.sourceforge.net

AckerTodo • KPowersave 0.6.1 Управление и


мониторинг
ACPI http://sf.net/projects/powersave
• ВЕРСИЯ 3.6 • WEB http://ackertodo.sourceforge.net
• Nao Полноценный файловый менеджер,
написанный с использованием Fox Toolkit
Мало кто из нас дисциплинирован грамм такого типа – AckerTodo, обзор модульная программа, позволяющая
http://nao.linux.pl
настолько, чтобы отслеживать более одной которой мы не так давно делали в HotPicks самостоятельно добавлять и удалять
задачи. Спасает только ведение записей на LXF64. Эта программа управления зада- функции; пользователям, имеющим сла- • BTG 0.3 Демон BitTorrent с текстовым и
графическим GTK интерфейсом
бумаге. Поэтому совершенно логично появ- чами использует web-интерфейс на базе бое представление о программировании,
http://btg.berlios.de
ление множества компьтеризированных PHP с MySQL для хранения данных. это стало проще делать, поскольку не
версий списков дел, и в Linux такие про- Самое существенное изменение – требуется погружения в глубины кода. • Kamefu 0.1.1 Менеджер коллекции игр
http://kamefu.pwsp.net
граммы тоже есть. Одна из лучших про- AckerTodo теперь не неделимый код, а Введена поддержка региональных фор-
матов дат, а также оповещение через • Tangerine 0.2.5 Музыкальный сервер на
AIM об истечении срока исполнения. Вы основе DAAP www.snorp.net/log/tangerine

также можете создавать задачи, повто- • bzr 0.8.2 Децентрализированная система


ряющиеся с заданным периодом, а из контроля версий http://bazaar-vcs.org
KDE позаимствована тема для иконок • stalonetray 0.4 WM-независимая
Crystal. системная панель задач
В AckerTodo соблюден отличный http://sf.net/projects/stalonetray
баланс между функциональностью,
простотой и визуальным стилем.
Приложение хорошо работало уже в
серии версий 1.x, а с новыми возмож-
ностями это определенно лучший
менеджер списков дел для web и для
Linux. Если вам приходится жонглиро-
вать напоминалками и программами
ведения записей, то это приложение
может решить ваши проблемы. LXF
Демо AckerTodo можно посмотреть на сайте программы.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 31


РЕПОРТАЖ

МАРК ШАТТЛВОРТ

В ПЕТЕРБУРГЕ
16 ИЮНЯ 2006 Г.

Литературная обработка Алексея Федорчука (alv@posix.ru)

ВСТУПЛЕНИЕ
Марк Шаттлворт (Mark распространение дистрибутива и его ком- круги представляет – московскими пользо- Теоретически для участия во встрече
Shuttleworth) – один из немногих мерческую поддержку, а также ведет прочую вателями Ubuntu и Linux вообще, и с петер- требовалась предварительная регистра-
разработчиков Linux, известный организационную работу. бургской LUG. ция. Однако на практике, к чести органи-
за пределами мира Open Source. Во-первых, Надо сказать, что дистрибутивы семейс- Московская встреча состоялась 15 заторов, дело оказалось гораздо проще:
его знают как удачливого интернет-пред- тва Ubuntu (кроме собственно Ubuntu, в июня в Институте философии РАН и орга- насколько я мог наблюдать, вход был
принимателя, разбогатевшего на гребне его состав входят также Kubuntu, Xubuntu, низована была, насколько мне известно, свободный, никто ни с какими списками не
волны «доткомов». Во-вторых, он стал вто- Nubuntu и Edubuntu) за короткое время компанией Altlinux. Однако на ней я не сверялся, и в итоге в зале оказались все,
рым в истории Земли космическим турис- снискали себе немалую популярность. Не в присутствовал, и потому сказать ничего того пожелавшие.
том. И в-третьих, Марк – учредитель ряда последнюю очередь – потому, что бесплат- определенного не могу. А вот на питерской – Надо отметить хорошее техничес-
фондов помощи слаборазвитым странам, но рассылаются по всему миру, в том чис- побывать довелось, о чем и рапортую. кое обеспечение встречи. Аппаратура
продвижения образовательных программ ле – даже в нашу страну. В результате чего Встреча с Петербургской LUG была «Феникса» позволила выполнить аудио-
в странах третьего мира и тому подобных в России сложилось достаточно большое подготовлена Линуксцентром и учебным и звукозапись всей встречи – не только
мероприятий. и весьма активное сообщество пользова- центром «Феникс». В зале последнего, выступления, но и вопросов, в том числе
Однако в мире Open Source Марк извес- телей Ubuntu. расположенном на территории географи- и с места. Именно обработка аудиозаписи
тен, разумеется, не этим. Здесь его знают Поэтому известие о визите Шаттлворта ческого факультета Санкт-Петербургского (смею надеяться, литературная) легла в
как разработчика Debian – в прошлом, и как в Россию (Москву и Санкт-Петербург), про- Университета, она и происходила. основу данного материала – в связи с чем
организатора разработки семейства дистри- ходившем 15–16 июня, заинтересовало в Программа мероприятия включала в себя выражаю свою признательность организа-
бутивов Ubuntu – в настоящем. В этом своем основном широкие массы узкого круга, свя- три пункта: выступление Марка, ответы торам встречи. А фрагменты видеозаписи
качестве он возглавляет фирму Canonical – занного с Unix, Linux и Open Source. Тем на вопросы участников и – какая встреча планируется в ближайшее время выло-
именно она осуществляет финансирование более, что в программу посещения обоих юниксоидов обойдется без пива! – нечто жить на сайте Линуксцентра (http://www.
разработки всего семейства, обеспечивает городов входила встреча с теми, кто эти вроде фуршета. linuxcenter.ru).

32 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


РЕПОРТАЖ

ВЫСТУПЛЕНИЕ
Выступал Марк на английском об особенностях процесса его разработ- ми – такими, как команда разработчиков привлекает к сотрудничеству распределен-
языке – он начал с заявления, ки. Здесь Марк подчеркнул, что одной из Fedora – с целью обмена модификациями ные фирмы из разных стран – в настоящее
что по-русски говорит плохо целей дистрибутива было достижение гар- ядра и пакетов. время их более 300. Они и осуществляют
(хотя, по агентурным данным, делает это монии между стабильностью и актуаль- Однако и тут Марк подчеркнул, что регионально-ориентированную поддержку.
совершенно без акцента – да и сказанная ностью включенного в состав ПО. Первое связи, так сказать, вертикальные – с Маленькое отступление: как известно,
по-русски вводная фраза это подтверж- достигается долговременной (трех- или разработчиками крупных программных Ubuntu оказался очень продуктивным кло-
дала). Перевод выступления обеспечивал пятигодичной) поддержкой стабильных пакетов, таких, как Gnome, KDE, Apache, но-породителем. Помимо всего прочего, от
Дмитрий Дмитриев из компании Linux Ink, релизов, выходящих через определенные MySQL, PostgreSQL, и многих, многих дру- него происходит несколько испанских вари-
известный своими работами по русифика- промежутки времени (примерно полуго- гих – являются более важными. Потому антов дистрибутива, ориентированных на
ции Red Hat/Fedora и разработкой русской дичные, хотя подготовка текущего релиза что в конечном счете именно их работа использование в провинциальных админис-
версии Scientific Linux. Так что суть речи несколько затянулась). Второе же осущес- обеспечивает успех или неуспех любого трациях этой страны; создается впечатле-
Марка была доступна даже тем, кто, подоб- твимо за счет регулярных промежуточных дистрибутива. ние, что скоро в Испании каждая провинция
но вашему покорному слуге, английский на обновлений, предназначенных для поль- В этом контексте прозвучал и ответ на будет иметь свой вариант Ubuntu. Тонкий
слух воспринимает с трудом. зователей, желающих работать с самыми вопрос, который меня интересовал с пер- намек: не пойти ли и нашей стране по этому
Для начала Марк рассказал историю современными программами. вого дня знакомства с Ubuntu: почему для пути? В этом случае востребованной ока-
своего приобщения к Linux, ставшую в Затем в выступлении прозвучала очень титульного дистрибутива семейства, ориен- жутся и услуги фирм, способных оказать
анналах Open Source уже почти столь же интересная мысль. «Мы, дистростроите- тированного, в том числе, и на начинающе- квалифицированную поддержку...
хрестоматийной, как история про принтер ли, – сказал Марк, – часто забываем, что го пользователя, в качестве пользователь- Наконец, речь дошла и до схемы раз-
Ричарда Столлмэна или про терминаль- наша роль меньше, чем роль ребят, кото- ского окружения был выбран Gnome, хотя, работки открытого ПО вообще и дистрибу-
ную программу Линуса Торвальдса. Один рые собственно и разрабатывают те паке- казалось бы, KDE справляется с этой ролью тива Ubuntu в особенности: о механизмах
приятель дал Марку пачку дискет с дис- ты, что включаются в дистрибутивы. И мы как минимум не хуже. Марк объяснил сде- контроля версий и веток исходного кода, о
трибутивом Slackware и шесть упаковок должны уважать их работу – в том числе и ланный выбор тем, что в момент создания методах совместной работы над докумен-
пива, сказав, что это – все, что нужно для сообщениями об ошибках, извещением о Ubuntu Gnome был более простой в исполь- тацией и ее переводами на разные язы-
освоения Linux. Правда, существует версия, новых возможностях, включаемых в свои зовании средой, нежели KDE. Когда же ки – например, на санскрит (да, товарищи, в
что упаковка была одна – с шестью бутыл- продукты сборщиками дистрибутивов, и разработчики KDE, оценив концепцию дис- Ubuntu предусмотрена и такая локаль). Что,
ками. Однако я более склонен доверять тому подобными способами.» трибутива, предложили вариант со своим как было убедительно продемонстрировано,
переводу Дмитрия. Действительно, без Логическим продолжением этой мыс- рабочим столом – родился Kubuntu. действительно, оказывается нынче ключе-
поллитры, говоря по-нашему, с Linux’ом ли было высказывание об аналогичных Зашла речь, конечно, и о бизнес-моде- вым моментом для любого проекта Open
тогда, лет десять назад, разобраться было горизонтальных связях с другими дистрос- ли, призванной сделать разработку дистри- Source – как с технологической стороны,
проблематично. Так что вряд ли Марк в троителями. В первую очередь речь зашла, бутива коммерчески выгодной. Здесь инте- так и со стороны, если так можно выразить-
этом процессе обошелся даже шестью конечно, о взаимоотношениях с разработ- ресен следующий момент: вместо создания ся, социальной. Впрочем, для открытого
исходными упаковками... чиками Debian – материнской по отноше- единой централизованной компании фирма ПО эти аспекты оказываются связанными
Далее последовал рассказ о том, как нию к Ubuntu системы. Но не отвергается Canonical, обеспечивающая финансирова- практически неразрывно – и это тоже про-
зародилась идея дистрибутива Ubuntu, и и сотрудничество с иными производителя- ние разработки Ubuntu и его поддержку, звучало в выступлении Марка.
Действительно, ведь сам принцип раз-
работки Open Source базируется на вовле-
чении в процесс максимально широкого
круга лиц, способных к ней в принципе – и
это одна сторона вопроса. Другая же, обо-
ротная, выливается в проблему эффектив-
ности контроля над изменениями, которая
может обеспечить целостность системы
разработки и защиту ее от повреждения
некорректно написанными фрагментами
кода. То есть, попросту говоря, все сво-
дится к тому, чтобы система была «дура-
коустойчивой» – и чтобы при этом никто из
разработчиков не ушел обиженным...
Вопросы разработки тесно связаны с
вопросами обучения. И в планы Canonical
входит создание центров обучения, тести-
рования и сертификации специалистов, в
том числе и в России.
Последняя часть доклада, как и поло-
жено, была посвящена планам на буду-
щее, то есть разработке следующего рели-
за, носящего имя Edgy Eft, выход которого
запланирован на ноябрь.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 33


РЕПОРТАЖ

ВОПРОСЫ И ОТВЕТЫ
По окончании выступления последова-
ли многочисленные вопросы, на которые
интерфейсов разработчика?

О Разработчики Linux пошли довольно


сделает за вас.
О сообщество разработчиков вокруг
портирования Linux на платформу
давались весьма обстоятельные ответы.
Приведу их здесь, поскольку они по содер-
жанию могут составить предмет весьма
трудной дорогой – заново изобрес-
ти велосипед. То есть установить новые
правила разработки, правила открытого
В я читал блог разработчика ядра
Red Hat, который сказал, что у
них очень много жалоб на то, что это
SPARC существовало долгое время, но оно
не имело официальной поддержки. Однако
многие пользователи хотели иметь Linux
развернутого интервью. Так сказать, в кол- и свободного программного обеспечения. работает в Ubuntu, но не работает в для Sparc. Так что мы сначала работали с
лективном исполнении. Мы, конечно, не можем рассчитывать на Fedora. Он сравнил ядра этих дистри- этим сообществом, потом вышли на разра-
поддержку и помощь со стороны тех людей, бутивов, чтобы посмотреть на разли- ботчиков собственно платформы. И теперь

В Мы видели очень интересный


сервис для переводчиков, но
он был весь на английском языке.
которых привлекают легкие правила. Если
Вы хотите добиться изменения ситуации,
Вы должны убедить сообщество, что такие
чия, и обнаружил в ядре Ubuntu много
мелких дополнений, которые не были
включены в главную ветку разработ-
мы надеемся в скором времени включить
SPARC в список поддерживаемых плат-
форм Ubuntu.
Почему бы не сделать его мультия- вещи, как хорошая документация, краси- ки ядра.
зычным? А то получается, что «сапож-
ники без сапог».
вый дизайн, простота использования – это
важные и нужные вещи. Я не думаю, что О Ядро Ubuntu публикуется на сайте
kernel.org, так что для разработчи- В В настоящее время многие круп-
ные компании, в первую очередь

О Мы решили, что сам интерфейс не


нужно переводить, но некоторые час-
ти этой технологии имеет смысл локализо-
многое из того, что используется сейчас в
мире коммерческой разработки програм-
много обеспечения будет портировано под
ков ядра очень легко переносить из него
все дополнения в главную ветку. Как прави-
ло, эти исправления переходят из версии в
Microsoft, стараются завоевывать
умы молодежи своими проектами по
образованию, стажировке, трудоуст-
вать. Например, это связано с обращения- Linux. В первую очередь мы увидим пере- версию, но не всегда добираются до новых ройству. Есть ли у Canonical что-ни-
ми по поддержке. нос серверных приложений и приложений версий. Бывают, конечно, и случаи, что раз- будь подобное или будет ли?

В Многие компании сейчас завое-


вывают мир простыми средства-
баз данных, таких, как Oracle, потому что на
них есть реальный спрос. Настольные же
приложения, например, Photoshop, имеют
работчик торопится и просто забывает пере-
слать свои исправления в главную ветку. О Мне кажется, что такими вещами
занимаются сообщества пользо-
вателей Linux вообще. Мы тоже считаем,
ми разработки. На сегодняшний день
под Linux нет простых средств разра-
ботки. Каково Ваше видение простых
в Linux свои аналоги, например, Gimp, и
необходимости в их переносе нет. В любом
случае, не следует думать, что кто-то это
В Можете ли Вы что-нибудь ска-
зать относительно планов порти-
рования Ubuntu на платформу SPARC?
что очень важно устанавливать контакты с
пользователями. Но для меня самое глав-
ное, чтобы контакты происходили с людь-
ми, которые что-то понимают в этом (смех
в зале). Я думаю, что люди, сидящие в
этом зале, имеют гораздо большее влия-
ние на развитие IT, чем просто некая масса
пользователей. Мы отдаем себе отчет, что
начинаем с очень маленького сообщества,
но это – очень образованные люди и очень
эффективные.

В Планируете ли Вы включать в
релизы Ubuntu ПО, которое сде-
лает его Enterprise Ready?

О В текущие релизы включаются про-


граммы, которые люди использу-
ют в первую очередь – почта, Интернет,
Apache и базы данных. В частности, про-
грамма установки Ubuntu предусматривает
инсталляцию готового Интернет-сервера.
Тяжелые сервера приложений будут вклю-
чаться в дистрибутив только в том случае,
если это будет востребовано сообществом.
Сообщество пока не нуждается в серверах
приложений (гомерический смех в зале).

В Не являясь разработчиком, я вы-


брал Ubuntu в качестве рабочего
стола. Может быть, мой выбор непра-
вилен, и надо было выбрать Xandros
или Linspire? (смех в зале)

О Попробуйте их все – и решите, какой


лучше подходит (гомерический смех
в зале, переходящий в овацию).
Следует учитывать, что такие дистрибутивы,
как Xandros, Linspire или, например, MEPIS
включают в себя много коммерческого ПО,
не распространяемого свободно. Ubuntu же

34 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


РЕПОРТАЖ

включает только свободное ПО и при этом


работает из коробки на новом оборудова-
нии. Кроме того, у Ubuntu очень большое
редной релиз и у человека всегда будет
выбор – обновлять существующую версию
или перейти на новую.
крытого ПО? И есть ли какие-нибудь
соображения по поводу BSD-лицензии,
которая накладывает гораздо мень-
О Я не думаю, что нужно убеждать
пользователей Windows перейти на
Linux, но я ищу те самые моменты, которые
сообщество разработчиков, благодаря чему ше ограничений в этом отношении? покажут им преимущества свободного ПО.
ошибки исправляются быстро.
В Планируете ли Вы убеждать
производителей устройств от- О Если это Ваш проект, Вы може-
те использовать модель двойного
В Планируются ли добавления

В В последней версии 6.06 есть


прекрасная поддержка свежего
крывать код их драйверов. И что Вы
предпочитаете – помогать компаниям
лицензирования, выпустив две версии –
одну под GPL, другую под коммерческой
в Launchpad специально для
переводчиков?
оборудования. Однако постоянно вы-
ходят новые устройства, видеокарты
писать драйвера под Linux или созда-
вать собственные?
лицензией.
GPL более свободна, так как она защища- О Совершенствуются средства сов-
местной работы переводчиков, и
и так далее. В то же время для Ubuntu
заявлена поддержка на три года для
настольного варианта и пять лет для
О Наша позиция в том, что мы сможем
лучше поддерживать продукты, если
будет и поддержка со стороны производи-
ет свободу программы, предотвращая ее
закрытие. Поэтому она предпочтительна
для больших проектов
средства обсуждения новостей из пере-
водов, в частности, нечто вроде “заметок
на полях”.
серверного. Будет ли при этом обнов-
ляться ядро для включения поддерж-
ки новых устройств?
теля. Как правило, поставщики заинтере-
сованы в открытии своих спецификаций,
если они уверены в важности для них
Если же Вы – разработчик небольшой про-
граммы и хотите наиболее широкого рас-
пространения своего кода, то BSD-лицен-
В Полетели бы Вы в космос на ко-
рабле, все бортовые компьюте-
ры которого работают под Ubuntu?

О Работа над текущим ядром будет


продолжаться, и драйверы устройств
данного рынка. Например, я и мои друзья
предпочитаем продукцию Intel, потому что
зия может оказаться предпочтительней.
О Нет. (смех и бурные аплодисменты).
Знаете, какая система работает на
из новых ядер будут по возможности пор-
тироваться в текущее ядро. Однако понят-
но, что в какой-то момент обратное пор-
это открытая архитектура, для нее быстро
появляются драйверы. В Я поставил Ubuntu только для
того, чтобы отказаться от воро-
ванного программного обеспечения.
Союзе? Восьмибитный компьютер 70-х
годов, с программами непосредственно в
машинных кодах, с прямым программиро-
тирование драйверов на ядро пятилетней
давности окажется невозможным. Поэтому
через какое-то время мы выпустим оче-
В Как Вы оцениваете взаимоот-
ношения между разработчиками
GPL-программ и разработчиками за-
Как мне объяснить это моим друзьям?
(смех и аплодисменты)
ванием памяти, в котором нечему ломаться
(бурные аплодисменты).

ИНТЕРВЬЮ
В качестве завершающего штри- науке, образованию, искусству, в той или
ха встречи планировалось, что иной форме дотироваться обществом? На
Марк даст расширенное интер- что Марк неожиданно ответил вопросом:
вью для журнала LinuxFormat. Однако на «А Вы как думаете?»
большинство мыслимых вопросов ответы Будучи, некоторым образом, предста-
были получены или из выступления, или в вителем науки, я, разумеется, ответил, что
ходе последующего обсуждения, и застав- финансирование разработок Open Source
лять Марка повторять это в очередной должно осуществляться по тем же моделям,
раз было бы антигуманно. И потому все что и финансирование фундаментальной
интервью свелось к обсуждению двух воп- науки – то есть дотационно. На что Марк
росов, показавшимся, во-первых, наиболее сказал: «Предположим, Вы написали про-
важными, а во-вторых, не прозвучавшим грамму чисто научного назначения. И Вам
в основной части. В качестве интервьюера присылают к ней патч, никакого отноше-
выступал ваш покорный слуга (хотя в ито- ния к науке не имеющий, но делающей эту
ге получилось совсем не интервью), роль программу пригодной для коммерческого
переводчика исполнял Павел Фролов – использования. Включите Вы его в свою
генеральный директор Линуксцентра. программу или нет?»
Сначала я поинтересовался мнением Вопрос почти поставил меня в тупик.
Марка на счет того, с какого конца следует Чуть подумав, я ответил – почему бы и нет?
подходить к пропаганде Open Source – сни- Ведь в сущности, наука для того и сущест-
зу, со стороны пользователей-индивидуа- вует, чтобы ее результаты использовались.
лов, в том числе домашних, или же сверху, В том числе и в интересах бизнеса. Важно
от корпоративных потребителей IT. Иными только, чтобы сама наука не становилась
словами, куда Linux придет раньше и с боль- при этом бизнесом. На чем и был достигнут
шим успехом, в дома, или в офисы? Ответ почти что консенсус.
был достаточно дипломатичным – «не сле- Вот такое странное интервью у нас
дует пренебрегать ни теми, ни другими»; но получилось.
в свете отмеченной ранее, во время ответов В заключение отмечу, что встреча про-
на вопросы, ориентации на «квалифициро- шла, как говорится, в теплой и дружествен-
ванное меньшинство», у меня сложилось ной, я бы сказал – неформальной, обста-
впечатление, что Марк отдает предпочтение новке. Не обошлась она без «раздачи сло-
решениям корпоративным. нов» – наклеек Ubuntu и последнего номера
Второй же вопрос касался финансовой журнала Linux Format. А лично меня она
стороны открытых проектов: должны ли навела на некоторые мысли, которыми я
они стремиться к коммерческой самооку- надеюсь поделиться с читателями в самое
паемости и прибыльности, или, подобно ближайшее время. LXF

www.linuxformat.ru LXF8(82) АВГУСТ 2006 35


ЧТО ТАКОЕ... Tenor

Что
такое... TENOR?
Почему вы можете что угодно раскопать в Интернете, но не в курсе, что находится на
вашем собственном диске? Может ли помочь Tenor? И даст ли Джоно Бэкон нам
какую-нибдуь подсказку?

Будто я не знаю, что это –


>> толстый дядька с тонким
базе данных вместе с совокупностью свойств, в которой
узлы (информация) соединены ребрами (связями). В
голосом! структурные элементы встроено индексирование текста, и
Нельзя же так легкомысленно отзываться о высоком Tenor готов к этой работе, но большинство более интерес-
искусстве оперы! Вдобавок вы заблуждаетесь: Tenor – ных высокоуровневых вещей еще только планируется.
довольно абстрактное понятие; в общем, это некая среда
Неплохая идея. А как она
для создания контекстных сетей и построения приложений,
работающих с ними.
>> появилась?
Пару лет назад Скотт Вилер [Scott Wheeler], разработчик
Чего-о?
>> Я сказал, абстрактное понятие. Например, в
Tenor’а, обнаружил, что информацию гораздо легче найти в
сети, чем на рабочем столе. Он также пришел к выводу, что
Интернете совокупность web-страниц, адресов электрон- весьма трудно объединить беспорядочные обрывки инфор-
ной почты и файлов определенным образом объединена: мации в персональном компьютере. Обе эти задачи в сети
допустим, существует связь между Mr Tambourine Man и решаются легко – можете привлечь свой любимый поиско-
Бобом Диланом. Но имеет смысл также связать Mr вый сервер и найти нечто с желаемой степенью достовер-
Tambourine Man и The Byrds. Tenor предоставляет вашей ности. А на рабочих столах таких средств нет.
настольной системе место для размещения информации
Я где-то читал, что Tenor
такого рода.
>> имеет какое-то отношение
То есть он просто увязывает к KDE – он только под KDE и
>> всякие там понятия? работает?
В простейшем случае – да, но Tenor способен обеспечивать Tenor предусматривает несколько уровней (реа-
более сложные отношения. Предположим, кто-то шлет вам лизован только первый). Самый низкий уро-
письмо о сокращении среды обитания белого медведя в вень отвечает за управление связями графов (вспом-
Канаде, с темой «Полярные медведи», и прикрепляет ните вышеприведенное бородатое объяснение из инфор-
файл F12345.jpg – изображение здоровенной медведи- матики). Сюда включается создание вершин графов, их
цы. Если вы не переименуете картинку сразу после получе- соединение, задание свойств и т.д. Он использует Qt – и
ния (хоть оно и напрашивается, но про это легко забыть), весьма малую часть Qt, ее можно заменить без особых
то впоследствии отыскать ее будет трудно, поскольку поиск проблем. На данной основе будет сделана надстройка
по словосочетанию «полярные медведи» вряд ли обратит над KDE – средства облегчения работы с Tenor для
внимание на файл с именем F12345.jpg (если, конечно, разработчиков приложений. Скотт Вилер сильно
ваша система индексирования не отслеживает контекс- привержен ко KDE и, естественно, интегриру-
тные связи – например, в данном случае это изображение ет эти элементы в среду KDE. Но он энергич-
плюс электронное письмо, дата его отправки, размер фай- но подчеркивает, что ничто не мешает кому
ла, тема и т.д.). Tenor – система построения подобных бы то ни было написать подобные надстройки для других
сетей связанной информации и создания приложений, рабочих столов и программных оболочек.
использующих эти возможности. Круто, правда?
Ну хорошо, а что это даст лично
Типа да, но позвольте мне
>> мне?
>> переодеться хакером Преимуществ несколько. Возможно, нечто вроде Kerry
(фальшивая борода, сандалии и (KDE-надстройка для Beagle) будет переделано для работы
широкие штаны) и попросить вас с Tenor и упростит поиск на компьютере. Но важнее то, что
изложить эту идею в терминах выражается навязшим на зубах модным словом тэгирова-
компьютерных наук. ние (навешивание ярлыков). В последнее время было мно-
С точки зрения науки, это направленный граф, используе- го дискуссий о ярлыках и новом подходе к файловой нави-
мый, говоря математическим языком, для отображения гации, с точки зрения управления содержимым. Примеры –
связей между объектами. Данная структура хранится в динамические папки, создание ярлыков по технологии

36 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ЧТО ТАКОЕ... Tenor

Beagle много кто хвалит, а Tenor


drag-and-drop, встроенный быстрый поиск и, теоретически,
файловая навигация по взаимосвязям, а не по простому
рам в Amazon.com скоро станет правилом, а основу для
этого закладывает Tenor.
>> на него очень похож. В чем
местоположению в иерархии. разница?
Перейдем к деталям: что это
Стоп-стоп, я малость
>> означает для моей конкретной
Beagle – в большей степени классическая система индек-

>> запутался... KDE?


сирования текста, Tenor решает другие задачи. Для сравне-
ния представьте, что Tenor подобен PageRank от Google с
Хороший пример – система навигации от Amazon.com, Да куча идей вокруг: например, прикреплять KNotes к спе- его системой оценки содержимого, а Beagle больше похож
использующая немало того, что они называют увязкой кон- циальным ресурсам, а не разбрасывать на рабочем столе, на AltaVista или Lycos, их подход – «давайте просто проин-
текста: информация о том, кто еще просматривал этот про- или отследить, что музыкальный файл в JuK или Amarok дексируем случайные ссылки». Без контекстных ссылок
дукт и что он купил; рейтинги, категории; определяемые прислал ваш друг посредством Kopete; а как насчет вы не сможете осуществить поиск способом, реализован-
пользователем тематические списки; комментарии, кото- использования меток DigiKam для облегчения поиска при- ным в большинстве современных алгоритмов. Другая ана-
рые могут служить заметками по данному товару, и т.д. креплений в KMail? Список возможностей огромен, но логия, позволяющая понять разницу между ними – сравне-
Если забыть о коммерческой части и думать только о кон- пока все это только идеи. Они должны превратиться в инс- ние предметного указателя в книге и гиперссылок в сети.
тенте, то потенциал буквально завораживает. Менеджер трументы, чтобы стать реально полезными пользователям. Предметный указатель в книге решает некоторые задачи, и
контента для просмотра данных по типу навигации по това- делает это достаточно хорошо. Гиперссылки – строитель-
ные блоки для любых объектов, вы можете использовать
их при создании поискового движка, напоминающего
предметный указатель.

Как продвигается разработка?


>> Основные функции, для размещения объектов в
графах, а также для переходов между графами и их
опроса, уже в деле. Следующий шаг – создание таких
функций, как поисковые классы для разработчиков, кото-
рые могут быть подогнаны под определенные приложе-
ния. Например, если вы пишете приложение для элект-
ронной почты, то, возможно, захотите
включить возможности поиска, специ-
фичные для содержимого и в чем-то
отличающиеся от используемых в гра-
фическом редакторе. Существуют также
приложения-помощники, без которых не
обойтись. Один из примеров – диспет-
чер ссылок с интерфейсом D-BUS. Используя
технологию D-BUS от Freedesktop.org, это прило-
жение позволит программе, затрагивающей часть
информации в графе, вызвать другую программу для
употребления найденной информации. Необходимо взаи-
модействие различных приложений через посредство
различных участков информации. Инструменты, которые
облегчат внедрение Tenor в приложения, в настоящее
время разрабатываются. Как только они будут готовы,
настанет черед разработчиков использовать Tenor в сво-
их приложениях. Это ожидается в серии релизов вет-
ки KDE 4.0.

Я практически ничего не
>>слышал о Tenor, а
выглядит-то он неплохо.
Разработчики живут в пещере или где?
Не в пещере, но Вилер предпочитает помалкивать о Tenor,
пока не сможет продемонстрировать рабочую версию:
ему надо заниматься разработкой Tenor, а не ответами на
письма или дискуссиями о направлении развития неокон-
ченной программы. Мы еле уговорили его высказаться
для этой рубрики. К счастью, даже он не смог устоять
перед LXF .

www.linuxformat.ru LXF8(82) АВГУСТ 2006 37


ИНТЕРВЬЮ Стюарт Коэн

LXF ИНТЕРВЬЮ

«И Microsoft запросто
может вступить в OSDL?»

« АБСОЛЮТНО! »
Является ли Open Source Development Labs (Лаборатория Разработки Открытого Кода) цент-
ром тяжести для Linux? Выходит ли из-под контроля процесс лицензирования открытого
ПО? LXF встретился со Стюартом Коэном, руководителем OSDL, для выяснения…

38 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ИНТЕРВЬЮ Стюарт Коэн

адача Linux – добраться до LXF: Но OSDL позиционирует себя как

З
самых разнообразных поль- «центр тяжести» для Linux.
зователей: от крупных много- СК: Центр тяжести – любопытный термин.
национальных корпораций до Когда я только начал работать, а фактичес-
владельцев домашних ком- ки за пару недель до этого, Стив Балмер
пьютеров, а это означает, что [Steve Ballmer, Microsoft] выступил и заявил,
десятки непохожих группировок тянут его в что мы никогда не добьемся успеха по при-
разные стороны. Залогом невозможности чине отсутствия центра тяжести. Мы под-
монопольного захвата некой фирмой ядра хватили его фразу и сделали вроде расхо-
Linux является работа создателя ядра, жего лозунга: «Мы станем этим центром
Линуса Торвальдса [Linus Torvalds], в тяжести».
некоммерческой организации, совместно На самом деле наша миссия в том, что-
финансируемой многими спонсорами. бы стать местом, где могут собраться пос-
Эта организация – The Open Source тавщики дистрибутивов, разработчики и
Development Labs (OSDL): именно в ней тру- пользователи. Это по-настоящему ускоряет
дится Торвальдс и несколько других знаме- темпы внедрения ПО с открытым кодом на
нитых разработчиков, и это – гарантия, что корпоративный рынок. Определение «центр
никто из поставщиков дистрибутивов не тяжести» было просто каламбуром в ответ
сможет принудительно направлять разви- на заявление Балмера, пытавшегося коль-
тие Linux в свое русло. OSDL также высту- нуть Linux.
пает в роли центра, где обсуждаются стан-
дарты, патентные реформы, лицензирова- LXF: Я как-то говорил с одним из ведущих том, что мы делаем с деловой точки зрения решениям, хранению данных, кластерингу и
ние и другие темы, важные для всех проек- разработчиков ядра Linux, и тот сказал: и о том, что мы делаем в юридическом безопасности. Еще – на содержание обору-
тов свободного ПО. «это не центр тяжести для Linux, это черная аспекте, и что мы делаем в отношении рын- дования, используемого открытым сооб-
Пол Хадсон беседует со Стюартом дыра Linux». Они считают – по крайней ка, и в образовательном и промышленном ществом для работы над примерно 50–70
Коэном [Stuart Cohen], руководителем OSDL мере, между собой – что от крупных про- плане, и о нашей деятельности в плане проектами, которые постоянно крутятся в
с 2003 года, о его взглядах на сотрудничес- мышленных предприятий поступает немало техническом. нашем информационном центре.
тво OSDL с поставщиками дистрибутивов и средств, и эти средства исчезают где-то в
с сообществом, а также на реформы в сфе- недрах OSDL, а наружу выходит малая ПРО OSDL
ре предоставления патентов и лицензий… толика. Вы считаете, это правда?
Linux Format: Думаю, многие могли бы СК: Я думаю, если бы вы спросили Линуса, «НАША МИССИЯ – СТАТЬ
сказать, что OSDL тяготеет к крупным орга- или Эндрю Мортона [Andrew Morton], или
низациям. По-вашему, это справедливо? Эндрю Триджелла [Andrew Tridgell], или МЕСТОМ ВСТРЕЧИ
Стюарт Коэн (СК): Многие крупные орга- других разработчиков ядра, которых мы
низации действительно являются членами поддерживаем или нанимаем на работу… ПОСТАВЩИКОВ, РАЗРАБОТ-
OSDL. И немало крупных фирм-пользова- ведь они приносят немалую пользу, и все
телей состоит в наших консультационных это исходит из OSDL, с этой точки зрения. ЧИКОВ И ПОЛЬЗОВАТЕЛЕЙ.”
советах для потребителей. Мы работаем с Группа инженеров, работающих у нас
крупными правительственными агентствами над этими проблемами, довольно мала, и
по всему миру, например, с Министерством если представить массы людей, вовлечен- LXF: Куда попадает большая часть ваших Так что с инженерной точки зрения мы
Информационной Индустрии в Китае, EЭС ных в проекты с открытым кодом или в раз- средств? занимаемся очень многим. А еще у нас есть
в Европе, правительственными агентства- витие ядра, то выйдет, что только ничтож- СК: Наверное, больше чем куда-либо мы небольшая ИТ-группа, которая не только
ми в США. ная их часть работает на нас. Но мы всегда направляем средства в разработку – боль- осуществляет поддержку нашей внутренней
Да, если угодно, мы работаем с боль- стараемся внести достойный вклад – идет ше половины нашего бюджета. деятельности и поддержку проектов, свя-
шим бизнесом, но не только с промышлен- ли речь о должном лидерстве или о вкладе занных с двумя нашими информационными
ными предприятиями, но и с университета- в кодовую базу. LXF: Каков на сегодня ваш годовой центрами – один в Токио, один в Бивертоне,
ми, и с государственными учреждениями. У нас есть люди, занимающиеся под- бюджет? но также вносит вклад в большое количест-
В деятельности OSDL участвует немало держкой подсистем [ядра, – прим.ред.], у СК: Около 10 миллионов долларов. во всевозможных проектов с открытым
молодых фирм и частных лиц, не только нас есть разработчики ядра, они работают у кодом.
в рабочих группах, но и в консультаци- нас и играют ключевые роли, и уж для них- LXF: Тo есть $5 млн. в год уходит на
онных советах – мы их называем LUAC, то, конечно, мы не черная дыра. разработку? LXF: И все-таки около половины приходит-
Консультационные советы пользователей СК: Приблизительно. Они распределяются ся на инженерную часть?
Linux (Linux User Advisory Councils), да еще LXF: Итак, у вас есть Линус, Эндрю, между разработчиками ядра и нашей испы- СК: Правильно.
некоторые частные лица вносят средства в Триджелл, а Крис Райт [Chris Wright] тоже тательной группой, регрессионным тестиро-
фонд юридической защиты. работает в OSDL? ванием и OSDL Working Set – открытым LXF: Сколько инженеров вы за последнее
Хотя прежде всего мы концентрируемся СК: Да, и Стив Хеммингер [Steve проектом, размещенным на наш web-сайте, время уволили, если, конечно, увольняли?
на компьютеризации предприятий, то есть Hemminger]. который следит за программами и библио- СК: Пару инженеров, когда мы увольняли
на крупном бизнесе, государственных теками, которые люди запускают поверх несколько человек [летом 2005], чтобы
учреждениях и университетах; я думаю, что LXF: Их число ограничено – человек десять ядра. Еще эти средства идут на финансиро- высвободить средства для областей, на
по мере достижения успеха в этой сфере или около того. Так оправдывает ли объем вание рабочих групп, занимающихся теле- которых мы решили сконцентрировать вни-
Linux будет все больше проникать в средний работы, выполняемый OSDL, вкладывае- коммуникационными или настольными сис- мание – глобальная экспансия, IP-деятель-
и малый бизнес. И это тоже будет играть мые средства? темами, или вычислительными центрами. А ность [IP – intellectual property – интеллекту- >>
для нас важную роль. СК: Ну что ж, давайте еще раз поговорим о еще – тратятся на инициативы по сетевым альная собственность, – прим. ред.].

www.linuxformat.ru LXF8(82) АВГУСТ 2006 39


ИНТЕРВЬЮ Стюарт Коэн

>> Расширение происходит в сфере маркетин-


га, развития бизнеса, ИТ, финансов…
торговой марки Linux и Linux Mark Institute,
созданного Линусом много лет назад.
В свою очередь, мы тоже принимаем учас-
тие в этой деятельности; плюс к тому, Эбен
LXF: Значит, инженерам пришлось уйти,
чтобы высвободить фонды.
Вместе с Ларри Огастином [Larry Augustin] я собирается заниматься одним из принципи- СК: Повторяю еще раз, это было лишь
LXF: Что вы называете «IP-деятельнос- вхожу в совет директоров Linux Mark альных моментов – пересмотром GPL. И несколько человек.
тью»? Термин широк! Institute, мы следим за составлением субли- пока он осуществляет миграцию с GPL 2.0
СК: Например, сейчас ведется разнообраз- цензий торговой марки Linux, наша задача на 3.0 через фонд Free Software Foundation, LXF: Сколько инженеров у вас работает?
ная деятельность в юридической области. – убедиться, что торговая марка сохраняет- нам надо обеспечивать существование СК: Всего у нас более 50 сотрудников.
Имеются проблемы с авторским правом, ся и поддерживается и становится неотъем- Software Freedom Law Centre и его возмож- Несколько человек ушли, и у нас осталось
явная проблема с иском SCO, а несколько лемой частью всего происходящего процес- ность этим заниматься. 40, и, как я уже сказал, это касалось всех
лет назад мы объявили о фонде юридичес- са, словом, следить, чтобы торговая марка Это все только по поводу аспекта IP. Но наших подразделений.
кой защиты для поддержки инженеров, к Linux было защищена. есть и еще одна сфера серьезного внима-
которым предъявляет претензии SCO. ния – вопрос «Чем тормозится распростра- LXF: Поговорим о патентах. Это область,
Менее чем за неделю мы собрали около $3 LXF: Но вы ведь создали Фонд Поддержки нение Linux?». Некоторые разработчики где OSDL стоит по обе стороны забора.
млн. для содействия тем двум конечным IP (IP Support Fund)? могут сказать, что все дело в коде, но есть СК: Это как?
пользователям, и это отлично сработало, СК: Да, мы собрали средства для двух многое и помимо кода, поскольку на данный
поскольку SCO больше не преследует целей – для вопросов по патентам и ИТ, момент с технической стороны Linux доста- LXF: Ну, большая часть ваших средств пос-
конечных пользователей, о чем заявлено решаемым у нас внутри, и для поддержки точно хорош для массового использования тупает от фирм-владельцев многих патен-
публично. Software Freedom Law Centre, основанного по всему миру. Проблемы в основном лежат тов. Многие из них твердят: «Нам не нра-
вятся патенты, надо бы их отменить, но мы
будем все равно их регистрировать».
ПРО МЕДЛЕННОЕ РАСПРОСТРАНЕНИЕ Например, IBM ежегодно регистрирует 3000
патентов, или похожее безумное число. Вы
«Linux достаточно хорош технически для не думаете, что OSDL ведет себя
противоречиво?
использования по всему миру.» СК: Отнюдь. Я думаю, ваши слова отража-
ют реальность. Посмотрите на патентные
бюро по всему миру, будь то Китай, Япония,
ЕЭС, США – все они ждут патентной
Мы много делаем в области лицензиро- Эбеном Могленом [Eben Moglen], мы вло- как раз в сфере бизнеса, это проблемы, реформы.
вания и в области переизбытка лицензий. жились в этот Центр. Вы могли видеть, что касающиеся совместной работы программ с Мы считаем патентную реформу непло-
Как вам известно, на сегодняшний день за несколько лет мы выделили Эбену $4,2 открытым кодом в Linux, поскольку все это хой идеей, нам кажется, что патентов на ПО
между FSF и OSI имеется более 60 откры- млн. на оказание юридических услуг откры- завязано на стандартизации дистрибутивов, слишком уж много. Многие из них недейс-
тых лицензий, но мы полагаем, что боль- тым проектам, которые мы сочли ключевы- уверенности в их совместимости и надеж- твительны, многие просто не следовало
шую часть необходимой работы вполне ми. Поскольку эти проекты включали в себя ности, как в США, так и во всем мире. выдавать. Но реальность такова, что пере-
могут выполнять где-то полдюжины лицен- все больше и больше программ, которые ход из сегодняшней ситуации в такую ситу-
зий. Так что мы очень серьезно этим использовались на крупных предприятиях, LXF: А вам не кажется, что, возможно, луч- ацию, когда вообще не будет патентов на
занимаемся. в крупных университетах, крупных прави- ше оставить вопросы стандартизации на ПО, займет длительное время. И в течение
Мы также занимаемся вопросами тор- тельственных учреждениях, мы хотели LSB [Linux Standard Base, База Стандартов этого переходного периода мы хотим быть
говых марок, в частности, касающимися надежно укрепить их юридические позиции. Linux – прим. пер.], вопросы интеграции – уверенными в том, что ведется необходи-
на поставщиков дистрибутивов, а OSDL мая деятельность, чтобы разработчики про-
будет работать в тех областях, для которых должали работать, продолжали обновлять и
предназначена? разрабатывать код, без всяких проблем,
СК: Никоим образом. У нас есть совет связанных с патентами.
директоров, у нас есть бизнес-план, у Пусть вы слышите о том, что Red Hat
нас есть согласованная программа нашей предоставляет патенты [в свободный
деятельности. Поэтому мы полагаем, что доступ, – прим.ред.], или НР извещает о
LSB – это очень важный первый шаг, защите, или IBM “выкладывает” свои патен-
но чтобы эффективно работать с дист- ты – а мы считаем, вот и хорошо. Возьмем
рибутивами во всем мире, ей надо стать Sun: эта фирма выдала множество патен-
намного сильнее. Когда вы рассматрива- тов, но только пользователям Solaris. Было
ете деятельность, связанную с Asianux, бы очень хорошо, если бы существовало
Mandriva и Debian, вы рассматриваете эта- широкое соглашение о патентах на откры-
лонную архитектуру из Китая и проекты тый код, если угодно.
Open Source Symposium из Китая,
Японии и Кореи. Мы считаем LXF: Cоглашение о предоставлении патен-
очень важной сильную сов- тов Nokia касалось только ядра. А у вас ведь
местимость между Red Hat и Лаборатория Разработки Открытого Кода, а
SUSE и основной массой дис- не Лаборатория Разработки Ядра (Kernel
трибутивов из разных стран. Development Labs). Неужели вам этого
Именно это увеличивает цен- хватает?
ность и повышает доверие пот- СК: Нет, но еще раз повторяю – это лишь
ребителей. Мы делаем намного больше, хороший первый шаг. Нельзя же ожидать,
нежели простое написание кода. что все фирмы утром проснутся, соберут

40 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ИНТЕРВЬЮ Стюарт Коэн

ПРО ЧЛЕНСТВО В OSDL

«Некоммерческой организации, нейтральной к поставщикам,


нельзя быть разборчивой: кого принимать, а кого нет.»

свои патенты и отдадут их. Однако все эти отменить все патенты уже завтра, и потом их поддержать?». И если нам ответят «да» так же легко, но предъявить по нему иск
фирмы пытаются работать с теми бизнес- весь остальной мир сообщит, что на это пот- – мы готовы принять их. уже труднее. Здорово, конечно, что IBM или
моделями, которые сегодня актуальны. А ребуется 25 лет, а вы заявите: «Вот видите, кто другой под это подпадают, но от этого
правительства пытаются реформировать OSDL ошиблась». LLXF: А если нет? мало прока с точки зрения радикальной
патентную политику. Но быстро такие дела СК: Tогда они и вступать не будут. Но пре- отмены патентов на ПО.
не делаются. LXF: Ну, я не этого добивался. Я просто пятствовать им мы не можем. Мы не можем СК: Да, могу еще раз сказать: я думаю, это
Причем те же фирмы стараются убе- говорю, что вы верите, что в какой-то переписать закон. долгий процесс. Возьмите Бразилию,
дить разработчиков всего мира, что их момент в будущем – необязательно завтра, Китай, Японию, ЕЭС и США – уж не будем
патенты не будут использованы против них может быть, через 25, 30 лет – патенты на LXF: Значит, Microsoft запросто может рассматривать каждое патентное бюро в
ни в каком виде или форме, и что у разра- ПО будут отменены, и вы этого хотите. вступить в OSDL. мире. Даже основные патентные бюро
ботчиков есть полный доступ к этим патен- СК: Я думаю, что к этому движется весь СК: Абсолютно. У нас есть еще 70 фирм – занимают разные позиции по патентной
там по части разработки ядра или мир, и мы это будем поддерживать. членов OSDL, и их количество, возможно, реформе.
инноваций. перевалит за 100. Отстает ли правительство США? Да.
Ну и что, значит, завтра все патенты LXF: А вы не рассматривали возможность Движутся ли они медленнее, чем некото-
будут полностью отменены? Нет. И я не каких-либо санкций против тех членов, LXF: И сколько же этих фирм, по-вашему, рые другие патентные бюро? И это правда.
знаю ни одного места в мире, где это в которые игнорируют эту позицию? будут конфликтовать с вашей точкой зрения Но мне думается, что в целом все двигают-
самом деле может произойти – разве что у СК: Мы – некоммерческая организация, на патенты? ся в нужном общем направлении. LXF
кого-то в воображении. нейтральная по отношению к поставщикам СК: Вероятно, подавляющее большинство
дистрибутивов. Так что в какой-то степени из них работает над патентной реформой.
LXF: Но вы же говорили, что большинство это трудно… Не думаю, что есть хоть одна фирма, кото-
предоставленных патентов недействитель- рая бы не работала – хоть в какой-то степе-
Читайте
ны. Вы не сказали, что недействительны все LXF: Но это же не значит, что вы впустите к ни – над реформой патентов на ПО. Вопрос
полную онлайн-
патенты. То есть, на ваш взгляд, патенты на себе кого попало? только в темпе и степени, но в общем любая версию интервью на
ПО выдавать можно, но только после тща- СК: На самом деле значит. По закону. фирма, вступавшая в OSDL, заявляла, что www.linuxformat.co.uk/
тельного изучения? патенты должны быть реформированы. cohen.html, где Стюарт
СК: Вы говорите о разных вещах. Я дейс- LXF: По закону вы обязаны позволить всту- отвечает на вопросы о SCO,
твительно верю, что через какое-то время пить в свою организацию любому? LXF: Я думаю, что в США патентная рефор- BitKeeper и сходстве с
Coca-Cola.
реформа патентов добьется полной отмена СК: Да. Неужели вы думаете, что можно ма отличается. Мне кажется, что некая раз-
патентов на ПО. работать в некоммерческой организации, новидность патентной реформы происходит
нейтрально относящейся к поставщикам, и прямо сейчас: это попытка уменьшить опас-
LXF: Так вы этого хотите? при этом выбирать – кому позволить всту- ность судебных исков. Получить патент все
СК: Да. Мы думаем, что именно так и про- пать в нее, а кому нет?
изойдет. Но не сейчас. Если заглядывать
вперед, то мы считаем патентную реформу LXF: Неужели нельзя?
правильным направлением. Через много, СК: Вот именно, нельзя.
много времени все правительства в мире
коллективно придут к этой точке зрения. LXF: Ну хорошо, если бы вы работали в
Но оглянитесь назад и посмотрите на благотворительном фонде Спасения Детей
имеющиеся патенты на ПО: большинство из и в него захотела бы вступить некая органи-
них было недействительно с самого начала. зация, являющаяся частью движения
Называют разные цифры – треть, две тре- «Смерть детям», вы же не пустили бы их в
ти, 80% – разные люди приводят разные ваш фонд. Вы могли бы им сказать: «Вы не
данные по поводу их количества. То есть я разделяете наших взглядов».
хочу подчеркнуть: задним числом самые СК: Дело в том, что есть законы, регулиру-
разные люди вам скажут, что большинство ющие деятельность некоммерческих орга-
патентов недействительно, и их не следова- низаций. И конечно же, мы не захотим, что-
ло предоставлять вообще. бы членом OSDL стал тот, кто не разделяет
наших взглядов на миссию, стратегию и
LXF: Хочу уточнить: итак, точка зрения направление.
OSDL на самом деле в том, что патенты на
ПО выдавать не надо. LXF: Вот-вот. Значит, кому-то вы можете
СК: Наша... Чтобы вам стало полностью запретить членство?
ясно: патенты на ПО отживают свое, но они СК: Вопрос не в том, чтобы запретить, воп-
отживают свое с течением времени. Я не рос звучит иначе: «Вот наша миссия, цели и
собираюсь здесь провозглашать, что нужно задачи – согласны ли вы с ними и готовы ли

www.linuxformat.ru LXF8(82) АВГУСТ 2006 41


LINUX БЬЕТ VISTA

Linux vs Vista:
наши бьют!

Блистательный рабочий стол


It’s the shiny, 3D-accelerated wonderс desktop
3D-ускорением
будет править
that’s going to ruleмиром...
the worldо–да,
yes,это
we про Linux.
do mean
Пол
Linux.Хадсон разбирается,
Paul Hudson почему
finds out why Linux «Linux
vs Vista против
Vista» – это
is a battle битва,
we can которую
win hands мы можем выиграть,
down.
даже ничего не делая.

W
indows Vista вно- у многих из них капают слюнки при мысли щую крутизну Linux и убедить ваших
сит ясность в ваш о новом релизе Windows. использующих Windows друзей перейти на
мир, чтобы вы Так что в этом выпуске мы предоставля- него. Все, кто объявлял Linux неподходя-
НА ДИСКЕ могли безопасно ем вам оружие для проповедей, которое щим для настольных систем, убедятся в
и легко выпол- поможет выигрышно показать ошеломляю- своей неправоте...
• Beagle 0.2.6
нять повседнев-
• Compiz
• SuperKaramba 0.39 ные задачи и немедленно находить, что
• Xgl хотите, на своем ПК. По крайней мере, такую
установку Microsoft навязывает миру, и, если
НАЗАД, В БУДУЩЕЕ
вы пользователь Windows, для вас это прав- Бывалые линуксоиды сразу узнают некоторые «новые» функции Vista:
да – как минимум, отчасти.
«Инновации» Vista Linix-эквивалент
Но вы читаете этот журнал
Instant Search Beagle
как раз потому, что вы – не
пользователь Windows, и не Интерфейс Aero Xgl
удивитесь, узнав, что многие Виджеты рабочего стола SuperKaramba
из «инноваций», которые Network Explorer Bonjour
Microsoft заявляет для Vista,
Встроенный брандмауэр Встроенный брандмауэр
давно доступны в Linux.
BitLocker Встроенное шифрование файловой
Фактически, Linux даже обла-
дает такими функциями, кото- Браузер IE7 со вкладками Браузер Firefox со вкладками

рые не включили в Vista, побо- Графическая библиотека Avalon Графическая библиотека Cairo
явшись сорвать сроки выхода! Графические интерфейсы на XAML Графические интерфейсы на XUL
Выход Windows Vista ожидается в конце этого Все мы знаем людей, до сих Автоматические обновления Автоматические обновления
года... после значительной задержки. пор зацикленных на Microsoft, и

42 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


LINUX БЬЕТ VISTA

Мгновенный поиск файлов


Пользователи, перешедшие с Windows сообщения, а также тема и информация об результаты поиска автоматически обновят-
2000 на Windows XP, пережили одно из отправителе и получателе. Иными словами, ся, если вновь созданный файл или посту-
самых пессимистических обновлений за все Beagle извлекает из каждого файла наибо- пившее сообщение подпадут под критерии
время: Microsoft переименовала меню лее полезные данные. поиска.
«Найти» (Find) в «Поиск» (Search).
Сочувствуем: попытка найти скачанные Всегда рядом
файлы или установленные программы – Beagle установлен и доступен по умолча- «BEAGLE НАБЛЮДАЕТ ЗА ВСЕЙ
непростая задача для многих операционных
систем, во многом из-за чрезмерно разрас-
нию как в Fedora Core 5, так и в SUSE 10.1,
и многие другие дистрибутивы включают ФАЙЛОВОЙ СИСТЕМОЙ,
тающихся жестких дисков. Но с выходом
Vista Microsoft обещает прорыв: инструмент
его как опцию. Еще более впечатляет факт,
что Gnome 2.14 – окружение рабочего сто-
ОБНАРУЖИВАЯ ИЗМЕНЕНИЯ.»
Instant Search, «поиск, интегрированный в ла, стандарт трех самых популярных дист-
рабочий стол». Знакомо, а? рибутивов – использует Beagle как низко- Сочтя, что результаты поиска в даль-
В Linux мы привыкли к собственному уровневый поисковый механизм (back-end) нейшем вам пригодятся, можете сохранить
инструменту настольного поиска – Beagle, для основного файлового менеджера их в виртуальной папке, а затем повторять
который индексирует документы, электрон- Nautilus. поиск, просто дважды щелкнув по иконке
ные письма, диалоги обмена мгновенными Эта новая версия Gnome уже пошла как сохраненного запроса – результат тут же
сообщениями, изображения, звуковые и стандарт в Fedora 5 и Ubuntu 6.06, то есть вберет изменения вашей файловой систе-
видеофайлы, приложения... и даже вашу вы можете нажать Ctrl+F в любом окне мы. Это великолепно! Если вы раньше
историю посещения web-страниц. Вся эта
информация немедленно отображается в
Nautilus (или на рабочем столе), и ваши
файлы мгновенно найдутся. Более того,
никогда не пробовали Beagle в работе,
взгляните на врезку внизу...
>>
одном окне поиска.
Beagle следит за всей вашей файловой
системой и засекает, когда файлы измени-
ВНАЧАЛЕ БЫЛ LINUX... BEAGLE
лись. Несколько лет назад эту работу
выполняла библиотека libfam (file alteration
monitor, монитор изменения файлов), она
бормотала себе под нос: «Хмм... что-нибудь
поменялось в /usr? Нет? Ладно. А сейчас?
Нет? Славненько», и так далее – она наблю-
дала за каждым каталогом.
Нетрудно догадаться, что libfam не
отличалась бешеной скоростью, но теперь у
нас есть решение: Inotify. Это компонент
ядра Linux (которое, собственно, и выполня-
ет запись данных на жесткий диск), сообща-
ющий программам об изменении файлов.
Процессор практически не нагружается, а Чудеса Beagle: мы пошарили по файлам в поисках слова Не закрывая окна поиска, мы скачали несколько рисунков
Beagle полностью сканирует систему всего graham и нашли музыку, сочиненную Грэмом Моррисоном, Грэма из блога LXF. Beagle сразу же обнаружил их и добавил в
один раз (во время первоначальной уста- плюс сайты, на которые мы заходили и где он упоминается. наши результаты.
новки), после чего только делает обновле-
ния по мере изменения файлов.

Друг человека
Магия Beagle [англ. «гончий пес», – прим.
пер.] заключается не просто в поиске по
именам файлов в соответствии с вашим
запросом: интеллектуальные фильтры
обрабатывают различные типы файлов
индивидуально. Например, у документов
OpenOffice.org или PDF Beagle читает содер-
жимое (т.е. текст, набранный на странице,
листе электронной таблицы или слайде). У
звуковых файлов читается ID3-тэг, храня- Beagle с легкостью обеспечивает «прозрачный» поиск из Если какой-либо запрос выполняется довольно часто,
щий сведения об исполнителе, название других мест вашего рабочего стола, например, из Nautilus. сохраните его как виртуальную папку и просматривайте его
альбома и другую полезную информацию. результаты просто двойным щелчком.
У электронной почты индексируется тело

www.linuxformat.ru LXF8(82) АВГУСТ 2006 43


LINUX БЬЕТ VISTA

Даешь шикарную графику!


Одно из самых разрекламированных ет рисовать отнюдь не одни прямоуголь- на грани куба, который можно вращать в
нововведений Vista – новый графический нички и кружочки, так почему бы этим не реальном времени. Вы больше не увиди-
интерфейс пользователя Aero, который воспользоваться? те «разрывов» графики при перемещении
добавляет трехмерную оболочку к традици- Xgl натягивает каждое окно с ваше- окон по экрану; и можно даже добавить
онному внешнему виду и ощущениям XP. го стола на многоугольник как текстуру, эффект тряски.
Довольно мило – но ему далеко до аппарат- и затем помещает его в отдельном слое Никто – вот именно, никто – не сможет
но ускоряемого интерфейса, включенного в поверх других в ОЗУ, применяя мягкие остаться равнодушным, увидев Xgl в дейст-
Mac OS X несколько лет назад. тени, сглаживание пикселей и направлен- вии. Несмотря на молодость проекта, Xgl
И даже взяв все лучшее от Vista и OS X, ное освещение. Каждый из ваших вирту- уже напичкан функциями больше, чем мод-
вы и близко не подойдете к Linux, благода- альных рабочих столов затем проецируется ный сотовый телефон прямо из Японии.
ря самому замечательному графическому
нововведению на сегодняшний день – Xgl.

3D: Дождались
Разработанный и переработанный за пос-
ледние несколько лет, Xgl наконец-то
выполнил обещание предоставить графи-

«XGL РЕАЛЬНО ОБЕЩАЕТ


АППАРАТНОЕ УСКОРЕНИЕ
ГРАФИКИ.»
ку с настоящим аппаратным ускорением.
Раньше прорисовка всех ваших окон была
заботой процессора, и это отнимало весь-
ма значительные ресурсы. С Xgl весь про-
цесс прорисовки окон на экране выполня-
ется вашей видеокартой, она делает это
намного быстрее. Вдобавок открываются Xgl размещает виртуальные рабочие столы на гранях куба
новые возможности: ваша видеокарта уме- (или восьмигранной призмы, если хотите), позволяя прокручивать его
с помощью мыши.

ВНАЧАЛЕ БЫЛ LINUX... XGL


Хотя настройка Xgl по умолчанию вели- • general > allscreens > options > texture_ • plugins > scale > screen0 > options > безумное зрелище, если распахнуть окно
колепна сама по себе, есть десятки пара- filter – установите в Fast, если у вас медлен- corners – настройки эффекта Expos . По на весь экран).
метров, с которыми можно поэкспери- ная видеокарта, или в Best в противном слу- умолчанию это TopLeft – если захотите, • plugins > zoom > screen0 > options >
ментировать, добившись абсолютной чае. можете добавить более одного «горячего filter_linear – активируйте ее, и Xgl будет
точности. Некоторые из них доступны в • general > allscreens > screen0 > options > угла» (это угол дисплея, куда надо подвести сглаживать экран при увеличении масш-
диалоге Desktop Effects в Центре управ- lighting – когда эта опция включена, на ваш мышь, чтобы произошла активация этого таба, это выглядит намного приятнее!
ления Gnome (если вы используете SUSE рабочий стол-куб падают лучи прямого света. эффект). Другая возможность – изменить
10.1 с нашего диска), но для Истинно • general > allscreens > screen0 > options значение initiate, для задания определенной
Предельной Мощности потребуется Gconf. > size – число граней вашего трехмерного клавиши на клавиатуре.
Вы можете запустить его, набрав gconf- рабочего стола. По умолчанию оно равно 4 • plugins > switcher > screen0 > options >
editor в командной строке, или открыв (это куб, поскольку верхняя и нижняя грани saturation – здесь определяется цветность
Applications > System > Configuration > не задействованы), но вы можете устано- фона, когда вы нажимаете Alt-Tab. По умол-
Gnome Configuration Editor. вить что-нибудь до 32-х. чанию используется 100, но если вы изме-
Как только Gconf загрузится, откройте • plugins > cube > screen0 > options > in – ните его на 0, цвет фона обернется черно-
вкладку Apps и выберите Compiz. Там вы включив эту опцию, вы окажетесь не снаружи белой градиентной шкалой.
увидите древовидные структуры General и вашего куба, а внутри. Внимание: эта опция не • plugins > water > screen0 > options >
Plugins, в которые можно внести свои для подверженных клаустрофобии! rain_delay – установите это значение в 1 и
изменения. Не забывайте, что в Gnome • plugins > cube > screen0 > options > нажмите Shift-F9, на экране возникнет
Реформа Alt-Tab: встречайте живые
любые изменения, сделанные в Gconf, при- skydome – укажите здесь файл PNG, нахо- настоящий муссон. миниатюры ваших окон, с альфа-
меняются автоматически, без нажатия дящийся на вашем компьютере, чтобы Xgl • plugins > wobbly > screen0 > options > прозрачностью для подсветки
кнопки Save. Вот несколько ключей, с кото- отображал изображение (видимое только во frection – установите в единицу, чтобы ваши вашего выбора.
рыми вам, возможно, захочется поиграть: время его вращения) позади куба. окна колыхались как студень (совершенно

44 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


LINUX БЬЕТ VISTA

Эффекты Xgl нажмете Ctrl-Alt-Down («стрелка вниз»),


Что же это за функции? Одни имеют реаль- Xgl покажет развертку куба, и вы увидите
ную ценность для конечного пользователя, каждую грань; стрелками «Вправо» и
другие – просто баловство; но впечатляюще «Влево» можно переключаться между
выглядят все – и являются неотразимым гранями.
аргументом против сидения сложа руки в • Экспозиция окон. Вы видели это в
ожидании Windows Vista. OS X, теперь поглядите и в Linux: перемес-
• Альфа-прозрачность и затуха- тите вашу мышь в верхний левый угол
ние. Выберите любое окно, удерживая вашего экрана, и Xgl сожмет все ваши окна
нажатой Alt, затем покрутите колесико так, чтобы они уместились на одном экране.
мышки – прозрачность окна изменится. В Щелкните по любому из окон – оно будет
некоторых других эффектах Xgl автомати- выбрано; или щелкните по обоям, чтобы
чески затемняет окна; этот же просто позво- свернуть все окна.
ляет вам форсировать настройки. • Переключатель задач. Нажмите
• Куб рабочих столов. Виртуальные Alt-Tab, и Xgl затемнит фон и все ваши
рабочие столы всегда с трудом воспринима- окна, затем отобразит миниатюру каждого
лись новичками в Linux, а теперь эту кон- окна в центре экрана. При удержанной кла-
цепцию можно объяснить наглядно – раз- више Alt, щелкая Tab, вы сможете цикли- Эффект струящейся воды демонстрирует гибкость и потенциал Xgl.
местив каждый из рабочих столов на кубе, чески переключаться между окнами на
который пользователь может вращать. вашем рабочем столе, и Xgl выведет их на указатель мыши, а удерживая Ctrl-
Нажмите Ctrl-Alt и щелкните где-нибудь на передний план с эффектом наплыва. Windows, можно нарисовать мышью свои
экране, затем перетащите мышь влево или • Вода. Ну вот и один из бесполезных, собственные волны. Забавно, да только
вправо, чтобы повернуть куб. Другой спо- но прикольных эффектов – нажмите Shift- функции тут ни при чем!
соб – щелкните на заголовке окна и перета- F9, и на ваш рабочий стол польет дождь, • Трясущиеся окна. Этот эффект,
щите его за пределы экрана, чтобы пере- создавая эффекты текучей ряби. При нажа- как и Вода, не особо полезен, но на экране
местить его на другую сторону. Если вы тии Ctrl-Windows капля воды упадет на смотрится просто изумительно. Когда вы
перемещаете какое-нибудь окно (или увели-
чиваете его размер), окно реагирует так, как
будто сделано из желе – край, который вы
тянете, не отстает от курсора мыши, а
остальная часть окна медлит следовать за
ним, отчего слегка растягивается и
деформируется.
• Масштаб. Удерживайте клавишу
Windows и правую клавишу мыши, и Xgl
перескочит на двукратное увеличение ваше-
го рабочего стола. Прокрутите вперед коле-
сико мыши – масштаб увеличится еще
больше; и вы сможете перемещаться по
рабочему столу, просто передвигая мышь.

Перетаскивание ваших окон временно их деформирует. Пользы никакой, но


выглядит чертовски эффектно!

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

www.linuxformat.ru LXF8(82) АВГУСТ 2006 45


LINUX БЬЕТ VISTA

Виджеты наготове
В Vista обещана новая боковая панель Естественно, Linux уже долгие годы имеет виджетов означает, что каждому что-нибудь
для управления виджетами – полезными все это в виде SuperKaramba – сверхгибкой да найдется – от удивительно полезного
утилитками (калькуляторы, часы, заметки- системы виджетов с тысячами готовых тем, инструмента Liquid Weather (прогноз погоды
приклейки, RSS-ридеры и многие другие). доступных для скачивания. Широкий выбор в вашем районе на следующую неделю) до
восхитительно нелепого монитора процес-
сора Doom, отображающего загрузку про-
ВНАЧАЛЕ БЫЛ LINUX... SUPERKARAMBA цессора выражением лица героя из Doom.
Когда нагрузка на систему возрастает,
Установив SuperKaramba на свою машину, парень из Doom свирепеет на глазах.
обзавестись новыми виджетами можно,
Возможно, Microsoft ему не устрашить, но
всего-навсего нажав кнопку New Stuff в
главном диалоге SuperKaramba. При этом
есть дюжина-другая истинно полезных и
загрузится список популярных виджетов, бесплатных виджетов, обеспечивающих для
и вы сможете установить любой из них, Linux устойчивое лидерство.
выделив его и щелкнув Install. Чтобы Более того, уже ведутся работы по
отобразить понравившийся виджет, выде- добавлению в KDE 4 совместимости с вид-
лите его и щелкните на Add To Desktop.
жетами OS X Dashboard, что принесет еще
По умолчанию местоположение каждо-
сотни виджетов в каталог SuperKaramba.
го виджета зафиксировано, но вы можете
щелкнуть на нем правой кнопкой мыши, Кстати, лучшее место для поиска вид-
выбрать Toggle Locked Position и перемес- жетов – www.kde-look.org, там они пред-
тить его вслед за мышью. Если виджетов ставлены в соответствии с рейтингом и час-
явный перебор (а это может случиться тотой скачиваний, тысячи штук на выбор.
очень легко, когда вы впервые дорветесь Но не хватите через край: слишком легко
до этой «кондитерской» крутых наворо-
переборщить и замусорить свой рабочий
тов), щелкните Close This Theme в контекс-
В SuperKaramba есть виджеты на любой вкус, упрощающие жизнь. стол.
тном меню виджета, который вам надоел.

Незамедлительная сеть
С Windows Vista установка сетевого Linux уже располагает простой сетевой Bonjour также популярен в мире обме-
соединения между разнообразными ПК и функциональностью, использующей стан- на мгновенными сообщениями, посколь-
устройствами проста и интуитивно понят- дарт Apple Bonjour (ранее известный как ку позволяет людям формировать сти-
на? Хорошо, попробуем и это – и удержим- Rendezvous или ZeroConf). Это сетевая хийные (ad hoc) коммуникационные сети.
ся во главе гонки, даже не запыхавшись. широковещательная система, которая рас- Например, если вы участник конференции,
сылает общее “hello” всем устройствам в с терминала Wi-Fi вы можете подклю-
сети и ждет ответа. Все другие устройства, читься и увидеть список других участни-
на которых работает программа Bonjour ков, подсоединенных к сети в настоящий
(включая машины с Mac и Linux), в ответ момент. Затем начинайте общение через
сообщают о своем существовании, и внутреннюю сеть – с использованием либо
устройства автоматически настраиваются мгновенных сообщений, либо голосового
для общения друг с другом. или видео-чата.
Поскольку на самом деле Bonjour – Используя Linux-программу iFolder, вы
просто протокол опроса сети, он может можете предоставить свои файлы в общий
работать со всеми типами приложений. доступ по сети другим людям, которых
Сейчас наиболее популярное его примене- обнаружил Bonjour. Поскольку iFolder пре-
ние – поиск общедоступной (shared) музыки доставляет общий доступ к папке на вашем
в вашей сети. Если вы запустите iTunes на компьютере, как если бы она была локаль-
Mac или Windows (iTunes совместим с ной, это означает, что если кто-то изменит
Bonjour), то сможете выбрать Share My какие-то файлы в этой папке, изменения
Music (Поделюсь музыкой). Каждый, кто будут автоматически скопированы всем, кто
использует Linux-компьютер в этой сети, разделяет эту папку – превосходно для
получит вашу музыку в свой проигрыватель групповой работы в сети.
Установите флажок – и ваша музыка зазвучит в локальной сети. и сможет слушать ваши мелодии.

46 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


LINUX БЬЕТ VISTA

сделать машины Windows мало-мальски

Прочная защита безопасными.


Шифрование файловой системы в
Vista, названное BitLocker, также едва ли
ново: Linux поддерживает шифрование
томов уже несколько лет. Если вы хотите
Когда в октябре 2001 г. появилась которые делают ее даже более защищен- попробовать его прямо сейчас, восполь-
Windows XP, Microsoft сулила пользова- ной, чем прежние клиентские операционные зуйтесь пошаговым руководством из LXF80
телям «возросшую надежность, удобс- системы Windows». После чудес, обещан- или просто отметьте флажок, как показано
тво, функции безопасности и коммуника- ных на XP, не удивительно, что кое-кто уже справа, во время установки вашего дистри-
ции». В августе 2004 г. Microsoft выпустила воспринимает такие объявления как заев- бутива – вот так все просто.
«Windows XP Service Pack 2 с передовой шую пластинку. Но сейчас Microsoft вводит Следующий большой скачок на пути
технологией безопасности», предоставляв- «инновации» в управлении пользователь- к безопасности пользователей Windows:
ший «последние обновления безопаснос- скими учетными записями и шифровании Vista представляет им брандмауэр. А раз- Брандмауэр Linux – мощная броня,
ти и нововведения от Microsoft», «силь- файловой системы. ве брандмауэра не было в XP? И да, и и настраивается он без проблем.
ную безопасность по умолчанию» и «новые нет: быть-то он был, но фильтровал только Нам не дано понять, почему
пользователи Windows только
функции проактивной защиты». Как за каменной стеной входящий трафик. Если в вашей XP есть
сейчас получают его как
Несмотря на столь напористую рекламу, Многие машины с Windows XP позволя- уязвимость, которую можно атаковать уда- стандарт...
многие люди до сих пор, похоже, страдают ют любому подключенному пользователю ленно, брандмауэр остановит хакеров и не
от массовых атак шпионских и рекламных устанавливать или удалять программы, даст ею воспользоваться. Но он не остано-
программ и вирусов и вынуждены искать или удалять файлы с жесткого диска. В вит исходящий трафик – шпионские и дру-
защиты у таких производителей, как McAfee случае Vista это сможет сделать только гие злонамеренные программы прекрасно
и Symantec. Так что, пока мы тут в LXF раду- пользователь с правами администратора, могут «стучать» на вас без вашего ведома.
емся появлению двухядерных процессоров, а другие будут только запускать програм- Выходит, в Windows впервые появился при-
ибо это означает, что мы сможем выделить мы и работать со своими файлами. Разве личный брандмауэр, блокирующий подоз-
ядро для SETI@Home, наши коллеги из не великолепная идея? Великолепная – рительный трафик.
Windows-журналов мечтают о двухядерных причем настолько, что Linux использует А вот Linux давным-давно имеет бранд-
машинах только потому, что смогут одно ее с тех самых пор, как мелькнул ого- мауэр промышленного уровня, так что впол-
ядро отдать антивирусной программе. нек в глазах Линуса. Короче, Vista доб- не простительно ваше недоумение: как же
Microsoft объявил, что «Windows Vista лестно обзавелась системой пользовате- пользователи Windows столько лет жили
включает встроенные функции защиты, лей в стиле Unix/Linux, чтобы наконец-то без него?

по смешной цене, удастся ли покончить с

Vista? Баста! современным настольным Linux? Многие из


инноваций Vista уже доступны в Linux,
зачастую работают быстрее (Beagle), выгля-
дят приятнее (Xgl) или лучше соображают
Одну вещь мы пока не обсуждали: иметь Windows предустановленным, так что (Bonjour). Более того, можно ожидать, что
цену. Vista появится в январе 2007 года, и «налог на Microsoft» не бросался в глаза. А мы увидим новые релизы SUSE, Fedora и
миллионы людей, получивших новый ком- тут пользователям действительно придется Ubuntu, предоставляющие еще больше
пьютер к Рождеству, неожиданно обнару- раскошелиться на обновление (в размере новых функций, в одно время с выходом
жат, что «коробку» Windows надо еще заку- нескольких сот долларов) – и это серьез- Vista.
пить – возможно, впервые. Привычно было ный расход. Но даже если продавать Vista Ясно как день: людям, критиковавшим
настольные системы Linux в прошлом, при-
НЕ ЗАБУДЬТЕ, ЧТО…
дется пересмотреть свои позиции в свете Пользователи Linux давно привыкли
новых функций Vista, потому что Linux уже ко множеству функций, аналоги
на световые годы впереди. Современная которых только сейчас появляются в
Vista. Просмотр во вкладках в Internet
проблема Linux – отставание маркетинга: у
Explorer? Используйте Firefox. Векторный
Linux налицо все функции и простота
рендеринг графического интерфейса?
использования, требуемые от высококлас- В Gnome он появился несколько лет
сной настольной системы, просто мы, назад, благодаря Cairo. Автоматическое
нынешние линуксоиды, считаем это само обновление ОС? Стар – в Linux это
собой разумеющимся. практикуется уже более пяти лет.
Благодаря расширению рынка настоль- Есть масса функций Linux, которых
в Vista нет вообще: файловая система,
ных систем Linux мы абсолютно уверены,
которая сама себя дефрагментирует без
что Vista будет последней Windows, выпу- вмешательства пользователя (новички
щенной при столь большой доле рынка. все не надивятся на этакий феномен);
Следующему релизу Windows – который, вирусоустойчивые почтовые клиенты;
по-видимому, состоится около 2012 года – встроенная виртуализация; выбор
придется яростно сражаться, чтобы не стать окружения рабочего стола; и, конечно
же, сотни гигабайт свободных программ,
Рабочий Linux 2006: прочный как скала, с элегантной графикой и под просто последним. LXF
которые идут вместе с дистрибутивами.
завязку набитый программами для выполнения любых задач.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 47


ПОТРОШИМ GIMP

Потрошим
Gimp
Есть много способов участвовать в разработке открытого проекта – например, помогать в написании доку-
ментации или непосредственно создавать код. Почему бы не начать с Gimp? Майкл Дж. Хэммел проведет
вас через весь процесс исправления ошибок, который он припас заранее...

NU Image Manipulation на настольные системы. Но даже и проек- командой и рядом участников. Основная

G
Program – более извес- ты-дедушки нуждаются в постоянной под- команда фактически состоит всего из двух
НА ДИСКЕ тный как GIMP – дедуш- держке открытого сообщества: разработ- человек: Свена Ньюмена [Sven Neumann] и
ка настольных прило- чиков, писателей, художников, журналис- Митча Неттерера [Mitch Natterer]. Ньюмен
• Gimp 2.2.11 и 2.3.8 жений в мире открытых тов и пользователей. де факто является лидером проекта, одна-
• Снимок GECL CVS
программ. Он вступил в ко проект структурирован не жестко, поэто-
жизнь как Motif-приложение в 1995 г. и при- Как помочь му важные решения часто принимаются
вел к созданию Gimp Toolkit (также известно- Разработка Gimp – как и многих других только после серьезного изучения откликов
го как GTK) и рабочего стола Gnome. открытых проектов – целиком зависит от остальных членов команды.
Хотя существуют настольные прило- информации от пользователей. Списки Активные участники – группа человек в
жения и постарше, чем Gimp, ни одно из пожеланий и запросы на возможности 30, они работают над различными раздела-
них не привлекло столько новых пользова- посылаются через Bugzilla – это web-систе- ми проекта, включая исходный код, доку-
телей в мир Open Source или так повлияло ма, предназначенная для отслеживания ментацию и управление ресурсами типа
статуса ошибок – и просматриваются репозитария CVS. Другие разработчики
командой разработчиков Gimp. Принятые прошлого (включая автора этой статьи!)
пожелания, а также набор требуемых размещены на вкладке окна About.
исправлений, перебираются в грядущий Для помощи проекту вам не обязатель-
релиз. Пока разработчики вгрызаются в но уметь кодировать, но вы должны быть
новые возможности, ошибки и изменения хорошо знакомы с приложением Gimp с
документации, пользователи тестируют точки зрения конечного пользователя.
выпущенные версии.
В конечном счете новый стабильный Ваша миссия
релиз становится доступным в виде исход- В этой статье мы продемонстрируем два
ных текстов. Поставщики Linux, такие, как лучших способа помочь проекту: охоту за
Red Hat, Mandriva и Ubuntu, затем собирают ошибками и их исправление.
новые версии и включают в свои Охота за ошибками может быть слу-
дистрибутивы. чайной или целевой. Целевое тестирова-
Версии Gimp: текущая стабильная (слева) и
Разработка осуществляется двумя ние ставит своей задачей изолировать
разрабатываемая (справа). Обе имеются на диске, и
вы можете их исследовать. очень маленькими командами: основной проблему и описать ее более подробно –

48 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ПОТРОШИМ GIMP

РЕСУРСЫ УЧАСТНИКА
• http://developer.gimp.org если вы хотите реального взаимодействия с
Информация для разработчиков Gimp другими участниками, то надо подключить-
• www.gimp.org/bugs/howtos/bugzilla. ся к почтовым рассылкам и IRC-каналам:
html Описание ошибок • www.gimp.org/mail_lists.html
• www.gimp.org/bugs/howtos/submit- • Канал #gimp на irc.gimp.org
patch.html О заплатках Существует много почтовых рассылок про-
• www.le-hacker.org/papers/gobject екта. Основными являются рассылка для
Объектная система GLib пользователей Gimp (по основным вопро-
• http://developer.gimp.org/api/2.0/ сам использования) и для разработчиков
index.html Документация по API Gimp Gimp (по основным вопросам разработки).
• О стилях написания кода см. файл Живое обсуждение происходит на IRC-
HACKING в исходном коде. каналах. Более подробную информацию
Все это обязательно к прочтению. Однако см. в wiki на http://wiki.gimp.org/gimp/irc.

Элита команды Gimp: ведущие разработчики Митч Неттерер (третий слева


внизу) и Свен Ньюман (четвертый слева в среднем ряду).

это особенно актуально для трудновоспро- ния для опытных пользователей Bugzilla, о требует лишь знания какого-либо тексто-
изводимых ошибок. Охотники за ошибка- том как отыскать уже имеющиеся вого редактора, а работа над web-сайта-
ми должны быть очень хорошо знакомы со сообщения. ми – знания XML и формата DocBook.
стабильной версией Gimp, а целенаправ- Опытные программисты могут попро-
ленные охотники – уметь компилировать C, Autoconf и другие бовать задуматься о расширении ключе-
новые версии программы. Познакомьтесь инструменты вых возможностей. Общеизвестный при-
также с Bugzilla, мы представим ее вам на Исходный код ядра Gimp использует набор мер – поддержка 16-битовых цветовых
стр. 50. инструментов Autoconf (Autoconf, Automake, каналов. Потребность в ней назрела давно,
Что касается исправления ошибок, то Libtool) для управления сборкой. Знание однако ее реализация потребовала неожи-
ядро Gimp написано на С, но есть и много Autoconf желательно, но не обязательно. данно большого объема работ. В итоге
дополнительных модулей на различных Зато важно умение программировать на С – запланирован пересмотр исходного кода
языках скриптов: самые популярные – Perl, оно требуется для работы с ядром Gimp и Gimp: он будет использовать код вспомога- Gimp содержит много проектов, под
Python и Script-Fu (вариация Scheme). Вы многими модулями. Для некоторых моду- тельного проекта под названием GEGL (см. управлением системы контроля
исходного кода CVS.
должны быть знакомы с созданием запла- лей необходимо знать Perl, Python и Script- врезку внизу).
ток; инструкции можно найти на странице Fu, но для работы с кодом ядра эти языки В какой форме ни выразится ваше
www.Gimp.org, но мы рассмотрим этот не потребуются. Пригодится знакомство с участие, Gimp представляет собой отлич-
процесс более подробно на стр. 52. текстовым редактором и такими инструмен- ный старт, и мы надеемся, что опыт этой
тами, как Cscope, Strace, GDB. Надо также захватывающей работы послужит вам хоро-
Еще до начала... вникнуть в стиль программирования Gimp шей наградой. Прежде чем нырнуть в
Если вы собираетесь порыться в исходном (снова, см. врезку Ресурсы участника). исходный код, взгляните на врезку Ресурсы
коде, то прежде вам необходимо знать о участника, расположенную вверху. Если мы
нескольких инструментах. Не программист? вдохновили вас на поиск и исправление
Прежде чем начать охоту за ошибками, ошибок, можете начинать – просто перевер- >>
CVS кратко опишем другие способы помочь про- ните страничку!
Каждый участник Gimp знаком с CVS, про- екту Gimp.
граммным обеспечением, которое управля- Первый – поддержка пользователей.
GEGL: БУДУЩЕЕ GIMP
ет исходным кодом Gimp. Пользователи Команда разработчиков проводит большую
получают код из CVS, производят измене- часть своего свободного времени за рабо- GEGL означает Generic Graphical Library; де пользователь также найдет их полезными.
факто это будущее проекта Gimp. Пока Так, механизм на основе направленного
ния, создают заплатку и отправляют ее той над исходным кодом, поэтому у них
проект находится в процессе разработки, а графа позволяет хранить сложную после-
команде разработчиков или участникам. мало времени на ответы новичкам.
когда будет закончен, станет внутренней довательность шагов при создании изоб-
Достаточно освоившись с программой, вы библиотекой обработки в Gimp. Кроме под- ражения, от добавления текста до приме-
Bugzilla можете обеспечивать поддержку конечных держки 16-битовых цветовых каналов нения фильтров, и даже редактировать
Bugzilla – web-система, используемая для пользователей посредством списков рассы- (одна из первоначальных целей), GEGL эти шаги. Допустим, вы изготовили в Gimp
отслеживания изменений в проекте Gimp. лок, web-страниц и чатов. предоставит богатую функциональность логотип для web-странички и сохранили
Это могут быть сообщения об ошибках, Такая помощь очень важна: ваша под- для обработки изображений, включая ваши действия в файле. Позже вы можете
управление цветом, редактирование цве- загрузить файл и создать, например,
запросы на новые возможности или изме- держка – видимая часть проекта, обращен-
товых пространств CMYK (см. картинку логотип для рекламного плаката – указав
нения в документации. С первого раза ная к публике. Поэтому обязательно надо
вверху справа) и L*a*b, гибкие системы на другое разрешение или размер холста.
Bugzilla немного ошеломляет, но команда полностью понимать, как пользоваться про- основе мозаики и многопоточную обра- Официальной даты вхождения GEGL в
Gimp усердно поработала, чтобы облег- граммой, и вежливо реагировать даже на ботку изображений. Также он предоставит состав Gimp не существует, но есть надеж-
чить вхождение в свой мир. На странице самую жесткую критику. механизм на основе направленного графа да увидеть его в очередной главной вер-
Gimp вы найдете всю информацию об Также очень ценны переводы и доку- для запоминания серии манипуляций над сии после Gimp 2.4. А до тех пор проект
использовании Bugzilla для сообщений об ментация. В переводе нуждается как доку- изображением. нуждается в разработчиках и тестировщи-
Большинство этих возможностей требу- ках – и вы знаете, что делать.
ошибках и их поиске; а на странице разра- ментация, так и интерфейс программы. Это
ется профессиональным пользователям – www.gegl.org
ботчиков Gimp (см. врезку Ресурсы участ- прекрасная возможность помочь проекту:
видеоредакторам, например. Но и средний
ника) содержатся более подробные указа- работа над большей частью документации

www.linuxformat.ru LXF8(82) АВГУСТ 2006 49


ПОТРОШИМ GIMP

Часть 1 Выходим на охоту


>>

Прежде чем исправлять ошибки, надо сначала о них узнать –


поэтому заглянем в Bugzilla!

Лучший способ понять, что такое вообще, либо он есть, но спроектирован ности шагов, чтобы любой желающий смог
работа над проектом – это исправить в нем нежелательным образом. прочесть ваше сообщение в Bugzilla.
ошибку. Если ошибка обнаружена, очень важно База Bugzilla (http://bugzilla.gnome.
С точки зрения вклада в проект Gimp, суметь ее снова воспроизвести, тут-то и org) служит для многих проектов, связанных
ошибкой считается все, что существует в пригодится ваша помощь: просто играйте с с рабочей средой Gnome. Прежде чем искать
исходном коде Gimp и работает не так, как программой, пока не сведете к минимуму в ней сообщения об ошибках, вам понадобит-
должно – в отличие от запроса на возмож- число факторов, вызывающих ошибку. ся зарегистрироваться и получить ID.
ность, для которой исходного кода либо нет Затем опишите их в виде последователь- Выбрав ошибку по вкусу, скачайте пос-

КАК НАЙТИ СООБЩЕНИЯ ОБ ОШИБКАХ В BUGZILLA

1 2

Войдите в базу данных Bugzilla и нажмите на ссылку Search


вверху страницы, затем перейдите к Complicated Bug Search При поиске сообщений об ошибках надо обратить внимание на
Form – Запросу на расширенный поиск. Для поиска ошибок вос- два момента. Первый –список продуктов. Листайте его до тех
пользуемся специальным ключевым словом gnome-love, им пор, пока не наткнетесь на запись Gimp. Нажмите на нее.
команда разработчиков Gimp помечает легко устранимые ошиб- Произойдет обновление других списков, но мы пока их
ки, чтобы их можно было легко найти. проигнорируем.

3 4

Прокрутите экран до области, означенной как Advanced Нажмите кнопку Search (она находится прямо над списками,
Searching Using Boolean Charts – Продвинутый Булев поиск. которые вы только что модифицировали). Просмотрите колонку
Там есть два выпадающих списка. В первом списке выберите Summary – если какая-либо ошибка вам приглянется, нажмите
Keywords (Ключевые слова), а во втором – Contains The на ее номер, чтобы узнать о ней больше (см. таблицу ниже). Мы
String (Содержит строку). В текстовом поле рядом со списком выбрали ошибку #331839.
наберите gnome-love. Поиск подготовлен.

Данная таблица информирует о выбран-


5 ID Sev Pri OS Product Status Resolution Summary
ной ошибке Gimp. Во втором столбце
331839 enh Nor All Gimp NEW Clear (Степень серьезности ошибки) стоит
keyboard
shortcuts enh, сокращение от enhancement (улуч-
шение), т.е. формально это не ошибка, а
запрос на улучшение. (Таблицу заполняют разработчики, получив через Bugzilla извещение об ошибке.) В данном случае решено
изменить диалог Preferences: добавить возможность очистить клавиши быстрого доступа без их сброса в первоначальное состоя-
ние. Мы думаем, что сможем с этим справиться. Вот и попробуем.

50 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ПОТРОШИМ GIMP

леднюю копию Gimp из CVS. Чтобы она тель, поэтому у нас будут права только на Вот что мы хотим изменить: кнопки,
заработала, понадобятся следующие чтение. Просто нажмите Enter (пароль вво- выделенные синим цветом, надо
переделать на список опций.
зависимости: дить не надо). Думаете, справимся? Конечно,
• autoconf 2.54 или старше. Теперь скачайте исходный код Gimp: справимся!
• automake 1.7 или старше. cvs -z3 checkout Gimp
• libtool 1.4 или старше. Флаг -z3 говорит об использовании
• gettext 0.13 или старше. сжатия, для ускорения передачи файлов [и
• GTK 2.8.10 или старше. экономии трафика, – прим.ред.].
Возможно, первые четыре пакета у вас Готово? В вашем текущем каталоге дол-
есть, но бьемся об заклад, что последнего жен появиться каталог gimp. Чтобы собрать
нету. GTK имеет свои зависимости. код, наберите:
Установить их легко, но надо позаботиться, cd Gimp
чтобы они ничего не сломали в вашей ./autogen.sh --prefix=/usr/local/
системе. Gimp-2.3 g_signal_connect (
Итак, скачайте и распакуйте GTK. В make button2, “clicked”,
любом современном дистрибутиве вам ско- sudo make install G_CALLBACK (prefs_menus_clear_
рее всего понадобятся последние GTK, Glib, Скрипт autogen.sh похож на скрипт callback),
ATK, Pango и Cairo. Первые четыре доступ- configure, который вы запускали для GTK- Gimp);
ны на сайте GTK (www.gtk.org/download). приложений, и теперь вы передаете опцию g_object_set_data (
Архив Cairo также содержится на сайте GTK, --prefix скрипту autogen.sh, а не configure G_OBJECT (button),
но на другой странице (ftp://ftp.gtkK.org/ (заметим, что мы ставим Gimp в директо- “clear-button”, button2);
pub/gtk/v2.8/dependencies). Важно соб- рию, отличную от GTK). Переменные PKG_ Ага, вызовы prefs_button_add() надо
рать пакеты в правильном порядке: Cairo, CONFIG_PATH и LD_LIBRARY_PATH, заменить на один вызов функции gimp_
GLib, Pango, ATK, GTK. установленные перед сборкой GTK, укажут int_combo_box_new(), создающей вид-
Перед сборкой скажем каждому пакету, системе сборки Gimp, где искать GTK. Мы жет меню – ее можно найти в документации
где искать библиотеки и информацию о хотим поставить Gimp в отдельный каталог, по API Gimp (http://developer.Gimp.org/
конфигурации: чтобы потом мы смогли его удалить и соб- api/2.0/libGimpwidgets/
export PKG_CONFIG_PATH=/usr/ рать другую версию, не повредив GTK. GimpIntComboBox.html). Кроме того,
local/gtk+-2.8/lib/pkgconfig:$PKG_ обратные вызовы для обеих кнопок надо
CONFIG_PATH План атаки слить в один обратный вызов.
export LD_LIBRARY_PATH=/usr/ Теперь мы можем осмотреть самую послед- Перечень мероприятий готов; присту-
local/gtk+-2.8/lib:$LD_LIBRARY_ нюю версию диалога Preferences и соста- пим же к его выполнению.
PATH вить план, как исправить наш досадный
Установите эти переменные среды, ина- недочет. Интересующая нас область обве-
че в сборку попадут старые версии, уже дена и выделена синим цветом на рисунке
установленные на вашей системе. В дирек- (справа вверху) – это опции Keyboard
тории каждого пакета наберите команды: Shortcuts. В сообщении говорилось, что тре-
./configure --prefix=/usr/local/gtk+- буется опция очистки горячих клавиш и что
2.8 существующие кнопки необходимо изме-
make нить на меню опций, подобное меню
sudo make install Navigation Preview Size.
Мы тем самым указываем всем пакетам Очень хорошо... Поищем код, ответс-
устанавливаться в /usr/local/GTK+-2.8. твенный за создание этой части диалога
Благодаря этому новые версии ПО не будут Preferences. В исходном коде Gimp находит- >>
мешать старым. ся много каталогов, включая:
• app код ядра Gimp.
Сборка • data Кисти, градиенты и прочее.
Установив зависимости GTK, соберите • plugins Фильтры и другие дополнитель-
Gimp. Необходимо зайти на CVS-сервер и ные модули.
скачать исходный код. Направьте вашу • po Переводы текстов в интерфейсе поль-
машину на CVS-сервер Gimp: зователя, например, в меню.
export CVSROOT=’:pserver: Нам требуется через каталог app доб-
anonymous@anonCVS.Gimp.org:/cvs/ раться до каталога dialogs, а в нем найти
gnome’ файл preferences-dialog.c. В файле пои-
и зайдите: щите строку, которая находится на кнопке
cvs login Reset,. Таким образом мы найдем код, с
Вы получите примерно следующее помощью которого создается эта кнопка:
сообщение: button2 = prefs_button_add (
‘Logging in to :pserver: Gimp_STOCK_RESET,
anonymous@anonCVS.Gimp. _(“_Reset Saved Keyboard Shortcuts
org:2401/CVS/gnome to “
CVS password:’ “Default Values”),
Мы заходим как анонимный пользова- GTK_BOX (vbox2)); Сообщение об ошибке может послать любой – только опишите ее
поподробнее.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 51


ПОТРОШИМ GIMP

Часть 2 Поправки и заплатки


>>

Задача поставлена – давайте выполним ее и отошлем результат команде


разработчиков на проверку....
После трудов по локализации ошибки gtk_box_pack_start (GTK_BOX определяемым значением (KBS_SAVE и
исправление оказывается простейшей час- (hbox), label, FALSE, FALSE, 0); т.д.). Объединим их в перечисляемый тип и
тью. Мы описали его здесь, и когда вы gtk_widget_show (label); добавим его в начале файла:
будете исправлять другой код, шаги, кото- Затем добавим поле со списком из enum {
рые мы предпримем, вам помогут. четырех записей. Первая запись – «пус- KBS_IGNORE,
тышка»: она позволит сбросить меню после KBS_SAVE,
Исправление каждого действия, чтобы пользователь в KBS_RESET,
Добавим поле со списком прямо под сущес- любой момент смог перезапустить то же KBS_CLEAR
твующими кнопками в app/dialogs/ самое действие. };
preferences-dialog.c. Чтобы пояснить, combo = Gimp_int_combo_box_new Теперь надо заменить обратные вызо-
зачем это поле нужно, надпишем его (сле- ( вы функций для существующих кнопок
ва). Все это требует GTK-виджета ‘hbox’: _(“Choose an Action”), одной функцией. Любые изменения в поле
hbox = gtk_hbox_new (FALSE, 6); KBS_IGNORE, со списком должны осуществлять функ-
gtk_box_pack_start (GTK_BOX _(“Save Now”), ции обратного вызова. Это просто. Новая
(vbox2), hbox, FALSE, FALSE, 0); KBS_SAVE, функция будет просматривать поле со
gtk_widget_show (hbox); _(“Reset to Default Values”), списком, определять, какой пункт меню
label = gtk_label_new (_(“Keyboard KBS_RESET, был выбран, и использовать оператор
Shortcut Status:”)); _(“Remove All Keyboard Shortcuts”), switch для выбора соответствующего
KBS_CLEAR, действия. В двух случаях (KBS_SAVE и
NULL); KBS_CLEAR) действие останется как у
Gimp_int_combo_box_set_active прежних кнопок. Переключаясь на первый,
ПИШЕМ ДОПОЛНИТЕЛЬНЫЙ МОДУЛЬ К GIMP (Gimp_INT_COMBO_BOX (combo), пустой пункт меню, не будем делать ниче-
KBS_SAVE); го. Последний пункт «чистит» горячие кла-
API libgimp.
gtk_box_pack_start (GTK_BOX виши: проходится по списку и сбрасывает
Чтобы написать модуль, нужно быть
знакомым с PDB, Procedural Database [База
(hbox), combo, FALSE, FALSE, 0); их. После этого новый список требуется
Процедур], содержащей набор всех функ- gtk_widget_show (combo); сохранить – и он будет доступен в следую-
ций, которые можно вызывать из модуля. g_signal_connect (combo, щий раз, когда пользователь запустит
Просмотр PDB через осуществляется брау- “changed”, программу.
зером Procedure Browser (Xtns > Procedure G_CALLBACK (prefs_menus_ static void
Browser) из меню в Toolbox. Каждую фун-
keyboard_shortcuts), prefs_menus_keyboard_
кцию можно искать по имени, причем
Gimp) shortcuts(GtkWidget *combo,
предоставляется краткое описание пара-
метров. Способ вызова функций зависит Строка g_signal_connect() сообщает Gimp *Gimp)
Модули на C, Python и Script-Fu: от языка, на котором написан модуль. В С программе, что когда пользователь изменя- {
окна предпросмотра доступны вы можете сделать следующее: ет наше новое поле со списком, надо gint value;
только для написанных на С.
image_id = gimp_image_ вызвать функцию prefs_menus_ gint fd;
new(width, height, type); keyboard_shortcuts(). Эта функция полу- GError *error = NULL;
Дополнительные модули – это небольшие тогда как в Perl это может выглядеть
чает ID виджета поля со списком (ID исполь- gchar *filename;
программки, написанные на каком-либо так:
зуется для обнаружения, какой пункт меню Gimp_int_combo_box_get_active
языке программирования и расширяющие image_id = $image->new(width,
возможности Gimp. Их часто называют height, type); был выбран) и структуру gimp. (Gimp_INT_COMBO_BOX (combo),
фильтрами, просто потому, что большин- а на Python вот так: Каждый пункт меню в вызове gimp_ &value);
ство из них находится в меню Filters. image_id = gimp.image(width, int_combo_box_new() описан рядом с switch(value)
Однако модуль может вставить себя в height, type)
любой пункт меню и осуществлять не Хороших руководств по написанию
только обработку изображений, но также модулей немало. Для написания на С смот-
генерировать логотипы, шаблоны, обеспе- рите серию руководств из трех частей на
чивать ввод-вывод и даже действовать как сайте разработки Gimp, по адресу http://
сервер для внешних программ, чтобы developer.gimp.org/plug-ins.html.
отображать изображения через Gimp. Отличное руководство для языка Python
Модуль можно написать на С с исполь- доступно в сети на www.gimp.org/docs/
зованием библиотеки libgimp, или же на python/index.html.
одном из поддерживаемых скриптовых Документация для Perl входит в состав
языков: Script-Fu (подмножество языка пакета Gimp-Perl – ее можно прочесть,
Scheme) и Python. Perl тоже поддержива- набрав perldoc Gimp или посетив страницу
ется, но только как добавочный пакет. www.gimp.org/tutorials/Basic_Perl.
Каждый из скриптовых языков связан с Желаем удачи!

52 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ПОТРОШИМ GIMP

Создание заплатки
Изменения, значит, работают. Время БЛАГОДАРНОСТИ
создать заплатку и послать ее на суд поч- Эта статья основана на слайдах, пред-
тенным разработчикам Gimp – так вы буде- ставленных Карин Делвер [Karine Delvare]
те поступать и при самостоятельной работе на конференции Libre Graphics, прошед-
над исправлениями. Из корня каталога шей ранее в этом году. Дополнительную
исходного дерева Gimp наберите помощь оказали Кэрол Спирс [Carol
Spears], Митч Неттерер [Mitch Natterer] и
cvs diff -up > ../patchfile.patch
Уильям Скэггс [William Skaggs]. Особая
В каталоге, расположенном на один благодарность Карин Делвер (и ее мужу)
уровень выше, чем текущий, в котором вы и Кэрол Спирс за предоставленные фото-
работаете, создастся файл заплатки. графии разработчиков на встрече Libre
Команда diff может проработать довольно Graphics.
долго. Проверьте, что файл содержит толь-
ко изменения, сделанные вами: команда
способна протащить туда и постороннюю
информацию.
Внизу сообщения об ошибке в Bugzilla
есть поле, содержащее информацию о про-
деланной работе. Заполните секцию
Комментарий и присоедините заплатку с
помощью ссылки, расположенной ниже.
Задача выполнена: можете самодовольно
Наша обновленная панель Keyboard Shortcuts в диалоге Preferences; новое откинуться в кресле.
меню отображается в правой нижней части окна. И последнее. Разработчики ответили,
что наша реализация будет работать лучше,
{ } если вместо меню будет задействована тре-
case KBS_IGNORE: static void тья кнопка. Так что мы опять взялись за
break; menus_remove_actions (gpointer дело и написали код для третьей кнопки.
case KBS_SAVE: data, После этого Митч Неттерер заплатку
menus_save (Gimp, TRUE); const gchar *accel_path, принял.
g_message (_(“Your keyboard guint accel_key, Теперь вы поняли: процесс абсолютно
shortcuts have been saved.”)); GdkModifierType accel_mods, прямолинейный, поэтому изучайте, участ-
break; gboolean changed) вуйте и создавайте! LXF
case KBS_RESET: {
menus_clear (Gimp, &error); gtk_accel_map_change_entry
g_message (_(“Your keyboard (accel_path, 0, 0, TRUE);
shortcuts will be reset to default “ }
“values the next time you start Нужно также написать прототип функ-
Gimp.”)); ции menus_remove() в заголовочном
break; файле app/menus/menus.h, чтобы ее
case KBS_CLEAR: можно было вызывать из preferences-
menus_remove (Gimp); dialog.c.
menus_save (Gimp, TRUE);
КАКОВА СУДЬБА ИСПРАВЛЕНИЯ LXF?
g_message (_(“Your keyboard Проводим тестирование В нашем исправлении кнопки располага- сональных конфигураций, оценят новую
shortcuts will be cleared “ Тяжелая работа позади. Выполним пере- лись друг рядом с другом. Но из-за огра- возможность.
“the next time you start Gimp.”)); компиляцию и переустановку – теперь мож- ничений на ширину текста разработчики В будущем можно добавить варианты
break; но запустить приложение и проверить рабо- решили добавить еще одну кнопку пониже предустановок горячих клавиш: выбор
исходных. Обычному пользователю это конфигурации по умолчанию, как в
} ту изменений.
может не пригодиться никогда, но про- Photoshop или как в Mac OS.
Gimp_int_combo_box_set_active make
двинутые пользователи, любители пер-
(Gimp_INT_COMBO_BOX (combo), sudo make install
KBS_IGNORE); /usr/local/Gimp-2.3/bin/Gimp-2.3
} Простейший способ проверить измене-
Мы добавили две новых записи в файл ния – просмотреть в меню File. Прежде чем
app/menus/menus.c и добавили функ- запускать новую опцию Remove All Keyboard
цию menus_remove(), вызываемую из Shortcuts, обратите внимание, что к пунктам
prefs_menus_keyboard_shortcuts(). меню File и Save приписаны горячие клави-
Она производит сброс всех горячих клавиш ши. Когда мы запускаем новую опцию, эти
в цикле. клавиши исчезают. Выйдем из программы
void и запустим ее снова – увидим, что клавиш
menus_remove (Gimp *Gimp) нет. Если затем в меню выбрать пункт Reset,
{ выйти и перезапустить Gimp, все горячие
До (слева) и после (справа): в диалог Preferences добавилась новая
gtk_accel_map_foreach(0,menus_ клавиши будут восстановлены по опция. Продвинутым пользователям она очень понравится.
remove_actions); умолчанию.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 53


КОНКУРС

WEBSPHERE
IBM COMMUNITY EDITION
CONTEST 2006
К
омпания LinuxCenter.Ru мы приветствуем не только готовые
при поддержке корпо- к использованию приложения, но и
рации IBM представляет
вашему вниманию конкурс
инструменты для интеграции WAS CE
с другим свободным ПО (в первую
WAS CE – РУКОВОДСТВО
IBM WebSphere Contest
2006! Это мероприятие нацелено на
очередь, Eclipse), проверки компонен-
тов, шаблоны приложений WAS CE/
К БЫСТРОМУ СТАРТУ
разработчиков, инструкторов, а также Geronimo и так далее. Конечно, ваш
всех, кому интересны технологии Java творческий полет не ограничивается Для того, чтобы начать работу с текущей версией WAS CE (прежде всего,
и Open Source. написанием кода – мы будем рады запустить этот сервер), необходимо:
Что нужно для участия? В первую видеть методические материалы: серь-
очередь – установить в своей систе- езные статьи, планы учебных курсов, >> Использовать одну из следующих операционных систем:
ме IBM WebSphere Application Server технические задания для учебного про- • Red Hat Enterprise Linux 3/4
Community Edition (WAS CE). Если вы екта и так далее. • SUSE Linux Enterprise Server v9
регулярно читаете наш журнал, то уже Победители конкурса будут опреде- • Windows 2003
наверняка знакомы с этим открытым лены Экспертным советом, в который • Windows XP SP2
сертифицированным сервером J2EE- войдут представители ведущих соф- Это те системы, на которых WAS CE прошел сертификацию на соот-
приложений, базирующемся на Apache тверных компаний. Подведение ито- ветствие спецификациям J2EE 1.4, хотя сервер может работать и на других
Geronimo. Если же вы по каким-то при- гов конкурса и торжественная церемо- платформах.
чинам пропустили апрельский номер – ния награждения победителей прой- >> Установить JDK 1.4.2_9 и старше, но не JDK 1.5.
не отчаивайтесь: всю необходимую для дет на выставке LinuxLand/SofTool’06 Для запуска готовых приложений достаточно иметь Java Runtime
быстрого старта информацию можно (Москва, ВВЦ, 26-29 сентября 2006 Environemnt (JRE). На компакт-диске Java Kick-start находится JRE 1.4.2 от
найти по адресу http://www.linuxformat. года). Победители конкурса в каждой IBM, но можно использовать и JRE от Sun Microsystems.
ru/contest/was2006.phtml#quickstart. из номинаций получат призы, предо- Для разработки приложений необходимо наличие JDK 1.4.2 любого из
Дистрибутив IBM WebSphere Application ставленные компанией LinuxCenter.ru: вышеназванных производителей. Sun JDK (J2SE 1.4.2) можно бесплатно
Server Community Edition можно найти • ноутбук загрузить по адресу
на прилагаемом к LXF78 диске: Сторона • программное обеспечение, лите- http://java.sun.com/javase/downloads/index.html
2: Websphere CE/kick-start_ocd.iso или ратура и атрибутика от LinuxCenter.Ru После установки JDK имеет смысл добавить в переменную окружения
бесплатно загрузить отсюда: http://www. • подписка на журнал Linux Format PATH каталог <jdk_install_dir>/bin.
ibm.com/developerworks/downloads/ от редакции журнала.
ws/wasce/?S_TACT=105AGX28&S_ Статьи и другие методические рабо- Хотя это и не относится непосредственно к WAS CE, многие Java-прило-
CMP=DLMAIN. Перед установкой серве- ты лауреатов конкурса будут опублико- жения используют переменную окружения JAVA_HOME. Ей можно присво-
ра данный ISO-образ необходимо пред- ваны на сайте IBM developerWorks и на ить значение в виде имени каталога установки JDK.
варительно записать на CD. страницах генерального информацион- Теперь можно приступать к установке сервера с диска Java Kick-start.
Основная задача конкурса – попу- ного спонсора – журнала Linux Format. Последнюю версию WAS CE можно также загрузить с сайта IBM по
ляризация IBM WebSphere Application Впереди – целое лето, а как пока- адресу:
Server Community Edition/Apache зывает опыт программы Google http://www.ibm.com/developerworks/downloads/ws/wasce/?S_
Geronimo как открытого и эффектив- Summer of Code, за это время можно TACT=105AGX28&S_CMP=DLMAIN
ного средства для решения широко- успеть многое. Желаем удачи в ваших Разработчики могут обращаться к документации как по WAS СЕ (вхо-
го круга различных задач, поэтому начинаниях! дит в состав дистрибутива), так и по Geronimo. Документация по Geronimo
доступна по адресу
http://geronimo.apache.org/.
Статьи на русском языке, объясняющие различные аспекты установки и
использования Geronimo, можно найти также по адресу:
http://www-128.ibm.com/developerworks/ru/

54 LXF 8(82) АВГУСТ 2006 www.linuxformat.ru


КОНКУРС

УСЛОВИЯ КОНКУРСА

ОБЩИЕ ПОЛОЖЕНИЯ особенностей WAS CE версии 1.0 и выше; план разработках, должен быть представлен в форме,
1. Участвовать в конкурсе «IBM WebSphere Contest учебного курса с учебными примерами и удобной для проверки его работоспособности и
2006» может любой человек, ознакомившийся с системой контроля усвояемости материала; эффективности, то есть в виде полных исходных
настоящими условиями и согласный с ними, за грамотное техническое задание для учебного текстов и сценариев для сборки.
исключением сотрудников IBM, LinuxCenter.Ru, проекта: проработанная структура сайта на эту 3. Работы, представленные в номинациях II и III,
журнала Linux Format и членов их семей. тему и т.п. должны распространяться на условиях,
2. Учредителями конкурса выступают корпорация II. Инструментарий одобренных Open Source Initiative, то есть по
IBM и компания LinuxCenter.Ru, генеральным Это могут быть расширения для Eclipse, какой-либо открытой лицензии. Распространение
информационным спонсором – журнал Linux облегчающие работу с WAS CE, утилиты для кода на тех же условиях, что и WAS CE/Geronimo –
Format. проверки компонентов, перекодировки приветствуется.
3. Конкурс проводится в период с 10 мая по 10 дескрипторов для перехода на WAS CE с других 4. Конкурсные работы следует высылать на адрес
сентября 2006 года. Поведение итогов конкурса и J2EE-серверов, шаблоны (templates) для электронной почты: contest@linuxformat.ru
церемония награждения победителей состоится разработки приложений с использованием WAS Допускается (а в случае с работами, попадающими
в ходе выставки LinuxLand/Softool’2006 (Москва, CE. в номинации II и III – приветствуется) публикация
ВВЦ, 26-29 сентября 2006 года). Итоги конкурса III. Решения. конкурсных материалах на web-сайтах, не
будут также опубликованы в ноябрьском номере Это готовые приложения, компоненты и любые ограничивающих имущественные права автора
журнала Linux Format. законченные и готовые для использования (SourceForge.net, домашние страницы авторов и
4. Победители конкурса в каждой из номинация фрагменты кода, устанавливаемые на серверах т.п.). В этом случае на адрес contest@linuxformat.ru
определяются Экспертной комиссией, состав WAS CE/Geronimo. следует выслать лишь ссылку на такой сайт с
которой утверждается Учредителями конкурса. кратким описанием представляемой работы.
Решение Экспертной комиссии является 2. Имущественные авторские права на работы,
окончательным. Денежный эквивалент призов не представленные в номинации I, должны ПОРЯДОК КОНКУРСНОГО ОТБОРА
выплачивается. принадлежать участнику конкурса. Это 1. Представленные на конкурс работы будут
подразумевает, что статья или любая другая оцениваться по следующим критериям:
ПОРЯДОК ПРЕДСТАВЛЕНИЯ РАБОТ методическая разработка не может быть
1. Присланные на конкурс работы должны попадать опубликована в печатных или сетевых изданиях • актуальность и востребованность (в том числе
в одну из трех номинаций: (журналах, сборниках, сайтах и т.п.), потенциальная – по мнению экспертов);
I. Методическое и информационное обеспечение. ограничивающих право автора на размещение • качество решения и его оформления, включая
Это может быть большая, серьезная статья с материала в других источниках. Код, документацию;
детальным рассмотрением конкретных содержащийся в статьях или методических • степень универсальности решения.

www.linuxformat.ru LXF 8(82) АВГУСТ 2006 55


СПРЯТАННЫЕ ЖЕМЧУЖИНЫ

ИЛЛЮСТРАЦИЯ: STUART HARRISON

НА ДИСКЕ

ТАЙНЫЕ КЛАДЫ
Сокровищницы приложений с открытым кодом ждут своего открытия.
Поохотьтесь за ними вместе с Майком Сондерсом.

громный каталог при- репозиториях; но при огромном количестве

О
Надеемся, вам
понравятся наши ложений Freshmeat разрабатываемых приложений некоторые
десять тайных кладов. Если содержит более 40 000 прекрасные (но малоизвестные) проекты
вы хотите поделиться своими проектов, и почти все неизбежно остаются незамеченными. В
находками, дайте нам знать они – Linux-приложения этом месяце мы просеяли Интернет в поис-
letters@linuxformat.ru.
с открытым кодом; но ке классных приложений, о которых вы ни
все ли они стоят внимания? Издатели дис- разу не слышали, или вам некогда было
трибутивов собирают сливки этого изоби- их опробовать. И, конечно же, вы найдете
лия и размещают их на своих дисках или в их на DVD!!

56 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


СПРЯТАННЫЕ ЖЕМЧУЖИНЫ

RSS-GLX
Удивите друзей роскошными хранителями экрана
ИНФОРМАЦИЯ
набор OpenGL-приложений, которые мож- /usr/lib/xscreensaver/
ЧТО: Коллекция хранителей экрана
ГДЕ: http://rss-glx.sourceforge.net но запускать самостоятельно или вклю- cyclone --help
ЗАЧЕМ: Разнообразьте свой рабочий стол. чить в Xscreensaver и превратить обычные Коллекция, понятное
хранители экрана демонстрашками времен дело, требует от видеокар-
Устанавливаемые версии Gnome и Speccy [ZX Spectrum, – прим. пер.] разме- ты поддержки 3D-ускоре-
KDE содержат стандартный набор ром в 1 КБ. ния. Обязательно посмот-
хранителей экрана, включая флаг, звезд- Установив RSS-GLX, вы обнаружите в рите Euphoria – заворажи-
ное небо и квадриллион текстовых эффек- каталоге /usr/lib/xscreensaver 19 новых вающе-прекрасный водово- Лишь немногие из имеющихся
тов в стиле Матрицы. Если вам повезет, вы двоичных файлов. Здорово, что ознако- рот эффектов освещения и прозрачности, а хранителей экрана. Посмотрите их в
действии – обалдеете.
также получите несколько 3D-хранителей миться с их эффектами можно, запустив их также Skyrocket – вихревое панорамное
экрана, например, вращающийся текст и как обычные программы – в стандартном пиротехническое шоу. Если хранитель экра-
тоннель. Но действительно впечатляющие окне приложения. Каждый хранитель экра- на превратит вашу машину в черепаху, про-
вещи зарыты поглубже. Попробуйте кол- на имеет несколько опций для управления верьте настройки согласно описанной выше
лекцию RSS-GLX – Really Slick Screensavers скоростью и сложностью. Любопытствуете, процедуре и отключите часть эффектов.
(Реально Крутые Хранители Экрана). Это что умеет “Cyclone”? Введите

INCOLLECTOR
Информационный завал? Этот ловкий инструмент раскопает все
ИНФОРМАЦИЯ
но будет прекрасно работать и в любом (Заметки). Каждую запись
ЧТО: Информационная коллекция
ГДЕ: www.incollector.devnull.pl другом рабочем окружении или оконном можно также снабдить ком-
ЗАЧЕМ: Упорядочить вашу жизнь. менеджере. ментарием и рейтингом.
Запустите Incollector и введите свое По завершении вво-
Бесчисленное множество Linux-при- имя – в главном окне возникнет пустой да ваша запись появится
ложений управляет коллекциями лист. Щелкните на пункте Add Entry в главном списке. Чтобы
книг, фильмов, музыки и игр. Но каждое (Добавить запись) на панели инструментов, облегчить организацию
из них предназначено для объектов одного чтобы создать первую info-note (информа- записей, вы можете созда-
типа, и это осложняет интеграцию храни- ционную запись). Появится выпадающий вать метки (см. панель сле-
мой в них информации. Наша следующая список, предлагающий выбрать категорию ва), а потом щелкать по пункту Find (Найти) Щелкайте на звездах для оценки
жемчужинка не такова. Incollector позволя- записи: web-адрес, перевод с другого язы- на панели инструментов и осуществлять по информации по степени важности.
ет только сортировать информацию вроде ка, серийный номер или кусок исходного ним поиск. Полезна возможность держать на
ежедневных заметок и памяток. Это хорошо кода. Если информация, которую вы хотите экране записи только за последние несколь-
спроектированная и невероятно полезная сохранить, не подпала ни под одну готовую ко дней, это позволит избежать беспорядка
программка, и хотя она создана под GTK, категорию, просто сохраните ее как Notes от накопления десятка-другого записей.

EASYTAG
Осточертели имена файлов вроде mus_0000025.mp3? Тогда прочитайте о...
ИНФОРМАЦИЯ
Трижды поприветствуем EasyTag, сберегаю- можно переименовать их
ЧТО: Редактор тэгов музыкальных
файлов щий дни путем предельной автоматизации en masse, взяв данные из
ГДЕ: http://easytag.sourceforge.net процесса тэгирования файлов – независи- тэгов (по типу Автор-имя_
ЗАЧЕМ: Создание музыкальных меток без мо от размера вашей фонотеки. песни.mp3).
усилий
Например, EasyTag может обратиться к EasyTag поддержива-
FreeDB – online-базе данных CD – для полу- ет ID3 тэги MP2 и MP3
Вы, вероятно, знаете, что MP3, OGG чения информации о песне и использовать файлов, а также Ogg Vorbis
и файлы других музыкальных фор- ее для пометки файлов или заполнить поля, и FLAC. Чтобы улучшить
матов содержат тэги – краткие сведения о проанализировав каталог расположения и восприятие имен файлов,
песне (например, жанр и дата). Однако при имена музыкальных файлов. EasyTag даже можете преобразовать буквы в верхний или EasyTag осуществляет полный
контроль над тэгами.
конвертации музыки с CD эту информацию выполняет обратную операцию: если ваши нижний регистры; да еще можно проигры-
обычно надо вводить вручную – занятие файлы снабжены тэгами, но имена фай- вать файлы прямо из приложения, любым >>
нудное, и многие из нас им пренебрегают. лов бессмысленны (типа mus156.mp3), проигрывателем.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 57


СПРЯТАННЫЕ ЖЕМЧУЖИНЫ

>>
TOMBOY
Записная книжка на стероидах!
ИНФОРМАЦИЯ ры. Немного погодя это выходит из под правой кнопкой мыши и
ЧТО: Записная книжка в стиле wiki
ГДЕ: www.beatniksoftware.com/ контроля – тут-то и нужен Tomboy. Этот выбрать Link To New Note
tomboy инструмент для заметок связывает вместе (Ссылка на новую замет-
ЗАЧЕМ: Создать свой собственный информацию и замечания подобно wiki, ку). Теперь магазин имеет
частный wiki
вместо сваливания всего в один большой свою собственную стра-
файл. ницу. Пример простой, но
Представьте, что вы сидите за ком- Откройте Tomboy, и вы увидите неболь- какого бы рода заметки вы
пьютером, и кто-то присылает вам шое окно для заметок, в котором вы може- ни делали, вы поймете, что Tomboy имеет средства HTML-
список полезных Linux web-серверов. Вы те немедля начать набирать. Сделайте пару такая система связей – прекрасный спо- экспорта для загрузки в сеть.
перемещаете их в закладки, но хотите заметок, но не старайтесь разместить все соб отсортировать информацию быстро и
добавить к ним кое-какие заметки – напри- в одном месте – вы можете использовать эффективно.
мер, что они содержат и как часто обнов- связи (ссылки) для разбивки и системати- Tomboy также предоставляет функции
ляются. Поэтому вы открываете Leafpad зации информации. Например, вы можете простого форматирования (шрифт, кегль Tomboy все еще не включен во многие
или Emacs и начинаете набирать заметки, набрать В среду: сходить в магазин, затем и так далее) – лишний довод против обыч- дистрибутивы – вот уж вправду секретное
пытаясь создать некое подобие структу- выделить слово магазин, щелкнуть на нем ных текстовых редакторов. К изумлению, оружие Linux...

ION
Используйте территорию экрана по максимуму
ИНФОРМАЦИЯ
свободно перемещать по рабочему столу, а Ion настраивается при
ЧТО: Оконный менеджер
ГДЕ: http://modeemi.cs.tut Ion использует мозаику окон – то есть окна помощи языка скриптов
ЗАЧЕМ: Наконец-то – способ покончить на экране жестко закреплены и никогда не Lua и снабжен превосход-
с хаосом на рабочем столе перекрываются. ной документацией (введи-
Выглядит странно? Хорошо, представь- те man Ion). Рекомендуем
Мы просто обязаны были включить те, что у вас открыт текстовый редактор всем пользователям Linux
этот оконный менеджер: он дейс- вместе с Web-браузером и IRC клиентом. попробовать поработать в
твительно может изменить стиль рабо- В традиционном оконном менеджере вы нем – возможно, он станет
ты. Не при помощи украшательства или должны скакать с одного окна на другое для вас идеальным рабо-
функций и настроек, которые вам никог- или вручную разместить их на экране так, чим окружением, особенно
да не понадобятся, но применением при- чтобы все они были видны одновремен- если вы программист. Ion демонстрирует функцию мозаики –
нципиально иного подхода к рабочему но. Ion делает это автоматически – что и перекрывающихся окон нет!
столу. Большинство «нормальных» окон- означает термин «мозаика». Ваша мышь
ных менеджеров помещают приложения вздохнет свободнее, тем более что в Ion
во всплывающих окнах, которые можно есть и чисто клавиатурный режим.

DESKBAR
Поиск переходит на качественно новый уровень
ИНФОРМАЦИЯ
а дождавшись, выводит все хоть как-то с менты. Наилучшего результата
ЧТО: Апплет строки поиска
ГДЕ: http://raphael.slinckx.net/ этим вводом связанное. можно добиться при установ-
deskbar К примеру, наберите тема – он выведет ленном Beagle.
ЗАЧЕМ: Извлечь из поиска максимум. не только файлы, содержащие это сло- Deskbar также совершает
во (еще пару лет назад вы другого и не поступки: наберите электрон-
До появления Beagle поиск файлов в ждали бы), но и связанные с «темой» ный адрес, и он откроет окно
Linux ограничивался сканированием программы – допустим, менеджер тем – редактора писем; введите URL,
списка имен файлов, не вникая в их содер- наряду со ссылками, электронными пись- и он запустит браузер. Таким
жиме. Теперь Beagle применяется доволь- мами, IM-сообщениями и многим другим. образом, он хорош для любых
но широко, но он открыл дверь и другим Качество поиска зависит от установленно- «настольных» задач, доступ-
инструментам поиска для ПК, например, го ПО: Deskbar использует встраиваемые ных из одного графического элемента с Deskbar – приложение для Gnome 2.14.
Вот что вы получите при вводе
Deskbar. Это небольшой апплет, который модули (plugins), написанные на Python, текстовым вводом. команды ‘net’.
сидит в панели Gnome, дожидаясь ввода; чтобы привлечь дополнительные инстру-

58 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


СПРЯТАННЫЕ ЖЕМЧУЖИНЫ

SKIPPY
Панель задач – ну это же из 1990-х...
MP3TOGO
Выжмите все из вашего портативного плейера
ИНФОРМАЦИЯ ИНФОРМАЦИЯ
ЧТО: Переключатель программ ЧТО: MP3-перекодировщик
ГДЕ: http://thegraveyard.org/ ГДЕ: http://puddle.ca/mp3togo
skippy.php ЗАЧЕМ: Больше песен в том же объеме.
ЗАЧЕМ: Получить Exposé для компьютера
с Linux Как консольное приложение, Mp3togo
Персональные MP3-плейеры ныне
не столь приятен на вид, но он
невероятно дешевы – 50-60 долларов предоставляет полезную информацию,
Если вам не доводилось видеть за 256-МБ устройство. А если ваш пле- показывая прогресс.
Уменьшенные окна приложений в
Exposé на Apple OS X, можете попро- йер имеет меньшую память или вы прос-
Skippy упрощают переключения между
бовать описываемое приложение – просто ними. то хотите втиснуть в него больше песен? зование 6-МБ mp3-файла в 3 МБ заняло
в порядке опыта работы в другом стиле. Перекодировка музыки при более низком около 5 минут). Вот команда конвертации:
OS X – рабочий стол, предмет имитации ние миниатюр работающих программ вы битрейте или большей степенью сжатия Mp3togo -o output-directory file1 file2 file3
для многих разработчиков, а Exposé – одна увидите мозаичное изображение ваших означает большие хлопоты. Но ваш тай- Замените output-directory именем
из его наиболее известных функций: это окон, любое из которых можно выбрать ный друг Mp3togo автоматизирует этот про- каталога, куда следует поместить переко-
инструмент переключения программ, пока- мышью и щелкнуть на нем. Skippy ужива- цесс – можете заняться другими делами, а дированные файлы, а file1, file2 и т.д.
зывающий стартовавшие приложения в ется с большинством оконных менедже- затем вернуться и запихать 25-минутную – именами ваших mp3 (или используйте *
виде миниатюр. Можете не рыться в панели ров, хотя некоторые могут перехватывать версию Blue Monday себе в плейер. для выбора всех файлов).
задач, а просто вызвать Exposé и щелкнуть у него клавишу F11, тогда ее придется Установите Mp3togo, распаковав архив Программа преобразует файлы в WAV,
на миниатюре необходимого приложения. переназначить. Mp3togo_0.4.0.tar.gz, зайдите в создан- нормализует их для лучшего качества зву-
В Linux есть несколько реализаций этого Skippy не столь подвижен, как Exposé ный каталог и от имени суперпользовате- чания, перекодирует в Lame с большим
инструмента, но Skippy делает все наилуч- в OS X; но зато не требует сложной проце- ля выполните команду python setup.py сжатием и заполнит тэги. Voilà – ваши
шим образом. дуры установки или специального рабочего install. Теперь можно приступать к конвер- исходные музыкальные файлы почти упо-
К счастью, для работы Skippy требуются стола, то есть вы можете использовать его тации ваших файлов – причем сколь угодно ловинились, лишь с небольшой потерей
только библиотеки X11 и Imlib2. Запустите немедля! Мы были удивлены его малой большого числа, хотя если вы замахнетесь качества. И все готовы зазвучать!
его из командной строки и нажмите клави- известностью – сейчас нечто подобное уме- на сотни файлов, то потребуется немало
шу F11. После небольшой паузы на созда- ет делать только сходная функция в Compiz времени (у нас при частоте 1 ГГц преобра-

LINKS
Web-серфинг без графического интерфейса? Свежая идея
TEA
Поразительное число функций для обработки текста

ИНФОРМАЦИЯ ИНФОРМАЦИЯ
ЧТО: Web-браузер ЧТО: Текстовый редактор
ГДЕ: http://links.sourceforge.net ГДЕ: http://tea.linux.kiev.ua
ЗАЧЕМ: Быстрый, элегантный и не ЗАЧЕМ: НУИНУ текстовых редакторов
требует X
Мы рады, что осветили факелом LXF
Не многие знают, что работать во это небольшое приложение. Если вы
всемирной паутине можно и без гра- давний пользователь Linux, то, вероятно,
фического интерфейса. А еще меньше Google News в Links. Длинные слышали о Emacs, Vim, Gedit, Kate и про- Если вас тянет на подвиги, откройте
умеющих это делать. Однако разработчики страницы прорисовываются в Firefox в чих популярных текстовых редакторах. Но окно Prefs для продвинутой настройки.
Links и его ответвлений, держась в сторон- четыре раза дольше, даже если бьемся об заклад, что вы, как и мы до
отключить графику!
ке, релиз за релизом делают web-серфинг недавнего времени, никогда не слыхивали HTML-конвертации, импорт OpenDocument,
в текстовом режиме все удобнее. Но зачем значит, это прекрасное средство просмотра о Tea. Этот неброский редактор с Украины встроенный просмотрщик изображений, и
же путешествовать в Интернет в текстовом Slashdot и других серверов новостей. вместил огромное количество функций в т.д., и т.п. Вы даже найдете (и мы не
режиме? Links, а также его варианты ELinks обычном бинарном пакете размером менее шутим!) функцию преобразования сигналов
Важнее всего то, что это может спасти и Links2, имеют примитивную поддержку 500 КБ [Особенно приятно отметить, что азбуки Морзе.
ситуацию, если вдруг отказал запуск X-ов. JavaScript и cookies – просто удивительно, разработчик TEA Петр Семилетов является Во многих других приложениях все это
Если вы просто обновляете свой дистри- сколь много сайтов можно просматривать одним из постоянных авторов нашего жур- выглядело бы как свалка функций, что вер-
бутив и вам понадобился новый драйвер, без проблем, включая Gmail (HTML-режим) нала; читайте его обзор аудиоплейеров на но и здесь, и не все они будут полезны каж-
можете использовать Links в текстовом и даже сайт LXF. После запуска Links в тер- стр.22, – прим. ред.]. дому. Но разработчики сумели упаковать
терминале и скачать его с web-сайта изго- минале, нажмите F10 и попадете в главное Tea выглядит и ведет себя как обычный эти функции в значительно меньший объем
товителя видеокарты. Или, если при стар- меню, а там все просто: стрелки курсора текстовый редактор GTK, но поройтесь в по сравнению с другими функциональными
те X возникла неизвестная ошибка, зайти для перемещения и Enter для выбора. Вряд меню – и вы обнаружите штабеля вкус- редакторами, а это меняет угол зрения. Tea
на Google и найти решение проблемы. И ли вы будете использовать Links постоян- ностей. Среди них: календарь, менеджер заслуживает большего внимания, чем ему
потом, страницы отображаются молниенос- но, но обнаружите, что это лучший способ файлов, средства IDE, проверка орфогра- уделяется, и если вас тяготит размер Emacs
но (благодаря игнорированию рисунков), а просматривать любимые сайты. фии, подсветка синтаксиса, инструменты и Vim, это первый кандидат на смену. LXF

www.linuxformat.ru LXF8(82) АВГУСТ 2006 59


SUBVERSION: КОНТРОЛЬ ДОМАШНЕГО ХОЗЯЙСТВА

Сохранить
Добавить код к настройки в файле
Linux-проекту конфигурации

Упорядочить
Удалить плохую закладки в
строку кода браузере

Выложить для
Восстановить друзей свои
файлы старого студенческие
дистрибутива фотографии

Жизнь надо прожить


в SUBVERSION
Однажды дождливой ночью Грэм Моррисон нечаянно скинул на сервер
Subversion свой домашний каталог – и вдруг осознал всю полезность этой идеи.
Вам тоже стоит так сделать.

зачем? Зачем вообще обеспечение, и установить его заново. Это изменения тут же попадают на все машины,

А
использовать инстру- не сложнее, чем набрать команду. гарантируя однозначность копии /home.
НА ДИСКЕ мент разработчиков для Для домашнего каталога это означает, Забавно также выкатить часть вашего репо-
• Subversion 1.3.1 хранения собственных что всегда имеется его интеллектуальная зитария Subversion на публику, в форме
• KDESvn 0.8.4 файлов? Вы, наверное, резервная копия. Можно не только спасти Linux-блоггинга.
знаете, что Subversion случайно удаленные данные, но и выбрать Так что «субвертите» ваш домашний
обеспечивает доставку актуальной копии возможность восстановления до предыду- каталог на здоровье, для этого не надо
исходного кода совместно работающим над щего состояния; или удалить неудачный быть суперхакером. Все, кто не боятся
ним через сеть программистам. Но лежа- вариант конфигурации; или посмотреть, как командной строки, могут попробовать, а мы
щая под этим технология также полезна и выглядели закладки в браузере год назад. вам поможем.
для других целей. Subversion – сервер, хра- Если вы работаете на нескольких машинах,
нящий в репозитарии изменения, произве- то ваш домашний каталог синхронизирует-
денные над группой файлов. Он позволяет ся с каждой из них – чем не изящное при-
и удалить нежелательное программное менение Subversion? Любые сделанные

60 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


SUBVERSION: КОНТРОЛЬ ДОМАШНЕГО ХОЗЯЙСТВА

Установим сервер Subversion


Говоря попросту, Subversion – подо- желание получать доступ к своему репози-
бие умной базы данных, используемой про- тарию через сеть намного все усложнит.
граммистами для отслеживания изменений О том, как установить собственный сер-
в проекте на протяжении всего его сущест- вер, говорилось в LXF70, но вкратце опишем
вования. Без Subversion группе разработчи- процесс, чтобы вы смогли начать. Каждый
ков одного проекта приходилось бы посы- солидный дистрибутив включает пакет
лать все изменения лидеру проекта, а он Subversion, который легко устанавливается
затем вносил бы их в проект. Subversion с помощью менеджера пакетов. Войдите
заменяет лидера проекта сервером, и изме- в менеджер пакетов вашего дистрибути-
нения вносятся автоматически. ва, поищите пакет Subversion-server и
Важно, что сервер Subversion хранит установите его. Если вы уже использовали
только отличия между версиями, а каж- Subversion, можете установить дополни-
дое подтвержденное изменение называется тельные модули Apache и получить доступ
пересмотром (revision). Проходя по пере- к репозитарию через HTTP – ищите пакеты
смотрам вперед и назад, можно раздобыть dav_svn и authz_svn.
копию любой стадии проекта. Пользователей SUSE ждет пробле-
Для Subversion безразлично, если ма: сервер не входит в поставку SUSE
вместо исходного кода вы загрузите свой 10.0. Поэтому поищите пакет Subversion-
домашний каталог; его дело – хранить server-1.2.3-2.i586.rpm в интернете
изменения. Однако имеется несколько (или на диске к журналу) и установите
загвоздок. Прежде всего, проблемы вызы- его от имени суперпользователя с помо-
ваются большими двоичными файлами. Не щью команды rpm -Uvh *.rpm. Если вы дите строку, начинающуюся с ‘APACHE_ В SUSE возможен HTTP-доступ к
репозитарию Subversion, если
то чтобы Subversion их не поддерживал, но используете Apache, можете также сконфи- MODULES’, и позаботьтесь о следующем
добавить модули при помощи Yast.
они реально замедляют систему, так как гурировать его через Yast, выбрав Network порядке загрузки модулей: dav dav_svn
Subversion вынужден их сравнивать, отсле- Srvices > HTTP Server и нажав на Modules. authz_svn. Теперь Apache перезапустится
живая разницу. Возможно, стоит держать Add Module позволит вам установить оба без проблем.
большие файлы вне репозитария. ‘svn’ модуля и модуль WebDav.
Перезапустите Apache, набрав от Выбор протокола
Руководство по лица root в командной строке /etc/init.d/ Доступ к репозитарию Subversion осущест-
установке Apache2 restart. SUSE опять не повезло: вляется с помощью URL. Существует три
Труднее всего установить Subverion и заста- возникает ошибка протокола доступа. Самый простой для кон-
вить его работать в первый раз. Сервер не undefined symbol: dav_svn_split_uri фигурации – URL, начинающийся с ‘file:///’.
самая простая вещь, но ничего невозмож- Все потому, что модули Apache должны По нему доступ осуществляется к репози-
ного тут нет. Если ваш сервер располагается загружаться в правильной последователь- тарию, размещенному на вашей файловой
на той же машине, что и домашний каталог, ности. Откройте /etc/sysconfig/Apache2 системе – просто проверьте, что слэшей
то вряд ли понадобится настройка. Зато в любимом текстовом редакторе, най- три. Для такого доступа настройки вовсе
не требуется. Установите Subvesion, и за
работу!
........

........

........

........

Второй способ также легко реализовать,


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

........

........

........

ся только на первый взгляд. Проверьте,


что установлена утилита Svnserve, создай-
те пользователя и группу ‘svn’ командами
useradd и groupadd; затем запустите сер-
........

........

........

........

вис Svnserve, набрав /etc/init.d/svnserve


start. Под Mandriva и Red Hat он запускает-
ся командой service svnserve start.
Третий способ – использование HTTP
1 2 3 4 через сервер Apache. Для ясности, мы в
своих примерах будем использовать file:///,
Разработчики, использующие Subversion, могут работать над одним проектом а вы можете избрать способ доступа по
одновременно. [1] Старая версия файла находится в репозитарии.
[2] Два разработчика скачивают один файл.
своему вкусу. >>
[3] Оба работают параллельно над своими частями файла, добавляя в них
свой код. [4] Когда они отошлют результаты обратно на сервер,
произведенные изменения сольются в один файл.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 61


SUBVERSION: КОНТРОЛЬ ДОМАШНЕГО ХОЗЯЙСТВА

>> с команды add – она

/home переезжает добавит файлы, кото-


рые Subversion посчи-
тает новыми (то есть
все). После add исполь-
зуем команду commit,
После запуска сервера следующей которая проверит все
задачей является заполнение репозитария изменения и загрузит их на
данными из вашего домашнего каталога. сервер как неделимую ато-
Для начала создайте репозитарий с помо- марную ревизию. На этом
щью команды svnadmin, определив, где этапе вас попросят написать
именно хранить данные. (Заметим, что в комментарий, описывающий
последующих примерах мы проводим весь сделанные вами изменения.
процесс для пользователя degsy.) Программисты используют
svnadmin create /srv/degsy Опасаться нечего: в конце концов, мы всег- комментарии для описания сделанных
Команда svnadmin не использует пре- да сможем вернуть наши данные из /foo. изменений. Комментарии пригодятся и для
фикс протокола (file:///), потому что всегда Вам надо выполнять операции от лица вашего домашнего каталога, особенно если
запускается на стороне сервера. суперпользователя, потому как только он перемены значительны: например, сменил-
Теперь надо скачать репозитарий с сер- имеет права на проведение изменений в ся дистрибутив или оконный менеджер.
вера, то есть просто создать локальную каталоге /home. Если вам необходимо вернуться к конфигу-
копию данных, размещенных на сервере. Переименовав каталог, создайте копию рации до обновления, просто просмотрите
На текущий момент на нашем новом серве- данных сервера Subversion, а заодно и фай- комментарий.
ре никаких данных нет, но процедура скачи- лы конфигурации: Наберите svn add *, чтобы добавить
вания создаст в вашем домашнем каталоге svn checkout file:///srv/degsy все файлы вашего домашнего каталога на
временное хранилище для файлов конфи- Checked out revision 0. сервер Subversion:
гурации, которые Subversion будет исполь- Каждый раз, когда вы производите svn add *
зовать для отслеживания изменений в изменение в файлах, находящихся на сер- A bin
ваших данных. вере Subversion, номер ревизии (пересмот- A Documents
Приступим. Зайдите на вашу систему ра) увеличивается на единицу. Subversion A Documents/.directory
как суперпользователь и перейдите в ката- использует атомарные изменения: неважно, A images
лог /home. Далее переименуйте каталог сколько файлов успело поменяться в вашем A (bin) images/IMG_0192.JPG
того пользователя, который собирается домашнем каталоге – когда репозитарий
использовать Subversion. В нашем случае обновится, все изменения пройдут как один Двоичные файлы
home/degsy станет home/foo. Изменение пересмотр. В показанном выше примере Subversion теперь переберет все файлы,
имени необходимо, чтобы не произошло число пересмотров равно нулю, потому что добавляя каждый из них в список файлов,
перезаписи данных, потому что, когда мы мы еще ничего не делали с репозитарием. которые необходимо закачать на сервер.
выкачиваем домашний каталог из В /home вы увидите каталог с именем Двоичные и текстовые файлы обрабатыва-
Subversion, он замещает исходный каталог. вашего пользователя (то есть /home/ ются различным способом. Вот почему
degsy), и если вы поинтересуетесь содер- изображение в выше показанном примере
жимым этого каталога, то обнаружите, что в помечено как bin. Изменения в двоичные
нем содержится всего одна запись. Чтобы файлы вносятся иначе, чем в текстовые,
просмотреть ее, наберите когда Subversion просто хранит прямые
ls -al degsy изменения между одной версией и следую-
и увидите следующее: щей. Символ A в начале каждой строки
drwxr-xr-x 7 root root 4096 2006-05-11 означает, что каждый файл будет добавлен
20:30 .svn добавлен в репозитарий, но этого не про-
Это скрытый каталог Subversion, где изойдет, пока вы не запустите команду
будут храниться все изменения, а также commit, решившись принять изменения
исходные версии всех файлов. Теперь надо окончательно. Также вас попросят написать
скопировать этот каталог .svn в исходный комментарий, описывающий смысл
домашний каталог – который теперь назы- изменений.
вается /home/foo; именно он будет напол- Получится следующее:
нять репозитарий Subversion. Далее, удали- svn commit
те скачанный с сервера каталог и верните Adding Documents
исходному домашнему каталогу его преды- Adding Documents/.directory
дущее имя: Adding bin
cp -rf degsy/.svn foo/ Adding images
rm -rf degsy Adding (bin) images/IMG_0192.JPG
mv foo degsy Transmitting file data.
chown -R degsy:users degsy Committed revision 1.
Теперь все на своих местах, и можно Время выполнения этого процесса зави-
предпринять важный шаг загрузки домаш- сит от количества произведенных измене-
Помните, что Subversion копирует все содержимое репозитария в скрытый
каталог .svn, это удваивает требуемый объем дискового пространства. него каталога Subversion на сервер. Начнем ний и от скорости соединения с сервером

62 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


SUBVERSION: КОНТРОЛЬ ДОМАШНЕГО ХОЗЯЙСТВА

Subversion. Когда вы в первый раз под- Альтернатива – перемещение скрытых


тверждаете изменения вашего домашнего каталогов (исключая .svn) в отдельный 10 ШАГОВ ПО ЖИЗНИ С SUBVERSION
каталога, то наверняка потребуется значи- каталог и использовании простого скрипта
Проект настолько разумно организован, что у
тельное время для копирования всех ваших для воссоздания символьных ссылок. новичков просто нет шансов запутаться. Вот Проверьте, что в /home
данных. Небольшой недостаток использования предпринятые нами действия, по шагам: создался новый каталог user,
Вы, возможно, заметили, что есть одна Subversion состоит в том, что, когда вы включая скрытый каталог .svn
жизненно важная группа файлов, которая добавляете и удаляете файлы и каталоги, Установите Subversion и
не обновилась – а именно, скрытые файлы требуется повторять процесс для репозита- выберите протокол доступа.
Скопируйте .svn в /home/foo
(их имена начинаются с точки «.») вашего рия Subversion с помощью команд svn add
домашнего каталога. Почему? Потому что для добавления и svn del для удаления, а
Удалите вновь созданный
это вызовет конфликт с собственным скры- затем выполнять commit для подтвержде- Создайте репозитарий Subversion
каталог /home/user
тым каталогом Subversion (.svn). Если вы ния изменений. Но трудно ли заменить эти для вашего домашнего каталога,
знаете, какие каталоги вам нужны, добавьте команды скриптом? например, /srv/user
Переименуйте /home/foo в
их вручную. Следующая команда добавит, к
исходный /home/user
примеру, конфигурационные файлы Переименуйте домашний
Gnome: каталог пользователя /home/
user в /home/foo Загрузите /home/user в
svn add .gnome2
репозитарий Subversion
A .gnome2
A .gnome2/accels Сделайте локальную копию
нового репозитария Subversion / Вручную добавьте скрытые
svn commmit
srv/user файлы
Committed revision 2

Приемы работы 4 Спасение


файла
рядового
Еще одна привлекательная черта такого
репозитария – восстановление случайно
проводить эту процедуру. Восстановление
данных из резервной копии обеспечит сле-
дующий трюк:
svnadmin load /srv/degsy < svn_backup
удаленных или потерянных данных. Если
Итак, вы используете Subversion для верьте имя сервера и наберите вам требуется старая версия данных, то Что дальше?
хранения домашнего каталога. Посмотрим, svn checkout svn+ssh://hostname/srv/degsy должна быть и возможность просмотреть На радость хакерам, существует много спо-
что полезное можно сделать благодаря Эта команда создаст копию домашнего изменения. Этой цели служит команда diff, собов для написания собственных решений
этому. каталога degsy в текущем местоположении. которая точно скажет, что и где изменилось в виде скриптов – например, по части хра-
Любые изменения, сделанные вами на этой в файле. нения скрытых файлов и создания резерв-

1 Защитить данные
Если вам надо получить доступ к
машине, надо отослать на сервер и под-
твердить. По команде svn add * система
Например, следующая команда в точ-
ности отобразит изменения между 5 и 6
ных копий. Subversion был задуман не для
вашего домашнего каталога, но он неверо-
домашнему каталогу через Интернет, то проигнорирует старые файлы и добавит ревизиями файла bookmarks.html: ятно гибок – так чего ж теряться? LXF
использование протокола ‘svn://’ может только новые. svn diff -r 6:5 file:///srv/degsy/bookmarks.
подвергнуть вас риску атаки прослушива- html
ния, когда кто-то перехватывает ваши дан-
ные во время их передачи. Решение состоит
3 Плановые правки
Обновление версии вручную – это
Существует несколько способов восста-
новить файл с помощью этих данных, и
в использовании безопасной оболочки SSH. фирменный рецепт, как лишиться файлов самый безопасный из них – сохранить ста-
Просто замените ‘svn’ в URL на ‘svn+ssh’. или синхронизации каталогов. Как ни рую версию файла в новый каталог внутри
Вам придется использовать учетную запись печально, простого способа синхронизиро- домашнего каталога. С помощью команды
пользователя, существующую на сервере, а вать новые или удаленные папки и файлы в svn copy укажите номер ревизии и путь,
также проверить, что этот пользователь автоматическом режиме не существует – куда копировать:
имеет право на доступ к репозитарию. требуется все время набирать svn add и svn svn copy -r 6 file:///srv/degsy/bookmarks.
Чтобы определить пользователя в URL, del; но самую длинную команду svn commit html new.html
наберите: можно автоматизировать.
svn list svn+ssh://degsy@hostname/srv/ Добавьте команду commit в системную
5 Резервное
degsy. таблицу cron с помощью команды crontab. копирование
Предварительно создайте таблицу для Грош цена вашему репозитарию, если дан-
Везде как дома пользователя с помощью команды crontab ные вовремя не резервируются, особенно
2 Поместив свой домашний каталог -e, а затем можно добавить запись для если ваш домашний каталог всегда времен-
на сервер Subversion, вы можете иметь те запуска команды commit: ный. Отличное решение – запуск на сервере
же файлы и настройки на нескольких маши- 15 00 * * * svn commit -m команды svnadmin dump: она выводит
нах хоть на другом краю Земли. Так как “Automated commit” все содержимое репозитария на экран, но
машины синхронизируются с сервером, то Команда commit запустится в 00:15, а ведь вывод можно перенаправить и в
вы можете быть уверенными, что использу- параметр -m говорит, что мы не хотим взаи- файл!
ете актуальные файлы. Когда вы находи- модействовать с процессом для добавле- svnadmin dump >svn_backup
KDESvn избавит вас от консоли при
тесь в каталоге /home на новой машине и ния комментария к изменениям. Проверьте, что svn_backup хранится в работе с изменениями в
хотите создать копию репозитария, то про- надежном месте, и не забывайте регулярно репозитарии.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 63


ИНТЕРВЬЮ Алексей Гурешов

LXF ИНТЕРВЬЮ

АЛЕКСЕЙ ГУРЕШОВ:

ЧЕЛОВЕК ИЩУЩИЙ
UK LTD

Визитка LXF Генеральный директор проекта


SY: WINNING MOVES

Алексей Гурешов о своей поисковой машине


Генеральный директор екта
многообещающего про на рынке LinuxFormat: Рынок поисковых серви- и им выгодно так утверждать. Послушайте,
ока
Webalta – нового игр ющегося
TOP TRUMPS COURTE

ира
интернет-поиска, соб сов достаточно насыщен. В мире широко какие комментарии дают Яндекс, Rambler,
ах
навести шороху в ряд известны MSN, Google. В России – Яндекс, Google и другие о насыщенности рынка.
в
признанных фаворито Rambler, Апорт, наконец. Как у вас роди- Понятно, что никто из них не хочет пускать
24 лась идея «втиснуться» в эту тесную ком- на этот рынок других конкурентов.
ВОЗРАСТ + панию? Рассчитываете ли вы получить Но что касается качества поиска, то очень
НАЦИОНАЛЬНОСТЬ 8
UX какую-то определенную долю рынка или многие недовольны текущими поискови-
СТАЖ РАБОТЫ В LIN атель
ИРОВАНИЯ чит занять свою уникальную нишу? ками. Все заполонили дорвеи, и поиско-
ЯЗЫКИ ПРОГРАММ 2 Алексей Гурешов: Попробую объяснить. вый спам является достаточно серьезной
КОЛИЧЕСТВО ПК чай
ФЕ В мире существует множество почтовых проблемой. И почему же в таком случае
ДНЕВНАЯ НОРМА КО 1
ПАР САНДАЛИЙ сервисов, Yahoo, Mail..ru и т.д. Но почему не попробовать свои силы и не создать
ть все шансы.»
ДЕВИС: «Использова в таком случае поисковиков должно быть достойного конкурента? Тем более, что уже
всего два или три? Кто говорит, что этот есть серьезные наработки, которые пре-
рынок насыщен? Об этом говорят сами доставили нам финансовые возможности
поисковики, которые просто гребут деньги, для создания поисковой машины.

64 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ИНТЕРВЬЮ Алексей Гурешов

Я слышал такую идею, что в ближай- му, что собран этот дистрибутив на базе AMD Opteron. Так что сегодня мы практи- тает до определенной стадии, когда у тебя
шие годы сможет выжить и укрепить свои Red Hat Linux. Если последний платный чески полностью перешли на Opteron. Как 20-30 узлов. Но когда их число доходит
позиции тот, кто сделает не просто поиск и стоит немалых денег, то Scientific Linux нам кажется, по соотношению цена/качест- до сотни, возникают проблемы. Дальше
по сайтам, так как этого уже недостаточно, распространяется совершенно свободно. во сегодня на рынке ничего лучше нет. Интернет будет нужно делить уже по сло-
а тот, кто сможет предоставить резуль- Так как у нас довольно много серверов, то Тех серверов, которые у нас есть сейчас, вам. Списки определенных слов хранятся
тат в комплексе. В частности, вы вводите приобретать для каждого лицензию на Red нам хватит, по крайней мере, до кон- на определенных серверах. Чтобы данная
запрос «Владимир Путин», и вам сразу же Hat Linux было бы довольно накладно. ца года. Но уже осенью мы собираемся система устойчиво работала, нам как раз
демонстрируется его портрет, показывает- индексировать Европу, поэтому расши- и потребуется собственная файловая сис-
ся его биография и т.д. Мы как раз плани- LXF: Но ведь у Red Hat есть ряд преиму- рение технической базы неизбежно. Так тема. Сейчас мы ищем специалистов, спо-
руем развиваться в эту сторону, и ведем ществ, например – сертификация Oracle. что уже осенью серверная база вырастет собных написать подобные вещи. Скорее
активную работу в этом направлении. АГ: Нам это не нужно, так как мы исполь- втрое. всего, мы будем делать файловую сис-
Второй момент – борьба с поисковым спа- зуем только Linux, и у нас нет ничего тему, которая сама бы нам раскладыва-
мом. Проблема эта угрожающая, и если чужого, даже база данных у нас своя LXF: А кто поставляет вам серверы? ла информацию, да и не просто раскла-
вы посмотрите статистику по тулбару собственная. Еще одна причина, по кото- АГ: Мы сотрудничаем с двумя компани- дывала, но и могла делать равномерное
LiveInternet, которые считает переходы по рой мы выбрали Scientific Linux состоит в ями – Trinity Solutions и «Т-Платформы». дублирование по серверам. Это даст нам
сайтам, программы-дорвеи имеют всего том, что компания Red Hat самостоятель- По качеству и по уровню сервиса эти ком- возможность использовать много малень-
лишь вдвое меньше трафика, чем весь но обновляет ядро, пишет модификации, пании примерно равны. ких дешевых машин, когда у нас пойдет
«Яндекс». Возьмем в качестве примера накладывает патчи, а в данном случае реальная нагрузка.
всего два сайта – Блокнотик.ру и Поиск. мы сами берем ядро с Kernel..org и оно LXF: На каком языке написан основной В принципе, та система, которая у нас есть
ру. Один имеет 23 процента, а другой 17 отлично работает. Возникала лишь про- компонент поисковой машины – «паук»? сейчас, выдерживает 20 миллионов запро-
процентов, при этом 100 процентов имеет блема с драйверами, так как некоторые АГ: Вообще, у нас не только «паук», но сов. Если поставить вторую копию, это
сам «Яндекс». Надеюсь, вы можете себе производители, в частности Adaptec, пре- вся система написана на С++. Реально у даст 40 миллионов. Для России этого хва-
представить масштабы бедствия?! Просто доставляют драйверы в бинарном виде, нас просто установлен дистрибутив Linux, тит, но чтобы поддерживать 14–16 мил-
об этом мало кто говорит, так как все это собранном исключительно под Red Hat.. поверх которого стоит собственная про- лиардов, нужно делить все по-другому.
можно считать негативом, неким черным Но впоследствии мы эту проблему полно- грамма. Никакого Apache у нас также нет, Естественно, мы думали об этом с само-
PR для поисковых машин. стью решили, и сейчас у нас все отлично мы используем собственный http-сервер. го начала, и перевести систему на новые
работает. Поначалу мы хотели выбрать Вначале мы пробовали использовать MPI рельсы не составляет никакого труда.
LXF: Сколько человек работает в вашей дистрибутив Fedora Core, но умные люди для коммуникации между серверами,
компании? нас отговорили от его использования, так но как выяснилось, для наших целей он LXF: У каждой поисковой системы свой
АГ: В данный момент у нас трудится поряд- как на нем Red Hat только тестирует и обка- совершенно не годился, так как постоянно собственный алгоритм. Кто разрабатывал
ка 70 человек. И мы продолжаем искать тывает все нововведения. грузил процессор, туда-сюда гонял нуле- ваш алгоритм?
талантливых людей. Например, поиск про- вые биты. АГ: Алгоритмы поиска, как таковые описа-
граммистов, особенно толковых – очень LXF: Не было ли идеи использовать ны в учебниках. Эта информация сущест-
большая проблема. Планируем также уве- Debian, который традиционно считается LXF: Насколько я знаю, вы отказались от вует уже давно и ничего принципиально
личить операционный отдел с выводом в наиболее стабильным и консервативным использования файловых систем, и у вас нового здесь не придумано. Формула,
свет контекстной рекламы. В мыслях раз- решением? осуществляется запись прямо на «голый» которую мы используем для расчета бли-
вивать отдел PR и брендинга. АГ: Да, мы смотрели много дистрибути- раздел? зости, текста ссылок и т.д. – это наша
вов. Нам еще очень понравился Gentoo.. АГ: Непосредственно в самих инвертиро- собственная разработка. Главная задача
LXF: Сколько финансов было вложено в Но уж так исторически сложилось, что ванных списках так предполагалось пер- поисковых алгоритмов – тестирование
развитие поисковой машины Webalta, и человек, который собирал нам весь клас- воначально. Это очень важно для ско- поисковой машины. Ведь Интернет сам
сколько еще будет инвестировано? тер, нас убедил в том, что надо использо- рости и оптимизации, так как мы можем по себе далеко не идеальный, там полно
АГ: У нашей компании есть уставной капи- вать именно Scientific Linux. Этот человек раскладывать данные на диск так, как это накрутчиков и множество сайтов, кото-
тал в размере 20 миллионов рублей. На работает в довольно известном москов- нужно нам, а не файловой системе. У нас рые неправильно устроены, не соблюдают
эти деньги сейчас выпущены акции. Наша ском учебном заведении и занимает там возникали проблемы с сервером, кото- стандарты и т.д. Одним словом, это боль-
компания – это открытое акционерное серьезную должность, так что мы приняли рый содержит оригинальные документы, шая куча мусора, которую нужно как-то
общество. На самом деле, вложений было его слова на веру. первоначально мы планировали склады- структурировать. Люди пишут в Title и на
гораздо больше, так как мы брали займы у вать их на сервере с файловой системой страницы все, что хотят, а задача поис-
частных лиц, учредителей. Разумеется, эти LXF: Вы упомянули о кластере. Интересно ReiserFS, однако подобная схема сразу ковика выбрать то, что нужно. Сейчас у
средства планируется вернуть. В реаль- было бы узнать, сколько в нем узлов, же не сработала. Дело в том, что ReiserFS нас есть свыше двухсот настроек. Каждый
ности сегодня только на основные средс- и какой объем трафика проходит через попросту не в состоянии записывать на коэффициент на что-то влияет.
тва потрачено порядка 10 800 000 рублей него. диск 4000 мелких файлов в секунду. В Так, мы умеем определять содержание
и до достижения самоокупаемости нам АГ: Узлов, то есть серверов сейчас око- результате нами создана собственная фай- страницы и т.д. Каждый коэффициент при
придется еще достаточно вложить. У нас ло семидесяти. Трафик на самом деле ловая система, специально ориентирован- изменении улучшает или ухудшает пози-
запланированы довольно большие затра- очень большой. Все узлы соединены через ная на подобные вещи. Сейчас это храни- цию страницы. Основная задача всех этих
ты, например, на продвижение. Мы ведь гигабитный Ethernet. Вначале мы хотели лище у нас занимает примерно 12 тера- алгоритмов сводится именно к тестирова-
планируем занимать долю на рынке. сделать все на основе Intel, но потом у байт, и его легко можно расширить до 96 нию. Ведь как раньше тестировали поиско-
нас возникли проблемы. Так, нам потре- терабайт. Попросту возможности ReiserFS вики? В них загружали некую идеальную
LXF: Хотелось бы перейти к техническим бовалось установить сервер с 16 гигабайт нам оказались не нужны. базу документов, после чего добавляли
вопросам. Как Webalta устроена изнутри? ОЗУ. Для интеловских серверов требуется эталонную базу вопросов и ответов, и пос-
Как я слышал, в ее основе лежат разработ- специальная память, которая стоит очень LXF: А вы не думали о реализации собс- ле этого выравнивали. Нам кажется, что
ки на основе Open Source? дорого. Получалось так, что эти 16 гига- твенной файловой системы в ядре? на текущий момент это уже устаревшая
АГ: Да, в основе поисковой машины лежит байт стоили столько, сколько два анало- АГ: Хороший вопрос. Сейчас мы Интернет модель и тестировать надо непосредствен- >>
Scientific Linux 4.2. Мы выбрали его пото- гичных сервера с 16 гигабайтами на базе делим по кускам, доменам. Это все рабо- но на Интернете. Мы уже создали эталон-

www.linuxformat.ru LXF8(82) АВГУСТ 2006 65


ИНТЕРВЬЮ Алексей Гурешов

ную базу вопросов и ответов, когда напри- получилось нечто среднее. Кроме того, Кстати, мы перешли на новое ядро и как раз планируем довести индекс до мил-
>> мер, по слову «погода» в первой двадцат- мы добавили целый ряд своих нововведе- сбросили базу, теперь наращиваем ее. лиарда. Вообще, русских страниц не так уж
ке должны оказаться одни результаты, на ний, в частности мы учитываем не только Далее займемся ее качественной отстрой- много, и довольно сложно бывает найти
фразу «официальный дилер Mercedes» ссылки на доменах, но и дату регистрации кой. Хотелось бы довести качество поис- нужное количество страниц, с тем, чтобы
другие и т.д. Подобных запросов сейчас этих доменов. Ведь даже если появился ка до нормального состояния, чтобы его построить самую большую базу.
уже собрано около тысячи. У нас есть какой-то сайт, но он появился только вче- результаты были хотя бы сопоставимы с
средство автоматической настройки, кото- ра и на него уже наставили кучу ссылок, «Яндексом«. LXF: Компания Google часть своего
рое восстанавливает все коэффициенты с вероятность того, что он будет в первых Мы продолжаем разрабатывать новые кода распространяет по открытой лицен-
целью получения наиболее точных резуль- результатах поиска довольно мала. Мы интересное направление, например, собст- зии. Планируется ли нечто подобное в
татов. Но на основной базе мы его пока не это называем «уровнем доверия» к сай- венный тулбар. Фактически он уже сущест- Webalta?
пробовали. ту. Помимо этого мы смотрим и на другие вует, и мы сейчас занимаемся шлифовкой АГ: Пока не планируем. Есть определен-
На днях мы перешли на новое ядро, испра- параметры – WHOIS, DNS и т.д. Все это в мелких деталей. ные соображения, и отдавать какие-то про-
вив тем самым множество критических той или иной мере необходимо для борьбы граммы мы, скорее всего, не будем. Но мы
ошибок. Нам пришлось полностью обну- с поисковым спамом. Все-таки хочется эту LXF: Тулбар будет для всех браузеров? планируем создавать большое количест-
лить базу, и теперь мы собираем ее зано- борьбу как-то автоматизировать, потому АГ: Нет, пока только для Internet Explorer. во API-интерфейсов, чтобы разработчики
во. В последующие дни мы уже будем что сейчас в Рунете она как-то не слиш- Просто не все сразу. могли интегрировать свои программы с
заниматься качеством. ком автоматизирована, по той причине, нашими. В частности, подобная система
что поисковики борются с этим явлением LXF: Сегодня ваши поисковые базы сейчас разрабатывается для контекстной
LXF: Какой принцип ранжирования стра- уже по принципу свершившегося факта. заполнены не до краев. Когда планируется рекламы.
ниц вы считаете наиболее оптимальным? То есть, поисковые спамеры сделали что- завершить наполнение?
АГ: Один из ключевых моментов при ран- то, их обнаружили и забанили. Конечно, АГ: Планируется, что к началу осени мы LXF: Какие дополнительные поисковые
жировании – это ссылки. Все поисковики пытаются создавать специальных робо- будем иметь одну из самых больших баз по сервисы вы планируете реализовать в
используют определенные условия и опре- тов, которые понимают Java Script и будут российским документам. Текущая скорость будущем?
деленные функции для учета этих ссылок. ходить и детектировать все эти дорвеи, но индексации у нас составляет примерно сто АГ: Сервисов планируется выпустить
«Яндекс» считает ссылки по доменам, это тупиковый вариант. Ведь тот же Java миллионов уникальных страниц в сутки. достаточно. Просто у нас пока еще не до
Google по страницам, а у нас реализована Script можно закодировать так, что ни один Построить индекс по миллиарду страниц всего доходили руки. Например, мы пла-
собственная модель, в результате которой робот его не сможет распознать. мы можем за десять дней. За август мы нируем осуществлять поиск и по картин-

66 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ИНТЕРВЬЮ Алексей Гурешов

кам, и по блогам. Собираемся выдавать руем. Собственно говоря, создаем еди- то система будет искать издание, стихи и относится к FireFox. Выставить Webalta
пользователю комплексный результат, ный аккаунт для всех наших сервисов. Он имя поэта вместе, и пытаться это обрабо- в качестве основной поисковой машины
который будет включать в себя все, что будет необходим, например, для унифи- тать. Ведь если еще несколько лет назад там невозможно, нужно писать специаль-
может соответствовать данному понятию – кации денежных расчетов. Мы планируем люди вводили в строке поисковика все- ный плагин.
сайты, блоги, карты, изображения и т.д. создать также собственную внутреннюю го одно слово, то сегодня уже два-три. Мы собираемся работать с теми браузера-
платежную систему. Так платить за кон- Количество информации растет, да и уро- ми, которые уже существуют, и будет пре-
LXF: Существует еще один интересный текстную рекламу можно будет из одного вень интернет-пользователей постоянно доставлять пользователям возможность
и перспективный вид поиска – поиск по аккаунта. Сюда же будeт входить и еще увеличивается. Люди уже научились пра- установить наш поисковик в качестве
исходным текстам открытого ПО. Будет ли многое другое. Кроме того, работаем над вильно составлять запросы, и мы видим основного. А что касается спонсирования,
у вас нечто подобное создано? развлекательными сервисами и идем по свою задачу в том, чтобы обрабатывать то это слишком дорогое удовольствие поз-
АГ: Вообще говоря, не составляет ника- абсолютно легальному пути, так как уве- не просто телеграфный текст или набор волить себе поддержать создание какого-
кого труда научить нашу текущую систе- рены, что в конечном итоге все к этому ключевых слов, а вполне осмысленные то браузера. Возможно, в будущем это
му искать по программным текстам. Но и придет. предложения. А для этого нужно научить- произойдет.
насколько это нужно, сколько времени Если представить себе всю структуру ся разбирать эти предложения и понимать,
потребует доработка и, главное – сколь- Webalta, то поисковик – это как бы некий какие слова важные, а какие нет.
ко людей всем этим воспользуется, я не хребет, который обрастает всем осталь-
знаю. У нас много предложений по созда- ным, в данном случае новыми сервисами. LXF: И последний вопрос Компания Google
нию специализированных видов поиска – щедро спонсирует разработчиков браузе-
например поиска по правительственным LXF: Для поиска очень большое значе- ров, за что последние зачастую вставля-
документам. Как я уже говорил, создание ние имеет морфология. Морфологический ют их в качестве поисковой машины по
их не представляет никакого труда, но нам модуль был разработан вашими специа- умолчанию. Были даже курьезные случаи,
пока не хотелось бы распылять свои силы листами или приобретен? когда браузер FireFox называли Adware от
на начальном этапе. АГ: Да, это приобретение. Мы взяли Google. Собирается ли Webalta оказывать
чужую программу и практически пере- подобную поддержку?
LXF: Любой мало-мальски уважающий писали ее. Вообще Webalta в русском и АГ: Я работаю на Маке и пользуюсь бра-
себя поисковик рано или поздно обзаво- английском языке уже сейчас умеет выде- узером Safari. Там по умолчанию уста-
дится собственным почтовым сервисом… лять генетивные пары. Каждый запрос новлен только Google, и заменить его
АГ: А у нас почта уже есть и сейчас тес- подробно анализируется. Если вводится невозможно.. Нужно поверх устанавли-
тируется. Она сделана на AJAX, и мы какой-то сложный запрос например стихи вать специальную программу, которая
пока ею пользуемся сами, на себе тести- Александра Пушкина в таком-то издании, даст такую возможность. То же самое

www.linuxformat.ru LXF8(82) АВГУСТ 2006 67


ТРЕТЬЕ ИЗМЕРЕНИЕ

Рисунок 1. При помощи 3D-Desktop


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

Третье
ИЗМЕРЕНИЕ
Часто в фантастических фильмах, рассказывающих о будущем, можно видеть, как пользователь использует при
работе с компьютером трехмерный рабочий стол. Но зачем так долго ждать? С будущим можно соприкоснуться
уже сегодня, а вашим гидом будет Сергей Яремчук.

О
перационная система GNU/ не сказывается на работе основной систе- цепцию рабочего окружения пользовате-
Linux, построена по при- мы. Кроме того, существует несколько ее ля. Естественно, нашлись и такие проекты,
нципу KISS (Keep It Simple вариантов, наиболее популярные из кото- которые уже сегодня смотрят в будущее,
Stupid). В отличие от дру- рых XFree86 (http://www.xfree86.org/) и причем выбор здесь не ограничен извест-
гих ОС, в ней не намешан X.Org (http://www.x.org/). Здесь работает ным XGL от Novell. Единственное ограниче-
коктейль из приложе- тот же принцип, поэтому Х-Window так- ние- многие из разработок требуют наличия
ний, намертво «вшитых» друг в друга. же состоит из нескольких компонентов, хорошей видеокарты.
Философия построения системы, напро- а клиент-серверная архитектура позволяет
тив, состоит в использовании небольших устанавливать их вообще на разных ком- Переключатель рабочих
по размеру приложений, которые работают пьютерах. Поэтому и оконных менеджеров столов 3D-Desktop
независимо друг от друга. При необходи- и различных расширений в этой систе- Разработкой 3D-Desktop (См. врезку 1)
мости совместного использования, их всег- ме столько, что вряд ли кто-то возьмется занимается фактически один человек:
да можно объединить как непосредственно их пересчитать. Каждый проект выражает Брэд Вэссон (Brad Wasson). Эта програм-
в командной строке, так и в скриптах при подход конкретного человека или группы ма, использующая OpenGL/Mesa, позволя-
помощи графической оболочки. Кроме того, энтузиастов, поэтому нестандартных реше- ет переключать рабочие столы в наглядном
любой из компонентов заменим на альтерна- ний здесь пруд пруди. Если Gnome, KDE, 3D-режиме. Выглядит это очень эффектно.
тивный, при наличии такового. Графическая IceWM напоминают традиционный рабочий После активации пользователю показыва-
подсистема X Window – яркий тому пример. стол, то Fluxbox довольно аскетичен по вне- ются трехмерно расположенные изобра-
Она не интегрирована в систему, что позво- шнему виду, а разработчики Symphony OS жения всех виртуальных рабочих столов,
ляет вообще ее не устанавливать в случае (http://www.symphonyos.com/) вообще которые можно вращать и просматривать.
отсутствия необходимости, а ее сбой никак целиком и полностью пересмотрели кон- По щелчку на одном из изображений будет

68 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


ТРЕТЬЕ ИЗМЕРЕНИЕ
Softool 2006
Приглашаем Вас посетить выставку SofTool, которая пройдет с 26 по 29
сентября 2006 года в Москве, в 69 павильоне ВВЦ. Выставка SofTool является
самым крупным и представительным Российским форумом новейших
осуществлен переход на выбранный вирту- priceisright, flip. Выбор варианта показа разработок в области информационных технологий и их применения в
альный стол. осуществляется при помощи опции --mode. экономике страны. Данный пригласительный билет дает право на одно
бесплатное посещение выставки в любой удобный день.
Конструктивно 3D-Desktop состоит из $ 3ddesk --mode=linear
двух программ: демона 3ddeskd и переклю- Все настройки оформлений сохранены Отрежьте пригласительный билет и приходите с ним на выставку !
чателя 3ddesk. Демон работает в фоновом в файле 3ddesktop.conf, который состоит
и обеспечивает более быструю реакцию, а из нескольких секций описывающих назва-
также кэширование информации об откры- ние и параметры вывода. Например:
тых окнах на всех виртуальных столах. wm kde3
Запуск демона лучше произвести отдельно view default
и с опцией --acquire, тогда будут собраны zoom on
изображения со всех рабочих столов. show_digit on
Дополнительно можно указать время digit_size 100
автоматического обновления (в миллисе- digit_color green
кундах) этой информации. use_breathing false
$ 3ddeskd --acquire=1000 view bigmoney
=================================== mode priceisright
3ddesktop will be acquiring images in one depth 10
moment. Please wait... digit_color purple
=================================== digit_size 150
Daemon started. Run 3ddesk to activate. Параметров много и показ рисунков
В некоторых случаях для коррект- можно очень тонко настроить. Нужная сек-
ной работы, возможно, потребуется при- ция выбирается при помощи опции --view с
нудительно указать используемый окон- указанием имени.
ный менеджер при помощи опции --wm. $ 3ddesk --view= bigmoney
Поддерживаются следующие варианты: Для удобства запуска 3ddesk можно
kde2, kde3, gnome1, gnome2, ewmh, создать ярлык на рабочем столе. Например,
fluxbox, windowmaker, enlightenment, в KDE для этого достаточно щелкнуть правой
sawfishonly и workspaces. Задача кнопкой мыши по пустому месту рабочего
3ddesk – активация сервера, если он еще не стола, выбрать «Создать»->«Ссылку на при-
запущен и переход в режим переключения ложение». В появившемся окне, во вкладке
рабочих столов. Для компиляции потребу- «Общие» нужно указывать название ярлыка,
ются пакеты XFree86-devel или Imlib2-devel, в «Права» дать ему право на выполнение, и
либо исходные тексты этих приложений. в «Приложение» в строке «Команда» запи-
Для работы желательна аппаратная подде- сать строку запуска вида /usr/bin/3ddesk
ржка 3D-ускорения. --view= bigmoney. Теперь по щелчку на
Поддерживаются несколько вариантов ярлыке будет запускаться переключатель
размещения и оформления окон. Внешний рабочих столов, при желании можно указать
вид можно скорректировать по своему усмот- и комбинацию клавиш.
рению. Так по умолчанию окна выводятся
каруселью (carousel) (Рис. 1) и при просмот- Трехмерный рабочий
ре поворачивается на 1800 в горизонталь- стол
ной плоскости. Но можно указать и другие Metisse (Рис. 2) не является трехмерным
варианты: linear, cylinder, viewmaster, рабочим столом в чистом виде. Задачи

Рисунок 2. Metisse обладает всем, что можно представить в трехмерном рабочем


столе.
ТРЕТЬЕ ИЗМЕРЕНИЕ
LinuxLand 2006
Компании ИТ-Экспо и Линуксцентр приглашают Вас посетить выставку-
конференцию LinuxLand, которая пройдет в рамках SofTool-2006. На
LinuxLand представлен весь спектр доступных в России Linux-решений. В
течение всей выставки будут проходить мастер-классы с демонстрацией
практической работы Linux-технологий. 26 сентября приглашаем Вас на
конференцию “ИТО-2006: Технологии Linux и Open Source” .

Ждем Вас на LinuxLand !


Организатор
Платиновый спонсор

Рисунок 3. Музыкальные файлы в TDFSB представлены в виде дисков.

этого проекта несколько шире и включают го университета Даниеля Ричарда (Daniel


разработку и тестирование прогрессивных Richard) подтолкнул кадр из фильма
методов и стандартов. Это, скорее, инстру- Стивена Спилберга «Парк Юрского перио-
мент для создания новых рабочих сред. да», в котором была показана эксперимен-
Одним из вариантов реализаций такой сре- тальная разработка компании SGI – 3D File
Золотой спонсор

ды и является 3D. Для установки, кроме System Navigator (http://www.sgi.com/fun/


самого Metisse, вам понадобится библио- freeware/3d_navigator.html) работающая
тека Nucleo и WMI (Window Manager Icons). под Irix. В fsv каждый показанный объект
Конструктивно Metisse состоит из вирту- будет выделен цветом и объемом в соответ-
ального X-сервера Xwnc (содержащего код ствии со своими свойствами: размер, тип
Xvnc и XDarwin), переработанной вер- (каталог, файл, сокет), временем модифи-
Серебряный спонсор

сии FVWM (исполняемый файл называет- кации. Для установки потребуется наличие
ся fvwmi), и модуля FVWM FvwmAmetista. gtk и gtkglarea.
При помощи меню “Ametista Config” можно Другая подобная разработка TDFSB –
настроить некоторое количество парамет- (3D – Filesystem Browser) показывает фай-
ров, среди которых: изменение прозрачнос- ловую систему в виде трехмерного мира,
ти окон в процессе перемещения, парамет- по которому можно перемещаться при
ры кривизны относительно рабочего стола помощи мыши и клавиатуры. Чтобы зайти
и его вид, панель, цвет, некоторые реакции внутрь каталога, достаточно щелкнуть по
26 сентября - 29 сентября 2006 года Москва, ВВЦ, павильон №69

на события. Для более глобальных настроек нему мышкой. Музыкальные mp3-файлы


потребуется отредактировать конфигураци- показаны как CD (Рис. 3), щелчок по «дис-
онный файл. Здесь уже указываются при- ку» приведет к прослушиванию компози-
ложения, значки которых будут выводиться ции, аналогичная реакция будет при щелчке
в меню, используемые шрифты, количество по видео-файлу или изображению. Кроме
виртуальных рабочих столов, стиль окна, Linux и FreeBSD TDFSB портирован также
фоновое изображение. Настройке поддает- в BeOS и MorphOS. Текущая версия – 0.0.9,
ся практически все. но она, несмотря на такой маленький номер,
работает стабильно.
Файловые менеджеры Немного по-другому выводит инфор-
29.09 Вручение Сертификатов ЮНЕСКО / WDU
28.09. Тренинги технологий Linux - мастер-классы
27.09. Технологии Linux - презентации, мастер-классы
26.09. мастер-классы IBM
Стенд D16, зал мастер-классов LinuxLand
26.09. Технологии Linux и Open Source в образовании
Большой конференц зал
ИТО-2006: Технологии Linux и Open Source

В GNU/Linux существует большое количес- мацию FileCityMap. В котором движение по


тво файловых менеджеров, на любой вкус каталогам файловой системы, напомина-
и цвет – от традиционных вроде Midnight ет путешествие по городу. Скрипты здесь
Commander, до современных, обладающих выглядят знаками «Стоп», архивы – мусор-
большим количеством опций Konqueror ными ящиками и т. д. True3D*Shell (см.
или Krusader. При желании можно доба- ссылку 11) так же является трехмерным
вить в них и третье измерение. Например, файловым менеджером и чем-то напомина-
PCnews.ru, Lenta.ru, Linuxcenter.ru, Linux.ru, LinuxRSP.ru, OpenNet.ru
журнал “Системный администратор”, IXBT.ru, 3DNews.ru,
издательство “Открытые системы”, издательство “СК Пресс”,
Информационная поддержка

fsv (3D File System Visualizer) позволяет ет предыдущую разработку. Пользователь


в более интуитивной и наглядной форме может просматривать как локальные, так
показать пользователю содержимое фай- и доступные по сети файлы. Кроме того,
ловой системы. Для этого он переводит имеется режим робота, позволяющий авто-
некоторую информацию о файлах и ката- матизировать просмотр.
логах (например, относительные размеры), Проект s3d (см. ссылку 10) представля-
которые выводятся затем в 3D виде. На ет трехмерный сетевой дисплейный сервер,
разработку fsv студента факультета инфо-
рамтики Массачусетского технологическо- (окончание на стр. 111)
ТРЕТЬЕ ИЗМЕРЕНИЕ

Учебники >>
Наши эксперты помогут вам с любым приложением Linux

ПОЧЕМУ GNU/LINUX В ЭТОМ ВЫПУСКЕ МЫ ИЗУЧИМ:


«Linux лучше, чем
72 ПЕРВЫЕ ШАГИ
Windows? – Чем
Энди Ченнел готов поделиться 84 Думай о главном
лучше-то? – Чем-
хитростями о том, как сделать
чем: чем Windows!».
вашу жизнь чуточку быстрее
Собственно говоря, а
действительно чем? 76 INKSCAPE
Особенно в России.
Евгений Балдин Оставьте свой след в истории..
Низкой, точнее, ну-
переехал на своей визиткой под руководством
левой стоимостью
Linux и не Дмитрия Кирсанова
никого не удивишь.
думает
возвращаться. Это не является до- 80 OOO BASIC
стоинством. Те, кто
Запросы к СУБД, отчеты и прочее
ожидают увидеть толпу энтузиастов, ко-
вместе с OpenOffice.org и Марком
торые ринутся решать их проблемы за
Бейном
так, то есть на халяву, удивятся услышав, НОВАЯ
что free значит free as speech (свобода 84 3D-ИГРЫ СЕРИЯ
слова), а не free as beer (бесплатное Вначале Пол Хадсон создал небо
пиво). Собственно говоря, вполне ожи- и землю. Теперь этому миру нуж-
даемо, ведь закон халявы гласит, что её но оружие...
не бывает. Так чем лучше?
И передовых специфичных только 88 PHP
для GNU/Linux исследований нигде не Самая длинная серия в истории
ведётся. Информация о научных до- LXF подошла к своему фина-
стижениях доступна всем одинаково. лу. Пол Хадсон дает последние
Да и сами реализуемые концепции час- наставления
то просто повторение уже имевшихся
решений. Так чем же лучше? 90 HARDCORE LINUX
GNU/Linux – это просто инструмент, Маленький проект: замена ком- 98 QT/KDE, ЧАСТЬ 5 106 MAXIMA, ЧАСТЬ 2
который более совершенен, чем другие мерческой УАТС на Asterisk. Под Андрей Боровский создает прило- Сегодня Тихон Тарнавский рас-
имеющиеся на сегодня инструменты по руководством Дэвида Коулсона жение офисного типа. Для офис- скажет о функциях и операторах
причине более продвинутой в социаль-
ных служащих, решающих офис- Maxima. Эй, не надо прятаться под
ном плане модели разработки. Модель, 94 PYTHON ДЛЯ
ные задачи на офисных GR. партами!
которая используется в GNU/Linux, ПРОФЕССИОНАЛОВ
позволяет создавать не просто good Сергей Супрунов поможет вам 102 UNIX API, ЧАСТЬ 3 112 PAW, ЧАСТЬ 2
enough решения, а решения, совершен- написать свой собственный Очереди сообщений есть не толь- Настало время применить получен-
ные настолько, насколько это возмож- сервер. ко у Qt и Glib! Андрей Боровский ные знания на практике. Евгений
но в текущей ситуации. Здесь хотя бы
продолжает изучение механизмов Балдин демонстрирует примене-
есть шанс достичь совершенства.
IPC в System V. ние PAW в боевых условиях.
info@linuxformat.ru

СОВЕТ МЕСЯЦА ЧЕРВОТОЧИНА


Скромная команда mkfifo едва ли входит в то идея каналов наверняка покажется помощью mkfifo. всех поступающих в него данных:
арсенал даже самых заядлых оболочкофи- вам знакомой. Они используются для Буквосочетание fifo в названии mkfifo fifo_pipe
лов. Она создает канал для обмена данными передачи вывода одной команды на команды отражает природу создавае- tail -f fifo_pipe
или связи двух различных утилит – своеоб- вход другой. Типичный случай – когда мого канала – «первым пришел – пер- Затем, действуя из другой консоли
разную «червоточину» в командной строке команда выводит на экран слишком вым ушел» (first in – first out). Создать или учетной записи (если позволяют
Unix. Информация, посылаемая в один много текстовой информации. Канал канал не сложнее, чем набрать mkfifo права доступа), пошлите в канал какие-
конец, может быть считана из другого. – до less или до more – позволяет <имя_канала>. Для канала можно так- нибудь данные. Например, наберите
Прежде чем мы приступим к ее вам получить эти данные в удобочита- же установить права доступа (параметр echo “This is a test” >> fifo_pipe
практическому использованию, давай- емом виде: --mode), как для обычного файла. и переключитесь на прежнюю консоль.
те обсудим, где вообще встречаются cat /var/log/messages | less После того, как канал создан, необ- Вы увидите строку «This is test» в выво-
каналы. Если вы используете оболочку В данном случае, создается вре- ходимо обеспечить «закачку» данных. де команды tail.
не только для того, чтобы пугать друзей менный канал, но ничто не мешает вам Приведем простой пример. Создадим
выводом команды cat /dev/random, создать «постоянное соединение» с канал и используем tail -f для вывода

www.linuxformat.ru LXF8(82) АВГУСТ 2006 71


УЧЕБНИК Первые шаги. Экономим время

ПЕРВЫЕ ШАГИ. СЕРИЯ «LINUX ДЛЯ НОВИЧКОВ»

Рабочие станции: экономим время


Сочетания клавиш, файловые ассоциации и настройка автозагрузки могут сэкономить вам целых... пару
минут каждый день. Не отмахивайтесь, утверждает Энди Ченнел, одно мгновенье – и вы уже не сможете
жить без этих маленьких хитростей...

Если вы взялись за что-то стоящее, то это также стоит делать настройка ассоциаций для разных типов файлов, когда за определен-

МЕСЯЦ быстрее. Или делать как следует. Мы, пользователи Linux,


можем разными способами повысить быстродействие ком-
ный программой закреплен список открываемых по умолчанию типов
документов. Мы также установим формат, в котором OpenOffice.org
НАЗАД пьютера; скажем, пересобрать ядро, докупить более мощный процес- сохраняет документы по умолчанию, так что вам не понадобится выби-
сор или начать тормозить самим. Но мы не можем обойти вниманием рать его каждый раз. Наконец, можно настроить запуск программ так,
Я дал вам несколько советов по
небольшие изменения в настройках, которые экономят всего несколько что любимое приложение будет запускаться без дополнительных усилий.
безопасной работе с Firefox.
секунд, но за день, неделю или всю жизнь они сэкономят вам достаточ- Эти хитрости дают заметный результат и повышают ваши навыки вла-
но лишнего времени для игры в Mario Kart: Double Dash или загорания. дения компьютером. Я считаю, что через некоторое время вы заметите
В этой статье я расскажу вам о небольших приемах, таких как отдачу и начнете пользоваться ими ежедневно.

ЧАСТЬ 1 – ОТКРЫВАЕМ ДОКУМЕНТЫ


Разработчики KDE и GNOME любезно составили список типов по маленькой стрелке напротив имени группы и в появившемся списке
файлов и связанных с ними приложений, которые мы используем в выберите AbiWord. В зависимости от настроек KDE, программа может
Linux. Однако бывают случаи, когда вас не устраивают стандартные называться «Word Processor» (для того чтобы изменить отображаемое
настройки. На наше счастье, обе графические среды позволяют внести имя, смотрите врезку «Быстрые подсказки» на последней странице ста-
нужные исправления. тьи). По нажатию кнопки ОК документ будет открыт для редактирования
Начнем с KDE. В этом примере у меня есть свежая установка SUSE в AbiWord.
Linux с KDE 3.5, но какой-то умник забыл поставить во время установки Но не торопитесь! Нам нужно убедиться в том, что этот тип доку-
офисные программы. Установка AbiWord решает эту проблему, и теперь мента всегда открывается в выбранном приложении. Поставьте флажок
я вновь могу писать статью для LXF. Тем не менее, так как изначально в нижней части окна на пункте «Запомнить связь с приложением для
в SUSE не было этой программы, для файлов документов не были уста- этого файла» и нажмите ОК. Только теперь AbiWord станет стандартным
новлены и нужные ассоциации. Это легко проверить. приложением для этого типа файлов.
Найдите какой-нибудь документ; мне, к примеру, нужно открыть Если вы закроете теперь AbiWord и щелкнете по файлу правой
файл OOo Writer. Родные документы AbiWord – c расширениями .abw кнопкой мыши еще раз, вы заметите, что контекстно-зависимое меню
и .abt – открываются простым двойным щелчком, однако другие типы «Открыть с помощью» пополнилось новым пунктом – «Открыть с помо-
документов, включая .odt, еще не «привязаны» к нужной программе. щью AbiWord/Word processor». Так как этот пункт выбран по умолчанию,
Чтобы исправить это, щелкнете правой кнопкой мыши по файлу и выбе- при двойном щелчке по файлу будет запускаться именно AbiWord.
рите «Открыть в > Другое приложение», после чего появится диалог В какой-то момент вам может захотеться изменить привязку фай-
выбора программ. В основной части окна будет список программ, соот- лов; например, если вы установили OpenOffice.org и пристрастились к
ветствующий структуре К-меню в KDE. Найдите группу Офис, щелкнете работе с odt-файлами именно в нем.

72 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


УЧЕБНИК Первые шаги. Экономим время

нужный пункт при помощи кнопки-переключателя, я могу задать стан-


дартную программу для открытия документов.
Кроме этого, у вас имеется возможность редактировать состав
списка программ при помощи кнопок «Добавить» (Add) и «Удалить»
(Remove), которые располагаются в нижней части диалогового окна.
Это может понадобиться в том случае, когда вы установили скачанную
программу для просмотра графики вручную (а не через менеджер паке-
тов Ubuntu) и захотели сделать ее стандартной для png-файлов. Для
этого вам вначале понадобится включить эту программу в список стан-
дартных приложений для графических файлов. Это можно сделать и
через контекстное меню, вызываемое при правом щелчке мыши, выбрав
пункт «Open With Other Application» (Открыть в другом приложе-
нии). Найдите приложение в списке, или укажите путь к исполняемому
файлу в браузере – теперь программа доступна в числе стандартных
приложений. Прекрасно.
В KDE реализован альтернативный способ редактирования файло-
вых ассоциаций. Для этого можно открыть Центр управления и найти
пункт «Компоненты KDE > Привязки файлов». Этот способ отнимет
у вас чуть больше сил, потому что вам придется «прочесывать» весь
гигантский список типов файлов, сгруппированных по тематическому
принципу – Звук, Изображения, Текст. Найдите нужный тип и задайте
команду, которая будет выполняться при двойном щелчке по файлу.
Это делается так. Отыщите нужный шаблон расширения файла в
Поставьте флажок, и AbiWord будет всегда запускаться при списке или добавьте его вручную при помощи кнопки «Добавить»
щелчке по odt-документам (Add). Затем найдите в правой части окна раздел Application
Preference Order (Порядок запускаемых приложений), нажмите
В таком случае, повторите описанную выше процедуру, выбрав кнопку «Добавить» (Add) и введите команду, которая запустит нужную
другую программу и не забыв отметить флажком постоянную привязку. программу. Добавленное приложение можно двигать вверх или вниз,
Теперь документы будут открываться уже в новой программе. меняя его положение в списке.

Как это делается в GNOME


Учитывая схожесть разных графических оболочек, не удивляйтесь,
что это действие будет выглядеть почти также в GNOME, хотя кое-что
здесь реализовано более удобно (например, когда для открытия фай-
ла доступны два приложения, правый щелчок мыши позволит вам
выбрать сразу же одно из них), а кое-что – неуклюже (настроить прило-
жение по умолчанию здесь не так просто, как в KDE).
Приведем пример: допустим, что SUSE мне надоел и я решил поп-
робовать Ubuntu. По умолчанию в состав Ubuntu Dapper Drake входит
Gnome 2.14 и OpenOffice.org 2.0, который призван открывать разнооб-
разные офисные документы. Тем не менее, привыкнув к AbiWord, я хочу
сделать так, чтобы после его установки я мог бы щелкнуть в Nautilus
правой кнопкой мыши по файлу и выбрать эту программу. Обратите
внимание, что по двойному щелчку мой файл откроется в ООо, поэтому
мне нужно именно контекстное меню с выбором приложений.
Если мы откроем файл в AbiWord через контекстное меню, этот
выбор не будет сохранен и файл откроется в данном приложении только
в этот раз. Для того, чтобы назначить приложение по умолчанию, зай-
дите в свойства файла (Options) и перейдите на вкладку «Открывать
в...» (Open with...). Вы увидите список тех приложений, которые
ассоциированы с данным типом файлов. В моем случае для файлов с
расширением .doc имелось два приложения – AbiWord и OОo. Отметив Диалог выбора программ в GNOME опрятен и ничем не перегружен.

ЧАСТЬ 2 – ЗАПУСКАЕМ ПРОГРАММЫ


Большинство людей пользуется одними и теми же приложени- Hidden Files (Вид > Показывать скрытые файлы) или нажав Ctrl+H
ями изо дня в день, поэтому было бы логичнее запускать их автоматичес- когда в Konqueror открыта ваша домашняя папка.
ки при утренней загрузке компьютера, когда вы готовите себе кофе. Любое приложение или ссылка, помещенные в папку автозагруз-
В KDE вам нужно будет отыскать папку Autostart, куда помещают- ки, будут автоматически запускаться при старте KDE, поэтому вам не
ся все ссылки на автозагрузку. В большинстве дистрибутивов эта папка составит труда щелкнув по любому месту в папке правой кнопкой мыши,
имеет адрес /home/имя_пользователя/.kde/Autostart. Вы навер- выбрать Create New > Link To Application (Создать > Ссылку на
но уже заметили, что в вашей домашней директории не видно папки с приложение) и ввести команду запуска нужной программы. Если у
именем .kde. Это происходит из-за точки (.), стоящей в начале имени вас есть привычка посещать определенный сайт в начале работы, вы
и означающей, что данная папка является скрытой. Вам понадобится также можете создать ссылку на URL сайта, выбрав пункт Create New >>
включить отображение скрытых файлов, выбрав пункт View > Show > Link To Location (Создать > Ссылку на местоположение). Таким

www.linuxformat.ru LXF8(82) АВГУСТ 2006 73


УЧЕБНИК Первые шаги. Экономим время

образом Konqueror будет открывать нужный вам сайт при загрузке


>> компьютера.
Если по какой-то причине папки .kde/Autostart нет в вашей сис-
теме, это означает, что ее расположение было изменено в настройках
путей. Не беспокойтесь, все можно поправить. Откройте Центр управле-
ния и перейдите в раздел System Administration > Paths (Системное
администрирование > Пути). Здесь вы можете указать путь к папке
автозагрузки или хотя бы выяснить, где она находится в данный момент.
Если вам захочется упростить доступ к автозагрузке (и избавиться от воз-
ни со скрытыми папками), вам достаточно создать ее в вашей домашней
директории, к примеру, под именем Start Up, и прописать путь к ней в
указанном разделе Центра управления. Теперь вы можете просто пере-
таскивать ссылки из К-меню в окно автозагрузки и в появившемся окне Автозагрузка в GNOME может больше, чем кажется. Эта
выбора указать Link To Application (Ссылка на приложение). команда запустит Firefox с двумя сайтами в разных вкладках.
При следующем запуске KDE ваши программы из папки автозагруз-
ки будут запущены автоматически [имейте в виду: каждое такое прило-
жение увеличивает время запуска системы, – прим. ред.]. используйте такие сочетания клавиш, которые уже назначены действи-
ям или командам в ОС. Например, если вы настроите запуск AbiWord
Автоматический переход на web-адреса при нажатии Ctrl+C, то это заблокирует копирование выделенного
Автозагрузка в GNOME реализована в виде небольшой программы, а фрагмента в буфер обмена. Более безопасными сочетаниями являются
не папки, и вам будет несложно в ней разобраться. Эта утилита нахо- комбинации Alt/Ctrl с цифровыми клавишами, поэтому если вы обычно
дится в System > Preferences > Sessions (Система > Параметры используете три программы – скажем, текстовый процессор, браузер и
> Сеансы) на вкладке Start Up (Запуск при старте). Для того, чтобы почтовую программу, то есть смысл назначить им легко запоминаемые
добавить в список, к примеру, Firefox, нажмите кнопку Add (Добавить) комбинации Ctrl+1, +2 и +3 соответственно.
и наберите в появившемся окне команду firefox. Самое приятное состо- В KDE откройте Центр управления и перейдите в раздел Desktop
ит в том, что вы можете указывать здесь совершенно любые команды. > Panels > Menu (Рабочий стол > Панели > Меню). Щелкнете по
Если вы, например, хотите, чтобы Firefox открывал сайт LXF при каждой кнопке Edit K Menu (Редактировать К-меню) в низу раздела и найдите
загрузке GNOME, вам понадобится всего одна команда: настройки клавиатурных комбинаций для запуска программ. После того,
firefox “http://www.linuxformat.ru”. как вы все настроите, не забудьте сохраниться (File > Save), иначе изме-
Более того, вы можете автоматически запускать Firefox с нескольки- нения будут потеряны.
ми вкладками, указав несколько web-адресов подряд, каждый в отде- Редактировать меню в GNOME вы можете при помощи утили-
льных кавычках. Да, и не забудьте поставить одинарный пробел между ты Alacarte Menu Editor, которую вы найдете в разделе Applications >
закрывающей кавычкой одного и открывающей кавычкой другого сайта. Accessories (Приложения > Аксессуары). Однако разработчики похоже
Следующая команда откроет Firefox с сайтом LXF Russia в первой вклад- не спешат разрешать пользователям создавать свои клавиатурные
ке, и LXF UK во второй: сокращения. Конечно, это не значит, что их вовсе нельзя создавать,
Firefox “http://www.linuxformat.ru” “ просто нужно немного поусердствовать.
http://www.linuxformat.co.uk” Для того, чтобы настроить запуск AbiWord по нажатию Ctrl+1, нам
понадобится Редактор Gconf (Gconf-Editor). Здесь вы можете поиг-
Полезные сочетания клавиш рать с системными настройками GNOME, поэтому будьте осторожны.
Вы можете запускать программы мгновенно, если привяжите их к Откройте терминал (Application > Accessories > Terminal) и наберите
определенным клавиатурным комбинациям. Но будьте внимательны: не gconf-editor, после чего откроется окно редактора Gсonf. Используйте
небольшие стрелки напротив разделов и разверните их дерево до пун-
кта Apps > Metacity > Keybinding_command, после чего щелкнете
два раза по Command_1. В качестве значения укажите команду, которая
запускает вашу программу (ее можно выяснить, щелкнув правой кноп-
кой мыши по ярлыку программы в Alacarte Menu Editor), и нажмите ОК.
Не выходя из ветки Metacity, выделите пункт Global_keybindings
и найдите в списке ключ Run_command_1. Щелкнете по нему два раза
и в появившемся окне задайте комбинацию клавиш. Для Ctrl+1 необхо-
димо набрать <Control>1 именно так, в треугольных скобках, для того,
чтобы компьютер воспринял это именно как специальную клавишу, а не
слово “Control”. Теперь можно нажать ОК, закрыть GСоnf и проверить
работу новой «горячей клавиши».
Скопируйте приложения сюда для их ... или сделайте любую папку в вашем
автозапуска... компьютере местом для автозагрузки.

ЧАСТЬ 3 – СОХРАНЯЕМ ДОКУМЕНТЫ


Нет сомнений, что OpenOffice.org входит в зенит своей славы никаких проблем, так как офисный пакет имеет хорошие фильтры для
по мере того, как все большее число людей рассматривают его в роли обработки .doc, .xls, .ppt и других закрытых форматов. Другое дело с
альтернативы дорогому MS Office, пользователи которого также обес- документами, созданными в ООо. Вы должны осознавать, что пользова-
пекоены моральными и правовыми проблемами, связанными с пират- тель, который получит ваш ods-файл, может вообще не понять, что это
ством. Но и в нашей бочке отборного меда закралась ложка дегтя: пока за спам он получил.
что пользователей ООо еще слишком мало, и пересылаемые по почте Решение этой проблемы – выбрать более универсальный открытый
документы часто приходится открывать сторонними программами. Для формат или, стиснув зубы, пойти «в массы» с проприетарным форма-
пользователя ООо файл в «неродном» формате обычно не вызывает том. Для того, чтобы сэкономить время и не мучаться с выбором фор-

74 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


УЧЕБНИК Первые шаги. Экономим время

мата при каждом сохранении документа, мы можем заранее определить ООо может автоматически
для каждого приложения тот формат, который будет использоваться по сохранять файлы в
умолчанию. разнообразных форматах.
Начните с окна настроек Tools > Options (Инструменты > Настройки)
и перейдите в раздел Load/Save – General (Загрузка/Сохранение –
Основные). В нижней части окна вы заметите пару выпадающих списков
для выбора формата файлов по умолчанию. Список слева предлагает
выбрать тип документа – текст, таблица, презентация и так далее, в то
время как список справа является контекстно-зависимым и предлагает
вам ряд соответствующих форматов.
Если вы плотно общаетесь с пользователями Excel, то для электрон-
ных таблиц есть смысл задать формат Microsoft Excel 2003 XML, кото-
рый убережёт вас от проблем совместимости с коллегами.

Выбираем формат файла


Выбрать правильный формат для ваших документов очень важно.
Варианты, о которых речь пойдет ниже, отражают моё личное мнение, • Презентации В ООо вы найдете всего два формата для презента-
однако я постарался предложить альтернативы закрытым форматам ций: Impress или Powerpoint. Если вы не уверены в том, что на каждом
везде, где это возможно. Тем не менее, иногда нам приходится отступать компьютере, где вы будете открывать свою презентацию, установлен
от своих принципов и использовать проприетарные форматы в тех слу- OpenOffice.org, используйте формат РРТ. Тем не менее, если вам этот
чаях, когда это требуется формой документа или, скажем, ВУЗом. формат вообще не нужен, не забывайте, что в Impress имеется впечат-
• Текстовые документы ООо и AbiWord неплохо открывают doc-фай- ляющий набор фильтров для экспорта в HTML, Flash, PDF и стандартные
лы, чего нельзя сказать о пакете KОffice, где все еще далеко от идеала. графические форматы. При экспорте в статические форматы, такие как
Программы, работающие через web, такие как Writely (www.writely. JPEG вы потеряете эффекты перехода между слайдами, но зато сами
com) и ThinkFree Office (www.thinkfree.com) тоже умеют открывать слайды будут гарантированно верно отображаться на любом компьюте-
и сохранять файлы в формате DOC вполне прилично. В случае, когда ре [при этом слайды в формате JPEG могут выглядеть «неряшливо», так
необоходимо гарантировать одинаковый внешний вид документа на как он предполагает сжатие с потерями, – прим.ред.].
разных компьютерах и заказчику не понадобится править файл, выби- • Фотоснимки Фотографии не вызывают таких проблем, как другие
райте PDF. Тем не менее, наиболее универсальным выбором будет Rich типы документов из-за того, что вся отрасль цифровых камер и компью-
Text Format (.rtf), который поддерживает несложные таблицы, цветовое теров договорилась о поддержке JPEG. Для лучшего качества вы также
выделение, различные начертания шрифтов (полужирное, курсив) и можете использовать форматы PNG и TIFF, хотя tif-файлы будут очень
выравнивание текста. Перечисленные форматы открываются в боль- большими по размеру.
шинстве текстовых процессоров и имеют обычно меньший размер, чем • Рисунки и иллюстрации Большая часть приложений для работы с
файлы других форматов. векторной графикой стандартно использует формат EPS, разработанный
• Электронные таблицы Для тех счетоводов, которым важно компанией Adobe. Но времена меняются, и многие программы теперь
наладить между собой общение, у нас есть пара форматов на выбор. поддерживают более современный стандарт SVG. Если вы пересылаете
Первый предлагает вам воспользоваться одной из версий документа векторный рисунок для дальнейшей правки – нет ничего лучше EPS.
Microsoft Excel, в то время как второй представляет собой текстовой Если же правка не требуется, вполне подойдёт и PDF.
вариант CSV(Comma-Separated Values, значения, разделенные запяты- Как и большинство вещей в мире Linux, приложение и формат фай-
ми). Последний вариант хорошо годится для простых числовых таблиц, лов, с которыми вы работаете, зависят от того, какие правила игры вы
но как только ваш документ начнет усложняться – а вы ведь не можете установите и с кем будете иметь дело. Конечно, идеи и соображения в
заставить коллег перейти на открытые программы – лучшим выбором этой статье не приведут к мировым волнениям, но зато сэкономленные
оказывается формат Excel. несколько минут позволили мне успеть проиграть в Mario Kart. LXF

БЫСТРЫЕ ПОДСКАЗКИ
Многие поставщики KDE-дистрибутивов стараются, ради нашего с вами неры интерфейсов вообще оставляют одни описания. Этот подход
удобства, сделать так, чтобы в К-меню отображались не просто назва- хорош до тех пор, пока у вас один текстовый процессор, один медиа-
ния программ, которые могут ничего не говорить пользователю (что плейер и так далее, но когда вы устанавливаете дополнительные прило-
такое amaroK, например?), но и их краткие описания. Некоторые дизай- жения со схожими функциями, описания становятся проблемой. Но
выход есть!
Найдите в К-меню Центр управления (у него, к счастью, имя и описа-
ние совпадают) и перейдите в раздел Рабочий стол > Панели. В гори-
зонтальном ряду вкладок выберите «Меню». В появившемся разделе
будет много настроек, связанных с удобством использования, поэтому
просмотрите их внимательно. В главном окне, к примеру, можно
настроить быстрый доступ к закладкам в Konqueror, к недавним доку-
ментам и сетевым папкам. В нижней части окна можно настроить ЧЕРЕЗ
поведение К-меню, которое может запоминать либо наиболее часто
запускаемые программы, либо недавно запущенные.
Нас, тем временем, интересует раздел Menu Item Format (Формат
МЕСЯЦ
Дети и компьютеры: где найти панацею?
элемента меню). Здесь вам предлагается четыре варианта: первые два Мы посмотрим, как обезопасить ребят и
отдают приоритет названию программы (идеально, если вы ориентиру- технику друг от друга.
етесь в них), а другие два – её описанию. Вы заметите, что для каждой
программы уже имеются как название, так и описание; окно настройки
лишь переключает отображаемые в меню элементы.
KDE позволяет настроить главное меню на свой вкус.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 75


УЧЕБНИК Inkscape

ПРАКТИЧЕСКИЕ ЗАНЯТИЯ ВЕКТОРНАЯ ГРАФИКА

Inkscape Создание визитки


ЧАСТЬ 2 Дмитрий Кирсанов представляет простой, но поучительный дизайнерский проект –
создание визитной карточки!
При всем многообразии электронных способов коммуникации, замысловатыми кистями, а на куда более простые вещи – перемещение
МЕСЯЦ изобретенных за последние 20 лет, визитная карточка по-пре- объектов, масштабирование, пробу различных шрифтов и расцветок
жнему популярна. Это – ваше лицо, послание в бутылке, и т. д. Здесь-то и покажет себя Inkscape – со своим ненавязчивым
НАЗАД маленькая презентация того, что вы сами считаете главным в себе. Не интерфейсом, многочисленными клавиатурными комбинациями и
Мы учились рисовать при
удивительно, что оформлению крошечного картонного квадратика уде- общей предупредительностью.
помощи инструмента ляется так много внимания. Как в японском трехстишии, здесь у вас
«Каллиграфическое перо» крайне ограниченное пространство для самовыражения. Стань художником
(Calligraphic pen). Учитывая все это – простоту, ограниченное пространство и необхо- Предлагаемое руководство описывает два разных способа оформления
димость стильного оформления, – создание визитной карточки может карточек, но я не предлагаю вам идти за мной след в след (разве что
стать превосходным экзаменом для векторного редактора. Inkscape для изучения технических тонкостей). Если вы планируете создать
подойдет для этого как нельзя лучше. Единственное его слабое место – реальную визитную карточку, начните с того, чтобы найти и просмотреть
это получение готовых к печати выходных файлов для сложных изобра- как можно больше примеров хорошо сделанных карточек. Затем открой-
жений. Но и здесь есть некоторые обходные пути, которые мы с вами те Inkscape и поиграйте с формами, шрифтами и цветами, стараясь
изучим на этом занятии. соединить лучшее из найденного с вашими собственными идеями.
Inkscape пока не может соревноваться с лучшими коммерческими Я дизайнер, так что мои примеры могут показаться вам несколько
редакторами вроде Adobe Illustrator или Corel Draw по количеству экстравагантными – вероятно, ваша карточка будет выглядеть более
команд и инструментов. Но в повседневной дизайнерской работе основ- традиционно. Тем не менее, и эти примеры могут быть поучительны,
ное время уходит не на отладку цветовых профилей или рисование если наблюдать весь процесс от начала до конца. Итак, приступим.

76 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


УЧЕБНИК Inkscape

1 2

Первые шаги Выбираем шрифт


Создайте новый документ, выбрав шаблон под названием «Business Следующий логический шаг – выбор шрифта (шрифтов) для ваших тек-
Card 90x50mm» в меню File > New (Файл > Создать) (А). Если вам стовых объектов. Выбранный шрифт сразу задаст общий стиль компо-
необходим другой размер, то его всегда можно изменить в диалоговом зиции. После выбора шрифта для всех текстовых строк (А) попробуйте
окне Document Preferences (Параметры документа) – Ctrl+Shift+D. изменить их относительные размеры (В) инструментом Selector.
Затем переключитесь в инструмент Текст и создайте текстовые объекты Смотрятся ли рядом строки одного шрифта, но разных размеров? Если
для каждого элемента – имя, должность, адрес, номер телефона и т.д. нет, можно попробовать разные шрифты (но в любом случае не стоит
Все они должны быть независимыми объектами (щелкните и наберите использовать больше двух шрифтов на одной карточке).
текст для каждой строки отдельно), потому что нам придется двигать и
трансформировать их.

3 4

Выравниваем элементы Конструктивизм


Создание визитной карточки для одного человека (а не шаблона для Давайте попробуем теперь выделить все (Ctrl+A) и немного повернуть
многих карточек) хорошо тем, что можно размещать и выравнивать тек- (один раз нажав [). Намного лучше! Что же это мне напоминает? Здесь
стовые объекты точно, не оставляя дополнительного места для имен и определенно есть что-то от конструктивизма – недолговечного, но вли-
адресов разной длины. Я разложил компоненты адреса вокруг своего ятельного стиля, который был популярен в 1920-х годах. Конструктивисты
имени, выровняв их по нескольким невидимым линиям. Получилась любили сыграть на контрасте шрифтов и пустить текст под углом.
асимметричная, но тесно увязанная композиция. Давайте завершим композицию тремя черными уголками и большим
красным кругом в центре: конструктивисты любили простые геометри- >>
ческие фигуры и сочетание черного с красным.

www.linuxformat.ru LXF8(82) АВГУСТ 2006 77


УЧЕБНИК Inkscape

>>
5 6

Другие источники вдохновения Иной подход


Наша первая визитная карточка в основном готова. Так получилось, что Для второй карточки попробуем совсем другой подход: стилизованные
ее оформление состоит по большей части из текстовых строк, а графи- инициалы. Инструментом Каллиграфическое перо (угол 90, фиксация
ческие элементы послужили лишь дополнением к основному замыслу. 1.0) я нарисовал вензель из букв «D» и «K». Когда мне наконец удалось
Но это не единственный возможный подход. Для создания корпоратив- придать буквам более-менее правильные очертания, результат выглядел
ной визитной карточки естественной отправной точкой станет логотип неплохо, но довольно топорно (А). Чтобы пригладить рисунок, объеди-
компании. Если вы хотите сделать карточку более индивидуальной, поп- ним все штрихи в один контур (Ctrl+K) и несколько раз применим упро-
робуйте оттрассировать свою фотографию (Path > Trace Bitmap). щение (Ctrl+L), втяжку и растяжку (Alt+), Alt+() (В).
Бесплатную графику можно также найти на http://openclipart.org.

7 8

Взлохмачиваем буквы Рассаживаемся по местам


Теперь буквы выглядят более естественно – но их можно сделать еще Пожалуй, это произведение заслуживает центрального места на карто-
интереснее. Я взял более тонкое перо, до отказа увеличил параметр чке, а все остальное можно симметрично расположить вокруг него (А). Я
Tremor (Дрожь) – это новая функция в Inkscape 0.44 – и от души порез- взял простой курсивный, очень легкий шрифт без засечек, чтобы он не
вился вокруг вензеля своим планшетным пером. Первый результат отвлекал внимания от вензеля в центре. Однако горизонтальное положе-
выглядел не очень вдохновляюще (А) – но только потому, что я забыл ние в данном случае не лучший вариант – тексту в нем тесно. Поворот
проделать обычные магические пассы «упрощение – втяжка – растяж- на 90 градусов (Ctrl+[) дает больше места для вензеля, если отбить имя
ка» (В). и адрес к самому краю (В).

78 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


УЧЕБНИК Inkscape

9 10 ПОДСКАЗКИ
• Чтобы Inkscape увидел новый
шрифт, просто инсталлируйте
этот шрифт в вашей ОС и пере-
запустите Inkscape. Новый
шрифт появится в диалоговом
окне Text And Font (Текст и
Шрифт).
• Большинство текстовых объ-
ектов можно улучшить настрой-
кой трекинга (стандартного
расстояния между буквами) и
кернинга (расстояния между
отдельными парами букв). В
инструменте Текст нажимайте
Alt+< и Alt+> для регулировки
трекинга в выделении и
Alt+стрелки для изменения кер-
нинга под текстовым курсо-
ром.
• Если вы хотите конвертиро-
вать растровый выходной файл
в формат CMYK TIFF для печа-
ти, это можно сделать с помо-
Добавляем градиенты Добавляем текстуру щью только свободных про-
Теперь попробуем добавить фоновый градиент. Стандартный градиент Можно сделать карточку еще интереснее, разбросав по ней маленькие грамм. Сначала конвертируйте
от непрозрачности к прозрачности некоторого цвета (например, синего, полупрозрачные каллиграфические штрихи (А, увеличено). Другой при- PNG в RGB TIFF (с помощью
А) выглядит довольно грубо. Но есть одна уловка, значительно улучша- ем – сетка из полупрозрачных линий. Начертите узкий горизонтальный Gimp или ImageMagick), затем
ющая вид градиента на белом фоне: сделайте прозрачную сторону гра- прямоугольник белого цвета, затем откройте диалоговое окно Tile воспользуйтесь командой tifficc
диента белой, а не синей (В). На (С) видно, как я добавил четыре несим- Clones (Расположение клонов, В) и создайте узор с симметрией Р1, из библиотеки LittleCMS (www.
littlecms.com) для конвертации
метричных прямоугольника с градиентами по краям карточки для при- 100 рядов в 1 колонку, с 100% вертикальным сдвигом между рядами.
его в CMYK TIFF. Для этого
дания ей мягкой, естественной выпуклости. Сгруппируйте прямоугольники и поместите их поверх градиента, но под
преобразования вам понадо-
вензелем и текстом. Прозрачность отрегулируйте по вкусу (С). бится ICC-профиль вашего
выходного устройства.

11 12

EPS экспорт Растровый экспорт ЧЕРЕЗ


Теперь у нас есть два образца визитных карточек – но как же распеча-
тать их? Конструктивистский вариант не содержит ни градиентов, ни
Вторую карточку, однако, мы не сможем распечатать через PostScript.
Inkscape умеет сохранять PostScript с градиентами, но только если они МЕСЯЦ
Продолжая оттачивать мастерство,
прозрачности; это просто набор плоских непрозрачных форм, поэтому не содержат прозрачности. Хотя в версии 0.44 есть экспорт в PDF с под-
мы создадим настоящий
он может быть без потерь сохранен в форматах PS, EPS (А) или прямо держкой прозрачности, для печати этот формат почти бесполезен.
анимированный баннер в
отпечатан на PostScript-принтере (В). В диалоговом окне параметров EPS Поэтому самый надежный способ для второй карточки – экспорт в рас-
Inkscape.
(С) включите параметры Convert Text To Path (Конвертировать текст тровый формат высокого разрешения (А). Полученный PNG-файл мож-
Не пропустите!
в линии) и Make Bounding Box Around Full Page (Ограничить но конвертировать в CMYK TIFF и послать в принт-бюро или же распеча-
область пределами страницы). тать на настольном принтере с помощью растрового редактора вроде
Gimp. LXF

www.linuxformat.ru LXF8(82) АВГУСТ 2006 79


УЧЕБНИК OOo Basic: базы данных

PHOTOGRAPH BY STEFAN RAY


АВТОМАТИЗАЦИЯ OPENOFFICE.ORG СЕРИЯ: «СЦЕНАРИИ НА BASIC»
НА ДИСКЕ • Код из учебника

OOo Basic Работа с базой данных


ЧАСТЬ 3 Очередной шанс поумнеть при помощи Марка Бэйна – на этот раз его макросы и советы по работе с
базами данных помогут вам запускать запросы, создавать отчеты в OpenOffice.org и вести учет ваших книг и
До чего ж я люблю OpenOffice.org – особенно когда исполь- легко». Затем я предположил бы, что вам нужен сервер баз данных –
МЕСЯЦ зую его вместе с OOo Basic. Не только потому, что он высво- так ведь можно использовать любой старый компьютер, подсоединить
бождает меня из клещей ProprietarySoft, Inc – больше потому, его к сети и затем установить Debian (если у вас нет второго компьютера,
НАЗАД что он действительно хорош. В предыдущих выпусках мы увидели, как запустите сервер на своей машине). Вы сами можете создать минималь-
Мы занимались изучением OOo легко можно манипулировать текстовыми документами и таблицами с ный загрузочный диск с www.debian.org, вставить в привод, перезаг-
Basic в табличном процессоре помощью OOo Basic. На сей раз –посмотрим, как извлекать информа- рузиться и следовать инструкциям. Об установке дополнительного про-
Calc. цию из базы данных. граммного обеспечения (рабочего стола, файл-сервера, web-сервера и
Главное, надо быть как можно ленивее. Представьте, например, что т.д.) беспокоиться нечего: достаточно необходимого минимума.
вы хотите подготовить счет для ужасно популярного Linux-журнала, в Тут я велел бы вам превратить ваш компьютер в сервер баз данных
который вы пописываете. Зачем терять время, перепечатывая то, что у с помощью команды apt-get install mysql-server, а затем отредактиро-
вас уже хранится? Это руководство даст вам инструменты, пресекающие вать файл /etc/mysql/my.cnf, закомментировав строку bind-address
лишнюю трату времени, а заодно, естественно, позволит насладиться = 127.0.0.1 (чтоб она выглядела как #bind-address = 127.0.0.1). Это
исследованием Unix. позволит подключаться к серверу с любого компьютера вашей сети.
Вам, небось, захотелось бы создать и базу данных, и пользователя
Ингредиент №1: сервер базы данных для доступа к ней. Тогда бы я посоветовал сделать следующее:
Начинать – так с начала. Раз уж это руководство по макросам для mysql -uroot mysql
извлечения информации из базы данных, вам понадобится база данных. set password for ‘root’@’localhost’ = password(‘put your own password
Однако я не намерен рассказывать о ее установке: это выходит за рамки here’);
руководства. Конечно, если бы вы объявили, что базы данных у вас нет create database accounts;
и вы даже не знаете, с чего начать, то я ответил бы: «Без паники, это grant all privileges on accounts.* to ‘your user’@’%’

80 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


УЧЕБНИК OOo Basic: базы данных

identified by ‘your user password’;


exit;
Наконец, я предложил бы задать вашему новому серверу статичес-
кий IP-адрес, отредактировав файл /etc/network/interfaces так, что-
бы конец файла был похож на следующее:
#iface eth0 inet dhcp
iface eth0 inet static
address 192.168.1.3
netmask 255.255.255.0
gateway 192.168.1.1
В этом пункте я бы отметил, что вам пора перегрузиться и зайти на
компьютер, где у вас стоит OpenOffice.org.
Но так как наше руководство исключительно про OOo Basic, а не про
создание баз данных, всего этого я делать не буду.
surname varchar(50), firstname varchar(50), Надо заранее знать, к какой
базе данных подключаться из
Доступ к базе данных address1 varchar(50), address2 varchar(50), city varchar(50), county
OpenOffice.org.
OpenOffice.org пока не запускайте. Чтобы облегчить себе жизнь (для varchar(50),
того и придуманы макросы), воспользуемся UnixODBC, это API для country varchar(50), postcode varchar(50),primary key (id));
доступа к источникам данных, который избавит нас от трудностей созда- create table accounts.invoice (id int auto_increment,customer_id int,
ния соединений к серверу и базам данных – протоколы, посылка сиг- sent_date date,paid_date date,primary key (id));
налов и все такое прочее. Самое сложное, что предстоит сделать – это create table accounts.item (id int auto_increment,customer_id int,
установить UnixODBC и его библиотеки MySQL на машину, где вы будете invoice_id int,title varchar(50),details varchar(255),value double,
использовать OOo. На Debian это делается всего-навсего через primary key (id));
apt-get install unixodbc insert into accounts.customer
apt-get install libmyodbc (surname,firstname,address1, address2,city,county,country,postcode)
Очевидно, если у вас другой дистрибутив, то придётся проверить values
для него процесс установки – взгляните на UnixODBC на странице www. (‘Smith’,’John’,’The Big House’,’1 The Street’,’Thistown’,’Thisshire’,’UK’,’TH
unixODBC.org. Когда вы установите UnixODBC, понадобятся еще две 1 1HT’);
вещи. Первое – отредактировать /etc/hosts так, чтобы он включал insert into accounts.customer
ссылку на сервер вашей базы данных, то есть 192.168.1.3 acamas. (surname,firstname,address1, address2,city,county,country,postcode)
Второе – отредактировать /etc/odbc.ini, чтобы он включал примерно values
следующее: (‘Jones’,’Mary’,’Building A’,’Industrial Est.’,’Hereton’,’Herehire’,’UK’,’HE1
(accounts) 1EH’);
Description = MySQL db test insert into accounts.item (customer_id,title,value) values (1,’A fine piece
Driver = MySQL of work’,500);
Server = acamas insert into accounts.item (customer_id,title,value) values (1,’A great
Database = accounts job’,500);
Port = 3306 insert into accounts.item (customer_id,title,value) values (2,’Day 1’,1500);
Теперь – глубокий вдох, сосчитать до пяти, медленный выдох, и insert into accounts.item (customer_id,title,value) values (2,’Day 2’,1600);
готово дело: нет больше командных строк. Кого это в восторг не приводит, пусть возьмёт форму Data Source
Administration (Управление источникам данных), перейдёт на вкладку
Разборки с базой данных Tables (Таблицы) и нажмёт на кнопку New Table Design (Создать новую
Откройте OpenOffice.org. Тип документа безразличен; пусть, например, таблицу). Можете воспользоваться формой Table Design (Создание
это будет документ Writer. В меню Tools [Сервис, иногда нужный вам таблицы), с её помощью таблицы создавать легко.
пункт оказывается в меню View (Вид), – прим.ред.] среди подменю име-
ется одно под названием Data Sources (Источники данных). Кликните Работа с новыми таблицами
на нем, и вы увидите форму Data Source Administration (Управление Мы извели довольно много времени на разборки с базой данных – без
источникам данных). её правильной работы не обойтись, а все остальное само встанет на свои
С ней все просто: нажмите New Data Source (Новый источник дан- места. Теперь можно заняться нашим первым макросом для работы с
ных) и установите тип базы MySQL на вкладке General (Общие). Затем базой данных. Если вы следовали руководству прошлого выпуска, то
перейдите на вкладку MySQL, добавьте имя базы данных в Data Source привыкли к функции OOo CreateUnoService (вы ведь практиковались,
URL (Адрес источника данных) и введите имя пользователя (не забудьте не так ли?). Мы снова собираемся использовать ее здесь, на сей раз
создать пустую базу данных и пользователя, прежде чем получать к ней для доступа к RowSet. Это имя OOo для набора записей, оно позволяет
доступ из OOo). Далее нажмите на закладку Tables (Таблицы). Там ниче- выполнять запросы к базе данных и получать от нее информацию.
го не будет (потому что никаких таблиц вы еще не создали). Угадайте, RowSet = createUnoService(“com.sun.star.sdb.RowSet”)
что мы теперь сделаем? Правильно, рванём в пивбар, с вас причитается. Осталось только сказать RowSet о базе данных, к которой вы
Нет? Ладно, оставим это на потом: время создавать данные. хотите подключиться (то есть к той, что вы установили в Data Source
Если вы любитель командной строки (должен сознаться, что я из Administration (Управление источникам данных)): сообщите имя поль-
них), вернитесь на сервер с базой данных, зайдите в базу и создайте зователя, пароль и запрос, который хотите выполнить. RowSet получит
таблицы. Не забывайте, что вы можете подключиться прямо с текущей результат запроса и представит его вам.
машины. Поэтому вы, видимо, захотите сделать следующее:
bainm@hector:~/ooobasic3$ mysql -hacamas -ubainm -pmypassword sub main
accounts sql1
mysql > create database accounts; end sub
create table accounts.customer (id int auto_increment, Sub sql1
>>

www.linuxformat.ru LXF8(82) АВГУСТ 2006 81


УЧЕБНИК OOo Basic: базы данных

Dim RowSet
«СВОИ Ж RowSet = createUnoService(“com.sun.star.sdb.RowSet”)
БЕЗУМСТВА ИХ RowSet.DataSourceName = “Accounts”
И ПОГУБИЛИ» RowSet.User=”bainm”
RowSet.Password = “password”
Удивлены выбором имен хос- RowSet.Command = “SELECT count(*) c FROM item”
тов? Они из Илиады Гомера.
RowSet.execute()
При всей моей любви к Симпатичное окошечко управляет вашими отчетами.
RowSet.next()
Властелину колец (источник
MsgBox “There are “ + rowSet.getString(1) + “ items”
большинства имен хостов) я
нахожу удивительным, что ис- End Sub Dim RowSet
тория из бронзового века так Отлично, теперь рассмотрим следующий пример: Sub Main
схожа с сегодняшним днем и Dim RowSet connectToDatabase (“Accounts”, “bainm”, “kawasaki”)
что человечество ничуть не из- Sub Main loadNewFile
менилось за этот долгий срок. connectToDatabase (“Accounts”, “bainm”, “kawasaki”) createCustomerReport
sql1 End Sub
End Sub Sub createCustomerReport
Sub connectToDatabase(database as string, username as string, password updateRowSet(“SELECT id, surname, firstname FROM
as string) customer”)
RowSet = createUnoService(“com.sun.star.sdb.RowSet”) while RowSet.Next()
RowSet.DataSourceName = database add_paragraph(“Customer No. “ + _
RowSet.User = username rowSet.getString(1) + “ “ + rowSet.getString(2) +
RowSet.Password = password “ “ + rowSet.getString(3))
End Sub wend
Sub updateRowSet(sql as string) End Sub
RowSet.Command = sql Вот и вся любовь. Процесс прост: посылаете запрос в базу данных, а
RowSet.execute() затем отображаете результат в документ. Конец истории? Вообще-то не
End Sub совсем. В LXF80 мы обнаружили: никто не любит менять функцию Main
Sub sql1 под создание каждого нового отчета – ну разве что мазохисты. И снова,
updateRowSet(“SELECT count(*) c FROM item”) ключевым моментом является создание диалогового окна для управле-
RowSet.next() ния требуемыми работами.
MsgBox “There are “ + rowSet.getString(1) + “ items” Вам уже не понадобится вручную набирать содержимое элемен-
End Sub тов в виде списка. Нет, на этот раз вы загрузите их прямо из базы
Теперь понятно, как легко расширить функциональность макроса. данных. Представим, что вы добавили элемент list box и назвали его
Взгляните: lstCustomers в диалоговом окне dlgAccounts. Чем его загружать? Вы
Sub sql2 меня опередили: можно послать запрос в базу данных на получение
updateRowSet(“SELECT id, surname, firstname FROM списка покупателей:
customer”) updateRowSet(“SELECT surname, firstname FROM
while RowSet.Next() customer”)
MsgBox “Customer No. “ + rowSet.getString(1) + Теперь в цикле переберите набор записей и загрузите их в элемент
“ “ + rowSet.getString(2) + _ list box:
“ “ + rowSet.getString(3) lstCustomers.AddItem(rowSet.getString(2) + “ “ + rowSet.
wend getString(1), i)
End Sub Просмотрите процедуру loadlstCustomers, расположенную на
нашем диске, чтобы разобраться, как она работает.
Написание отчетов Новый элемент list box пригодится как фильтр для создания про-
Мы увидели, что с помощью макроса легко получить доступ к базе извольных отчетов. Допустим, вам захотелось увидеть все предметы,
данных и отобразить результаты. Но пока не увидели ничего такого, купленные определенным покупателем – ну так используйте свойство
чего нельзя сделать столь же легко из командой строки. Вспомните selectedItem из list box и получите выбранный текст, а затем примени-
LXF80: там мы осуществляли запись напрямую в документы OOo Writer. те его для создания SQL-запроса:
Видимо, неглупо будет аналогично поступить с информацией из нашей sql = “ select title,value from customer, item “ + _
базы данных. “ where cutomer.id = item.customer_id “ + _
“ and concat(customer.firstname,concat(‘ ‘,customer.surname))

«Я УВЕРЕН: ВЫ ПОЙМЕТЕ, = ‘” + _
lstCustomers.selectedItem +”’”

ЧТО ВСЁ ЭТО ОЧЕНЬ ПРОСТО....» Ешё лучше встроить SQL в функцию. Зачем? Таким образом вы
сможете использовать запрос в любой процедуре без необходимости
переписывания кода. Теперь добавьте в окно кнопку, ассоциируйте с ней
Замечательно то, что мы можем делать впечатляющие вещи процедуру и начинайте пользоваться. Для начала сделайте процедуру,
добавкой всего нескольких строк кода. Мы уже разбирали процедуру выводящую на экран окно с вашим построенным SQL-запросом. Теперь
loadNewFile (мы познакомились с ней в LXF80 и модифицировали в используйте SQL для получения нового набора записей и запишите
LXF81) для создания нового документа Writer, и у нас есть процедура итог в документ Writer. cmdItemReport с нашего диска покажет вам
add_paragraph для записи в документ (не пугайтесь, весь нужный код это в действии.
содержится на прилагаемом диске). Надо только добавить процедуры Я уверен: вы поймете, как всё это просто (запомните хорошенько:
для создания отчетов по информации в базе данных. Вот простой спо- это просто), и автоматизация извлечения информации из базы данных
соб создания документа, содержащего список всех покупателей в базе в документ OOo Writer тоже проста. Вас, наверное, не удивит, что дан-
данных Accounts: ные можно передавать и в таблицу Calc. Взаимодействие с базой дан-

82 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


УЧЕБНИК OOo Basic: базы данных

ных происходит таким же образом. Единственное отличие – вы должны where item.author_id = author.id
писать в отдельные ячейки, а не в абзацы, а это даёт даже больше гиб- and item.media_id = media.id;
кости в отображении вашей информации. Используйте этот SQL-запрос в процедуре заполнения таблицы
А теперь я вас покидаю – придумайте сами, что теперь делать: всё результатом запроса – изучите showFullLibrary на диске, чтобы понять,
необходимое мы обсудили в LXF80, LXF81 и в этом выпуске. И если вы как это работает (там же вы найдете SQL-запрос для создания базы
всё ещё в тупике, то загляните в раздел «Журнал» на диске – готовые данных и пример файла /etc/odbc.ini). Внимательно посмотрев на
программы уже ждут вас не дождутся. этот макрос, вы обнаружите, что в нем не содержится жестко заданного
числа столбцов, когда осуществляется запись в документ; вместо этого
Медиа-библиотека для создания цикла используется свойство RowSet.Columns.Count. И
На закуску рассмотрим простое приложение – оно поможет вам хра- что? А вот что: неважно, если вы измените число записей, получаемых
нить и просматривать список всех ваших CD- и DVD-дисков, пластинок в запросе – макрос автоматически вставит правильное число столбцов
или книг. в таблицу.
Начните с создания таблиц в вашей базе данных. Вам придется
задаться вопросом: работать ли с отдельной базой данных для каждого Фильтрация данных
проекта или поместить все таблицы в одну базу? Я бы порекомендо- Так и слышу ваш крик: «Да не хочу я видеть все, что содержится в базе
вал первое – так проще управлять информацией. Однако, выбрав этот данных! Мне надо смотреть только CD-диски, или только книги, или
метод, не забудьте добавить запись о новой базе в /etc/odbc.ini и только работы одного художника». Что ж, легко – если вы создадите
добавьте ее как новый источник данных в OpenOffice.org. Понадобится новую форму, то можете добавить на нее несколько элементов list box
также подсказать макросу, чтобы он использовал новую базу данных – и заполнить их из таблиц author и media (так же, как мы сделали в при-
поменяв connectToDatabase (“Accounts”, “bainm”, “kawasaki”) на мере с покупателями). Элементы list box можно использовать как филь-
connectToDatabase (“library”, “bainm”, “kawasaki”). тры для построения запроса. На диске, showFilteredLibrary показывает,
Далее: не пытайтесь вбить всё в одну таблицу – получите только как использовать опциональный ввод для построения такого фильтра и
проблемы. Какие именно? Что ж, давайте рассмотрим простой пример – последующего отображения результата в таблицу.
поле, содержащее имя. Вы-то знаете, что Б Гейтс, Уильям Гейтс и Чтобы добавить в базу новые предметы, авторов или типы носите-
Властелин Зла означают одно и то же лицо, но ваш компьютер не зна- лей, вам пригодится выражение insert, например:
ет, и это затруднит процесс создания запроса. Взгляните на таблицу: insert into library.author (name) values (‘Hawkwind’);
Таблица: item insert into library.item (title,author_id,media_id) values (‘The Ambient
Anarchists’,4,1);
Title (Название) Author (Автор) Можно это сделать и из командной строки, но приобретённые зна-
Колыбель для кошки Курт Воннегут ния помогут вам создать форму, которая выполнит всю
работу за вас.
Бойня номер 5 К Воннегут
Взамен можно использовать две таблицы – одна с описанием предме- Домашнее задание
тов, другая с авторами: Задание на месяц (и ника-
Таблица: item ких экивоков типа «если
у вас будет время, то...» –
Title (Название) Author (Автор) это нужно не мне, а вам):
Табакерка Багомбо 1 проанализируйте свои каж-
додневные задачи и выбе-
Сирены Титана 1
рите те, которые можно авто-
Таблица: author матизировать рассмотренным нами способом.
Не ради увеличения производительности и тому подобной ерун-
ID Name (Имя) ды, а исключительно из лени. Рекомендую также взглянуть на запросы
1 Курт Воннегут-младший update – почему бы не записывать данные в базу так же, как и читать
их из нее? LXF
Таким образом, вместо запоминания всевозможных написаний имени
автора вы обойдётесь его идентификационным номером. Аналогично,
вам не надо хранить слова cd, lp, book в таблице, содержащей заголо-
вок. Вместо этого можно использовать что-то вроде:
Таблица: item

Title Media ID (Тип носителя)


Бомба для мозгов 2 ЧЕРЕЗ
Дзен и искусство ухода
за мотоциклом
1
МЕСЯЦ
Советы по OOo Basic
Таблица: media (и может быть, я расскажу вам
про эти запросы update).
ID Type
1 Book
2 CD
Теперь с помощью SQL-запроса вы можете получить из базы данных
полезную информацию:
select item.title, author.name, media.type
from item, author, media

www.linuxformat.ru LXF8(82) АВГУСТ 2006 83


УЧЕБНИК Разработка собственной 3D-игры

РАЗРАБОТКА СОБСТВЕННОЙ 3D-ИГРЫ

Ogre Создаем ландшафт для 3D-игры


ЧАСТЬ 1 Пол Хадсон начинает это долгожданное руководство с описания ландшафта.

Что приятно в написании статей для Linux Format так это именно вы хотите написать (дико извиняюсь перед программистами-
необходимость расширять собственный кругозор для самой экстремалами). Поэтому я задам особенности предполагаемой игры: что
возможности создания и описания новых проектов для она будет делать, как выглядеть, как в нее играть, и так далее.
НА ДИСКЕ ваших тренировок. Можете себе представить, к примеру, как я был • Это будет стрелялка от первого лица (First-Person Shooter, FPS). Я
озадачен, когда меня попросили заняться серией статей о программи- знаю, существуют тысячи FPS, а все потому, что их сравнительно лег-
• Ogre 3D 1.2
• DevIL 1.5
ровании 3D-игр. Не то что я не люблю писать о Linux: на самом деле, ко порождать, они дают разгуляться фантазии и нуждаются в безумно
• zzlib 0.12 очень люблю. Но больше я, конечно, люблю играть в игры, потому как красивой графике. Я не намерен ничего придумывать за вас, но надеюсь
• Драйверы для видеокарт игры – это весело по определению. И вдруг оказалось, что веселее, чем создать игру, простую в разработке и классную на вид!
• Исходный код примеров играть в игры, только одно (по крайней мере, на компьютерах): их созда- • Это будет однопользовательская игра с неким подобием искусственно-
статьи вать! Обладание неограниченной исполнительной властью над жизнью го интеллекта, чтобы добавить сложности.
проекта, несущего счастье миллионам* . • Действие будет происходить на обширной открытой местности, игро-
Поэтому мы, в Лаборатории LXF, составили базовое руководство по ки будут ее исследовать. Для разнообразия, они смогут передвигаться
проектированию, разработке и выпуску вашей собственной 3D-игры. У на транспорте, а может, и входить в помещения. Так игра будет больше
вас, вероятно, уже руки чешутся поработать, но не спешите – в данной похожа на Quake.
статье я сначала поведаю об игре вообще и о программах с библиоте- • Игра будет написана на С++, по принципу «лишь бы работало». За
ками – необходимом инструментарии для ее разработки, а уж потом совершенством гнаться не станем. Место в журнале ограничено, и я
напущу вас на решение библейски-первозданной задачи: наколдовать лучше покажу вам 5 строк нормально работающего кода, чем 50 строк
для игры небо и землю. идеального.
• Игра будет кросс-платформенной. Мы будем разрабатывать ее в SUSE
Барьер номер один 10.1, но она должна работать и на любом другом дистрибутиве Linux.
Прежде чем браться за написание кода – или даже за установку нуж- Будет здорово, если игра также будет работать в Windows и OS X, но это
ного для кодирования программного обеспечения, надо сообразить, что не главная наша цель.
• Игра будет выпущена под лицензией GPL.
*Миллионам? Да, люблю метить высоко. Поэтому ничего не замечаю, пока не грохнусь.

84 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


УЧЕБНИК Разработка собственной 3D-игры

Напоминаю, что это руководство по программированию 3D-игр, а не


по С++, математике или Blender. Поэтому я сфокусируюсь на 3D-графи- ЗНАКОМЬТЕСЬ С ВАШИМ ГЕРОЕМ: ЧЕД-В-БЕГАХ
ке, прихватывая готовые модели и элементы игры везде где только мож-
но. Если вы знаете Blender – прекрасно: сможете создать собственное Хотя большинство стрелялок от первого лица задействует арсенал тяжелого боевого оружия,
творение. Если нет, не переживайте: все, что вам нужно – способность проходят по формуле «целься, стреляй, беги, опять позволив нам поупражняться в спецэффектах.
стреляй», они все-таки пытаются обставиться хоть Заинтересовались? Еще бы!
программировать.
каким-то сюжетом. И вот наш сюжет, в виде
Наша цель состоит в создании законченной игры. Для этого мы
краткого представления персонажа:
воспользуемся графическим движком Ogre 3D и SDL для аудио и про-
чих нужд. Однако потребуется еще заполнить немало пробелов, остав- Десять лет назад лихой спецназовец был при-
ленных SDL и Ogre. говорен судом к тюремному заключению за
преступление, которое не совершал, но быст-
ренько сбежал из-за колючей проволоки к
Список требований нелегалам Сан-Франциско. Сейчас, будучи все
Теперь вы знаете, что мы хотим запрограммировать, поэтому необхо-
еще в розыске, он работает солдатом удачи.
димо привести в боевую готовность вашу систему. Для программи- Если у вас проблемы, и помочь вам некому,
рования потребуется установить следующее ПО (заметим, что здесь сумейте отыскать и нанять... Чеда!
указаны лишь минимально допустимые версии; более новые версии
будут предпочтительнее): Наш герой Чед приговорен к повешению и
находится в бегах. Игра будет патетически
• Automake 1.6
называться «Висельник Чед», хотя в идеале наш
• Autoconf 2.5
герой избежит казни, изувечив всех на своем пути.
• make 3.8 Он будет бороться против плохих парней
• libtool 1.4 (в основном против тех, что для нас заготовили
• pkg-config 0.17.2 разработчики Ogre), преодолевая всяческие
• GCC 3.4 трудности, для чего потребуется настоящий героизм
• g++ 3.4 (но главным образом пальба). Кроме того, он
• cpp 3.4
Приведенные названия должны совпадать с теми, что вы найдете в
менеджере пакетов вашего дистрибутива. Исключение может составить Может оказаться, что для вашего ядра не найдется скомпилированного
pkg-config, иногда называемый pkgconfig. интерфейса, поэтому нажмите Yes, чтобы поискать драйвер на сайте
Так как мы собираемся работать с играми, понадобятся дополни- Nvidia. Если его там нет, снова нажмите OK и скомпилируйте собствен-
тельные пакеты, а именно: ный драйвер. Наконец, будет предложено отредактировать за нас файл
• SDL 1.2.9 настроек X – соглашайтесь, да не забудьте потом проверить файл /etc/
• SDL_Mixer 1.2.6 X11/xorg.conf и убедиться, что используется драйвер ‘nvidia’ (а не ‘nv’
• Mesa или, того хуже, ‘vesa’). По завершении установки наберите init 5 – верне-
• FreeType2 2.1 тесь обратно в X. Откройте терминал и запустите glxgears. Секунд через
• libpng пять вы увидите результаты тестирования – если результат меньше 1000
• libmng кадров в секунду, это сильно повредит нашей игре.
• libtiff Для более продвинутой работы с графикой можете установить
• libjpeg библиотеку Cg (здесь некогда про нее рассказывать, но вреда от нее
Как и в первом случае, все вышеозначенные библиотеки можно всяко не будет). ‘Cg’ – сокращение от ‘C for Graphics’, а цель библиоте-
найти в менеджере пакетов. Проверьте, что вы устанавливаете как ки – облегчить создание продвинутых визуальных эффектов. Вы може-
саму библиотеку, так и версию для разработчика, иначе вы сможе- те скачать инструментарий Cg со страницы Nvidia для разработчиков
те только запускать игру, но не разрабатывать свою собственную. по адресу http://developer.nvidia.com/page/cg_main.html. Процесс
Например, помимо пакета SDL существует пакет SDL-devel (или SDL- ее установки лишен особого полета: скопировать в домашний каталог
dev), который также надо установить. в подкаталог Cg, извлечь с помощью tar xvfz Cg-1.4.1_x86.tar.gz,
Теперь нам надо установить действительно особые программы, переключиться в суперпользователя и запустить cp -R usr /.
предназначенные для разработки игры. Этот список гораздо короче – и, Установка zziplib – тоже всего-навсего извлечение и запуск
возможно, не все они найдутся в вашем менеджере пакетов. Нам пона- ./configure, make и make install. Если кому интересно, zziplib предо-
добятся следующие: ставляет быстрый и удобный способ манипулирования zip-файлами, а
• zziplib 0.12 именно в них Ogre хранит множество своих ресурсов.
• DevIL 1.5 Далее идет DevIL – мультиплатформенная библиотека для работы с
• Ogre 3D 1.2 изображениями, используемая Ogre. Она находится на диске к журналу,
• Приличный драйвер видеокарты так что скопируйте ее в ваш домашний каталог и запустите
tar xvfz DevIL-1.6.8-RC1-src.tar.gz
Мы разместили все эти пакеты на диске (включая последние драй- cd DevIL-1.6.8-RC1
вера Nvidia и ATI для Linux) и расскажем, как их установить. Начнем с ./configure
драйвера видеокарты. У меня MSI Nvidia GeForce 7900, поэтому весь make
код, описанный здесь, будет работать с картами Nvidia. su
make install
Убойный графический драйвер exit
Чтобы установить драйвер Nvidia, нажмите Ctrl+Alt+F1 – попадете в Теперь осталось главное событие: Ogre. Скопируйте его в домашний
терминал. Переключитесь в суперпользователя и наберите init 3, что- каталог с диска и наберите:
бы завершить работу X. Далее скопируйте драйвер с нашего диска tar xvfj ogre-linux_osx-v1-2-0.tar.bz2
в свой домашний каталог и запустите sh ./NVIDIA-Linux-x86-1.0- cd ogrenew
8756. Запустится программа установки, с текстовым интерфейсом, и ./bootstrap
вас попросят принять лицензионное соглашение. Если драйвер у вас ./configure (или >>
уже был, вам надо нажать Yes, чтобы его удалить. ./configure --with-platform=GLX если используется Nvidia)

www.linuxformat.ru LXF8(82) АВГУСТ 2006 85


УЧЕБНИК Разработка собственной 3D-игры

>> make
su
функцию initialise().
CChadGame::CChadGame() {
make install m_Ogre = new Root;
ldconfig this->loadConfig();
exit if(!m_Ogre->showConfigDialog()) return;
Список требований выполнен – можно начинать делать игру, ура! m_Ogre->initialise(true, “Hanging Chad”);
this->initialise();
Время кодировать this->createScene();
Настал долгожданный момент первой «вылазки» в С++ ! Наш первый }
урок – не простое введение или руководство по установке: мы собира- Root – базовый класс Ogre и родитель остальных наших объ-
емся написать сердцевину нашего движка. Цель урока – создание неко- ектов из Ogre. Именно Root отвечает за прорисовку и передачу
го ландшафта, по которому можно перемещаться с помощью мыши, и обратных вызовов к обработчику кадров. Именно объект Root пока-
неба над ним. Большая часть кода этого урока состоит из основных зывает диалог конфигурации пользователю (через вызов m_Ogre-
начальных установок Ogre: инициализации движка, обработки ввода >showConfigDialog()), а также вежливо завершает игру, когда мы
и т.д. В следующих выпусках уже добавятся красивости – например, сигнализируем, что с нас хватит. Первое, что мы создаем, и последнее,
управление с клавиатуры, туман и свет, анимация и спецэффекты; а что удаляем – объект Root.
пока займемся черновой работой.
Вооружившись этими данными, откройте текстовый редактор и
настучите следующий код в chad.h, основной заголовочный файл
нашего игрового класса:
«ИСПОЛЬЗУЙТЕ МЫШЬ, ЧТОБЫ
#include “Ogre.h” ОГЛЯДЕТЬСЯ ВОКРУГ – НАШЕ ТВОРЕНИЕ
#include “SDL/SDL.h”
#include “SDL/SDL_mixer.h” ДОВОЛЬНО МИЛО!»
using namespace Ogre;
#include “chadframelistener.h”
class CChadGame { В функции CСhadGame::initialise() настраиваются менеджер сце-
public: ны, камера, область просмотра, обработчик событий и обработчик кадра.
CChadGame(); В ней же происходит вызов функции InitialiseAllResourcesGroups(),
~CChadGame(); загружающей все ресурсы Ogre. Я одолжил стандартные файлы кон-
Читатели PC Plus, возможно,
bool loadConfig(); фигурации (и их загрузчик, CChadGame::loadConfig()) из Ogre SDK помнят Чеда, но сейчас он в
void initialise(); и немного их подправил, чтобы они работали в нашей игре. Загрузчик бегах и наверняка переодет в
int run(); конфигурации только читает текст: разборки синтаксиса не происходит, неброскую одежду, чтобы не
void createScene(); пока не вызовется initialiseAllResourcesGroups(). Если вы забудете бросаться в глаза.
Root* m_Ogre; вызвать эту функцию, то наверняка столкнетесь с проблемами!
EventProcessor* m_EventProcessor;
CChadFrameListener* m_FrameListener; Делай, что я сказал...
SceneManager* m_SceneMgr; Осталось написать обработчик кадра, в который будут посылаться и
Camera* m_Camera; обрабатываться события от Ogre. Здесь интерес представляют три фун-
Viewport* m_Viewport; кции, одна из которых говорит почти сама за себя. Это конструктор, и он
}; сохраняет ссылку на устройство ввода, камеру и менеджера сцены для
Первые три выражения #include включают наши стандартные биб- последующего использования.
лиотеки, хотя SDL мы пока трогать не будем. Четвертый #include пред- Другая интересная функция – frameStarted(), вызываемая перед
назначен для обработчика кадра –скоро мы к нему вернемся. Далее тем, как Ogre начнет обсчитывать кадр. Она перехватывает ввод и
идет главный класс нашей игры, ответственный за большую часть ее проверяет необходимость ответа на ввод от пользователя. В данный
организации. Не буду выпендриваться с объектно-ориентированным момент это значить «если нажали Escape, то возвратить false». Это
программированием, хотя как раз организации объектный подход и спо- значение завершит цикл прорисовки Ogre, и произойдет выход из
собствует – как я уже сказал, нам важно не изящество кода, а удобство игры. Третья функция – mouseMoved(), дублированная также в
игры; итак, не удивляйтесь, что я браво игнорирую инкапсуляцию объ- mouseDragged(); она вызывается при любом перемещении мыши,
ектов ради экономии места! когда нам необходимо повернуть камеру в соответствии с парамет-
Класс CChadGame содержит обработчик событий и обработчик рами перемещения.
кадра, наш менеджер сцены (отслеживающий все объекты), камеру Оставьте пока функцию createScene() пустой – и ваша програм-
(позицию игрока) и область просмотра (то, что мы видим на экране). ма, наконец, готова к сборке. Однако вручную эту работу выполнять
Позже в нем появится информация об игроке, очках, картах и многое довольно тягостно, поскольку необходимо подключить библиотеки
другое, но сейчас все предельно просто. SDL и Ogre. Поэтому обратимся к Makefile, чтобы вы могли набрать
Большая часть работы совершается обработчиком кадра и менед- make и наслаждаться, любуясь, как вкалывают за вас. Наберите
жером сцены, во многом благодаря Ogre. Задача нашего класса следующий текст в файл Makefile – но очень аккуратно, потому
CChadGame состоит в том, чтобы установить каждую сцену и обра- что пробелы – это на самом деле символы табуляции!
батывать любые изменения, например, передвижение игроков. Однако DEFINES =
менеджер сцены параллельно будет отслеживать все объекты в нашей LIBS = Ogre
игре и обеспечивать их корректную прорисовку (с применением опти- CXX = g++
мизации). Нашу заботу о вводе данных от пользователя любезно берет CXXFLAGS = $(shell pkg-config --cflags $(LIBS))
на себя обработчик событий Ogre. Затем эта информация посылается в $(DEFINES) -I/home/paul/Desktop/Ogrenew/Samples/
обработчик кадра, который переваривает изменения. Common/include
Реализация класса CChadGame находится в файле chad.cpp на LD = g++
нашем диске, но он слишком велик, чтобы напечатать его здесь, поэто- LDFLAGS = $(shell pkg-config --libs $(LIBS)) -lSDL -lSDL_
му отразим только основные моменты: конструктор (CChadGame()) и mixer -lpthread

86 LXF8(82) АВГУСТ 2006 www.linuxformat.ru


УЧЕБНИК Разработка собственной 3D-игры

ЗА КУЛИСАМИ...
Две строчки кода для генерации ландшафта кода. Вы видите строчку вызова и думаете: «Ага,
набрать легко, но в ответ на них Ogre сгенерировал тебя-то мне и надо», копируете ее и вставляете
для нас аж 28000 треугольников. За крутыми стро- сразу в нескольких местах. А потом замечаете, что
ками упрятана напряженная работа – наша тестовая в свернутом коде на самом деле 1000 строк, и вы
машина показала в среднем 600 кадров в секунду, чуть ли не удвоили объем своей программы!
а на менее мощном компьютере результат мог быть В Ogre, добавление одной строки может вылить-
и хуже. ся в тысячи, а то и миллионы новых треугольников,
Здесь та же проблема, что и у интегрированных и всех их надо отобразить на экране. Поэтому будь-
сред разработки, поддерживающих сворачивание те осторожны с поправками!

1) Ogre позаботился об окне системных настроек, оно создается cfg, который вы можете настроить по своему усмотрению (или позво-
вызовом showConfigDialog(). лить другим это делать), причем для этого не придется переписывать
ни строчки кода.
all: Если вы все еще не пришли в восторг, добавим немного неба. Небо
$(CXX) $(CXXFLAGS) $(LDFLAGS) -o chad chad.cpp предусмотрено в трех моделях: плоское, коробка или купол (в порядке
clean: возрастания степени реализма и, соответственно, потребления ресур- Наш маленький мир, в виде
rm -f chad сов). Плоское небо (по сути, многоугольник, висящий над игроком) поч- каркасной модели.
ти не нагружает GPU, но выглядит убого – наш ландшафт не упрятывает
Время поколдовать линию горизонта, и сразу заметно, что оно именно плоское. Модель-
Все самое нудное позади, ваша «игра» (скопированная с диска к жур- коробка ликвидирует данный недостаток, помещая игрока внутрь куба
налу) должна скомпилироваться и запуститься – просто наберите make. и отображая небо на каждую его грань. Потребление ресурсов шести-
Когда она запустится, возникнет окно настроек Ogre (см. рис. 1). Рядом кратно возрастает, зато уж небо есть везде. У последней модели – купо-
с пунктом Select Render вы увидите Select One. Нажав на него, вы ла – отсутствует «дно», а на «покрышку» для пущей иллюзии натянута
получите список вариантов, доступных в вашей системе, где почти текстура. Отсутствие дна может создать проблему, если игрок глянет
наверняка фигурирует только OpenGL Rendering Subsystem. Ogre все вниз, но там уже есть ландшафт, так что все в порядке.
равно, как отрисовывать изображения, поэтому под Windows ваша игра Код для невероятно сложной иллюзии выглядит так:
может использовать DirectX. m_SceneMgr->setSkyDome(true,”Examples/CloudSky”);
Окно настроек позволяет сделать многое, например, установить раз- Да, да, это все! – теперь перекомпилируйте и запустите игру.
решение экрана или выбрать полноэкранный режим; и Ogre автомати- Наслаждайтесь. Используйте мышь, чтобы оглядеться вокруг – вы уви-
чески сохранит ваш выбор в Ogre.cfg для дальнейшего употребления. дите довольно милую картинку, как на рис. 3. Важнее всего, что наш
Настроив графику, нажмите Accept, и ваша «игра» начнется. Я небольшой продукт не так плох для начала! Теперь осталось добавить
написал слово «игра» в кавычках, потому что на данном этапе это клавиши WASD для перемещения, немного тумана, пару источников
пустой экран – зрелище не шибко захватывающее, но по крайней мере света, злодеев и ф