Вы находитесь на странице: 1из 42

full circle

ВЫПУСК #34 - Февраль 2010

ЦИФРОВАЯ РЕТУШЬ
ФОТОГРАФИЙ В GIMP
full circle magazine #34 содержание ^
Моё мнение - 9.10 23
full circle Ubuntu Women 32

Программа на Python 08 Игры Ubuntu 34

Моя история 20 Интервью 28

Ретушь фотографий 16 Покоряй и властвуй 05

Идеальный сервер 18 Обзор — Asus UL30-A 26 Письма 30 Top 5 — Словари и 38


справочники

Все статьи, опубликованные в данном журнале, распространяются под лицензией Creative Commons Attribution-Share
Alike 3.0 Unported. Это означает, что вы можете адаптировать, копировать, распространять и передавать статьи только
при соблюдении следующих условий: вы обязаны ссылаться на оригинальную работу и автора (например, указав имя,
адрес email или URL), а также указывать название этого журнала ('full circle magazine') и его адрес www.fullcirclemagazine.org.
Если вы изменяете, трансформируете или создаёте что-то на основе данного материала, вы обязаны распространять результат вашей
работы под этой, похожей или совместимой лицензией.
full circle magazine #34 содержание ^
СЛОВО РЕДАКТОРА
Этот журнал создан с помощью :

В
этом месяце мы представляем вам новый How-To по ретушированию фотографий
в GIMP. Многие считают, что GIMP не такой мощный, как Photoshop, но эта статья
докажет обратное. Будем надеяться, что в следующем выпуске тоже появится
How-To по GIMP. Продолжая об этом редакторе, скажу, что мы всё ещё получаем
много писем от пользователей Ubuntu, интересующихся, чем заменят GIMP в будущих
релизах Ubuntu, поскольку им определённо нужна подобная программа, и мне приходится
согласиться. Поскольку для новичка эта программа кажется навороченной, не пора ли
создать урезанную версию GIMP, в которой будут только базовые функции?

Также в этом номере Лукас (автор « й») написал обзор нового


ноутбука Asus UL30-A, а в статье «Игры Ubuntu» Эдвард написал об игре от Ubuntu — полностью свободная
компании . Скачайте и попробуйте демо-версию, а потом обяза- операционная система, которая
тельно купите полную версию, чтобы поддержать тех, кто создаёт нативные игры в превосходно подходит для
Linux. Очень выгодная покупка за £20 ($33 / €26). ноутбуков, компьютеров и
серверов. Дома, в школе или
возвращается в этом месяце! Для вас читают Робин Катлинг на работе Ubuntu содержит
(Robin Catling), Эд Хьюит (Ed Hewitt) и Дэйв Вилкинс (Dave Wilkins), спасибо им за всё, что вам может понадобить-
серьёзную работу. На четвёртой странице вы узнаете подробности и найдёте ссылки ся, включая текстовый редактор,
для скачивания. Связаться с ребятами можно через podcast@fullcirclemagazine.org почтовый клиент и веб-браузер.
Вам не нужно платить за
лицензию. Вы можете свободно
Читайте номер, оставайтесь с нами! загружать, работать и делиться
Ubuntu с вашими друзьями,
семьёй, коллегами.

Редактор Full Circle magazine Сразу после установки система


ronnie@fullcirclemagazine.org с полным набором приложений
готова для работы с интернетом,
графикой и играми.

: используйте
ссылку «содержание» для
перехода к содержанию!
full circle magazine #34 содержание ^
НОВОСТИ

Для людей,
которые Разработчики Ubuntu анонси-
боятся ровали новый релиз, 10.04LTS, Да, ребята! Full
работать на Всего лишь через два с который называется «Lucid Circle Podcast
компьютере, половиной месяца после Lynx». Это последняя из трёх вернулся и
недавно был выхода версии 2.6.32 запланированных альфа- стал ещё лучше!
выпущен Линус Торвальдс объявил версий, после которой будут Подкаст досту-
новый ноут- о выпуске ядра Linux выпущены две бета-версии и пен в форматах
бук под версии 2.6.33. релиз-кандидат. MP3 и OGG и длится 37 минут.
названием
Alex. Новое ядро, как и его Ubuntu 10.04 LTS Alpha 3 В выпуске: перестановки в
предшественники, содер- использует ядро версии 2.6.32 Canonical, музыкальный
На нём установлен Linux. Доступ жит тысячи улучшений: и содержит множество измене- магазин Canonical, Google
к почте, сёрфинг по интернету, открытые драйверы для ний, включая последнюю Buzz, старые добрые игры и
обработка изображений и видеокарт GeForce, под- версию рабочей среды GNOME. Acer Aspire Revo.
работа в офисных приложениях держка переключения Также разработчики отмечают,
стали проще. видеорежимов на уровне что теперь для видеокарт
ядра, устройство репли- NVIDIA по умолчанию исполь-
Люди, которые приобрели Alex, кации при помощи DRBD зуется новый открытый
платят £39,95 в месяц за под- (Distributed Replicated драйвер Nouveau, благодаря
держку по телефону, обновления Block Device — распреде- чему улучшена работа с
ПО и широкополосный доступ в лённое копируемое различными разрешениями
интернет. блочное устройство) и экрана. Теперь работа с Twitter, Сам подкаст и заметки к
поддержка команды Trim identi.ca и Facebook теснее выпуску доступны на
Создатели ноутбука надеются, АТА, а также новые и интегрирована в систему. http://url.fullcirclemagazine.org/
что простой набор программ обновленные драйвера. 88a985
позволит этому продукту стать h-online.com
альтернативой Windows и Mac. : h-online.com

BBC News

full circle magazine #34 содержание ^


ПОКОРЯЙ И ВЛАСТВУЙ

П
осле того, как 33-й доступ можно
номер журнала вышел нажав клавишу F9.
в свет, Крис Джонстон Я не стал
(Chris Johnston), добавлять снимок
пользователь Ubuntu, был экрана с
любезен прислать мне письмо, открытым меню,
в котором указал на Byobu так как оно
(https://edge.launchpad.net/byobu). достаточно
Признаюсь, у меня не было простое и
достаточно времени, чтобы понятное.
хорошо изучить эту программу,
но общее представление я о
ней получил. Кроме того, ещё
до написания статей на эту «tmux — это
тему я много раз видел терминальный
упоминания о tmux на форумах мультиплексор: он
Arch Linux, и поэтому я позволяет существовать
расскажу о нём в качестве сессиям, перемещать между
множеству терминалов (или
альтернативы. Мне бы не сессиями и манипулировать
окон), каждый из которых
хотелось сильно вдаваться в другим образом. Каждая сессия
запущен как отдельный
детали и подробно описывать может присоединяться к
Это означает, что Byobu — не процесс, а также управлять
функционал программ, так как нескольким клиентам.
переписанный Screen, а своего ими, создавая, получая к ним
Byobu использует схожие со Предназначение tmux — стать
рода дополнение к нему, кото- доступ и контролируя их с
Screen клавиатурные комбинации современной, лицензированной
рое добавляет новые возмож- помощью единственной
и настройки, tmux очень хорошо под BSD альтернативой таким
ности. Основное отличие в том, консоли (экрана). tmux может
документирован, а мои файлы программам, как GNU Screen».
что по умолчанию Byobu предо- отсоединяться от консоли,
конфигурации сдобрены самыми (Взято с домашней страницы на
ставляет более информативную продолжая при этом работу в
подробными и понятными http://tmux.sourceforge.net/).
строку состояния, в чём можно фоне, а позже можно присое-
комментариями. Я не уверен, убедиться, посмотрев на динить его вновь. tmux исполь-
что будет много желающих В отличие от Screen tmux
иллюстрацию справа вверху. зует клиент-серверную модель.
прочесть исчерпывающее обладает более лёгкими для
Сервер содержит множество
описание всех без исключения понимания командами, верти-
Также Byobu предоставляет запущенных сессий, а каждое
функций, но если вы всё-таки кальным и горизонтальным
меню для создания профилей окно является отдельной
хотите увидеть подобную разделением экрана и разум-
screen, основанное на библио- сущностью, которую можно
статью, то напишите мне письмо. ными настройками по
теке ncurses. Получить к нему привязать к нескольким
умолчанию (для статусной
full circle magazine #34 содержание ^
ПОКОРЯЙ И ВЛАСТВУЙ
строки и т.д.). Более того, нас-
тройки можно менять динами- http://www.openbsd.org/cgi-
чески прямо из командной bin/man.cgi?query=tmux&sektion=1
строки, и tmux занимает (онлайн-версия ман-страницы)
меньше оперативной памяти, и:
чем GNU Screen. Ему нужно 2,4 http://tmux.sourceforge.net/
Мбайт памяти для первой (домашняя страница).
сессии, а каждое новое окно
требует всего 1 Мбайт. Это
может показаться не много, но
на старых машинах разница
будет очевидна. Также, по
умолчанию все комбинации
клавиш начинаются с Ctrl + b
вместо Ctrl + a, но это можно
поменять, что я и сделал в
моём конфигурационном вопросы о том, как сделать ту
файле, ссылку на который я (~/.tmux.conf): или иную вещь, потому что вы
приведу в конце статьи. http://lswest.pastebin.com/fa64f955 наверняка с лёгкостью найдёте
В соответствии с лицензией там ответы на большинство
программа доступна по умол- ваших вопросов. Обе программы
чанию во всех BSD-системах http://lswest.pastebin.com/f7d0cad21 есть в репозито-рии Universe в
(для тех, кто интересуется Ubuntu 9.10. Как всегда, все
подобного рода вещами). Хотя Я полагал, что я должен предложения или вопросы по
некоторые клавиатурные предоставить вам некоторый этой статье шлите мне на почту
комбинации отличаются, выбор среди программ такого lswest34@gmail, и я постараюсь
страница помощи tmux весьма рода, ведь Linux и есть выбор и ответить на все вопросы и
подробна и проста для понимания, свобода использовать то, что просьбы.
и она содержит весь список вы хотите. Лично я нашел tmux
доступных команд, получить немного более лёгким в исполь-
который вы можете, набрав зовании, но GNU Screen широко
следующее: известен, и потому я рассмотрел
его более подробно. Как бы то https://edge.launchpad.net/byobu
tmux list-commands ни было, на странице руководства и:
вы найдёте всю необходимую http://blog.dustinkirkland.com/sear
ch/label/Byobu научился всему, что
Справа вверху снимок информацию, такую как клави- знает, ломая систему, которую
экрана с запущенным tmux атурные сокращения, опции приходилось учиться восстанав-
(возможно, вы заметили, что я настройки и т.д. Я очень реко- ливать. Вы можете написать
использую tmux на своём нет- мендую заглянуть в руковод- Лукасу (Lucas) по адресу:
буке, тогда как Byobu запущен ство перед тем, как задавать lswest34@gmail.com.
в виртуальной машине).
full circle magazine #34 содержание ^
HOW-TO Программа на Python - Часть 8
с нашей базой. Давайте начнём
с кусочка программы, показан- #!/usr/bin/python
FCM#27-33 - Python Части 1 - 7 #------------------------------------------------------
ного вверху справа.
# Cookbook.py
# Created for Beginning Programming Using Python #8
Теперь сделаем макет меню. # and Full Circle Magazine
Класс Cookbook пока оставим #------------------------------------------------------
пустым. Функция Menu() будет import apsw
достаточно большим циклом и import string
будет отображать список вари- import webbrowser
антов, которые пользователь
может выполнить. Мы будем class Cookbook:
Dev Graphics Internet M/media System использовать цикл while.
def Menu():
Измените код подпрограммы
cbk = Cookbook() # Initialize the class
так, как показано внизу справа.
Menu()
Затем мы заполним меню
CD/DVD HDD USB Drive Laptop Wireless структурой if|elif|else, которая
показана наверху следующей
страницы.
def Menu():

В
cbk = Cookbook() # Initialize the class
этот раз мы продолжим Давайте ещё раз быстро loop = True
работать над нашей просмотрим код нашей функции. while loop == True:
базой рецептов, начатой Всё начинается с отображения print
в прошлом номере. Эта опций, которые пользователь '==================================================='
часть будет длинной, с большим может выбирать. Мы устанавли- print ' RECIPE DATABASE'
количеством кода, поэтому запа- ваем значение переменной loop print
ситесь терпением — и вперёд. равным True и затем используем '==================================================='
И не пытайтесь сойти на ходу. цикл while, который будет про- print ' 1 - Show All Recipes'
должаться до тех пор, пока зна- print ' 2 - Search for a recipe'
Мы уже создали базу данных. print ' 3 - Show a Recipe'
Теперь мы хотим отображать её чение loop не станет равным
print ' 4 - Delete a recipe'
содержимое, добавлять и удалять False. Также мы используем функ- print ' 5 - Add a recipe'
его. Как это сделать? Обо всём цию raw_input() чтобы пользова- print ' 6 - Print a recipe'
по порядку. Мы начнём с прило- тель мог ввести необходимый print ' 0 - Exit'
жения, запускаемого в терминале, вариант. Для того чтобы можно print
поэтому нам нужно создать меню. было протестировать наше меню, '==================================================='
Так же мы создадим класс, кото- нужно немного доработать наш response = raw_input('Enter a selection -> ')
рый будет содержать операции класс, добавив функцию __init__():
full circle magazine #34 содержание ^
ПРОГРАММА НА PYTHON — ЧАСТЬ 8

if response == '1': # Show all recipes /usr/bin/python -u


pass "/home/greg/python_examples/APSW/cookbook/cookbook_stub.py"
elif response == '2': # Search for a recipe ===================================================
pass RECIPE DATABASE
elif response == '3': # Show a single recipe ===================================================
pass 1 - Show All Recipes
elif response == '4': # Delete Recipe 2 - Search for a recipe
pass 3 - Show a Recipe
elif response == '5': # Add a recipe 4 - Delete a recipe
pass 5 - Add a recipe
elif response == '6': # Print a recipe 6 - Print a recipe
pass 0 - Exit
elif response == '0': # Exit the program ===================================================
print 'Goodbye' Enter a selection ->
loop = False
else:
print 'Unrecognized command. Try again.' def PrintAllRecipes(self): Ещё надо написать код
pass метода __init__. Замените его
def SearchForRecipe(self): следующими строками:
def __init__(self): pass
отображения информации об
pass def
определённом рецепте, исполь- def __init__(self):
зуя все три таблицы, метод, PrintSingleRecipe(self,which):
Теперь сохраните свою pass global connection
который удаляет рецепт из global cursor
программу в тот же каталог, def DeleteRecipe(self,which):
базы, метод, позволяющий pass self.totalcount = 0
что и базу, которую мы создали connection=apsw.Connection
добавлять рецепты, и метод, def EnterNew(self):
в прошлый раз, и запустите её. ("cookbook.db3")
печатающий выбранный рецепт pass
Вы должны увидеть что-то, cursor=connection.cursor()
на принтере. Метод PrintAllRecipe def PrintOut(self,which):
похожее на текст с картинки
не должен принимать никаких pass
вверху справа. Сначала создаются две
параметров кроме (self), так же
как и SearchforRecipe и EnterNew. Для некоторых пунктов меню глобальные переменные для
Программа должна просто соединения и курсора. Мы
Методам PrintSingleRecipe, нам необходимо вывести весь
печатать меню снова и снова, можем использовать их в
DeleteRecipe и PrintOut необхо- список рецептов из таблицы
пока вы не введёте «0», затем любом месте класса Cookbook.
димо знать рецепт, с которым Recipe — чтобы пользователь
напечатать «GoodBye» и завер- Затем создаётся переменная
нужно работать, поэтому нам мог выбрать нужные ему рецеп-
шить работу. Теперь мы можем self.totalcount, которая
нужен параметр, который мы ты. Это будут пункты 1, 3, 4 и 6.
начинать работать над метода- используется для подсчета
назовем «which». Используйте Так что измените эти пункты,
ми класса Cookbook. Их нам нуж- количества рецептов. Мы будем
команду «pass» вместо тела заменив команду pass вызовом
но несколько: метод, отобража- использовать эту переменную
ещё не написанных методов. В функции cbk.PrintAllRecipes(). Те-
ющий всю информацию из базы позже. И, наконец, создаётся
классе Cookbook создайте перь наша обработка запроса выг-
данных, метод для поиска соединение и курсор.
следующие функции: лядит примерно так, как показа-
рецептов по базе, метод для
но вверху следующей страницы.
full circle magazine #34 содержание ^
ПРОГРАММА НА PYTHON — ЧАСТЬ 8
Учтите, что мы используем конец кода 1-го пункта меню:
if response == '1': # Show all recipes кортеж, который возвращает
cbk.PrintAllRecipes() функция cursor.execute() из print 'Total Recipes - %s'
elif response == '2': # Search for a recipe ASPW. Мы печатаем pkID в %cbk.totalcount
pass качестве пункта для каждого
elif response == '3': # Show a single recipe рецепта. Это позволяет нам print '----------------------
-----------------------------
cbk.PrintAllRecipes() выбрать нужный рецепт позже.
elif response == '4': # Delete Recipe -'
Когда вы запустите программу,
cbk.PrintAllRecipes() то увидите меню, и после
elif response == '5': # Add a recipe res = raw_input('Press A Key
выбора пункта 1 получите -> ')
pass
примерно то, что показано
elif response == '6': # Print a recipe
cbk.PrintAllRecipes() сверху следующей страницы. Мы на время пропустим
elif response == '0': # Exit the program опцию №2 (поиск рецепта) и
print 'Goodbye' Это то, что нам нужно, за займёмся №3 (вывод одного
loop = False тем исключением, что если вы рецепта). Давайте сначала
else: запускаете приложение в чём- разберёмся с меню. Мы покажем
print 'Unrecognized command. Try again.' то вроде Dr.Python, то программа список всех рецептов, как в
не приостанавливается. Давай- опции 1, и затем попросим
те добавим паузу до нажатия пользователя выбрать один из
Следующим шагом мы испра- этого рассказывалось в прошлой пользователем клавиши, чтобы них. Чтобы убедиться, что мы
вим метод PrintAllRecipes() класса статье. он смог посмотреть на вывод не получим ошибок из-за
Cookbook. Так как мы завели пару секунд. Ещё давайте выве- плохих введённых данных, мы
две глобальные переменные sql = 'SELECT * FROM Recipes' дем полное количество рецептов
cntr = 0 будем использовать конструк-
для соединения и курсора, нам из переменной, созданной чуть цию Try|Except. Напечатаем
for x in
не нужно заново создавать их в cursor.execute(sql): раньше. Добавьте этот код в приглашение пользователю
каждом методе. Также давайте cntr += 1
улучшим вывод заголовков на- print '%s %s %s %s'
шего списка рецептов. Для этого %(str(x[0]).rjust(5),x[1].lju def PrintAllRecipes(self):
мы будем использовать команду st(30),x[2].ljust(20),x[3].lj print '%s %s %s %s'
форматирования «%s». Нам надо, ust(30)) %('Item'.ljust(5),'Name'.ljust(30),'Serves'.ljust(20),
print '-------------' 'Source'.ljust(30))
чтобы заголовки выглядели
self.totalcount = cntr print '---------------------------------'
примерно так: sql = 'SELECT * FROM Recipes'
cntr = 0
Item Name Serves Source Переменная cntr будет счи-
for x in cursor.execute(sql):
тать количество рецептов, cntr += 1
--------------------------- отображаемых пользователю. print '%s %s %s %s'
Теперь метод завершён. Ниже %(str(x[0]).rjust(5),x[1].ljust(30),x[2].ljust(20),x[3
Наконец, нам надо создать показан его полный код. Посмо- ].ljust(30))
ещё несколько SQL-команд, сде- трите, не пропустили ли вы что- print '---------------------------------'
лать запрос к базе и отобразить нибудь. self.totalcount = cntr
результаты. Большинство из
full circle magazine #34 содержание ^
ПРОГРАММА НА PYTHON — ЧАСТЬ 8
Сейчас у нас закончены два
метода из шести. Так что давай-
Enter a selection -> 1 те вернёмся к функции поиска
Item Name Serves Source рецепта и снова начнём с меню.
--------------------------------------------------------------------------------------
К счастью, в этот раз нам нужно
1 Spanish Rice 4 Greg
2 Pickled Pepper-Onion Relish 9 half pints Complete Guide to Home Canning только вызвать метод поиска в
-------------------------------------------------------------------------------------- классе, так что просто напиши-
=================================================== те вместо команды pass:
RECIPE DATABASE
=================================================== cbk.SearchForRecipe()
1 - Show All Recipes
2 - Search for a recipe Теперь заполним наш код
3 - Show a Recipe поиска. В классе Cookbook
4 - Delete a recipe замените наши заглушки для
5 - Add a recipe SearchForRecipe кодом, показан-
6 - Print a recipe
ным на странице 12.
0 - Exit
===================================================
Enter a selection -> Здесь происходит очень
много чего. После создания
соединения и курсора, мы
(Select a recipe → ), затем, если хотим найти. Затем мы красиво так же, как мы это делали с отображаем поисковое меню.
он ввёл корректный запрос, мы оформляем результаты на таблицей «ingredients». Мы собираемся предложить
вызовем метод PrintSingleRecipe() экране, снова из кортежа, Наконец, мы ждём пока пользователю три пункта для
нашего класса Cookbook с пара- возвращённого APSW. В этом пользователь нажмёт клавишу, поиска и один для выхода из
метром pkID из нашей таблицы случае мы используем x как чтобы он мог увидеть рецепт на функции. Мы можем разрешить
Recipe. А если введённые поль- список, и затем вставляем все экране. Код показан на пользователю искать по имени
зователем данные — не число, его значения в кортеж. Посколь- следующей странице. рецепта, по его содержанию и
то мы вызовем исключение ку макет таблицы такой: по слову в списке ингредиентов.
ValueError, которое отловим при pkID/name/ servings/source, мы Из-за этого мы не можем ис-
помощи except ValueError: можем использовать x[0],x[1],x[2] пользовать функцию
перехват показан справа. и x[3] как подробности. Затем
нам надо выбрать все записи из try:
Теперь поработаем над таблицы ингредиентов где res = int(raw_input('Select a Recipe -> '))
методом PrintSingleRecipe. Мы recipeID (наш ключ из таблицы if res <= cbk.totalcount:
«recipes») равен переменной pkID, cbk.PrintSingleRecipe(res)
снова начинаем с соединения и
которую мы только что исполь- elif res == cbk.totalcount + 1:
курсора, затем создаем SQL-запрос. print 'Back To Menu...'
В этом случае мы используем зовали. Мы проходим циклом по
возвращённому кортежу, else:
«"SELECT * FROM Recipes WHERE print 'Unrecognized command. Returning to menu.'
pkID = %s" % str(which)» где, печатаем каждый ингредиент,
except ValueError:
which — значение, которое мы и, наконец, получаем инструк- print 'Not a number...back to menu.'
ции из таблицы «instructions» —
full circle magazine #34 содержание ^
ПРОГРАММА НА PYTHON — ЧАСТЬ 8
отображения, созданную Мы выбираем всё из таблицы
только что, и нам понадобится рецептов, соединяя выбранные def PrintSingleRecipe(self,which):
заново писать функции вывода элементы с соответствующими sql = 'SELECT * FROM Recipes WHERE pkID = %s' %
данных на экран. Для первых им ингредиентами, так как из str(which)
двух пунктов нам нужно исполь- таблицы ingredients выбираются print
зовать простой SELECT со словом только те ингредиенты, у кото- '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
LIKE. Если мы используем обоз- рых recipeID равен pkID из таб- for x in cursor.execute(sql):
recipeid =x[0]
реватель баз данных, например, лицы recipe. Затем ищем ингре-
print "Title: " + x[1]
SQLite Database Browser, то наш диент при помощи LIKE и, нако- print "Serves: " + x[2]
запрос использует подстановоч- нец, группируем результаты по print "Source: " + x[3]
ные символы «%». Таким образом, параметру pkID из таблицы print
для поиска рецептов, содержа- recipe, чтобы избежать вывода '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
щих «rice» в имени, наш запрос дубликатов. Если вы помните, sql = 'SELECT * FROM Ingredients WHERE RecipeID
будет выглядеть так: перцы во втором рецепте встре- = %s' % recipeid
чаются дважды (лук и чуточку print 'Ingredient List:'
SELECT * FROM Recipes WHERE перца), один раз зелёные и один for x in cursor.execute(sql):
name like '%rice%' раз красные. Это может создать print x[1]
print ''
путаницу для наших пользова-
Однако, поскольку символ print 'Instructions:'
телей. Наше меню использует sql = 'SELECT * FROM Instructions WHERE RecipeID
«%» — подстановочный в нашей
= %s' % recipeid
строке, мы должны использовать searchin = raw_input('Enter for x in cursor.execute(sql):
%% в нашем тексте. Хуже того, Search Type -> ') print x[1]
мы используем подстановочный print
символ, чтобы вставить слово if searchin != '4': '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
которое ищет пользователь. resp = raw_input('Press A Key -> ')
Поэтому мы должны сделать который означает: если значение,
его «%%%s%%». Извините, если которое ввёл пользователь не
ничего не понятно. Третий равно 4, то выполняем некото- чтобы облегчить переход к данных. Мы просто добавим
запрос называется выражением рые действия, а если оно равно Python 3.x в будущем. Наконец, одну строку к нашей функции
JOIN. Давайте взглянем на него 4, то ничего не делаем, просто мы снова выводим данные на меню для вызова функции
поближе: пропускаем эти действия. Обра- экран. То, что увидит пользова- EnterNew:
тите внимание, что, для того тель, показано на странице 13.
sql = "SELECT чтобы написать «не равно», я cbk.EnterNew()
r.pkid,r.name,r.servings,r.so использовал «!=» а не «<>». Вы можете видеть, как
urce,i.ingredients FROM В Python 2.x можно использовать здорово программа показывает Функцию EnterNew() из
Recipes r LEFT JOIN оба варианта, однако в Python результат. Теперь пользователь класса Cookbook нужно
ingredients i ON (r.pkid = 3.x второй вариант выдаст син- может вернуться обратно в завершить кодом, который
i.recipeid) WHERE меню и выбрать пункт 3, чтобы
таксическую ошибку. Об измене- можно найти по ссылке:
i.ingredients LIKE '%%%s%%'
ниях в Python 3.x мы больше показать любой рецепт, кото- http://pastebin.com/f1d868e63.
GROUP BY r.pkid" %response
поговорим в следующих статьях. рый захочет. Сейчас мы добавим
А сейчас используйте «!=», ещё рецептов к нашей базе
full circle magazine #34 содержание ^
def SearchForRecipe(self):
# print the search menu
print '-------------------------------'
print ' Search in'
print '-------------------------------'
print ' 1 - Recipe Name'
print ' 2 - Recipe Source'
print ' 3 - Ingredients'
print ' 4 - Exit'
searchin = raw_input('Enter Search Type -> ')
if searchin != '4':
if searchin == '1':
search = 'Recipe Name'
elif searchin == '2':
search = 'Recipe Source'
elif searchin == '3':
search = 'Ingredients'
parm = searchin
response = raw_input('Search for what in %s (blank to exit) -> ' % search)
if parm == '1': # Recipe Name
sql = "SELECT pkid,name,source,servings FROM Recipes WHERE name like '%%%s%%'" %response
elif parm == '2': # Recipe Source
sql = "SELECT pkid,name,source,servings FROM Recipes WHERE source like '%%%s%%'" %response
elif parm == '3': # Ingredients
sql = "SELECT r.pkid,r.name,r.servings,r.source,i.ingredients FROM Recipes r Left Join ingredients i
on (r.pkid = i.recipeid) WHERE i.ingredients like '%%%s%%' GROUP BY r.pkid" %response
try:
if parm == '3':
print '%s %s %s %s %s'
%('Item'.ljust(5),'Name'.ljust(30),'Serves'.ljust(20),'Source'.ljust(30),'Ingredient'.ljust(30))
print '--------------------------------------------------------------------------------------'
else:
print '%s %s %s %s' %('Item'.ljust(5),'Name'.ljust(30),'Serves'.ljust(20),'Source'.ljust(30))
print '--------------------------------------------------------------------------------------'
for x in cursor.execute(sql):
if parm == '3':
print '%s %s %s %s %s'
%(str(x[0]).rjust(5),x[1].ljust(30),x[2].ljust(20),x[3].ljust(30),x[4].ljust(30))
else:
print '%s %s %s %s' %(str(x[0]).rjust(5),x[1].ljust(30),x[3].ljust(20),x[2].ljust(30))
except:
print 'An Error Occured'
print '--------------------------------------------------------------------------------------'
inkey = raw_input('Press a key')

full circle magazine #34 содержание ^


ПРОГРАММА НА PYTHON — ЧАСТЬ 8
Начнём с объявления списка
«ings», в котором будут ингре-
диенты. Затем попросим пользо-
вателя ввести название, источ- Enter a selection -> 2
-------------------------------
ник и количество порций. После
Search in
этого начинается цикл, в кото- -------------------------------
ром мы по очереди считываем 1 - Recipe Name
ингредиенты и помещаем их в 2 - Recipe Source
список «ings». Когда пользова- 3 - Ingredients
тель введёт 0, цикл прекратит- 4 - Exit
ся и начнётся сбор инструкций. Enter Search Type -> 1
После этого мы выводим соб- Search for what in Recipe Name (blank to exit) -> rice
ранные данные и просим поль- Item Name Serves Source
зователя подтвердить их --------------------------------------------------------------------------------------
1 Spanish Rice 4 Greg
верность перед сохранением.
--------------------------------------------------------------------------------------
Как и в прошлый раз, мы Press a key
используем команду INSERT
INTO и возвращаемся в меню. Всё просто. А теперь поиск ингредиентов…
Нужно помнить об использова-
нии одинарных кавычек в Enter a selection -> 2
записях. ОБЫЧНО проблем с -------------------------------
ингредиентами или инструкц- Search in
иями возникать не должно, но -------------------------------
вот в названии или источнике 1 - Recipe Name
кавычка встретиться может. 2 - Recipe Source
3 - Ingredients
Каждую одиночную кавычку
4 - Exit
нужно экранировать. Делаем Enter Search Type -> 3
мы это при помощи string.replace, Search for what in Ingredients (blank to exit) -> onion
и по этой причине мы и импор- Item Name Serves Source Ingredient
тировали библиотеку string.
В коде для меню под пунктом 4 --------------------------------------------------------------------------------------
нужно добавить код из верхне- 1 Spanish Rice 4 Greg 1 small
го блока на следующей стра- Onion chopped
нице. 2 Pickled Pepper-Onion Relish 9 half pints Complete Guide to Home Canning 6 cups
finely chopped Onions
--------------------------------------------------------------------------------------
Далее добавьте в метод
Press a key
DeleteRecipe() класса Cookbook
код из нижнего блока на
следующей странице.

full circle magazine #34 содержание ^


ПРОГРАММА НА PYTHON — ЧАСТЬ 8
cbk.PrintAllRecipes()
Пройдёмся быстро по проце- тот, который нужно распечатать. print '0 - Return To Menu'
дуре удаления. Сперва пользо- В класс Cookbook добавим метод, try:
вателю задаётся вопрос, какой который мы назовём PrintOut. res = int(raw_input('Select a Recipe to DELETE
рецепт нужно удалить (в самом Его код показан в правой верх- or 0 to exit -> '))
меню), и этот номер pkID пере- ней части следующей страницы. if res != 0:
даётся в удаляющий метод. cbk.DeleteRecipe(res)
После этого пользователю Код начинается с команды fi elif res == '0':
предлагается подтвердить своё = open([filename],'w'), которая print 'Back To Menu...'
решение. Если пользователь создаёт новый файл. После else:
print 'Unrecognized command. Returning to
вводит «Y» (string.upper(resp) этого мы выбираем из таблицы
menu.'
== 'Y'), то мы создаём sql-запрос рецептов информацию, которую except ValueError:
для удаления. Заметьте, что в пишем в файл командой fi.write. print 'Not a number...back to menu.'
этот раз нужно удалить записи Для названия будем использо-
из всех трёх таблиц. Можно, вать тэг <h1></h1>, а для
конечно, произвести удаление источника и количества порций def DeleteRecipe(self,which):
resp = raw_input('Are You SURE you want to
только из таблицы рецептов, но — тэг <h2>. После этого список
Delete this record? (Y/n) -> ')
в таком случае в остальных ингредиентов оформляется в if string.upper(resp) == 'Y':
двух таблицах появятся виде списка <li></li>, и выво- sql = "DELETE FROM Recipes WHERE pkID = %s"
осиротевшие записи, что не дятся инструкции. Кроме этого % str(which)
есть хорошо. Когда мы удаляем нужно использовать простые cursor.execute(sql)
запись из таблицы рецептов, запросы к базе данных, кото- sql = "DELETE FROM Instructions WHERE
мы используем поле pkID. В рые мы уже изучили. В конце recipeID = %s" % str(which)
двух других таблицах нужно мы закрываем файл командой cursor.execute(sql)
использовать поле recipeID. fi.close() и выполняем команду sql = "DELETE FROM Ingredients WHERE
webbrowser.open([filename]) с recipeID = %s" % str(which)
cursor.execute(sql)
Наконец, разберёмся с выво- именем файла, который мы
print "Recipe information DELETED"
дом рецептов на экран. Мы соз- только что создали. После этого resp = raw_input('Press A Key -> ')
дадим ОЧЕНЬ простой HTML- пользователь может распеча- else:
файл и откроем его в браузере, тать всё, что ему необходимо. print "Delete Aborted - Returning to menu"
чтобы рецепты можно было
распечатать оттуда. Именно На текущий момент это самое
поэтому нам нужна библиотека большое наше приложение! На
webbrowser. Вставьте в меню своём сайте я разместил полный
для шестого действия код, исходный код и образец базы является владельцем консал-
который приведён в начале данных, если вы не скачали её тинговой компании «RainyDay
следующей страницы. в прошлом месяце. Если вы не Solutions, LLC» (Аврора, штат
хотите всё это печатать, или у Колорадо) и программирует с
Мы снова выводим список вас есть проблемы, заходите на 1972 г. Он любит готовить, слу-
всех рецептов и даём возмож- мой сайт www.thedesignated шать музыку, ходить в походы
ность пользователю выбрать geek.com и скачивайте код. и проводить время с семьёй.

full circle magazine #34 содержание ^


ПРОГРАММА НА PYTHON — ЧАСТЬ 8

cbk.PrintAllRecipes()
print '0 - Return To Menu'
try:
res = int(raw_input('Select a Recipe to DELETE or 0 to exit -> '))
if res != 0:
cbk.PrintOut(res)
elif res == '0':
print 'Back To Menu...'
else:
print 'Unrecognized command. Returning to menu.'
except ValueError:
print 'Not a number...back to menu.'

def PrintOut(self,which):
fi = open('recipeprint.html','w')
sql = "SELECT * FROM Recipes WHERE pkID = %s" % which
for x in cursor.execute(sql):
RecipeName = x[1]
RecipeSource = x[3]
RecipeServings = x[2]
fi.write("<H1>%s</H1>" % RecipeName)
fi.write("<H2>Source: %s</H2>" % RecipeSource)
fi.write("<H2>Servings: %s</H2>" % RecipeServings)
fi.write("<H3> Ingredient List: </H3>")
sql = 'SELECT * FROM Ingredients WHERE RecipeID = %s' % which
for x in cursor.execute(sql):
fi.write("<li>%s</li>" % x[1])
fi.write("<H3>Instructions:</H3>")
sql = 'SELECT * FROM Instructions WHERE RecipeID = %s' % which
for x in cursor.execute(sql):
fi.write(x[1])
fi.close()
webbrowser.open('recipeprint.html')
print "Done"

full circle magazine #34 содержание ^


HOW-TO Цифровая ретушь фотографий в GIMP

Т
емой этого месяца будет с того, что уберём угри и точки.
цифровое ретуширова- Для этого используем Лечебную
N/A
ние фотографий. Как кисть. Выберите её на панели
правило, сейчас на инструментов. Можно исполь-
обложки журналов и билборды зовать клавиатурное
помещают идеальные лица. сокращение H.
В этой статье я расскажу об
общих принципах косметичес-
кой ретуши.

Профессиональные худож-
Теперь нужно выбрать кисть.
Dev Graphics Internet M/media System ники и фотографы используют
Нам подойдёт кисть «Circle Fuzzy»,
разные способы ретуширова-
которая показана на картинке.
ния. Некоторые предпочитают
Размер кисти можно изменить,
GIMP и схожие программы, а
увеличивая и уменьшая масштаб.
другие — фильтры. Здесь мы
CD/DVD будем использовать и то, и от вспышки. Для этого можно
HDD USB Drive Laptop Wireless
другое. Наша ретушь будет использовать либо Штамп, либо
носить практический характер. Лечебную кисть.
Для начала уберём с фотогра-
фии угри. Штамп: выборочное
копирование из изо-
Лечебная кисть предназна- бражения или текстуры
Откройте фотографию при
чена для удаления угрей и при помощи кисти.
помощи GIMP и поищите недос-
точек. Сперва приблизьте
татки. Моё фото находится
фотографию при помощи + и -. При применении любого из
слева.
Затем выберите наиболее инструментов нужно придержи-
подходящий цвет, удерживая ваться низкого уровня непро-
Я обнаружил следующие
CTRL. Отпустите CTRL и зрачности, а для этого нужно
недостатки:
щёлкните по нужным местам. использовать несколько облас-
1. Отблеск от вспышки на лице. тей в несколько подходов, а не
Вы увидите, как угорь просто делать всё за один раз. Удер-
2. Угри на лице.
исчезнет. Тоже самое нужно живая CTRL, щёлкните по области,
3. Морщины.
повторить со всем угрями. где цвет фона похож на тот,
4. Неподходящий цвет.
который был засвечен. Пощёл-
Теперь угрей больше нет. кайте по другим областям и
А теперь исправим эти про-
Пришло время убрать отблеск повторяйте процесс до тех пор,
блемы по очереди. Начнём
full circle magazine #34 содержание ^
ЦИФРОВАЯ РЕТУШЬ ФОТОГРАФИЙ В GIMP
Добавить в текущее выделение, Не забывайте применять
нужно зажать SHIFT и обрисовать растушёвку после каждого вы-
руку. деления. Выберите Выделение >
Растушевать, и укажите
значение в 5 пикселов.
Фотография принадлежит
Бренде Аннерл (Brenda Annerl) и
распространяется под
лицензией CC.
пока отблеск от вспышки не http://www.flickr.com/photos/br
будет убран. Теперь нужно применить endaannerl/2729960358/sizes/m/
фильтр. Выберите Фильтры >
Теперь выделим отдельные Вы указали границы области, Размывание > Гауссово
части лица. Выберите инстру- с которой хотите работать. Если размывание.
мент Свободное выделение на вы допустили ошибку, можно
панели. нажать на Backspace, чтобы
отменить предыдущее действие.

Теперь нужно исключить из


выделения некоторые его части.
• Глаза
• Брови
• Ноздри
• Украшения

Выберите третье
Свободное выделение: действие из набора
выделение области инструментов:
произвольными лини- Подберите подходящие
ями или отрезками. Исключите из выделения параметры и нажмите OK.
вышеназванные части.
Нам предстоит сде- Нажмите Ctrl + Shift + A или
лать больше одного выберите в меню Выделение
выделения, поэтому пункт Снять.
нужно нажать на кнопку
Добавить в текущее выделение. Осталось только
подправить цвета. Выберите
В качестве нашего первого Цвет > Цветовой баланс. В
выделения выберем лицо, а следующий раз мы рассмотрим
затем, нажав на кнопку этот инструмент подробнее.

full circle magazine #34 содержание ^


HOW-TO Идеальный сервер — Часть 4
Нам нужно сказать SquirrelMail, trash_folder = Trash
FCM09 - 16 : О серверах 1 - 8 что мы используем Courier-IMAP/- sent_folder = Sent
FCM28 - 29 : LAMP Часть 1 - 2 POP3: draft_folder = Drafts
FCM31 - 33 : Идеальный сервер 1 - 3 show_prefix_option = false
SquirrelMail Configuration : default_sub_of_inbox = false
Read: config.php (1.4.0) show_contain_subfolders_optio
Main Menu n = false
1. Organization Preferences optional_delimiter = .
2. Server Settings delete_folder = true
3. Folder Defaults
4. General Options Press any key to continue…
5. Themes
Dev Graphics Internet M/media System 6. Address Books Далее вы увидите список
7. Message of the Day (MOTD) настроек и их значений. Для
8. Plugins продолжения нажмите клавишу
9. Database .
10. Languages
CD/DVD HDD USB Drive Laptop Wireless Вернитесь в главное меню, Чтобы установить послед-
D. Set pre-defined settings наберите « » для сохранения, и нюю версию ISPConfig 3,
for specific IMAP servers вы увидите: выполните (заменив ISPConfig-

Ч
C Turn color on 3.0.1.6.tar.gz на последнюю
тобы установить почто- S Save data Data saved in config.php версию) :
вый клиент SquirrelMail, Q Quit Press enter to continue
выполните: cd /tmp
Command >>
Вернитесь в главное меню,
наберите « » для выхода. wget
aptitude install squirrelmail Введите: http://downloads.sourceforge.
Теперь вы можете получить net/ispconfig/ISPConfig-
Затем создайте такую симво- Вы увидите список, называ- 3.0.1.6.tar.gz?use_mirror=
доступ к SquirrelMail по адресу:
лическую ссылку… ющийся IMAP server options:
http://server1.example.com/webmail
tar xvfz ISPConfig-
ln -s Please select your IMAP 3.0.1.6.tar.gz
server: или
/usr/share/squirrelmail/
/var/www/webmail cd
Введите слово: http://192.168.0.100/webmail ispconfig3_install/install/
… и настройте SquirrelMail:
imap_server_type = courier
squirrelmail-configure default_folder_prefix =
INBOX.

full circle magazine #34 содержание ^


ИДЕАЛЬНЫЙ СЕРВЕР — ЧАСТЬ 4
Следующим шагом нужно
выполнить:

php -q install.php

Запустится установщик
ISPConfig 3. Нажимайте
для каждой опции — кроме
шага, на котором система
запросит пароль root для
MySQL.

Установщик автоматически
настраивает все основные
службы, поэтому ручная
настройка не требуется. Russian Ubuntu Podcast —
это подкаст о семействе
Затем вы можете получить операционных систем
доступ к ISPConfig 3: Ubuntu и жизни сообщества.

http://server1.example.com:8080/

или — Ubuntu 10.04 LTS Beta 2


— Считаем дни до релиза
http://192.168.0.100:8080/ — Независимый Сурикат и
Zoho
Войдите, используя имя
— Ubuntu One: контакты и
« » и пароль « »
музыка
(следует изменить пароль по
— День Заплаток
умолчанию после первого
— Пробуем Ubuntu: Live CD
входа).
и Wubi
— Полезный флешмоб
Теперь система готова к
— Что ждёт ubuntu.ru?
использованию.
— В поиске талантов

СКАЧАТЬ

full circle magazine #34 содержание ^


МОЯ ИСТОРИЯ Я использую Linux

М
оё знакомство с Linux лет назад я пробовал Red Hat, и Я знал, что Linux может Второй проблемой стала моя
было не очень весё- он показался мне достойным обеспечить стабильность и семья. Я был достаточно опытен,
лым. Я работаю внимания, но тогда у меня не избавить от множества опаснос- чтобы разобраться с Linux, но
учителем в школе и было ни времени, ни сил, чтобы тей, которым подвержены жена и дети — это совсем
во всём полагаюсь на свой изучить его как следует. В другие операционные системы. другое дело. Два моих сына
компьютер. Мой домашний течение последующих лет я Загрузочные диски, которые я очень похожи на отца в своей
компьютер позволяет мне перепробовал множество пробовал в течение последних любви к играм, и им тоже была
организовать всю работу в других дистрибутивов: Corel месяцев, дали мне возможность необходима возможность
классе: набирать тесты, гото- Linux, Fedora, Mandrake, Xandros, понять, что Linux достиг того поиграть. Моя жена, напротив,
виться к урокам и вести учёт Debian и Slack. И хотя я был уровня удобства, который меня рассматривала компьютер
оценок. Но два года назад на впечатлён, ни один из них не вполне устраивал. Но перед тем только как неизбежное зло.
моём компьютере завёлся заставил меня отказаться от как перевести свой домашний Хотя она и любила писать
вирус, который сделал его моей ОС, созданной в Редмонде. компьютер на Linux, я должен письма и играть в Scrabble
непригодным к использованию. был решить две проблемы. онлайн, компьютер скорее
И, хотя я регулярно обновлял Но благодаря той катастрофе, вызывал у неё раздражение,
антивирусные базы, мой случившейся из-за вируса, я Во-первых, я обожаю чем экономил время.
компьютер ломался три раза за понял, что время пришло. Ведь игры. Мои ученики Обычные действия,
год из-за вирусов, и я не мог Linux всё же был неуязвим для всегда удивляются, вроде набора
выполнять свою работу. Как-то вирусов и шпионов — двух что их учитель текста, часто
раз мне нужно было подготовить проблем, которые отняли у меня может разбить становились
тест, чтобы провести его на столько времени и производи- их в пух и прах для неё
следующий день, но это тельности. У учителей не так в онлайн- пыткой. Было
невозможно было сделать без уж много свободного времени. шутере, или вполне
рабочего компьютера, и тест Подготовка к занятиям, проверка что его может очевидно,
пришлось отложить. И хотя мои контрольных, посещение увлечь что Linux
ученики не очень расстроились собраний и курсов занимают хорошая RPG. должен был
по этому поводу (на самом деле достаточно времени и без Играми я бы быть
они даже обрадовались), я был, необходимости дважды в год увлекался со дружелюбным
мягко говоря, расстроен. Говоря переустанавливать операцион- времён и подходящим
же не так мягко, я был сыт по ную систему компьютера. И Wolfenstein 3D, и для игр, чтобы
горло. хотя я каждый раз прилежно поэтому ни о каком прижиться в моей
копировал свои файлы в ожидании переходе не могло семье.
Раньше я уже пробовал очередной поломки, я всегда быть и речи, если на
Linux, но тогда это было только терял парочку, в том числе те, Linux я не смогу удовлетворить Ubuntu Linux олицетворяла
ради того, чтобы удовлетворить на восстановление которых эту страсть. мои надежды. Ни один из
мой интерес к технике. Много требовалось куча времени, а дистрибутивов, которые я
его мне не всегда хватает. попробовал в течение этих лет,
full circle magazine #34 содержание ^
МОЯ ИСТОРИЯ — Я ИСПОЛЬЗУЮ LINUX
не мог сравниться с Ubuntu в поискал инструкции, как их нас- говоря, хотя в Linux и нельзя Флориды о преимуществах
простоте использования. Я троить, и приступил к работе. запустить все новые и старые программ с открытым исходным
скачал Ubuntu 7.04 на компью- Я очень удивился, узнав, что игры от World of Warcraft до кодом. Скоро я могу оказаться
тере друга, записал её на диск, многие игры работают точно Neverwinter Nights, мы счастливы. не единственным учителем,
принёс домой и запустил загрузку. также, как и в Windows. Например, Благодаря Wine и Cedega мы который пишет, чтобы
Установка была простой. Моя установка World of Warcraft была можем продолжать зарабатывать восхвалить пингвина!
сеть была распознана и готова такой же простой, как и в фраги, выполнять квесты и
к использованию, а благодаря Windows. Так же просто было спасать мир.
Synaptic я с лёгкостью устано- установить и Guild Wars. Однако
вил нужные дополнения к с более старыми играми, С тех пор прошло два года.
Firefox, чтобы моя жена смогла такими как мои любимые Thief и Сейчас у нас есть два компью-
продолжать играть в Scrabble. Thief II, всё оказалось сложнее. тера с Ubuntu 9.04, объединён-
Мои опасения в том, что жена Ознакомившись с информацией ные в сеть, а этот текст я
не сможет переключиться на на форумах, я решил набираю на ноутбуке
Ubuntu Linux, как оказалось, скачать программу Dell с Ubuntu 8.10. За
были напрасными. Как только Transgaming's два года ни один
она осознала, что OpenOffice.org Cedega. Эта мой компьютер
может с лёгкостью выполнять программа не не сломался
её учительскую работу, а Firefox бесплатная, ни разу, как
и Thunderbird делают работу в но всего за и не зара-
сети проще и быстрее, она уже пять долла- зился
не жалела. Сейчас она полностью ров в месяц вирусами.
освоилась с работой на нашем можно Мы с
компьютере с Linux. Более того, получать сыновьями
несколько месяцев назад, когда обновления, всё так же
на работе сломался её компью- благодаря играем
тер, придя домой, она рассказа- которым я каждый
ла, что сообщила пришедшему смог устано- день, и
технику, что этого бы не случи- вить игры становимся Русскоязычный интернет-
лось, перейди школа на Linux! Thief, профессионалами портал, посвящённый
Neverwinter Nights в настройке Wine и операционным системам
Следующей большой пробле- II, Bioshock, LucasArts' Cedega для хорошей семейств UNIX и GNU/Linux,
мой оказались игры. Я много Jedi Academy и многие работы игр. Моя жена до а также Free / Libre / Open
читал про проект Wine, но другие. Я и мои сыновья сих пор играет в сети в Source Software. Уже на
никогда им не пользовался. Я познали радости Linux-игр, Scrabble, и считает, что её протяжении многих лет
снова воспользовался Synaptic и вроде Nexuiz (картинка на работа на компьютере стала является одним из
установил Wine, что, к моему предыдущей странице) и Alien доставлять меньше проблем, популярнейших в рунете
удивлению, заняло всего Arena (смотри рисунок), чем до установки Ubuntu. В новостных сайтов по
несколько минут. После этого я которые оказались такими августе я проведу семинар для соответствующей тематике.
достал пачку дисков с играми, интересными, что заменили учителей моего района
Unreal Tournament. Короче
full circle magazine #34 содержание ^
МОЯ ИСТОРИЯ Powerpets.com

У
нас была небольшая
идея и большая мечта:
создать виртуальный
образовательный и
развлекательный мир, чтобы
усиливать и распространять
осведомлённость о жестоком
обращении с животными, и в
2002 г. мы основали в Канаде
компанию Powerpets.com.

Менее чем за полгода выбранный для офиса дистри- быстро и без заминок, несмотря
проект стал очень популяр- бутив Linux продали другой на старое оборудование. Потом
ным, но появились и огромные компании, которая почти все в нашем офисе установили
проблемы, в основном, из-за забросила его. Ubuntu и начали её использо-
почтовых вирусов. Случалось вать за считанные часы.
так, что очередной всемирно Затем много времени ушло К некоторым изменениям,
опасный вирус нападал на нас на выбор нового дистрибутива например, к общему доступу по
за несколько недель до того, Linux, который служил бы нам SAMBA, было сложно привыкнуть,
как у больших антивирусных следующие десять лет без но переход на Ubuntu в целом
компаний, например, McAfee, головной боли и огромных прошёл успешно.
появлялась защита от него. На затрат на компьютеры. Ubuntu
исправление Windows на быстро привлекла наше внима- Огромное спасибо Ubuntu за
офисных компьютерах мы ние. Прошёл целый месяц, пока отправленный CD и прекрасную
тратили больше времени, чем мы не заказали Ubuntu CD — мы работу в вашей операционной
на работу. не смогли найти, где его купить, системе.
но было неудобно заказывать
Когда мы перешли на Linux, его бесплатно (спутниковый
мы хорошо понимали, что интернет не давал нам возмож-
придётся столкнуться с некото- ности загрузить iso-образ).
рыми затруднениями, но было Через несколько недель наш
приятно сознавать, что после диск прибыл по почте. Как
установки системы не придётся только у нас появилось свобод-
ни переустанавливать её ещё ное время, мы попробовали
раз, ни даже перезапускать её. установить Ubuntu на старом
К сожалению, в прошлом году ноутбуке. Установка прошла

full circle magazine #34 содержание ^


МОЁ МНЕНИЕ Проблемы в 9.10

П
осле того как я прочи- я не смог этого заметить. Хотя, ется примерно то же самое. нет раздела /swap?! Теперь,
тал в ноябрьском номе- конечно, она делает это намно- Но в строке названия папки когда у меня раздел /swap
ре журнала письмо го быстрее, чем XP или Vista. Nautilus показывает «881A-9238». занимает 1,5 Гбайта, Ubuntu всё
Масежа Миллера В ls /media моя флешка PNY ещё не может переходить в
(Maciej Miller), я решил добавить называется 881A-9238, флешка ждущий или спящий режим.
свои пять копеек. Переход с Toshiba — BCC4-4D1A, а флешка Занимательно то, что в преды-
8.10 на 9.10 стал для меня одним SanDisk отображается как дущей версии Ubuntu, например,
Очевидно, программа, CRUZER. По-моему, не очень
большим разочарованием. После 7.??, всё это работало нормально.
которая прекрасно работала, информативно.
недель мучений я остался крайне Так и в чём прогресс?
была заменена на Grub2 только
недоволен очень многими для того, чтобы сделать какие-
вещами. Я сделал резервное Сложные вещи заменяют
то изменения. Она невообразимо относительно простые, повторяю,
копирование и удалил боль- сложна в настройке. Grub2 до
шинство скрытых папок из просто ради внесения изме-
сих пор думает, что мой раздел нений и «корректности». Я признаю, что у меня старая
домашней директории, после HP/Compaq для восстановления видеокарта nVidia Gforce2 MX400.
чего поставил Ubuntu 9.10, системы — это Windows 2K. А Но ведь я не играю в видеоигры,
«Космическая Кустарщина», на спутать HP/Compaq для Windows и если карточки хватает на
разделы диска, которые исполь- XP с разделом Linux — просто нужды программы Stellarium,
зовал уже много лет. непозволительно! мне больше ничего не нужно.
С Windows XP мой компьютер Вот только я не могу понять,
переходил в ждущий и спящий почему я вынужден использовать
режимы без проблем, но Ubuntu драйверы nVidia и включать кучу
Экран входа в систему, как 9.10 не может справиться с дурацких эффектов просто для
Как я могу знать, что
минимум, шероховат, а весь этими операциями. Я решил, того, чтобы заставить дисплей
409c796f-29c1-4336-8e7a-
порядок входа кажется ущерб- что проблема возникла из-за работать. Если я этого не сделаю,
1ed18db8706f — это мой hda5!
ным: сначала нужно щёлкнуть того, что я увеличил объём RAM «система» будет настаивать на
Создание абсолютно нового uuid
мышью для подтверждения с 500 Мбайт до 1 Гбайта, использовании драйвера VESA,
для раздела при изменении его
пользователя, затем ввести оставив объём раздела /swap и оконный менеджер откажется
размера кажется мне абсолютно
пароль с клавиатуры, снова 900 Мбайт. Наконец я набрался работать. Да, я отправил отчёт
бессмысленным. Это делает
использовать мышь, чтобы мужества, чтобы изменить об ошибке. Если так посмотреть
раздел недоступным для системы.
подтвердить вход. Причём если размер раздела при помощи — 8.10 была на голову выше 9.10!
вы используете мышь для Когда я подключаю одну из GParted Live. Это прекрасное
левши, система не сможет приложение — простое, быстрое 9.10 до сих пор счастливо
моих флешек, на рабочем столе
понять, что вы делаете, даже и «просто работает»! Вот тогда- рисует ярлыки файлов устройств
появляется иконка с подписью
если она знает, кто вы такой! то я и потерпел фиаско с uuid, о поверх других ярлыков на
«4GB Filesystem». В папке Places -
Если даже Ubuntu 9.10 и которых уже писал: я никак не рабочем столе.
> Computer в Nautilus отобража-
запускается быстрее, чем 8.10, мог понять, почему же у меня
full circle magazine #34 содержание ^
МОЁ МНЕНИЕ — ПРОБЛЕМЫ В 9.10
работы. Обходное решение —
удалить часть установочного
Это главная причина, по скрипта, ответственного за
которой я совершил «апгрейд» работу с таймаутами.
до 9.10. Я могу воспроизводить
музыку и слушать звуковые
дорожки из видеороликов,
однако, откровенно говоря,
боюсь переустанавливать Skype
или Wine/EchoLink, или даже Как можно выбрать Evolution
проверять, работает ли мой в качестве основного приложе-
микрофон. С меня хватит. ния для работы с почтой и
календарём — вне моего пони-
мания. Как и большинство
швейцарских ножей, оно хочет
удовлетворить потребности
9.10 почему-то осуществляет всех, но у него это не получается.
задержку длиной 7-10 секунд Я пытался действительно
перед тем, как какое-нибудь пытался использовать Evolution
приложение попытается от- несколько месяцев на 8.10.
крыть URL. Я использую Единственная полезная там
Thunderbird, Firefox и Seamonkey, вещь — возможность архиви- описанных мной, до выхода
я открою папку в F-Spot, я могу
все они подвержены этому ровать и восстанавливать 10.04. Я понимаю, что намного
только посмотреть фотографии
влиянию. Я провожу слишком папки с письмами. Я даже не интереснее делать всё время
и их миниатюры, но у меня нет
много времени в созерцании стану рассказывать, что что-то новое, чем исправлять
возможности их отредактиро-
надписи «Пожалуйста, ждите…» Evolution сделала с моим мелкие огрехи, но это должно
вать. G-thumb выглядит куда
на строке состояния. В 8.10 наладонником! быть сделано. Это работает —
более подходящим для этих
такой проблемы не было. отлично! Масеж, ты забыл
целей.
На моём ноутбуке EEEPC уста- Я никогда не мог понять сказать об openSuse как о
новлена eeebuntu, основанная программу F-spot. Я просто не приемлемой альтернативе.
на 9.04, там тоже нет ничего могу придумать, как бы её
подобного. Что-то я даже не применить. Если я хочу упоря-
могу сообразить, что писать в дочить или отредактировать
отчёте об ошибке… существующие фото, в моём
понимании, их нужно «импорти-
Эта ошибка вызывает «сопут- ровать». Но функция «импорт» Мне кажется, что компания
ствующие проблемы». Любое не даёт мне выбрать папку для Canonical перестала соблюдать
приложение, например wine, пы- этого, она только показывает некоторые базовые принципы
тающееся установить шрифты мой раздел Windows и смонти- маркетинга. Разработчикам
Microsoft Core, жалуются на рованые USB-устройства. А если Ubuntu стоит всерьёз заняться
таймаут после 10 и более минут решением проблем, частично
full circle magazine #34 содержание ^
Ubuntu User — это первый печатный журнал, созданный специально для пользователей
Ubuntu. Discovery Guide в каждом выпуске поможет новичкам легче приспособиться к
работе в Ubuntu. Если вы уже знакомы с Ubuntu, то технические статьи, пошаговые
руководства, обзоры и доклады сообществ помогут вам улучшить свои познания в Ubuntu.

в г о д в с ег о з а
а
4 вы п у с к . 9 0 / U S $ 39. 95
EUR 2 9
£ 24. 90 /

full circle magazine #34 содержание ^


ОБЗОР
Автор — Lucas Westermann Ноутбук ASUS UL30-A

Н
едавно я рискнул под Linux батареи будет хватать нальных клавиш. Всё в порядке,
купить ноутбук на по крайней мере на 9 часов, даже громкость регулируется.
платформе CULV, поскольку ранее замечал, что Я не тестировал кнопку вклю-
диагональ экрана она действительно работает чения и выключения Wi-Fi,
которого равна 13.3", что меньше. Как только установил поскольку никогда её не
побольше моего десятидюймо- себе Ubuntu 9.10 x86_64 с использую, равно как и специ-
вого нетбука Samsung N110. флешки, я обнаружил, что у альные кнопки Asus-приложений
После месяца его использования меня есть Bluetooth, что стало — сомневаюсь, что они работают.
я не могу сказать, что испробо- сюрпризом, поскольку в рекламе Ubuntu распознала мультиме-
вал всё, но с уверенностью было указано обратное, и что диа-кнопки play/pause, stop,
заявляю, что Ubuntu и Arch видео работает в родном back/forward, но нужен медиа-
Linux работают на нём отлично. разрешении 1366x768 даже с плеер, который бы их исполь-
Я подумал, что немало людей Compiz'ом. Дальше — лучше. зовал. У меня MPD, поэтому я
• Процессор Intel Core 2 Duo интересуется ноутбуками, поэ- Я беспрепятственно подключил- управляю воспроизведением
SU7300 ULV на 1,3ГГц ся к своей беспроводной сети собственными клавишами. Я
тому я пишу этот обзор. Если
• RAM: 4GB (DDR3 1066 2Гбайт*2) проверил, правильно ли
вам не терпится узнать итог, WPA2-TKIP и сеть работала без
• 320GB hdd (5400R, SATA)
можете сразу читать заключение. проблем на максимальной распозналась модель монитора
• 802.11b/g/n + Bluetooth
• Сеть: Atheros AR8132 – скорости в 100 Мбит/с. — до этого Ubuntu ни разу не
использует модуль ath9k 10/100 Моё первое впечатление — делала это правильно, — и был
• Intel X4500MHD ноутбук выглядит намного После того как я подключил- просто шокирован тем, что
• Монитор: 13,3” HD LED, красивее моего прежнего. За ся к интернету и обновился, я модель была указана верно, а
интегрированная веб-камера счёт серебристого металличес- решил установить Ubuntu- настройки по умолчанию были
(0,3Мпикс) кого покрытия он выглядит restricted-extras и проверить, выбраны как рекомендованные
• Немецкая клавиатура прочнее, чем мой старый как воспроизводится Flash. Он моделью. Это может показаться
• Батарея на 5600мАч воспроизвёлся гладко на раз- мелочью, но у меня это было
нетбук.
(8 элементов) впервые.
решении 360, 480 и 720 на
• Модель: UL30A-Q0229V
На нём была предустанов- YouTube. Правда, в режиме HD
• Размеры: 12,7" x 9,0" x 0,9-
1,1" (323 мм x 229 мм x 22,9- лена Windows 7 Home Premium были проблемы, но я знаю, что После этого я тестировал
27,9 мм) 64bit, которую я оставил для это несовершенство самого переход в ждущий режим и
• Вес: 3,7 фунтов (1,7 кг) двойной загрузки. Под Windows Flash. Сайты, написанные на выход из него, и — надо же! —
• Порты: 3 USB 2.0, 1 VGA, 1 батарея работает 10-11 часов Flash, тоже выглядели нормально. всё работает без проблем.
HDMI, 1 RJ45 10/100 Ethernet via при нормальном использовании Пока проигрывалось видео, я Правда, я не пробовал спящий
Atheros AR8132, 1 аналоговый (читай: редкий просмотр видео, решил поэкспериментировать с режим, поскольку не создал
аудиовыход, 1 аналоговый много набора текста, использо- яркостью и контрастностью раздел swap при установке
микрофонный вход экрана, выключив подсветку, и системы. Настало время
вания интернета, прослушивания
музыки и т.д.). Я ожидал, что проверил работу всех функцио- проверить работу ноутбука от
679,00€

full circle magazine #34 содержание ^


ОБЗОР — Ноутбук ASUS UL30-A
батареи и посмотреть, что решится. Однако я не считаю, кто-то из вас соберётся поку- буком. С его приобретением у
будет при этом сообщать что это такая уж серьёзная пать этот ноутбук и захочет меня становится всё меньше и
Gnome-Power-Manager. Я проблема, поскольку не могу узнать, работает ли микрофон, меньше причин включать мой
отключил машину от сети и дал представить, что кто-то будет напишите об этом мне, я сделаю PC, и это просто здорово! И
Gnome-Power-Manager время выжимать всё возможное из заметку об этом для всех заин- вообще, меня ничто не напря-
обновиться, затем проверил, камеры в 0.3 мегапикселя. тересованных в следующей гает в моих повседневных
что он выдаёт. С такой же Насколько я помню, Cheese своей статье. Однако, я не делах: HD-видео, в основном
низкой яркостью как и вначале, вообще предоставляет знаю, сколько людей реально шоу HD Revision3, воспроизво-
Gnome-Power-Manager сообщал возможность поворачивать используют встроенный микро- дится без задержек, и создаёт
мне, что заряда батареи хватит картинку с камеры, как это фон в первую очередь. гладкий интерфейс. Тем, кто
на 10 часов. Иногда эта цифра делает photobooth в Mac OS X, ищет тонкий и легковесный
становилось равной 10 часам и поэтому не должно быть И последнее. Хотя для меня ноутбук, я настоятельно
30 минутам. Это нельзя назвать проблем с фотографиями: их это первое: Express Gate (загруз- рекомендую этот!
точным, но даже если бы просто можно перевернуть! ка ОС за 8 секунд) работает и
ошибка была в час, всё равно после установки GRUB,
этого хватит на целый рабочий Единственное уст- поэтому вы всё так
день большинства людей, ройство, которое же сможете очень
поэтому я оставил всё как есть. я не тестировал, быстро и легко
Мой любимый Linux это Arch, и я или по крайней включать Skype,
более тщательно проверил мере, един- выходить в
работу от батареи в нём, ственное, интернет и
используя собственные которое я т.д.
настройки ACPI handler.sh. И знаю, что
здесь у меня получилось 10 не тести-
часов. Думаю, что в Ubuntu ровал — Всё отлич-
такое вполне возможно. микрофон. но рабо-
Согласно тает «из
Также я убедился в работо- показани- коробки»,
способности Bluetooth с помощью ям alsamixer кроме веб-
моего мобильного телефона и апплета камеры, ко-
Motorola RAZR V8. И только с Gnome sound, торая пока-
веб-камерой у меня возникла он распознался зывает изобра-
проблема: Cheese, Skype, aMSN как устройство жение перевёр-
и другие программы распозна- ввода, но я ничего с нутым, также я не Подпишись на
вали её и могли нормально ним не делал, посколь- тести-ровал микрофон. твиттер-ленту
использовать, но изображение ку никогда не использовал Согласно инфор-мации Gnome- http://twitter.com/fcm_ru
было перевёрнуто. Я уверен, микрофоны. Если он не Power-Manager, батареи из вось- и узнавай о выходе
что это проблема модульная, — работает «из коробки», есть ми ячеек хватает примерно на новых номеров
в Windows у меня такого не большие шансы всё равно 10-10.5 часов работы. В конце первым!
было — и рано или поздно она заставить его работать. Если концов, я очень доволен ноут-

full circle magazine #34 содержание ^


ИНТЕРВЬЮ Roderick Greening
часов я провёл, играясь с этой Когда и как ты присоединился к крайней мере, мне) факт о том,
средой, но я совершенно команде MOTU? как упростить сборку или
уверен, что это оказало важное тестирование пакетов. Без
влияние на мой карьерный рост Однажды, когда я использовал него, думаю, я не смог бы
и мою первую штатную Kubuntu, мой Knetworkmanager приобрести статус MOTU.
должность в компьютерной перестал работать. Чтобы
индустрии. Я использовал вернуть связь, мне нужно было Что помогло тебе научиться
двойную загрузку много лет, установить апплет менеджера создавать пакеты и понять, как
чтобы использовать Linux для сети. Я решил посмотреть, что я работают команды Ubuntu?
Возраст: 37
«настоящей» работы и Windows могу сделать для решения этой
Местонахождение:
для всего того, что я был проблемы. Я подключился к IRC, Я читал документацию, задавал
St. John’s, Canada
«вынужден» делать. присоединился к каналу правильные вопросы на IRC-
Ник в IRC:
#kubuntu-devel и начал задавать канале разработчиков, работал
rgreening
Как долго ты используешь вопросы. Я был поражён тому, с замечательными наставниками
Ubuntu? насколько там были любезные (смотри выше) и смотрел на
люди, особенно Джонатан работы других. Преимущество
Я начал использовать Kubuntu в Риделл, Скотт Киттерман и Ubuntu в том, что она имеет
Как долго ты используешь
2006, хотя я попробовал её Гаральд Ситтер. Эти три такое большое сообщество.
Linux, и какой был твой первый
немного раньше. Перед этим я разработчика дали мне очень Очень просто найти ответ на
дистрибутив?
использовал Gentoo как большой импульс и вернули к вопрос, обычно в течение
основную систему примерно до разработке. Это было во время нескольких минут просмотра
Всё началось, когда я учился в
середины 2007. Моей главной завершения цикла работы над форумов или общения с
университете, это был год 93.
причиной знакомства с Kubuntu Intrepid. Процитирую слова пользователями.
Я работал в одной из компью-
было то, что мой друг был Джонатана из анонса релиза
терных лабораторий, когда мой
совершенно неудовлетворён Kubuntu 8.10: «Потом однажды Что тебе больше всего нравится
знакомый сказал, что у него
работой Windows. Ему постоян- появился rgreening, который в работе с MOTU?
есть новая крутая ОС, и что я
но приходилось её переустанав- стал исправлять всё, что его
обязательно должен её попро-
ливать, чтобы избавиться от просили». С тех пор я собрал Определенно, люди. Там каждый
бовать. Он сказал, что система
вредоносных программ, вирусов множество релизов и обновле- человек не только действительно
UNIX-подобная. Поскольку мы
и прочего хлама. Я убедил его ний для KDE4, равно как и компетентен, но и охотно идёт
использовали серверы UNIX в
попробовать Kubuntu вместе со других пакетов KDE Universe. У навстречу. Никогда не бойтесь
большинстве наших компью-
мной. С тех пор я установил меня были хорошие наставники, задавать вопросы. Этим я
терных классов, она была бы
Kubuntu многим своим друзьям которые были настойчивы и добился того, что имею сейчас.
нам полезна. Дистрибутивом
и членам их семей, теперь все очень мне помогли, в частности,
был Slackware, и он распростра-
они используют Kubuntu как Скотт Киттерман был особенным. Что ты можешь посоветовать
нялся на 15-20 дискетах. Я не
основную ОС, и им нравится. Часто он подкидывал какой- людям, желающим помочь
смогу сказать вам, сколько
нибудь малоизвестный (по MOTU?
full circle magazine #34 содержание ^
ИНТЕРВЬЮ: RODERICK GREENING
1. Не беспокойтесь, что вы не Ну, прямо сейчас я работал над Свободное время? А, ты имеешь Сейчас на моём компьютере
имеете нужных навыков. Если сборкой KDE 4.2.1, также буду ввиду ЕСТЬ ЛИ у меня личная установлен Kubuntu с темой
вы умеете устанавливать и участвовать в сборке KDE 4.2.2. жизнь, свободная от Ubuntu? Glassified. Фотографию,
использовать Ubuntu, то вы Кроме этого, я реализовал Да, я фотограф-любитель. У помещённую в фон, сделал я
можете помогать с ответами на несколько улучшений в меня есть Canon Rebel XT и сам 2 года назад, когда ездил к
вопросы по пакетам, присылать KPackageKit, кое-что ещё на несколько линз. Я больше всего родителям. Там небольшой
отчёты об ошибках или подходе. Для Jaunty+1 (Karmic) увлекаюсь пейзажной съёмкой, залив, который называется
тестировать новые релизы. я сам разработал несколько но также пробую портретные Глубокая Бухта, и городок
2. Погрузитесь в это. Лучший пакетов, которые мне хотелось снимки. Ещё я люблю читать. У Масгрэйвтаун в Ньюфаундленде
способ учиться — присоединиться бы увидеть в Universe или Main. меня в личной библиотеке есть — родной город моей семьи.
к заинтересовавшей команде и Среди них два приложения, сотни книг, большинство —
помогать им в тестировании, связанные с безопасностью (ufw- научная фантастика и фэнтази.
написании документации и т.д. kde и clamav-kde), а также Я фанат «Star Trek», «Star Gate»
3. Найдите себе наставника, новая карточная игра, написан- и «Forgotten Realms». В моей
который будет подсказывать и ная на PyQt. Кроме того, я коллекции также есть солидное
организовывать работу. думал о работе в серверной количество технической
4. Получайте удовольствие. команде и хотел бы вместе с литературы о программирова-
ними разработать пакет, нии и сетях. Кроме этого, я
Участвуешь ли ты в работе который будет помогать новым провожу время со своей женой
каких-нибудь местных групп администраторам создавать и собакой Джуэл, также я
Linux/Ubuntu? сервер с TCP-приложениями, играю с друзьями в «Mario Kart»
фаерволом, журналированием, (предпочитаю baby Luigi и
В Ньюфаундленде нет LOCO. анализом логов и программами quacker) и «Колонизаторы»
Хотя некоторые из нас уже для обнаружения root-kit. В (строю пшеничную монополию).
всерьёз задумываются об настоящий момент все эти
основании такой группы. Здесь приложения существуют, но
есть сообщество Linux, которое каждое из них необходимо
сейчас активно работает, но устанавливать и настраивать
большинство в нём использует отдельно. Мне бы хотелось
дистрибутивы, основанные на объединить эти приложения в
RPM. Так или иначе, я уверен, мета-пакет и помочь пользова-
что буду работать с «the Bacon телям его нормально настроить.
Community» в ближайшем Пока у меня есть только идея,
будущем, как только появится но скоро появится Доменный
свободное время. сокет UNIX, и кто знает, что
может из этого получиться.
На чём бы ты хотел
сосредоточиться в Jaunty и Чем ты занимаешься в
Jaunty+1? свободное время?

full circle magazine #34 содержание ^


ПИСЬМА Письмо может быть сокращено из-за нехватки места.
letters@fullcirclemagazine.org

В Н
связи с планами а моём новом Gateway
исключить GIMP из SX2800 ($400) уста- Не могу не ответить на вопрос на Чтобы проверить струк-
Ubuntu встаёт вопрос: новлена Windows 7 странице 26 выпуска FCM №31, туру папок, можно сравнить её
чем его планируют Home Premium, и она потому что знаю ответ! Чтобы со структурой на каком-нибудь
записать DVD, который будет установочном диске Ubuntu.
заменить? Ему, несомненно, загружается значительно
распознан нужным образом, Проверьте, если ли различия. А
нужно найти замену, так как в быстрее, чем Ubuntu 9.10. И это нужно создать папку, в которой также убедитесь, что редакти-
Ubuntu должно быть какое- учитывая установленный будет находится всё содержимое руете нужную информацию в
нибудь приложение для работы бесплатный антивирус AVG, диска. Внутри этой папки создайте вышеназванных файлах. И,
с графикой. Я соглашусь, что файерволл Windows и т.д. каталог «pool», внутри которого конечно же, проверьте, что вся
GIMP — пожалуй, слишком Firefox 3.5.6 отображает мою должны быть все нужные нам информация в этих файлах
сложным приложением для домашнюю страницу за 2 .deb файлы. верна, чтобы избежать неприят-
непрофессионалов, поэтому, секунды, Thunderbird 3 ных сюрпризов. На данный
может быть, нам нужен свобод- открывается за три секунды— Находясь в этой папке, выполните момент, в папке «./» у нас есть:
ный клон Photoshop Elements? да, загрузка содержимого в терминале (команда apt-ftparchive
должна быть установлена): ./pool (внутри файлы .deb)
занимает какое-то время, но
./Packages
Также было бы неплохо, если далеко не такое большое, как apt-ftparchive packages ./Packages.gz
бы в Ubuntu появилась возмож- под Ubuntu 9.10. OO Writer и pool/ > Packages ./Packages.bz2
ность автоматически уменьшать Calc открываются менее, чем за ./.disk/info
размер фотографий при отправ- 4 секунды. И, кстати, хочу apt-ftparchive packages ./aptoncd.info
ке по почте, как это делается в заметить, что под Windows 7 pool/ | gzip > Packages.gz ./README.diskdefines
Windows. Сейчас, чтобы отправить система действительно умеет
фотографии, нужно каждую «засыпать» и выходить из apt-ftparchive packages Теперь настало время записать
открыть в GIMP, уменьшить спящего режима. pool/ | bzip2 > CD или DVD. Если записывать
размер и только после этого Packages.bz2 папку при помощи Brasero, могут
приложить к письму. Это до- Утверждение, что старые возникнуть ошибки. Поэтому
Очень важно, чтобы все три файла необходимо создать ISO файл, и
вольно хлопотно, если нужно программы не работают под создались полностью, так как в уже его записать на диск. После
отправить много фотографий. Windows 7, попросту неверно. них содержится вся база данных, записи нужно проверить, что он
FreeBASIC и FBIde, довольно необходимая для apt-get Synaptic. работает так же, как и установоч-
старые 32-битные приложения, Нам понадобится ещё три файла: ный или дополнительный диск
у меня работают. Одна и та же Ubuntu. Внутри он должен быть
версия Ancestral Quest 12 ./.disk/info организован, как и любой другой
замечательно работает под XP, ./aptoncd.info репозиторий Ubuntu!
Vista и 7. То же касается PAF5.2. ./README.diskdefines
Я без проблем запускаю CADKEY

full circle magazine #34 содержание ^


ПИСЬМА
99 под Windows 7, так же, как Я согласен с теми, кто утвер- читателей я призываю поступать
запускал её под Windows 98 ждает, что c Linux компьютер так же. Спасибо за великолеп-
Second Edition. Единственная Я хотел бы поделиться своим приносит больше удовольствия. ный журнал, не дождусь сле-
программа, которую я пробовал опытом использования Ubuntu. дующего выпуска.
запустить, и у меня не получи- Я установил её дома, но пос-
лось — это старый компилятор кольку кроме меня домашним
MS Professional Basic. компьютером пользовалась моя
семья, мне пришлось снова
Простите, что выражаю вернуться на Windows XP.
несогласие с большинством Двойная загрузка или виртуа- С выходом каждого нового
утверждений. Лично я считаю, лизация не кажутся мне нор- номера я отправляю ссылку на
что Ubuntu 9.10 — это катастрофа. мальным постоянным решением, его скачивание всем своим
Такая катастрофа, что я просто- так как считаю, что это неразум- друзьям через Facebook и Twitter
напросто перехожу на Windows 7 ное использование аппаратных при помощи удобных кнопок
после четырёх лет использования ресурсов. «Поделиться» на сайте. Других
исключительно Ubuntu. То малое
число Linux-приложений, кото- Несмотря на то, что у меня
рые мне нужны, работают заме- есть официальная лицензия
чательно через WUBI, просто на Windows, шарм XP начал рассе-
удивление замечательно! иваться на фоне развития его
конкурентов. Я снова установил
Karmic Koala, добавил несколько
удобных виджетов на рабочий
стол, Cairo Dock, и у меня полу-
чилось завлечь свою жену на
Linux.
Как-то мне позвонила дочь и
сказала, что ее жёсткий диск Приложений, входящих в
не работает. На нём лежали дистрибутив, мне было вполне
очень ценные детские фотогра- достаточно, я добавил только
фии, и не было никакой возмож- браузер Chrome и Picasa. Самой
ности сохранить их на CD. Я сложной задачей было заставить
загрузил Ubuntu 9.10 с диска, мой принтер нормально работать.
смонтировал её жесткий диск с Другой сложностью была нас-
Windows и спокойно переписал тройка моего USB-устройства
её фотографии на CD. Ubuntu для захвата видео.
спасла нас. Она и её муж были
в восторге. Спасибо Ubuntu.

full circle magazine #34 содержание ^


UBUNTU WOMEN Интервью с Мелиссой Дрэпер
Знакомства с HTML в течение не подумала о приобретении ПС: Ты много работаешь с
одного выходного было доста- программного обеспечения ASP. Ubuntu Women, в том числе и
точно, чтобы я предпочла Свободное ПО доступно и так, как лидер этого проекта. Каким
деревьям компьютеры. к тому же сайт php.net удиви- бы ты хотела видеть этот
тельно хорош. проект?
ПС: Как ты попала в Ubuntu и
сферу свободного ПО в целом? ПС: Почему Ubuntu? МД: Я хочу, чтобы возникло
больше инициатив, которые бы
МД: Когда я училась на веб- МД: Когда я решила, что хотела изменили текущее отношение к
дизайнера, большое влияние на бы использовать Linux, я опро- замечаниям. Комментировать
меня имел один учитель, фанатик сила знакомых. Один мой друг ненадлежащее поведение
BSD, который достаточно использовал Ubuntu версии очень важно для достижения
свободно интерпретировал Warty, поэтому я установила цели, и я бы хотела, чтобы
темы учебных программ, таких Hoary на своём старом компью- негативное отношение к ним
как «Установка операционной тере. Пробовала и другие прекратилось. Мне хочется,
системы». Он учил студентов, дистрибутивы, но не смотря на чтобы участники команды
как устанавливать Linux и BSD, использование Fedora или больше занимались обогаще-
а также Windows. Забавно, что CentOS для работы, с тех пор я нием страниц на вики, подго-
он ещё мою маму учил этому! с Ubuntu. товкой материалов для
Так началось моё увлечение конференций и вкладывали в
Linux. Некоторое время я ПС: В сообществе Ubuntu ты команду то, что хотят получить
поигралась с Live дистрибути- уже несколько лет. В каких от неё сами. Вместо того, чтобы
Пенелопа Стове (Penelope Stowe): вами, затем установила Ubuntu проектах ты участвовала в крушить всё, на что другие
Пожалуйста, расскажи нам на своём старом компьютере и прошлом и какими занимаешься потратили время и силы.
немного о себе. вскоре обнаружила, что XP мне сейчас?
больше не нужна. ПС: Ты занимаешься чем-либо
МД: Некоторое время я была вне Ubuntu, связанным с
: Я австралийка. Другой преподаватель должен активным членом маркетин- женщинами в сфере ИТ или
Прожила всю жизнь в Новом был научить нас использовать говой команды, каждую неделю открытого ПО?
Южном Уэльсе, хотя родилась в ASP.net как основной инструмент писала для UNW и т.д. Также я
штате Виктория. для веб-разработки, но не смог. много сделала для координации, МД: Я участвую в LinuxChix, а
По существу, весь класс изучил чтобы заложить основы для также часто участвую в
Давным-давно я хотела быть PHP вместо ASP.net, и, следуя экосистемы LoCo, которую мы предварительной подготовке
экологом, но работая над одним примеру учителя ОС, мы доказали, имеем теперь. Сейчас я управ- встреч участников локальной
из проектов, связанных с окру- что это вполне уместно в ляю IRC и Советом Участников группы пользователей
жающей средой, столкнулась с рамках курса «Динамические стран Азии и Океании. GNU/Linux (LUG). Являюсь
задачей создания сайта. веб-сайты». После обучения я и секретарём LUG. Также я
full circle magazine #34 содержание ^
UBUNTU WOMEN
участвовала в работе Linux ПС: У тебя есть какие-то другие
Australia Council (группы, которая интересы или увлечения, о
отвечает за организацию которых ты хочешь рассказать
linux.conf.au каждый год, а также нам?
выдаёт гранты FOSS-группам и т.д.)
в течение двух лет, но решила не МД: В настоящее время я
баллотироваться в третий раз увлечена чернилами и хорошей
подряд, так как чувствую, что бумагой. Думаю, что мы должны
необходимо сде-лать перерыв. попытаться сохранить навыки
Кроме того, у меня свой рознич- написания писем от руки,
ный и интернет магазины в живым почерком.
Сиднее (Австралия), которые
называются «Всё для Linux».

ПС: Что ты планируешь дальше


вместе с Ubuntu и открытым
ПО? Каковы твои цели, как вновь с нами и стал лучше,
личные, так и для Ubuntu и чем когда-либо!
свободного ПО в целом?
Темы этого выпуска включают в себя:
МД: В этой сфере сейчас прово- • кадровые перестановки в Canonical
дится странная политика, и в • музыкальный магазин Canonical в интернете
последнее время меня отодви- • Google Buzz
нули от некоторых вещей в • старые добрые игры
Ubuntu. Это сложный вопрос, и и Acer Aspire Revo.
я чувствую себя немного расте-
рянно. Я всё ещё пытаюсь
понять, каково моё место во
всём этом. На данном этапе, я
намерена продолжить работу с
Ubuntu Women, так как это
важная часть сообщества, Подкаст и заметки находятся по адресу:
независимо от того, что думают http://url.fullcirclemagazine.org/88a985
об этом другие.

В идеале я хотела бы, чтобы


сообщества свободного ПО
стали эталоном в организации
всех интернет-сообществ в целом.

full circle magazine #34 содержание ^


Игры UBUNTU
Игра начинается с обучения
работы на «новой ОС для взлома»
— со всеми инструментами,
— необходимыми для взлома • Стать хакером!
в 2010 г. в Wine произошли компьютеров, доступа к счету в • Уникальная игра
большие изменения, включая банке и к магазину. В начале
поддержку шейдерной карьеры вам дадут несколько
модели 4, улучшения Direct3D простых заданий — с помощью • Непродуманный интерфейс
и массу исправлений ошибок. взломщика паролей надо будет • Повторяющаяся
проникнуть в относительно
простые системы, украсть
данные и отправить их клиен- и то, как вы его выполняете, в
там по почте. Довольно скоро принципе, ничем не отличаются

К
вам дадут более сложные в разных миссиях.
омпания «Introversion
Software» всегда очень задания: изменить данные, Атмосфера игры просто
хорошо поддерживала взломать банк, посадить
соперника в тюрьму и обрушить великолепна: тёмный экран
Linux. Около года даёт ощущение, что хакер,
назад я писал обзор на одну из фондовую биржу. Вам будут
нужны все более мощный затаившись, работает в
её игр — Defcon. И вот ещё темноте. Музыка в игре взята из
одна игра от этой компании — компьютер и более совершен-
ная ОС. Однако эти задания не 1990-х годов — в то время,
Uplink. когда проходит игра. У игры
так просты, как взломать пароль
и украсть данные: вам надо легкий в использовании
Uplink не похожа ни на одну интерфейс, хотя подключение к
из игр, в которые вы играли. будет прикрывать себя. Каждое
ваше подключение отслежива- различным компьютерам,
В этой игре вы становитесь перемещение и удаление
хакером! Вам даются задания ется, и вам надо будет подклю-
чаться к множеству компьютеров, файлов несколько запутаны.
взломать компьютерные
системы компаний, чтобы чтобы запутать следящие
устройства. В Uplink очень Uplink — уникальная игра.
украсть или изменить данные. Она понравится всем, но некото-
На деньги, которые вы получа- хорошо реализованы уровни
сложности: игра постоянно рым эта игра покажется слиш-
ете за выполнение заданий, вы ком повторяющейся и больше , (aka chewit в играх),
сможете покупать инструменты продвигает вас вперед. Но похожей на будничную работу в заядлый PC-геймер, но иногда
и программы, которые помогут после нескольких часов игры и
завершения множества миссий офисе, чем на игру. Мне играет и в консольные игры. Он
выполнять еще более сложные понравилось, что в игре можно также состоит в команде
задания. Ваша цель — стать она приедается. Все миссии
с комфортом воплотить мечту разработчиков проекта Gfire
хакером высшего класса («l33t»). очень похожи: то, как вы компьютерщика — стать хакером.
(плагин Xfire для Pidgin)
начинаете выполнять задание,
full circle magazine #34 содержание ^
ВОПРОСЫ И ОТВЕТЫ questions@fullcirclemagazine.org
Пожалуйста, опишите вашу проблему как можно более детально.

В В
Каждый раз, когда я компьютера в доме, например, Я хочу управлять моим запустить обновление через
вхожу в Linux, автома- медиа-компьютера, с Windows 7 ноутбуком Lenovo R61i интернет, или загрузить
тически создаются два Home Premium 64bit. Пожалуйста, c Ubuntu Karmic Koala alternate install CD, на котором
новых файла, которые помогите мне или подскажите, во время презентаций эти инструменты есть. Вы
ничего не содержат (New где можно найти такую в OpenOffice Impress или найдёте всё необходимое на
Document.odt и New Spreadsheet.ots). информацию. мультимедиа плеерами типа этой странице:

О
Если я удалю эти файлы и войду Rhythmbox и VLC по Bluetooth с http://www.ubuntu.com/getubuntu/
в систему снова, эти файлы Для ограничения мобильного телефона Motorola upgrading
опять сами появятся. Почему доступа вам стоит Q9H или по wifi с КПК Palm
это случается? сделать ставку на Tungsten C. Какие приложения
программу IPtables,

О
надо для этого установить на
Вероятно, у вас что-то которая должна помочь вам компьютер, телефон и КПК?
установить ограничения, осно-

О
лишнее в списке авто-
запуска. Проверьте, ванные на IP-адресах клиентов. То, что вы ищете —
нет ли чего-либо У неё довольно крутая кривая проект anyremote
необычного в Система > обучения, но благодаря bodhizazen (ganyremote и
Параметры > Запускаемые существует достаточно деталь- kanyremote в центре
приложения. ный учебник, в котором есть приложений Ubuntu). Просто
все, что вам необходимо:

В
установите его в Ubuntu, затем
Я довольно недолго http://bodhizazen.net/Tutorials/ipta установите java-пульт на
использую Linux и bles/. Для блокирования просма- телефон, и вы сможете
серверы вообще и триваемого контента я бы управлять компьютером по
рассчитываю на вашу посоветовал вам OpenDNS Bluetooth.
(http://www.opendns.com/), который

В
помощь. Я хочу установить
сервер с двумя сетевыми позволит вам заблокировать и У меня проблема: я
платами после DSL-модема, а отдельные категории (фишинг, получил Ubuntu 9.10
перед ним разместить беспро- порнографию, убивалки времени), Install CD и хочу
водной коммутатор, к которому и отдельные сайты. А что каса- обновить Wubi Ubuntu
подключены всё остальные мои ется доступа с компьютеров с 9.04 desktop. Как мне это
компьютеры. Я бы хотел иметь Windows, то обычно для этого сделать?
используют Samba. Вам может

О
возможность отключать или
ограничивать доступ для детей помочь страница К сожалению, на
и как можно лучше блокировать https://help.ubuntu.com/communit Ubunu Live CD нет
контент, который они смотрят, y/SettingUpSamba. необходимых для
при этом не теряя доступ к обновления инстру-
музыке и изображениям с любого ментов, поэтому вам нужно или

full circle magazine #34 содержание ^


МОЙ РАБОЧИЙ СТОЛ misc@fullcirclemagazine.org

Привет, вот мой рабочий стол в стиле 70-х (обои нашёл на


Я использую тему Moomex Metacity (с сайта gnome-look.org), иконки
devianART) с conky, Compiz Fusion, Emerald (шрифты «Hippy
Black-White 2 Gloss и обои _jack (тоже с сайта gnome-look.org). Также
Participants»), Cairo-dock и альбомом 3D-графики. Всё это
установлены Avant Window Navigator и Compiz.
установлено на Ubuntu 9.04.
Всё это работает на Ubuntu 9.04, которая установлена на 6-летнем
Конфигурация компьютера:
Dell 4600 с Pentium 4 (одноядерный!), Radeon 7000 и 2,5Гбайт ОЗУ.
• Процессор: P4 2.93 ГГц
Спасибо сообществу за такой замечательный (и самый лучший в
мире) дистрибутив!
• Видеокарта: Ati X300

• 1 Гбайт ОЗУ и 200 Гбайт жёсткий диск

Сейчас всё работает отлично, даже без проприетарных


драйверов на мою видеокарту.

full circle magazine #34 содержание ^


МОЙ РАБОЧИЙ СТОЛ

У меня Dell Inspiron E1405 с двухъядерным 1,6 ГГц процессором Я начал работать с Linux на Ubuntu 8.04. Я перепробовал другие
и 2 Гбайт ОЗУ. На нём установлена Ubuntu 9.10. Я использую
дистрибутивы Linux, но Ubuntu — мой самый любимый. На моём
Compiz, скринлеты (часы, рамка для фотографий, пейджер,
скринлет для pidgin — все они пристыкованы к боковой ноутбуке Gateway M-6309 (двухъядерный процессор Intel Pentium
панели) и Avant Window Navigator (AWN) как док. Я использую T2330 1,6 ГГц, 2Гбайт памяти, 320 Гбайт жёсткий диск), на
собственную тему на основе Clearlooks с набором иконок Mist котором установлена Ubuntu 8.10. Обои называются Ubuntu 2.0 —
и границами окна Gilouche. Окна терминалов прозрачные. с сайта http://www.gnome-look.org/. Я попробовал док Avant
Приложения на доке: браузер Firefox, почтовый клиент Window Manager, но я предпочитаю запускать программы из
Thunderbird, блог-клиент Drivel, текстовый редактор Leafpad, меню приложений на верхней панели. У меня также есть
программа для обмена сообщениями Pidgin, музыкальный настольный компьютер с Ubuntu 9.04. Мне нравятся все
проигрыватель Rythmbox, GIMP, торрент-клиент Transmission и
замечательные приложения в Ubuntu. Я никогда в жизни не буду
корзина с краю.
платить за программы.

full circle magazine #34 содержание ^


ТОП 5 Словари и справочники
wikipedia2text
http://indywiki.sourceforge.net/ http://url.fullcirclemagazine.org/c9e5e4

Если в Wikipedia есть все знания, которые вам нужны,


присмотритесь к Indywiki. Эта оболочка для графического
просмотра Wikipedia, написанная на Qt. Откройте статью, и вы wikipedia2text — полная противоположность Indywiki. Эта
увидите всплывающее окно с изображениями из этой и программа тоже предназначена для поиска в Wikipedia, однако
связанных статей. Также справа отобразятся ссылки из у неё самый аскетичный интерфейс: командная строка. Всё же
открытой статьи, а слева — аккуратное содержание. Я нашёл wikipedia2text не обделена возможностями. Она может пока-
только одну ошибку: Indywiki не приспособлена к моему зывать случайные статьи и краткие резюме, раскрашивать
монитору с большим разрешением, она, наверное, была текст, и открывать страницы во внешних браузерах. Также
написана для маленьких мониторов. Если не обращать wikipedia2text может работать как плагин: введите параметры в
внимание на этот дефект, Indywiki — это отличная альтерна- основной программе, и wikipedia2text отобразит нужную
тива браузерам, нацеленным на работу с текстом. страницу.

Чтобы установить Indywiki, выберите пакет « »в Чтобы установить wikipedia2text, выберите пакет
репозитории «universe». « » в репозитории «universe».

full circle magazine #34 содержание ^


ТОП 5 — СЛОВАРИ И СПРАВОЧНИКИ

http://wikipediafs.sourceforge.net/ http://stardict.sourceforge.net/

wikipediafs — одна из самых классных программ. Она написана


на Python и позволяет работать со статьями в Wikipedia как с
текстовыми файлами посредством гибких точек монтирования.
Таким образом, вы можете редактировать статьи в Gedit или Если вы обожаете листать словари, присмотритесь к StarDict.
OpenOffice.org, копировать их в Nautilus и просто просматривать Это программа для просмотра словарей с интерфейсом на GTK.
в cat. Эта программа позволяет просматривать и редакти- С её помощью можно просматривать множество словарей,
ровать статьи с большими возможностями, чем в браузере, и включая словари английского языка, например, Oxford и
обладает огромным потенциалом для разработчиков. Вкратце, Merriam-Webster, юридические толковые словари, например,
wikipediafs похожа на wikipedia2text на суперстероидах. Bouvier, и словари Библии, например, Easton. Программа
обладает богатым функционалом, включая дополнительные
Чтобы установить wikipediafs, выберите пакет « »в возможности поиска (нечеткий, по шаблону и т.п.), перевод
репозитории «universe». Не забудьте прочитать справку слов и синтез речи.
(man mount.wikipediafs), чтобы понять, как её установить.
Чтобы установить StarDict, выберите пакет « »в
репозитории «universe». С основного сайта можно скачать
много словарей.

full circle magazine #34 содержание ^


ТОП 5 — СЛОВАРИ И СПРАВОЧНИКИ

https://sourceforge.net/projects/dict/

создаётся членами сообщества


Ubuntu Linux из Великобритании.

Мы стремимся предоставить актуальную тематическую


информацию о пользователях и для пользователей
Ubuntu Linux со всего мира. Мы обсуждаем все стороны
Ubuntu Linux и свободного программного обеспечения,
стараемся охватить всю аудиторию: от начинающих
пользователей до закоренелых программистов; и все
темы: от командной строки до самых последних
графических оболочек.

Подкаст создается сообществом Ubuntu UK,


соответствует Кодексу Поведения Ubuntu и подходит
всем возрастам.
Иногда простота побеждает всё. Простота — козырь dict,
консольной программы для просмотра словарей. Она полностью http://podcast.ubuntu-uk.org/
совместима со StarDict (вообще-то, StarDict основан на dict), но
у неё нет графического интерфейса. У вас не будет прибамбасов,
зато вы получите чистый профессиональный и быстрый
инструмент с поддержкой огромного количества сервисов.
Иногда нет ничего лучше старой школы.

Чтобы установить dict, выберите пакет « » в репозитории


«universe». Также можно выполнить команду apt-cache search
dict, чтобы найти словари, доступные для установки.

full circle magazine #34 содержание ^


КАК ПОМОЧЬ - Ronnie Tucker
ronnie@fullcirclemagazine.org
- Rob Kerfia
admin@fullcirclemagazine.org
Мы постоянно ищем новые статьи для публикации в журнале Full
-
Circle. Указания по написанию статей и переводу находятся на wiki-
Robert Clipsham
странице: http://wiki.ubuntu.com/UbuntuMagazine
mrmonday@fullcirclemagazine.org
Пожалуйста, отправляйте статьи на: articles@fullcirclemagazine.org
- Robin Catling
podcast@fullcirclemagazine.org

Если вы хотите прислать , пишите на: news@fullcirclemagazine.org


Jim Barlow
David Haas
Свои об опыте в Linux присылайте на: letters@fullcirclemagazine.org
Gord Campbell
Brian Jenkins
ПО и оборудования присылайте на: reviews@fullcirclemagazine.org
Mike Kennedy
для рубрики Вопрос-Ответ отправляйте на: questions@fullcirclemagazine.org
И мы говорим спасибо Canonical,
маркетинговой команде Ubuntu
Моего Стола следует присылать на: misc@fullcirclemagazine.org
и множеству команд переводчиков
по всему свету.
... или вы можите посетить наш : www.fullcirclemagazine.org

Журнал — не журнал, если в нём нет статей, и Full Circle не


исключение. Нам нужны ваши Мнения, Рабочие столы и Истории. Ещё
нам нужны Обзоры (игры, приложения и железо), статьи How-To (на
любую тему о K/X/Ubuntu), любые вопросы и предложения, которые
могут возникнуть. Присылайте их на: articles@fullcirclemagazine.org

full circle magazine #34 содержание ^


РУССКАЯ КОМАНДА FULL CIRCLE
* Дубков Илья (Нэс)
* Никульшин Виктор (frio)
* Андрей Данин (GCon)
* Петр Падалкин (papmail)
Страница журнала на ubuntu.ru: http://www.ubuntu.ru/fullcircle * straton13
* Monory - Чудинов Никита
* Антон Волошин (Zombieff)
Страница команды на launchpad: https://launchpad.net/~fullcircle-ru * Курёнышев Вячеслав
* Леонид Селиванов
Страница перевода на wiki: * Михаил Дымсков
https://wiki.ubuntu.com/UbuntuMagazine/TranslateFullCircle/Russian * Григорий Топорков
* Яков Попов — Jacob
Конференция на jabber.ru: fullcircle-ru@conference.jabber.ru * Валентина Мухамеджанова (umi)
* Дарья Майорова
* Тимур Тимирханов (TLemur)
Адрес электронной почты: fullcircle.ru@gmail.com * Васиок Тлубатёв
* Антипов Алексей
Ты можешь внести свой вклад в развитие журнала, сделав * Олег Кулик (Eleidan)
пожертвование на счёт

Хотите рассказать о своём проекте? Знаете новость, которая поразит русско-


язычное сообщество Ubuntu и Linux? Может быть, вы знаете человека,
который активно участвует в развитии Linux и opensource? Напишите нам! Мы
будем очень рады статьям и идеям для нашей региональной рубрики.

Пишите на адрес электронной почты: fullcircle.ru@gmail.com

full circle magazine #34 содержание ^