87974 20882 Игры » Gimp 2.4

» с. 72 с. 2008 Интервью » – подписной индекс – подписной индекс

» » Ь И Т И А С VectorLinux Ч

С DSL Е О П Р DVD

С А О С Р РОСПЕЧАТЬ « С

Е а Р в П ПРЕССА РОССИИ т « с

т г ПЛЮС: н о

е л г а а т

а г К Каталог о л Mandriva Простая, дружелюбная безопасная и LXF а т а К Каталог агентства Программирование Утилита всплывающих карточек на Python ) 2 0 1 (

2 с. 60

с. 46 с. 8 0 Distrowatch 0 2

» ь л эксперт по миграции а р Безопасный PHP Простой путь к защищенности ваших сайтов в е Ф Февраль 2008 № 2 (102) Джо Касселз, Clusters » с. 64 с. Просматривайте содержимое Windows-ПК из Linux и перетаскивайте файлы

3 X » ВТОРАЯ ЖИЗНЬ старого компьютера Всего 700 МГц и 128 МБ памяти – и вы сможете обслуживать файлы, запустить web-прокси или организовать медиа-вещание. Уйти из Windows сегодня! Наше руководство поможет вам избавить друзей от Windows-зависимости Фотография: основы Как подключить вашу камеру к Linux и с чего начать Главное в мире Linux Главное Python Python

LXF102 LXF Февраль 2008 № 2 (102) Вторая жизнь старого ПК Увести друзей от Windows Камеры и Linux Ardour Mandriva 2008 Разбираемся с RSS Безопасный PHP Tux Droid! Приветствие

Главное в мире Linux Универсальный Tux Начитавшись материалов этого выпуска, мы спросили у команды LXF: «Каково самое странное устройство, на которое вам приходила в голову мысль установить Linux?»

Грэм Моррисон Майк Сондерс Нейл Ботвик Мои часы. Мне потом Я установил Linux в свой Карта памяти в моем пришлось долго смот- мозг и теперь эффектив- телефоне – я хочу всегда реть на себя в зеркало и нее переключаюсь между иметь при себе LiveCD/ громко говорить реши- задачами. С памятью USB с Linux. Увы, не тельное «Нет!» стало луч... KERNEL получилось – пока. PANIC

Вторая жизнь... Говорят, чужие дети растут быстро. Не стану спорить, но едва Эфраин Эрнандес- Мэтт Нейлон Энди Ченнел ли вчерашний сосед-первоклассник, отмечающий сегодня Мендоса Сделает ли Linux внут- DVD-проигрыватель, Fleshlight реннюю систему управ- телевизор или радио... за стенкой свою свадьбу сравнится с «навороченным» ления моей Z-масштаб- Схватка между робоко- на собственные деньги почти-что-гигагерцовым Athlon’ом аж с ной модели железной том и робособакой? дороги реалистичной? Блендер, тостер, микро- 512 МБ памяти, в одночасье превратившимся из топ-машины в DCC не справляется. Мне волновка, холодильник. бы старый Hornby Zero 1. Аквариум? печатную машинку. Можно делать вид, что ничего не случилось, и продолжать использовать установленное на нем ПО до физического выхода машины из строя (которого, судя по качеству нынешних комплектующих, не придется ждать долго), но увы – душа истинного компьютерщика не может жить без новинок. Спасение приходит в лице специализированных дистрибутивов Linux, стремящихся Энди Хадсон Д-р Крис Браун Фрэнк Полманн Звезда смерти – чтобы Машина Бэббиджа, но, я Влагозащищенный ноут- удержаться на грани между современной начинкой и минимальными защитить ее от R2 повс- боюсь, маленькие ласты бук с ветряком, прикреп- системными требованиями. И, надо сказать, у них это получается – танцев. Так познайте же Тукса запутаются во всех ленный к воздушному огневую мощь этой пол- этих шестеренках. змею: серфинг «два в хотя и с переменным успехом. Так что, если вы всерьез решили ностью оснащенной и одном» готовой к действию бое- заняться освобождением друзей и родственников от Windows- вой станции! зависимости – просто обменяйте их Core Duo на свой старый добрый ПК. Vista на нем уж точно не пойдет, да и Vixta, пожалуй, тоже... LXF

Валентин Синицын Главный редактор [email protected]

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

Миссия журнала Как с нами связаться

• Пропаганда свободного ПО в России Письма для публикации: [email protected] • Продвижение решений с открытым кодом в бизнес- Подписка и предыдущие номера: [email protected] сообществе Техническая поддержка: [email protected] Проблемы с дисками: [email protected] • Поддержка российского Open Source сообщества Общие вопросы: [email protected] Организация трибуны для разработчиков свободного ПО • Web-сайт: www.linuxformat.ru • Обратная связь между разработчиками и потребителями ПО Адрес редакции: Россия, Санкт-Петербург, ул. Гончарная, 23, офис 54. Телефон редакции: (812) 717-00-37. Дополнительная информация на стр.126

Февраль 2008 Linux Format 1 http://lolbook.nnm.ru ФФевральевраль 22008008 № 2 ((102)102) Содержание Весь номер – прямо как на ладони: приятного чтения!

Учебники LXF DVD102 Майк вам покажет ...... 112

Начинающим RSS – это просто ...... 56 Получайте нужную информацию со своих любимых сайтов автоматически. Mandriva 2008 Free Ищете простой способ познакомиться с Linux или просто новый дистрибутив «на Некоторые поиграть»? Mandriva сочетает сайты отполированный рабочий стол с добавляют на естественной простотой и логотип слово непревзойденным Центром управления. «XML». VectorLinux Оживите старый ПК с этим супербыстрым дистрибутивом на базе Slackware.

Миграция с Windows Интервью Синхронизация систем ...... 60 Более 30 звезд мира Linux и Open Source: Установите Unison на стороне Linux и Windows Брюс Пиренс, Ларри Уолл, Марк – и забудьте о необходимости приводить в Шаттлворт и другие. соответствие файлы данных и настройки. Фотография Программы Темная комната с Linux ...... 64 Дополнительные приложения на любой Новая серия! Linux предоставляет широкий вкус: GIMP 2.4, Pidgin 2.3, Adobe Flash Damn Small Linux – превосходный дистрибутив для почтенных ПК спектр универсальных утилит для управления Player... фотокамерами, организации, правки и отображения фотографий – по цене, гораздо меньшей, чем у Photoshop. Программирование Что за штука... Flash-карточки на Python ...... 68 Набирайтесь опыта и изучайте иностранный язык или готовьтесь к экзаменам, заставив Classmate PC? Python показывать вам flash-карточки. Надежда для Лучшие новинки открытого Hardcore Linux недофинансированного ПО на планете ...... 120 Виртуальные сервера ...... 72 образования всего мира с. 26 Кластер машин с балансировкой нагрузки – гораздо более гибкое и быстрое решение, чем одиночный сервер повышенной производительности. Узнайте, как и почему. KeyJNote Презентация для эстетов ...... 76 Есть много способов оживить и приукрасить показ слайдов – об одном из них мы вам и расскажем. DVD для любителя Ужимаем видео ...... 79 Что делать, если отснятый вами материал чуть- чуть не умещается на DVD-диск. Genius: удивите всех своими познаниями в Draw и Impress математике. Маленькие хитрости ...... 82 Поможем Windows-зависимым c. 38 11 советов, которые помогут вам пользоваться графической составляющей OOo эффективнее. Избавляем от тяги к проприетарному ПО одного Qt4 поставщика. Среда Interview ...... 86 Новая серия! Начните программирование на Qt4 с изучения фирменной реализации паттерна «модель–вид–контроллер» от Trolltech. R Данные и графики ...... 90 Наши эксперты расскажут, как визуализировать столбцы безликих цифр – и 3 где взять эти самые цифры. X : Reunion с. 08

2 Linux Format Февраль 2008 Содержание LXF DVD Подпишись внутри! на Linux Format Хотите узнать, что на нем? и сэкономь! См. с. 112

Спецрепортаж Обзоры

X3: Reunion ...... 08 Если все эти годы вы скучали по Elite и Frontier, Вторая жизнь эта игра со стрельбой и торговлей согреет вам душу. старого ПК Aten CS62DU KVM ...... 10 Переключайтесь между мониторами, ПК и клавиатурами легко и просто – без проблем. Linux творит чудеса воскрешения списанного оборудования c. 30

А также... Откажись от Windows ...... 38 Устоять перед искушением выйти из Linux и вернуться в привычную ОС трудно, но возможно. Мы даем вам силы! Когда машины научатся чувствовать, ОН будет вашим властелином. Да будет рок! ...... 42 Autopano Pro ...... 11 Кому нужны дорогостоящие закрытые аудиоприложения, Photoshop, подвинься: дай дорогу лучшему инструменту для создания фотопанорам – без когда есть вещи, подобные Ardour и Studio64? исключений. Доверительный PHP ...... 46 Tux Droid ...... 12 Программируемая игрушка с открытым Правильно использование Apache и suEXEC – верный интерфейсом, способная... да на что угодно! способ защититься от экплойтов и заставить умолкнуть iRex iLiad ...... 13 скептиков. Наладонник для чтения электронных книг, управляемый Linux – еще один гвоздь в Интернет-телефоны ...... 50 крышку гроба ? Трубка, диск и зуммер вот-вот отправятся в лавки ALT Linux 4.0 и ASPLinux 12.0 . 14 антиквариата – выбирайте себе подходящий Два отечественных дистрибутива глазами наших обозревателей. программный телефон. Сравнение: Онлайн-процессоры Постоянные рубрики Google Docs ...... 19 Buzzword ...... 20 Zoho Writer ...... 21 Новости ...... 04 Интервью ...... 28 Через месяц ...... 126 ThinkFree ...... 22 События мира Linux глазами наших Беседуем с сотрудником компании VDEL Сними последнюю рубашку – купи экспертов. LXF103! ajaxWrite ...... 22 Школа LXF ...... 96 DistroWatch ...... 24 Наша образовательная рубрика. OpenSolaris и gOS, а также Vixta.org: Vista снаружи, Linux внутри. Ответы ...... 104 Проблемы Linux и их решение: Что за штука ...... 26 разбиение жесткого диска, обновление Classmate PC: устоит ли отполированный дистрибутива, двойная загрузка с Ubuntu, корпус под натиском вездесущих детских перенос /home посредством rsync, ручек? автоматическое копирование, выбор нового ПК и раздача старых.

Февраль 2008 Linux Format 3 http://lolbook.nnm.ru Новости Новости ГЛАВНЫЕ НОВОСТИ: Закат Netscape KDE4 уже с нами Sun приобрела MySQL Ubuntuпо-русски GPLv3 – итоги 2007 года ALT Linux приходит в школы

KDE 4.0.0 – долгожданный релиз

осле многих месяцев активной раз- стандартов, а новая библиотека ThreadWeaver работки вышел в свет релиз KDE позволила использовать высокоуровневый Новости короткой строкой П4.0.0 – популярной графической интерфейс для создания многопоточных про- среды, открывающей новую линейку версий. грамм, позволяющий полностью использо- Компания Intel объявила о своем отказе от дальнейшего Надо сказать, что работа была проделана вать потенциал многоядерных процессоров. участия в проекте по созданию дешевого ноутбука OLPC немалая, причем участники проекта поста- И, конечно, нельзя не сказать о том, что в в связи с желанием продвижения на рынок собственной разра- рались уделить внимание не только улучше- качестве базовых библиотек теперь исполь- ботки – Classmate PC. нию функциональности, но и внешнему виду зуется Qt 4 от норвежской компании Trolltech, своего детища. В результате уже при пер- в последнее время все более тесно объеди- В ответ на очередную порцию открытых спецификаций вом запуске пользователь сможет нагляд- няющейся с командой разработчиков KDE видеокарт ATI компанией AMD представители NVIDIA сооб- но ощутить, что на рабочем столе работает (кстати, совсем недавно компания Trolltech щили, что также планируют начать более тесное сотрудничество с графическая оболочка нового поколения. объявила о том, что выпускает Qt 3 и Qt 4 под разработчиками свободных видеодрайверов. Новая тема оформления Oxygen, дополнен- лицензией GPLv3). Для дистрибутива Kubuntu 8.04 не будет предоставляться ная поддержкой 3D-эффектов в оконном В общем и целом можно констатировать, долгосрочная техническая поддержка (LTS) в связи с тем, менеджере KWin и оболочкой рабочего сто- что участникам проекта удалось сделать дей- что KDE 4 не будет являться достаточно отлаженным к моменту ла Plasma значительно повышает удобство ствительно современную и удобную графи- релиза дистрибутива. работы в системе и предоставляет более ческую среду, отвечающую самым придирчи- Объявлен релиз программы для работы с электронными эргономичный и интуитивно понятный интер- вым запросам пользователей. К этому мож- таблицами Gnumeric–1.8.0. фейс. Дополнительную визуальную сглажен- но прибавить заметное повышение скорости Корейская компания Gamepark выпустила игровую консоль ность всех элементов придает использование работы KDE за счет оптимизации библиотек GP2X-F100 под управлением Linux, являющуюся своего векторной графики в формате SVG. и способов их взаимодействия, что еще боль- рода аналогом Sony PS. Помимо внешних изменений, компонен- ше упрочит позиции проекта, как наиболее ты KDE претерпели и многочисленные улуч- популярного в мире свободных операционных Компания Red Hat выпустила Directory Server 8.0, в котором шения на уровне базовых библиотек и при- систем. Кроме того, не исключено, что коман- все проприетарные компоненты заменены на свободные кладных приложений. Одним из наиболее да разработчиков KDE планирует выйти и на аналоги. заметных новшеств является использование корпоративный рынок: в частности, на базе Релиз Gentoo 2007.1 отменен, а все силы разработчиков направ- инфраструктуры Phonon, обеспечивающей проекта KOffice недавно была организована лены на подготовку следующей версии – Gentoo-2008.0. взаимодействие программ KDE с мультиме- компания KOfficeSource GmbH, в задачи кото- Вышел пакет Gambas 2.0, являющийся свободной средой дийными аппаратными компонентами ком- рой будет входить обеспечение платной тех- разработки, аналогичной Visual Basic. пьютера вне зависимости от операционной нической поддержки для пользователей этого После трех лет разработки выпущен сервер FreeRADIUS системы. Аналогичную поддержку взаимо- свободного офисного пакета, обучение работе 2.0.0, являющийся лучшей альтернативой коммерческим действия с различными внутренними и вне- с данным ПО, а также разработка дополни- RADIUS-серверам. шними устройствами на абстрактном уровне тельных коммерческих модулей для включе- обеспечивает инфраструктура Solid. Также ния в платные версии пакета и предоставление Компания Linspire выпустила в продажу системные бло- значительным изменениям подвергся дви- услуг по внедрению и адаптации KOffice к тре- ки с предустановленным дистрибутивом Freespire по цене жок для отображения web-страниц KHTML, бованиям заказчиков. около $200. получивший улучшенную поддержку web-

4 Linux Format Февраль 2007 Новости Netscape уходит со сцены

конце прошлого года компания America До недавнего времени этот браузер, раз- го впоследствии вырос нынешний любимец On Line (AOL) сделала всем пользо- работка которого продолжалась более 10 лет, пользователей браузер Firefox, а также поч- Ввателям Netscape грустный подарок: был одним из немногих «старожилов», начав- товый клиент Thunderbird и множество дру- официальный релиз сообщил о закрытии про- ших свое развитие практически с самых исто- гих приложений. Примечательно, что после екта и об остановке дальнейшей разработки ков Интернета. За основу Netscape Navigator ухода Netscape со сцены на рынке осталось данного браузера. Выпуск обновлений к вер- изначально был взят код первого графическо- два активно развивающихся браузера, появив- сии Netscape Navigator 9.0, увидевшей свет в го браузера Mosaic, что и послужило причиной шихся на свет в одно время с Netscape – это августе 2007 года, будет остановлен уже с 1 бурного роста популярности его наследни- входящий в состав операционной системы января 2008 года, а с 1 февраля будет прекра- ка. Постепенно Netscape стал наиболее попу- Internet Explorer (являющийся, кстати, «род- щено осуществление технической поддержки. лярной программой просмотра web-страниц, ным братом» Netscape, т.к. изначально для Всем пользователям Netscape представители не в последнюю очередь за счет постоянно- его создания использовался все тот же код компании порекомендовали переходить на го повышения функциональности благодаря Mosaic) и разрабатываемый норвежской ком- использование Mozilla Firefox, который, соб- добавлению в общий состав различных полез- панией браузер Opera. ственно, и выступал в последнее время в каче- ных приложений в виде почтового клиента или стве основы для последних версий Netscape. клиента IRC. Именно Netscape впервые ввел Для тех пользователей, кто привык к интер- в широкий обиход термин «Internet Suite», фейсу и дополнительным функциям браузе- охватывающий объединенные в одно целое ра, отличающего его от Firefox, разработчики наборы приложений для работы в Интернете. подготовили наборы расширений, пригодных Еще одна заслуга данного браузера – именно к установке в последний. он стал основой браузера Mozilla, из которо- Школьный Linux: первая встреча

е успели утихнуть споры по поводу в первую очередь обеспечить своими про- ной программы российские результатов государственного тенде- граммными продуктами учебные заведения школы смогут наладить пря- Нра на обеспечение российских обра- Верещагинского района Пермского края, где в мой контакт с разработчиками ПО, что позволит зовательных учреждений свободными дист- селе Сепыч живет и трудится директор школы последним в будущем более оперативно реаги- рибутивами GNU/Linux, а в школы уже начали Александр Поносов, ставший известным на ровать на запросы учителей и подготавливать поступать первые варианты СПО, подготовлен- всю страну в связи с осуждением по статье программное обеспечение, максимально отвеча- ные участниками проекта. В начале 2008 года 146 за использование нелицензионного про- ющее текущим требованиям учебного процесса. представители компании ALT Linux предоста- граммного обеспечения. Следует также отметить, что проект по пере- вили учителям пермских школ свою разработ- По итогам презентации, проведенной пред- воду российских школ на использование сво- ку – комплекты программного обеспечения, ставителями ALT Linux перед пермскими учи- бодного ПО станет крупнейшим в мире: только в построенного на базе дистрибутива ALT Linux. телями, большинством присутствующих было пилотных регионах, в качестве которых выступа- В набор вошли четыре разновидности, пред- высказано одобрение усилиям, прилагаемым ют Пермский край, Татарстан и Томская область, назначенных для нескольких конфигураций российскими разработчиками к искоренению планируется оснастить Linux-дистрибутивами компьютеров: для средних и мощных компью- использования в школах пиратских копий про- более 1200 компьютеров. Если же процесс пере- теров, укомплектованных оперативной памя- приетарного ПО. Кроме того, преподаватели хода на свободное ПО окажется успешным, то тью 128, 256 и 1024 МБ, а также специализи- воочию убедились, что свободные дистрибу- к 2009 году абсолютно все российские шко- рованный облегченный дистрибутив «Линукс тивы, подготовленные на базе операционных лы получат возможность отказаться от покупки терминал», предназначенный для использова- систем GNU/Linux, не только просты в исполь- дорогостоящего проприетарного программного ния устаревших и маломощных компьютеров зовании, но и дают школам массу преиму- обеспечения и перейти на использование аль- в качестве клиентских машин. Выбор первого ществ по сравнению с ранее используемыми тернативных программных продуктов, что станет региона для передачи учителям свободного программными продуктами. Еще один плюс беспрецедентным случаем в мировой практике ПО был символичным: разработчики решили заключается в том, что в рамках государствен- внедрения свободного ПО.

Февраль 2007 Linux Format 5 http://lolbook.nnm.ru Новости

GPLv3 – Ubuntu итоги 2007 года по-русски оявление лицензии GPLv3 в прошлом ли более полутора тысяч проектов. Среди них тавший за сравнительно короткий срок самым популяр- году нельзя назвать безмятежным: можно отметить такие известные разработки, ным в мире дистрибутивом, Ubuntu позволил вывести П сначала пришлось отложить выпуск как Samba, SugarCRM, а также выпущенные Судобство пользования системой GNU/Linux на новый конечной редакции в связи с появлением под новой лицензией среды разработки Qt 3 уровень. Между тем, в нем по-прежнему существует немало ком- новых проприетарных технологий, потенциаль- и Qt 4 норвежской компании Trolltech и ком- понентов, требующих тщательной доводки, и к таким «недодел- но угрожающих свободному ПО, а затем, после поненты виртуальной машины Java компании кам» относится локализация. Даже при выборе русского языка в обнародования конечной редакции, разгоре- Sun Microsystems. При этом можно отметить качестве системного многие приложения и даже пункты меню по- лись споры уже внутри сообщества пользова- довольно стабильный ежемесячный прирост прежнему оперируют английскими словами. Данная ситуация пос- телей и разработчиков, неоднозначно приняв- числа приверженцев третьей версии GPL, что лужила поводом к рождению нового проекта под названием Runtu, ших изменения, произошедшие по сравнению с дает повод предположить, что к концу текущего организованным российскими энтузиастами. Основная задача, предыдущей версией текста лицензии. Главный года количество проектов, выбравших GPLv3, стоящая перед разработчиками – улучшение локализации Ubuntu спор спровоцировал один из наиболее ярких может составить более четырех тысяч. Правда, и адаптация к использованию в российских условиях. Несмотря представителей Linux-разработчиков – Линус не все проекты, потенциально готовые к обнов- на молодость проекта, работа ведется довольно активно, и нака- Торвальдс [Linus Torvalds], не нашедший осно- лению лицензии на свои продукты, способны нуне новогодних праздников на сервере проекта появилась уже ваний для перевода ядра Linux под новую перейти на GPLv3. Например, такие известные вторая версия дистрибутива – Runtu 2.0.0. Дистрибутив базируется редакцию лицензии. Правда, уже было наме- продукты, как Alfresco и MySQL до сих пор не на Ubuntu 7.10 «Gutsy Gibbon» и полностью с ним совместим на тившийся раскол среди приверженцев свобод- пришли к окончательному решению в отноше- пакетном уровне. Другими словами, пользователи могут свободно ного ПО быстро утих: этому способствовали нии перехода на новую лицензию. Причин тому устанавливать в Runtu приложения, находящиеся в репозитариях и спокойные разъяснения Торвальдса своей несколько, но наиболее важными называются Ubuntu. Все компоненты Runtu обновлены до стабильных версий, позиции, и традиционное взвешенное отноше- желание оценить степень «приживаемости» доступных на момент релиза. Дистрибутив поставляется на одном ние «линуксоидов» по отношению к различным GPLv3 в рыночной среде, а также ситуация с DVD-диске с размером образа 2,6 ГБ. В число основных компо- изменениям в мире Free Software. ядром Linux, которое по-прежнему использует нентов системы входят ядро Linux 2.6.22-14, графическая среда Надо сказать, что доводы Торвальдса не лицензию второй версии. Впрочем, в последних Gnome 2.20.1, офисный пакет OpenOffice.Org Pro 2.3.1 от компа- для всех оказались убедительными, в связи с комментариях и сам Линус Торвальдс не отри- нии «Инфра-ресурс», браузер Mozilla Firefox 2.0.0.11, почтовый чем переход свободных проектов на исполь- цал, что со временем может пересмотреть свое клиент Mozilla Thunderbird 2.0.0.8 и другие популярные пакеты. зование GPLv3 начался практически сразу же отношение к GPLv3, так что особых преград для Дистрибутив распространяется под свободной лицензией и досту- после утверждения конечной версии текста. дальнейшего распространения третьей версии пен к загрузке на FTP-сервере проекта. Согласно данным GPL3.Blockspot.com, за пол- самой популярной свободной лицензии пока года существования новой лицензии ее приня- не предвидится. Sun купила MySQL AB. Что дальше?

едавно широкой публике было объ- выглядит вполне логично. Правда, некоторы- доточившись явлено об одной из крупнейших за ми наблюдателями было высказано опасение на разработке Нпоследнее время сделок, касающихся за будущее MySQL как свободного программ- операционной свободного ПО. Компания Sun Microsystems ного продукта. На данный момент нет никаких системы SUSE. решила приобрести шведскую фирму MySQL оснований для тревоги: вся основная политика В связи с этим Sun AB, являющуюся основным разработчиком Sun последних лет направлена на более актив- может получить неко- свободной базы данных MySQL. Общая сум- ное участие в движении Free Software, что под- торые преимущества, ма сделки составит почти 1 миллиард дол- тверждает и недавнее открытие исходных тек- предлагая потенциальным ларов США. Также в Sun сообщили, что все стов операционной системы Solaris, и выпуск клиентам комплексные реше- разработчики MySQL переходят на работу в Java под свободной лицензией. Таким обра- ния, включающие помимо опера- штат компании-покупателя. В общем, ниче- зом, было бы странно ожидать от нее каких- ционной системы и сетевые сервисы, го особо удивительного в данной сделке нет: либо шагов, направленных на ограничение становящиеся все более популярными проект MySQL давно зарекомендовал себя в «свободности» вновь приобретенной MySQL. в бизнес-среде. Сможет ли Novell проти- качестве одного из лидеров рынка свободных Впрочем, существуют опасения, что данное вопоставить что-то данному шагу Sun или баз данных, а Sun Microsystems в последнее приобретение окажет косвенное влияние на дру- обладает какими-то другими стратегически- время всерьез намеревается стать ведущим гого игрока рынка свободного ПО – компанию ми планами – покажет время. LXF игроком в области web-приложений, поэто- Novell. Специалисты отмечают, что за послед- му добавление MySQL в комплект, состоя- ние годы эта компания значительно ослабила При подготовке данного выпуска были использованы материалы сайтов щий из OpenSolaris, GlassFish/Java и NetBeans, свои позиции на рынке сетевых услуг, сосре- Netscape, KDE, Sun Microsystems, Runtu, CNews и gpl3.blogpost.com.

6 Linux Format Февраль 2007 3D modelling tool Reviews Обзоры Новинки программного и аппаратного обеспечения в описании наших экспертов

Алексей Федорчук Его слабости – mass storage, разметка диска и файловые системы. Сегодня мы рассматриваем... 08 X3: Reunion X3: Reunion c. 08 Выторгуйте или пробейте свою дорогу в галактике, Nexenta, или еще раз играя за одну из множества рас. о жирафе Анюте 10 Aten CS62DU KVM Надоело жонглировать проводами, работая на Сплав науки и отваги нескольких компьютерах с разными ОС? Вот элегантное Инженерные войска решение.

ышел очередной кандидат в рели- 11 Autopano Pro зы операционной системы Nexenta. Лучшее приложение для создания фотопанорам – ВЧем она примечательна, эта систе- причем для Linux. ма? Для начала – ядро от SunOS, известное 12 Tux Droid в народе как OpenSolaris (хотя нынче мало Как и подобает настоящему пингвину, за рыбину Tux кто помнит, что Solaris – собственно гово- Droid готов на все. Космические путешествия такого рода никогда не ря, интегрированная среда, а ядро этой 13 iRex Iliad станут реальностью. Чарли Стросс с грустью операционки как называлось испокон века Читалка для электронных книг – или записная книжка рассказывает, почему, на http://tinyurl.com/yt6275. SunOS, так и продолжает носить это имя на ядре Linux, с поддержкой PDF, HTML, PNG, JPEG и прочего. по сей день). Что, соответственно, обес- Iliad c. 13 печивает поддержку «из коробки» самой 14 ALT Linux 4.0.1 совершенной файловой системы всех вре- Разберемся, что за ПО предлагают школьникам в новом мен и народов – ZFS. тысячелетии. Далее – хотя все низкоуровневые ути- 16 ASP Linux 12 литы, разумеется, унаследованы от мате- Русификация – уже не ринской системы, остальное обрамление проблема для современного мира Linux, так есть ли смысл чуть более высокого уровня – стандартный перекраивать Fedora Core? набор приложений GNU, привычных любо- му пользователю Linux. И, наконец, инструментарий управле- Не рекомендуется использовать вместо ния пакетами. А это – самая обычная Почему ни один производитель еще не выпустил резиновой уточки в система на базе .deb, использующая apt. iPod рынка электронных книг? Для нас это ванной. Привычная, конечно, не каждому – но китайская грамота... любому, кто сталкивался с и его клонами. Правда, репозиторию пакетов Nexenta далеко до богатства самого Debian НАШ ВЕРДИКТ: пояснение или Ubuntu. Тем более, что, начиная с нынешнего кандидата в релизы, разра- Все попавшие в обзор продукты «Top Stuff». Номинантами стано- ботчики прониклись мыслью Козьмы оцениваются по одиннадцати- вятся лучшие из лучших – прос- Вердикт бальной шкале (10 – то высокой оцен- Пруткова. И потому получил он имя – высшая оценка, 0 – низ- ки здесь недоста- Google Earth Nexenta Core Platform, то есть это скорее шая). Как правило, мы точно. Разработчик: Google Сайт: http://earth.google.com основа для сборки собственной полно- оцениваем функциональ- Рассматривая ность, производитель- свободное ПО, мы Цена: Бесплатно по закрытой лицензии функциональной системы. Будет ли кто- ность, простоту исполь- обычно указываем Функциональность 10/10 то этим заниматься? Вопрос спорный. Но зования и цену, а для предпочтитель- Производительность 9/10 Простота использования 9/10 почему бы и нет? Сочетание ZFS и удоб- бесплатных программ ный дистрибутив. Документация 9/10 учитывается документа- Иногда это озна- ства deb-пакетов – достаточно хороший ция. Кроме того, мы всег- чает компиляцию Если весь мир – сцена, то Google стимул. Тем более, что родной поддержки да выставляем общую оценку, из исходных текстов, но, если Earth – театр. Простая в использовании, захватывающая и ободряюще практичная ZFS в дистрибутивах собственно Linux в демонстрирующую наше отно- разработчики рекомендуют программа. шение к продукту. Autopackage, мы следуем этому ближайшее время ожидать не приходится. Выдающиеся решения могут совету. [email protected] получить престижную награду Рейтинг 9/10

Февраль 2008 Linux Format 7 http://lolbook.nnm.ru Обзоры Игра X3: Reunion Закончившего обзор Грэма Моррисона с трудом выгнали из офиса…

ногое в этой игре навеяно клас- Вкратце… сической Elite Иэна Белла [Ian М Bell] и Дэвида Брейбена [David Игра с открытым Braben] и более поздней игрой Брейбена, сюжетом о косми- Frontier. Игра, безбрежная, как сам космос, ческой торговле возвращает к мечте нашего детства – отпра- и завоеваниях, по виться к звездам, но без последующего грус- типу Elite и Frontier. тного осознания, что всем космонавтами не Кому понравится X3, тот, вероятно, быть. Рецензия Пола на игру-предшествен- захочет попробо- ницу, X2: The Threat, в мартовском LXF77 вать и ее пред- была не очень-то лестной Он счел, что игре 2 шественницу, X . недостает увлекательности Elite и Frontier, АППАРАТНЫЕ что интерфейс слишком сложен, управле- ТРЕБОВАНИЯ ние ресурсами – запутанно, а все вместе Linux-ядро весьма медлительно. В итоге, X2 заслужила версии лишь 5/10. 2.2.х, 2.4.х Отчасти Пол был прав, но это не помеша- или 2.6 2 Pentium 2,0 ГГц, ло мне проводить в X многие, многие часы. не менее Если взять глубже и забыть убогий сюжет 1024 МБ ОЗУ и закадровый голос, то окажется, что здесь glibc 2.1 есть немало от игр про исследование космо- или новее Видеокарта са, и даже добавлено целое измерение для с поддержкой строительства империи. Игру нужно либо OpenGL принять, либо отвергнуть. X3 тоже не увлекла Графика стала притягательнее, пусть даже ценой повышения аппаратных требований. OSS- или ALSA- Пола. Все та же старая игра – первоначаль- совместимая но она была выпущена в конце 2005 года, чий голос и плоский сюжет скоро отойдут звуковая карта Забудьте сюжет 2 3,8 ГБ места и в ней даже нет фундаментальных изме- Лучшим в X была возможность плюнуть на в тень, благодаря восхитительной игровой на жестком диске нений игровой механики по сравнению с X2. главную сюжетную линию, рвануть в сторону механике. Не беда, что приготовления к мис- Это скорее «вторая серия» для любителей вечного заката и веселиться, как сумеешь, сии напоминают скорее годы Второй миро- X2, чем попытка завоевать новых поклонни- игнорируя сообщения, отчаянно призыва- вой войны, чем далекое будущее. ков. А их у X2 хватает. Когда Майкл Симмс ющие вернуться: ужасный сюжет, вкупе с К счастью, X3 позволяет начать игру так, [Michael Simms], исполнительный директор противным голосом и дурной анимацией пер- как вам заблагорассудится. То есть вообще Linux Games Publishing, искал бета-тестеров сонажей, буквально вынуждали это делать. без всякого сюжета. Можно выбрать один на форуме X2 в октябре прошлого года, он Увы, ни сюжет, ни голос, ни анимация в X3 из трех сценариев: неуемный исследователь, получил более 1000 откликов, когда требова- не изменились. Фабула продолжает начатое скромный купец и безбашенный пират, и лось только 40. в X2 (если вам все же интересно, что стало с даже создать собственную Вселенную. Для папой Джулиана [Julian]), хотя выбор доступ- каждого сценария корабль экипируется соот- ных миссий, кажется, расширен. Но скрипу- ветственно. А именно, купец берет на борт

Свойства навскидку

Забудьте сюжет Выберите роль Торговое соглашение К счастью, отклонение от игровой линии теперь Можно выбрать одну из трёх настроенных ролей, либо Управлять империей стало гораздо проще, допускается официально: большое достижение. (подбором параметров) сочинить собственную. благодаря оптимизации процесса.

8 Linux Format Февраль 2008 Игра Обзоры

много груза, зато его судну для поворота тре- буется 10 миль. У пирата – боевая машина, но Меньше мороки зато вся Вселенная на него ополчается. Если Если вы выбрали роль предпринимателя, ваш любимый герой – Коммандер Джеймсон радуйтесь: делать деньги стало гораздо про- [Commander Jameson], то ближе всех к нему ще. Вместо монотонной ручной настрой- сценарий исследователя (Aspiring Explorer). ки торговых путей и бесконечной отправки Отсюда, из X3-эквивалента Lave, вы и отпра- судов взад-вперед между производствами витесь в поисках славы и успеха. в X2, теперь фабрики можно связать между собой, чтобы они сами договорились о вза- Вот это по-нашему! имных поставках. Это означает, что развитие В игре изменилось многое, и первое, что бро- империи пущено на самотек; вместо этого сается в глаза – графика. Движок полностью можно нарезать трехмерные бублики в бли- переработан, и выглядит X3 чудесно. Такое жайшем астероидном поясе. ощущение, что каждая система срисована с Нам кажется, что Linux Game Publishing отдельного Хаббловского снимка глубокого удалось создать версию игры, максималь- космоса, и все это насыщено космической «Свяжите фабрики друг но приближенную к оригиналу. Отметим, пылью, осколками, крупными астероидами что наш джойстик Logitech Wingman в этой и клочьями атмосферы. Нередко корабль с другом, и пусть они игре работает, и трехмерное управление с зависает поблизости от огромной планеты с ним намного удобнее (хотя и управление с подвижной атмосферой и свитой спутников. улаживают все сами.» помощью мыши в этой версии улучшено). Далекие звезды мерцают сквозь облака, а Скорость, как нам показалось, слегка хуже, свет местного солнца, отраженный от паря- покинув игровой сюжет, можно часами пере- чем у Windows-версии, и чтобы получить щей неподалеку мегалитической структуры, мещаться от одной системы к другой. удовольствие от игры, вам понадобится срав- забивает оптику. Путешествия во многих сис- Игровая механика тоже изменилась. нительно нестарая машина, а в остальном темах сопровождаются саунд-треками в сти- Интерфейс пользователя, управляющий все- это настоящая X3 на вашем рабочем столе. ле Vangelis, хотя некоторые из них, похоже, ми игровыми компонентами – от далеких В Linux-версии есть даже режим с пультом взяты из X2. Это красиво и увлекательно: космических станций до фабрик и спутни- управления в кабине пилотов (кокпите), вос- ков-шпионов в опасных системах – обновлен создающий мигающие лампочки, и фантас- и упрощен. В кабине пилотов больше нет тическое XTM-расширение оригинальной X3, бессмысленно мигающих огней. Их заменила а это значит, что вы получаете не одну игру. панель управления на лобовом стекле, кото- Если вам не нравилась оригинальная версия, рая показывает расположение всего и вся то вряд ли и X3 вас заманит. Для остальных поблизости. Теперь Северный шлюз (North же это отличная возможность насладиться Jump Gate) можно найти по букве N в пане- содержательной и сложной игрой, созданной ли управления, вместо того чтобы направить специально для нашей любимой ОС, что уже корабль на север и надеяться на лучшее, что само по себе неплохо. LXF было одной из самых досадных недоработок предыдущей игры.

Вердикт X3: Reunion Разработчик: Linux Game Publishing Сайт: www.linuxgamepublishing.com Цена: ок. $60 Функциональность 7/10 Производительность 8/10 Простота использования 9/10 Оправданность цены 6/10

Фанату космических торговых стратегий, готовому потратить световой год на изучение механики игры, без X3 не обойтись. Рейтинг 7/10 Любители научной фантастики всех видов покорятся зову космических глубин.

Февраль 2008 Linux Format 9 http://lolbook.nnm.ru Обзоры Оборудование Aten CS62DU KVM Подключить два компьютера к одному экрану в Linux всегда было непростой задачей. Решение нашел Грэм Моррисон.

ыло бы странно увидеть в этом жур- Вкратце… нале нечто, не работающее под управ- Блением Linux, особенно если это Средство связи «нечто» – экзотика вроде KVM. Но для мно- одиночных гих линуксоидов KVM – жизненная необхо- клавиатуры, экрана димость: это комплект, позволяющий разде- и мыши с двумя лить один экран между двумя компьютерами, компьютерами по стандарту DVI, связав клавиатуру, видео и мышь (Keyboard, с помощью USB- Video и Mouse, KVM), а переключение между разъемов. Linux- машинами происходит за один щелчок или совместимостью нажатие кнопки. Пара компьютеров есть у хвалится немало многих, и режим KVM мог бы принести нема- подобных устройств, в том ло пользы. Он не только высвобождает место числе от ATEN, на столе, но и экономит на лишних клавиату- со стареющими PS2 ре и мыши. Вы можете подумать, что Linux- и VGA. совместимость вряд ли сложно обеспечить, но ранее мы испытывали затруднения с неко- торыми KVM: были проблемы с видеоре- жимами, видеосигналы не распознавались, изображение при передаче смазывалось, а в случае нестандартных разъемов клавиату- ры и мыши Linux отказывался распознавать и инициализировать устройства при пере- У CS62DU автономное питание, а благодаря использованию DVI-подключения, ключении между машинами. К счастью, эта KVM передает цифровой видеосигнал отменного качества. штучка от Aten сулит полную совместимость с Linux (и даже с FreeBSD!), что приятно: мы всегда рады видеть новые устройства, кото- торски, CS62DU предпочитает устаревшему Имеется выносная кнопка, идеальная для рые «уважают» нашу любимую ОС. PS2-интерфейсу чистый USB, которым и так развлекательной Linux-машины в гостиной, оснащено большинство современных уст- но клавиатурное переключение работает Подключаемся ройств. Наш KVM предоставляет пару USB (по настолько здорово, что кнопку от нашего Этот комплект вам пригодится, только если одному для каждого устройства): клавиатура настольного ПК мы, в конце концов, отклю- ваши компьютеры и дисплей сравнительно подключается к лиловому разъему, а мышь – чили. LXF новы: для обработки видео в нем использу- к черному. «Мышиный» порт может исполь- ется стандарт DVI, в противоположность ухо- зоваться для подключения прочей перифе- дящему, но пока вездесущему VGA. Но DVI рии USB 2.0, но придется добавить портов, все равно лучше, ведь видеосигнал в нем – вставив разветвитель. Любое подключенное цифровой; в результате – полное отсутствие устройство поступает в распоряжение актив- Прилагается побочных эффектов при использовании ного компьютера, что неплохо, например, выносной двойного видеоввода. С VGA-KVM изображе- для принтера. Стандарт DVI без проблем вза- переключатель, ние часто искажалось и становилось нечет- имодействует с USB-интерфейсом, и каждый но нам показалось ким, так как аналоговый сигнал зависит от Linux-компьютер распознает клавиатуру и гораздо проще пользоваться состояния компонентов KVM и длины кабеля мышь так же надежно, как если бы они были Вердикт клавиатурой, между компьютером и монитором. DVI не подключены к портам на его задней панели. с участием клавиши знает таких проблем, и мы получили безуп- CS62DU Scroll Lock. речно стабильное изображение, легко пере- Переключение контекста Разработчик: Aten ключаясь между Заканчивая с интерфейсом, упомянем об Сайт: www.aten.com различными разре- аудиоподключениях, которые принимают Цена: ок. $80 шениями на любом аудиосигналы с каждого компьютера и пере- Функциональность 9/10 из двух компьюте- дают их на единственный комплект колонок. Производительность 8/10 ров. Указанное мак- Приятно, что аудиовход можно выбрать неза- Простота использования 8/10 симальное разреше- висимо от состояния главного переключателя, Оправданность цены 8/10 ние 1920х1200 при то есть слушать музыку с одного компьютера, Если вы ищете способ объединить две 60 Гц – это скорее работая на другом. Linux-машины, то Aten CS62DU ограничение специ- А сладкое мы приберегли напоследок: настоятельно рекомендуется. фикации DVI, чем переключаться между машинами, как и реальный предел аудиовходами, можно клавиатурными ком- Рейтинг 8/10 KVM. Столь же нова- бинациями с участием клавиши Scroll Lock.

10 Linux Format Февраль 2008 Фото-ПО Обзоры Autopano Pro 1.4 Ник Вейч нередко чувствует себя припертым к стенке, но на сей раз ему просто хотелось снять панораму пошире.

очти каждый владелец цифрово- Вкратце… го фотоаппарата такое испытывал. П Перед вами картина вашей мечты – Autopano скани- фантастический пейзаж/морской закат/гор- рует коллекции ный хребет или грандиозный каньон – и она цифровых фото никак не умещается в видоискатель цифрови- в поисках панорам- ных фотографий, ка, если только не взлететь… вон на тот утес! затем автоматичес- Единственный разумный выход, думаете вы, – ки собирает сделать несколько фото, перекрыв желанную их для вас воедино. панораму, а потом хитроумно состыковать их Единственная в GIMP. Но через пару дней вы осознаете про- Linux-альтернати- ва – ручная сборка блемы такого подхода: смена выдержки, диа- в GIMP! фрагмы, цвета, баланса белого и куча других мелких различий между фотографиями сво- дят ваши шансы получить достойный резуль- тат практически к нулю. Autopano Pro устраняет эти и многие дру- гие проблемы, как по волшебству, и берет- ся за работу еще до того, как вы сделали хоть один снимок! Откройте в двухпанельном Грэм главном окне папку с цифровыми фотогра- сказал… фиями и посмотрите, как Autopano группи- рует изображения с помощью EXIF-данных, Покажите Autopano папку с ландшафтными фотографиями – и останется только наблюдать «Вторая по раз- составляя будущие панорамы. Программа за их группировкой в готовые панорамы, как по волшебству! мерам цифро- делает больше – она группирует файлы еще вая фотография и по времени создания. После этого заготов- в мире (и самая ки панорам появляются в правой части окна, часть магии Autopano, алгоритм SIFT, находит на (2 ГГц Intel Duo с 2 ГБ ОЗУ) за какие-то большая пей- готовые для дальнейшей обработки. На прак- ключевые точки каждого изображения и гра- 2 минуты выдала панораму из 10 снимков в зажная фото- тике, автоматический поиск работает пре- мотно «сшивает» фотографии вместе, пере- полный размер (примерно 5000 х 4000 пик- графия) ском- красно, хотя иногда получаются неожидан- плетая и перемешивая пиксели в процессе их селей). Неплохо, а? понована Джерардом ные результаты с несколькими панорамами объединения. Инструменты в верхней части Autopano использует лицензирован- Мэйнардом одного и того же вида (может быть, просто окна позволяют обрабатывать и отдельные ную технологию, и свободным становить- с помощью снятого с разных точек). Но добавить или изображения, и панораму целиком. ся не собирается. Заплатив за программу, Autopano Pro удалить «неподходящие» снимки из группы вам предстоит немало потрудиться, чтобы в 2007 году. совсем нетрудно. Обыкновенное чудо оправдать расходы. С другой стороны, если Посетите www. Жмите кнопку Edit (Правка) в любой из Элементарные операции вроде регулировки вам такая программа действительно необ- harlem-13- панорамных групп – и колдуйте с картинками цветового баланса делаются просто. Вещи ходима, то это дешевле, чем покупать Маc gigapixels.com». и настройками. Если вам нужна просто пано- посложнее, вроде подгонки позиции отде- с подобным ПО – лучшего способа делать рама, то колдовать даже и не придется: ведь льного снимка, получаются не так легко, такую работу, на любой платорме, просто не но эта операция непроста по определению. найти. LXF Программисты сделали все возможное, что- бы сберечь ВАШИ время и усилия – есть даже удобный инструмент для автокадрирования, позволяющий вместить в итоговую панораму Вердикт как можно больше. Закончив редактирование, можно присту- Autopano Pro 1.4.0 пать к финальной сборке. И здесь доступных Разработчик: Kolor Сайт: www.autopano.net параметров предостаточно; в основном они Цена: €99 относятся к операциям с форматом файла Функциональность 10/10 и размером картинки. Понятно, что мак- Производительность 9/10 симальный размер картинки определяется Простота использования 10/10 числом пикселей в исходных снимках, но на Оправданность цены 8/10 практике полномерный пейзаж нужен редко. Наоборот, легкое уменьшение (скажем, до 90 Создает великолепное панорамное процентов) позволит скрыть немногочислен- фото практически моментально! ные искажения, полученные в процессе съем- Параметров рендеринга множество, ки или при сборке панорамы. Длительным Рейтинг 10/10 но лично следует заботиться только о размере файла! процесс не назовешь – наша тестовая маши-

Февраль 2008 Linux Format 11 http://lolbook.nnm.ru Обзоры Робопингвин Tux Droid Ждете не дождетесь, когда роботы будут править миром? Майку Сондерсу тоже не терпится – особенно если это будут симпатичные пингвинчики…

есятилетиями фантасты предрекают Вкратце… нашествие роботов на наши дома – Дчтобы заваривать нам чай, прино- сить газеты или убирать на кухне. Это время Программируемый пока не настало, но Linux-пользователи могут USB-робот смоделировать будущее с Tux Droid, про- с моторчиками, граммируемым пингвином: он умеет хлопать огоньками и синтезатором речи. крыльями, вертеться на месте, подмигивать См. также: и издавать забавные звуки. У этой 21-сан- а смотреть-то тиметровой пластиковой куклы множество особо и нечего… разных портов и кнопок: микрофон, телефон, регулятор громкости, разъем питания и кноп- ка на лбу. В открывающемся клюве виден динамик; три колесика внизу позволяют вер- теться на месте, а глаза загораются чуть жут- коватым голубым огоньком. Робот управляется причудливым адапте- ром-рыбкой, подсоединяемым к USB-порту вашего ПК: он передает на игрушку радиосиг- налы. Питание аккумуляторное, и поставить Тукса можно где угодно. В комплект входит пульт дистанционного управления, по типу обычного телевизионного пульта, только с парой-тройкой «чисто пингвиньих» кнопок. И что же с ним можно делать? Установив управляющее ПО с www.tuxisalive.com (пос- тавляемое в форматах .deb, .rpm и .tar.gz), вы Увы, Tux Droid не плавает и не глотает селедку ведрами. сможете запускать tuxgi и руководить Туксом через графический интерфейс, в основном для тестирования: можно заставить его пох- например, заставить робота открывать рот и, по сути, недалеко ушел от микрофона. лопать крыльями, подмигнуть, повертеться и говорить: Будь у него на пузе дешевый LED-дисплей вокруг себя и поговорить парой синтезиро- tux.cmd.mouth_open() из двух строк, он бы здорово выиграл. Также ванных голосов (мужским и женским). tux.tts.speak(‘Tux is here!’) хотелось бы, чтобы колесики позволяли Можно запустить Tux Shell, интерфейс А значит, легко создавать полноценные Туксу передвигаться, а не просто вертеться программирования для Тукса. Команды Python-скрипты, используя данные из раз- на месте. Если Kysoh добавит эти мелочи, Python позволяют связать воедино несколь- личных источников (Интернета или локаль- то пингвин станет замечательной игрушкой; ко разных движений и действий игрушки – ных файлов) для отдачи пингвину команд. сейчас же он очень скоро надоест. LXF Например, вы можно написать программу, периодически проверяющую почту на сервере POP3 – а по прибытии сообщения Тукс пок- рутится или запищит. Можно наговаривать в Свойства навскидку микрофон заметки, и вы получите сюрреалис- тический диктофон. Вердикт Tux Droid Попробуйте гаджеты Разработчик: Kysoh Готовые программы для Tux Droid называют- Сайт: www.kysoh.com ся Gadgets [гаджеты], и сообществом на www. Цена: € 99 tuxisalive.com их создано немало: прогноз Функциональность 6/10 погоды, калькулятор, будильник, CPU-мони- Производительность 8/10 тор, RSS-читалка и прочее. У куклы нет экра- Простота использования 9/10 на, поэтому она проговаривает выбранный Оправданность цены 5/10 гаджет – знай, нажимай кнопки up/down на По моей команде Пусть говорит Приятный, занимательный, поддается Заставьте пингвина хлопать Гаджеты обучат вашего дружка- пульте управления. При работе за компью- «дрессировке»: еще чуть-чуть, и станет крыльями, вертеться и говорить пингвина, например, озвучить тером для этого используется графическое членом семьи хакеров! с помощью нехитрого прогноз погоды или процент меню. Повеселились мы с ним от души, хотя приложения tuxgi. загрузки системы. практической пользы тут и мало. Tux Droid – Рейтинг 7/10 славное развлечение, но он очень ограничен

12 Linux Format Февраль 2008 Планшет для чтения электронных книг Обзоры Электронный планшет iRex iLiad Станет ли Linux eBook бестселлером? Выясняет Лео Максвелл…

азмером примерно с лист формата Вкратце… А5, iRex iLiad уютно ложится в левую Рладонь, оставляя свободными боль- Наладонный шой палец – для работы с основными орга- планшет для нами управления, и правую руку – для сти- электронных книг, луса. На ощупь напоминает книгу в твердом работающий переплете или блокнот. Ближе к левому краю на ядре Linux. устройства собраны: длинная узкая клавиша См. также: Bookeen Cybook, Amazon для перелистывания и кнопки Up, Down и Kindle, Sony Select для навигации. eReader. Монохромный электрофоретический экран легко читается даже на солнечном све- ТЕХНИЧЕСКИЕ ДАННЫЕ ту, и сразу после распаковки и зарядки я вдруг Процессор: Intel ностальгически погрузился в Приключения Электронных книг XScale, 400 МГц Шерлока Холмса (текст проекта Gutenberg, в Интернет полно, Память: 64 МБ ОЗУ идущий в комплекте с планшетом). и многие бесплатны. Экран: Поверхность полуматового экрана доволь- «Электронная бумага», 8,1 дюйма, но жесткая: писать и рисовать на ней с непри- 768 х 1024 пикселя, вычки неудобно, да и клавиатура «приторма- 160 dpi живает», но ведь устройство предназначено в в виде PNG-файла. Исключение составляет ки обещают усовершенствовать программную основном для чтения. Стилусом можно поль- PDF, в котором используется проприетарный начинку. «На борту» есть вполне адекватные зоваться для письма, рисования и некоторых формат, недоступный для просмотра в Linux пользовательские руководства, которые при других действий, типа масштабирования и [распространенное заблуждение. Формат PDF желании можно распечатать. панорамирования. Но он не для сенсорного открыт, но полноценная реализация работы с экрана [] – используется индук- ним весьма трудоемка, – прим.ред.]. Итог ционная система: в стилус встроена катуш- Число электронных книг, доступных для Цена делает планшет весьма дорогостоящей ка, работающая как антенна Wi-Fi. Графики загрузки из Интернета, постоянно растет, и заменой бумажной книге, а скоростью при- и схемы отображаются четко, фотографии многие из них бесплатны. В нижней части шлось пожертвовать ради экономии энер- вполне достойно выглядят в 16-уровневой устройства замечено гнездо для наушников, гии. С другой стороны, возможность носить с шкале серого. Масштабирование простое и но возможность прослушивания аудиофайлов собой целую библиотеку очень уж аппетитна. эффективное. пока отсутствует. Карты MMC (до 1 ГБ), CF (до Очевидная альтернатива по цене – недоро- 4 ГБ) и USB-накопители – все это поддержива- гой ноутбук или PDA, но для повседневного Жизнь на батарее ется. Многоштырьковый разъем для «поход- пользования четкий экран, легкость (389 г) и Питание iLiad потребляет только при пере- ного» хаба кажется хрупким, но остальное длительная автономная работа выводят iLiad в Литий-ионная листывании, и обещано 15 часов автоном- сработано на совесть. лидеры. Аналогичных устройств сейчас нема- батарея сулит ной работы литий-ионной батареи. Многое Беспроводные подключения (WEP или WPA) ло, но такого набора свойств, похоже, нет ни до 15 часов зависит от режима работы (карандаш, Wi-Fi доступны и легко настраиваются. ПО устрой- у одного. LXF автономного и пр.), но 10 часов чтения без подзаряд- ства можно обновить через Интернет, и к папке чтения в дороге. ки есть – сам проверял. SMB на ПК подключиться можно тоже. Но под- Среди поддержи- ключение работает только на передачу файлов Вердикт ваемых форматов – (планшет автоматически загружает содержи- PDF, HTML, TXT и PRC мое папки и отключается снова). Интерактивная iRex iLiad (Mobipocket, закрытый работа (браузер) ему не по плечу. Разработчик: iRex Technologies Сайт: www.irextechnologies.com DRM-формат). Можно Прилагающееся к устройству ПО разрабо- Цена: $699 смотреть картинки в тано для Windows, но iLiad был автоматичес- Функциональность 7/10 форматах JPEG, BMP и ки опознан и смонтирован на OpenSUSE 10.3 Производительность 8/10 PNG. Созданный текст и Ubuntu 7.10 как USB-накопитель, поэтому Простота использования 9/10 сохраняется как PNG. К передача файлов сводится к простому «пере- Оправданность цены 6/10 файлам можно созда- таскиванию». Устройству недостает файлово- Превосходная замена тоннам книг. вать аннотации, не го менеджера, а «смотрелка» PDF не понимает Только не ждите ничего больше. редактируя оригинал: закладки, но в целом все работает как надо. для этого создается Поддержка сообщества в части написа- Рейтинг 7/10 перекрывающий слой ния ПО развивается, да и сами разработчи-

Февраль 2008 Linux Format 13 http://lolbook.nnm.ru Обзоры Дистрибутив Linux

Alt Linux 4.0.1 Desktop

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

аконец-то наступил праздник и для Вкратце… поклонников российского дистри- Нбутива ALT Linux: после нескольких Отечественный переносов релиза команда разработчиков дистрибутив Linux, в конце осени прошлого года объявила о основанный на готовности очередной версии под номером крупнейшем 4.0. Впрочем, не обошлось без небольших репозитории открытого ПО досадных ошибок, в связи с чем данный Сизиф (www. обзор подготовлен уже на базе версии 4.0.1, sisyphus.ru). появившейся на сервере компании ALT Linux См. также: спустя некоторое время [во время его напи- ASP Linux сания на сервере появилось еще одно обнов- ление под номером 4.0.2, – прим. ред.]. Традиционно эта ОС славится улучшенной по сравнению с другими известными дистрибу- тивами локализацией и адаптацией к россий- ским условиям (что, в общем, естественно), но к последнему стабильному релизу авторы проекта подготовили несколько интересных новшеств, призванных в еще большей степе- ни убедить пользователя, что отечественные образцы систем GNU/Linux могут на равных конкурировать с известными «иностранны- Если вы заблудились в стартовом меню, попробуйте поиск по названию. ми» аналогами. Итак, не будем откладывать в долгий ящик и посмотрим, насколько уда- полезной для пользователей, только начи- ленного ПО можно легко отредактировать с лось разработчикам ALT Linux реализовать нающих знакомство с семейством GNU/Linux помощью встроенного менеджера пакетов задуманное. и не готовых сразу переходить к процессу Synaptic. установки системы на компьютер. В режиме Отдельно нужно сказать про наличие в Полная готовность LiveCD пользователю доступно большинство дистрибутиве оригинальных видеодрайверов Первое, что бросается в глаза при запуске программ, входящих в установочный набор и кодеков для воспроизведения аудио- и Alterator позволяет настраивать установочного компакт-диска – это нали- основного дистрибутива, но, пожалуй, недо- видео-данных – причем устанавливаются эти большую часть чие возможности старта системы в режиме стает введенной в обиход многими дистрибу- компоненты автоматически, и пользователь параметров системы LiveCD. Данная опция появилась в дист- тивами опции стационарной установки опера- освобожден от необходимости самостоятель- из одной точки. рибутиве впервые, и она окажется весьма ционной системы непосредственно из загру- но доводить операционную систему до надле- женного в память компьютера LiveCD. жащего рабочего состояния, что порой явля- Собственно процесс установки, проходя- ется задачей весьма нетривиальной. Таким щий полностью на русском языке, не создает образом, сразу после первой загрузки ALT особых проблем для пользователя, позволяя Linux можно просматривать DVD и слушать с минимальными дополнительными действи- коллекции MP3-файлов, что называется, «из ями установить систему на компьютер. Для коробки». Общее впечатление после инстал- удобства новичков в программе установки ляции дистрибутива на компьютер благопри- предусмотрен механизм выбора планируе- ятное: мы получаем полностью работоспосо- мой пакетной конфигурации – в зависимости бную систему, готовую к активному исполь- от задач, которые владелец будет выполнять зованию с самых первых минут. на компьютере; хотя для части продвину- тых пользователей, привыкших полностью Особый подход контролировать процесс инсталляции сис- По умолчанию устанавливается доволь- темы, отсутствие выбора по пакетам может но большой список прикладных программ, показаться необоснованным ограничением. охватывающих широкий спектр задач, от Впрочем, при необходимости состав установ- игровых приложений до пакета офисных

14 Linux Format Февраль 2008 Дистрибутив Linux Обзоры

программ. Между тем, название Desktop в чительно расширить функциональность при- Учиться никогда не поздно имени дистрибутива, подразумевающее ори- ложения, что позволит пользователям полно- Что касается доступной документации на ентацию на обычного домашнего пользо- стью отказаться от ручной правки конфигура- русском языке, помогающей пользователю вателя, вполне себя оправдывает: средства ционных файлов, использования специали- освоить операционную систему максимально разработки при необходимости придется зированных утилит или работы в командной полно и в сжатые сроки, то в этой области доустанавливать самостоятельно. Сделать строке. Появление в дистрибутиве единого дистрибутиву ALT Linux нет равных: помимо это нетрудно, но требует определенных командного центра служит доказательством стандартных файлов справки приложений, навыков и времени: стремление авторов того, что в ближайшем времени ALT Linux переведенных на русский язык, в составе дистрибутива к сбережению аппаратных сможет стать не менее удобным в настройке, дистрибутива имеется полное руководство ресурсов компьютера привело к тому, что чем другие популярные в мире операционные пользователя данной ОС, подробно описыва- при выборе какого-либо пакета (например, системы GNU/Linux. Также следует отметить ющее работу всех компонентов и утилит. При HTML-редактора Quanta) будет установ- и тот факт, что использовать Alterator мож- необходимости можно получать обширную лен минимальный набор, а все остальные но как в виде привычного приложения, так дополнительную информацию из онлайн- компоненты, требуемые для полноценно- и с помощью web-интерфейса, чего в дру- хранилища документации ALT Linux. го использования возможностей редакто- гих дистрибутивах пока не наблюдается. На В общем и целом дистрибутив выглядит ра, нужно будет инсталлировать самостоя- самом деле, данная возможность может ока- вполне добротно: общая тема оформления тельно. Также некоторую путаницу вносят заться весьма полезной, если пользователю для всех оконных менеджеров способствует ошибки в описаниях пакетов, связанные с при настройке операционной системы пона- лучшей адаптации пользователя к работе в неверной кодировкой кириллических текс- добится помощь специалиста со стороны: системе, а наличие в Alterator системы под- тов, или когда, например, пакет kdenetwork- последнему будет достаточно подключиться ключения сторонних онлайн-репозиториев devel позиционируется, как компонент, необ- к вашему компьютеру через сеть и прямо из открывает доступ к тысячам дополнительных ходимый для разработки мультимедийных собственного браузера посмотреть, что и как программ, не входящих в основной дистри- приложений. Еще один неудобный момент настроено в системе, а при необходимости бутив, но обладающих популярностью у тех – отсутствие в дистрибутиве каких-либо – внести поправки. или иных групп пользователей. При всей средств виртуализации, в последнее время Впрочем, настройка системы является скромности темы оформления, дистрибутив ставших весьма популярными среди Linux- одноразовой задачей; гораздо важнее удоб- окажется интересным и тем, кто предпочи- пользователей. Впрочем, данный факт опять ство дистрибутива в ежедневной работе. тает различные декоративные изыски в виде же может объясняться направленностью Здесь можно отметить высокую скорость композитных рабочих столов, имитирующих версии Desktop на домашних пользовате- загрузки и функционирования многих при- трехмерность. К сожалению, обилие мелких лей, хотя и им иногда вполне может приго- ложений, хотя OpenOffice.org по-прежне- недочетов немного снижает общую оцен- диться инструмент, позволяющий работать с му выглядит немного медлительным. Также ку, но, учитывая активность разработчиков, «неродными» приложениями, не выходя из некоторое неудобство доставляет слишком постоянно выпускающих обновления дис- привычного Linux-окружения. разрастающееся меню в случае, если поль- трибутива, можно надеяться на то, что со зователь пожелал установить большое коли- временем впечатление будет только улуч- Управление и чество приложений. Похоже, современное шаться. LXF использование изобилие популярных Linux-программ требу- Одно из наиболее заметных нововведений, ет пересмотра существующей системы меню. появившихся в данной версии ALT Linux – Пока, впрочем, проблема эта не решена пол- менеджер системных настроек Alterator. Пока ностью и в других дистрибутивах [можно, список доступных к изменению опций не разве что, упомянуть меню Kickoff, но работа очень велик, но в будущем планируется зна- с ним требует привычки, – прим. ред.].

Вердикт Alt Linux 4.0.1 Desktop Разработчик: ALT Linux Сайт: www.altlinux.ru Цена: Бесплатно Функциональность 7/10 Производительность 6/10 Простота использования 7/10 Документация 10/10

Хороший релиз, но не лишённый некоторых недостатков и неоднозначных решений. Рейтинг 8/10 Документация ALT Linux выше всяких похвал.

Февраль 2008 Linux Format 15 http://lolbook.nnm.ru Обзоры Дистрибутив Linux ASPLinux 12 Carbon Слухи о его смерти сильно преувеличены – Роберт Басыров делится своими впечатлениями о двенадцатой версии отечественного дистрибутива на базе Fedora Core.

сть у нас такая странная черта – судить лась от своего фирменного решения в пользу лей Windows, подумывающих о переходе на Вкратце… о том, чего не знаем. Стоило компании Anaconda. В результате стало невозможно открытое ПО. Столкнувшись с непривычны- ЕASPLinux объявить о выпуске новой менять размеры существующих разделов дис- ми способами работы с рабочим столом, они Отечественный версии своего дистрибутива под номером 12, ка, по крайней мере, мы такой возможности не начинают посматривать в сторону KDE-ориен- дистрибутив Linux как на форумах началось бурное обсуждение. обнаружили. Об этой функции можно пожа- тированных дистрибутивов. Правильнее было для настольного С явным уклоном в сторону: «Да там ничего леть – она была удобной. Однако появились бы равноправное развитие обоих графических использования. См. также: нового». Теперь дистрибутив вышел, и можно и преимущества. Прежде всего, это более окружений. Как бы там ни было, при инстал- ALT Linux реально оценить его возможности. высокая скорость установки. В сравнении с ляции не рекомендуется отказываться от уста- или Mandriva. Одним из основных моментов можно ASPLinux 11.2, двенадцатая версия устанавли- новки среды GNOME, даже если вы предпо- назвать поддержку всех современных чипсетов, вается шустрее, без сбоев и с первой попыт- читаете KDE. Дистрибутив не будет работать и прежде всего Intel 965, 975, P35. Расширена ки (на том же самом оборудовании). Однако, стабильно. поддержка целого ряда устройств: модемов, справедливости ради, заметим, что время инс- Новая тема оформления, выбранная по TV-тюнеров, сетевых адаптеров, USB-видеока- талляции этого дистрибутива все же намного умолчанию (темноватая Carbonite с ориги- мер, сканеров, беспроводного и другого обо- больше, чем у ALT Linux. Пользователи поо- нальным фоном рабочего стола) может не рудования. Драйвера для NVIDIA – это почти пытнее отметят возможность подключить при понравиться многим. Если она не пришлась по «полное собрание сочинений»: предоставлены инсталляции внешние репозитории. Ручной душе и вам, то Emerald Theme Manager помо- их проприетарные редакции для трех поколе- выбор пакетов для установки по-прежнему жет установить и подобрать приятную тему ний карт этого изготовителя. Однако, здесь доступен, и этой возможностью пренебрегать для себя лично. необходимо оговориться: при инсталляции дис- не стоит, особенно если вы новичок. Кроме В ASPLinux 12 обновлен набор приложе- трибутива не рассчитывайте на автоматический того, в этом инсталляторе имеются поддержка ний, включенных в систему по умолчанию. подбор соответствующего драйвера, его необ- LVM и установка по сценарию. Впервые добавлен OpenOffice.org 2.3 Pro от ходимо указать вручную. Это не значит, что Еще одна особенность – в дистрибутиве компании Инфра-Ресурс. Приятное дополне- при автоматической инсталляции вам придется не предусмотрено обновления, то есть мигри- ниее для FireFox – русскоязычный словарь: работать только с командной строкой – Х-сер- ровать с версии 11.2 на 12 без переустановки теперь возможна проверка русской орфогра- вер нормально запустится; но вы не сможете невозможно. При этом вам придется либо фии. (кстати, и украинской тоже.) пользоваться преимуществами 3D-интерфей- настраивать дистрибутив заново, либо искать ASPLinux традиционно поддерживает вос- сов и, вероятно, правильно подобрать разре- способы сохранения прежних настроек. произведение большинства основных форма- шение для своего монитора. Для владельцев Спорным моментом можно назвать ори- тов звука и видео прямо «из коробки», то есть других видеокарт предусмотрена менее полная ентацию новой версии дистрибутива только без дополнительных действий по установке поддержка: xorg-x11-drv-fglrx для ATI и пара на файловую систему ext3: другие варианты необходимого ПО. Эта традиция сохраняется. драйверов для VIA. Отдельно хочется отме- при создании разделов не рассматривают- Теперь доступны еще и WM9 и AMR. тить поддержку беспроводного оборудования: ся. Нетерпеливые энтузиасты, конечно, уже ASPLinux 12 трудно назвать крупным инфракрасного и . С повсеместным попробовали «запретный плод», однако при революционным шагом. Это скорее плано- распространением КПК обмен данными между использовании JFS, XFS, Ext2 и ReiserFS раз- мерное, эволюционное развитие дистрибу- «наладонником» и настольным компьютером работчики не дают никаких гарантий. Для тива, особенность которого – ориентация Если темная гамма становится чуть ли не базовой функцией. массового пользователя данное ограничение на стабильность. А каким еще должен быть навевает на вас не существенно. дистрибутив для частного и коммерческого скуку, выберите Встречаем по одежке В новой версии дистрибутива нет сборки использования? LXF что-нибудь Первым видимым новшеством стала заме- для x86_64. Целесообразность использова- повеселее. на инсталлятора. Компания ASPLinux отказа- ния x86_64 для несерверных систем – тема отдельной дискуссии. Возможно, поэтому поддержки этой архитектуры в данной версии Вердикт и не появилось. ASPLinux 12 Carbon Главное – содержание Разработчик: ASPLinux ASPLinux сделал очередной шаг в сторону Сайт: www.asplinux.ru самых простых, неискушенных пользовате- Цена: Бесплатно лей. Прежде всего, это монтирование нерод- Функциональность 8/10 ных для Linux разделов в автоматическом Производительность 9/10 режиме – под GNOME. В KDE их по-прежнему Простота использования 8/10 придется подключать вручную. Зато монтиро- Оправданность цены 9/10 вание USB-носителей в KDE автоматическое. Скорее эволюция, чем революция, ASPLinux по-прежнему ориентирован на но если вы – убежденный сторонник рабочий стол GNOME, хотя и KDE работает в ASPLinux, пробуйте. нем не менее стабильно. Это, на наш взгляд, не совсем правильно, так как GNOME все Рейтинг 8/10 же непривычен для большинства пользовате-

16 Linux Format Февраль 2008

Сравнение Каждый месяц мы сравниваем тысячи программ – а вы можете отдыхать! Онлайн-процессоры А не забросить ли привычный ООо и перенести свои тексты в Сеть? Энди Ченнел работает онлайн…

Как выбрать…

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

ечатающая машинка IBM Magnetic web-страниц (неудачного) и интерактивности. слова окажетесь отрезанным от своих доку- Наш Tape/Selectric Typewriter (MT/ST), Основу подобного ПО составляют пре- ментов; во-вторых, ни одной из таких структур выбор первая вещь, которую можно словутые 20 процентов функций, которы- не удалось собрать вышеупомянутые услуги Google Docs П назвать текстовым процессором, ми пользуется 80 процентов пользователей. в единый комплект; в-третьих, подумайте о с. 19 увидела свет в 1964 году. С тех пор многое Пользователи набирают тексты, редактируют, безопасности – ведь ваша приватная бизнес- Buzzword с. 20 изменилось, но одно оставалось прежним: исправляют, форматируют, проверяют право- переписка будет храниться на чужом сервере. ZohoWriter с. 21 рядовой пользователь набирал текст локаль- писание и т.п. – с этим без труда справляется А есть еще и аспект долгосрочной перспекти- ThinkFree с. 22 но. Альтернатива появилась лишь несколько web-почта. Такие онлайн-процессоры, в соче- вы – вдруг Zoho, ThinkFree или Google решат, ajaxWrite с. 22 лет назад. тании с громадными хранилищами сетевых что онлайн-офисы стали для них обузой и Спорное «обновление» интерфейса гигантов уровня Google и Adobe, могут иметь больше не оправдывают расходов? Microsoft Word в 2007 году снискало пример- очевидные преимущества перед «островны- Все это необходимо взвесить – у LXF, но поровну оваций и гнилых помидоров: про- ми» офисами вроде ООо и MS Office: повсе- например, исключительная паранойя насчет блемы с форматом .docx (якобы открытым, местный доступ к документам через брау- безопасности данных. Мы также обращали а на деле неприменимым для конкурентов) зер, совместная работа в реальном времени, внимание на поддержку вывода на печать и изрядно подняли акции его вечного соперника, мгновенная web-публикация и встраивание взаимодействие с сетевыми «собратьями», OpenOffice.org. Вслед за тысячекратным ростом «живых» документов прямо в web-страницы. работу с различными форматами, темпы раз- вычислительных мощностей и объемов памя- Но обращение к подобной службе потребу- вития, дополнительные услуги, интеграцию с ти, текстовые процессоры ползли в сторону ет известных жертв. Во-первых, без подклю- прочими приложениями и, конечно, возмож- настольной верстки (неинтуитивной), создания чения к Интернету вы в буквальном смысле ность повседневной работы в Linux.

18 Linux Format Февраль 2008 ONOOnline-процессоры текста Сравнение Google Docs Превосходный партнер для онлайн-издателя.

нтерфейс текстового процессо- сносок – а ведь это очень важные элементы ра повторяет настольные образцы, текста. Отсутствие этих функций огорчает Исверху вниз: строка меню, панель и в том случае, если у вас большой задел инструментов и рабочая область. На деле, прекрасно отформатированных документов строка меню очень напоминает широко раз- для импорта: процессор вставит колонтиту- рекламированную «Ленту» (Ribbon) – кон- лы прямо в текст, и немало времени уйдет текстно-зависимую панель MS Office 2007: на «чистку». нажатие на основном пункте выводит под Другой недостаток присущ всем онлайн- ним панель инструментов с набором сопутс- процессорам. Доступно только 11 шрифтов, твующих кнопок. Основная работа проходит контроль над размером которых неполный в режиме «Правка», где есть все необходи- (только до 36 пунктов), а выбор цветов огра- мое для форматирования текста, оформления ничен 70-ю оттенками – хотя все это нетрудно списков, настройки гиперссылок и т.п. Но это поправить прямым редактированием HTML. не все: есть и вкладка «Вставка» для вставки Значимость проблемы снижается, если вы рисунков, комментариев, таблиц и закладок, собираетесь печатать где-нибудь в другом и вкладка Revisions (История) для просмот- месте, или совместно готовите документ ра вариантов документа с интервалом 20–40 Документ можно тут же опубликовать в Google не преминул перед выводом в другой формат. Нет проблем секунд. Далее вправо в строке меню распо- Сети – либо как отдельный, либо встроив его заметить, что Google с экспортом в: Word, ODF, RTF, TXT и PDF. лагаются пункты настройки предпросмотра, в интернет-страницу с помощью предостав- Docs – отнюдь Помимо обработки текста, Google пред- печати и отправки документа по электронной ляемого нехитрого кода, а затем обновлять не замена локальным лагает пользовательское пространство для почте, затем вкладки под заголовками Share так, чтобы посетители страницы сразу же текстовым 5 000 документов и 5 000 рисунков – хотя (Общий доступ) и Publish (Публикация). Такая видели сделанные изменения. Это здорово процессорам, последнее нетрудно расширить с помощью раскладка интерфейса очень удобна: ненуж- для мгновенного обмена идеями и докумен- а лишь упрощенная Picasa и встроенных изображений от этой ные меню и значки не отвлекают внимание от тами, и может быть использовано для непре- альтернатива. службы. Размер каждого изображения огра- текущей работы. рывного обновления контента web-сайтов. ничен 2 МБ. Файловый менеджер GDocs Блестяще организована совместная рабо- управляет документами, группируя их с та над документами. Например, можно при- Слабое место – печать помощью тэгов или папок (что, в сущности, гласить к редактированию коллегу – продол- Заметно, что Google Docs занимается магнат одно и то же). жая самостоятельную работу – и постоянно «новых медиа». При фантастических возмож- Сейчас служба имеет статус «бета». сравнивать результаты его труда со своими, ностях работы с «битами», на «атомарном» Обычно это означает, что компания еще не обмениваясь заметками и комментариями, в уровне доступно гораздо меньше: вывод на уверена в окупаемости – но в перспективной атмосфере подлинно совместного творчества. печать рудиментарен и лишен многих функ- стабильности сомнений нет. Эта служба – для Обеспечить такое взаимодействие далеко не ций, которыми обладают другие подобные тех, кого больше заботят web-публикации, просто, но на деле все работает прекрасно, и службы. Бросается в глаза невозможность чем печать. Возможности совместной работы каждые 20–30 секунд вы видите плоды труда добавления верхних и нижних колонтиту- выделяют ее из общей массы и делают иде- своих товарищей. лов к страницам, или каких бы то ни было альным полигоном коллективного труда.

Вердикт Google Провайдер: Google Сайт: http://docs.google.com Лицензия/Цена: Не указано; бесплатно для обладателей учетных записей Google Интерфейс не перегружен Если вы предпочитаете работать на просторах Сети, а не корпеть над и прост в управлении, клавиатурой в одиночку, но истинная мощь то это – ваш выбор. таится во вкладке Share (Общий доступ). Рейтинг 8/10

Февраль 2008 Linux Format 19 http://lolbook.nnm.ru Сравнение Online-процессоры текста Buzzword Красавчик Flash еще покажет себя…

uzzword – новичок нашего Сравнения: позицию в нем. Колонтитулы могут его ограниченная бета-версия была занимать позицию справа, слева или Bзапущена только в начале 2007 года. посередине, и оснащены разумны- А еще он – один из самых заметных, так как ми умолчаниями (заголовок доку- использует технологию, обычно не ассоцииру- мента, номер страницы, имя автора и ющуюся с большими приложениями – Flash/ пр.). Больше того, они редактируют- Flex – и пытается делать нечто нетрадицион- ся как обычные элементы страницы. ное для текстовых процессоров. На зависть Система комментирования позволяет всем прочим, интерфейс тщательно отде- пользователю присоединять мысли, лан и оснащен грамотной анимацией: она и идеи и комментарии к документу выглядит круто, и в работе помогает, хотя на полях справа, причем коммента- и тяготеет к несколько сумрачной эстети- рий «привязывается» к определен- ке. Центральный элемент интерфейса, как у ной позиции в тексте, но не вклини- других, та же панель под строкой меню. Но, в вается в него и не прерывает поток отличие от Office или GDocs, панель активи- информации. Масштаб управляется рует группы значков в правой области экрана. маленьким виджетом в духе iPhoto По умолчанию выделена вкладка управления внизу справа, а метод настройки шрифтом, но щелчок на корешке вкладки отступов и красных строк очевиден и прост. Управление чуть задержать палец на кнопке. Хуже то, что управления абзацем выводит органы форма- Buzzword обладает неплохими опциями файлами система не обеспечивает надежный импорт тирования абзаца, значок списка открывает групповой работы: обмениваться результата- в Buzzword – рисунков под Linux. Неудачи повторялись параметры списка. Есть вкладки для рисунков, ми можно тремя способами. Коллеги могут это вам не с разными, но совершенно «исправными» таблиц, комментариев и документов – послед- читать и редактировать документ, рецензенты привычная GIF, JPG и PNG, да еще и фокус постоянно няя ведет к щегольски анимированному фай- читают и добавляют комментарии, а читате- двухпанельная перескакивал из других окон браузера; если ловому менеджеру. Тщательно отделанные, ли – только читают. Здесь тоже есть полез- раскладка. работа требует сосредоточенности, то такие эти вкладки немного пустоваты – напри- ная функция просмотра истории документа, вещи просто выводят из терпения. С первой мер, параметры списка легко уместились бы и вернуться к одной из предыдущих версий проблемой, хотя и не столь часто, мы сталки- рядом с параметрами абзаца: очевидно, в можно без труда. вались и на Windows, и на OS X. Не поддер- будущем намечается существенно расширить живается импорт и экспорт ODF (OOo) и PDF возможности настройки. Особенно это каса- Шутки в сторону! (похоже, есть работа для новых владельцев ется вкладки рисунков – размещение здесь Есть и несколько недоработок, которые пор- Adobe), но экспорт в Word/Word 2003 и RTF нескольких параметров форматирования и тят это, в остальном превосходное, при- вполне адекватен. правки от Adobe будет означать непрестанное ложение. Во-первых, отсутствует счетчик Несмотря на эти недостатки (проститель- упоминание брэнда Photoshop онлайн. слов (очевидно, скоро будет); копирование ные в столь юном возрасте), пользоваться Оригинальных находок здесь полно и без и вставка оставляют желать лучшего: напри- Buzzword очень приятно. Вот что выходит, анимации. Например, полоса прокрутки сбо- мер, надоедливый возврат каретки в конце когда создатели избирают собственный путь, ку окна, полностью построенная на Flash/Flex, параграфа постоянно портит форматирова- а не «делают как все». Эта служба, осо- разделена номерами страниц и показывает не ние документа. Клавиша Backspace слишком бенно усиленная другими продуктами Adobe только общую длину документа, но и текущую рьяно сметает символы, стоит лишь чуть- (например, онлайн-редактором изображений и недавно запущенной услугой совместного доступа к данным), способна поднять онлайн- работу с текстом на качественно новый уро- вень, но пока этот продукт к реальной работе не готов. Мы тосковали по контекстно-зависи- мому меню правой кнопки…

Вердикт Buzzword Провайдер: Adobe Сайт: www.getbuzzword.com Лицензия/Цена: См. «Terms and Conditions» Симпатичный новаторский проект, лучшая реклама Flash. Правда, для реальной работы пока не дозрел… Рейтинг 6/10 В приложении множество приятных тонкостей – например, настройка заголовков.

20 Linux Format Февраль 2008 ONOOnline-процессоры текста Сравнение Zoho Writer Забит функциями под завязку.

oho предлагает самую богатую коллек- работы в Google Docs, Buzzword или ajaxWrite цию онлайн-приложений из всех участ- выбор доступных функций кажется даже Zников нынешнего Сравнения. Учтено чрезмерным. Назначение и расположение все: wiki, электронные таблицы, управление инструментов настолько близки к расклад- проектами, база данных и даже удобная CRM- кам настольных приложений, что найти нуж- система. Жемчужина проекта – Zoho Writer, ную функцию можно без труда. Но, чтобы онлайн-процессор. Он не только все уме- уместить на экране все доступные инстру- ет делать, но делает это «все» надежно и менты, не всякого широкоформатного мони- стильно. тора хватит, особенно если учитывать панель Услуга бесплатна для персонального закладок Firefox, корешки вкладок и другие использования и работает, как все осталь- элементы, которые Zoho предпочитает рас- Большинство но и встраивать в страницу HTML-текст, не ные, через Firefox. Но количеством доступ- полагать внизу экрана. сравниваемых позволяя браузеру интерпретировать его как ных функций программа способна посрамить Как и в двух предыдущих приложениях, программ обладает таковой. Это может пригодиться, например, иной настольный Linux-процессор. Интерфейс в Zoho нельзя добавить шрифты, зато здесь развитой системой техническому писателю, если надо вставить в разделен натрое: область управления доку- больше опций. Это пара приличных «заголо- отслеживания текст фрагменты кода. ментами – с набором полезных шаблонов и вочных» шрифтов и несколько причудливых изменений; настройкой групповой работы – расположена значков, способных изрядно оживить унылое Zoho эти изменения Перебор? слева, верх экрана занимают органы управ- текстовое поле. Есть настройка межстроч- еще и выделяет. Zoho поддерживает большинство форматов. ления, в оставшейся же (большей) части рас- ных интервалов, которая пригодится, если вы Кроме обычных Word, ODF и RTF, возможен полагается рабочая область. Область управ- пишете текст для экрана или научный труд; экспорт в старый формат OOo (SXW), PDF и ления, где собраны все доступные инстру- различные варианты оформления страницы HTML, что здорово, если вы мастерите насы- менты, можно скрыть одним щелчком. Она (с предпросмотром); настройка оглавления, щенный текстом сайт. Можно публиковать состоит из строки меню зеленого цвета и поиск и замена; и даже уместная функция документы прямо в блогах, пересылать их по панели инструментов, с помощью которой работы со слоями, позволяющая встраивать в Интернету или создавать пакеты документов, можно форматировать текст, импортировать страницу врезки разных видов, не обращаясь ссылки на которые встраиваются в блоги или рисунки, оформлять гиперссылки, добав- к исходному HTML-коду документа. Кстати, с web-сайты. Поддержка блогов на высоте: если лять комментарии – и много чего еще. После HTML можно не только работать напрямую, вы составляете посты в Writer, то на них мож- но ставить тэги и выводить эти тэги в форма- те Technorati для добавления к своему бло- гу. Проект поддерживает все основные блог- Но я не в сети! платформы, включая Wordpress, Typepad и Blogger. По части импорта, служба справляет- Реальная проблема подобных прило- (Adobe Interactive Runtime, вариантом сразу по прибытии в место ся со всеми вышеупомянутыми форматами, а жений состоит в том, что при отсут- Интерактивной рабочей средой) для назначения. Семимильных шагов в также извлекает контент для редактирования ствии подключения к Сети они прак- Buzzword, хотя есть еще вопросы разработке Gears пока не заметно, но по URL. тически мертвы. Здесь-то и побива- доступа к удаленным документам при Blogger-клиент с такой оснасткой уже Мы не заметили ни одной проблемы; раз- ют онлайн-выскочек традиционные отсутствии подключения, ведь AIR в работает, и так как GDocs занимают настольные программы, с их посто- такой ситуации просто превращает не последнее место среди многочис- ве что управление файлами из основного янным доступом к локальным храни- онлайн-приложение в настольное. К ленных приложений Google, продви- окна можно было бы убрать – интерфейс лищам данных. Поэтому все компа- тому же AIR пока недоступен для жения в этой области следует ожи- и так перегружен. Хотелось бы подробнее нии, занятые онлайн-процессингом, Linux; хотя такую поддержку обещали дать весьма скоро. узнать и о ценовой политике: как бесплатная работают над технологиями, позво- добавить «вскоре». Такой недостаток Mozilla Foundation работает над про- служба, Zoho вне конкуренции, но у его про- ляющими продолжать работу с доку- может просто выбить проект из ектом, подобным Gears, для своего вайдера нет таких мощных финансовых мус- ментами при отсутствии действую- соревнования. Firefox 3, который (с помощью все кулов, как у Google или Adobe, поэтому стоит щего подключения к Интернету. того же SQLite) позволит онлайн-при- крепко подумать, прежде чем доверять ему Решение ThinkFree – создать Метод Google ложениям сохранять локальные дан- свои данные. настольный вариант программы, с тем Google устраняет проблему с помо- ные. Здесь же разрабатывается проект же форматом документов, интерфей- щью программы Google Gears, кото- Prism, превращающий web-сайты в сом пользователя и прочими функци- рую в GDocs еще предстоит вопло- настольные приложения, выделяя для ями, как у онлайн-системы, причем тить. Gears использует базу данных них специальное окно на рабочем оба комплекта написаны на Java: SQLite для хранения и синхронизации столе. Вердикт неплохо придумано и облегчает жизнь данных в локальном и онлайн-источ- пользователю. никах. Это означает, что вы можете Резервные онлайн-копии Zoho Adobe, между тем, работает над AIR набирать свои GDocs в аэропорту Пожалуйста, не забывайте о резерв- Провайдер: Zoho/AdventNet, Inc. (через WiFi-под- ном копировании. Если онлайн-рабо- Сайт: ww.zoho.com ключение), про- та с текстом вас устраивает, периоди- Лицензия/Цена: Для индивидуальных должать работу в чески скидывайте ваши труды на пользователей бесплатно (пока) самолете с локальный ПК или распределять их по Сложное, но исчерпывающее решение локальной вер- разным службам – хоть к одному из для онлайн-писателя. сией, а затем них наверняка будет доступ. синхронизиро- вать ее с онлайн- Рейтинг 8/10

Февраль 2008 Linux Format 2 1 http://lolbook.nnm.ru Сравнение Online-процессоры текста ThinkFree Office Двойник MS Office в Интернете.

то приложение больше всех похоже сожалению, интеграция двух вариантов остав- на MS Office и лучше всех управляет- ляет желать лучшего. При переходе из режи- Эся со сложными документами Word. ма Quick в режим Power, например, HTML- По сути, ThinkFree – два разных приложения: код, отлаженный в исходном варианте, теряет одно из них называется Power Edit, и по набо- часть форматирования. ру функций, внешнему виду и реакциям не Услуга бесплатна, предлагается в комплек- разочарует пользователей MS Office (2003). те с 1 ГБ места для хранения пользовательских К сожалению, эта часть пакета весьма медли- документов, а также с уже знакомыми воз- тельна в запуске и работе. Вариант Quick Edit можностями групповой работы с документа- Вариант Power Edit онлайн-процессора ThinkFree позволяет открывать и редактировать доку- ми и web-публикации. Кроме того, Power Edit выглядит точь-в-точь как настольное приложение. менты, не заходя в главное приложение – он оснащен полным комплектом печатных функ- предоставляет быстрый доступ именно к тем ций, что идеально для «бумажных» проектов. 20 процентам функций, которыми пользует- Форматы файлов совместимы с настольными, ся 80 процентов пользователей. поэтому работа с документами в отрыве от Вердикт Интерфейс Power Edit похож на MS Office, Сети вопросов не вызывает. ThinkFree а Quick Edit следует примеру Zoho/GDoc, с Нас беспокоит проблема надежности услу- Провайдер: Haansoft ThinkFree Co. Ltd панелью параметров форматирования, выпа- ги и методы получения прибыли компанией Сайт: www.thinkfree.com дающими меню для размеров и гарнитуры по окончании бета-периода. Щелкай в меню Лицензия/Цена: См. Условия шрифта; эти параметры и здесь ограниче- Power Edit, чтобы открыть документ – и дро- использования ны web-стандартами, хотя парочка допол- жи: откроется ли? В правой части окна Quick Неплохой вариант: немного «не дорос» нительных гарнитур (как у всех) все-таки Edit видна реклама Google, но отключить до лидеров, но потенциал налицо. доступна. ее совсем нетрудно – откуда же возьмутся Quick Edit – очевидный способ обойти деньги, если пользователи не будут щелкать Рейтинг 6/10 медлительность основной программы, но, к по рекламным ссылкам? ajaxWrite Молочный брат дистрибутива Linspire…

jaxWrite – детище записного воз- не работает; полезные опции (линейки, редак- мутителя спокойствия Майкла тируемые панели инструментов) – замороже- AРобертсона [Michael Robertson], ны, форматирование параграфов хромает, который с кем только ни соперничал онлайн. открытие не работает… страницы не хватит, Как всегда, помпезная натура Робертсона чтобы перечислить все эти крутые, но «мер- сыграла с ним злую шутку, когда он назвал твые» функции! ajaxWrite «подлинно свободной альтерна- Интерфейс ajaxWrite состоит в основ- Увы, оказалось, что даже простые TXT-файлы превышают скудные тивой Microsoft Office». При всем уваже- ном из текстового HTML-окна в iFrame с способности ajaxWrite. нии, это напоминает сравнение Моськи со небольшой добавкой XUL для строки меню слоном. Реальная работа с приложением и нескольких значков (тоже нерабочих). Мы обескураживает так же, как попытка той уже упоминали о сохранении, которое не Моськи пройти в парламент. Большинство действует и переписывает все без предуп- Вердикт скудных панелей инструментов и почти все реждения? Да, мне удалось впихнуть на пункты меню попросту неработоспособны. редактируемую страницу рисунок, но ника- ajaxWrite Импорт файлов .doc невозможен, сохранение кой возможности изменить его расположе- Провайдер: Ajax13 ничего не сохраняет, редактирование подво- ние или содержание я не нашел (можно Сайт: http://us.ajax13.com/en/ajaxwrite/ дит, оставляя посреди страницы сиротливый изменить лишь размер!), не было даже тэгов Лицензия/Цена: См. Условия использования кусок текста. Создание нового документа Align Right/Left, чтобы хоть как-то настроить автоматически сотрет результаты предыду- обтекание рисунка текстом. Такую сырую программу просто нельзя выносить на публику. щей работы, без предупреждения и без шан- Ей-богу, проще рисовать на экране фло- сов на возврат. мастеом. Уж это ajaxWrite не перезапишет… Функция отката выглядит превосходно, Рейтинг 3/10 история оформлена в стиле Photoshop, но…

22 Linux Format Февраль 2008 ONOOnline-процессоры текста Сравнение

Онлайн-процессоры Вердикт Google Docs 8/10

сли вы, подобно LXF, печатаете доку- вообразить получение данных Google Earth, менты от случая к случаю, а большую запуск «живых» слайд-шоу Picasa, встраива- Ечасть работы занимает передача через ние контента в web-страницы и распростра- Интернет или отправка для печати удален- нение через новостные ленты среди заинте- ным организациям, то GDocs, ZohoWriter и ресованных масс. Весьма похоже, что GDocs Buzzword (когда повзрослеет) подойдут вам вберет лучшие качества Google Pages, Blogger У Zoho Writer подход к функциональности – новаторский, как нельзя лучше. Взявшись за дело, вы заме- и других служб, и кончится все это созда- богатейшая а возможности Adobe открывают заманчивые тите, что безграничный доступ и мгновенная нием единой платформы для всех ваших функциональность: перспективы. Вопрос «монетизации» проекта публикация меняют сам стиль вашего труда, интернет-связей. он поддерживает тоже важен, но выпуск «бесплатных» вер- особенно в условиях постоянной смены ком- Если вы не часто изводите бумагу, можете даже слои! сий онлайн-ПО для редактирования стати- пьютеров и/или ОС. Потерю эффективности забыть о недостатках GDocs в области печа- ческих изображений и видео показывает, что на время привыкания к новому рабочему сто- ти и форматирования. Тем, кто заботится о компания не собирается ограничиваться тра- лу нельзя недооценивать. Если же вы привя- колонтитулах, сносках и прочих элементах, диционной моделью продаж, и сохранение заны к «бумаге» или вам необходим полный мы без колебаний рекомендуем ZohoWriter и бесплатного варианта ПО в будущем вполне контроль над созданием документов, тогда – связанные с ним службы: приложение зрелое, вероятно. за исключением Power Edit от ThinkFree – вы простое в использовании и более чем спо- Было бы глупо работать в любой из этих найдете OpenOffice.org, KWord или AbiWord собное вырабатывать элегантные документы. служб, не заботясь о своевременном резерв- более продуктивными. Компания-провайдер собрала под свои зна- ном копировании, даже если оно выражается А сейчас мы рекомендуем Google Docs как мена немало передовых, нестандартно мыс- в периодической отправке копий документов основной онлайн-процессор. Хотя ZohoWriter лящих программистов, и появления всяких по электронной почте самому себе. LXF отнюдь не уступает ему в функциональности, новинок следует ожидать задолго до того, как Google занимает более прочную позицию на «подтянутся» остальные участники. Только рынке и, опираясь на прочие онлайн-услуги, представьте, что разработчикам удалось инте- вряд ли в обозримом будущем начнет брать грировать в процессор часть функций извест- Вам слово плату. Zoho тоже не намерен выставлять цену, ного приложения Notebook: тут недалеко и до Не слишком ли мы расхвалили Google Docs? но, помимо коммерческой версии своего ком- первой онлайн-издательской системы. А может быть, мы упустили какой-нибудь плекта, у компании не просматривается пос- Если можно так выразиться, GDocs и онлайн-процессор? Сообщите нам! тоянного источника дохода – хотелось бы ZohoWriter – это «традиционные» онлайн-про- Известные проекты такого рода всегда на видеть более прочное финансовое подкреп- цессоры, работающие в основном на HTML- виду, но ведь мы – в мире Open Source, и ление проекта. Google Docs также более тесно контент и вывод; Buzzword – вдохновляющая наверняка многие пользователи разрабаты- интегрирован с ПО Gears (мы нашли Zoho чуть новинка. Flash – проприетарный формат, и вают собственные приложения. Если это менее надежным, чем Google Gears) и други- пользование Buzzword требует установки про- удалось именно вам – будем рады узнать об ми услугами, которые – доступные сейчас и приетарного кодека, что не обрадует пурис- этом. Не теряйтесь, черкните на letters@ ожидаемые в будущем – призваны раздви- тов. Но на приложение приятно даже просто linuxformat.ru. нуть традиционные границы офиса. Нетрудно смотреть (особенно если вы фанат черного),

Таблица свойств

Объем Импорт Экспорт Кол-во Форматы Поддержка Проверка Счетчик Групповая Онлайн- Форматирование Разработчик хранилища форматов форматов шрифтов рисунков таблиц правописания слов работа публикация страниц TXT, Word, GIF, PNG, ajaxWrite ajax13 1ГБ RTF RTF, TXT 18 JPG Firefox

Virtual RTF, Word, RTF, GIF, PNG, Buzzword Неизвестно Word, 7 Ubiquitiy Word XML Word XML JPG

TXT, Word, HTML, Google Google 1ГБ RTF, ODT, Word, 11 GIF, PNG, Docs RTF, TXT, JPG SXW ODT, PDF Word, Word, HTML, HTML, GIF, PNG, ThinkFree ThinkFree 1ГБ ODT, SXW, ODT, 17 JPG RTF SWX, RTF HTML, HTML, Zoho Zoho 1ГБ Word, RTF, Word, 19 GIF, PNG, Writer ODT, TXT, RTF, ODT, JPG SXW TXT, SXW

Февраль 2008 Linux Format 2 3 http://lolbook.nnm.ru Distrowatch Новости этого месяца со всех четырех частей мира разработки дистрибутивов Linux.

ЛАДИСЛАВ БОДНАР основатель, редактор, начальник и сотрудник Настольный Solaris DistroWatch.com. Проект Indiana – UNIX с автоматическим определением Вообразите устройств, менеджером пакетов и GNU Bash. блондинку... астущее число установок Linux на рабочих станциях приве- а Linux-форумах иногда непри- Рло к интересному побочно- ятно бывать. Не только потому, му эффекту: оно подтолкнуло дру- Нчто там толпятся пользователи гих членов огромной семьи Unix к с весьма пестрыми навыками в Linux, разработке настольных версий сво- но и потому, что там изобилуют личнос- их продуктов. Первым был FreeBSD, ти с малым или маргинальным опытом ныне существующий как мгновен- общения. Такая смесь способна привести но готовый к работе live-дистрибу- к травмам. Даже опытные модераторы тив (например, FreeSBIE, RoFreeSBIE, форумов страдают дурными манерами: TrueBSD) и как простая в использова- «На этот вопрос уже сто раз отвечали! нии настольная система с web-репо- Читайте этот чертов FAQ, а потом уж зиторием или, по крайней мере, гра- задавайте тупые вопросы!» Более ней- фическим менеджером пакетов (PC- тральный ответ «Этот вопрос есть в FAQ, BSD, DesktopBSD). Недавно этому при- вот ссылка» им почему-то в голову не меру последовала и многоуважаемая приходит. Solaris от Sun Microsystems, некогда чрезвычайно дорогая серверная ОС. Установщик OpenSolaris на шаге определения разделов диска. Вежливость В конце октября 2007 Sun выпустила ничего не стоит первую предварительную версию для разработчиков дебатами о спорных вопросах. Первый – это имя про- Хотя поведение в сети членов форума своего секретного проекта Indiana. екта; незадолго до релиза, Иэн Мердок опубликовал анализируют эксперты-психологи, боль- Это был наиболее страстно ожидаемый релиз длинное письмо с доводами, что Indiana на самом деле шого ума тут не надо: анонимность, года: во главе проекта Indiana стоит Иэн Мэрдок следует называть OpenSolaris, поскольку это самый отсутствие личного контакта, взаимная [Ian Murdock], основатель и ведущий разработчик полный и представительный код OpenSolaris из ког- невидимость... все эти факторы способс- дистрибутива Debian GNU/Linux, который он создал да-либо изданных. Но другие не согласились, пытаясь твуют неуважению к (не только) фору- 15 лет назад, но сейчас сам же часто критикует. Indiana сохранить чистоту оригинального кода, ныне «запят- мам Linux. Есть ли решение этой пробле- основан на базовом коде OpenSolaris, включающем нанного» настольными штучками и даже кое-какими мы? Некоторые считают, что исправлять несколько приятных функций (типа файловой сис- Linux-подобными свойствами. Вторым вопросом была подобное поведение необходимо еще в темы ZFS или Dtrace), которые делали Solaris столь командная оболочка Indiana: вместо Korn, традиционно школе – пара слов про общение в сети надежной ОС. К тому же Indiana обещает предоставить использовавшейся в Solaris, Indiana, как большинство в начале каждого урока в компьютерном функциональность, сравнимую со многими современ- дистрибутивов Linux, по умолчанию использует GNU классе могут очень здорово изменить ными дистрибутивами Linux, вкупе с автоматическим Bash. Члены списка тут же возроптали. картину к лучшему. определением устройств и современным управлением Но светит ли Indiana стать настольной альтернати- А как быть с теми из нас, кто уже не пакетами. вой, по крайней мере для технических пользователей? сядет за парту? Что ж, возможное реше- Предварительная версия для разработчиков была Скорее всего, ей предстоит еще долгий путь. Любой ние – представить, что «тупой вопрос» выпущена как установочный LiveCD, оснащенный гра- разработчик Linux-дистрибутива, несомненно, скажет, задала роскошная блондинка: явно не све- фическим инсталлятором. В процессе загрузки он пыта- что разработать простой настольный LiveCD сравни- точ компьютерной мысли, но определенно ется настроить всю имеющуюся периферию, включая тельно легко, а вот создать тщательно вылизанную очень мила. Вам все еще хочется грубо X-сервер и сеть, и, судя по ранним отзывам, делает свою настольную ОС с надежными утилитами настройки, послать ее к разделу FAQ на поиски ответа работу поразительно гладко. Вы загружаетесь в полно- безупречным определением устройств и тысячами на ее вопрос? ценный рабочий стол Gnome, но дополнительные прило- хорошо протестированных пакетов программ – отнюдь Ну да, это решение с сексистским укло- жения ограничиваются Firefox, парой инструментов для нет. Согласны, первые усилия Sun выглядят на удивле- ном. Но если оно поможет побороть наши общения в Интернете (Thunderbird, Pidgin), медиа-про- ние хорошо, но, за исключением ярых фанатов Solaris варварские привычки поведения в сети, игрывателем Totem и графическим редактором GIMP. и отдельных технарей, желающих расширить свои пусть уж лучше так! Графические инструменты администрирования системы горизонты, в ближайшем будущем не стоит ожидать [email protected] или разработки отсутствуют. массовой миграции с настольного Linux на настоль- Несмотря на положительный первый отклик, список ный Solaris. рассылки проекта очень быстро заполнился горячими www.opensolaris.org/os/project/indiana/.

24 Linux Format Февраль 2008 Distrowatch

Зелень с Google Linux внутри gOS 1.0 дистрибутив, оснащенный Vixta.org Дистрибутив Linux Enlightenment и массой приложений Google. на базе Fedora с внешним видом Vista.

истрибутив Linux не всегда дея создания дистрибути- должен строиться на осно- ва Linux с внешним видом Две великой идеи, чтобы быть Ии поведением Windows про- успешным. Как недавно продемонс- должает вдохновлять сообщества раз- трировала gOS и ее родительская ком- работчиков и пользователей. Вначале пания под названием Everex, иногда были оконные менеджеры типа Qvwm простой интеграции необычных ком- или Xpde, пытавшиеся эмулировать понентов достаточно для создания све- среду Windows 95/98 и XP, а позд- жего продукта. Именно так поступили нее целые дистрибутивы создавались разработчики gOS: переделали Ubuntu, Мгновенный доступ к YouTube, в рамках идеи, что новые пользовате- Для улучшения внешнего вида и заменив стандартный рабочий стол на Blogger, Facebook, Google Docs, Picasa ли Linux будут чувствовать себя более поведения Vixta.org используются легковесный Enlightenment 17, добави- и другому ПО от Google. комфортно при работе с привычным виджеты SuperKaramba. ли несколько популярных приложений рабочим столом. Российский Linux Google и создали интуитивный рабочий XP, бразильский Famelix и китайский стол с панелью задач в стиле Mac OS X. ОС, поставляемую с gPC? Если первая Red Flag Linux разработаны как клоны том OpenOffice.org. Дополнительное ПО Результат? Мгновенный успех! реакция чего-то стоит как показатель, Windows на базе Linux. доступно через Pirut, простой инстру- Конечно, есть и другая причина, то gOS определенно хорошо принят. Как следует из имени, Vixta.org – это мент управления пакетами. Проще почему gOS стал любимцем Linux- Конечно, к нему надо немного поп- дистрибутив, пытающийся воссоздать говоря, Vixta.org – немногим больше, медиа: как говорилось в новостях ривыкнуть – текущий выбор по умол- облик Windows Vista поверх ядра Linux, чем Fedora, в новом одеянии. Кроме LXF99, он предустанавливается на чанию копирует Mac OS X вместо рабочего стола KDE и другого ПО с темы рабочего стола и собственных настольные компьютеры за US$199, Windows, но рабочий стол сам по открытым кодом. Разработчики созда- меню, в нем не так уж много отличий продаваемые в розницу в США. себе достаточно прост для навигации. ли тему KDE, превратив панель в блес- от родительского проекта, а несколько Популярность этой системы была тако- Те, кому нужен лишь уже настро- тящий металлический элемент, и пре- шероховатостей, вылившихся в час- ва, что первую партию на Walmart.com енный ПК, поддерживающий работу образовали меню K в инструмент поис- тые обновления, наводят на мысль, что смели в течение недели. Хотя деше- с Интернетом, отправку электронных ка и запуска приложений, организован- проект все еще во младенчестве. Но вые маломощные компьютеры явно писем и публикацию фотографий в ных по категориям. Фон рабочего стола разработчики Vixta.org кажутся весьма не были разработаны для серьезных сети, не ошибется, взяв gPC от Everex. и панели инструментов приложений целеустремленными, и их релизы полу- пользователей Linux, высокий спрос на Да и цена нормальная. также были согласованы с темой. Но чили неожиданно большое число загру- продукт удивил даже изготовителя. Надеюсь, LXF включит gOS на DVD внутри это старая добрая система Linux зок от любопытных. Вероятно, жизнь в Но будет ли средний покупатель следующего месяца. Заранее спасибо! с web-браузером Firefox, менеджером Vista все же есть? компьютера устанавливать необычную Приходите еще! www.thinkgos.com файлов Konqueror и офисным паке- http://vixta.sourceforge.net/

Пометки в календаре

2007 год был богат на события, поскольку все основные дистрибутивы Linux к использованию код, чем первый «аховый» релиз в начале 2008. Кроме и BSD-игроки выпустили новые версии. Чего нам ждать в 2008? Обычный этого, имеются признаки новой энергии в нескольких не-Linux’овых настоль- 6-месячный релиз-цикл Ubuntu, Fedora и Mandriva будет продолжен, как и ных ОС: проект Indiana и пара настольных решений FreeBSD несомненно ранее. Однако взоры большинства поклонников ПО с открытым кодом одно- обогатят жизни большинства технически подкованных читателей Linux значно прикованы к KDE 4, который, как ожидается, вызреет в более готовый Format.

Дистрибутив Прогноз DistroWatch.com Текущий план Debian обещает Lenny в сентябре 2008. Как обычно для Debian, это, вероятно, не Debian Lenny отслеживает популяр- в меру оптимистично. ность дистрибутивов, Fedora 9 Fedora 9 назначена на 29 апреля. Реальна задержка на пару недель. основываясь на числе визитов на страницу FreeBSD 7.0 должна была быть готова перед самым Рождеством прошлого года, но задержки FreeBSD 7.0 каждого дистрибутива. разработки скорее всего сдвинут релиз на январь 2008. Хотя это не дает пред- На момент написания дата релиза не опубликована, но версия 2008.1 Spring должна выйти в ставление о действи- Mandriva 2008.1 апреле, а версия 2009 ожидается в октябре. тельном числе устано- Sun Microsystems намекнула, что первый стабильный релиз проекта Indiana (OpenSolaris для вок, но показывает, OpenSolaris рабочих станций) появится во втором квартале 2008. какие дистрибутивы были более популярны На момент написания графика нет, но в соответсвии с релиз-циклом в 7–9 месяцев, OpenSUSE OpenSUSE 11.0 в определенный про- 11.0 должен выйти не позднее июня 2008. межуток времени. LXF SSlackware не имеет фиксированного расписания выходов, но из-за перехода на X.Org 7.3 не Slackware 12.1 ждите версии 12.1 ранее апреля/мая 2008.

Релизы Ubuntu 8.04 Hardy Heron и LTS (долговременная поддержка), должны появится 24 Ubuntu 8.04 LTS апреля. В октябре должна выйти версия 8.10.

Февраль 2008 Linux Format 2 5 http://lolbook.nnm.ru Что за штука Classmate PC

Что за штука… Classmate PC Зачем детям из стран, еле сводящих концы с концами, недорогой ноутбук на открытом ПО? Майк Сондерс пояснит, что значит дать человеку не рыбу, а удочку…

Одноклассник? [classmate – одноклассник, – Так-то так, но даже при всем желании кучка ноутбук легко перебьется периодической подзарядкой прим. пер.] Тот самый малый, который посто- ребятишек, почитав Википедию, не превратит за гроши. Для бедной страны с неразвитой энергети- янно издает дурацкие возгласы и мешает слушать Мали в Швейцарию за одну ночь, верно? ческой инфраструктурой это очень важно. учителя? Нет, конечно, и все же это на несколько порядков Еще одно бесспорное преимущество ноутбука – пор- Не издает, если не лазить с него на дурацкие сайты. Это лучше, чем стопка пыльных затрепанных книг, кото- тативность. С такой машинкой ребенок сможет пере- вклад Intel в компьютеризацию развивающихся стран, рые быстро устаревают. Получив доступ к Интернету, ходить из класса в класс и брать ее домой, не будучи с упором на образование. Classmate PC – маленький дети стран третьего мира смогут расширить кругозор, прикован к электророзетке. И ведь в ноутбуке можно (245 x 190 x 44 мм) ноутбук, образец, предложенный узнать о новых технологиях и выработать навыки, пот- носить с собой целую библиотеку, да еще и обновлять как стандарт для массового производства. ребные «мировой экономике» XXI века. (Согласен, тер- ее через Сеть. мин избитый, но в современном мире экономически Секундочку: а чистая вода или хорошее здраво- обособленным странам приходится туго.) А чем «начинен» Classmate? охранение этим странам уже не нужны? Мало Возьмем язык. Нравится это кому-то или нет, но Это обучающее устройство, а не игровой ком- им головной боли? английский сегодня – это универсальное средство байн вроде MegaBlaster 3000, поэтому технические Резонно, но ведь над проблемами воды и здравоохра- общения, и англоговорящие страны на мировой аре- данные не впечатляют. Но для работы с текстом, нения уже работают бесчисленные государственные не имеют заметное преимущество. Да, язык можно учебы и походов в Интернет все необходимое есть: учреждения и благотворительные фонды. Важно не выучить и по бумажной книге – но, имея доступ в процессор Intel Celeron 900 МГц, 256 МБ ОЗУ и 2 ГБ забывать и об образовании подрастающего поколе- Интернет, молодежь сможет читать сайты, слушать флэш-памяти (вместо жесткого диска). 7-дюймовым ния – ведь именно ему принадлежит будущее. При англоязычное радио и смотреть новостные каналы, ЖК-дисплеем 840 х 480 управляет чипсет Intel 915GM, современном уровне глобализации, без грамотных чем значительно углубит языковые познания. а связь с внешним миром обеспечивают 801.1bg WiFi, кадров задохнется любая экономика, поэтому обес- Или аутсорсинг. Сегодня Индия – биржа програм- Ethernet и два USB-порта. печить детям хороший старт – жизненная необхо- мистов: многие фирмы нанимают здесь целые бригады Что до качества изготовления, то прибор более димость. Если дать им Интернет, практически вели- для работы над различными проектами. Представьте, устойчив к школьным передрягам, чем аналогичные ноутбуки (тот же Eee). Пластиковая «обложка», покры- вающая снаружи крышку и основание, образует нечто «Чтобы преуспеть в этом мире, вроде ручки, за которую ноутбук можно переносить. Клавиатура напоминает Toshiba Libretto конца 90-х – странам не обойтись без кадров прочная и глубокая – а отсутствие вращающегося жес- ткого диска добавляет надежности. У нас, в Башнях с компьютерной грамотностью». LXF, есть тестовый экземпляр, и хотя мы не бросали его на пробу из окна, но заметили, что он способен чайшую библиотеку в мире, возможности познания что именно вам довелось поднимать на достойный выдержать немало толчков и пинков. станут поистине беспредельными. уровень экономику Буркина Фасо: вам не обойтись без молодой рабочей силы с навыками работы на компью- И он, конечно, работает на Linux? А вот у нас в школе не было Интернета, и я нор- терах. Здесь-то и пригодится Classmate. Точно! Стоило ли затевать разговор, чтобы мально выучился! Не проще и не дешевле ли только объявить о поддержке Windows XP! То есть, отправить побольше учебников? Но почему ноутбук? Ведь обычный ПК средних производитель предусмотрел предустановку XP, но Отправить-то можно, но это не даст выхода из депрес- возможностей – дешевле? возможна также установка Mandriva Linux – им-то и сии. Базовый уровень образования могут обеспечить Не обязательно – взгляните на ASUS Eee PC в прошлом оснащены опытные образцы. Это обычный Mandriva, с даже беднейшие страны планеты. Но в развитом номере LXF. Его техническая оснащенность позволяет рабочим столом KDE, OpenOffice.org и Firefox. Команда мире все взаимосвязано, и происходит постоянный вполне уверенно справляться с обычной компьютер- Mandriva кое-что добавила, например, комплект боль- обмен знаниями, а эти страны остаются в стороне ной работой, укладываясь в ценовые рамки 400 дол- ших экранных панелей для запуска приложений, но в – они «не попадают в струю». Чтобы развивать эко- ларов. Флэш-память и ОЗУ дешевы, небольшие LCD- остальном система вполне узнаваема. номику и поднимать уровень жизни, им необходимо панели не так уж дороги при оптовых закупках у изго- На данной стадии рано тыкать пальцем в недо- подтянуть систему образования до уровня развитых товителя. Не забывайте, что громоздкие ПК требуют статки, но вопросы к дистрибутиву все же имеются. государств. бесперебойной подачи электроэнергии, а маленький Например, ноутбук OLPC X0-1 – похожее начинание –

26 Linux Format Февраль 2008 Classmate PC Что за штука

Эй, а он крутой! И все, типа, понятно.

Да еще и дешево! Вот это для нас!

Классная штука!

обладает тщательно продуманным специализирован- Когда же начнется выпуск? А где можно узнать больше? ным интерфейсом, а стандартная установка Mandriva Уже начался. Intel представляет Classmate Портал Intel Classmate находится по адресу для Classmate использует полноценный KDE. Зачем в нескольких странах, включая Индию, Бразилию, www.classmatepc.com – начните с него, там есть све- детям OpenOffice.org (да еще и загружаемый 24 секун- Вьетнам и Филиппины. Испытания в Ливии были столь дения о пилотных схемах и странах, охваченных про- ды), когда вполне достаточно AbiWord и Gnumeric! успешны, что правительство заказало 150 000 штук. граммой. Это часть грандиозной инициативы Intel под Повторюсь, выводы делать рано, но хотелось бы Как уже отмечалось, Intel может взять на себя нема- названием ‘World Ahead’ (Мир – вперед!) по приобще- видеть дистрибутив, более подходящий для маломощ- лый объем, но сверхзадача заключается в том, чтобы нию «очередного миллиарда» людей к передовым тех- ного, несложного детского ноутбука. вовлечь как можно больше изготовителей в работу по нологиям: www.intel.com/intel/worldahead/. LXF образцу, предложенному Intel. Естественно, сильней- Есть ли еще что-нибудь в комплекте? ший соперник Classmate – это OLPC X0-1 laptop, но Есть. Это крутой электронный карандаш. там сначала речь шла о $100, потом цена скакнула до Наложите на лист бумаги специальный зажим, под- $188, и в некоторых странах засомневались – вдруг ключенный к USB-порту, и начните рисовать – точная он еще подорожает? Официальных сведений о цене копия рисунка появится на экране ноутбука. Для нас Classmate пока нет, но с началом массового производ- это просто забавная безделица, но на занятиях в клас- ства Intel надеется выйти на отметку $230. Не ждите се может очень пригодиться детям – ведь с ним можно его появления в местном «Компьютерном мире»: как не только вести конспект «по старинке», но и сохра- и X0-1, машина не будет продаваться через обычную нять его в памяти ноутбука на будущее. торговую сеть.

Февраль 2008 Linux Format 2 7 http://lolbook.nnm.ru Интервью Алексей Васюков

ЧЧтото ттакоеакое ««поддержка»?поддержка»?

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

Алексей Васюков – консультант компании LXF: Расскажите, пожалуйста, что такое «поддержка»? VDEL, которая представляет Red Hat на терри- АВ: Обычно мы говорим не о «поддержке», а о «подписке». Подписка – Интервью тории России, СНГ и ряда стран центральной это несколько более комплексное понятие, чем поддержка. Если одной и восточной Европы. Linux’ом заинтересовал- фразой, подписка – это набор обязательств, которые поставщик (в ся на первом курсе института, когда впервые нашем случае, Red Hat) несёт в отношении своих продуктов. на семинарах по информатике увидел воз- Основной компонент подписки – это действительно техническая можность выбора: загрузить Windows или поддержка. К сожалению, сейчас термин «поддержка» употребляется Linux. Сразу стало любопытно, о чём вообще идёт речь, так как до где угодно и в каких угодно смыслах. Поэтому смотреть, что за ним этого «ничего слаще морковки есть не приходилось», то есть кроме скрывается, нужно в каждом конкретном случае индивидуально. Windows ничего не видел. Окончательно на GNU/Linux ушёл далеко не Если говорить о поддержке Red Hat, то её обеспечивает достаточ- сразу – успел освоить .NET и покопаться во внутреннем устройстве но большая и сложная структура, задача которой – решать проблемы, ядра Windows. Так что имеет полное моральное право говорить, что которые возникают у людей при эксплуатации систем, основанных на выбор в пользу GNU/Linux сделал осознанно. продуктах Red Hat. То есть клиент может писать и звонить, и задавать, вообще говоря, практически любые вопросы – от абсолютно детских Евгений Балдин (LXF): Расскажите вкратце о вашей компании. вида «что значит эта кнопка» до очень серьезных в духе «как мне Алексей Васюков (AB): VDEL – международная компания, сущес- настроить multipathing под Oracle». твующая с 1993 года. Основное направление деятельности – распро- Важно понимать, что поддержка помогает не только тогда, ког- странение сервисов (консультации, обучение, внедрение и т.д.). да что-то не работает, но и когда человек просто не уверен, как ему Когда у Red Hat возник вопрос, какую компанию выбрать основным решать ту или иную задачу. То есть вопросы могут быть не только партнером в России, выбор был сделан в пользу VDEL именно из-за «оно сломалось, как его чинить?», но и «как мне лучше его настроить схожести модели работы – обе компании ставят во главу угла сервисы, для моих задач?». в то время как исторически большинство фирм отталкивается от про- дуктов и решений. LXF: Кому есть смысл покупать поддержку? На сегодняшний день VDEL занимается тем, что предоставляет АВ: Я думаю, что поддержка нужна там, где требуется иметь за спиной сервисы Red Hat на русском языке. В частности, мы осуществляем своего администратора, да ещё и поставщика, отвечающего за свои первые два уровня технической поддержки. Кроме того, наша зада- продукты. Поводы для этого могут быть очень разные. ча – построение партнерской сети компаний, занимающихся внедре- Типовых мотивов два. Либо в компании нет своих специалистов нием решений на основе Linux, и учебных центров, предлагающих достаточного уровня для решений всех возникающих в процессе рабо- курсы по Linux. Более 90% наших доходов – продажа подписок ты задач. Это обычно относится к относительно небольшим компаниям на продукты Red Hat, основной компонент которых – техническая с инфраструктурой масштаба 1–3 сервера, 10–50 рабочих мест. поддержка. Либо стабильность IT-инфраструктуры для компании критична, любые проблемы и простои обходятся слишком дорого, и тогда рабо-

28 Linux Format Февраль 2008 Алексей Васюков Интервью

тать в контакте с разработчиком просто гораздо эффективнее. Это лярно менять протоколы Active Directory, то, соответственно, время от обычно относится к компаниям с достаточно сложной инфраструкту- времени на стыке миров GNU/Linux и Windows начинаются пробле- рой – десяток или более серверов, сотни рабочих мест. мы. Причём проблемы часто довольно тонкие и не вполне очевидные, решить которые без долгого опыта работы в этой области сложно. LXF: Насколько квалифицированным должен быть человек, чтобы получить пользу при обращении в службу поддержки? LXF: Умеют ли наши специалисты на местах задавать вопросы? АВ: Человек как минимум должен четко понимать, что он хочет сделать. АВ: Как правило, пользователи обращаются в поддержку со вполне Любые проблемы с тем, как добиться желаемого, поддержка решит – грамотными вопросами. Видимо, сказывается, что Red Hat популярен это её основная задача. Но если клиент не знает, что именно ему нужно, всё же больше в корпоративной среде. то тут, скорее всего, звонить инженерам Red Hat бесполезно. Иногда, правда, они достаточно путано и непоследовательно изла- Технического же порога для обращения в поддержку, на мой взгляд, гают факты о проблеме. Похоже, это бывает тогда, когда администра- нет – все необходимые действия клиенту подробно опишут. Может тор уже провёл несколько часов, работая над ней самостоятельно, и не быть, желателен минимальный опыт работы в консоли, но исключи- может чётко восстановить всю последовательность действий. тельно для ускорения процесса. Это особо не мешает работе поддержки, но иногда на то, чтобы разобраться в ситуации по неполной информации, уходит несколько LXF: Насколько квалифицированным должен быть человек, чтобы часов. Естественно, такие случаи особой радости ни поддержке, ни общение с поддержкой стало для него бессмысленным? пользователю не прибавляют. АВ: Я, честно говоря, даже не знаю, что и сказать. В нашей практике были прецеденты, когда в поддержку обращались люди очень высо- LXF: Какова география вашей поддержки? кой квалификации. Они самостоятельно диагностировали проблему и АВ: Поддержка распространяется на всю территорию России. четко понимали, в чём она заключается. Но дальше требовалось вне- Единственное, рабочие часы на сегодняшний день считаются по мос- сти изменения в исходные тексты, написать специфичный патч под их ковскому времени. Так что жителям Петропавловска-Камчатского нужды. И это они уже делать не брались. будет не очень удобно звонить в по телефону – на это времени будет не Так что, наверное, наиболее точный ответ здесь такой: если вы так много. Но всегда можно общаться через web-запросы. А если сис- полностью знаете внутреннее устройство всех компонентов, которые темы критичные – приобрести контракт круглосуточной поддержки. используете, и готовы их править при необходимости, то поддержка вам, пожалуй, бесполезна. А если нет – смотрите сами, насколько LXF: Насколько тяжело в России продать поддержку? велик риск с чем-то не разобраться самостоятельно. АВ: Честно говоря, в среднем несколько тяжелее, чем, например, в Европе [улыбается]. У нас люди очень привыкли ни на кого не надеять- LXF: Что значит «время реакции 4 рабочих часа»? ся и все проблемы решать самостоятельно. АВ: Время реакции можно интерпретировать как характерное время Как правило, большие компании гораздо лучше понимают, что работы поддержки. То есть за это время поддержка должна проана- именно мы предлагаем. И для них, на мой взгляд, основной аргумент лизировать ситуацию, придти к каким-то выводам и сообщить о них на сегодняшний день – не столько поддержка как таковая, сколько сам клиенту. факт наличия стабильной, долго уже живущей компании-производи- Как правило, если клиент предоставил всю необходимую инфор- теля, которая отвечает за свой продукт. Они используют поддержку не мацию, за это время поддержка вырабатывает некий вариант решения столько для решения проблем, сколько для советов насчет того, какие проблемы. Если клиент сообщает, что решение не подошло, то у под- решения являются разумными с точки зрения разработчика, а чего луч- держки снова есть время на размышление. ше не делать. Это позволяет им не зависеть от нетипичных решений, плохо вписывающихся в индустриальные стандарты. LXF: Время реакции очень сильно зависит от «уровня критичности» проблемы. Всего их четыре: второстепенная, обычная, важная и кри- LXF: А значит брэнд Red Hat на наших просторах «хоть что-то»? тичная. Кто определяет уровень критичности? АВ: Да. Вначале меня это, честно говоря, даже удивляло. По личному АВ: Уровень критичности определяет клиент – только он может знать, опыту, в корпоративной среде многими Red Hat воспринимается как насколько серьезна для него та или иная проблема. То есть при первом некий стандарт, от которого стоит отталкиваться. обращении в поддержку с некоторым вопросом он выставляет для него В сообществе всё несколько сложнее. Там Red Hat знают все, но уровень критичности, исходя из описания уровней и своей ситуации. отношение к нему часто неоднозначное. Впрочем, это тема отдельного После того, как по запросу клиента начинается работа, инженер разговора. поддержки и клиент могут совместно придти к мнению, что уровень критичности на самом деле не такой, как казалось вначале. В этом слу- LXF: Чего, с вашей точки зрения, у нас не хватает для организации чае он меняется. Например, если изначально проблема получила статус доступной поддержки GNU/Linux? «критичная», но инженер смог предложить клиенту временное реше- АВ: На мой взгляд, не хватает небольших динамичных сервисных ком- ние, позволяющее восстановить работу системы, то статус проблемы паний, так или иначе охватывающих большую часть страны и предлага- разумно снизить до «важной». ющих услуги решения типовых задач на площадке клиента. Дело в том, что поддержка производителя – это всё-таки в первую LXF: Какие вопросы к поддержке наиболее популярны именно в очередь «support», решение сложных проблем. А инфраструктуры для России? организации «helpdesk» – быстрых ответов на мелкие типовые вопро- АВ: В среднем есть две очень популярные группы вопросов: сы в режиме «горячей линии» – сейчас крайне не хватает. 1 Вопросы, связанные с Oracle. Многие используют RHEL как плат- Если бы были компании, предлагающие реализацию типовой инф- форму для Oracle. Системы Oracle, особенно в кластерном его варианте, раструктуры на основе GNU/Linux с последующим её сопровождением часто получаются очень сложными в работе, и одновременно это кри- на площадке заказчика, а уже за ними стояла бы поддержка разработ- тичные системы, «уронить» которые нельзя ни в коем случае. Поэтому чика, это сильно способствовало бы внедрению Linux в малом бизнесе, многие администраторы перед внесением любых заметных изменений который сегодня зачастую его несколько побаивается. LXF предпочитают консультироваться с поддержкой. 2 Вопросы, связанные с Active Directory. Многие клиенты использу- ют сервера RHEL в гетерогенной среде, где, в том числе, существует и Active Directory. Так как у одной большой компании есть привычка регу-

Февраль 2008 Linux Format 2 9 http://lolbook.nnm.ru

Воскресим старый ПК Воскресим старый ПК Взгрустнули по старым бежевым блокам? Сотрите с них пыль! Проприетарные ОС вынуждают пользователей обновлять оборудование куда чаще, чем надо: Нейл Ботвик опишет несколько классных способов заработать на жизнь для ПК-пенсионеров.

роизводительность оборудования неуклонно растет, а стре- миться к лучшему – только естественно; и мы обновляем свои Псистемы, списывая старые в утиль. Но позарез ли нам нужно это самое новое и лучшее? Ведь еще недавно люди прекрасно работали на системах с 500-МГц процессором, и перспективы скорого появления CPU на 1 ГГц приводили их в восторг. Так и вижу, как лет через десять некто пишет схожую статью: о том, что делать со старыми, неповорот- ливыми восьмиядерными 4-ГГц системами, которые собирают пыль в углу. Моя цель аналогична: я научу вас применять старое оборудование, чтобы оно приносило пользу, а не валялось на помойке.

Какие же системы мы обзываем старыми? Те, что были популяр- ны на рубеже столетий. Может, это и правда, и на вид мы говорим о действительно старом оборудовании. Обычная машина начального уровня шесть-семь лет назад – 800-МГц процессор, Pentium 3 или напо- добие, 128 МБ ОЗУ и 20–30-ГБ жесткий диск. Контрольное устройство, на котором мы будем тестировать большинство рассматриваемых программ, классом немного пониже – у него 700-МГц процес- сор Celeron: я откопал его у себя на чердаке в куче ком- пьютерных устройств, которые никогда не выбрасываю, рядом с верным старым (хотя и не работающим) Amiga 4000. Мы запаслись 128 МБ ОЗУ (т.е. типовым объемом для старых машин), однако расширение памяти способно вызвать большой скачок произво- дительности. Удвоение ОЗУ до 256 МБ дает больше пользы, чем более быстрый CPU, а обходится гораздо дешевле: сейчас мало кто покупает память такого объема, и ее можно добыть за гроши. Разыскивая 128 МБ (у меня стояло 256), я купил на eBay две новехоньких IBM-овских 64-МБ планки за 0,99 фунта. Там, где это уместно, мы также рассмотрим аль- тернативные программы, работающие на еще худшем оборудовании. Что можно сделать со старым ПК? Ранние дистрибутивы имеют меньше графических инструментов, и Да все, что считалось применимым для мощной системы несколько лет порой придется использовать командные строки, но крайне элементар- назад. Мы были вполне счастливы, используя 500-МГц и 1-ГГц ком- ные. Одна из самых приятных вещей при работе со старыми компью- пьютеры для просмотра интернета, электронной почты, работы и даже терами – свобода каких угодно экспериментов. Если вы все угробите, для игр. Требования для игр ушли далеко вперед, но все прочее не тре- можно просто переустановить систему и начать заново, не потревожив бует больших мощностей, чем раньше, хотя 128 МБ памяти, когда-то свой главный компьютер с данными, накопленными годами трудов. считавшиеся изобилием, сейчас и не потянут некоторые программы.

Февраль 2008 Linux Format 31 http://lolbook.nnm.ru Воскресим старый ПК

Сначала мы подберем дистрибутив общего назначения, подходящий KDE, куда входит OpenOffice.org – это тяжеловато для нашей старой для использования на ограниченном оборудовании, и соответству- машины: такое сочетание может поставить ее на колени. Минимальные ющие приложения для решения основных задач. Затем рассмотрим требования для стандартной редакции – P200 и 96 МБ ОЗУ, идеально более специальное использование старого оборудования – для тех для нашей тестовой системы. Мы взяли релиз-кандидат 5.9, хотя к из вас, кому уже не требуется другой настольный компьютер и кто моменту чтения этих строк он может быть готов полностью. довольствуется системой с четырехъядерным CPU для написания элек- Версия Vector Standard использует рабочий стол Xfce, вместе с тронных писем. популярным файловым менеджером Thunar и полным набором прило- жений. Их названия могут быть вам незнакомы: некоторые программы Выбор дистрибутива являются альтернативами более ресурсоемких известных вам прило- В ответ на вопрос о легковесной версии Linux вы, скорее всего, услы- жений, но для этого окружения они подходят идеально. Просмотрите шите про Damn Small Linux (DSL). Вот мы и упомянули про него; но врезку Низкокалорийное ПО на странице 49 , там приведены облегчен- использовать его мы не будем. DSL отлично потрудился, сумев впихнуть ные альтернативы общепринятых решений. в 50-МБ CD массу программ, и это создало некоторые искусственные ограничения: например, применение ядра версии 2.4. А кого волнует Установка размер установочного CD? Главное, чтобы система легко установилась На DVD этого номера есть ISO-образ последней версии Vector. Запишите и хорошо работала на нашем оборудовании. Ядро 2.6 для нас обязатель- его на CD-R обычным способом, и загрузитесь с получившегося диска. но, так как некоторые устройства работают только с новыми версиями. Установка его очень напоминает установку Slackware – используется Основное наше оборудование явно старше 2.4, но вдруг вам потребу- тот же текстовый инсталлятор на основе curses, только сообщения ется подключить какую-нибудь web-камеру, чьим драйверам подавай менее формальны (типа «INSTALL – come on mate, go for it! [Давай, ядро версии 2.6? И надо ли расставаться с удобством автоматического кореш, устанавливай!]»). Может, ему и не хватает украшательств более монтирования USB-накопителей, CD и цифровых фотоаппаратов? Вряд модных графических установщиков, зато работает он эффективно, ли вы всерьез захотите вернуться к треволнениям проб и ошибок и даже на скромном оборудовании. Во время установки возникает пара монтировать по принципу сработает/не сработает. Мы рассмотрели еще проблем, о которых лучше узнать заранее, чем по ходу процесса. Puppy Linux: он примерно так же легковесен, и оба сойдут для оборудо- На двух системах установщик 5.8 завис во время проверки гра- вания похуже. Думали и о Xubuntu – это вариант Ubuntu, использующий фического оборудования, потребовалась перезагрузка. Единственный рабочий стол Xfce; но он более требователен к памяти. Если у вас есть способ избежать этого – пропустить данный этап. После загрузки вы 256 МБ, то на Xubuntu, несомненно, стоит взглянуть. увидите текстовый экран со входом, так как X не настроен, но это мож- Перебрав варианты, мы остановились на Vector Linux (www. но исправить, зайдя как администратор (root) и запустив xorgconfig. vectorlinux.com), производный от Slackware: он идеален для владельцев Удобно зайти под второй консолью, запустить в ней lspci и затем, не особо роскошного оборудования. На сайте так и сказано: «специаль- переключаясь между консолями с помощью Alt+стрелка влево/впра- но разработан для использования на старых компьютерах, с медленны- во, получать там ответы на вопросы, задаваемые xorgconfig. В Vector ми процессорами и меньшим размером ОЗУ». Доступны разные версии 5.9 таких проблем не было, но полная установка потребовала больше Vector; мы использовали Standard edition, но есть и вариант SOHO. Оба места на жестком диске. Если у вас диск на 5 ГБ или меньше, либо имеют номер 5.8, хотя на момент написания статьи имелся кандидат используйте 5.8, либо будьте особо придирчивыми во время установки, версии 5.9 для Standard edition. Версия SOHO использует рабочий стол выбирая группы пакетов, которые нужно установить. Что внутри? Оборудование старше и медленнее? Попросите кого-нибудь перечислить классические современные при- ложения, в частности, GTK-альтернативы, и вы услышите такие назва- Мы рассмотрели использование ПК в диапа- циальный дистрибутив, например, SmoothWall ния, как OpenOffice.org, Firefox, Mozilla, Evolution и прочие. Это очень зоне 500–800 МГц и 128 МБ ОЗУ; а если у вас или IPCop. Установите один из них на ком- развитые программы, но расплатой за них служат потребление памяти, нечто более ограниченное? Здесь мы не соби- пьютер, отсоедините клавиатуру и монитор и процессорного времени и, в меньшей степени, дискового пространства. раемся вторгаться на территорию 386-го запихните их в чулан. Вся настройка осущест- Запуск OpenOffice.org на компьютере с 128 МБ и 700 МГц, по меньшей динозавра, но ведь полным-полно старых вляется через web-браузер, вам не потребует- мере, мучителен: к тому времени, как он загрузится, вы, возможно, настольных и переносных систем с процессо- ся физический доступ после установки. забудете, что за письмо вы хотели написать. Запуск KDE-приложений рами 200–300 МГц и 64 МБ ОЗУ. Им не потя- Что делать, если система настолько стара, станет нагрузкой сверх меры – не из-за требовательности KDE, а из-за нуть даже рабочий стол Xfce от Vector Linux, что не имеет CD-ROM, или имеет, но с него не но ведь есть и другие возможности. загружается? В последнем случае скопируйте Существуют более легкие оконные менедже- на дискету Smart Boot Manager, который при- ры: по убыванию размера, можете попробо- сутствует в каталоге Essentials на каждом вать IceWM, Fluxbox или Ratpoison (который LXFDVD. Загрузитесь с нее, затем выберите в запустится на всем, чья память больше памя- меню CD-ROM, чтобы передать процесс ти золотой рыбки). загрузки на CD. Загрузка без CD-ROM не Damn Small Linux и Puppy Linux запустятся столь проста. Все компьютеры, не имеющие в графическом рабочем столе на компьютере дополнительного привода, лишены и USB с памятью 32 МБ, и это один из способов (и тем более загрузки с USB), и сетевой получить пользу от такого оборудования, загрузки PXE, и вам, следовательно, придется однако лучше рассмотреть его специальное иметь дело с минимальными дистрибутивами применение, а не в качестве настольного на дискетках или с теми, которые могут осу- компьютера. Этот тип оборудования хорош ществить сетевую загрузку через дискету. для работы в качестве файлового сервера, Одну из возможностей предоставляет Debian – или web- или почтового сервера малой мощ- подробности на www.debian.org/distrib/netinst. ности. Но особенно хорошо использовать его С такой дискетой можно осуществить даль- как шлюз интернета. Конечно, старый нейшую установку по сети, хотя и более мед- настольный компьютер более шумный, чем ленную, чем обычно. Интересный способ про- маршрутизатор Netgear или Linksys, у него делать это даже без дискеты описан на http:// меньше мигалок, но он все-таки вполне мощ- marc.herbert.free.fr/linux/win2linstall.html, хотя ный и гибкий, если на нем выполняется спе- мы его не пробовали. Загрузитесь с CD и поработайте с неказистым, но легким в использовании установщиком Vector Linux.

32 Linux Format Февраль 2008 Воскресим старый ПК

Детям, детям, детям Слабая машина – идеальный компьютер для самых маленьких членов вашей семьи, пока они не захотят играть в 3D-игры (в этом случае им все-таки понадобится игровая приставка): для ребенка процессор до 1 ГГц – более чем достаточно, чтобы изучать основы работы с компью- тером и запускать образовательные программы. Вы, конечно, захотите пресечь доступ к системным каталогам; запретите su и sudo, и, воз- можно, ограничьте доступ в интернет. Отдельная учетная запись так- же позволит установить рабочий стол, более дружелюбный к ребенку, с большими красочными значками и средствами запуска его любимых программ. Для добавления пользователей используется либо VASM (Vector Administrative and Services Menu), оригинальная программа систем- ного администрирования Vector’а, либо чисто графический VASMCC. Создавая нового пользователя, ограничьте число групп, к которым он принадлежит. В частности, не делайте его членом ничего администра- тивного, ни adm, ни sys, ни wheel. Для каждого нового пользователя AbiWord умеет делать почти все, что и OpenOffice.org Writer, и вы сможете написать, распечатать и отослать письмо в AbiWord, Vector создает новую группу, но домашние каталоги он делает доступ- пока OOo загружает заставку. ными для чтения всеми, что вам может не понравиться, так что открой- те root-терминал и наберите того, что Xfce уже использует GTK, так что вам придется одновременно chmod o-rwx /home/* держать загруженными два графических интерфейса. VASM позволяет создавать пользователя без пароля, что удобно Однако вряд ли вам потребуется абсолютно все, что предлагает для совсем маленьких детей, но не считайте это простым выходом OpenOffice.org, и уж конечно, не все сразу; и существуют куда более лег- из положения: навыки безопасности следует прививать ребенку как кие альтернативы. Vector предоставляет AbiWord для обработки текстов, можно раньше. Если ваш компьютер предназначен только для одного а Gnumeric – для электронных таблиц. Оба они могут загружать и сохра- ребенка, можете настроить автоматический вход этому пользовате- нять файлы в форматах OpenOffice.org и Microsoft, так что у вас будет лю. Vector использует kdm, менеджер дисплея KDE, но не содержит полная переносимость данных [имейте в виду, что фильтр AbiWord для остальной инфраструктуры KDE, и вам придется редактировать файл документов MS Office несколько уступает таковому в OOo, – прим. ред.]. конфигурации вручную. Файл /usr/share/config/kdm/kdmrc следует Это сложившиеся программы, с хорошим набором основных функций; редактировать из-под root’а. Перейдите в раздел, озаглавленный [X- отсутствуют только экзотические возможности, используемые в основ- :0-Core] и найдите пункты AutoLoginEnable и AutoLoginUser. Удалите ном в документах маркетологов. Имеется Firefox, а также Opera. Да, он все знаки комментариев (#) в начале строки и установите значения великоват и заметно дольше загружается, чем на современной машине, на true и имя пользователя, соответственно. Также можно установить но если вас интересует большая часть web-страниц, ничто не подойдет AutoLoginAgain, чтобы не дать выйти из системы и войти под другим вам лучше. Производительность на тестовой машине была приемлема, пользователем. Это зависит от того, насколько любопытны или вред- но если вы работаете на чем-нибудь более медленном, в особенности на ны, по вашему мнению, дети. По моему опыту, недооценивать эти свой- меньшей памяти, то Vector предоставляет вам Dillo. Dillo – это браузер, ства просто нельзя! Вы все еще сможете войти под своим пользовате- используемый в Damn Small Linux, отсюда понятно, насколько он ком- лем, где вы сможете администрировать систему, либо переключаясь на пактен; но он также весьма быстр. Dillo не поддерживает HTTPS, и его нельзя использовать для банковских операций онлайн, но для многих сайтов скорость компенсирует ограничения. Известно, что управление пакетами в Slackware, мягко говоря, упро- щенное. Пакетная система, используемая в Vector, примерно такая же, но включает утилиты slapt, которые работают с пакетами Slackware как программы Debian. Slapt-get – это управление пакетами из командной строки, а gslapt схожа с GUI системы управления пакетами Synaptic, знакомой пользователям Ubuntu. У нее уже имеется парочка онлайн- репозиториев; вам просто нужно нажать на кнопку Update, чтобы ска- чать последний список доступных пакетов. Затем можете выполнять поиск программ и их установку в стиле «выбери и щелкни». Диапазон доступных программ поменьше, чем у более известных (и лучше финансируемых) дистрибутивов, однако поскольку в основном это Slackware, вы можете устанавливать также из его источников, только отметьте несколько параметров в настройках gslapt. Или же, если про- грамма имеет доступный пакет Slackware для скачивания, вы можете загрузить его обычным способом и установить с помощью installpkg – такие можно отыскать на www.linuxpackages.net. Если же специальный пакет отсутствует, то, в конце концов, в стандартной установке доступ- ны средства разработки, так что сборка из исходников вполне возмож- на, хотя и более медленна, чем вы привыкли. Почта управляется с помощью Mozilla Mail – несколько странный выбор, ведь есть прекрасные почтовые программы GTK, вроде Claws Mail и Sylpheed. Они быстры и легковесны, и не лишены многих функ- ций – например, я использую Claws Mail и на своем двухъядерном настольном компьютере, и на своей N800: это сама гибкость. Создавая пользователя для вашего ребенка, не делайте его членом никаких административных групп, иначе поломка компьютера гарантирована!

Февраль 2008 Linux Format 3 3 http://lolbook.nnm.ru Воскресим старый ПК

виртуальную консоль с помощью Ctrl+Alt+F1, либо убив X сочетанием chown -R adultuser: /home/childuser/.config/xfce4 клавиш Ctrl+Alt+Backspace. Затем войдите в консоль и, если нужен GUI, chmod -R +r /home/childuser/.config/xfce4 выполните startx. После этого ребенок не сможет ничего записать в каталог настрой- ки Xfce, где хранится большая часть настроек, но чтение этих парамет- Ограничение опций ров разрешено. Вы можете использовать тот же принцип для защиты Возможно, вы захотите ограничить опции, доступные для ребенка, в осо- настроек, хранящихся в других частях домашнего каталога. бенности маленького. Это можно сделать, убрав панель и меню и раз- местив на рабочем столе ярлыки для каждой программы, которая будет Безопасный просмотр запускаться. Чтобы убрать панель, щелкните по ней правой кнопкой и Ограничение использования интернета будет похитрее, если вы не выберите remove. Или же щелкните правой кнопкой по кнопке меню, хотите просто запретить любой доступ к Сети с этой машины (для это- выберите remove и повторите те же действия для значков, которые уже го она всего-навсего блокируется в настройках маршрутизатора). При не нужны. Затем добавьте на панель приложения, которые вам требу- желании контролировать доступ к интернету, не блокируя его, потре- ются. Чтобы добавить значок на рабочий стол, перейдите в /usr/share/ буется фильтрующий прокси, запущенный на другой машине – напри- applications и перетащите оттуда все значки, которые должны будут мер, на старом ПК, где стоит какой-нибудь подходящий дистрибутив, отображаться на рабочем столе, в ~/Desktop. Вам потребуются какие- SmoothWall, ClarkConnect или IPCop (сколько там, говорите, у вас ста- нибудь привлекательные значки и обои. На http://xfce-look.org можно рых компьютеров завалялось?). В этом случае вы, возможно, исполь- найти множество приятных обоев и тем для Xfce, что сделает рабочий зуете комбинацию прокси-сервера Squid либо со SquidGuard, либо с стол настолько дружелюбным к ребенку, насколько пожелаете. DansGuardian. Оба они работают со Squid, обеспечивая фильтрацию, Покончив с изменением настроек, вы, наверное, захотите закрепить однако выполняют эту фильтрацию по-разному. SquidGuard исполь- это, что можно сделать под root’ом с помощью зует список «неподходящих» сайтов, запросы к которым блокируют- ся или переадресуются, а DansGuardian фильтрует по содержимому запрашиваемых страниц. Любая такая конфигурация может работать в фоновом режиме на вашем рабочем столе, но обычно их запускают на разных машинах. Их установка и настройка потребует времени. Можно проступить иначе – запустить прокси попроще на вашем собственном настольном компьютере; правда, тогда ваш компьютер должен быть доступен на время подключения к интернету, что нор- мально, если у вас не двойная загрузка. Одна из таких программ – Willow, фильтр контента, доступный на www.digitallumber.net/software/ willow. Скачайте архив и, под root, распакуйте его в /var с помощью tar xf willow-3.18.tar.gz -C /var Затем скопируйте подходящий стартовый скрипт в /etc/init.d и Откройте добавьте willow на уровень запуска по умолчанию. Если вам выдается прирожденного ошибка о невозможности открыть модуль exefilter, уберите ссылку на художника в вашем exefilter, отредактировав /var/willow/willow.conf и изменив в нем ребенке с помощью filters = [‘domainfilter’,’exefilter’,’contentfilter’] TuxPaint. на filters = [‘domainfilter’,’contentfilter’] Для защиты компьютера с Linux exefilter не является необходи- Подходящие приложения мым. Теперь все, что осталось сделать – это установить браузер по умолчанию и настроить его на использование прокси Willow. Запуск Мы настроили компьютер на безопасное Пакет головоломок, загадок и игр на память. браузера в первый раз определит его как браузер по умолчанию; использование ребенком, но когда же будет Досадно, но на заглавной странице упоминает- выберите Firefox, перейдите в Edit > Preferences > Advanced > Network веселье? Поскольку мы запретили запуск ся только Windows, но, последовав по ссылке > Connection Settings и вручную настройте HTTP Proxy на имя той большей части программ и доступ к большей download в браузере под Linux, вы получите машины, где запущен Willow, и порт 8000. На машине с запущенном части интернета, что будем устанавливать? загрузку для Linux. Зачем скрывать свои талан- Естественно, это зависит от возраста ребенка, ты, Memonix? willow выполните но вот всеобщие любимцы: www.viewizard.com/memonix tail -f /var/log/messages Extreme Tux Racer и загрузите web-страницу в Firefox. Вы должны увидеть, что пробегают GCompris Последний вариант классической Tux Racer. какие-то сообщения, по мере того, как Willow извлекает данные и пере- Пакет образовательных программ для детей www.extremetuxracer.com дает их Firefox’у на другом компьютере. Содержимое этих сообщений в возрасте от 2 до 10. не столь важно: если страница загружается, а Willow не выдает никаких http://gcompris.net Существует намного больше образовательных очевидных ошибок, будьте уверены, что просмотр на старой машине Childsplay программ, доступных для Linux – так много, что защищен. Теперь следует обеспечить, чтобы он таковым и остался: Еще больше развивающих игр для младших по крайней мере два сайта, Schoolforge на www. сделайте файл настроек доступным только для чтения, с помощью детей. schoolforge.net и Tux4Kids на http://tux4kids. chmod -w .mozilla/firefox/XXXXXXXX.default/prefs.js http://childsplay.sourceforge.net alioth.debian.org, целиком им посвящены. Tux Typing Есть также предназначенный для них дист- Здесь XXXXXXXX – это строка случайных символов; нужное имя Обучение набору, радующее глаз. рибутив, Edubuntu, который, если вы еще не вам следует отыскать в каталоге (или используйте завершение по Tab. www.geekcomix.com/dm/tuxtype смекнули по названию, основан на Ubuntu. У Также можно выделить его из файла .mozilla/firefox/profiles.ini с помо- lletters него слишком жесткие требования для старого щью awk’а, или grep’а с sed’ом, но для одноразового применения про- Игра, помогающая малым детям изучить буквы ПК, однако в его списке пакетов на www. ще просмотреть каталог, хоть это и добавит к вашему рейтингу хакера и цифры. edubuntu.org есть что подобрать. меньше баллов. ОК, если вам действительно нужны баллы, выполните http://lln.sourceforge.net chmod -w .mozilla/firefox/$(awk -F \= ‘/^Path=/ {print $2}’ .mozilla/ firefox/ TuxPaint profiles.ini)/prefs.js GIMP для детей! Следует предупредить вас насчет Willow: чтобы эффективно филь- www.tuxpaint.org тровать с самого начала, она поставляется с примерами хорошего и Memonix плохого содержимого и сайтов. Плохие сайты включают явное порно

34 Linux Format Февраль 2008 Воскресим старый ПК

и столь же нежелательное содержимое (именно поэтому мы не вклю- чили его на наш DVD), так что устанавливайте его не на компьютер, Низкокалорийное ПО предназначенный для ребенка, а только на тот, который будет служить прокси. Плохой контент нельзя просмотреть через прокси-сервер, OpenOffice.org и Gnome, конечно, очень мощ- Люди хотят от браузеров очень многого, и можно только через файловую систему. ные, но выполняются при большом объеме для создания хорошего нового браузера требу- Вы, возможно, также захотите заблокировать в Firefox всплываю- ОЗУ и отнимают достаточно много тактов про- ется много сил – именно поэтому между Dillo и щие окна – они не только раздражают и сбивают ребенка с толку, но цессора. Здесь перечислены более легкие, но Firefox/Konqueror их очень мало. Некоторые из часто и не подходят по содержанию. Зайдите на https://addons.mozilla. тем не менее весьма достойные альтернативы на вид более легких браузеров, например, org и поищите там «Adblock»; среди результатов можно выбрать между некоторым из знакомых вам программ. Все Galeon и Epiphany, требуют библиотек и паке- они обеспечивают основные функциональные тов Gnome, что делает их не совсем легковес- исходным модулем расширения Adblock и более новым Adblock Plus. возможности своих более известных собрать- ными на не-Gnome’овских системах. Каждый из них отгоняет нудные всплывающие окна, и будет полезен ев, укладываясь в старое оборудование. всем детям младше 195! OpenOffice.org У вас на службе AbiWord для обработки текстов Существует множество специальных применений старых компьютеров. Gnumeric для электронных таблиц Запуск X отнимает много ресурсов, поэтому все, что не требует графи- KDE или Gnome ческого дисплея, является хорошим кандидатом для медленной маши- Xfce и файловый менеджер Thunar ны. На ней можно запустить один из множества серверов, либо ради IceWM и файловый менеджер ROX удовлетворения какой-нибудь потребности, либо просто что-нибудь Firefox или Konqueror Dillo новенькое на пробу. В этом случае вы, возможно, захотите установить K3b Vector без X, хотя установка с X без его использования отберет у вас Xfburn только некоторое пространство на диске. Evolution или KMail Может, он и большой, но Firefox – Если вы решили запустить что-нибудь вроде сервера, вам потре- Claws Mail или Sylpheed все еще браузер номер один. буется статический IP-адрес. Почти все дистрибутивы по умолчанию используют DHCP для получения адреса вашим модемом/маршрути- затором, что не есть хорошо, когда вы хотите подсоединиться с дру- часть работы по извлечению ее для ISP уже проделана в фоновом гого компьютера. Запустите VasmCC и перейдите в Network > Netconf. режиме. Выберите статическую конфигурацию и задайте неиспользуемый Поставить приложения по фильтрации спама, чтобы отсеивать мусор IP-адрес из диапазона вашего маршрутизатора. Его можно узнать со еще до запуска почтовой программы. страницы настройки вашего маршрутизатора, однако сторонитесь диа- Последнее особенно важно, когда вы предоставляете доступ пазона, предназначенного для адресов DHCP. В общем случае DHCP к интернет ребенку, ведь иногда содержимое спама шокирует даже использует большие номера для последней части адреса, скажем, взрослых. Обслуживание почты имеет три аспекта: получение почты от 192.168.1.100 до 192.168.1.200, так что во избежание конфликтов извне и доставка ее на локальные почтовые ящики, обслуживание поч- используйте меньшие номера. Шлюз и DNS должны быть установлены ты на локальных ящиках почтовых клиентов и получение и передача как адрес вашего маршрутизатора. почты с клиентов. Третий аспект большинству не нужен, но не стесняй- тесь устанавливать что-нибудь типа Postfix, если хотите попробовать. Почта без спама? Стандартная программа для первого аспекта – fetchmail. Установите ее Запуск собственного почтового сервера может показаться стрельбой и запустите fetchmailconf для создания файла конфигурации. Можно из пушки по воробьям, но есть разумные основания сделать это; вы также, использовать следующее, проделав нужные замены: сможете set daemon 300 Получать доступ к электронной почте с нескольких компьютеров, ска- poll mail.myisp.com with proto POP3 жем, настольного и переносного, держа обоих синхронизированными. user ‘myispuser’ there with password ‘mypass’ is ‘myuser’ here options Скачивать почту из нескольких учетный записей, вашего интернет- keep провайдера (ISP), Google Mail, и т.п., и помещать ее в одно место. mda ‘/usr/bin/procmail -d %T’ Скачивать почту для всех членов семьи и сортировать ее по разным и с помощью папкам. Скачивание почты происходит быстрее, так как медленная chmod 600 ~/.fetchmailrc установить его только на чтение вашим пользователем. myispuser и mypass замените на регистрационное имя и пароль почтового ящика у вашего провайдера, а myuser – имя локального пользователя. Так вы велите fetchmail проверять ваш почтовый сервер каждые пять минут (300 секунд) и доставлять почту, используя procmail вместо локаль- ного почтового сервера, предусмотренного по умолчанию. Опция keep оставляет почту на сервере; убедившись, что все работает, можете ее удалить. Чтобы собирать почту из нескольких почтовых ящиков, мож- но вставить несколько строк «poll... user...». Сохраните это в вашем домашнем каталоге под именем .fetchmailrc. Настройте procmail для доставки почты, поместив MAILDIR=/var/spool/mail DEFAULT=$MAILDIR/$LOGNAME/ в ~/.procmailrc (или /etc/procmailrc, если вы собираете почту для нескольких пользователей). Завершающий символ / важен: он велит procmail использовать формат maildir, которое впоследствии требуется IMAP-серверу. Под root’ом создайте почтовый каталог с помощью Для запуска какой-либо службы нужно использовать VasmCC, mkdir -p /var/spool/mail/myuser чтобы приписать компьютеру статический адрес. chown myuser:mail /var/spool/mail/myuser

Февраль 2008 Linux Format 3 5 http://lolbook.nnm.ru Воскресим старый ПК

chmod 770 /var/spool/mail/myuser перед тем, как переключиться с одного на другой. Проверьте: fetchmail --daemon 0 -v Деспамизация через dspam Это отключит фоновый режим и покажет, что происходит. Если все Возможность скачивать и обслуживать электронную почту локально – работает, установите fetchmail на автоматическое выполнение, выбрав это здорово, но ведь ее львиная доля – спам. Разве не хорошая идея – Settings > Autostarted Applications, нажав Add и введя fetchmail в поле избавиться от спама еще до запуска почтовой программы? Настраивая Command; для других двух полей включите ваше воображение. Теперь fetchmail на сбор почты, мы указали ему использовать для доставки fetchmail будет запускаться при каждой загрузке рабочего стола. Вы, почты procmail. Если заставить его пропускать почту через фильтр спа- однако, наверное захотите, чтобы он выполнялся все время, вне зави- ма, удаляющий мусор и пропускающий только хорошую (или не силь- симости от рабочего стола, так что можете добавить строку в конец но плохую) почту на procmail, то это будет улучшением. Одна из самых файла /etc/rc.d/rc.local популярных программ для этих целей – Spam Assassin, но я обнаружил, su myuser -c fetchmail что dspam эффективнее. Обе они используют байесовскую фильтра- Все команды в rc.local выполняются под root, так что su используется цию, при которой происходит анализ содержимого почты, и выдают для выполнения ее под вашим пользователем (запуск fetchmail под root рейтинг спамовитости, основанный на нескольких критериях. считается плохой практикой). Вы можете повторить этот процесс для По умолчанию dspam настроен на помещение спама в область каран- каждого пользователя почты, поместив их данные в файл .fetchmailrc тина, и вы скачиваете только почту, прошедшую тест. Карантин можно домашних каталогов и строчку для старта fetchmail для них в rc.local. осмотреть с помощью web-браузера и извлечь любую из «ложных тре- вог», т.е. почту, помеченную как спам ошибочно, и удалить остальное. Доставка почты Dspam учится на своих ошибках: каждый раз, когда вы отмечаете оши- Итак, почта у вас на сервере, и нужно, чтобы пользователи могли ее бочные результаты, вы уменьшаете вероятность повторения ошибки. забрать. На свете множество серверов IMAP и POP3; я предпочитаю Аналогично, вы можете послать спам, просочившийся через фильтр, Dovecot (http://dovecot.org). Его не найти в репозиториях Vector или обратно dspam’у, обучив его для дальнейших действий. У меня сейчас Slackware, так что скачайте пакет с www.linuxpackages.net и установите очень мало протечек спама и практически нет ошибочных результатов, его, используя команду хотя иногда я получаю более тысячи писем со спамом за день. installpkg dovecot-1.0.7-i486-1kjz.tgz Похоже, пакетов Slackware для dspam не существует, так что ска- После установки, настройте его, скопировав /etc/dovecot/dovecot- чайте его с http://dspam.nuclearelephant.com и установите при помощи example.conf в /etc/dovecot/dovecot.conf и загрузив его в ваш люби- tar xf dspam-3.8.0.tar.gz мый текстовый редактор. Найдите раздел «Mailbox locations and cd dspam-3.8.0 namespaces», добавьте туда строку less README mail_location = /var/spool/mail/%u ./configure --sysconfdir=/etc измените строки make #ssl_disable = no su и make install #disable_plaintext_auth = yes Затем отредактируйте /etc/dspam.conf и удалите первый символ #, на раскомментировав строки ssl_disable = yes #TrustedDeliveryAgent “/usr/bin/procmail” и #UntrustedDeliveryAgent “/usr/bin/procmail -d %u” disable_plaintext_auth = no и отредактируйте файл(ы) .fetchmailrc, изменив строку mda на Если вы используете это только в домашней сети, то вам не потре- mda /usr/local/bin/dspam --deliver=innocent -- -d %T буется SSL-идентификация. Если вы хотите иметь доступ к этому сер- Теперь fetchmail передает сообщение dspam’у, который проверя- веру извне, придется почитать документацию по SSL, чтобы обеспечить ет спам и доставляет чистую почту посредством procmail. Письма со безопасный вход. Закомментируйте строку passdb pam { и последую- спамом хранятся в карантине, и к ним можно получить доступ через щую закрывающую скобку и раскомментируйте #passdb passwd { и ее web-браузер. Из этого следует, что придется настраивать web-сервер с закрывающую скобку, так как Vector не использует PAM-идентифика- подходящими скриптами CGI и механизмами идентификации, а также ции. Затем переместите стартовый скрипт в то место, что используется то, что пользователям придется подключаться к web-серверу, чтобы Vector’ом, выполнив проверять ложные срабатывания. Но существует другой способ: поме- mv /etc/rc.d/rc.dovecot /etc/rc.d/init.d/dovecot нять --deliver=innocent на --deliver=innocent,spam, тогда все сообщения, Web-интерфейс и велите VasmCC запустить сервис. Если для сбора почты, вдобавок к и спам, и не-спам, попадут в почтовый ящик. Пока вы не заорали «За dspam’а даже стоящему по умолчанию IMAP, вы захотите использовать POP3, сле- что боролись?!» своему экземпляру Linux Format (этого в особенности выводит графики, показывающие, дует изменить не следует делать при чтении в городском транспорте), спешу сказать, сколько хлама #protocols = imap imaps что к письмам добавятся заголовки, один из которых, X-Dspam-Result, вам послали. на принимает значения Innocent или Spam. Вы можете на их основании protocols = imap imaps pop3 pop3s откинуть спам в отдельную папку, то есть быстро проверить и удалить и установить ваш спам без необходимости запускать браузер. pop3_uidl_format = %v.%u Байесовские фильтры спама типа dspam обучаются на вашей почте. Теперь вы можете в почтовых клиентах Вы можете дать ему пищу для ума, снабдив коллекцией хорошей поч- указывать вашу машину с Vector Linux, с ты и плохой почты (если вы не удалили таковую): выберите их в вашей определенными там именем пользователя и почтовой программе и сохраните как отдельные файлы, в каталогах паролем. Если вместо POP3 для соединения для спама и для не-спама (что-нибудь наподобие ‘ham’). Так как почто- использовать IMAP, ваша почта останется на вые программы часто сохраняют почту в виде отдельных файлов, это локальном сервере, то есть будет той же, с будет не сложнее, чем скопировать ваши папки с почтой и со спамом. какого бы компьютера вы бы ее ни скачива- Затем скопируйте эти файлы на сервер и обучите dspam с помощью ли, и уже не надо будет тщетно искать почту dspam_train username spam_dir nonspam_dir на ноутбуке после того, как вы скачали ее на Чтобы обучение было плодотворным, предъявите программе как настольный компьютер, или помнить о синх- спам, так и не-спам. ронизации каталогов почты на двух машинах Цифровая перестраховка

36 Linux Format Февраль 2008 Воскресим старый ПК

Кто помнит жалобы о трудностях со сменой флоппи-дисков при созда- нии резервных копий, поднимите руки! Сейчас DVD на 4 ГБ слишком Время ТВ малы, а ленточные накопители большой емкости стоят дороже резер- вируемого компьютера, хотя, может, и не дороже невоспроизводимых Есть возможность использовать старый ком- не проблема, если ваша видеокарта имеет данных, которые вы можете потерять. Но альтернатива есть, и она у вас пьютер для MythTV, но он будет ограничен в аппаратный декодер. Сейчас такие карты уже прямо перед носом (или на чердаке, если ваш старый ПК все еще там). своих функциях: перекодирование и коммер- довольно дешевы: какую-нибудь Nvidia FX5200 Обслуживание файлов по сети требует очень мало памяти и мощности ческое распознавание могут занимать много можно заиметь меньше чем за сорок долла- CPU: все, что вам нужно для создания резервирующего сервера (или времени. Но вот запись вещаний, которые уже ров. Добавьте еще десять за более тихий вен- любой разновидности файлового сервера) – это компьютер с доста- являются MPEG-потоками, требует лишь тилятор для CPU и дистанционное управление точно большим жестким диском и сетевой картой. скромных лошадиных сил. Добавьте карту через USB, и у вас будет все, что нужно. Freeview или две, а также емкий жесткий диск, Поскольку современные CPU вырабатывают Так как жесткие диски – один из немногих компонентов компью- и вы сможете использовать компьютер как намного больше тепла, современные вентиля- тера, работающих как физически, так и электрически, они подверже- устройство записи. торы более эффективны, так что можно ны износу, и 5–10 летний жесткий диск вряд ли будет самым надеж- Запуск интерфейса намного менее требова- использовать любой средний вентилятор и ным местом для хранения файлов из вашей сокровищницы. Однако телен: единственное, что требуется для данной включить его на медленной скорости, чтобы жесткие диски дешевы: новый диск на 160 ГБ стоит примерно $60. задачи – дешифрование потоков MPEG, а это шума было меньше. Используйте старый диск для установки ОС, а новый зарезервируйте чисто для хранения; тем самым системные файлы и файлы данных будут разделены. Если системный диск – на /dev/hda, резервные копии размещайте на hdc или hdd, и два диска будут на разных контроллерах. Возможно, что hdc уже занят под CD-ROM, так что установите переклю- чатели жесткого диска на slave и присоедините его к тому же контрол- леру, что и CD-ROM. Сделайте разбивку диска с помощью cfdisk или gparted. Во втором случае потребуется установить gparted, да еще и его зависимости; так что для одноразовой работы проще использовать cfdisk. cfdisk /dev/hdd Нажмите n для создания нового раздела, затем дважды Enter, чтобы принять установки по умолчанию и создать раздел, занимающий весь диск; если желаете создать раздел поменьше, введите другой размер. Добавьте подходящую дешевую видеокарту, Нажмите W (именно заглавную W), чтобы записать изменения, и вве- и можете использовать старый компьютер для просмотра ТВ. дите «yes» для подтверждения, затем q, чтобы выйти и перезагрузить- ся, убедившись в том, что ядро правильно считало таблицу разделов. Теперь создайте файловую систему, введя содержит дату, предоставляя вам удалять старые архивы, если вы mke2fs -j /dev/hdd1 увидите совпадения. Или можно запустить что-нибудь вроде BackupPC Обязательно проверьте правильность имени раздела, иначе вы (http://backuppc.sourceforge.net), тогда вся сеть машин зарезервирует- испортите не тот раздел! Потом добавьте в /etc/fstab строку ся на один сервер, выбираемый вами. Конечно, вы не обязаны исполь- /dev/hdd1 /mnt/backup ext2 noatime 0 0 зовать файловый сервер для хранения резервных копий. Существуют и примонтируйте раздел с помощью множество других применений совместного хранилища: например, mkdir /mnt/backup хранение вашей коллекции музыки или видео. Лучше всего NFS рабо- mount -a тает с Unix-подобными ОС (включая Mac OS X). Если вы хотите сов- df -h /mnt/backup местно использовать файлы с Windows, лучше используйте Samba. Последняя команда должна показать, что раздел примонтирован и на 99% пуст. Теперь его можно экспортировать на другие компьютеры Web на дому в вашей сети, добавив в /etc/exports следующую строку: Компьютер также пригодится для запуска web-сервера. С обслужи- /mnt/backup 192.168.1.0/255.255.255.0(no_root_squash,no_subtree_ ванием коммерческого сайта онлайн он не справится, но вы можете check,rw,sync) использовать его для тестирования сайта перед загрузкой, или чтобы Первые три числа в IP-адресе должны быть такими же, как и во просто поглазеть, как работает web-сервер. Стандартом де факто для всей вашей сети, последнее – ноль. Зайдите в раздел служб в VasmCC web-сервера является Apache, но это штука громоздкая; существуют и убедитесь, что portmap активирован на вашем уровне запуска. Затем более легкие альтернативы, с которыми можно поиграть – например сделайте /mnt/backup доступным остальной сети, используя boa, cherokee, lighthttpd и thpptd. Мы выбрали boa просто потому, что exportfs -a он доступен для установки посредством gslapt. После установки отре- exportfs дактируйте файл /etc/boa/boa.conf и измените DocumentRoot на /home/ Первая строка экспортирует общий каталог, вторая выводит список www, затем запустите boa через раздел Services в VasmCC, и вы смо- всех общих ресурсов, чтобы вы смогли увидеть, что все заработало. жете получить добавлять содержимое в /home/www и получать доступ Теперь можете примонтировать каталог для резервирования к каж- к нему с любого браузера в вашей сети. дому компьютеру в сети, добавив в файл /etc/fstab на каждом из них Мы всего лишь бегло очертили, что можно сделать с лиш- такую строку: ним оборудованием – включите ваше воображение! Новые идеи 192.168.1.N:/mnt/backup /mnt/backup nfs nosuid,rsize=8192,wsize=8192, ищите в каком-нибудь специальном дистрибутиве на DistroWatch soft 0 0 (www.distrowatch.com). Или установите систему домашней автоматиза- Здесь 192.168.1.N – это IP-адрес сервера. Создание резервных ции с использованием модулей X10, все управляемо через web-брау- копий оставляем на ваше усмотрение: можете использовать любую зер. Вы даже можете использовать шлюз text-to-email, чтобы, послав программу, создающую файлы резервных копий. Напрмер, заведите на текстовое сообщение с мобильника, включить свет и телевизор перед каждом компьютере каталог /mnt/backup и задание cron, выполняющее тем, как зайти домой! Если есть идея, то, возможно, есть и способ ее что-нибудь наподобие воплотить – свяжитесь с нами, сообщите, какие проекты мы можем tar czf /mnt/backup/$HOST/home-$(date -I)-.tar.gz /home обозреть в будущих выпусках. LXF При этом домашний каталог архивируется в файл, имя которого

Февраль 2008 Linux Format 3 7 http://lolbook.nnm.ru Просто скажите Windows «нет»

Как излечить Windows-манию

Поддержим друзей и любимых, впавших в зависимость от проприетарной ОС. Сеанс терапии проводит Джо Касселз...

сегда тяжело смотреть на друга или родственника, страда- ников. В данной статье мы рассмотрим пошаговый процесс отказа от ющего от какой-то зависимости. Общество помогает нарко- Windows и переключения на альтернативный вариант, при котором Наш зависимым и курящим избавиться от их пагубных привычек, вы не прикованы к конкретному поставщику ПО. эксперт но о самой разрушительной зависимости – зависимости от Джо Касселз ВMicrosoft Windows – оно еще не сказало своего слова. По разу в день потратил массу Первая доза часто дается бесплатно в виде предустановленного ПО, Большинству людей компьютер нужен для работы. Они не купят времени на поиски стоимость которого входит в стоимость компьютера. Но очень скоро PC, если на нем не установлено соответствующее их целям ПО. различных способов облегчить людям возникает полная зависимость, оставляющая несчастного пользовате- Подавляющее большинство компьютеров поставляется с Windows, переезд из мрака ля во власти поставщика ПО. Ему или ей суждено стать частью другой поэтому ее и выбирают по умолчанию. Фанаты Apple предпочтут Mac, к свету. статистики: пожизненных пользователей Windows. а люди, на которых брэнды особо не влияют, не пойдут по этому Что же не так с Windows? Как и при любой зависимости, за ее развле- пути, потому что Mac дороже PC. Если уж вы взвалили себе на плечи кательной составляющей недостатки не просматриваются, но постоян- Windows, вам нужно крепко ею объесться, чтобы возжелать перемен. ная тяга к конкретному ПО – статья особая. Если вы попросту не в силах Да нужно и знать, что существуют альтернативы, и обладать умением загрузить компьютер без Windows или сделать без нее что-либо осмыс- ими воспользоваться. ленное, то вы зависимы, и от этой привычки нужно избавляться. Компьютеров с предустановленным Linux очень немного, так что Многие зависимые люди скажут вам, что делать это нужно пос- доступны они лишь осведомленным об их существовании. Мало кто из тепенно, и тут жизненно необходима поддержка друзей и родствен- поставщиков продает компьютеры без предустановленной ОС – хотя

38 Linux Format Февраль 2008 Просто скажите Windows «нет»

Сохраняйте файлы OpenOffice.org в формате, который могут открыть Переезжая в Linux, не забудьте установить точно такие же пользователи Microsoft Office. настройки в OpenOffice.org. примечательно, что Novatech (www.novatech.co.uk) предоставляет воз- В Thunderbird осваиваться чуть дольше, чем при переходе с Internet можность приобрести любую конфигурацию без предустановленной Explorer на Firefox, но особых проблем быть не должно. Windows. Можно купить компьютер и, придя домой, просто установить Если же «пациент» пользуется почтовым web-сервисом, оставьте туда Linux. все как есть. При наличии браузера, URL, имени пользователя и паро- ля для почты, неважно, в какой операционной системе вы работаете. Программы или ОС? Однако чаще всего люди привыкают к Windows и ее программам. Офисные приложения Среднестатистический пользователь ПК вряд ли отделяет Windows А теперь займемся офисными приложениями. Именно здесь Microsoft от ее некоторых особенно популярных программ. Тем, кто не энтузи- завладела множеством пользователей, окрутив их версиями Word или аст, трудно понять, где заканчивается Windows и начинается Microsoft Excel, с которыми они работают. Но это и вызов для Microsoft, потому что Office. Это можно обратить в преимущество: проще убедить кого-то пользователи не стремятся обновиться до последней версии в силу обыч- попробовать новую программу, чем полностью изменить принцип ной инертности. Может быть, отчасти по этой причине и появился формат работы его компьютера. Постепенно заменяя программы Windows DOCX в Office 2007. Пользователи Office 2007 по-прежнему могут сохра- их распространенными Linux-аналогами, можно упростить переход в нять документы в формате, совместимом с ранними версиями Office, открытое окружение, избежав резких изменений. Расценивайте это как аналогичный этап борьбы с никотиновой зависимостью, когда количество выкуриваемых сигарет постепенно уменьшается до полно- Тревожные симптомы го отказа от курения. Проявления Windows- Firefox зависимости, и как они могут Первый рациональный шаг – замена Internet Explorer на Mozilla Firefox. повлиять на окружающих. Firefox, наверное, самая популярная программа с открытым исходным кодом. Освоиться в ней нетрудно, так как браузер достаточно похож Первый шаг, который нужно сделать для пре- на ранние версии Internet Explorer. Чтобы установить версию Firefox одоления зависимости – признать, что пробле- под Windows, зайдите на страницу www.mozilla.com/firefox, загрузи- ма существует. Это непросто, однако у всех те и установите программу. Во время установки можно перенести зависимостей есть заметные эффекты: Избранное и домашнюю страницу IE в Firefox. Не все даже могут отли- Фрагментирование данных Из-за расположе- ния и изменяемого размера swap-файла ком- чить Firefox от Internet Explorer 6, особенно если домашняя страница пьютер с Windows гораздо сильнее подвержен та же самая. фрагментации данных. В результате падает про- Вам нужна валидация извне? Поборов колебания насчет установки Firefox, попробуйте предъ- изводительность или тратится время на приве- Это типичный признак зависимости. явить преимущества браузера. Для этого добавьте несколько моду- дение диска в порядок. Неудивительно, что лей расширения, улучшающих web-серфинг, которые просто обяза- пользователи Windows испытывают стресс. Испорченный реестр Энтузиасту Windows очень ны быть у всех. Список модулей можно увидеть, выбрав пункт меню Вредоносное ПО Программы Adware и шпио- легко отредактировать реестр так, чтобы ком- Инструменты > Дополнения > Загрузить дополнения [Tools > Add-ons ны обычно пишутся в расчете на пользователей пьютер перестал загружаться. Этот Дамоклов > Get Extensions]. Установите Adblock Plus, Russian spell dictionary для Windows. Тем приходится прилагать больше меч доводит пользователя до нервозности, а то встроенной проверки правописания и NoScript. Есть море других моду- усилий, чтобы содержать систему «в чистоте», и и паранойи. Обновления Любую ОС надо время от време- лей, но эти три неоценимы: они блокируют раздражающую сетевую их всегда гнетет подозрение, что к их данным могут получить доступ другие. Инфицирование ни обновлять, но Windows несчастна уже тогда, активность и защищают браузер. также замедляет работу компьютера, вызывая у когда не может «звонить домой» каждый день. «пациента» раздражение и ослабляя концентра- Необходимость постоянно обращаться к пос- Электронная почта цию внимания. тавщику за обновлениями кода – явный при- Заведя в Windows браузер с открытым исходным кодом, перейдем к Антивирус Необходимость ежедневно запус- знак зависимости. электронной почте. Если у «пациента» стоит Outlook Express, поме- кать антивирус и загружать обновления – еще Условия зависимости Вскоре злополучный няйте его на Mozilla Thunderbird (www.mozilla.com/thunderbird). У этого один источник беспокойства многострадальных пользователь поймает себя на том, что он гово- клиента есть версия под Linux, и когда дело дойдет до переезда, пере- пользователей Windows. В теории доказано, что рит об Активации и Валидации на пониженных нести почтовые архивы будет очень просто. Как и Firefox, Thunderbird вирусы могут быть и в Linux, и антивирусные при- тонах. Эти понятия означают, что он должен предлагает импортировать сообщения и настройки из Outlook или ложения здесь тоже имеются, но зато не надо выпросить у поставщика разрешение продол- жить работу на своем же компьютере. Это Outlook Express, так что этот переход тоже относительно безболез- снова и снова сканировать систему, чтобы ее убе- речь. Необходимость держать это в голове может классическое поведение зависимых, и един- ненный. Хотя некоторые приемы работы с Thunderbird немного отли- заставить пользователя забыть о других важных ственный метод лечения – полностью отказать- чаются от Outlook, в целом возможности Thunderbird эквивалентны событиях – например, о чьем-нибудь юбилее. ся от Windows. Outlook Express, есть даже программа для чтения новостей Usenet.

Февраль 2008 Linux Format 3 9 http://lolbook.nnm.ru Просто скажите Windows «нет»

Заместительная терапия

Избавиться от влечения к брошенной Windows поможет Wine.

Для облегчения перехода к нормальной жизни наркоманам, употребляю- щим героин, дают таблетки метадона; курильщики лепят никотиновый пластырь, чтобы отвлечься от неприятных симптомов переходного пери- ода. Похожее средство есть и для пользователей Windows, отважившихся установить Linux на свой компьютер. Это программа Wine. Ее название расшифровывается как Wine Is Not an Emulator (Wine – Не Эмулятор): это слой совместимости, дающий пользователям Linux возможность запус- кать некоторые программы Windows. Загрузить ее можно с сайта www.winehq.com, но необходимые пакеты есть в большинстве дистрибутивов – поэтому, наверное, проще устано- вить Wine с помощью менеджера пакетов. Назначение Wine – предоста- вить приложениям Windows данные и ресурсы, необходимые им для работы в Linux. Не все программы работают с Wine безупречно; список совместимости приложений можно найти на странице http://appdb.winehq. org. Там же есть wiki, форум и ссылки на другие сайты, которые помогут запустить приложения. Но лучше рассматривать Wine как последнее средство. Запуск проприетарного ПО Windows под Wine порождает те же ограничения закрытого ПО и зависимость от поставщика, что и сама Windows. Если вы решили перейти на альтернативное свободное ПО в Windows до миграции на Linux, никотиновый пластырь Wine вам не пона- Установите Wine, чтобы запускать некоторые программы добится. Windows в Linux.

но для этого надо изменить настрой- Чаще всего переход на OpenOffice.org (OOo) не вызывает больших ки по умолчанию, чего многие прос- проблем. Самая используемая офисная программа, несомненно, тек- то не станут делать. Новый стандарт стовый процессор, и как только вы разберетесь с DOCX, ощутимых может принудить пользователей обно- трудностей с ним у вас не возникнет. Редактор электронных таб- виться. Он вызовет похожие пробле- лиц очень похож на Excel версий до 2007, а Impress, программа для мы и у желающих пользоваться откры- работы с презентациями, открывает файлы PowerPoint без особых тыми офисными пакетами. У OpenOffice. проблем. org (www.openoffice.org) есть версия под Однако есть еще кое-какие начальные мероприятия. Прежде все- Windows, совместимая с ранними версиями го, если вы сотрудничаете с людьми, работающими в Microsoft Office, Microsoft Office, но DOCX-файлы в ней открывать еще нельзя. К счас- позаботьтесь, чтобы ваши документы по умолчанию сохранялись в тью, есть web-конвертор DOCX, который преобразует документ для пригодном для них формате. Задать соответствующие настройки тех, кому нужен более открытый формат. Наберите в адресной строке можно в любом приложении OOo. Выберите Сервис > Параметры > браузера http://docx-converter.com и нажмите на кнопку Browse, чтобы Загрузка/сохранение > Microsoft Office [Tools > Options > Load/save найти и загрузить файл DOCX, который нужно преобразовать. Следует >Microsoft Office] и отметьте все галочки под [З] и [С] ([L] и [S]), чтобы указать адрес электронной почты, куда придет сообщение по окончании при открытии и сохранении каждого файла гарантировать его преоб- преобразования. разование в совместимый формат.

Настройка двойной загрузки: а надо ли?

Может ли двойная загрузка избавить диске. Или выберите Manual и укажите область диска, где хотите установить Ubuntu. Завершите установку. от Windows-зависимости? При загрузке компьютера появится загрузчик Grub. Ubuntu будет помечена как система по умолчанию; если Двойная загрузка – обычный этап на пути к перемеще- нужно выбрать другую систему, нажмите Esc. Выберите нию в Linux. Она дает вам полноценно работающий нужный вариант из списка и нажмите Enter. дистрибутив и гарантирует спасительную возможность На вид, двойная загрузка – идеальное решение для в любой момент перезагрузить компьютер и войти в тех, кто пытается избавиться от Windows, но у нее есть Windows. и ряд недостатков. Самый важный – то, что большин- Настроить конфигурацию с двойной загрузкой очень ство «пациентов», имея возможность загрузить просто. В большинстве дистрибутивов это делается при Windows, пойдут легким путем и снова примут дозу ОС Конфигурацию с двойной загрузкой настроить установке, если на жестком диске есть раздел с Windows от Microsoft. Извинения типа «я поработаю в Linux просто, но это не лучшее решение для Windows- и немного неразмеченного пространства. завтра» или «эта работа слишком важна для меня, зависимого. Например, для Ubuntu загрузитесь с Ubuntu CD. чтобы делать ее в незнакомом окружении» могут стать Запустится live-версия дистрибутива, работающая оправданием их поведению. прямо с компакт-диска. Чтобы установить ее на жесткий Все старания напрасны, если пользователь хочет по Двойная загрузка очень похожа на пачку сигарет, диск, дважды щелкните на иконке Install и следуйте умолчанию загружать Windows, «потому что так удоб- которую бросающий курить человек носит в кармане указаниям мастера. Дойдя до этапа «Разбиение диска», нее»: от этого один шаг до отключения двойной загруз- для подстраховки. Сделав так, чтобы вернуться к пагуб- выберите Guided – используется самая большая область ки и сползания к компьютеру, на котором стоит только ной привычке было просто, вы значительно усложните неразмеченного пространства, какая есть на жестком Windows. полный отказ от нее.

40 Linux Format Февраль 2008 Просто скажите Windows «нет»

Рецидив: часть восстановления

Если пациент возвращается к Windows, пробуйте снова и снова… Рецидив – часть зависимого поведения. Полный благих намерений, наш пациент изо всех сил пытается избавиться от дурной привычки навсегда – и в итоге ослабевает и возвращается к прежним стереотипам поведения. Это может вызвать чувство угнетения и неудачи. Пациент начинает думать, что нет смысла пытаться жить без Windows. Без при- Возврат в Windows – это разочарование. вычных костылей жизнь кажется ему тяжкой. Но еще не вечер. Если ваши друзья угодили в эту ловушку, ваша поддержка нужна им больше, чем обычно. Предложите свою помощь и поддержку в Мир не рухнет, если они продолжат работу следующий раз, когда они захотят попробо- в Windows. Проявите свое понимание, но вать перейти на Linux. Расскажите, что многим мягко напоминайте им о пользе свободного на это потребовалось несколько попыток, и ПО и программ с открытым исходным кодом. тут нет ничего страшного: это просто означает, Похвалите их за достигнутые результаты. что перемещение в другую ОС – непростой Напомните им об открытых программах, кото- процесс, не обязательно удающийся с первого VLC Media Player – кроссплатформенный проигрыватель, рыми они успешно пользуются в Windows. раза. Важные действия простыми не бывают. поддерживающий множество форматов файлов, и закрытых, и открытых. Продолжайте в том же духе, заменяя по одному приложению за раз Переход на OOo не лишен недостатков. Он запускается гораздо на аналог с открытым исходным кодом для Windows, который также медленнее, чем аналог от Microsoft. Это заметно только при запуске широко используется в Linux. Для обмена сообщениями попробуйте какого-либо из приложений, но нетерпеливым пользователям хватит Pidgin (www.pidgin.im), работающий со всеми основными протоколами задержки и в несколько секунд, чтобы занервничать. Документы со обмена сообщениями, хотя сейчас он не поддерживает видео-чаты. В сложным форматированием в OOo будут выглядеть не совсем так, как некоторых репозиториях он значится под прежним названием GAIM, в Microsoft Office, хотя это справедливо для любого другого офисного но по сути дела это одна и та же программа. Возможности широко пакета. В презентацию Impress сложно добавить Flash-анимацию, тогда используемого графического редактора GIMP по большому счету не как в Microsoft Office это очень просто. Однако эти мелкие недостатки уступают Photoshop или Paint Shop Pro, нужно только привыкнуть к обычно перевешивает тот факт, что OpenOffice.org – свободное ПО. интерфейсу. Возможно, труднее всего это будет случайному поль- зователю графических пакетов. Аналоги под Linux других программ Медиа-проигрыватель Windows можно найти в списке, расположенном по адресу http://wiki. В большинстве дистрибутивов Linux есть излюбленный проигрыватель linuxquestions.org/wiki/Linux_software_equivalent_to_Windows_software. мультимедиа, а пользователям Windows, наверное, знаком Windows Зайдя на эту страничку, посмотрите, есть ли Windows-аналог нужной Media Player. Однако VLC Media Player (www.videolan.org/vlc) имеет вам программы. Заменив основные приложения «пациента» в Windows ряд преимуществ. При очень простом интерфейсе, он поддержива- на их аналоги под Linux, вы уменьшите его культурный шок, когда дело ет множество типов файлов. Плейер также можно использовать для дойдет до перехода на Linux. воспроизведения потокового видео. Многие пользователи Windows Когда пользователь попривыкнет к Windows-версиям основных предпочитают его проигрывателю по умолчанию, и он истинно крос- программ Linux, настанет время великого переселения. Возьмите сплатформенный. Как и Firefox, VLC Media Player – один из лучших известный, хорошо поддерживаемый дистрибутив, напри- представителей приложений с открытым исходным кодом. мер, Ubuntu, Fedora или OpenSUSE. Обдумайте вари- ант двойной загрузки, но не забудьте, о чем предупреждает врезка «Настройка двойной загрузки: а надо ли?» на соседней странице. Может быть, для уменьшения вероятнос- ти рецидива лучше сжечь мос- ты. Как и с другими пагубными привычками, рецидивы случаются. Чтобы понять, как с ними бороть- ся, прочитайте врезку «Рецидив: часть восстановления». От привычки к Windows можно избавиться, и у многих это получи- лось. Потребуется немало преданности и тяжелой работы, но с поддержкой, силой воли и правильным отно- шением к этому все впол- не реально. Разве не ваш Кроссплатформенный браузер Mozilla Firefox быстро становится таким же популярным среди пользователей Windows, как и среди моральный долг – помочь поклонников Linux. другу избавиться от разру- шительной привычки? LXF Февраль 2008 Linux Format 41 http://lolbook.nnm.ru Ardour 2.1

AArdour:rdour: Играем р-р-рок! В новой серии Дэниэл Джеймс объясняет, как использовать Ardour для записи группы. А если у вас нет группы – просто, как сделать запись.…

сли вы уже создавали аудиозаписи в Linux и готовы идти жесткий диск – на 7200 об/мин – и быстрый процессор, когда дело дальше, или если вы – пока еще новичок в компьютерной дойдет до добавления в эти треки эффектов. музыке, но жаждете узнать, чего тут можно добиться, вам Большинство дистрибутивов GNU/Linux содержат двоичные паке- Наш определенно стоит познакомиться с Ardour. Его интерфейс ты Ardour. На момент написания данной статьи самым свежим рели- эксперт Енапичкан функциями и известен своей способностью вгонять новичка зом на http://ardour.org/ был 2.1. Вам также потребуется звуковой Дэниэл Джеймс в ступор, но время, потраченное на изучение программы, вознаграж- сервер JACK (находится на http://jackaudio.org), который надо уста- Один из основателей дается сторицей. Приоритет отдан не простоте использования – как, новить перед запуском Ardour, поскольку он используется для внут- дистрибутива например, в Audacity; главное для Ardour – обеспечение профессио- ренней маршрутизации звука между устройствами и приложениями. 64Studio и давний пользователь Ardour нальных пользователей необходимыми функциями и производитель- Учтите, что в Debian и Ubuntu пакет называется jackd. Там имеется в сфере ностью. В этом отношении Ardour подобен Blender – обучиться нелегко, еще один пакет, под названием просто jack, не имеющий отношения звукозаписи. А еще но результаты потрясающие. к нашей теме: это CD-риппер. Ну, вы поняли: Джек-Потрошитель. он играет на бас- Интерфейс Ardour задуман как привычный для пользователей Можно запустить jackd, демон JACK, через командную строку, но гитаре – почти нормально. высококлассных проприетарных студийных программ – например, мы в данном руководстве будем использовать графический интер- Pro Tools от Digidesign или Nuendo от Steinberg. Являясь свободно фейс QjackCtl, известный также как JACK Control. Чтобы результаты распространяемым ПО, Ardour доступен потенциально более широ- были лучше, вам также потребуется ядро с функциями реального кой группе пользователей, и не просто потому, что он бесплатен- времени. Вы можете сами наложить соответствующие заплатки, но как-пиво. Хотя для профессионального пользования рекомендуется куда проще взять готовый пакет для вашего дистрибутива Linux. Ядра относительно дорогой многоканальный аудиоинтерфейс, у Ardour нет реального времени поставляются как стандарт для мультимедий- особых требований к оборудованию – он будет работать практичес- ных дистрибутивов типа 64 Studio (на базе Debian), JackLab (на базе ки на любом современном ПК с обычной звуковой картой. Если вы OpenSUSE) или Ubuntu Studio (на базе… э-э, Ubuntu). собираетесь записывать много аудиотреков, не помешает скоростной

42 Linux Format Февраль 2008 Ardour 2.1

Приступаем Interface Эта настройка в правой колонке определяет, какое звуко- Первое, что вы должны сделать, установив пакеты Ardour, JACK и вое оборудование будет использовать jackd. Первую звуковую карту в QjackCtl – это запустить JACK. Закройте все программы, использующие вашей системе ALSA назовет hw:0. Не используйте вариант Default – из- звуковую карту, и запустите графический интерфейс QjackCtl из стар- за накладных расходов в ALSA его производительность не слишком тового меню. Если QjackCtl в нем нет, наберите в терминале: высока. Встроенный чипсет, многоканальная PCI-карта и звуковое На DVD $ qjackctl устройство USB – скажем, наушники – это три устройства ALSA. Иногда Когда QjackCtl запустится, перед вами должна появиться главная здесь также показывается звуковой чипсет программного модема. Ardour 2.1 панель управления, снабженная кнопками для различных функций и Удобно, что можно кликнуть по стрелке в правой стороне окна Interface настроек: и выбрать нужное оборудование во всплывающем окне по его настоя- щему имени – например, AMD8111 (встроенный чипсет). Audio С помощью этой функции вы можете выбрать Capture Only [Только Запись], Playback Only [Только Воспроизведение] или Duplex. Последняя опция подразумевает запись одновременно с воспроизве- дением, что может понадобиться при наложении одной записи на дру- гую (запись второго трека синхронно с первым, на слух). Режим Duplex требует большей пропускной способности канала, поэтому можно переключиться на режим Capture Only или Playback Only, если вашей QJackCtl – пока ничего не происходит, и главное окно затемнено. системе трудно справиться с поставленной задачей. Нажмите кнопку ‘Setup’ с правой стороны и взгляните на доступные Настроив все эти параметры, нажмите OK, и вы вернетесь в глав- настройки. Для наших целей наиболее важными из них являются: ное окно QjackCtl. Нажмите кнопку Start вверху слева графического Parameters: Realtime Этот флажок на левой стороне окна Setup надо интерфейса, и на дисплее отобразится информация о jackd. Если экран установить, если у вас используется ядро реального времени. В этом остался темным, значит, jackd не смог запуститься; в этом случае пос- случае демон jackd получит привилегии реального времени – иными мотрите на всплывающее окно Messages, где отобразится диагноз. словами, аудио станет самой важной задачей на компьютере. Можно Если эта информация не помогла вам определить проблему, вернитесь запустить jackd без них, но тогда звуковой поток может прерывать- в окно Setup и активируйте ‘Verbose messages output’, режим подроб- ся, становясь причиной опустошения буфера (которое jackd именует ных подсказок. ‘xrun’). Эти xrun’ы на записи слышны как помехи, которых, естественно, Теперь настал черед верхней строки желтого цвета на дисплее хотелось бы избежать. QjackCtl. Слово Started означает, что jackd запущен, а справа от него Frames/Period Эта настройка в средней колонке определяет размер видны буквы ‘RT’ – они сообщают, что демон использует привилегии буфера. Большой буфер безопаснее, но ухудшает латентность, т.е. вре- реального времени. Вернувшись вправо, мы увидим процент загрузки мя, проходящее с момента совершения компьютером некого действия DSP, показывающий, насколько эффективно работает jackd. На экран- и до того, когда вы слышите соответствующий звук. Музыканты с тре- ном снимке стр. 44 этот параметр равен одному проценту, потому что нированным слухом улавливают задержки в десятые миллисекунды и мы пока не приступили к настоящей обработке аудио. Если эта цифра даже меньше, и это может сбить их с ритма. приблизится к сотне, значит, у вас проблемы: система не справляется На современных машинах с ядром Linux реального времени, вполне с поставленной перед ней задачей. Поскольку Ardour весьма эффек- нормально начинать с настройки Frames/period в размере 256. Ощутив тивен, загрузка DSP при обычной записи не должна выражаться боль- xrun, установите более высокое значение; если ваш ПК старый и мед- шим числом, если только ваша машина – не антиквариат. ленный, может потребоваться повысить его аж до 1024. Проследите, И, наконец, в верхнем ряду показана частота дискретизации, на кото- как меняются цифры в окне разделе Latency (в правом нижнем углу) рой работает jackd. Все клиенты и интерфейсы JACK должны работать по мере изменения настройки Frames/Period. на этой частоте, иначе вы услышите несоответствие – как на виниле, Sample Rate Чем выше эта частота, тем лучше будет качест- если его проигрывать не с той скоростью. (Если, в силу юного возрас- во вашей записи – ценой использования большего места на дис- та, вам неизвестно, чем 45 об/мин отличаются от 33 об/мин, спросите у ке и необходимости в большей пропускной способности канала. папы – он знает). К счастью для нас, большинство программ JACK могут 44,1 кГц – частота, принятая для стандартных аудио-CD; другими устанавливать частоту так, как требуется. Некоторые звуковые карты, популярными частотами записи являются 48 и 96 кГц. Многие совре- например, M Audio Audiophile 24/96, позволяют зафиксировать частоту менные потребительские звуковые платы поддерживают частоту дискретизации. Если у вас возникли проблемы подобного рода, проверь- дискретизации только 48 кГц, а конвертирование материала в другую частоту передают программе; это – winmodem’ы мира звукового обо- рудования. Если при запуске jackd с другой частотой дискретизации отображаются все те же 48 кГц, значит, на вашей машине как раз и стоит один из таких чипсетов. Горевать особо не стоит, поскольку это вполне разумная частота, и вы сможете снизить ее позднее, уже при записи CD. Periods/Buffer Для большинства звуковых карт PCI этот пара- метр должен быть установлен в два. Для USB предпочтительнее три. Поэкспериментировав, вы сами увидите, какая именно настройка даст наилучшие результаты с вашим оборудованием. Если вы испытыва- ете проблемы с xrun’ами при любых настройках Frames/Period, стоит взглянуть сюда. Driver Настройка Driver находится рядом с правым верхним углом окна Setup. Для PCI, USB и встроенного звукового оборудования выбе- рите ‘alsa’. Для аудиоинтерфейсов FireWire, которые не используют драйверов ALSA, укажите ‘freebob’. Проект FreeBoB работает над вто- рым поколением аудио-драйверов FireWire, под названием FFADO, и если у вас новейший дистрибутив, возможно, вы увидите ‘ffado’ вместо Вот хорошие исходные настройки jackd для современного ПК ‘freebob’. с ядром реального времени Linux.

Февраль 2008 Linux Format 4 3 http://lolbook.nnm.ru Ardour 2.1

Демон jackd запущен, и все работает, как положено.

те инструмент панели управления вашей звуковой карты. У Audiophile он называется envy24control, и для большинства дистрибутивов находится в пакете alsa-tools-gui. Теперь пора запустить Ardour. Если вы пользуетесь терминалом, двоичный файл обычно называется ardour2. Данный суффикс нужен, чтобы вы могли запускать более старые GTK+ 1.x релизы программы, вплоть до версии 0.99, на одной и той же машине. Это – весьма полез- ная функция, если вы начали работать с проектом Ardour несколько лет назад, поскольку формат файла сессии изменился и не вполне Основное окно Ardour, окно редактирования. Виден мастер-канал, совместим с ранними версиями. Так или иначе, аудио файлы находятся но треков пока нет. в поддиректории директории сессии, и шанс навеки утратить черновой материал невелик. редактирования Ardour, с уже отображенным слева окном для мас- Ardour не откроется при запуске полностью: вместо этого тер-канала. Нажмите на Help; вы увидите единственный пункт – About, перед вами появится маленькое окно, называемое Session Control отображающий окно с логотипом Ardour и номером версии. Но это не [Управление сессией]. Ardour нельзя открыть без проекта; нужно значит, что справка отсутствует: на сайте Ardour имеется руководство, загрузить именованную сессию, даже если в ней пока нет никакого где подробно описаны расширенные функции. Несколько руководств аудио. Поэтому на данной стадии у нас в окне имеются две вклад- по работе с Ardour доступны в режиме онлайн. ки – New Session [Новая сессия] и Open Session [Открыть сессию]. В меню Session, в верхнем левом углу окна редактирования, Нажмите на маленький треугольник слева от Advanced Options выберите Add Track/Bus [Добавить Трек/Канал]. Появится небольшое [Расширенных опций], чтобы увидеть настройки. Нам надо отметить всплывающее окно – для нашей первой записи выберем Add 1 Track Create Master Bus [Создание мастер-канала], поскольку мы собираем- [Добавить 1 Трек]. В Channel Configuration [Настройке Каналов], выбе- ся пропускать через него все созданное в Ardour аудио. (Канал – это рите Stereo и Normal. Затем нажмите на кнопку Add, и вы увидите окно термин, используемый для обозначения части аудио-микшера, кото- Audio 1, которое появится слева от окна редактирования. Для каждого рая группирует сигналы из нескольких других каналов и отправляет трека в сессии имеется одно окно, и в каждом из них есть две группы их в общий пункт назначения.) кнопок. В группе справа есть кнопка с маленьким красным кружком, ‘Automatically Connect to Physical Inputs’ [Автоматическое соедине- которая настраивает индивидуальный трек для записи. Эта функ- ние с физическим вводом] – хорошая опция, поскольку она означает, ция позволяет переписывать отдельные треки, не трогая остальные. что порты записи вашей звуковой карты будут соединены с новыми Нажмите на красный кружок, и вы увидите, как его окрестность стано- треками в Ardour автоматически, и вам нет необходимости помнить об вится розовой, указывая, что для данного трека запись активна. этом. ‘Automatically Connect Outputs... to Master Bus’ [Автоматическое Перед началом записи мы должны сделать еще кое-что. Среди Соединение Выходных Данных… с Мастер-Каналом] – тоже неплохо, органов управления транспортом, слева от двух часов есть еще одна без нее вы бы по умолчанию ничего не услышали. кнопка записи, покрупнее. Она – главная, и пока ее не нажать, запись Введите имя сессии в окне Name и нажмите Open. Появится окно вестись не будет, независимо от состояния других кнопок. Нажмите на нее сейчас, и она должна загореться розовым: это – предупреждение, что мы можем сделать запись поверх невосстановимых материалов, если не будем внимательны. Внимание, запись! Теперь пора наложить трек с ударными. Если вам повезло, и у вас есть настоящая ударная установка, но подкачало оборудование со стороны компьютера, вы можете сделать весьма неплохую запись с помощью обычной звуковой карты и парочки моно-микрофонов. Установите один из них прямо над установкой, как можно выше, а другой раз- местите перед главным барабаном. Для стерео записи используйте оба микрофона сверху, с обеих сторон установки, направив их слегка

Всплывающее окно Add Track/Bus Дайте имя новой [Добавить Трек/ сессии Ardour Канал] позволяет и проверьте выполнить настройки соединения многоканальную по умолчанию. запись.

44 Linux Format Февраль 2008 Ardour 2.1

Нет ударных? Все равно пишите рок!

Если у вас нет ни ударной установки, ни умения играть на ней, ни понимающих соседей, на помощь снова придет свободное ПО – в лице Hydrogen. Это очень гибкая драм-машина, спо- собная воспроизводить сэмплы и акустических, и электронных установок. Исходные тексты можно найти на домашней странице проекта (http://hydrogenmusic.org), но большинство дис- трибутивов имеют двоичные пакеты. При запуске Hydrogen автоматически опре- деляет порты JACK, поэтому запись из него Звукозапись: вооружена и очень опасна. В журнале этого, может точно такая же, как при использовании сте- быть, не видно, но большая розовая кнопка мигает. реопары микрофонов на настоящей ударной Драм-машина Hydrogen, записанная внутрь. Хотя студийные снобы уверяют, что для записи ударных нуж- установке; отличаются только имена портов. в Ardour. Обратите внимание на Когда вы выполняете Input > Edit в микшере но не менее восьми микрофонов и большая панель микширования, дополнительную вкладку в окне ‘Available Ardour с работающим Hydrogen, появляется connections’[Доступные Соединения]. многие отличные записи были сделаны с использованием куда более дополнительная вкладка, позволяющая простой технологии. Большое преимущество старой школы в том, что выбрать правый и левый вход в Hydrogen. Hydrogen и сэмплов ударных, пока у вас не не надо тратить дни на ремикширование звука ударных: просто пере- Испробуйте несколько демо-фрагментов появятся собственные идеи. мещайте микрофоны по кругу, пока не получите приличный результат, и оставьте их на оптимальном месте. У Рона Паркера [Ron Parker], пер- вого инженера, применившего Ardour в коммерческой студии, всегда фон искажает звук с аналоговой стороны готов ответ для клиентов, которые просят его сделать качество звука системы. как у Джона Бонэма [Jon Bonham], покойного ударника Led Zeppelin. Если показания индикаторов вас удов- Он говорит: «Сперва сыграйте, как Бонэм, а уж об остальном я поза- летворяют, вернитесь в окно редактирова- бочусь». Иными словами, не зацикливайтесь на том, какое у вас обо- ния Ardour и нажмите кнопку Play (из числа рудование (или – какого оборудования у вас нет): сконцентрируйтесь органов управления транспортом); это зеле- на исполнении. ный треугольник на две кнопки левее глав- Установив микрофоны, вернитесь к Ardour, откройте меню ной кнопки управления записью, которую Windows в верхней панели окна редактирования и выберите Show мы нажимали ранее. Зеленая вертикаль- Mixer [Показать Микшер]. Вы должны увидеть одну вертикальную ная линия курсора в окне редактирования полосу около левой стороны окна микшера, которая отображает трек начнет смещаться вправо, и после неболь- Audio 1, и полоску для основного канала справа. Если у вас всего шой задержки перед вами должен появиться волновой профиль в Окно один монитор, будет удобно вынести окно Mixer на отдельное рабо- горизонтальной части справа от кнопок управления записью. редактирования чее пространство Х. По окончании нажмите на квадратную кнопку остановки – она рас- входных данных Около верхней части полоски для Audio 1 есть кнопка под назва- положена между кнопками воспроизведения и записи, а затем выбе- микшера позволяет проверять нием Input. Нажмите на нее и выберите Edit. Вы увидите всплываю- рите Save [Сохранить] в меню Session. На панели управления трека, соединения JACK. щее окно, указывающее, какие порты звуковой карты соединены с под ярлыком Audio 1 находится маленькая кнопочка с буквой ‘h’; это данным треком. Мы настроили Ardour на автоматическое соедине- кнопка высоты трека. Нажмите на нее и выберите Largest, тогда кривая ние физических портов, и если все нормально, вы увидите порт под записи отобразится более подробно. Перед вами – ваш первый трек! названием ‘alsa_pcm:capture_1’, соединенный с ‘in 1’ (Первый ввод В следующем выпуске мы поговорим о том, как добавить треки к данных Ardour для трека, соответствующий левому стерео каналу), и вашей сессии Ardour, как редактировать отдельные фрагменты и экс- порт под названием ‘alsa_pcm:capture_2’, соединенный с ‘in 2’ (для портировать целую песню. Это даст вам достаточно времени, чтобы правого канала). Те, у кого аудио-интерфейс FireWire, увидят здесь стать тем самым экспертом по части гитары, баса и клавишных, кото- порты FreeBob или FFADO. рым вы всегда мечтали стать. LXF Если все в порядке, нажми- те Close, и вы вернетесь в окно микшера. Поскольку кнопки запи- си активны, если вы ударите в барабан, то увидите, как движет- ся индикатор Audio 1 (ярко-зеле- ные вертикальные линии). Если индикатор зайдет в зону красного цвета, выше нуля на шкале, отод- виньте микрофон подальше от ударной установки. Уменьшение уровня записи в микшере Ardour посредством светло-серого регу- лятора громкости слева от инди- катора не поможет, если микро- Запись началась, и сейчас Микшер Ardour отображает отображается кривая полоску для каждого трека. трека ударных.

Через месяц Добавим треков к сессии и экспортируем готовую песню.

Февраль 2008 Linux Format 4 5 http://lolbook.nnm.ru Доверимся

В определенных кругах разработчиков безопасность PHP ставится под сомнение. Фрэнк Полманн развенчивает многие из этих мифов...

се мы знаем, что PHP может быть источником весьма серь- Права доступа и последствия Наш езных проблем с безопасностью. Регулярно обнаруживаются Следует принять в расчет два сценария: эксперт Вновые эксплойты, атакующие непосредственно интерпретатор; a Различные пользователи не должны иметь возможность случайно PHP-программисты часто имеют дело с системами управления контен- или умышленно перезаписывать файлы или каталоги друг друга. Фрэнк Полманн том (CMS), нередко становясь при этом жертвами взломщиков. b Каждый пользователь может иметь дело с виртуальной копией Писатель, аналитик Однако существуют весьма простые способы обеспечить безопас- Apache, избегая таким образом некоторых, но не всех, проблем с пра- технологий и проповедник ность, приняв во внимание то, на чем базируется работа PHP, а именно, вами доступа. Данная возможность отражается на производительности Open Source; web-сервер. За основу возьмем Apache, хотя часть последующих при- и безопасности, но в данном контексте мы ее обсуждать не будем. живет в Маниле, меров применима также и к другим серверам. Филиппины. Права доступа PHP CGI Как запускать PHP-программы Когда PHP скомпилирован для запуска с Apache, и используется Разбираться придется с несколькими различными случаями. файл конфигурации по умолчанию, рабочий режим PHP – это режим Программы PHP могут, во-первых, выполняться как CGI-скрипты; во- CGI-скрипта. Каждый CGI-скрипт, независимо от языка программи- вторых, запускаться в рамках модуля Apache; и в-третьих, программы рования, должен иметь необходимые права доступа, чтобы владелец PHP можно писать как CGI-скрипты, но выполнять как часть так назы- скрипта мог запустить его. Это значит, что владелец скрипта дол- ваемого модуля FastCGI. Скрипты CGI вызывают особенно неприятные жен уметь считывать и запускать сам скрипт, а Apache должно быть проблемы с безопасностью, ибо каждый CGI-скрипт выполняется как достаточно только прав на запуск. Если верить документации Apache, отдельный процесс. А каждый процесс, выполняемый web-сервером, права доступа каталогов cgi-bin, где Apache ищет CGI-скрипты, долж- наследует идентификатор пользователя (uid) web-сервера, что не есть ны быть таковы: хорошо, если кто-нибудь заполучит контроль либо над CGI-скриптом, drwxrwxrwx либо над исполняемым файлом Apache: тогда выполнение Apache и что также известно как права доступа 0777. Как мы увидим позже, все всех других CGI-скриптов будут во власти атакующего. сценарии внутри каталогов cgi-bin должны восприниматься Apache как Существуют, однако, способы держать PHP-скрипты в безопаснос- CGI-скрипты, и не иначе; отсюда следует, что надо привести в согласие ти без обращения к средствам второй линии защиты, вроде примене- права доступа всех скриптов, размещенных в каталоге cgi-bin (о фай- ния chroot’а к Apache и оставшейся части пакета {L,M}AMP. Зададимся лах с данными и с контентом речь пока не идет). Права 0777 допусти- вопросом о способах присвоить каждому CGI-скрипту отдельный uid; мы, но это рискованно, так как если вы предоставите их, любая брешь в частности, поговорим о suEXEC. Но есть более фундаментальные в защите приведет к тому, что люди смогут запросто перезаписывать приемы, с которыми нужно ознакомиться, прежде чем прибегать и даже заменять CGI-скрипты, если они вызываются и модифициру- к средствам типа suEXEC и suPHP. ются напрямую. Строго говоря, единственный пользователь (или группа!), кто во Первичное укрепление Apache время разработки и тестирования должен иметь право считывать, Практическую безопасность PHP можно подразделить на четыре части: записывать и получать доступ к каталогу cgi-bin – это web-разработ- безопасность файловой системы, безопасность Apache, уровень безо- чик, или группа таковых. Тогда права на каталог cgi-bin снижаются пасности PHP-интерпретатора и безопасность PHP-клиента. Первыми до тремя мы займемся целиком, а говоря о suEXEC, кратко остановимся drwxrwxr-x на четвертой. Предположим, имеется стандартная схема размещения они же – права доступа 775. Имеет смысл также предположить, что файлов: все файлы Apache расположены в /usr/local/apache2/. web-разработчику нужно считывать, изменять и выполнять файлы ServerRoot /usr/local/apache2 внутри каталога cgi-bin (и выводить их список!). По завершении разра- DocumentRoot /usr/local/apache2/htdocs ботки, когда CGI-скрипты попали на сервер, группе web-разработчиков Основной конфигурационный файл /usr/local/apache2/conf/ в целом, по идее, незачем в них писать. httpd.conf Выходит, права доступа для cgi-bin – 755, как и сделано по умолча- Параметры SSL /usr/local/apache2/conf/ssl. нию на многих установках Apache и пакета LAMP (Linux, Apache, MySQL, conf и PHP). Они также подразумевают, что пользователь Apache, если тако- ErrorLog /usr/local/apache2/logs/ вой существует, сможет выводить список файлов в данном каталоге, error_log исполнять и считывать их. AccessLog /usr/local/apache2/logs/ access_log Права доступа CGI-скрипта cgi-bin /usr/local/apache2/cgi-bin Так как всем остальным пользователям нужно уметь считывать Исполняемые файлы Apache /usr/local/apache2/bin CGI-скрипты, но только Apache приходится их выполнять, администра- Можно, а иногда и нужно, иметь несколько каталогов cgi-bin; этим мы тор должен установить всем CGI-скриптам права 644. воспользуемся при разговоре о местоположении PHP-интерпретатора. $ chmod 644 {любое_имя_файла}.cgi

46 Linux Format Февраль 2008 PHP

Options -Includes -ExecCGI Настройка Apache для PHP в главный конфигурационный раздел httpd.conf. Чтобы заставить web-сервер действовать по заданному сценарию, мы Нужно также назначить каталог, содержащий CGI-скрипты; должны удостовериться, что прописаны определенные директивы это делается директивой SetHandler. Тот факт, что мы разрешаем Apache, и присутствуют определенные модули. Прежде всего следует исполнение CGI через директиву Options, на вид противоречит преды- убедиться, что пользователь Apache – единственный, которому систе- дущей директиве, но вы ведь помните, что нельзя выполнять только ма разрешает запускать Apache, и что этот пользователь – единствен- CGI-скрипты, не содержащиеся в указанном ниже каталоге. ный член группы Apache. Назовем этого пользователя httpd, и группу тоже назовем httpd. Options +ExecCGI $ groupadd httpd SetHandler cgi-script $ useradd httpd -g httpd -d /dev/null -s /sbin/nologin Нам нужно создать для Apache нового пользователя, чтобы пресечь Сперва, однако, не мешает предупредить Apache, с какими фай- любые попытки взломщиков «угадать» владельца скрипта во время лами следует обращаться как со сценариями PHP. Итак, в главном работы. Мы не дадим самому Apache многих привилегий: у него даже файле конфигурации говорим Apache, что мы используем скрипты не будет отдельного входа в систему. Владельцу скриптов и файлов CGI – это мы уже сделали, осталось сообщить, что мы используем данных, конечно, полагается быть web-разработчиком или кем-то из файлы PHP: группы web-дизайна. AddHandler application/x-httpd-php .php Данная мера безопасности окажется бесполезной, только если кто- Вы можете добавить другие обработчики-handler’ы и, если захо- нибудь сумеет «угадать» идентификатор web-сервера, но для этого тре- тите, новые расширения файлов, например, php3 или php5, но это на буется несколько больше, чем способность выполнять CGI-скрипты. ваше усмотрение. Здесь приведен фрагмент httpd.conf: понадобится Еще нам понадобится возможность создавать другие каталоги cgi, еще несколько директив, чтобы наш httpd.conf заработал, но советую чтобы объединять наши скрипты вместе по типам. Желательно груп- добавить предыдущие директивы, в соответствии с нашими реко- пировать вместе PHP-скрипты, так как можно, а иногда даже нужно, мендациями. Я добавил директиву ServerRoot, чтобы httpd.conf стал иметь копию интерпретатора PHP, запущенную внутри CGI-каталогов. понятнее, и вот наши изменения: Обычно считается, что это – дыра в безопасности, но с ней можно упра- User httpd виться способом, которым мы потом займемся отдельно. Group httpd UID и GID созданного в системе Linux/Unix пользователя httpd, отоб- ражаемые в списке Linux-пользователей, должны совпадать с UID и GID ServerRoot /usr/local/apache2 пользователя и группы Apache. DocumentRoot /usr/local/apache2/htdocs Директивы http.conf, присутствующие в главном разделе конфигу- рации Apache, таковы: Options -Includes -ExecCGI User httpd Group httpd AddHandler application/x-httpd-php .php Позаботимся, чтобы Apache мог выполнять CGI-скрипты. Это гаран- тируется модулем mod_cgi (он доступен как часть базового дистрибути- ва Apache), но существуют некоторые директивы, которые следует доба- Order deny,allow вить к httpd.conf еще до работы модуля. Нам нужно сообщить httpd.conf, deny from all что CGI-скрипты могут запускаться, и откуда они могут запускаться. PHP должен запускаться из какого-либо каталога cgi-bin, независимо от того, один или несколько пользователей работают с CGI-скриптами. Мы должны начать с директивы, запрещающей всему, что располагается за пределами дерева web-сервера, запускаться владельцем или любым пользователем Apache. Потом мы сможем ослабить наши правила, но для начала лучше проявить максимум консерватизма. Следующие директивы тривиальны, но совершенно необходимы для безопасных операций Apache: Order deny,allow deny from all Это – стандартная директива, она гарантирует, что Apache не смо- Настройка безопасности жет обслуживать файлы по всей файловой системе, даже дерево web- сервера. Конечно, теперь придется потрудиться, чтобы Apache СМОГ Поскольку мы будем иметь дело с настройка- сборки, установите Apache 2.2.6 из исходных ми безопасности вашего web-сервера, само текстов: обслуживать нужные файлы, так что добавим другую директиву, сооб- собой разумеется, что не рекомендуется тро- $ lynx http://httpd.Apache.org/download. Cgi щающую, что Apache может обслуживать файлы данных и контента из гать копию Apache, поставляемой с вашей $ gzip -d httpd-2.2.6.tar.gz DocumentRoot: системой. Проверьте, запущена ли копия $ tar xvf httpd-2.2.6.tar DocumentRoot /usr/local/apache2/htdocs Apache: $ cd httpd-2.2.6 $ ./configure $ ps -aux | grep httpd $ make Order allow,deny Обнаружив, что Apache невозмутимо накру- $ make install Allow from all чивает обороты, на время остановите web-сер- Ваша копия Apache будет установлена вер. Если у вас Debian или Ubuntu или любая в /usr/local/apache2; если вы желаете устано- Для правильной работы PHP-скрипты обязаны восприниматься как другая система на базе Debian, сработает сле- вить его в другое место, видоизмените коман- CGI-скрипты. дующее: ду configure таким образом: $ sudo /etc/init.d/Apache2 stop ./configure -prefix=/path/to/Apache Чтобы никто не вздумал разрешить выполнение CGI с использова- Чтобы обеспечить эксперименты исключи- нием файлов PHP не из каталога /usr/local/apache2/cgi-bin (или любо- тельно с копией Apache и PHP собственной го другого, явно прописанного вами в директивах Directory), добавим

Февраль 2008 Linux Format 47 http://lolbook.nnm.ru PHP

Order allow,deny Allow from all

Options +ExecCGI SetHandler cgi-script Настройка и компиляция PHP Нам следует запустить настроечный скрипт со специальной опци- Теперь нам понятна основная структура прав доступа и те изме- ей перенаправления, чтобы иметь возможность поместить нения, что мы сделали в httpd.conf для стандартного укрепления PHP-интерпретатор в любой указанный нами каталог. Обратите внима- Apache. Нужно также укрепить нашу установку PHP – неважно, ние, что PHP-интерпретатор может размещается в потенциально опас- выполняются ли приложения PHP как CGI-скрипты или внутри ном месте, а именно, в любом общедоступном каталоге cgi-bin. модуля Apache. $ sudo ./configure \ > --enable-force-cgi-redirect \ Компиляция и установка PHP > --prefix=/usr/local/apache2/php В основном нам придется иметь дело с безопасностью серверной $ make стороны на четырех уровнях: нам нужно $ sudo make install a настроить файл Apache httpd.conf; Взгляните на опцию enable-force-cgi-redirect: вы только что разре- b скомпилировать и установить интерпретатор PHP с определенными шили копирование интерпретатора PHP в любой каталог cgi-bin. Опция директивами настройки; настройки сделает невозможной любую попытку получить доступ c отредактировать файл php.ini; к интерпретатору PHP через URL. В любом случае, исполняемые фай- d добавить и настроить определенные модули Apache и двоичные лы PHP CGI не обрабатывают аргументов командной строки. файлы, чтобы безопасно запускать CGI-сценарии PHP и программы, выполняемые как часть модуля PHP. Другой путь: подготовить php.ini Скачивание PHP я опущу, и перейду прямо к процессу компиляции. для скриптов PHP CGI Чтобы подготовить исходный код PHP для дальнейшей сборки, Мы также должны добавить директивы на уровень выше сервера нужно запустить файл configure, но не без дополнительных опций. Apache, в файл php.ini (файл настройки PHP). Удобной возможностью является ввод так называемой директивы doc_root. Еще о настройке Apache doc_root хорошо работает, если при компиляции не использует- Сначала поразмыслим о том, чего именно мы хотим – допустим, ся опция конфигурации enable-force-cgi-redirect. PHP-интерпретатор гибкости: например, возможности запуска PHP и как скрипта CGI, и в этом случае будет искать файлы PHP, начиная с каталога, упомяну- как модуля. Если мы добавим еще одну директиву конфигурации, того в директиве doc_root: например doc_root /var/www Action application/x-httpd-php /cgi-bin/php прикажет PHP-интерпретатору искать скрипты PHP CGI и файлы к уже существующей директиве данных, начиная с этого каталога. Бывает, что некоторые, а то и все, AddHandler application/x-httpd-php .php CGI-скрипты по соображениям безопасности расположены не в обыч- то сможем работать с любой установкой PHP, независимо от того, ных каталогах cgi-bin. Тогда можно создать отдельное дерево катало- где располагается PHP-интерпретатор и запускается ли приложение гов и внести этот путь в doc_root. Помните, что это не будет работать, PHP как скрипт CGI или в рамках модуля. Директива Action включа- если PHP выполняется как модуль Apache. ется посредством модулей mod_actions, доступных по умолчанию в Нам также следует сообщить PHP-интерпретатору, к каким файлам базовом дистрибутиве Apache. Это гарантирует, что все PHP-скрип- данных он получает доступ, добавив ты могут запускаться как скрипты CGI, так как PHP определяется open_basedir /var/www как конкретный тип MIME, который должен запускаться как скрипт или любой другой подобный каталог. Это следует поменять, если вы CGI. В итоге Apache сможет обрабатывать все PHP-скрипты. используете разные пути каталогов или, естественно, многопользова- тельский режим. Запуск PHP как модуля Больше защиты Для завершения картины запуска PHP и доступа к файлам с использо- ванием PHP нам нужно поговорить о запуске PHP в качестве модуля. К проведенному нами исследованию безопас- Добавляя максимально строгий контроль Это имеет решающие преимущества, так как производительность про- ности нужно добавить новый уровень защиты: внешнего доступа и озаботившись правами грамм PHP в этой конфигурации наиболее высока. Но в этом случае создать отдельный каталог cgi-bin, не являю- доступа к файлам, мы не прекратим работу сложнее держать разных пользователей в стороне друг от друга. щийся частью установки Apache. Затем мы PHP-интерпретатора, так как контроль досту- В то же время, разделение привилегий, хоть и не столь легко можем поместить туда PHP-интерпретатор и па по сети работает только для внешней достижимое, все же проще с CGI-скриптами, основанными на suEXEC. добавить следующие строки переадресации, а не для внутренней: Другими словами, использовать PHP как модуль в ситуации массо- он закроет любой прямой доступ к PHP- вого хостинга следует крайне осторожно. Но мы попробуем получить Order allow,deny интерпретатору или каталогу cgi-bin из нело- представление о том, как выглядит этот сценарий и что можно сделать, Deny from all кального источника, но при вызовах правиль- чтобы его обезопасить. ным пользователем PHP-скрипты будут Убедитесь, что интерфейс между apache и его модулями доступен: в файл httpd.conf. Причина, почему это работа- работать идеально. ет, в том, что мы добавили внутреннюю пере- он известен как apxs2. Первым делом нужно сменить каталог на то адресацию посредством директивы Action: место, где располагается исходный код PHP, и выполнить настроечный Action application/x-httpd-php /cgi-bin/php скрипт вроде следующего: $ sudo /.configure --with-apxs2=/usr/local/apache2/bin/apxs \

48 Linux Format Февраль 2008 PHP

Запуск suEXEC и PHP

Надо добавить к Apache модуль mod_userdir нужно найти cgi-bin, что мы ранее уже разре- посредством apxs, и добавить директивы шали, но только для пользователя Apache, а > --prefix=/user/local/apache2/php UserDir в файл httpd.conf, например: именно, httpd. Если модули еще не активированы, можете сделать это вручную: UserDir public_html Так как же средний держатель учетной добавьте следующую строку в файл httpd.conf, позаботившись, чтобы UserDir disabled root записи на хостинге Apache сможет получить расширения файлов, которые вы собираетесь использовать в вашей suEXEC находит файлы по запросу пользова- выделенный cgi-bin? установке PHP, распознавались Apache: теля, в данному случае – каноническому ~user, Очень просто: и приставляет к имени пользователя docroot. LoadModule php5_module libexec/libphp5.so suEXEC может добавлять к имени пользователя Options +ExecCGI Возможно, вам придется добавить директиву DirectoryIndex, чтобы общий подкаталог, что приводит к SetHandler cgi_script отображался индексный файл. /docroot/~username/publicfolder DirectoryIndex index.html index.php Чтобы было совсем здорово, ему также suEXEC Наконец, классическим решением проблемы запуска CGI-скриптов под запросу выполняться от имени отдельного пользователя. Это возмож- UID’ами, отличными от UID пользователя Apache, является suEXEC. но, но в таком случае вам следует перекомпилировать Apache с другой И наоборот, если Apache установлен вместе с suEXEC, он не станет потоковой моделью. выполнять скрипты CGI под root’ом и/или администратором. > -- with-suexec-userdir=public_html При правильной настройке suEXEC почти так же эффективен, как Если вы запускаете PHP-скрипты, на которые имеет права только chroot, хотя chroot считается только второй линией защиты: suEXEC определенный пользователь, отличный от httpd, вам следует указать будет выполнять только те скрипты, правом запуска которых обладает здесь родительский каталог для всех пользовательских директорий; только их владелец. Если, например, права на запись распространя- то есть независимо от того, кто пишет скрипты – Петя, Вася или Коля, ются на группу или на весь мир, скрипт не выполнится; точнее, он не PHP-скрипты должны быть доступны из каталога public_html, напри- выполнится, если хоть какое-нибудь право доступа распространяется мер, каталога html/cgi-bin. Несмотря на мое обещание не говорить на весь мир. В основном будут запускаться скрипты с правами досту- о виртуальных хостах, пожалуйста, убедитесь, что все они совместно па 750. используют корневой каталог, упомянутый здесь! Сам suEXEC может быть запущен только Apache. Группа, к которой > --with-suexec-docroot=/home принадлежит Apache – в нашем случае это httpd – имеет только одного задает каталоги, начиная с которых suEXEC будет проводить поиск члена, самого себя. Всему миру нельзя будет запускать ничего, если файлов и скриптов каждого пользователя. suEXEC включен. Apache следует переключаться между собой и дру- Если виртуальные хосты и файлы .htaccess не используются, это гим пользователем, чтобы запускать CGI-скрипты от его имени. Чтобы должно соответствовать конфигурации, представленной файлом httpd. достичь этого, нужно либо запустить Apache под root’ом (очень плохая conf. Мы можем оставить установки в .config по умолчанию, но стоит идея), либо в оболочке SUID – тогда Apache сможет запускать процесс проверить документацию Apache, чтобы понять, какие опции не сов- под другим ID для каждого динамического CGI-запроса. Таким обра- сем отвечают условиям вашей системы: suEXEC имеет много правил, зом, для каждого динамического запроса Apache выполняет два про- но мало исключений. цесса: двоичный файл SUID и собственно сам скрипт. Доступ suEXEC к PHP Настройка suEXEC Нам также нужно убедиться, что suEXEC позволяет обычному пользо- Одной из причин, почему suEXEC, будучи довольно продуманным при- вателю иметь доступ к PHP. Как уже говорилось, каждый пользователь ложением, не сильно популярен, является довольно сложный процесс должен иметь копию PHP-интерпретатора в своей каталоге cgi-bin. настройки: его необходимо сконфигурировать и скомпилировать вруч- Теперь следует подключить модуль Apache mod_rewrite. Сделав это, ную, так как suEXEC не есть часть дистрибутива Apache. Однако он мы можем добавить следующие правила в httpd.conf: полностью поддерживается Apache Foundation и чрезвычайно хорошо RewriteCond %{REQUEST_URI} .\php интегрируется с web-сервером. Некоторые дистрибутивы Linux или Они гарантируют, что любое преобразование URI затрагивает пакеты LAMP могут содержать уже настроенный suEXEC, однако это только PHP-файлы. Вам нужно убедиться, что все запросы, которые лучше проверить лично. должен обрабатывать PHP-интерпретатор, действительно доходят до Вам придется немного поиграть с опциями настройки. Пожалуйста, него; в то же время mod_userdir должен увидеть запрос и послать обращайте пристальное внимание на детали: suEXEC чрезвычайно его в нужное место: интерпретатор php, расположенный в каталоге суров, когда дело касается ошибок в информации о пути к каталогу или cgi-bin. UID’ов, которые не соответствуют выдаваемым базовой системой. RewriteRule ^/~(w+)/(.*)$ /~$1/cgi-bin/php/$1/$2 [NS, L, PT, $ ./configure --enable-suexec \ E=Redirect_STATUS:302 > --suexec-bin /usr/local/apache2/bin/suexec Флаги Rewrite гарантируют, что Предыдущую опцию следует проверить: она должна быть работоспо- (NS): внутренние подзапросы игнорируются; собной и жестко закодированной для вашей системы. Если вы случайно (L): это последний запрос – после него не допускается запросов ее пропустите, Apache даже не сможет найти suEXEC. Переменные PATH на перезапись; работать не будут. (Документация по Apache рекомендует /usr/sbin/ (PT): сейчас mod_rewrite остановит обработку, а mod_userdir примет- suexec). Проверьте ваше систему на предмет размещения Apache по ся за дело, и, наконец, переменной REDIRECT_STATUS будет присвоено умолчанию и ваших требований. значение 302, чтобы PHP мог обработать скрипт. > --with-suexec-caller=httpd Этот последний штрих в заклинании завершит нашу попытку Теперь вы понимаете, почему мы так настаивали, чтобы Apache создать безопасный PHP-сервер. Существуют другие модули для запускался под пользователем httpd. При использовании suEXEC не содержания PHP-скриптов в безопасности, а их доступа к файлам – обязательно позволять Apache отступать к пользователю root или в четких границах. suPHP, которому требуется suEXEC, запускает толь- пытаться запускать Apache и PHP в системе, требующей каждому ко PHP-скрипты, безопасно и под различными UID’ами. LXF

Февраль 2008 Linux Format 4 9 http://lolbook.nnm.ru Интернет-телефоны Выбираем VVoIP-клиентoIP-клиент

Яркая реклама операторов мобильной и стационарной связи спешит сообщить, что «цены стали еще ниже» – но Андрей Боровский не спешит снимать наушники и отключать микрофон от своего ПК с Linux. А зачем?

ехнологии компьютерной связи разви- вателями других систем. Все службы, которы- Чтобы подключиться к одной из сетей ваются диалектически. Не так давно ми могут пользоваться приверженцы Windows IP-телефонии, вам нужно создать учетную обычные телефонные каналы исполь- и Mac OS, доступны и в Linux. Хотите подклю- запись на сервере, поддерживающем соот- зовали полосу пропускания частот чаться к проприетарным системам, таким как ветствующий протокол. Тут между систе- Тчеловеческого голоса для предоставления или Windows Live? Это просто. Вам тре- мами Skype и SIP существует одно важное доступа в Интернет, теперь же высокоскорост- буется высокий уровень безопасности? Нет отличие. Подключение к Skype выполняется ные интернет-каналы заменяют собой теле- проблем. О подключении к сетям, построен- одним-единственным регистратором, тогда фонные линии. Если в 90-х годах пропускная ным на основе открытых протоколов, я уж и как серверов SIP существует много (например, способность телефонных линий ограничивала не говорю. freeworlddialup.com, iptel.org, ekiga.org, sipphone. список сервисов, доступных рядовым пользо- Подключение к сети IP-телефонии состоит com, wengophone.com). Зарегистрировавшись вателям Сети, то сейчас сервисы широкопо- из двух этапов – выбора поставщика услуг и на одном из серверов SIP, вы получите «теле- лосного Интернета побуждают людей отказы- выбора клиентской программы. И хотя ничто фонный номер» вида [email protected] ваться от традиционных телефонов. IP-теле- не мешает вам пользоваться услугами сразу и сможете звонить абоненту, зарегистриро- фония преобразила до неузнаваемости рынок нескольких провайдеров (и клиентских про- ванному на любом другом публичном серве- услуг международной телефонной связи грамм), на практике это не всегда удобно. При ре SIP. Повторюсь: регистрация на сервере и начинает менять рынок услуг связи выборе поставщика телефонных услуг сле- SIP, позволяющая звонить другим абонентам, локальной. В недалеком будущем дует учитывать две вещи: предоставляемые бесплатна. поставщики услуг традиционной дополнительные сервисы и поддерживаемые Из всего сказанного можно сделать вывод, телефонии (как стационарной, так протоколы. что между разными серверами SIP нет ника- и мобильной) будут предоставлять Что вам, как продвинутому пользователю, кого различия (кроме разве что стабильнос- только среду для передачи сигнала, нужно знать о VoIP-протоколах? При выборе ти работы). На самом деле это не так. Кроме а сами сервисы обмена информаци- поставщика услуг IP-телефонии следует, пре- соединения «компьютер–компьютер», пос- ей целиком уйдут в Интернет. Все это жде всего, учитывать используемый постав- тавщики IP-телефонии предоставляют ряд приведет к стиранию грани (прежде щиком коммутирующий протокол (подробнее дополнительных услуг, самая важная из всего, ценовой) между локальными о протоколах см. врезку). На сегодняшний которых – возможность звонить на обычные и международными телефонными день, одним из самых популярных коммути- телефоны (помимо этого, провайдеры пре- коммуникациями. рующих протоколов является Session Initiation доставляют такие возможности, как отправка Но возможности IP-телефонии Protocol, или SIP. Помимо SIP, широкое рас- SMS, регистрация для вашей учетной запи- не ограничиваются передачей голо- пространение получил протокол под названи- си «настоящего» телефонного номера, поз- са и видео на большие расстояния по ем H.323. Хотя H.323, как и SIP, может исполь- воляющего принимать входящие звонки с невысокой цене. IP-телефон может зоваться глобально, он чаще применяется в обычных телефонов, и т.д.). Если вы плани- использоваться для передачи практи- локальных сетях; кроме того, разработчики руете звонить со своего компьютера на насто- чески любого контента. Фактически, IP- открытого ПО оказывают большую поддержку ящие телефоны, вам нужно выбрать сервис, телефония сочетает в себе демократизм именно SIP (хотя и H.323 вниманием не обхо- предоставляющий такую услугу (например, пиринговых сетей и возможность адрес- дят). Такие службы, как Skype, используют sipphone.com или Ekiga.org). В то время как ной доставки. Компьютер с IP-телефоном собственные закрытые протоколы. На сегод- звонки «компьютер–компьютер» во всех можно превратить в электронное СМИ, няшний день сопряжение между разными службах SIP бесплатны (мне, по крайней мере, почти такое же, как и web-сервер. Думаю, протоколами отсутствует. Это значит, напри- не удалось найти такую, где за звонок с IP на вы уже поняли, что я хочу сказать: если мер, что с IP-телефона, настроенного на рабо- IP берут деньги), за звонки на обычные теле- вы еще не завели себе IP-телефон, сделай- ту с SIP, нельзя позвонить на Skype-телефон фоны необходимо платить. те это прямо сейчас (тем более, что это (точнее говоря, нельзя позвонить напрямую: Как уже отмечалось, весьма популяр- не трудно). если оба IP-телефона имеют выход на обыч- ная телефонная сеть Skype стоит среди дру- Приятно отметить, что в сфере IP- ные телефонные линии, можно осуществить гих сетей особняком. На вопрос о том, что телефонии пользователи Linux не звонок с помощью традиционных телефонных выбрать, SIP или Skype, я бы ответил – и то, и ущемлены по сравнению с пользо- сетей, но это, мягко говоря, неудобно). другое. Спектр дополнительных коммерческих

50 Linux Format Февраль 2008 Интернет-телефоны

Как работают IP-телефоны

Все протоколы IP-телефонии разделяют неко- Поскольку соединение между двумя IP-теле- маршрутизаторы со встроенной поддержкой торые общие принципы. Центральный сервер фонами включает две разные фазы – коммута- VoIP, но авторам протоколов и клиентских выполняет, прежде всего, функции коммута- цию и передачу данных, протоколы, используе- программ не приходится рассчитывать на тора. Когда пользователь IP-телефонии под- мые в IP-телефонии, делятся на две категории: наличие такого оборудования у пользователя. ключается к сети, он регистрируется на таком коммутирующие протоколы и протоколы пере- Можно также разместить клиент IP-телефо- сервере-коммутаторе. При этом указывается дачи данных. нии в демилитаризованной зоне брандмауэра, текущий IP-адрес пользователя и другие дан- Приведенная здесь схема установки соеди- но поставщикам услуг и на это рассчитывать ные, необходимые для установления связи с нения несколько упрощена. Во-первых, не не следует. ним. Если пользователь VoIP-сети хочет уста- всегда удобно требовать от всех абонентов, Одним из способов решения проблемы авто- новить соединение с другим пользователем, желающих общаться друг с другом, регистри- матической настройки клиента, работающего в его клиентская программа обращается к базе роваться на одном и том же сервере. сети, использующей NAT, является протокол данных сервера и выясняет, находится ли Например, открытый VoIP-протокол SIP поз- STUN (Simple Traversal of UDP through NATs). запрашиваемый абонент на линии. Далее сер- воляет устанавливать соединения между Обычно клиент IP-телефонии является одно- вер инициализирует соединение между двумя пользователями, зарегистрированными на временно и клиентом протокола STUN. При абонентами. В процессе соединения сервер разных серверах. Во-вторых, IP-адрес, как подключении к серверу SIP (который по сов- выполняет некоторые контролирующие функ- правило, не может однозначно идентифици- местительству является сервером STUN) теле- ции, сама же передача данных между абонен- ровать компьютер абонента. Поскольку сегод- фонный клиент посылает серверу специаль- тами выполняется напрямую. Помимо комму- ня практически все пользователи Интернета ный запрос. Поскольку сервер находится по тации соединений, серверы-коммутаторы скрываются за каким-нибудь брандмауэром другую сторону экрана NAT, он «видит», как выполняют ряд других функций: например, (собственным или провайдерским) и исполь- NAT преобразует адрес и порт клиента. Эту рассылают заинтересованным абонентам зуют трансляцию адресов (NAT), для клиентов информацию сервер отправляет клиенту, кото- сообщения о присутствии абонента на IP-телефонии важна способность работать из- рый настраивается на работу в сети с учетом линии. за межсетевого экрана. Существуют, конечно, полученных данных.

услуг, предоставляемых провайдерами SIP и чае SIP дело обстоит иначе. Хотя многие выбор ПО. Далее мы рассмотрим несколько Skype, в общем один и тот же, а фактическая сервисы SIP предлагают вам свой собствен- популярных Linux-клиентов IP-телефонии. стоимость этих услуг для вас зависит от мно- ный клиент IP-телефонии, вы не обязаны Помимо того, что все рассмотренные ниже гих обстоятельств. использовать эту программу (вы даже може- программы бесплатны, у них есть и другие После создания учетной записи на серве- те использовать программу, предоставляе- общие черты. Все представленные в данном ре IP-телефонии вам следует выбрать про- мую одним провайдером SIP, для работы с обзоре VoIP-клиенты умеют работать в сети, грамму-клиент. Если вы пользуетесь Skype, другими провайдерами). Таким образом, при защищенной брандмауэром. Все программы выбирать особо не из чего – компания пре- работе в сетях SIP вы получаете две степени поддерживают создание нескольких учетных доставляет единственную программу. В слу- свободы выбора – выбор поставщика услуг и записей SIP.

Рис. 1. Linphone Linphone в действии.

при наличии библиотеки libffmpeg, которую О главном нужно выгружать из репозитория SVN. Для правильной сборки Linphone мне пришлось Сайт www.linphone.org создать Make-файл командой Условия распространения GPL configure --disable-strict Протоколы SIP Все это может стать непреодолимым пре- Чат Да Видеоконференции Да пятствием для «среднестатистического поль- Мгновенные сообщения Да зователя», если таковой когда-нибудь перей- Голосовая почта Да дет на Linux. Если авторы программ для Linux Передача файлов Нет хотят привлечь обычных людей, им следует избавляться от дурных манер. Одна из неприятных особенностей умаю, вы согласитесь со мной в том, Linphone заключается в том, что введен- что при выборе между нескольки- ные пользователем настройки сохраняются Дми незнакомыми программами их на диске в момент выхода из программы названия играют немалую роль. Приложение (а не сразу после ввода). Поэтому, если под названием Linphone так и просится, что- программа в какой-то момент «упадет», что бы его инсталлировали на компьютер с Linux иногда с ней случается, тщательно подоб- (впрочем, оно доступно и для Windows). ранные параметры окажутся потерянными. Для установки программы потребуется сна- Для успешной работы в сети, использую- чала собрать [или добавить через менед- щей NAT, программу требуется настраивать жер пакетов, – прим. ред.] библиотеки libsip, специально (как минимум, указать адрес Рис. 2. Окно libexosip. Поддержка видео возможна только шлюза). настроек Linphone.

Февраль 2008 Linux Format 51 http://lolbook.nnm.ru Интернет-телефоны

Рис. 3. Главное Ekiga окно Ekiga.

ет, что клиент коммерческой IP-телефонии не О главном обязательно должен быть закрытым приложе- нием, использующим проприетарный прото- Сайт www.ekiga.org кол. Фактически, в случае проекта Ekiga мечта Условия распространения GPL Ричарда Столлмена (программы распростра- Протоколы SIP, H.323 Чат Да няем свободно, деньги зарабатываются на Видеоконференции Да сопутствующих услугах) становится явью. Мгновенные сообщения Да Если запустить программу из окна кон- Голосовая почта Да соли, а потом завершить с помощью Ctrl-C, в Передача файлов Нет терминале появится надпись «Убито» (честно говоря, я впервые такое вижу). Ekiga под- держивает видеоконференции и мгновенные тот проект, известный прежде как сообщения, а вот средства передачи фай- Gnomemeeting, представляет собой лов отсутствуют. Благодаря инструментам Эодин из наиболее тщательно прора- Zeroconf, Ekiga сама определяет параметры ботанных открытых коммуникаторов IP-теле- сети, в которой работает (например, нали- фонии. По качеству исполнения Ekiga при- чие брандмауэра, NAT и адрес шлюза), так ближается к таким программам, как Gizmo что с их настройкой возиться не приходится. и Skype. Приложение поддерживает отправ- Интерфейс программы выполнен очень гра- ку SMS и голосовую почту. Помимо самого мотно. Многочисленные настройки позволяют, программного продукта, вам предоставляет- при необходимости, контролировать практи- ся доступ к SIP-прокси Ekiga.com (ничто не чески все аспекты работы Ekiga, но значения, мешает, конечно, воспользоваться услугами выставляемые программой по умолчанию, любого другого прокси). SIP-сервис Ekiga.com являются в большинстве случаев оптималь- позволяет звонить на обычные телефоны (за ными, так что обращаться к окну настроек не плату, разумеется), что лишний раз доказыва- требуется. Рис. 4. Настройки Ekiga, о которых можно не вспоминать.

Gizmo обладает средствами отправки SMS, Рис. 5. Входящий связанными с сервисом, предлагаемым служ- звонок на Gizmo. Gizmo бой SIPphone. Таким образом, в случае Gizmo мы имеем полукоммерческий сервис, как и у Skype, и программный продукт, который, в отличие от Skype, может использоваться неза- О главном висимо от этого сервиса. Процедура установки Gizmo не требует Сайт www.gizmoproject.com больших умственных усилий (особенно если Рис. 6. От Gizmo Условия распространения для подключения вы используете учетную не скроешься – Бесплатно по закрытой лицензии запись Gizmo). Передача файлов работает определяем Протоколы SIP, XMPP Чат Да только при использовании Jabber (XMPP). В местоположение Видеоконференции Нет отличие от многих других Linux-клиентов VoIP, абонента. Мгновенные сообщения Да Gizmo содержит встроенные средства записи Голосовая почта Да разговоров и умеет кодировать данные по Передача файлов Да протоколу SRTP, при условии, что шифрова- ние поддерживается обеими сторонами. Любопытная функция Gizmo – возмож- омимо качественно сделанного ком- ность географической локализации звоняще- муникатора, проект Gizmo интере- го абонента (по его IP-адресу). Многоязычная Псен моделью ведения бизнеса. Gizmo карта Google (географические названия каж- – дитя коммерческого предприятия SIPphone, дой страны выводятся на соответствующем но клиент Gizmo использует открытые про- языке), открывающаяся в отдельном окне токолы. Зарабатывает SIPphone с помощью браузера, позволяет переключаться между собственного SIP-сервиса, предоставляя плат- схематическим изображением и видом со ные услуги сопряжения с обычными телефон- спутника и поддерживает мощное увеличение ными сетями. При этом SIPphone предостав- (поскольку местоположение абонента опре- ляет более широкий спектр услуг, чем Skype. деляется, в лучшем случае, с точностью до Например, очень удобна услуга Gizmo Call, города, увеличение не имеет особого смыс- позволяющая получить временный локаль- ла). Еще одна приятная мелочь – из всех рас- ный телефонный номер для разговора в смотренных программ Gizmo наиболее полно любой стране мира. Помимо прочего, клиент русифицирована.

52 Linux Format Февраль 2008 Интернет-телефоны WengoPhone

ся к сети (это при наличии дистрибутива на О главном локальном диске!). После сборки и установки программа не смогла правильно сконфигу- Сайт www.wengophone.com рировать звуковую систему (все остальные Условия распространения GPL Протоколы SIP участники теста справились с этим самосто- Чат Да ятельно и без затруднений), а ручные мани- Мгновенные сообщения Да пуляции с настройками так ничего и не дали. Передача файлов Да По умолчанию коммуникатор устанавлива- Голосовая почта Да Видеоконференции Да ется в глобальный каталог /opt/wengophone; при этом, будучи запущенной из-под обычно- го пользователя, программа часто аварийно завершается из-за отсутствия прав доступа к ще один проект, который сочетает каким-то компонентам. После запуска из-под открытую программу-коммуникатор и root программа не завершалась сама собой, Едовольно развитую службу SIP с таки- но и работать как следует не хотела. ми коммерческими сервисами, как звонки и Все эти проблемы исчезли после того, как отправка SMS на обычные телефоны. Кроме я установил ту же версию WengoPhone из дво- того, на сайте WengoPhone предоставляется ичного дистрибутива. Программа корректно много других коммерческих услуг в соответ- настроилась на работу со звуком (используя ствии с моделью Web 2.0. Поскольку проект при этом файлы конфигурации, созданные открытый, я решил собрать его из исходных предыдущим вариантом). Никаких других про- текстов (речь идет о версии 2.1.2), и чуть блем в работе новой установки WengoPhone было не разочаровался. Странности начались замечено не было. Единственный минус – про- с самого первого шага: в архиве не оказа- грамма не сумела распознать адрес абонента, лось привычных нам скриптов конфигура- зарегистрированного у другого провайдера ции! Вместо этого предлагается использо- (само соединение с абонентом было уста- вать скрипт установки, который подключает- новлено успешно). Интересная особенность Рис. 7. У меня зазвонил WengoPhone...

TeamSpeak

Дальнейшее исследование программы под- О главном твердило мои подозрения – TeamSpeak для Linux написан на Kylix. Такой выбор средства Сайт www.goteamspeak.com разработки (для тех, кто не в курсе, поясним: Условия распространения Kylix, «Delphi для Linux», давно уже заброшен Бесплатно по закрытой лицензии разработчиком и повсеместно вышел из упо- Протоколы Собственный, закрытый Чат Нет требления) объясняется, скорее всего, тем что Видеоконференции Нет TeamSpeak для Windows написан на Delphi. То, Мгновенные сообщения Нет что разработчики умудрились развернуть Kylix- Голосовая почта Нет приложение на современных дистрибутивах Передача файлов Нет Linux – уже достижение, в своем роде. В про- грамме есть ряд функций, ориентированных на играющих онлайн, например, возможность быстро переключаться из режима общения с рограмма TeamSpeak представляет отдельным игроком в режим общения со всей собой инструмент довольно узкого группой. Всем, кто когда-то писал для Kylix, Ппрофиля с жесткими коммерчески- стоит посмотреть на экранный снимок и смах- ми требованиями. Программа бесплатна толь- нуть ностальгическую слезу, а вот использо- ко для некоммерческого использования, а вать TeamSpeak в повседневной жизни я не за коммерческое применение (для звонков советую. с компьютера на компьютер) надо платить. Я бы не стал останавливаться на этой про- Рис. 8. TeamSpeak: для тех, кто помнит Kylix. грамме, если бы в процедуре установки под Linux мне не померещилось что-то знакомое.

Февраль 2008 Linux Format 5 3 http://lolbook.nnm.ru Интернет-телефоны

kype – яркий пример того, как мож- Следует отметить, что клиент Skype для но оттирать конкурентов с помощью Linux отстает в плане функциональности Skype Sвовремя накопленной пользователь- от своего Windows-аналога. Например, под- ской базы. Помимо большого числа уже под- держка видеоконференций, реализованная ключенных пользователей, у Skype нет серьез- в Skype для Windows больше года назад, на О главном ных преимуществ перед Gizmo и WengoPhone. момент написания этой статьи отсутствовала Однако пользовательская база – действи- в Skype для Linux (хотя разработчики обеща- тельно серьезный аргумент. Дело не толь- ли добавить ее в ближайшем будущем). Сайт www.skype.com ко в том, что почти у каждого пользователя Skype предоставляет в распоряжение про- Условия распространения Бесплатно по закрытой лицензии ПК, знакомого с IP-телефонией, есть адрес граммиста специальный API, позволяющий Протоколы Собственный, закрытый Skype. Популярность Skype проявляется в создавать программы-расширения (LXF99). Чат Да таких вещах, как большое количество серви- Для платформы Windows таких расши- Видеоконференции Обещаются сов оплаты и широкий ассортимент специ- рений создано уже немало, в том числе и Мгновенные сообщения Да ализированных устройств (Skype-телефоны, коммерческих. Голосовая почта Да Skype-шлюзы и т.д.). Передача файлов Да

Jabbin тот клиент поддерживает протоколы Jabber и может применяться только в Эсетях Jabber/Google Talk. Лучше всего он подойдет тем, кто «живет» в сетях Jabber. О главном По моему личному мнению, устанавливать клиент IP-телефонии только ради поддерж- Сайт www.jabbin.com ки не очень популярного протокола Jingle не Условия распространения GPL имеет смысла, во всем же остальном Jabbin Протоколы Jingle, XMPP уступает клиенту Gizmo. Чат Да Видеоконференции Нет Мгновенные сообщения Да Голосовая почта Нет Передача файлов Да Рис. 9. Jabbin, телефон для Jabber.

заключение, рассмотрим одну про- [Philipp Zimmermann]. Под руководством Комплекс программ, предназначенных для грамму, которая, не будучи сама кли- господина Циммермана ведется разработ- защиты телефонных переговоров с помощью В ентом IP-телефонии, может стать ка нового протокола ZRTP, который должен протокола ZRTP, состоит из пакета Zfone и хорошим дополнением для многих из них. значительно повысить уровень безопаснос- набора разработчика Zfone SDK. Пакет Zfone Большинство открытых клиентов IP-телефо- ти при передаче данных. Некоторые аспек- представляет собой адаптер, который шиф- нии либо вообще не поддерживают шифрова- ты работы протокола ZRTP довольно любо- рует на лету данные, передаваемые клиентом ние данных, либо применяет не очень стойкий пытны. Например, для предотвращения ата- IP-телефонии. Поддерживаются протоколы протокол низкого уровня SRTP. Разработчики ки посредника абоненты в начале разговора SIP, H.323, Jingle и другие (со Skype Zfone Skype хвалятся своими алгоритмами шифро- получают специальные числа, которые они работать не будет). Zfone SDK позволяет вания, однако, поскольку протоколы Skype должны продиктовать друг другу для того, встраивать поддержку ZRTP непосредственно закрыты, мы можем только верить (или не чтобы убедиться, что полученные ими значе- в клиентские программы IP-телефонии. верить) им на слово. Что ж делать тем поль- ния совпадают. Протокол ZRTP не является Подводя итоги, я скажу то, что вы и сами, зователям, которые хотят обеспечить дей- стандартом IP-телефонии. Хотя Циммерман наверное, хорошо знаете. Ваш рабочий стол ствительно высокий уровень конфиденци- и его друзья прилагают серьезные усилия по Linux готов к тому, чтобы превратиться в центр альности переговоров? На помощь приходит стандартизации протокола, на сегодняшний телефонной связи со всем остальным Миром. «отец общедоступной криптографии» [созда- день ZRTP поддерживается только программ- Осталось только установить выбранную вами тель PGP, – прим. ред.] Филипп Циммерман ным обеспечением, написанным ими самими. программу. LXF

54 Linux Format Февраль 2008 3D modelling tool Reviews Учебники Наши эксперты помогут вам с любым приложением Linux В этом выпуске... ЕВГЕНИЙ БАЛДИН 56 RSS простым языком 76 Презентация с изюминкой Начинал с Агатов. Когда- Регулярно посещаете множество web- Отчаялись привлечь внимание аудитории то даже знал, что такое сайтов и хотите делать это максимально к динамике популяции африканских Робик. эффективно? Ищейка Энди Ченнел слонов? Сергей Яремчук подскажет, как раскрывает магию маленькой оранжевой скрасить вашу презентацию иконки. новомодными эффектами OpenGL. Свободу текстам! 60 Синхронизируем Windows и 79 DVD: диета для видео Linux В отличии от «чуть-чуть маловатых» Книги не говорят, а правду Звезда этого номера Джо Касселз джинсов, проблема двух минут видео, не сказывают. раскрывает секретный ингредиент влезающих на DVD-диск, действительно успешной миграции из Windows в Linux: решаема без голодания и таблеток. Русская народная пословица сервер Unison. Алексей Маслий расскажет, как именно. ихо и незаметно наступило 1 января 64 Темная комната с Linux 82 Маленькие хитрости OOo 2008 года, а вместе с ним вошла в Дейл Стрикланд-Кларк начинает новую Если вы активно используете OpenOffice. Т силу новая редакция Гражданского серию уроков для фотографов, org для представления графической кодекса Российской Федерации, а имен- использующих Linux, с разъяснения информации, вам сюда: Роман Козодаев раскроет тайные формулы Draw и но, вступила в силу четвертая часть ГК механики проприетарных RAW- форматов. Impress. от 18 декабря 2006 года №46-ФЗ (Права на результаты интеллектуальной деятель- 68 Программистский проект 86 Qt4 для продолжающих ности и средства индивидуализации). Как Номер два: Майк Сондерс поможет KDE4 наконец-то вышел – время браться следствие, в нашу жизнь пришли какие-то выучить иностранный язык посредством за кодирование. Андрей Боровский рассмотрит новые технологии Qt4 и еще правила. Весьма неоднозначные, но программы flash-карточек на Python. покажет, как использовать их в ваших правила, поэтому придется с ними разби- приложениях. раться, как бы этого не хотелось. Новый закон касается не только про- 90 R: построение графиков граммных продуктов, но и более привыч- 72 Виртуальные сервера Из таблицы Excel в гистограмму – наши эксперты Алексей Шипунов и Евгений ных человечеству источников информа- Сбалансированный по нагрузке кластер с LVM сильнее, чем индивидуальный Балдин разъяснят процесс построения ции – книг. В руководстве для библи- сервер. Д-р Крис Браун наслаждается графиков «от и до». отечных и информационных работников мощью четырех компьютеров. «Авторское право и библиотеки» авто- ры Я.Л. Шрайберг, А.И. Земсков, В.В. Терлецкий и В.Р. Фирсов явно указыва- ют, что: «Копирование любых охраняемых Совет месяца: Сервисные меню KDE авторским правом материалов без согла- сия правообладателей является наруше- нием авторских прав. Знаки “Copyleft” KDE поставляется с набором предварительно настроен- [Desktop Action shrinkImage] ных действий для контекстного меню. Это, конечно, Name=Shrink Image или “Creative Commons” в наших законах неплохо, но еще лучше то, что вы можете создавать свои Icon=showfoto не упоминаются.» Причем согласие авто- собственные действия. Сервисные меню определяются в Exec=~/bin/shrinkimage.sh “%f” ра должно быть письменным и выдано .desktop-файлах, хранящихся в share/apps/konqueror/ Строка в заголовке должна соответствовать введенной каждому. servicemenus либо в вашем домашнем каталоге, либо в в поле Actions desktop-файла; поле Name задает видимое Кажется, есть проблема: явно про- директории, где установлен KDE, в зависимости от того, пользователю название пункта меню, поле Icon необяза- писано, за что можно требовать деньги, создаете вы их для себя или для всех пользователей тельно но нет вменяемого простого механизма, компьютера. Вся реальная работа происходит в последней строке. позволяющего автору сделать свое про- Чтобы создать пункт меню, масштабирующий JPEG- %f заменяется именем выбранного файла, которое пере- изведение свободным для копирования изображение с камеры до размеров, пригодных для дается сценарию, вызывающему утилиту convert. Можно и распространения. Причину, по которой отправки по электронной почте, создайте в одном из было выполнить эту команду непосредственно из меню, этих каталогов файл shrinkImage.desktop, содержащий но мы используем скрипт-обертку, т.к. имя файла пона- автор захочет так поступить, я пока остав- строки: добится нам дважды, а поле Exec не может содержать ляю за скобкой – важна принципиальная [Desktop Entry] более одного %f. возможность. ServiceTypes=image/jpeg #!/bin/bash Если я ошибаюсь в своих опасениях Actions=shrinkImage convert -sample 800x600 -quality 70 “$1” “${1/. дилетанта в авторском праве, то дайте мне и определяющий действие, а также тип файлов, к jpg/_small.jpg}” знать об этом. Я буду безмерно счастлив. которым оно применимо. Тип image/* обозначает любые За дополнительной информацией обращайтесь к Кроме шуток. изображения, а all/allfiles – произвольные файлы. Теперь http://developer.kde.org/documentation/tutorials/dot/ [email protected] необходимо создать действие: servicemenus.html.

Февраль 2008 Linux Format 5 5 http://lolbook.nnm.ru УчебникПервые Первые шаги шаги Советы для тех, кто только начинает знакомиться с Linux Используем Работайте с блогами, источниками новостей и загрузкой контента по лучшей технологии, о которой вы когда-либо слышали, советует Энди Ченнел...

RSS (оранжевый прямоугольничек с символом распространяющегося сигнала) и подпишитесь на ленту. Каждые несколько минут ваша про- грамма будет проверять RSS-ленту с Beeb (сама страница расположена на http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/technology/rss.xml), и если что-то добавилось, оно будет загружено в читалку. То есть незачем само- му идти на этот сайт, чтобы проверить, нет ли чего новенького: мы узна- ем это благодаря магии RSS. Умно. В нашем примере ниже мы работаем с текстом, но RSS достаточ- но искушен, чтобы справиться с другими форматами содержимого, включая звук (podcasting), изображения (photocasting) и даже видео (vodcasting, что ли?!), так что наши инструкции можно легко применить к целому ряду задач. Настройка Liferea Как вы догадываетесь, имеется множество RSS-читалок для Linux и основных рабочих столов. «Стандартная» читалка под Gnome – Liferea, приложение с нескладным именем (аббревиатура от LInux FEed REAder – читалка лент для Linux), но имеющее мощный и интуитивный набор функций и в KDE тоже чувствующее себя как дома. Последняя версия Liferea, 1.4.9, доступна на http://liferea.sourceforge.net. Исходные тексты и двоичные версии доступны для нескольких дистрибутивов, и мы заполучили последний пакет для Ubuntu через меню рабочего стола Приложения > Добавить/Удалить. После установки приложение появляется в разделе интернет меню Приложения, и по умолчанию SS (Rich Site Summary – Большая сводка сайта, или Really поставляется с большим выбором лент с сайтов типа Slashdot, Groklaw Simply Syndication – Действительно простая синдикация, смот- и Debian Planet – не совсем легкое чтиво для алчущего настольного R ря кому верить) – одна из технологий, способных серьезно пользователя. Через минуту мы от него избавимся. повлиять на манеру web-серфинга миллионов пользователей, кабы Интерфейс пользователя разбит на три панели: на узкой панели Наш они знали о ее существовании. По сути, это более эффективный спо- слева располагается дерево источников лент, большая панель вверху эксперт соб использования интернета: заставить интересующую вас информа- отображает содержимое ленты, а большая панель внизу – содержимое цию приходить к вам, а не искать ее и не повторять поиск каждый раз, конкретного сообщения, или, более вероятно, краткую сводку. Для Энди Ченнел когда пора ее обновить. На данном уроке мы займемся настройкой RSS- просмотра ленты выберите ее в дереве для отображения содержимого, Энди делает свои первые шаги в Linux клиента в Gnome и KDE; затем переключимся на более интегрирован- уже шесть лет, ные решения, которые встроят RSS-ленту в ваш браузер или почтовый а технологиями интересуется клиент, частью которых ощущают себя многие. Мы также рассмотрим со времен Dragon 32. пару online-решений, пригодных для управления вашей информацией на любом подключенном к сети компьютере. Но для начала, что такое RSS? Попросту говоря, это XML-формат данных, позволяющий поставщикам информации упаковывать свои продукты – блоги, новости, предложения – таким образом, что читате- ли могут «подписаться» на них в своем web-браузере, почтовом клиен- те или специальных RSS-читалках. ПО данного вида затем «прочешет» сайты, на которые оформлена подписка – вернее, их особые страни- цы – и, найдя изменения, скинет новые сведения в раздел непрочтен- ного, по аналогии с письмами. Пользователь может затем щелкнуть на ссылке, чтобы увидеть или краткое описание истории, или весь текст. В обоих случаях пользователю предоставляется ссылка, позволяющая перейти на сайт-источник. Для примера посетите web-сайт новостей BBC, перейдите в раздел Liferea – классная самостоятельная читалка RSS для Gnome, Технологии (http://news.bbc.co.uk/1/hi/technology/default.stm), найдите иконку которая и в KDE как дома.

Месяц назад Мы переносили все системные настройки из Windows в Linux.

56 Linux Format Февраль 2008 Первые шаги Учебник RSS

выберите из списка одну статью и смотрите полное сообщение, нажав на ссылку в кратком обзоре. Просто. После щелчка на сообщении оно теряет свое полужирное начертание, откуда ясно, что оно уже прочи- тано. Настраивать Liferea мы будем согласно принципам LXF, и сперва создадим новую папку для сбора собственных лент. Для этого щелк- ните правой кнопкой мыши где-нибудь в панели древа лент и выбе- рите New Folder [Новая папка]. Дайте новой папке имя (например, Телевидение), и повторите эту процедуру для всех категорий, которые хотите предусмотреть. При случайном создании папки не там, где надо, закрытия папки вы увидите общее число непрочитанных сообщений в Установите ее можно перенести в желаемое место списка мышью. Liferea уважает лентах папки, а вверху списка красуется иконка Не прочитано [Unread] разумный интервал ваши приоритеты и не станет пытаться переупорядочить эти папки по с полной суммой, сколько всего вы не видели – иногда до ужаса мно- для обновлений, алфавиту: решив, что папке TV лучше идти до папки Linux, смело пере- го! Однако если их станет ну слишком много, можете щелкнуть правой или, между нами тащите ее мышкой и не бойтесь, что при очередном запуске програм- кнопкой мыши на ленте или папке и выбрать Пометить все как прочи- говоря, вы можете парализовать мы все расползется. Разобравшись со списком папок, можно начинать танные [Mark All as Read]. интернет! добавлять ленты. Запустите Firefox и перейдите к источнику желаемой По умолчанию Liferea кэширует 100 записей для каждой ленты, ленты. В адресной строке Firefox, щелкните на значке RSS, а затем на и находящиеся внизу постепенно исчезают из списка в никуда. Вы пункте выпавшего меню с именем Живые закладки [Live Bookmarks], можете изменить это число, выбрав Сервис > Параметры [Tools > и выберите Выбрать приложение... [Choose Application...] Откроется стандартный файловый браузер, где вы сможете указать приложение Liferea. В нашей системе Ubuntu оно находится в /usr/bin/liferea-add- «Liferea сохраняет feed. Не забудьте нажать кнопку Всегда подписываться с... [Always Subscribe With...] перед окончательным нажатием кнопки Подписаться выбранные вами [Subscribe]: тогда ваша следующая подписка автоматически добавит- сообщения элегантно.» ся в Liferea. Приложение старается делать все по уму: подписка BBC автоматически отправится в папку Телевидение (несмотря на то, что Preferences] и просмотрев на вкладке Ленты [Feeds]. Здесь также уста- это раздел сайта Технология), а вот подписка на Guardian Technology – навливается интервал автообновления ваших лент. Заманчиво было бы в папку Технология [Technology]. Если Liferea правильно понимает ваши обновлять их каждые 10 минут; но если так поступят все, то интернету намерения, управление подписками намного упрощается; если же лен- грозит паралич, Вместо этого, выберите время обновления 1 или 2 часа, ты угодят не по адресу, беда невелика – их можно без проблем пере- а если вам и вправду необходимо более (или менее) частое обновление нести куда надо. некой ленты, настройте ее отдельно, щелкнув на ней правой кнопкой Открытие ленты означает просто открытие ее папки с последующим мыши, выбрав окно Свойства [Properties], а затем установив желаемое щелчком на нужной подписке. Удобно, что при каждой ленте стоит чис- время обновления в минутах, часах или днях. ло в скобках: это количество непрочитанных сообщений в ней. После Для потомства Хотя постепенное движение старых новостей вниз по списку обычно является благом, иногда вам хочется сохранить сообщение дольше отмеренного ему срока – допустим, для университетских исследований или для работы. Liferea решает данную проблему весьма элегантным способом, при помощи функции Новостных корзин [News Bins] – сорта виртуальных папок, куда можно перенести сообщение для дальнейше- го рассмотрения. Создание Новостной корзины – это все тот же правый щелчок на названии ленты в дереве и выбор соответствующего пункта в появившемся меню. Затем просто щелкните правой кнопкой мыши на заголовке и выберите Копировать в Новостную корзину [Copy to News Bin] и выберите вновь созданную корзину из списка. Это сообще- ние теперь останется в этой папке, даже если вы – или время – удалите оригинал из ленты. Еще мощнее функция Папки поиска [Search Folders]. Новая папка поиска может быть добавлена так же, как и обычная папка или ново- стная корзина, и ее можно настроить на фильтрацию содержимого Приложение старается добавить ленты в папку, ваших лент по ключевым словам. Например, если вас интересуют подходящую по содержимому – обычно получается неплохо. исследования стволовых клеток, подпишитесь на тонны медицинских

Февраль 2008 Linux Format 5 7 http://lolbook.nnm.ru Учебник Первые шаги

или этических новостей, настройте умную [Smart] папку на захват толь- ко тех сообщений, что содержат фразу «стволовые клетки», а затем игнорируйте все ленты, кроме тех, где есть публикации, удовлетворяю- щие вашему критерию. Эти публикации появятся в вашей умной папке с соответствующим именем; сообщения, уже кэшированные как часть ленты, также появятся в этой папке, но исчезнут, как только кэш будет очищен – если только вы не сохраните его в корзине новостей. Система способна принимать несколько аргументов, и вы можете, например, отфильтровать сообщения, содержащие фразу «стволовые клетки», но не фразу «Джордж Буш». Наконец, приложение имеет стандартное средство поиска, поз- воляющее искать по ключевым словам во всех лентах. К сожалению, ограничить поиск отдельными лентами не удастся, но нельзя же тре- бовать всего. Liferea – хорошо скомпонованный пакет, отлично управляющий Страница подписки Firefox предоставляет вам выбор оружия лентами, а также интегрируемый с несколькими сетевыми службами, (то есть читалки). например, Bloglines или Google Reader (см. врезку внизу), для предо- ставления и локального, и сетевого (не зависящего от компьютера) читалку. Второй и третий варианты – Bloglines и Google Reader соот- доступа к вашим лентам. Для добавления в приложение удаленного ветственно – для загрузки подписки на вашу машину потребуют ввести набора подписок, щелкните правой кнопкой мыши в списке лент и в имя пользователя и пароль учетной записи. контекстном меню выберите Подписки > Новый источник [Subscriptions Однако Liferea не может синхронизировать статус прочтения с > New Source]. Выберите тип источника из трех доступных вариантов. вашей учетной записью Bloglines или Google Reader: если вы прочли Первый – OPML, Planet или Blogroll, и при его выборе для подписки что-то вне сети, то это не отобразится в сетевой версии, и наоборот. надо просто добавить URL, чтобы содержимое поставлялось в вашу RSS в вашем браузере По мнению многих пользователей, для RSS самое место в web-бра- узере. Видимо, с этим согласны разработчики Firefox, так как данная технология тесно интегрирована в систему закладок браузера. И ее невероятно легко использовать. Для добавления RSS-закладки, перейдите на сайт с активной лен- той. Firefox отобразит в строке адреса иконку RSS, если на сайте на самом деле есть лента. Щелкните на ней, и вы попадете на страни- цу подписки. Когда вы делаете это впервые, Firefox предлагает вам сохранить ленту, используя Живые закладки [Live Bookmarks], что мы в данный момент и хотим сделать, но имеется еще несколько вариан- тов, включая настройку внешнего приложения для управления лента- ми – см. выше. Если вам вполне подходят Живые закладки, щелкните на опции «Всегда использовать Живые закладки для подписки на лен- ты», а затем нажмите кнопку Подписаться. Как и с любой закладкой, вам предоставляется выбор места для сохранения закладки; после сохранения вы найдете ее в меню Закладки. Живая закладка отобра- зит вездесущую иконку RSS, и при ее выборе появится новое меню с последними сообщениями ленты, на которую вы подписались. Щелчок на любом из этих пунктов перенесет вас прямо к соответствующему содержимому. Умные папки [Smart Folders] позаботятся, чтобы вы видели только нужные вам сообщения. Вы можете, естественно, делать с этими закладками все то же, что и с любым другим типом закладок. Например, перейдя в Закладки > Клиент не нужен... Управление закладками... [Bookmarks > Organise Bookmarks...], вы смо- жете создать Новую папку [New Folder] с именем Ленты, а затем доба- вить ваши Живые закладки в эту папку. Если вы затем перенесете эту Некоторые люди считают, что незачем (Ctrl+V) URL в соответствующее место. возиться с RSS-клиентом – проще Можете также щелкнуть на ссылке Изучить папку на панель инструментов Закладки, а потом, вернувшись в Firefox, воспользоваться одним из многих [Discover] и просмотреть ленты, которые выберете Вид > Панели инструментов > Панель закладок, вы всегда инструментов, доступных в интернете. Большой брат, простите, Google, счел вам будете не далее чем в двух щелчках от свежих новостей. Вероятно, лучший сетевой RSS-инструмент – интересными, на основании ваших привычек Если ваши запросы скромны, то, вероятно, Live Bookmarks вполне Google Reader: его преимущество – очень поиска и лент, на которые вы уже подписаны. удовлетворит вашу страсть к лентам; но это не единственный спо- тесная связь со службами Google, типа Как и Sage, Google Reader построен на соб интегрировать ленты в браузер. Можно также добавить в Firefox Blogger, Feedburner и iGoogle Personal каскадных стилевых таблицах (CSS), и вы модуль расширения RSS, а затем смотреть вашу ленту в боковой можете переоформить все приложения, Homepage. Если вы пользователь какой-либо панели, что превосходно для владельцев больших мониторов или службы Google, ваше регистрационное имя используя плагин Stylish в Firefox, доступный любителей узких web-сайтов. Лучший RSS-модуль для Firefox – это даст вам доступ к Google Reader на http://userstyles.org/stylish/. Это расширение, Sage, доступный на http://sage.mozdev.org/. Он устанавливается, как и на www.google.co.uk/reader. Для добавления плюс имеющиеся стили, придадут Google другие модули, через загружаемый XPI-файл. Если – как случилось с ленты к службе, переместитесь к узлу ленты, Reader вид и поведение обычного настольного нажмите на иконку RSS в строке адреса приложения Linux, Windows или Mac. нами – файл не устанавливается автоматически, выполните в Firefox Файл > Открыть файл, перейдите к XPI-файлу, выберите его и нажми- и скопируйте (Ctrl+C) URL из строки адреса. Читалка также может быть интегрирована те OK. Для полной установки модуля вам придется перезапустить В Google Reader щелкните на Добавить в Google Gears, и вы сможете запросто подписку [Add Subscription], а затем вставьте загружать содержимое для чтения вне сети. браузер. Sage превосходен, если у вас накопилось множество живых закладок, поскольку он интегрирует эту систему автоматически, и

58 Linux Format Февраль 2008 Первые шаги Учебник

это также означает, что вам не нужно изменять способ добавления лент в браузер. Перезапустив браузер, выберите Вид > Боковая панель > Sage, что- бы открыть боковую панель, или щелкните на иконке Sage, которая может появиться на панели инструментов вашего Firefox. В ней будет пара лент, а щелчок на любой из них приведет к двум действиям. Во- первых, в нижней части боковой панели отобразится длинный список сообщений. Это лента заголовков. Во-вторых, в главной панели бра- узера в новой вкладке будет отображена отформатированная лента. Этот последний аспект бывает весьма полезен, но со временем вы можете счесть его надоедливым. К счастью, его можно отключить. В боковой панели Sage, выберите на панели инструментов выпадающие Опции [Options], а затем Настройки [Settings]. Откроется новый диа- лог, где можно снять галочку с пункта Отображать ленты в области содержимого [Render Feeds in Content Area]. Нажмите OK – и теперь, щелкнув на ленте в верхней части боковой панели, вы увидите толь- ко список заголовков, а область содержимого останется нетронутой. Чтобы увидеть краткое содержание сообщения в боковой панели, задержите мышь над заголовком сообщения и подождите: краткая сводка появится в виде подсказки. Щелкните на заголовке, и попаде- те в само сообщение. Добавление новой ленты аналогично добавлению Живой заклад- файлы весьма просты, в них легко изменить цвета, шрифты, размеры Сейчас Sage – ки. Щелкните на иконке в панели адреса Firefox, выберите на странице и т.д. и создать нечто полностью уникального – но это для другого лучшая RSS-читалка учебника. для Firefox. Если вы проводите все время в интернете – особенно если вы «Ленты в Sage постоянно посещаете одни и те же сайты – то приличная RSS-читалка может здорово облегчить вам жизнь. Мощные папки поиска Liferea управляются предлагают идеальную комбинацию случайных открытий в ленте по принципам, и возможности фильтрации масс информации в легко управляе- мый поток требуемых данных. Попробуйте его – или любую другую Оформление присущим многим упомянутую систему – и вы уже не вернетесь к старому web-серфин- лент Sage очень гу. LXF легко изменить файл-менеджерам.» при помощи CSS.

лент Живые ленты [Live Feeds], но затем выберите в качестве назначе- ния Ленты Sage [Sage Feeds]. Ваша лента появится в боковой панели Sage, готовая к просмотру. По умолчанию, Sage отображает непро- чтенные элементы лент жирным, а прочтенные – обычным шрифтом. Поскольку нам вряд ли интересны все сообщения ленты, то очевидно, что в любой ленте спустя какое-то время накопятся тысячи «непрочтен- ных» сообщений, и уместное использование кнопки Пометить все как прочитанное [Mark All as Read], помещенной сразу над списком, может быть очень кстати. Уже подписанные ленты управляются в Sage по тем же принципам, что и в большинстве файл-менеджеров. Например, правый щелчок на ленте выведет контекстное меню, где можно увидеть свойства ленты, удалить или перезагрузить ленту. Имеется также несколько инструмен- тов управления пространством, таких как создание новых каталогов, разделителей и упорядочение лент. Наконец, если вы предпочитаете читать в области содержимо- го, но не одобряете голубую тему от разработчиков Sage, загрузите другие стили с сайта проекта или, при известных амбициях, создайте свою собственную, поскольку область содержимого оформляется при помощи простого CSS-кода. Для добавления новой темы перейдите на http://sage.mozdev.org/styles/ и найдите понравившийся стиль: вам будет предоставлен пред-просмотр. Потом прокрутите страницу вниз к Кому нужны RSS? Фрейму источника [Source Frame], выполните Этот фрейм > Сохранить Почти все поставщики новостей в мире типа Blogger, LiveJournal или WordPress, фрейм как... [This Frame > Save Frame As...] и сохраните файл, где вам выдают какое-либо RSS-содержимое. Раньше то обычно ваши размышления будут удобно. Теперь вернитесь в Опции Sage, нажмите Использовать свой ленты новостей на web-страницах вызывали доступны читающим массам по умолчанию. стиль [Use Custom Stylesheet], а затем укажите на сохраненный файл. удивление, а сейчас удивляет, если вы Даже Flickr, Facebook и Linux Format UK При следующем просмотре ленты в области содержимого (ранее не видите хотя бы одну. И если вы предоставляют ленты. Просто найдите отключенном) лента будет отображаться в загруженном вами стиле. пользуетесь одной из основных служб блогов, оранжевую иконку и начинайте читать... И вам больше не нужно будет смотреть на зелень Slashdot. Стилевые

Через месяц Вытворяйте всякие штуки с собственной RSS-лентой.

Февраль 2008 Linux Format 5 9 http://lolbook.nnm.ru УчебникМиграция Первые шаги из Windows в Linux Синхронизация систем Unison: ЧАСТЬ 2 Джо Касселз знает несколько ловких приемов синхронизации данных между Windows и Linux, которые облегчат переход от одной системы к другой.

В графической версии программы можно просмотреть локальный каталог, который вы хотите синхронизировать.

общим файлам, нам потребуется некая система, способная работать с копиями файлов и обновлять их, когда такое соединение появля- сли у вас больше одного компьютера, рано или поздно воз- ется. Пользователям Windows, возможно, знаком Портфель, с помо- никает проблема синхронизации данных. При работе с одни- щью которого можно выгрузить нужные каталоги на ноутбук или Е ми и теми же файлами на разных компьютерах важно, чтобы сменный диск и работать с ними в другом месте, а позже – обно- изменения сохранялись, а у вас всегда была бы одна и та же версия вить. Но число файлов, с которыми он работает, ограничено. Когда файла, независимо от того, где вы находитесь. Если на одном из потребуется обновить большое количество файлов, могут возник- Наш компьютеров установлена Windows, а на другом – Linux, эта задача нуть проблемы, и вам не удастся воспользоваться этими файлами эксперт немного усложняется. Однако если вы знаете, что делать, это не ста- в других ОС. нет головной болью. Джо Касселз В процессе миграции в Linux многим нужно иметь возможность потратил массу Ручная синхронизация времени на поиски работать в Windows; кроме того, иногда просто полезно иметь Если у вас хорошее широкополосное сетевое соединение (например, различных способов несколько разных систем. Самый простой способ сделать это – домашняя сеть), а файлов, подлежащих обновлению, немного, самым облегчить людям переезд из мрака настроить конфигурацию с двойной загрузкой (в большинстве дис- простым способом может быть простое копирование новых файлов к свету. трибутивов она просто выбирается при установке). Если в дистрибу- поверх старых. Пока вы не забываете делать это по окончании работы и тиве есть поддержка чтения с разделов NTFS или FAT32, то к файлам есть доступ к диску другого компьютера на чтение и запись, все может Windows должен быть доступ из Linux. Обратное неверно, но файлы работать отлично. Просто откройте окошко с файлами компьютера с можно сохранить на Windows-совместимый раздел прямо из Linux, и Windows из Linux и переместите туда новые файлы, выбрав «заме- тогда они будут доступны из обеих систем. Поддержка записи в NTFS нить», когда система об этом спросит. Недостаток этого подхода – нуж- в стабильной версии появилась лишь недавно. Для нее вам потре- но помнить, где находятся самые последние версии файлов, а если буется установить NTFS-3G, загрузить который можно со страницы файлы изменились на обоих компьютерах, по ошибке легко испортить www.ntfs-3g.org. правильную версию и потерять данные. Поэтому я бы советовал вам Конфигурация с двойной загрузкой на самом деле не включает использовать этот подход, только когда файлов немного и имеется синхронизации данных, ведь вы просто работаете с одними и теми отдельная локальная копия данных. же файлами, какую бы ОС ни использовали. Она не поможет и в Очевидно, нужна структурированная система, которая проверит том случае, когда нужно запустить обе ОС одновременно на разных состояние каждого файла в синхронизируемых каталогах и пока- компьютерах: к примеру, есть обычный компьютер с Windows и жет, какие файлы изменились. Есть несколько кроссплатформенных ноутбук с Linux, или наоборот. Поскольку между компьютерами нет решений такого рода. Пожалуй, самое простое из них – Unison. Это постоянного сетевого соединения, позволяющего получить доступ к графическое приложение, которое работает и в Linux, и в Windows.

Месяц назад Перенос контактов, календаря и архивов почты из Outlook в Evolution.

60 Linux Format Февраль 2008 Синхронизация через Unison Учебник запустим сервер

Когда вы правильно его настроите, работать с ним будет очень лег- нужны: понятно, что если вы привыкли к Windows, то предпочтете гра- ко. Unison позволяет синхронизировать файлы в обоих направлениях фическую версию, но текстовая версия тоже полезна, например, при Скорая и может и заменять файлы, и объединять их, если изменения есть в синхронизации по сети. помощь обеих копиях. Несколько версий Локальные каталоги Unison для Windows Установка Unison Unison можно использовать для синхронизации локальных каталогов. и Linux можно Загрузить Unison можно со страницы www.cis.upenn.edu/~bcpierce/ Это неплохой вариант, если данные хранятся на внешнем USB-диске, загрузить unison/download.html. Вы увидите, что доступны как версия под подключаемом локально. Чтобы сделать это, запустите графическую со страницы www.cis.upenn.edu/ Windows, так и под Linux. Здесь же можно найти исполняемый файл версию Unison. Если раньше вы им не пользовались, идите прямо в ~bcpierce/unison/. под Windows. Если в вашем дистрибутиве используются пакеты, то настройки профиля по умолчанию. Укажите первый каталог из тех, Нужно Unison можно установить из репозитория. Например, в Ubuntu выбери- которые нужно синхронизировать. Для этого введите полный путь использовать одну те Приложения > Добавить/Удалить [Applications > Add/Remove] и затем или просто найдите каталог с помощью кнопки Browse. Нажмите OK. и ту же версию Показать все открытые приложения с открытым кодом [Show all open Теперь выберите опцию Local и укажите второй каталог, затем снова для обеих ОС. В репозиториях source applications]. В строке поиска введите Unison, затем установите нажмите OK. Если программа запущена в первый раз, то появится обычно содержится его. Если нужен RPM-пакет, загрузить его можно со страницы http:// предупреждение об отсутствии архивных файлов. При первом запус- версия 2.13.16. rpmforge.net/user/packages/unison/, а пакеты для Debian находятся на ке это нормально, так что просто нажмите OK. Unison просканирует По возможности, странице http://packages.debian.org/unison. оба каталога, отобразит файлы, которые имеют отличия, и пореко- воспользуйтесь ею. Важно использовать одну и ту же версию Unison в обеих системах. мендует действия, которые нужно произвести для их синхронизации. Если в Linux Unison устанавливался из репозитория, то установлен- Действия могут включать копирование файла (файлов) из одного ная версия может быть более старой по сравнению с текущей. Чтобы каталога в другой, удаление или пропуск файлов. Любое из этих проверить, какая версия используется, откройте менеджер пакетов и действий можно изменить, выбрав соответствующую пару файлов выберите Поиск [Search]. Введите и указав направление перезаписи Unison в строке поиска и нажмите (слева направо или справа налево, на кнопку Поиск [Search]. Вы уви- «Если файлы слева – первый каталог). Можно дите все доступные версии, вклю- изменились, пропустить пару файлов или объ- чая установленную. Запомните ее единить (слить) различия в них. номер. Эту же версию программы объединяйте файлы Определив все действия, нажмите будет нужно установить в Windows. Go для их выполнения. Теперь мож- Если вы загружали пакет, то имя в Windows и Linux.» но выйти из программы. файла должно включать номер версии Unison. Зайдите на страницу www.cis.upenn.edu/~bcpierce/ unison/download.html, и если установленная версия меньше 2.24, то найдите исполняемый файл нужной версии, щелкнув по ссылке «Older Windows binaries». Есть две различных версии Unison – первая работает только в командной строке, у второй есть графический интерфейс. Обе версии

Чтобы определить, какая версия Unison используется в Linux, Для установки Unison в Ubuntu, откройте Add/Remove воспользуйтесь менеджером пакетов. и найдите его среди остальных приложений.

Февраль 2008 Linux Format 61 http://lolbook.nnm.ru Учебник Синхронизация через Unison

Чтобы поднабраться опыта, полезно попробовать кое-что синх- ронизировать. Выберите каталог, в котором нет важных файлов, и создайте новый, с которым будете его синхронизировать. Выполните описанные выше действия, указав два этих каталога, и в результате в новом каталоге должны появиться копии всех файлов из исходного каталога. Версия для командной строки имеет ту же логику. Откройте окно терминала и введите команду unison folder1 folder2 Если папки folder1 и folder2 находятся в домашнем каталоге, пол- ный путь указывать не нужно. При первом запуске программы появит- Скорая ся текстовая версия предупреждения о файлах архива; нажмите Enter, помощь чтобы продолжить работу. Сканируя каталоги, Unison отобразит каж- Если соединиться дый файл или каталог, где есть изменения, вместе с действием по с компьютером умолчанию. Чтобы применить действие по умолчанию, нажмите Enter. Windows Если действие нужно изменить, нажмите > для замены файла слева по сетевому имени направо или < для замены справа налево. Для пропуска файла нажми- не получается, попробуйте те /. Каждый раз будет запрошено подтверждение действия. Нажмите заменить имя Y для подтверждения или N, чтобы вернуться назад. на локальный IP- адрес. Чтобы Профили узнать IP-адрес, Если вы запускали графическую версию Unison до текстовой, она введите в командной может попытаться использовать профиль по умолчанию, состав- строке Windows ленный при последнем запуске программы. В этом случае может команду ipconfig появиться сообщение об ошибке, говорящее о том, что задано и нажмите Enter. слишком много корневых каталогов. Ошибка возникает потому, что графическая версия программы создает файл профиля, где ука- зано, какие каталоги синхронизировать. Типичный файл настроек выглядит так: # Unison preferences file Для упрощения запуска сервера Unison в Windows, root = /home/joe/folder1 создайте ярлык для его запуска и назначьте рабочий каталог. root = /home/joe/folder2 Он хранится под именем default.prf в папке .unison внутри домаш- него каталога. Чтобы увидеть этот файл, откройте домашний каталог и unison.exe, чтобы было проще запускать его с командной строки. выберите Вид > Отображать скрытые файлы [View > Show Hidden Files] Выберите Пуск > Выполнить [Start > Run], введите cmd в открывшемся для каталога .unison. Остальные настройки тоже могут быть в этом окне в Windows XP или в окне поиска в меню запуска Vista, и нажмите каталоге – в файле profilename.prf. Для запуска Unison с определенным Enter. Смените каталог на рабочий каталог Unison. профилем воспользуйтесь командой cd \unison unison profilename Теперь можно пользоваться теми же командами, что и в Linux, Если вы не хотите, чтобы Unison запускался с терминала с профи- например: лем по умолчанию, откройте каталог .unison и дайте файлу default.prf unison c:\folder1 c:\folder2 какое-нибудь другое имя. Каталоги потом можно указать из командной После этого программа работает точно так же, как и в Linux. строки, при этом в графической версии программы все еще можно Чтобы воспользоваться графической версией в Windows, потре- Просканировав будет выбирать профили. буется установить GTK+ 2. Загрузить ее можно с сайта проекта локальный GIMP для Windows на странице http://tinyurl.com/22dkyv. Распакуйте и удаленный Версия для Windows файл и установите GTK. Теперь можно скачать и распаковать гра- каталоги, Unison Версия Unison для командной строки работает в Windows практичес- фическую версию Unison для Windows; она называется наподобие выведет список ки так же, как и в Linux. Исполняемый файл нужно извлечь в рабочий unison-2.13.16-win-gtk2.exe. Это автономный исполняемый файл, файлов, подлежащих обновлению, каталог, хотя бы и c:\unison. Имя EXE-файла может включать номер и его можно запускать из каталога, в который он был распакован. и действия для них версии Unison – unison-2.13.16-wintext.exe. Переименуйте файл как Синхронизация локальных файлов в Windows ничем не отличается по умолчанию. от таковой в Linux. Использование локальных каталогов удобно для знакомства с unison и в случае хранения данных на съемном диске, но подлинно родная стихия программы – синхронизация данных по сети. Ее мож- но использовать поверх SSH-соединения, но для разумно защищен- ной локальной сети это, пожалуй, перебор. Развернуть SSH-сервер в Windows тоже непросто, поэтому мне кажется, что лучше всего нам подойдет соединение через сокеты. Это соединение достаточно просто настроить, хотя оно и небезопасно – впрочем, если ваша сеть доста- точно защищена и упрятана за брандмауэр NAT, то беспокоиться не о чем. Просто не пользуйтесь им через интернет. Для синхронизации с помощью сокетов на одном из компьютеров нужно запустить сервер Unison, на другом – клиент. Если на одном из компьютеров установлена текстовая версия программы, ее можно использовать как сервер, а графическую версию на другом компьюте- ре – как клиент. Сервер можно запускать и в Windows, и в Linux.

62 Linux Format Февраль 2008 Синхронизация через Unison Учебник

Указать каталог для синхронизации на компьютере Windows нельзя. В нашем примере Unison предполагает, что этот каталог, в котором Скорая запущен сервер, c:\unison. Однако можно запустить сервер и в дру- помощь

гом каталоге. Также можно создать ярлык для сервера, и не придется Помните, что после запускать его с командной строки. запуска сервера содержимое вашей Создаем ярлык файловой системы становится Кликните правой кнопкой мыши в любом месте рабочего стола и доступным любому, выберите Новый > Ярлык [New > Shortcut]. В появившемся окне вве- кто подключен дите: к вашей сети. c:\unison\unison.exe -socket 2222. Убедитесь, Нажмите Далее [Next] и дайте ярлыку имя. Затем кликните правой что остановили сервер после кнопкой на созданном ярлыке и выберите Свойства [Properties]. На окончания вкладке Ярлык [Shortcut] вы увидите то, что указали раньше. В поле синхронизации, Запускать в [Start in] введите путь к каталогу, с которым хотите синх- и никогда ронизировать данные, и нажмите OK. Теперь можно запустить сервер, не пользуйтесь им без щелкнув по этому ярлыку. После этого запустите Unison в Linux и NAT-брандмауэра. «Сервер можно синхронизируйте каталоги, как было описано ранее. Сервер в Linux запускать Если вы хотите запустить сервер Unison в Linux, откройте терминал и на компьютере введите команду unison -socket 2222 Скорая которая должна возвратить тот же ответ “server started”. Теперь запус- и с Linux, помощь тите графическую программу в Windows. Укажите каталог, который и с Windows.» хотите синхронизировать, имя или IP-адрес компьютера с Linux и Не используйте номер используемого порта. В поле Каталог [Directory] задайте подка- каталог талог вашего домашнего каталога, который вы собираетесь использо- синхронизации вместо резервной вать. Если не указывать подкаталог, синхронизируется все содержимое Сервер в Windows копии. Если вы Для начала нужно запустить Unison с командной строки. Предполагая, домашнего каталога. Нажмите OK и продолжите точно так же, как при по ошибке удалите что файл уже распакован в каталог c:\unison, откроем окно терминала синхронизации локальных каталогов. файл и затем и введем команды: После того, как профиль по умолчанию установлен и вы знаете, синхронизируете cd \unison как запустить сервер, вся синхронизация становится делом несколь- каталоги, могут быть удалены обе unison -socket 2222 ких щелчков, и вы вольны переключаться между компьютерами, как копии. Отдельная В окне появится сообщение “server started”. Если вы закроете это вам угодно. LXF резервная копия окно сейчас, то остановите сервер. В данном примере вместо 2222 гарантирует, можно ввести любое большее число: нужно просто указать, на каком что вы не слишком много потеряете, порте будет работать программа. Пусть сервер работает, а вы перей- совершив дите на компьютер с Linux и запустите там графический клиент. При эту ошибку. необходимости создайте новый профиль. Укажите локальный ката- лог и нажмите OK. Затем выберите Соединение через сокет [Socket Connection] и укажите имя компьютера Windows и порт, на котором работает сервер – в данном случае 2222. Нажмите OK, и програм- ма запустится так же, как если бы вы синхронизировали локальные каталоги.

Удаленный доступ

Чтобы синхронизировать данные по сети Установите программу, зарегистрируйте с помощью Unison, у вас должен быть ее и запустите UltraVNC. Потребуется доступ к обоим компьютерам для запуска установить пароль. сервера и клиента. Это не всегда Некоторые дистрибутивы Linux уже практично, но можно обойти эту включают в поставку VNC Viewer. необходимость с помощью VNC. Самый Запустить его можно, набрав vncviewer в простой вариант – запустить сервер VNC окне терминала. Укажите имя компьютера на компьютере Windows и соединиться с Windows или его IP-адрес и заданный ним из Linux. На компьютере Windows ранее пароль. Теперь можно управлять откройте страницу www.uvnc.com/ компьютером Windows из Linux и download/ и загрузите UltraVNC 1.0.4 RC4 удаленно запускать на нем сервер Unison. beta для Vista, в противном случае можете воспользоваться версией 1.0.2. Для лучшей производительности загрузите и С помощью VNC можно удаленно запускать сервер Unison, и вам не нужно дополнение для видеодрайвера. быть рядом с обоими компьютерами.

Февраль 2008 Linux Format 6 3 http://lolbook.nnm.ru Фотография ПО и советы линуксоидам – владельцам цифровых камер Фотография: ЧАСТЬ 1 Существует более одного способа перенести ваши фотографии на компьютер. Дейл Стрикланд-Кларк расскажет, какие именно.

сли вы регулярно читаете периодику или просматриваете заголовки учебников о цифровой фотографии в вашем мест- Е ном книжном магазинчике, вам вполне простительно думать, что главное в фотографии связано с именами Canon, Nikon и Adobe Photoshop. Не говоря уж о том, что все инструкции по обработке фото- графий предназначены для Windows или Mac OS X. Ко всему хороше- Наш му, создается впечатление, что изготовители фотоаппаратов вообще эксперт не вспоминают о Linux, когда прилагают к своей продукции драйверы Дейл и менеджеры библиотек. Стрикланд-Кларк Наблюдая такие факты, оробеет не один любитель цифровой фото- зарабатывает на жизнь как IT- графии. Вы бы и рады использовать Linux для обработки ваших фото, консультант но прикованы к двойной загрузке или ко второму ПК: куда же денешься и фотограф. от программного обеспечения, способного работать с вашей камерой. Последние пять лет он использует А может, вы используете Linux, но страдаете от отсутствия приложений для обработки для редактирования ваших картинок. фотографий только Linux За следующие несколько месяцев мы откроем некоторые из воз- можностей использования Linux как цифровой фотолаборатории. Мы рассмотрим процесс передачи ваших фотографий на компьютер и займемся обработкой, хранением, редактированием, поиском, управ- лением и печатью. Варианты хранения Перед изучением, как переносить в компьютер фотографии с вашего фотоаппарата или других источников, будет не лишним выяснить, как их хранить. На следующих уроках мы изучим приложения для управле- ния библиотеками и для слайд-шоу, но пока рассмотрим простой под- Рис. 2. Отредактированные файлы в отдельном дереве. ход, с использованием структуры папок. Как и у любой задачи в Linux, решений тут много – какое вам боль- потом виден на компьютере как внешний диск, точно так же, как при ше подходит, определяется назначением ваших фотографий и жела- подключении USB-брелка или съемного периферийного устройства. тельным способом находить их впоследствии. Поразмыслите также о Если с вашей камерой это не проходит, извлеките карту памяти и под- резервном копировании. соедините ее к ПК с помощью кард-ридера USB, которые сейчас доста- Важный принцип, которым мы будем руководствоваться – никогда точно дешевы. не стирайте исходные изображения, перенесенные с фотоаппарата. Что Подсоединив камеру или кард-ридер, можно просмотреть содер- бы мы ни делали с изображением, обязательно нужно сохранять ори- жимое карты памяти. Вы найдете свои фотографии в папке под назва- Рис. 1. Файлы упорядочены гинал. Один из способов, позволяющих легко сделать резервные копии нием dcim. по темам. и сохранять связанные фотографии вместе, Скопируйте (но не перемещайте) изображения с карты памяти в это собрать их в поддиректориях по темам, папку на компьютере. Правильно будет сначала сделать резервные вместе с измененными фотографиями, как копии ваших новых фото, а потом уж стирать их с карты памяти. показано на рис. 1, слева. Профессиональные фотографы, работающие на мероприятиях Если вы хотите делать резервные копии вроде свадеб, где дается только один шанс нажать на спуск, часто только оригиналов, удобнее хранить отредак- держат ассистента, который ходит за ними по пятам. Ассистент обязан тированные изображения в отдельном дереве забирать заполнившуюся карту памяти, копировать ее содержимое на папок, как показано на рис. 2, вверху. ноутбук и немедля записывать на CD, просто для подстраховки. Вариации этих двух подходов использу- ют в качестве названий верхней папки имена Цифровые негативы заказчиков или даты. Выберите схему, с кото- Если ваш фотоаппарат сохраняет фотографии прямо в JPEG-формате, рой вам потом будет легко находить файлы. ваши изображения уже готовы для просмотра и сортировки. Однако В наше время большинство цифровых JPEG – это формат изображений, в котором ради экономии пространс- камер подключаются либо прямо к USB-пор- тва на карте удалена детализация. Для большей гибкости и более высо- ту ПК, либо через док-адаптер. Фотоаппарат

Linux-фото Есть идеи для учебника по фотографии? Пишите нам!

64 Linux Format Февраль 2008 Фото с Linux Учебник Linux-студия

Рис. 3. Тукс загружен в ufraw без всяких манипуляций. Рис. 4. Передний план уже лучше, задний план пока контрастен.

кого качества, многие компактные камеры и практически все SLR-каме- нию и доступный по адресу http://cybercom.net/~dcoffin/dcraw, если ры имеют возможность сохранения изображений в RAW-формате. его нет в вашем дистрибутиве или вы хотите его обновить. Эта Файлы в формате RAW хранят информацию прямо из сенсоров замечательная программа конвертирует файлы в формате RAW аж фотоаппарата и не подвергаются никакой обработке внутри него. с 279 различных фотоаппаратов (по последним подсчетам) в TIFF- или Кроме того, цвета представлены 12 или 14 битами вместо 8 битов в PPM-формат, и на ней основаны почти все доступные инструменты по JPEG. Это дает 16000 оттенков красного, зеленого и голубого вмес- работе с RAW. то 256. А значит, простор для редактирования изображения намного Одного dcraw достаточно для экспериментов с конвертацией больше, чем в JPEG. изображений в RAW-формате в нечто читаемое другими программа- Изготовители фотоаппаратов применяют для RAW-файлов разные ми. Вы без потери качества конвертируете в формат, поддерживаю- расширения. Таблица внизу справа показывает наиболее распростра- щий 48-битные цвета (например, PPM или TIFF), и сможете открыть ненные. такой файл с помощью других инструментов для дальнейших мани- Вы, наверно, заметили, что Adobe слегка не вписывается в эту пуляций. таблицу – эта компания не является изготовителем фотоаппаратов. Bash-скрипт dcrawtest позволяет выполнять тестовые трансфор- Но они определили стандарт RAW-формата, пытаясь уменьшить рас- мации над «сырыми» изображениями и регистрировать использо- тущее многообразие несовместимых решений. Многие фотоаппара- ванные опции. Он накладывает параметры на изображение и пока- ты могут теперь сохранять RAW-файлы в собственном формате или зывает результаты. На жесткий диск изменения не записываются; использовать формат Adobe. Расширение .dng от Adobe расшифро- скрипт завершается немедленно, оставляя изображение на экране. вывается как Digital NeGative. RAW-файлы нельзя отображать как они Вы можете запускать его несколько раз и сравнивать результаты, а есть: они нуждаются в преобразовании с учетом характеристик опре- также использовать Alt+перетаскивание для перемещения окон по деленного сенсора фотоаппарата, чтобы конвертировать понимание своему усмотрению. Чтобы закрыть изображение, от вас требуется «сырых» цветов сенсором в корректные цвета и оттенки. Эту задачу только навести на него фокус и нажать q. выполняют RAW-конверторы. Новый вид программных продуктов – интерактивные RAW-кон- верторы: они снабжают фотографов некоторыми средствами, тра- диционными для темной комнаты. RAW-конвертор дает огромный Расширения RAW-файлов простор для игры с изображением, включая такие вещи, как коррек- тировку баланса белого, регулировку выдержки или уровней тонов. .arw ...... Sony .kdc ...... Kodak .raf ...... Fuji .cr2 ...... Canon .mrw ...... Minolta .raw ...... Panasonic RAW-конвертор способен «вытянуть» даже самое ужасное фото. .crw ...... Canon .nef ...... Nikon .srf ...... Sony .dcr ...... Kodak .orf ...... Olympus .x3f ...... Sigma RAW-конверторы .dng ...... Adobe .pef ...... Pentax Отцом всех RAW-конверторов открытого кода является dcraw .erf ...... Epson .ptx ...... Pentax Дэйва Коффина [Dave Coffin], в Ubuntu установленный по умолча-

Февраль 2008 Linux Format 6 5 http://lolbook.nnm.ru Учебник Фото с Linux

#! /bin/bash пользы немного: она только перечисляет параметры командной стро- comment=$* ки. Лучший способ добраться до сути с ufraw – поиграть с ее опциями. img=$1 Она не перезаписывает RAW, и вы не сможете нечаянно нанести ущерб shift своим фотографиям. dcraw -c $* $img | Пользовательский интерфейс ufraw – это отдельное окно с клави- convert - -resize 15% \ шами управления слева и «живым» предпросмотром справа. Клавиши -pointsize 20 \ управления делятся на несколько секций, через ряд вкладок под пол- -gravity south-west \ зунком компенсации выдержки. -fill black \ Для более точного редактирования бедняги Тукса, чтобы сделать -draw “text 10,10 \”$comment\”” \ его попривлекательнее, как на рис. 4 на предыдущей странице, сначала -fill white \ выставим ползунок компенсации выдержки в 0.00. Потом нажмем на -draw “text 12,12 \”$comment\”” \ установку автоматической черной точки (выступ слева на кривой) за x: & управлением гистограммы сглаженности (выступ справа на кривой). Запустите dcraw без параметров для вывода списка имеющихся Прямая линия яркости света превратится в кривую, похожую на график опций, или просмотрите man-страницу. Для использования скрипта прибылей Google. Наконец, будем плавно тянуть ползунок выдержки вам также нужно установить imagemagick. Вот просмотр трансформи- вверх, пока не получим на Туксе требуемую освещенность – в нашем рованного изображения без стандартного редактирования: случае около 1.6. График яркости света служит входом к матрице dcrawtest imgp1234.pef -4 отображения вывода. Ось X (горизонтальная ось внизу, если вы не А чтобы протестировать эффект разных уровней яркости, наберите были сильны в математике) представляет собой яркость пикселей на следующее: входе. Левый угол – это белое, правый – черное. Ось Y (вертикальная for b in {1..6}; do dcrawtest imgp1234.pef -b $b; done ось) представляет собой выходные элементы. Внизу – черное, вверху – Отобразятся шесть версий одного и того же изображения с возрас- белое. Обычный диагональный график показывает входные элементы танием уровня яркости, как показано на рис. 7 внизу на противополож- яркости к их эквивалентной яркости на выходе. ной странице. Выберите самую лучшую, запустите dcraw снова с теми Изменяя кривую, можно точно контролировать представление раз- опциями, что были выбраны при ее создании, и сохраните результат. личных уровней яркости исходной фотографии на финальном изобра- На экране показан портрет Тукса, который плохо экспонирован из- жении. Резкие изменения направления кривой вызывают неестествен- за яркого заднего света. Однако если увеличить яркость для фикса- ность изображения, и ufraw помогает предотвратить это сглаживанием ции освещения на Туксе, выцветет задний план. Тут требуется более кривой. Вы можете добавить точек на кривой для усиления эффекта. тонкий подход. Чтобы удалить какую-то из точек, просто стащите ее с графика. Если вы хотите преобразовать RAW в JPEG, понадобится выполнить Экспериментирование с кривой поможет вам понять, что имен- после dcraw еще один шаг для конвертации результата. На помощь но происходит. Например, поменяв местами черные (крайние левые) придет конвертор Image Magick: и белые (крайние правые) точки, вы получите негатив изображения. craw -c imgp1234.pef | convert - imgp1234.jpg В ufraw также есть некоторые полезные дополнения. Команда ufraw- Для конвертирования целой папки с «сырыми» изображениями batch позволяет вам преобразовать группу изображений автоматически (в приведенном примере фигурирует формат .pef, принятый в каме- с одинаковыми настройками; имеется модуль расширения ufraw GIMP, рах Pentax) в JPEG, для быстрого просмотра, пригодится следующая запускаемый автоматически при попытке открыть в редакторе «сырой» команда: файл. Модуль позволяет осуществить начальную трансформацию mkdir jpeg в ufraw, до передачи изображения в GIMP для дальнейшей обработки. for f in *.pef; do dcraw -c $f | convert - jpeg/$f; done Ufraw входит в стандартную поставку SUSE 10.3 и легко может быть Dcraw идеальна для обработки группы изображений. Такой тип добавлен из репозитория Universe в Ubuntu. предварительного экспериментирования полезен для нахождения под- ходящих параметров, но для точного редактирования изображений пона- Изображения из других источников добится интерактивный инструмент. Одна из таких программ – ufraw. Множество людей все еще хранит где-нибудь под кроватью целые коробки из-под обуви со старыми фотографиями, которые они с Интерактивные RAW-конверторы удовольствием оцифровали бы и поместили в интернет. Существует Ufraw использует dcraw для первичного преобразования, а затем несколько способов добавить эти изображения на компьютер самим. предоставляет GUI с набором функций управления изображением. Один из них – копировальное устройство для слайдов, показанное внизу Сначала Ufraw может немного запугать: его интерфейс насыщен орга- нами управления, цель которых не всегда ясна. От man-страницы тоже

Другие инструменты RAW

LightZone, необычная, но полезная хорошую работу, подгоняя уровни утилита, стоящая между RAW-конверторами автоматически так, что в большинстве и редакторами. Мы рассмотрим ее случаев можно не заботиться в следующем месяце, с некоторыми о редактировании их вручную – чего в Picasa хорошими новостями. Коммерческий и нет. Picasa – хороший менеджер библиотек. пакет доступен под Windows и Mac, Мы изучим эти ее функции в будущем. не поддерживался под Linux долгое время, http://picasa.google.com затем исчез. www.lightcrafts.com Rawstudio в последнее время Google Picasa 2.7 недавно обновилась, не обновлялась и не поддерживает некоторые также включает поддержку RAW – опять-таки из форматов RAW новейших фотоаппаратов. благодаря dcraw. Picasa выполняет довольно http://rawstudio.org Риc. 5. Наш сканнер Coolscan не добился чудесных результатов с SANE.

66 Linux Format Февраль 2008 Фото с Linux Учебник

справа. Подобные устройства вставляются в SLR-камеры, вместо лин- зы, и переснимают исходный слайд или негатив. Хотя они создавались для пленочных фотоаппаратов, вы можете получить столь же хорошие результаты при подсоединении к цифровой SLR. Фокусировка и кадри- рование немного усложняется, но после нажатия кнопки затвора изобра- жение окажется на карте памяти с вашими остальными снимками, в том формате, который вы выберете в меню фотоаппарата. Очевидно, фор- мат RAW предоставит больше возможностей для редактирования – если нет нужды в жесткой экономии места на карте памяти. Устройство для копирования слайдов – сравнительно дешевый вариант, но качество изображения на выходе может сильно разли- чаться. Если вы хотите добиться хорошего качества от вашей старой пленки, понадобится сканер пленок. Nikon Coolscan III б/у можно найти где-то долларов за 200. Множество сканеров поддерживаются Linux при помощи пакета SANE, и вы можете получить достойные результаты, но это зависит от сканера. На нашем Coolscan изображения, полученные с SANE, были довольно безобразными (извините за каламбур), а пользовательский интерфейс громоздким и неуклюжим (рис. 5, внизу слева). Имеется возможность улучшить сканированное изображение, регулируя кривые цвета красного, синего и зеленого каналов, но на это могут уйти часы. Альтернативный подход, способный дать лучшие результаты – использование VueScan, в котором есть и интерфейс новичка – по принципу Мастера, и интерфейс эксперта; и в обоих случаях резуль- таты очень приличные (как показано на рис. 6 справа). Он дороговат, но, с учетом его качества, не жалко и потратиться. Бесплатная проба на www.hamrick.com/vsn.html. LXF Рис. 6. Сканирование – это пробы и ошибки: вторая попытка может оказаться лучше.

Рис. 7. Сравнение разных вариантов.

Используйте устройство копирования слайдов с SLR для перевода изображений на ваш компьютер с Linux.

Через месяц Разберемся с сокровищницей фоторедакторов, открываемой для нас Linux.

Февраль 2008 Linux Format 6 7 http://lolbook.nnm.ru УчебникПрограммирование Первые шаги Набиваем руку, делая маленькие, но нужные штуковины Кодируем: ЧАСТЬ 2 Улучшите навыки программиста и выучите иностранный язык – помогут Майк Сондерс и ваш собственный инструмент для показа всплывающих карточек...

языка, или вообще для всего, что нужно изучить! Вы сможете даже настроить ее на отображение названий животных: пусть спросит вас об их виде. Новый опыт Python На LXFDVD прошлого месяца была опубликована подшивка LXF за 2005–2007 года; помимо прочего, в ней можно найти и учебник по языку Python (выпуски 74/75–83). Не пугайтесь, если вы пропустили прошлый номер или никогда не писали на Python: в нем очень легко разобраться. Если вы знакомы хоть с одним языком программирова- ния, то не встретите проблем при работе с этим кодом. Наше приложение flash-карт должно будет читать текстовые файлы и генерировать случайные числа. Открытие файлов в Python – плевое дело: создайте новый текстовый файл с именем foo.txt, вбейте в него несколько слов (по одному в строке) и сохраните в домашнем каталоге. Теперь создайте файл с именем test.py, также в домашнем каталоге, со следующим содержимым: file = open(‘foo.txt’, ‘r’) print file.readlines() Для запуска этого Python-скрипта откройте терминал и введите: python test.py Этот код открывает foo.txt (‘r’ означает «только для чтения») и свя- зывает его содержимое с новым объектом по имени file. Во второй строке кода мы вызываем readlines() нашего объекта file, который сканирует foo.txt и сохраняет его строки как элементы массива. При его печати на экране мы увидим: [‘hello\n’, ‘banana\n’, ‘cupcake\n’] дна из причин нашей любви к компьютерам – их способ- Понятно, слова будут те, которые вы ввели в foo.txt. Но отсюда вид- ность просто работать. Конечно, устройства могут ломаться, но, как Python получает текст из файла и выводит элементы массива Оа программы – содержать ошибки, но когда все в порядке, через запятую. Ну, хорошо; а если мы хотим нормально отобразить ваши данные не исчезнут как по волшебству. Если вы загрузите, ска- текст файла? жем, норвежский словарь, ваш ПК без возражений сохранит его для file = open(‘foo.txt’, ‘r’) последующих вызовов. ПК не будет уставать или пытаться изучить for line in file: Наш другой язык; не сможет он и упиться до полного забвения места, куда print line эксперт вчера записал данные. Он не поссорится с ПК-дамой и не уничтожит Этот код выводит все строки из foo.txt. Заметьте, что отступы в Майк Сондерс ее файлы на почве ревности. В целостной системе данные всегда Python важны – табуляция перед print line говорит о том, что этот код взламывает все под рукой. выполняется внутри цикла for. Конкретно этот цикл for говорит: для электронное, и гордится личной ОС Однако здесь, в царстве людей, мы постоянно боремся с недочета- (for) каждой строки открытого нами файла, напечатать ее, и так до MikeOS версии 1.1, ми и изворотами нашей мысли. Мы вечно все забываем, меняем свое конца файла. написанной мнение – короче, лучше бы наш мозг походил на ОЗУ, а не на серые Итак, мы теперь можем получать текст из файлов и использовать на ассемблере x86: комки органики. Всего очевиднее это при изучении иностранного язы- списки слов для наших flash-карточек. Но надо сделать еще кое-что: http://mikeos.berlios. de ка: компьютер хранит миллионы слов и никогда их не «забывает», а мы наша программа должна отобразить список возможных ответов при с трудом припоминаем, как по-английски «встреча», даже если исполь- выводе слова. Кроме того, было бы крайне бесполезно, если бы вер- зовали это слово вчера. Спасибо, мозг. ным ответом был всегда первый! Поэтому в нашей программе мы соби- Итак, проект кодирования этого месяца – создание программы раемся отображать три возможных ответа, один из которых правиль- всплывающих карточек (flash-карт), которая помогает запоминать ный. Вот как получить случайные числа: иностранные слова. Она отображает английские слова и просит вас import random выбрать их русский эквивалент из списка трех, случайным образом a = random.randint(1, 5) выбранных, слов, начисляя вам очки по мере вашего прогресса. Но b = random.randint(30, 100) она не ограничивается только английским и пригодится для любого print a, b

Месяц назад IRC-бот на Perl помогал нам следить за системой на расстоянии

68 Linux Format Февраль 2008 Flash-карточки Учебник

Flash-карточки

Первая строка говорит Python, что мы хотим использовать его гене- ратор случайных чисел. После этого мы создаем две переменные: a и b, и присваиваем им случайные значения стандартной подпрограммой Python random.randint(). Мы указываем диапазон значений – для пере- менной a это будет число от 1 до 5 (включительно). Для b – число меж- ду 30 и 100. Легко! Создаем flashcard.py 1.0 Давайте поработаем с программой. Нам понадобятся два текстовых файла: в одном – английские слова, в другом – соответствующие русские. (Или, например, в одном файле могут быть названия стран, а во втором – названия их столиц.) Важно, чтобы оба файла имели одинаковое число строк и соответствие слов для каждой их пары. Если вы используете названия столиц и седьмая строка первого фай- ла – это «Япония», то седьмая строка второго файла должна содержать «Токио». Иначе ответы не подойдут! Итак, создадим два текстовых файла в домашнем каталоге и вве- дем по десять слов в каждый из них, по одному в строке. В нашем при- мере, первый файл называется english.txt и содержит слова ‘Thanks, word, job’ и т.д.; второй файл называется russian.txt и содержит ‘спа- сибо, слово, работа’ и т.д. Теперь нам необходим код на Python, чтобы Первая инкарнация работать с этими текстовыми файлами в домашнем каталоге – и вот score = score+1 нашей программы flash-карт – простой вам листинг. Он есть на нашем DVD (flashcard.py в разделе Magazine/ else: текстовый вариант. CodeProject), но пока просто пробегитесь по нему... raw_input(‘\n Неверно! Нажмите enter...’) # -*- coding: utf_8 -*- import os, random count = count+1

count = 0 print ‘\n Набрано очков:’, score score = 0 При наличии flashcard.py, russian.txt и english.txt в вашем домашнем каталоге откройте терминал и введите python flashcard.py. Вы увидите, file1 = open(‘english.txt’, ‘r’) что программа отображает английское слово, а ниже – три возможных file2 = open(‘russian.txt’, ‘r’) русских эквивалента. Эти эквиваленты пронумерованы, и если вы счи- таете, что верный ответ – это 3, просто нажмите 3, а затем Enter. После f1content = file1.readlines() этого программа скажет вам, правы вы или ошибаетесь – всего будет f2content = file2.readlines() задано десять вопросов. Давайте рассмотрим код более детально. Мы начали строкой с while count < 10: import [Русская версия скрипта начинается с указания используемой os.system(‘clear’) в системе кодировки, в противном случае программа не будет выпол- няться, – прим. пер.], которая говорит Python, какие возможности wordnum = random.randint(0, len(f1content)-1) мы собираемся использовать. В нашем случае необходимо вызывать функцию ОС (для очистки экрана) и генерировать случайные числа. print ‘Слово:’, f1content[wordnum], ‘’ Затем мы описываем две переменные, count и score – первая исполь- зуется для отображения десяти вопросов, а вторая запоминает число options = [random.randint(0, len(f2content)-1), верных ответов. Далее идет: random.randint(0, len(f2content)-1), file1 = open(‘english.txt’, ‘r’) random.randint(0, len(f2content)-1)] file2 = open(‘russian.txt’, ‘r’)

options[random.randint(0, 2)] = wordnum f1content = file1.readlines() f2content = file2.readlines() print ‘1 -’, f2content[options[0]], Здесь мы открываем два файла и связываем их с двумя перемен- print ‘2 -’, f2content[options[1]], ными с именами file1 и file2. Эти переменные – вроде дескрипторов print ‘3 -’, f2content[options[2]], этих файлов: они представляют файлы, сохраненные в памяти. Но нам не нужны просто сами файлы; нам необходимо их содержимое, поэто- answer = input(‘\n Ваш выбор:’) му следующие две строки кода по кусочкам переносят реальный текст в два массива с именами f1content и f2content. Теперь у нас есть список if options[answer-1] == wordnum: английских слов в f1content и список русских слов в f2content. Затем raw_input(‘\n Верно! Нажмите enter...’) начинается основной цикл программы:

Февраль 2008 Linux Format 6 9 http://lolbook.nnm.ru Учебник Flash-карточки

while count < 10: os.system(‘clear’) wordnum = random.randint(0, len(f1content)-1) print ‘Слово:’, f1content[wordnum], ‘’ Мы хотим задать десять вопросов, то есть выполнить весь код с Скорая отступом десять раз (переменная-счетчик каждый раз увеличивает- помощь ся). Первая строка этого цикла очищает экран, вызывая стандартную Если при ваших утилиту /usr/bin/clear, а затем мы отображаем случайное слово. Мы экспериментах говорим: wordnum должно принять случайное значение, представ- с кодом Python ляющее строку в файле слов, так что дай мне число между нулем и программа размером файла (в строках). Хотя файл слов может иметь строки от зациклилась, ее можно снять первой до десятой, массивы нумеруются с нуля, вот почему мы берем из терминала, нажав случайное число от нуля до числа строк в файле минус один. То есть Ctrl+C. Вам может строка один в f1content (english.txt) – на самом деле нулевой элемент понадобиться сделать массива, а строка десять – девятый. Затем мы отображаем слово из это пару раз, файла english.txt. особенно если ваша программа options = [random.randint(0, len(f2content)-1), ждет ввода random.randint(0, len(f2content)-1), от пользователя. random.randint(0, len(f2content)-1)] Если ваша options[random.randint(0, 2)] = wordnum программа все-таки не останавливается, Далее создается массив трех возможных ответов с именем наберите в терминале options. Мы задаем для каждого ответа случайное число, ограничен- ps ax, найдите номер ное сверху числом строк в f2content (russian.txt). Теперь у нас есть процесс Python три случайных русских слова – но стойте, одно из них должно быть Код для этого выйдет более длинный, и чтобы зря не тратить место, вашего скрипта верным, ведь так? Иначе получится три неверных ответа! Так что мы приведем здесь лишь основную часть. Но это большая часть, и она и введите kill -9 . Это положим один из ответов в options равным wordnum – то есть верно- вам покажет, как работает графическая версия. На нашем DVD в раз- команда абсолютного му. И вместо того, чтобы верный ответ всегда был, скажем, первым, деле Magazine/CodeProject/Graphical имеется полный листинг кода со останова программы мы размещаем его в случайное место в списке из трех возможных множеством комментариев (обозначенных символом #). ответов. Заметьте, что перед запуском программы необходимо устано- Оставшийся код понять очень просто. Он печатает на экране три вить библиотеку PyGame: большинство дистрибутивов имеют ее возможных ответа затем запрашивает ответ у пользователя – то в своих репозиториях (поищите в вашем менеджере пакетов), но есть ввод 1, 2 или 3. Когда пользователь вводит ответ, мы прове- если это не так, исходный код вы найдете в разделе Разработка ряем, соответствует ли нашего DVD. он верному слову. То Вот наш основной кусок кода. Здесь есть несколько новых элемен- «Эту программу есть, если русское сло- тов, но, в типичной манере Python, по большей части все самодоку- можно заставить во – «спасибо» и номер ментировано – открываем файл изображения, рисуем его на экране в варианта thanks – «2», указанной позиции, и все. использовать когда пользователь вво- init() дит 2, наша программа screen = display.set_mode((640, 480)) слова и картинки.» говорит: «Ах! Вариант display.set_caption(‘Flashcard’) два является седьмым в файле русских слов. И истинный номер ответа wordnum также font = font.Font(None, 48) равен семи, так что все верно! Слова совпадают.» В точку. while count < 10: Версия с картинками screen.fill(0) Теперь у нас есть текстовый инструмент flash-карт, превосходный для множества применений, а как насчет графической версии? Допустим, wordnum = random.randint(0, len(f2content)-1) картинка с животным и три возможных названия – идеально для детей. А может, вы захотите нарисовать национальные флаги – кстати, имен- mainpic = image.load(f2content[wordnum].rstrip(‘\n’)) но это мы и собираемся сделать. Как и прежде, программу можно пре- образовать во что угодно, использующее слова и картинки: блюда и их screen.blit(mainpic, (255, 50)) названия на испанском, фотографии звезд и их имена... Для этого необходимо выйти за границы командной строки и вос- options = [random.randint(0, len(f1content)-1), пользоваться графическим слоем. К счастью, у нас есть прекрасный random.randint(0, len(f1content)-1), выбор для нашего Python-приключения: PyGame, библиотека, связы- random.randint(0, len(f1content)-1)] вающая Python с популярным медиа-слоем SDL. PyGame позволяет создавать окна и отображать соответствующие картинки на экране, options[random.randint(0, 2)] = wordnum причем с минимумом усилий. Собственно, большая часть кода оста- нется той же – надо только заставить отображаться вместо текста text1 = font.render(‘1 - ‘ + f1content[options[0]].rstrip(‘\n’), картинки. True, (255, 255, 255)) Наша первая версия flashcard.py использовала два текстовых фай- text2 = font.render(‘2 - ‘ + f1content[options[1]].rstrip(‘\n’), ла с соответствиями слов, а эта графическая инкарнация будет исполь- True, (255, 255, 255)) зовать соответствия слов и картинок. То есть file1.txt может содержать text3 = font.render(‘3 - ‘ + f1content[options[2]].rstrip(‘\n’), «Непал, Канада, Финляндия...», а file2.txt – ‘nepalflag.png, canadaflag.png, True, (255, 255, 255)) finlandflag.png...’ и так далее. Слова будем получать из file1, а картинки для отображения – из file2. screen.blit(text1, (30, 200))

70 Linux Format Февраль 2008 Flash-карточки Учебник

PyGame умеет больше

Наша вторая программа для flash-карт лишь поверхностно очертила то, что можно сделать с PyGame (www.pygame.org). Данная библиотека предоставляет множество инструментов для загрузки изображений, перемещения спрайтов, работы с клавиатурой/мышью и воспроизведения звуковых эффектов. Это популярный выбор программистов игр с открытым кодом; примеры того, что можно сделать, см. на www.pygame.org/tags/ arcade. А главное, PyGame имеет обширную документацию, включая учебники для абсолютных новичков и детальный справочник API. По адресу www.pygame.org/docs вы найдете учебники, описывающие с нуля, как инициализировать PyGame, перемещать спрайты и использовать пиксельные эффекты.

При помощи Python и PyGame, мы теперь можем создать графический тест вроде этого.

f1content, а также на имя файла связанного изображения в f2content. Если wordnum равно 2, то она может указывать на «Непал» в f1content и ‘nepal.png’ в f2content – вот почему записи в файлах должны попар- но соответствовать друг другу! PyGame не ограничивается видеоиграми – вы можете Итак, загружаем нашу картинку в соответствии с именем файла из использовать ее и для создания медиа-проигрывателя. f2content, удалив символ перевода строки при помощи rstrip – не то PyGame нас не поймет! Далее, делаем один из трех вариантов правиль- ным, как и ранее. Затем создаем три отрывка текста для отображения на экране. Вот первый: screen.blit(text2, (30, 300)) text1 = font.render(‘1 - ‘ + f1content[options[0]].rstrip(‘\n’), screen.blit(text3, (30, 400)) True, (255, 255, 255)) Здесь создается новое изображение с именем text1, содержащее display.update() первый случайный вариант из нашего списка слов f1content. True озна- Первые четыре строки кода говорят PyGame настроить экран. Мы чает, что текст должен быть сглаженным, а (255, 255, 255) – цвет текста инициализируем PyGame, а затем велим ему создать новое окно раз- в формате красный, зеленый, синий: белый, стало быть. Делаем то же мером 640 x 480 пикселей, поместив в заголовок окна соответствую- для других вариантов, затем отрисуем (blit) текст на экране и обновим щий текст. Затем создаем новый шрифт: создадим объект с именем его, чтобы все отобразилось. font, используя собственную систему шрифтов PyGame, и скажем Оставшийся код с комментариями, который вы можете просмотреть ‘None’, что означает: нам неважно, какой шрифт использовать – пусть на нашем DVD, обрабатывает ввод пользователя. Мы проверяем, что будет стандартный системный. А размер шрифта установим 48 пун- нажал пользователь – 1, 2 или 3 – и реагируем соответственно: выво- ктов. дим «Верно!» и обновляем счетчик очков, или выводим «Неверно!». Затем запускается главный цикл, выдавая десять вопросов. screen. Затем ждем нажатия Enter и вновь запускаем цикл. fill(0) просто заполняет экран нулевым цветом, то есть черным – это очищает окно для каждого вопроса. Затем мы выбираем строку для Завершаем случайного слова, которое будет ответом, так же, как и в текстовой Надеемся, что это вдохновило вас покопаться глубже в вашем проекте версии, а затем у нас идет: flash-карт – возможно, расширить его, включив пять вариантов вместо mainpic = image.load(f2content[wordnum].rstrip(‘\n’)) трех. А может быть, вы хотите записывать системное время в начале Это довольно большая инструкция, так что давайте разберем ее. теста и сравнить его со временем по завершении теста, чтобы выстав- Мы создаем новый объект PyGame: картинку с именем mainpic, для лять оценку за быстроту! отрисовки на экране. Однако картинку необходимо откуда-то загрузить, С этой программой можно еще много чего сделать, и если у вас и это должна быть картинка для верного ответа – а мы здесь сказали, получится что-то классное, пожалуйста, сообщите нам, и мы, возможно, чтоб Python выбрал ее случайным образом. разместим это на нашем DVD. Если у вас возникли вопросы по данному Как и до этого, в полном коде мы загружаем два текстовых файла уроку, обратитесь к разделу Программирование на www.linuxforum.ru. в f1content и f2content. f1content содержит список слов – в нашем слу- Наслаждайтесь! LXF чае, «Непал, Канада, Финляндия...». f2content содержит список имен соответствующих файлов изображений: ‘nepalflag.png, canadaflag.png, finlandflag.png...’. Наша переменная wordnum указывает на слово в

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

Февраль 2008 Linux Format 71 http://lolbook.nnm.ru Hardcore Linux Проверьте себя как продвинутого пользователя Виртуальный Строить сбалансированный по нагрузке кластер с LVS – отличный способ согреться в зимний день: не хуже, чем колоть дрова, уверяет д-р Крис Браун.

«реальными»]; в принципе, вы можете использовать что-то вроде web- серверов. Я использовал пару ноутбуков, один с SUSE 10.3, второй с Ubuntu 7.04. На деле вам потребуется больше дополнительных сер- веров, но двух достаточно для получения результата. Вы, верно, недоумеваете, почему на всех четырех компьютеров я запустил разные ОС. Хороший вопрос – я сам часто его себе задаю! Увы, это просто факт из жизни тех из нас, кто зарабатывает на хлеб с Linux. Как работает сбалансированный по нагрузке кластер Машины клиентов посылают запрос (например, запрос на web-стра- ницу HTTP GET) на публичный IP-адрес активного маршрутизатора (на рисунке, 192.168.0.41; для клиентов это адрес, по которому предостав- ляется услуга). Активный маршрутизатор выбирает один из реальных серверов для перенаправления запроса. Он перезаписывает IP-адрес назначе- ния пакета на выбранный реальный сервер и перенаправляет пакет во внутреннюю сеть. Выбранный реальный сервер обрабатывает запрос и отсылает HTTP-ответ, который теоретически содержит запрошенную страницу. Этот ответ адресован клиентской машине (192.168.0.2), но вначале он возвращается к активному маршрутизатору (10.0.0.1), потому что тот сконфигурирован как шлюз по умолчанию для реальных серверов. анный урок покажет вам, как создать сбалансированный по Активный маршрутизатор меняет IP-адрес источника в пакете на свой нагрузке кластер web-серверов, с масштабируемой произ- публичный IP-адрес и посылает пакет обратно клиенту. Дводительностью, значительно превышающей возможности Все эти трюки на уровне IP выполняются с помощью LVS-моду- индивидуального сервера. Мы будем использовать программное обес- ля ядра Linux. Активный маршрутизатор работает не просто в каче- печение для кластеров от Red Hat, но основная функциональность, опи- стве обратного web-прокси, и команды типа netstat -ant не пока- санная в данном учебнике, основана на модуле виртуального сервера жут каких либо процессов уровня пользователя, прослушивающих Наш ядра Linux и не привязана к Red Hat. 80 порт. Перезапись адреса – это разновидность NAT (Network Address эксперт Если вы захотите последовать уроку «в натуре», вам потребует- Translation), позволяющая активному маршрутизатору маскироваться Крис Браун ся как минимум четыре компьютера, как показано на рис. 1 (на сле- под реальный сервер, скрыв наличие внутренней сети, выполняющей Пользователь Unix дующей странице). Я понимаю, что для некоторых читателей такой реальную работу. с более чем двадцатипятилетним проект будет практически недосягаемым, но, надеюсь, он пригодится стажем. Его компания как мысленный эксперимент, вроде того, что Шредингер проделывал Балансируя нагрузку Interactive со своим котом. Балансировка нагрузки – ключевая особенность LVS: благодаря ей, Digital Learning предоставляет курсы, Машина 1 – просто клиент, используемый для тестирования: можно быть уверенным, что каждый реальный сервер получает при- консультации ею может быть все, что имеет web-браузер. Я экспроприировал маши- мерно одинаковый объем работы. LVS имеет для этого несколько алго- и материалы для ну моей жены, на ней стоит Vista. Машина 2 – стенд для эксперимента. ритмов; мы упомянем четыре из них. обучения по Linux. Он также Она должна работать под Linux и, предпочтительно, иметь два сете- Циклическое распределение [round-robin scheduling] – самый прос- специализируется вых интерфейса, как показано на рисунке. (Можно собрать кластер, той алгоритм. Активный маршрутизатор просто работает по кругу, на системах электронного используя всего одну сеть, но этот механизм не годится для промыш- переходя снова на первый реальный сервер, когда исчерпает список. обучения. ленного применения и требует немного колдовства на уровне IP, чтобы Этот метод хорошо подходит для тестирования, потому что позволяет заставить его работать.) легко проверить на работоспособность все реальные сервера, но он не Эта машина выполняет обязанности балансировщика нагрузки самый лучший при промышленном применении. и маршрутизатора в кластере, и в документации LVS ее называют Циклическое распределение с весовыми коэффициентами [weighted “director” [активный маршрутизатор, – прим. пер.]. В моем случае на round-robin] – аналогично, но позволяет назначать для каждого реаль- машине 2 запущен CentOS5 (по сути, эквивалент RHEL5). Машины ного сервера «вес», соответствующий его относительной скорости. 3 и 4 – дополнительные серверы [в документации их называют Сервер с весовым коэффициентом «два» считается в два раза мощнее

Месяц назад Мы автоматически перекидывали трафик на запасной сервер благодаря Heartbeat.

72 Linux Format Февраль 2008 Hardcore Linux Учебник сервер Linux

сервера с весовым коэффициентом «один», и может обработать в два раза больше запросов. Минимум соединений [least-connection] – наименее нагруженный сервер отслеживается по количеству активных соединений, и запрос отправляется на сервер с наименьшей загрузкой. Минимум соединений с весовыми коэффициентами [weighted least 1 connection] также выполняет подсчет относительной производитель- ности (весов) серверов. Этот метод хорош для производственных кластеров, потому что он прекрасно работает, когда запросы сильно различаются по времени их обработки и/или когда реальные сервера в кластере имеют различную мощность. Два последних метода динамические, то есть учитывают данные о текущей загрузке машин в кластере. Инструменты для работы Чтобы все это заработало, ядро поддерживает таблицу виртуального сервера, которая содержит, кроме прочего, IP-адреса реальных серве- ров. Для поддержания и просмотра этой таблицы используется инстру- 2 мент командной строки ipvsadm. Если ваше ядро (как большинство других современных ядер) соб- рано с поддержкой LVS, то ipvsadm – единственная программа, кото- рую вы обязаны иметь, чтоб заставить LVS работать; однако есть дру- гие инструменты, облегчающие жизнь. (Ситуация похожа на механизм пакетной фильтрации в ядре. В теории для управления им и создания межсетевого экрана нужна только утилита командной строки iptables, на практике же большинство из нас использует для построения соб- ственных правил фильтрации инструменты высокого уровня, часто графические). На данном уроке мы воспользуемся инструментами для кластеров от Red Hat, включая web-ориентированный инструмент настройки Piranha. Основной недостаток конфигурации, показанной на рис. 1 – актив- 3 4 ный маршрутизатор является единой точкой отказа в пределах класте- ра. Чтобы этого избежать, можно использовать в качестве активного маршрутизатора пару серверов (основной и резервный); используя обмен сообщениями heartbeat, резервный сервер может определить сбой основного сервера и взять на себя его работу. На нашем уроке я игнорирую эту проблему, отчасти потому, что о Рис. 1. Простой кластер со сбалансированной нагрузкой. ней говорилось в прошлом месяце, а отчасти потому, что тогда нуж- но было бы пять машин для построения кластера, а у меня их только четыре! Отметим, что инструменты кластеризации от RedHat действи- строку «Дорога ложка к обеду». На сервере 2 строка была уже тельно включают функциональность для переключения с основного на «Не зная броду, не суйся в воду». Конечно, в реальных условиях нуж- резервный маршрутизаторы. но, наоборот, «синхронизировать» все реальные сервера, чтобы они хранили одно и то же содержимое – к этой проблеме мы вернемся Настраиваем реальные сервера позднее. Если вы хотите по-настоящему построить кластер, описанный на этом Назначьте машинам реальные IP-адреса, предназначенные для уроке, начните с реальных серверов. Это могут быть любые машины, внутренних сетей; в моем случае это 10.0.0.2 и 10.0.0.3. Установите имеющие web-сервер HTTP на 80-м порту; в моем случае на них был маршрутизацию по умолчанию на этих машинах на приватный IP-адрес запущен Linux и Apache. активного маршрутизатора (10.0.0.1). Нужно создать какие-нибудь данные в директории DocumentRoot на каждом сервере, и для тестирования было бы неплохо, чтобы Установка активного маршрутизатора на каждой машине эти данные были свои: тогда легко различить, На активном маршрутизаторе начните с закачки и установки инстру- какой сервер обрабатывает запрос в данный момент. Например, ментов кластеризации Red Hat. В моем случае (вспомните, что я запус- на реальном сервере 1 я создал файл proverb.html, содержащий тил на этой машине CentOS5) я просто использовал графический

Февраль 2008 Linux Format 7 3 http://lolbook.nnm.ru Учебник Hardcore Linux

инструмент установки (pirut) для добавления пакетов ipvsadm и Piranha из репозитория CentOS5. Моим следующим шагом был запуск коман- ды piranha-passwd для установки пароля на инструмент конфигурации piranha: # /etc/init.d/piranha-gui start Этот сервис слушает порт 3636 и предоставляет web-интерфейс для конфигурирования инструментов кластеризации, так что после его запуска мне осталось набрать в браузере http://localhost:3636 для доступа к нему. Далее мне нужно было зайти, используя имя поль- зователя piranha и пароль, который я установил. После этого стали доступны четыре основных окна: Control/Monitoring, Global Settings, Redundancy и Virtual Servers (вы можете увидеть ссылку на них на рис. 3). Для начала зайдите в окно Virtual Servers и добавьте новый сервис. На рис. 2 показана форма, которую вы должны заполнить. Среди прочего, вы должны задать имя сервиса, указать номер порта и интерфейс, через который он будет принимать пакеты, и выбрать алгоритм работы (для начального тестирования я выбрал ‘Round Robin’ [Циклическое распределение]). Кликнув на ссылку Real Server вверху этой страницы, вы попадете на страницу, показанную на рис. 3. Здесь вы должны указать имя, IP-адрес и веса ваших реальных серверов. За кадром, большинство настроек, захваченных Piranha, хранятся в файле конфигурации /etc/sysconfig/ha/lvs.cf. Другие инструмен- ты кластеризации читают его; это обычный текстовый файл, и ник- Рис. 2. Конфигурирование виртуального сервера с Piranha. «Для эксперимента требуется как минимум четыре компьютера; или проделайте его мысленно.»

то не запрещает вам редактировать его напрямую. Выполнив дан- ную настройку, можно начинать. Запустите сервис кластеризации из командной строки: # /etc/init.d/pulse start (В реальности вы должны сделать этот сервис автоматически запускаемым при загрузке.) Теперь идите на экран управления/мониторинга Piranha, как показа- но на рис. 4. Внимательно посмотрите на таблицу маршрутизации LVS. Вы должны увидеть записи о вашем виртуальном сервере (это строки, начинающиеся с TCP...), а пониже – строки для каждого реального сер- вера. Ту же информацию можно добыть из командной строки, набрав # ipvsadm -L Периодическая проверка здоровья Также на экране управления/мониторинга есть таблица процессов LVS. Здесь вы можете увидеть множество «процессов-нянек». Они отвечают Рис. 3. Определяем реальные сервера. за проверку присутствия и работоспособности реальных серверов – по няньке на сервер. Их работа – периодически посылать простой запрос HTTP GET и проверять ответ. Внимательно рассмотрев опции -s и -x зуемые для теста. (Вы можете задать эти строки, как вам нравится, для няньки, вы распознаете посылаемые и ожидаемые строки, исполь- используя страницу Virtual Servers > Monitoring Scripts Piranha.) Просмотрев журнал доступа Apache на реальном сервере, вы уви- дите, что эти запросы выполняются каждые шесть секунд. Если нянька Боитесь за узкие места? обнаружит, что ее сервер замолк, она вызовет ipvsadm для удаления записи о машине из таблицы маршрутизации LVS, и активный марш- Так как весь входящий и исходящий трафик идет через активный маршрутизатор, вы, рутизатор не сможет пересылать запросы на эту машину. Нянька будет возможно, опасаетесь, что его производительность создаст узкое место. Но это продолжать опрашивать сервер, и если он восстановится, она снова маловероятно. Вспомните, что активный маршрутизатор выполняет только простые запустит ipvsadm для восстановления записи маршрутизации. манипуляции над заголовками пакетов внутри ядра; даже скромная машина способна Вы можете наблюдать такое поведение, отключив сетевой кабель от разобраться со 100-мегабитной сетью. Более вероятно, что узким местом будет реального сервера (или просто остановив демон httpd) и изучив табли- ширина канала при доступе к сайту. Для более подробной информации об цу маршрутизации LVS: окажется, что запись о вашем покойном сер- использовании старых ПК для задач типа сетевых, см. спецрепортаж этого месяца на вере исчезла. Подключите сетевой кабель или перезапустите сервер, и стр. 30 запись возникнет снова. Будьте терпеливы: прежде чем эти изменения проявятся, может пройти 20 секунд, а то и больше.

74 Linux Format Февраль 2008 Hardcore Linux Учебник

Развязка Если все в порядке, пора заняться клиентской машиной (под номером 1 на первом рисунке) и попробовать получить доступ к странице из браузера. В нашем примере, вы должны обратиться к http://192.168.0.41/proverbs.html и увидеть страницу с пословицей, хра- нящуюся на одном из ваших реальных серверов. Обновившись, вы увидите страницу с другой пословицей со следующего сервера в цик- лическом порядке. Можете также проверить поведение циклического распределения, изучив журнал доступа Apache на каждом реальном сервере. (Вглядевшись в записи журнала, вы увидите, что доступ был с 192.168.0.2, а няня запрашивала состояние с 10.0.0.1.) Если все зарабо- тало, поздравляю! Вы только что построили свой первый сбалансиро- ванный по нагрузке Linux-кластер. Постскриптум Давайте сделаем паузу и выясним, что мы изучили на двух наших уроках. Мы увидели, как построить отказоустойчивое кластерное решение, добавляющее лишнюю девятку к коэффициенту доступ- ности вашего сервиса (например, с доступности 99.9% до 99.99%); и увидели, как построить сбалансированный по нагрузке кластер, превышающий по производительности индивидуальный web-сервер. Рис. 4. Экран управления и мониторинга Piranha. В обоих случаях мы использовали свободное, открытое ПО, запуска- емое на свободной открытой ОС. Иногда я представляю, что именно об этом думает Стив Балмер на сон грядущий; и всякий раз мне чер- товски приятно. LXF

Если он не работает...

Не исключено, что ваш кластер с первой попытки имеете маршруты к сетям 192.168.0.0 и 10.0.0.0 Если она вернет 1, то все прекрасно, не заработает. У вас есть несколько через соответствующие интерфейсы. а если 0, включайте функцию командой: вариантов выхода из этого положения. Если ваши реальные серверы пингуются, # echo 1 > /proc/sys/net/ipv4/ip_forward Первый – швырнуть один из ноутбуков через запустите web-браузер на LVS-машине (исходя Вы можете также проверить, настроено ли ваше ядро всю комнату и проклясть Microsoft. из того, что браузер установлен – вообще-то для работы с LVS. Если ваш дистрибутив содержит Это, конечно, не конструктивная мера, хотя бы вы он там ни к чему). Убедитесь, что вы можете копию файла конфигурации, использованного при и почувствовали себя лучше. И Microsoft обвинять открыть URL http://10.0.0.2 и http://10.0.0.3 и видите сборке ядра (с именем /boot/config-так-или-сяк), не за что, потому что мы не пользуемся никаким содержимое web-страниц, хранящихся на этих примените grep для поиска строки CONFIG_IP_VS ее программным обеспечением. Второй вариант – серверах. (Если машины пингуются, но web-сервера и убедитесь, что вы видите CONFIG_IP_VS=m сделать несколько глубоких вдохов, успокоиться недоступны, убедитесь, что они запущены на среди прочих. Вы также можете попробовать и провести серию диагностических тестов. реальных серверах и эти сервера не имеют правил # lsmod | grep vs Первым делом неплохо проверить соединение брандмауэра, запрещающих к ним доступ.) для проверки, что модуль ip_vs загружен. Если с LVS-машиной, используя старый добрый ping. Нужно также внимательно проверить таблицу вы не можете найти доказательства поддержки Сперва убедитесь, что пингуется ваша тестовая машина маршрутизации LVS, отображаемую на странице виртуального сервера в ядре, придется перенастроить (192.168.0.2). Затем проверьте доступность обоих Control/Monitoring в Piranha, и убедиться, что и пересобрать ядро; порядок действий при реальных серверов (10.0.0.2 и 10.0.0.3). ваши реальные сервера там показаны. Если у этом выходит за рамки данного урока. Если это не работает, запустите ifconfig -a и убедитесь, вас опять ничего не вышло, проверьте, включена Если все тесты дают OK, но все еще ничего не что eth0 имеет IP-адрес 192.168.0.41, а eth1 – 10.0.0.1. ли на LVS-машине маршрутизация IP-пакетов работает, теперь уже можно шваркнуть одним из Также запустите route -n для проверки (IP-forwarding) – например, командой ноутбуков об стену. Кластер от этого не оживет, таблицы маршрутизации – убедитесь, что вы # cat /proc/sys/net/ipv4/ip_forward но зато станет ясно, что именно поломалось.

Через месяц Распределим нагрузку «виртуального» сервера на несколько реальных серверов.

Февраль 2008 Linux Format 75 http://lolbook.nnm.ru УчебникKeyJNote KeyJnote Взгляните на свои слайды по-новому! Продвинутая

Завидуете коллегам, чьи презентации сделаны в Mac OS X? Напрасно – с Linux можно доносить свои идеи не менее красиво, но гораздо дешевле. Сергей Яремчук подскажет пару рецептов.

подготовку файлов для показа, Считывание метаданных происходит с помощью pdftk. Поэтому для работы KeyJnote в системе потребуется наличие еще некоторых пакетов. В KUbuntu и Debian их можно устано- вить командой $ sudo apt-get update $ sudo apt-get install python python-opengl python-pygame python- imaging gs pdftk После этого следует распаковать архив с дистрибутивом KeyJnote и поместить файл keyjnote.py в каталог, путь к которому содержится в переменной $PATH. Для удобства лучше сразу же переименовать файл в keyjnote. $ tar xvzf KeyJnote-0.10.1.tar.gz $ sudo cp KeyJnote-0.10.1/keyjnote.py /usr/bin/keyjnote Файл для презентации можно подготовить в различных приложени- ях. Например, сгенерировать в OpenOffice.org, выбрав Файл > Экспорт в PDF. Дальше достаточно просто указать на него KeyJnote. $ keyjnote demo.pdf В этом случае будет запущен показ в полноэкранном режиме. Для переключения слайдов необходимо использовать левую/правую кноп- ку мыши или стрелки на клавиатуре. Чтобы слайды переключались автоматически, достаточно добавить параметр -a с указанием времени задержки в секундах. Выход из полноэкранного режима и возврат осу- ществляется клавишей F; чтобы закрыть окно презентации, достаточно егодня в Linux предлагается достаточно инструментов для нажать Q. При необходимости эти параметры можно задать прямо в подготовки и показа презентаций, и они обладают всеми необ- строке запуска. Сходимыми возможностями. Это и OpenOffice.org, и KPresenter Например, укажем KeyJnote, чтобы он не переходил в полноэкран- из состава KOffice, и MagicPoint с UltraPoint, не говоря уже о различных ный режим (будет показано окно со всеми кнопками) и отображал пре- инструментах LaTeX и web-реализациях. Однако они часто не предла- зентацию в разрешении 800 x 600. Начинать будем со второй страницы. гают всех возможностей, которые хотелось бы иметь под рукой высту- Рис. 1. Предосмотр страниц в KeyJnote. пающему, чтобы привлечь к докладу внимание аудитории. Быть может, KeyJnote – то, что вы искали. KeyJnote представляет собой сценарий, написанный на языке Python и предназначенный для показа презентаций. Его задача – вывод на экран заранее подготовленного PDF или графических файлов в под- держиваемых форматах (JPEG, PNG, TIFF и BMP). При переходах между слайдами используются различные эффекты, основанные на OpenGL. Кроме того, скрипт умеет подсвечивать определенные области слайда и выводить миниатюры всех слайдов презентации; есть и некоторые другие возможности. Устанавливаем KeyJnote В репозиториях Kubuntu и ALT Linux пакета KeyJnote нет. Пользователям Gentoo повезло несколько больше: для установки достаточно ввести emerge keyJnote. Хотя, учитывая, что KeyJnote всего лишь скрипт, про- блем с его установкой возникнуть не должно. Кроме Python, для рабо- ты с документами PDF будет необходим Ghostscript, обеспечивающий

76 Linux Format Февраль 2008 KeyJnote Учебник презентация с KeyJnote

зентации будут показаны уменьшенные копии всех слайдов. Это очень удобно в том случае, если необходимо быстро перейти на нужную страницу, не перелистывая все подряд. Выбор мышью нужного кадра переключит на него. Другой полезный эффект поможет привлечь внимание аудитории к определенному участку слайда. Чтобы его активировать, достаточно нажать на клавишу Enter – появится светлый кружок, которым можно управлять мышью. Остальная часть экрана потемнеет, еще больше выделяя его. Для изменения радиуса подсветки используйте кнопки + и -. Если кружка недостаточно, можно просто выделить мышью нуж- ный участок в подсвеченную рамку; остальная часть экрана также ста- нет темнее. Или такой вариант: необходимо временно увеличить неко- торый участок в размере, чтобы показать детали. Нажмите клавишу Z и просто выделите мышью нужный участок. Если же по ходу презентации нажать клавишу S, все события будут записаны в Info-файл. Рис. 2. OpenGL в действии. Info-файл KeyJnote $ keyjnote -f -g 800x600 -i 2 demo.pdf У KeyJnote есть еще одно полезное свойство, которое поможет сделать Если планируется показ графических файлов, в качестве входного показ презентации более удобным, не отвлекающим на мелочи. Все параметра KeyJnote должен получить только название каталога, при- действия можно заранее записать в файл с таким же именем, как у чем полный путь утилита не понимает. Следует перейти в каталог, рас- исходного файла или каталога, только с префиксом info, и положить положенный на уровень выше, а затем уже вызвать KeyJnote: его в тот же каталог. При загрузке KeyJnote он будет обнаружен авто- $ keyjnote -f -g 800x600 -a 5 photo матически. Например, если файл с презентацией называется demo.pdf, После этого все графические файлы, расположенные в каталоге то info-скрипт должен быть назван demo.pdf.info. photo, будут последовательно выводиться на экран. Так можно быс- Info-файл содержит глобальные настройки, действительные для тро организовать просмотр только что скачанных с фотоаппарата всех страниц, а в отдельных секциях описываются свойства каждой снимков. страницы. Такой файл фактически представляет сценарий на Python, и Сразу после запуска, пока выводится логотип программы, в фоно- на данный момент поддерживаются следующие свойства: вом режиме производится процесс генерирования и кэширования пре- title – по умолчанию в заголовке страницы выводится информация, зентации. Если дискового пространства недостаточно, такое поведение взятая из метаданных файла. Использовав этот параметр, можно ука- можно отключить, добавив ключ -nocache. Однако на слабых машинах зать свой заголовок. это может привести к последующим задержкам при демонстрации. Презентацию не обязательно показывать сразу: ее можно сохра- нить в файлы формата PNG. Для этого достаточно использовать ключ -output с указанием выходного каталога. $ keyjnote demo.pdf -o temp Список всех доступных эффектов можно получить, набрав keyjnote -l. По умолчанию скрипт выбирает эффекты перехода произвольно. Использовав в строке запуска параметр -t, можно установить эффект принудительно, а чтобы он был заметен окружающим, с помощью -T увеличить время перехода (по умолчанию 1000 мс). $ keyjnote -t PagePeel -T 3000 demo.pdf Список всех параметров командной строки можно получить, введя -h, или посмотреть в документации, включенной в tar-архив. Клавиши управления Кроме клавиш перемещения по презентации, KeyJnote поддерживает еще несколько полезных клавиатурных комбинаций, о которых следу- ет знать. Например, нажатие на Tab приведет к тому, что в окне пре- Рис. 3. Подсветка презентации.

Февраль 2008 Linux Format 7 7 http://lolbook.nnm.ru Учебник KeyJnote

transition – эффекты при переходе между страницами. overview – параметр 0/False или 1/True, показывающий, должна ли Альтернативы выводиться страница при обзоре (по умолчанию – да). skip – при skip=1 данная страница будет пропущена при показе. В Linux имеется еще несколько решений, предназначенных для показа пре- boxes – координаты для подсветки. Вручную их устанавливать зентации при поддержке OpenGL: например, небольшая программа (раз- тяжело, лучше воспользоваться клавишей S. мер архива 8 КБ), написанная на С – glpresent (http://www.cse.unsw.edu. timeout – задержка при переходе на следующую страницу. au/~cgray/glpresent). В работе она напоминает KeyJnote; при переходах sound – мелодия, которая будет проиграна с помощью MPlayer между кадрами используется OpenGL. Для управления презентацией при- при показе страницы. Следует помнить, что мелодия будет играть все меняется клавиатура, но доступны только перемещения по слайдам. Пока время, пока не будет запущена другая мелодия или не закончится glpresent поддерживает только файлы в формате PNG. Кроме того, отсут- ствует возможность использования скриптов, как это реализовано в info- презентация. файле. В качестве глобальных переменных могут использоваться Другой проект – pointless (http://pointless.dk/) – находится в состоя- DocumentTitle, Fullscreen и AvailableTransitions. Назначение первых нии альфа, и судя по дате релиза (2004 год), уже из нее не выберется. двух понятно, а AvailableTransitions содержит список всех переходов. Презентация создается на TeX-подобном языке, поэтому при ее подго- Например, чтобы исключить при показе эффект Crossfade, можно товке у новичков могут возникнуть трудности. Pointless написан на C++ написать: и Python, отличается поддержкой большого числа архитектур (x86_32, AvailableTransitions.remove(Crossfade) AMD64, SPARC, PPC, alpha, mips4) и операционных систем – Linux, а если для показа всех страниц необходимо использовать эффект Solaris, Irix, (Free, Net, Open)BSD, MacOS X. SpiralOutIn – AvailableTransitions = SpiralOutIn Общий вид info-файла может быть примерно таким: ‘sound’: “music.mp3” DocumentTitle = “My Presentation” }, Fullscreen = true 5: { AvailableTransitions = [WipeCenterOut] ‘title’: “Page 5”, ‘transition’: ZoomOutIn, PageProps = { ‘timeout’: 5000 2: { } ‘title’: “Title Page”, } ‘transition’: PagePeel, В этом случае презентация будет происходить в полноэкранном режиме; при показе всех страниц, кроме 2 и 5, будет использован эффект WipeCenterOut. Страницы 2 и 5 будут выводиться со своими заголовками и эффектами PagePeel и ZoomOutIn. При составлении файла следует помнить, что мы имеем дело с Python, который не очень любит лишние табуляции и пробелы. Иначе сообщение «Oops! The info script is damaged!» (Info-скрипт испорчен!) вам точно обеспечено. Тем, кто для подготовки презентации использует LaTeX, для созда- ния info-файлов можно порекомендовать Perl-скрипт gettransitions [3]. Работает он просто – вы «скармливаете» ему TeX-файл, а он сам нахо- дит то, что нужно: $ gettransitions talk.tex Как результат, на выходе получим файл talk.pdf.info. Относительно недавно появился неплохой графический интерфейс для среды KDE – KeyJnoteGUI [2]. Устанавливается он как и все прило- жения для Python: $ tar xjvf keyjnotegui-0.4.3.tar.bz2 $ cd keyjnotegui-0.4.3/ $ sudo python setup.py install после чего в подменю Графика стартового меню появится новый пункт. Пользоваться KeyJnoteGUI очень просто: указываете в поле Source на каталог с рисунками или PDF-файл, затем выставляете настройки и нажимаете Run. Вот и все премудрости. Из недостатков KeyJnote можно отметить повышенные системные требования. При больших объемах исходного материала на слабых компьютерах возможно появление задержек. Но в остальном KeyJnote представляет собой простой и в то же время весьма эффективный инструмент, позволяющий сделать презентацию динамичней. LXF

Ссылки

1 Сайт проекта KeyJnote – http://keyjnote.sourceforge.net/ 2 Сайт проекта KeyJnoteGUI – http://developer.berlios.de/projects/ keyjnotegui 3 Perl-скрипт – http://www.cv.nrao.edu/~rreid/software/gettransitions Рис. 4. Графический интерфейс KeyJnoteGUI.

78 Linux Format Февраль 2008 Любительское видео ВтиснемКодирование отснятый DVD Учебник материал в установленные рамки!

DVD: уложиться в формат Подогнать размер отснятого видеоматериала под объем доступного пространства на DVD – это элемент искусства. Алексей Маслий готов поделиться с вами своими наблюдениями.

дной из проблем, с которыми сталкиваются те, кто решил заняться съемкой любительского видео, является под- Огонка отснятого материала под размер DVD. Вроде бы тут и говорить не о чем: практически на любом диске написана его емкость – 4,3 ГБ (или 4,7 ГБ, если его изготовитель считать не уме- ет) или 120 минут видео. Однако не все так просто, как кажется. Во-первых, для уменьшения размера видео- и аудио-потоков коди- рование в формат MPEG2 для DVD по умолчанию производится с переменным битрейтом и с ограничением максимального битрейта, то есть 120 минут – это цифра весьма приблизительная. Во-вторых, для удобства использования DVD-видео должно содержать хотя бы минимальное меню, которое тоже будет занимать какое-то место на диске. Недавно я решил записать видео, отснятое MiniDV-камерой, на DVD. Мне необходимо было записать такой диск, который читался бы на любом DVD-плейере, ну и, конечно, обязательно сделать меню и подменю. После сброса всего отснятого материала, наложения эффектов и кодирования в формат MPEG2 отдельных фрагментов, все они были записаны на DVD (пока что не видео, а обычный) и Рис. 1. Обратите внимание на поле Видеобитрейт.

Февраль 2008 Linux Format 7 9 http://lolbook.nnm.ru Учебник Кодирование DVD

прекрасно туда поместились. После создания меню и ISO-образа диска, которое, кстати, проводилось уже в другом месте, оказалось, что образ превышает объем DVD примерно на 120 МБ – за счет того самого меню и служебной информации самого видео-DVD. Что делать? Вариантов действий в данном случае три: сократить оригинальный видеоряд путем вырезания «лишних» фрагментов, увеличить емкость носителя путем разбиения видео на два диска или использования двухслойного DVD, или же попробовать пере- кодировать видео-файлы так, чтобы они занимали меньше места. В моем случае первый вариант был крайне нежелательным, потому как все «лишнее» видео было выброшено еще на этапе монтажа. Второй вариант также не слишком подходил (записывать менее 120 МБ, то есть около 2-х минут видео, на второй диск просто смешно, а двух- слойный DVD стоит пока слишком дорого, да и не любой DVD-при- вод может их записывать или, что гораздо важнее, воспроизводить). Остается последний вариант – давайте разберемся, как реализовать его с наименьшими потерями для перекодируемого видео. Что резать, док? Для начала следует решить, за счет чего будет происходить умень- Рис. 2. Можно начинать. шение размера файла. Поскольку аудио- и видео-потоки раздельны, можно перекодировать каждый из них сам по себе, но, памятуя, что аудио, записываемое любительскими видеокамерами, и без того даст несколько больший размер, чем ожидалось). Далее запускаем обычно не блещет качеством, еще более ухудшать его я считаю Avidemux, в который встроен прекрасный калькулятор битрейта, и кощунством. Итак, займемся размером видеопотока. Его можно открываем файл, который собираемся перекодировать. Поскольку сократить за счет уменьшения размера (разрешения) кадра, чис- файлы закодированы в формате MPEG2, программа предложит его ла кадров, отображаемых в секунду (fps) или же битрейта. Размер индексировать. После завершения процесса индексации запустите кадра и fps трогать не стоит, дабы не вызывать возможных про- калькулятор и выберите следующие параметры: Контейнер – MPEG, блем с DVD-плейерами, да и визуально это скорее бросится в глаза. Носитель – Предустановка, в поле Размер укажите желаемый ито- Остается битрейт. говый размер файла и откройте раздел Результат (Рис. 1). Общий Еще одна проблема – наличие или отсутствие оригинального размер должен соответствовать числу в поле Размер, Размер аудио видео в виде MiniDV-кассеты или DV-файлов. Зачастую они либо меняться не будет (он соответствует реальному размеру аудио- отсутствуют вообще, либо недоступны. Поэтому следует рассмот- потока), а изменятся только поля Размер видео и Видеобитрейт. реть два варианта: перекодирование уже готовых MPEG2-файлов Последнее из них как раз и содержит то число, которое нам необ- или кодирование несжатого видео-потока. Хотя принципиально они ходимо. Можно сразу же оценить, насколько уменьшится видеобит- ничем не отличаются, для их реализации удобно использовать раз- рейт – в моем случае его изменение составляло менее 5 процентов. личные программы. Как мне кажется, первую задачу наиболее удоб- Теперь можно переходить непосредственно к перекодированию. но решать с использованием Avidemux, а вторую – непосредственно Лучше всего это проделать в том же Avidemux. Укажите в качестве в приложении, где идет монтаж, то есть Kino. видеокодека один из DVD (lavc) или DVD – в первом случае в каче- стве программы кодирования будет использоваться ffmpeg, а во Случай 1: Файлы MPEG2 втором – mpeg2enc из пакета mjpegtools. Что выбрать, решать вам. Давайте разберемся, как «пережимать» уже готовые MPEG2-файлы. Затем произведите настройку видеокодека. Вообще-то по возможности этого следует избегать, так как в данном Кодек ffmpeg предлагает одно- и двухпроходное кодирование. случае будет происходить двойное перекодирование, приводящее к Однопроходное кодирование может быть осуществлено только с ухудшению качества итогового видеоряда. Поэтому после перекоди- постоянным битрейтом (пункт Single Pass (bitrate), и при выборе это- рования следует оценить, насколько ухудшилось качество, и в случае го варианта следует опираться на число, рассчитанное в калькулято- заметной деградации попробовать наложить фильтры на обрабаты- ре. При двухпроходном кодировании допустим переменный битрейт, ваемое изображение – что, в свою очередь, приведет к увеличению и в данном случае можно осуществить кодирование, ориентируясь времени, требуемого на перекодирование. на размер файла (пункт Two Pass (filesize), но следует учитывать два Особенностью моего фильма является то, что он состоит не из факта. Во-первых, двухпроходное кодирование выполняется сущест- одного сплошного видеоряда, а из нескольких сюжетов, записанных венно дольше; во-вторых, не забывайте, что здесь указывается толь- в отдельные файлы. Поэтому я отобрал три из них, где искажения в ко размер видео-потока, так что истинный размер файла будет боль- результате двойного кодирования были минимальны, и далее пере- ше – на размер аудио-потока, определенный в калькуляторе. кодировал с уменьшением размера уже только эти файлы. Следует заметить, что подобный подход применим не всегда, и уменьшение битрейта на отдельных сюжетах всегда будет давать более заметные искажения, чем уменьшение битрейта для всего Нам потребуются видеопотока. По этому поводу можно дать совет: уменьшение бит- рейта значительно меньше сказывается на сюжетах с относительно Для захвата цифрового видео с MiniDV-камеры, а также для монтажа, статичным изображением, то есть таких, где камера не двигается наложения эффектов на видео и экспорта в формат MPEG2 используется или двигается мало (например, съемка утренника, концерта и т.п.). Kino (http://www.kinodv.org), который полагается на mpeg2enc из пакета Приступим к делу. Во-первых, рассчитаем, какой файл и на mjpegtools (http://mjpeg.sourceforge.net/) в том, что касается кодирова- сколько необходимо уменьшить. В моем случае я решил взять три ния видео. Для создания меню и видео-DVD рекомендую QDVDAuthor фрагмента (сюжета) размером от 600 до 800 МБ и урезал каждый из (http://qdvdauthor.sourceforge.net/), и, наконец, для вспомогательных них на 45 МБ (на самом деле, если 45 умножить на 3, получится 135, целей применяется медиа-редактор Avidemux (http://www.avidemux.org/). а не 120, но лучше иметь некоторый резерв, если вдруг кодирование

80 Linux Format Февраль 2008 Кодирование DVD Учебник

Рис. 3. Измените команду для Другие программы кодирования кодирования видео по своему вкусу. При написании данной статьи использовался исключительно mpeg2enc из пакета mjpegtools. Однако есть и другие, не менее замечательные про- граммы, такие как упоминавшийся здесь ранее ffmpeg или универсальная программа кодирования mencoder из пакета mplayer (http://www. mplayerhq.hu). Они также позволяют кодировать видео в формат MPEG2 и подстраивать различные параметры. В принципе, их также можно исполь- зовать вместе с Kino, переписав команду кодирования видео, достаточно только разобраться с опциями командной строки, прочитав хотя бы man- страницы. Я остановился на mpeg2enc исключительно из-за размера документации по нему. Поскольку мои упражнения в области кодирования видео весьма эпизодичны и ограничиваются узким крутом задач, то разби- раться в преогромнейшей куче параметров ffmpeg или mencoder просто нет никакого желания, тем более, что позже это все забывается.

Строго говоря, при кодировании ffmpeg есть еще одна альтерна- качестве кодировщика используется mpeg2enc из пакета mjpegtools. тива: двухпроходное кодирование с ориентацией на максимальный Сейчас там вписана команда mpeg2enc -v 0, проводящая кодирова- битрейт. Однако она менее предпочтительна, поскольку выигрыша ние с настройками DVD по умолчанию. Чтобы добиться желаемых по времени не даст, зато, скорее всего, даст проигрыш по качеству. результатов, необходимо добавить в эту строку опцию -b n, где Возможно, что в этом случае получится файл меньшего размера, но n – вычисленный ранее битрейт (Рис. 3). При кодировании DVD по это уже совершенно ни к чему. Так что реально следует ориентиро- умолчанию подразумевается использование переменного битрейта, ваться только на первые два варианта. так что опция -b задает максимальное его значение, и итоговый раз- Если в кодируемом видеоролике присутствует много динамичных мер сгенерированного MPEG2-файла не будет превышать требуемо- сцен или постоянно меняется задний план (например, при панорам- го размера. В результате строка в поле Команда кодирования видео ной съемке достопримечательностей и т.п.), для уменьшения време- будет выглядеть так: mpeg2enc -v 0 -b n. Теперь нажмите кнопку ни работы следует выбрать однопроходное кодирование с постоян- Экспорт и получите необходимый результат. Внимание! Программа ным битрейтом; если же преобладают статические сцены (утренник запоминает параметры, указанные в поле Команда кодирования в детсаду и т.п.) – двухпроходное кодирование с ориентацией на видео, и распространяет их действие на все вызовы mpeg2enc, размер файла. При желании можно также настроить видеофильтры, поэтому по завершении кодирования лучше сразу же вернуться к но здесь рекомендации давать сложно, так что действуйте по собс- настройкам по умолчанию, то есть убрать параметр -b n. твенному опыту. В настройках аудиопотока оставьте Копировать, а в качестве контейнера выберите MPEG PS A+V. Теперь можно при- Счастливый финал ступать к перекодировке (Рис. 2). Выбираем Сохранить – и процесс Процесс завершен – можно приступать к генерации нового видео- пошел... DVD, заменив старый MPEG-файл на новый с меньшим размером. Преобразование файлов при помощи mpeg2enc выполняется ана- Причем если перекодированные файлы сохранены с теми же имена- логично, только двухпроходное кодирование ориентируется исклю- ми, что были ранее, то программа генерации DVD QDVDAuthor просто чительно на размер файла. Давать рекомендации по выбору того или не заметит подмены, поскольку ориентируется на позиции в файлах иного кодека сложно. Я лично предпочитаю использовать mpeg2enc, не по размеру, а по времени. LXF поскольку кодирование в медиа-редакторе Kino производилось этой же программой. Если у вас один большой MPEG2-файл с видеофильмом, то прак- тически ничего не меняется, разве что время обработки существенно увеличится, но и результирующее уменьшение битрейта, а следова- тельно и качества видео, будет весьма незначительно.

Случай 2: Когда у вас есть видео Если доступно исходное DV-видео, то вариант с двойным кодиро- ванием применять совершенно незачем. В данном случае будем ориентироваться на полное перекодирование всего фильма с умень- шенным битрейтом. В первую очередь опять следует оценить, каким должно быть изменение битрейта. И здесь нам снова поможет Avidemux. Будем работать с уже сгенерированным видео-DVD. Откройте в Avidemux файл VTS_01_1.VOB и ответьте утвердительно на вопрос «Выглядит как MPEG. Хотите индексировать?» и на вопрос «Здесь несколько mpeg файлов. Хотите объединить?». По завершении про- цесса индексирования снова запустите калькулятор и, действуя так же, как и в предыдущем случае, подберите необходимый битрейт. Теперь мы имеем искомое число. Поскольку производство MPEG- файлов делалось в Kino, то запускаем программу, открываем уже готовый проект и сразу переходим к вкладке Экспорт; выбираем вкладку MPEG. Формат файла – Обычный MPEG2. Раскрываем меню Дополнительно. Выбираем поле Команда кодирования видео. В

Февраль 2008 Linux Format 81 http://lolbook.nnm.ru УчебникImpress OpenOffice.org и Draw Советы, которые помогут вам работать с графикой в OpenOffice.org быстрее и эффективнее

Маленькие секреты

Разлиновать чертежный лист? Создать титры или модель молекулы? Под музыку? Нет ничего проще, если знать, как. Роман Козодаев – знает.

редлагаем вашему вниманию 11 рецептов работы, которые Конечно, вводить размеры всех объектов вручную, с помощью помогут вам пользоваться компонентами Draw и Impress из диалогового окна Положение и размер – удовольствие ниже среднего. П OpenOffice.org (да и всем пакетом в целом) эффективнее. Пойдя этим путем, можно потратить столько времени, что, пожалуй, Часть из них слабо освещена в официальной литературе, а часть не уже не захочется ни новой плитки на полу, ни пристройки... освещена вовсе. Все примеры проверены на практике и работоспосо- Но есть путь намного более простой и удобной – изменение раз- бны в последней на данный момент версии OOo – 2.3.1. меров (и не только) с помощью клавиатуры, а точнее – клавиш со стрелками. 1 Множественный выбор объекта для черчения Как известно, любой объект в Draw и Impress имеет несколько Как известно, чтобы выбрать какой-либо объект для черчения из пане- опорных точек, перемещая которые мышью, можно изменять его ли инструментов Рисование, достаточно нажать на его пиктограмму размер. При нажатии же клавиш со стрелками происходит не изме- всего один раз. Курсор мыши при этом будет показывать, что включен нение размера, а перемещение объекта по чертежу. Чтобы изменять режим рисования; но после создания объекта вы снова перейдете в размер с помощью клавиш, необходимо сначала активировать опор- режим их выбора, и чтобы нарисовать такой же объект еще раз, вам ные точки. Добиться этого можно, выделив объект и нажав сочетание придется снова нажать на его пиктограмму. Если же щелкнуть по пик- клавиш Control+Tab. После этого одна из опорных точек (в большин- тограмме не один, а два раза, то режим рисования выбранного объекта стве случаев – верхняя левая) станет активной и примется как бы будет активен до тех пор, пока не будет нажата клавиша Escape. пульсировать. Теперь, нажав на соответствующую клавишу со стрелкой, можно 2 Создание ломаной из отрезков либо увеличить, либо уменьшить объект в соответствующую сторону. При черчении различных телекоммуникационных, механических и Для активации другой опорной точки нажимайте Control+Tab до тех прочих схем часто возникает ситуация, когда нужно создать ломаную пор, пока очередь не дойдет до нее. Необходимо отметить, что изме- линию, состоящую из отдельных прямых (чтобы иметь возможность няться и перемещаться объект будет с шагом сетки, который задан в задать индивидуальные свойства каждому отрезку). Создавать такие настройках (Сервис > Параметры > Draw > Сетка > Разрешение). схемы, совмещая между собой прямые линии – занятие долгое и тру- Работать с активными опорными точками полезно не только при доемкое. Но есть способ проще: сначала нарисовать ломаную, вос- изменении размера объекта, но также и при изменении его геометрии, пользовавшись инструментом Многоугольник из раскрывающегося когда объект управляется кривыми Безье. Даже более того – работать списка Объекты кривых панели инструментов Рисование, а затем раз- в режиме изменения геометрии возможно только с активными опор- бить ее на составляющие части с помощью команды главного меню ными точками, т.к. чувствительность к движению мыши в этом режиме Изменить > Разрыв. После этого ломаная линия перестает существо- выставлена сверхбольшая (одна секунда!), и точно изменять кривые вать как единый объект, и будет возможно управлять ее составляющи- Безье просто не в человеческих силах. В этом случае единственное ми по отдельности: спасение – управление с помощью клавиатуры. Как уже было сказано, когда объект просто выделен, нажатие на одну из кнопок со стрелками лишь передвигает его на один шаг сетки. К сожалению, в Draw довольно-таки часто возникают ситуации, когда при работе объекты «слетают» с реальной сетки и начинают передви- гаться по «мнимой». Исправить такую ситуацию можно, передвигая объекты с зажатой клавишей Alt с шагом, который зависит от текущего масштаба: если масштаб мал (5%, 10% и т.д.), то объект будет перемещаться на шаг, гораздо больший, чем шаг сетки. Если масштаб велик (200%, 300% и т.д.), то объект будет перемещаться на шаг, гораздо меньший, чем Рис. 1. Исходная ломаная – и разбитая на части. шаг сетки.

3 Точное позиционирование 4 Чертежная сетка из линий Рисуя различные облака, домики, скалы и т.д., можно особо не заду- Чертежная сетка Draw и Impress состоит из рядов точек, но некоторым мываться об их размерах: главное – чтобы они хорошо вписались в людям намного удобнее, когда сетка представлена в виде горизонталь- общую композицию. Совсем другое дело – точное черчение, ведь от ных и вертикальных линий. ошибки величиной всего лишь в пару миллиметров может зависеть Задать сетку из линий средствами OpenOffice.org невозможно, но очень многое. Вдруг в результате этой неточности будет неправильно вполне возможно создать ее самому, и кроме того, расположить ее рассчитано количество плитки на пол или вообще неверно спроекти- не только на чертежном листе, но и за его пределами. Единственное рована пристройка к дому? ограничение – при изменении шага реальной сетки необходимо пере-

82 Linux Format Февраль 2008 OpenOffice.org Учебник

большого дизайна

создавать «пользовательскую». Алгоритм создания сетки из линий Рис. 3. Объекты на чертежном листе: до и после. приведен ниже: 1. Просматриваем текущее разрешение сетки в диалоговом окне настроек Draw и запоминаем его (для примера возьмем 0,1 см по гори- зонтали и вертикали). 2. Переходим в режим фона (Главное меню > Вид > Фон). 3. Если сетка не видна, проявляем ее из контекстного меню страницы (Сетка > Видимая сетка). 4. Рисуем прямую линию от края до края по горизонтали и вертикали на чертежном листе и совмещаем ее с точками реальной сетки. 5. С помощью дублирования Shift+F3 скопируем линии так, чтобы они заполнили все пространство чертежного листа, предварительно рас- считав, сколько понадобится таких линий, т.е. поделив ширину и высо- ту чертежного листа на шаг сетки. В настройках дублирования необхо- димо указать, чтобы смещение дублирования было равно шагу сетки. 6. Убираем реальную сетку (Контекстное меню страницы > Сетка > Видимая сетка). 7. Выходим из режима фона (Главное меню > Вид > Обычный). После выполнения описанных выше действий пользовательская сетка будет выглядеть следующим образом: 6 Эффект титров В завершение практически любой презентации обязательно идет слайд с титрами, на котором отображаются благодарности, рассказывается о создании презентации, даются контактные данные и т.д. К сожалению, эффект титров, имеющийся в Impress, содержит ошибку, поэтому даже при установке очень маленькой скорости движения титры дви- жутся чрезмерно быстро. Статус этой ошибки в Bugzilla – Later, т.е. решение ее в ближайшем (года этак 2-3-4...) будущем не планируется. Исправить ситуацию для объектов пока не представляется воз- можным (по крайней мере, малыми силами), но для текста это вполне реально – достаточно воспользоваться анимированием. Перво-наперво при создании титров необходимо нарисовать тек- стовый объект, по высоте превосходящий высоту слайда. Это позво- лит словам появляться из-за нижней границы, а не возникать сразу посередине слайда. Затем нужно ввести текст титров и установить его Рис. 2. Сетка из линий. атрибуты – размер шрифта, цвет и т.д. После этого можно перейти к настройкам анимации, которые находятся на вкладке Анимация текст Теперь при создании нового листа на нем автоматически будет диалогового окна Текст, вызываемого из контекстного меню текстово- появляться сетка, которая была нами создана. Это достигается благо- го блока при нажатии на пункт Текст. даря тому, что сетка рисовалась в режиме фона. Наилучшее отображение титров будет при выставлении следующих Если необходимо, чтобы сетка была не только на чертежном лис- параметров: те, но и за его пределами, просто не ограничивайте ее вертикальные и Эффекты анимации текста: горизонтальные линии. Эффект – непрерывно бегущая; Направление – вверх. Свойства: 5 Собираем все объекты на чертежном листе Запуск изнутри – нет; Показывать текст при выходе – нет; Циклы Интересного эффекта можно добиться, если перетащить предпро- анимации – бесконечно; Шаг – 1 пиксель; Задержка – автоматически. смотр страницы из панели Страницы на главное поле чертежа. При этом создается копия текущего листа, но все объекты, которые исход- 7 Музыкальное сопровождение но были за пространством чертежного листа, на новом оказываются в Одним из самых огорчительных фактов в работе редактора пре- пределах его границ. зентаций является невозможность непрерывного автоматического сопровождения слайдов музыкой на протяжении всей демонстрации.

Февраль 2008 Linux Format 8 3 http://lolbook.nnm.ru Учебник OpenOffice.org

Разработчики обещали исправить это в версии 2.3, но сделали все как- Фон – это простой прямоугольник, к которому применена гради- то очень «по-особенному», лишив нас возможности комбинировать ентная заливка. Текстовые фразы («Меню управления презентацией», прослушивание музыки и звуков с мелодиями на отдельных слайдах. «Перейти на первый слайд» и т.д.) – это текстовые блоки с текстом, к Предлагаемый ниже способ обхода этого прискорбного фак- которому применено форматирование, т.е. установлен цвет, шрифт и та, конечно, не идеален, но действенен, хотя его почему-то мало кто другие параметры. использует. Стрелки и крестик – это векторные объекты, которые были нарисо- В OpenOffice.org есть свой простенький мультимедиа-проигры- ваны с помощью панели инструментов Рисование из доступных прими- ватель, обеспечивающий воспроизведение музыкальных файлов, не тивов. К ним была применена разная заливка, чтобы лучше разделить прибегая к помощи проигрывателя, установленного в системе – ведь их и показать функции, которые они выполняют. зачастую нет возможности «полазать» по ней и открыть нужный К стрелке «Перейти на первый слайд» было добавлено действие файл. по щелчку мыши – Перейти к первому слайду, к стрелке «Перейти Для сопровождения демонстрации музыкой необходимо запустить на предыдущий слайд» – действие Перейти на предыдущий слайд. медиапроигрыватель (Главное меню > Сервис > Медиапроигрыватель) Аналогично было сделано и для остальных кнопок. перед началом демонстрации и выбрать нужную мелодию. Чтобы меню управления презентацией оказалось не на одном слай- При вставке звука и видео следует иметь в виду, что в файл *.odp де, а автоматически появлялось на всех тех, что создаются в данной вставляется лишь ссылка на файлы звука и видео, а сами они остаются презентации, необходимо скопировать его в буфер обмена и, перей- там, где были, т.е. никакой интеграции видео и звука в структуру файла дя в режим Мастера слайдов (Главное меню > Вид > Мастер > Мастер не происходит. Поэтому при показе презентации на другом компьюте- слайдов), вставить на то же самое место. Создавать меню можно сра- ре звук и видео воспроизводиться не будут. Чтобы обойти это ограни- зу в режиме Мастера слайдов, но это не очень удобно, так как в этом чение, нужно создать отдельную папку, разместить в ней файл пре- режиме на слайде появляется много другой информации, затрудняю- зентации и файлы мультимедиа, а затем использовать относительные щей работу с объектами. пути. При копировании презентации переносить нужно папку со всем Приведенный выше пример – лишь простейшая реализация воз- содержимым, а не только ODP-файл. Тогда можно будет не волно- можностей по созданию интерактивной презентации. Комбинируя ваться, что созданная на одном компьютере презентация неправильно функции Impress и Draw (меняя форму объекта, создавая анимиро- проигрывается на другом. ванные изображения, используя анимированный текст и т.д.), а так- же макросы, можно осуществлять куда более сложные действия, чем 8 Меню управления презентацией описанные выше. В Impress, как и в любом редакторе презентаций, есть возможность задавать «действия по щелчку мышью», т.е. определять, что произой- 9 Трехмерная сцена дет, если кликнуть на каком-либо объекте. Это позволяет создавать При создании художественных рисунков для украшения часто приме- интерактивные презентации, отвечающие на действия пользователя. няются трехмерные объекты и группы трехмерных объектов, но очень Чтобы добавить к объекту действие, необходимо щелкнуть на нем редко – трехмерные сцены. Просто потому, что очень мало кто о них правой клавишей мыши и в контекстном меню выбрать Действие знает. А ведь именно трехмерные сцены позволяют добиться эффек- по щелчку мыши. Один из примеров такой презентации мы сейчас тов, которые просто невозможно создать, используя обычную группи- рассмотрим. ровку и простые объекты. Пусть необходимо создать простенькое меню управления презен- Для перехода в режим построения трехмерной сцены необходимо тацией со стандартными действиями: переходом между соседними создать любой трехмерный объект, щелкнуть на нем правой клавишей слайдами, остановкой презентации и переходом на первый и послед- мыши и из появившегося контекстного меню выбрать Вход в группу. ний слайды. Для этого прямо на слайде рисуются элементы меню. Их После этого можно будет работать именно со сценой, а не с отдельны- возможный внешний вид приведен на рисунке: ми объектами. Если при обычной работе каждый 3D-объект находится на опре- деленном уровне (один выше, другой ниже и т.д.), то при работе в сцене все объекты находятся на одном уровне; за счет этого стало возможным их пересечение друг с другом. Отметим, что 2D-объекты в трехмерной сцене использовать нельзя. К примеру, использование трехмерной сцены позволяет создать вот такую «молекулу», где «ато- мы» прикреплены друг к другу. Обратите внимание на ту же «молеку- лу» справа, которая выполнена не в виде трехмерной сцены, а в виде простой группы:

Рис. 6. Объекты в трехмерной сцене (слева) и сгруппированные объекты.

10 Анимированные объекты Рис. 5. Слайд с меню управления презентацией. Многие дизайнеры при оформлении работ пользуются двумя очень интересными инструментами Draw – морфингом и дублированием, но

84 Linux Format Февраль 2008 OpenOffice.org Учебник

почему-то очень немногие сочетают эти инструменты с аниматором, который доступен в Impress. А ведь такое сочетание позволяет добить- ся потрясающе красивого результата! Напомним, что морфинг преоб- разует один объект в другой, а дублирование создает несколько копий исходного объекта. И морфинг, и дублирование поддаются настройке, позволяя менять параметры операций. Проморфируем синюю луну в красное сердечко из панели инстру- ментов Рисование в Draw и вставим результат в Impress. Так как результат морфинга всегда сгруппирован, сначала разгруппируем его, чтобы аниматор не вставил его как один объект в один кадр. Запустим аниматор (Вставить > Анимированное изображение) и добавим полу- чившиеся изображения как разные кадры, нажав соответствующую кнопку (Принять объекты по одному, Группа анимации > Растровый объект). В результате получится анимированное изображение, которое показывает, как синяя луна переходит в красное сердечко. Чтобы изме- Рис. 9. Векторная основа трехмерных эффектов. нение проходило более плавно, необходимо указать в настройках мор- финга большее количество шагов. По умолчанию оно равно 16: бутивах. Но многие ли знают, как работает, к примеру, функция изгиба- ния окон, или – на чем она основана? А ведь увидеть основу эффекта можно в любимом офисном пакете! Нарисуем обычный прямоугольник, выделим его, откроем пикто- грамму-список Эффекты на панели инструментов Рисование и нажмем на кнопку-пиктограмму Искажение. Ответив согласием на предло- жение преобразовать объект в кривую, подведем указатель мыши к одной из опорных точек (он примет вид руки с вытянутым указатель- ным пальцем) и потянем ее в сторону. Не правда ли, где-то вы это уже видели? LXF

Рис. 7. Результат морфинга и анимированное изображение.

Если морфинг позволяет создавать превращение одного объек- та в другой, то дублирование может создавать движущиеся объекты. Нарисуем 3D-куб и продублируем его (Правка > Дублировать или Shift+F3) со следующими настройками: число копий – 361, смещение по осям – 0 см, угол поворота – 1 градус, увеличение – 0, цвета по умолчанию. В результате мы получим 362 трехмерных куба, и каж- дый из них будет повернут относительно предыдущего на 1 градус. Анимировав эти объекты, мы получим эффект движения вокруг оси:

Рис. 8. Слева направо: Трехмерный куб, 362 копии куба, развернутые на 1 градус, анимированный куб.

Поиграв настройками дублирования и морфинга, можно получить куда более интересный результат, чем рассмотренный здесь. Также не стоит забывать, что анимации поддаются различные объекты, ком- бинируя которые, можно получить намного более захватывающие эффекты, чем те, что приведены выше, но для этого нужно иметь как минимум 1 ГБ оперативной памяти и мощный процессор. Получившуюся анимацию можно сохранять не только в презента- циях, но и в текстовых документах, таблицах, рисунках. Это помогает сделать их более красочными.

11 Compiz? Или все-таки Fusion? Наверное, каждый, если не использует постоянно, то хотя бы пробовал включать трехмерные эффекты рабочего стола в современных дистри-

Февраль 2008 Linux Format 8 5 УчебникНовая Qt4 серия! Осваиваем технологии, лежащие в основе нашумевшего KDE4 Интервью

с троллем

вы уже пишете программы под Qt 4.x? Хотя на рабочих столах Linux все еще господствует KDE 3.x, а следова- А тельно, и Qt 3.x, все новые версии дистрибутивов Linux поставляются также и с Qt 4.x, причем во многих из них по умолчанию используются именно инструменты Qt четвертой версии. К этому следует добавить, что и переход на KDE 4 – дело ближайшего будущего, а значит, если вы еще не портировали свою программу, использующую Qt3, на новую версию, самое время заняться этим сейчас. Если же вы только собираетесь создавать Qt-про- ЧАСТЬ 1 Qt4 ект, Qt 3.x не стоит даже рассматривать. предоставляет В общем и целом можно сказать, что по срав- нению с предыдущей версией система Qt4 улуч- в распоряжение шилась, обогатилась возможностями и усложни- программиста целый букет лась. Давно прошли те времена, когда вся Qt умеща- лась в одной-единственной разделяемой библиотеке. Что нововведений – но Андрей касается системы Qt4, то ее основные классы вольготно распо- Боровский решил начать с ложились в 12 библиотеках (тринадцатая библиотека, libQt3Support. so, предназначена для поддержки кода Qt3.x в тех случаях, когда того, перенос кода на новую версию представляется совсем уж труд- что не сразу бросается ным делом). Мы надеемся, что программисты Linux, привык- шие управлять демонами и убивать зомби, люди не суеверные, в глаза. и число 13 их не испугает. Заголовочные файлы Qt4 также умножились в числе и распределены теперь по нескольким поддиректориям. Впрочем, как мы увидим дальше, управ- лять всем этим «зверинцем» не так уж и трудно.

Дела лицензионные Знакомство с Qt4 мы начнем с На DVD вопросов лицензирования, которые мно- гим, возможно, покажутся слишком скучными. Исходные тексты Qt 4.3 Код примеров статьи В Qt4 наконец-то реализована полноценная схема двойного лицензирования для всех плат- форм (Windows, X11 и Mac), причем открытый вариант Qt распространяется на условиях GPL 2.0 [во время подготовки этой статьи к печати появилось сообщение, что Trolltech перевела Qt на GPLv3, см. Новости, – прим. ред.]. Сами представители Qt именуют свой подход «Quid Pro Quo», что в вольном переводе с древней латыни означает «баш на баш» ['qui pro quo' – лат. путаница, букв. «кто за кого», а англ. 'quid' в раз-

86 Linux Format Февраль 2008 Qt4 Учебник

говоре означает «фунт» (стерлингов)]. Если вы хотите пользоваться ная идея разделения «движка» программы и интерфейса. В рамках «Системные средствами Qt бесплатно, взамен вы должны предоставить сообществу парадигмы «модель-контроллер-вид» (подробно описанной в много- требования» свой код (открытая модель). Если вы не желаете делиться кодом, вы численной литературе по «правильному» программированию) модель должны заплатить деньги (своего рода «выкуп», который, естественно, представляет собой, по сути, «движок» приложения. Именно модель Настоящая серия будет потрачен на дальнейшее совершенствование Qt). определяет, что и как может делать программа. Термином «вид» (пред- учебников ориенти- Интересно отметить, что лицензионная политика Qt не позволяет ставление) фактически описывается все, что имеет непосредственное рована на читателей, знакомых с Qt3, лицензиатам применять тот же принцип двойного лицензирования к отношение к интерфейсу пользователя. Вид позволяет пользователю но даже если вы своим продуктам. Если вы ведете разработку с помощью Qt, ваш про- получать информацию о состоянии модели и передавать программе только начинаете ект должен быть либо открытым на условиях GPL, либо коммерческим. команды. Команды пользователя обрабатывает контроллер, который программировать То есть, вам, конечно, никто не мешает раздавать ваш код бесплатно, вносит соответствующие изменения в состояние модели или вида и, с Qt, не расстраивай- но если это делается не на основе GPL, то для разработки этого кода в частности, не позволяет пользователю нарушить целостность моде- тесь – мы публико- вали учебник по Qt3/ необходимо использовать (и, естественно, оплатить) коммерческую ли в результате введения неправильных команд. Как и многие другие KDE3 в номерах – версию Qt [возможны исключения; полный список свободных лицен- парадигмы, призванные формализовать процесс создания программ, LXF78-85. зий, по которым может распространяться программа, скомпонованная парадигма «модель-контроллер-вид» редко применяется на практике с Qt, можно найти на сайте компании, – прим. ред.]. У открытой версии в чистом виде. В частности, отдельные элементы парадигмы нередко Qt для Windows есть одна неприятная особенность: согласно намерени- объединяются друг с другом. Система Interview превращает парадиг- ям разработчиков, ее можно использовать только совместно со средой му «модель-контроллер-вид» в парадигму «модель-вид», объединяя компиляции MinGW, которая нравится не всем (мне, например, не нра- контроллер и вид в одно целое. Хотя парадигма «модель-контроллер- вится). Чтобы работать с MS Visual Studio (а это все-таки лучшая плат- вид» (а, следовательно, и Interview) может применяться при написании форма разработки для Windows), придется заплатить за коммерческую множества типов программ, разработчики Interview, судя по всему, версию Qt. Причины такого ограничения непонятны, и упомянутый ориентировались в основном на создание клиентских приложений для выше принцип quid pro quo здесь не срабатывает, поскольку даже сама работы с базами данных. Именно на примере клиентского приложения Microsoft распространяет бесплатный вариант Visual Studio Express БД проще всего понять, как работает среда Interview. В клиентском Edition. Кроме того, по сведениям, полученным с различных фору- приложении БД, использующем Interview, модель играет роль посред- мов, после небольшой «обработки напильником» открытую Qt4 мож- ника между БД и интерфейсом пользователя. Именно модель опреде- но заставить работать с компиляторами С++ от Microsoft и CodeGear, ляет логику представления данных. Когда пользователь хочет получить предназначенными для командной строки. По моему мнению, ограни- информацию о текущем состоянии БД, пользовательский интерфейс чив поддержку компиляторов для открытой версии Qt, разработчики (компонент «вид») обращается к модели напрямую. Для работы с из TrollTech сделали глупость, которая, я надеюсь, будет исправлена в отдельными элементами данных служат делегаты, которые передают дальнейших релизах Qt4.x. команды пользователя модели. А что же внутри? Играем в классики Перейдем теперь к техническим новшествам Qt4. Похоже, старым доб- Переходя от абстрактного изложения принципов системы Interview к рым контейнерам STL так и не суждено стать настоящим стандартом. изложению более конкретному, мы должны познакомиться (прости- У каждого набора визуальных компонентов, основанного на C++, есть те за каламбур) с тремя абстрактными классами QAbstractItemModel, свой набор контейнеров (что, вообще говоря, не очень хорошо, так как QAbstractItemView и QAbstractItemDelegate. Они являются предками делает невизуальный код, который особенно часто использует абстрак- всех классов, реализующих, соответственно, модели, представления тные типы данных, труднопереносимым между разными платформами (виды) и делегаты. Классы QtableView, QtreeView и QListView реализу- разработки). ют три наиболее популярные формы представления данных: таблицу, В Qt4 появилась система контейнеров Tulip (тюльпан), призванная дерево и простой список. Если вам требуется более сложный компо- заменить старые контейнеры Qt3. Tulip предоставляет в наше распо- нент отображения модели, вам придется создавать собственный класс, ряжение стандартный набор контейнеров последовательного доступа основанный на QAbstractItemView. (список, связный список, очередь, вектор, стек) и несколько ассо- Класс QStandardItemModel, являющийся потомком циативных контейнеров: отображения (классы QMap и QMultiMap), QAbstractItemModel, представляет собой реализацию модели в самом хэш-таблицы (классы QHash и QMultiHash) и множество (класс QSet). общем смысле. Помимо прочего, этот класс реализует ряд методов, Теоретически разница между классами QMap и QMultiMap и классами предназначенных для работы с индексами. Индексы используются в QHash и QMultiHash заключается в том, что первый класс из каждой среде Interview для указания элементов данных, с которыми работает пары позволяет связать с ключом только одно значение, тогда как модель. Класс QDirModel реализует модель для работы с директория- второй класс позволяет назначать несколько значений одному клю- ми. Этот класс пригодится вам, если вы надумаете писать собственный чу. Напомню, что в ассоциативных контейнерах хранимым значениям файл-менеджер или свою версию диалоговых окон открытия и сохра- сопоставляются ключи, которые позволяют организовать произволь- нения файла. Следует отметить, что один и тот же объект, реализую- ный доступ к данным контейнера. щий модель, может взаимодействовать (в том числе, одновременно) Разделение классов QHash и QMultiHash вызывает некоторые с объектами нескольких разных классов, отвечающими за представ- вопросы. При использовании хэш-таблиц нередко возникают коллизии ление данных. Например, уже упомянутый класс QDirModel может (когда двум хранимым значениям соответствует один и тот же ключ). использовать для представления информации о директориях классы Придумать хэш-функцию, которая бы гарантированно не вызывала QtableView, QtreeView, и QListView. Класс QStringListModel, как можно коллизий, очень трудно (обычно просто нереально). Фактически, воз- догадаться по его названию, реализует модель, основой которой явля- можность связывать несколько значений с одним ключом является ется список строк. неотъемлемым свойством хэш-таблиц. Разработчики контейнеров Qt, Классы QAbstractTableModel и QAbstractListModel могут служить разумеется, об этом знают, и в классе QHash реализована возможность основой для ваших собственных классов-моделей, предполагающих добавления нескольких значений с одним и тем же ключом. В резуль- представление данных в виде таблиц и списков соответственно. тате различие между контейнерами QHash и QMultiHash (второй, кстати, Такие классы, как QtreeView и QListView, предназначены для рабо- является потомком первого) выглядит скорее косметическим. ты с моделями, но использовать их в качестве самостоятельных вид- Еще одно новшество Qt4 – среда Interview. Система Interview жетов затруднительно. Для решения этой проблемы на базе клас- Framework представляет собой вариант реализации парадигмы сов QtableView, QtreeView и QListView созданы классы QtableWidget, «модель-контроллер–вид». В ее основе лежит старая и плодотвор- QtreeWidget и QListWidget. Объекты этих классов представляют собой

Февраль 2008 Linux Format 8 7 http://lolbook.nnm.ru Учебник Qt4

обычные визуальные компоненты, при работе с которыми пользо- db.setUserName(“user”); ватель может добавлять и удалять данные, не заботясь о моделях и db.setPassword(“password”); делегатах. На самом деле, эти классы просто реализуют свои соб- if (!db.open()) ственные модели данных, незаметные для пользователя. Как видим, { система Interview играет в Qt большую роль, чем может показаться на qDebug() << QObject::trUtf8(“Не смогла я открыть первый взгляд! базу данных”) << db.lastError().text(); return -1; Клиент на базе } Как отмечалось выше, наиболее удобное средство демонстрации возможностей Interview – клиентские приложения баз данных. Такое QSqlQueryModel * model = new QSqlQueryModel(0); приложение мы и напишем. Прежде всего, рассмотрим арсенал спе- model->setQuery(“SELECT * FROM music”); циальных классов, которые среда Interview предоставляет нам для model->setHeaderData(0, Qt::Horizontal, QObject:: работы с базами данных. Их три: QSqlQueryModel, QSqlTableModel и trUtf8(“Автор”)); QsqlRelationalTableModel, причем QSqlQueryModel – самый простой. model->setHeaderData(1, Qt::Horizontal, QObject:: Его возможности, фактически, ограничиваются передачей результата trUtf8(“Альбом”)); запроса к базе данных. При этом, правда, стоит отметить, что класс model->setHeaderData(2, Qt::Horizontal, QObject:: QSqlQueryModel обладает определенными возможностями, позволяю- trUtf8(“Произведение”)); щими изменить структуру отображения данных перед передачей ее на model->setHeaderData(3, Qt::Horizontal, QObject::trUtf8(“Год уровень представления. Класс QSqlTableModel гораздо функциональ- выхода”)); нее. Этот класс логически организует результаты SQL-запросов как таблицы и предусматривает функции редактирования данных. Наконец, QTableView * view = new QTableView(0); класс QSqlRelationalTableModel позволяет задействовать в приложении view->setModel(model); основные возможности реляционной модели баз данных – работу с view->setWindowTitle(QObject::trUtf8(“Музыкальный данными из нескольких таблиц, связанных внешними ключами. Для каталог”)); представления данных моделей SQL наиболее логично использовать view->show(); объекты класса QtableView (хотя унифицированная структура среды Interview позволяет использовать совместно с SQL-моделями и другие return app.exec(); стандартные «виды», они, как правило, менее удобны или информа- } тивны при работе с данными БД). Исходный текст программы начинается, естественно, с заголо- Для нашего первого приложения Interview (и Qt4!) воспользуемся вочных файлов. Первым следует , он содержит полезные самой простой SQL-моделью QSqlQueryModel. Мы создадим програм- средства для вывода отладочных сообщений. Вследствие некоторых му, позволяющую просматривать некий каталог музыкальных произ- особенностей структуры заголовочных файлов Qt4.x, если вы реши- ведений (на самом деле – крошечный фрагмент моего музыкального ли включить в текст программы этот файл, вы должны включить его каталога). Для нашего приложения БД нам понадобится база данных, прежде всех других заголовочных файлов. Нарушение этого правила содержащая хотя бы одну таблицу. При написании программы для приводит к тому, что при определенном сочетании версий Qt4.x, набора примера я воспользовался СУБД PostrgeSQL, которая присутствует в используемых заголовочных файлов и фазы Луны компилятор начина- любом дистрибутиве Linux. Если захотите, вы сможете адаптировать ет выдавать довольно странные сообщения об ошибках. Далее следует этот пример к любой другой СУБД. заголовочный файл . Этот файл содержит объявления классов Для любителей точных инструкций, привожу последовательность и функций, реализованных в двух базовых модулях Qt – QtCore и QtGui. действий по созданию базы данных testdb. Настройте и запустите Включив этот файл в текст нашей программы, мы избавляем себя от сервер PostrgeSQL на вашем компьютере (см. LXF85). Далее скоман- необходимости добавлять по отдельности заголовочные файлы для дуйте таких классов, как QApplication. Файл содержит объ- createdb testdb явление класса QSqlDatabase, который мы используем для создания войдите в консольный клиент PostgreSQL: соединения с сервером БД. Мы включаем в текст программы опреде- psql testdb ления классов QSqlQueryModel и QtableView. и скомандуйте Нашей первой задачей, как всегда, является создание объекта клас- \i createtable.sql са QApplication. Затем мы создаем соединение с сервером баз дан- Файл createtable.sql вы найдете на прилагаемом диске. Теперь ных. Объект QSqlDatabase, инкапсулирующий соединение с сервером, можете выйти из клиента с помощью команды \q. создается с помощью статического метода QSqlDatabase::addDatabase() Перейдем теперь собственно к программе. Ее исходный текст неве- Этот метод существует в нескольких вариантах, каждому из которых лик и состоит всего лишь из одного файла, поэтому я приведу его пол- при вызове можно передать несколько аргументов. Мы передаем ностью (вы, конечно, можете найти код на диске, в файле main.cpp). методу addDatabase() один аргумент (значения остальных заданы по #include умолчанию), представляющий собой имя драйвера СУБД. Поскольку я #include воспользовался PostgreSQL, в программе указывается драйвер QPSQL. #include Если вы захотите использовать MySQL, вам понадобится драйвер #include QMYSQL. По умолчанию драйверы скомпилированы в виде отдельных #include модулей, но если хотите, можете встроить код драйвера в свое прило- #include жение. Для этого вам понадобятся исходные тексты Qt. Исходные тек- сты всех драйверов вы найдете в поддиректориях директории QTDIR/ int main(int argc, char *argv[]) src/sql/drivers/. { Теперь, когда у нас есть объект db класса QSqlDatabase, реализую- QApplication app(argc, argv); щий соединение с сервером БД, мы должны настроить это соединение. С помощью соответствующих методов объекта db мы указываем име- QSqlDatabase db = QSqlDatabase::addDatabase(“QPSQL”); на узла, базы данных, имя пользователя и его пароль (если вы созда- db.setHostName(“localhost”); вали базу данных так, как описано выше, имя пользователя и пароль db.setDatabaseName(“testdb”); для доступа к ней совпадают с именем пользователя и паролем вашей

88 Linux Format Февраль 2008 Qt4 Учебник

учетной записи Linux). Настроенное соединение открывается с помо- нам необходимо «доработать» содержимое созданного файла .pro. щью метода open(). Этот метод возвращает значение типа bool, кото- Как уже отмечалось, различные компоненты Qt расположены в разных рое указывает, удалось ли установить соединение с сервером БД. Если файлах библиотек, а заголовочные файлы – в разных директориях. К open() возвращает false, наша программа выводит жалобное сообще- сожалению, сама утилита qmake не может определить, какие модули ние, затем более подробное описание ошибки (с помощью метода Qt использует наша программа, и придется указать их явным образом. db.lastError().text()), и завершает работу. Впрочем, сделать это несложно. Добавим в файл .pro строку Успешно установив соединение с БД, мы можем приступить к QT += sql созданию модели (объект model класса QSqlQueryModel). Главным Таким образом мы указываем, что нашей программе потребуется методом объекта QSqlQueryModel является метод setQuery(), который модуль QtSql. В результате в создаваемый make-файл будут включе- позволяет указать текст SQL-запроса с БД. В нашем примере запрос ны директивы, подключающие к проекту необходимые библиотеки выбирает все данные из таблицы music. Внимательно глядя на этот код, и указывающие расположение заголовочных файлов, необходимых вы можете спросить: а откуда объект model узнает, из какой базы дан- для работы с базами данных. Мы могли бы подключить компоненты ных, иначе говоря, из какого объекта QSqlDatabase, он должен получить модуля SQL и «вручную». Для этого в файл .pro надо было бы доба- данные? Ответ на этот вопрос прост. При вызове статического метода вить строку addDatabase(), которым был создан объект db, мы могли бы указать LIBS += -lQtSql уникальное имя соединения. Поскольку мы этого не сделали, создан- которая трансформировалась бы в make-файле в директиву компо- ное нами соединение с БД стало соединением по умолчанию (вполне новщика на связывание проекта с разделяемой библиотекой libQtSql. логично: ведь наша программа использует только одну базу данных). so. Заголовочные файлы модуля QtSql расположены по умолчанию Получить объект, реализующий соединение по умолчанию, можно с в директории /usr/include/QtSql/. Если бы мы делали все вручную, помощью статического метода QSqlDatabase::database(), вызванного нам бы следовало либо добавить эту директорию в переменную без параметров. Именно так метод setQuery() объекта model опреде- INCLUDEPATH файла .pro, либо заменить в исходных текстах програм- ляет нужное соединение с БД. Если бы мы работали с несколькими мы директивы типа соединениями, мы могли бы воспользоваться перегруженным вари- #include антом метода setQuery(), которому помимо текста запроса передается на ссылка на объект QSqlDatabase. #include Метод setHeaderData(), который мы далее вызываем, позволя- Как видите, добавление модуля sql в переменную Qt избавило нас от ет назначить произвольные заголовки столбцам таблицы. Это один многих хлопот. Теперь наша программа готова к сборке. Командуем: из немногих «косметических» методов, с помощью которых модель qmake QSqlQueryModel может внести свою лепту в обработку данных (еще make один метод – removeColumns() – позволяет сделать невидимыми В результате получаем простенькую программу просмотра содер- отдельные столбцы таблицы). Мы используем метод setHeaderData() жимого таблицы БД (Рис. 1). для присвоения русских названий столбцам таблицы. Теперь мы переходим к созданию вида (объект view). Метод То ли еще будет setModel() связывает вид с моделью, а метод setWindowTitle() уста- Система Qt4 подготовила для нас много нового. В следующей статье навливает заголовок окна. Нам остается вызывать метод show(), что- мы продолжим знакомство со средой Interview и созданными на ее бы сделать вид действительно видимым, и запустить цикл обработки основе компонентами, а также рассмотрим новые вспомогательные сообщений приложения Qt. средства разработчика Qt. LXF Процедура сборки приложения выглядит несколько сложнее, чем в стандартном случае. После того как мы скомандовали qmake -project, Рис. 1. Программа для просмотра музыкального каталога.

Через месяц Еще об Interview плюс арсенал разработчика от Trolltech.

Февраль 2008 Linux Format 8 9 http://lolbook.nnm.ru УчебникR Свободный Анализ данных инструментарий с R для статистической обработки данных Данные и графики ЧАСТЬ 2 Анализ «хороших» данных – это просто. А вот чтобы сделать ваши данные «хорошими», а затем и представить их – придётся попотеть. К счастью, Алексей Шипунов и Евгений Балдин знают, как облагородить невзрачные столбцы чисел.

> dir() Нашы эксперты [1] “mydata.txt” Вот теперь можно и загрузить данные. За чтение табличных тексто- Алексей Шипунов Евгений Балдин вых данных отвечает команда read.table(): Биолог, преподаватель, Физик, преподава- > read.table(“mydata.txt”, sep=”;”, head=TRUE) сотрудник американс- тель, научный сотруд- а б в кого университета ник ИЯФ им. Будкера, 1 1 2 3 Айдахо, использующий профессионально R для обработки занимается обработ- 2 4 5 6 информации во всех кой эксперименталь- 3 7 8 9 своих проектах, начи- ных данных в области Все очень просто, за исключением того, что перед чтением нужно ная с 2001 года. физики высоких знать, в каком формате хранятся данные – а именно, что у столбцов Русский переводчик R. энергий. Давний сто- есть имена (head=TRUE) и что разделителем является точка с запятой ронник свободного ПО, впечатлённый (sep=”;”). Функция read.table() очень хороша, но не настолько умна, что- мощью R. бы определять формат данных на лету. Чтобы просмотреть содержимое файла, не выходя из R, можно воспользоваться функцией file.show(): > file.show(“mydata.txt”) одготовка данных к работе – одна из самых больших проблем а;б;в для новичка в R. Сама по себе обработка данных подробно 1;2;3 Пописана в разных руководствах и пособиях, а вот информация, 4;5;6 как добиться того, чтобы R прочитал приготовленные в другой про- 7;8;9 грамме данные, как правило, опускается. Почему – вполне очевидно: Многие команды R, включая и read.table(), имеют для аргумен- входные данные могут иметь слишком разный формат, чтобы написать тов значения по умолчанию. Например, значение sep по умолчанию по этому вопросу исчерпывающее и компактное руководство. равно “”. В данном случае это означает, что разделителем является любое количество пробелов или знаков табуляции, поэтому если дан- R и работа с данными ные вместо точек с запятыми разделены пробельными символами, Данные можно представить в текстовом или в двоичном виде. Не вда- то аргумент sep можно не указывать. Естественно, бывает безумное ваясь в детали, примем, что текстовые данные – это те, которые мож- множество различных частных случаев, и сколько бы усилий ни было но прочитать и отредактировать в текстовом редакторе (Emacs/Vi и приложено, все не описать. Отметим, однако, еще несколько важных прочее). Чтобы отредактировать двоичные данные, как правило, нужна моментов: программа, которая эти данные произвела. 1 Файлы можно загружать и из других директорий, при этом можно Текстовые данные для статистической обработки – это текстовые использовать относительную адресацию: таблицы, где каждая строка соответствует строчке таблицы, а колонки > read.table(“../workdir/mydata.txt”) определяются при помощи разделителей. Обычно в качестве раздели- 2 Русский текст в файлах читается без проблем, если он набран телей текстовых данных используются пробельные символы (пробел, в кодировке, совпадающей с текущей локалью. Пусть локаль – ru_ табуляция и тому подобное), запятые или точки с запятой. RU.KOI8-R, а сам файл закодирован в UTF-8; тогда при его чтении сле- Первое, что надо сделать перед чтением данных – это убедиться, что дует воспользоваться функцией file(): текущая директория в R и та директория, где находятся данные, есть > read.table( одно и то же. Для этого в запущенной сессии R надо ввести команду: + file(“mydata-unicode.txt”, encoding=”UTF-8”), > getwd() + sep=”;”, head=TRUE) [1] “/home/username/” а б в Пусть это вовсе не та директория, в которой лежат данные. Тогда 1 1 2 3 поменять ее можно командой: 2 4 5 6 > setwd(“./workdir”) 3 7 8 9 > getwd() Иногда нужно, чтобы R прочитал, кроме имен столбцов, еще и имена [1] “/home/username/workdir” строк. В этом случае в первой строке должно быть на одну колонку мень- Как обычно, развернутую справку можно получить с помощью ше, чем в теле таблицы (в данном примере – три вместо четырех): вызова help(getwd). > file.show(“mydata2.txt”) Далее следует проверить, есть ли в текущей директории нужный а б в файл: раз 1 2 3

Месяц назад Мы узнали, что такое R, и выяснили, чем этот язык может быть полезен.

90 Linux Format Февраль 2008 Анализ данных с R Учебник

два 4 5 6 > rm(x) три 7 8 9 > x > read.table(“mydata2.txt”, head=TRUE) Ошибка: объект “x” не найден а б в > dir() раз 1 2 3 [1] “x.rd” два 4 5 6 > load(“x.rd”) три 7 8 9 > x 3 По отечественным правилам, в качестве десятичного разделителя [1] “яблоко” нужно использовать запятую, а не точку. Если кто-то при подготовке Для сохранения и загрузки двоичных файлов служат команды исходных данных этим правилам последовал, то необходимо перео- save() и load(), для создания объекта – <-, а для удаления – rm(). пределить аргумент dec: Для R написано множество интерфейсов к базам данных, в частно- > read.table(“mydata3.txt”, dec=”,”, h=T) сти, для MySQL, PostgresSQL и SQLite (последний может вызываться а б в прямо из R, см. пакеты RSQLite и sqldf). раз 1.1 2.2 3.3 Наконец, R сам может записывать таблицы и другие результаты два 4.4 5.0 6.0 обработки данных, и, разумеется, графики. Об этом мы и поговорим три 7.0 8.0 9.0 ниже. Обратите внимание на сокращенное обозначение аргумента и его значения (h=T). Сокращать можно и нужно, но с осторожностью, поэто- Графики му в тексте мы всегда будем использовать TRUE/FALSE. Несмотря на то, что «настоящие» статистики часто относятся к гра- В целом, с текстовыми таблицами больших проблем не возникает. фикам почти с презрением, для «широких масс» одним из основных Разные экзотические текстовые форматы, как правило, можно пре- достоинств R служит именно удивительное разнообразие типов гра- образовать к «типичным» если не с помощью R, то с помощью каких- фиков, которые он умеет строить. R в этом смысле – один из рекорд- нибудь многочисленнейших текстовых утилит (вплоть до «тяжелове- сменов. В базовом наборе есть несколько десятков типов графиков, сов» типа языка Perl). А вот с «посторонними» двоичными форматами еще больше в рекомендуемом пакете lattice, и, естественно, намного дело обстоит гораздо хуже. Здесь, прежде всего, возникают проблемы, больше в пакетах с CRAN. По оценочным прикидкам получается, что связанные с полностью закрытыми форматами, например, такими, разнообразных типов графиков в R никак не меньше тысячи. При как формат популярной в определенных кругах электронной таблицы этом они еще и достаточно хорошо настраиваются, то есть пользова- Microsoft Excel. Вообще говоря, ответ на вопрос: «Как прочитать двоич- тель при желании может легко разнообразить эту исходную тысячу на ный формат в R?» часто сводится к совету по образцу известного анек- свой вкус. дота: «выключим газ, выльем воду и вернемся к условию предыдущей задачи». То есть надо найти способ, как преобразовать двоичные дан- Два типа графических команд ные в обычные текстовые таблицы. Проблем на этом пути возникает Для правильного отображения кириллицы в X-окне (если это действи- обычно не слишком много, но уж больно они разнообразные. тельно необходимо) следует правильно указать шрифты, например, Второй путь – это найти способ прочитать данные в R без преоб- так: разования. Специально для этих целей в R есть пакет foreign, который > X11(fonts = c( может читать двоичные данные, выводимые пакетами Minitab, S, SAS, + “-rfx-helvetica-%s-%s-*-*-%d-*-*-*-*-*-koi8-r”, SPSS, Stata, Systat, а также формат DBF. Чтобы узнать подробнее об + “-adobe-symbol-medium-r-*-*-%d-*-*-*-*-*-*-*”)) определенных в этом пакете командах, надо загрузить пакет и вызвать Опция fonts команды X11 принимает вектор из двух элементов, общую справку: формируемый командой c(). Первый соответствует шрифту, исполь- > library(foreign) зуемому для обычных текстовых меток, а второй предназначен для > help(package=foreign) отображения стандартных спецсимволов, например, греческого алфа- Что же касается пресловутого формата Excel, то здесь дело обстоит вита. С помощью программы xfontsel можно подобрать себе шрифт по хуже. Существует не меньше пяти разных способов загрузить эти фай- вкусу. Подробности в ищите разделе Fonts в документации, выдавае- лы в R, но все они имеют ограничения. К тому же новый формат MS мой по help(X11). Excel 2007 пока вообще не поддерживается. Из всех способов наибо- лее привлекательным представляется обмен с R через буфер. Если открыть в OpenOffice Calc XLS-файл, то можно скопировать в буфер обмена любое количество ячеек, а потом загрузить их в R: > read.table(“clipboard”) Это очень просто, и главное, работает с любой Excel-подобной программой. Тут следует отметить еще одну вещь: ни в коем случае не рекомен- дуется производить какой-либо статистический анализ в программах электронных таблиц. Не говоря уже о том, что Интернет просто забит статьями об ошибках в этих программах и/или в их статистических моду- лях, это еще и крайне неверно идеологически. Иначе говоря: Use R! Добавим еще несколько деталей: R может загружать изображения. Для этого есть сразу несколько пакетов. Наиболее продвинутый из них – pixmap. R также может загру- жать карты в формате ArcInfo и др. (пакеты maps, maptools) и много чего еще. У R есть собственный двоичный формат. Он быстро записыва- ется и быстро загружается, но его нельзя использовать с другими программами: > x <- “яблоко” Рис. 1. Окна X11 с простейшим > save(x, file=”x.rd”) графиком.

Февраль 2008 Linux Format 9 1 http://lolbook.nnm.ru Учебник Анализ данных с R

Рассмотрим пример: > pdf(“1-20.pdf”, family=”NimbusSan”, encoding=”KOI8-R.enc”) > plot(1:20, main=”Заголовок”) > plot(1:20, main=”Заголовок”) legend(“topleft”, pch=1, legend=”Мои точки”) > dev.off() Тут много такого, о чем пока речи не шло. Но самое главное – то, > embedFonts(“1-20.pdf”) что первая команда рисует график «с нуля», тогда как вторая только Как видно, требуется указать, какой шрифт мы будем использо- добавляет к уже нарисованному графику детали. Это и есть два типа вать, а также кодировку, с которой мы работаем. Помимо KOI8-R, из графических команд, используемых в базовом графическом наборе восьмибитных кириллических кодировок доступны CP-1251 и KOI8-U. R. Теперь немного подробнее: plot() – основная графическая команда, Затем нужно закрыть графическое устройство и встроить в полученный причем команда «умная» (правильнее сказать «generic», или общая). файл шрифты с помощью команды embedFonts(). Следует отметить, Это значит, что она распознает тип объекта, который подлежит рисо- что шрифт NimbusSan и возможность встраивания шрифтов коман- ванию, и строит график в соответствии с ним. Например, в приведен- дой обеспечивается взаимодействием R со сторонней программой ном примере 1:20 – это последовательность чисел от 1 до 20, то есть Ghostscript, в поставку которой входят шрифты, содержащие русские вектор, а для одиночного вектора предусмотрен график, где по оси буквы. Кроме PDF, R «знает» и другие векторные форматы, например, абсцисс расположены индексы (номера каждого элемента вектора по PostScript, xfig и picTeX. Есть отдельный пакет RSvgDevice, который под- порядку), а по оси ординат – сами элементы. Если в аргументе коман- держивает популярный векторный формат SVG. График в этом форма- ды будет что-то другое, то будет построен иной график, более подхо- те можно, например, открыть и видоизменить в свободном векторном дящий для этого объекта. Вот пример: редакторе Inkscape. > plot(cars) > title(main=”Автомобили 20-х годов”) Графические опции Здесь тоже использованы команды обоих типов, но оформлены они немного иначе. Не беда, что мы забыли дать заголовок в коман- де plot(), так как его всегда можно добавить потом, командой title(). «cars» – это встроенная в R таблица данных (подробности – в выводе команды ?cars), которая использована здесь по прямому назначению, то есть для демонстрации возможностей программы. Для нас сейчас важно, что это не вектор, а таблица из двух колонок: speed и distance (скорость и тормозной путь). Функция plot() автоматически нарисова- ла так называемый scatterplot, когда по оси X откладывается значение одной переменной (колонки), а по оси Y – другой, и еще присвоила осям имена этих колонок. Любопытным советуем проверить, что нари- сует plot(), если ему «подсунуть» таблицу с тремя колонками, скажем, встроенную таблицу «trees». Кстати говоря, узнать, какие еще есть встроенные таблицы, можно с помощью команды data() (именно так, без аргументов).

Графические устройства Встретив команду plot(), R открывает так называемое экранное гра- фическое устройство (в случае X Window это стандартное окно X11) и начинает вывод на него. Если следующая команда того же типа, то есть не добавляющая, то R «сотрет» старое изображение и начнет выводить новое в этом же окне. Если ввести команду: > dev.off() то R закроет графическое окно, что, впрочем, можно сделать, просто Рис. 2. Две гистограммы друг под другом. щелкнув на кнопке в рамке оконного менеджера. Экранных устройств в R предусмотрено несколько – в каждой операционной системе свое Как уже говорилось, графика в R настраивается в очень широких пре- (а в Mac OS X даже два). Но все это не так важно, пока вы не захотите делах. Один из способов настройки – это видоизменение графических строить графики и сохранять их в виде графических файлов. В этом опций, встроенных в R. Вот, к примеру, распространенная задача: нари- случае придется познакомиться с другими графическими устройства- совать две гистограммы одну под другой на одном рисунке. Чтобы это ми. Их несколько (количество опять-таки зависит от операционной сделать, надо изменить исходные опции – а именно, разделить про- системы), а пакеты предоставляют еще около десятка. Работают они странство рисунка на две части, примерно так: примерно так: > # Создается eps-файл размером 6 на 6 дюймов > png(file=”1-20.png”, bg=”transparent”) > postscript(“2hist.eps”,width=6.0,height=6.0, > plot(1:20) + horizontal=FALSE,onefile=FALSE,paper=”special”) > dev.off() > # Изменяется одно из значений по умолчанию Команда png() открывает одноименное графическое устройство, > old.par <- par(mfrow=c(2,1)) причем задается параметр, включающий прозрачность базового фона > hist(cars$speed) (удобно, например, для Web). Такого параметра у экранных устройств > hist(cars$dist) нет. Как только вводится команда dev.off(), устройство закрывается, и на > # Восстанавливаем старое значение по умолчанию диске появляется файл 1-20.png. png() – одно из самых распространен- > par(old.par) ных устройств при записи файлов. Недостатком его является, разумеет- > dev.off() ся, растровая природа формата. Аналогичным по своей функционально- Ключевая команда здесь par() – изменяется один из ее параметров, сти является и устройство jpeg(), которое производит JPEG-файлы. mfrow, который регулирует, сколько изображений и как будет разме- R поддерживает и векторные форматы, например, PDF. Здесь, одна- щено на «листе». Значение mfrow по умолчанию – c(1,1), то есть один ко, могут возникнуть специфические для русскоязычного пользователя график по вертикали и один по горизонтали. Чтобы не печатать каж- трудности со шрифтами. Остановимся на них чуть подробнее. Вот как дый раз команду par() без аргументов (для выяснения «умалчиваемых» надо «правильно» создавать PDF-файл, содержащий русский текст: значений каждого из 71 параметра), мы «запомнили» старое значение

92 Linux Format Февраль 2008 Анализ данных с R Учебник

в объекте old.par, а в конце вернули состояние к сохраненному. То, что Особенно активно Кливленд (и не только он) возражал против команда hist() строит гистограмму, очевидно из названия. использования трехмерных графиков и так называемых «пирогов». Поначалу «пирожных» графиков в R вовсе не было, причем по принци- Идеологически верная графика пиальным соображениям. Сегодня они есть, но если вы откроете стра- При всем своем разнообразии, графическая система в R построена ницу помощи, то узнаете, что «Pie charts are a very bad way of displaying на основе строгих правил. Выбор типа графика, основных цветов и information». Трехмерных графиков в R и сейчас немного (правда, есть символов для изображения точек, расположение подписей и т.д. были особый пакет rgl, позволяющий строить такие графики через OpenGL), тщательно продуманы создателями. Одним из ключевых для R иссле- а если вы хотите узнать, как меняется поведение двух переменных по дований является книга Уильяма Кливленда «Элементы графической отношению к третьей, предлагаются так называемые «Trellis graphs» обработки данных». Многие его идеи были осуществлены именно в или графики-решетки: S-PLUS, а затем и в R. Например, Кливленд нашел, что традиционные > coplot(log(Volume) ~ log(Girth) | Height, data = trees) «столбчатые» графики очень плохо воспринимаются, особенно когда При выполнении этой команды на рисунке отображается, как зави- сит объем древесины от объема кроны (в логарифмической шкале) у деревьев различной высоты. Действительно, такое представление гораздо эффективнее трехмерного. Странно, что распространенные пакеты статобработки почти не используют графики-решетки, хотя их наличие неоднократно называлось одной из главных причин коммер- ческого успеха S-PLUS.

Интерактивность Интерактивная графика позволяет выяснить, где именно на графике расположены нужные вам точки, и поместить объект (скажем, под- пись) в нужное место, а также проследить «судьбу» одних и тех же точек на разных графиках. Кроме того, если данные многомерные, то можно вращать облако точек в плоскости разных переменных, чтобы выяснить структуру данных. Еще несколько лет назад пришлось бы написать, что здесь вместо R следует воспользоваться другими аналитическими инструментами, но R развивается так быстро, что все эти методы теперь доступны, при- чем в нескольких вариантах. Например, так можно добавлять подписи в указанную мышью область графика: Рис. 3. Точечная диаграмма. > plot(1:20) > text(locator(), “Моя любимая точка”, pos=4) речь идет о близких значениях данных, и предложил им на замену После того как введена вторая команда, надо щелкнуть левой кноп- «точечные диаграммы». Вот так они реализованы в R: кой мыши на выбранной точке в графике, а затем – неважно, где – щел- > dotchart(Titanic[,,”Adult”,”No”], кнуть правой кнопкой мыши. + main=’Погибшие на “Титанике”’) Интерактивная графика других типов реализована командой Встроенная таблица данных Titanic – это четырехмерная матрица, identify(), а также пакетами rggobi, TeachingDemos и iplot. которая отражает статистику по возрастным группам, типу билета и полу. Как сохранять результаты Начинающие работу с R обычно просто копируют результаты работы (скажем, данные тестов) из консоли R в текстовый файл. И действитель- но, на первых порах этого может оказаться достаточно. Однако рано или поздно возникает необходимость сохранять созданные объемные объек- ты (например, таблицы данных). Можно использовать уже упомянутый в начале статьи внутренний двоичный формат, но это не всегда удобно. Лучше всего сохранять таблицы данных в виде текстовых таблиц, кото- рые потом можно будет открывать другими приложениями или тексто- выми редакторами. Для этого служит команда write.table(): > write.table(file=”trees.csv”, trees, + row.names=F, sep=”;”, quote=F) В текущую рабочую директорию будет записан файл trees.csv, образованный из встроенной в R таблицы данных trees. А что, если надо записать во внешний файл результаты выполнения команд? В этом случае используется команда sink(): > sink(“1.txt”, split=T) > 2+2 [1] 4 > sink() При этом во внешний файл запишется строчка “[1] 4”, то есть результат выполнения команды. Сама команда записана не будет, а если хочется, чтобы она была записана, то придется ввести что-то вроде: > print(“2+2”) [1] “2+2” Рис. 4. График-решетка. > 2+2 [1] 4

Февраль 2008 Linux Format 9 3 http://lolbook.nnm.ru Учебник Анализ данных с R

то есть повторять каждую команду два раза. Для сохранения истории поистине незаменимым. Для создания подобного отчета, для начала команд служит команда savehistory(), а для сохранения всех созданных надо набрать простой файл c LaTeX-подобной структурой и назвать его, объектов – save.image(). Последняя может оказаться также полезной например, test-Sweave.Rnw: для сохранения промежуточных результатов, если вы не уверены в \documentclass[a4paper,12pt]{scrartcl} стабильности работы компьютера. % Стандартная шапка для LaTeX-документа \usepackage[T2A]{fontenc} Мастера отчетов % В зависимости от используемой локали вместо koi8-r нужно Таблицы, созданные в R, можно сохранять и в более «приличном» %поставить cp1251 или utf8 виде: например, в форматах LaTeX или HTML, при помощи пакета \usepackage[koi8-r]{inputenc} xtable. Естественно, хочется пойти дальше, и сохранять в каком-нибудь \usepackage[english,russian]{babel} из этих форматов вообще всю R-сессию. Для HTML такое возможно, \usepackage{indentfirst} если использовать пакет R2HTML с CRAN: > library(R2HTML) \title{Тест Sweave} > dir.create(“example”) \author{А.В.\,Тор} > HTMLStart(“example”) \begin{document} % Тело документа HTML> 2+2 \maketitle HTML> plot(1:20) HTML> HTMLplot() \textsf{R} как калькулятор: HTML> HTMLStop() <>= В рабочей директории будет создана поддиректория example, и 1 + 1 туда будут записаны HTML-файлы, содержащие полный отчет о теку- 1 + pi щей сессии, в том числе и созданный график. sin(pi/2) @

Картинка: <>= plot(1:20) @

\end{document} Затем этот файл необходимо обработать в R: > Sweave(“test-Sweave.Rnw”) Writing to file test-Sweave.tex Processing code chunks ... 1 : echo print term verbatim 2 : echo term verbatim eps pdf

You can now run LaTeX on ‘test-Sweave.tex’ При этом создается готовый LaTeX-файл test-Sweave.tex. И, нако- нец, при помощи latex/dvips или pdflatex получить результирующий файл: => latex test-Sweave.tex => dvips test-Sweave.dvi => gv test-Sweave.ps # или => pdflatex test-Sweave.tex => acroread test-Sweave.pdf Такой отчет можно расширять, шлифовать, изменять исходные данные, и при этом усилия по оформлению практически сводятся на нет. Если есть желание, чтобы код R набирался моноширинным шриф- том, то в LaTeX-преамбуле RNW-файла следует добавить строчку: \usepackage[noae]{Sweave} Рис. 5. Пример отчета, полученного с помощью команды Sweave. Исходный код и авторскую документацию профессора Фридриха Лайша (Friedrich Leisch) можно найти здесь: http://www.ci.tuwien. Можно пойти и еще дальше. Что если создать файл, который ac.at/~leisch/Sweave/. будет содержать код R, перемешанный с текстовыми коммента- Помимо Sweave, есть и другие системы генерации отчетов: напри- риями, и потом «скормить» этот файл R так, чтобы фрагменты мер, уже упомянутый пакет R2HTML умеет производить похожие кода заменились на результат их исполнения? Идея эта называется отчеты в HTML. Есть пакет brew, который позволяет создавать авто- «literate programming» (грамотное программирование) и принадлежит матические отчеты в текстовой форме (разумеется, без графиков), и Дональду Кнуту, создателю TeX. В случае R такая система использу- совсем новый пакет odfWeave, который может работать с ODF (формат ется для автоматической генерации отчетов – функции, которая фак- OpenOffice.org). LXF тически отсутствует в остальных статистических пакетах и делает R

Через месяц Мы узнаем, какие типы данных предоставляет R, и как с ними работать.

94 Linux Format Февраль 2008

LXF Школа Школа

Open Source и компетентностный подход к разработке государственного образовательного стандарта

омпетенции, по сути, опреде- необходимости постоянных изменений в образе жизни, к восприятию, ляют набор видов деятельнос- следованию и сохранению национальных традиций и культурного Кти, которые должен осущест- наследства своей страны. влять профессионал (выпускник) в В основу примерных программ для общеобразовательных учеб- конкретной области на определенном ных заведений будет положен принцип дальнейшей востребованности уровне, а компетентность – это реа- школьных знаний в сфере получения профессионального образования лизация компетенции у конкретного и на рынке труда. субъекта деятельности, которая зави- По данным Центра инвестиций в высокие технологии холдинга сит от личностных характеристик. «Финам», перспективы развития рынка программного обеспечения с Сегодня, когда процесс продуци- открытым кодом в России определяют следующие показатели: рования информации является доста- Доля программного обеспечения с открытым кодом в сегмен- точно интенсивным, понятие «фун- те программного обеспечения для серверов может составить 50%. даментальные прочные знания» при- В конце концов, по оценкам аналитиков, в России доля серверного обретает своеобразное звучание. На свободного ПО будет заметно превышать аналогичные показате- смену понятиям «информация», «объ- ли в Европе и США. Помимо серверного программного обеспече- ем изучаемой информации» приходит ния, исследователи видят хорошие перспективы и у свободного ПО такой термин, как «информирован- общего назначения для Windows, учитывая тот факт, что Windows в ность» – умение локализовать необ- настоящее время является доминирующей клиентской операционной ходимую информацию в большом ее системой. объеме, подойти к ее поиску с позиций Свободные приложения на платформах Windows: Firefox, OpenOffice. компетенций. org, GIMP и прочие установлены не менее чем на 5–7% компьютеров, Поэтому в основу разработки как и их доля увеличивается вместе с ужесточением законодательства об нового (второго) поколения стандар- авторских правах. Предполагается, что такая тенденция сохранится и в тов общего среднего и полного сред- ближайшем будущем. него образования, так и нового (третьего) поколения стандартов Пользовательский рынок может переориентироваться на клиентский среднего профессионального и высшего профессионального обра- Linux, при государственной поддержке. Аналитики сходятся во мнении, зования положен системно-деятельностный подход. В подавляющем что будущее Linux как клиентской платформы во многом зависит от большинстве публикаций по данной проблеме компетентностный под- государственной политики закупок программного обеспечения. ход рассматривается как частный случай системно-деятельностного. Поставщики Linux традиционно играют гораздо активнее на очень Главная задача образования – это формирование у учащегося перспективном рынке мобильных устройств, и именно эта операцион- компетентности к овладению новыми знаниями, новыми видами ная система, по их мнению, станет лидером данного сегмента, заняв на деятельности, формированию своей собственной дальнейшей траек- нем около 40% еще до 2010 года. тории. Это серьезное новшество в государственном документе. Зачем нужно свободное программное обеспечение образователь- Подготовка грамотных, не понаслышке знакомых со свободным ному учреждению? программным обеспечением людей является залогом успешного про- Основными приоритетами развития российского образования на ведения правительственных программ. Представляется, что наиболее современном этапе являются: действенным образом такое воздействие оказывает система обра- Выработка нового понимания качества и эффективности образо- зования, которая должна приучать ребенка, подростка и взрослого к вания для всех на протяжении всей жизни, определение адекватных

96 Linux Format Февраль 2008 Школа LXF

содержания и форм обучения, в том числе на базе информационных кое использование информационных и коммуникационных технологий технологий; в сфере образования, в том числе и в целях расширения доступности Приведение структуры российской системы образования и образо- образования. вательных стандартов в соответствие с необходимостью построения Федеральное агентство по образованию приглашает к участию в экономики, основанной на знаниях; общероссийском педагогическом экспертном Интернет-сообществе. Усиление роли образования как фактора общегражданской консо- В настоящий момент проект нового поколения стандарта разраба- лидации поликультурного российского общества при углублении про- тывается в рамках Федеральной целевой программы развития обра- цессов его интеграции в мировое образовательное пространство; зования (ФЦПРО) на 2006–2010 годы. Для участия в работе Интернет- Усиление практико-ориентированного характера профессиональ- сообщества вам необходимо зарегистрироваться, следуя указаниям на ного образования, отвечающего требованиям национального и меж- специализированном разделе сайта «Новый стандарт общего образо- дународного рынков труда, полномасштабное включение в Болонский вания» http://standart.edu.ru. процесс; На сайте размещаются: Приведение в соответствие с современными требованиями мате- 1 Основная информация об общероссийском педагогическом эксперт- риально-технической и учебно-лабораторной базы образовательных ном интернет-сообществе (Положение об общероссийском педагогичес- учреждений всех уровней; ком экспертном Интернет-сообществе, состав сообщества, контактная Формирование общественно-государственной системы управле- информация и др.); ния качеством образования, контроля качества знаний, улучшение 2 Нормативные документы и проекты компонентов стандарта общего адаптации выпускников к системе непрерывного образования и рын- образования второго поколения; ку труда; 3 Методические материалы победителей конкурса ПНПО «Лучший Реализация программы подготовки и повышения квалификации учитель» и школ-победителей конкурса общеобразовательных учреж- преподавателей и менеджеров образования в соответствии с реалия- дений, внедряющих инновационные программы; ми XXI века. 4 Интернет-форум экспертов; Говоря о современном понимании качественного образования, необхо- 5 Индивидуальные и сводные экспертные оценки основных компо- димо специально отметить несколько аспектов данной проблемы. нентов стандарта общего образования второго поколения; Качество образования напрямую зависит от того, в какой мере оно 6 Опросы общественного мнения. удовлетворяет потребности в обучении самого учащегося; Участие в интернет-сообществе специалистов в области программ- Качество образования предполагает формирование новой системы ных решений Open Source повысит не только информированность универсальных знаний, умений, навыков, а также опыт самостоятель- специалистов и экспертов в области разработки государственных ной деятельности и личной ответственности молодого человека, то образовательных стандартов, но и компетентность как отдельных пре- есть современных базовых компетенций; подавателей, так и педагогических коллективов в области внедрения Важным аспектом повышения качества образования является широ- программного обеспечения в образовательный процесс в России. LXF

Февраль 2008 Linux Format 9 7 http://lolbook.nnm.ru LXF Школа Мастер-класс в Верещагино: в начале славных дел.

«У самовара» с Александром Поносовым

Из официального пресс-релиза ОАО «Армада» курсе Рособразования на разработку пакета СПО Первые дистрибутивы на базе ОС Linux в рамках для внедрения в школах трех пилотных регионов – программы по оснащению свободным программ- Татарстана, Томской области и Пермского края. ным обеспечением российских школ вручены учи- Проект по внедрению свободного ПО в россий- телям информатики Пермской области для озна- ские школы станет крупнейшим в мире: уже в этом комления. Разработчики уверены, что их продукт году комплекты свободного ПО будут установлены не только обезопасит учителей от ревнителей в 1200 школах пилотных регионов – Пермского авторских прав, но и приведет к росту технической края, Томской области и Татарстана. Хотя за гра- грамотности школьников. ницей Linux используется в госучреждениях и в Первое официальное знакомство российской школах довольно широко (в испанской провин- школы и ОС Linux можно считать состоявшимся. ции Эстремадура он установлен на всех школь- В пятницу, 11 января 2008 г., в Верещагинском ных компьютерах), такой масштабной миграции районе Пермского края учитель Александр Поносов на СПО история еще не знала. После тестирования и заместитель гендиректора компании ALT Linux в трех пилотных регионах и доработок школьного Алексей Новодворский ознакомили сельских учи- дистрибутива с учетом замечаний в 2008 г., Linux телей информатики с результатами работы консор- планируется установить более чем в 61 тыс. рос- циума, признанного в 2007 г. победителем в кон- сийских школ.

В эпицентре лицензионного скандала: символическая А дальше все параллельные прямые сошлись в пространстве и времени. случайность как непознанная закономерность Алексей Новодворский в качестве представителя консорциума еще ранее запла- Скажу прямо: мастер-класс по СПО в Верещагино специально никто не плани- нировал поездку в Пермь для детального обсуждения проекта по внедрению СПО. ровал. На одном из семинаров школьных команд по информатизации в рамках «Мастер-класс в Верещагино? А почему бы и нет! Будет очень символично!». проекта ИСО учителя информатики попросили меня поделиться опытом по «наве- Поддержал идею и Алексей Костарев, генеральный директор ООО «Невод», так- дению лицензионной чистоты» в школе. Прошло полтора года с начала скандаль- же участвующий в проекте. «Не испортил нам обедни» даже уральский тридца- ного дела, а ситуация изменилась мало: денег как не было, так и нет, пароход с тиградусный мороз. Как и задумывалось, атмосфера встречи получилась теплой, обещанными проприетарными программами, видно, потопили боевые пингвины. общение – интересным и непринужденным. О свободных программах все говорят, но мало кто их видел. В общем, «народ созрел для просвещения». Некоторые особенности проприетарного рая Директор РИМЦ Нина Юрьевна Носкова дала добро, методисты ласково В качестве «разогрева» к основному докладу я постарался обрисовать все воз- усмехнулись: «Проводи, давай, сам вызвался!». Понятно, что упустить такую можные каверзы, уготованные нам при использовании проприетарных программ. возможность я не мог, но честно предупредил, что вторая часть моей душеспаси- Вопросы, ответы, вывод сделали сами преподаватели: даже если мы запасемся воро- тельной беседы с коллегами будет о Linux и иже с ним. хом лицензий, дисков, со всех сторон обклеим системные блоки голографическими наклейками, совершим прочие ритуальные обряды, никто не даст нам стопроцентной гарантии, что не нарушены чьи-то авторские права. В довесок к этому будет мучить нас совесть, что чада наши используют нелицензионный софт. Подойдет срок окон- чания временных лицензий, снова упремся в эти же проблемы. В воздухе повисло вечное «А что делать?». Здесь я поделился своим, пока небогатым, опытом использования СПО в школе и дома и передал слово гостям.

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

98 Linux Format Февраль 2008 Школа LXF

В рамках проекта будут разработаны методические материалы для разных категорий пользователей – и для школьных сисадминов, и для директоров школ, и, главное, для учителей. Они помогут как можно легче перейти на преподавание СПО на базе Linux. Мы также надеемся, что педагоги примут активное участие в апробации пособий, обратная связь очень важна. Cистему технической поддержки в Пермском крае будет разворачивать наш партнер по проекту – ООО «Невод». Кроме этого, поддержка будет организована по телефону и электронной почте, и, разумеется, как принято в мире открытого ПО, на интернет-форумах. Что касается аппаратной части школьных компьютеров, то консорциум подго- товил школьные дистрибутивы для компьютеров с оперативной памятью 128, 256 и 1024 МБ. Кроме того, учитывая, что во многих школах в данный момент уста- ревший парк машин, мы дополнительно предлагаем дистрибутив «Линукс терми- нал» для использования совсем раритетных компьютеров в качестве клиентских машин. Терминальный режим предполагает использование лишь одного относи- тельно мощного компьютера в качестве сервера и дает возможность подключить маломощные компьютеры, имеющиеся в классе, в качестве полноценных рабочих Костарев и системный администратор Вадим Шершнев еще долго беседовали о мест школьников. При таком варианте подключения не изменяется текущая кон- чем-то своем, глубоко техническом. фигурация рабочих мест, что позволяет учителю использовать в учебном процес- се как свободное, так и проприетарное программное обеспечение, без какой либо Ничего страшного! перенастройки компьютеров. Перед отъездом гости и хозяева присели на дорожку и поделились впечатлени- Говоря о преимуществах использования свободных программ, мы тем не ями от встречи. Методисты, ранее не скрывавшие беспокойства от предстоящей менее не призываем к полному отказу от проприетарного ПО. Очень не хотелось перестройки, заявили, что страхи позади. Понятно стало самое главное: много- бы, чтобы линия противостояния Windows-Linux проходила через школу. летняя работа по ликвидации компьютерной безграмотности не напрасна, потре- буется не переучивать учителей, а всего-навсего доучить. Все мы сошлись во Правду, и только правду! мнении: задача предстоит непростая, но при совместном приложении сил вполне Для организаторов самая ответственная часть подобных мероприятий – живое решаемая. общение, ответы на самые разнообразные вопросы. Раскрою маленький секрет Плохиша. Накануне встречи я заскочил в РИМЦ, подтвердил, что гости будут Вместо заключения непременно, «крутые линуксоиды», так что «пытать» не то что можно, а даже Из официального пресс-релиза ОАО «Армада» нужно. Дебаты, надо сказать, получились не хуже предвыборных. «Стороны» «Первое знакомство школы и свободных продуктов на базе ОС Linux в рамках глянули друг на друга с уважением и разошлись на практическое занятие с чув- нашего проекта состоялось, но о начале полноценного внедрения говорить пока ством глубокого удовлетворения. рано, – говорит генеральный директор компании «Армада» Алексей Кузовкин. – Тем не менее, реальное внедрение вот-вот начнется: мы уже открыли сайт linux. Расскажи, покажи и попробовать дай! armd.ru, где текущие версии дистрибутивов школьного СПО может скачать любой Показать СПО в действии решили через запуск Live CD, так как времени на уста- желающий. В феврале эти дистрибутивы будут разосланы по школам пилотных новку дистрибутивов абсолютно не было. Алексей Костарев знакомил с набо- регионов. Мы предлагаем заинтересованным руководителям и учителям из всех ром программ. Мы с Алексеем Новодворским «пошли в народ». Уже минут регионов России не ждать 2009 года, а активно включаться в процесс внедрения через двадцать послышались реплики: «Непривычно, но разобраться можно!», СПО уже сейчас». LXF «А есть аналог ...?», «А это что? Классная программа!». Так под мерное щелка- нье клавиатуры неизбежный психологический барьер преодолели незаметно и безболезненно. В конце занятия участникам был вручен набор дистрибутивов, и понесли они «кусочек свободы» каждый в свою школу. А Алексей Новодворский, Алексей

Февраль 2008 Linux Format 9 9 http://lolbook.nnm.ru LXF Школьный учебник

ККудауда ттечетечет ппамять?амять?

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

дной из самых острых проблем при програм- Для работы с многомерными массивами приме- int **mas; мировании на языке С++ является утечка няются особые указатели на массивы, адресуемыми q = &arr[0]; Опамяти. Под этим понимается ситуация, ког- элементами которых являются массивы элементов mas = &q; да память, выделенная динамически для некоторого базового типа. Запись int *mas[10] говорит о том, что // Трижды будет выведено значение элемента объекта программы (переменной, массива, списка), в программе определен десятиэлементный массив с массива arr[3], не возвращается в систему, а продолжает числиться именем mas, элементами которого являются указатели // адресуемое различными способами. занятой, даже после того, как отпала необходимость в на переменные типа int. С другой стороны, этот массив cout<<” arr[3] = “<

100 Linux Format Февраль 2008 Школьный учебник LXF

int mas1[2]={1,2}; Практика блоков.» Все правильно. Это действительно так, и мы int mas2[2]={10,20}; Теперь можно на конкретных примерах рассмотреть обсуждали это выше. Однако автор не говорит читате- int *arr[2]={&mas1[0], &mas2[0]}; заблуждения, присутствующие в известной и попу- лю о том, что сохраненный размер блока выделенной int **mas = &arr[0]; лярной учебной литературе, которые связаны с дина- памяти будет гарантированно использован только при // Хотим получить значение элемента с индексами мическими массивами. Однако перед этим сделаем вызове delete [ ] указатель_на_массив. [1][0] важное замечание: если тип элементов массива явля- Любопытно, что на стр. 360 автор пишет: «В Си++ cout<<” M[1][0] = “<>n; mas=new int *[n]; Обратимся к книге [1]. Раздел 3.2 «Динамические dat *p = new dat[n]; for(int i=0; i

Февраль 2008 Linux Format 10 1 http://lolbook.nnm.ru LXF Школьный учебник

class MatrixGraph{ Ее код может выглядеть так: Простая программа: bool **graph; #include #include int vertexNumber; #include using namespace std; //… // класс с «говорящими» конструктором и }; int main(void) деструктором //Деструктор { class ANY MatrixGraph::~MatrixGraph( ){ int i,j,n; { For(int i=0; i

102 Linux Format Февраль 2008

Ответы Ответы Есть вопрос по Open Source? Пишите нам по адресу: [email protected]

Сегодня мы ответим Gentoo работает прекрасно, но я на вопросы про: потерял Ubuntu на /dev/sda1. Вроде бы я не выполнял форматирование при переразбиении с помощью Gparted, но 1 Создание 6 Выбор на диске не было ничего критического, разделов компьютера так что я могу все переустановить. 2 7 Обновление Mandriva Могу ли я переразбить /dev/sda1, дистрибутивов и Bluetooth создав отдельный раздел для Ubuntu 3 Двойную загрузку 8 Перевод строки или какого-нибудь другого, и оставить Ubuntu 9 Странное маленький загрузочный раздел? Какой 4 Перенос home поведение Qt размер должен быть у загрузочного через rsync 10 Доступ в интернет раздела, и могу ли я использовать один 5 Автоматическое OpenVPN и тот же раздел для обоих дистрибути- копирование Компьютеры вов? Также, можно ли использовать под раздачу Gparted – хороший редактор разделов, но он один и тот же раздел подкачки для обоих дистрибути- переформатирует все разделы, которые вы создаете. вов? Наконец, изменит ли новая схема разделов схему 1 Разделение диска именования в загрузчике Grub Gentoo? Таблица разделов x86 ограничена четырьмя разде- У меня стоит Ubuntu на 500-ГБ жестком дис- Джим Куигли [Jim Quigley] лами. Мы можем обойти этот лимит, пометив один из ке (/dev/sda). А раньше был Gentoo, и он мне Gparted создает новую файловую систему на разделов как расширенный и создав на нем логичес- Вбольше нравится, поэтому я создал новый раз- всех создаваемых им разделах, так что вы, кие разделы. Изменение размера sda1 оставит сво- дел и установил Gentoo, использовав исходные загру- Осами не заметив этого, отформатировали бодное место вне расширенного раздела. вы могли зочный раздел и раздел подкачки. Теперь, запуская sda1. вы можете изменить размер sda1, но вам при- бы сделать это и установить Ubuntu в освобожденное Gparted, я имею три раздела: загрузочный /dev/sda1 дется создать еще один основной раздел, что не поз- место, и вполне безопасно разделить раздел подкачки (198.70 ГБ), корневой /dev/sda3 (261.26 ГБ) и /dev/ волит создать дополнительные первичные разделы, между двумя дистрибутивами. sda2 (дополнительные 5.80 ГБ) со swap на расширен- не считая урезания раздела подкачки. Зато совместное использование /boot более ном /dev/sda5. сложно и не является хорошей идеей, особенно в случае Ubuntu, который по умолчанию не исполь- зует отдельный загрузочный раздел. Отдельный Наши эксперты /boot – это уже анахронизм, ранее применяв- шийся из-за ограничений старых BIOS, которые Мы найдем эксперта по любому вопросу – от проблем с установкой системы или модемом до сетевого могли работать только с небольшими по объ- администрирования; главное – спросить! ему дисками, и загрузочный файл должен был Нейл Ботвик Майк Сондерс быть в начале диска. Сейчас в этом нет нужды, Владелец ISP и экс-редактор дисков Майк был одним из создателей прототипа и я нигде не использую загрузочный раздел. для нашего журнала, Нейл считает, что LXF – Linux Answers. У вас есть пара вариантов. Лучший с точки зре- в Linux он от скуки на все руки. Его специальности – программирование, ния дальней перспективы, но более трудоемкий – это оконные менеджеры, скрипты сделать резервную копию установленного Gentoo, инициализации и SNES. использовав или второй жесткий диск, или стопку Пол Хадсон DVD, и переразбить диск с нуля. Так как вы не исполь- Грэм Моррисон зуете Windows, вам не нужен основной раздел. Пол – местный супер-программист. Он Когда он не обозревает вершины Сделав каждый раздел логическим, вы получите управится программного обеспечения весь диск как дополнительный раздел, что даст вам со всеми вашими проблемами и не халтурит с MythTV, Грэм готов по части web и баз данных. к ответам касательно любого большую гибкость. Затем восстановите Gentoo из оборудования и проблем виртуализации. резервной копии перед установкой Ubuntu. Альтернатива – урезать sda1 примерно до 50 МБ и Владимир Иванов Валентин Синицын установить Ubuntu на высвободившееся место. В этом Работает с Linux уже более 10 лет, В редкие свободные минуты главный случае root в Grub Gentoo все равно останется (hd0,0), днем – создавая комплексные решения редактор нашего журнала обычно запуска- но вам нужно изменить параметр root, передаваемый для крупных компаний, ет mcedit, чтобы отшлифовать какое- ядру, вероятно, на /dev/sda4. а вечером – модерируя сайт linux.org.ru нибудь открытое приложение. Его люби- В обоих случаях, установка Ubuntu заставит Grub и отвечая на вопросы о системном мая тема – настольный Linux. администрировании и информацион- использовать его конфигурацию: оно должно подце- ной безопасности. пить вашу инсталляцию Gentoo и добавить ее в меню. Если нет, вы можете восстановить ваш загрузчик КУДА ПОСЫЛАТЬ ВОПРОСЫ: Gentoo и добавить в меню запись для загрузки Ubuntu. Пишите нам по адресу: [email protected] или спрашивайте на форуме: www.linuxforum.ru Чтобы сделать это, загрузитесь с Gentoo Live CD и

104 Linux Format Февраль 2008 Ответы

этого обновления? Ведь не каждый же год тратить лают этого на втором запуске, то не сделают никогда. день на закачку и установку новой версии моего Для Ubuntu существует более легкий путь обновиться дистрибутива? Существуют ли дистрибутивы, кото- до последнего релиза, выбрав Administration > Update рые постоянно обновляются, чтобы было достаточно Manager из меню System. Когда появляется новая вер- запустить команду, и вся система обновилась бы до сия, он говорит вам об этом и предоставляет опции нового релиза? Когда я говорю об этом, я не имею для обновления. в виду – каждые шесть месяцев или типа того. Пусть Независимо от выбранного метода, обновление бы команда обновляла до последнего релиза на дан- может оказаться небыстрым, зато после него не нуж- ный момент. но восстанавливать настройки и выбор программ, и Эта необходимость ежегодной переустановки, а параллельно с обновлением на компьютере можно не просто обновления – единственное, что досаждает работать. мне в Linux. После нее приходится все заново настра- Также можно обновиться с установочных дисков ивать. А мне бы установить и настроить систему один типа Mandriva и SUSE, хотя люди по-разному говорят раз и затем обновлять ее. Возможно ли это? о степени успешности данного занятия, и самым муд- Роберт Кук [Robert Cook] рым решением для rpm-дистрибутивов будет создать Все дистрибутивы на базе Debian предоставляют Да, возможность «скользящего обновления» резервные копии данных и настроек и выполнить текущие обновления, а Ubuntu еще и имеет для этого есть в некоторых дистрибутивах. Вероятно, установку «с нуля»; очень полезны здесь могут быть прекрасный интерфейс. Оярчайший пример этого – Gentoo, он даже не отдельные разделы /home. запустите следующие команды: имеет текущей версии (версию имеют только инсталя- mount /dev/sda4 /mnt/gentoo ционные диски). Дистрибутив постоянно обновляется 3 Двойная загрузка Ubuntu # assuming your Gentoo installation is now on до новой версии с выходом новых пакетов программ; У меня установлена Vista Home Ultimate, и я /dev/sda4 в итоге, машина, на которой он был установлен пять хочу сделать двойную загрузку с Ubuntu 7.10. mount /dev/sda1 /mnt/gentoo/boot лет назад, обновлена так же, как если бы дистрибутив В В статье apcmag.com это выглядит очень прос- mount --bind /dev /mnt/gentoo/dev был установлен на прошлой неделе. тым занятием, и вплоть до ужимания раздела с Vista chroot /mnt/gentoo /bin/bash Если вам не хватает терпения или неохота изучать так оно и есть. У меня сейчас 62.76 MБ неразмеченно- grub Gentoo – Debian и его ответвления тоже могут обнов- го места. Перезагрузка с Ubuntu CD стартует нормаль- root (hd0,0) ляться на новую версию без переустановки. Если у вас но – загружается Linux и начинает грузиться Ubuntu; setup (hd0) запущена тестовая или нестабильная версия Debian, но вскорости картинка портится и пропадает, а CD quit вы можете получать новые версии пакетов, как только останавливается. exit они появятся, тогда как большинство дистрибутивов Единственный способ исправить ситуацию – это Вы могли встретить многие из них в руководстве имеют только обновления по безопасности. Даже выключить и включить компьютер снова, удалив CD. Gentoo Handbook – здесь просто выполняются chroot если у вас не самая свежая версия, все, что вам нужно Не сомневаюсь, что ответ на эту проблему очень в установленную систему Gentoo и настройка Grub при появлении нового релиза – это отредактировать прост. вы не могли бы просветить меня? на загрузку с ее раздела /boot. Запустив Gentoo, вы /etc/apt/sources.list и изменить все ссылки на текущий Джефф Магглстон [Geoff Muggleston] должны отредактировать /boot/Grub/menu.lst, добавив дистрибутив, такие как feisty в Ubuntu и etch в Debian, ваша проблема не уникальна: похожее слу- запись для загрузки Ubuntu (скопируйте ее из сущест- на новые метки (типа gutsy или lenny соответственно). чилось со мной, когда я выполнял установ- вующего файла menu.lst Ubuntu). Затем запустите О ку на старенький ноутбук Fujitsu Siemens. sudo apt-get update && sudo apt-get dist-upgrade Однако другие системы также показывают чистый 2 Обнови меня && sudo apt-get dist-upgrade экран, прежде чем приступить к загрузке, так что Снова настало время, когда новая версия дис- Это не ошибка: вы должны сделать шаг dist- вам, возможно, просто надо подождать пару минут. трибутива доступна на зеркалах для закачки. upgrade дважды, так как некоторые пакеты могут не В любом случае, Vista тут ни при чем. Отмечу также, ВМило, конечно, но нельзя ли обойтись без обновиться при первом запуске, и если они не сде- что незачем изменять раздел Windows: установщик Ubuntu может позаботиться об этом сам – хотя сперва вы должны выполнить дефрагментацию в Windows. Вопрос-победитель (русская версия) Если ожидание не сработает, вам нужно использо- ! вать Alternate CD, который использует текстовый инс- таллятор без рабочего стола Live CD. Хотя инсталлятор Валерий получает подарочный сертификат на 1000 рублей от интернет-магазина LinuxCenter.Ru! Просим и текстовый, установленная система будет иметь пол- победителя выйти на связь с редакцией: [email protected] ноценный графический рабочий стол. Это необходимо настройки параметры ca, cert и key, заменив их тогда, когда Live CD не поддерживает вашу видеокар- Уговорить OpenVPN одним: pcks12 имя_файла.pfx. Если это не помо- ту. Текстовый инсталлятор также предоставляет боль- В своей работе мы используем виртуаль- жет, следует извлечь из PFX-файла ваш приват- ше вариантов для выбора, чем Live CD, и имеет более ную частную сеть на базе OpenVPN. Я легко ный ключ высокий показатель успешности установки. Вподключаюсь к ней из Windows, приме- openssl pkcs12 -in имя_файла.pfx -clcerts -nocerts няя выданные мне администратором файлы ca.crt, -out pr_key.pem 4 Перенос Home .PFX и ta.key. Хотел бы делать то же самое и и личный сертификат Я установил Mandriva 2008 на мой новый ком- из Gentoo Linux, но, увы, не получается – OpenVPN openssl pkcs12 -in имя_файла.pfx -clcerts -nokeys - пьютер и настроил сеть, так что могу видеть не принимает PFX-файл и упорно желает видеть out cert.pem В домашнюю директорию на старой машине. PEM. Как правильно преобразовать выданные мне а затем указать на них OpenVPN обычным обра- Теперь я хочу перенести все на новую машину, вклю- реквизиты в этот формат? зом: чая скрытые и конфигурационные файлы. Меня инте- Валерий ca ca.crt ресует, как это лучше сделать. PFX или PCKS#12 – контейнер, содержа- cert cert.pem Смогу ли я сделать резервную копию директории щий ваш приватный ключ и сертификаты, key pr_key.pem /home и переустановить ее на новую машину? Или О может использоваться OpenVPN напря- ta ta.key просто скопировать файлы поверх, что может занять мую: для этого нужно просто удалить из файла некоторое время? Mike, с форумов LXF

Февраль 2008 Linux Format 10 5 http://lolbook.nnm.ru Ответы

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

Компьютеры PCI-модемы – неприят- работать в Linux. вы найдете список рудование. Важнее будет их умение под раздачу ная тема. У большинства поддерживаемых моделей на www. работать на старых компьютерах. Я работаю в Университете О внутренних модемов (их linmodems.org, вместе с програм- См. большую статью этого месяца Западного Онтарио, Канада, еще называют win- [или програм- мой, которая идентифицирует чипсет (стр. 30) для получения подробной В и имею доступ ко множеству мными, – прим. перев.] модемами) вашего модема и подскажет коррек- информации. старых и сломанных компьютеров, нет контроллера: на них отсутствует тный драйвер. Найдя работоспособный модем, которые я пересобираю и отдаю в процессор для цифровой обработки Определенные марки и моде- в дальнейшем держитесь моделей благотворительные учреждения. сигналов, который есть у нормаль- ли мы порекомендовать не можем, той же марки, желательно из той же Раньше я использовал Windows, ных модемов, и всю работу за него потому что изготовители иногда партии, для обеспечения полной сов- но это создает проблемы из-за автор- выполняет центральный процессор меняют чипсет, не меняя маркировку местимости. Хорошим ресурсом для ских прав. Было бы гораздо легче компьютера. Аппаратные модемы, модели. Для пользователей Windows старых, и часто более совместимых, использовать какую-нибудь операци- имеющие полноценный контроллер, это не критично (кроме разве потен- модемов может оказаться eBay, так онную систему Linux; но мне нужно, обычно распознаются как устройства циальной потери производительнос- как многие люди уже давно ими не чтобы Linux умел распознавать PCI- последовательного порта, и их мож- ти), потому что диск с драйверами, пользуются. модемы, не заставляя искать драй- но использовать так же, как и вне- поставляемый с модемом, учтет раз- Как альтернатива, если наши чита- веры в Сети. шние модемы, без необходимости личия. тели имеют ненужные совмести- Хорошо бы вы рассказали, какая специальных драйверов. Скорее всего, подойдут модемы мые модемы, мы будем счастли- ОС лучше подходит для использо- Они-то вам лучше всего и подой- с чипсетами Intel: их драйвера выло- вы связать вания PCI-модемов, или какие PCI- дут, но надо тщательно проверять жены на сайт http://developer.intel. их с вами, модемы лучше использовать, чтобы спецификации для полной уве- com/design/modems/support/drivers. чтобы под- я мог сделать эти компьютеры интер- ренности, что данный конкретный htm. Выбор дистрибутива не столь держать вас нет-совместимыми. модем – аппаратное устройство. важен, так как большинство из них в ваших начи- Рэнди Коллинз [Randy Collins] Некоторые win-модемы могут сейчас прекрасно распознают обо- наниях.

fish://olduser@oldmachine в строке адреса другой Если сеть под- панели. Там отобразится содержимое старой домаш- нята и у вас ней директории пользователя, из которой вы може- О запущена служ- те выбрать и скопировать файлы и директории. ба SSH на старой маши- Выберите Вид > Показывать скрытые файлы для не, самый лучший способ отображения файлов конфигурации, затем нажмите сделать это – использо- Ctrl+A для выбора всего содержимого и F7 для копи- вать rsync. Откройте на рования. Еще один файловый менеджер, умеющий новой машине терминал использовать FISH-протокол для доступа к файлам на от имени обычного поль- удаленном компьютере – Midnight Commander. зователя и запустите: Если вам необходимо регулярно синхронизи- rsync -ax olduser@ ровать директории на двух машинах, я настоятель- oldmachine:~/ ~/ но рекомендую Unison (www.cis.upenn.edu/~bcpierce/ Замыкающие слэши unison), который я использую для синхронизации очень важны. Если имя моего настольного компьютера и ноутбука; но для пользователя одинаково однократного копирования это будет перебором. на обоих компьютерах, См. учебник на стр. 60 для большей информации можете пропустить часть об Unison. olduser@. Эта команда скопирует все из вашей домашней директории, вклю- Альтернативный установщик Ubuntu не красавчик, 5 Копирование автоматом чая скрытые файлы, и установит корректные права но дело делает – даже когда сбоит его графический Я хочу иметь папку в моей домашней дирек- доступа и временные отметки. Даже если Вы приме- собрат. тории, которая автоматически бы обновлялась няете разные имена пользователей, или одинаковые Виз такой же папки на моем USB-брелке, когда имена с разными числовыми ID, rsync обеспечит, mkdir ~/oldhome я его вставляю. Если я непонятно выразился, то могу чтобы все скопированное принадлежало новому поль- rsync -ax olduser@oldmachine:~/ ~/oldhome сравнить это с использованием Портфеля в Microsoft зователю. В ходе копирования вам не следует рабо- Затем можете использовать свой любимый менед- Windows. У меня KDE и Ubuntu. тать на старом компьютере, иначе вероятна ситуация, жер файлов для копирования нужных вам файлов и sh2515, c форумов когда какие-нибудь файлы изменятся между началь- директорий, удаления старых файлов конфигурации В KDE имеется функция, позволяющая запус- ным сканированием директории и копированием, и и другого барахла, которое накапливается в нашей кать скрипт автозапуска при монтировании тогда rsync завершится с ошибкой. Если у вас на ста- домашней директории с течением времени. Осъемного устройства. Правда, она нацеле- ром компьютере запущен рабочий стол, закройте его Это одна из тех работ, которые быстрее делать на на оптические диски и не работает (пока) с USB- перед стартом rsync. из командной строки, но как альтернативу Вы може- устройствами. Зато, накропав небольшой скрипт, вы Копировать все подряд слово в слово – не лучшая те предпочесть графический интерфейс. Если у сможете сделать это напрямую с помощью udev. идея, потому что вы можете переписать новые файлы вас KDE (рабочий стол в Mandriva по умолчанию), Первым шагом будет установка правил udev для конфигурации их старыми версиями. Альтернатива – откройте окно Konqueror, выберите одну из опций вашего устройства, как было написано в прошлом создание директории в вашей домашней директории Окно > Разделить..., используйте одну панель для месяце в Ответах LXF100/101 (вопрос Блуждающий и копировании туда с помощью команд: создания и показа директории oldhome и наберите диск). Они могут быть установлены для конкретно-

106 Linux Format Февраль 2008 Ответы

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

Соединяемся пространенным вариантом здесь являет- Ширина канала важна? Можно ли ся VNC (Virtual Network Computer). Это использовать этот метод при модемном Хотите запустить программу на вашем домашнем компьютере клиент/серверная система, где VNC-сер- соединении? прямо с работы? Выберите один из двух методов... вер запущен на удаленной машине, а Отображение графического рабочего клиент запускается на локальной. На стола и его обновление при изменениях Хочу соединиться с моим домашним Строго говоря, программа запускается www.realvnc.com представлены пакеты на удаленной стороне требуют хорошей компьютером с работы и запустить на удаленном компьютере, но отобража- для всех популярных ОС. вы можете ширины канала – модемное соединение программу с графическим интерфей- ет свое окно на локальной системе. вам получить доступ к рабочему столу Linux не подойдет. Широкополосное соедине- сом, например, мой почтовый клиент. можете понадобиться редактирование с систем Windows или Mac и наоборот. ние возможно, но независимо от скоро- Это возможно? /etc/ssh/sshd_config для установки сти вашего входящего ADSL-потока, Да. Существует два основных способа ‘X11Forwarding’ на ‘yes’. Какое мне нужно ПО? исходящий поток не может быть боль- сделать это, с различными вариантами в Какой рабочий стол вы используете? ше чем 384 Кбит/с, так что лучше каждом. Первый – это X-проброс (X Но так отображается только одна Если KDE, то все что нужно у вас уже использовать TightVNC. Уменьшение forwarding), часто это лучшее, когда на программа. А если я хочу видеть весь есть, так как KDE имеет встроенное про- размера экрана и глубины цвета, отказ обоих компьютерах запущен Linux. Он рабочий стол? Может ли X-проброс сде- граммное обеспечение RFB (Remote от украшательств и изображений также работает через SSH-соединение, где вы лать это? Frame Buffer). RFB – это протокол, поможет снизить объем передаваемых запускаете программу в удаленной обо- Да, может – открыв новую сессию рабо- используемый VNC и совместимыми данных. лочке, и она отображается на локальном чего стола, которая отобразится на системами. Для других рабочих столов рабочем столе. Например: вашей локальной машине. установите пакеты VNC или TightVNC из Есть ли альтернативы? ssh -X [email protected] репозитория вашего дистрибутива. NX (www.nomachine.com) – проприетарная kmail Но если я оставил программу работа- система, существенно увеличивающая Опция -X велит SSH использовать X-про- ющей и хочу войти в ее окно, он мне Что лучше: VNC или TightVNC? скорость. Она не является открытой и брос. этого не позволит? VNC – это оригинальная версия, TightVNC запускается не на всем поддерживаемом Нет, для этого нужна программа доступа (www.tightvnc.com) – версия, созданная Linux оборудовании, но если то и другое И больше для запуска программы на к удаленному рабочему столу, как если для использования при малой ширине для вас не критично, ее стоит рассмот- моем локальном компьютере ничего не бы на вашем локальном компьютере канала связи, с использованием усилен- реть. надо? был запущен Windows. Наиболее рас- ного сжатия.

го USB-брелка, или для всех устройств, имеющих Первая строка сохраняет имя пользователя-полу- ней синхронизации. Мы применяем su для запуска файловую систему FAT (USB-брелки всегда использу- чателя в переменной – как альтернативное решение, rsync от имени пользователя – не только потому, что ют ее по умолчанию). можно было взять имя пользователя из имени дирек- это безопаснее, чем запуск из-под root, но еще и для Добавьте в конец правила следующее: тории, содержащей файлы. Далее проверяется, что того, чтобы избежать проблем с правами, когда в RUN=”/usr/local/bin/synchome &” правило было выполнено, потому что было присо- вашей домашней директории окажутся файлы, при- Замыкающий символ &, отделяющий процесс от единено устройство. Правила udev запускаются при надлежащие root. запущенного скрипта, важен – udev останавливает удалении или добавлении устройства, и переменная Это только один из примеров: существует мно- обработку событий, пока обрабатывается правило, а окружения ACTION устанавливается в соответствую- жество возможных вариантов. Полезно почитать man- Вы ведь не хотите, чтобы копирование файлов забло- щее значение. страницы rsync для ознакомления с его опциями, но кировало udev. KDE может сам автоматически монтировать новые остерегайтесь всего, что может удалить файлы, осо- Теперь вам просто нужен скрипт, делающий за устройства, так что следующие семь строк проверяют, бенно если rsync запускается автоматически в фоно- вас всю грязную работу по копированию файлов и произошло ли это, а если нет – устройство монтиру- вом режиме. использующий rsync, после того как он убедится, ется. Затем проверяется присутствие вашей специ- что соблюдены все необходимые условия. Сохраните альной директории, названной здесь myfiles, на USB- 6 Проблемы выбора его как /usr/local/bin/synchome (или под тем именем, брелке и в вашей домашней директории, и запускает- Наконец, после долгих лет экономии, я накопил которое вы дали скрипту в правиле udev) и сделайте ся rsync для копирования всех новых файлов c брел- на новый компьютер или ноутбук. Единственная его запускаемым с помощью chmod +x /usr/local/bin/ ка. Здесь можно использовать множество различных Впроблема заключается в том, что он должен synchome. опций, например --delete для удаления всех файлов в позволять запустить Linux, так что я должен полу- #!/bin/sh ~/myfiles, которых нет на брелке. чить исчерпывающую информацию перед финальным MYUSER=”foo” Вместо rsync можно также использовать Unison рывком. Последние два года я использовал Debian на [[ ${ACTION} == “add” ]] || exit (www.cis.upenn.edu/~bcpierce/unison) для двухсторон- моем старом компьютере и не подозревал, что столк- if ! mount | grep -q ${DEVNAME} then нусь со следующими «проблемами»: MOUNTPOINT=”/media/$(basename ${DEVNAME})” Процессор. Загружать мне 32 или 64-битную вер- mkdir -p ${MOUNTPOINT} сию? С AMD64 все ясно, а вот Core 2 Duo от Intel – mount ${DEVNAME} ${MOUNTPOINT} -o 64-битный? Я увидал в Сети, что часть пользовате- uid=${MYUSER} лей использует на нем 32-битную версию Linux, и MOUNTED=1 запутался! fi Графика – от Nvidia или Intel, и какая модель? if [[ -d “${MOUNTPOINT}/myfiles” ]] && [[ -d “/home/ Большинство виденных мною компьютеров HP ${MYUSER}/myfiles” ]] используют чипсеты Nvidia Go 6100, Nvidia Go 6150 и then Intel X3100. Поддерживаются ли они в Linux? su - ${MYUSER} -c “rsync -ax Предположим, мой новый компьютер будет с ${MOUNTPOINT}/myfiles/ /home/${MYUSER}/myfiles/” Debian (KDE), а старый компьютер уже работает под fi Debian (Fluxbox); как мне добраться до другого ком- [[ “${MOUNTED}” ]] && umount Поддержка в KDE протокола fish плюс Konqueror пьютера, подключенного к сети? Как обмениваться ${MOUNTPOINT} очень упрощают передачу файлов по сети.

Февраль 2008 Linux Format 10 7 http://lolbook.nnm.ru Ответы

Краткая справка про... Tab-дополнение уществует ряд причин, почему пользовате- есть на моем компьютере). вы открываете браузер лям Linux случается избегать командной и пытаетесь набрать его без ошибок… а можно Сстроки. Во-первых, надо помнить различ- использовать оболочку и напечатать: ные команды; а есть еще такое чувство, что наби- fire[TAB]/us[TAB]sha[TAB]sa[TAB]x[TAB]d[TAB]sa[TA рать длинные команды и имена файлов гораздо B]x[TAB]f[TAB] дольше, чем кликнуть мышью на иконке. И если вы Первый Tab ищет путь для заданной команды «хреновая машинистка», как я, вы рискуете, что пос- (firefox). Последующие нажатия Tab пытаются допол- Tab-дополнение делает обращение с длинными ле всего этого ничего не заработает, так как что-то нить имя файла относительно текущей директории. именами файлов и командами более быстрым введено неправильно. Это не только гораздо быстрее, чем вводить полное и точным. Хорошая (или плохая, смотря по точке зрения) имя, но и позволяет избежать ошибок, поскольку новость, что обе эти причины не существенны, бла- дополняет только до имен существующих файлов. При грамотном использовании, tab-дополнение годаря одной из самых дружественных функций А вдруг совпадают более чем одна команда или повышает скорость и улучшает работу с команд- оболочки – tab-дополнению. файл? Оболочка допишет сколько возможно; если ной строкой. Некоторые оболочки, например, Bash Что такое tab-дополнение? Проще всего объ- вы нажмете Tab снова, она покажет список всех и Zsh, можно расширить на использование допол- яснить на примере. Предположим, вы захотели доступных совпадений. вы можете затем добавить нения для других вещей, например, имена машин прочитать файл – скажем, /usr/share/sane/xsane/ один-два символа и нажать Tab cнова. Таким спосо- и аргументы программ, но тут уже нужны новые doc/sane-xsane-fax-doc.html (этот файл и вправду бом можно также просмотреть доступные команды. man-страницы.

файлами между этими компьютерами, когда на них Даже 32-битные модули расширения браузера ноутбуками на сегодня – совместимость беспровод- выполнен вход под разными пользователями? можно заставить работать в 64-битном браузере с ного оборудования. С настольными машинами эта Михал Нг [Michal Ng] помощью nspluginwrapper (www.gibix.net/projects/ проблема не столь важна, так как в них почти все вза- Чем больше выбор, тем сложнее решение! nspluginwrapper), так что я рекомендую вам исполь- имозаменяемо. Ноутбуки в этом плане менее гибкие, Сейчас многие ноутбуки имеют 64-битный зовать 64-битный дистрибутив на 64-битной аппара- и рекомендуется проверить их на www.linux-laptop.net Опроцессор – процессор Intel Core 2 Duo 64- туре, если только у вас нет веских оснований сделать на совместимость. битный, а вот Core Duo 32-битный. Похоже, ваш новый иначе. Если оба компьютера подключены к интернету компьютер – это надолго, и я порекомендовал бы 64- Графические чипсеты и от Nvidia, и от Intel рабо- через маршрутизатор, его страница администри- битную архитектуру. Некоторые люди действительно тают отлично. Nvidia дает большую производитель- рования показывает подключенные машины, осо- запускают 32-битную систему на 64-битном обору- ность в 3D, но требует проприетарных драйверов. бенно если маршрутизатор работает как DHCP- довании, в основном по причине желания использо- Чипсеты Intel работают с 3D с помощью драйверов сервер. вать закрытое ПО, не имеюшее 64-битной версии – но X.Org. Беспроводные чипы Intel, по моему опыту, тоже Перенос файлов между компьютерами можно большинство 32-битных программ все равно запуска- «просто работают» с Linux. Другие чипсеты сперва обеспечить, смонтировав сетевые диски с помощью ются на 64-битной системе. внимательно проверьте: одна из основных проблем с NFS и Samba, или используя scp для копирова- ния. Поскольку у вас KDE, самый простой способ – набрать fish://username:password@ipaddress/путь/к директории в адресной строке Konqueror, чтобы видеть содержи- мое этой директории и переносить туда файлы. Для этого нужно только иметь запущенный на другом компьютере SSH.

7 В интернет из Mandriva Давно хотел попробовать Linux и вот, по случаю, приобрел Mandriva 2008.0 Free. В Установил, попробовал – очень понравилось, хотя немного непривычно по сравнению с также установленной у меня Windows XP. А какая же радость от работы, если нет интернета? Я живу в поселке и выхожу в Сеть через сотовый телефон (Sagem my401x), который подключается к компью- теру через Bluetooth-адаптер Cyber Brand SL-30W. Попробовал следовать инструкциям с форумов, но добился только появления окна с ошибкой Can’t connect to DBus! Unable to start kbluetooth. restart dbus and the bluetooth service. Помогите сделать все по правилам. Большинство маршрутизаторов показывают список клиентов, подключенных по DHCP. Роман Соколов

108 Linux Format Февраль 2008 Ответы

В первую очередь, необходимо заново Windows, и окончание строки у них соответствующее, запустить системную службу обмена сооб- что сбивает компилятор с толку. Если пересохранить Нужна помощь! О щениями D-Bus. Откройте Центр управле- такой файл с окончанием строки в стиле Unix, все ния Mandriva Linux, перейдите на вкладку Система > отлично собирается, но их бывает очень много. Можно Для наилучшего ответа на ваш вопрос нам Сервисы и активируйте службу messagebus (в случае ли как-то автоматизировать конвертацию большого нужно знать как можно больше подробностей. необходимости, поставьте также галочку При загруз- количества «неправильных» файлов? Детально опишите конфигурацию системы. ке, чтобы сервис стартовал вместе с системой). Postal Если вы получили сообщение об ошибке, Затем вставьте Bluetooth-адаптер и удостоверьтесь, Для этих целей существует программа приведите текст сообщения и точно опишите что утилита kbluetooth запущена (в системном лотке dos2unix, которую можно установить через вызвавшие его действия. Если у вас проблемы должен отображаться значок Bluetooth, при наве- О менеджер пакетов вашего дистрибутива или с оборудованием, то опишите его. Если Linux дении на него курсора мыши должна появляться скачать по адресу http://www.megaloman.com/~hany/ уже запущен, то выполните в root-терминале информация об адаптере). Если значка нет, запус- software/hd2u/ следующие команды и прикрепите к письму тите kbluetooth из Меню > Утилиты > Системные. Пользоваться ею просто: файл system.txt: Теперь вернитесь в Центр управления, перейдите на dos2unix имя_файла вкладку Сеть и интернет и выберите пункт Настройка Файлы с окончанием строки в стиле Unix не изме- uname -a >system.txt нового сетевого интерфейса. В появившемся мас- няются, поэтому вполне можно использовать конструк- lspci >>system.txt тере отметьте вариант Коммутируемое соединение цию вроде lspci -vv >>system.txt по Bluetooth, укажите в списке ваш телефон (если find . -type f -exec dos2unix ‘{}’ \; список пуст или вашего телефона в нем нет, удос- для пакетного преобразования всех файлов в теку- Пожалуйста, помните, что сотрудники товерьтесь, что на аппарате включен Bluetooth и воз- щем каталоге. Вместо -type f можно, конечно, напи- журнала НЕ являются авторами или можно его обнаружение другими устройствами), а сать -name \*.cpp, подстроив фильтр в соответствии с разработчиками Linux, любых пакетов или затем введите APN (имя точки доступа): обычно это вашими потребностями. дистрибутивов. Зачастую люди, отвечающие internet или internet.название_сотового_оператора, за приложения, выкладывают большую часть дополнительную информацию можно получить на 9 Палка о двух концах информации на web-сайты. Попробуйте сайте вашей сотовой компании. Имя пользователя и У меня возникла необычная проблема, и я почитать документацию! пароль обычно можно не указывать. нигде не могу найти ее решения. В некоторых На следующем шаге активируйте пункт Разрешить приложениях Qt, при вызове мышью выпадаю- В Мы стараемся ответить на все вопросы. пользователям управлять соединением (чтобы вам не щего списка или меню, невозможно выбрать ни один Если вы не нашли ответ на свой, это, возможно, приходилось вводить пароль root при каждом подклю- пункт или вообще кликнуть на что-либо. Работают потому, что мы уже ответили на похожий чении) и снимите галочку Активировать соединение только клавиши управления курсором на клавиатуре и вопрос. при входе в систему. Наконец, можно поставить галоч- Escape/Enter. Если нажать одну из них, все переходит ку Активировать соединение сейчас и нажать кнопку в нормальный режим. Эта ошибка постоянно проявля- Завершить. Телефон, вероятно, попросит разрешить ется в KNetDocApp и настройках апплета системного подключение и ввести для него пин-код, тот же пин-код монитора. Из-за чего она может происходить? надо указать и в появившемся окне на компьютере. Стас Судя по всему, что-то вмешивается в нор- 8 Перевод строки мальный процесс обработки сообщений Qt. Я часто собираю приложения из исходных тек- О Проверьте, не используете ли вы программ стов, загруженных из репозитория Subversion вроде Xneur или датчиков «пробега» мыши. Попробуйте Впри помощи TortoiseSVN. Иногда попадают- также отключить в Xneur функцию отслеживания ся программы, в которых есть файлы, написанные в мыши – должно помочь.

Февраль 2008 Linux Format 10 9 http://lolbook.nnm.ru Ответы

Большой вопрос Что можно сделать, если у вас заблокирован выход в интернет?

10 Доступ ЗАПРЕЩЕН! (36.7 KB) набрав http://192.168.2.1 в вашем браузере. У вас Несколько месяцев назад я установил Ubuntu Interrupt:19 Base address:0x2000 спросят имя пользователя и пароль; скорее всего с вашего диска (LXF DVD94) на новый Пожалуйста, посоветуйте, что мне делать даль- это admin и 1234, если вы их не меняли. В Compaq Presario, там уже была установлена ше. Если страница администрирования маршрутиза- Vista. В результате я не смог выйти в интернет. Мне Барри Сьюард [Barry Seward] тора загрузилась, ваша сеть настроена правильно. подсказали, что выручит маршрутизатор. Я попробо- Совет переключиться с USB-модема на Теперь надо настроить интернет-часть на маршру- вал Edimax ADSL2+ в проводном режиме, но так и не подходящий Ethernet-модем правилен: они тизаторе. Щелкните по ссылке Quick Start, запусти- получил ответа. Узнав, как проверить статус моего О работают более эффективно, плюс боль- те мастер в вашем браузере и введите параметры, интернет-соединения, я ввел в командной строке: шинство из них включают маршрутизатор, и вы которые вам дал ваш провайдер. Если вы не уверены /sbin/ifconfig -a можете подключить к интернету не один компьютер. в каких-либо настройках, обратитесь к вашему про- Мне возвратилось следующее: Вывод ifconfig показывает только ваше соединение с вайдеру за разъяснениями. eth0 Link encap:Ethernet HWaddr 00:1A:92: маршрутизатором, который является мостом между Если мастер почему-либо выдает ошибку, у вас B5:69:A1 локальной сетью и интернетом. Соединение с моде- есть два варианта. Первый – использовать ком- inet6 addr: fe80::21a:92ff:feb5:69a1/64 мом и с интернетом – это разные вещи. К несчастью, пьютер с Windows для запуска мастера (единожды Scope:Link вывод показывает, что вы не соединены с маршру- настроенный маршрутизатор будет работать с любой UP BROADCAST RUNNING тизатором – здесь нет поля inet addr:, показывающе- OC); второй – использовать раздел Internet во вклад- MULTICAST MTU:1500 Metric:1 го ваш IP-адрес. ке Interface Setup. RX packets:38 errors:0 dropped:0 Убедитесь, что Вы используете DHCP в настрой- При правильной настройке компьютера вы смо- overruns:0 frame:0 ках вашей сети, зайдя в System > Administration > жете запросто подключать к своему интернет-соеди- TX packets:340 errors:0 dropped:0 Network, выбрав ваш Ethernet-интерфейс, а затем нению другие компьютеры, до четырех за раз. Если overruns:0 carrier:0 Properties. Установите здесь Automatic Configuration они установлены на использование DHCP, что в collisions:0 txqueuelen:1000 (DHCP), сохранив все остальное, и соединитесь большинстве дистрибутивов сделано по умолчанию, RX bytes:4014 (3.9 KB) TX bytes:37621 со страницей администрирования маршрутизатора, никаких настроек больше не потребуется. LXF

Шаг за шагом: Проверь свое соединение и конфигурацию

1 Забудьте про USB 2 Взгляните на IP-адрес 3 Автонастройка сети Совет для Барри заменить его USB-модем на Если ifconfig не показывает адрес inet (не inet6), Настройте свой компьютер на использование Ethernet очень хорош – производительность значит, нет соединения с маршрутизатором. автоматической конфигурации DHCP: повышается, а настройка облегчается. все ADSL-модемы ее поддерживают.

4 Администрирование 5 Интернет-конфигурация 6 Спросите у провайдера маршрутизатора Здесь много настроек, но в большинстве случаев Сайт вашего провайдера должен содержать Если вы видите эту страницу, значит, вы соеди- сгодятся те, что по умолчанию. Просто убеди- инструкции по настройке вашего соединения. нились с маршрутизатором, и локальная часть тесь, что вы дали правильные имя и пароль. Или позвоните ему, если выйти в интернет вашей сети работает. не получается.

110 Linux Format Февраль 2008

LXFDVD102 Новая жизнь ветеранов Mandriva 2008, DSL и Puppy

Дистрибутив Linux Mandriva 2008 олгие годы Mandriva лидировал в Как и все предыдущие релизы, Mandriva начинении Linux’ом «среднестатис- 2008 Free уделяет большое внимание простоте Дтических» настольных систем: поль- использования для новичков в Linux, добива- зователей завлекали графическая программа ясь этой простоты с помощью своего трехсто- Добро пожаловать на DVD 102-го выпус- установки (тогда как большинство дистри- роннего подхода: ка. В этом месяце мы представляем вам бутивов имели только текстовую) и мощные Простая и быстрая установка: Как уже гово- Mandriva 2008, отличный дистрибутив и инструменты настройки. рилось, Mandriva был одним из первых дистри- для новичков, и для опытных пользова- телей, а также несколько небольших и Хотя недавний взлет Ubuntu несколько бутивов, применивших графическую програм- нетребовательных дистрибутивов – для отвлек внимание от Mandriva, это по-пре- му-инсталлятор, и до сих пор удерживает план- реанимации старых машин. Также вас жнему классный дистрибутив, способный ку одной из самых простых в установке разно- ждут документация, игры и лучшие ре- угодить и тем, кто только-только перешел видностей Linux. В любой момент вы можете лизы мира Open Source. Наслаждайтесь с Windows, и матерым линуксоидам. Ярый вывести окно Справки, которое поможет вам. диском, а на случай вопросов или пред- фанат Mandriva – бывший редактор LXF Ник Хороший подбор программ: Выбрав уста- ложений, черкните мне пару строк! Вейч [Nick Veitch], а значит, даже самые новку по умолчанию, вы получите множест- Майк Сондерс искушенные пользователи Linux извлекают во программ для обычного повседневного Редактор диска из этой операционной системы многое. использования. Здесь есть Firefox в качестве [email protected] Итак, мы очень рады представить вам в браузера, OpenOffice.org для работы с доку- этом месяце Mandriva 2008 Free, свободно ментами, GIMP для работы с графикой и мно- распространяемую свежую версию дистри- жество других приложений с открытым кодом. бутива: ее можно установить прямо с наше- И, конечно же, вы можете добавить другие го DVD. программы с диска. Шаг за шагом: Устанавливаем Mandriva 2008 Free

1 Загрузка 2 Язык Загрузите свой Запустится программа компьютер с наше- установки; выберите го DVD: выберите язык и нажмите Install в этом меню Далее, чтобы с помощью курсо- продолжить. ра и нажмите Enter.

5 Настройка 6 Рабочий стол разбиения Пропустите шаг Если вы выбрали «Дополнительные ручное разбиение, загрузочные носители» назначьте корневой (/) и выберите рабочий раздел не менее 5 ГБ, стол KDE, Gnome или в формате ext3, свой собственный и 512 МБ для раздела вариант. (Кто затруд- подкачки (виртуаль- няется в выборе, ной памяти). просто оставьте KDE.)

112 Linux Format Февраль 2008 Mandriva 2008 DVD

Центр Управления Mandriva: Это – самый обои рабочего стола, настройки Интернета и знаменитый инструмент Mandriva, он пред- многое другое в раздел Linux – потрясающая ставляет собой единый пункт настройки сис- экономия времени. темы. Некоторые другие дистрибутивы снаб- Сетевые настройки были усовершенство- жены целым набором небольших систем- ваны благодаря объединению нескольких ных инструментов, разбросанных по меню, а отдельных утилит в единую программу под Mandriva соединил их все вместе; и если вам названием draknetcenter. Все это основано надо добавить новую учетную запись поль- на ядре 2.6.22, Glibc 2.6.1 и X.org 7.2 на базе зователя или настроить беспроводное сете- GCC 4.2.2. вое соединение, начинать следует именно с Среди основных программ – KDE 3.5.7, Центра Управления. Gnome 2.20, Firefox 2.0.0.6 и OpenOffice.org Релиз 2008 порадует уже существующих 2.2.1. Так что если вы работаете с дистрибу- пользователей Mandriva (или других опыт- тивом более старой версии и хотите получить ных линуксоидов, ищущих новый дистрибу- легкий доступ к самым свежим приложени- тив) несколькими приятными новшествами. ям, этот дистрибутив – идеальное решение. Для установки вставьте в дисковод LXF Центр управления Compiz Fusion, связавший воедино усилия Что касается системных требований, Mandriva DVD и перезагрузите компьютер. Если ваш Mandriva – Compiz и Beryl, добавит блеска вашему рабо- 2008 нужно как минимум 1-ГГц Intel или AMD – ПК настроен на загрузку с DVD, перед вами швейцарский нож чему столу с помощью 3D-эффектов. Кроме версия на нашем DVD 32-битная, но она будет появится загрузочное меню, и вы можете среди инструментов того, дистрибутив практически полностью отлично работать и на х86-64. следовать приведенным ниже инструкциям. настройки: построен на спецификации меню XDG, и если Вам также потребуется 256 MБ ОЗУ (в иде- Если нет, вам придется изменить настрой- теперь с утилитой вы установите программные пакеты из других але, для хорошей производительности – 512 ки BIOS на загрузку с DVD, а не с жесткого миграции дистрибутивов, то легко найдете их в своем MБ) и 5 ГБ свободного места на жестком дис- диска. с Windows. меню приложений, и вам не придется откры- ке для операционной системы и ваших личных Процесс установки очень прост, и инструк- вать командную строку. файлов. ции касаются только самого важного. Но если По части инструментов настройки, Если вы работаете в Windows и хотите в какой-то момент вас охватит чувство неуве- Mandriva использует нового мастера для пере- параллельно установить Linux – это реально; ренности, можете вызвать Справку в програм- носа документов и настроек с машин Windows. программа установки Mandriva сожмет разде- ме установки, она предоставит вам больше Основанный на коде программы установки лы Windows (там, где есть свободное место), информации. Ubuntu, этот инструмент просматривает ваш чтобы освободить место для Linux. Мы реко- Если и это не помогло, можете получить жесткий диск в поисках раздела Windows. мендуем перед этим дефрагментировать раз- рекомендации и советы от опытных пользова- Если ему это удается, он предлагает пере- дел Windows и, конечно, создать резервные телей Mandriva на www.mandrivausers.org или нести ваши личные файлы (Мои документы), копии важных данных! www.linuxforum.ru.

3 Разбиение 4 Опции диска на Можно отвести под разделы Linux весь диск, Укажите, хотите ли создать разделы вы заново устано- вручную, организо- вить систему или вать двойную загруз- обновить существу- ку с другими дистри- ющую, и тогда вы бутивами или увидите этот экран. Windows, а также сократить существую- щие разделы, чтобы добыть необходимое пространство.

7 Установка 8 Окончание Теперь начнется После окончания копирование файлов установки, задайте Mandriva на ваш пароль админи- жесткий диск; стратора и создай- в зависимости те учетную запись от скорости вашего пользователя (не ПК это может занять забудьте эти рекви- от 10 минут до часа. зиты!). Затем, пос- Попейте кофе! ле окончательной настройки, можете перезагрузиться, войти в систему и наслаждаться.

Февраль 2008 Linux Format 113 http://lolbook.nnm.ru DVD Как начать

Дистрибутив Linux Работа с Mandriva становив Mandriva 2008, вы навер- няка захотите познакомиться со сво- Исследуем рабочий стол Mandriva (KDE) У ей новой операционной системой. При первой загрузке вам предложат ввести имя пользователя и пароль – используйте 1. Рабочий стол информацию, которую вы сами предостави- Ссылки на домашнюю ли на шаге 8 процесса установки. Затем вы директорию и личные 4. Konqueror файлы находятся здесь. попадете на рабочий стол – если во время Файловый установки вы не выбрали ничего иного, это менеджер KDE 2. Меню будет KDE. изобилует Для просмотра функциями. Постоянным пользователям Linux все предустановленных здесь покажется достаточно простым и зна- программ Mandriva, комым; это – довольно стандартная настройка нажмите сюда. KDE (хотя в ней прибавилось тем), и ничего 5. Системный такого необычного вдруг не выскочит из-под 3. Значки быстрого лоток Здесь отображают- панели, чтобы удивить вас. запуска ся маленькие Быстрый запуск Те, для кого это первая вылазка в страну значки используе- web-браузера, email Linux, обнаружат, что рабочий стол KDE весь- мых программ. и много другого… ма похож на Windows по своей раскладке. Можно просмотреть установленные програм- мы через кнопку Меню в нижнем левом углу экрана, и выйти из системы (и выключить Настройка менты и настройки Windows» [Import Windows компьютер), также используя эту кнопку. Как уже говорилось, Центр Управления documents and settings]. Четыре пронумерованных кнопки на нижней Mandriva (MCC) – главный инструмент адми- Поскольку это – свободная версия Mandriva панели – для виртуальных рабочих столов; нистрирования системы. Если надо управлять 2008, в нее не включены коммерческие кодеки это рабочее место для ваших окон. пользователями, добавлять новые программы, для определенных медиа-форматов (напри- Если вы в основном знакомы с Microsoft настраивать сеть или оборудование, нажмите мер, для просмотра DVD). Это сделано, что- Windows, то, возможно, раньше не встреча- Меню > Утилиты > Системные > Настройка бы обеспечить свободное распространение лись с виртуальными рабочими столами, но компьютера. Mandriva запросит ваш адми- Mandriva по всему миру, без всяких проблем для Linux они – обычная практика. Лучший нистраторский (root) пароль (поскольку вы с ценами, копирайтом или патентами. Однако способ их понять – работать с ними: щелк- собираетесь изменить внутренние настройки если вам действительно нравится Mandriva, и ните по кнопке 1 и откройте web-браузер и системы) – введите его, и перед вами появит- вы хотите, чтобы в ней была и поддержка вос- почтовый клиент, затем щелкните по кноп- ся основное окно MCC. Слева оно разделяется произведения DVD, и совместимость с играми ке 2 и откройте текстовый редактор и тер- на категории: тут есть управление оборудова- Windows, тогда попробуйте Mandriva Linux минал. Теперь с помощью кнопок 1 и 2 вы нием, сеть, безопасность, загрузка и другие Powerpack: http://www.mandriva.ru/mandriva/ можете переключаться между просматрива- опции. Например, чтобы испробовать новый powerpack/. Стоимость – 1975/2325 руб., весь- емыми приложениями и распределять их по инструмент миграции из Windows, нажми- ма недорого за все эти дополнительные функ- категориям: например, рабочий стол 1 – для те на вкладку Система, затем опуститесь до ции; плюс к тому, вы поддержите Mandriva и интернет-приложений, а рабочий стол 2 – для Administration tools [Инструментов админист- поможете ей и в дальнейшем предлагать сво- офисных. рирования] и нажмите «Импортировать доку- бодную редакцию. Шаг за шагом: Добавление программ

1 Пуск 2 Поиск Вставьте LXF DVD. Просмотрите катего- Нажмите Меню > рии слева (или ввер- Установка и удале- ху) и отметьте галоч- ние программ, кой программы, и введите свой которые хотите администраторский установить. (root) пароль, когда вас об этом попро- сят. На данном этапе не надо добавлять другие источники пакетов.

114 Linux Format Февраль 2008 Микродистрибутивы DVD

Поможем старичкам Микро-дистрибутивы DSL и Puppy

этом месяце мы публикуем статью про памяти. DFM – простенький файловый менед- VectorLinux, крошечный дистрибутив, жер рабочего стола, а Dillo – браузер. К сожа- В созданный для того, чтобы выжать лению, со сложными сайтами Dillo справляет- всю возможную производительность из ста- ся с трудом, но для сайтов с высокими требо- рых машин. Он находится на нашем DVD, в ваниями под рукой имеется Firefox 1.0. Есть разделе Дистрибутивы, в виде ISO-образа – еще XPaint, Siag Office, XMMS и карточные можете записать его на CD-R и загрузиться игры – не самые мощные из существующих с полученного диска. Благодаря этой статье приложений, но их более чем достаточно, что- мы здесь на VectorLinux останавливаться не бы что-то написать и послушать музыку. будем; вместо этого займемся Damn Small Однако же лучшее в DSL – его панель Linux и Puppy Linux. управления, центральный пункт настройки Это дистрибутивы для действительно ста- дистрибутива. Учитывая ограниченность в рых машин: тех самых бежевых блоков эры ресурсах этих крошечных дистрибутивов, при- 486. Вам бы и в голову не пришло, что у старья нимаешь как должное необходимость выпол- с такими жалкими возможностями еще есть нять большинство задач администрирования надежда, но многогранность свободного ПО из командной строки, поскольку для чего-то воссияла и для них. Оба дистрибутива предла- вроде YaST или Центра Управления Mandriva гаются в виде ISO-образов для записи на CD-R. просто нет места. Однако DSL включает целый Damn Small Linux: чертовски не только маленький, но и быстрый – Damn Small Linux [англ. «чертовски малень- ряд полезных утилит, и вам не придется лазить отлично подходит для хромых старых ПК, пылящихся на чердаке. кий Linux»], он же DSL (www.damnsmalllinux. по оболочке, чтобы настроить сеть или сде- org), занимает 50 MБ и умудряется втис- лать нечто в том же духе. На нашем DVD два Документация нуть в столь малое пространство невероятное ISO-образа; сначала попробуйте dsl-4.2.iso, количество программ. Дистрибутив работает в а затем, если не загрузится, syslinux. Интервью LXF режиме Live, поэтому можете попробовать его Puppy Linux 3.01 (www.puppylinux.org) – прямо с CD, без установки на жесткий диск – и похожий дистрибутив, но он ближе к 100 MБ, В разделе Журнал мы сделали черт возьми, как же он быстро загружается! и в результате смог вместить полный пакет подборку интервью из предыду- Минимальные системные требования – 486 и Mozilla Seamonkey. Большинство членов сооб- щих номеров, в формате PDF. 16 MБ ОЗУ, а если на вашей машине 128 MБ, щества Puppy концентрируются на Puplets – Если вы уже какое-то время то весь дистрибутив в ОЗУ и копируется. Это вариантах дистрибутива, заточенных под почитываете Linux Format, то вы означает, что нет никаких обменов с другими определенные виды приложений. Например, в курсе, что мы стараемся носителями – все уже в памяти, и поэтому производный от Puppy Grafpup изобилует гра- зажать в уголке самых выдаю- щихся деятелей Open Source и работает он исключительно быстро. фическими инструментами. На нашем диске допросить их с пристрастием на Менеджер окон в Damn Small Linux 4.2 по вы найдете PuppyRus – специализированную Откройте свою читалку PDF самые злободневные темы. Будь умолчанию – JWM; по виду он напоминает версию Puppy Linux, адаптированную для рус- это Сан-Франциско, Мюнхен, и насладитесь нашим трепом IceWM и отличается умеренностью по части скоязычных пользователей. Барселона, или, э-э, Бристоль, с шишками Линуксландии. мы тут как тут. Загляните в раз- дел Журнал – там вас ждут В том же тоне мы пообщались 30 файлов PDF, которые вы с Марком Шаттлвортом [Mark можете прочитать с помощью Shuttleworth] о его колоссально 3 Установка Evince в Gnome, KPDF в KDE или популярном проекте Ubuntu, рас- Xpdf в других рабочих столах/ смотрев заодно и его взаимоот- Выбрав нужные оконных менеджерах. Вот пара ношения с Debian. программы, нажмите интересных моментов... А вот Стюарт Коэн [Stuart Применить, и они Когда мы заловили Иэна Cohen], руководитель Open будут установлены Мэрдока [Ian Murdock], мы поин- Source Development Labs (OSDL), с диска. Если это тересовались мнением создателя объясняет, почему его организа- графические Debian о том, каков на данный ция является «центром тяжести» программы, ищите момент мир дистрибутивов. для Linux. Читайте также интер- их в главном меню. Прошло уже почти 15 лет после вью Эндрю Мортона [Andrew старта Debian GNU/Linux; с тех Morton] о взгляде изнутри на пор проект обрел повсеместное программирование ядра, Брайана уважение в мире Linux, несмотря Белендорфа [Brian Behlendorf] на дикие задержки между рели- о том, что стоит за Apache, зами и внутренние разногласия, и Джима Землина [Jim Zemlin] которые бьют по проекту. о стандартах в Linux.

Февраль 2008 Linux Format 115 http://lolbook.nnm.ru DVD Gimp 2.4 и другие

Новое ПО GIMP 2.4, Beagle, GBirthday, pyBackPack

амый крупный релиз ПО этого меся- подобным названием. Установите все, что по- (из календаря Evolution). Еще есть pyBackPack, ца – GIMP 2.4.3, третья версия серии требует скрипт конфигурации, затем введите: полезная программа для обеспечения безо- С2.4: он отличается большим коли- make пасности ваших данных: она позволяет легко чеством исправленных ошибок; значками make install резервировать и восстанавливать ваши фай- Tango; масштабируемыми кистями; улучшен- Для второй строки вам придется переклю- лы в простые архивные файлы, на съемном ными инструментами выделения; инструмен- читься в root – sudo bash в Ubuntu или su в носителе (CD/DVD-R) или удаленном сервере том выбора переднего плана для выделения большинстве других дистрибутивов. Тут ском- через SSH. Если вы – поклонник легковесного отдельных объектов; поддержкой формата пилируется и установится GIMP 2.4.2. Когда рабочего стола Xfce, вы найдете на нашем DVD Photoshop ABR brush; и расширением возмож- все будет готово, запустите его: новый релиз 4.4.2 в виде исходного кода. ностей печати. /usr/local/bin/gimp Обновляться явно стоит, если вы исполь- Этот каталог должен быть уже включен в зуете 2.0 или 2.2. Полный исходный код и PATH, поэтому может оказаться достаточным пакеты Ubuntu вы найдете в разделе Графика набрать просто gimp. Если возникнут пробле- нашего DVD; кто не знаком с созданием про- мы, наш форум укажет вам верное направле- граммы из исходных текстов, проверьте, нет ние: www.linuxforum.ru. ли нового релиза в пакетных репозиториях вашего дистрибутива. Если вы пойдете путем Радости рабочего стола исходного кода, вам понадобятся инструмен- Новая версия инструмента поиска рабоче- ты разработки для GTK 2.10.13 или новее. го стола Beagle вышла в декабре, с отрад- Удалите все имеющиеся версии GIMP, скопи- ным улучшением производительности и руйте gimp-2.4.3.tar.bz2 в домашнюю директо- использования памяти. Для сохранения вкла- рию, откройте терминал и введите: док на сообщениях она использует движок tar xfvj gimp-2.4.2.tar.bz2 Thunderbird, плюс новые расширения для cd gimp-2.4.2 Firefox и Epiphany. Одна из новых функций – ./configure поддержка сетевого поиска: несколько демо- Этот скрипт извлечет исходный код GIMP, нов Beagle обнаруживают друг друга одного переключится на новую директорию и настро- за другим через Avahi, чтобы вы могли най- ит код для работы на вашей машине. Он также ти нужные файлы на удаленных ПК. Полный Значки и темы GIMP 2.4 приведены в соответствие подскажет вам, если у вас не выполняются исходный код вы найдете на нашем DVD, а на поддерживаемых платформах. какие-то требования компиляции: например, полный список изменений – на http://tinyurl. если у вас нет библиотеки разработчика для com/382s57. PNG, он сообщит вам, что не нашел поддерж- GBirthday – небольшая утилита, которая И наконец… ки PNG. Тогда вы можете зайти в менеджер сидит в вашем системном лотке Gnome и пре- пакетов и найти libpng-dev или иной пакет с дупреждает вас о приближении дней рождений Стремглав в наш раздел Игры! Там вас ждет множество потрясающих релизов. Если вы – начинающий Каспаров, испытайте себя в DreamChess, стильной трехмерной игре, снабженной «умеренно сильным» движком. Весьма полезна возможность подвесить DreamChess к движку другой игры, совместимой с Xboard, если игра по умолчанию показалась вам черес- чур легкой и хочется чего-то посерьезнее. Для футбольных фанатов мы приготовили Slam Soccer, Java-игру с 80-ю командами, 10-ю погодными условиями и возможностью построить собственный стадион. Чтобы сыграть в нее, извлеките файл bolzplatz2006-1.0.3- linux.tar.gz и запустите в образовавшейся директории bolzplatz2006. sh. Да не забудьте взглянуть на Kobo Deluxe: получите удовольствие от космической стрелялки старой школы. LXF

Смотрим в космическое пространство и отстреливаем врагов в Kobo Deluxe.

Роскошный новый релиз Xfce с исправлениями ошибок и новыми переводами.

116 Linux Format Февраль 2008 DVD

Информация о диске ЧТО-ТО ПОТЕРЯЛИ? Часто случается, что новые программы зависят от дру- гих программных продуктов, которые могут не вхо- дить в текущую версию вашего дистрибутива Linux. Мы стараемся предоставить вам как можно больше важных вспомогательных файлов. В боль- шинстве случаев, последние версии библиотек и другие пакеты мы включаем в каталог «Essentials» (Главное) на прилагаемом диске. Поэтому, если в вашей системе возникли проблемы с зависимостя- ми, следует заглянуть именно туда. ФОРМАТЫ ПАКЕТОВ Мы стараемся включать как можно больше раз- личных типов установочных пакетов: RPM, Deb или любые другие. Просим вас принять во внимание, что мы ограничены свободным пространством и доступными бинарными выпусками программ. По возможности, мы будем включать исходные тексты для любого пакета, чтобы вы смогли собрать его самостоятельно. ДОКУМЕНТАЦИЯ На диске вы сможете найти всю необходимую информацию о том, как устанавливать и использо-

ВНИМАТЕЛЬНО ПРОЧТИТЕ ЭТО ПЕРЕД ТЕМ, КАК ИСПОЛЬЗОВАТЬ DVD-ДИСК ! ПРОЧТИТЕ ЭТО ПЕРЕД ТЕМ, КАК ИСПОЛЬЗОВАТЬ ВНИМАТЕЛЬНО вать некоторые программы. Пожалуйста, не забы- вайте, что большинство программ поставляются вместе со своей документацией, поэтому дополни- тельные материалы и файлы находятся в соответ- ствующих директориях. ЧТО ЭТО ЗА ФАЙЛЫ? Если вы новичок в Linux, вас может смутить изобилие различных файлов и расширений. Так как мы стараемся собрать как можно больше вариантов пакетов для обеспечения совместимости, в одном каталоге часто находятся два или три файла для различных версий Linux, различных архитектур, исходные тексты и откомпилированные пакеты. Чтобы определить, какой именно файл вам нужен, необходимо обратить внимание на его имя или расширение: имя_программы-1.0.1.i386.rpm – вероятно, это бинарный пакет RPM, предназначенный для работы на системах x86; имя_программы-1.0.1.i386.deb – такой же пакет, но уже для Debian; имя_программы-1.0.1.tar.gz – обычно это исходный код; имя_программы-1.0.1.tgz – тот же файл, что и выше по списку: «tgz» - это сокращение от «tar.gz»; имя_программы-1.0.1.tar.bz2 – тот же файл, но сжатый bzip2 вместо обычного gzip; имя_программы-1.0.1.src.rpm – также исходный код, но поставляемый как RPM-пакет для упрощения процесса установки; имя_программы-1.0.1.i386.FC4.RPM – бинарный пакет RPM для x86, предназначенный специально для операционной системы Fedora Core 4; имя_программы-1.0.1.ppc.Suse9.rpm – бинарный пакет RPM, предназначенный специально для операционной системы SUSE 9.x PPC; имя_программы-devel-1.0.1.i386.rpm – версия для разработчиков.

Если диск не читается... Это маловероятно, но если все же прилагаемый к журналу диск поврежден, пожалуйста, свяжитесь с нашей службой поддержки по электронной почте: [email protected]

Декабрь 2006 Linux Format 117 DVD

СОЗДАНИЕ УСТАНОВОЧНЫХ ДИСКОВ ПРИ ПОМОЩИ CDRECORD

Самый быстрый способ записать ISO-образ на чистую матрицу – это cdrecord. Для всех перечисленных ниже действий потребуются права root. Для начала опре- делите путь к вашему устройству для записи дисков. Наберите следующую команду: cdrecord -scanbus После этого на экране терминала должен отобра- зиться список устройств, подключенных к вашей систе- ме. SCSI-адрес каждого устройства представляет собой три числа в левой колонке, например, 0,3,0. Теперь вы можете с легкостью записать образ на диск: cdrecord dev=0,3,0 -v /путь к образу/image.iso Чтобы упростить дальнейшее использование cdrecord, сохраните некоторые настройки в файле /etc/ default/cdrecord. Добавьте по одной строке для каждо- го устройства записи (вероятно, в вашей системе при- сутствует всего одно такое устройство): Plextor= 0,3,0 12 16M Первое слово в этой строке – это метка, затем, пос- ле адреса SCSI-устройства вы должны указать скорость и размер буфера. Теперь вы можете заменить SCSI- адрес в командной строке на выбранную вами метку. Все будет еще проще, если вы добавите следующее: CDR_DEVICE=Plextor Все, что вам теперь нужно для записи ISO-образа – это набрать команду cdrecord -v /path/to/image.iso Если вы не из числа любителей командной строки, в таком случае вам придет на помощь утилита gcombust. Запустите ее из-под root, выберите вкладку Burn и ISO 9660 Image в верхней части окна. Введите путь к обра- зу, который вы хотите записать на диск, и смело нажи- майте на Combust!. Пока ваш образ пишется на диск, можете выпить чашечку кофе.

Другая ОС? Вам не обязательно использовать Linux для записи ком- пакт-диска. Все необходимые файлы уже включены в ISO-образ. Программы вроде cdrecord просто переносят данные на чистую матрицу. Если у вас нет устройства для записи дисков, можно найти того, у кого оно есть, и записать диск на его компьютере. На нем может стоять Windows, Mac OS X, AmigaOS, или любая другая ОС.

Нет устройства для записи дисков? А что, если у вас нет устройства, с помощью которо- го можно было записать образ на диск? Вы знаете кого-либо с таким устройством? Вам не обязательно использовать Linux для записи дисков, подойдет любая операционная система, способная распознать пишущий привод (см. выше). Некоторые дистрибутивы умеют монтировать образы дисков и выполнять сетевую установку или даже уста- новку с раздела жесткого диска. Конкретные методы, конечно, зависят от дистрибутива. За дополнительной информацией обращайтесь на web-сайт его разработ- чика. LXF

118 Linux Format Декабрь 2006 На вашем диске DVD

Содержимое DVD навскидку

ЖУРНАЛ ИГРЫ CodeProject ...... Код из учебника DreamChess ...... Трехмерные шахматы. по программированию. Kobo Deluxe ...... Космическая стрелялка. Interviews ...... Статьи в формате PDF. Slam Soccer ...... Комичный футбол. MandrivaVideo ...... Видеоурок Mandriva TecnoballZ ...... 50-уровневая игра. от С.Яремчука. Qt4 ...... Код примеров статьи. ГРАФИКА GIMP ...... Программа для манипуляции АУДИО изображений GNU. Ardour ...... Станция по работе mtPaint ...... Небольшое приложение с цифровым звуком. для рисования. JACK ...... Аудиосервер с низкой латентностью. СПРАВКА MPD ...... Music Player Daemon. Answers ...... Решенные проблемы Linux. PulseAudio ...... Аудиосервер. RUTE ...... Руководство администратора Linux. РАБОЧИЙ СТОЛ До сих пор оплакиваете поражение Англии Beagle ...... Поисковая машина HOTPICKS на Евро-2008? Или вы из другой страны, и вам на это рабочего стола. Brasero ...... Программа для записи CD/DVD. плевать? Насладитесь чудесной игрой в Slam Soccer. FBReader ...... Программа для чтения Comisat ...... Коллекция мини-игр. электронных книг. gbrainy ...... Игра-головоломка. GBirthday ...... Программа напоминания GCstar ...... Менеджер коллекций. СИСТЕМА о днях рождения. Genius ...... Мощный калькулятор. realtime-patches ...... Заплатки реального времени Medit ...... Многоплатформенный Indywikia ...... Браузер для Wikipedia. для ядра. текстовый редактор. Kile ...... Редактор TeX/LaTeX. Seahorse ...... Менеджер ключей шифрования. pyBackPack ...... Инструмент Minirok ...... Нетребовательный клон Amarok. резервного копирования. Osmo ...... Личный органайзер. ГЛАВНОЕ wxCam ...... Приложение для web-камеры. Tasty Menu ...... Замена меню KDE. ATI driver ...... Графический драйвер. Xfce ...... Рабочий стол на основе GTK. Bash ...... Оболочка командной строки. ИНТЕРНЕТ Cairo ...... Библиотека двумерной графики. РАЗРАБОТКА Flash Player ...... Модуль расширения браузера CheckInstall ...... Программа создания Gambas ...... Среда разработки BASIC. Adobe Flash. двоичных пакетов. Mono ...... Реализация .NET VoIP ...... Коллекция интернет-телефонов. Coreutils ...... Утилиты командной строки. с открытым кодом. Pidgin ...... Интернет-пейджер. CSV ...... Индекс диска. QSvn ...... Основанный на Qt GLib ...... Низкоуровневая библиотека. клиент Subversion. ОФИС Glibc ...... Библиотека GNU C. Qt ...... Библиотека Gnumeric ...... Редактор таблиц Gnome/GTK. Gtk ...... Инструментарий визуальных компонентов. OpenOffice.org ...... Офисный пакет. пользовательского интерфейса. HardInfo ...... Системная информация ДИСТРИБУТИВЫ СЕРВЕР и сравнительный анализ. DSL ...... Damn Small Linux. ElasticDrive ...... Приложение для удаленного Jigdo ...... Создатель ISO-образов. Mandriva ...... Дружелюбный к пользователю хранения данных. Kernel ...... Свежий релиз ядра Linux. дистрибутив. Samba ...... Windows-совместимый LibXML2 ...... XML-анализатор Puppy ...... Нетребовательный дистрибутив. сервер файлов/печати. и набор инструментов. VectorLinux ...... Скоростной дистрибутив Smb4K ...... Обозреватель ресурсов SMB/CIFS ncurses ...... Оконный инструментарий на базе Slackware. для KDE. текстового режима. NVIDIA driver ...... Графический драйвер. RAWRITE ...... Программа записи образов на дискеты. SBM ...... The Smart Boot Manager. SDL ...... Библиотека мультимедиа.

СТОРОНА 2 ДИСТРИБУТИВЫ JAD ...... Дистрибутив для работы с аудио OpenSUSE_EL ...... Диск с дополнительными языками для OpenSUSE 10.3 Feather...... Дистрибутив для создания LiveUSB.

РАБОЧИЙ СТОЛ KDE4 ...... Исходные тексты и пакеты для Mandriva 2008.0

pyBackPack обезопасит ваши файлы, сохранив их на CD/DVD-R или на удаленном ПК.

Февраль 2008 Linux Format 119 http://lolbook.nnm.ru Лучшие новинки открытого ПО на планете

Грэм Моррисон Если вы ведете свободный/ LXFHotPicks открытый проект или пишете новую игру под Linux, сообщите В ЭТОТ РАЗ ТОЛЬКО ДЛЯ ВАС: GCstar Genius Osmo Indywikia Gbrainy нам, а мы расскажем об этом Comisat Tasty Menu Minirok Brasero Kile нашим читателям – даже если ваш труд пока на ранней стадии.

Менеджер коллекций

Hottest GCstar Pick Версия 1.3.0 Сайт www.gcstar.org

ы не считаете себя коллекционером. секунды спустя форма будет заполнена трек- Но мы-то знаем вас лучше. Мы знаем, листом, информацией об исполнителе и даже Вчто вы не выбрасываете неиспользо- снабжена обложкой альбома из онлайн-кол- ванные пакетики с сахаром из разных кафе и лекции MusicBrainz. Подобные запросы через ресторанов. Вопрос в том, как вам привести Интернет можно делать не только насчет это в порядок? Ответ – GCstar. Она специ- музыки. Например, если вы создаете коллек- ально создана для подобных коллекций, и к цию видеоигр, вся необходимая информация тому же ее легко использовать для коллек- найдется на сайте Amazon. То же самое – для ционирования всего, к чему можно приделать коллекции фильмов, книг и даже настольных картинку. А значит, эта программа идеальна игр! Это освобождает вас от нудного процес- Для настольных можете создать собственные профили для для вашей коллекции CD и DVD или видеоигр. са добавления каждого элемента в вашу кол- игр тоже есть коллекций. Это похоже на создание специаль- При первом запуске GCstar появится полез- лекцию: добавьте одно название, а различные соответствующий ной формы в базе данных. Вы задаете поля ный помощник; он вас спросит, для какого информационные базы данных онлайн сде- шаблон; есть и ограничиваете возможные значения для рода коллекции вы хотите создать каталог, лают остальную работу. А круче всего то, что и онлайн-хранилище, каждого из них. Затем форма строится авто- и при выборе, например, музыки предложит изображения, соответствующие каждому эле- откуда скачивается матически, и она почти не будет отличаться от форму для заполнения с предопределенны- менту в коллекции, уложатся на реалистичной информация о них. предлагаемых в самой программе. ми полями, которые, скорее всего, приго- виртуальной полке. Единственно, чего здесь не хватает – это дятся при описании коллекции. Но лучшее в возможности извлекать данные из информаци- GCstar – «умная» поисковая система онлайн. Экзотические коллекции онных онлайн-баз; но, с другой стороны, вряд Наберите название альбома и нажмите кноп- Если ни одна из предложенных коллекций по ли существуют базы, хранящие информацию о ку поиска информации [Fetch Information], и умолчанию не соответствует вашим целям, сахарных пакетиках. Если вы до этого исполь- зовали другую программу создания каталогов, то с помощью GCstar вы также сможете импор- Интерфейс GCstar тировать данные из книжного каталогизатора Alexandria, Ant Movie или GCFilms; последнее Проигрывание медиа предназначалось для каталогизации фильмов GCstar способна работать и переросло в более общее GCstar. Пусть вы как оболочка для медиа-плейера. и не особо страстный коллекционер – GCstar Выберите альбом и нажмите даст вам чудный повод создать каталог своих Воспроизведение. DVD, CD или книг: это учет элементов, которые вы одолжили свои друзьям. Нам всем случа- Виртуальная полка лось одалживать что-то другим людям, а через Любую коллекцию, использую- щую изображения, можно пару месяцев забывать, что именно и кому уложить в псевдо-деревянный именно. GCstar помогает создать список дру- шкаф в стиле IKEA. зей и одалживать элементы коллекции людям из этого списка; она даже может посылать им Мониторинг займов автоматические напоминания по электронной Вы можете делать заметки почте, а это уж реальная польза, помимо и о людях, которым вы что-то сверх удовольствия от упорядочения ваших одолжили, а GCstar даже пошлет сокровищ. Если ваша коллекция выходит из- им электронное напоминание. под контроля и нужно поддерживать список Шаблоны Просмотр информации Онлайн-заполнение информации всех CD-дисков, которые вам некогда слушать, GCstar включает некоторые популярные Создавайте виды данных, Книги, CD, DVD и другую информацию или DVD-дисков, которые вам некогда смот- шаблоны для создания коллекций, добавляйте заметки, рейтинги можно добыть автоматически. реть, GCstar отменно решит вашу проблему. но можно создать и свой собственный. и тэги для каждого элемента.

120 Linux Format Февраль 2008 Математика Genius Версия 1.0.0 Сайт www.jirka.org/genius.html

прошлом месяце мы упоминали тор. Genius – прекрасная замена обычному Genius в «Также вышли», но с тех настольному калькулятору: больше не нужно В пор раздобыли новые сведения об бороться с псевдо-ЖК-экранами или кликать этой программе. Сказать про Genius, что это мышью на пикселизованной числовой клави- калькулятор – примерно то же, что обоз- атуре. Наряду с чистой CLI-версией, у Genius вать Великую пирамиду Гизы тетраэдром. есть графический интерфейс GTK. Он не вли- Программа великолепна в статистике, чис- яет на ввод вычислений (это все та же коман- ленном решении уравнений, модульной дная строка), но добавляет интерактивный Не надо быть ки, вращая фигуру независимо вокруг каж- арифметике и матанализе, при использова- графопостроитель. Здесь вы можете создать гением в математике, дой из осей. Но все это покажется излишней нии рациональных и комплексных чисел. Она 2D- и 3D-кривые ваших уравнений, а также чтобы оценить роскошью любому математику, использую- может строить графики 2D- и 3D-функций и объемные графики, которые исполняются в пользу Genius. щему Genius, и он будет прав, хотя маркето- отображать их средствами LaTeX, Troff(eqn) яркой психоделической палитре. Это отличный логи и порадовались бы визуализациям. Вся или MathML. В ней также заложен внут- Все эти графические подвиги можно калькулятор функциональность сделана с точки зрения ренний язык GEL, а все функции доступ- сохранить в EPS- или PNG-файлах, и не хва- командной строки, математиков, а сочетание CLI и языка про- ны через командную строку, а не через тает только ускорения OpenGL. Мы бы также и вы можете часами граммирования GEL делает это приложение имитацию калькулятора на рабочем столе. хотели видеть управление мышью при масш- сидеть в окне вне конкуренции, если вам нужна серьезная Звучит, быть может, слишком сложно для табировании и вращении графиков, посколь- построения «числодробилка» для вашего компьютера. Не тех, кто давно расстался с математикой, но, к ку в настоящей версии нужно жать на стрел- 3D-графиков. дайте всяким там техническим описаниям удивлению, вам вовсе не обязательно иметь отпугнуть вас от установки этой программы. ученую степень, чтобы извлекать из Genius «Создайте красочные 2D- Она прекрасно подходит для каждодневных пользу. Наберите «1+2» в строке приглаше- вычислений и лучше встроенных инструмен- ния, и тут же получите ответ. Что важнее, и 3D-кривые для ваших тов типа KCalc. Genius столь же легко работает с дробями, ставящими в тупик стандартный калькуля- уравнений и вычислений.»

Органайзер Osmo Версия 0.1.4 Сайт http://clay.ll.pl/osmo

енеджеров персональной инфор- интеграции со «старшими братьями», напри- мации много не бывает. Это такая мер, Evolution или Contact. Кстати, нет связей Мштука, на которую мы охотно тра- с календарями или заданиями из других при- тим свое время при его фатальной нехват- ложений, а единственный способ импорти- ке. Они, как видео-магнитофоны Dirk Gently, ровать список контактов – через CSV-файл. потихонечку записывают события, посетить Получается, что Osmo на деле предназначен которые у нас нет возможности или желания. для пользователей легковесных рабочих сто- Osmo – маленький ненавязчивый МПИ, не лов: им нужна простая утилита для управле- требующий много места на вашем рабочем ния ежедневными задачами, а не громадье столе (последний релиз даже удобно вписы- тяжеловесных приложений, к которым при- вается в панель задач Gnome или KDE). Но в выкли многие из нас. Osmo – простой хотите, есть на трех страницах. Вы можете нем вы найдете какие угодно функции, через Вам едва ли захочется тратить время на органайзер, но он добавлять контакты, указывать их дни рож- посредство встроенного календаря, менед- добавление всего подряд в Osmo, поскольку обеспечивает все дения, добавлять секретные комментарии и жера задач и списка контактов. Все функции она не поддерживает экспорт ваших данных, обычные нужды; события в ваш дневник. События можно филь- вызываются из одного окна с закладками, и мы думаем, что разработчики упустили эту отличный выбор тровать и группировать, и имеется множество представленного по умолчанию ежемесячным довольно важную функцию из виду. Но это не при реанимации вариантов настройки. Если у вас есть PDA с обзором, который даже включает удобный значит, что в Osmo в целом не хватает каких- старых ПК. GTK, это приложение будет идеальным орга- индикатор фаз луны, а также номера недель и то важных функций. Практически все, что вы найзером для него. Главное окно календаря – дней для тех, кто подсчитывает, сколько еще отличная домашняя страница, а другие страни- до конца света. Было бы неплохо видеть крат- цы без труда управятся с вашей повседневной кий список предстоящих заданий под календа- «Предназначен для рутиной. Если вы ищете простой органайзер, рем, но вы его получите всего за один щелчок легких рабочих столов, не требующий много ресурсов, да еще и с мышью на странице задач. Самая большая хорошим дизайном и легкий в использовании, проблема Osmo – то, что в программе нет где не нужны “колоссы”.» Osmo прекрасно вам подойдет.

Февраль 2008 Linux Format 12 1 http://lolbook.nnm.ru Визуальный браузер Indywikia Версия 0.9.2 Сайт http://indywikia.sourceforge.net

то ж не любит Википедию? Но являются носителями изображений: через доступ ко всей информации через несколько мгновений картинки появляются Кпростую web-страницу не реализу- в случайном порядке. ет имеющийся там потенциал. Она черес- чур одномерна, и в ней нет интуитивного Понимая изображения способа проследить связи текущей статьи Эти изображения имеют только отдаленную с некоторыми не совсем лобовыми ссылка- связь со словом, введенным в поле поиска. ми. Хотелось бы внести маленько хаоса в Indywikia захватывает их из статей, имеющих наш просмотр статей, и именно для этого какое-то отношение к искомому слову, но создана Indywikia. Она работает по принци- не обязательно являющихся частью ориги- пу Википедии, но слегка под другим углом. нальной статьи. Нажатие на любое из этих Написанная на Python, она будет не самым изображений позволяет статье, из которой быстрым приложением на вашем компью- оно взято, расширить поиск, и он выпол- тере, но для подобной утилиты это не столь няется заново. В результате вы загружае- важно. Правда, окно при первом запуске те Википедию, следуя картинкам, которые вас заинтересовали, а не ссылкам в основ- Indywikia позволяет статьи, то вы увидите увеличенное изобра- «Знакомьтесь с Википедией, ном тексте, и вы быс- просматривать жение вместо нового набора ссылок. И это щелкая по интересующим тро находите статьи, Википедию единственная проблема работы с Indywikia. которые без этого вы визуально, выбирая Пользовательский интерфейс можно оста- вас картинкам.» бы не нашли. Панель заинтересовавшие вить, но с учетом серьезных доработок. посередине заполня- изображения, В нем, например, нет масштабирования, и ется текстом статьи. а не просто нельзя установить число кнопок для изоб- программы может немного сбить с толку. Это Indywikia-эквивалент оригинальной ста- нужные слова. ражений, которое вы хотите использовать. Восемь больших кнопок с тенями царят в тьи Википедии, только ссылки копируются Неплохо было бы иметь род визуального верхней половине окна, а под ними нахо- из текста статьи в третью панель справа, отображения истории поиска, что позволило дятся три маленькие панели. В отличие от создавая простой обзор связей с текущей бы вернуться к каким-то особо интересным Википедии, здесь нет исходного пункта и статьей. Способ поиска информации очень сериям изображений и перейти от них к чему- ссылок на ежедневные новости или специ- плодотворный: практически с первого кли- то другому, вместо использования един- альные статьи. Присмотритесь ближе: сле- ка вы находите статьи, которых вам бы не ственной кнопки «Назад». Хотелось бы так- ва от крошечной кнопки «Пуск» находится видать при чтении только текста. Просто же, чтобы были какие-то интернет-ссылки, маленькое поле. Наберите в нем что-нибудь, нажмите на изображение, показавшееся вам позволяющие проследить связи представ- нажмите кнопку «Пуск» – и интерфейс ожи- интересным, вместо слов, которые с виду ленных изображений с изначальной статьей вет. Индикатор прогресса начнет обратный имеют отношение к предмету вашего поиска. и логику перехода от одной статьи к другой. отсчет от 100. Восемь кнопок на самом деле Если изображение является частью главной

Просмотр информации через Indywikia

Начало поиска Получение статей Визуальное отображение Indywikia запускается с пустого окна. Через несколько секунд появятся изображения, Нажмите на любое из этих изображений, Начните поиск по любому слову и подождите, связанные с главной статьей, и перейдете к его статье и новой группе изображений. пока появятся изображения но не являющиеся ее частью.

122 Linux Format Февраль 2008 HotGames Развлекательные приложения Игры Gbrainy Версия 0.41 Сайт http://live.gnome.org/gbrainy

гры, тренирующие мыслитель- блема – английский язык у разработчиков ные способности, сейчас на вол- не совсем на должном уровне, особенно в Ине популярности. Они позволяют задачах. ‘A group of people evenly separated людям с хорошей краткосрочной памятью is sat in a round table. How many people are if и развитыми рефлексами злорадствовать the 4th person is in front of the 12th?’ – один над теми, у кого поистрепались нейроны из самых показательных примеров. Тесты и плох самоконтроль. Gbrainy – одна из на память и вычисления не имеют этого таких, хоть и не настолько полагается на недостатка, ведь вместо текстов в них циф- рефлексы игрока, как другие игры этого ры, цвета и таблицы. вида. В ней три типа развивающих задач. Логические головоломки бросают вызов Умные препятствия вашей мысли, вычисления в уме улучша- Вопросы весьма разнообразны: не успе- ют математические способности, а трена- ли вы рассмотреть раскрашенное в девять жеры памяти готовы расшевелить обле- цветов число, как уже появляется клет- нившиеся нейроны. Первое, что бросается чатый кубик. Независимо от типа вопро- в глаза в этой игре – классный внешний са, нужно ввести ответ в маленькое поле Благодаря ку «Закончить», чтобы узнать, как вы спра- вид. Вопросы выдаются на листках бумаги внизу окна и нажать «Следующий» для графической вились с заданиями. Gbrainy учитывает точ- с точно такой текстурой, как были в шко- перехода к очередному заданию. Можно библиотеке Cairo ность ответов, время, затраченное на каж- ле, а благодаря движку Cairo красивы все смешивать или упорядочивать вопросы изображения дый вопрос, и пользование всплывающими линии, формы и рисунки. Логические игры по вкусу, используя панель управления в Gbrainy выглядят подсказками. В отличие от других игр дан- похожи на применяемые в тестах IQ, где для переключения между разными типами, классно ного типа, эта не выдает снисходительной для нахождения правильного решения надо или просто отвечать на них в случайном и супер-гладко. оценки ваших способностей, и располагает визуализировать задачу. Единственная про- порядке. Наотвечавшись, нажмите на кноп- попробовать еще раз.

Игры Comisat Версия 0.5.2 Сайт http://comisat-games.sourceforge.net

omisat, может, и староват, но нах, а также игры Mastermind и Виселица. стоит просмотра. Это набор игр, Несмотря на их почтенный возраст, каждая Cнаписанных на BASIC и Qt, и из них прошла проверку временем бла- поскольку они были написаны для пер- годаря хорошей реализации и «играбель- вой версии Gambas, проблем с загрузкой ности». Звуковые эффекты напоминают и запуском на компьютерах под Linux у низкокачественные ретро-бипы и хрипы, нас не возникло. Просто загрузите код из хорошо сочетающиеся со стилем игры: 8- папки src и щелкните Запустить в пане- битные фанфары, которыми вас награж- ли управления. Скоро вы увидите уста- дают, когда вы занимаете первое место новочное меню игры, в котором сможете по очкам в Тетрисе – лучший пример. Не выбрать любую из игр, воссозданных в хватает только режима для двух игроков: Comisat. По ощущениям они такие же, как большинство из этих игр отлично подходит Кто в детстве возможность выбирать игры и уровни для наборы настольных игр, к которым вы при- для парочки детей, которые с восторгом не просиживал них в любой момент, согласно традициям выкли: ни одна из этих игр сама по себе не провели бы пару часов за вашим компью- часами за Connect 4, сборников аркадных игр. Весь набор стал шедевр, но в сумме получился неплохой тером с Linux. Для этого даже есть место пытаясь найти бы гораздо органичнее. Но, несмотря ни на набор. Игр пять: тщательное воссоздание на экране, но разделение экрана в таких решение загадки? что, эти игры приносят много веселья и все Тетриса, версия настольной игры Connect 4 играх, как Тетрис, использовано под ста- еще стоят того, чтобы показать их своим (автор называет ее Mr. Quattro), игра Snake, тистику игры, а не под территорию друго- младшим, которые могли упустить что-то не раз виденная на мобильных телефо- го игрока. Еще было бы здорово добавить вроде Mastermind.

Февраль 2008 Linux Format 12 3 http://lolbook.nnm.ru Управление меню Tasty Menu Версия 1.0.5 Сайт www.notmart.org/tastymenu/index.html

азвание глупое, но Tasty Menu – это, ричные списки обязательны. Это значит, что э-э, вкусняшка, которая решает одну они не исчезают, когда вы выбираете другие Низ самых больших проблем, долгое опции; так удобнее загружать часто использу- время существовавшую под KDE – перена- емые приложения. Таковые можно добавить в сыщенное меню Запуска. В KDE особенно список избранных, нажав правой клавишей и раздражает то, что разработчики не удели- выбрав пункт меню. Их легко и удалить, при ли должного внимания дизайну, и каждая появлении маленькой иконки удаления, ког- новая версия представляет свой подход по да вы наводите мышкой на элементы вашего его наполнению. Одни по-простому исполь- списка избранных программ. зуют иерархию иконок на основании задач, а другие норовят впихнуть все в одно окно. В духе Windows Tasty Menu решает эту проблему, преподно- Как и в Microsoft Windows, недавно установ- ся интерфейс, способный удовлетворить не ленные приложения также выделяются, что Оба поисковика утилиты, и в списках избранного плавно отоб- только среднего пользователя, но и знатоков практически удобно, когда вы не знаете, в KDE, Kerry разятся приложения, которые соответствуют KDE. Она встроена как панель-апплет, то есть какой категории отнести установленную про- и Stigi, можно запросу. Это обычно самый быстрый способ вы можете, подключившись, использовать ее грамму. Но самый главный козырь приложе- использовать для найти, что надо запустить, и одна из самых вместе с исходным меню. После добавления ния – маленькое окно поиска в верхнем левом интегрированного веских причин для установки Tasty Menu в ее к нижней панели на вашем экране созда- углу. Наберите часть имени приложения или инструмента поиска. первую очередь. ется форма, идентичная той, что в исходном меню, и вы увидите различия, только нажав «Улучшенный интерфейс на нее. Появится удобное трехпанельное окно, с избранными приложениями слева, топ-меню равно порадует фанатов посередине и последним выбранным меню справа. В отличие от исходного меню, вто- и обычных пользователей.»

Легкий музыкальный проигрыватель Minirok Версия 0.7 Сайт http://chistera.yi.org/~adeodato/ code/minirok

marok, музыкальный проигрыватель работает на самом деле хорошо. Конечно, вы KDE, имеет множество поклонни- обнаружите, что вы тратите гораздо меньше Aков, и его популярность очевидна времени на нажатия мышкой, чтение и прочие по количеству приложений, которые пытают- вещи, но от музыкального проигрывателя это ся скопировать его пользовательский интер- и требуется. фейс. В конце концов, подражание – высшая форма подхалимажа. Minirok хотя бы не пыта- Сыграй это еще разок, Сэм ется утаить свой источник вдохновения. Это А благодаря движку GStreamer (который музыкальный проигрыватель, написанный используется и в Amarok), вы не ограниче- на Python, который бесстыдно основан на ны форматами воспроизведения. Minirok без Найдите различия! музыкальной коллекции, вы можете переклю- Amarok. Позаимствован даже кусок названия. проблем проиграл ту же музыкальную кол- Minirok произошел чаться между несколькими разными путями к Но, как и следует из остальной части назва- лекцию, которую мы проигрывали в Amarok, а от медиа-плейера музыке, не волнуясь о конфигурации проиг- ния, в Minirok нет того раздувания количества еще в нем есть маленький апплет для контро- Amarok. рывателя. Это выгодно отличает Minirok при функций. В нем нет текстов песен, нет встро- ля, так что не хотите смотреть на старый спи- проигрывании папки, не добавленной в кол- енного поиска по Википедии, нет обложек сок воспроизведения – не смотрите. Удобная лекцию (например, новой скачанной музыки), альбомов и даже базы данных тэгов. Вместо панель поиска позволяет осуществлять быст- чтобы убедится, стоит ли ее хранить; пусть этого вы загружаете свою музыкальную кол- рый поиск по коллекции, и поскольку здесь даже вы утратите интеграцию с Magnatune лекцию в том порядке, в каком она располо- нет предустановленной базы данных вашей или возможность синхронизации с MP3-плей- жена на вашем жестком диске, перетаскивая ером – для этих целей существует множество песни из папок, отображенных слева, в дина- других инструментов. мический список воспроизведения справа. «Переключайтесь между Minirok – прекрасное воплощение одной из Это воссоздание главного окна Amarok, с точ- путями к музыке, не старой проверенной Unix философии созда- ностью почти до пикселя, только без вкладок, ния простого, легкого в использовании инст- дающих вам доступ ко всему остальному. И беспокоясь о настройках.» румента для выполнения несложных задач.

124 Linux Format Февраль 2008 Запись CD/DVD Также выпущены

Новые и обновленные программы, Brasero заслуживающие вашего внимания... Версия 0.6.1 Сайт www.gnome.org/projects/brasero Rally 0.3.0 Не хотите печатать RPM- команды вручную? Rally имеет GUI, который разберется с беспорядком огда мы в прошлый раз рассматри- файлов в окно записи. Brasero заботится о в установках пакетов сам. вали Brasero (LXF82), у него было конвертации форматов, так же как и обновле- http://crow-designer.sourceforge.net Кчуть более удобное, по крайней мере, нии сведений об оставшемся пространстве на для англоязычных пользователей, имя Bonfire. записываемом диске. Сейчас мы уже далеки Brasero – Freecycle 0.6.1.1 Наш любимый резак Но Brasero сохраняет ассоциацию с горением, от тех дней, когда нам приходилось делать прекрасный аудиобитов только что обновился для решения некоторых 64-битных по крайней мере, по-испански и по-мексикан- это вручную и диск, в среднем, записывается инструмент и GCC-проблем компиляции. ски: наш художественный редактор, Эфрейн, меньше чем за две минуты. для записи CD/DVD http://freecycle.redsteamrecords.com сказал мне, что это может означать малень- дисков под Gnome. кую дровяную печь или служить жаргонным gcin 1.3.7.1 Довольно занятная утилита для добавления китайских символов ввода названием людей, патрулирующих границу в любое из ваших приложений X Windows. между Соединенными Штатами и Мексикой. www.csie.nctu.edu.tw/~cp76/gcin/ Brasero – это программа для записи CD/DVD под Gnome, рабочий стол, который Gajim 0.11.4 Jabber-клиент, использующий PyGTK без Gnome: все еще не имеет лидирующего приложения, здорово подходит для старого в отличие от KDE, где есть K3b. Долгое время оборудования и машин. www.gajim.org многие предполагали, что GnomeBaker станет таким приложением, но Brasero увеличил свои GGMud 0.8 Не играли в MUD давно? Это новая версия одного из самых лучших мощности за последние 12 месяцев и теперь клиентов http://ggmud.sourceforge.net занимает хорошие позиции, в основном пото- му, что он легок в использовании. Многие считают запись CD и DVD чем-то черной магии, а Brasero как раз делает вещи настолько про- стыми, насколько это возможно. Запись аудио CD облегчается выбором Аудио из мастера при запуске и переносом ваших музыкальных

Набор текста

Лучше всего в основанной на тексте Kile игре MUD то, что издали кажется, Версия 2 Сайт http://kile.sourceforge.net что вы работаете, и постоянный стук клавиатуры приводит вашего босса aTeX – это популярный язык набора тек- метку каждого вида вручную. Kile помогает вам в блаженство. ста, верстки и форматирования, исполь- это сделать с помощью панели символов, отку- зуемый в академических кругах, а также да вы можете перетянуть их в ваш собственный L Klick 0.5 Не путайте с Klik – некоторыми издателями. Конечно, заколотить код, а подсветка синтаксиса и расположение Kile – это как установщиком пакетов: разметку, используемую языком для описания папок в иерархическом порядке помогает убе- интегрированная Klick – очень гибкий JACK-метроном. раскладки, можно в любом текстовом редакто- диться, что не допущено ошибок. В общем, это среда разработки http://das.nasophon.de/klick/ ре, но гораздо легче пользоваться приложени- LaTeX-эквивалент интегрированной среды раз- для разметки Kid3 0.10 Расстановщик ID3-тэгов под ем, понимающим синтаксис; Kile именно таков. работки. LXF текста в LaTeX. KDE; теперь он собирается под KDE 4. Как и с HTML-редактором Quanta, с Kile вам не Самое то для больших коллекций музыки. нужно будет учить команды разметки; он также http://kid3.sourceforge.net/ помогает в автозавершении команд, подсвет- ‘Q’ DVD-Author 1.0 Одно из немногих ке синтаксиса и обзоре структуры. Набирая, приложений Linux, которое помогает вы можете заодно посмотреть предваритель- генерировать DVD-меню для ную версию окончательного проекта и вывести использования на ваших собственных результат работы в виде Postscript-, PDF- или дисках. http://qdvdauthor.sourceforge.net/ HTML-файлов. В последний раз мы описы- mhWaveEdit 1.4.14 Если редактирование вали Kile в LXF69; список перемен весьма аудио в Audacity не для вас, вы упустите массивен – десятки исправлений делают его гораздо больше, не используя это. одним из лучших поддерживаемых KDE-прило- https://gna.org/projects/mhwaveedit жений. Новички в LaTeX могут быть удивлены отсутствием предпосмотра в реальном времени или графического режима редактирования, и это принципиальная ошибка: основная забота LaTeX – контроль, а единственный способ полу- чить этот контроль – добавить в ваш текст раз-

Февраль 2008 Linux Format 12 5 http://lolbook.nnm.ru Reviews Xxx

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

Журнал зарегистрирован Федеральной службой по надзору за соблюдением законодательства в сфере массовых коммуникаций и охране культурного наследия ПИ № ФС77-21973 от 14 сентября 2005 года Выходит ежемесячно. Тираж 6000 экз.

РЕДАКЦИЯ РУССКОЯЗЫЧНОЙ ВЕРСИИ: ГЛАВНЫЙ РЕДАКТОР Валентин Синицын [email protected] Выпускающий редактор Родион Водейко Литературные редакторы Елена Толстякова, Иван Мищенко Переводчики Илья Аввакумов, Александр Бикмеев, Светлана Кривошеина, Александр Казанцев, Алексей Опарин, Валентин Развозжаев, Татьяна Цыганова в марте Редактор диска Александр Кузьменков Допечатная подготовка Сергей Австрецкий, Мария Пучкова Креативный директор Станислав Медведев Технический директор Денис Филиппов Директор по рекламе Денис Игнатов +7 812 965 7236 [email protected] Заместитель генерального директора Софья Виниченко Генеральный директор Павел Фролов Дистро-рай! УЧРЕДИТЕЛИ частные лица ИЗДАТЕЛИ Мы изучили самые популярные дистрибутивы, чтобы Станислав Медведев, Виктор Федосеев, Павел Фролов подсказать вам, какой из них – лучший, и разместили эти Отпечатано в типографии «Текст», ООО «ППК «Текст» 188680, Ленинградская область, Всеволожский район, Колтуши, д.32 Заказ _____ системы на DVD, чтобы вы могли сделать выбор Пре–пресс: d.r.i.v.e-group самостоятельно. РЕДАКЦИЯ АНГЛОЯЗЫЧНОЙ ВЕРСИИ: Редактор Пол Хадсон (Paul Hudson) [email protected] Художественный редактор Эфрейн Эрнандес-Мендоса (Efrain Hernandez-Mendoza) [email protected] Редактор новостей Майк Сондерс (Mike Saunders) [email protected] Редактор обзоров Грэм Моррисон (Graham Morrison) И снова Arduino [email protected] Литературный редактор Мэтт Нейлон (Matt Nailon) [email protected] По многочисленным просьбам читателей: как Подготовка материалов Ладислав Боднар [Ladislav Bodnar], Нейл Ботвик [Neil Bothwick], д-р Крис Браун [Dr. Chris запрограммировать недорогое Open Hardware и как следует Brown], Энди Ченнел [Andy Channelle], Энди Хадсон [Andy Hudson], Дэниэл Джеймс [Daniel James], Джо Касселс [Joe Cassels], Лео Максвелл [Leo Maxwell], Фрэнк Полманн повеселиться. [Frank Pohlmann], Dale Strickland-Clark [Дейл Стрикланд-Кларк], Ник Вейч [Nick Veitch], Роберт Басыров, Евгений Балдин, Андрей Боровский, Роман Козодаев, Андрей Кузьменко, Алексей Маслий, Галина Пожарина, Александр Поносов, Андрей Тусеев, Алексей Федорчук, Алексей Шипунов, Илья Шпаньков, Сергей Яремчук

Художественные ассистенты: Сетнэм Синх [Sethnam Singh], Ники Гоутутбед [Nicky Gotobed], Ник Кокс [Nick Cox], Стейси Блек [Stacey Black], Таня Мйолл [Tanya Myall].

Иллюстрации: Крис Винн [Chris Winn], iStock Photo Зеленый компьютер КОНТАКТНАЯ ИНФОРМАЦИЯ UK: Linux Format, 30 Mon mouth Street, Bath BA1 2BW Экономьте деньги и энергию, спасайте планету – и все это Tel 01225 442244 Email: [email protected] РОССИЯ: благодаря Linux. Санкт-Петербург (редакция): ул. Гончарная, 23, офис 54, телефон: (812) 717-00-37 Представительство в Москве: ул. Энергетическая, д.14, корпус 5, стр. 1 По вопросам сотрудничества, партнерства, оптовых закупок: +7 (495) 799-18-63 Дирекция московского офиса: +7 (495) 136-88-45. E-mail: [email protected]

Авторские права: Статьи, переведенные из английского издания Linux Format, являются собственностью или лицензией Future Publishing Ltd (Future plc group company). Все права зарегистрированы. Никакая часть данного журнала не может быть повторно опубликована без письменного разрешения издателя. Все письма, независимо от способа отправки, считаются предназначенными для публикации, если Оконные менеджеры лицом к лицу иное не указано явно. Редакция оставляет за собой право корректировать присланные письма и другие материалы. Редакция Linux Format получает неэксклюзивное право на публикацию и лицензирование всех присланных материалов, если не было оговорено иное. Linux Format стремится оставлять уведомление об авторских правах всюду, где это возможно. Свяжитесь с IceWM, Fluxbox и Ratpoison борются за ваш рабочий стол. нами, если мы не упомянули вас как автора предложенных вами материалов и мы постараемся исправить эту ошибку. Редакция Linux Format не несет ответственности за опечатки. Все присланные материалы могут быть помещены на CD или DVD-диски, поставляемые вместе с журналом, если не было оговорено иное. Ограничение ответственности: используйте все советы на свой страх и риск. Ни при каких условиях редакция Linux Format не несет ответственность за повреждения или ущерб, нанесенные вашему компьютеру и переферии вследствие использования тех или иных советов. За содержание рекламных материалов редакция ответственности не несет. Linux-зарегистрированная торговая марка Линуса Торвальдса (Linus Torvalds). Название «GNU/Linux» заменяется на «Linux» в целях сокращения. Остальные торговые марки являются собственностью их законных владельцев. Linux Format является торговой маркой Future Publishing Ltd (Future plc group company). За информацией о журналах, издаваемых Future plc group company, обращайтесь http://www.futureplc.com

© Linux Format 2005 © Future Publishing Ltd 2005 Содержание последующих выпусков может меняться без уведомления

126 Linux Format Xxx 2006 BATH • LONDON • MILAN • NEW YORK • PARIS • SAN DIEGO •SAN FRANCISCO ПОДПИСКА НА LINUX FORMAT

ПОДПИСКА В ЛИНУКСЦЕНТРЕ

Сколько стоит подписка?

Подписка на журнал «Linux Format» 12 номеров (январь, фев- раль, март, апрель, май, июнь, июль, август, сентябрь, октябрь, ноябрь, декабрь) стоит 1800 рублей ПОДПИСКА - 2008! Подписка на журнал «Linux Format» 6 номеров (июль, август, сен- тябрь, октябрь, ноябрь, декабрь 2008 года) стоит 900 рублей ПОДПИСКА ПО КАТАЛОГАМ Как оформить подписку? РФ Чтобы оформить подписку на журнал «Linux Format», необходимо зарегистрироваться в интернет-магазине Linuxcenter.Ru, указав Каталог агентства «РОСПЕЧАТЬ» – подписной индекс 20882 ФИО и подробный почтовый адрес подписчика, заказать товар «Подписка на журнал «Linux Format» 12 номеров 2008 года», Каталог «ПРЕССА РОССИИ» – подписной индекс 87974 или товар «Подписка на журнал «Linux Format» второе полуго- дие 2008 года», получить от системы квитанцию для оплаты в любом отделении Сбербанка (для физических лиц) или счет для оплаты по безналичному расчету (для юридических лиц)

Как оплатить подписку?

– по выставленному счету (для юридических лиц) – по квитанции в любом отде- лении Сбербанка

Плюсы подписки

- подписка дешевле! - гарантированное получение нового номера журнала! ПОДПИСКА НА LINUX FORMAT ПОДПИСКА ПО КАТАЛОГАМ СНГ И БЛИЖНЕГО ЗАРУБЕЖЬЯ

Каталог «Российская Пресса» – совместный проект Белоруссия Государственного предприятия «Казпочта» , Агентства • по Каталогу изданий стран СНГ через РГО «Белпочта» (220050, г.Минск, пр-т «Книга-Сервис» и АРЗИ. Ф.Скорины, 10); Грузия Блок изданий АРЗИ в национальных Каталогах • по списку номенклатуры «АРЗИ»» через АО «Сакпресса» (380019, г.Тбилиси, Украины и Беларуси. В Азербайджане, Армении, ул.Хошараульская, 29 ) и АО «Мацне» (380060, г.Тбилиси, пр-т Гамсахурдия, 42); Грузии, Киргизии, Узбекистане и Молдове - по изда- Казахстан ниям, включенным в Объединенный каталог, распро- • по Каталогу «Российская Пресса» через ОАО «Казпочта» и ЗАО «Евразия пресс»; страняемые через АРЗИ. Молдавия • по каталогу через ГП «Пошта Молдавей» (МД-2012, г.Кишинев, бул.Штефан чел Азербайджан Маре, 134); • по Объединенному каталогу российских изданий • по списку через ГУП «Почта Приднестровья» (МD-3300, г.Тирасполь, ул.Ленина, 17); через Предприятие по распространению печати • по прайс-листу через ООО Агентство «Editil Periodice» (2012, г.Кишинев, бул. Штефан «Гасид»(370102, г. Баку, ул. Джавадхана, 21); чел Маре, 134). Армения Узбекистан • по списку номенклатуры «АРЗИ» через ГЗАО • по Каталогу «Davriy nashrlar» российские издания через Агентство по распростране- «Армпечать» (375005, г.Ереван, пл.Сасунци нию печати «Davriy nashrlar» (7000029, Ташкент, пл.Мустакиллик, 5/3, офис 33); Давида, д.2) и ЗАО «Контакт-Мамул» (375002, Украина Г.Ереван, ул.Сарьяна, 22); • Киевский главпочтамт. • Подписное агентство «KSS» Телефон/факс (044)270-62-20, 270-62-22

АЛЬТЕРНАТИВНЫЕ АГЕНТСТВА РФ

Агентство «Интер-Почта» (495) 500-00-60, курьерская доставка по Москве.

Агентство «Вся Пресса» (495) 787-34-47

Агентство «УралПресс»

• Екатеринбург, Березовский, В. Пышма, Первоуральск тел. (343) 375-80-71, 375-84-93, 375-84-39, факс 375-62-74, [email protected] • Нижний Тагил тел. (3435) 411448, 417709, [email protected] • Челябинск тел. (351) 262-90-03, 262-90-05, [email protected] • Пермь тел. (3422) 60-24-40, 60-22-95, 60-35-42, [email protected]