You are on page 1of 108

Debian 5.

0 Нетбуки Cuneiform LXFDVD


PCLinuxOS 2009.1
Удобство Mandriva
и мощь Debian
ПЛЮС: CentOS 5.3
Xfce 4.6 Clonezilla

Реплицируем винчестер
Главное в мире Linux Встречайте Clonezilla с. 82
Май 2009 № 5 (118)

Ищем идеальный Linux


Полное руководство
по выбору
правильного
дистрибутива

World of Goo
Ситуация с играми в Linux
внезапно улучшилась с. 10

Intel ставит на Linux


Станьте мобильнее с новой
платформой для нетбуков с. 42

Sweet Home 3D Правим сайты Subversion


Спланируйте жилье С Greasemonkey и Firefox Система, которой по зубам
от стен до мебели с. 50 это легко с. 62 не только код с. 66

Мы сумели выпустить релиз В каталоге агентства «Роспечать» — подписной индекс 20882


В каталоге «Пресса России» — подписной индекс 87974

с оптимальным сочетанием
надежности и новизны.
Кристиан Перье про Debian GNU/Linux 5.0 Lenny с. 32
 Приветствие

Главное в мире Linux

Что мы делаем
Мы поддерживаем открытое сообщество,
предоставляя источник информации и площадку
для обмена мнениями.
Мы помогаем всем читателям получить от Linux максимум
пользы, публикуя статьи в разделе «Учебники»: здесь каждый
найдет что-то по своему вкусу.
Мы выпускам весь код, появляющийся на страницах раздела
«Учебники», по лицензии GNU GPLv3.
Мы стремимся предоставлять точные, актуальные
и непредвзятые сведения обо всем, что касается Linux
и свободного ПО.

Кто мы
В этом месяце мы перепробовали всевозможные Linux'ы,
а потом поинтересовались у наших экспертов: а какая,
по-вашему, группа пользователей более других ну ж дается
в специализированном дистрибу тиве?
Выбираем Linux
«Какой Linux мне поставить?» Наверняка ка ж дый из нас хотя бы раз
в жизни слышал этот вопрос. И те, кто пытались дать на него ответ, пре-
красно знают, насколько сложное и неблагодарное это дело – рекомен-
довать дистрибу тив человеку, который толком не знает, чего он хочет. «А все же
Грэм Моррисон Майк Сондерс Нейл Ботвик
По-моему, сейчас Суперзлодеи. Странные ребята, ко- Fedora лучше, чем Ubuntu. Чем? Чем Ubuntu!».
самое время выпус- Он будет построен торым стабильность Поэтому мы обычно не публикуем в журнале рейтинги дистрибу тивов. Было бы
тить специальный на EvilWM и включать ПО важнее стабиль-
дистрибутив для истинно суровые ного релиз-цикла.
странно говорить, что A – №1, Б – №2 и так далее, не конкретизируя, какие задачи
пользователей приложения вроде Его можно назвать должна решать та или иная система. Linpus, например, справляется с ролью «начин-
Gentoo. Emacs. Debian или еще как-то. ки» Acer Aspire One (хотя и тут найдутся желающие поспорить), но я вряд ли стал бы
рекомендовать его для поддержки web-сервера. Да и в рамках одной и той же ниши
выбор дистрибу тива (как и одежды, машины, мест отдыха) определяется, в конеч-
ном итоге, личными предпочтениями. Одному нужна работа «из коробки», и он го-
тов мириться с тем, что создатели системы уже приняли за него большинство ре-
шений, второй готов платить за право влезать во внутреннюю механику обязанно-
Эфраин Эрнандес- Эндрю Грегори Энди Ченнел стью заниматься этим постоянно – выбор каждый делает сам.
Мендоса Слишком много сис- Я как-то не заметил,
Задача же журнала – помочь вам сделать правильный выбор. Следуя совре-
Мексиканцы – нам тем ориентировано что Lesbian Linux –
тоже нужна своя сис- на интеллектуально- это шутка. Кто, как менной методологии, мы подробно опишем сценарии использования и дистрибу-
тема. Если вы готовы продвинутых. Нам, не он, сделает меня тив, который (на наш взгляд) удовлетворяет поставленным условиям лучше всего
взяться за Mexix, дуболомам, тоже счастливым?
пишите мне. нужна своя. (а также альтернативы ему). Последний раз мы обращались к этой теме в LXF103 –
с тех пор кое-что изменилось, и мой любимый Linux даже удостоился строчки в хит-
параде. Нет, не в номинации «Лучшая система для главного редактора»...

Валентин Синицын, главный редактор


info@linuxformat.ru
Дэвид Картрайт Энди Хадсон Д-р Крис Браун
Бородатые традицио- Ниндзя, пираты Нужен дистрибутив
налисты в сандалиях. и вампиры захватили с окнами-сердечками
Только командная Интернет, так что и меню в виде розо-
строка и зеленый я хочу видеть дистри- вых лент. Назвать его
текст на черном фоне. бутив для маленьких можно Romantix.
котяток.

Как с нами связаться


Письма для публикации: letters@linuxformat.ru
Подписка и предыдущие номера: subscribe@linuxformat.ru
Сюзан Линтон Джульетта Кемп Маянк Шарма Техническая поддержка: answers@linuxformat.ru
Волшебники. Пред- Галльским героям Новообращенным ли- Проблемы с дисками: disks@linuxformat.ru
ставьте, как круто нужен Asterixux. нуксоидам нужны уяз- Общие вопросы: info@linuxformat.ru
было бы увидеть Asterixux – когда вол- вимые и нестабиль-
эффекты Compiz шебных зелий не хва- ные системы, чтобы Web-сайт: www.linuxformat.ru
в дистрибутиве тает, чтобы держать отвыкание от Windows Адрес редакции: Россия, Санкт-Петербург, Лиговский пр., 50, корп. 15
Box'o trix. римлян в узде. было плавным.
Телефон редакции: (812) 309-06-86. Дополнительная информация на стр. 104

Май 2009 Linux Format 1


Содержание
Весь номер – прямо как на ладони: приятного чтения!

Обзоры
World of Goo .............................. 10
Пришел, увидел, победил: коммерческая игра
Найдите
вышла для Linux и тут же сорвала награду
Top Stuff! Мы поражены.

Acronis True Image ................... 12


Система резервирования уровня предприятия,
пытающаяся пододвинуть открытые
лучший Linux
Полное
эквиваленты.

Debian 5.0 ................................... 13


Да, он наконец-то вышел – троекратное ура
разработчикам!
руководство
по выбору
правильного
дистрибутива
с. 22
Это мир. В нем все липкое. Это World
of Goo, и здесь хорошо.

Asgard Shuttle X27 ................... 14


Чтозаштука... Debian 5.0: Lenny
По такому имечку не сразу и догадаешься,
что это мини-ПК – и, на самом деле, весьма
Moblin уже с нами с. 32
Intelзаняласьразработкой
удачный. собственнойLinux-платформы:
кчемубыэто?с. 42

Асгард тихий и маленький — в общем,


полная противоположность Тору!

Сравнение: дистрибутивы Люди говорят


для нетбуков
EeeXubuntu ................................ 19 Душевное спокой­
GOS .............................................. 20
Pupeee ........................................ 18 ствие не измеряется
Xandros ....................................... 17 в гигабайтах,
а могло бы.
Маянк Шарма Инженер человеческих душ с. 82

2 Linux Format Май 2009


PCLinuxOS 2009.1
и CentOS 5.3
Дистрибутивы для настольного ПК
и для сервера
World of Goo Демо-версия для Linux
Xfce 4.6 Самый быстрый из настоящих рабочих столов
Clonezilla Резервируйте данные задаром
...и еще много чего еще! с. 98

Читайте в этом номере... Учебники


Начинающим

Sun Tech Days 2009 .................. 6 Sweet Home 3D ......................... 50


Спроектируйте себе новый дом, не покидая
Linux, а потом заведите блог на WordPress.
Репортаж с конференции разработчиков, проходившей
в Санкт-Петербурге за 10 дней до приобретения
Sun Microsystems корпорацией Oracle.

Компьютер может читать! ... 36


Одушевление Linux-машин продолжается,
и сегодня мы расскажем вам о системах оптического
Дом, который построил... Ну, на экране
распознавания символов Cuneifrom и Tesseract. мы можем себе такое позволить.

ЛОРу 10 лет ............................. 40 Acer Aspire One


Свежее веяние ......................... 54
linux.org.ru глазами модератора: эксклюзивное руководство Установите на свой нетбук Ubuntu
по выживанию в стране троллей на страницах LXF! Netbook Remix.

GIMP

Рубрика сисадмина ............... 44 Постер для iPod ....................... 56


Позаимствуем пару трюков у рекламного
отдела Apple, попутно позабавившись с GIMP.
Всегда хотели создать пакет Debian, но стеснялись
Gedit
спросить, как это сделать? Доктор расскажет! Установим расширения .......... 60
Эти новые функции придутся вам по душе!
Firefox
Применим Greasemonkey ....... 62
«Пусть все будет так, как ты захочешь...»

Сети
Постоянные рубрики Subversion ................................. 66
Совместная работа: редактируйте код
и не только.

Клавиатуры
Новости .............................. 4 Ответы ............................ 86 Через месяц ................. 104 Дополнительные кнопки ....... 70
Возврат денег за Vista; Microsoft урегу- Проблемы Linux решены: выбираем Что мы готовим для LXF119.
Настройте мультимедиа-клавиши и управ-
лировала спор с TomTom; что должна Linux, обновляем Linux, выключаем
ляйте всем, чем угодно, прямо с клавиатуры.
уметь правильная файловая система. Linux, удаляем Linux!
Программирование
Что за штука .................. 42 Hotpicks ........................... 92 Исключения в Pthreads .......... 74
Нужна ли нетбукам единая плат- Любите Tomboy, но не в восторге Как обрабатывать исключения, возникающие
форма? Все зависит от того, от Mono? Мы поможем вам избежать в многопоточных приложениях C++?
хотите ли вы победы Microsoft – раздвоения личности.
или ее поражения. Спутник
Ловим волну ............................. 78
Пропустили номер? ...... 48 Диск Linux Format ......... 98 Прикупили комплект спутникового ТВ?
Желаете знать, с чего началась PCLinuxOS 2009.1 для рабочего стола, Узнайте, как смотреть его в Kaffeine или
заинтересовавшая вас серия статей? CentOS 5.3 для сервера, World of Goo MPlayer!
Вам сюда! для удовольствия.
Hardcore Linux
Clonezilla .................................... 82
Открытый инструментарий для резервного
Наша команда всегда копирования и клонирования разделов или
рада подписать вас на LXF: целых дисков.
электронная версия в подарок!

Май 2009 Linux Format 3


Новости

Новости
ГЛАВНые НОВОСТИ: Вернуть деньги за Vista, часть 2 Microsoft договорилась
с TomTom Правильные файловые системы

Я не я, и система
не моя! Рубрику ведет
евгений Крестников

Т
ема возврата денег за предустанов- «Лицензия на использование программ- ми госструк тур по части свободного ПО и,
ленную версию Windows получила ного обеспечения навсегда присваивает- возможно, с разделом федерального бюд-
продолжение. В LXF117 мы гово- ся устройству, с которым вы приобрели жета. А главное, почему антимонопольная
рили, что ФАС РФ нача ла расследование программное обеспечение» в лицензион- служба не обратила внимания на некото-
в отношении Acer, Asus, HP, Samsung, ном соглашении к OEM-версии Vista еще рые особенности лицензионной политики
Dell и Toshiba. Антимонопольная служ- присутствовал. Microsoft?
ба пыта лась выяснить, могут ли покупа- Вернемся к производителям. Ссыла- Ответить на эти вопросы мы попыта-
тели компьютеров отказаться от исполь- ясь на главу Acer в СНГ Глеба Мишина, га- емся в следующих номерах LXF, а в за-
зования OEM-версии Windows и вернуть зета «Коммерсантъ» пишет, что «большин- ключение расска жем еще об одной обще-
потраченные на нее деньги. В конце мар- ство компаний работают в России не как ственной инициативе. Недавно в Сети был
та газета «Коммерсантъ» опубликова ла представительства производителей, а как опубликован меморандум о намерении
результаты: оказывается, Windows пред- представительства аффилиированных создать Российскую ассоциацию свобод-
установлена на 70 % продаваемых в РФ с производителями дистрибьюторов». ного программного обеспечения (РАСПО).
машин, и в случае отказа от нее деньги Естественно, при этом они юридически Членами ассоциации могут стать россий-
не возвращаются. Кто бы мог подумать! ские юридические лица, разрабатываю-
Госслужбе уда лось документально зафик-
сировать очевидный факт. Однако если
«Процедура возврата щие или внедряющие свободное, а так же
совместимое с ним ПО. Миссия организа-
ФАС признает его нарушением антимоно-
польного законодательства, производи-
денег есть только ции – «содействие разработке, внедрению
и популяризации свободного программ-
телям грозят огромные штрафы (1–1,5 % у компании Asus.» ного обеспечения в России, развитие
стоимости проданной техники). Так же со- отечественной индустрии программно-
общается, что процедура возврата денег не обязаны возвращать деньги. Красиво, го обеспечения, основанного на откры-
есть только у Asus, хотя по данным ЦЕСТ ничего не ска жешь. В общем, по резуль- том исходном коде и свободных лицен-
(www.centertest.ru), эта компания занима- татам проверки ФАС вопросов возника- зиях, и ее вхож дение в мировой рынок
ет первое место в рейтинге обращений ет больше, чем было до нее. Кому и зачем разработки программного обеспечения».
гра ж дан. Ана логичную статистику приво- была нужна эта акция? Ведь проблема об- Что же, нам остается только пожелать уч-
дит в своем Живом Журна ле Вла димир Са- су ж дается уже много лет, и ФАС раньше редителям РАСПО удачи в их начинании
довников (sadko4u), однако он отмечает, ей не интересова лась. Подозреваю, что это и перейти к новостям об американских па-
что компания Asus «исправилась». Прав- как-то связано с последними инициатива- тентных войнах.
да, этот вывод Вла димир делает только
на основании результатов проверки – дан-
ных по реальным возвратам у него пока
нет. В разговоре с нами Са довников так же
Контрольная закупка
отметил, что «пальма первенства» по отка- Microsoft Мы позвонили в службу технической под- вводить потребителей в заблу ж дение и сразу отправ-
зам теперь переходит к Acer. держки Microsoft и попыта лись выяснить, можно ли вер- ляет к производителю устройства. Мелочь, а приятно.
Что интересно, к самой Microsoft нуть деньги за OEM-версию Windows. Нам сообщили, что
у ФАС претензий нет: с точки зрения чи- с этим вопросом следует обращаться к производителю Asus В службе технической под держки Asus, куда
новников, во всех проблемах виноваты оборудования, поскольку Microsoft «выключена» из дан- я звонил как обычный потребитель, подтвердили, что
производители. При этом нюансы лицен- ной сделки. Что же, точка зрения вполне обоснован- процедура возврата денежных средств в этой ком-
ная. Особенно если учесть, что лицензиаром в данном пании действительно есть, и назва ли ее конкретные
зионной политики Microsoft, привязываю-
случае является сборщик компьютера, а EULA – не что дета ли (несогласие с EULA и так да лее). Более того,
щие предустанов ленную версию Windows
иное, как договор покупателя с последним. Как видно, специа листы Asus назва ли конкретный срок, в течение
к устройству (LXF113/114), служба де-
позиция MS действительно изменилась: раньше в под- которого будут возвращены деньги – одна неделя
ликатно игнорирует. Конечно, полити- держке заявляли, что Windows можно вернуть только после изъятия у покупателя копии Windows. Так что
ка корпорации могла измениться, но по вместе с компьютером. Сейчас Microsoft не пытается ждем статистики возвратов.
состоянию на 12 апреля 2009 года пункт

4 Linux Format Май 2009


 Новости

Много шума из ничего Новости


короткой строкой
Появился новый червь psyb0t,

П
ервый «патентный» иск Microsoft Конец истории бана лен: спор урегу-
атакующий маршру тизаторы
в последние два месяца бурно об- лирован во внесудебном порядке. Сторо-
и DSL-модемы на базе mipsel. Уязви-
су ж дался российским Linux-со- ны заключили мировое соглашение, со-
мости подвержены web-интерфейс
обществом. Лично мне неясно, почему наш гласно которому TomTom получает доступ
устройств, а так же telnetd или sshd
читатель так неравнодушен к локальным к запатентованным Microsoft технологи-
со слабыми паролями.
проблемам американского законодатель- ям на условиях их частичной оплаты. Кро-
ства. Но если сообщество этот вопрос ин- ме того, компания обязуется в течение
Авторы Netfilter представили
тересует – мы должны его осветить. При- двух лет уда лить из своих продук тов спор-
первый публичный релиз
ведем небольшой дайджест прошедших ный код. С другой стороны, Microsoft мо-
nftables. По замыслу разработчиков,
событий. жет использовать без какой-либо оплаты
эта технология со временем заменит
В февра ле Microsoft обвинила ком- патенты, речь о которых шла во встреч-
iptables.
панию TomTom в нарушении несколь- ном иске TomTom. Компании договорились
ких программных патентов. Естественно, воздержаться от взаимных судебных пре-
На прошедшем 31 марта собрании
это вызва ло сильный общественный ре- тензий на 5 лет. Финансовые подробности
Ubuntu LoCo Council был решен
зонанс. Почти сразу в Сети появились за- соглашения неизвестны, однако обе сто-
вопрос о присвоении Russian Ubuntu
явления, в которых говорилось об оче- роны конфлик та утверждают, что их дого-
LoCo Team официального статуса.
видности патентов и попытках Microsoft вор позволяет TomTom выпускать оборудо-
принудить TomTom к нарушению GPL. Впо- вание, не нарушая GPLv2.
Вышел Adobe Reader 9.1 для
следствии возник ло мнение, что все не так Не знаю, насколько ак туальна эта
Linux. Добавлена под держка
страшно и кросс-лицензировать FAT мож- американская забава для
вкла док и ряд других возможно-
но, не нарушая GPL. Поскольку от главно- российских про-
стей. Запуск программы значительно
го виновника «торжества» официальных изводителей
ускорился.
комментариев на сей счет не последова- и потребите-
ло, обсу ж дать циркулирующие в Сети слу- лей – наше за-
Корпорация Microsoft планирует
хи мы не будем. Да лее TomTom подает в Ре- конодательство
запустить онлайн-проект для
гиональный суд США встречный иск: якобы не признает про-
распространения открытого ПО
в навигационной программе MS Streets and граммные па-
и пытается привлечь к нему сторонних
Trips использованы четыре запатентован- тенты, а значит,
разработчиков. Пока на офсайте
ных компанией технологии. В марте жерт- в России подоб-
доступны только громкие лозунги,
ва судебного преследования присоединя- ные иски невоз-
менед жер пакетов MS Web Platform
ется к инициативе Open Invention Network можны. Так что
и некоторое количество прило-
(OIN), защищающей Linux-решения от на- для нас с вами все
жений. Кроме этого, исходные тексты
па док держателей патентов. Членство в OIN это – не более чем
каркаса ASP.NET MVC были опублико-
предполагает отказ от использования соб- повод пообщать-
ваны 1 апреля по лицензии MS-PL –
ственных патентов против Linux, давая ся в форумах
и это не шутка.
взамен доступ к 275 ключевым патентам, и на страницах
которыми вла деет организация. LXF.

Линус вернул создателей ext4 с небес на землю


Еще од на на шу мевшая история свя за на веря ет ся си туа ция пере полнения диска, это всё равно, что жа ловаться на скорость
с недоче та ми, обна ру женными в ext4. и системный вы зов write() не возвра щает света: вы должны иметь дело с реальным
Нача лось все с со общения об ошибке ошибку. миром, а не с тем, каким бы вы хотели его
в Ubuntu 9.04, хо тя про блема не спе ци- Главный разработ чик ext2/3/4, Теодор видеть». На мой взгляд, Линус прав, и такое
фична для данного ди ст ри бу тива. Ут вер- Цо [Theodore Ts’o], не согласен. По его мне- поведение файловой системы неприем-
жда лось, что из-за про блем в дизайне нию, авторы ПО не должны перезаписывать лемо. Однако авторам стоит учитывать осо-
ext4 возмож на по теря данных при ис поль- файлы целиком без необходимости. Разра- бенности популярных ФС в своих разработ-
зо вании отложенного вы де ления (delayed бот чики ext4 так же порекомендова ли писать ках. Тем более, что отложенное выделение
allocation). По скольку изменения вно- данные во временные файлы, а затем вызы- является одной из главных причин повы-
сят ся в журнал сра зу, а данные запи сы- вать функцию fsync() и переименовывать шения производительности ext44 в сравне-
ва ют ся на диск спустя про дол жи тельный их. Для обработки ошибок переполнения нии с ext3.
период вре мени (до 60 се кунд), при кра хе диска они советуют использовать систем- Конец истории так же предсказуем:
систе мы фай лы могут ока заться ис пор- ный вызов close() (закрытие файла и сброс Тед Цо обещал выпустить патч, изменяю-
ченными. Осо бенно это кри тично для данных из кэша на диск). Кроме того, в ядро щий поведение отложенной записи в ext4.
KDE и Gnome. Они пере соз да ют большое Linux стоит добавить новые системные К сожа лению, в ядро 2.6.29 это исправ-
чис ло мелких конфигу ра ционных фай лов, вызовы, предназначенные для безопас- ление уже не войдет, и его включат только
и ес ли систе ма «рухнет» вскоре по сле ной работы с файлами. Линус Торвальдс в версию 2.6.30. А значит, стоит серьезно
за грузки, по следние обнулят ся. Кста ти, [Linus Torvalds] выступил с резкой критикой за думаться о возможности использования
про бле ма про яв ля ет ся не только при кра хе этих пред ложений – по его словам, «жа ло- ext4 в новой версии любимого дистрибу-
систе мы. При отложенной запи си не про- ваться на то, что в приложении ошибка – тива. LXF

Май 2009 Linux Format 5


НовостиРепортажLXF

Дни Sun
в Петербурге
Валентин Синицын провел три дня в отрыве
от редакционной работы, пытаясь понять: не пора ли
начинать рекомендовать OpenSolaris вместо Ubuntu.

С
чем у вас ассоциируется приход знаниями о тех продук тах, которыми они ла, который (мы на деемся) скоро вернется
весны? Первая капель, ручей- занимаются ежедневно), поэтому упор был на страницы LXF.
ки, набу хающие почки? Слякоть сделан именно на community-ветвь в раз- Однако Sun Tech Days – не только кон-
К Дюку можно на улицах, авитаминоз? Для многих оте- ференция, но и выставка. В специально
витии Solaris. Кроме того, в OpenSolaris на-
было незаметно чественных разработчиков это еще и по- метился ряд интересных изменений, к ко- отведенной зоне стендов можно было по-
подкрасться и ски- ра проведения Sun Tech Days — ежегодной торым мы тоже еще вернемся. общаться с представителями Intel и AMD,
нуть по Bluetooth всемирной конференции, российский этап разработчиками VirtualBox и OpenSolaris,
снимки для фото-
конкурса.
которой вот уже несколько лет проходит Встречаем по одежке Java, JavaFX и Java ME, за дать вопросы
в начале апреля в городе Санкт-Петербур- Струк тура конференции остается неиз- специа листам по рекру тингу и вступить
ге. Не стал исключением и 2009 год – на сей менной вот уже который год: два полных в приобретающую все большую извест-
раз местом встречи был выбран седьмой дня док ла дов и мастер-классов для раз- ность социальную сеть OSUM (Open Source
павильон «ЛенЭкспо». работчиков, плюс один – для студентов University Meetup), ориентированную
Что же приготовили нам представители и ака демической общественности. Новин- на популяризацию открытых технологий
Sun Microsystems сегодня? Сравнив про- кой этого сезона ста ли док ла ды от пред- среди студентов. На многих стендах про-
граммы конференций этого и прошлого ставителей российского Open Source-со- ходили тра диционные вик торины и кон-
года, нельзя не заметить два важных от- общества, не являющихся сотрудниками курсы на знание технологий Sun. Отдель-
личия: отсутствие в программе док ла- Sun Microsystems. Нам особенно прият- ного упоминания заслуживает гостиная
дов по Solaris (не пу тайте с OpenSolaris!) но отметить, что среди них был и Антон OpenSolaris, где можно было с комфортом
и присутствие большого числа сооб- Черноусов – давний автор нашего журна- следить за прямой трансляцией пленар-
щений и мастер-классов, посвящен- ных док ла дов на боль-
ных JavaFX. Со вторым все понятно: шом экране. У вхо-
JavaFX – новая перспек тивная техно- да в зону стендов для
логия от Sun (мы еще вернемся к ней посетителей встречал
ниже), и было бы весьма странно, ес- оживший та лисман
ли бы о ней умолча ли на Sun Tech Java – кстати, его зо-
Days. А что произошло с Solaris, ведь вут Дюк [Duke]. В по-
система живет и здравствует? Здесь следний день он да же
тоже все просто: Sun Tech Days за ду- исполнил за жигатель-
мыва лись как мероприятие для со- ный брейк-данс прямо
общества (именно поэтому на стен- у стоек регистрации;
дах и презентациях вы обычно встретите жаль, что мы не мо-
не рек ламщиков и специа листов по связям жем продемонстриро-
с общественностью, а профессиональ- вать вам этого на стра-
ных разработчиков, готовых поделиться Презентация JavaFX не обошлась без «визит-эффекта». ницах журна ла.

6 Linux Format Май 2009


 РепортажLXFНовости

Подписавшиеся в которой, несмотря на название, можно


JavaFX на LXF на нашем было узнать не только про открытую ОС
Пожа луй, довольно эмоций – перейдем стенде получали от Sun, но и познакомиться с инструмен-
к технологиям, нашедшим отра жение в подарок вот та- тарием разработчика Sun Studio (компиля-
кую кружку!
в программе Sun Tech Days 2009. Пер- торы C/C++/Fortran, интегрированная сре-
вой из них, как мы уже упомина ли, яв- да разработки и прочее), гипервизором
ляется JavaFX: «наш ответ» на Windows VirtualBox и кое-чем еще. Мы были ра ды
Presentation Framework (WPF) и Silverlight, узнать, что в OpenSolaris теперь под дер-
который является «их ответом» на Adobe живаются USB-принтеры и Bluetooth-кла-
AIR, или, если угодно, редкий пример пе- виатуры, и да же не поленились прове-
ретекания идей в сторону, противополож- рить, взяв диск на стенде: действительно,
ную «от Java к .NET». Если в двух словах, так оно и есть. Помнится, в вик торине по
то это платформа для создания интерак- Solaris на Sun Tech Days 2008 был вопрос:
тивных интернет-приложений (Rich Internet «Какие из перечисленных технологий
Applications, RIA), развивающая идею «write не под держиваются Solaris?», и предпола-
once, run anywhere» – написанное с ис- га лось, что Bluetooth будет отмечен. Конеч-
пользованием JavaFX приложение долж- но, OpenSolaris – это не сам Solaris, но про-
но выполняться без изменений и на ПК, гресс на лицо. Если в этом дистрибу тиве
и на мобильных устройствах, причем для еще ак тивируют драйвер звуковой карты
его работы не требуется устанавливать ICH AC97, эмулируемой виртуальной ма-
никакие специальные модули расширения: шиной VirtualBox, OpenSolaris, пожа луй,
достаточно обычной Java-машины. С точ- полу чит свой Hottest Pick. А то выходит
ки зрения программиста, это простой язык неувязочка: два продук та одной компании,
(JavaFX Script), напоминающий Java по син- а меж ду собой «из коробки» не дру жат...
таксису, но являющийся дек ларативным Кстати о VirtualBox. На Sun Tech Days
(то есть позволяющим описать интерфейс 2008, проходивших вскоре после приоб-
приложения, предоставив платформе са- ретения Innotek фирмой Sun Microsystems,
мой создать нужные объек ты) и под держи- о нем говорили не много. Однако за ми-
вающим связывание (значит, можно ука- нувший год программисты Sun обеспечи-
зать, что некоторое свойство p1 объек та ли мощный импульс в развитии открыто-
o1 является комбинацией свойств p2 объ- го гипервизора, реа лизовав 3D-ускорение,
Джит Коул был
ек та o2 и p3 объек та o3, после чего не за- шенном освещении. Мы пока не знаем, работу со сторонними форматами вирту-
рад ответить на все
ботиться об их обновлении), а так же набо- насколько победным ока жется шествие наши вопросы альных машин и прочие полезные функ-
ра предопределенных объек тов: вид жетов, JavaFX, но эта на ходка явно должна по- о клиентских техно- ции. Выпуск VirtualBox 2.2.0, случившийся
графических примитивов, инструментов пасть в учебники. логиях Sun. прямо в первый день конференции, 8 ап-
и визуальных эффек тов. Правда, не обошлось и без курье- реля, лишь подстегнул интерес публики
Впрочем, как многие уже знают, часть зов. При демонстрации JavaFX-приложения к этой разработке.
«run anywhere» в описанной выше идее (книги с возможностью листать страницы) Для VirtualBox в этом году был отве-
традиционно оказа лась с сюрпризом: ден собственный стенд, на котором все же-
JavaFX 1.1 под держивает только Microsoft
Windows и Mac OS X. Это особенно странно
«Sun Tech Days задумы­ лающие могли воочию убедиться: возмож-
ностей виртуальной машины достаточно,
при выборе Java в качестве основной плат-
формы – но, как оказа лось, все дело в муль-
вались как мероприя­ чтобы с комфортом играть в стрелялку
от первого лица в гостевой ОС. Остановив-
тимедиа-кодеках. Как пояснил Джит Коул тие для сообщества.» шись чу точку на подольше, можно было об-
[Jeet Kaul], вице-президент подразделения нару жить сценарий Python, который управ-
клиентского программного обеспечения на открывающем конференцию пленар- лял кубом Compiz в «госте». Ну, а самые
Sun Microsystems (то есть департамента ном док ла де внезапно вылез глюк, иска- любознательные имели редкую возмож-
компании, непосредственно отвечающе- зивший изобра жение. «Вот так всегда, – ность узнать все, что их интересует из об-
го за Java, Java FX и так да лее), технологию посетовал док ладчик. – Проверяешь код ласти виртуа лизации из первых рук: как
стремились выпустить как можно раньше, сто, двести раз, а при демонстрации пуб- прямо на стенде, так и в ходе док лада.
поэтому ограничились их оптимизацией лике всегда что-то идет не так». По сравне- Подводя итог, можно с уверенностью
для двух указанных выше платформ. На ре- нию с приснопамятным «синим экраном» сказать: конференция уда лась. Пусть у ко-
зонный вопрос: «А когда же ждать версию Windows 98 грех, конечно, невелик – зато го-то могло сложиться ощущение, что про-
для Linux и Solaris?» был дан ответ, что это будет что вспомнить. шлогоднее мероприятие было более
произойдет в нача ле июня – к открытию
OpenSolaris, VirtualBox
Пока я динамичным: раз на раз не прихо-
конференции JavaOne. Иными словами,
и все-все-все верстаелс дится, да раньше и вода была, как

ном р
ждать оста лось совсем недолго. известно, мокрее, и трава – зе-
Однако амбиции Sun в отношении Может статься, вы принад лежи- ленее. Мы же думаем, что Sun
JavaFX простираются дальше простого соз- те к клану «Java-ненавистников» 20 апреля стало изве
стно, что Tech Days 2009 занял свое
дания альтернативы Silverlight: компания или просто не интересуетесь интер- компания Oracle достойное место в череде дру-
хочет «изменить то, как мы взаимодей- активными интернет-приложениями, приобретет Sun гих проходящих в нашей стра-
ствуем с компьютером». В ознаменование и ваш выбор – Vi и Lynx. Ничего страш- за ~$7,4 млрд я не ИТ-конференций с ук лоном
завершитьс
грядущих перемен, пресс-конференция ного: на Sun Tech Days найдутся док ла- Сделка должна том. в открытое и свободное ПО, и будем
этим ле
проходила в необычном формате: на меш- ды и на такой вкус. В этом году вам следо- с нетерпением ждать 2010 года! LXF
ках-пуфиках и при сине-красном приглу- ва ло бы посетить секцию 3 «OpenSolaris», Фото: Татьяна Цыганова

Май 2009 Linux Format 7


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

Сегодня мы рассматриваем:
АЛеКСей ФеДОРЧУК
его слабости — mass
storage, разметка
диска и файловые
системы.
World of Goo ........................................... 10
Будь наш мир сделан целиком из чего-то липкого, как
по-вашему: стали бы люди придумывать игру World of
Matter [Мир вещества]? Даже если бы стали, вряд ли они
Скрещивая ужа и ежа сумели бы создать нечто подобное: World of Goo лег-
ко можно назвать лучшей независимой игрой, выходив-

П
шей в последние два года. Она недорогая и поддержи-
оводом для написания на-
вает Linux.
стоящей заметки послужило
сообщение о том, что проект Acronis .......................................................... 12
Debian GNU/kFreeBSD получил статус Если вы с завистью смотрели, как ваши друзья из «дру-
гой ОС» легко создают образы дисковых разделов и вос- Обратите внимание на нестройные, эллипсо-
официального в рамках «надпроек-
станавливают их в случае аварии, расслабьтесь. Acronis видные формы этих липучек, их счастливые лица
та» Debian. Вы спросите, что это та- и глазки-бусинки.
True Image намекает, что вы ничего не теряете.
кое? В двух словах, это ядро FreeBSD,
надстроенное комплексом систем- Debian 5 ...................................................... 13 Asgard PC .................................................. 14
ных и пользовательских утилит GNU Да, это правда. Пусть с небольшим опозданием, Lenny В небольшой коробочке скрывается двухядерный про-
и пакетной инфраструктурой Debian, (вместе с 7700 новыми пакетами) все же вырвался из цессор Atom, способный весьма бойко выполнять инст-
причём все пользовательское и при- плена жестких дисков своих разработчиков и теперь рукции Linux. Но действительно ли Asgard заслуживает
готов поселиться на ваших винчестерах. своего места в пантеоне компьютерных богов?
кладное ПО собирается с glibc вмес-
то BSD libc.
От комментариев о самом дистри-
бутиве я, пожалуй, воздержусь, что-
бы не укреплять и без того неслабую
репутацию злобного Зоила. Но поз-
волю себе задать вопрос: а зачем всё
это нужно? Нет, конечно, нарастить
ядро и пользовательское окружение
FreeBSD (между нами говоря, гармо-
нично друг с другом увязанные) мож-
но, взяв вместо традиционных портов
любую другую систему управления па- По рисунку этого, может, и не понять, но Asgard размером с хорошую книгу. И по шуму примерно такой же.
кетами. Но зачем же менять это самое
пользовательское окружение? Ведь
BSD-утилиты либо функционально эк-
вивалентны GNU, либо (на мой субъек- Наш вердикт: Пояснение
тивный взгляд, конечно) превосходят
последнее. Все попавшие Выдающиеся
Надо сказать, что такой проект – в обзор продукты
оцениваются
решения могут
получить престиж-
Вердикт
FreeBSD Distributions на базе BSD libc по одиннадцати- ную награду «Top
в обрамлении apt-get'а – некогда су- бальной шкале Stuff». Номинан- Google Earth
ществовал, и выглядел куда более ло- (10 – высшая тами становятся Разработчики:Google
Сайт:http://earth.google.com
гичным. Но прекратил своё развитие, оценка, 0 – низ- лучшие из луч-
Цена:Бесплатнопозакрытойлицензии
шая).Какправило, ших – просто высо-
в частности, по причине физического Функциональность 10/10
мы оцениваем кой оценки здесь
краха сервера. функциональ- недостаточно. Производительность 9/10
Так что единственное объяснение ность, производительность, Рассматривая свободное Простота использования 9/10
столь противоестественного гибри- простоту использования и цену, ПО, мы обычно указываем Оправданность цены 9/10
а для бесплатных программ предпочтительный дистрибу- Есливесьмир–сцена,тоGoogle
да я вижу в возрождении имперских Earth–театр.Простаявиспользова-
учитывается документа- тив. Иногда это означает ком-
амбиций Debian'а. ция. Кроме того, мы всегда пиляцию из исходных текстов, нии,захватывающаяиободряюще
выставляем общую оценку, но если разработчики рекомен- практичнаяпрограмма.
alv@posix.ru демонстрирующую наше отно-
шение к продукту.
дуют Autopackage, мы следуем
этому совету. Рейтинг 9/10

Май 2009 Linux Format 9


ОбзорыИгра

World of Goo
Два программиста-вундеркинда бросили работу,
придумали игрушку, сорвали куш, а в итоге Алекс Кокс
должен развлекаться с какими-то липкими шариками. Беда! Демо­версия

Г
оворят, всё гениальное просто.
Вкратце Большинство компьютерных игр,
если их ободрать от шелухи, ока-
Конструиро- жутся либо пустышкой, либо базой дан-
вание голово- ных. Но только не World of Goo. Эту игру
ломок из этих,
попросту некуда упрощать. Все излише-
как их… короче,
«гу»! См. также: ства отсечены и отброшены: остались
BridgeConstruction бесхитростно-притягательные головолом-
Set. ки, без полоски здоровья, боеприпасов
и других 3D-наворотов.
-наворотов. Графика – мини-
мально необходимая для передачи физи-
ки конструкций.
При этом игра отнюдь не серень-
кая: музыка фантастическая, а «слоис-
тые» двумерные сцены красивые и стиль-
ные. Крохотная команда World of Goo
проявила незаурядное художественное
мастерство, наделив каждый липучий
шарик персональным шармом: комочки,
единственное средство самовыражения
которых – глаза, несомненно одушевлен-
ны и трогательно-невинны. Они просто
По мере утяжеления конструкции она, естественно, прогибается — выручат тонко
«В основе игры лежит улыбающиеся шарики, наполненные гелием.

физика, блестяще ливого зверя, но эти печальные глаза


не так просты.
куда пристроить очередную загогули-
ну? О, нет. Вот так и с World of Goo. Сто-
реализованная.» Блестяще придумано, что в World ит вам прилепить первого маслянистого
of Goo всё описывается явочным по- «лизуна» и треугольный пролёт конструк-
весело скачут по своим делам. Вы хвата- рядком. Нет нужды в объяснениях: иг- ции на место, как пульсирующие ша-
ете их, плющите и лепите куда хотите, как ра просто ведёт вас – или вы сами ведёте рики «расскажут» вам всё, что нуж-
жестокий повелитель (а кто же вы ещё?). себя – через коллекцию уровней. Был бы но знать. Большое табло, указывающее
Понятно, весь сюжет крутится вокруг то- Tetris Тетрисом, если бы Марио или Прин- на «высочайшую цель», заполнит един-
го, чтобы уберечь свой шарик от прожор- цесса Дейзи постоянно подсказывали, ственный оставшийся пробел.

Шаг за шагом: Избегаем зубьев смерти

Что мы имеем Твердая платформа Взбираемся выше


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

10 Linux Format Май 2009


ИграОбзоры

точек World of Goo, за которыми упрята-


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

Поездка в неведомое Строить часто приходится в узких местах:


Будучи вызывающе примитивной, World
заденьте колючку, и шарик погиб.
of Goo тянется не столь долго. Здесь
не над чем раздумывать, и вы, возможно,
пролетите её за какую-то неделю. Но иг- лишь те же чёрные шарики. А строить
Очень важно использовать особенности отдельных шариков. Эти
ра несомненно привлекательна. Каждый не так-то просто, здесь необходимы точ-
зелёненькие, например, растягиваются, как только могут, а значит,
с их помощью можно взбираться вверх по трубам. из 48 уровней уникален, каждая игровая ный расчёт и изрядная доля везения.
задача восхищает. Поначалу вы управляе-
те лишь горсткой шариков-липучек да ге- Прямое попадание
Занимательная физика лиевыми «воздушными шарами», но по хо- Даже не сомневайтесь, наша версия ни-
В основе игры лежит физика, блестяще ду игры возникают всё новые персонажи, чуть не уступает оригинальной (для Win-
реализованная, вкупе с отличным обна- добавляя индивидуальности, а иногда ме- dows) в зрелищности, надёжности или
ружением столкновений и общим превос- няя архитектуру уровня. тщательности отделки – мы не упомина-
ходным уровнем графики. В этой игре сра- У нас было искушение приписать World ем о различиях между версиями лишь по-
зу же чувствуешь себя, как дома. В чем of Goo лёгкий синдром Zelda – когда игро- тому, что их просто нет. Устанавливаете ли
фишка World of Goo, разъясняется весьма вые концепции усложняются постепенно, вы через RPM, Deb, или даже из старого
ненавязчиво, зато прочие события освеща- используются два-три раза, затем заменя- доброго tar-архива – игра работает и на 32-,
ются подробно. ются чем-то новым, неизведанным – но так и на 64-битных машинах, как и полагается
Сюжет движется через фантастично сказать нельзя. Здесь каждая новая ста- приличному ПО.
анимированные сцены; повсюду раскида- дия требует нового подхода. Вы получае- Покупать World of Goo нужно пря-
ны указатели – вехи предполагаемого раз- те не просто игрушку: игра заканчивается, мо сейчас. Да, именно покупать, а не ис-
вития событий – и каждый из них несёт а вам достается знание. Кривая повыше- кать где-то в Интернете: версия для Win-
свою тайну. Это весточки, оставленные не- ния сложности плавна и предсказуема, dows, свободная от DRM-ограничений,
видимым рассказчиком: иногда тревожные хотя без особых сияющих вершин: плюс прославилась шокирующим уровнем пи-
крики о помощи, иногда ключи к шифрам, с точки зрения доступности, и минус – ес- ратства. World of Goo – из тех игр, которые
иногда вообще полный бред, но не без под- ли вы ищете реально сложных испытаний. истощают любые запасы эпитетов. Это
текста. Каждый указатель – отдельное Все лишние
ние шарики, собранные ва- действительно превосходно представ-
удовольствие. При прохождении особых ми в процессе игры, отходят таинствен- ленное, изумительно исполненное игро-
ной организации World of Goo Corporation, вое творение. Гейблеру и Кармелу уда-
находящейся в центре событий. Здесь 2D лось вернуться назад по пути развития
Большой переход Boy придумали странный гибрид одно- компьютерных игр, исправить все оши-
и многопользовательского вариантов иг- бочные повороты и вернуть основы чудес-
Игра World of Goo Кайла пользователи оказались ры, при котором вы соревнуетесь с колле- ной восьмибитной эры в сбившийся с пути
Гейб лера [Kyle Gabler] и Рона честнее? гами по всему миру, чья башня получится мир. Если вы умеете обращаться с мышью,
Кармела [Ron Carmel] была РК: У нас нет способа количе- выше. Хотите надстроить башню – вер- то просто обязаны попробовать. LXF
переведена энтузиастами на ственно сравнить уровни пи- нитесь к игре и заработайте ещё. Слож-
многие языки и, конечно же, ратства в зависимости от ОС, ные конструкции в строительстве не ис-
портирована на Linux. Мы но Linux-версия появилась на пользуются: вы получаете для творчества Вердикт
поговорили с Роном Карме- торрентах значительно позже
лом о переходе с Windows на Windows-варианта. Это укре- World of Goo
Linux. пило моё мнение о том, что
Linux-пользователи гораздо Разработчик:2DBoy/MaksVerver
Сайт:http://2dboy.com
Linux Format: Как поживает ще пе тильнее в вопросах рас-
Цена:$20
World of Goo для Linux, в фи- пространения ПО.
нансовом плане?
Сюжет 10/10
Рон Кармел: Порт был для LXF: Планируете ли поддер-
Графика 10/10
нас очень удачным вложени- живать нашу платформу Увлекательность 8/10
ем. На сегодня, около 10 % в будущем? Оправданность цены 10/10
суммы прямых продаж (через РК: Да, для любой игры, име-
http://2dboy.com) приходится ющей коммерческий успех, мы
Захватывающийшедевригровой
на Linux-версию. обязательно сделаем Linux- изобретательности,безупречноис-
версию. А если работа будет не- полненныйивсенароднолюбимый.
LXF: Вы упоминали о вы- удачной, портировать её будет Взобравшись выше по башне World of Goo
сокой доле пиратства на бессмысленно не только для Corporation, вы будете вознаграждены
Windows-платформе. Linux- нас, но и для пользователей! очередной вывеской. Рейтинг10/10
Май 2009 Linux Format 11
ОбзорыРезервноекопирование

Acronis True Image


Клонирование диска – непростая задача. Майянк Шарма нашел для этого
неплохое проприетарное решение. Интересно, поборет ли оно Clonezilla?

Н
ет ничего хуже, чем внезапная
Вкратце кончина винчестера. Резервные
копии помогают, но для полной
Проприетарная страховки от потерь необходимо нечто
программа для посерьёзнее – например, клонирование
клонирования от-
жёсткого диска со всеми разделами, MBR
дельных разде-
лов и целых дис- и рабочими файлами. Для этого и предна-
ков. см. также: значена программа Acronis True Image Echo
Clonezilla и Mondo Server for Linux (но уж лучше будем звать
Rescue. её ATI Echo).
ATI Echo «умеет» резервировать файлы,
разделы и целые диски. Помимо приятно-
го графического интерфейса, сводящего
всю работу к нескольким щелчкам мышью,
приложение обладает массой полезных
функций. Во-первых, ATI Echo не требует
отмонтировать разделы перед началом ра-
боты. Резервную копию можно сохранять Функциональность Acronis True Image Echo Server скрыта за графическим интерфейсом,
на USB-накопитель или удалённую машину поэтому разобраться со Startup Recovery Manager не удалось.
по Samba или NFS. Можно собрать загру-
зочный диск ATI Echo и читать, восстанав-
ливать, создавать разделы и клонировать Если нужный раздел используется сер- ке] мы вообще не смогли заставить делать
диски прямо с Live CD. вером, то ATI Echo в начале работы оста- что-либо – даже очистив MBR с помощью
новит его, а по окончании – запустит сно- fdisk /mbr и исполнив пляски с бубном. Лю-
ва. Можно велеть игнорировать некоторые бопытно, что руководство пользователя
«Резервирование файлы, например *.~ и *.tmp. В зависимос- даже не упоминает об этой функции!

возможно на USB­ ти от уровня паранойи можно шифровать


резервные копии алгоритмами AES раз-
ATI Echo работает с обычными файло-
выми системами, обладает магической
диске или удаленной личной сложности. силой монтирования образов-снимков
и извлечения из них данных. Но вол-
машине.» Недомагия шебство мигом улетучивается, когда де-
Теперь о недостатках. Однажды мы по- ло доходит до экзотических ФС; к тому же
Ещё одно достоинство ATI Echo – воз- лучили нерабочий диск, просто склони- не поддерживается клонирование не-
можность работы в инкрементном режиме, ровав неподдерживаемый раздел Solar- скольких компьютеров по сети – всё, что
что полезно при регулярном резервирова- is. Пришлось откатиться на более ранний совершенно бесплатно умеют свободные
нии целых разделов. Вторичные снимки образ. Программа промолчала о том, альтернативы. LXF
по размеру невелики, и есть возможность что раздел не поддерживается, и клони-
восстановить состояние на определённые ровала его, но испортила MBR, где был
дату и время. Grub Solaris, так что запуск системы стал Вердикт
невозможным.
ATI Echo не может изменять размер Acronis True Image
Свойства навскидку неподдерживаемых файловых систем, Echo Server for Linux
вроде HFS+ от Mac OS, даже если вы- Разработчик:Acronis
брано пропорциональное клонирование, Сайт:www.acronis.ru
Цена:19690руб.
и не отображает их атрибуты (размеры
и свободное пространство). К нашему ра- Функциональность 710
зочарованию, программа не восстанавли- Производительность 7/10
вает клонированный образ на новый диск Простота использования 9/10
Оправданность цены 4/10
пропорционально. Здесь даже есть фун-
кция ‘Add A New Disk’ [Добавить новый Есливамнужнаподдержкаредких
диск] – инструмент разметки, который не- файловыхсистемиликлонирование
Монтирование снимков Сложное — просто льзя использовать на дисках без таблицы
несколькихкомпьютеров,поищите
вдругомместе.
Позволяетподключатьихв Функциирезервногокопиро-
режимечтения/записиили ваниясводятсложныезада-
разделов.
извлекатьотдельныефайлы. чиксериищелчковмышью. Таинственный ‘Startup Recovery Mana-
ger’ [Менеджер восстановления при запус-
Рейтинг 5/10
12 Linux Format Май 2009
ДистрибутивLinuxОбзоры

Debian 5
Грэм Моррисон считал, считает и будет считать, что Debian лучше произносить
c французским прононсом – ‘de bien’.

D
ebian поспешает не торопясь. Вер-
Вкратце сия 5 варилась около 22 месяцев
и вышла в день Святого Валенти-
Linux- на – интересно, что получилось: романти-
дистрибутив ческий ужин для двоих или подгоревшая
старой школы,
похлебка холостяка? Однако согласитесь,
приверженец вы-
соких стандар- что не так-то просто управиться с 23000 па-
тов стабильности кетов, 7700 из которых появились впер-
и свободы ПО. вые. Всё это умещается на 5 DVD, 31 CD
См. также: Fedora, или одном диске Blue-ray,, причём дист-
Slackware.
рибутив остался стабильным и безопас-
ным. Благо, интернет-подключение у нас
мощное: мы воспользовались сетевым
вариантом установки, когда нужен всего
один CD, а остальное скачивается. А для
тех, кто пока не дозрел до инсталляции,
команда Debian Live подготовила первый
Debian на Live CD.
Установка наконец отшлифована:
благодаря графическому инсталлято-
ру, появившемуся в предыдущей версии,
Debian предлагает выбор из нескольких вариантов использования компьютера
и многочисленным патчам совместимос-
и цветовую гамму по душе. Нам это понравилось.
ти, сопровождающим ядро 2.6.26, это про-
стейший в развертывании Debian из всех,
с которыми нам приходилось работать. Се- под рукой непревзойдённая установочная гатой родословной и столь же преданного
тевые домены определяются точно, раз- документация Debian. сообщества.
За несколько недель, прошедших со

«Debian ценят Игра версий дня выхода версии 5.0 до написания ста-
Попав на рабочий стол, вы обнаружите гиб- тьи, у нас не было ни проблем со стабиль-
за надежность рид Gnome 2.20 и Gnome 2.22 и тут же ощу-
тите результаты июльской (2008) функ-
ностью, ни беспричинных зависаний. Разу-
меется, при таком богатстве репозиториев
и скрупулёзность.» циональной заморозки Debian. Есть можно подогнать Debian «под стандарт»,
проверка правописания и подсветка синтак- но это означает пойти вразрез с его глав-
делы создаются как по волшебству: для сиса в Gedit, есть прекрасное фото-прило- ной идеей: Debian ценят за стабильность
желающих есть даже вариант установ- жение Cheese, но нет Ekiga 3, нет Telepathy – и скрупулёзность, и новая версия дистри-
ки на зашифрованный раздел LVM.. А ес- вообще ни одной новинки из Gnome 2.24. бутива – образец верного баланса. LXF
ли всё же что-то пойдёт не так, то всегда Но Gnome ещё легко отделался, по срав-
нению с KDE. Lenny застрял на KDE 3.5,
и хотя это вполне понятно (Debian ратует Вердикт
Свойства навскидку за стабильность), всё-таки жаль, что поль-
Debian 5
зователям KDE придётся искать официаль-
но поддерживаемые пакеты KDE 4 на сторо- Разработчик:DebianProject
не. OpenOffice.org постигла та же участь. Сайт:www.debian.org
Цена:бесплатнопоGPL
И здесь мы видим, как Lenny утапты-
вает для себя собственную рыночную ни-
Функциональность 7/10
шу. Мир Linux-дистрибутивов
-дистрибутивов ныне по-
Производительность 8/10
лон передовыми приложениями, которые Простота использования 7/10
весьма стихийно тестируются и обновля- Документация 9/10
ются. Желая получить новейшие версии
ПО, можно выбирать минимум из дюжины ДляфанатовDebian—повод
Новое ПО Изобилие пакетов вариантов. Но если вы хотите стабильнос- порадоваться.Длянефанатов—
задуматься…
Включённедавнооткрытый ТеперьвDebianстолько ти любой ценой, при некоторых преиму-
JavaJDKотSun,атакже официальноподдержива-
мощныйинструментарий емыхпакетов,чтоврядли
ществах новейших ядер и рабочих столов,
контролядоступаSELinux. захочетсяискатьещё. то Debian окажется, пожалуй, лишь одним
из немногих. И ни у кого нет столь же бо-
Рейтинг 8/10
Май 2009 Linux Format 13
ОбзорыКомпактныйПК

Asgard Shuttle X27


Грэм Моррисон сверяется со скандинавской мифологией: достойны ли места
в Валгалле дорогие компьютеры с малым энергопотреблением?

В
озможно, вас интересуют компа-
Вкратце ктные экономичные компьютеры
на базе Atom Mini-ITX (см. LXF115).
Компьютер Так вот: Asgard X27 производства Shuttle
с экономным добавляет крутизны, удваивая скорость
энергопотреб-
вычислений. Это первая из виденных нами
лением, на двухъ-
ядерном про- машин с двухъядерным процессором Atom,
цессоре, и, подобно «взрослому»
взрослому»» Core 2 Duo, он зна-
с предустанов- чительно быстрее одноядерного кузена.
ленным Ubuntu В прежнем обзоре мы писали, что кор-
8.10. Альтерна-
тивы — Mini-ITX пуса Noah меньше, чем у Shuttle, но теперь
из LXF115 или все иначе. Shuttle X27 намного меньше
Linutop 2 из обзо- Noah – это замечаешь сразу, открыв кор-
ра LXF110. пус: места едва хватает для материнской
платы, сверхтонкого оптического приво-
да и 2,5-дюймового жёсткого диска, а вот
для расширений запаса уже не остаёт-
Спецификация
ся. При размерах 250х185х70 мм весь ком- Linux прекрасно совместим с процессорами Atom, и почему бы вашему любимому
Процессор пьютер легко умещается на обычной книж- дистрибутиву не поработать на Asgard?
Atom A330 ной полке.
1,6 ГГц
На USB-порты не поскупились:
Память
2 ГБ ОЗУ их два спереди, под откидной крышкой, как и на всех компьютерах Efficient PC, оп- двухъядерная версия сработала за 4 мину-
Винчестер и четыре на задней стенке. Задние USB робованных нами, разумна: один из разде- ты 20 секунд. А вот полноценный Core 2 Duo
2,5-дюймовый соседствуют с DVI-портом и стандартным лов диска отведён под систему, другой – на той же тактовой частоте выдал тестовую
диск 250 ГБ
разъемом VGA для вывода картинки. Ана- под домашние каталоги. сцену за 1 минуту 34 секунды. Однако вы-
Оптический
привод логично другим машинам типа Mini-ITX, Расхрабрившись, мы решили гля- полнение Virtual Box мы нашли удовлетво-
8xDVD-RW питание подаётся через внешний блок, как нуть, как работает управление питани- рительным: благодаря скудости виртуа-
у ноутбуков. Включаем в сеть, нажимаем ем – как правило, больная тема. Выбор лизационных функций и двухъядерной
Suspend [Ждущий режим] по нажатию архитектуре, рабочий стол оставался от-

«Весь компьютер легко кнопки питания в Gnome полностью пре-


сек всю деятельность, загасив даже свето-
зывчивым даже при наличии запущенных
виртуальных машин.
умещается на обычной диоды-индикаторы. Нажатие настоящей
кнопки питания оживило машину, и че-
Итак, если скорость вычислений не кри-
тична, стоит ли платить за малые габари-
книжной полке.» рез три секунды мы были вновь на рабо- ты, эффективность и тишину Asgard? Ес-
чем столе. Впечатляет, но отсутствие ви- ли вам нужен неброский ПК для офиса или
кнопку на передней панели, и спустя мину- зуальной обратной связи может подвести гостиной, нам кажется, что стоит. LXF
ту видим стандартный рабочий стол Ubun- при выключении компьютера. Попробо-
tu. Предварительная установка системы, вали мы и Hibernate [Спящий режим],
когда содержимое памяти записывается Вердикт
на диск. После этого можно обесточить ус-
Свойства навскидку тройство, а включив его, продолжить ра- Asgard Shuttle X27
боту. Загрузка продолжается дольше, чем Разработчик:EfficientPC
выход из ждущего режима, но быстрее Сайт:http://efficientpc.co.uk
Цена:от$400
«холодной». Важно, что в обоих случаях
всё прошло без запинки.
Функциональность 9/10

Про форму Производительность


Простота использования
7/10
7/10
Однако по производительности про- Оправданность цены 6/10
цессор Atom значительно уступает на-
стольным собратьям, даже несмотря Компактныйимолчаливый,нопол-
Хорошие связи Производительность на двухъядерность. При офисной рабо- ноценныйПК.Скоростьюнеблещет,
Собъёмнымзвуком,избыт- Asgardнесамыйпередовой заторазмерзамечательный.
те это не беда, но к ресурсоёмким зада-
комUSB-портовиDVI- ПК,ноповседневныезадачи
подключением,этотПКвпол- решает«наура». чам Asgard непригоден. Для наглядности
негодитсявмедиа-центры. мы запустили тест Blender. Одноядерный
Atom справился с ним за 9 минут 10 секунд,
Рейтинг 7/10
14 Linux Format Май 2009
Сравнение
Каждый месяц мы сравниваем тысячи
программ – а вы можете отдыхать!

Дистрибутивы
для нетбуков
Хотите извлечь максимум из ультрапортатива? С вами Джульетта Кемп –
она отыщет самый подходящий Linux для вашего нетбука.
Про наш тест…
Для тестирования был выбран Eee
PC 701 (последняя модель – 901),
с внутренним диском на 4 ГБ, 512 МБ
ОЗУ и процессором Celeron 900 Мгц.
Три из тестируемых дистрибу тивов
Linux (а именно, Xandros, EeeXubuntu
и Pupeee) оптимизированы для Eee
PC, но все они должны работать так-
же и на других нетбуках. Четвертый
дистрибу тив, GOS, устанавливается по
умолчанию на нетбуки Everet.
В ка ж дом дистрибу тиве мы обра-
ща ли внимание на простоту установ-
ки и использования и состав прило-
жений – как предустановленных, так
и доступных для последующей ин-
сталляции. Мы так же пристально
изуча ли, все ли (включая звук, бес-
проводную и обычную сеть) работает
прямо из коробки.

У
льтрапортативные ноутбуки – сервисы облачных вычислений, они мо- добных за дач, и многие из них по став-
Наш типа Eee PC – становятся все гут предоставить множество дополнитель- ляют ся c пред уста нов ленным Linux,
выбор популярнее. Компьютер так ных функций. Если вы никогда не слыша ли а не с Windows – на худой конец, с воз-
EeeXubuntu мал, что может постоянно быть об облачных вычислениях, то их идея – мож но стью вы брать Linux – для сни-
с. 19 при вас, не вызывая боли в спине, и неве- в хранении и использовании данных в се- жения стоимости. Ведь кто станет вы-
GOS с. 20
роятно полезен, особенно благодаря росту ти, а не на локальном компьютере. Быть кла дывать уйму денег за компью тер,
Pupeee с. 18
Xandros с. 17 числа точек доступа и покрытия 3G-сетей. может, это не слишком понятно, но при- чья за дача – бол таться в поход ной сум-
Однако нетбуки не прикованы исклю- мер онлайн-приложений Google, храня- ке? Кроме того, вся концепция об лач-
чительно к web-серфингу – опираясь на щих данные на уда ленном сервере, мно- ных вычис лений основа на на идее обще-
гое прояснит. доступных де шевых уст ройств и вы хода

«Для доступа к данным Та ким обра зом, все, что вам нуж-
но – это ин тернет-со единение, для
в сеть. Но пре дуста нов ленный дист ри бу-
тив может быть не лучшим вы бором для
необходимо только досту па и управ ления фай ла ми неза ви-
симо от ва шего ме стопо ложения. Это
вас, а чис ло су ще ствующих ва ри ан тов
Linux для нетбу ков все растет. Чи тай те
интернет­соединение.» де лает нетбу ки иде альными для по- на ше сравнение популярнейших из них.

16 Linux Format Май 2009


ДистрибутивыСравнение

Xandros
Стандартный дистрибутив для Eee PC ограничен по охвату и приложениям.

X
andros – стандартная ОС, постав- стройка производится в Центре управления
ляемая с Eee PC. При первой за- с хорошо организованным меню.
грузке вы попа даете в Простой Все работает нормально, в частности,
режим – или, грубо говоря, «Мой первый сеть (проводная и беспроводная, вклю-
рабочий стол». В нем присутствуют вклад- чая WEP-ключи) и звук (MP3 и AVI, а так же
ки Work [Работа], Internet [Интернет], Learn OGG). Однако приложения не всегда на деж-
[Обучение], Play [Развлечения] и так да лее, но распознают беспроводные сети – иног-
с большими кнопками для ка ж дого прило- да приходится явно указывать SSID сети
жения. В нем нет стартового меню, а пото- вместо простого поиска той, что доступна,
му нет очевидного способа перехода в кон- а когда вы где-то в незнакомом месте, это
соль, но на жатие Ctrl+ALt+t переносит вас весьма неприятно.
в нее.
Если вам надо лишь запускать web-брау- Значение размера Xandros облада-
зер и, возможно, изредка открывать доку- Во всех дистрибу тивах выявился непри- (на форумах и wiki, под держиваемых поль-
ет угнетающе упро-
менты, то сгодится и такая среда, но все ятный момент – некоторые диа логи при- щенным режимом зователями, информации полно), но всегда
это ограниченно и удручает тех, кто хоть ложений и окна слишком велики для Easy [Простой]. есть шанс, что они будут конфлик товать
чуть-чуть знаком с Linux. Более полезен небольшого экрана нетбука (800 × 600 с уже установленным ПО Xandros. К сожа-
Advanced Desktop [Продвину тый рабочий в случае Eee PC). Проблема решается пе- лению, чем больше вы обновляетесь, тем
стол], который весьма просто настроить; ремещением окна мышью при на жатой больше и этот шанс. Это неприятно да же
однако потребуется загрузить нестандарт- клавише Alt. И все же позорно, что боль- при условии, что Xandros вам вручили вме-
ные пакеты и изменить некоторые парамет- шая часть диа логов, в отличие от встро- сте с машиной, а не вы установили его са-
ры. Соответствующие инструкции вы най- енного окна настройки Xandros, не под- мостоятельно.
дете на форуме Eee PC, а не у Xandros. гоняет свой размер под небольшой экран Последняя проблема – и с ней труднее
Тогда после запуска вы ока жетесь в ра- автоматически. всего смириться – это использование фай-
бочем столе на базе KDE, который выгля- ловой системы unionfs. Фак тически, диск
дит весьма знакомо. Имеется OpenOffice.
org, а так же Firefox (версия 2), Skype
«Ограничен и удручает, в 4 ГБ разбит на два раздела: один – толь-
ко для чтения (он содержит заводские на-
и Thunderbird. Есть приложение для рисо-
вания и Gwenview (программа просмотра
если вы хоть чуть­чуть стройки), а другой – ваше рабочее про-
странство, которое можно изменять. Эти
фото/изобра жений), но нет GIMP. Музы- знакомы с Linux.» два раздела существуют один над другим
ку воспроизводит Amarok, а стандартный (считайте, что они объединены). И если,
текстовый редак тор – Kate: версия не но- Еще более раздра жает то, что Xandros, ска жем, вы обновите Firefox до версии 3,
вая, но с работой справляется неплохо. По похоже, не сильно озабочен обновлением то существующая версия Firefox на первом
умолчанию так же поставляется ПО для своих приложений. Вы можете установить разделе не будет уничтожена. Вместо это-
уда ленного доступа к рабочему столу. На- другие программы с различных сайтов го новая информация запишется в пользо-
вательский раздел, удвоив расход памяти
и изрядно потеснив ваши данные. Правда,
заводские настройки при таком раскла де
восстанавливаются за несколько секунд,
да вдобавок есть возможность выполнить
это при загрузке, но это не повод тра-
тить ценное пространство. Конечно, мож-
но уда лить файловую систему и заменить
ее обычной, но раз так, может, вообще по-
пробовать другой дистрибу тив, а?

Вердикт
Xandros
Версия:ДоработаннаяверсияAsus
Сайт:www.xandros.com
Цена:$99,99(бесплатнаяпробнаявер-
сияна30дней)
Проствиспользовании,нопроиг-
рываетпочислудоступныхпакетов,
афайловаясистемажаднадопамяти.

Центр управления Xandros хорошо организован и реализован. Рейтинг 6/10


Май 2009 Linux Format 17
СравнениеДистрибутивы

Pupeee
Дистрибутив-малыш, предоставляющий чертовски много.

Б
ольше всего в Puppy Linux подку- нению с отдельной установкой Firefox
пает его небольшой размер и воз- и Thunderbird. Вы так же получите Skype,
можность загрузки с LiveCD или который весьма полезен, когда вы в пу-
USB-диска: и то, и другое – прекрасные ка- ти. Встроенный редактор – Geany, но так-
чества системы для нетбука. На самом де- же доступен и Leafpad, а кроме того, Abiword
ле, он прекрасно работает и с USB-брелка, и просмотрщик PDF. Для графики, на борту
и если вы не решаетесь сменить дистрибу- MtPaint, Inklite и GTKSee, а для работы с муль-
тив, можете держать его под рукой на вся- тимедиа – XMMS, Gxine, Xine и пара инстру-
кий случай. Pupeee – версия, специаль- ментов для риппинга и записи CD/DVD.
но подогнанная под Eee PC, но в принципе Файловый менед жер ROX-Filer прост,
подойдет и для других нетбуков. Однако но все-таки умеет выделять, сортировать
Pupeee не сработался с Eee PC 901; в этом и отобра жать файлы различными спосо-
случае попробуйте его родительский дист- бами и содержит меню закла док. Отметим,
Рабочий стол
рибу тив – Puppy. что USB-диски не монтируются автоматиче- Pupeee охотно проигрывает MP3, AVI-ви-
Pupeee Linux опря-
Стройняшка Pupeee занимает 131 МБ, ски: для этих целей предназначена утили- тен и компактен. део и OGG-файлы, не требуя установки
а обычный Puppy требует да же меньше та Pmount – ее иконка есть на рабочем сто- никаких дополнительных кодеков. Однако
места, так что небольшая дисковая память ле. Инструмент несложный, но дело свое придется открыть звуковой микшер, чтобы
нетбука используется очень эффек тив- делает, и вы легко к нему привыкнете. довести громкость до слышимого уровня.
но. Другое преимущество – способность А если вам необходимо больше прило-
дистрибу тива работать в ОЗУ, снижая чис- жений? Ну, Puppy использует систему па- Облака на горизонте
ло цик лов записи на твердотельный нако- кетов PET: официальные пакеты доступны Теперь – критика: у нас были проблемы
питель и тем самым увеличивая срок его на LiveCD (с которого выполнялась установ- с беспроводной сетью. Pupeee пытается
службы. ка), и любой может создать неофициаль- упростить жизнь, предоставив на рабочем
Несмотря на столь скромный занимае- ный пакет. Однако, поскольку это не основ- столе иконку Connect [Подключиться]; на-
мый объем, Pupeee содержит массу прило- ной дистрибу тив или система, то пакетов стройка-то выполняется, но мы обнару-
жений, доступных по умолчанию, и меню доступно куда меньше, чем для дистрибу- жили, что интерфейс несколько бестол-
для их поиска хорошо организовано. Рабо- тивов на базе Debian/Ubuntu/Fedora. ков. Вместо на жатия одной кнопки для
чий стол довольно прост, но для ма ленько- Довольно о программном обеспечении; выполнения всех действий, вы должны
го экрана это нормально. звук отлично работает прямо из коробки – снача ла настроить беспроводной профиль,
Для выхода в Сеть используется Sea- а затем другой кнопкой подключиться
Monkey – это web-приложение все-в-одном,
охватывающее web-серфинг, элек трон-
«В скромном объеме к DHCP-серверу. К тому же мы не смог-
ли добиться работы в сети с WEP-шифро-
ную почту и группы новостей, IRC и редак-
тирование HTML. Оно основано на коде
Pupeee содержится ванием, хотя профиль по умолчанию хоро-
шо соединялся с открытой сетью.
Mozilla и немного экономит место по срав- масса приложений.» Одно замечание напоследок: Pupeee
не имеет полноценного сайта под держ-
ки, так что за помощью следует обращать-
ся на различные форумы. У Puppy Linux
сайт вполне приличный, и в общем, мно-
гое должно работать в Pupeee так же, как
и в прародителе. Но, вновь, вы получите
больше содействия, если выберете более
распространенный дистрибу тив.

Вердикт
Pupeee
Версия:3.01
Сайт:http://waltonpond.com/EeePC(или
www.puppylinux.orgдляродительско-
годистрибутива)
Цена:БесплатноподLGPL,хотяневсе
пакетыабсолютносвободны.
Этоткрошечныйихорошоуком-
плектованныйдистрибутив,увы,
несправилсясWEP-сетью.

Меню Pupeee — целый воз приложений, а в нижнем уголке – симпатичная собачья мордочка. Рейтинг 7/10
18 Linux Format Май 2009
ДистрибутивыСравнение

EeeXubuntu
Версия безумно популярной Ubuntu для нетбуков.

У
нас были некоторые проблемы с ин- массового переименования файлов, кото-
сталляцией и запуском EeeXubuntu: рый можно запускать отдельно. Он име-
автоматическая установка на USB- ет блистательную функцию поиска и за-
накопитель выполняется не вполне кор- мены – можно взять кипу файлов с некой
ректно, и в итоге нам пришлось вручную строкой в названии и заменить ее на дру-
копировать файлы на брелок, а затем пра- гую строку; а так же под держивает пере-
вить syslinux.cfg. После этого дистрибу тив именование на основе медиа-тэгов, на-
загрузился за пару минут. пример, ID3, что удобно для управления
Когда EeeXubuntu заработал, мы увиде- медиа-коллекцией.
ли, что дистрибу тив, в целом, напоминает Графическим окру жением в EeeXubuntu
другие версии Ubuntu. Поскольку весь его является Xfce, который способен прак ти-
дизайн кру тится вокруг идеи дру желюб- чески на все, что вы ожидаете от рабоче-
ности и предоставления знакомого окру- го стола. Однако мы столкнулись с пробле-
жения, то не удивительно, что для настоль- мами мониторинга батареи: нам упорно
ного Xandros этот скроенный для Eee PC (и ошибочно) напомина лось, что у нашей
дистрибу тив – нож в спину. тестовой машины с ней нела ды.
Менеджер фай-
По части доступности, управление бес- Сетевые заморочки были мелкими,
лов Thunar во всей
Яблоко от яблони проводными сетями в EeeXubuntu рабо- своей скандинав- но совместимость с файлами прямо из ко-
Схожесть не ограничивается эстети- тает с ходу и дополняется приятным ок- ской красе. робки – это уже важнее. Хотя OGG проигры-
кой: EeeXubuntu постав ляется с пол- ном Visible Networks [Видимых сетей]. вается автоматически, пакеты для воспро-
ным набором приложений, повторяю- Нам показа лось, что подключение к бес- изведения MP3 или Xvid (AVI) потребуется
щим популярный родительский дистри- проводной сети с WEP-ключом ма лость загру жать дополнительно. Единственный
бу тив. Thunderbird, Firefox и Pidgin – все канительно, но мы все-таки сумели за- имеющийся проигрыватель – Totem Movie
на месте, а для офиса имеется AbiWord ставить ее работать. Из наших мытарств Player, способный работать так же и со зву-
и Gnumeric. К сожа лению, нет OpenOffice. мы вынесли важное наблюдение: следует ковыми файлами.
org, но для пакета по умолчанию на сла-
бой машине он великоват, а кто по нему
«Работа напоминает Армия опций
стра дает, всегда может взять OOo из ре- Понятно, вы можете установить любые па-
позиториев Ubuntu. Кроме того, имеется
простая программа-ка лендарь, Brasero
другие дистрибутивы кеты, доступные для Ubuntu или Debian,
а это очень много программ. Естествен-
для прожига дисков и подборка игр – все на базе Ubuntu.» ное преимущество использования лю-
для удобной работы. В отличие от Pupeee, бых версий ведущих дистрибу тивов – на-
USB-диски и SD-карты монтиру ются авто- знать и понимать разницу меж ду пароль- личие доступа ко всему, что сделано для
матически. ной фразой и ASCII-ключом WEP, а так же «старшего брата». Однако в случае коде-
Еще одна составляющая набора про- отметили, что при запросе на ввод общего ков MP3/Xvid неприятно, что модули рас-
грамм – легковесный файловый менед- ключа [shared key] вместо соответствую- ширения не определяются автоматически,
жер Thunar, и работает он вполне прилич- щей опции по умолчанию отмечен Open то есть их на до искать в сети и затем ис-
но, да же при ограниченных ресурсах. Нас Network [Открытая сеть]; это, пожа луй, пользовать менед жер пакетов Synaptic
особенно потряс его мощный инструмент недосмотр. для их загрузки. Это удивляет: ведь в от-
прыске Ubuntu ждешь на личия функции
их установки при попытке воспроизве-
дения непод держиваемого файла; хотя это
может быть связано с лицензиями.

Вердикт
EeeXubuntu
Версия:НаосновеXubuntu7.10
(GutsyGibbon)
Сайт:http://wiki.eeeuser.com/
ubuntu:eeexubuntu:home
Цена:Бесплатноподразличными
лицензиями,нокодосновныхприло-
женийоткрытидопускаетизменения.
ЭтоUbuntuдлянетбуков—делает
своедело,иделаетегохорошо.

По умолчанию показываются доступные беспроводные сети и их статус. Рейтинг 8/10


Май 2009 Linux Format 19
СравнениеДистрибутивы

GOS
Дистрибутив с серьезным уклоном в Web.

В
опреки популярному мнению,
GOS означает не Google OS,
а Green OS. Однако он тесно связан
с Google и Google Aps (к тому же это еще
один дистрибу тив на базе Ubuntu в ду хе
EeeXubuntu). За исключением изумрудной
цветовой па литры, GOS весьма напомина-
ет Mac OS X, с закругленными углами, па-
нелью за дач вверху и набором блестящих
вид жетов.
Красота требует жертв, и GOS – самый
большой из дистрибу тивов нашего Срав-
нения. Он требует целых 694 МБ для за-
грузки и 2 ГБ для установки ОС. Учтите,
что это сокращает место на диске для ва-
ших файлов, да к тому же приводит к ощу-
тимому увеличению времени загрузки по
сравнению с дру гими альтернативами.
Звук работает сразу же, что подтвер-
ждается приветственной мелодией в ду хе
Microsoft (к счастью, ее можно отключить).
Услада глазного
По умолчанию установ лен проигрыватель грам мы для плат фор мы Microsoft; сю да Нам понравилась идея дистрибу ти-
нерва — рабочий
Rhythmbox, но, как и в EeeXubuntu, прямо стол GOS. вклю чен Notebook. ва, всерьез ориентированного на работу
из коробки воспроизводить MP3-файлы Среди повседневных приложений – в Сети: именно для этого и предназначены
нельзя. Почему они выглядят окрашенны- GIMP, OpenOffice.org и XSane, дополнен- нетбу ки. Однако в реальности GOS доволь-
ми в серый цвет при попытке их открытия ные кое-какими играми. Установ лен Vim, но мед лителен, и это не всегда компенси-
в Rhythmbox, не объясняется, но ес ли клик- но не Emacs, а редак тор текстов по умол- руется высокой скоростью беспроводно-
нуть на них в файловом менед жере, то за- чанию – Gedit. го подключения, поэтому использовать
пустится Totem Movie Player – странный его в дороге часто утомительно. Отбро-
выбор для воспроизведения MP3-файлов Детально сив усиленную подгонку под работу с он-
по умолчанию. Зато заодно появ ляется При загрузке запускается набор гад жетов: лайн-контентом (раз личные приложения
полезный диа лог загрузки кодеков. OGG индикатор сигна ла беспроводной сети, Google), GOS мож но считать просто раз-
проигрывается прекрасно, но для воспро- уровень заряда батареи, апплет погоды, ду той и тормозной версией Ubuntu для
изведения AVI опять же придется скачать ка лендарь, связанный с Google Calendar, нетбу ков. Красота – это замечательно,
кодек: соответствующее пред ложение и калькулятор. У нас был еще и неопо- но на небольшом ма ломощном нетбу ке
возникает при открытии «проблемного» знанный гад жет: он выводил лишь сооб- она слишком обременительна для вычис-
файла в Totem. щение об ошибке. Эта толпа великовата лительных ресурсов.
для ма ленького экрана нетбу ка, но любой И все же во многом это отличная систе-

«Это не ОС от Google, из них можно уда лить правым щелчком.


К сожа лению, бес про вод ная сеть на
ма, и определенно самая красивая из всех
протестированных нами. Она так же обла-
но он тесно связан на шем Eee PC не за пусти лась. Это ис-
пра ви мо (за ме ной яд ра), но крайне до-
дает потенциа лом для ноутбу ков и новей-
ших мощных нетбуков, так что приметьте
с Google Apps.» сад но, осо бен но по сравнению с дру ги- ее на будущее.
ми ди ст ри бу ти ва ми. Упу щение до вольно
Для web-дея тельно сти ди ст ри бу- стран ное, с уче том то го, что GOS за ду-
тив снабжен Firefox, Pidgin и Thunderbird, ман как ди ст ри бу тив для об лач ных вы- Вердикт
а так же ссыл ка ми на Google Docs, Google чис лений – и это не по пыт ка разра бот чи-
Finance, Google Reader, Picasa и дру- ков сде лать яд ро осо бо ма лым. Ви ди мо,
GOS
гие. Вме сто за пуска в брау зе ре, они от- де ло в том, что GOS не пред на значен
Версия:3.1(основаннаUbuntu8.04.1)
кры ва ют ся в Prism, но вом при ложении для на ше го тесто во го Eee PC, в отли- Сайт:www.thinkgos.com
Mozilla, по зво ляю щем вы пол нять web- чие от дру гих про тести ро ванных ди ст- Цена:БесплатнополицензииCreative
при ложения без об рам ления ин тернет- ри бу ти вов, и драй вер имен но этой бес- CommonsAttributionNoncommercial
ShareAlike3.0Unported.
обо зре ва те ля. Идея ин те рес ная, хо- про вод ной кар ты не был встро ен
тя нам по ка за лось, что ра бо тать прямо в яд ро. Мы вы яснили, что на дру гих Прекрасныйвидиинтеграция
в та ком окне немно го жут ко! Дру гое нетбу ках сеть ра бо та ет хо ро шо, и слы- сонлайн-приложениями,номожет
тормозить.
важ ное до бав ление к это му па ке ту про- ша ли, что это вер но и для Eee 901. Как
грамм – Wine, уста нов лен ный по умол-
чанию, что по зво лит за пускать про-
уже от ме ча лось, уста нов ка по следней
вер сии яд ра ре ши ла про бле му.
Рейтинг 6/10
20 Linux Format Май 2009
ДистрибутивыСравнение

Дистрибутивыдлянетбуков

Вердикт
EeeXubuntu 8/10
И
з-за зависимости от сети и ог- нетбуков. Вот почему наш победитель – доступных в EeeXubuntu, хотя основные
раниченных возможностей обо- EeeXubuntu, лучше всех ухвативший суть операции обеспечены.
рудования, нетбуки предъявля- того, что делает смену дистрибу тива хоро- Стоит отметить, что Pupeee легко за-
ют повышенные требования к своим ОС, шей идеей. пускается с LiveUSB, то есть можно со-
по сравнению с современными компью- Он зиж дется на популярности Ubuntu. За- вместить преимущества обоих дистри-
терами. Проведенный тест ясно показал, лог его успеха – на дежность, идеал для бу тивов; нужно только примонтировать
что пока никто в полной мере не овла- нетбуков: здесь важно, чтобы все работа ло после загрузки ваш домашний ката лог
дел искусством облачно-ориентирован- четко и без проблем. EeeXubuntu предостав- и сохранять файлы в нем. Есть смысл со-
ного Linux. ляет это в изобилии, и среди рассмотрен- хранять данные меж ду сессиями в спе-
ных здесь дистри- циальном файле Pupeee, который затем,

«Искусством облачно­ бу тивов он создал


меньше всего мо-
при следующей загрузке, автоматически
подключается.
ориентированного роки с настройкой
и за работой.
Зато GOS – самый приятный для глаз
из всех протестированных дистрибу ти-
Linux не овладел никто.» Pupeee очень вов, с прекрасной интеграцией с сетью, ес-
близок к вершине: ли, конечно, вы уверены в на личии доступа
Главная причина уйти с предустанов- это отличный компактный дистрибу тив к ней. Однако для повседневного исполь-
ленного дистрибу тива – это возможность с широким ассортиментом ПО. К сожа- зования он несколько мед лителен и требу-
обзавестись преимуществами родитель- лению, проблемы с WEP означают, что ет подгонки.
ской ОС, установив добавочные пакеты в смысле прак тического использования Наконец, отсутствие современных
и обновления, не довольствуясь скудным он лишь дышит в спину EeeXubuntu. К то- пакетов для Xandros и его зависимость
набором программ, специфичных для му же в нем отсутствует масса приложений, от установки раздра жающей файло-
вой системы делает его очевидным не-
Вполне удачником из четырех, хотя его исходная
предсказуемо, функциональность на уровне EeeXubuntu
но EeeXubuntu и GOS. LXF
хорошо справился
с работой.

Обратная связь
Будущее за нетбу ками и всепрони-
кающим Интернетом? Что нам нуж-
но: сияющий красавчик или урезан-
ный ма ленький дистрибу тив? Знает
ли кто-нибудь, как заставить рабо-
тать беспроводную сеть в Pupeee?
Пришлите нам ваше мнение/совет
на letters@linuxformat.ru.

Сравнительная таблица свойств


Цена/ Имеющийся набор Доступность Поддержка Простота
Название лицензия приложений приложений «прямо Размер использования Эстетика
из коробки»

Xandros $99 Уже устарел Ограничена Великолепная Большой Прост Стандартный


из-за unionfs рабочий стол

Невелик, Хорошая, Чуть менее


Pupeee GPL но расширяем Ограничена в отличие от Крохотный дру желюбный Урезанный
под держки WEP

EeeXubuntu GPL Расширяем Великолепная Хорошая Средний Прост Стандартный


рабочий стол
Хорошая, кроме
GOS Creative Commons Великолепен беспроводной Нет Большой Прост Красивый
сети

Май 2009 Linux Format 21


Ищем идеальный дистрибутив

Найти идеальный
дистрибутив
Ветеранам, новичкам, игрокам, хакерам –
Linux способен удовлетворить любые запросы к компьютеру.
Дистрибутив вашей мечты подбирает Грэм Моррисон.

Н
Содержание
а момент написания статьи имеется три сотни ко, а скачивание, установка и тестирование дистрибу тива Linux
Визитерам с. 24 и двадцать три дистрибу тива, отслеживаемые требует нема лого времени.
Ubuntu, Linux Mint на distrowatch.com. Один называется Ehad. Дру-
и Qimo
гой — Estrella Rosa. Имена многих содержат букву Выбор за вами
Тру женикам с. 26
«X», талисманы у некоторых нарисованы от руки, а сообщества На следующих страницах мы рассмотрим наиболее широко
Fedora, OpenSUSE
и Puppy несопоставимо малы. Не все они основаны на Linux, не все на- употребляемые сценарии использования и выда дим рекомен-
ходятся в ак тивной разработке, но подавляющее большинство дации, основанные на нашем личном опыте. Ка ж дому сцена-
Корифеям с. 28
Arch, Mandriva развивается. Это мир выбора, и он стал возможен благодаря рию отведен особый раздел. Начнем мы с дистрибу тивов для
и CentOS свободному и открытому ПО. случайных пользователей, например, новичков в Linux или тех,
По интересам с. 30 Лучшее в Linux – возможность выбора. Не выбирая, мож- кто перешел на него с других ОС; затем перейдем к вариан-
64 Studio, но с тем же успехом пользоваться ОС, где решения принимае- там для более опытных, а закончим дистрибу тивами Linux,
Mythbuntu и Linux те не вы, а разработчики. Как мы уже отмеча ли ранее, свой ди- ориентированными на специальные за дачи. Мы испробова-
Gamers
стрибу тив Linux может создать ка ж дый. Удачные выживают, ли ка ж дый из перечисленных дистрибу тивов, и то, что нам
неудачные исчезают бесследно. Однако есть и оборотная сто- не пришлось повторяться в рекомендациях, говорит о широ-
рона меда ли: при виде столь пышного изобилия, как говорит- те их диапазона и высоком качестве. Любой из них уника лен,
ся, глаза разбегаются. Чтобы понять, какой дистрибу тив вам со своими сильными и слабыми сторонами, и представляет со-
действительно под ходит, придется перепробовать их несколь- бой лучшее, что может пред ложить наше сообщество.

22 Linux Format Май 2009


 Ищем идеальный дистрибутив

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

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

Приложения, а не дистрибутивы
Километраж вашего пробега по списку дистрибу тивов и просмотр
их Live CD – это еще не все. При выборе системы для семьи или
друзей определяющим фактором будет ассортимент имеющихся
приложений, а не дизайн или философия. Это нелегко, посколь-
ку у многих на слу ху громкие имена коммерческих программ для
проприетарной ОС, а не их открытых аналогов, и вам придется
обеспечивать доступность подобных приложений. Например, для
школьников весьма существенно, чтобы в дистрибу тиве имелись
приложения и ресурсы, требуемые учебной программой. Сущест-
Имеются дистри-
вуют дистрибу тивы специально для учащихся, но как правило, они ток совпа дут с нашими выводами, изложенными на следующих
бутивы, ориентиро-
предоставляют разве что разумный комплект под ходящих прило- страницах, то вы нашли улучшение в любимом дистрибу тиве – по- ванные специально
жений, а вовсе не системный под ход к дизайну, способный скрасить пробуйте его! на студентов (на-
жизнь студента. В таких случаях лучше ограничиться дистрибу ти- Поиск того, какие дистрибу тивы годятся, а какие нет, подобен пример, Scibuntu),
вом общего назначения, позаботившись о наличии программ. отобра жению песчаных дюн на карте. Движение не видимо гла- однако нередко
Если эта цель достигну та, главной заботой становится просто- зу, но через год ваша любимая система ока жется совсем в другом важнее просто най-
ти лучший рабочий
та использования. Здесь больше смысла будет не в поиске самого месте. По этой причине следует заодно приглядеть пару симпа-
стол.
удобного дистрибу тива, а в выборе лучшего окру жения рабочего тичных вам дистрибу тивов – случись худшее, вы всегда переско-
стола и такой системы, где оно внедрено наиболее эффек тивно. чите на другую лодку.
Например, если вы фанат KDE, вам нет ну ж ды в великолепии стан-
дартного рабочего стола Ubuntu: вам подавай именно дистрибу тив
на базе KDE, причем не обязательно Kubuntu. Наверное, вы сочте-
те, что лучшее решение предоставляет Mandriva. А пользователи
Ваш выбор: 64 или 32 бита?
Xfce на тех же основаниях обратятся к Linux Mint. Разрядность центрального процессора режиме совместимости, который на самом
влияет на производительность вашей деле не так уж и совместим. К счастью,
Каждому свое системы и ее возможности. Мы долго ситуация изменилась. Adobe выпустила
Когда дойдет до личного опыта, следует отметить те приложения, ограничива лись 32-битными CPU и 32-бит- 64-битную версию Flash 10; ее примеру
которым вы доверяете, и те, что ка жутся вам наиболее эффек тив- ными приложениями, но в недавно вышед- последова ли и другие. Теперь, ес ли ваш
ших процессорах Intel и AMD за действо- дистрибу тив пред лагает 64-битную вер-
ными в текущем рабочем окру жении. Если какие-то из этих заме-
ваны 64-битные операции. Например, сию и ваше оборудование способно его
64-битный чип от AMD был выпущен запустить, мы полагаем, что переход
в апреле 2003 года, и все популярные про- назрел.
цессоры Intel из линейки Core2 Duo спо-
собны работать в 64-битном режиме. Про-
блема состоит в том, что многие из нас
продолжают запускать на этих процес-
сорах 32-битные приложения. Чтобы
полу чать выгоду от 64-битных операций,
следует поставить специальную 64-бит-
ную версию вашего дистрибу тива. Боль-
шая часть дистрибу тивов имеет таковую,
но до недавнего времени в переходе
было ма ло проку. Проприетарные прило-
жения, типа Adobe Flash, нельзя просто
перекомпилировать под 64-битный про- В прошлом, главным препятствием для
цессор, поскольку их код закрыт. Вместо 64-битного Linux было отсутствие род-
Выбирая дистрибутив для конкретной «демографии», в первую этого они запуска лись в каком-то жутком ного расширения Adobe Flash.
очередь озадачьтесь доступностью основных приложений.

Май 2009 Linux Format 23


Ищем идеальный дистрибутив

Визитерам
З
а последние годы общее мнение, что Linux – ОС для а это подразумевает проприетарные программы – тот же Adobe
технарей и компьютерных спецов, несколько померк- Flash – и спорные кодеки, вроде MP3. Без этих простых усту-
ло. Похоже, что люди, пробующие Linux впервые или пе- пок пользователи, скорее всего, ощу тят непродук тивность
реходящие на него с более дорогих и ограниченных операци- и вряд ли останутся на Linux. Делу так же поможет удержание
онных систем, обеспечат стабильный рост пользовательской в ра дарном оцеплении более зага дочных Linux-штук, напри-
базы Linux в ближайшие несколько лет. В списке под ходящих мер, виртуальных рабочих столов, командной строки и менед-
здесь значатся несколько дистрибу тивов. Новым пользовате- жера пакетов. Подобные вещи часто приводят в смятение тех
лям ну жен доступ к приложениям, к которым они привык ли, новых пользователей, что ищут привычной обстановки.

Новичку Ubuntu 8.10/9.04


Н
есмотря на недавние критические атаки, несомненно,
Наш выбор что Ubuntu – превосходный дистрибу тив Linux. Шуми- Не пропустите…
ха в прессе сдела ла слово Ubuntu едва ли не синонимом
www.ubuntu.org
слова Linux. Внимание он привлек по весьма важной причине:
Так же рассмот-
рите Mepis Ubuntu придал Linux форму, удобную для восприятия обычных
пользователей, и не требует специальных знаний.
Благодаря массе официальных от ветв лений, Ubuntu стал
одним из распространеннейших дист рибу тивов, но его реаль-
ная мощь – это самый дру же любный к поль зовате лю рабочий
стол. Он бескомпромиссно борется за удобство, да же рискуя
навлечь гнев от кры того сообщества за исполь зование про-
приетарных драйверов. В Ubuntu так же исключи тельно хоро- Простая установка Сообщество
ша под держ ка оборудования: он без всяких проблем установит- Почтилюбойсможетустано- Есливыстолкнетесьспро-
ся на многих компьютерах, и скорее всего, ваш монитор будет витьUbuntuнасвоюмашину блемой,всешансызато,что
иначатьработатьсLinux. другиепользователиужеее
настроен оп тимально, а точка беспроводного досту па послуш-
решили.
но обнару жится – именно здесь застревают многие новые поль-
зовате ли, и Ubuntu явно повысил планку по части аппарат ной
совместимости.
вер с LTS, вы можете рассчи тывать на обнов ления безопасно-
Король уживчивости сти в течение пя ти лет. Они лег ко обеспечивают ак туальность
Кроме того, Ubuntu предска зуем. Ежегодно вы ходят весенний системы и гаран тиру ют, что ваша система избав лена от оши-
и осенний ре лизы, на одном CD, который загру жает работоспо- бок и неуязвима для последних эксплой тов. Теоретически, ва-
собное ок ру жение рабочего стола, и ка ж дый ре лиз под держи- ша установка может так же обнов ляться до следующего ре лиза,
вается три года – или четыре, ес ли он помечен как версия LTS хотя наш успех при этой процеду ре был скромным. Обнов ление
(«long-term support» – долгосрочная под держ ка). Запустив сер- сработает, ес ли вы ог раничива лись официальными пакетами
и ма ло что меня ли в настройках вашего рабочего стола. Но ес-
ли вы люби тель пакетов из Интернета или из непод держивае-
мых репо зи ториев Universe и Multiverse, лег че будет выполнить
инстал ляцию с нуля.
Проведя установку, выберите приложения по умол-
чанию. Включены привычные OpenOffice.org и Firefox, а слож-
ные аспек ты управления файлами в Gnome, рабочем столе по
умолчанию, по сравнению с предшественниками Ubuntu замет-
но приглу шены. Панели настроек Ubuntu имеют минимум оп-
ций, и разработ чики отводят много времени на такие вещи, как
работоспособность Network Manager в стандартной установ-
ке Gnome. Последний релиз, Ubuntu 9.04, держится на высоте:
здесь пред лагаются су пер-быстрая загрузка и обычный выбор
обнов лений пакетов, в том чис ле и OOo 3.0. Это очередное до-
ка зательство выдающейся широты диапазона, разнообразия
и стабильности пакетов Ubuntu. При всем этом вместе взятым,
Ubuntu – идеальное средство убеж дения тех людей, кто охотнее
Gnome, рабочий стол Ubuntu, не собьет с толку даже зеленого новичка. обошел бы Linux стороной. Именно поэтому мы выбираем его
как дистрибу тив для новичков.

24 Linux Format Май 2009


 Ищем идеальный дистрибутив

ОС-мигранту Linux Mint


М
ногие переходят на Linux, будучи раздоса дованны- Все это создает идеальные условия для первого знаком-
Наш выбор ми дороговизной и отсутствием свободы в проприе- ства. Меню запуска настроено так, что набор пред лагаемых про-
тарных ОС. За недавние годы, благодаря графиче- грамм и утилит и способ их организации пока жутся очень при-
www.linuxmint.com
ским изыскам, введенным и в Mac OS 10.5 от Apple, и в Windows вычными. Рабочий стол по умолчанию не содержит виртуальных
Так же рассмотрите
PCLinuxOS Vista, рабочие столы компьютеров обзавелись приятной наружно- экранов, способных сму тить новичка. А рафинированный дизайн
стью. И именно симпатичный внешний вид и внимание к дета лям и забота о мелочах делают Mint идеальным кандидатом для всех
определяли наш выбор дистрибу тива Linux для мигрантов, а побе- неофитов Linux.
дителем здесь стал Linux Mint. Mint [англ. «мята»] – одна из систем
на прочном фундаменте Ubuntu. Он сохранил хорошие стороны,
то есть отличную под держку оборудования и простоту установ-
ки, но сделал косметический ремонт, укрепив слабое место: туск-
лость рабочего стола Ubuntu.

Мятная свежесть
Улучшения состоят в уда лении верхней панели меню и замене тем
и па литр исходного дистрибу тива на гамму шоколадно-мятного
мороженого. Однако Linux Mint наиболее эффек тивен для новооб-
ращенных пользователей благодаря на личию кодеков. Большая
часть музыки и видео будет проигрываться без добавочных уси-
лий, а Adobe Flash и Java от Sun доступны по умолчанию. Другая
приятная добавка – установщик пакетов Mint, похожий на Synaptic
из Ubuntu, но превзошедший его: он демонстрирует снимок эк-
рана, рейтинг и отклики пользователей прямо в списке пакетов,
делая процесс добавления ПО поистине увлекательным. А если
у вас нет иного выхода, чем запуск программы для Windows, Wine
(эмулятор Windows) инсталлируется одним лишь взма хом жезла Козырь дистрибутива Mint – отличный установщик пакетов, соз-
установщика. данный сообществом.

Друг семьи Qimo


С
обираясь установить Linux на главный семейный ком- Christian Edition. Наряду с содействием изучению Библии, он вклю-
Наш выбор пьютер, следует учесть два важных обстоятельства. Во- чает заранее настроенный DansGuardian, который с ходу блокиру-
первых, выбранный дистрибу тив должен быть прост ет большую часть неприятных сайтов. Предусмотрен графический
www.qimo4kids.
com в использовании. Многим достаточно гулять по Сети, болтать че- интерфейс для родительского контроля, меняющий локальный
Так же рассмотрите рез программу обмена мгновенными сообщениями, слушать му- прокси и настройки Firefox; вдобавок ведется журнал прочитанно-
Ubuntu Christian зыку и составлять несложные документы. Если Linux справится го с указанием времени чтения. Именно это и требуется для млад-
Edition
с этими скромными за дачами, домочадцы не попросят вернуть ших членов семьи, а поскольку Christian Edition основан на Ubuntu,
обратно XP. Во-вторых, семейный доступ к Интернету должен там легко установить любые другие пакеты программ.
быть безопасным, и необходим контроль за тем, куда можно по-
пасть с данного компьютера.
Первый пункт решается пу тем применения дистрибу тива, спе-
циально разработанного для юных созданий, а лучший из таковых
нам известных называется Qimo. Этот дистрибу тив предназначен
детям: у него дру желюбно увеличенный рабочий стол и привлека-
тельное, красочное оформление. Внизу экрана сидит небольшая
панель инструментов, которой ребята могут пользоваться для бы-
строго запуска свободных игр и образовательных приложений.

Сеть, безопасная для детей


Разрешение второй проблемы чуть сложнее, поскольку фильтра-
ция контента – это непростой технический вопрос, чу ж дый откры-
тому, дру желюбному дистрибу тиву. Например, чтобы отфильтро-
вать сайты, неуместные для детского доступа, подойдет любой
дистрибу тив с правильно настроенным OpenDNS или сервером
DansGuardian. Но есть на свете дистрибу тив, содержащий такие Идея Qimo — дружелюбный рабочий стол, с хорошим выбором
функции и все же понятный ка ж дому пользователю, и это Ubuntu программ, помогающий вашим детям учиться.

Май 2009 Linux Format 25


Ищем идеальный дистрибутив

Труженикам
Л
юди привыкают работать на определенный манер, во главу угла вы можете ставить стабильность. Или, наоборот,
и пользователи Linux частенько зубами и ког тями дер- вы отка жетесь от нее в пользу новейших функций и свежай-
жатся за преимущества, сысканные ими в своей ра- ших пакетов. Ва жен так же и диапазон доступного ПО, равно
бочей среде. Потому-то в дистрибу тивах Linux для настольных как и расписание обновлений вашего дистрибу тива и частота
ПК и процветает разнообразие, и да же системы-крошки не ли- установки новых версий. Например, шестимесячный цикл об-
шены серьезной под держки сообщества. Выбирая идеальный новлений у Fedora и Ubuntu может казаться вам слишком ко-
дистрибу тив, составьте список требований к нему. Например, ротким, а 18-месячный у Debian – слишком долгим.

Linux ежедневно Fedora 10


У
Debian нема ло достоинств: его пакеты очень стабильны,
Наш выбор рабочий стол привычен и отла жен, а по широте ассорти- Не пропустите…
http:// мента программ, доступных в репозиториях, он не усту-
fedoraproject.org пит никому. Однако отдельные аспек ты Debian, на наш взгляд,
Так же рассмотри- лучше реа лизованы в Fedora. Во-первых, Fedora элементар-
те Debian 5
но приятнее выглядит, хоть и построена на том же рабочем сто-
ле Gnome. Астрономическая тема, возникающая при загрузке ОС,
приводит в голубой рабочий стол, и создается впечатление, что
в нее вложено много любви. Во-вторых, Fedora уда лось включить
OpenOffice.org 3, тогда как Debian отстал на единицу, а входящая
в состав дистрибу тива версия Firefox – это именно Firefox, без ре-
брендинга, навязанного Mozilla разработчикам Debian. Обновления Безопасность
Заплаткииисправления Благодарябрандмауэру
Вам не отнять у нас свободы! выходятбыстро,иразбиты
накатегории,такчтовыбу-
иSELinux,взломатьFedora
труднее,чеммногиедругие
Оба рабочих стола проводят жесткую линию против включения
детевкурсе,чтопроисходит. системы.
несвободного ПО, и мы восхищаемся такой позицией. Оба дока-
зывают, что чисто открытый рабочий стол по функциональности
не ху же гибридного, да же если пойти на некоторые уступки. Нам
ка жется, что Adobe Flash-совместимый Gnash, компромиссное ре- распоряжении. Вы увидите, что пакеты разбиты по категориям,
шение Debian, хоть и достоин ува жения, но немного сбивает с тол- установка простая, стандартный формат RPM под держивает за-
ку. Например, сидя на YouTube, сложно понять, связана ли низ- висимости без проблем. Как и следует ожидать от дистрибу тива,
кая производительность с сетью, или с проблемами Gnash. Fedora тесно связанного с Red Hat, к обновлениям и заплаткам относятся
вообще не делает таких попыток, однако при желании использо- очень серьезно. Нам особенно понравилось, что система обнов-
вать Adobe Flash вам достаточно скачать RPM и разок щелкнуть лений информирует о природе ка ж дой заплатки, будь то исправ-
по этому файлу – после перезапуска браузера YouTube в вашем ление ошибки, «дыры» в безопасности или улучшение функцио-
нальности. Это склоняет к принятию обновлений, и вы будете
в курсе, что меняется в вашей системе.
Как и Ret Hat Enterprise и CentOS 5.3, Fedora содержит несколь-
ко пуленепробиваемых пакетов безопасности. Брандмауэр запу-
щен по умолчанию, и предусмотрен разумный набор правил, кото-
рые можно включать и выключать в окне настройки межсетевого
экрана. Если вы тревожитесь о безопасности, включите SELinux,
чтобы запереть непослушные приложения. На поле ежеднев-
ной работы Fedora не имеет равных. Выбор программ отличный:
мы так и не додума лись, чего там не хватает. Позиция Fedora по
поводу свободы может вызвать осложнения, если вам нужны про-
приетарные драйверы или под держка MP3, но эти проблемы легко
обойти. Рабочие столы Gnome и KDE выглядят блестяще, произво-
дительность нашей установки Fedora не ху же, чем у любого дру-
гого дистрибу тива Linux. Пользователи других ОС столпятся у вас
за спиной, завидев этот дистрибу тив. Может быть, Fedora не про-
ще всех в использовании, или не имеет самого большого репози-
Управление пакетами и обновления безопасности в Fedora задают очень тория программ, но, похоже, она предоставляет лучшее из пред-
высокие стандарты. лагаемого открытым ПО.

26 Linux Format Май 2009


 Ищем идеальный дистрибутив

Бизнес OpenSUSE 11.1


Д
истрибу тив Linux для офиса обязан удовлетворять опре- бочих столах Gnome. Оно напоминает меню Windows Vista, где по-
Наш выбор деленным требованиям. Первое – на личие офисного паке- казаны недавние документы и ресурсы сети.
http://en.opensuse. та и персонального органайзера, второе – высокая защи- Ана логично случаю с Fedora, благодаря корпоративной вер-
org/OpenSUSE_11.1 щенность. В верхней части списка будут так же стоять способность сии-родственнице данного дистрибу тива (SLES), множество сто-
Так же рассмотрите к взаимодействию или «интероперабельность» и профессиональ- ронних поставщиков охотно снабжают настольный SUSE профес-
GOS
ная под держка. Все четыре пунк та предоставит OpenSUSE. Этот сиональными приложениями. А значит, у вас не будет проблем,
дистрибу тив соседствует с разработкой OpenOffice.org и пре- например, с покупкой коммерческого «адаптера» к серверу
красно расширяется. Кому нужны профессиональная под держ- Exchange; при желании легко так же перейти на SLES. Хотя Yast,
ка и обучение, тот может получить ее от Novell или от ряда треть- утилита настройки OpenSUSE, есть беспорядочное нагромож-
их лиц. дение окон, она позволяет системному администратору прикрыть
систему от обычных пользователей, а так же решать такие за дачи,
Офис открыт как обновление безопасности и уда ленное администрирование.
В сердце OpenSUSE 11.1 лежит текстовый процессор, и Novell про-
делал отличную работу по интеграции OpenOffice.org в любой
из используемых вами рабочих столов (доступны Gnome и KDE).
Темы и значки фантастически приятны, а OOo быстро загру-
жается и настроен на совместимость с документами Microsoft
Office. С офисным пакетом увязан менед жер текущих дел, ко-
торый можно синхронизировать с Evolution, стандартной почто-
вой программой. Проникающий поиск по рабочему столу вклю-
чен здесь по умолчанию, а установить Wine для выполнения
оставшихся у вас Windows-приложений в Linux можно одним
щелчком.
Как и в большинстве современных Linux-систем, ка ж дый, кто
пользовался компьютером за последние 10 лет, почувствует себя
здесь, как дома. Меню запуска OpenSUSE удачно размещено в ле- OpenSUSE поддерживает различные док-станции, а на некоторых
вом нижнем углу экрана, а не на верхней панели, как в других ра- ноутбуках даже работают сканеры отпечатков пальцев.

Легкий Puppy Linux 4.1.2


П
опробовав ма лютку Puppy Linux, вы скоро сообразите, наете дивиться: на что тратят процессорное время KDE и Gnome?
Наш выбор что графическая мишура, сопутствующая большинству Да, там вы насла ж даетесь блеском и лоском, но и в Puppy Linux
дистрибу тивов, отнюдь не повышает производитель- невозможного ма ло – преж де всего благодаря JWM, Joe's Window
www.puppylinux.org ность – разве что работать становится слегка проще и при- Manager; тот же менед жер окон применяют и другие легковесные
Так же рассмотрите
Damn Small Linux
ятнее. Спартанский под ход, принятый в Puppy, не менее функ- дистрибу тивы, например, Damn Small Linux. Да же если вы не вы-
циона лен. Это небольшой дистрибу тив, он помещается в 100-МБ берете Puppy своим главным дистрибу тивом, он останется иде-
ISO-образ, а значит, его можно установить на дешевый USB-бре- альным для USB-брелка, или в качестве аварийного загрузочно-
лок и использовать на старых машинах. го диска.
Однако, в отличие от прочих легковесов, рабочий стол Puppy ре-
шит почти любую поставленную за дачу. Редак тирование фотогра-
фий, составление документов, прослушивание музыки, просмотр
видео выполняются с помощью «обезжиренных» программ, пред-
ставленных в главном меню или значком на рабочем столе. Быть
может, они не сильно дру желюбны к пользователю и не лопаются
от возможностей, но с 90% за дач, нужных большинству, они спра-
вятся. Причем быстро. Есть да же под держка беспроводной сети,
позволяющая лихо зарядить ноутбук новым исправлением Linux,
или да же впихнуть Puppy на нетбук рядом со стандартной систе-
мой, просто ра ди глотка свежего возду ха.

Кучи приложений
Существуют десятки приложений, доступных из быстрых ссылок
на рабочем столе или меню запуска; места хватило да же для па-
рочки игр. А поскольку система очень ма ленькая, и претензии ра-
бочего стола к памяти весьма скромны, все загру жается буквально Puppy содержит AbiWord, Gnumeric, Seamonkey, Inklite, MTPaint,
мигом, и работа с Puppy – одно удовольствие. Вы прямо-таки начи- GXine и вообще кучу всего.

Май 2009 Linux Format 27


Ищем идеальный дистрибутив

Корифеям
П
родвину тых пользователей легко распознать по числу мер, системному администратору требуется комплект утилит,
выполненных ими системных настроек. Есть разница помогающий ему в работе, и безо всяких отвлечений, обычно
меж ду принятием исходного, уже настроенного дист- сопровож дающих новейшие дистрибу тивы Linux. Программи-
рибу тива, добавлением пакетов и переустановки с ка ж дым но- стам по душе простые шустрые системы, предоставляющие
вым релизом, и созданием вашего собственного рабочего окру- все необходимые библиотеки разработчика, да поновее. А для
жения, способного пережить обновление за обновлением. Такие тех, кто хочет использовать Linux на сервере, определяющими
пользователи знают, что им нужно и как этого достичь. Напри- фак торами будут стабильность и безопасность.

Сисадмину Arch Linux


В
XXI веке оста лось ма ло разновидностей Linux, загоняю-
Наш выбор щих пользователя в командную строку, а не в графический Не пропустите…
рабочий стол KDE или Gnome. А вот Arch Linux – дистри-
www.archlinux.org
бу тив, открыто созданный для перенастраиваемости и приобре-
Так же рассмотри-
те Slackware тения хакерского опыта. Он для искушенных пользователей Linux,
не боящихся грязной работы. Именно поэтому вам не видать ра-
ботающей конфигурации Arch без редак тирования конфигураци-
онных файлов и ручной установки требуемых пакетов. И это хоро-
шо, особенно для системных администраторов, поскольку значит,
что в Arch нет отвлекающих моментов, присущих другим систе-
мам. Но вы не прикованы к командной строке: благодаря исклю-
чительному репозиторию можно моментально собрать именно «Сделай сам» Pacman
такую систему, которая вам нужна, хоть бы и с KDE 4.2 [а так- Экономныйинсталлятор МенеджерпакетовArch’а
же 3.5, – прим. ред.]. создастлишьбазовую облегчитработупосозда-
установку–остальное ниюнужнойвамсистемы
Arch не строит дога док о том, какие пакеты вы пожелае-
завами… иокружения.
те установить. При входе в систему, основанную на Live CD, вам
пред ложат запустить инсталляционный скрипт из за данного ка-
та лога, и установка Arch подобна возврату в 1999 год. Она напо-
минает интерак тивную приключенческую игру: чтобы понимать и выбор стандартных пакетов для установки, а так же редак ти-
смысл многих опций, на до разбираться и в Linux, и в команд- рование загру зочного меню Grub и помещение его в MBR ваше-
ной строке. го диска.
Ба зовая установка – экономичный файл в 160 МБ, а по
окончании процесса скачивания и настройки она превратит- Скажите «нет» Windows
ся в 390-МБ систему. Есть вариант с небольшим установщи- Уста нов ка по умолчанию не со держит па ке та X Window System,
ком на ба зе FTP, он пред лагает основные пакеты через FTP-сер- и хо тя команд ная стро ка и спо соб на на под виги, мно гим поль-
вер. Это удобно, ес ли вам нуж но единым ду хом установить Arch зо ва те лям будет тоск ли во без ка ко го-нибудь графиче ско-
на несколько машин, но после инстал ляции все равно придет- го ок ру жения. Это приво дит нас к лучшей шту ке в Arch и при-
ся настраивать рабочее ок ру жение. Сюда входит ручная разбив- чине люб ви к нему ад минист ра то ров: ути ли те под на званием
ка жесткого диска и присвоение раз де лам точек мон тирования Pacman. Pacman – это не иг ра, а менед жер па ке тов, разра-
в вашей фай ловой системе, настройка сетевых ин терфейсов бо танный ав то ром Arch Linux. Pacman уме ет ав то ма тиче-
ски разре шать за ви си мо сти и уста нав ли вать па ке ты од ной
коман дой. Прак тиче ски все уста нав ли ва ет ся за па ру на жа-
тий кла виш. X до бав ля ет ся од ной стро кой, как и KDE, и Gnome,
и мно гие дру гие менед же ры окон, а дру гая коман да син-
хронизи ру ет ва ши па ке ты с та ко выми на сер ве ре, при необхо-
ди мо сти обнов ляя их.
На твердом фундамен те ба зовой установки Arch строится ин-
Ну да, смотреть стру мен тарий администратора, включающий при ложения и ути-
здесь нечего. Глав- ли ты для вашего рабочего ок ру жения. Он сохранит и системные
ная идея Arch — ресурсы вашего компьютера, и ваши умственные ресурсы, ког-
иметь лишь са-
да нуж но сде лать работу быст ро. Arch содержит все пакеты, ко-
мое необходимое,
а многим сисад- торые вам когда-либо пона добятся; особенно это касается по-
минам довольно лезных ути лит командной строки, более всего и эффек тивных
командной строки. при системном администрировании.

28 Linux Format Май 2009


 Ищем идеальный дистрибутив

Кодеру Mandriva 2009


П
оиск дистрибу тива под ваши программерские тре- сбор ку все го из ис ход ных ко дов, по это му за го ло воч ные фай-
Наш выбор бования – одно из сложнейших испытаний для ли- лы и биб лио те ки раз ра бот чи ков, необхо ди мые для про грам-
нуксоида. Ведь способов программирования несмет- ми ро вания, уже име ют ся в систе ме. Од на ко Gentoo пе ре жил
www.mandriva.ru
ное множество. Например, разработка сайтов с помощью PHP па ру бур ных лет, и сейчас – не са мое под хо дя щее вре мя за-
Так же рассмотрите
Gentoo и MySQL – за дача, под ходящая для сервер-ориентированного ди- те вать пу те ше ствие с ним. Вме сто это го бе ри те ди ст ри бу тив,
стрибу тива. Если вы предпочитаете скриптовые языки типа Perl или де лаю щий до бычу биб лио тек раз ра бот чи ка про стой до невоз-
Python, сойдет и стандартный рабочий стол: сейчас они настолько мож но сти. Именно по это му мы пе ре шли на Mandriva. Она
распространены, что дистрибу тив для них безразличен. А профес- не только пред ла га ет нор мальную сре ду для про грам ми ро-
сиональные разработчики, использующие IDE наподобие JBuilder, вания пря мо с пер вой за груз ки: биб лио те ки раз ра бот чи ка лег-
знают, что Red Hat Enterprise Linux – едва ли не единственный ди- ко най ти и уста но вить че рез менед жер па ке тов. Раз ра бот чи ки
стрибу тив, под держиваемый производителем. Gnome, KDE и Xfce хо ро шо обес пе че ны; кро ме то го, ди ст ри бу-
тив со держит Java.
Общайтесь со своими
Ес ли вы предпочитаете разработку для конкретного рабоче-
го стола, есть очевидный смысл выбрать дистрибу тив, ориен-
тированный именно на него. Предварительные версии Ubuntu
и Kubuntu славятся добав лением последних нетестированных
релизов в ветви для разработ чиков, так что вы всегда можете
обновиться с одного на дру гой. Кстати, это и оптимальный спо-
соб добыть то, что скоро будет считаться лучшей интегрирован-
ной средой разработки на платформе Linux: свежую версию Qt
Creator, яв ляющегося частью нового LGPL’ного Qt 4.5. Его мож-
но без особого труда скачать и установить на рабочий стол Li-
nux, но нет сомнений, что новые релизы дистрибу тивов включат
Qt Creator по умолчанию.
В про шлом, ди ст ри бу ти вы ти па Gentoo бы ли луч шей плат- Mandriva — один из немногих дистрибутивов, где по умолчанию
фор мой для раз ра бот чи ков ПО. Их уста нов ка под ра зу ме ва ет стоит рабочий стол KDE, и он идеален для Qt-разработки.

Сервер CentOS
О
перационная система Linux – одна из лучших альтерна- Подобно RHEL, CentOS основан на рабочем столе Gnome, и обес-
Наш выбор тив, когда дело доходит до запуска сервера, и на этом печивает доступ почти ко всем приложениям, серверам и утилитам,
www.centos.org поле ей свойствен неизменный успех. Но не все Linux’ы имеющимся в стандартном дистрибу тиве. Те, кто знаком с недав-
Так же рассмотрите одинаково полезны. Уровень контроля приложений и пакетов для ним релизом Fedora, почувствуют себя как дома. Функции безопас-
Ubuntu Server настольных систем совсем не тот, что присущ серверному ди- ности включают классный брандмауэр и SELinux, механизм кон-
Edition стрибу тиву. Во многих слу ча ях последний да же избегает окру- троля доступа на основе политик, который не даст непослушным
жения рабочего стола, чтобы минимизировать потенциальные приложениям повредить вашу систему, да же если они взломаны
проблемы. или да ли сбой. Так же есть множество обновлений и огромное сооб-
По этой причине широкомасштабные коммерческие дистри- щество, готовое прийти на помощь. Если понадобится профессио-
бу тивы, поставляемые с пакетами всесторонней под держки – ти- нальная под держка, вы переедете с CentOS на RHEL как по маслу.
па Red Hat Enterprise Linux (RHEL) и SUSE Linux Enterprise Server
(SLES) – идеальные решения для бизнеса, способного позволить
себе контракт на сопровож дение и достаточно крупного, чтобы
извлечь из него пользу.
Однако благодаря природе свободного ПО, платные дистри-
бу тивы обязаны публиковать исходные коды своих двоичных
пакетов. А значит, ка ж дый может взять этот исходный код и со-
брать корпоративный дистрибу тив самостоятельно. Так и посту-
пает проект CentOS: они берут исходный код ка ж дого релиза
RHEL и собирают из него свободно распространяемый дистрибу-
тив Linux, нацеленный на 100% совместимости с родителем. Ина-
че говоря, можно устанавливать для работы коммерческие паке-
ты, созданные для RHEL, а заодно и получать столь же высокий
уровень безопасности и целостность, что и прямые клиенты Red
Hat. Поэтому CentOS – идеальный выбор ОС для сервера при скуд- CentOS идеально подходит в качестве сервера, но имеет и GUI
ном бюд жете. для большинства административных задач.

Май 2009 Linux Format 29


Ищем идеальный дистрибутив

По интересам
С
угубо специальный дистрибу тив завязан на опреде- ка необхо дима для уменьшения времени от клика систе мы
ленную группу пользователей со специфичными тре- и миними за ции за держек, но уве личивает на грузку на CPU,
бованиями. Если требования слишком узки, то весь- а иногда деста би ли зиру ет систему. За то му зыкан там свой
ма возможно, что дистрибу тив будет ма ло пригоден для тех, ди ст ри бу тив Linux очень по ле зен, и то же от но сит ся к гей-
кто на ходится вне зоны данных интересов. мерам или дру гим группам со спец за про са ми. Гибкость
Хороший пример – соз дание му зыки. Обработ ка зву ка ди ст ри бу тивов означает, что ка кие бы ни возник ли ук ло-
на плат форме Linux тре бует мо ди фика ции яд ра, снижаю- ны, Linux су ме ет при спо со биться и бы ст ро ис поль зовать
щей его применимость в обычной системе. Пере строй- их в своих це лях.

Музыкантам 64 Studio
М
ы обязаны открытому ПО одним из лучших прило-
Наш выбор жений для создания музыки. Единственным реаль- Не пропустите…
ным отличием меж ду ним и коммерческими пакетами,
www.64studio.com
доступными для OS X и Windows, является то, что открытую про-
Так же рассмотри-
те Ubuntu Studio грамму сложнее установить и использовать. Главным препятстви-
ем тут слу жит нечто под названием ‘audio latency’, то есть за держ-
ка меж ду поступлением звука в компьютер (или программной
генерацией звука) и его появлением в ваших наушниках или ко-
лонках. Всемерное снижение этой латентности и есть ключ к пра-
вильно настроенной системе звукозаписи, на что и направлены
усилия всех дистрибу тивов Linux для музыкантов. Дистрибу тив,
Jack работает! Сообщество
опередивший прочих конкурентов, называется 64 Studio. Jackможетстатькошмаром, Почтивсемыслимыепри-
64 Studio обеспечивает полноценную среду производства зву- но64Studioоптимизирован ложения,связанныесозву-
ка; его ядро и вся система настроены на оптимизацию вашего обо- наегоиспользованиеиза- ком,установленыиготовы
пускаетегоавтоматически кработе.
рудования. Он предназначен для создания профессиональной
призагрузкесистемы.
станции, способной записывать, микшировать и управлять мно-
жеством параллельных аудиодорожек.
расширяемой консоли для микширования. При попытках настро-
Джек-распорядитель ить его Jack способен доставить кучу неприятностей, однако если
Установка вполне прямолинейна, но, попав на прак тически пус- вы щелкнете по меню запуска и выберете пункт Jack Control в раз-
той рабочий стол Gnome, вы не получите никакой справки-помо- деле Sound & Video, то в появившемся ма леньком окне, имитирую-
Ardour — флаг- щи. К счастью, 64 Studio уже настроил самую хитрую часть вашей щем ЖК-панель состояния, будет слово Active. Итак, Jack работа-
манское приложе- системы: аудио-прослойку Jack, выполняемую в фоновом режи- ет, и текущие соединения можно просмотреть, на жав на кнопку
ние для производ- ме. Именно Jack обуславливает мощь звука в Linux, но он же все Connect.
ства звука, и проект и усложняет. Jack сидит меж ду звуковым драйвером и любой Jack- Меню Sound & Video набито до отка за: в нем есть синтеза-
не лишен коммер- совместимой музыкальной программой, под держивая маршрут тор, осциллоскоп, эффек ты гитары и студии, аудио-сэмплер,
ческого спонсиро- аудио, и может рассматриваться как ана лог большой, бесконечно эмулятор поворотного стола и несколько методов мониторинга
вания.
звука. Но два самых главных пунк та – Rosegarden и Ardour. Это
открытые ана логи программ Cubase и Pro Tools из коммерче-
ского мира, и обе являются превосходными приложениями для
создания и записи музыки. Rosegarden хорош при работе с MIDI
и сочинении для реальных и виртуальных синтезаторов; в Ar-
dour под держки MIDI меньше, зато он выполняет многодорожеч-
ную запись, микширование и мастеринг, и это лучший выбор
при записи группы или подкаста. Создавая свой шедевр, уве-
личьте его громкость с помощью приложения Jamin, обрежь-
те окончательные аудиофайлы с помощью редак тора Audacity
и сбросьте созданный им WAV-файл в программу Gnome CD
Master из меню Sound & Video. Все эти приложения входят
в рабочий стол 64 Studio по умолчанию; короче, этот дистри-
бу тив охватывает прак тически все, от записи и генерации зву-
ка, через редак тирование и мастеринг, до прожига финального
CD. Мы и вообразить не можем дру гую систему, дающую подоб-
ную функциональность за нулевую цену.

30 Linux Format Май 2009


 Ищем идеальный дистрибутив

Игрокам Live.linux-gamers
Е
сли ваша жизнь – игра, Linux – не лучший выбор платфор- пании, продающие коммерческие версии Wine (средства совмести-
Наш выбор мы. Многие наименования первого эшелона не имеют вер- мости с Windows), специально оптимизированные для запуска
http://live.linux- сий для Linux, а под держка со стороны производителей последних Windows-игр. Эти программы называются CrossOver
gamers.net контроллеров весьма слаба. Но почти все мы любим играть, и пе- Games и Cedega, и обе заявляют, что могут запускать Spore, World
Так же рассмотрите реход на Linux не значит, что вам придется отказаться от такого of Warcraft и множество Steam-игр. Доступны пакеты для популяр-
Ultimate Edition
времяпрепровож дения. От стрелялок от первого лица до игр, раз- ных дистрибу тивов, и у нас все работа ло нормально.
вивающих мозг, и стратегий в реальном времени, найдутся от- Да же без этих коммерческих пакетов – знайте: для старых игр
крытые альтернативы для любого скла да ума. Многие из этих игр чистая установка Wine тоже работает неплохо, и ее качество все
свободны, однако есть несколько независимых разработчиков, улучшается, благодаря компании, выпускающей CrossOver. Они
выпускающих некоторые платные продук ты. Почитайте наш об- вносят поправки в основное дерево разработки.
зор World of Goo на стр. 10 или поищите по слову Introversion, что-
бы получить о них представление.
Большинство дистрибу тивов имеют пару игр в стандартной
поставке, да еще и позволяют установить сколько угодно других
через менед жер пакетов. Но многие игры довольно объемисты,
и ваш жесткий диск скоро будет забит. Мы нашли, что лучшим ре-
шением будет загрузиться с Live-дистрибу тива, специально раз-
работанного для игр, а лучший из них, на наш взгляд, Live.linux-
gamers.net. Он уместил на DVD почти все, во что стоит поиграть,
наряду с проприетарными драйверами для графических карт, что-
бы выжать из вашего оборудования максимум производительно-
сти. Наши любимые игры – Termulous и Nexuiz, стрелялки от пер-
вого лица в стиле Quake III Arena. Astro-Menace – наша любимая
стрелялка; Neverball, ка жется, превзошла Madness от Marble; стра-
тегам понравятся Glest и Bos Wars… в общем, игры найдутся на все
вкусы. Если вам невтерпеж увидеть на рабочем столе Linux новей- О, время игры золотое… Спасибо дружелюбному дистрибутиву
шие релизы игр, то выход найдется – да же два выхода: есть ком- Linux, снабдившему нас играми.

Мультимедиа Mythbuntu
Н
едавно (LXF111) мы писа ли про MythTV подробно. Он мо- его простоту. Благодаря собственным и общедоступным откры-
Наш выбор жет воспроизводить фильмы и музыку, а так же просмат- тым пакетам, LinuxMCE смотрится на среднем телевизоре гораз-
http://www. ривать фотографии и выходить в Интернет. Установка до лучше. GUI ускорено посредством OpenGL, и переходы меж ду
mythubuntu.org его бывает му чительна, и он требует полного контроля над ком- режимами воспроизведения очень плавные. Все выглядит луч-
Так же рассмотрите пьютером. Однако Mythbuntu, сильно видоизмененная версия ше, чем Mythbuntu. Правда, мы не рискуем полностью рекомен-
LinuxMCE Ubuntu, нема ло потрудился, чтобы по возможности упростить довать этот дистрибу тив по причине вялости его обновлений: но-
этот процесс. У него есть своя процедура установки и своя ути- вая бета вышла в конце прошлого года, но неясно, когда появится
лита настройки, которая шаг за шагом проведет вас через слож- финальная версия. И если вам ну жен мультимедиа-дистрибу тив
ности конфигурирования MythTV. Работающую систему вы по- для домашней системы, советуем выбрать Mythbuntu. Однако ра-
лу чите примерно за час, а не за неделю, как обычно происходит ди гладкого интерфейса пользователя, без мороки с настройкой
без Mythbuntu. Установка включает все необходимое для нача- MythTV, на LinuxMCE стоит взглянуть. LXF
ла работы; в комплект входят наиболее распространенные мо-
дули расширения MythTV для проигрывания мультимедиа. Мож-
но да же использовать установочный диск как Live CD на запасной
машине, временно превратив ее в клиента MythTV специально
для просмотра ТВ и фильмов. Диск позволит вам воспроизво-
дить мультимедиа, не отводя под эти цели выделенную машину:
Mythbuntu работает как стандартный LiveCD Ubuntu с нескольки-
ми дополнительными пакетами.

Легкий способ
Альтернатива Mythbuntu – LinuxMCE, который пытается обес-
печить в Linux то, что Multimedia-версия Windows сдела ла для
Microsoft: стандартную и наглядную платформу для подклю-
чения к телевизионной и музыкальной системам. LinuxMCE име-
ет то преимущество, что построен не на MythTV, это удваивает Mythbuntu превратит ваш телевизор в передовой медиа-центр.

Май 2009 Linux Format 31


Lenny с нами!
Вышла новая версия стабильного Debian – 5.0, под кодовым именем Lenny.
Джульетта Кемп испытает её, а заодно переговорит с людьми из Debian.

D
ebian существует внушительные 16 лет и заслужил Чтобы отметить выход новой версии, мы решили побесе-
уважение как надёжный и стабильный дистрибу- довать с разработчиками Debian, а также попробовать новинку
тив — хотя, бывает, его критикуют за долгий релиз- «на вкус».
цикл. Именно Debian лежит в основе столь популяр-
ного ныне Ubuntu. Новейшая версия Debian — 5.0, под кодовым Что новенького?
именем Lenny — выпущена 14 февраля. Между 4.0/Etch (апрель Улучшена поддержка нетбуков: например, позаботились о работе
2007) и Lenny прошло без малого два года — почти стандартный Eee PC прямо из коробки, что будет полезно и другим «малюткам».
цикл для Debian в последнее время. Правда, Lenny стал доступен На другом конце шкалы, освоена платформа Orion (используемая
в виде тестовой версии сразу после выхода Etch,, и для некото- во многих устройствах для хранения данных); переход на порт
рых наших читателей он старый соратник. Те, кто поосторожнее, Armel продвинул вперед архитектуру ARM, плюс включены сред-
а также владельцы промышленных серверов загружают обнов- ства сборки пакетов для встраиваемых ARM-систем.
ления сейчас, предвкушая скорое знакомство. Вы уже могли слышать, что выпуск новой версии задержался
из-за «аппаратных» вопросов – были разногласия по поводу соот-
ветствия ряда двоичных «блобов», выпущенных некоторыми про-
изводителями микропрограмм, принципам свободы ПО (которых
Debian стойко придерживается). Блобы (blobs) – это части микро-
кода, управляющего оборудованием; лицензии его изготовителей
отличаются пестротой и не всегда прозрачны. В конце концов ре-
шили, что важнее выпустить, наконец, Lenny на волю без ради-
кального сокращения поддержки оборудования, которое удари-
ло бы по пользователям. Таким образом, у рядовых сторонников
Debian проблем быть не должно, но разработчики продолжат ра-
боту по урегулированию ситуации с лицензиями.
Lenny работает на ядре 2.6.26; объём обновления паке-
тов ожидаемо внушителен. KDE перешёл на 3.5.10, а Gnome
стал 2.22.2 – не 2.24, но версия обновлена. По соображени-
ям стабильности, в Nautilus и паре других приложений исполь-
зуется GnomeVFS,, но большинство программ всё-таки за-
действует GIO и наслаждается соответствующей прибавкой
производительности.
Включены Perl 5.10, Python 2.5.2 и 2.4.6, PHP 5.2.6, GCC 4.3 уста-
навливается по умолчанию (хотя для некоторых архитектур досту-
пен только 4.2). Iceweasel (Debian-вариант Firefox) обновлён до вер-
сии 3.0.0.6. Включён OpenOffice 2.4 – опять же не 3.0, но это своя
особая версия, с поддержкой формата MS Office Open XML. А это
Страница новой версии на сайте Debian.
и есть главное улучшение версии 3.0, так что рядовому пользова-

32 Linux Format Май 2009


 Debian Lenny

Цикл разработки Debian


Работа в Debian всегда идёт одновременно В Debian есть кое-что
над тремя версиями: стабильной (Stable), и от Истории игрушек…
тестируемой (Testing) и нестабильной
(Unstable). До 14 февраля стабильной вер- ки релиза – на то и на-
сией был Etch (4.0), а тестовой – Lenny звание ‘Testing’!
(5.0). Теперь Lenny стал стабильной вер- Unstable (Sid) –
сией, а тестовая называется Squeeze (6.0). передний край раз-
Нестабильный вариант – всегда Sid,, номе- работки. Не лучший
ра версии у него нет. выбор для рядового
Стабильная версия – самый свежий пользователя, разве
Новый, с причудливыми завитками, стандартный фон рабочего
полный релиз; он, естественно, должен что вы отчаянный новатор или
стола.
быть надежным и хорошо протестирован- любитель повоевать с ошибками.
телю горевать не о чем. На мультимедиа-фронте, свободные ко- ным. Для нее выпускаются исправления (Гадаете, откуда взялись имена? Это
деки swfdec-gnome обеспечивают воспроизведение Flash, а пакет безопасности (примерно год они охваты- персонажи из Истории игрушек).
вают и предыдущую стабильную версию); Вы не ограничены рамками одной,
GStreamer, содержащий MP3-кодеки, теперь входит в основной
периодически выходят минорные рели- и только одной, версии: система Debian
репозиторий (main) и устанавливается вместе со средой рабочего
зы. Тестируемая версия обычно доволь- APT позволяет извлекать отдельные па-
стола. Кроме того, Totem поддерживает автоматическую загруз-
но надёжна и комплектуется новейши- кеты из наборов других веток Debian, что
ку кодеков. ми версиями ПО; в последнее время она весьма удобно, когда требуется обнов-
Обновление до X.org 7.3 улучшает автонастройку X – те, кто даже поддерживается группой безопас- ленная версия какой-то конкретной про-
хоть раз пробовал сделать это вручную, будут счастливы. Впро- ности. И всё же её не рекомендуется ис- граммы. Можно включить ожидаемые об-
чем, для установки проприетарных драйверов (например, Nvidia) пользовать на промышленных серверах новления в список источников APT, чтобы
всё-таки придётся совершить несколько лишних движений – сво- и рабочих станциях: порой обновления следить за подготовкой очередного ми-
бодный драйвер nv весьма несовершенен. в Testing вызывают сбои. Истребление по- норного релиза, но помните: они находят-
Есть и пара изменений в системе безопасности, сделавших её добных проблем входит в задачи подготов- ся в процессе тестирования.
чуть активнее. Теперь инсталлятор применяет обновления безо-
пасности до первой перезагрузки, уменьшено количество пакетов
setuid root, появились графические меню для различных разделов Воспроизводя
установки и увеличилось количество поддерживаемых языков. MP3, плейер
Totem выводит
Для сисадмина собственные
визуальные
Rsyslog заменил syslog и klog, усовершенствовав ведение журна- эффекты.
лов (если вы обновляете систему, а не устанавливаете ее с нуля,
то этот переход придётся сделать вручную). Rsyslog поддерживает
журналирование по TCP и SSL, запись в базу данных, обладает
расширенным выбором форматов вывода и настроек электрон-
ной почты – явный шаг вперед по сравнению со старыми верси-
ями. Обратная совместимость сохранена, так что можно произ-
водить обновление, не опасаясь проблем. Владельцам серверов
будут интересны MySQL 5.0.51a и PostgreSQL 8.3. Nagios перешёл
на версию 3 (версия 2 удалена); некоторые подвижки есть и в об-
ласти виртуализации. с развитой поддержкой, то Debian на сегодня – лучший. Здорово,
Вот сколько поводов для радости! Разумеется, вышло мно- что Lenny, наконец, увидел свет: даже если вы вполне довольны
жество обновлений к тысячам пакетов, входящих в Debian соотношением между надёжностью/стабильностью и передовы-
на постоянной основе, а также появилось немало абсолютно новых ми технологиями, новое – это всегда здорово! Теперь будем сле-
пакетов. Если вы ищете солидный, надёжный Linux-дистрибутив дить за работой над Squeeze…

Как всегда, Debian даёт установить ровно то, что вам нужно, будь то самая полная
Iceweasel — Debian-версия Firefox, с голубой ласочкой.
система или, наоборот, минимальная.

Май 2009 Linux Format 33


Debian Lenny

Debian в лицах
М
ы поговорили с несколькими программистами, LXF: На ваш взгляд, как можно охарактеризовать процесс под-
занимающимися различными аспектами Debian, готовки релиза? Беды или победы?
чтобы узнать их отношение к Lenny и процессу КП: Немного огорчил инсталлятор: он был одним из главных
его подготовки к выпуску. тормозов процесса, в основном из-за нехватки рабочих рук. До-
Кристиан Перье [Christian садны и вечные споры о степени свободы того или сего: они дур-
Christian Perrier]] – глава группы интернацио-
нализации Debian (кстати, Debian освоил 63 языка, опередив все но влияют на взаимоотношения внутри проекта.
основные дистрибутивы), а также член команды Debian Installer, ЭК: Релиз затянулся. Один из пакетов, в разработке которых
курирует несколько пакетов. Элизабет Крумбах [Elizabeth я участвовала, вышел в сентябре. И мы дожидались, пока подтя-
Elizabeth Krum-
bach]] – сисадмин, использующий Debian,, и тоже курирует паке- нется весь проект и пакет войдёт в тестовую версию, расширив
ты. Мириам Руис [Miriam Ruiz] – разработчик Debian, курирует или пользовательскую базу. Я уж опасалась, что люди сами устано-
участвует в разработке около 70 пакетов; она – один из основате- вят новую версию из исходных текстов. Вдобавок такой процесс
лей и лидеров команды Debian Games Team и член Debian Women, ударил по сообществу и собрал «плохую прессу». Дискуссии по-
рой накалялись и переходили на личности. Однажды у меня лоп-
вот-вот возглавит проект Debian Jr, нацеленный на детей.. Люк Кла-
ес [Luk
Luk Claes]] – один из генеральных менеджеров по выпуску De- нуло терпение, и я просто ушла в отпуск.
bian, член правления американской некоммерческой организации МР: Debian прозрачен и открыт миру, и не делает секрета из сво-
Software in the Public Interest,, занимающейся юридическими и фи-ей работы, так что многие, я думаю, в курсе всех проблем рели-
нансовыми аспектами Debian (и других свободных проектов). за. По-моему, члены Release Team,, как и прочие коллеги и коман-
ды, замечательно поработали.
Linux Format: Что больше всего восхищает вас в Lenny? Мне кажется, что затягивание цикла выхода версий, а также
Кристиан Перье: Несмотря на все встречавшиеся трудности, увеличивающееся время заморозки затрудняет работу команд
мы сумели выпустить релиз с оптимальным, на мой взгляд, со- внутри Debian. Пакеты, обычно посылаемые в Sid, следовало бы
четанием надёжности и новизны. переправлять в Experimental. Мы цепляемся за версии, «возраст»
Элизабет Крумбах: Как и при любом релизе, очень помога- которых доходит до года; это уже не оптимальное решение, а пе-
ют обновлённые версии пакетов – в последние месяцы работы рестраховка. Главная беда – время: то, что не слишком мешает
на Etch я всё глубже зарывалась в обратное портирование. Очень при двух-трёхмесячном цикле разработки, гораздо хуже вы-
рада расширению носить при восьмимесяч-
ассортимента паке- О ПРОЦЕССЕ ПОДГОТОВКИ: ном. Что ж, это одна из «бо-
тов: там, например,
появился Drupal 6
«Проект вызвал лезней роста».
Серьёзнейшая пробле-
(система управле-
ния сайтами). На-
много плохой прессы ма, замеченная мной перед
выпуском релиза – нараста-
ши клиенты давно о себе.» Элизабет Крумбах ние нервозности. Почитайте
уж его домогают- Planet Debian и списки рас-
ся, а мы были не в восторге от его поддержки, раз он отсутство- сылки: люди становятся все агрессивнее, и дискуссии теряют ра-
вал в Debian. циональность – из-за этого я покинула большинство списков рас-
Мириам Руис: По-моему, для большинства пользователей сылки Debian. Будем надеяться, что с выходом новой версии люди
Debian – это возможность обновления отдельных пакетов и по- немного остынут. А ещё я думаю, что при столь длительном пе-
лучения новых функций на промышленных машинах без ущерба риоде подготовки релиза, если на ключевых направлениях будет
стабильности Debian. Для настольных компьютеров она менее работать лишь горстка людей, мы попросту перегорим.
важна, там более популярны тестовые или даже нестабильные ЛК: Да, на нашей дороге были ухабы, которых следует избегать
варианты. в будущем, вроде недавней дискуссии о прошивках и принципах
Люк Клаес: Лично мне больше всего нравится появление Live- Debian Free Software Guidelines.. Недостаточное внимание к инс-
GoPlay!, графиче- образов и прогресс сетевых служб, а также улучшенная подде- таллятору тоже обусловило излишнюю задержку. Благодаря хо-
ская система
ржка оборудования. рошей работе, проделанной всеми участниками проекта перед
поиска новых игр.
выпуском релиза, особенно в последний уикэнд, сам процесс,
по-моему, прошёл удачно. Но я, наверное, слишком пристрастен
для объективных оценок!

LXF: А было ли такое, что вы хотели бы увидеть в новой версии,


но не получилось?
КП: Пара технических новшеств, типа упрощения рабо-
ты с клавиатурой в процессе инсталляции и в консоли уже
установленной системы. Как руководитель направления i18n,
я расстроен трудностями с обновлениями у некоторых групп ло-
кализации. Печальнее всего то, что из-за отсутствия должных
обновлений в инсталляторе пришлось заблокировать эстонс-
кий, хотя в Lenny появилось пять новых языков.
ЭК: Нет, я вполне доволен новой версией.
МР: А мне бы хотелось увидеть KDE 4, он такой приятный!
Но я считаю, что команда KDE – в частности, Ана Герреро [Ana

34 Linux Format Май 2009


 Debian Lenny

Guerrero]] – сделала правильный выбор в пользу KDE 3, предпоч-


тя стабильность и завершённость внешнему лоску и обеспечив
портирование KDE 4 по желанию. По части моих пакетов и паке-
Ресурсы
тов команды Game Team мы смогли включить в эту версию всё,
www.debian.org/releases/stable Сведения о релизе, загруз-
что хотели. Я очень рада, что удалось включить новую версию ке и установке Lenny.
Gnash (в порядке исключения выведенную из заморозки), она
http://wiki.debian.org/NewInLenny Полный перечень ново-
намного лучше старой. введений в Lenny.
ЛК: Мне жаль, что Debian Edu (версия для школ) не удалось вы-
www.debian.org/intro/help Справка по Debian и ссылки
пустить одновременно с Debian. на более подробные сведения.

LXF: Как вы считаете, чем Debian похож, или не похож, на дру-


гие дистрибутивы? вольных помощников в этой области. Кроме того, я ожидаю, что
КП: Я считаю, Debian – это образец «чистоты» и долгосрочной будет, наконец, решена проклятая проблема с консолью.
стабильности. Меня не трогают жалобы на длинный цикл раз- МР: Да, у Games Team и вправду есть планы насчет Squeeze.. В мо-
работки или на то, что наполнение Debian «всегда устаревшее». ей персональной повестке дня – новая версия GoPlay!, инстру-
Когда доходит до «промышленных» (и даже настольных) сис- мента для поиска игр на основе DebTags,, а ещё я очень поста-
тем, двухлетний цикл разработки абсолютно приемлем. раюсь включить мой проект Open Rating. Конечно, важнейший
Меня беспокоит распыление ресурсов, вызванное появлени- мой план – возглавить проект, известный ныне как Debian Jr
ем Ubuntu:: его несомненная привлекательность, особенно для но- Project. Здесь у меня тоже есть свои цели, некоторые из них
вичков, оттянула разработчиков от Debian,, что особенно замет- весьма амбициозны.
но в сфере локализации. Вряд ли руководство Ubuntu намеренно ЛК: В моих планах – упрощение процесса перехода между вер-
ведёт такую политику – это естественный ход вещей, но Debian сиями и начало обсуждений на ранних стадиях цикла разра-
ведь стоит у истоков Ubuntu и обязан держаться на плаву.. По-мое- ботки, это резко сократило бы время заморозки. Улучшенный
му, тут и причина нехватки кадров в наших проектах. процесс перехода ускорит формирование обновлённых паке-
ЭК: Я высоко ценю приверженность к стабильности и безопас- тов, предназначенных для миграции, и их появление на release.
ности. Хотя периоды долгой заморозки и длинные релиз-цик- debian.org. Кроме того, необходимо уделить больше внима-
лы вызывают разочарование разработчиков и пользователей, ния debian-installer, чтобы исключить нежелательные задержки
которым подавай новые пакеты в стабильном дистрибутиве, в дальнейшем.
я думаю, что выгоды для промышленных систем покрывают из-
держки. Хотите получить свежий, но менее тщательно тестиро- LXF: Не хотите ли ещё что-нибудь добавить?
ванный продукт – найдутся другие дистрибутивы. КП: Я мечтаю о дне, когда Debian станет эталоном для коммерче-
МР: У меня есть три эпитета для Debian:: универсальность, ста- ских партнёров. Правда, не уверен, что это произойдёт. Слу-
бильность и обновляемость. Debian универсален, так как спосо- чись так, производные дистрибутивы (Ubuntu Ubuntu в первую оче-
бен работать в самых разных областях применения: на рабочих редь, конечно) получат новую мотивацию и нас перетянут. Ещё
столах, серверах, я хочу убедить руко-
в качестве встра- О ПРОЦЕССЕ ТЕСТИРОВАНИЯ: водство своей компа-
иваемой системы,
в кластерах и пр.;
«Debian остается образ­ нии применить Debian
на настольных ком-
Debian охватыва-
ет больше архи-
цом долгосрочной ста­ пьютерах. А для этого
нужна официальная
тектур, чем любой бильности.» Кристиан Перье поддержка изготови-
другой вариант Li- телей коммерческих
nux; и мы стремимся (хотя в этом мы не одиноки) обеспечить его приложений и аппаратного обеспечения – не только HP!
применимость во всём мире. Debian признан одним из наибо- МР: Да нет, пожалуй. Я очень довольна нынешним релизом,
лее стабильных Linux-дистрибу тивов. Мы вкладываем очень а также тем, что в Debian настало спокойствие. У нас есть что
много усилий в то, чтобы пользователи могли переключаться обсудить, и мы должны делать это рационально, спокойно
на новые версии пакетов постепенно, без лишних хлопот. Боль- и мирно. Конечно, не избежать острых дискуссий, расхождения
шинство моих знакомых Debian-пользователей
-пользователей однажды уста- идеологических позиций и прочих коллизий, но мы, как всегда,
новили свои системы, а после этого годами обновляют их – всё это преодолеем. Вот такой я оптимист! LXF
такое не каждому дистрибутиву по плечу. С другой стороны,
я знаю, что Debian не считается самым крутым. Думаю, нам
не стоит забывать про внешний лоск, пользователям это нра- Как влиться в проект Debian
вится. Есть дистрибутивы, которые уделяют много внимания
автоматической инсталляции, тем самым привлекая пользова-
Хотите поучаствовать в Debian? Один из рируя отдельные пакеты. Для этого не обя-
телей. Debian скорее делает упор на обновления, ведь мы ус-
простейших способов сделать это – рабо- зательно быть официальным разработчи-
танавливаем систему всего раз, а обновлять будем, быть мо- тать на Debian-системе и сообщать обо всех ком Debian – чтобы приобрести подобный
жет, всю жизнь. замеченных сбоях и неполадках в систему статус, необходимо поработать в Debian
ЛК: Debian – это выбор ради стабильности и высокого каче- отслеживания ошибок (www.debian.org/ некоторое время.
ства. Надеюсь, мне удастся помочь сделать его дистрибутивом Bugs). Пакет reporting (наберите reporting Кроме того, можно включиться в раз-
для каждого. в командной строке) поможет вам это работку сопутствующей документации или
сделать. её перевод, а также помогать другим поль-
LXF: Чем вы планируете заняться при подготовке следующей Будучи программистом, вы можете по- зователям (и, естественно, получать по-
версии? мочь в создании заплаток (связь – через мощь для себя!), участвуя в различных
ту же систему), поддерживая или даже ку- списках рассылки.
КП: Дальнейшим совершенствованием рабочего процесса лока-
лизации, с тем чтобы максимально использовать вклад добро-

Май 2009 Linux Format 35


Распознавание текстов

Читаем
Читаем
Cuneiform 0.6.0
Tesseract 2.03

Как бы мы ни любили Linux, приходится признать: для автоматического


ввода текста с бумаги в компьютер это пока не лучший вариант.
Андрей Боровский смотрит, что можно сделать.

Р
аспознавание текста относится к числу тех интеллек- знавания текста само по себе не сделает Linux привлекательной
туально-емких задач, с которыми открытые систе- офисной средой: здесь мы сталкиваемся с известной пробле-
мы пока не научились справляться хорошо. Позитив- мой конкуренции меж ду открытыми и закрытыми платформа-
ные сдвиги в решении проблемы наметились в 2005, ми. Успешная закрытая программа, предназначенная для кон-
когда компания Hewlett-Packard открыла исходные тексты не- кретной закрытой платформы, становится дополнительным
когда коммерческой программы Tesseract на условиях лицензии конкурентным преимуществом этой платформы. Успешная от-
Apache License 2.0. Проект тут же поддержала компания Google, крытая программа не добавляет конкурентных преимуществ ка-
заинтересованная в открытом средстве распознавания текстов кой-либо конкретной платформе, так как может быть без особых
для создания своих элек тронных библиотек (Google так же оказа- усилий перенесена на любую закрытую ОС.
Наш ла поддержку некоторым смежным проек там, связанным с рас- Стоит ли при таких обстоятельствах, когда коммерче-
эксперт познаванием текста, например, Ocropus). В 2008 году компания ские решения для распознавания текста дешевеют и становят-
Андрей Congnitive Technologies выложила в открытый доступ исходные ся «придатком» к оборудованию, а успехи свободных программ
Боровский коды своего пакета распознавания текста Cuneiform. не способствуют продвижению открытого ПО в целом, занимать-
Взялся под держи-
Впрочем, те, кто на волне всеобщего энтузиазма предрекал ко- ся разработкой последних? Я думаю, что эта работа по-прежне-
вать собственную
ветвь Cuneiform, нец эры коммерческих приложений-конкурентов, слегка поторо- му имеет смысл. Открытые программы обла дают одним важным
чтобы в Linux, на- пились. Следует помнить, что пред ложенные нашему вниманию преимуществом: возможностью быстрой адаптации к специфи-
конец, появился программы не были лидерами рынка, иначе мы вряд ли увиде- ческим потребностям пользователей. В идеа ле открытые про-
достойный инстру- ли бы их исходные коды. Используемые в них технологии дав- граммы распознавания текста должны представлять собой не за-
мент для оптиче-
ского распознава-
но не обновлялись (развитие Tesseract в недрах HP остановилось конченные монолитные блоки, а наборы инструментов, которые
ния символов. в 1995 году). Если бы такие программы были доступны в Linux лет могут быть легко приспособлены для решения специальных за-
трина дцать назад, он был бы сегодня самой популярной офисной дач, будь то распознавание текста в особых условиях или интегра-
системой. Но сейчас эти приложения уже не соответствуют тем ция с каким-либо нестандартным ПО.
стандартам функциональности и удобства, к которым привык ли
пользователи конторских ПК. Герои нашего времени
В данной статье мы подробно рассмотрим Cuneiform и бегло –
Немного о грустном Tesseract. Такое неравноправие объясняется очень просто: только
Признаем честно: Linux по-прежнему нельзя назвать наибо- Cuneiform под держивает распознавание документов на русском
лее под ходящей средой для распознавания текстов. Проблемы языке; попытки русификации Tesseract пока что не увенча лись
возникают уже на уровне под держки оборудования. Производите- приемлемыми результатами. Разумеется, список открытых про-
ли сканеров игнорируют Linux, а добровольцы из проек та Sane ед- ек тов распознавания текста не исчерпывается перечисленными
ва ли могут обеспечить работу всех моделей. Если вы собираетесь программами (есть еще, например, GOCR). Но, поскольку распо-
сканировать под Linux, перед покупкой устройства следует про- знавание текстов на русском в перечень возможностей этих дру-
консультироваться на сайте Sane. Учтите при этом одну важную гих приложений не входит, а среди «нерусских», по результатам
особенность: обычно под держ- многочисленных обзоров, са-
ка в Linux некой периферии
означает, что под держива-
«Только Cuneiform мым успешным признан проект
Tesseract, мы решили не оста-
ются (возможно, с несколько
ограниченной функциональ-
распознает документы навливаться на альтернативах.
В своей нынешней реа ли-
ностью) и все устройства то- на русском языке.» зации и Cuneifrom, и Tesseract
го же модельного ряда, одна- представляют собой прило-
ко со сканерами дело обстоит иначе. Например, CanoScan LiDE 60 жения командной строки, что определенным образом ограничи-
(производитель – компания Canon) работает, а CanoScan LiDE 70 – вает их функциональность. Важную роль в пакетах распознавания
нет. Так что будьте бдительны. текста всегда игра ла интерак тивность – например, возможность
Преимущества пользователей Windows в деле сканирования наглядно сопоставить распознанный фрагмент текста и соответ-
текстов не ограничиваются на личием драйверов для любого уст- ствующий ему фрагмент исходного изобра жения (графический
ройства. Сегодня да же самые дешевые модели сканеров по- вариант Cuneiform для Windows предоставляет такую возмож-
ставляются с программами (обычно это «облегченный» вариант ность). Программа, работающая по принципу фильтра (читаем ис-
FineReader), которые прекрасно справляются со сканированием ходные данные, выполняем обработку, выдаем результат) не мо-
среднестатистических офисных текстов. Собственно говоря, да- жет предоставить ана логичный уровень интерак тивности (хотя
же появление высококачественных открытых программ распо- в ядре Cuneiform имеются для этого все необходимые функции).

36 Linux Format Май 2009


 Распознавание текстов

Часть 1 Cuneiform
В отличие от программы Tesseract, за «открытием» которой стоя-
ли HP и Google, релиз исходных текстов Сuneiform был обстав-
лен гораздо скромнее. Помимо этого, важное отличие Cuneiform
от Tesseract – условия лицензирования. Разработчики Tesseract
выбра ли хорошо известную в мире открытого ПО лицензию
Apache License 2.0 (некоторые компоненты, добавленные сто-
ронними разработчиками, распространяются на условиях GPL).
Разработчики же Cuneiform ограничились коротким текстом,
согласно которому программное обеспечение может свобод-
но распространяться в виде двоичных файлов и исходных тек-
стов, в оригинальной или модифицированной форме, при усло-
вии сохранения уведомлений об авторских правах [это похоже
на первоначальную лицензию BSD, – прим. ред.]. Ма лозамет-
ное, но важное отличие заключается в том, что обычные лицен-
зии Open Source явным образом постулируют, что открытый од-
на ж ды код не может быть впоследствии «закрыт». Тот факт, что
Cuneiform распространяется на условиях, несколько нестандарт-
ных для открытого ПО, может привести к тому, что программа Cuneiform для Windows — отправная точка для открытого
не войдет в Linux-дистрибу тивы, составители которых придержи- проекта.
ваются строгих принципов относительно лицензий на ПО. Помимо
исходных текстов, в свободный доступ была выпущена уже соб- Если все прошло успешно, можно собирать саму программу:
ранная версия Cuneiform для Windows. Дело в том, что без серь- sudo make install
езной «обработки напильником» собрать ее из оригинальных ис- Cuneiform для Linux – консольное приложение. Работать с ним
ходников в современных версиях Microsoft Visual Studio просто просто. В общем виде, строка вызова программы выглядит так:
не полу чится. cuneiform -l <language> -o <output_file> [-f <output_format>]
Разработчики Cuneiform до сих пор не предоставили описания <input_file>
форматов файлов моделей, используемых программой для рас- где <language> – язык распознавания, например: rus – русский,
познавания. Инструменты обучения Cuneiform распознаванию eng – английский, fra – французский, ruseng – русско-англий-
текстов на новых языках так же отсутствуют. Отчасти этот пробел ский. В моей многоязычной ветке Cuneiform можно так же ука-
компенсируется тем, что Cuneiform уже умеет распознавать тек- зывать языки вида rus_xxx, где xxx – обозначение второго языка
сты прак тически на всех европейских языках, основанных на ки- документа (первый при этом – русский). Например, для распозна-
риллице и латинице (досадным исключением является, соответ- вания текстов, содержащих русский и французский языки, на до
ственно, греческий). набрать rus_fra. Ключ -o позволяет указать имя файла, в кото-
ром будут сохранены результаты распознавания. По умолчанию
Найдем и соберем данные сохраняются в простом текстовом формате в кодиров-
Cuneiform для Linux, который на момент написания этой статьи до- ке UTF-8, но с помощью ключа -f можно выбрать что-то другое,
стиг версии 0.6.0, пока что не входит ни в один стабильный ди- например, HTML, RTF или «родной» формат Cuneiform. Значения
стрибу тив (в настоящий момент он включен в репозиторий ALT опции -f для них выглядят как -f html, -f rtf, -f cf, соответствен-
Linux Sisyphus), так что собирать приложение вам придется са- но. Наконец, <input_file> – имя графического файла, из которого
мостоятельно. Исходные тексты последнего релиза Cuneiform программа читает исходные данные.
доступны по адресу https://code.launchpad.net/cuneiform- Cuneiform не справ ляется с распознаванием таблиц, за-
linux/+download; вы так же можете взять их с LXFDVD. Отсле- то понимает текст, разбитый на несколько колонок (их распо-
дить последние изменения можно здесь: https://code.launchpad. ложение в результирующем тексте не сохраняется, вместо это-
net/~jpakkane/cuneiform-linux/trunk, для этого вам потребуется го они размещаются как абзацы – одна под другой). Впрочем,
система контроля версий Bazaar. Для сборки Cuneiform необхо- и тут не обошлось без затруднений. Нередко бывает так, что про-
дима система CMake (если вы пользуетесь KDE 4, она наверняка грамма воспринимает пробелы, расположенные друг под дру-
у вас уже имеется). Кроме того, перед компиляцией Cuneiform ре- гом в нескольких строках подряд, как разделитель меж ду дву-
комендуется установить пакет преобразования графических фор-
матов ImageMagick (www.imagemagick.org). Если этого не сделать,
программа сможет читать исходные данные только из простых
растровых файлов (BMP).
Мои пять копеек
Преж де чем приступать к сборке, необходимо отредак тиро- Стандартная версия Cuneiform для Linux мо- под держку распознавания текстов, в которых
вать файл CMakeLists.txt, расположенный в корневой дирек тории жет распознавать тексты на русском, англий- русский язык смешан с другими, под держи-
ском, немецком, французском, испанском, ваемыми программой. В ходе работы над сво-
исходных текстов Сuneiform. После строки
итальянском, украинском, сербском, хор- ей веткой Cuneiform я так же добавил некото-
cmake_minimum_required(VERSION 2.6.0) ватском, болгарском, чешском, словенском, рые возможности, которые будут упомяну ты
добавьте польском, датском, португальском, голланд- по ходу изложения. Полу чить новейшие ис-
set(PROJECT_BINARY_DIR builddir) ском, румынском, венгерском, латвийском, ходные тексты моей ветви можно по ссылке:
где builddir – путь к дирек тории, в которой следует собирать дво- литовском, эстонском и турецком языках. По https://code.launchpad.net/~anb-symmetrica/
умолчанию русский язык может распознавать- cuneiform-linux/cuneiform-multilang, а так же
ичные файлы программы (если она еще не существует, то будет ся только совместно с английским. Я поста- на моем сайте: symmetrica.net/cuneiform-
создана в процессе). Теперь в этом же ката логе скомандуйте вил перед собой за дачу добавить в Cuneiform linux.
cmake ./

Май 2009 Linux Format 37


Распознавание текстов

Распознавание компенсируются иска жения, возникающие при сканировании мно-


текста на русском гостраничных документов в районе линии сшивки страниц. Стран-
и французском но, что качество распознавания английского текста оказа лось су-
языках в альтер-
щественно выше, чем качество распознавания русского. Стоит
нативной ветви
Cuneiform. так же отметить, что программа на удивление хорошо справля-
ется с распознаванием слов, которые, скорее всего, отсутствуют
во встроенном словаре (редкие имена собственные и географи-
ческие названия, а так же «программистские» конструкции типа
AddItem). Возможно, встречая такое незнакомое слово, програм-
ма переходит в режим более тщательного «просмотра».
А вот с распознаванием чисел, встречающихся в тексте,
Сuneiform справляется не очень хорошо. Еще одно чисто визу-
альное наблюдение: большие фрагменты текста программа рас-
познает лучше, чем ма ленькие, при этом в нача ле текста концен-
трация ошибок выше, чем в конце. Это заставляет предположить,
что ядро Сuneiform подстраивается под параметры конкретно-
мя столбцами. В результате Сuneiform на ходит колонки там, го текста по ходу распознавания. Непонятно, однако, что меша-
где их нет, что приводит к непредсказуемому изменению ком- ет программе вернуться к начальному фрагменту текста и попро-
поновки распознанного текста. Видимо, именно для таких слу- бовать распознать его еще раз, учитывая накопленную статистику
чаев разработ чики программы предусмотрели специальную (не исключено, что такая возможность в ядре Сuneiform действи-
опцию, позволяющую отключить поиск столбцов в распознавае- тельно существует, просто разработчики Linux-версии еще не за-
мом тексте, однако в главной ветке Cuneiform для Linux эта функ- действова ли ее).
ция почему-то заблокирована. Я разблокировал ее в своем ва- Главное разочарование – программа оказа лась бессильна рас-
рианте, и теперь вы можете подавить поиск столбцов в тексте познать текст на изобра жении, где белая страница была окру же-
с помощью ключа -c1. Cuneiform умеет распознавать и отдель- на обширными темными полями (такое часто бывает при сканиро-
но сохранять изобра жения, однако текст с обилием картинок
распознается несколько ху же, чем просто текст. Буквицы так же
воспринимаются как картинки, и их на личие отрицательно ска-
зывается на результате.

Проверка боем
Для тестирования качества распознавания было выбрано пять
текстов: два на русском языке, один – на смешанном русско-
английском и два – на английском. Все они были отсканиро-
ваны на сканере Mustek 2448 TA Pro в цветном режиме с разре-
шением 300 точек на дюйм. Разумеется, всесторонняя оценка
качества распознавания требует тестирования с использованием
множества различных шрифтов, компоновок текста и парамет-
ров сканирования. Приводимые ниже данные позволяют полу-
чить лишь самое общее представление о качестве распознавания
Cuneiform для Linux. Тем не менее, поскольку мне приходится по-
стоянно тестировать программу в процессе разработки собствен-
ной ветви, я возьму на себя смелость утверждать, что представ-
ленные данные отра жают общую картину.
По результатам тестирования (см. врезку внизу) можно отме-
тить следующие любопытные фак ты. Точность распознавания
русского языка колеблется в пределах 96–97% и прак тически
не зависит от цвета фона и размера шрифта (видимо, Cuneiform
умеет хорошо норма лизовать соответствующие иска жения). На- Распознанный текст с картинкой в формате HTML: некоторое
клон строк тоже ма ло влияет на качество распознавания. Неплохо сходство с оригиналом присутствует.

Результаты тестирования Cuneiform 0.6.0


Вид текста* Общее число слов Количество ошибок

Простой русский текст (белый фон, одна колонка) 240 9 (3,5%)

Русский текст, белый фон, 2 колонки, 526 16 (3%)


сильный наклон строк
Русско-английский текст, темный фон, 335 13 (4%)
мелкий шрифт, 3 колонки

Английский текст, белый фон, две колонки 260 3 (1%)

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

38 Linux Format Май 2009


 Распознавание текстов

вании, если размер страницы меньше размера рабочего поля При использовании «богатых» форматов вывода, таких как
сканера). Именно поэтому в таблице и нет результатов для одно- HTML и RTF, Cuneiform старается сохранить элементы форматиро-
го из тестовых текстов. Разумеется, черные поля можно уда лить вания исходного текста (заголовки, выделения слов полу жирным
в графическом редак торе, но на это расходуется время, которое шрифтом и курсивом), а так же добавить в результирующий текст
можно было бы потратить на более полезные вещи. обнару женные в оригина ле картинки.

Часть 2 Tesseract
Разработка открытого варианта Tesseract пользуется под держ- Tesseract совершенно не справляется с картинками и формула-
кой Google, что не могло не отразиться на внимании разработчи- ми в тексте. Соответствующие области заполняются текстовым
ков к этому проек ту самым благоприятным образом. Изначально мусором и крайне негативно влияют на процесс распознавания
Tesseract был предназначен исключительно для распознавания в целом. Единственный формат вывода данных, под держиваемый
текстов на английском языке, однако благодаря общедоступным Tesseract – неформатированный текст.
средствам обучения программы энтузиасты смогли добавить в нее Почему же, несмотря на все перечисленные особенности,
под держку других языков, основанных на латинице. Были пред- Tesseract значительно более известен в мире Linux, чем Cuneiform?
приняты попытки научить Tesseract распознаванию и русскоязыч- Причин, на мой взгляд, две, и обе они были упомяну ты выше. В от-
ных текстов, однако пока что результаты более чем скромные. От- личие от Cuneiform, Tesseract распространяется на условиях офи-
части это объясняется тем, что циальной открытой лицензии,
множество эвристик, справед-
ливых только для латинско-
«Tesseract распростра­ что делает его более приемле-
мым в глазах «пуристов». Вто-
го алфавита, были «зашиты»
непосредственно в код про-
няется по официальной рое преимущество – на личие
инструмента обучения про-
граммы, из которого их не так- открытой лицензии.» граммы новым языкам (рус-
то просто «вычистить». На этом ский пока в их число, к сожа-
примере мы в который раз убеж даемся в справед ливости одно- лению, не входит). Для упрощения тренировки Tesseract была
го из основополагающих принципов разработки Unix, требующего да же создана специальная программа с красивым графическим
везде, где только можно, разграничивать движок и интерфейс. интерфейсом. Основные параметры Tesseract и Cuneiform сведе-
Как и Cuneiform для Linux, Tesseract представляет собой кон- ны в таблице ниже.
сольное приложение, не способное взаимодействовать со скане- По результатам сравнений Cuneiform несомненно лидирует,
ром напрямую. В Википедии утверждается, что исходными данны- причем, и это приятно отметить, не только за счет под держки важ-
ми для Tesseract должны быть изображения в TIFF, однако мой опыт ного для нас русского языка, но и за счет лучшего качества распо-
показывает, что он понимает и другие форматы, в том числе BMP. знавания и вывода результатов. Объясняется это, помимо прочего,
Разработчики Tesseract заявляют, что их программа являет- тем, что в свое время Cuneiform был хорошо продаваемым ком-
ся, вероятно, лучшим открытым средством распознавания тек- мерческим продук том. Будем на деяться, что разработчики откры-
ста. Думаю, что сегодня мы можем скоррек тировать это ут- того ПО не только успешно завершат процесс переноса Cuneiform
верждение. Да же при распознавании английского текста, для на открытые платформы, но и продолжат дальнейшее развитие
которого Tesseract изначально и создавался, приложение показа- этой программы. LXF
ло себя не лучше Cuneiform. Единственное (хотя и важное) преиму-
щество – Tesseract смог распознать страницу с черными полями по Утилита для обу-
краям. А вот с разделением текста на два столбца (отсканирован- чения Tesseract
ный книжный разворот) программа не справилась. иностранным язы-
кам. Для нас с вами
При тестировании Tesseract обнару жился один артефакт: если
она, увы, беспо-
в нача ле распознаваемого фрагмента встречается текст на язы- лезна.
ке, отличном от выбранного, программа сбивается, и качество
дальнейшего распознавания оказывается низким. Для сравне-
ния – Cuneiform более толерантен к текстам на непонятных язы-
ках, но встретившаяся в тексте таблица так же нарушает про-
цесс распознавания до конца страницы. В отличие от Cuneiform,

Таблица функций
Tesseract Cuneiform
Лицензия Apache License 2.0, GPL Своя
Распознавание европейских
языков (расширенная латиница)
Распознавание русского языка
Инструменты обучения
Качество распознавания Ху же Лучше
Формат вывода результатов Только текст Текст или форматированный вывод

Май 2009 Linux Format 39


linux.org.ru

у
десять лет!
Некоторое время назад (точно никто не скажет: истоки любой легенды покрыты
мраком) сайт linux.org.ru отметил свой юбилей. Сергей svu Удальцов смотрит
на него добрыми глазами модератора.

Л
ОР, www.linux.org.ru — это не просто адрес в Интер- Там вы наверняка найдете несколько шедевров, мимо которых
нете или строчка в вашем браузере. Это легендар- не сможете пройти без слез (жалости или восхищения – этого
ный сайт с уже более чем десятилетней историей, я заранее сказать не могу). Как правило, сюда помещаются сним-
непростым имиджем, шуточными цитатами и не- ки всевозможных рабочих столов (домашних, офисных, детских,
шуточными страстями... гламурных...), но иногда попадаются совершенно уникальные ар-
ЛОР – это клубок (а вовсе не торт, как подсказывают местные тефакты – фотографии плюшевых пингвинов, собственноручно
зубоскалы) из множества тесно переплетенных нитей: каждая пошитых подругами, любопытных «железяк», захламленных ан-
из них по-своему нужна, и в каждой отражается то, что старожи- тикварными раритетами рабочих мест. Вы всегда вправе сделать
лы любят называть «Духом ЛОРа». Распутывать этот клубок мож- жесткое замечание о красоте шрифтового оформления, поинте-
но начинать с любого конца – в итоге вы все равно получите пря- ресоваться происхождением фоновой картинки, обсудить музы-
жу, из которой можете спрясть, если захотите (и если на то будет кальные вкусы (по спискам изображенных медиа-плейеров) и да-
воля Духа), ваш собственный ЛОР и ваше видение этого явления же поинтересоваться координатами девушки, чей ник или аватара
Наш и найти свое место в нем. заинтересовали вас в отображенном контакт-листе. Впрочем, как
эксперт это принято в любом уголке ЛОРа, никто не помешает вам начать
Сергей svu Что есть что и развить любую тему, если найдется достаточное количество со-
Удальцов С чего начнем? Вот нитка, «привязанная» к главной странице ЛО- беседников (а они найдутся, уверяю вас!).
Участник
Ра. Новости о свободных – и не очень – программах, об исполь- Форум – это рабочая площадка ЛОРа. Тут вы можете задавать
нескольких сво-
бодных проек- зующих Linux устройствах, провокационных заявлениях знаме- вопросы на любые технические темы, касающиеся Unix-админис-
тов, консуль- нитостей и прочем. Казалось бы, мало ли новостных технических трирования (и не только), программирования, настольного приме-
тант-эникейщик сайтов в Рунете, чем ЛОР лучше? А вы посмотрите в комментарии нения, проблем с аппаратурой и так далее. «Джентльмену всегда
уровня предпри- к новостям: ЛОР – там! Вы увидите кровавые баталии, вызванные есть, что сказать», – на ЛОРе ваш вопрос наверняка найдет ко-
ятия, гражданин
двух стран и вы- разными взглядами на предмет новости (а также на темы, имею- го-то, кто сможет вам помочь. А может, и вы сами поможете ре-
пускник питер- щие к ней весьма опосредован- шить чью-то проблему своими
ского Политеха ное отношение). Вы не сможете познаниями?
со средним бал-
лом 5,0.
пройти равнодушно мимо от- «Q: А что у тебя отвали­ Самая пестрая нитка в клуб-
сылок к ЛОРовским мемам, ко-
торые разошлись по всему Ру-
вается при обновлении ке ЛОРа – «Толксы» [скан-
дально?], знаменитый раз-
нету, мимо названий эпических
мегатредов, собравших сотни
Ubuntu Server Edition? дел форума. Формулировка
«нетехнические разговоры
и тысячи комментариев, ми- A: Челюсть.» cascade о Linux/Unix» оказалась на-
мо имен героев ранних лет ЛО- столько удачной, что здесь цве-
Ра, павших (то есть изгнанных администрацией) в неравной борь- тут буйным цветом дискуссии обо всем, о чем не получилось по-
бе за свою точку зрения или свой уникальный, не всем приятный, говорить в других разделах. Вопросы жизни и смерти, религии
стиль общения. и атеизма, автолюбительство и фотоискусство, рождение детей
Попробуем потянуть за другую ниточку: войдем в прослав- и смена климата... Формально, дискуссии о политике на ЛОРе за-
ленную ЛОРовскую галерею – отражение вкуса российских поль- прещены (этот запрет – сам по себе отдельная тема для дискуссий),
зователей Linux и других Unix’ов. Или безвкусицы – как посмот- но в Толксах администрация иногда смотрит сквозь пальцы даже
реть: в конце концов, об этом же не спорят (иначе как на ЛОРе). на это... Если у вас есть неразрешимый философский или бытовой

40 Linux Format Май 2009


 linux.org.ru

вопрос – знаменитые «аналитики с ЛОРа» за несколько десятков-


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

ФЛОРа и фауна
Давайте, наконец, посмотрим на обитателей ЛОРа. Видите обор-
ванную нить? Это анонимные пользователи, «анонимусы», их с на-
ми сегодня нет. В древние времена любой человек мог зайти на ЛОР
без регистрации, задать вопрос, ответить другим, высказать свое
мнение. Время шло, Интернет становился другим, менялся ЛОР,
менялся «анонимус». Все чаще его благородное имя использова-
лось для хулиганства и вандализма, техническая защита против
ботов становилась все сложнее, а боты – все хитрее. Гонка воору-
жений закончилась тем, что администрации пришлось запретить
анонимным пользователям участие в дискуссиях. Жертва была
большой, «дух ЛОРа» был сильно ранен, но не погиб.
Кто же носитель духа сегодня? Они, простые, скромные поль-
зователи ЛОРа. Зарегистрировавшиеся много лет назад (настоль-
ко давно, что дата регистрации неизвестна), а также появившиеся
только вчера – иногда задающие смешные и наивные вопро-
сы. Они заполняют новостную ленту и форум с «толксами», они
редактируют ЛОРовский FAQ (ответы на часто задаваемые вопро-
linux.org.ru —
сы по Linux). Они участвуют в различных свободных проектах или, янное осознание своей ответственности перед другими пользо-
именно так
наоборот, доказывают ненужность свободного ПО (да, на ЛОРе вателями помогает им в нелегком труде сохранения и улучшения он и выглядит
есть и такие!). Именно пользователи делают ЛОР тем, что он есть, атмосферы на ЛОРе. Для модератора важнее всего именно пони- (да-да, мы знаем,
со всеми его достоинствами и недостатками. Легенды ЛОРа – это мание миссии, поэтому такие мелочи, как пропущенные опечатки какие у нас
пользователи, байки про пользователей, меткие высказывания в новостях, никак не могут скомпрометировать настоящего моде- шрифты).
пользователей. И не важно, сколько «очков» на счету у того или ратора – есть же у нас неусыпные корректоры, облеченные не-
иного человека – иные «заслуженные личности» остаются в те- ограниченным грамматическим доверием.
ни всю жизнь, а харизматич- Есть и другие нитки в этом
ный «новичок» может оказать-
ся знаменитостью на второй
«Лисперы после смер­ клубке. Опросы на главной
странице, ЛОРовские встречи
день после регистрации.
Важная нить в ЛОРовском
ти становятся смайли­ (да, в реальной жизни!), ЛО-
Ровские девушки (лучшие в ми-
клубке – модераторы. Их функ- ками.» Anonymous, ныне вымерший вид ре!), недолго существовавший
ция – охрана порядка. Первым Клуб... ЛОР не идеален – он все-
модератором был сам основатель ЛОРа – maxcom. Свои полномо- го лишь замысловатое отражение мира айтишников. На ЛОРе есть
чия он доверяет группе товарищей, считающихся достойными за- место всему – и будням, и праздникам, и шутке, и занудству. Вы-
щищать дух ЛОРа и поддерживать «здравую дискуссию». Прави- далась свободная минутка – наберите в браузере www.linux.org.
ла и личное усмотрение, предупреждения и запреты – модераторы ru. Может, это Ваш Сайт? Прикоснитесь к легенде. Станьте леген-
облечены настолько широкими полномочиями, что только посто- дой среди легендарных. И да пребудет с вами Дух ЛОРа! LXF

Если утром вам не хочется идти на работу, откройте Forbes


ЛОР top 2009 и поищите свою фамилию. Не нашли? Тогда поищите свой ник
в списке 100 самых многозвездных пользователей ЛОРа!

 Dimez  Casus  Evgueni  GladAlex  los_nikos


 svyatogor  mator  Orlangoor  isden  kda
 Die-Hard  Obidos  Vlad_Ts  borisych  dimss
 dn2010  Teak  green  idle  dotcoder
 Demetrio  fagot  cyclon  lester_dev  kto_tama
 Pi  robot12  sS  sasha999  Havoc
 Shaman007  dilmah  vadiml  cavia_porcellus  Tima_
 no-dashi  spirit  Selecter  int19h  bormotov
 ivlad  ManJak  K48  WFrag
 sdio
 anonymous_incognito
 Skull
 php-coder
 ist76
 Syncro
 mrdeath
 AlexM
Ваш е
мне сеумме)
ни
 Reset  atrus  cvv  saper
 maxcom  init  DonkeyHot r
 jackill  AVL2  stassats  boombick
езд (в
 grob  fghj  Aceler  Ay49Mihas Сколько звоманда LXF
 JB  UserUnknown  ananas  kaktyc
имеет к ОРе?
 AP  eXOR  WerNA  acheron
на Л ы
ваши ответ
 KRoN73  Begemoth  Zubok  ansky
 svu  MiracleMan  watashiwa_daredeska  gr_buza Присылайте й адрес –
 sin_a  AcidumIrae  Rain  kilolife на известныинтересно,
 Lumi  UVV  adarovsky  hibou нам самим ть лень.
 l-xoid  BaT  mic  Vanilin а счита
 birdie  mky  AngryElf W

Май 2009 Linux Format 41


Что за штука… Moblin

Что за штука…

Moblin?
Боб Мосс рассказывает о перспективах появления стандартной открытой
Moblin Live Alpha 2

платформы для нетбуков на базе Atom…

Moblin — что это означает? используемых вами web-сервисов. Кроме Похоже, весь проект пока что
Наименование проекта – это со- того, Moblin обещает интересную функцию сыроват… а не возьмут ли
кращение от ‘Mobile Linux’.. Так называет- ‘Fast Boot’ [Быстрая загрузка], с помощью существующее Linux-ядро, переделают
ся стандартная платформа для крохотных которой устройства на флэш- или твер- его, да и выпустят под новым именем?
компьютеров, внезапно заполонивших всё дотельных накопителях будут загружать- Да, в нынешнем состоянии проект зани-
вокруг. ся за 5 секунд (а те, что на жёстких дисках мается в основном подгонкой Linux-ядра
IDE/SATA – за 10 секунд). под процессор Atom,, но в его планах го-
Фантастика! Один стандартный раздо более широкие перспективы: на-
дистрибутив — как я этого ждал! Мой нетбук и так загружается пример, создание привлекательного GUI-
Да, оно было бы здорово, но цель проекта мгновенно. Что ещё умеет этот инструментария, а также интеграция
не в этом. Задача – получить одну откры- Moblin? рабочего стола и web-сервисов. Коман-
тую платформу, подходящую для всех уль- Наряду с особыми аудио- и сетевыми ап- да Moblin определила все необходимые
трапортативных ноутбуков и мобильных плетами, одним из приоритетов Moblin функции и поставила соответствующие
интернет-устройств на базе Atom,, на ос- является безопасность. Проект работает задачи. Причём некоторые разработчи-
над тем, чтобы обеспечить ки, пытаясь достичь поставленных целей,

«Свобода выбора – это заме­ отделение «небезопас-


ных» или «неизвестных»
продумывали собственные варианты,
и только потом обнаружили более эле-
чательно, но жизнь разра­ приложений от тех, ко-
торым вы вполне дове-
гантные решения, уже заложенные в яд-
ро (например, то же пространство имён
ботчиков усложняет.» ряете. Тогда крах небла- и «песочницы»).
гонадёжной программы
нове которой разработчики могли бы со- не станет катастрофой (это называют «по- Web-сервисы на рабочем столе?
здавать собственные дистрибутивы для мещением в песочницу»). Хотя меры безо- Выходит, нетбуки с Moblin обеспечат
нетбуков. пасности подобного рода уже существуют удобный доступ к Facebook и Twitter и так
на уровне ядра, проект пытается реализо- далее?
А чем же Moblin лучше Linux- вать новую функциональность и ограни- Совершенно верно – но ПО для этого
дистрибутива, установленного чить доступ программ только теми файла- (Mojito называется) тоже находится в аль-
на моём нетбуке по умолчанию? ми и данными, которые им действительно фа-стадии, поддерживаются только Twitter
С Moblin будет проще использовать од- необходимы. и Flickr. В планах – отслеживание вашей
ни и те же программы на разных нетбу- социальной интернет-активности, агрега-
ках, ведь база будет единой для всех. Как Возможно ли это? ция интересующих вас социальных сетей,
правило, все нетбуки оснащаются собст- К последним версиям Linux-ядра фотообменников, новостных сайтов и бло-
венным оборудованием и встроенным ПО, добавлена новая мера безопасности, гов. Вы будете сохранять связь со всем ми-
и хотя это здорово с точки зрения свободы под названием CLONE_NEWNS:: она позво- ром, даже отключившись от Сети! Все это
выбора, задача разработчиков усложняет- ляет ядру создавать «пространства имён». увязано с интегрированным персональ-
ся, так как приложения приходится инди- Процессы системных приложений, входя- ным органайзером, поддерживающим ряд
видуально дорабатывать под каждый нет- щие в пространство имён, получают до- сетевых служб.
бук, выходящий на рынок. ступ только к определённым в нём файлам
и процессам. Возможно, Moblin будет ис- Да мне для этого и смартфона
Стандарты — дело хорошее, пользовать два общих пространства имён: хватает!
но в чём Moblin улучшит мой для «надёжных» и для «подозрительных» И как, удобно составлять документы, от-
нетбук? приложений, внутри которых каждая про- правлять развёрнутые электронные сооб-
Упор делается на то, чем пользователи нет- грамма будет иметь своё, отдельное. Одна- щения или подключать дополнительную
буков заняты большую часть времени. Ин- ко конкретных решений по этому поводу память? А нетбук маленький, но достаточно
терфейс будет современным и простым ещё не принято (идёт обсуждение), поэто- мощный, и настраивается на выполнение
в использовании, с плотной интеграцией му на данном этапе остаётся лишь гадать. любой задачи! Цель Moblin – обеспечить

42 Linux Format Май 2009


Moblin Что за штука…

базу для разработчиков приложений, что- ОК, вы меня убедили! Пойду тесь по ней, но всё это, вероятно, снизит
бы пользователи смогли извлечь из своих установлю… производительность нетбука в реальной
нетбуков максимум. Не гоните лошадей! Mobilin пока ещё аль- работе. Не удалось пока и обеспечить эф-
фа, и проект в его нынешнем состоянии вас фективное использование экранного про-
Ну, если Moblin ещё не обзавёлся весьма разочарует. Например, большинс- странства за счёт увеличения значков или
этими замечательными функциями, тво запланированного ПО находится в раз- открытия окон приложений максимизи-
да ещё находится в альфа-стадии — на- работке, многие приложения и библиотеки рованными. Реально работать могут пока
верное, в нём полно ошибок! ещё не включены в состав. Вы не сможе- лишь MPlayer и Mousepad, остальные пози-
Над некоторыми серьёзными недочётами те даже испытать графический интерфейс ции в меню – инструменты настройки Mobi-
команда Moblin как раз и трудится. Moblin Mobilin (всё, что есть – это рабочий стол Xfce lin или Xfce. Менеджера пакетов нет и в по-
использует Anaconda (инсталлятор, при- да горстка приложений). Кроме того, Mobi- мине, поэтому для добавления приложений
меняемый в Fedora),, и всё работает пре- lin весьма разборчив в плане систем, на ко- приходится собирать все из исходников.
красно, если выбрать пункт загрузочного торых он загружается, да и на «избранных»
меню ‘boot and install’ [загрузить
загрузить и уста- это происходит медленно: ускорители за- Так чем же проект Mobilin лучше
новить].
].. Но если выбрать в этом же ме- грузки недостаточно отработаны. других проектов для нетбуков?
ню пункт ‘boot’,, а затем попробовать ин- Ну, Mobilin ещё юн, но обещает мно-
сталлировать систему из Live-окружения, Значит, за основу взяли Xfce? гое – а ведь его поддерживает сам In-
то у вас запросят пароль суперпользо- Это не совсем тот Xfce, который tel. Многие ли проекты могут похвалиться
вателя, несмотря на то, что его попросту вы знаете и любите. Рабочий стол ском- тем, что за ними стоит процессорный ги-
нет! На Asus Eee PC 901, например, не ра- бинирован из Xfce и Gnome Mobile; един- гант и его разработчики?
ботает Wi-Fi. Не поддерживаются нетбу- ственное сугубо Moblin-приложение – это
ки на графическом чипсете Intel GMA- браузер (сам по себе настолько сырой, что Здорово! И где можно раздобыть
500. Все эти вопросы, наряду с созданием не может толком вывести даже странич- информацию?
графического интерфейса, «находятся ку Mozilla, загружаемую по умолчанию!). Прежде всего обратитесь на официальный
в усиленной разработке», если процити- Имеется несколько интересных визуаль- сайт Mobilin, http://www.moblin.org. А там
ровать официальный сайт Moblin.. Поэто- ных эффектов, например, придание про- вы уже сможете узнать о целях проекта,
му, хотя впереди ещё немало работы, бу- зрачности перетаскиваемым окнам, или подключиться к IRC-каналам, пообщаться
дущее проекта выглядит ярким. подсветка панели задач, когда вы движе- в блогах и списках рассылки. LXF

Май 2009 Linux Format 43


Рецепты доктора Брауна

По рецептам
Д-р Крис Браун
доктора Брауна
Доктор обучает, пишет и консультирует по Linux.
Ученая степень по физике элементарных частиц
Добротное администрирование систем из
ему в этом совсем не помогает. причудливых заворотов кишок серверной.

Технари
против людей?

Э
лек тронная почта, мобильники, тек-
стограммы [особые сокращения
в SMS, типа CU@8 = see you at eight
= встретимся в 8, – прим. пер.], Twitter, бло-
ги, системы мгновенного обмена сообщения-

Классные инструменты
ми, новостные группы, подкасты, интернет-
семинары, чаты… мир наводнен способами
общения. Неу жели я одинок в своем стрем-
лении к мирной тишине и спокойным раз-
думьям? Взять, к примеру, мгновенные со- Gobby Совместное редактирование документов и чат
общения. Чего ра ди изобрели этот способ
тратить 20 минут взамен двухминутной бе- с красивым выделением цветом.
седы по телефону? Мне говорят, что вес-

И
ти полдюжины чатов сразу – обычное де- так… вы работаете над пред ложением
ло. Но со мной такое не проходит. по новой инфраструк туре корпоратив-
Еще одна моя проблема – с письмен- ных серверов. Ваш менед жер проек та
ным английским, хотя постоянные чита- сидит в Сан-Диего, сетевой администратор – в Па-
те ли вряд ли в это поверят. Фра зам нуж- риже, босс – в Стокгольме, а вы – в Урюпинске. Ве-
ны неж ная любовь и забота, а при обмене зет вам! Можно, конечно, включить режим исправ-
мгновенными сообщениями на это времени лений и гонять документы OpenOffice.org туда-сюда
нет. И пока я выверяю стиль, тип на дру- по элек тронной почте, а вот мне недавно попался
гом конце пишет «R U still there?» («ты еще редак тор для совместной работы под названием
Окно редактора Gobby — но учтите, здесь нет
здесь?»). Эпистолярный жанр вырож дается Gobby: он позволяет нескольким пользователям
опции «отменить»!
до небреж ной неформальности разговор- одновременно редак тировать один и тот же файл.
ной речи. Gobby – клиент-серверное приложение, поэто-
му клиент Gobby нужно установить на вашем ком-
Года былые пьютере, и у вас должен быть доступ к серверу учетную запись. При регистрации в системе ка ж-
Несмотря на недостатки, присущие государ- Gobby. Клиент доступен для большинства основ- дый участник сеанса в Gobby выбирает цвет, кото-
ственной монополии, у старой доброй почты ных дистрибу тивов Linux. Например, в Fedora рым выделяются изменения, сделанные им в до-
было и достоинство – она дава ла время все он устанавливается при помощи кументе. Таким образом, легко увидеть, кто и что
обдумать. Положив письмо в конверт, вы зна- su -c ‘yum install gobby’ внес. Сразу после входа на сервер вы увидите ок-
ли, что у вас как минимум 48 часов для раз- А в Ubuntu – такой командой: но Document List [Список документов] с перечнем
мышлений, пока идет ответ. sudo apt-get install gobby документов, которые редак тируются в данный мо-
Знаю, о чем вы думаете. Возрастное, да? Серверы доступны, например, на gobby.fe- .fe-
fe- мент. Просто выберите свой, щелкните Subscribe
Дуглас Адамс одна ж ды заметил, что ста- doraproject.org или gobby.ubuntu.com. Для вхо- [Подписаться], и Gobby превратится в обычный
рея, мы все неохотнее воспринимаем новше- да на некоторые из них нужно снача ла создать текстовый редак тор типа Блокнота.
ства. Моя теща ведет элек тронную переписку
так: снача ла пишет письмо на бумаге, потом
дает моей жене, чтобы та его набра ла. Когда-
нибудь я и сам, наверное, спрыгну с поезда
Средство от Molly
технологий, буду смотреть, как он исчезает Однажды девчушка по имени Молли удружила папе-про- вам набрать halt или reboot и в итоге осознать, что вы толь-
вда ли, и упиваться своим старческим слабо- граммисту, умудрившись обесточить мейнфрейм IBM: ко что отключили сервер в Китае, на котором работали
ей захотелось дернуть красивый красный рубильник. По- через SSH? Если да, попробуйте molly-guard. Он перехва-
умием. Та-ак… а где, черт побери, мои шле-
сле этого случая рубильник прикрыли щитком и называ- тывает команды shutdown/reboot/halt/poweroff и (при ра-
панцы? ли его «Молли-защитным». В нашем «сетевом» веке по- боте через SSH-соединение) запрашивает имя хоста, ко-
добная угроза проявляется в иных формах. Случалось ли торый, как вы думаете, будет выключен.

44 Linux Format Май 2009


 Рецепты доктора Брауна

Масштабируемое резервирование
BackupPC Отступимся от мелких утилит типа tar и rsync и рассмотрим
эту систему уровня предприятия.
Сервер

И
ногда говорят, что есть два типа системных админист-
Интерфейс браузера
раторов: те, что не делают резервные копии регулярно,
и те, что уже делают. Если компьютеров, за которыми Apache
на до следить, немного, вам вполне хватит обычных утилит типа
rsync и tar (а то и древних dump и restore).
А если требуется хорошо масштабируемое решение, гляньте Клиент rsync
на BackupPC. Это система резервного копирования данных с ком- Linux backuppc
пьютеров Linux и Windows на жесткий диск сервера. BackupPC гиб- tar
ко настраивается и (сравнительно) проста в установке и под держ-
Клиент
ке. Она написана на Perl и может получать данные от клиентов по Linux smb
одному из трех протоколов: smb (с помощью Samba), tar (через
SSH или NFS) и rsync. Я нарисовал схему данной архитек туры. Об-
Клиент Локальная
ратите внимание, что система работает только с дисками и не уме- Windows файловая система
ет записывать данные, например, на ленту или DVD. Так же отметь-
те, что на клиенте не нужно устанавливать специальное ПО.
Хотя настройка и управление BackupPC возможны из команд- Первая строка – самая интересная: она за дает расписание за-
ной строки, одна из его лучших функций – web-ин
-интерфейс. Для не- пуска BackupPC (часы после полуночи). Настоящий файл гораздо BackupPC адми-
го потребуется еще установить Apache (не обязательно на том же больше и густо откомментирован. нистрируется по
компьютере, где запущена BackupPC). Проверка состояния серве- Файл /etc/backuppc/hosts содержит список хостов (клиент- HTTP, но может
получать данные
ра или отдельных клиентов, контроль журна лов, просмотр содер- ских компьютеров), данные с которых будут архивироваться. Вот
от клиентов че-
жимого архивов и пометка данных для восстановления, а так же пример: рез rsync, tar или
правка конфигурационных файлов – на все найдется свое ок- venus.example.com 0 belinda SMB.
но. Последнее из них напоминает Swat (Samba Web Administration Первое поле – имя компьютера (предполагается, что оно разре-
Tool). Файлы можно восстановить через web-интерфейс или за- шается через DNS или локальный файл /etc/hosts), а третье – имя
грузить Zip или Tar-архивы с содержимым резервной копии. пользователя-«вла дельца машины». Именно ему BackupPC отпра-
вит элек тронное письмо с предупреж дением о проблеме с резер-
Экономьте место на диске вированием на данном компьютере. Второе поле почти всегда рав-
Одна из наиболее интересных особенностей BackupPC – организа- но 0. Установка его в 1 под ходит для клиентов, которые получают
ция пулов. Она работает так: если два или более разных клиентов свои IP-адреса по DHCP и не отвечают на широковещательные за-
сохраняют копии одинаковых файлов (или да же один клиент со- просы разрешения имен Netbios. Это заставляет BackupPC про-
храняет две копии одного и того же файла), то на сервере оказы- сматривать весь пул адресов DHCP в поисках компьютера.
вается только одна копия. В зависимости от сохраняемых данных, При желании, настройки ка ж дого хоста можно хранить в от-
это может сэкономить массу места на дисках. дельном файле. В нем за даются параметры, специфичные для уз-
BackupPC так же под держивает более тра диционное сжатие лов, отличающиеся от настроек в основном файле. Например:
данных. Начальная настройка BackupPC требует забот: уж очень $Conf{XferMethod} = ‘rsync’;
много здесь параметров. Файлы настроек представляют собой $Conf{RsyncShareName} = [‘/home’, ‘/srv’];
код на Perl (точнее, они состоят из выра жений на Perl, присваиваю- Эти строки определяют протокол, используемый для полу-
щих значения хэшу $Conf). Основной файл настроек – /etc/backup-
etc/backup-
/backup-
backup- чения данных от этого хоста, и ката логи, резервную копию кото-
pc/config.pl; три строки из него да дут вам общее представление: рых нужно сделать.
$Conf{WakeupSchedule} = [2,4,6,8,10,12,14,16,18,20,22]; Я решил использовать в качестве протокола rsync, и настро-
$Conf{MaxBackups} = 4; ить его в моей сети оказа лось довольно просто, за исключением
$Conf{DfPath} = ‘/bin/df’; одного: BackupPC запускает rsync на клиенте через SSH, и он дол-
жен выполняться от имени суперпользователя-root. Это потребует
кое-каких телодвижений по созданию и рассылке соответствую-
щих открытых и закрытых ключей, чтобы вход в систему под root
мог состояться без запроса пароля. Более подробная информация
и ку ча экранных снимков – на сайте backuppc.sourceforge.net. В по-
исках альтернативы стоит взглянуть на Bacula или Amanda.

Сколько места на диске?


На сайте BackupPC есть следующий пример: 95 ноутбуков с полным архивированием
в среднем по 3,6 ГБ на ка ж дый и инкрементальной резервной копией около 300 МБ
на ка ж дый. Три полных и шесть инкрементальных резервных копий в неделю на штуку
В этом окне видно общее состояние сервера, а также информа- заняли бы около 1200 ГБ дисковой памяти при сохранении «сырых» данных, но благо-
ция о заданиях и ссылки на другие окна. даря пулам и сжатию потребуется всего 150 ГБ.

Май 2009 Linux Format 45


Рецепты доктора Брауна

Собираем пакеты Debian


Deb’ы Возможно, лучшее, что есть в Debian – это система управления пакетами,
поэтому познакомимся с APT и создадим свои Deb-файлы.

В
данной статье мы заглянем внутрь Deb-пакета и пока жем, Файл md5sums хранит контрольные суммы файлов пакета,
как собрать его самому. Deb-файл – это архив архивов. Его а в файле control собрана оставшаяся метаинформация. Вот (от-
формат описан в странице руководства по Deb. На верх- редак тированный) пример:
нем уровне это архив ar, внутри которого (обычно) три файла. Туда Package: sox
мы можем легко проникнуть: Version: 14.0.0-5
$ ar x /var/cache/apt/archives/sox_14.0.0-5_i386.deb Depends: libc6, libltdl3, libsamplerate0, libsox0
$ ls Recommends: libsox-fmt-base, libsox-fmt-alsa
control.tar.gz data.tar.gz debian-binary Suggests: libsox-fmt-all
Файл debian-binary можно пропустить, он содержит только но- Section: sound
мер версии формата пакета (в данном слу чае 2.0). Файл data.tar. Priority: optional
gz – это сжатый tar-архив реального содержимого пакета: файлов, Description: Swiss army knife of sound processing
которые будут скопированы куда нужно при его установке. Ниже Control – обычный текстовый файл, содержащий именованные
приведены примеры строк из вывода – они да дут вам общее пред- поля, по одному на строку. Его формат описан на man-странице
ставление; этот пакет состоит из нескольких исполняемых файлов deb-control. Обязательны четыре его атрибу та: Package, Version,
и кое-какой документации: Maintainer и Description.
$ tar tf data.tar.gz Обратите внимание, что строка Depends: в файле control оз-
./usr/bin/sox начает абсолютную зависимость. Ес ли A зависит от B, то A не мо-
./usr/lib/mime/packages/sox жет запускаться без B и программа управления пакетами не раз-
./usr/share/doc/sox/ решит установить A, ес ли B у вас нет. Однако в файле control
./usr/share/doc/sox/README.Debian можно ука зать и более слабые зависимости. Например, строка
Наконец, файл control.tar.gz содержит управляющую инфор- Recommends: используется для перечис ления пакетов, которые
мацию о пакете: обычно должны устанав ливаться вместе с данным. Еще более
$ tar tf control.tar.gz слабый вариант, строка Suggests:, описывает пакеты, способные
./ улучшить работу данного. Например, пакет sox, пока занный вы-
./postinst ше, зависит от библиотеки libsox0, рекомендует установку libsox-
./postrm fmt-base (минимальный набор библиотек форматов sox) и со-
./md5sums ветует пакет libsox-fmt-all (метапакет, добав ляющий к декодеру
./control библиотеки для большинства существующих аудиоформатов).
Здесь postinst и postrm – скрипты, выполняемые сразу после Для установ ленного пакета всю эту информацию можно полу-
установки и уда ления пакета соответственно. В сценарии postinst чить командой
можно, например, добавить приложение в меню рабочего стола, $ apt-cache show sox
зарегистрировать MIME-тип, запустить или перезапустить службу
или собрать информацию о пользователе для начального файла Выкатим собственные пакеты
настроек. В скрипте postrm можно, например, уда лить файлы, ко- Как же создать Deb-файл? Я начал с двух ма леньких скриптов
торые созданы пакетом и не являются частью его самого. Есть еще helloworld и world, примерно таких:
Препарирова- скрипты preinst и prerm, они запускаются непосредственно перед #! /bin/bash
ние Deb. Верхний установкой или уда лением пакета. Например, скриптом prerm echo -n hello
уровень можно останавливают работающий сервис, который собра лись уда лить. world
распаковать с по-
world:
мощью ar, а ниж-
ние — с помо- #! /bin/bash
щью tar. sox_14.0.0-5_i386.deb echo ‘ world’
Предполагая, что они на ходятся в ката логе, который входит в мой
путь поиска, я могу запустить helloworld и увидеть то, что ожидал:
$ helloworld
data.tar.gz debian-binary control.tar.gz hello world
(Содержит версию формата) Я разбил за дачу на две программы, потому что хочу создать
два Deb-пакета (по одному на ка ж дую из них) и сделать эти паке-
ты зависимыми друг от друга. В частности, пакет helloworld будет
./usr/bin/sox зависеть от пакета world. Начнем с пакета world. Потребуется ор-
./usr/lib/mime/packages/sox ганизовать достаточно специфичную струк туру ката логов. Снача-
control
./usr/share/doc/sox/ ла созда дим дирек торию wdir для работы:
md5sums
./usr/share/doc/sox/README.Debian
Скрипты preinst cd; mkdir wdir; cd wdir
./usr/share/man/man1/sox.1.gz
postinst Внутри созда дим подката лог debian, а в нем – иерархию, по-
./usr/share/man/man7/soxformat.7.gz
prerm вторяющую струк туру ката логов установленного пакета. В этом
./usr/bin/play
postrm примере установленный пакет состоит только из скрипта world,
./usr/bin/rec
./usr/share/doc/sox/NEWS.gz и я решил установить его в /usr/local/bin. Поэтому моя струк тура
ката логов была очень простой, и я создал ее так:

46 Linux Format Май 2009


 Рецепты доктора Брауна

wdir $ sudo dpkg -i helloworld_1.1-1_all.deb


...
dpkg: dependency problems prevent configuration of
helloworld:
debian world_1.1-1_all.deb
helloworld depends on world; however:
Package world is not installed.
usr DEBIAN Такой же результат я получу, попробовав уда лить пакет world:
$ sudo dpkg -r world
local control dpkg: dependency problems prevent removal of world:
helloworld depends on world.
bin Теперь, пока какой-нибудь разработчик Debian не пожа ловал-
ся, что я огрубляю процесс, позвольте признаться, что в нынеш-
Минимальная структура директорий для созда- нем виде мои пакеты не прошли бы отбор на включение в дистри-
world ния пакета Deb. Выходной файл (сам Deb) можно бу тив Debian. Соответствие пакета политике проверяет программа
поместить в любой каталог.
Lintian. Мой позорно прова лился:
$ lintian world_1.1-1_all.deb
$ mkdir -p debian/usr/local/bin E: world: dir-in-usr-local usr/local/bin/
$ cp world debian/usr/local/bin/ E: world: file-in-usr-local usr/local/bin/world
Затем я создал контрольный файл с описанием пакета. Он вы- W: world: file-in-unusual-dir usr/local/bin/world
глядит так: W: world: non-standard-executable-perm usr/local/bin/world
Package: world 0744 != 0755
Version: 1.1-1 E: world: no-copyright-file
Maintainer: Chris Brown <chris@example.com> E: world: extended-description-is-empty
Description: Program to print “world” E: world: depends-on-essential-package-without-using-version
Section: utils depends: bash
Priority: optional Мы видим: не хватает файла авторских прав, скрипт уста-
Architecture: all навливается в ката лог, который (хотя он и под ходит для мо-
Depends: bash их целей) не соответствует политике Debian, у скриптов нет прав
Отметьте, что в качестве Architecture: я указал all. Так как наши на выполнение для всех пользователей, а еще я наивно указал за-
программы являются сценариями, они не привязаны к конкрет- висимость от Bash, и совершенно зря: он и так объявлен обяза-
ной двоичной архитек туре, такой как i386 или Sparc. Я скопиро- тельным (essential).
вал свой контрольный файл в подката лог DEBIAN внутри ката лога
debian (туда, где его найдет программа сборки пакетов). Виртуальные и метапакеты
$ mkdir debian/DEBIAN Debian под держивает концепции виртуальных пакетов и мета-
$ cp /home/chris/control debian/DEBIAN/ пакетов. Они упрощают управление пакетами (или усложняют
Теперь можно собрать пакет: его – смотря как посмотреть). Виртуальный пакет – это имя, при-
$ dpkg-deb --build debian/ . меняемое для одного или нескольких физических пакетов с оди-
Готово! Теперь в текущем ката логе есть пакет world_1.1-1_all. наковой базовой функциональностью. Примеры имен виртуаль-
deb, и я могу установить его так же, как и любой другой. ных пакетов – imap-client и pdf-viewer. Чтобы объявить (реальный)
$ sudo dpkg -i world_1.1-1_all.deb пакет kdpf средством просмотра PDF, добавьте в его контроль-
Selecting previously deselected package world. ный файл строку
(Reading database ... 174457 files and directories currently Provides: pdf-viewer
installed.) В контрольных файлах других пакетов, зависящих от средства
Unpacking world (from .../chris/wdir/world_1.1-1_all.deb) ... просмотра PDF (неважно какого), должна быть строка
Setting up world (1.1-1) ... Depends: pdf-viewer
Таким же манером я собрал второй пакет helloworld, только, ко- Другие виртуальные пакеты – c-compiler, dhcp-client, ftp-server
нечно, с другими данными в файле control. В частности, строка за- and mp3-decoder.
висимостей в контрольном файле пакета helloworld выглядит так: В метапакетах нет реального содержимого, они просто оп-
Depends: bash, world ределяют список зависимостей. С их помощью можно устано-
вить несколько пакетов одной командой. Например, метапакет
Мал, но хорошо сложен build-essential, если добавить его, гарантирует, что будут установ-
Хотя мои пакеты world и helloworld могут показаться тривиаль- лены такие пакеты, как gcc, g++ и make. LXF
ными, все же это полноправные члены мира пакетов Debian. Ими
можно управлять и запрашивать о них информацию с помощью
стандартных утилит. Например, просмотрим контрольную инфор-
мацию пакета или его содержимое: Руководство по политике Debian
$ dpkg -L world
/. Ру ково дство по по ли тике Debian (Debian Policy Manual) – большой (140-странич-
/usr ный) до ку мент, опи сываю щий соз дание па ке та в до вольно формальных тер минах
и с большой де та ли за ци ей. В нем так же рас смот рена расклад ка фай ловой систе мы
/usr/local
и со держат ся чет кие ин ст рук ции по написанию скрип тов управ ления серви са ми
/usr/local/bin
из /etc/init.d и рекомен дованные диа па зо ны UID для системных и поль зова тельских
/usr/local/bin/world
учет ных запи сей.
Управление зависимостями тоже работает. Если попробовать ус- Просмотреть его можно на сайте www.debian.org/doc/debian-policy, а PDF-версию
тановить helloworld без установки wolrld, dpkg не позволит нам загрузить с сайта www.debian.org/doc/debian-policy/policy.pdf.gz.
этого сделать:

Май 2009 Linux Format 47


Главное в мире Linux

Пропустили номер?
Мир свободного ПО богат и разнообразен, а потому далеко не все можно
вместить в рамки одной статьи. Linux Format обходит эту проблему, пуб-
ликуя серии статей по самым актуальным вопросам, но что делать, если
вы поймали интересующий вас материал на середине? Обратитесь в Линукс-
центр по адресу www.linuxcenter.ru и закажите желаемый номер журнала!
Он доставляется как в печатной, так и в электронной форме, поэтому
с момента открытия браузера и до получения нужного вам выпуска LXF
может пройти не более нескольких минут!
Прямо сейчас для заказа доступны следующие номера:

LXF115 LXF116 LXF117


Февраль2009 Март2009 Апрель2009
Виртуализуйтесь Настройте KDE 4 Чиним Linux: типовые
с KVM или VirtualBox по своему вкусу проблемы и пути
Синхронизируйте Восстановите данные их решения
мобильный телефон на потертом GnuPG: на страже
с Linux DVD-диске ваших данных
Освойте верстку в Scribus Взбодрите свой LUG Lemote Mini PC: китайский народный компьютер
10 советов по безопасности Распознавание речи, часть 1 Распознавание речи, часть 2

LXFDVD: Fedora 10, Sabayon 4.0r1 и подшивка LXFDVD: OpenSUSE 11.1, Debian GNU/Linux 5.0, LXFDVD: Knoppix 6, Foresight Linux 2.1 и набор
за июнь 2006 – июнь 2008 года в формате PDF! Linux Mint 6, Slackware Linux 12.2 исследователя открытых ОС (15 шт.)
Печатная версия: Печатная версия: Печатная версия:
http://www.linuxcenter.ru/shop/books-and-magazines/ http://www.linuxcenter.ru/shop/books-and-magazines/ http://www.linuxcenter.ru/shop/books-and-magazines/
Linux-Format/lxf115/ Linux-Format/lxf116/ Linux-Format/lxf117/
Электронная версия в формате PDF: Электронная версия в формате PDF: Электронная версия в формате PDF:
http://www.linuxcenter.ru/shop/electr/magazine/elxf115/ http://www.linuxcenter.ru/shop/electr/magazine/elxf116/ http://www.linuxcenter.ru/shop/electr/magazine/elxf117/

Ну, а если вы хотите быть уверенными, что не пропустите ни один номер журнала –
оформите подписку! Помните, что все подписавшиеся на печатную версию жур-
нала через www.linuxcenter.ru получают электронную версию в подарок!

Спешитенаwww.linuxformat.ru/subscribe!
48 Linux Format Май 2009
 Учебник

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

еВГеНИй БАЛДИН
Начинал с Агатов.
В этом выпуске...
Когда-то даже знал, Выполним пере­ Прокачаем
что такое Робик. планировку .............. 50 нетбук .......................... 54
Если все в вашем доме стоит не по Linpus, может, и неплох в качестве
фэн-шую, исправьте это с помо- ОС по умолчанию, но ваш ма лень-
Мы обречены щью Энди Ченнела и Sweet Home 3D. кий помощник заслу живает боль-
на светлое будущее А потом поделитесь с остальными шего, утверждает Эндрю Грегори.
через WordPress.
Моя история похожа на твою, Сделаем вам Gedit: следующий
только интереснее, потому что рекламу ....................... 56 уровень ...................... 60
главный герой – робот. Видели постеры iPod с силуэтами Gedit может казаться простачком
Бендер, «Футурама» танцующих людей? Майкл Дж. Хэм- на фоне других текстовых редак то-
мел пока жет, как вы можете сделать ров, но как подсказывает Боб Мосс,
себе такой же – в GIMP. вся его сила – в дополнениях.

Р
ано или поздно. Обречены...
И с этим ничего не подела-
ешь. Широко известный в уз- Web по вашим Работайте
ких кругах Андрей Черепанов написал правилам ................... 62 вместе ......................... 66
Не все сайты выглядят так, как вы Если вы думаете, что Subversion го-
и опубликовал альфа-версию графи- хотите. У Джульет ты Кемп готово дится только для исходников, по-
ческого интерфейса для свободной решение: Greasemonkey, сценарии, думайте еще раз: Нейл Ботвик до-
системы оптического распознавания меняющие страницы на лету! ка жет, что с ним можно обеспечить
символов Cuneiform (https://launchpad. совместную работу над чем угодно.
net/cuneiform-linux). Назвал он своё
произведение без затей – Cuneiform- Настроим Исключительные
Qt (http://www.altlinux.org/Cuneiform-Qt) клавиатуру .............. 70 потоки ......................... 74
Варить кофе способна да же кофе- Что происходит, когда многопоточ-
и сообщил об этом в своём блоге. На- варка, если на жать на нужную кноп- ное приложение C++ начинает раз-
шёлся понимающий человек и разме- ку. Быть может, у вас на клавиатуре брасываться исключениями? Вы-
тил новость на linux.org.ru, где тут же есть такая – Алексей Маслий пока- ясняет Андрей Кузьменко.
собра лись доброхоты, которые обруга- жет, как за действовать ее в Linux.
ли и саму программу, и автора, и сво-
бодное сообщество, да и вообще всю Прием Файлы в безо­
жизнь на Земле. При этом доброхо- со спутника ............. 78 пасности ................... 82
Андрей Прахов расска жет, как на- Станьте хозяином своих данных!
ты свои проек ты показывать почему- строить вашу систему на прием сиг- Не рыдайте над безвременно ушед-
то стеснялись. Как обычно. на лов из космоса. шим жестким диском – клонируй-
Ну, ничего. Подож дём. Пена спа- те его заблаговременно с Clonezilla
дёт, а программа останется. Глядишь, и Маянком Шарма!
и другие подобные продук ты поя-
вятся. Может, реальная польза бу- Совет месяца: Читаем журналы
дет. А там и роботы возникнут, которые
читать умеют. Cuneiform – это свобод-
Многие Linux-приложения весьма информатив- grep sshd /var/log/messages
ный продукт, а значит, его можно моди-
ны: на до только знать, где что искать. Файлы хотя вам может потребоваться передать вывод
фицировать так, как первоначальные
в /var/log содержат все, что вам нужно, а так же в пейджер вроде less или most:
авторы и не дога дыва лись. Почему бы
многое из того, что не нужно: так как отделить grep sshd /var/log/messages | less
не встроить его в робота?
зерна от плевел и полу чить ак туальные сведе- Иногда бывает необходимо отслеживать за-
P. S. Читать роботы пока не умеют,
ния? Некоторые программы – в частности, серве- писи в журна ле в реальном времени (ска жем, вы
а вот ходить уже вполне (искать в по-
ры – ведут собственные журнальные файлы, что подключаете USB-устройство и наблюдаете за со-
исковике Boston Dynamics Big Dog):
упрощает за дачу поиска релевантной информа- общениями ядра). Для этого предназначена опция
http://www.youtube.com/
ции, дру гие же пользуются ус лугами syslog и пи- --follow (или -f) команды tail:
watch?v=W1czBcnX1Ww
шут все в один стандартный файл. Его имя зави- tail -f /var/log/messages
сит от вашей разновидности syslog, но обычно это Новые записи отобра жаются по мере их появ-
E.m.Baldin@inp.nsk.su
/var/log/messages. ления в журнальном файле; для выхода исполь-
Ка ж дая строка в таком файле содержит имя зуйте Ctrl+C. Если в выводе будет слишком много
сгенерировавшей ее программы, так что вы може- лишнего, объедините tail с grep:
те найти все записи от sshd при помощи tail -f /var/log/messages | grep sshd

Май 2009 Linux Format 49


Первые шаги Серия
«Linuxдляновичков»

Sweet Home 3D:


Знающие люди утверждают, что взять да переделать всю квартиру –
это здорово. Энди Ченнел так и поступит, когда выиграет в лотерею.

Коллекция моделей Используйте стрелки раскрытия для по-


иска различных объек тов, которые можно перетащить, располо-
жив на плане. SH3D импортирует массу форматов файлов, в ча-
стности, Java OBJ и 3DS, и можно использовать невероятное
чис ло объек тов, свободно доступных в сети или от коммерче-
ских поставщиков, ес ли вы серьезно намерены стать очередным
Норманом Фостером. Щелкните правой кнопкой мыши в этой па-
нели, выберите Импорт мебели и перейдите к файлу, который хо-
тите импортировать.
Планировка Здесь вы редак тируете комнаты, стены и объек ты
библиотеки Мебель. Выбранный объект снабжается четырьмя
«органами редак тирования». Левый верхний – Вращение; правый
верхний – Подъем, он используется для определения высоты объ-
ек та над полом; тот, что внизу справа, изменяет размер объек та,
а нижний левый позволяет за давать его высоту. Вы можете пере-
мещать объек ты в планировке перетаскиванием или выполнить
более точное позиционирование, перейдя в диа лог Изменить объ-
ект двойным щелчком на последнем.
Обзор (Камера) Здесь показывается влияние любых изменений,
в трехмерном отобра жении. Точка обзора перетаскивается мы-
шью (вверх/вниз или вправо/влево), в режиме Вида сверху по
умолчанию, а колесо мыши меняет масштаб моделей. Можно из-
менить точку обзора через меню Вид 3D > Виртуальный посети-
тель. При этом вы перенесетесь в здание, где можно передвигать-

Н
аста ла идеальная пора поразмышлять об усовершен- ся при помощи перетаскивания и колесика мыши. При этом в окне
ствовании своего дома. Или не наста ла? Зато уж точно планировки появляется иконка, обозначающая посетителя,
пора поэкспериментировать со Sweet Home 3D: пакетом и вы видите свое положение в модели.
дизайна интерьеров с открытом кодом, выпускаемым для Linux, Описание объек та По мере добавления объек тов, они будут по-
Windows и OS X по лицензии GPL. Цель приложения – создавать являться на сцене. Столбцы показывают высоту, ширину и глуби-
детальные планировки вашего великолепного архитек турного ди- ну ка ж дого объек та, а так же его видимость. Для изменения
Наш зайна, а так же быстро и легко конвертировать его в 3D-модель, ко- свойств объек та два ж ды щелкните на нем мышью.
эксперт торую затем можно использовать для просмотра эффек та от лю-
Энди Ченнел бых изменений. И хотя на вид это дико сложная работа, Sweet Гений планировки
Энди, видимо, бу- Home 3D (SH3D) делает ее до смешного простой. Создание проек та строения обычно начинается с определения
дет делать Первые
шаги в Linux веч-
Последний релиз, версии 1.7, доступен на сайте проек та комнат; иконка соответствующего инструмента – третья в чет-
но, а технологиями в виде двоичного Java-пакета, включающего Java-окру жение вертом разделе панели инструментов. Щелкните на планиров-
он заинтересовал- и набор объек тов, готовых для импорта в создаваемый интерь-
ся, открыв для се- ер. Установка не должна вызывать затруднений: нужно всего
бя Dragon 32.
лишь загрузить архив с сайта, распаковать его и запустить файл
SweetHome3D.

Что есть что и где?


Стремясь создать у пользователя чувство глубины, 3D-прило-
жения поша ливают с соглашениями, принятыми в интерфейсах,
отчего кривая обучения становится кру че; но SH3D пред лагает
стандартный вид для многих опций. Например, вы найдете обыч-
ное меню и панель инструментов вверху экрана, разве что главное Комнаты надо добавлять отдельно, чтобы вы хорошо представ-
окно разбито на четыре области: ляли все части вашего дома.

Месяц назад Фамильные древа с Gramps и создание карты сайта во FreeMind.


50 Linux Format Май 2009
 ПервыешагиУчебник

Строим дом Sweet Home 3D 1.7

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

Созданная комната отображается с указанием числа квадратных


метров в ее центре.

ке там, где должен быть угол комнаты, затем за дайте форму в нашем здании и сделаем их немного тоньше внешних стен, ис-
помещения, передвигая мышь и щелкая в местах углов или сты- пользуя опцию Изменить.
ков. Достигнув последней точки, можно два ж ды щелкнуть или
на жать клавишу Esc для создания цельной фигуры. Повтори- Украсим пикселями
те процедуру для всех комнат на вашем плане. Корявые линии Теперь нам нужны двери и окна. В левом верхнем разделе интер-
можно изменить инструментом Выделение (стрелка), который фейса, на жмите на стрелке рядом с текстом Doors And Windows
при редак тировании делает привязку к горизонтальным и вер- [Двери и окна], а затем перенесите объект Дверь на одну из меж-
тикальным плоскостям. комнатных стен. Возможно, дверь придется повернуть, но, как Скорая
помощь
Выбрав комнату, можно изменить ее расположение клавиша- и для остальных объек тов сцены, изменения вносятся при помо-
ми-стрелками. Если необходима большая точность, увеличьте щи «органов редак тирования», или двойным щелчком и набором
SH3D может им-
масштаб при помощи пик тограмм на панели инструментов, а за- значений в диа логе. Добавьте таким методом двери и окна для портировать мо-
тем воспользуйтесь мышью или клавишами курсора для переме- ка ж дой стены, где необходимо. дели, сжатые Zip,
щения комнаты. Два ж ды щелкните на комнате для вывода боль- При добавлении этих объек тов увидеть эффект изменений с помощью метода
шего числа опций, например, за дания ее названия, изменения в планировке трудно, так что покру тите точку обзора, чтобы убе- «правый щелчок
> Импорт мебе-
цвета пола и размеров и добавления потолка. диться, что изменения стен видимы; это особенно полезно при из- ли», упомяну то-
менении высоты объек та и подъема над полом. го на предыдущей
еще кирпичик в стене Последняя за дача – добавление мебели в комнаты и ее опти- странице.
Внеся в планировку все комнаты, приступайте к добавлению мальное размещение. И вновь, объек ты можно перенести из раз-
стен. Используйте иконку слева от инструмента Планировка, за- личных библиотек правого верхнего раздела интерфейса, а затем
тем щелкните и протащите мышью – воздвигнутся стены. При пе- разместить в под ходящем месте на планировке.
ремещении мыши длина стены будет отобра жаться рядом с кур- Пристроив все по местам, можете посетить дом, используя
сором. По умолчанию инструмент Стена создает перегородки Вид 3D > Виртуальный посетитель; при желании результат мож-
непрерывно: как только вы щелкнете в знак окончания одной сте- но сохранить в формате OBJ и выполнить рендеринг для создания
ны, автоматически добавится нача ло другой – таким образом до- более реа листичной отрисовки дома вашей мечты при помощи па-
вольно просто организовать стыки. Для принудительного ука- кета типа Blender. LXF
зания конца стены, щелкните два ж ды или на жмите Esc. Однако
помните, что хотя стены создаются в непрерывном режиме, это Это простой при-
отдельные элементы дизайна, и ка ж дую из них можно перенести мер, но Sweet Home
в другое место как самостоятельный объект. 3D справляется
Можно изменить высоту стен, их толщину и цвет правой и ле- и с более сложны-
ми дизайнами.
вой сторон. Приложение определяет лево и право с точки зрения
нача ла стены, указанного стрелкой на ка ж дой из них. Например,
если стена нарисована по горизонта ли слева направо, то верхний
край – это «лево», а нижний – «право». Поверхности можно за лить
цветом, выбранным из цветовой па литры, или на ложить тексту-
ру из встроенной библиотеки. Цвет или текстура будут применены
к поверхности при на жатии кнопки OK. Используйте точку обзора,
чтобы повернуть пространство, если изменения заметны не сра-
зу. Да лее мы добавим внутренние стены меж ду двумя комнатами

Не хотите пропустить номер? Подпишитесь на www.linuxformat.ru/subscribe/!


Май 2009 Linux Format 51
Учебник Первыешаги

WordPress:
Присоединяйтесь к массе блогосферы с помощью сервиса wordpress.com.

Н
есмот ря на расту щую толпу от казников, блоги все
еще оправ дывают уси лия на их соз дание и под держ-
ку. Среди извест ных платформ блогов популярнее
Двигаемся дальше
всех WordPress, предостав ляющий удачную комбинацию гибко- Wordpress.com – прекрас ный пус кает не бо лее 30 участ ников.
сти и простоты исполь зования. В последней версии 2.7 полно- сервис, но не без ог ра ничений. Для обхода этих ог ра ничений
стью переработан внут ренний дви жок, ра ди облег чения управ- А именно: нель зя по лу чить дос- требуется ус та новить и иметь
ления блогом. туп ко всем темам сообщест- свою собст венную версию
ва Wordpress; нет прямого дос- Wordpress. Процесс не столь уж
На данном уроке мы настроим блог и разместим его
ту па к CSS вашего сай та – что труд ный (инстал ляция пус тяч-
на http://wordpress.com, изменим тему по умолчанию, чтобы при- за труд няет большие визу аль- ная), но требует зна ния MySQL
дать ему индивидуальность, добавим пару вид жетов, а затем на- ные изменения; и ваш блог до- и Apache.
чнем добавлять содержимое. Отметим, что для создания блога
WordPress вы можете пойти пу тем «Сделай сам», но тогда потре-
буется установка и настройка пакетов приложений Apache, MySQL, глядит сложной, поскольку учитывает все, но – без паники: в на-
PHP, что выходит за рамки нашей статьи. стройках можно порыться и потом. Немед ленно на до настроить
только следующие.
Дело в...? Первая – это вкладка Appearance [Оформление], помещенная
Первым де лом на до решить, чему будет посвящен блог. Лег- вверху третьего раздела панели инструментов у левого края ок-
ко ду мать: «Я просто буду еже дневно набрасывать свои мыс- на. Она показывает страницы тем, содержащих набор дизайнов,
ли», но дня через три вы може те превра титься в столь ярого которые могут быть установлены одним щелчком мышью. Многие
блогома ра те ля, что да ди те фору профес сиональным писа те- из них можно подправить позднее, так что просмотрите описание
лям. На ра дость люби те лей вести дневник, сервис WordPress ка ж дой на предмет того, что под держивается. Выбор темы приво-
имеет опции Privacy [Приват ности], гаран тирующие, что ва ши дит к отобра жению предпросмотра вашего сайта с этой темой –
за мет ки ви димы только вам. Их мож но за дать для блога или вы можете принять ее или отклонить.
сообщения, что удобно для управ ления выска зываниями вслух Определившись с темой, вы увидите доступные для нее опции
и про себя. в виде ссылок под описанием. Например, мы выбра ли тему с под-
Определившись с тематикой, перейдем на http://wordpress.com держкой заголовков. Для нашей темы они должны быть размером
и на жмем кнопку Sign Up [Войти]. В следующем экране вас попро- 780 × 95 пикселей, а для удобства предоставляется возможность
сят ввести имя и пароль – чем труднее, тем лучше – и корректный обрезки загру жаемых изобра жений.
элек тронный адрес. Важно использовать реальный адрес, пото- Ес ли вы хоти те доба вить на ваш сайт дру гие элемен-
му что на него будут высылаться сообщения системы: например, ты, включая об ла ко тэгов, RSS-лен ту, ста тичное ок но с сооб-
уведомления о комментариях и запросы доступа. Примите согла- щением или список ссылок, вам помогут вид же ты. В wordpress.
шение, затем на жмите Next [Да лее]. После этого возникнет новое com их добав ление сводится к пере таскиванию элемен тов, рас-
окно настройки, где можно определить имя блога, URL (в форме по ложенных на боковой панели ва шего сай та. Доступ к ним
http://blogname.wordpress.com) и будет ли ваш блог виден поиско- осу ществ ляется в раз де ле Appearance > Widgets [Внешний вид
вым движкам. > Вид же ты], но поместить их мож но только в тему, которая
После настройки параметров на жмите Create Blog [Создать их под держивает.
блог] – вы перенесетесь к панели настройки движка блога. Она вы-
За пределами видимого
Подписка не тре- Перейдя в раз дел Setttings [Настройки] (слева внизу в списке
бует ввода всей опций), мож но изменить под заголовок вашего блога, устано-
вашей подногот- вить формат времени и часовой пояс, сменить системный элек-
ной, но помните, что тронный ад рес и так да лее. Затем перейди те в Privacy [Приват-
с конкретным име-
ность]: там на ходятся три парамет ра для опреде ления степени
нем и email-адре-
сом можно связать публичности вашего блога. Самый нижний вариант де лает его
только одну учет- су гу бо личным.
ную запись. В Users [Пользователи] вы можете разрешить другим доступ
к блогу – вместе с Приватностью, это позволяет создать закры-
тый блог для группы – и придать пользователям роли Автора, Уча-
стника либо всемогущего Администратора.
Ведение блога – это не для всех, но сервис wordpress.com дает
прекрасную возможность тайно испробовать сие занятие. Созрев
для славы, вернитесь в раздел Privacy [Приватность] и откройте
сайт массам.

52 Linux Format Май 2009


 ПервыешагиУчебник

Создаем блог
Шаг за шагом: Размещение контента

1 Создаем сообщение 2 Удаляем форматирование 3 Сохраняем черновик


Выберите в списке опций слева Posts > Add New Приложения вроде Microsoft Word и OpenOffice. Зачастую над сообщением приходится работать
[Сообщения > Добавить новое] для перехода к на- org норовят применить ненужное форматирова- в несколько за ходов. Тогда воспользуйтесь кноп-
стройкам сообщения. Введите в центральной об- ние к вставляемому тексту, а это, в свою очередь, кой Save Draft [Сохранить черновик] у правого края
ласти текст, используя набор иконок по верхне- может навредить внешнему виду блога. К сча- окна. Сообщение будет сохранено в базе для по-
му краю области редак тирования для добавления стью, WordPress 2.7 имеет опцию Paste From Word следующей правки. При следующем входе оно вы-
ссылок и форматирования. Найти необходимую [Вставить из Word] (во второй строке панели ин- ведется в окне настройки в разделе Drafts [Чер-
функцию помогут кнопки у правого края – они вы- струментов), способную убрать излишества лег- новики]. Щелкните на нем, чтобы продолжить
ведут все, что есть. ко и быстро. редак тирование.

4 Добавьте гламура 5 Публикуем сообщение 6 Статичные страницы


Над главной панелью сообщения на ходится пять По кнопке Publish [Опубликовать], справа, ваше WordPress полезен еще и тем, что наряду с сооб-
кнопок, которые можно использовать для добав- сообщение станет видимым на главной страни- щениями в него можно добавлять статичные стра-
ления – слева направо – изобра жений, видео, ау- це вашего сайта и отправится на показ всему ми- ницы. Для этого, выберите слева Pages [Страницы]
дио, файлов типа презентации и PDF и опросов. ру (в зависимости от настроек приватности). После и на жмите Add New [Добавить новую]. Появится
WordPress умеет работать со множеством форма- публикации сообщения его все еще можно испра- тот же набор инструментов редак тирования, что
тов, но ваш блог ограничен размером 3 ГБ, так что вить с главной панели управления, точно так же, и для сообщения, а статичная страница возникнет
полнометражные фильмы размещать не стоит. как и черновик. На до только выбрать его и внести в меню страниц (или на панели навигации) ваше-
изменения. го сайта. LXF

Через месяц Созда дим слайд-шоу в Smile и выгрузим его в web.


Май 2009 Linux Format 53
Acer Aspire One Чуточкустарания,
ивыобогатитепрограммамисвойнетбук

Дистрибутивы:
Часть 3: Недовольный ограничениями дистрибутива по умолчанию,
Эндрю Грегори скармливает Aspire One специализированную версию Ubuntu.

Это вывод dmesg. Нашему USB-брелку, модели SanDisk Cruzer,


назначено устройство с именем sdb.

слегка зага дочен, но в нашем случае USB – это sdb. Таким обра-
зом, вся команда в Ubuntu для пользователя deathchimp будет вы-
глядеть так:
sudo dd if=/home/deathchimp/jaunty-netbook-remix-i386.
img of=/dev/sdb bs=1m
Часть if за дает входной файл, of – выходной файл, а bs=1m оз-
начает, что dd скопирует файл порциями по 1 МБ, а не как по умол-

М
ы уже добав ля ли на Aspire One новое ПО, а теперь во- чанию – по байту за раз (оно было бы долгонько).
обще ус тановим це лый дистрибу тив. Ну да, некото-
рых чи тате лей уже трясет при виде Ubuntu, но наша Поехали!
версия, хитроумно на званная Ubuntu Netbook Remix (UNR), наце- Итак, у нас есть загрузочный образ Ubuntu Netbook Remix на USB-
Наш лена именно на нетубки. По умолчанию на Acer ус танав ливает- брелке, и мы можем запустить с него Aspire One. Вставьте флэшку
эксперт ся Linpus Linux, на Eee PC – Xandros, а UNR яв ляет собой попытку в нетбук и включите его. Появится загрузочное сообщение, пред-
Эндрю Грегори Ubuntu перенести все пре лес ти этого дистрибу тива на меньшие лагающее на жать F12 для перехода в BIOS; но, дожидаясь его по-
Работает в Linux эк раны и более эффек тивные процессоры нетбу ков. То есть мы явления, вы его непременно пропустите, поэтому лучше жмите се-
уже не один год,
но до сих пор
полу чим все преиму щества популярного дистрибу тива и набо- бе на F12, пока не попа дете в меню BIOS.
смотрит на всё ра ПО в варианте, оп тимизированном под Aspire One. Разве это
любопытными плохо? Тогда начнем!
глазами новичка. В Aspire One нет привода для оптических дисков, поэтому мы
скачаем UNR, запишем образ на USB-брелок и запустим с него
нетбук. Загрузить UNR можно в виде набора пакетов или образа
диска с сайта https://wiki.ubuntu.com/UNR. Для простоты возьмем
образ диска, с http://cdimage.ubuntu.com/ubuntu-netbook-remix/
daily-live/current.
Скачав образ, сохраните его на винчестере, вставьте USB-бре-
лок в ноутбук и откройте окно термина ла. Для записи образа на
флэшку воспользуемся командой dd (duplicate disc, продубли-
ровать диск) – ей нужно передать два параметра: входной файл
(путь до образа UNR, который мы только что загрузили) и выход-
ной файл (имя USB-брелка в файловой системе). Чтобы опреде- Выбор часового пояса в Ubuntu не слишком удобен (и мы-то зна-
лить последнее, выполните в термина ле команду dmesg. Ее вывод ем, что остров Мэн — вовсе не город), но ведь мил!

Месяц назад Мы обогатили штатную систему новыми приложениями.


54 Linux Format Май 2009
 AspireOneУчебник

Переставим ОС
Исследуем интерфейс UNR

Верхняя панель
Как и в обычном Ubuntu, здесь
показаны иконки запущенных
приложений.

Избранное
Разработ чики Ubuntu сгруп-
пирова ли наиболее часто
используемые приложения
в категорию «Избранное». Ес ли
вы не согласны с их выбором,
можете добавить или уда лить
приложение с помощью правой
кнопки мыши.

Установка
Ес ли вам нравится то, что
вы здесь видите, и вам неза-
чем возвращаться в Linpus,
щелкните на этом ярлыке,
чтобы установить Ubuntu
насовсем.

Настройки Просмотр папок Linpus


В отличие от дистрибу тива Щелкните на любой из этих Да же после загрузки в Ubuntu
Aspire One по умолчанию, папок, чтобы переключиться файлы установки Linpus
UNR не прячет системные в режим классического файло- все еще доступны.
настройки. вого менед жера Gnome.

Появится примерно такое меню:


Boot Option Menu Скорая
помощь
1. IDE 0: P-SSD18700
2. USB FDD: SanDisk Cruzer Установка UNR
3. Network Boot: LEGACY PCI DEVICE на диск нетбука
4. USB CDROM: SanDisk Cruzer перезапишет Lin-
pus и все ваши
По умолчанию будет выбран первый пункт; с помощью стрелок
файлы, поэтому
отметьте второй и на жмите Enter, чтобы загрузиться с USB-брел- преж де чем
ка. На следующем экране выберите нужный язык и, наконец, на- делать нечто необ-
жмите Enter, чтобы запустить Ubuntu Netbook Remix. ратимое, создайте
резервную копию

Дивный новый мир всех файлов,


не то пожа леете.
Наигравшись с новым дистрибу тивом и решив, что он вам по ду-
ше, можете установить его на флэш-диск нетбука. Это не только
ускорит работу системы, избавив ее от постоянного обмена дан-
ными с USB-брелком, но и освободит пространство, ранее заня-
тое Linpus, и у вас будет больше места для личных файлов. Мы
нашли ошибку в Live-инсталляторе, поэтому я советую вам пере-
загрузить компьютер (как и в прошлый раз, с USB-брелка), и вы-
брать ус тановку UNR насовсем. Инсталлятор Ubuntu пока жет вам
восемь экранов, на которых вас попросят указать часовой пояс, если вы устанавливаете систему из рабочего стола, окно
язык, раскладку клавиатуры, имя пользователя и пароль, но все разбиения на разделы может не появиться; тогда перезагрузите
это не сложнее отправки образа на брелок. LXF систему и попробуйте второй путь.

Май 2009 Linux Format 55


GIMP Свободныйграфическийредактор,
вкоторыйвытожеможетевонзитьсвоизубы

GIMP: Для iPod


Плывем на волне поп-культуры с GIMP. Майкл Дж. Хэммел создаст рекламный
постер для iPod быстрее, чем вы прокрутите свой плей-лист.

iPod – король поп-культуры наших дней. И своим титулом


он нема ло обязан немудрящей, но фантастически весёлой рек-
ламной кампании с силуэтами чуваков, самозабвенно дёргающих-
ся, держа в руках высококонтрастные айподы и тряся проводами
от наушников. Постоянным читателям наших учебников тут инте-
реснее всего будет неожиданная простота дизайна. Воспроизве-
сти художественный стиль рек ламы iPod позволят весьма скром-
ные навыки работы в GIMP, при условии, что вы начнёте (вот оно,
вот оно!) с добротных стоковых изобра жений.
На данном уроке я пока жу, как, взяв такого плясуна, про-
айподить его (или её) до состояния рек ламной нирваны. На сей
раз обойдёмся без хитрых трюков. Всё, что нам пона добится –
несколько простых выделений и навыки работы со слоями. Итак,
прибавим громкость, свистнем Уилберу и чу ток погимпуем.

Выбор стокового изображения


Найти снимки любителей за жигательной музыки на таких сайтах,
как BigStockPhoto или iStockPhoto, легче лёгкого. Жанр популяр-
ный, и тематических фотографий – море. Танцоры в рек ламе iPod
имеют одну общую особенность: у них очень харак терные жес-
ты рук и ног, узнаваемые да же в силуэтах. Не забывайте об этом,
роясь в онлайн-фотоархивах. Ещё одна важная деталь, которую
нужно учитывать при поиске стоковых фото для этой работы – од-

Я
не из тех фанатов, что швыряют бешеные суммы на мод- нотонный фон, желательно белый.
ные гад жеты. Обычно я покупаю недорогие вещи на он- Два представленных тут снимка – неплохие кандидаты к нам
лайн-бара холках и вывожу их в число передовых – либо на урок. Но взгляните на результат превращения фигуры девуш-
устанавливая на них открытое ПО, либо изыскивая пу ти хотя бы
заставить их сжиться с ним. Мой ноутбук – одна из таких зве-
рюг. Он вовсе не был лидером модельного ряда Acer, когда я купил
Наш его, но четыре года спустя и ноутбук, и его гимполюбивый хозяин
эксперт все еще браво рассекают с Tуксом.
Майкл Дж. Хэммел Может, я и скаред, но отнюдь не против, чтобы кто-нибудь да-
Участник раз- рил мне всякие кру тые штуки. На мое счастье, у меня есть чудес-
работки GIMP
ная дочь – она решила, что в этом году мне необходим действитель-
и автор трёх книг
по данной тема- но классный подарок к празднику, тряхнула кошельком и купила
тике, включая мне iPod Nano. Оранжевый, согласно цветовой схеме моего сайта
самую новую – Graphics Muse. И он реально крут (это я про iPod). Моя дочь – тоже,
«Эффек ты в GIMP:
по крайней мере пока мы не возвращаемся к теме «мне_нужна_ма-
руководство для
художников». шина_чтобы_ездить_в_колледж». Через год я, видимо, буду ходить
на работу пешком. Но зато с любимыми мелодиями в кармане.

Ищем изображения
Стоковые фото, использованные для урока этого месяца,
приобретены на BigStockPhoto.com:
Dancing With Headphones (ID 4079419) – фигура девушки
При преобразовании фигуры в силуэт согнутые руки теряются,
The Dancer (ID 1805891) – фигура парнишки
а отставленная нога сливается со складками платья.

Месяц назад Мы подру жили GIMP с Inkscape, Scribus и OpenOffice.org.


56 Linux Format Май 2009
 GIMPУчебник

его исходного варианта. Для данного изобра-


жения щёлкнуть на до рядом со светлой те-
нью руки внизу. Удерживая Shift, кликнем ещё
несколько раз для увеличения области выде-
ления. Подчистим выделение фона, увеличив
область на один пиксель (Выделение > Увели-
чить или Select > Grow).
Мы выде ли ли фон; инвертируем ре зуль-
тат, чтобы ох ватить танцора. Скопируем его
(Ctrl+C) и вставим (Ctrl+V) в новый слой (Слой
> Соз дать слой или Layer > New);
на зовём его «Си лу эт». От метим
га лочкой пункт Запереть альфа-
канал [Keep Transparency] для
этого слоя и зальём его чёрным
цветом. Помните, что исходное
изобра жение лучше не изме-
нять, чтобы при слу чае его мож-
но бы ло снова исполь зовать,
Фото юноши больше подходит для нашего проекта: его руки так что добавим новый бе лый
и ноги чётко видны в силуэте.
слой и разместим его под сло- Белый слой
ем «си лу эт». с именем «белый
ки в силуэт. Дета ли её согну той руки и отставленной ноги теряют- Силуэт танцора на до бы подрих товать. Заметьте места в ориги- фон» позади
ся, делая образ менее узнаваемым, чем силуэт парнишки, в изо- на ле, где шарф и куртка отделяются от тела: силуэта они не укра- силуэта удалит
тень из исходного
бра жении которого конечности довольно шают. С помощью
изображения.
широко раскину ты. Изобра жение юноши
под ходит больше, хотя и не мешает под-
«Воспроизвести стиль инструмента сво-
бодного выделения
чистить кое-что для усиления эффек та.
В силуэтном видео проблема с про-
iPod позволят весьма («лассо») наметим
контур выделения
па жей ру чек-ножек легко устранима (как скромные навыки.» вокруг этих фраг-
только девушка сменит позу, контур ста- ментов, затем пере-
нет более узнаваемым), но в статичной рек ламе с неподвижным ключимся в режим быстрой маски для уточнения области выде-
силуэтом всё немного сложнее. Как уже упомина лось на преды- ления с использованием жёсткой кисти. Переключившись назад
дущих уроках, снача ла поэкспериментируйте на бесплатных кло- в режим выделения, вырезаем отмеченную область. Не запол-
нах изобра жений, а уж потом разоряйтесь на версию типограф- няйте выделение белым цветом! Силуэт на ходится в своём соб-
ского качества. ственном слое, окру жённый прозрачным пространством. Зна-
На белом фоне выбранного стокового фото фигуру выделить чит, при редак тировании выделенные части силуэта тоже должны
легко. Танцор отбрасывает лёгкую тень, но на сложность процедуры стать прозрачными, поэтому просто вырежьте их.
это не влияет. Помните, что выделению незачем быть идеальным.
Выберем на панели инструментов Выделение связанной об- iPod
ласти [Fuzzy Selection] и кликнем по белому фону для создания Создать силуэт было просто; создать iPod – не труднее. Поскольку
у этого устройства множество дета лей, лучше отвести ему отдель-
ное окошко, скопировать в окно с танцором, а затем отмасшта-
бировать и развернуть его. Масштабирование и поворот сма жут

Обычно
от границы к фону
выполняется плав-
ный переход мягкой
кистью, но в стиле
iPod — жёсткие
Точное выделение в этой работе излишне, но силуэт границы без раз-
лучше подправить. мывания.

Не хотите пропустить номер? Подпишитесь на www.linuxformat.ru/subscribe/!


Май 2009 Linux Format 57
Учебник GIMP

Вернуть активное выделение в режим правки можно


простым щелчком внутри него.

дета лизацию плейера, но при ма лом размере и лаконизме дета-


лей это не будет проблемой.
Временно отложим изобра жение с силуэтом в сторонку, но за-
крывать не будем. Откройте новое окно изобра жения (Файл > Соз-
Изображение плейера у нас однослойное, так что округлить
дать или File > New) с шириной 380 и высотой 420 пикселей. По
диск прокрутки можно просто на глаз.
умолчанию цвет фона нового изобра жения совпа дает с цветом
фона на панели инструментов. На данном этапе нашей работы
цвет фона не ва жен; если он будет непод ходящим, не волнуй- должна быть меньше высоты. Восстановим исходные значения
тесь. Фон мы потом всё равно отбросим, а сейчас отключим види- цвета переднего плана и фона, на жав клавишу X в пределах окна
мость слоя фона в диа логе слоёв. изобра жения, затем перетащим цвет фона (белый) с панели инст-
Добавим прозрачный слой к изобра жению, затем выберем рументов в выделение.
на панели инструментов Прямоугольное выделение. В диа логе Выделение всё ещё остаётся в режиме правки, а значит, мож-
параметров инструмента отметим Закруглённые углы [Rounded но управлять им, меняя его размер. Протащим все четыре сторо-
Corners]. В результате появится поле ра диуса, где мы выставим ны выделения внутрь до получения четырёх угольника с меньши-
значение 20. Протащим мышь в окне для создания выделения ми размерами и центром в верхней части изначального, за литого
с закруглёнными углами. Точные размеры не важны, но ширина белым, прямоугольника.
Щёлкнем по квадратику цвета переднего плана на панели ин-
струментов и сменим цвет на светло-серый, со значением 160 для
красного, зелёного и синего кана лов. Закроем диа логовое окно
и перетащим цвет переднего плана с панели инструментов в вы-
деление в окне изобра жения. Окошко дисплея iPod готово. Не за-
бывайте, что графический стиль у нас незамысловатый, поэтому
дополнительной дета лизации – например, добавления глубины
вокруг дисплея – не требуется. Да же если мы это сделаем, после
изменения масштаба и поворота iPod относительно фигуры тан-
цора весь вид пропа дёт.
С помощью инструмента Эллиптическое выделение очертим
круг ниже окошка дисплея. Поперечник выделения должен быть
равен ширине окошка дисплея, да же с учётом того, что оно не иде-
ально круглое. Перетащим выделение и разместим его посреди
нижней половины корпуса плейера. Снова зальём выделение цве-
том переднего плана и уберём выделение [Выделение > Снять или
Select > None]. Применим инструмент Масштаб и сожмём изобра-
жение до получения знакомого диска прокрутки.

Вложим iPod в карман танцора


От кроем одновременно и си лу эт танцора, и изобра жение плей-
Подогнать размер ера. Перетащим слой iPod из диа лога слоёв к си лу эту. С помо-
плейера к размерам щью инстру мен та Масштаб уж мём плейер до соответствую-
танцора очень просто. щего размера, затем повернём его, чтобы под равнять по краю

58 Linux Format Май 2009


 GIMPУчебник

вообра жаемого кармана штанины. Придержим клавишу Shift


во время изменения размера, чтобы сохранить пропорции плей-
ера. С помощью инстру мен та Вращение повернём iPod, а за тем
Советы по перспективе
с помощью инст ру мен та Перемещение расположим его рядом Диа логовое окно Перспек тива открывается по штаб, чтобы иметь возможность протащить
с карманом. щелчку в окне изобра жения, но от этого диа- манипуляторы за видимые границы холста,
лога большинству пользователей проку ма- что даст изменяемой плоскости возможность
Добавим белую маску слоя к слою с iPod. Зачерним жёсткой
ло. Он показывает матрицу преобразования, выйти за края изобра жения. Конечно, всё,
кистью небольшую область в нижней части плейера, оставив ви- понятную математикам, но не особо прак тич- что выйдет за пределы видимости, не попа-
димой лишь ма лую часть диска прокрутки. Так создастся впечат- ную в дизайнерских работах такого типа. Так дёт в окончательное изобра жение, но это де-
ление, что iPod лежит в кармане (хотя и нена долго, судя по дина- что оставьте диа лог в покое и просто тащите ло дизайнера.
мике танца нашего юноши). за манипуляторы в окне изобра жения. На жа- Тень в этой работе не вышла за грани-
тие Enter применит сделанные изменения. цы изобра жения, но это вполне могло слу-
Дальше у нас по плану – провода от наушников. Добавим про-
Кроме того, вспомогательные манипу- читься. На самом деле, настройка тени прида-
зрачный слой с именем «Наушники». Перед рисованием конту- ляторы не привязаны к границам видимо- ёт особенную атмосферу, поскольку это даёт
ров выбираем кисть. Кисть Circle (03) хорошо под ходит к изобра- го размера изобра жения. Уменьшите мас- зрителю ощущение того, откуда па дает свет.
жениям такого размера. Выбранную кисть мы используем для
обводки контуров. Так же выберите белый как цвет переднего пла-
на на панели инструментов, на жав снача ла клавишу D, а затем X от правого уха и соединяющегося с первым проводом на уров-
в пределах окна изобра жения. не груди танцора.
Последняя важная деталь – тень под танцором. Как и силуэт,
Наушники: обводим контур тени в рек ламном стиле iPod имеют жёсткие контуры, откуда яс-
На панели инструментов выберем контуры и щёлкнем около лево- но, что сделать их будет легко.
го уха танцора (или того места, где оно должно быть). Удерживая В диа логе слоёв скопируем слой с силуэтом и переименуем
клавишу мыши, потянем её вниз, уд линив рукоятки, коррек тирую- в «Тень». Передвинем этот слой под слой с силуэтом в диа логе
щие контур. Отпустим клавишу мыши, затем снова щёлкнем и по- слоёв. На панели инструментов выберем Перспек тиву и щёлкнем
тянем в то место, где провод стыкуется с корпусом плейера. Скор- в пределах окна изобра жения, чтобы увидеть вспомогательные
рек тируем контур провода с помощью рукояток. манипуляторы. Протащим верхний левый строго вниз, а верх-
На жмём на иконку обводки в нижней части диа лога конту- ний правый – вниз и влево, затем на жмём Enter для принятия
ров, чтобы открыть диа лог обводки по конту ру. Выберем об- изменений.
водку с помощью инструмента Кисть, где по умолчанию будет Добавим белую маску слоя для слоя с тенью, затем на жмём
использоваться кисть, выбранная ранее. Для пу щего эффек та D в пределах окна изобра жения, возвращая настройку цвета пе-
щёлкнем по Динамике кисти [Enable Brush Dynamics], тогда ли- реднего плана к чёрному. На панели инструментов выберем Гра-
ния кисти будет утончаться к обоим концам конту ра. И наконец, диент и убедимся, что в диа логе настроек инструмента отмечено
щёлкнем по кнопке Обвести [Stroke], чтобы применить обводку га лочкой Развернуть, чтобы за ливка переходила из белого в чёр-
вдоль конту ра. Повторим процеду ру для провода, исходящего ный цвет. Протащим курсор в окне изобра жения от руки танцо-
ра почти к самому верхнему краю слоя с тенью, чтобы получить
исчезающую тень. Наконец, уменьшим непрозрачность слоя с те-
нью до 80%.
Вот и всё! Можно немного расцветить картинку, подкрасив бе-
лый фон. В конце концов, именно простота графического стиля
iPod делает его легко узнаваемым для всех, и легко воспроизво-
димым – для пользователей GIMP. LXF

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

Через месяц GIMP и эффек ты типа «волосы дыбом».


Май 2009 Linux Format 59
Gedit Расширяемфункциональность
ивыжимаеммаксимумизредактора-гнома

Gedit: Расширим
Gedit – не просто текстовый редактор с уклоном в Gnome. Боб Мосс раскроет воз-
можности этого ценного инструмента.

G
edit похож на Британию XIX века: очень мал и очень могу-
щественен. Применений у него масса, хотя вы скорее все-
го прибегали к нему, когда надо было что-то наскоро запи-
сать или проглядеть содержимое текстовых файлов или скриптов.
И очень жаль, потому что Gedit способен на гораздо большее: напри-
мер, подсветить синтаксис в разных языках (ска жем, в C++ и Java),
а так же указать на орфографические и грамматические ошибки
Наш в набранном вами текстовом блоке. Добавьте к нему пару расшире-
эксперт ний из их обширного набора, и Gedit начнет буквально летать.
Боб Мосс В Fedora и Ubuntu Gedit скрывается под именем «Текстовый ре-
продук тивно рабо- дак тор» и проживает в подменю Слу жебные [Accessoires]. Те, кто
тает в GNOME, раз-
влекается в KDE
предпочитает KDE вместо Gnome, могут запустить его, на жав
и пишет код для Alt+F2 или установив отдельно. Пакет с Gedit есть в составе боль-
ScorchOS. шинства дистрибу тивов.
Для ус тановки дополнений, о которых пойдет речь на данном
уроке, нужно обзавес тись пакетом gedit-plugins и ак тивировать
необходимые расширения из меню Правка > Параметры > Мо-
дули [Edit > Preferences > Plugins]. Диапазон функций – от до-
полнения скобок и проверки орфографии до списков тэгов. Вы
скоро убедитесь, что видимые глазом возможности Gedit – лишь Множество расширений для Gedit можно найти
на http://live.gnome.org/Gedit/Plugins.
верхушка айсберга...

Подробно о Snippets
Если вам приходится писать повторяющие- Глобальный [Global] и щелкаем внизу по иконке
ся куски кода, или хотелось бы быстро соз- Новый фрагмент [New Snippet], чтобы создать
дать шаблон документа, вы можете избежать новый фрагмент (переименуйте его во что-то
копирования и вставок, призвав на помощь более осмысленное). В большом поле наберем
Snippets. Это расширение позволяет назначить ‘Hello World!’, потом ‘hw’ в поле Переключа-
сокращение для фрагмента текста или же со- тель [Tab Trigger]. Закроем диа лог. Теперь, на-
четание клавиш для больших текстовых бло- брав ‘hw’ и затем на жав клавишу Tab, вы уви-
ков. Сюда входят и многословные операторы дите, что Snippets автоматически заменит его
if(), и контактная информация. Итак, начнем полным текстом.
с Сервис > Управление фрагментами [Tools > Пусть мы хотим определить шаблон для
Manage Snippets]. письма. Нам ну жен быстрый способ внести
Простой способ писать письма.
На панели слева вы увидите список язы- контактную информацию и избежать много-
ков программирования, до которых можно су- кратного набора имени. Вот код:
зить кругозор некоторых фрагментов, в зави- ${1:Name } Будьте осторожны и не уда ляйте ‘Name’ пол-
симости от того, на чем вы пишете; но сейчас No. Road Name ностью (вот для чего ну жен пробел в конце!),
мы созда дим глобальный фрагмент. Выбираем Town иначе потеряете переменную. Так же можно из-
City/County менить переменную имени полу чателя – я до-
PostCode бавил ее потому, что имя может использовать-
To ${2:Recipient } ся в тексте повторно.
$Gedit_SELECTED_TEXT Вдобавок вы обнару жите, что на месте, где
Yours faithfully, должно на ходиться сообщение, возник выде-
${1:Name } ленный текст: мы использова ли встроенную
Назовем это сокращение ‘letterhead’ и на- глобальную переменную для перемещения
значим ему сочетание клавиш Ctrl+Shift+@. Те- его туда, куда полагается. Другие примеры –
перь выделим в Gedit некоторый текст для ис- для текущего имени файла: $Gedit_FILENAME
пользования его в письме (например, «вот моё и $Gedit_BASENAME (второй – для ещё не со-
супер-пупер послание») и применим сочетание хранённых файлов), а так же $Gedit_CURRENT_
клавиш. Наш шаблон тут как тут! Редак тируя WORD для за хвата слова под курсором. Так же
самое верхнее или нижнее поле имени, вы уви- можно использовать метку $<> для включения
Snippets — и впрямь мощный инструмент! дите, что другие изменяются соответственно. скриптов на Python.

60 Linux Format Май 2009


 GeditУчебник

и улучшим
Скорая
Четыре любимых расширения Боба помощь

Чтобы быстро
завершить рабо-
ту в Gedit, на жми-
те Alt+F4. В слу чае
несохранённых
файлов нужно
будет подтвердить
выход в диа лого-
вом окне.

1 Подсчет слов 2 Внешние инструменты


Подсветка и исправление текста, набранного с ошибками Быстрое применение внешних инструментов и оболочки
Это расширение устанавливается и ак тивируется по умолчанию. Это расширение поможет открыть оболочку прямо от туда, где
Чтобы воспользоваться им, выберите Сервис > Проверка орфо- вы на ходитесь, запустить диа лог (типа показанного на экранном
графии [Tools > Check Spelling] и ищите ошибки в вашем тексте. снимке, для выполнения команд в термина ле) и скомпилировать
Если вам нравится стиль выделения ошибок типичным текстовым исходные тексты. Настроить или вообще переписать эти ру тинные
процессором, просто отметьте пункт Автоматически проверять действия можно с помощью Сервис > Внешние инструменты [Tools
орфографию [Autocheck Spelling] в меню Сервис. Мне это здорово > External Tools], благодаря чему расширение необычайно гибко;
помогло при подготовке данного урока... кстати, и потому, что всё запускается с помощью назначенных ва-
ми же сочетаний клавиш.

3 Выбор цвета 4 Сохранение сессии


Позволяет выбрать цвет и добавить его в текст Сохраняет набор открытых вкладок в «сессии», которую потом
в шестнадцатеричном представлении можно возобновить
Редак тируя HTML для web-сайта и ну ж даясь в определённом цве- Вы сможете вернуться к своей деятельности в любое удобное
те, запустите диа лог «пипетка» из меню Сервис. Вы сможете вы- для вас время. Это отличное подспорье при работе с большими
брать любой цвет, доступный в спек тре HTML, и его шестна дца- проек тами, а в сочетании с боковой панелью (доступной из ме-
теричный код появится под курсором. Поскольку это расширение ню Вид [View]) получается очень мощное решение. Пусть в Kate
опционально, его нужно снача ла ак тивировать в меню Правка > эта возможность присутствует по умолчанию, зато у него нет
Параметры > Модули [Edit > Preferences > Plugin]. дополнений! LXF

Май 2009 Linux Format 61


Firefox Недавайтеwebдопечьвас–
Greasemonkeyпоможет

Greasemonkey:
Интернет – замечательная штука, но не всегда выглядит должным образом.
Джульетта Кемп и Greasemonkey берутся это исправить.

И
дея, лежащая в основе Greasemonkey, очень проста. Это
расширение Firefox, и оно устанавливается так же, как
и все остальные (найдите его с помощью меню Tools >
Addons [Инструменты > Дополнения] и нажмите Install [Устано-
вить]). Однако само по себе оно ничего не делает, лишь позволяет
выполнять скрипты (ваши или написанные другими пользовате-
лями), чтобы изменить внешний вид и поведение web-страниц.
Скрипты Greasemonkey – это небольшие программы, которые
и делают всю работу; сам Greasemonkey только загружает их и уп-
равляет ими. Составляются они на JavaScript, но по соображениям
безопасности нельзя просто написать обычный скрипт и исполь-
зовать его. Нужно знать о кое-каких подводных камнях, хотя сце-
нарии данного урока не затрагивают ни один из них.
Сразу скажу тем, кто не знаком с JavaScript, что в этой статье
вы не найдете подробного описания его синтаксиса; но пусть это
вас не останавливает. Приведенные примеры довольно логичны,
и все объяснены.
Чтобы установить сценарий, написанный другим пользо-
вателем, откройте его страницу в Firefox и щелкните по ссылке
на скрипт. Появится окно инсталлятора (как и для обычного рас-
ширения), и вы сможете просмотреть исходный код скрипта или
установить его, если уверены в содержимом.

Часть 1 Мой первый скрипт Greasemonkey


Чтобы максимально упростить написание скрипта, Greasemonkey
предоставляет полезный диалог. Сразу после установки Grease-
monkey в правом нижнем углу окна Firefox на панели инструмен-
тов появится обезьянья мордочка. Кликните на ней правой кноп-
кой мыши, и откроется меню, где будет пункт Новый скрипт [New
User Script].. Выберите его, и появится диалог, похожий на приве-
Наш денный справа.
эксперт Поле ‘name’
name’’ – это имя скрипта. Лучше выбрать имя, ясно го-
ворящее о том, что делает сценарий – потом будет проще уп-
Джульетта Кемп
системный адми- равлять ими. Строка ‘namespace’ (пространство имен) позволяет
нистратор и писа- избежать конфликтов вашего скрипта с другими. Если вы по-
тель, она проводит пробуете добавить сценарий, имя которого совпадает с уже ус-
в сети много вре-
тановленным, как раз пространство имен и определит, будет ли
мени, и сайты час-
тенько режут ей последний перезаписан (если пространства имен одинаковы)
глаза. Greasemon- или будет существовать совместно со старым (если они раз-
key поможет этого ные). Здесь есть несколько вариантов: например, использовать
избежать. в качестве пространства доменное имя своего web-сайта. Как
альтернативу, можно взять http://localhost или, если вы собира-
етесь загрузить свой готовый скрипт на сайт http://userscripts.
org, этот адрес. В текущей версии Greasemonkey это поле обяза-
тельно для заполнения.
Поле ‘description’ содержит описание действий скрипта. Всегда
заполняйте его, даже для собственных скриптов – их может нако-
питься много, и если оставить информацию о том, что делает каж- Диалог создания нового скрипта во всей красе. Опишите
дый сценарий, ими будет проще управлять. сценарий поподробнее: это упростит вам жизнь в будущем.

62 Linux Format Май 2009


 GreasemonkeyУчебник

Правим Сеть
Правила включения (‘include’)
include’)
’) и исключения (‘exclude’)
exclude’)
’) опре-
деляют, на каких сайтах будет выполняться скрипт, и могут со- HTML
держать шаблоны. Так, www.example.com/* соответствует адресу
www.example.com/ и всем страницам, начинающимся с этого адре-
са (тогда как www.example.com/ без звездочки соответствует толь- HEAD BODY
ко главной странице). Шаблоны могут использоваться и в домен-
ных именах: http://*.example.com/f* соответствует всем страницам,
пути к которым начинаются с f, на всех серверах домена example. H1 DIV DIV
com. По умолчанию поле «include»
include»» содержит адрес страницы, с ко-
торой было открыто окно создания скрипта, но его можно спокой-
P H2 P
но очистить. Если адрес страницы соответствует хотя бы одному
из правил включения и не подпадает ни под одно правило исклю-
чения, то скрипт будет запущен. Если правила включения не за- Текст Текст
даны, то Greasemonkey использует @include *, что соответствует заголовка подзаголовка
всем адресам, и скрипт будет выполняться на каждой загружае-
Текст абзаца Другой абзац
мой странице.
Наш первый скрипт сделает фон страницы белым: это спасет
вас, если вы угодите на сайт, чей автор – любитель гламурно-ро-
Документ HTML — это дерево объектов DOM: каждый дочерний
зового или покрыл фон мозаикой из картинки, через пару секунд
узел ответвляется от родительского.
вызывающей ломоту в висках. Итак, выберите сайт, у которого
нужно изменить цвет фона, добавьте его адрес в поле @include
(здесь я использую www.example.com) и заполните другие поля Попробуйте сценарий в деле – откройте страницу с произволь-
подходящими значениями. ным фоном (не белым), с помощью меню Управление скриптами Скорая
помощь
Сразу после этого будет запрошен предпочитаемый редак- [Manage Scripts] добавьте ее адрес в список ‘include’ для только
тор (если он еще не задан), и Greasemonkey загрузит файл скрип- что созданного скрипта и обновите страницу. Помните, что ме- В правилах вклю-
та. Сейчас в нем содержатся только метаданные. няется не сама страница, а только ее отображение: если резуль- чения можно ис-
Файл выглядит примерно так: тат вышел скверным, никто не пострадает! Скрипт можно просто пользовать син-
таксис Magic TLD
// ==UserScript== отключить или отредактировать его и обновить страницу. Так что
.tld, который будет
// @name Background Change не бойтесь экспериментировать. соответствовать
// @namespace http://www.example.com/~juliet/ Greasemonkey включается и отключается щелчком левой кноп- любому доме-
// @description Change the background colour of a page кой мыши на его значке. Можно отключить его, посмотреть, как ну верхнего уров-
ня (включая доме-
// @include http://www.example.com/* выглядит страница, потом включить, перезагрузить страницу
ны второго уровня
// ==/UserScript== и увидеть, что делает скрипт. типа .co.uk и т.д.).
Пора написать сам сценарий. Он лишь изменяет цвет фона Например, exam-
всех страниц в домене include на белый. (Бывает, что цвета фона ple.tld соответст-
и в самом деле не смотрятся.) Для страниц без фреймов или про- вует example.com,
example.co.uk,
чих осложнений это делается всего одной строкой:
example.org и це-
document.body.style.background = “#ffffff”; лому набору дру-
document – это встроенный способ ссылки на текущую страни- гих доменов.
цу. Это объект DOM (Document Object Model – объектная модель Однако по сооб-
ражениям безо-
документа), который представляет весь HTML-документ.
-документ. Пред-
пасности этот син-
ставьте его себе как дерево HTML-элементов (объектов). Каждый таксис не стоит
новый элемент является «дочерним» по отношению к предыдуще- использовать, ес-
му (посмотрите на схему справа вверху, изображающую возмож- ли скрипт рабо-
ную структуру тела HTML-документа). тает с личными
данными.
В этой модели для ссылки на объект используется нотация
главный объект.потомок.потомкпотомка. Таким образом, сначала
идет элемент body, затем стиль элемента body и, наконец, атрибут
background стиля элемента body.. Данный атрибут устанавливает-
ся в белый цвет (#ffffff – обозначение белого цвета в шестнадцате-
ричной записи; это один из стандартов HTML.. Можно было бы ис- Страница с ужасным фоном и спокойным белым фоном. Обратите
пользовать и просто white). внимание на обезьянью мордочку в правом нижнем углу окна!

Пропустили номер? Узнайте на с. 48, как получить его прямо сейчас.


Май 2009 Linux Format 63
Учебник Greasemonkey

Часть 2 Зададим стили CSS


Однако этот скрипт не работает с фреймами – он изменит цвет фо-
на лишь у главного документа. Если на вашей странице с фоном
«вырви глаз» есть фреймы, лучше всего одолеть их все сразу, до-
бавив стиль CSS, который переопределит существующий. Чтобы
отредактировать уже созданный файл, щелкните на обезьяньей
мордочке правой кнопкой и выберите Управление скриптами. Ука-
жите свой скрипт и нажмите на кнопку Правка [Edit], чтобы он снова
появился в текстовом редакторе. Во время тестирования не нужно
закрывать редактор или диалог управления скриптами – доста-
Скорая точно сохранить файл и попробовать обновить страницу.
помощь
function addCss(cssString) {
Как было показа- var head = document.getElementsByTagName(‘head’)[0];
но на схеме DOM, return unless head;
«дочерним» эле- var newCss = document.createElement(‘style’);
ментом HTML-
newCss.type = “text/css”;
элемента является
тот, который в нем newCss.innerHTML = cssString;
содержится. Пред- head.appendChild(newCss); Диалог управления скриптами. Можно отредактировать правила
ставьте себе до- } включения/исключения, не открывая сценарий.
кумент в виде
addCss (
большого дере-
ва, каждый откры- ‘* { background-color: #ffffff ! important; }’ cssString. Обратите внимание на то, что мы используем скоб-
вающий тэг кото- ); ки (), потому что вызываем функцию, а не определяем ее. Флаг
рого (например, Первая функция (addCss) задает способ добавления гло- ! important гарантирует, что ваши CSS-стили-стили переопределят ука-
<p>) начинает но- бальной таблицы стилей CSS. document опять-таки ссылается занные на странице.
вую ветвь, а каж-
на текущую страницу, но в этом примере мы используем функцию Фактически этот код добавляет в заголовок HTML-страницы
дый закрываю-
щий (например, getElementsByTagName («получить элементы по имени тэга» – имен- следующие строки:
</p>) заканчива- но это она и делает) для выбора первого элемента head. Для тех, кто <style type=”text/css”>
ет ее. Самозакры- совсем не знаком с CSS: стили задаются [в том числе] в секции head * {background-color: #ffffff ! important;}
вающиеся тэги
HTML-файла, и нам нужно добыть этот элемент, чтобы он стал роди- </style>
(например, <br />)
образуют ветвь, тельским для нового элемента CSS. Здесь есть строка, которая отлав- Точно так же можно задать собственные стили CSS для любого
у которой не мо- ливает ошибочную ситуацию, когда секции head нет (производится элемента страницы – просто задайте подходящую CSS-строку,-строку, ко-
жет быть дочер- возврат из функции без каких-либо действий), затем скрипт создает торая будет передана функции addCss. Например, вызов
них. Таким обра- элемент style и устанавливает его атрибут type в text/css. В строке addCss (
зом, поиск можно
newCss.innerHTML = cssString ‘* { background-color: #ffffff ! important;
ограничить внутри
заданного абзаца функция принимает то, что ей передано, и вставляет это в эле- text-align: justify ! important;
или блока div. мент style. Затем полностью созданный элемент style добавляет- color: black ! important; }’
ся к элементу head – вот и все. );
В последних строках происходит вызов функции с ар- установит цвет фона в белый, весь текст сделает черным и выров-
гументом, устанавливающим цвет фона – там, где строка няет его по ширине.

Часть 3 Изменим заданные элементы


Итак, мы научились менять стиль одного элемента, переделав Полезен здесь метод document.evaluate. Его освоение дает
объект DOM, или множество стилей, добавляя собственные CSS- огромные возможности. Первый параметр (’//img[@src]’) пред-
записи, и можем применить это к заданным сайтам с помощью ставляет собой XPath-запрос
-запрос (подробнее об этом – чуть ни-
правил включения/исключения Greasemonkey. А если нам нужно же); второй – область поиска. В данном случае это весь доку-
найти элементы определенного типа, встречающиеся на странице мент, но в дальнейшем ее можно ограничить только дочерними
несколько раз, и изменить их? элементами. Третий параметр – функция разрешения простран-
Например, у вас есть форум, пользователи которого иног- ства имен, которая имеет смысл только для документов типа
да используют малоприятные аватары, и вы хотите просто за- application/xhtml+xml.
менить их все на безопасную картинку из вашего собствен- Четвертый параметр задает способ возвращения результа-
ного web-пространства. Прежде всего, найдем все картинки тов. Вариант, указанный здесь, соответствует произвольному по-
на странице: рядку, что чаще всего и нужно. Если результаты требуется вер-
var allImgs,thisImg; нуть в порядке их появления на странице, используйте вместо него
allImgs = document.evaluate(‘//img[@src]’, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE. Последний пара-
document, метр позволяет объединить результаты запроса – передайте ту-
null, да результат предыдущего вызова document.evaluate, и получите
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); их назад вместе. Поэкспериментируйте с этим!

Не хотите пропустить номер? Подпишитесь на www.linuxformat.ru/subscribe/!


64 Linux Format Май 2009
 GreasemonkeyУчебник

Запрос XPath (первый параметр) – «мотор» этой функ- snapshotLength и snapshotItem — методы, работающие с резуль-
ции. XPath – мощный язык запросов для XML-документов, встро- татом вызова document.evaluate и возвращающие соответственно
енный в Firefox [и не только, – прим. ред.], и его можно использовать общее число результатов и заданный результат по его номе-
в Greasemonkey. Если вы ищете определенный набор элементов, ру. Вставьте оба в цикл for, как в приведенном примере, и обрабо-
можно просто пройтись по дереву DOM, выудить наборы узлов тайте каждый элемент (здесь – каждое изображение со страницы)
и найти в них искомое. Но это довольно медленно и не очень кра- результата запроса XPath.
сиво с точки зрения кода. XPath позволяет найти на странице все, Небольшое замечание: в обычном JavaScript пройтись по кол-
что нужно, гораздо быстрее и элегантнее. Я воспользуюсь им в не- лекции объектов можно так: Скорая
помощь
скольких скриптах, и, надеюсь, это поможет вам понять, как он ра- for (var thisImg in allImgs) {
ботает – если хотите узнать о нем подробнее, поищите специфика- // do stuff Первоначально
цию или онлайн-учебники в Интернете. Язык в самом деле очень } в Greasemonkey
гибок: если вы можете определить набор результатов, который хо- Из-за особенностей реализации безопасности в скриптах Grease- было несколь-
ко серьезных дыр
тите получить из HTML-документа, то сможете и написать XPath- monkey такой способ работать не будет. Приходится идти окруж-
в безопасности,
запрос, который позволит их получить. ным путем. вызванных спо-
Вернемся к нашему скрипту: картинки мы добыли, и хотим thisImg.src дает нам значение атрибута src изображения. Так, собом внедре-
с ними что-то сделать. Вот следующий фрагмент кода: допиши- для тэга <img src=«foo.jpg»>, thisImg.src вернет foo.jpg. (Точно ния пользователь-
ских скриптов
те его сразу после приведенного выше: так же можно получить значение атрибутов width или height или
непосредственно
for (var i=0;i<allImgs.snapshotLength;i++) { любых других атрибутов тэга img. Полный список элементов и ат- в web-страницы:
var thisImg = allImgs.snapshotItem(i); рибутов объекта DOM можно найти в Интернете.) так ваши сценарии
var src = thisImg.src; В конце мы пытаемся сравнить src с ожидаемым значением оказывались до-
var srcMatch = src.match(‘^http://www.example.com/forums/ для пользовательских аватар на этом форуме (чтобы узнать его, ступны для сайтов
страниц злоумыш-
userpic/’); взгляните на исходный код страницы форума), и если результат
ленников. Ныне
if (srcMatch != null) { не равен нулю (соответствие есть), значение атрибута src заме- Greasemonkey ра-
thisImg.src = ‘http://www.example.com/~juliet/safepic.gif’; няется путем к безопасной картинке. (Можно было бы обойтись ботает по-друго-
} без лишней строки, вызвав src.match, но приведенный вариант бо- му, на самом деле
выполняя скрип-
} лее понятен.) Готово!
ты в «песочни-
це» и используя
обертки для до-
Часть 4 Замена текста ступа к объектам
на удаленной web-
странице, которую
хотят изменить
Теперь попробуем заменить текст, который встречается на стра- совпадают с позициями перед и после перевода строки, а не толь- ваши скрипты.
нице в нескольких местах. Предположим, вас достало сло- ко с началом и концом текста.
во «аутсорсинг» [outsourcing],, тут и там маячащее на глав- Наконец, очередной цикл for проходит по результату запроса
ной странице сайта вашей компании, куда вам, к сожалению, XPath, находя нашу строку и заменяя ее другой. Легко!
приходится заходить регулярно. Заменим его словом «левак» Greasemonkey способен на гораздо большее – просто поэкс-
[otherguy] (или любым другим, которое вы находите юморным, периментируйте и увидите, что получится. Подстройте Интернет
а не нудным). под себя! LXF
// ==UserScript==
// @name Deoutsourcing
// @namespace http://www.example.com/~juliet/
// @description Replace “outsourcing” on corporate homepage
Радости отладки
// @include http://www.example.net/corporatehome В идеальном мире все, что бы вы ни написали, сразу заработает
// ==/UserScript== так, как задумано. Удачи!
textNodes = document.evaluate( Тем, у кого сразу не получилось, помогут некоторые сред-
“//text()”, ства отладки:
1 DOM Inspector и InspectThis – доступны как дополнения
document,
к Firefox 3. Инспектор DOM (после установки его можно запустить
null,
из меню Tools [Инструменты]) позволяет взглянуть на объектную
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
модель документа страницы – то есть ее структуру. InspectThis
null); поможет вам исследовать отдельный элемент по щелчку на нем
var searchRE = new RegExp(‘outsourcing’,’gi’); правой кнопкой мыши и выбору пункта “Inspect Element” [Инс-
var replace = ‘otherguy’; пектировать элемент] контекстного меню. Оба помогут получить
for (var i=0;i<textNodes.snapshotLength;i++) { информацию об именах и идентификаторах элементов стра-
var node = textNodes.snapshotItem(i); ницы, которые вы ищете. Инспектор DOM поставляет и другую
node.data = node.data.replace(searchRE, replace); информацию, например, стили CSS и данные о JavaScript.
2 Консоль ошибок (Меню Tools в Firefox). На ней показываются
}
Первый фрагмент кода мы уже видели в предыдущем скрип- все ошибки в скриптах с того момента, как вы открыли Firefox.
Чтобы избавиться от них, нажмите кнопку Clear, затем обновите
те. Он ищет в документе все текстовые узлы. Далее мы задаем ре-
страницу со своим скриптом. Если он упадет, вы получите сооб-
гулярное выражение. Конструктор new RegExp() принимает два
щение об ошибке. (Номер строки в голову не берите – из-за спо-
аргумента. Первый – это искомая строка, второй – модификато- соба внедрения пользовательских сценариев в страницу он не
ры. g означает глобальное соответствие: заменяются все вхожде- будет соответствовать реальному. Разбирайтесь только с сооб-
ния строки, а не только первое. (Чаще всего вам это и нужно.) i оз- щением об ошибке.)
начает сравнение без учета регистра. 3 Ведение журнала ошибок с помощью функции Greasemonkey

Есть и модификатор m для многострочного режима, в котором GM_log. Сообщения будут появляться в консоли ошибок.
якоря ^ и $ (означающие начало и конец строки, соответственно)

Май 2009 Linux Format 65


Сети СвяжемвашиLinux-ПК,
ипускайонивасобслуживают

Subversion:
Часть 5: Нужна совместная работа над файлами? Нейл Ботвик покажет,
как Subversion поддерживает актуальность вашей информации,
не наступая никому на пятки.

У пользователей KDE есть kdesvn — все доступные консольные


команды клиента svn с человеческим лицом.

Другое ценное преимущество – то, что над проек том может ра-
ботать множество разных людей. Ка ж дое изменение снабжается
именем автора, и сразу видно, кто что внёс. Любой может забрать
набор файлов, переделать их и отослать обратно. Тогда новые
файлы станут доступны всем пользователям. А вдруг два поль-
зователя возьмутся за один и тот же набор файлов? Первоначаль-
ным решением было такое: после того, как некий пользователь
извлёк файлы из репозитория, блокировать их, запретив к ним
доступ вплоть до фиксации изменений. Но такой под ход часто не-
эффек тивен, поэтому Subversion и другие инструменты контроля
версий теперь по умолчанию используют другой способ:

Н
ет, ничего общего с государственным переворотом тут Пользователь А извлекает файлы из репозитория и принимает-
нет. Кстати, если вы его за дума ли, то Subversion [англ. ся с ними работать.
«свержение»] – наименее под ходящая программа для Пользователь Б делает извлечение из того же ката лога
подобных целей. Как честный инструмент для совместной рабо- и получает ту же начальную копию, поскольку пользователь
ты над проек тами, она регистрирует ка ж дое дополнение, изме- А ещё не зафиксировал никаких изменений.
нение и уда ление, а так же кто и когда его произвёл, тем самым Пользователь А делает изменения в паре файлов и фиксирует их.
сводя к нулю все шансы на подпольную деятельность. Итак, что Пользователь Б вносит какие-то изменения и пытается
Наш же такое Subversion? Это одна из систем контроля версий (version их зафиксировать.
эксперт control software, VCS), используемая для отслеживания и записи
Нейл Ботвик всех изменений в наборе файлов. Чаще всего она употребляется
У Нейла Ботвика (особенно в мире открытого ПО) для управления программными
по компьютеру
в каждой комнате.
проек тами, но её с успехом можно применить при работе с любым
Но по соображени- набором файлов: web-сайт, документация или коллекция видео
ям безопасности или аудио – содержимое роли не играет. Благодаря этому сервер
он никогда не ска- Subversion пригодится для многих видов проек тов, и на следую-
жет вам, где цент-
щих страницах мы расска жем, как начать с ним работу.
ральный сервер.

Контроль чего?
Основная за дача любой системы контроля версий, как следует
из названия – это управление различными версиями проек та. При
ка ж дом внесении изменений в файл и регистрации их на серве-
ре, Subversion сохраняет их в виде новой версии проек та, давая
вам или кому-то другому возможность увидеть данные в их теку-
щем или более раннем состоянии. Если что-то работает не так, как
предполага лось, можно просто откатиться к последней рабочей Имея Konqueror, просмотреть содержимое репозиториев
Subversion можно простым набором в адресной строке svn:// URI.
версии и попробовать другой под ход.

Месяц назад Мы делились файлами по сети с помощью NFS и Samba.


66 Linux Format Май 2009
 СетиУчебник

Сотрудничаем Руководство
по Subversion
eSVN 0.6.12
RapidSVN 0.9.8
QSVN 0.8.1

Тут программа-клиент Subversion видит, что с тех пор, как


пользователь Б извлёк из репозитория свой набор файлов, в нём
произошли изменения, и обнов ляет их. Ес ли обнов ление каса-
Словарь­глоссарий
ется разных файлов, то проблем нет, и можно фиксировать Преж де чем продолжить установку и настрой- либо их все, либо ни одного, да же при ава-
дальше. Ес ли же оба пользователя меняли один и тот же файл, ку Subversion, опишем терминологию, приме- рийном завершении программы или обрыве
Subversion проверит, совмес тимы ли изменения. Ес ли изменения няемую в системах контроля версий. связи во время фиксации изменений.
касаются разных частей файла, оба набора сливаются, и фикса- Репозиторий (хранилище) Полный набор Рабочая копия Набор файлов, которые вы
файлов, управляемых системой контроля правите; локальная копия части репозито-
ция продолжается. В противном слу чае пользователь Б инфор-
версий. рия. Когда ваши правки вас удовлетворят,
мируется о конфлик те, и ему пред лагается разрешить пробле- Проект Подмножество репозитория. Пред- вы посылаете их обратно в репозиторий.
му вручную. став ляется в виде подката лога, хотя Рабочая копия так же содержит ката лог
Звучит сложно, но в большинстве случаев такая схема рабо- в Subversion, по су ти, нет понятия проек та .svn – но он не является частью проек та.
как такового – оно применяется только для Обновление (Update) Обнов ление вашей
тает хорошо. Лишь в одной ситуации слияние различных правок
удобства простых смертных. рабочей копии пу тём загрузки любых, кем-
в одну не срабатывает: когда искомый файл – не текстовый. С по- Извлечение (Check out) Действие по загруз- то когда-то сделанных изменений.
следними всё просто, поскольку они состоят из отдельных строк ке рабочей копии из репозитория для работы Версия (Revision, «ревизия») При ка ж дой
или, если работа идёт с документацией, абзацев. Но для фай- с ней. фиксации поль зовате лем изменений для
лов, содержащих двоичные данные, как, например, мультимедиа- Публикация изменений (фиксация, Commit) одного или более фай лов номер версии
Выгрузка ваших изменений в репозиторий. уве личивается. В отличие от дру гих сис-
ролики, этот под ход уже не годится, и тогда блокировка файла
Subversion знает, какие файлы вы отредак- тем кон троля версий, в Subversion приме-
вплоть до внесения сделанных изменений – лучшее решение. тирова ли, и отсылает в репозиторий только няется глобальный номер ревизии, а не
модифицированные данные. Именно на отдельная ну мерация для ка ж дого набора
Установка сервера этом этапе Subversion проверяет, не зафик- фай лов.
сировал ли кто-нибудь ещё изменений для Головная версия (Head) Самая свежая
Пакет с Subversion должен быть в репозиториях вашего дистрибу-
файлов, которые изменяли и вы. Фиксация ревизия – именно её вам предос тавят при
тива, так что установите его обычным способом. Как правило, сер- изменений в Subversion атомарна, то есть, извлечении файлов с сервера или обнов-
вер и штатный клиент идут вместе, хотя существуют и другие спо- изменив несколько файлов, вы обновляете лении локального проек та.
собы доступа к репозиторию Subversion, о которых мы поговорим
чуть ниже. После установки можно выбрать один из двух режи-
мов работы сервера svnserve. Самый простой – запустить его как Настроим ваш первый проект
самостоятельный демон: отметьте в программе настройки служб Первый шаг после установки – создание репозитория. С одним-
вашего дистрибу тива, чтобы демон запускался при загрузке сис- единственным проек том это не вопрос, но при на личии несколь-
темы. Если вам незачем постоянно держать сервер запущенным, ких проек тов встаёт выбор: иметь несколько репозиториев или
стартуйте его из inetd или xinetd. Для дистрибу тива, где использу- использовать несколько ката логов внутри одного. Второе про-
ется классический супер-демон inetd, допишите в файл /etc/initd. ще и рекомендуется в большинстве случаев, так что мы опишем
conf следующее: именно этот способ. Зайдя на сервер с правами root, наберите:
svn stream tcp nowait svnowner /usr/bin/svnserve svnserve -i svnadmin create /var/svn/repos
У пользователей xinetd, возможно, уже имеется файл svnserve Это местоположение по умолчанию, но можно указать любой
в ката логе /etc/xinetd.d. Тогда просто поменяйте значение пара- путь. Будет сгенерирована базовая файловая струк тура; теперь
метра “disable” на no; в противном слу чае создайте файл следую- нужно создать в ней дирек тории для проек тов. Стандартная прак- Скорая
помощь
щего содержания: тика – иметь в ка ж дом ката логе проек та три подката лога: trunk,
service svn branches и tags, причём все рабочие файлы хранятся в trunk. По-
При публикации
{ нача лу такие сложности могут и не пона добиться, но в дальней- изменений всегда
socket_type = stream шем вы пора дуетесь, что настроили всё по такому принципу. Вот добавляйте какой-
wait = no типичная раскладка: нибудь осмыслен-
user = apache /var/svn/repos ный коммента-
рий. Понача лу это
group = apache project1 может показаться
umask = 002 branches занудным, но впо-
protocol = tcp tags следствии вы себя
log_on_failure += USERID HOST trunk возненавидите,
если не будете
port = 3690 project2
этого делать.
server = /usr/bin/svnserve branches
server_args = -i tags
disable = no trunk
} Репозиторий Subversion – это база данных, представленная
Перезапустите inetd или xinetd или отправьте им сигнал SIGHUP, как виртуальная файловая система, поэтому просто взять и соз-
чтобы изменения вступили в силу. дать такую раскладку в виде подката логов в repos не удастся. Для

Не хотите пропустить номер? Подпишитесь на www.linuxformat.ru/subscribe/!


Май 2009 Linux Format 67
Учебник Сети

Заметьте, что здесь указаны не полные пу ти, а только пу ти


относительно корневого ката лога Subversion, и, как правило, это
/var/svn. Конечно же, URI не обязательно должен быть локальным:
можно разрешить соединение с другого компьютера в вашей се-
ти, или откуда-то ещё из Интернета, приняв обычные в таких слу-
чаях меры безопасности.
Настроив рабочую копию, примите во внимание пару вещей.
Во-первых, новый файл, созданный в рабочей копии, не добавля-
ется к репозиторию Subversion при следующей фиксации измене-
ний сам по себе. Это необходимо потребовать явно, командой
svn add PATH
где PATH может быть файлом, ката логом или шаблоном имени.
Не будет беды, если добавится файл, который уже есть в репози-
тории, так что
RapidSVN — один из графических клиентов Subversion; он кросс- svn add *
платформенный, и доступен для загрузки с официального сайта – вполне разумный способ включить сразу всё, что нужно. То же
Subversion. касается уда ления, копирования и переименования файлов. Вме-
сто команд rm, cp и mv пользуйтесь svn rm, svn cp и svn mv, кото-
манипулирования файлами и ката логами предусмотрен собствен- рые уда лят, скопируют или переименуют файл и опубликуют из-
ный инструментарий Subversion. Дерево проек та создаётся так: менения на сервере при следующей фиксации. Так же, вместо
svn mkdir --parents file:///var/svn/repos/project1/ mkdir somedir
{trunk,tags,branches} svn add somedir
Да лее можно импортировать существующее дерево исход- можно применить svn mkdir.
ных текстов куда-то в репозиторий. Представьте, что мы работа- В Subversion есть встроенная онлайн-справка. Для получения
ем над web-сайтом в /var/www/localhost/htdocs; перенести его списка команд введите
в Subversion можно так: svn help
svn import /var/www/localhost/htdocs file:///var/svn/repos/ а для получения дополнительной информации о конкретной ко-
website/trunk -m “Initial import” манде –
Флаг -m сообщает, что к журна лу добавляется комментарий; если svn help command
Скорая вы не ука жете текст в командной строке, вам пред ложат его вве- Полная информация доступна в Subversion Complete Reference
помощь
сти. Вы убедитесь в полезности этих действий потом, отыскивая [Управление версиями в Subversion], на DVD или на сайте http://
более старые версии! Теперь ваш web-сайт попал в репозиторий svnbook.red-bean.com.
Не бойтесь экспе-
риментировать: Subversion, но /var/www/localhost/htdocs не является рабочей ко-
ведь в Subversion пией – её нужно извлечь в тот же ката лог таким образом: Безопасность и контроль доступа
ничто не теряется! svn checkout file:///var/svn/repos/website/trunk/var/www/ Тут действуют общепринятые правила по предоставлению досту-
Все ваши ошибки localhost/htdocs па из Интернета. Главное из них – не делать того, в чём нет ну ж ды.
и все удачные
решения пребудут
или Если необходим доступ извне, анонимным пользователям в луч-
на сервере вечно. cd /var/www/localhost/htdocs шем случае предоставьте права только на чтение. При работе над
svn checkout file:///var/svn/repos/website/trunk . открытым проек том можно предоставить возможность извлече-
Точка (.), означающая текущую дирек торию, очень важна. Если ния файлов глобально, но права на запись должны быть только
не указать места назначения, рабочая копия выберет себе назва- у зарегистрированных разработчиков. Впрочем, Subversion (как
ние по последней составной части имени проек та, и вы получите и любая система контроля версий) имеет огромный плюс: тут ни-
ката лог trunk – то есть совсем не то, что хотели. чего не теряется. Если кто-то, заполучив права на запись, злостно
Просмотр содержимого дирек тории пока жет, что оно оста лось изменит или поуда ляет файлы, старые копии все равно останут-
прежним, только добавился ката лог .svn, где содержится инфор- ся на месте, и вы просто откатитесь к ревизии, созданной до на-
мация, нужная для Subversion – не уда ляйте его. Теперь можно шествия ванда лов.
вносить изменения и публиковать их на сервере командой Вам вряд ли нужно, чтобы кто ни попа дя из Интернета мог из-
svn commit влекать ваши файлы и тем более фиксировать в них изменения;
Перед фиксацией изменений, возможно, вам за хочется а как организовать защиту? Первым шагом будет, как и всегда,
выполнить настройка брандмауэра. Решив дать доступ к файлам только ло-
svn status кальным пользователям, заблокируйте внешний доступ к соот-
что пока жет список модифицированных файлов. Текущие изме-
нения в файле можно просмотреть по команде svn diff, она рабо-
тает ана логично стандартной diff.

Работа с Subversion
Клиент svn – главная рабочая лошадка Subversion. Эта програм-
ма работает непосредственно с репозиторием. В предыдущих при-
мерах мы за дава ли пу ти до репозитория нашего проек та в виде
file:/// URI. При настройке это удобно, но коллек тивную работу не-
много ограничивает. Для прямого соединения с сервером svnserve
так же можно использовать svn:// URI , так что эти две команды эк-
вива лентны:
svn checkout file:///var/svn/repos/website/trunk . Добавьте в Apache модуль dav_svn, и на ваш сервер Subversion
svn checkout svn:///localhost/repos/website/trunk . можно будет войти через web-браузер.

68 Linux Format Май 2009


 СетиУчебник

ветствующим портам. Под стандартный интерфейс HTTP/WebDAV


отведён порт 80, а для использования svnserve – 3690. При рабо-
те через HTTP весь доступ контролируется web-сервером спосо-
Subversion по HTTP
бами, описанными в учебнике про Apache в нача ле нашей серии На нашем уроке мы использова ли сервер <Location /svn>
статей (LXF113/114). У svnserve есть собственная система ау тен- svnserve и адреса типа svn:// URIs: это наибо- DAV svn
тификации, настраиваемая в подката логе conf/svnserve.conf глав- лее простой под ход. Но репозиторием так же SVNParentPath /var/svn
ной дирек тории repos. Параметры по умолчанию таковы: можно управлять по HTTP, с помощью серве- </Location>
ра WebDav. Руководствуясь инструкциями из Теперь вы можете соединиться с http://
anon-access = read первой части этой серии статей, вы должны hostname/svn/repos. Не исключено, что ана-
auth-access = write бы уже настроить себе Apache, а теперь до- логичный набор дирек тив уже присутствует
То есть извлекать файлы могут все, но фиксировать изменения бавьте к его конфигурации следующее: в /etc/apache/modules.d, и тогда вам остает-
вправе только зарегистрированные пользователи. Естественно, LoadModule dav_svn_module modules/ ся лишь аккуратно настроить пу ти. Это базо-
mod_dav_svn.so вый шаблон; при желании добавьте установки
вы можете изменить настройки согласно вашим ну ж дам. Для лю-
LoadModule authz_svn_module для ау тентификации пользователей, ограни-
бой из них можно указать параметр ‘none’: так, modules/mod_authz_svn.so чив доступ.
anon-access = none
auth-access = write
позволит изменять файлы только авторизованным пользовате- время, комментарий и имя пользователя, зафиксировавшего из-
лям, а менение. Сузить список отобра жаемых ревизий можно одним
anon-access = read из следующих способов:
auth-access = none svn log -r 25
создаст публичный репозиторий, доступный исключитель- svn log -r 25:15
но для чтения. Так же можно указать файл, используемый при svn log -r 15:25
авторизации: Первый пока жет одну ревизию, второй – указанный диапазон
password-db = passwd ревизий, а третий сделает то же самое, но в прямом хронологиче-
Путь за даётся относительно svnserve.conf. Формат этого файла – ском порядке. Добавление флага -v выведет список изменённых
по строке на ка ж дого пользователя: файлов. Так же можно указать путь или URI: команда
[users] svn log -v svn://hostname/repos
user1 = password1 выведет все изменения, сделанные в данном репозитории, не при-
user2 = password2 бегая к извлечению файлов. Обнару жив версию, с которой вам хо-
Как говорилось выше, Subversion не знает понятия «проек ты»: телось бы поработать, извлеките её или же обновите имеющую-
здесь это просто ката логи в репозитории. А если на до контроли- ся рабочую копию, добавив -r number к соответствующей команде
ровать доступ к конкретным проек там (другими словами, к ката- svn. Опубликовать такую копию нельзя, поскольку уже существу-
логам)? Это делается с помощью файла authz из ката лога conf. ют более поздние фиксации, но можно с ней поработать, чтобы
Раскомментируйте указания на него в svnserve.conf и настройте убедиться, что вам именно это и нужно. Если вы за хотите доба-
доступ в самом файле authz таким способом: вить более старые, уда лённые или изменённые файлы снова в те-
[/myproject] кущую рабочую копию, это делается с помощью svn copy:
user1 = rw svn copy svn://hostname/repos/project/trunk/somefile@NNN
user2 = r ./somefile
*= где NNN – номер ревизии. Данный синтаксис можно использовать
Мы установили контроль над доступом к ката логу myproject и всем для доступа к файлам любой версии. Теперь, когда файлы сно-
его подката логам. Пользователь user1 имеет права на чтение/за- ва на ходятся в рабочей копии, следующая публикация изменений
пись, user2 может только читать, а другие не имеют никаких прав добавит их в проект.
доступа вообще. Когда authz-db вступит в силу, доступ закроется
всем, кроме специально оговоренных лиц; не исключено, что при- Графические возможности
дётся добавить До сего момента всё дела лось с помощью консольного клиента
[/] svn. Это полезно для обу чения работе с Subversion, поскольку по-
*=r могает лучше ухватить суть происходящего; но для общего ис-
разрешив чтение остальным пользователям. Не перестарайтесь, пользования вполне можно предпочесть графический под ход.
урезая права доступа для коллек тивного проек та. Лучше дове- Существует несколько специа лизированных графических клиен-
рить право на изменение файлов пользователям с должной ква- тов, включая RapidSVN (созданный там же, где и Subversion), и мы
лификацией, чем ограничивать им доступ. включили их подборку на наш DVD. У пользователей KDE есть вы-
бор из пары кандидатур: полноценного клиента kdesvn и Konqueror
Машина времени для просмотра репозиториев через адреса типа svn:// URI. Размес-
Сервер Subversion подобен машине времени – ничто никуда не ис- тив свой код в Subversion, вы сможете получить к нему доступ
чезает. Уда ляя файл из рабочей копии и затем фиксируя измене- и из популярных IDE: большинство интегрированных сред пред-
ния на сервере, мы уда ляем файл только из новой ревизии. После лагают под держку Subversion, встроенную или в виде подключае-
правки файла и публикации изменений старая версия по-преж- мого модуля.
нему на ходится в предыдущей ревизии. Пока мы работа ли толь- На этих четырёх страницах мы коснулись только самых верш-
ко с самой свежей версией (выбираемой по умолчанию, когда мы ков возможностей Subversion. Справочное руководство содержит
извлекаем рабочую копию), но можно откатиться к любой на ваш более 400 страниц, ведущих от базовых навыков к сложным на-
вкус. Для нача ла узнайте, какие ревизии доступны. Команда стройкам. С его помощью вы найдёте ответы на любые вопросы,
svn log возникшие у вас во время чтения нашей статьи, так что обязатель-
пока жет ревизии текущей копии в обратном порядке, включая но просмотрите экземпляр руководства на нашем DVD. LXF

Через месяц Управляем вашей машиной из другого угла комнаты.


Май 2009 Linux Format 69
В одно касание Пустьмультимедийнаяклави-
атураработаетвплотьдопоследнейкнопки

X: Задействуем
Если вы – не фанат Emacs, то наверняка не в восторге от заучивания
«горячих клавиш». А вот Алексей Маслий решает большинство задач
нажатием на одну кнопку.

управления KDE (в разных системах он называется по-разному:


в Ubuntu, например, это Системные настройки, а в openSUSE – На-
стройки рабочего стола). Откройте Региональные настройки и язык,
и перейдите к пунк ту Раскладка клавиатуры. Во вкладке Расклад-
ка есть выпа дающее меню Модель клавиатуры, где перечисле-
ны все модели клавиатур, под держиваемые системой Х Window
вашего дистрибу тива. После ряда экспериментов я остановился
на Genius Comfy KB-21 e-scroll. Из трех мультимедиа-клавиатур
(производства Genius и Defender), оказавшихся у меня под рукой,
на одной заработа ли сразу все спецклавиши, на другой не зарабо-
та ли три, а на третьей, подаренной – 16 из 36: многовато, но все же
лучше, чем ничего.
После выбора модели необходимо определить, какие кла-
виши работают, а какие – нет. Для этого откроем терминал и за-
пустим программу xev (LXF117). Ее окно выглядит как небольшой
белый квадрат с черной рамкой и не содержит никакой инфор-
мации: весь вывод отобра жается в консоли. На жимайте по оче-
реди на все дополнительные клавиши, и увидите в термина ле со-
общения вида
KeyPress event, serial 28, synthetic NO, window 0x3600001,
root 0x45, subw 0x0, time 3139172, (349,690), root:(352,714),
state 0x0, keycode 205 (keysym 0x1008ff4c, XF86LaunchC),
same_screen YES,

К
ак-то раз друзья подарили мне на день рож дения новую XLookupString gives 0 bytes:
клавиатуру Genius, на которой помимо ста с хвостиком XmbLookupString gives 0 bytes:
обычных клавиш было аж 36 дополнительных мультиме- XFilterEvent returns: False
дийных. Едва ли я – единственный обладатель такого устройства, KeyRelease event, serial 28, synthetic NO, window 0x3600001,
предпочитающий использовать Linux, но компания-производитель root 0x45, subw 0x0, time 3139172, (349,690), root:(352,714),
решила, что потенциального покупателя вполне устроит под держ- state 0x0, keycode 205 (keysym 0x1008ff4c, XF86LaunchC),
Наш ка Windows и Mac OS X. Подобную ситуацию вряд ли можно назвать same_screen YES,
эксперт уникальной; тем не менее, опыт свидетельствует, что большую XLookupString gives 0 bytes:
Алексей Маслий часть периферии можно заставить работать и в открытой ОС, если XFilterEvent returns: False
Познакомился приложить немного старания. Что с того, что на прилагаемом дис- Первый блок записей сообщает, что кнопка была на жата, второй –
с Linux 10 лет
назад, и с тех пор
ке нет заветных .tar.gz файлов и настроечных скриптов? На то оно что отпущена. В ка ж дом блоке нас интересует третья строчка, на-
ищет клавиатуру, и свободное ПО, чтобы мы могли добавить их самостоятельно! чинающаяся со state 0x0; да лее идут три параметра keycode и,
которую он не смог Я буду ориентироваться на openSUSE и KDE 3.x, хотя опи- в скобках, keysym и keysymname. Когда определены все три зна-
бы настроить. санные ниже утилиты должны работать в любом дистрибу тиве чения, такой клавише можно просто назначить действие в Центре
Linux – возможно, с небольшими вариациями (если что-то идет управления KDE – среда знает ее и понимает. Если указан только
не так, почитайте справочные страницы по командам). Мы будем keycode, это означает, что клавишу необходимо определить в ба-
иметь в виду стандартные клавиатуры PS/2, но процедура остает- зе X Window. И наконец, если по на жатию на кнопку не происходит
ся той же самой и для ноутбуков. Решение за дачи подразделяет- вообще ничего, системе она не известна.
ся на две части: определение дополнительных клавиш и настрой- Если все мультимедиа-клавиши на вашей клавиатуре – перво-
ку действий, выполняемых по их на жатию. го типа, вам повезло: можете сразу же переходить к разделу «Вре-
мя действовать». В двух других случаях необходимо пройти под-
А в чем проблема? готовительный этап.
Преж де чем приступить к работе, неплохо бы выяснить, а нуж-
но ли вообще что-то делать. Мультимедиа-клавиатуры в ходу уже Эти незнакомые кнопки
давно, и да же если вашей модели нет в списке под держиваемых, Начнем с самого сложного слу чая – клавиша неизвестна систе-
можно подобрать такой вариант, в котором будут работать если ме как таковая. Вы наверняка знаете, что ка ж дая кнопка передает
не все, то большинство специальных клавиш. Запустите Центр при на жатии компьютеру свой скан-код (scancode) – уникальный

70 Linux Format Май 2009


 Мультимедиа-клавишиУчебник

спецклавиши
идентификатор. Ана логичная процедура происходит и при от-
пускании. Система полу чает скан-код и ставит ему в соответствие
код клавиши (keycode). Возникает вопрос: а для чего такие слож-
ности, если можно использовать скан-код напрямую? Данный
под ход, например, позволяет легко переключать раскладку кла-
виатуры, просто переопределив keycode для скан-кодов алфа-
витных клавиш. Есть и другие причины, связанные с различным
типом клавиатур в Unix-системах, а так же с тем, что пользова-
тель в итоге может сам определять действия по на жатию той или
иной кнопки.
Итак, наша первая за дача – узнать скан-коды клавиш, на ко-
торые не отреагировал xev. На жмите их еще раз по очереди, про-
глядывая сообщения ядра в выводе утилиты dmesg. Ка ж дой
неизвестной клавише в нем соответствуют две строки пример-
но такого вида:
atkbd.c: Unknown key pressed (translated set 2, code 0xbd on
isa0060/serio0).
atkbd.c: Use 'setkeycodes e03d <keycode>' to make it known.
Модуль atkbd не только сообщает скан-код клавиши, но и любез-
но говорит, что нужно сделать для того, чтобы он стал известен
системе. Теперь для ка ж дого скан-кода необходимо за дать свой
уникальный код клавиши. Для этого нам потребуются права
Такая настройка
суперпользователя, поскольку мы собираемся вносить изменения страницы происходит по на жатию F5 (если пользователем не бы-
позволит переклю-
в системную раскладку клавиатуры. ло за дано другое поведение), после этого Refresh будет делать чаться между окна-
Назначением соответствия меж ду скан-кодом и кодом кла- именно то, что на ней написано. ми не только по Alt-
виши занимается программа setkeycodes, принимающая в каче- После того как все коды клавиш будут определены и сохранены Tab, но и с помощью
стве параметра пары «scancode keycode»; таких пар можно за- в скрипте setkeys.sh по подобию описанного выше, его необходи- клавиш прокрутки.
дать сколько угодно. Удобно написать скрипт, ка ж дый вызов мо сделать исполняемым (chmod 755 setkeys.sh). Запустите сцена-
setkeycodes в котором будет определять одну клавишу, и снаб- рий от имени суперпользователя: все ранее неизвестные системе
дить его комментариями, поясняющими, какую именно клавишу клавиши будут определены. Эту процедуру необходимо проделы-
определяет та или иная команда. Например: вать после ка ж дой перезагрузки компьютера. Чтобы не выпол-
#!/bin/bash нять ее вручную, добавьте вызов setkeys.sh в /etc/rc.d/rc.local (при
# Messenger желании можно просто скопировать содержимое setkeys.sh вме-
setkeycodes e03d 217 сте с комментариями в rc-сценарий). Возможно, правильнее бы-
... ло бы отредак тировать таблицу трансляции клавиатуры (keymap),
Вы можете спросить: а как узнать, какие коды клавиш свобод- но здесь есть опасность, что при обновлении системы содержа-
ны, а какие – заняты? Первые 110 кодов гарантированно исполь- щий ее пакет будет замещен и ваши изменения, добытые с таким
зуются системой, а все дополнительные клавиши имеют коды трудом, потеряются.
от 110 до 256.
Переключи тесь в текстовую консоль (Ctrl+Alt+F1-F6). Это Xmodmap спешит на помощь
нуж но сде лать, поскольку X Window перехватывает клавиа- Теперь, когда неизвестных клавиш на клавиатуре не оста лось,
турный ввод и транс лирует его, так что мож но полу чить невер- можно переключаться обратно в Х Window и снова запускать xev.
ные данные. Да лее есть два пу ти. Мож но запустить программу Пона жимайте на проблемные кнопки и убедитесь, что xev понима-
dumpkeys и проана лизировать ее вывод, либо восполь зовать- ет их. При этом обратите внимание, что значения keycode для них
ся ути ли той showkey, которая, в зависимости от парамет ра, в Х Window, скорее всего, не будут соответствовать тем, что были
может пока зать скан-код, код клавиши или ее ASCII-пред- определены в консоли. Х Window осуществляет свою собственную
став ление. Во втором слу чае нуж но набрать showkey -k и пона- трансляцию, гарантированно сохраняющую только коды первых
жимать дополнительные клавиши, записывая все занятые зна- 128 клавиш. На данном этапе необходимо переписать keycode всех
чения keycode. клавиш, для которых не определены keysym и keysymname, и при-
Программа setkeycodes может присваивать дополнитель- своить им соответствующие значения.
ным клавишам те же значения keycode, что и основным. Напри- Этим занимается утилита xmodmap. Снова встает вопрос: каким
мер, можно назначить код клавиши F5 (63) мультимедиа-кноп- образом выбирать keysym и keysymname? На него есть уже более
ке Refresh. Поскольку в большинстве web-браузеров обновление конкретный ответ: в Х Window зарезервировано значительно боль-

Не хотите пропустить номер? Подпишитесь на www.linuxformat.ru/subscribe/!


Май 2009 Linux Format 71
Учебник Мультимедиа-клавиши

ше значений keysym и отвечающих им констант keysymname, чем


способна вместить обычная клавиатура. Узнать об этих соответст-
виях можно, заглянув в /usr/include/X11/XF86Keysym.h или в /usr/
share/X11/XKeysymDB (в man-страницах может быть указано дру-
гое расположение), а несколько пар keysym/keysymname для наи-
более часто встречающихся клавиш приведены во врезке. Содер-
жимое этих файлов дублирует друг друга, так что воспользоваться
можно любым, только следует иметь в виду, что в поле keysym
в /usr/share/X11/XKeysymDB содержатся шестна дцатеричные чис-
ла, то есть к ним следует добавлять префикс ‘0х’. Логично выбрать
такие keysym, для которых keysymname соответствуют обозначе-
ниям на дополнительных клавишах: в дальнейшем это принесет
пользу. Например, для клавиши, обозначенной на клавиатуре как
Messenger, разумно взять keysymname XF86Messenger и соответ-
ствующий ему keysym 0х1008FF8E. Пусть для клавиши Messenger
xev выдает keycode 228; тогда для ее определения в Х Window сле-
дует выполнить команду Как и следовало ожидать, KDE позволяет назначить мультиме-
xmodmap -e “keycode 228 = 0x1008FF8E” диа-клавише практически любое действие: рай для настройщика.
Теперь можно запустить xev и, на жав клавишу Messenger, полу-
чить вывод: тов. Попробуйте, и если это не сработает, создайте в /home/имя_
... пользователя/.kde/Autostart скрипт, содержащий одну команду:
state 0x10, keycode 228 (keysym 0x1008ff8e, XF86Messenger), xmodmap /home/имя_поль зовате ля/.Xmodmap
same_screen YES, Содержимое файла .Xmodmap должно быть примерно следующим:
... !Messenger
Утилита xmodmap предоставляет и альтернативный способ на- keycode 228 = 0x1008FF8E
значения пар keysym/keysymname по keysymname. Выполнение ...
xmodmap -e “keycode 228 = XF86Messenger” Восклицательный знак обозначает комментарии. В конце файла
приведет к тому же результату, что и предыдущая команда, в чем обязательно должна быть пустая строка.
легко убедиться, опять запустив xev.
Проделайте ана логичную процедуру со всеми остальными Опять этот переключатель!
мультимедиа-клавишами. Клавиатура будет работать, но вновь – Вот вроде бы и все, но не тут-то было. Пользователей KDE 3 под-
лишь до перезапуска X Window. Согласно man-странице xmodmap, жидает совершенно неожиданная проблема, сокрытая в недрах
для автоматической загрузки изменений необходимо сохранить многостра дально переключателя раскла док kxkb. Дело в том, что
их в файле .xmodmaprc в домашнем ката логе пользователя. Ино- он выполняет команду
гда упоминается так же файл ~/.Xmodmap, но, как показывает setxkbmap -model xxx -layout yyy -variant zzz
прак тика, ни один из этих способов не дает на дежных результа- то есть при ка ж дом переключении раскла док значение keymap
устанавливается в один из стандартных вариантов, и все сделан-
ные пользователем изменения «забываются». Что делать? По-
Коды, коды, коды... крупному, вариантов здесь два.
Определить необходимые нам клавиши в системных файлах
В таб лице ни же приве дены значения неизвест ные сис теме. На значьте им keycode раскладки клавиатуры.
keycode, keysym и keysymname для некото- из перечис ленных в таблице и исполь зуй- Отказаться от использования kxkb в пользу других переключа-
рых наибо лее рас простра ненных мульти- те в X Window настройки для од ной из муль- телей раскладки, например, xxkb (http://pascal.tsu.ru/other/xxkb/)
ме дийных кла виш. Она будет по лезна в том тиме диа-кла виа тур. Тогда дейст вия по кла- или KKBSwitch (http://kkbswitch.sourceforge.net/).
слу чае, ес ли у вас имеется в на личии кла- вишам будут опре де лены ав тома тически,
виа ту ра, на которой перечис ленные клави-
Первый путь является самым «идеологически верным», ведь
и не при дется во зиться с их на значением
ши отсутст ву ют, за то присутст ву ют дру гие, в X Window. текстовые файлы конфигурации появились в Unix именно для то-
го, чтобы пользователи могли легко разбираться в них и вносить
Клавиша keycode keysym keysymname изменения. Главным возра жением против данного под хода яв-
Internet (Homepage) 150 0x1008FF18 XF86HomePage ляется то, что если система (а точнее сказать, пакеты X Window)
Search 217 0x1008FF1B XF86Search будет обновлена, то все изменения (как и в случае выше) будут
Mail 155 0x1008FF19 XF86Mail потеряны, и нам придется «начинать игру снача ла». Да и не де-
Forward 159 0x1008FF27 XF86Forward ло это: ошибки в kxkb на до исправлять в kxkb, а не строить обход-
Backward 158 0x1008FF26 XF86Back ные пу ти. Впрочем, это больная тема, так что не будем затрагивать
Refresh 173 0x1008FF29 XF86Refresh ее в очередной раз (тем более, что KDE 4 уже вышел).
Stop 128 0x1008FF28 XF86Stop Наи лучшим яв ляется второй путь, имеющий массу плюсов
Play/Pause 164 0x1008FF14 XF86AudioPlay (некоторые вообще не понимают, как мож но работать в KDE 3,
AudioStop 166 0x1008FF15 XF86AudioStop не имея KKBSwitch) и всего один минус: я так и не смог най ти
Prev 165 0x1008FF16 XF86AudioPrev ни одного альтернативного переключате ля раскла док ни в мо-
Next 163 0x1008FF17 XF86AudioNext ем дистрибу тиве openSUSE, ни в дос тупных репо зи ториях. При-
Volume up 115 0x1008FF11 XF86AudioLowerVolume шлось собирать их из исходных текстов – к счастью, для таких
Volume down 114 0x1008FF13 XF86AudioRaiseVolume ма леньких ути лит чис ло зависимостей минимально.
Mute 113 0x1008FF12 XF86AudioMute
Calculator 140 0x1008FF1D XF86Calculator Время действовать
Sleep 142 0x1008FF2F XF86Sleep Итак, мы подошли к фина лу нашего повествования: мультиме-
диа-клавиши определены и распознаются X Window. Оста лось

72 Linux Format Май 2009


 Мультимедиа-клавишиУчебник

Рядом расположены три переключате ля (Нет, По умолчанию и


Дру гая) и квад рат ная кнопка с комбинацией клавиш или сло-
вом Нет. На жми те на нее – появится ок но настройки клавиатур-
ных комбинаций. На ка ж дое действие возмож но настроить две
комбинации клавиш: основную и альтернативную. Ак тивируем
окошко интересующей нас комбинации и на жимаем клавишу
или комбинацию клавиш – на звание на жатой клавиши отобра-
жается немед ленно.
Однако пред ложенные способы не дают возможности запус-
кать сценарии и программы, не включенные в меню KDE, а так же
подставлять параметры. Для реа лизации этой функциональности
необходимо войти в раздел Действия по вводу. Он предоставля-
ет замечательные возможности по назначению действий на раз-
личные клавиши (и не только): от запуска произвольных программ
и скриптов с параметрами, до передачи команд в определенные
приложения и ак тивации за данных пользователем окон. Напри-
мер, я обычно настраиваю клавишу Mail не на запуск почтового
клиента, поскольку у он меня и так открыт постоянно, а на ак ти-
вацию его окна. Таким образом я получаю удобный способ бы-
строго переключения на постоянно работающие приложения.
Думаю, разобраться во всем этом многообразии вы сможете
самостоятельно.
Как вы уже наверняка заметили, этот урок явно тяготеет к KDE;
Настройки Gnome в области мультимедиа-клавиш смотрятся чтобы не быть обвиненными в предвзятости, ска жем пару слов
более бледно, но со своими задачами тоже справляются.
и о Gnome. Здесь вам на помощь придет Центр управления Gnome
(gnome-control-center), позволяющий назначить отдельным кла-
применить их для каких-нибудь полезных целей: увеличения или вишам команды в разделе Личная. Там вы найдете три подраз-
уменьшения громкости, запуска web-браузера и так да лее. Для дела: Рабочий стол, Звук и Управление окнами, в которых можно
этого откройте Центр управления KDE и перейдите все в те же произвести кое-какие настройки.
Региональные и специальные возможности. Определение дей- В заключение, тем, кто желает настроить дополнительные кла-
ствий производится в разделах Комбинации клавиш и Действия виши на клавиатуре или дополнительные комбинации клавиш под
по вводу. свои потребности вне зависимости от используемого оконного
В разделе Комбинации клавиш есть три вкладки. В первой, менед жера и окру жения рабочего стола, я бы посоветовал давно
Схемы привязок, опять же содержится три вкладки: Глобальные не обновлявшуюся, но не ставшую от этого менее замечательной
привязки, Последовательности привязок и Привязки для прило- программу Sven (http://sven.linux.kiev.ua/). Она представляет со-
жений. В первых двух вклад- бой простой графический кон-
ках можно определить кнопки
и комбинации, которые будут
«На каждое действие фигуратор и позволяет легко
настроить действия по допол-
управлять различными аспек-
тами работы KDE – переключе-
можно настроить две нительным клавишам и клави-
атурным комбинациям. Плюс
нием рабочих столов, сворачи- комбинации клавиш.» ко всему, программа прекрас-
ванием окон и тому подобным. но интегрируется в системный
Третья вкладка позволяет определить единые комбинации кла- лоток Gnome, KDE и IceWM (другие оконные менед жеры я просто
виш для различных действий во всех приложениях KDE (напри- не проверял) и имеет некоторые дополнительные функции, напри-
мер, Cut, Copy, Paste, Open, Close и так да лее). Следует заметить, мер, OSD (On Screen Display) или режим работы в качестве пере-
что все эти настройки будут работать только в приложениях KDE. ключателя раскладок клавиатуры. Последнее обстоятельство де-
Другие программы могут иметь для тех же действий свои комби- лает ее применение особенно оправданным в KDE 3. LXF
нации клавиш. Кроме того, есть еще одна приятная возможность,
связанная с приложениями KDE: в ка ж дой конкретной программе
можно определить свою комбинацию клавиш для какого-то дей-
Sven: тот самый
ствия, а потом сделать ее глобальной. Например, и в KMix (стан- случай, когда ста-
дартном микшере KDE), и в Amarok можно назначить клавиши, рый конь борозды
управляющие громкостью звука, при этом уровни будут незави- не испортит.
симы друг от друга (100% громкости в Amarok будут соответст-
вовать уровню, установленному в общесистемном микшере). То-
гда можно выставить громкость микшера большой и уменьшить
ее в Amarok, чтобы хорошо слышать системные звуки. Согласен,
пример несколько наигран: такого эффек та можно достичь и дру-
гими способами. Но, думаю, суть вы уловили.
Последняя вкладка – Привязка для приложений – позволяет
назначить клавишу (или комбинацию клавиш) для запуска любого
приложения, присутствующего в меню KDE.
Как же на значить дейст вие по кнопкам? Выбери те какой-ни-
будь пункт из перечня, ска жем, Заблокировать сеанс. В ниж-
ней час ти ок на есть раз дел Клавиша для выбранного дейст вия.

Май 2009 Linux Format 73


Pthreads Обработаем
исключениякорректно

C++: Исключение
Андрей Кузьменко протестирует различные способы обработки исключений
в многопоточных Linux-приложениях и сделает соответствующие выводы.

Экскурс в историю
Как известно, стеку потока выделяется область из стекового раз-
дела процесса. Стек потока используется для хранения стеково-
го кадра, связанного с ка ж дой функцией, которая была вызва-
на, но не была завершена. Стековый кадр содержит временные
и локальные переменные, адреса точек возврата – ту информа-
цию, которая необходима потоку, чтобы корректно работать с ра-
нее вызванными функциями и потоковыми переменными. При вы-
ходе из функции её кадр извлекается из стека.
Выполнение потоковой функции может быть прервано по при-
чине «естественного завершения» оператором return или в ре-
зультате вызова функции pthread_exit(). Что при этом будет про-
исходить с объек тами пользовательских классов, являющихся
данными потоковой функции и имеющими тип памяти auto? В до-
кументе The Open Group Base Specifications Issue 6 IEEE Std 1003.1,
2004 Edition, в разделе, посвященном функции pthread_exit() ска-
зано следующее [здесь и да лее – перевод автора]:
«Функция void pthread_exit(void *value_ptr) завершает вызы-
вающий поток и делает значение value_ptr доступным для успеш-
ного присоединения к завершающему потоку. Любые обработчи-
ки отмены, помещенные в стек, но ещё не извлеченные из него,
будут извлечены в порядке, обратном по отношению к порядку
помещения в стек, а после – выполнены. Если потоку принад ле-

О
бязательным этапом процесса написания любой ма ло- жат данные, то после выполнения всех обработчиков отмены бу-
мальски сложной программы является создание блоков дут вызваны соответствующие функции деструк торов, при этом
кода, ответственных за обработку различных ошибок порядок их вызова не определен. При завершении потока ресурсы
и нештатных ситуаций. В C эта за дача обычно решается проверкой процесса, включая мьютексы и дескрипторы файлов, не освобо-
кодов возврата функций. В Java или Mono очень распространен ж даются, и не выполняются никакие восстановительные действия
механизм исключений, являющийся неотъемлемой частью как са- уровня процесса, включая вызовы любых функций atexit( ), какие
мих платформ, так и языков, с ними связанных. Что касается С++, только могут быть». То есть, если некий объект представляет со-
Наш то здесь ка ж дый волен сделать выбор меж ду этими двумя пу тя- бой локальную переменную потоковой функции с классом памя-
эксперт ми самостоятельно. Отметим, что механизм обработки исключе- ти auto, то после вызова функции pthread_exit() для него должен
Андрей Кузьменко ний не был встроен в С++ изначально. Однако по инициативе ко- быть автоматически вызван деструк тор. Однако, как показывает
Убеж денный сто- митета ANSI в язык были добавлены блоки try … catch, и перед прак тика, бывают случаи, когда деструк торы для локальных объ-
ронник на дежного
ПО и любитель
разработчиками появились новые возможности: с одной стороны, ек тов не вызываются.
C++. Из всех дист- для повышения на дежности программ, с другой – для добавле- Рассмотрим следующую программу:
рибу тивов Linux ния в них ошибок. void* task1(void *X) {
отдаёт предпочте- Главное преимущество исключений в том, что их нельзя «про- std::cout<<“ Start task_1!”<<std::endl;
ние Knoppix.
игнорировать» или «забыть». Однако для эффек тивного исполь- checker P(“First”); P.calc(5);
зования данного механизма программа должна изначально про- pthread_exit(NULL);
ек тироваться с учетом всех особенностей и нюансов как самих return (0);
исключений, так и языка С++. Да-да, такая вот дуальность... }
В рамках данной статьи мы «покусимся» на «святая святых» – void* task2(void *X) {
на обработку исключений в многопоточных приложениях, а имен- std::cout<<“ Start task_2!”<<std::endl;
но – применение этого механизма в программах, использующих checker Q(“Second”); Q.calc(8);
Pthreads. Данная тема освещена в популярной литературе весьма return (0);
скудно: в одних источниках вскользь упоминается, что, дескать, }
в многопоточных приложениях можно использовать обработ- int main(void){
ку исключений, но это сложно; в других вообще ничего не пишут. std::cout<<“ Start test #1!”<<std::endl;
По мере своих возможностей я постараюсь восполнить этот про- pthread_t threadA, threadB;
бел на одном интересном и поучительном примере. pthread_create(&threadA, NULL, task1, NULL);

74 Linux Format Май 2009


 НадежныйC++Учебник

утечек Исходный код


тестовых программ
Статья из LXF108

pthread_detach(threadA); void do_some_work( )


pthread_create(&threadB, NULL, task2, NULL); {
pthread_detach(threadB); if(...) throw ThreadExeption( );
pthread_exit(NULL); }
return (0); void* thread_function(void* )
} {
Здесь объявлены две потоковые функции: task1() и task2(). В ка ж- try {
дой из них в качестве элемента данных используется объект поль- do_some_work( );
зовательского класса checker (LXF108). Функция task1() заверша- }
ется принудительно с помощью pthread_exit(), а task2() выходит catch(ThreadExeption e) {
«естественным образом». При этом потоки создаются как откреп- e.do_exit( );
лённые, то есть при их завершении ресурсы, которые они исполь- }
зова ли, сразу освобож даются и возвращаются системе. }
Корректно работающая программа должна вывести на экран Метод do_exit() класса ThreadExeption, вызываемый в обработ-
два сообщения ‘Destructor done!’ от объек тов First и Second. Зачас- чике исключения, является «оберткой» для функции pthread_ex-
тую так и происходит, но в [сравнительно старой] системе ALT Li- it(). Суть метода в том, что прямой вызов pthread_exit() заменяет-
nux 3.0.4 (gcc 3.4, glibc 2.3) имеем: ся на генерацию исключения и его обработку.
[altlinux@Compact altlinux]$ ./test_1
Start test #1! Доверяй, но проверяй!
Start task_1! Теоретически, данный способ выглядит изящно и заманчиво, од-
Constructor done! Name:First нако на страницах книги пред ложена лишь схема его применения,
Start task_2! но не приводится законченный программный код, который можно
Constructor done! Name:Second набрать, скомпилировать и посмотреть на результат его работы.
Destructor done! Name:Second Насколько это всё хорошо с прак тической точки зрения? Для отве-
[altlinux@Compact altlinux]$ та на этот вопрос составим небольшую тестовую программу (пол-
Мы видим, что деструк тор объек та из потоковой функции task1() ный текст ищите на LXFDVD):
вызван не был! В качестве одного из решений данной проблемы class EX_T
мы рекомендова ли (LXF108) использовать «песочницу», т.е. ра- {
ботать со всеми объек тами с типом памяти auto в пределах блока, public:
выделенного в тексте программы фигурными скобками {…}. При EX_T( ) { cout<<“ EX_T constructor!”<<endl; }
выходе из такого блока происходит автоматический вызов дест- ~EX_T( ){ cout<<“ EX_T destructor!”<<endl; }
рук торов, после чего можно вызывать pthread_exit(). Второй ва- void do_exit(void) { pthread_exit(NULL); }
риант – использовать «ручное» управление памятью посредством };
операторов new и delete. void func_throw(void)
{
есть идея! checker Z(“In Function object”);
В книге Марка Митчелла, Джеффри Оулдема и Алекса Самью- void *condition;
эла [Mark Mitchell, Jeffrey Oldham, Alex Samuel] «Advanced Linux Z.calc(4);
Programming» (www.advancedlinuxprogramming.com) пред лагает- condition = NULL;
ся другой способ: «когда объект выходит за пределы своей облас- if(condition==NULL) throw EX_T( );
ти видимости, либо по достижению конца блока, либо вследст- }
вие возникновения исключительной ситуации, среда выполнения void* task1(void *X)
С++ гарантирует вызов деструк торов для тех автоматических пе- {
ременных, у которых они есть. Это удобный механизм очист- try {
ки, работающий независимо от того, как осуществляется выход
из конкретного программного блока. … Поскольку исключение Для отладки
перехватывается на самом верхнем уровне потоковой функции, многопоточных
все локальные переменные, на ходящиеся в стеке потока, будут изображений суще-
уда лены правильно». [цитата приводится по русскому изданию ствуют продвину-
тые инструменты,
книги: Митчелл М., Оулдем Д., Самьюэл А. Программирование для
но нам хватит
Linux. Профессиональный под ход. Пер. c англ. – М. : Издательский простого std::cout.
дом «Вильямс», 2002., ныне исчезнувшему из прода жи, – прим.
ред.]. Авторская реа лизация метода (см. раздел 4.3.2 «Очистка по-
токовых данных в C++» в указанной выше книге) выглядит так:
class ThreadExeption{/*Здесь соответст вующий код реа лиза-
ции класса*/}

Май 2009 Linux Format 75


Учебник НадежныйC++

MPentoo — о на личии либо отсутствии утечек памяти при использовании


в сущности, объек тов пользовательских классов совместно с функциями биб-
неплохой (хотя лиотеки Pthreads.
и не новый) Что мы ожидаем увидеть на экране после завершения работы
дистрибутив
программы? Во-первых, сообщение о запуске основного потока:
с рабочим столом
Enlightenment, ‘Start test #1!’, во-вторых, сообщения о работе потоковых функций
но в нашем тесте и конструк торов с деструк торами в них. Разумеется, мы хотим,
он показал себя чтобы количество вызов конструк торов и деструк торов было бы
не с лучшей одинаковым.
стороны. Вот результат работы программы в Mandriva 2009.0 Free:
[andy@localhost code_cpp]$ ./test_4
Start test!
Start task_1!
Constructor done! Name:In try-block object
Constructor done! Name:In Function object
Start task_2!
cout<<“ Start task_1!”<<endl; Constructor done! Name:KNOPPIX
checker A(“In try-block object”); EX_T constructor!
func_throw( ); Destructor done! Name:In Function object
} Destructor done! Name:In try-block object
catch(EX_T& e) { EX_T destructor!
e.do_exit( ); Destructor done! Name:KNOPPIX
} [andy@localhost code_cpp]$
return 0; Как можно видеть, он полностью соответствует нашим ожи-
} даниям. В task_1() создаются два объек та класса checker (один –
void* task2(void *X) в func_throw), а в task_2() – один такой объект. В ходе работы пер-
{ вой потоковой функции генерируется исключение, что приводит
std::cout<<“ Start task_2!”<<std::endl; к запуску двух деструк торов потоковых объек тов и, в конечном
checker Q(“KNOPPIX”); счёте, деструк тора для объек та-исключения. По завершению вто-
Q.calc(8); рой потоковой функции вызывается деструк тор для потокового
return (0); объек та. Всё так, как и должно быть.
} А вот результат работы программы в MPentoo 2006.1
int main(void) (http://pentoo.ch):
{ mpentoo home # ./test_4
std::cout<< “ Start test!”<<std::endl; Start test!
pthread_t threadA, threadB; Start task_1!
pthread_create(&threadA, NULL, task1, NULL); Constructor done! Name:In try-block object
pthread_detach(threadA); Constructor done! Name:In Function object
pthread_create(&threadB, NULL, task2, NULL); Start task_2!
pthread_detach(threadB); Constructor done! Name:KNOPPIX
pthread_exit(NULL); EX_T constructor!
return (0); Destructor done! Name:In Function object
} Destructor done! Name:In try-block object
Класс checker, расположенный в файле checker.hpp, обла дает «го- Destructor done! Name:KNOPPIX
ворящими» конструк тором и деструк тором, метод calc() имитиру- mpentoo home #
ет длительную по времени расчётную за дачу, а say_hello() выводит Вроде бы всё, как и в примере выше, но постойте! Нет вызова дест-
сообщение на консоль. Объек ты класса используются в качестве рук тора для объек та исключения! Вот это номер...
элементов данных в потоковых функциях.
EX_T – это класс, реа лизующий сущность «потоковое ис- Шило на мыло...
ключение». Метод do_exit() является обёрткой для функции Результат, полученный в ходе тестирования, безусловно, требу-
pthread_exit(). ет дальнейшего ана лиза. Попробуем разобраться в причинах про-
Функция func_throw() имеет в качестве элемента данных объ- изошедшего.
ект класса checker с типом памяти auto. В ходе своей работы функ- Во-первых, почему для проверки были выбраны именно
ция генерирует исключение в виде объек та класса EX_T. Mandriva 2009.0 Free и MPentoo 2006.1? Ответ прост: Mandriva –
Функция task1() является потоковой. В качестве элемента дан- это максимально свежий Linux из всех, что у нас были на момент
ных она использует объект класса checker и вызывает функцию подготовки статьи, а MPentoo – один из двух дистрибу тивов, пока-
func_throw(). Завершение потоковой функции происходит посред- завших неудовлетворительный результат в статье LXF108. В чис-
ством вызова pthread_exit() в обработчике исключения. Функция ле его проблем было и освобож дение памяти после выполнения
task2() так же является потоковой и использует в качестве элемен- функции pthread_exit(). Что касается ключевых параметров этих
та данных объект класса checker, однако завершение task2() про- двух дистрибу тивов, то они таковы:
исходит через вызов оператора return. Функция main() не отлича- Mandriva 2009.0 Free: ядро 2.6.27, gcc 4.3.2, glibc 2.8,
ется от таковой в первом примере. libstdc++ 5.0.7/6.0.10
Поскольку все классы в этой программе имеют «говорящие» MPentoo 2006.1: ядро 2.6.16, gcc 3.3.6, glibc 2.3.6, libstdc++ 5.0.7
конструк торы и деструк торы, мы можем легко отследить после- Во-вторых, давайте корректно сформулируем, в чем состоит
довательность их вызовов, что даст нам возможность судить обнару женная нами проблема. Реа лизованный способ был осно-

76 Linux Format Май 2009


 НадежныйC++Учебник

ван на использовании возможностей, обеспеченных стандартом Как можно видеть, здесь программа вообще завершилась
языка. Авторы книги утверждают, что «исключение перехватыва- аварийно.
ется на самом верхнем уровне потоковой функции, все локальные В-четвёртых, можно ли решить эту проблему работы с ис-
переменные, на ходящиеся в стеке потока, будут уда лены правиль- ключениями «ма лой кровью», используя какой-нибудь хитрый
но». На самом деле всё происходит несколько иначе: локальные и изящный программистский трюк? Отвечу так: решить проблему
переменные, на ходящиеся в стеке потока при использовании дан- освобож дения памяти можно, решить проблему исключений – нет.
ного метода, могут быть уда лены, а могут быть и не уда лены. Вме- Любители трюков могут вспомнить, что исключение – это не обя-
сто утечки памяти через объек ты данных пользовательских клас- зательно объект класса в терминах объектно-ориентированного
сов, мы сталкиваемся с проблемой освобож дения памяти после программирования. Стандарт языка вполне допускает генерацию
обработки объек та-исключения, который сам на ходится в адрес- исключения посредством базовых примитивных типов данных.
ном пространстве потока. В обоих случаях стек один и тот же! Иными словами, мы можем написать в программе throw 55 или
В общем, мы сменяли шило на мыло. Хочется обратить внимание throw “Problem!”. Соответственно, в этом случае блок обработки
читателя на то, что в различной литературе по языку С++ исклю- исключения может быть, например, таким:
чения очень часто трак туются как некий флаг, сигна лизирующий catch(int)
о том, что в программе что-то произошло. Это ошибочное и вред- {
ное представление! Фраза «исключение есть объект класса» озна- pthread_exit(NULL);
чает, что его информационная и функциональная насыщенность }
может быть очень и очень велика. Объём данных, который несет Помимо того, что это скверный приём программирования сам
в себе объект-исключение, может быть существенно выше того, по себе, нашу проблему он всё равно не решает. Запуск подобно-
что хранится в «простых» объек тах, и утечка памяти здесь может го тестового примера в системе QNX 6.2.1 выдаёт всё тот же ‘Abort
стоить очень дорого. (core dumped)’. Вот так...
В-третьих, на до решить, насколько масштабна данная угро-
за? Тут следует сделать одно весьма важное замечание. Библио- Время собирать камни
тека Pthreads есть прак тически в любой UNIX-подобной системе, Какие выводы можно сделать на основе всего вышеизложенного?
будь то Linux, FreeBSD или QNX. Вне зависимости от конкретной Применение механизма обработки исключений с целью принуди-
ОС, которую предстоит использовать, методология везде оди- тельного автоматического запуска деструкторов объектов потоко-
наковая, и программный интерфейс один и тот же. Исследова- вой функции в случае её завершения посредством вызова pthread_
ние, результаты которого были опубликованы в LXF108, показа- exit() с практической точки зрения бесполезно. Если операционная
ло, что для корректной и на дёжной работы функций библиотеки система не имеет проблем с обслу живанием потокового стека,
Pthreads с объек тами пользовательских классов необходимо, что- то применение механизма генерации и обработки исключений изна-
бы версии ядра и ключевых системных библиотек операционной чально избыточно, поскольку прямой вызов функции pthread_exit()
системы Linux были не ниже определённых. Поспешу успокоить не провоцирует ошибок освобож дения памяти. Если же система не
читателей: проблема освобож дения памяти, занимаемой автома- умеет корректно поддерживать потоковый стек, то, как было пока-
тическими переменными, при вызове pthread_exit(), уже решена зано на примерах, механизм исключений тут ничем не поможет.
прак тически для всех современных дистрибу тивов Linux; однако Обработка исключений в многопоточных приложениях, реа ли-
не стоит забывать о безопасности работы в других операционных зованных с использованием библиотеки Pthreads, будет безопас-
системах и принципах на дёжного программирования, которые от на лишь в том слу чае, если операционная система, в которой будет
используемой ОС зависеть не должны. выполняться программа, не имеет проблем с обслу живанием по-
Что касается прочих UNIX’ов, то я не готов назвать конкрет- токового стека. Если в работе нужно использовать некоторую биб-
ные условия, при удовлетворении которых можно рассчитывать лиотеку, функции которой генерируют исключения, то обязатель-
на отсутствие проблем в работе (хотя бы потому, что UNIX’ов мно- но на до протестировать целевую систему на предмет корректной
го, а я один), однако могу привести результат выполнения нашей под держки потокового стека. Может быть, поэтому Qt принципи-
тестовой программы в среде QNX 6.2.1: ально не использует исключений до сих пор?
# ./test_4 Если же система испытывает проблемы с корректным обслу-
Start test! живанием потокового стека, то единственный на дёжный приём
Start task_1! по управлению памятью в потоковой функции, который не зави-
Constructor done! Name:In try-block object сит ни от версии системных библиотек, ни от типа операционной
Constructor done! Name:In Function object системы – это ее выделение и освобож дение посредством вызо-
Start task_2! ва операторов new и delete. Фак тически, происходит отказ от ра-
Constructor done! Name:KNOPPIX боты со стеком в пользу работы с кучей. Проблемы в обслу жива-
EX_T constructor! нии потокового стека не позволяют использовать для управления
EX_T destructor! блоками динамической памяти аппарат интеллек туальных указа-
Abort (core dumped) телей (smart pointers), поэтому все действия приходится осущест-
# влять вручную. LXF

Системные характеристики
Ниже перечислены основные компоненты дистрибу тивов и операционных систем, на которых проводилось тестирование:
Дистрибу тив/ОС Ядро Linux GCC Glibc Libstdc++ Тест пройден?
Mandriva 2009.0 Free 2.6.27 4.3.2 2.8 5.0.7 / 6.0.10 Да
MPentoo 2006.1 2.6.16 3.3.6 2.3.6 5.0.7 Нет
QNX 6.2.1 NC* — 2.95.3 Неприменимо 2.10.0 Нет
* Вместо библиотеки glibc в операционной сис теме QNX используется своя собственная. Нумерация библиотеки libstdc++ здесь тоже «фирменная».

Май 2009 Linux Format 77


Спутники и Linux Любимыепрограммы
влюбимойОСвцифровомкачестве

ТВ: Охотимся за
Часть 1: Избавьтесь от телевизора и абонентской платы за антенну – ведь у вас
есть компьютер! Андрей Прахов расскажет, что потребуется сверх этого.

мостоятельно. Вот только не спешите! Определитесь снача ла


с провайдером, и соответственно, со спутником, на который будет
настроена система. Не секрет, что на пу ти «тарелки» не должно
быть экранирующих объек тов. Если вы желаете работать, к при-
меру, со спутником Express AM22, а в месте его предполагаемо-
го на хож дения на ходится глу хая стена высотного дома, то в луч-
шем случае вам грозит подслушивание соседских разговоров,
а не пляски под музыку MuzTV. Ознакомьтесь с пред ложениями
провайдеров и списком под держиваемых спутников и подберите
себе наиболее под ходящий.
Интернет пестрит большим количеством статей по монта жу
и настройке «тарелок». И вот мой вам первый совет – доверьте
это дело специа листу. Если собственно установка тарелки и платы
в компьютер не особенно сложна, то процесс поиска необходимо-
го спутника сопряжен с большими трудностями. Не рассчитывай-
те обойтись обычным компасом и полузабытыми школьными зна-
ниями об ориентировании на местности. Необходима специальная
аппаратура и солидный опыт в этой области деятельности. Не-
большой перекос «тарелки» на несколько миллиметров может оз-
начать ухудшение качества, а то и вовсе потерю сигна ла. Если вы
все же решили обойтись собственными силами, то приготовьтесь
к долгому и изнурительному стоянию на свежем возду хе. Обычно
процесс самостоятельной настройки выглядит следующим обра-

И
так, вы ста ли счастливым обла дателем комплек та спут- зом: один человек сканирует предполагаемое место на хож дения
никового оборудования и спешите домой в предвкуше- спутника по горизонта ли и вертика ли, мед ленно сдвигая тарел-
нии качественного Интернета, а может быть, большого ку, другой сидит за компьютером и следит за качеством сигна ла.
количества интересных телекана лов. Как бы то ни было, спер- Прибавьте к этому свойство компьютерных тюнеров не мгновен-
ва предстоит тяжелая работа по установке и настройке приобре- но реагировать на изменения уровня, и вы прочувствуете всю пре-
Наш тенного оборудования. Многие предпочитают заняться этим са- лесть подобных экспериментов.
эксперт
Андрей Пра хов
Интересуется трех-
мерным модели- Часть 1 Железный вопрос
рованием и раз-
работкой игр.
Участник несколь- А будет ли это работать? Вот, наверное, главный вопрос, который Не секрет, что многие устройства DVB известных и не очень
ких игровых про- интересует любого линуксоида. Современное ядро способно об- известных брендов основаны на распространенных чипах треть-
ек тов, представи-
нару жить и подобрать под ходящие модули для достаточно боль- их фирм. Иногда бывает дос таточно подобрать модули, обеспе-
тель СМИ.
шого количества тюнеров DVB-S. Но, как говорится, в семье не без чивающие работу сторонней платы, построенной на том же чипе,
урода. Вполне вероятно, что свежекупленная плата не горит жела- что и ваша. Однако для этого необходимо выяснить, какая мик-
нием работать в Linux (подробности ищите в Сравнении LXF106), росхема используется в приобретенном тюнере. Для этого нет
а на сайте разработчика в лучшем случае висит обещание обеспе- ну ж ды разбирать компьютер и рассматривать плату. Linux име-
чить под держку этой системы когда-нибудь в будущем. К счастью, ет полезную команду, позволяющую определить все устройст-
мир не без добрых людей, и если хорошенько поискать, то можно ва, расположенные на шине PCI. Откройте терминал и введите
найти хоть и «самопальные», но вполне работающие драйвера. следующее:
Самый простой способ выяснить, определило ли ядро тю- $ lspci
нер – это заглянуть в ката лог /dev. Просто наберите в командной Эта команда выведет список периферийных устройств вашего
строке: компьютера, среди которых необходимо отыскать DVB-тюнер. Как
$ ls /dev правило, помимо названия фирмы-производителя приводится
Если вы увидите в выводе папку dvb, то можете смело пропустить и наименование используемого чипа. Если ваше устройство не яв-
все написанное ниже и перейти к следующей части статьи. Тем, ко- ляется платой PCI, а подключается через USB, то следует исполь-
му не повезло, придется читать дальше. зовать команду lsusb.

78 Linux Format Май 2009


 DVB-SУчебник

спутником
Ищите драйвер За под держку мультимедиа-устройств в Linux, как то:
Итак, с названием чипа мы разобра лись. Что же дальше? Впол- ТВ-тюнеры, платы DVB или карты видеозахвата, отвечает под- Скорая
помощь
не вероятно, что необходимые для под держки устройства модули система video4linux. Свежайшее обновление модулей и V4L мож-
уже имеются в системе, но по каким-то причинам не были загру- но найти на сайте разработчика: linuxtv.org. Там же имеется спи-
По умолчанию,
жены. Значит, нужно отыскать по известному названию драйвер сок под держиваемых устройств. Если поиск на сайте не увенчался команды lspci
и попытаться запустить его вручную. успехом, стоит попробовать сборки других разработчиков. К при- и lsusb доступны
Имеющиеся модули ядра для DVB располагаются, как прави- меру, очень интересен пакет модулей Игоря Липлянина [Igor M. обычным пользо-
ло, в ката логе /lib/modules/номер_ядра/kernel/drivers/media/dvb/. Liplianin], который можно скачать по адресу: http://liplianin.at.tut. вателям и распо-
ложены в ката логе
Просмотреть их можно командой ls: by/. (эти драйвера вошли в версию ядра 2.6.28). Как бы то ни было, /usr/bin. Если вме-
# ls /lib/modules/2.6.25-std-def-alt8.M41.1/kernel/drivers/media/ скачанные модули следует скомпилировать и установить в своей сто вывода списка
dvb/ системе. Но этот шаг – гораздо менее болезненный, чем пересбор- устройств терми-
b2c2 cinergyT2 dvb-core frontends siano ttusb-budget ка всего ядра с нуля. нал выдает сооб-
щение об ошибке,
bt8xx dm1105 dvb-usb pluto2 ttpci ttusb-dec
Под держиваемые устройства сгруппированы по названию чипа Собери сам то, вполне веро-
ятно, у вас они
или способу подключения. К примеру, ката лог dm1105 содержит Для компиляции скачанных модулей понадобятся исходные тексты доступны только
драйвера для тюнеров Tevii S-400 и DVBWorld. Если вы определи- и заголовочные файлы ядра (kernel headers), утилита make, компи- для пользовате-
лись с под ходящим драйвером, то самое время попробовать за- ляторы. Установите все это с помощью менед жера пакетов вашего ля root. Для пере-
хода в режим су-
грузить его. Для этого слу жит команда modprobe, выполняемая дистрибу тива. Порядок сборки драйверов ничем особо не отлича- перпользователя
из-под root. Например, для платы Tevii S-400 скомандуйте: ется от компиляции иного приложения, за одним только исклю- слу жит команда
# modprobe s400 чением: необходимо предварительно создать правила для make, su или связка sudo
Обслу живание DVB-устройства обеспечивается не одним, а не- проще говоря, выбрать нужные модули. Так как порядок установ- lspci – последний
вариант исполь-
сколькими модулями, но об этом можно не беспокоиться, так как ки может несколько различаться в зависимости от разработчика,
зуется в дистри-
при загрузке основного модуля автоматически «поднимутся» то советую перед этим прочитать файлы README и INSTALL. бу тивах на осно-
и вспомогательные. Чтобы убедиться в этом, используйте коман- Распакуйте в под ходящее место пакет драйверов и перейди- ве Ubuntu. Кроме
ду lsmod. Она предназначена для вывода списка модулей, подгру- те в его корень. В целом алгоритм работы выглядит следующим того, можно ис-
женных в ядро. Рациональнее всего использовать lsmod в связке образом: пользовать коман-
ду whereis lspci,
с командой grep, которая умеет фильтровать поток информации 1 выбор необходимых модулей для компиляции;
она указывает
по за данному критерию: 2 собственно компиляция;
местона хож дение
# lsmod | grep dvb 3 ус тановка. исполняемого
dvb_pll 13448 1 Часто можно увидеть пред ложение сделать символьную ссыл- файла.
dvb_core 93696 2 s400,stv0299 ку /usr/src/linux, указывающую на ката лог с исходными текста-
i2c_core 28820 9 dvb_pll,s400,i2c_algo_bit,v4l2_com
mon,tveeprom,stv0299,nvidia,i2c_nforce2
Ес ли после выполнения команды modprobe в ката логе /dev
обнару жится завет ная папка dvb, то счи тай те за дачу выпол-
ненной. При неудаче мож но попробовать исполь зовать дру-
гие под ходящие драйвера, только не забудьте перед этим уда-
лить из сис темы ненуж ные. Для этого слу жит команда rmmod.
Например:
# rmmod -f s400
Параметр -f (force) слу жит для жесткого уда ления модуля, да же
если он используется другими программами. Естественно, уда-
лить нужно так же и те модули, что загрузились дополнительно.
Что же делать, если ни один из потенциальных модулей, имею-
щихся в системе, не подошел для вашей карты? Некоторые про-
двину тые пользователи могут посоветовать обновить ядро на бо-
лее свежее, уповая на то, что оно сможет определить устройство.
Хотя процедура компиляции ядра расписана и «разжевана» мно-
гими источниками информации (например, http://wiki.linuxformat.
ru/index.php/LXF89:Hardcore_Linux), это действие остается доста-
точно трудоемким, как по времени настройки, так и по времени
Настраиваем каналы в Kaffeine.
компиляции. Имеется более простой выход.

Не хотите пропустить номер? Подпишитесь на www.linuxformat.ru/subscribe/!


Май 2009 Linux Format 79
Учебник DVB-S

ми ак туального ядра, но мы пойдем другим пу тем и воспользу- make xconfig или make gconfig – работа с графическими
емся дирек тивой release для команды make. Сделать это можно оболочками.
в два шага: Особо ленивые или уверенные в том, что необходимые драйве-
$ uname -r # узнаем версию яд ра ра по умолчанию компилируются безо всей этой волокиты, могут
$ make release VER=на звание яд ра # передаем скопированное использовать команду make all.
на звание яд ра Настает самый важный этап – компиляция. Достаточно ввести
Процесс конфигурации состоит в выборе под ходящих моду- в командной строке make, и процесс пойдет. Обычно, в зависимо-
лей для последующей компиляции и производится пу тем отве- сти от выбранных модулей и мощности компьютера, он занимает
та на достаточно большое количество вопросов. Существует не- несколько десятков минут.
сколько способов: Если под конец компиляции не будет сообщений об ошибке,
make config – за дается тысяча и один вопрос, на которые нужно то можно приступить к установке (из-под root):
ответить «Y» (да), «N» (нет), «M» (модуль). Для вывода справки по # make install
текущему пунк ту можно использовать «?». Вот и все. Для проверки на личия новых модулей можно перей-
make menuconfig – в термина ле выводится интерак тивная обо- ти в ката лог: /lib/modules/номер_ядра/kernel/drivers/media/dvb/.
лочка, где все эти вопросы представлены более удобно: в виде Теперь остается только перезапустить компьютер или подгрузить
системы меню. необходимые драйвера вручную.

Часть 2 По волнам эфира


Спутниковые карты DVB-S, помимо основной своей функции – ра- Программа под держивает большое количество спутников «из
боты с Интернетом, позволяют принимать теле- и ра диопередачи. коробки», но может быть и так, что необходимого вам там нет. За-
Завидное цифровое качество и большой выбор транслируемых дача добавления нового спутника решается очень просто. Все па-
кана лов смотрится гораздо привлекательнее, нежели обычное раметры хранятся в отдельных текстовых файлах, которые могут
ана логовое вещание. Грешно не воспользоваться подобной воз- быть найдены в домашней дирек тории пользователя:
можностью. $ ls .kde/share/apps/kaffeine/
Для просмотра спутниковых кана лов в Linux чаще всего ис- atsc dvb-c dvbrc icons wizard_stamp_v0.7.1
пользуются программы Kaffeine, MPlayer, VLC. Начнем с первого channels.dvb dvbdata.tar.gz dvb-s playlists
номера, а именно, с Kaffeine. covers dvbepg.data dvb-t timers.dvb
Поставляемая со многими дистрибу тивами и ориентирован- Обратите внимание на папку dvb-s: именно она содержит искомые
ная на KDE, эта программа позволяет слушать музыку, смотреть файлы. Создайте в ней новый файл с названием вашего спутни-
видеофайлы, DVD и, конечно же, цифровое ТВ. Как правило, после ка. Оста лось только заполнить его содержимое. Для этого можно
определения платы и появления в ката логе /dev устройства dvb, воспользоваться информацией на сайте www.lyngsat.com. Найди-
Kaffeine уже готов работать. После запуска программы, в главном те там свой спутник и перепишите данные необходимых кана лов.
окне должна появиться кнопка Цифровое ТВ. Вам пона добятся такие параметры, как частота, скорость потока,
Процесс настройки очень простой. Выберите в меню DVB пункт FEC, поляризация (вертикальная или горизонтальная). Заполните
Настройка DVB или на жмите сочетание клавиш Ctrl+C. Откроет- файл в соответствие с приведенном примером:
ся окно, где можно указать параметры конвертора [LNB settings] # Express AM 22_53E
и выбрать спутник из имеющихся заготовок. В большинстве слу- # freq pol sr fec
чаев в бытовых «тарелках» применяется универсальный конвер- S 11044000 V 44950000 3/4
тор, и по умолчанию Kaffeine настроен именно на него. S 10974000 H 8150000 3/4
S 11031000 H 3750000 3/4
S 11096000 V 6400000 3/4
S 11124000 V 7593000 3/4
S 11161000 V 5785000 3/4
Теперь перезапустите программу и выберите свой спутник из
списка.
Процесс поиска кана лов в Kaffeine чрезвычайно прост. Выбе-
рите в меню DVB пункт Поиск кана лов. На жмите кнопку Сканиро-
вать в появившемся окне и спокойно идите заниматься своими
делами. Через несколько минут программа должна отобразить
список обнару женных кана лов в правой части окна. Оста лось
только выделить их и на жатием кнопки Добавить выбранное пе-
ренести в левую рабочую область. Не забудьте подтвердить про-
деланные изменения при выходе. Просмотр найденных кана лов
возможен при выборе закладки Цифровое ТВ на левой боковой
панели программы. Вот и все, можете насла ж даться результата-
ми своего труда.

Другое кино
Для тех, кто не приемлет Kaffeine в качестве плейера по умолча-
нию, рассмотрим работу с программами VLC и MPlayer.
Работа позади — теперь можно и «телевизор» посмотреть. VLC (Video LAN Client) есть нечто большее, чем просто проигры-
ватель: он предназначен для трансляции видеопотока через сеть.

80 Linux Format Май 2009


 DVB-SУчебник

Но рассмотрение этой возможности выходит за рамки сегодняшне-


го урока; остановимся исключительно на поддержке DVB.
Все настройки DVB можно найти в специальном окне, если
выбрать пункт меню Файл > Открыть устройство. Перейдите на
вкладку DVB, а затем заполните поля для указания частоты и ско-
рости потока. Не забудьте, что данные вводятся в килогерцах, в то
время как на сайте www.lyngsat.com они указаны в мегагерцах.
Соответственно, к ка ж дому значению нужно приписать три «лиш-
них» нуля.
После заполнения данных, на жмите клавишу ОK и дайте про-
грамме время просканировать транспондер. Настроенный канал
или группу кана лов, если при этом указывался поставщик, можно
найти в меню Навигация.
Для тех, кто предпочитает возиться с тонкими настройками
или просто любит использовать MPlayer, рад сообщить, что это за-
мечательное приложение так же может успешно работать с DVB, Вот так выглядят настройки одного из транспондеров
но, в отличие от рассмотренных ранее программ, поиск кана- Express AM22.
лов для него выполняется несколько иначе. Сам MPlayer не уме-
ет сканировать указанные частоты, поэтому приходится исполь- Для просмотра найденных кана лов можно набрать такую
зовать специальную утилиту scan. Она входит в пакет dvb-utils, команду:
который обычно присутствует во многих дистрибу тивах, но при $ mplayer dvb://
необходимости можно скачать исходники с сайта разработчика Несколько секунд кэширования, и программа откроет окно
www.linuxtv.org. с содержимым первого кана ла из имеющегося списка. Переход
Решение поставленной за дачи средствами MPlayer подразуме- с кана ла на канал осуществляется пу тем на жатия на клавиши H
вает выполнение нескольких шагов: и K, но имеется возможность запуска MPlayer с открытием кана ла,
1 создание файла с настройками час тот спутника для утили- отличного от первого. Для этого как раз и пригодятся названия ка-
ты scan; на лов из файла channels.conf, которые на ходятся в нача ле ка ж дой
2 сканирование и сохранение данных в отдельном файле строки. Используются они так:
для программы MPlayer; $ mplayer dvb://RUSSIAN_RADIO
3 собственно настройку MPlayer. Обратите внимание, что некоторые названия кана лов имеют
Утилита scan имеет небольшой набор файлов с параметра- в своем составе пробелы, что затрудняет (хотя и не делает невоз-
ми некоторых спутников, которые располагаются в ката логе /usr/ можным) их набор в командной строке. Поэтому, во избежание
share/dvb/scan/dvb-s. Как и положено, имена файлов представля- лишних проблем, замените пробелы на другой символ; обычно
ют собой названия спутников, но, вполне вероятно, необходимого для этих целей используется подчеркивание.
там не найдется. К счастью, создание подобного файла несложно,
и по содержимому он ничем не отличается от уже рассмотренного Парочка тонкостей
нами для программы Kaffeine. Для получения необходимых значе- Наиболее частой проблемой при просмотре цифрового ТВ являет-
ний опять-таки воспользуйтесь сайтом www.lyngsat.com. ся рассинхронизация звука и видео, а так же на личие артефак тов
После создания файла с настройками своего спутника можно изобра жения. Если это не результат неточно настроенной тарелки,
выполнить сканирование кана лов: то можно попытаться исправить положение средствами MPlayer.
$ scan /usr/share/dvb/scan/dvb-s/ExpressAM22-53.0E > Посмотрите вывод в термина ле – возможно, вы встретите жа лобы
~/.mplayer/channels.conf программы на переполнение буфера: ‘Too many video/audio packets
Здесь мы вызываем утилиту scan с выбранным файлом настроек in the buffer’. Тогда можно попробовать воспользоваться декоде-
спутника Express AM22. Все обнару женные кана лы сохраняются ром libavformat MPEG-TS:
в файле channels.conf в скрытой дирек тории .mplayer домашнего $ mplayer dvb://RUSSIAN_RADIO -demuxer lavf -lavfdopts
ката лога текущего пользователя. Обратите внимание, что назва- probesize=256
ние этого файла обязательно должно быть именно таким, так как Кроме этого, одна из возможных причин неполадки – отсутст-
MPlayer по умолчанию ориентируется на него. вие пида PCR, который требуется для соблюдения модели буфе-
Для ознакомления рассмотрим содержимое channels.conf: ризации передатчика. Если вы знаете необходимый пид, помести-
1-Muz BY:11043:v:0:44950:35:33:1 те его в строку кана ла.
World Music Channel:11043:v:0:44950:38:36:2 И последние полезные сведения. Все рассмотренные прило-
CTC+2:11043:v:0:44950:41:39:3 жения для работы с цифровым ТВ умеют сохранять просматри-
CTC+0:11043:v:0:44950:44:42:4 ваемую программу на диск или временно «замора живать» изо-
------------------- бра жение. К примеру, для записи в Kaffeine достаточно на жать
RUSSIAN_RADIO:11043:v:0:44950:0:1313:103 соответствующую кнопку на панели инструментов или выбрать
HIT_FM:11043:v:0:44950:0:1329:104 пункт меню DVB > Мгновенная запись. Однако для чистого MPlayer,
В нача ле ка ж дой строки присутствует название найденного ка- как всегда, придется воспользоваться командной строкой:
на ла телевидения или ра дио. В дальнейшем именно его придется $ mplayer -dumpfile ~/video/sts.ts -dumpstream dvb://CTC+0
использовать для управления MPlayer. Последующие числа коди- В этом случае программа запишется без какого-либо переко-
руют частоту, поляризацию, скорость потока, видео- и аудиопиды дирования. Чтобы «поставить» передачу на паузу, используется
(pid, параметр фильтрации DVB-платой потока со спутника) и по- клавиша Пробел, которая является де-фак то стандартом для всех
рядковый номер. рассмотренных приложений. LXF

Через месяц Мы покорим Интернет и порыбачим с известной удочкой Skynet.


Май 2009 Linux Format 81
Hardcore Linux Проверьсебянакрутом
проектедляпродвинутыхпользователей

Clonezilla: Диски
Винчестеры гибнут чаще, чем хотелось бы. Маянк Шарма научит
применять Clonezilla для продления жизни ваших данных.

вы можете дать ему порезвиться с Linux, Windows или Intel Mac.


Встретив раздел непонятного типа, ска жем, Solaris ZFS, Clonezilla
призовет почтенную dd и все-таки сделает работу. Он будет по-
стоянно удивлять вас. Но не ждите, что он повернет время вспять
и воскресит мертвых.

Великий эконом
Clonezilla не только сохраняет ваши данные, но и экономит при
этом массу времени, сосредотачивая усилия на важнейших уча-
стках – сегментах диска, содержащих данные – и игнорируя неза-
нятые области. Но в отличие от простых приложений резервного
копирования, Clonezilla запоминает объем разделов, которые вы
попросили клонировать.
Итак, имея частично занятый 10-ГБ NTFS-раздел, вы можете
вместить его на 4-ГБ брелок и успешно восстановить на другой
диск, велев Clonezilla создать опять же 10-ГБ раздел. А еще он мо-
жет сжать данные по алгоритмам gzip, bzip2 или lzo. В теории это
должно занять много времени, но при шикарном двухъядернике,
накачанном парой гигабайт ОЗУ, вы не успеете да же сварить ко-
фе. Я клонировал диск размером 80 ГБ с одним NTFS, одним FAT,
тремя ext3 и одним разделом Solaris ZFS на один USB-диск раз-
мером 40 ГБ за 20 минут. А восстановление данных пройдет поч-
ти вдвое быстрее.

Памятка клонировщика
Д
ушевное спокойствие не измеряется в гигабайтах, а мог-
ло бы: ничто не вызывает такого переполоха, боли и стра- Начать работу с Clonezilla не сложно, но преж де чем приступать
даний в мире сисадминов, как гибель жесткого диска. к клонированию диска или раздела, нужно кое-что узнать, и вы
И вы можете смириться с этим – или подготовиться. Для послед- должны разобраться в этом процессе.
него есть Clonezilla, которая создаст полную копию дисков, вклю-
Наш чая все данные и все разделы. Смириться помогут Beatles или Ле- 1 Локальный или уда ленный репозиторий?
эксперт онард Коэн. Clonezilla сжимает данные раздела/диска, который вы клонируе-
Маянк Шарма Есть и другие стратегии для предотвращения катастрофы с по- те, в образ. Главное, что вам предстоит решить в процессе клони-
Автор двух книг терей данных, но, имея несколько машин, вы можете разориться рования – где хранить эти образы. Это можно делать на локально
по администри-
рованию Elgg
на установке RAID-массивов на ка ж дую из них, а восстановление подключенных устройствах, например, USB-диске, либо на дру-
и Openfire, а по- из резервных копий выливается в длительный простой. гом винчестере на том же компьютере.
следние четыре Clonezilla – интерфейс на основе Ncurses для набора скриптов, Хранить образы можно хоть на системе за пол-га лак тики
года еще и редак- использующих несколько дисковых утилит с открытым исходным от вас, если у вас есть сетевое подключение к уда ленной машине.
тор Linux.com.
кодом, таких как Partimage, ntfsclone, Partclone и так да лее. По ва- Clonezilla позволит общаться с SSH-сервером, Samba-сервером
шей команде, он может дуб- или NFS-диском, запросив у вас
лировать отдельные разделы,
а то и диски целиком. Он уме-
«Clonezilla помнит реквизиты для соединения. Ис-
пользуя локально подключен-
ет восстанавливать разделы,
а так же запросто перенесет
объем клонируемых ное устройство, Clonezilla ска-
нирует и отобра жает список
старый диск на новый, больше- вами разделов.» дисков и разделов на вашем
го размера. компьютере. При выборе ре-
Clonezilla под держивает вагон и ма ленькую тележку файловых позитория убедитесь, что диск или раздел, где вы будете хранить
систем. Он демонстрирует свою магию на разделах, отформати- образы, не является тем же самым, что клонируется в это время
рованных в ext2, ext3, ReiserFS, XFS, JFS, FAT, NTFS и HFS+, так что (раздел репозитория обычно смонтирован в /home/partimag).

Месяц назад Мы развернули web-приложение с помощью Google App Engine.


82 Linux Format Май 2009
 ClonezillaУчебник

под копирку
2 Клонировать или копировать?

Clonezilla может выполнять клонирование дисков/разделов в об-


раз или на лету, но не то и другое одновременно, поэтому вам
Верный Ncursе
пред ложат выбрать, создать ли образ или просто клонировать Я с теплотой вспоминаю меню на основе за спасение данных ничто так не бесит, как скач-
диск или раздел на другой накопитель, подключенный к вашему Ncurses, восходящие к моему первому Slack- ки взад-вперед меж ду графическим интерфей-
ПК. Да же при желании клонировать один диск на другой можно ware, установленному еще в 1996 году. Но но- сом, командной строкой и этим желтым шриф-
пройти пу тем создания образа. Имея рабочий образ вашего дис- вым пользователям непросто это освоить, том. Я надеюсь, что в один прекрасный день
особенно в эпоху GTK. у дизайнера интерфейса умрет жесткий диск,
ка, можно поэкспериментировать с прямым клонированием диск- Интерфейс Clonezilla, может, и импониреут принудив его прибегнуть к Clonezilla, и он нако-
на-диск или раздел-в-раздел. вашей хакерской натуре, но в процессе битвы нец-то переделает внешний вид программы.

3 Клонируй то, восстанови сё

Несмотря на все свои умные опции и интеллек туальное поведе-


ние, Clonezilla предоставляет выбор раздела для его клонирования
или восстановления вам. На начальном этапе процесса клонирова-
ния появится список дисков либо разделов, в зависимости от того,
клонируется ли диск целиком или только отдельные разделы.
При восстановлении раздела Clonezilla отобразит список всех
образов разделов, имеющихся в указанном вами репозитории.
Остается только найти и выбрать раздел, который вы хотите вос-
становить. Если по ошибке вы восстановите не тот раздел, не вол-
нуйтесь – ущерба не будет; просто перезапустите процесс и выбе-
рите правильный образ.

4 Сжимать иль не сжимать?

Единственно верного ответа на этот вопрос не существует. Ес-


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

Шаг за шагом: Клонируем диск

1 Куда сохранять? 2 Диск или раздел? 3 Выбор диска для клона


Загрузив Live CD Clonezilla и выбрав создание Теперь сообщите, хотите ли вы клонировать диск Это самый важный шаг во всем процессе. Вам по-
клона, ука жите, куда сохранять образы. Вариант целиком или только отдельные разделы. Вариант ка жут список дисков или разделов, в зависимости
‘local_dev’ сохранит образ на локально подклю- ‘savedisk’ клонирует весь диск, и позже спросит от того, какой способ клонирования вы предпо-
ченном устройстве. Для любого из трех вариантов вас, какой именно. При выборе ‘saveparts’ вам бу- чли. Можно отметить несколько разделов, на жи-
«через сеть» вы должны иметь соответствующее дет пред ложено указать разделы, которые вы хо- мая «пробел».
соединение и данные регистрации. тите клонировать.

Пропустили номер? Узнайте на с. 48, как получить его прямо сейчас.


Май 2009 Linux Format 83
Учебник Clonezilla

Размеры сжатых образов будут разными, но bzip2 создает са- ний, вы сэкономите немного времени, явно указав Clonezilla ис-
мый ма ленький. По умолчанию Clonezilla использует gzip, ра ди ба- пользовать только dd. А если вы считаете себя «везунчиком», за-
ланса скорости и степени сжатия: небольшой образ создается без пускайте экспериментальную утилиту Partclone до вызова dd для
особой перегрузки машины. резервного копирования ваших разделов Mac OS X.

5 Разбиение образов 7 Разберитесь с разделами

В зависимости от размера клонируемого диска/раз де ла, об- Если вы не в курсе, hda у вас или sda, то с Clonezilla вы да леко не уе-
раз может полу читься огромным да же в сжатом состоянии. дете. При копировании дисков целиком умно будет позаботиться,
Скорая Clonezilla пред ложит разбить его на небольшие, более управ ляе- чтобы клоны IDE-дисков восстанавлива лись опять же на IDE-дис-
помощь
мые час ти, пригодные для записи на оптические носите ли, на- ки. Можно клонировать один IDE-диск на один SCSI-диск, но это
пример, компакт-диски и DVD. По умолчанию Clonezilla разби- связано с серией плясок в командной строке, и в зависимости
Убедитесь, что
у вас достаточно вает изобра жения на час ти по 2 ГБ, но вы можете уменьшить от сложности диска вы можете оказаться не на высоте.
места на носи- или уве личить это чис ло. Ес ли вы предпочитаете одну ог ромную
теле, куда вы часть, выбери те 0. 8 Перенос на больший диск
сохраняете образ.
Обеспечить, чтобы клонируемый SCSI-диск восстанавливал-
Если в процессе
6 Какие брать программы? ся на SCSI-диск, несложно; но вы намаетесь, подбирая под ходя-
клонирования
вам не хватит Clonezilla содержит множество программ для обработки различ- щий накопитель. Приятно то, что не обязательно восстанавливать
пространства, ных разделов. Завидя раздел, она пробегается по своим инст- диск на другой диск того же размера. Еще приятнее, что можно
начните снова, рументам, в за данном порядке, и выбирает самый под ходящий на самом деле восстанавливать образ на диск гораздо большего
взяв накопитель
из них. По умолчанию, первым приглашается ntfsclone. Наткнув- размера. При восстановлении диска Clonezilla позволит изменить
побольше.
шись на раздел ext3, Clonezilla вызовет Partimage; для разделов, не размер файловой системы и создать разделы на новом диске про-
под держиваемых Partimage, вызывается dd. Скорее всего, вы не порционально старым. Но да же при переходе на больший диск вы,
за хотите возиться с приоритетом, но если вы знаете, что ваш диск возможно, за хотите оставить разделы как есть. Тогда можно по-
набит разделами, которые не понимает ни одно из этих приложе- просить Clonezilla создать таблицу разделов такой, как она сохра-
нена в образе.

Познать свои параметры 9 Знай и люби свои параметры

Программы внутри Clonezilla, фак тически и выполняющие клони-


В чем Clonezilla не испытывает гут позволить вам пройти весь рование и восстановление, имеют несколько настраиваемых па-
дефицита, так это в опциях и на- процесс на автопилоте. раметров. Clonezilla пред ложит вам заняться ими после выбора
стройках. В ответ на любое ваше Но зато они сдела ли хоро-
дисков/разделов для клонирования/восстановления. Не пугай-
телодвижение вам всегда пред- шую вещь: подробно разъяснили
ложат настраиваемые парамет- большинство опций. А с тщатель- тесь заранее: лучшие (и самые безопасные) варианты уже отмече-
ры на выбор. Новых пользова- но проверенными параметрами ны за вас. Уделите пристальное внимание разделу и параметрам
телей это может ошеломить, по умолчанию вы можете безо- восстановления. Напортачив с ними, вы, чего доброго, уничтожи-
но поймите: клонирование – про- пасно плыть через процесс кло- те MBR, или, того ху же, грохнете данные на целевом диске, ко-
цесс сложный, и поскольку двух нирования и восстановления,
торый не всегда бывает новый и пустой. Все варианты снабжены
абсолютно похожих дисков не не слишком напрягая клетки се-
существует, разработчики не мо- рого вещества. четкими пояснениями, и перед выбором не мешает остановиться
и подумать.

Шаг за шагом: Восстановление из образа

1 Выберите тип 2 Выберите, куда 3 Разбиение на разделы


восстановления восстановить Разбиение – самый важный шаг, и при установке
Загрузив LiveCD и выбрав репозиторий, содержа- После этого Clonezilla отобразит список всех не- дистрибу тива Linux, и при восстановлении чего-
щий клонированные образы, выберите, восста- примонтированных разделов, на которые вы мо- то из образа. Опять же, будьте здесь очень осто-
навливать ли образ на диск или на раздел. Вариант жете восстановить образ. Clonezilla очищает раздел рожны, не то в итоге получите бесполезный целе-
recoveriso-zip считывает образ и готовит из него и создает новую таблицу разделов на диске, так что вой диск.
загрузочный ISO-файл. будьте осторожны, или вы будете иметь проблемы.

Не хотите пропустить номер? Подпишитесь на www.linuxformat.ru/subscribe/!


84 Linux Format Май 2009
 ClonezillaУчебник

Всегда внимательно относитесь к сообщениям о загрузчике разделы вместе со средством их восстановления в очень удобном
Grub и вариантам загрузки. При восстановлении диска на диске и портативном исполнении.
большего размера всегда уместно использовать таблицу разделов
клонируемого диска, причем новую таблицу разделов лучше соз- Секреты командной строки
давать пропорционально размеру старой. Впрочем, вы, возможно, Если, по-вашему, можно добиться эффек тивного решения
не за хотите, чтобы Clonezilla изменяла MBR при восстановлении низкоуровневых за дач системного администрирования исклю-
диска. Может быть, вы хоти- чительно кликаньем в графи-
те восстановить данные на ческом интерфейсе, то вас
второй диск и предпочитаете «Регулярно клонировать на до просветить о на личии
изменить Grub на основном
диске, чтобы указать путь
диски – идея хорошая: другого способа.
Как и с большинством мощ-
к дистрибу тиву на восста-
новленном диске. А может,
это не требует много ных инструментов, для выжи-
мания максимума из Clonezilla
вы восстанавливаете раздел времени.» забудьте про графический ин-
на диск, где уже есть загруз- терфейс и беритесь за клавиа-
чик. В данном случае переустановка Grub из образа будет не очень туру. Когда речь зайдет о клонировании и восстановлении дисков,
хорошей идеей, и вы так же не должны создавать таблицу разде- вы все равно осознаете, что никогда не были так уж да леко от ко-
лов на диске. мандной строки.
Прота щив вас через бес конечную серию эк ра нов Ncurses,
10 Спасительный DVD перед нача лом процес са клонирова ния/вос ста нов ления
Клонировав диск, вы можете скопировать его образ на оптический Clonezilla вы даст довольно длинную коман ду, сообщающую,
носитель – компакт-диск или DVD. Более того, вы можете попро- что ее мож но ис поль зовать в сле дующий раз. Выгля дит она
сить Clonezilla сделать это для вас – но не потому, что у пользо- примерно так:
вателей Linux ма ло приложений для записи дисков. Просто когда /opt/drbl/sbin/ocs-sr -q -c -gm -z1 -i 2000 -p true savedisk
Clonezilla создает ISO или образ для вашего USB-диска, она заод- “2009-01-25-02-img” “hda”
но разместит на носителе и себя. Так вы будете иметь ваши диски/ При желании повторить только что сделанную операцию, мо-
жете дать эту команду в оболочке Clonezilla, чтобы не проходить
все этапы заново. Все ключи в этой команде отра жают опции, вы-
Клонируй их всех бранные вами в графическом интерфейсе. Например, -q является
приоритетом по умолчанию, а -z1 указывает на алгоритм сжатия
Clonezilla – ору жие массового кло- пу тем создания LiveCD или USB- gzip. Разобравшись в этом, вы сможете изменить команду в час-
нирования. В режиме unicasting образа Clonezilla. С другой сто- ти неосновных параметров, например, назначив используемый
она клонирует по машине за раз, роны, если вы шеф парка машин алгоритм сжатия, или чем-то посерьезнее, типа выбора другого
а в режиме multicasting – аж не- в поселковой школе или в офи-
раздела/диска.
сколько машин. Если ваш компь- се, достаточно большом, чтобы
ютерная империя простирается иметь свой кофейный автомат, Регулярно клонировать диски – идея хорошая: это не требу-
только от стационарного компь- настройте сервер DRBL и устано- ет много времени. И если ваш жесткий диск за думает сыграть
ютера до ноутбука подруги, идите вите серверную версию Clonezilla. в ящик, употребите свое время на поиск лучшей цены на вариант
замены, вместо оплакивания утраченных данных. LXF

Шаг за шагом: Клонируем на лету

1 Локально или удаленно? 2 Исходный диск/раздел 3 Целевой диск/раздел


Как и при обычной процедуре, первый шаг клони- Да лее выберите диск/раздел, который на до клони- Следующий очевидный шаг в этом процессе – вы-
рования на лету состоит в выборе объек та и места ровать. В отличие от нормального варианта, с соз- бор диска/раздела, куда будет клонирован ис-
для сохранения образа. Clonezilla копирует локаль- данием образа, для клонирования «на лету» мож- ходный диск/раздел. Будьте начеку: если вы ука-
ный диск/раздел на другой локально подключен- но взять только один диск или раздел. жете не тот диск/раздел, он будет безвозвратно
ный или доступный уда ленно диск/раздел. утрачен.

Через месяц Trickle пресечет перевод всего вашего трафика на YouTube.


Май 2009 Linux Format 85
Ответы
Есть вопросы по Open Source? Пишите нам по адресу answers@linuxformat.ru!

О
Выбор дистрибутива Linux – дело очень
В этом месяце мы личное, и лучший совет будет таким:
отвечаем на вопросы про: попробуйте их несколько и решите, ка-
1 Выбор 6 Проверку элек­ кой Вам больше нравится. Однако на старой ап-
дистрибутива тронной почты паратуре последние версии рабочих столов будут
2 Проблемы со ска­ 7 CD­репозитории
работать медленнее, если вообще будут. Исклю-
нером в Fedora 8 Драйверы Nvidia
3 Переход на новый 9 Fedora на USB чая дистрибутивы с окружениями KDE или Gnome,
Ubuntu 10 Выход из системы вы сможете запустить большинство разновид-
4 Системные 11 Оффлайн­ ностей Linux,, но для старого оборудования, осо-
обновления установку
Карты цифрового Права пользова­
бенно со скромным объемом ОЗУ, хороший вы-
5
TV телей на FAT бор – Puppy Linux (www.puppylinux.org). ваш Легковесный, но не урезанный, Puppy Linux —
ноутбук потянет также Xubuntu (www.xubuntu. хороший выбор для старого оборудования.
org) – версию Ubuntu с легковесным рабочим сто-
1 Зачем Windows? лом Xfce, если у вас достаточно оперативной памя- тельна. Например, на компьютере, на котором я это

B
Я унаследовал старый ноутбук Gateway Solo, ти. Также проглядите другие диски к журналу, для пишу, Windows нет, не было и не будет. НБ
модель 2550, c Windows 2000 Professional — поиска альтернатив. На большинстве дисков име-
в нем есть CD- и флоппи-дисковод. если ве- ется необычный, легкий или иной альтернативный 2 Права сканера

B
рить прочитанному, на нем можно попробовать Linux. дистрибутив на пробу, в дополнение к более попу- После весьма хвалебного обзора Fedora 10
Я слишком стар, чтобы становиться хакером, и хо- лярным тяжеловесам. в LXF115 я решил нарушить свое «правило
тел бы просто получить указания о том, какие вер- Для запуска Linux вам совсем не нужен 18 месяцев» и обновить Fedora 8 до Fedora
сии или дистрибутивы взять и где их берут. Windows: очистка диска и начало «с нуля» вполне 10. Сначала скачал LiveCD и загрузился с него. KDE
Кроме того, все, что я прочел, вроде бы пред- приемлемо (кое-кто сказал бы, что даже поощря- 4 вызвал легкий шок, но в целом мои первые впе-
писывает загрузить Linux на Windows-машине ется), и в инсталляторах большинства дистрибути- чатления были очень хорошими. Тут я уперся в про-
и использовать обе системы. Моя версия Windows вов имеется возможность занять весь диск, унич- блему. Мой HP PSC1410 требует hplip, не включен-
очень устарела, и почему я не могу стереть тожив все установленное ранее. Двойная загрузка ный на CD. Ну, я установил hplip через Yum, хотя это
ее с жесткого диска и установить Linux с нуля? Бу- популярна, поскольку позволяет иметь Windows и выглядело странно для Live-системы. А принтер
ду признателен за любую помощь. и Linux на одном компьютере и выбирать систе- и сканер я смог создать и использовать только
Брайан Смит [Brian Smith] му для работы во время старта, но вовсе не обяза- от имени root. Вот такое произошло с моим Acer
One. Пытался повозиться с правилами udev для
изменения разрешений, но сумел только все по-
Наши эксперты ломать, так что восстановил исходные настрой-
ки. Принтер я получил, а сканер – нет. Для нетбука
Мы найдем ответы на любой вопрос — от проблем с установкой системы или модемом до сетевого это не так страшно, но на основной рабочей маши-
администрирования, главное — спросить! не было бы реальной проблемой.
Произошли какие-то значительные сдвиги
Нейл Ботвик Майк Сондерс между Fedora 8 и Fedora 10? Или это всего лишь
Владелец ISP и экс-редактор дисков Майк был одним из создателей эфемерные проблемы «установки» в Live-режиме,
для нашего журнала, Нейл считает, прототипа LXF – Linux Answers. которые исчезнут при полноценной инсталляции?
что в Linux он от скуки на все руки. Его специальности – программи-
рование, оконные менеджеры,
Кен Уилсон [Ken Wilson]
скрипты инициализации и SNES.

О
Похоже, устройство вашего скане-
Пол Хадсон Грэм Моррисон ра создалось с неподходящими права-
Пол – местный супер-программист, Когда он не обозревает кучи про-
ми. Простой тест этого заключается в за-
и он может и хочет управиться со все- грамного обеспечения и не хал-
ми вашими проблемами по части web турит с MythTV, Грэм готов дать пуске двух команд, и от имени root, и как обычный
и баз данных. ответ касательно любого оборудо- пользователь:
вания и проблем виртуализации. sane-find-scanner -q
scanimage -L
Валентин Синицын Первая команда лишь обнаруживает сканер,
В редкие свободные минуты главный
и неважно, кто ее запустил; а вторая предоставля-
редактор нашего журнала обычно за-
пускает mcedit, чтобы отшлифовать ет доступ к устройству только при наличии полно-
какое-нибудь открытое приложение. мочий. Если она дает сбой от вашего пользовате-
Его любимая тема – открытый Linux. ля, значит, у вас проблемы с правами.
Для USB-сканеров имя устройства изменя-
ется при каждом подключении, и нельзя прос-
КУДА ПОСыЛАТь ВОПРОСы то выполнить chown или chmod из вашего старто-
Пишите нам по адресу: answers@linuxformat.ru или спрашивайте на форуме: www.linuxformat.ru вого скрипта. Придется повозиться с udev, но это

86 Linux Format Май 2009


Ответы

не очень трудно. Сначала определите ваш сканер – но будет становиться


это можно сделать с помощью dmesg, которая вы- все менее надежным
ведет нечто вроде этого: инструментом.
usb 2-1: New USB device found, Получение входа
idVendor=04a9, idProduct=221c от root в терминале
usb 2-1: New USB device strings: Mfr=1, в Ubuntu выполняется
Product=2, SerialNumber=0 легко – введите
usb 2-1: Product: CanoScan sudo bash
usb 2-1: Manufacturer: Canon для запуска обо-
Или воспользуйтесь lsusb: лочки root. Закон-
Bus 002 Device 002: ID 04a9:221c Canon, Inc. чив, либо наберите
CanoScan LiDE 60 logout, либо нажми-
Или инструментом, поставляемым с Sane: те Ctrl+D, чтобы вый-
% sane-find-scanner -q ти в сессию обычного
found USB scanner (vendor=0x04a9 [Canon], пользователя. Нахо-
product=0x221c [CanoScan], chip=GL842) at дясь в root-оболочке,
libusb:002:002 вы можете устано-
Все эти способы дадут вам код изготовителя Ubuntu теперь умеет сохранять ваши существующие файлы при установке вить пароль root, что-
продукта и код сканера. Примеры приведены для новой версии. бы в будущем исполь-
сканера Canon, и для HP готовьтесь получить дру- зовать su. Однако вы,
гие значения. Теперь создайте правило udev в /etc/ строить разделы как и раньше, выбрав один корне- похоже, движетесь в неверном направлении. Ес-
udev/rules.d/10-scanner.rules. Имя файла долж- вой / с файловой системой ext3 и другой, помень- ли вам не по душе один из ключевых принципов
но заканчиваться на .rules, а начальная цифра 10 ше, как раздел подкачки. Если у вас есть раздел работы Ubuntu, являющийся частью философии
обеспечивает его обработку перед правилами по Windows, оставьте его как было. Главное, не выби- дистрибутива, да дистрибутив еще и не подде-
умолчанию. Подставьте свой номер здесь: райте опцию форматирования раздела /. Вы полу- рживает ваше оборудование, то точно ли это луч-
ATTR{idVendor}==“04a9”, чите предупреждение, что корневой раздел не по- ший выбор для вас?
ATTR{idProduct}==“221c”, мечен для форматирования. Если вы продолжите, Fedora 10, как и Ubuntu, использует по умол-
GROUP:=”scanner”, MODE:=”0660” системные директории /etc, /bin, /usr и т.п. будут чанию рабочий стол Gnome, имеет хорошую под-
Узел устройства сканера сделается доступным удалены перед установкой новой версии, а /home держку оборудования, имеет учетную запись root
для чтения и записи членам группы scanner. Затем будет оставлен в покое. и получила 10/10 в нашем недавнем обзоре. Ре-
нужно создать такую группу и добавить к ней себя При любой важной операции, какой является комендую вам попробовать ее или одну из мно-
(действуя от имени root) c помощью и обновление ОС, прежде всего надо сделать ре- гих альтернатив, с тем чтобы поддерживать вашу
groupadd -r scanner зервную копию, если содержимое вашей домаш- систему в актуальном состоянии и работать в свое
gpasswd -a USERNAME scanner ней директории для вас ценно; но это всего лишь удовольствие. НБ
А если вы – единственный пользователь ком- мера предосторожности. Существующая установ-
пьютера, вставьте в правило udev имя собствен- ка должна замениться на Ubuntu 8.10, не затронув 5 Смена имени дисков

B
ной группы. Udev принимает изменения сразу: что- ваших личных файлов. НБ Перекомпилируя ядро 2.6.22 для мое-
бы новые настройки заработали, нужно только го Mythbuntu 8.04.1, наткнулся на пробле-
переподсоединить или выключить/включить ска- 4 Sudo или su? му. Я использую TV-карту Hauppauge HVR-

B
нер. Если вы сделали изменения в группе, вам при- Наа этапе перехода к Linux мои машины ис- 1300 и обнаружил, путем проб и ошибок на Debian
дется выйти из рабочего стола и зайти обратно, пользовали двойную загрузку. Я нашел, что Etch, что все ядра старше 2.6.22 имеют пробле-
чтобы они вступили в силу. МС в общем, Ubuntu — самый полный и друже- мы с цифровой настройкой при приеме на 506
любный дистрибутив, но есть мелкие вопросы. Во- и 562 Мгц с передатчика Crystal Palace в Велико-
3 Обновляем Ubuntu первых, в релизах после 6.06 возникают проблемы британии. Поэтому я не могу нормально принимать

B
В моем ноутбуке установлен Ubuntu 7.04, с экраном моего ноутбука (я наблюдал аналогич- каналы BBC и Five: звук заикается, а картина рас-
а хотелось бы обновить его до Ubuntu 8.10 ную картину со многими дистрибутивами на моем падается на квадратики. А все другие частоты при-
с использованием LXFDVD от LXF113/114. компьютере, когда перешел на ЖК-панель). нимаются нормально.
Возможно ли это? если да, то как это сделать? Но главная беда в том, что я не любитель sudo Mythbuntu 8.04.1 использует ядро 2.6.24,
Исса Карамбаль [Issa Karambal] и хотел бы заставить систему работать по-друго- но когда я компилировал ядро 2.6.22, используя
му, через root и обычных пользователей, только исходники с kernel.org и Ubuntu, система не смогла

О
Обновление на месте, предоставляемое не пойму, как этого добиться. загрузиться, поскольку Ubuntu использует для оп-
Update Manager, рекомендуется толь- Джо Марком [Joe Marcom] ределения своих жестких дисков схему именова-
ко при переходе на одну версию выше, ния sda, sdb, а перекомпилированное ядро ожидает

О
а с 7.04 на 8.10 вы перепрыгиваете три релиза. Са- Без дополнительной информации дать видеть hda, hdb и так далее. Я попытался изменить
мым безопасным вариантом будет переустановка консультацию по аппаратным вопросам root=/dev/sdb3 на hdb3 в файле меню Grub menu.lst,
с DVD. Если вы следовали расхожему совету ис- насчет вашего дисплея невозможно, од- исправить записи fstab и выбрать новое ядро для
пользовать отдельный раздел /home, можно пере- нако странно, что старый дистрибутив работает, загрузки, но тогда во всех ТВ-приложениях оказы-
установить ОС, не касаясь ваших личных данных а более поздняя версия – нет. Обычно бывает на- вается невозможным ухватить сигнал! Попробо-
и настроек в вашем домашнем каталоге. оборот, ведь с каждым выпуском поддержка обо- вал использовать root=UUID=<hexnumber> для оп-
Даже если у вас нет отдельного раздела /home, рудования улучшается. Ubuntu 6.06 почти три года, ределения корневого диска — тоже не помогло.
в инсталлятор Ubuntu 8.10 добавили хитрый трюк и он вот-вот перестанет поддерживаться для на- Можно ли перекомпилировать ядро, чтобы
для сохранения вашей домашней директории стольных ПК. Так что вы не будете получать новые оно понимало схему нумерации Ubuntu? Или Ubuntu
при переустановке. Загрузитесь с LiveCD и запус- версии ПО, а главное, не будете получать никаких правит свои исходники так, что типовое ядро уже
тите инсталлятор. Когда он дойдет до разметки исправлений безопасности. По мере обнаруже- не годится?
диска, выберите вариант Manual. Вы можете на- ния новых уязвимостей ваш компьютер постепен- Крис Смит [Chris Smith]

Май 2009 Linux Format 87


Ответы

ТВ). Были и измене- Подразумевается ротация файлов clamd.log


ния в V4L-части ядра and clamd.log.1. К моему изумлению, оказалось, что
(Video4Linux), способ- новый clamd.log пуст, а запись журнала продолжа-
ные влиять на анало- ется в файл clamd.log.1! Я заметил, что при переза-
говую составляющую пуске демона используется новый файл журнала,
вашей карты. Также, поэтому добавил в скрипт следующие строки:
может быть, стоит об- postrotate
новиться до Mythbuntu /sbin/service clamd restart
8.10, чтобы получить endscript
последние, возможно, Теперь все работает как ожидалось, ротация
более совместимые журналов идет и clamd каждый раз использует но-
версии всего. вый файл. Зато при каждом запуске я получаю по
Переустановка электронной почте сообщения:
для этого не нуж- /etc/cron.daily/logrotate:
на. Откройте Synaptic Stopping clamd: [ OK ]
Package Manager Starting clamd: [ OK ]
и выберите Settings Можно ли делать ротацию файлов без пере-
> Repositories. Пе- запуска демона, а также убрать вывод сообщений
Новые драйверы ядра для SATA и PATA именуют все жесткие диски рейдите на вкладку при рестарте?
как /dev/sdX. Updates и установи- Марк, с форумов
те «Release Upgrade»

О О
Ядро 2.6.22 должно бы допускать в «Normal Releases». Закройте Synaptic и открой- Clamd держит файл журнала открытым,
sd*-именование ваших жестких дис- те Update Manager, который скажет вам «New и хотя вы его переименовали, обраще-
ков, ведь эта возможность появилась distribution release 8.10 is available». Нажмите ние к нему продолжается. Файл забло-
где-то в 2.6.19, при добавлении опции CONFIG_ Upgrade и следуйте инструкциям для обновления кирован по его индексному дескриптору, и сколько
ATA. Поэтому вы сможете найти ее в драйверах системы до последней версии 8.10. НБ его ни переименовывай, процесс, который его за-
Device Drivers > Serial ATA (prod) and Parallel ATA блокировал, по-прежнему будет иметь дело имен-
(experimental). Включите данную опцию и выбери- 6 Причуды ротации но с ним. При остановке и рестарте демон «отпус-

B
те драйвер для чипсета материнской платы. Также Я использую ClamAV для сканирования вхо- кает» файл и открывает новую блокировку, на сей
надо отключить поддержку ATA/ATAPI/MFM/RLL дящей электронной почты. Чтобы повысить раз для нового файла с тем же именем. Но можно
(CONFIG_IDE), обрабатывающую IDE-диски по ста- его эффективность, я привлек демон служ- обойтись и без рестарта, хотя точный рецепт за-
рой схеме. Начните настройку ядра путем копиро- бы clamd. Недавно я заметил, что файл журнала висит от параметров дистрибутива. Вместо строки
вания файла.config из директории существующего clamd не в меру разбух (я знаю, что есть возмож- restart в postrotate попробуйте добавить
ядра в каталог нового и запуска ность ограничить его размер в КБ или МБ в настрой- /bin/kill -HUP $(cat /var/run/clamd.pid 2>/dev/null)
make oldconfig ках, но это не совсем то, что мне надо). Я решил со- 2>/dev/null
Это сообщит вам обо всех измененных на- здать задание в каталоге /etc/logrotate.d/. Эта команда считывает идентификатор про-
стройках и оставит остальные как есть, обеспечи- /var/log/clamd.log { цесса clamd из /var/run/clamd.pid (в разных систе-
вая максимальную совместимость. Потом вы всег- missingok мах расположение может отличаться) и использует
да сможете запустить make menuconfig или make notifempty его как аргумент для kill, который посылает сигнал
xconfig для настройки параметров. daily SIGHUP этому процессу. SIGHUP велит программе
Вот вам встречный вопрос: а последнее ли яд- rotate 4 перезагрузить ее конфигурацию, что должно при-
ро вы пробовали? В ядре 2.6.28 выполнены исправ- create 0620 clamav clamav вести к освобождению и переоткрытию файлов
ления, связанные с DVB (используется в цифровом } журнала. Два перенаправления – это для вывода

Вопрос­победитель (английская версия)


Разрешения в FAT писи, даже от root, поскольку у меня /dev/sdb1 /cdrom vfat В этом случае записывать файлы

B
Я решил попробовать помес- нет прав. Почему? umask=000 0 0 смогут все члены группы users, ко-
тить Ubuntu на USB-брелок. Дэвид Таттон [David Tutton] Umask вычитается из 666 для торым они и принадлежат.
Но дополнительная область, файлов и из 777 – для директо- Ни одно из этих метаданных

О
которую я выделил для моих фай- FAT32 не поддерживает рий, чтобы дать фактические раз- не хранится в файловой системе:
лов с данными, оказалась только права доступа к файлам решения, так что все каталоги будут они нужны только для того, чтобы
для чтения и исполнения. Все дирек- и владельцев. Вы можете rwxrwxrwx, а все файлы – rw-rw-rw-. файловые системы, в которых нет
тории и файлы принадлежат root. задать владельца или права группы Альтернатива – указать пользовате- прав и владельцев, стали доступ-
Раздел USB-брелка для /dev/sdb1 на всё по умолчанию через команду ля или группу владельца: ны для нормальной работы с ОС,
смонтирован в /cdrom и имеет тип mount или в /etc/fstab. /dev/sdb1 /cdrom vfat uid=david ожидающей таких атрибутов. Из-
W95 FAT32 (LBA). Можно использовать опцию 00 мените эти параметры для смонти-
От имени root, я скопировал в на- umask – она влияет на права, или UID/GID могут быть именами или рованной файловой системы – на-
стольной системе мои файлы дан- uid/gid – для установки владельца. числами. Можно также комбиниро- пример, так:
ных на этот раздел. Но я не могу из- Добавьте umask=000 в опции mount вать параметры: mount /cdrom -o
менить владельца директорий для или измените строку в /etc/fstab на /dev/sdb1 /cdrom vfat umask=000,remount
моей пользовательской учетной за- что-то вроде gid=users,umask=002 0 0 НБ

88 Linux Format Май 2009


Ответы

для себя. Но на мо- ответствует стандарту дисков с пакетами Debian,


ем старом ноутбуке а с LXFDVD часто так и есть, то вам даже не нуж-
Dell Laptop Latitude но запускать Synaptic – всплывающее сообщение
C840 привод CD-ROM спросит, хотите ли вы использовать пакеты на этом
умеет только читать диске. Кроме того, можно «надуть» APTonCD.
(и допускает загруз- При запуске APTonCD на подключенном ком-
ку), и мне никак его пьютере он создает ISO-образ, который затем
не обновить. Я до- обычно записывают на CD или DVD. Если он умес-
бавил внешний пи- тится на CD, то ваша проблема решена: вы сможете
шущий DVD-привод прочитать CD с внутреннего привода. Если же ISO-
USB, но BIOS ноут- образ больше 700 MБ, запишите его на DVD в виде
бука изменить не- файла. Иначе говоря, создайте на DVD файловую
льзя, и этот привод систему, содержащую только один файл – ISO-об-
не распознается как раз. Вы можете сделать это в вашей любимой про-
загрузочный. грамме записи CD/DVD с графическим интерфей-
Пусть я не могу сом, или напрямую, с помощью growisofs:
загрузиться с DVD- growisofs -Z /dev/dvd -dvd-compat -R
дисков LXF, но все aptoncd-nnnnnnnn-CD1.iso
же хотел бы исполь- Вставив этот диск в целевой компьютер
Можно заставить APTonCD загружать файлы со второго оптического привода, зовать USB DVD для и запустив APTonCD, при запросе источника вы-
используя ISO-образ. добавления разно- берите «ISO Image» и укажите на свой ISO-образ
образных пакетов ПО на DVD. Это стандартный диалог выбора файла,
от cat и от kill: оба отосланы в /dev/null, чтобы вам в Software Sources с помощью APTonCD. Проблема и ему все равно, откуда брать ISO-образ. Таким
не шли бесполезные сообщения от Cron. в том, что кнопка «Add CD-ROM» ведет на стандарт- способом легко обойти ограничение на один при-
Cron посылает письма, когда программа выда- ный CD-ROM-привод — старый, только читающий вод для указания CD в APTonCD. Проследите, что-
ет что-либо в стандартный вывод, и если вам надо /dev/scd0 (/media/cdrom0). И вот мой вопрос: как за- бы объем получаемого ISO-образа не превышал
пользоваться услугами служебных команд, пере- ставить Software Sources и APTonCD читать с боль- 4 ГБ, иначе mkisofs (программа, используемая для
направьте stdout и stderr в /dev/null. шого USB-диска DVD /dev/scd1 (/media/cdrom1)? создания файловой системы growisofs) создаст
/sbin/service clamd restart >/dev/null 2>&1 Нет ли способа решить проблему командной стро- порченый образ. НБ
ПХ кой? Может быть, в какой-нибудь файл в /etc нужно
добавить некую запись? 8 Nvidia 8800 без драйвера
Как надуть APTonCD
B
7 Филипп Грэм [Philip Graham] В декабре 2007 года я собрал себе новый

B
В Ubuntu в разделе Administration > Software компьютер — круче я и позволить себе

О
Sources > Third-Party Software можно добав- По части добавления дисков в качестве не мог. Я надеялся, что с Linux он будет ле-
лять пакеты с CD — очень полезная вещь, так добавочных репозиториев, мы обнаружи- тать — при 2 ГБ оперативной памяти на двухъядер-
как я лишь изредка подключаю мой ноутбук к Ин- ли, что в Ubuntu 8.10 все работало с вне- нике 1066 с 3,4 ГГц, 4 ТБ для хранения данных и ви-
тернету и не могу скачивать пакеты напрямую, а мо- шним, вторым приводом. Подключите устройство деокартой BFG Nvidia 8800GT. Но… перепробовал
гу только просматривать их с компьютеров на ра- и подождите, пока смонтируется диск, а затем по- Ubuntu, Mandriva и SUSE, и ни один из них не уста-
боте или в общественной библиотеке и копировать пробуйте добавить его. Если структура диска со- новился и не заработал в режиме Live.

Часто задаваемые вопросы

Компилируем ядро А как скомпилировать и установить


ядро?
Если у вас отдельный раздел /boot, от-
монтируйте его. Затем введите
Ядро у меня уже есть, зачем мне ком- новить через стандартный инструмент cd /usr/src make
пилировать новое? управления пакетами вашего дистри- tar xjf /path/to/downloaded/linuxx- make modules_install
Ядра, поставляемые с дистрибутивами, бутива. Ищите пакет с названием kernel- y-z.bz2 make install
поддерживают широкий спектр оборудо- source или linux-sources. Совместимые rm -f linux или комбинацию этих трех команд:
вания, но вам может потребоваться до- версии доступны в тестовых [testing] ре- ln -s linux-x.y.z linux make modules_install install
бавить поддержку того, что есть именно позиториях вашего дистрибутива. где x.y.z – версия ядра, скажем, 2.6.28. Первый шаг соберет ядро и моду-
у вас (или убрать поддержку того, чего При установке из пакета дистрибутива ли, второй установит модули, а третий
у вас нет). Сборка вашего ядра из исход- И какие использовать? все это проделается само. В обоих случа- скопирует ядро в /boot. К новому яд-
ников с kernel.org, как правило, снабдит Отпимальным вариантом обычно быва- ях следующим шагом будет запуск кон- ру также создастся символьная ссылка
вас самой последней его версией, а это ют исходные коды, приспособленные фигурационного меню: с /boot/vmlinuz, а к предыдущему –
может быть важно. под ваш дистрибутив. При желании при- cd /usr/src/linux с /boot/vmlinuz.old. Команда установки
менить собственные заплатки или ис- make menuconfig сделает резервную копию конфигура-
Где брать исходники ядра? пользовать самые современные ядра, Теперь задайте параметры. Чтобы ции ядра в /boot.
Типовые ядра [их еще называют «ваниль- возможно, будет лучше использовать ис- найти нужный вам, нажмите ‘/’ и набери-
ными», – прим. пер.] имеются на www. ходные коды с kernel.org. те строку поиска; будет показано, какие И все, отмучились?
kernel.org, да и на наших дисках. Боль- параметры содержат ее и где вы можете Если вы используете загрузчик Grub,
шинство дистрибутивов вносят правку С чего начинать компиляцию и уста- их настроить. то да. А если Lilo, то запустите еще
в исходные коды, и некоторые инструмен- новку ядра? Предпочитаете «мышекликатель- /sbin/lilo: Lilo запоминает позиции фай-
ты могут зависеть от этой правки. Пакет Для установки из tar-архива с kernel.org, ный» интерфейс? В таком случае ис- лов на диске, а не их имена, и если это-
с исходными кодами, соответствующий скачайте архив и введите от имени root пользуйте make xconfig. Закончив, сохра- го не сделать, будет по-прежнему загру-
вашему текущему ядру, можно уста- следующие команды: ните и выйдите. жаться старое ядро.

Май 2009 Linux Format 89


Ответы

ее предоставляют. Даже если ваш любимый дист-


рибутив приотстал, всегда можно скачать драйве-
ры с www.nvidia.com и установить их вручную. НБ

9 Не идет Fedora с USB

B
Я попробовал создать загрузочный USB-
брелок с Fedora, используя скачанный ISO-
образ Fedora 10. Однако при попытках за-
грузиться с этого USB-брелка получаю сообщение
Could not find kernel image: Linux
Есть мысли по этому поводу?
Майк Лукас [Mike Lucas]

О
А правильный ли у вас ISO-образ? Это
должен быть образ Live CD, а не стан-
дартного установочного диска. USB-бре-
лок, возможно, уже содержал другой загрузочный
дистрибутив, использующий Syslinux, и отказался
переписать некоторые файлы, а в результате по-
лучилась смесь из Fedora и предыдущего дистри-
Последние драйвера Nvidia — на момент написания статьи это 180.29 — поддерживают все карты бутива. Удалите все с флэшки, а потом уж запус-
серии 8800. тите Fedora Live USB Creator. НБ

Пробовал я и другие методы, и все свелись ле карты. У большинства дистрибутивов шестиме- 10 Выйти из строя!

B
к тому, что в Linux нет подходящего драйвера сячный цикл обновления, плюс заморозка пакетов Я хочу перевести ряд компьютеров с Win-
для видеокарты. Так что весь прошлый год я ис- для тестирования перед релизом – может пройти dows XP на Linux (Runtu или RussianFedora),
пользовал Vista вместо Linux. Но очень хочется до девяти месяцев, прежде чем ваш любимый дис- но есть одна проблема: под Windows я на-
вернуться в отчий дом. Не решена ли проблема трибутив освоит новое оборудование. писал один скрипт, который запускается при вхо-
с драйвером? если да, то какие дистрибутивы сей- Поддержка этой видеокарты была добавле- де пользователя в систему и проверяет по базе MS
час включают его? на в релизе 169.07 драйверов Nvidia, хотя эта вер- SQL некое условие. если оно не выполняется, то се-
Дэн Хилл [Dan Hill] сия содержала ошибку, заставляющую вентиля- анс завершается. Я могу подключиться к MS SQL
торы видеокарты все время крутиться на полной из PHP и примерно знаю, куда добавить скрипт ав-

О
Nvidia, против обычного, чуть задержа- скорости. В нынешнем релизе 180.29 видеокар- тозапуска. Остался один вопрос: как завершить
лась с выпуском драйвера для 8800 GT та 8800 GT указана как поддерживаемая. Любой из него сеанс Gnome или KDE?
под Linux. Этот чипсет отличается от GTS свежий дистрибутив должен иметь подходящую Борис Головченко
и 8800 GTX. Но драйвер вышел почти сразу пос- версию этого драйвера. Mandriva и Ubuntu точно

О
Все зависит от того, какой рабочий стол
вы используете. В Gnome (выбор Run-
Краткая справка про... tu и RussianFedora по умолчанию) до-
статочно вызывать команду gnome-session-save

sudo
приведет к запросу пароля (пароля того, кто за- --kill. Этим вы сохраните текущую сессию в Gnome
пустил команду, а не суперпользователя, так что и завершите ее.
нет нужды разглашать последний), и команда В KDE для подобных целей служит демон
выполнится, только если она дозволена пользо- ksmserver, так или иначе предоставляющий метод
вателю; таким образом, безопасность системы logout(int confirm, int sdtype, in sdmode). В версии