close

Вход

Забыли?

вход по аккаунту

?

Linux Format №8 2016

код для вставкиСкачать
DVD ДАРОМ!
СРАЗУ ТРИ UBUNTU
страницы
учебников
и статей!
64
» Быстрые драйверы для графики
» Отчеты о системе из терминала
» Улучшаем 3D-принтер
Академия кодинга: Затеваем
кодирование с fuzzing и Rust
Главное в мире Linux
Август 2016
№ 8 (212)
Раскурочить и собрать!
100 открытых приложений для Linux-ПК,
без которых вам не жить
» Улучшайте свои документы
» Отслеживайте свои системы
» Редактируйте видео и аудио
» Защитите свой ПК
...и много чего еще!
ЕС Т Ь
НА Я
ЭЛЕКТРОИНЯ
ВЕРСШЕГО
Д ЛЯ ВА ТА!
ПЛАНШЕ
Все на ярмарку!
В этом году мы постарались
привлечь побольше
изобретений, связанных с едой
Ярмарка умельцев в Великобритании с. 44
Docker
на Pi!
Построим домашний
кластер с Docker, науки ради
Безопасность
Сравнение
Защита VoIP
Организуйтесь!
» Как построить станцию SIPтелефонии и оградить ее от бедствий
» Станьте организованнее — и вы
уже не забудете про свои задачи
ПОДПИСНЫЕ ИНДЕКСЫ В КАТАЛОГАХ
Агентство «Роспечать» — 36343,
«Почта России» — 11932, «Пресса России» — 90959
iteleradio.ru
Приветствие
Что мы делаем
» Мы поддерживаем открытое сообщество, предоставляя
источник информации и площадку для обмена мнениями.
» Мы помогаем всем читателям получить от Linux максимум
пользы, публикуя статьи в разделе «Учебники»: здесь каждый
найдет что-то по своему вкусу.
» Мы выпускаем весь код, появляющийся на страницах раздела
«Учебники», по лицензии GNU GPLv3.
» Мы стремимся предоставлять точные, актуальные и непредвзятые сведения обо всем, что касается Linux и свободного ПО.
Кто мы
На сей раз мы спросили наших экспертов: Какой ваш любимый
новый инструмент FLOSS?
Джонни Бидвелл
Я не очень­то люблю новые вещи — по моему опыту,
доверять им нельзя, так что последние десять лет
я ем исключительно суп из брокколи. Тем не менее,
продолжаю восхищаться развитием рабочего стола
Plasma. Просто добавьте расширение KSuperkey, оно
облегчает доступ к меню /Dash.
Я недавно начал использовать Python 3. Ну да,
ему всего лишь лет семь, но я счел его достаточно
стабильным для моих потребностей; хотя другие,
ка жется, ждут, чтобы он созрел, преж де чем пере­
ходить на него. Дивитесь, люди, до какой степени
я передовой!
Ник Пирс
Много лет я искал достойный инструмент ката­
логизации медиа­файлов — и, наконец, нашел
Data Crow (www.datacrow.net). Он основан на Java,
т. е. кросс­платформенный, и имеет все инструменты,
необходимые для ввода, управления и показа своей
коллекции. Правда, не может излечить мою тягу
к дешевым CD и DVD.
Лес Паундер
Для меня htop (http://hisham.hm/htop) — это пер­
вое, что я ставлю на любой Linux­машине. htop
позволяет мне отслеживать и контролировать свою
систему через невероятно интуитивный интерфейс.
Ну и выглядит очень «хакерски», когда вы по 4G­под­
ключению управляете уда ленным сервером прямо
на ходу поезда.
Мой новый фаворит — инструмент поиска Catfish.
После долгих лет интуитивного поиска файлов
через функции командной строки find и locate я,
наконец, перешел на эту графическую утилиту. Она
не только универсальна, но и меньше, чем терминал,
нагру жает мои уста лые глаза при прокручивании
ее результатов.
Валентин Синицын
Midnight Commander. Да, конечно, он у меня еще
в Red Hat 5 был, но потом как­то затормозил
и застыл в девяностых. А где­то в районе релиза
Python 3 снова ожил, и периодически радует
какой­нибудь штуковиной.
Чет верть ве ка на зад бы ли на пи са ны два письма, ко торые, по мо­
ему мнению, изменили не только индустрию ИТ, но и весь мир. 6 ав­
густа Тим Бернерс­Ли опубликовал краткое описание своего проек та
World Wide Web в группе новостей alt.hypertext, а 25­го Линус Торвальдс объявил
в comp.os.minix о первых шагах в создании новой ОС.
Представим себе альтернативную версию ис тории того августа, отличаю­
щуюся всего двумя дета лями. HTTP, URL и саму идею WWW придума ли бы со­
трудники компании EMC2, а их коллеги из IBM портирова ли бы AIX не на PS/2,
а на недорогие клоны PC AT. Понятно, что оба проек та оста лись бы проприетар­
ными, и через 25 лет никто бы и не вспомнил об еще одной системе управления
доку ментами и еще одном проприетарном UNIX. Кто сегодня вспоминает DEC
OSF/1, Microsoft Xenix или SCO UnixWare? Только седобородые ветераны индуст­
рии, вроде меня и Алексея Федорчука.
А вот альтернативный мир стал бы совсем иным. Свободного ПО было бы
значительно меньше. Интернет так и не стал бы удобным средством публика­
ции информации, из­за этого не слу чилось бы бу ма доткомов, модернизации
магист ральных кана лов связи и сетей 4G, не возник ли бы компании Amazon,
Google и Facebook... Многого, столь привычного для нас, в том 2016­м все еще
не было бы...
»
Нейл Ботвик
Маянк Шарма
В августе 91‑го
Кирилл Степанов
Главный редактор
» [email protected]
Как с нами связаться
Письма для публикации: [email protected]
Подписка и предыдущие номера: [email protected]
Техническая поддержка: [email protected]
Общие вопросы: [email protected]
Проблемы с дисками: [email protected]
Вопросы распространения: [email protected]
Сайт: www.linuxformat.ru, группа «ВКонтакте»: vk.com/linuxform
> Адрес редакции: Россия, Санкт-Петербург, пр. Медиков, 5, корп. 7
> Телефон редакции: (812) 309-0686. Дополнительная информация на с. 112
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
1
Содержание
«Жить хорошо — лучший вид мести.» Джордж Херберт
Обзоры
KaOS 04.2016 . . . . . . . . . . . . . . . . . . . . 12
Дистрибутив мечты? До Debian, правда,
не дотягивает, но зато индивидуально
настроен, придерживается Qt и KDE 5 —
неплохой выбор про запас.
Раскурочь и собери!
100 лучших открытых инструментов
в подкрепление вашему Linux
и вашим умениям. Начало на с. 33
Kubuntu 16.04 LTS . . . . . . . . . . . . . . 13
И снова KDE и его рабочий стол Plasma 5.
Сумеет ли этот старейший из отпрысков
Ubuntu приглянуться вам и отвоевать себе
место на вашем компьютере?
OpenIndiana . . . . . . . . . . . . . . . . . . . . . . 14
Продолжаем флирт с операционными систе­
мами не­Linux, основанными на ядре. Однако
снедает подозрение: а не для проклятых ли
это хипстеров?
Сравнение: Менеджеры информации с. 26
> Запускаем подозрительную POSIX-ОС,
когда-то бывшую Solaris.
Tomb Raider . . . . . . . . . . . . . . . . . . . . . . 15
AAA­перезагрузка знаменитой приключен­
ческой игры прошла в Linux! Получилось
замечательно.
Bq Aquarus M10 . . . . . . . . . . . . . . . . . 16
Вот она, конвергенция — планшет Bq
на Ubuntu! Но является ли он тем самым,
давно вожделенным нами устройством?
Попробуем разобраться.
Интервью
> Не забудьте приложить клавиатуру,
мышь, монитор и стол...
Участвует группа
любителей, которые
хотят отправить человека в космос!
Репортаж о Ярмарке умельцев c. 44
4
|
LXF212 Август 2016
www.linuxformat.ru/subscribe
На вашем бесплатном DVD
Kubuntu
16.04
Попробуйте Ubuntu
с потрясающей новой
внешностью!
64-битный
» Лучшее из Ubuntu 16.04
» Новый рабочий стол KDE Plasma 5
» Приложения KDE с красивым дизайном
» Долгосрочная поддержка на 5 лет
Lubuntu
С рабочим столом LXDE,
идеален для старых машин
16.04
32‑битный
Xubuntu
16.04
Kubuntu 16.04 LTS
Lubuntu 16.04 LTS
Xubuntu 16.04 LTS
Побалуйте себя и любимых
подпиской на LXF!
о
Доступнre!
o
в AppSt
64-битный
32-битный
32-битный
» Каждый месяц — только лучшие дистрибутивы
Легковесная сборка
для ноутбуков и ПК 32‑битный
LIVE‑ДИСК: ГОТОВ К РАБОТЕ
ВСЕ НЕОБХОДИМОЕ ДЛЯ СТАРТА В LINUX
ПЛЮС: HotPicks, Сравнение, и не только! с. 106
Пользователям Raspberry Pi
www.linuxformat.ru/subscribe
Ищите в номере
Новости Pi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Эмулятор устройств Tizen . . . . . . . . . 20
Raspbian получил обновление Bluetooth для Pi 3,
а Picademy вторгается в США.
Изучаем инструментарий для тестирования
и отладки приложений перед их установкой
на реальное устройство с ОС Tizen.
WD PiDrive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Избегаем SIP-обмана . . . . . . . . . . . . . . 48
PiDrive имеет символичную емкость в 314 ГБ. Можно ли
считать, что этого достаточно для успеха с Raspberry Pi?
Разрастается новый вариант VoIP­надувательства —
защитите себя и свой бизнес от телефонных
жуликов.
Explorer HAT Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Прилаживаем плату­приставку поверх Raspberry Pi,
чтобы поднимала тревогу в случае посягательства на банан.
Docker — это просто . . . . . . . . . . . . . . . . . . . . . . . . 92
Освойтесь с технологией виртуализации, которая у всех
на языке, на примере кластера из Pi.
Академия кодинга
Учебники
Основы Linux
Rust: Ввод/вывод файлов . . . . . . . . . . . . . . . . . . . 82
Ключевые утилиты . . . . . . . . . . . . 56
Продолжаем знакомство с пуленепробиваемым языком
программирования — разбираемся с жизненно важными
операциями ввода/вывода.
Займемся дисковым пространством, вре́мен­
ными файлами и виртуальным терминалом,
а также чуть­чуть безопасностью.
Что такое Fuzzing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Основы терминала
Системная информация . . . . . . . 60
Показываем, как принудительное кормление вашей про­
граммы всяческим мусором приводит к ее оздоровлению.
В чем и заключается современная технология тестирования.
Добудем полезную информацию о своем
компьютере и его оборудовании прямо
из терминала.
Ядро
Драйверы графики . . . . . . . . . . . . . 62
Постоянные рубрики
Какой продукт позволит нам бешено ускорить
новейшие игры для Linux?
3D-печать
Новости . . . . . . . . . . . . . . . . . . . . 6
Интервью LXF . . . . . . . . . . . 44
HotPicks . . . . . . . . . . . . . . . . . 100
Распечатки хорошеют . . . . . . . . . 66
ARM расширяет охват, Toyota вступает
в OIN, Dallas Lock получил сертифи­
кат, Seagate выдала BarraCuda, сисад­
минам вредит високосная секунда,
Intel создала новый чип и замахива­
ется на SSD, а AMD ускоряет графиче­
ские процессоры.
Какие люди! Митч Олтман, Иэн
Симмонс, Джон Стокилл — о распро­
странении движения самоделкиных
и Ярмарке умельцев.
Отведайте горяченького! Лучшие
в мире новинки свободного ПО:
Alexandra, DeSmuME, Mutt, Pandoc,
PCManFM-Qt, Powertop, Qupzilla,
Simutrans, sK1, Skrooge, Wego.
3D­принтер мы построили. А теперь зава­
лим его работой, привлекая подходящие
программы.
Диск Linux Format . . . . . 106
«Совершенство достигается не тогда, когда
нечего добавить, а тогда, когда нечего
убрать», сказал Сент­Экзюпери. Поэтому
мы принялись за простой текстовый формат.
Вести
мобильных ОС . . . . . . . . . . . 18
Хромбуки сближаются с Android
и побеждают ноутбуки, Tegra склоня­
ется к автомобилям, а «умные часы»
ожидает подъем продаж.
Сравнение . . . . . . . . . . . . . . . 26
Решаем нелегкую задачу управ­
ления персональной информа­
цией: Evolution, Kontact, Lightning,
Makagiga, Osmo.
Рубрика сисадмина . . . . . 52
На сей раз таковым выступает м­р
Ботвик — и рассказывает о класте­
рах, эксплойтах Samba и способах
поделиться файлами с другими
пользователями.
Ответы . . . . . . . . . . . . . . . . . . . 96
ВАШИ ПРОБЛЕМЫ РЕШЕНЫ!
Нейл Ботвик — про разблокировку
дверки дисковода, загрузку Mint
с USB, общение с Windows 10, общий
доступ к каталогам, загрузку UEFI
с ISO­образов, настройки менеджера
фото DigiKam.
Содержимое двустороннего DVD
этого месяца.
Пропустили номер? . . . 108
До нас дополз слух про релиз
Ubuntu 16.04; пришлось заняться
им в LXF211.
Через месяц . . . . . . . . . . . . 112
Все, что вы хотели знать о создании
домашнего сервера, но боялись спро­
сить: проведем вас за ручку через
весь процесс.
www.linuxformat.ru/subscribe
RestructuredText
Вдоль по тексту . . . . . . . . . . . . . . . . . 70
Таинство установки
Debootstrap . . . . . . . . . . . . . . . . . . . . . . 76
Вникаем в принципы работы инсталлятора
и автоматизируем создание корневой файло­
вой системы.
CRIU
Живая миграция . . . . . . . . . . . . . . . . 80
Передаем самые тяжеловесные образы сразу
по сети, ускоряя живую миграцию.
Август 2016 LXF212
|
5
Новости
Новости
В ЭТОМ НОМЕРЕ: От айфона до суперкомпа » Какие претензии?! » Сертификат Dallas » Barracuda
вернулась » Секунда координации » Новый чип Intel » Ускорение графики » Сверхбыстрые SSD
БОРЬБА АРХИТЕКТУР
Архитектура ARMv8‑A
расширяет охват
» Рубрику готовил
АНДРЕЙ
ГОНДАРЕНКОВ
Следующей вершиной после iPhone для ARM станет суперкомпьютер.
Д
остигнув доминирующего положе­
ния в сегменте производства чипов
для мобильных устройств, компа­
ния ARM, CPU чьей разработки использу­
ет, в том чис ле, Apple в своих iPhone, те­
перь вторгается в область самых быстрых
компьютеров мира. В ходе запланирован­
ной на август конференции Hot Chips ком­
пания обнародует детальную информацию
об ARMv8­A — век торной архитек туре сле­
дующего поколения для организации вы­
сокопроизводительных вычислений (HPC).
Домен HPC — новый рынок для ARM. Бу­
дучи вполне успешным игроком в сегменте
чипов для планшетов и смартфонов, ком­
пания потерпела неудачу с решениями для
ПК, а сейчас изо всех сил пытается продви­
гать на рынок свои про дук ты для серве­
ров, но пока, несмотря на широкий интерес
со стороны производителей оборудования,
не очень успешно. Клиенты не спешат в од­
ночасье менять свои серверы x86 на ARM,
поскольку остаются вопросы по совмести­
мости задействованного ПО.
В свое время ARM­based чипы создава­
лись специально для мобильных устройств,
и отлича ют ся сба лан сиро ванными пока­
зателями энергосбережения и производи­
> 64-разрядные
CPU новой архитектуры ARMv8-A ориентированы на решение таких задач,
как моделирование
погоды, экономическое прогнозирование, научные
исследования.
тельности. Однако для современных быст­
рых систем перестройка архитек туры ARM
не обхо дима, и вне дре ние возмож но стей
век торной обработки благотворно ска жут­
ся на ее месте в компьютерной иерархии.
ЗАЩИТА ОТ ПАТЕНТНЫХ АТАК
С Linux в автомобиле
К
омпания Toyota вошла как полно­
правный член в состав Open Inven­
tion Network (OIN), круп ней ше го
в ис тории сообщества защиты от патент­
ных претензий. OIN созда ли в 1995 г. IBM,
Sony, Phillips, Red Hat и Novell для защиты
экосистемы Linux от атак со стороны вла­
дельцев интеллек туальной собственности.
Всё это время OIN разными способами (по­
купка, пожертвования) приобретает связан­
ные с Linux патенты, которые затем, не тре­
буя авторских от числений, предоставляет
любой организации, согласной не предъяв­
лять судебных претензий против Linux или
приложений для Linux. В OIN сейчас более
2 тыс. участников: за последние 18 месяцев,
6
|
LXF212 Август 2016
в связи с возрас танием роли СПО и Linux
во всех технологических компаниях, это ко­
личество OIN удвоилось. В последнее время
в состав OIN вошли Hyundai, Kia и Ford Motor
Company. Патентный пул OIN насчитывает
более 1100 патентов, а соглашение участни­
ков затрагивает 2335 пакетов, относящихся
к ядру Linux, платформе Android, Firefox, Git,
KVM, OpenJDK, QEMU, OpenOffice, Qt, systemd, WebKit и X. Org.
В качестве лицензиата бесплатно при­
соединиться к OIN может любая компания,
надо только согласиться на совместное ис­
пользование своих патентов в соответствии
с OIN License Agreement. Чтобы полу чить
право голоса по вопросам ведения бизнеса
и обеспечения общего патентного пула OIN,
надо стать пол но прав ным чле ном со об­
щест ва. С этой це лью Toyota сде ла ла ра­
зовый взнос в размере $20 млн (и эта сум­
ма выгля дит чрезмерной лишь для того,
кто не имел де ла с судеб ны ми раз би ра­
тельствами о нарушении патентных прав).
> Toyota направляет свои патенты
в защиту экосистемы Linux.
www.linuxformat.ru/subscribe
Источники: www.computerworld.com; www.zdnet.com
Toyota присоединилась к сообществу Open Invention Network.
Новости
СЕРТИФИКАЦИЯ
На страже информации
СЗИ НСД Dallas Lock Linux успешно прошла испытания на сертификат.
С
ЗИ НСД Dallas Lock Linux — сис­
тема защиты информации от не­
санк цио ни ро ван но го дос т у па
накладного типа, предназначенная для за­
щи ты кон фи ден ци аль ной ин фор ма ции.
Обес пе чи ва ет за щи ту ра бо чих стан ций
и серверов, работающих под управлением
ОС семейства Linux: Debian 7.8, CentOS 7.0,
Red Hat Enterprise Linux Server 7.0, Fedora
20, openSUSE 12.3. При использовании со­
вместно с продук том Dallas Lock 8.0, пред­
на значенным для защи ты Windows­плат­
форм, возможно построение комплексной
системы защиты информации в гетероген­
ной среде.
СЗИ НСД Dallas Lock Linux прошла сер­
тификационные испытания ФСТЭК России
по 5 классу защищенности СВТ, 4 уровню
контроля отсутствия НДВ, и может исполь­
зо вать ся для за щи ты ин фор ма ции в АС
до класса защищенности 1Г включительно,
в ГИС 1 класса защищенности и ниже, для
обеспечения 1 уровня защищенности ПДн
включительно, в АСУ ТП до 1 класса защи­
щенности включительно.
Решение применяется на персональных
компьютерах, порта тивных компьютерах
(ноутбуках), серверах, а так же в виртуаль­
Сервис-ориентированная архитектура обеспечит защиту систем.
ной среде. СЗИ НСД Dallas Lock Linux позво­
ляет проводить идентификацию и ау тенти­
фика цию поль зова те лей, разгра ничение
прав доступа, осуществлять контроль цело­
стности объек тов системы, аудит событий
безопасности в системе, имеет механизмы
уда ленного управления.
Помимо текстовой консоли поль зова­
телям Dallas Lock Linux бесплатно предос­
тавляется графическая пользовательская
консоль (GUI) для управления СЗИ НСД. От­
личительная особенность продук та — сер­
вис­ориентированная архитек тура, которая
позволяет обеспечивать защиту сложных
рас пре де лен ных сис тем с уче том по вы­
шенных требований к масштабируемости
и управляемости.
С подробным описанием данного про­
дук та, доку мен та цией и демонст ра цион­
ной версией (по за просу) можно ознако­
миться на интернет­порта ле продук товой
ли ней ки Dallas Lock про из вод ст ва Цен­
тра защиты информации компании «Кон­
фи дент»: https://dallaslock.ru/products/
szi­nsd­dallas­lock­linux/.
ЖЕСТКИЙ ДИСК
Возвращение Барракуды
Компания Seagate видоизменила бренд, но суть осталась.
Источники: www.dallaslock.ru; www.computerworld.com
Н
о вая ли ней ка HDD от ком па нии
Seagate для домашних пользова­
те лей и ма лого бизнеса полу чи­
ла название Guardian Series. Ее составили
модели для настольных ПК BarraCuda Pro,
Seagate IronWolf для NAS и Seagate SkyHawk
для сис тем ви део наб лю де ния. Seagate
так же зая ви ла о воз рож де нии для ори­
ен тированных на по треби тельские де ск­
то пы и но ут бу ки HDD брен да Barracuda,
от которого компания отказа лась несколь­
ко лет назад в пользу “Desktop Hard Drive”.
При этом написание бренда слегка изме­
нилось и теперь выглядит так: “BarraCuda”.
Ли ней ка BarraCuda вклю ча ет мо де ли
дисков со скоростью вращения шпинделя
в пределах от 5900 до 7200 об./мин. и ем­
ко стью от 500 ГБ до 10 ТБ. Дис ки имеют
от 16 до 64 ГБ (в зависимости от емкости)
кэш DRAM, и дос тупны в форм­фак торах
2,5 и 3,5 дюйма. Толщина самого тонкого
диска BarraCuda 2,5 емкостью до 2 ТБ —
всего 7 мм. Потоковая скорость передачи
данных обновленной BarraCuda дос тигает
210 MB/s. Розничная цена модели 2 ТБ со­
ставляет $ 81, 3 ТБ — $ 100.
Seagate так же представила новый диск
для «эн ту зиа стов ПК» BarraCuda Pro —
емкостью до 10 ТБ, скоростью вращения
шпинделя 7200 об./мин. и скорость пере­
дачи данных до 220 MБ/с. На эту модель
ком па ния да ет пя ти лет нюю ог ра ни чен­
ную гарантию, значительно превышающую
обыч ную двух лет нюю га ран тию на HDD
BarraCuda. Технология Seagate Self­Encryp­
tion Drive (SED) обес печивает па рольную
и емкостью 1 или 2 ТБ. FireCuda — гибрид­
ный твердотельный диск (SSHD): неболь­
шое количество (8 ГБ) флэш­памяти NAND
слу жат кэширующим элементом, произво­
дительность, по сравнению со стандартны­
ми дисками BarraCuda, увеличена до пяти
раз. FireCuda обеспечивает максимальное
значение потокового чтения до 210 MB/s.
Роз ничная це на — $ 85 для мо де ли 1 ТБ
и $ 110 для 2 ТБ.
На эту модель компания дает пятилетнюю
гарантию.
защиту данных и дает пользователю воз­
можность, при необходимости, выполнить
их тайное стирание, изменив ключ шиф­
рования. BarraCuda Pro рассчитана на пе­
резапись до 55 ТБ данных в год, розничная
цена на модель 10 ТБ $ 535.
FireCuda — рас счи тан ный на игро­
манов еще один диск линейки BarraCuda,
так же в форм­фак торах 2,5 и 3,5 дюйма
> Seagate воскрешает бренд
BarraCuda.
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
7
Новости
ВИСОКОСНАЯ СЕКУНДА
Не думай о секундах свысока!..
В новогоднюю ночь добросовестных сисадминов ждет проблема.
исокосная секунда будет неприят­
ным фак том для сисадминов, как
минимум, до 2023 г. Ко всемирно­
му координированному времени (UTC) пе­
рио ди че ски до бав ля ют так на зы вае мую
leap second («ви со кос ную се кун ду», или
«секунду координации») — для согласо­
вания его со сред ним солнечным време­
нем (UT1). Такое вмешательство негативно
влияет на стабильность компьютерных сис­
тем, запрограммированных считать коли­
чест во секунд в ка ж дой мину те ка ж дого
часа ка ж дого дня одинаковым. Различные
способы «заставить» их принять эту допол­
нительную секунду (уд линение всех других
секунд в предшествующей мину те; повтор
од ной и той же секун ды два ж ды; соз да­
ние 61­й секунды в одной из минут часа)
могут вызвать хаос, поскольку на разные
В
компьютеры ока зыва ют разное влияние.
Так, leap second, добавленная в 2012 г., ста­
ла ис точником проблем в LinkedIn, Reddit
и Qantas, а последнее добавление, выпол­
ненное 30 июня 2015 г., приве ло к кра ху
около 2 тыс. компьютерных сетей по все­
му миру.
Високосная секунда —
неприятный факт
для сисадминов.
В но яб ре то го же го да в хо де World
Radio Conference 2015 обсу ж да лись воз­
мож ность от ме ны «ви со кос ных се кунд»
и вы зы вае мые ими про бле мы. Уча ст ни­
ки WRC­15 от ложи ли при ня тие ре ше ния
до 2023 г. под пред логом необходимости
«сбора дополни тельных данных», а ком­
пьютерным системам предоставили иметь
де ло с по след ст виями ввода leap second
в течение еще восьми лет. Меж ду тем, до­
бавление очередной leap second запланиро­
вано на полночь 31 декабря 2016 г.
В но во год нюю ночь но вая «се кун да
ко ор ди на ции», уг рожаю щая ста бильно­
сти компьютерных сис тем и сетей, поста­
вит перед добросовестными сис темными
ад ми ни ст ра то ра ми ди лем му: ос та вать­
ся во вре мя празд ни ка «на бое вом по­
сту» для ми ни ми за ции не га тив ных эф­
фек тов leap second, или же махнуть на все
ру кой — пусть будет что будет! — и по­
зво лить на сту пив ше му хао су за сви де­
тельствовать делегатам WRC­23, что вре­
мя leap second вышло.
ЧИПИЗАЦИЯ
Чипы седьмого поколения
Новый чип Intel Core внесет инновации в дизайн ноутбуков и планшетов.
C
8
|
LXF212 Август 2016
тех нологии, и представи ла Kaby Lake как
вре мен ный про дукт тех но ло гии 14­нм
с некоторыми усовершенствованиями.
На прошедшей в июне выставке Com­
putex Asus показа ла оснащенное Kaby Lake
устройство Transformer 3, напоминающее
планшет Microsoft Surface Pro. Transform­
er 3 имеет экран 12.6­inch, вес 695 г и тол­
щину 6,9 мм. В конфигурацию входит SSD
до 512 ГБ и до 8 ГБ ОЗУ, стартовая цена обе­
щана на уровне $ 799. Но ни один дру гой
из чис ла ос новных производи те лей пока
не анонсировал моделей c Kaby Lake. Leno­
vo и Acer вы держивают пау зу в пред две­
рии выставки IFA, которая пройдет в Берли­
не в нача ле сентября. Кроме того, ПК с Kaby
Lake могут быть показаны в августе на кон­
ференции Intel Developer Forum в Сан­Фран­
циско. Всего же, по информации от Intel,
в ко неч ном ито ге будут дос туп ны око ло
400 устройств с Kaby Lake, этими чипами
могут так же оснащаться Microsoft Surface
PC и Apple MacBook.
Кон ку рен цию Kaby Lake со ста вят чи­
пы от AMD с кодовым именем Bristol Ridge
(первые компьютеры с ними появились ра­
нее в этом году). Сильной стороной чипов
> Asus Transformer 3, одно из первых устройств с чипом Intel
Kaby Lake.
www.linuxformat.ru/subscribe
AMD является работа с графикой, в то вре­
мя как чипы от Intel лучшее сохраняют ак­
кумулятор ноутбука.
В ап ре ле Intel зая ви ла о на ме ре нии
ре ор га ни зо вать свой биз нес и пе ре не­
сти ак цент с персональных компьютеров
на продук ты для дата­центров, IoT и под­
клю чае мых уст ройств: в те че ние мно гих
лет рынок ПК резко падал, негативно влияя
на прибыль компании.
Источники: www.computerworld.com
EO компании Intel Брайан Кржанич
[Brian Krzanich] объявил о нача ле
поставок производителям ПК чи­
па седьмого поколения Intel Core с кодовым
наименованием Kaby Lake, которому отво­
дится роль преемника Core Skylake. По сло­
вам Кржанича, новинка не обязательно бу­
дет иметь меньший размер, но повышение
ско ро сти, по срав не нию со сво им пред­
шественником, она обеспечит.
Следует ли пользователям, планировав­
шим обновиться до Skylake, ждать теперь
несколько месяцев появ ления уст ройств
с Kaby Lake? Специа листы рекомендуют ме­
нять ПК, когда в этом возникнет необходи­
мость, не дожида ясь очередного улучше­
ния. Тем не менее, устройства, оснащенные
Kaby Lake, выйдут с интересными форма­
ми и размерами. Обычно Intel снача ла вы­
пускает версию Core M нового процессора,
предполагающую некоторые инновацион­
ные мобильные решения.
Пер во на чаль но пре ем ни ком Skylake
должен был стать Canonlake, произведен­
ный по технологии 10­нм «уменьшенный»
Skylake. Но в прошлом году Intel скоррек­
тирова ла свои планы относительно 10­нм
Новости
ГРАФИКА
Ускорение ускорителей
Для улучшения картинки в играх AMD
включила в GPU 1­ТБ SSD.
> Удачный результат эксперимента
AMD с Radeon Pro
SSG сделает наличие собственного
SSD типичным для
всех GPU.
Ч
Radeon Pro SSG поступит в прода жу как
комплек т разработ чика (development kit),
не для массового пользователя: потреби­
тельские продук ты с новым GPU планиру­
ется выпус тить в I квар та ле сле дующего
года. Radeon Pro SSG имеет один графи­
ческий процессор на базе архитек туры Fiji,
используемый так же в dual­GPU Radeon Pro
Duo. AMD не предоставила подробной ин­
формации, но Radeon Pro Duo с двумя GPU
показывает результат 16 терафлоп в вычис­
лениях с одинарной точностью.
Объединение в пару GPU с SSD в каче­
стве долговременной памяти поступит в бу­
дущие модели графических ускорителей.
После обновления Windows 10
на компьютерах с несколькими ОС
отмечены слу чаи невозможности загруз­
ки других ОС, уда ление связанных с эти­
ми ОС разделов диска и да же пропажи
дополнительных разделов Windows.
Источники: www.omgubuntu.co.uk, linux.
slashdot.org
До конца 2017 г. «Ростелеком»
намерен заменить в части инфра­
струк туры элек тронного правительства
(ИЭП) продук ты Oracle на решения с от­
крытым кодом, для чего дочерней компа­
нии «РТ Лабс» выделено 110,9 млн руб.
Источник: zakupki.gov.ru
»
Intel готова предложить сверхбыстрые
накопители SSD уже в 2017 г.
LXF212 Август 2016
В рамках открытого проек та
Bareflank от компании Assured
Information Security создается модульный
гипервизор­прототип для быстрой разра­
ботки собственных специа лизированных
гипервизоров.
Источник: www.ainfosec.com
»
> Память Micron
3D Xpoint будет
поставляться
в SSD под брендом
QuantX.
Д
|
В ядре Linux 4.7: schedutils — более
быстрый и точный механизм управ­
ления частотой CPU, модуль безопасно­
сти LoadPin, под держка механизмов UEFI
Capsule и Android sync_file, виртуальных
USB­устройств в стеке USB/IP.
Источник: kernelnewbies.org
»
Диски бренда QuantX
10
В LibreOffice 5.2 можно исполь­
зовать вид жеты GTK3+ для меню
и всплывающих подсказок; группа управ­
ляющих панелей заменена на одностроч­
ную унифицированную панель инстру­
ментов; новые функции в Calc улучшают
совместимость с MS Excel 2016.
Источник: blog.documentfoundation.org
»
»
НОВЫЕ ТЕХНОЛОГИИ
е таль ную ин фор ма цию о пла­
нах по выпус ку на копи те лей, ис­
поль зую щих па мять 3D Xpoint,
компания Micron раскрыла в нача ле авгу­
ста на конференции Flash Memory Summit
в Санта­Клара (Ка лифорния). Intel и Micron
выбра ли разные пу ти для предоставления
3D Xpoint своим клиентам: Intel намерена
продавать SSD собственного производства,
Micron же делает ставку на сотрудничество
с ком па ния ми, за ни маю щи ми проч ные
по зиции на рынке на копи те лей. Бы ст ро­
действие чипов, изготовленных по техноло­
гии 3D Xpoint, сопоставимо с традиционной
DRAM, но, в отличие от последней, память
3D Xpoint является энергонезависимой. In­
tel утверждает, что плотность 3D Xpoint бу­
дет в 10 раз больше, чем у DRAM, и уже по­
каза ла технологию, накопители на основе
которой в 10 раз быстрее нынешних SSD.
Первый релиз TrueOS (бывшей
PC­BSD) выйдет в сентябре с гра­
фическим конфигуратором SysAdm
на Qt вместо Control Panel, под держкой
загрузчиков BSD и GRUB, возможностью
безопасной установки в отдельный zpool.
Источник: lists.pcbsd.org
»
Вышел первый релиз ставшего
открытым проек том браузера Qt
WebBrowser на основе движка Blink/Chro­
mium, предназначенного для мобильных
устройств с сенсорными экранами.
Источник: www.opennet.ru
»
3D Xpoint — со вме ст ная раз ра бот ка
Micron и Intel; Intel уже от пра ви ла тес ти­
ровщикам SSD­на ко пи те ли 3D Xpoint,
а серийные диски Intel для высокопроиз­
во ди тельных на стольных сис тем ста нут
доступны к концу года. Micron же, как при­
знал вице­президент компании Джон Кар­
тер [Jon Carter], предназнача ла технологию
3D Xpoint для промышленных SSD (сверх­
быстрые накопители пользуются огромным
спросом в центрах обработки данных). |
www.linuxformat.ru/subscribe
За $600 млн Opera Software прода­
ла китайскому консорциуму часть
своего бизнеса (бренд Opera, подразде­
ление разработки браузера и приложения
для обеспечения производительности
и приватности). Теперь компании из Нор­
вегии предстоит переименование.
Источник: techcrunch.com
»
Источники: www.computerworld.com; www.pcworld.com
тобы максимально за действовать
всю мощь графического процес­
сора в иг рах и обра бот ке вир ту­
альной реальности, AMD впервые размес­
тила в своей новой видеокарте отдельный
SSD. Идея проста: поскольку размеры фай­
лов становятся все больше, то возрастают
и объемы памяти и внешних накопителей,
необходимых GPU для быст рой обработ­
ки и представления графических данных.
В кар ту Radeon Pro Solid State Graphics
(SSG), продемонстрированную в конце ию­
ля на конференции SIGGRAPH в Ана хай­
ме (Ка лифорния), встроен SSD емкостью
1 ТБ, используемый в качестве накопителя
или дополнения к встроенной изменяемой
памяти. Современные графические карты
AMD имеют до 32 ГБ собственной памяти,
что накла дывает ограничения на обработ­
ку больших объемов данных. Отдельный
SSD добавляет GPU целый терабайт памя­
ти, а так же может быть за действован для
хранения обработанной графики или видео
перед выдачей на экраны.
Новости
короткой строкой
Обзоры
Новинки программного и аппаратного обеспечения в описании наших экспертов
АЛЕКСЕЙ ФЕДОРЧУК
Тэг <сарказм>
по умолчанию,
смайлики по вкусу.
GeckoLinux:
первый клон
openSUSE
Д
истрибу тив openSUSE бо­
лее чем за 20 лет своей жиз­
ни (под разными, но схожи­
ми именами) не породил ни одного
клона. Что странно, ибо в тесной свя­
зи с ним развиваются проек ты вро­
де Open Build Service — среда для
сборки собственных пакетов, и Suse­
Studio — среда комплек тации настро­
енных образов. А они прямо­таки
провоцируют на клонирование мате­
ринской системы согласно потребно­
стям применителя. Да, такие сборки
создаются постоянно; однако — в ин­
дивидуальном порядке, и для широ­
кого распространения до последнего
времени не предназнача лись.
Но не так давно потенциал «кло­
нирования» openSUSE реа лизовался,
можно сказать, в промышленных
масштабах — как дистрибу тив Gecko­
Linux. Он распространяется в двух ре­
дакциях: статической (Static), на базе
openSUSE Leap, и «скользящей» (Roll­
ing), на базе openSUSE Tumbleweed,
различающихся, как легко догадать­
ся, моделью выпуска. Обе объединя­
ют в себе «субредакции» с разными
рабочими средами, включая и не под­
держиваемые в официальной open­
SUSE и да же не всегда доступные
в ее «полуофициальных» репозито­
риях: Budgie, Cinnamon, Gnome, KDE
Plasma, LXQt, Mate, Xfce, а так же «ба­
зовые Иксы» с оконным менед жером
OpenBox. Причем под держка их вы­
полнена, как говаривал Великий Ком­
бинатор, «на высоком идейно­худо­
жественном уровне». Прежде всего
это касается среды Cinnamon, реа­
лизация которой в «официальной»
openSUSE оставляла желать лучшего.
[email protected]
Сегодня мы рассматриваем:
KaOS 04.2016 . . . . . . . . . . . . . 12
Tomb Raider . . . . . . . . . . . . . 15
Ничего такого хаотического: непре­
рывные обновления, понятный, при­
ятный и удобный рабочий стол прямо
из коробки, стильная тема и пакеты
стабильные, но не древние.
Мытарства главной героини не под­
даются описанию. Но, поиграв пару
часов, вы попа даете в некий гибрид
стрелялки от третьего лица и линей­
ного платформера.
Kubuntu 16.04 LTS . . . . . . . 13
Bq Aquarus M10 . . . . . . . . 16
Первый из родственных Ubuntu про­
ек тов выглядит неплохо, однако внес
некоторую понятийную пу таницу.
Может, и не стоило менять «пакеты»
на «приложения»?
Вот вам и конвергенция — Стив
Джобс относился к выпуску своих
моделей более ответственно. Недо­
статки следова ло устранять до по­
ступления планшета в прода жу...
> Так бывает, когда экранная
клавиатура не слишком удобна...
OpenIndiana . . . . . . . . . . . . 14
ОС, в результате усилий энтузиастов
восставшая из пепла Solaris, до Linux
все­таки не дотягивает, хотя сисад­
минам и любителям изу чать новое
тут есть на что посмотреть.
KaOS 04.2016
Tomb Raider
> Дистрибутив KaOS с порога заявляет о своей
приверженности KDE и Qt.
> Одна-одинешенька, Лара вынуждена противостоять несметным полчищам врагов.
Сравнение: Менеджеры информации с. 26
Evolution
Kontact
Makagiga
Osmo
Lightning
Опоздали на важную встречу? Про­
пустили совещание? Срочно уста­
новите менеджер персональной ин­
формации, и вашей пунктуальности
будет дивиться народ. Мы поможем
выбрать самый удобный.
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
11
Обзоры Дистрибутив Linux
KaOS 2016.03
Стол Джонни Бидвелла постоянно находится в состоянии хаоса, разительно
контрастируя с опрятностью рабочего стола Plasma 5 в KaOS.
Вкратце
» Стильный
чисто 64-разрядный дистрибу тив
со скользящими обновлениями,
который не заимствует чу жие
репозитории
и действительно
хочет, чтобы вы
использовали
приложения Qt.
Прост в установке благодаря установщику Calamares,
и да же, если хотите, установит
проприетарный
драйвер Nvidia.
См. так же: Chakra
Linux.
aOS — дист рибу тив с непрерыв­
ным обновлением, частично вдох­
новленный Arch Linux, но в итоге
ставший независимым. В отличие от мно­
гих дист рибу тивов, у него довольно чет­
кое пред став ле ние о сво ей це ле вой ау­
ди тории — как мож но понять из первой
буквы названия, он KDE­ориентирован: од­
на из главных за дач KaOS была избежать
распу хания репозиториев, а единственный
способ сделать это — запретить все, кроме
самых распространенных GTK­приложений.
Это не значит, что их нель зя ус та новить,
но при этом не отделаться от ощущения, что
идешь «против шерсти».
Так же, во имя сохранения размеров ре­
позиториев, не включаются 32­разрядные
пакеты. Поэтому он не работает на старом
железе, а так же не располагает официаль­
ными способами установки Skype, Wine или
Steam. Некоторые крупные дистрибу тивы
уже начинают рассматривать отказ от под­
держки 32 бит, однако в KaOS предубеж де­
ние против 32 бит было частью разработки
с самого нача ла (проект запу щен в апре­
ле 2013 г.).
Еще в на ча ле 2015 г. же лаю щие по­
про бо вать но вый ра бо чий стол Plasma 5
были выну ж дены либо использовать один
из экс пе ри мен таль ных liveCD, ли бо до­
ба вить PPA, ли бо ус та но вить Arch (ли­
бо применить какой­нибудь другой извра­
щенный способ). К счастью, эти времена
прошли, и все основные дистрибу тивы по­
зволят установить и насла диться Plasma 5
с ми ни му мом уси лий. Но та кая дос туп­
ность Plasma 5 не сдела ла KaOS вмиг неак­
ту альным. Дейст ви тельно, KaOS исходит
K
Свойства навскидку
12
Pacman
Тема Midna
Использование Pacman оз­
начает, что можно устано­
вить также и пакеты сооб­
ществ Arch и Chakra Linux.
Снобам интерфейса могут
не понравиться плоские
темы в сочетании с тенями,
но мы с ними не согласны.
|
LXF212 Август 2016
> Qupzilla 2.0 с удовольствием позаботится о ваших потребностях просмотра web-страниц.
из того, чтобы обеспечить понятный, при­
ят ный и удобный ин диви ду альный рабо­
чий стол прямо из коробки. Стандарт ной
запускалке Plasma 5 предпочли более тра­
диционное меню при ложений. Пред лага­
ется большой выбор вид жетов, но ненуж­
ные вам легко будет отключить, так что это
не станет помехой.
GTK уходит
Рабочий стол KaOS определенно выделяет­
ся среди более прозаических дистрибу ти­
вов. Стильная тема Midna достойна похва­
лы — она элегантна, современна, гладка.
Ис торически под держание рабочего сто­
ла на чистом Qt выну ж да ло чем­то пожерт­
вовать, и вдвойне так, если вы настаива ли
на чис том Qt5. Для обычного пользовате­
ля это не совсем верно. Офисный комплект
Calligra хорош (как только вы привыкнете
к его неприязни к обычным панелям инст­
рументов), Qupzilla 2.0 с новым QtWebEngine
на ба зе Chromium прекрасно отобра жает
наши любимые сайты, а Smplayer — пре­
восходный выбор для воспроизведения ви­
део. Конечно, некоторым может потребо­
ваться установить что­то и на GTK — скорее
всего, Firefox и GIMP — но это легко сделать
через менед жер пакетов Octopi.
Дистрибу тивы непрерывного обновле­
ния иногда имеют репу тацию стремящихся
быть на переднем крае, а не к стабильности.
KaOS твердо это отрицает: пакеты дос та­
www.linuxformat.ru/subscribe
точно новы (ядро 4.4, Plasma 5.6), но в мень­
шем количестве, чем в Arch Linux.
Кстати, KaOS использует Pacman — ме­
нед жер пакетов Arch; ста ло быть, пакеты
исход ного кода в его форма те PKGBUILD
могут быть использованы в обоих этих ОС,
а в KaOS Community Packages (KCP) Center
размещены несколько своих таких пакетов.
Они замечательно дополняют небольшие
официальные репозитории дистрибу тива
(где около 2200 пакетов), а поскольку необ­
ходимость в компиляции — это всегда до­
вольно му торно, то радует, что хоть кто­то
проде лал большую часть неприят ной ра­
боты за вас. |
Вердикт
KaOS 2016.04
Разработчик: KaOS
Сайт: https://kaosx.us
Лицензия: Разные
Функциональность
Быстродействие
Удобство в работе
Документация
8/10
8/10
9/10
8/10
» Красивый, независимый, разумный
подход к рабочему столу Linux. На это
стоит посмотреть.
Рейтинг 8/10
Дистрибутив Linux Обзоры
Kubuntu 16.04
Джонни Бидвелл получает еще один шанс выразить восторг Plasma 5 и посето­
вать на чрезмерную загруженность фонов цветом и треугольниками.
Вкратце
» Linux для тех,
кому не нравится Unity. Все ценное из Ubuntu,
оберну тое в блестящий пакет
Plasma. Более
традиционный
под ход к рабочему столу может
привлечь беженцев с Windows 10.
См. так же:
Linux Mint, KaOS,
openSUSE.
сли после нашего специального вы­
пуска в прошлом месяце вас тош­
нит от Ubuntu и всего, что с Ubuntu
связано... то мы пред ложили бы вам пере­
вернуть страницу. Потому что речь пойдет
о Kubuntu.
Сейчас су щест вует девять официаль­
ных редакций Ubuntu и бесчисленное мно­
жество разных спинов, форков, ответвле­
ний, по сле до ва те лей и прочих даль них
родственников. Этак легко и позабыть, что
Kubuntu был первым родственным проек­
том и существует с 2005 г. Тогда его появле­
ние было вызвано противостоянием KDE 3
и Gnome 2, которое в значительной степени
подытожило состояние настольного Linux.
К счастью, теперь у нас гораздо шире вы­
бор рабочих сто лов и значи тельно боль­
ше Ubuntu.
Kubuntu перешел Рубикон Plasma 5 еще
в 15.04, так что имел целый год на сгла жи­
вание неровностей и освоение всех функ­
ций и исправлений от разработчиков. К мо­
мен ту ре ли за вышли KApplications 16.04
и Plasma 5.6, но, увы, слишком поздно, что­
бы попасть в релиз LTS. Поэтому Kubuntu
придерживается версий 15.12 набора при­
ложений и 5.5 рабочего стола. Само по себе
это неплохо — стабильность важна, и боль­
шинст во поль зовате лей сможет прожить
без новых функций последних версий. Од­
нако, как всегда бывает с фиксированными
релизами, и особенно LTS, эти компонен­
ты начнут вы да вать свой возраст дос та­
точно скоро.
Хо тя сейчас все вы гля дит про сто от­
лич но. Дей ст ви тель но, ес ли вы все это
вре мя ис поль зо ва ли Kubuntu 14.04 (или
Е
Свойства навскидку
Discover
Plasma 5
Это лучше, чем оригиналь­
ный Ubuntu Software Center,
но продвинутые пользова­
тели, скорее всего, предпо­
чтут APT.
Он никогда не выглядел
лучше и не был стабиль­
нее, но добавьте PPA, если
хотите иметь новейшие
функции.
> Plasma 5 и недавно избавленный от излишеств файловый менеджер Dolphin. Вверху
слева — кнопка установки. Ох уж эти кричащие треугольники...
что­то другое на базе Plasma 4), то вы по­
па ли по ад ресу (см. KDE Plasma 5, стр. 42
LXF206).
Процесс установки проходит вполне се­
бе гладко, хотя (и вы, возможно, видели это
с LXF DVD прошлого месяца) в live­среде
вид жет с кнопкой Установить слишком мал
и не чи тается. Kubuntu проявил ос торож­
ность и избе гал чрезмерно го вторже ния
в схему KDE по умолчанию. В этой схеме,
и так же, как в Unity, виртуальные рабочие
столы от ключены. Бы ло бы неправильно
критиковать Kubuntu за следование общей
тенденции, хотя и ка жется странным, что
Windows 10 приняла упомяну тые функции
как раз когда их убра ли из известных на­
стольных Linux. Но это неважно; виртуаль­
ные рабочие столы и прочие настройки на­
ходятся всего в нескольких щелчках мыши,
и незачем превращать это в обзор Plasma 5.
Так что давайте сейчас посмотрим, что еще
есть в Kubuntu.
к сожа ле нию, вно сит не ко торую пу та ни­
цу. Во­первых, он оперирует несколько бо­
лее абстрактным понятием «приложение»,
а не собственно ба зовыми пакетами. Для
новых пользователей это, может, и непло­
хо, но опытных спо соб но так же и сбить
с толку, когда запросы на пакеты, хорошо
известные поименно, возвращают «ничего
не найдено». Кроме того, мы столкнулись
с графическими глюками — сдвину тыми
текстом и изобра жениями при исполь зо­
вании драйвера nouveau (довольно забавно
выгляде ло, когда изобра жения при ложе­
ний плав но кру жи ли у мес та, где обяза­
ны бы ли ос та но вить ся), но труд но ска­
зать, чья здесь вина. Вероят но, это будет
ис прав лено рань ше, чем вы про чи тае те
данную статью. |
Ищи меня
Kubuntu 16.04
Много шу ма на де ла ла замена час то про­
клинаемого Ubuntu Software Center в основ­
ном ре ли зе. Там его за ме ни ли на Gnome
Software, но здесь это, вероятно, было бы
странным выбором. Вместо него Kubuntu
пред лагает Discover Software Center, быв­
ший Muon Discover. Изначаль ный Muon,
ны не под но вым ру ко во дством, был по­
хож на тра дици онные ин ст ру мен ты вро­
де Synaptic из Debian — пакеты иска лись
по ка тегориям или по ста тусу их состоя­
ния, и все работа ло нормально. Новичок,
www.linuxformat.ru/subscribe
Вердикт
Разработчик: Спонсируется Blue
Systems
Сайт: http://kubuntu.org
Лицензия: GNU GPL 2 или выше
Функциональность
Быстродействие
Удобство в работе
Документация
8/10
8/10
9/10
8/10
» Отличный шанс увидеть Plasma 5
во всей красе, а новичкам — отлич­
ный способ изучить Linux.
Рейтинг 8/10
Август 2016 LXF212
|
13
Обзоры Дистрибутив Unix
OpenIndiana
Джонни Бидвелл пытается выяснить, не появилась ли тайком от всех некая
новая ОС — может, у какого­нибудь хипстера она установлена?
Вкратце
» Один из наиболее распространенных дистрибу тивов в ду хе
Solaris, выступающий под эгидой проек та
Illumos. Здесь
есть много всего
для сисадминов
и желающих изучать новые технологии. Если же
судить книгу
по обложке, напоминает Linux,
сделанный лет 8
назад. См. так же:
Dyson, Tribblix,
XstreamOS.
М
есяц назад мы обозрева ли кое­
какие BSD, и на нас за это никто
не наорал, так что на сей раз
мы решили проверить, сработает ли такое
снова. Чтобы толком объяснить происхо­
ж дение OpenIndiana, нужно больше места,
чем мы рас по ла га ем, но вот со кра щен­
ная версия: OpenIndiana восстала из пепла
OpenSolaris (неудачной попыт ки от крыть
про цесс раз ра бот ки Solaris ком па ни ей
Sun), за глох шей еще в 2010 г., когда Sun
Microsystems была приобретена Oracle.
OpenIndiana име ет две вет ви ре ли за:
ветвь Hipster (2016.4 — рассматриваемая
здесь) ана логична тес товой ветви Debian.
Предупреж дается, что там будут экспери­
мен таль ные функ ции и «слу чай ные по­
ломки». Это сис тема с непрерывным цик­
лом обновления, так что вы скача ли просто
стоп­кадр теку щего состояния игры. Жа­
ж дущим стабильности лучше держаться
официальных релизов, хотя таковых не вы­
пуска лось с января 2014 г. Как бы то ни бы­
ло, хип сте ров к этой вер сии долж на,
видимо, привлечь их любовь к ретро — ви­
нилу и твиду, а не элек тронным сигаретам
и Instagram. Live­диск, нена долго за дер­
жавшись в консоли, чтобы выспросить на­
стройки языка и раскладок клавиатуры, за­
гру жается в до боли знакомое окру жение
Gnome 2. В самом рабочем столе есть удоб­
ная утилита для обнару жения оборудова­
ния и предупреж дения о на личии проблем
с драйверами еще до нача ла установки.
Ус та нов щик дос та точ но ин туи ти вен,
хотя инструмент разметки диска довольно
примитивный — одно за другим раскрыва­
ются пустые окна, пока не исчерпывается
Свойства навскидку
14
Dtrace
Illumos Project
Этой системе отладки, из­
начально доступной только
в Solaris, линкусоиды люто
завидовали.
Illumos — это сердце
OpenIndiana, обеспечиваю­
щее ядро, драйверы и ос­
новные библиотеки.
|
LXF212 Август 2016
> OpenIndiana использует рабочий стол Gnome 2, но в новеньком ZFS он выглядит живее.
свободное мес то. Инструмент может соз­
давать только файловые системы Solaris2
(ZFS), и это прекрасно, если вы хотите толь­
ко ус тановить OpenIndiana. Для тех, кому
нужна более вариативная, смешанная сис­
те ма раз де лов, дос ту пен яр лык GParted
на рабочем столе.
Глубокое ретро
Как и в случае с BSD, некоторые компонен­
ты серьезно отстают от их Linux­эквива лен­
тов. В част ности, нет 3D­ускорения, ес ли
только у вас не карта Nvidia с проприетар­
ным драйвером (который застрял на ста­
родавней 340 серии). Прав да, мож но ус­
тановить открытый драйвер Radeon, хотя
и гораздо более старую версию, без под­
держ ки карт KMS или не сколь ких карт.
Так же мож но ус тановить некоторые кар­
ты Intel, хотя опять же только с ускорением
2D. Если ваше оборудование не под держи­
вается, придется довольствоваться драйве­
ром vgatext, который создан был сугубо для
функционирования, а не чтобы впечатлять.
Конечно, фантастическая графика и но­
вей шие пор ты про грамм но го обес пе че­
ния Linux для большинства пользователей
OpenIndiana не входят в число главных при­
ори тетов. Куда ин тереснее — множест во
серверных и корпоративных функций, та­
ких как Zones (для простой виртуа лизации)
и Fault Management Architecture (FMA, архи­
тек тура обработки сбоев).
www.linuxformat.ru/subscribe
В Solaris масса вещей работает не так,
как в Linux, включая систему инициа лиза­
ции: это не Systemd, но нечто более продви­
ну тое, чем скрипты SysV. Все обрабатыва­
ется Service Management Framework (SMF),
который использует XML­файлы для опре­
деления служб и их зависимостей. SMF сде­
лает все возможное, чтобы вернуть к жизни
упавшие сервисы, а команда svcs предоста­
вит вам кучу информации о них.
С OpenIndiana мож но много чему нау­
читься, но нема ло инструментов уже пор­
тированы в Linux, так что в настоящее вре­
мя она вызывает разве что академическое
любопытство. |
Вердикт
OpenIndiana/Hipster 2016.04
Разработчик: illumos Project
Сайт: www.openindiana.org
Лицензия: CDDL и др.
Функциональность
Производительность
Удобство в работе
Документация
7/10
6/10
6/10
8/10
» Для сисадминов тут кое­что есть,
но рядовые пользователи этого
не увидят.
Рейтинг 7/10
Игра Обзоры
Tomb Raider
Эмоционально выжатый Крис Терстен уселся за клавиатуру, чтобы избавить себя
от травмы детства, а для этого придется пострадать, порядком.
Спецификации
» ОС Ubuntu
14.04 (64­битная),
Steam OS 2.0
(64­битная)
» ЦПУ Intel Core
i3, AMD FX­6300
» ОЗУ 4 ГБ
» На диске 15 ГБ
» Графика Nvidia
GeForce 640,
AMD R7 260X,
видеобуфер 1 ГБ
Рекомендуется:
» ЦПУ Intel
Core i5
» ОЗУ 8 ГБ
» На диске 15 ГБ
» Графика Nvidia
GeForce 760,
видеобуфер 3 ГБ
Д
ля 21­летней героини Лары Крофт
[Lara Croft], выброшенной на ми­
фи че ский ост ров Яма таи по сле
жуткого шторма, путь наверх начинается
со стра дания. За первые часы игры ее ра­
нят ножом, под жигают, топят, бьют, и она
едва не замерзает насмерть — и это еще
если повезет.
Стоит прова лить одно QTE, и ее на ва­
ших глазах раздавят, пронзят, задушат, со­
мнут и так да лее. Такая жестокость в нача ле
является одной из самых ярких особенно­
стей иг ры. Лара всхлипывает и трясется,
и совершенно очевид но намерение ав то­
ров придержать действие и сосредоточить­
ся на том, что она переживает. Голод выну­
ж дает ее найти лук и охотиться на оленей.
Ее лок ти правдоподобно дрожат, когда она
карабкается на выступ. Убив своего пер­
вого врага, она сама истекает кровью (да же
больше него) и выглядит растерянной.
Од на ко ес ли поиг рать еще несколько
часов, вы попа даете в некий гибрид стре­
лялки от третьего лица и линейного плат­
формера, где Лара одно за другим собирает
на себя злоключения, как вы живший по­
сле кораблекрушения собирает уцелевшие
вещи: по бег из горяще го зда ния, ава рия
вертолета, район, где ее обезору живают,
кульминационное нападение на вра жескую
крепость. Раз за разом, игра становится всё
узнаваемее.
По сле оче ред но го же ст ко го спус ка
со склона горы Ла ра ока зывается в при­
вычной среде — промзоне. Возможности
ее прохож дения пополнились веревочны­
ми стрелка ми, по зво ляю щими от та щить
неко торые двери и ус коренно до брать ся
до некоторых постов. На некоторое время
Tomb Raider превращается в мирное иссле­
дование местности. Это очень, очень мило.
> Поначалу игра поражает жестокостью к Ларе.
> Опасности, которые таит остров, не столь страшны и травматичны, как выглядит
в начале.
Да же забываешь о том, сколько раз Ларе
чуть не перегрыз горло волк.
Главный недостаток сюжета Tomb Raider
в том, что прекрасные идеи не реа лизуют­
ся в самой иг ре. По ходу Лара постоянно
полу чает одни и те же два совета: «Дове­
ряй сво им ин стинк там» и «Иди впе ред».
И то, и другое противоречит тому, что Tomb
Raider от вас действительно требует.
Земля Raider
Проявлять инициативу в Tomb Raider так же
рисково, как влезать с репликой на коме­
дийном шоу. Это или наказуемо, или — что
еще ху же — вы нарветесь на какой­нибудь
хитроумно замысленный трюк, и все пой­
дет не так, как вы дума ли.
Пока вы держите в голове, какая кнопка
отвечает за какой элемент среды, есть га­
рантия, что ничего поистине ужасного этот
остров с вами не сделает. Такой предупре­
дительный дизайн успешно делает из Tomb
Raider зрелищный и добротный платфор­
мер, но неизбеж но вы зывает дис сонанс.
Вам говорят, что это история о том, как че­
ловек познает свою силу, а видите вы, что
бог под весных мос тов очень и очень ему
благоволит. Вас убеж дают охотиться и от­
крывать новые места, чтобы приумножить
свои навыки и свой арсенал, но достижения
ничем не поощряются.
Пол но цен ным Tomb Raider на чи на ет
ощущаться в те моменты, когда вам дает­
ся больше свободы. При правильных об­
стоятельствах, игра становится достойной,
да же труд ной, в сти ле стелс­экшн; про­
счи тывать, как ликвидировать максимум
www.linuxformat.ru/subscribe
про тив ни ков пре ж де, чем они вас за ме­
тят, очень увлекательно. Разбросанные тут
и там могилы представляют материал для
исследования и массу загадок, заставляю­
щих поимпровизировать с хорошо проду­
манной физикой игры.
Оди но кое ска ло ла за нье и съез жа ние
по канатам в многопользовательском ре­
жиме превращается в стрелялку для сопер­
ничающих команд; для остроты добавлены
возможность ставить ловушки и ограниче­
ние на разрушение среды.
Игра Tomb Raider местами очень увле­
кательна и без сомнения оправдывает за­
траты на производство и время, потрачен­
ное на продумывание ка ж дого этапа этого
опасного пу ти, но сверх трудной ее не на­
зо вешь — ни эмо цио нально, ни в пла не
действий. |
Вердикт
Tomb Raider
Разработчик: Feral Interactive
Сайт: www.feralinteractive.com
Цена: Ј 15
Сюжет
Графика
Увлекательность
Оправданность цены
6/10
9/10
6/10
8/10
» Необычайно зрелищна и проду­
мана до мелочей, но отсутствие
глубины и нестерпимая линейность
все портят.
Рейтинг 8/10
Август 2016 LXF212
|
15
Обзоры Планшет с Ubuntu
Планшет Bq Aquaris
M10 Ubuntu Edition
Это устройство с конвергенцией всеобщей мечты — или кошмарная химера,
которая навсегда запугает Нейла Мора?
> Можно установить
режим рабочего стола
без клавиатуры.
Спецификации
» ОС Ubuntu
Touch 15.04 OTA10
» ЦПУ MediaTek
4­ядерный 1,5 ГГц
» Графика
Mali­T720 MP2
600 МГц
» Дисплей 10,1",
1920×1200, 10­то­
чечный сенсор
» ОЗУ 2 ГБ
» Накопитель
16 ГБ (свободно
10 ГБ)
» Связь GPS,
Bluetooth 4.0, Wi­
Fi 802.11 a/b/g/n
двух диапазонный
» Порты Микро­
USB OTG, гнездо
3,5 мм, микро­SD,
микро­HDMI
» Камеры 8­МП
главная, 5­МП
фронтальная
» Батарея
7280 мА⋅ч
» Габариты
246×171×8,2 мм
» Вес 470 г
С
о времени прова ла исходной кам­
пании Ubuntu Edge на Indiegogo,
обе ща ние «кон вер ген ции» уст­
ройств дразнило своей недосягаемостью
жа ж ду щих ее фа на тов FOSS. С 2013 г.
фанаты Ubuntu с на деж дой предвкушают
появление реальных мобильных устройств,
способных сочетать легкое, сенсорное мо­
бильное применение и навороченную, мощ­
ную настольную ОС. Вопрос: выполнил ли,
наконец, Canonical свое обещание конвер­
генции в Bq Aquaris M10?
Пер вые впе чат ле ния хо ро шие. Нена­
вязчивый ди зайн планше та и его кор пус
Свойства навскидку
16
Экранная клавиатура
Режим рабочего стола
Она хороша и работает,
но должна быть доступнее
настольным программам.
После подключения мыши
и клавиатуры появляются
окна, и работа закипает!
|
LXF212 Август 2016
из цельного пластика не создают ощуще­
ния преми ум­внешности, но выглядит он
дос та точ но проч ным. Скруг лен ные углы
и матовая отделка приятны рукам; планшет
необычно легок, и тем не менее не кажется,
что он треснет, надави на него чуть сильнее.
Первое включение сразу запускает про­
цесс настройки. Планшетная версия стан­
дартного установщика Ubuntu. Здесь пред­
вкушение зашка ливает, поскольку процесс
соответствует всяким супердевайсам. Вклю­
чение планшета — примерно 20 секунд —
происходит полностью в сенсорном режиме.
Чиркните пальцем по левому краю, и откро­
ется док­меню. Чиркнете в правом верхнем
углу — получите уведомления и настройки.
По правому краю — увидите многоза дач­
ную работу. Док предлагает доступ к любой
открытой программе и системным экранам.
Системные экраны — потенциально полез­
ные страницы адресной информации, такой
как погода, новости, спортивные результа­
ты, и самое полезное — доступ к приложе­
ниям и Ubuntu Store.
Позорное ПО
Canonical при ня ла под ход Apple, Google
и Microsoft и тре бу ет ре ги ст ра ции учет­
ных за пи сей для разре ше ния про смот ра
www.linuxformat.ru/subscribe
и установки приложений. Это ка жется чу­
ж дым и ненужным злом; в этом новом ми­
ре нет да же apt-get — на самом деле aptget работать не будет, так как root доступен
только для чтения, хотя мож но его пере­
мон ти ро вать и та ким об ра зом по лу чить
доступ к apt­get.
Предварительно установлены несколь­
ко новых и ста рых при ложений. Неко то­
рые — из настольных фаворитов, таких как
GIMP и LibreOffice. Canonical поставляет ряд
«сенсорных» при ложений, такие как «та­
инственный» Safari-agent (на базе WebKit)
браузер, почтовый клиент, медиа­плейеры
и т. д. Некоторые являются оболочками для
мобильных сайтов вроде Gmail и ма лопри­
влекательны; сенсорно­ориентированные
приложения гораздо приятнее и предлагают
заманчивые взгляд в возможное будущее.
Можно добавить учетные записи, такие
как Gmail, Facebook, Flikr и т. д., и Ubuntu ав­
томатически синхронизирует любые прило­
жения, к которым разрешен доступ. В Gmail
это син хронизирует кон так ты, ка лендарь
и элек тронную поч ту в под ходящих сен­
сорных приложениях, а ОС выдаст всплы­
вающие уведомления.
Ус тановив беспровод ное соединение,
вы, скорее всего, первым делом запустите
Планшет с Ubuntu Обзоры
браузер. Он совершенно беспомощен (без
плагинов и почти без опций), и по су ти не да­
ет доступа ко многим сервисам Google, взы­
вая к установке «современного» браузера.
Итак, ваш следующий шаг — загрузить пре­
дустановленный Firefox; и тут внешний лоск
начинает линять.
Firefox — браузер настольный; на дан­
ном эта пе для на столь ных при ло же ний
нет под держки экранной клавиатуры. Что
это значит? Без физической кла виа ту ры
вы не можете набирать, и нет способа от­
крыть экранную клавиату ру. Это явно от­
ме ча ет ся как серь ез ная ошиб ка и дол­
жно быть исправлено обновлением ОТА 11
в мае 2016 г. И это так же значит, что на дан­
ном этапе вы сможете загрузить LibreOffice
и документы, но не сможете редак тировать
их на планшете.
Сен сор ные при ло же ния вполне при­
лично работают — ус танови те терминал,
и экранная клавиату ра будет вызываться
на жатием на значок; но не так будет с клас­
си че ски ми на столь ны ми про грам ма ми.
Windows справляется, Android справляется,
Apple делает это. В Ubuntu экранная клавиа­
тура существует много лет — что же проис­
ходит? Мы подключили клавиатуру и мышь
через Bluetooth — легко и быстро, соеди­
нение восстанав ливается без каких­либо
хлопот, и вот мы уже с псевдонастольной
машиной с Ubuntu. Системные экраны пере­
ключаются в окно. Позорно, что на рабочем
столе окна потеряли возможность какой­
либо привязки — что пред лагает Unity —
и нельзя закрепить окно системного экра­
на у края.
Нельзя не сказать, что производитель­
ность ужасна. Мышь полудох лая, как и пе­
ремещение и изменение размеров окон. По­
хоже, что ускорения нет. Мы запуска ли Pi 2
Подключите его к дисплею, и... бум: Ubuntu
на весь экран.
на мониторе 4К, и он плавно работал на по­
добном SoC и без всякого ускорения. Firefox
в своем about:config сообщает, что ускоре­
ния нет, и это чувствуется.
Основные показатели браузера в основ­
ном такие: тест Octane дает 3813, JetStream —
23, Kraken — 10652 мс, SunSpider — 1240 мс
и Sysbench CPU — 11,8 с. На Asus Flip с по­
добным SoC мы увидели 6472 на Octane, 37,5
на JetStream, Kraken дал 11427 мс, SunSpider
806 мс и Sysbench 7,9 с.
Заключительной плиткой мозаики кон­
вер ген ции яв ля ет ся мик ро­HDMI вы ход.
Подключите его к дисплею, и... бум: вот вам
настольная Ubuntu на весь экран. На мони­
торе с «род ным» портом HDMI она рабо­
та ла безу пречно; рабочий стол планшета
> Планшет Ubuntu в режиме
полной конвергенции —
исключая клавиатуру
и мышь.
появ ляется на эк ра не, а планшет слу жит
сен сор ной па не лью. Жаль, нет ва ри ан та
двойного вывода.
Нам дос та лась чер ная мо дель Full
HD с раз ре ше ни ем эк ра на 1920 × 1200.
Экран обеспечивает качество изобра жения
с прием лемыми углами об зора, хорошей
цветопередачей и яркостью. У него 10­то­
чечный сенсор, но у нас не было возможно­
сти опробовать мультитач настолько широ­
ко. Навигационное приложение показа лось
кривоватым, но мы предположили, что про­
блема скорее в при ложении. Есть две ви­
димые тонкие по лос ки дина миков вдоль
основания дисплея. Они обеспечивают чис­
тый звук, разве что несколько ма ломощны
и не хватает низких частот. Так что мы име­
ем довольно стандартную производитель­
ность планшета и ноутбука.
Батарея зовет
Наш опыт рабо ты от ба та реи с пре ды ду­
щи ми те ле фо на ми Bq Ubuntu был ве ли­
колепен — и в работе и, главное, в режи­
ме ожи да ния, и это пе ре шло в план шет
М10. В режиме ожидания со включенными
Bluetooth, Wi­Fi и GPS за 65 часов заряд ба­
тареи упал на 45 %, что намекает на шесть
дней в режиме ожидания.
При работе мы имели 40 % спа да за три
часа непрерывного воспроизведения HD­
видео с дисплеем на 50 % яркости, что со­
став ляет 8 часов работы ба та реи — или,
попросту, хватит на целый день. Зарядка,
к со жа ле нию, от ни ма ет много вре мени:
3 часа для 50 % за ря да — слишком дол­
гое ожидание.
Пока трудно рекомендовать планшет Bq
Aquaris M10 Ubuntu обычным пользовате­
лям: он по­прежнему выглядит скорее ин­
ст ру мен том разработ чика. Так же на лицо
явный недостаток аппаратной оптимизации
с точки зрения ускорения. Вплоть до того,
www.linuxformat.ru/subscribe
что мы реально усомнились в готовности
Bq к вы пус ку. И не мы од ни: мож но ви­
деть, что люди на форуме Bq вопрошают,
как на нем ус та но вить Android. Будет ли
у Android здесь безопасная сеть?
Сравни те это с рас ска зом про то, как
Стив Джобс несколько дней ходил с самым
первым iPhone и отверг его, поскольку зад­
няя крышка поцарапа лась; вот такого вни­
мания к дета лям и ждут люди. Кто­нибудь
серьезно использовал Bq преж де, чем дали
добро на выпуск? Не думаю.
Слабая производи тельность, вя лость
и удру чающе долгая зарядка аккумулято­
ра — все эти проблемы могут быть устра­
нены обнов лениями программного обес­
печения, но почему это не бы ло сде ла но
до выпуска? У Canonical с Ubuntu ос тает­
ся бла го при ят ная воз мож ность, но ес ли
не приложить серьезных усилий и не сде­
лать его пригодным для ежедневного ис­
пользования, Google, Microsoft, Apple с ра­
до стью за пол нят эту ни шу. Мы че ст но
хотим полюбить это устройство, и искренне
надеемся, что обновления тут помогут. |
Вердикт
Bq Aquaris M10 Ubuntu Edition
Разработчик: Canonical
Сайт: www.bq.com
Цена: Ј 180 (Ј 220 Full HD)
Функциональность
Производительность
Удобство в работе
Оправданность цены
6/10
4/10
6/10
6/10
» Череда неудач, сбоев и проблем
вызывает скорее разочарование, чем
любовь к тому, что должно было стать
элегантным примером конвергенции.
Рейтинг 5/10
Август 2016 LXF212
|
17
Мобильные
новости
ANDROID НА ХРОМБУКАХ
Объединение открытых систем
Уже 3 хромбука совместимы с Play Store.
а ка на ле Chrome OS developer
Google добавила под держку Goo­
gle Play еще для двух хромбуков:
Acer Chromebook R 11 C738T и собственно­
го Google Chromebook Pixel (только версия
2015 г.). В середине июня начальную под­
держку Google Play первым полу чил Asus
Chromebook Flip. Та ким обра зом, те перь
приложения для Android можно запустить
на трех отдельных моделях хромбуков. Все­
го же в течение 2016 и 2017 гг. под держ­
ку Google Play по лу чат бо лее 60 хромбу­
ков и дру гих уст ройств под управ лением
Chrome OS.
Онлайн­издание PCWorld опубликова­
ло результаты собственного тестирования
Н
возможностей взаимодействия Asus Chro­
me book Flip с Play Store. Поль зо ва тель
хромбука получал доступ к огромному ко­
личест ву при ложений на Play Store, а са­
ми при ложе ния ра бо та ли очень хоро шо.
Да, не иде аль но: воз ни ка ли про бле мы
с уведомлениями, иногда приложения за­
ви сали или ава рий но за вер ша лись. За­
пускать приложения было необходимо ли­
бо в полноэкранном режиме, либо в окне
фик си ро ван но го раз ме ра. Од на ко для
предварительного релиза результат полу­
чен более чем достойный.
Та ким об ра зом, на чаль ная по пыт ка
ис поль зо ва ния при ложе ний для Android
на хромбу ках выглядит многообещающе,
> Chromebook взаимодействует с Play Store подобно планшету
под управлением Android 6.0 Marshmallow.
а к моменту включения в основную сбор­
ку Chrome OS реа лизация этой функции на­
верняка будет улучшена.
ЧАСЫ ПОТЕХИ
Не забудьте про часы!
о дан ным ис сле до ва тель ской
компании IDC, глобальный рынок
smart­часов «просел» во II кварта­
ле (Q2) 2016 г. на 32 %, причем поставки Apple
Watch по сравнению с 2015 г. упали на 55 %.
Но спад — первый на рынке «умных» часов,
возникшем в 2013 г. — в 2017 г. сменится
ростом, в связи с выпуском Apple и Google
осенью важных обновлений ОС своих уст­
ройств. Кроме того, все больше моде лей
smart­часов под держивают беспроводное
соединение LTE без подключения к смарт­
фону по Bluetooth. В пятерке основных про­
изводителей smart­часов только у Apple по­
казатели в Q2 снизились — несмотря на то,
что Apple Watch (1,6 млн поставок устройств
и 47 % рынка) по­прежнему наиболее попу­
лярны. Второй идет Samsung — 600 тыс.
уст ройств и 16 % рынка. Сле дующие три
позиции делят Lenovo, LG Electronics и Gar­
min — ка ж дая из них поставила на рынок
менее 300 тыс. «умных» часов. В целом же
П
18
|
LXF212 Август 2016
выпущено 3,5 млн устройств — по сравне­
нию с 5,1 млн в 2015 г., снижение на 32 %.
Прогноз на 2016 г. составляет 19,2 млн уст­
ройств — чуть меньше 19,3 млн в 2015 г. За­
то в 2017 г. поставки smart­часов возрастут,
по мнению IDC, до 28 млн. Спад в Q2 для
Apple Watch совпал со снижением началь­
ной цены этих устройств с $ 349 до $ 299.
Как ожидается, Apple выпустит следующее
поко ле ние Apple Watch и WatchOS 3 уже
в сентябре. Видимо, новое устройство бу­
дет под держивать LTE, став независимым
от со еди не ния с iPhone че рез Bluetooth.
Samsung Gear S2 и LG Watch Urbane так­
же LTE­совместимы. Значительно улучшит
под держку LTE осеннее обновление Android
Wear 2.0. За небольшую месячную пла ту
ряд провайдеров (AT&T, Verizon) позволя­
ют таким часам использовать номер при­
над лежащего их пользователю смартфона,
и не ис клю че но рас про стра не ние это го
под хо да на про вай де ров по все му ми ру.
> В марте Apple
объявила о снижении начальной
цены на модели
Apple Watch с $ 349
до $ 299.
www.linuxformat.ru/subscribe
Улучше ние ди зай на — еще один спо соб
привлечь покупателей. Как и снижение цен:
не особо превосходя смартфон возможно­
стями, сто́ят смарт­часы значительно доро­
же. Наконец, в ближайшие 2 года на рынок
«умных» часов выйдут популярные брен­
ды «тра диционных» часов, что так же спо­
собствует его росту. Свои «умные» модели
уже представили Casio, Fossil и Tag Heuer.
Источники: www.pcworld.com; www.computerworld.com
Нынешний спад поставок «умных» часов сменится подъемом в 2017 г.
Мобильные новости
СТАТИСТИКА
Хромбук против ноутбука
Поставки хромбуков увеличатся в этом году и продолжат расти.
ост поставок хромбуков в этом го­
ду выра жается двузначным числом,
но в качестве замены ПК с Windows,
на что так на деялась Google, эти устройства
использоваться так и не ста ли. По инфор­
мации ана литика компании Gartner Микако
Китагава [Mikako Kitagawa], в текущем году
поставки хромбуков подскочили примерно
на 18 % по сравнению с 2015 г.: это один
из немногочисленных сек торов рынка ПК,
где наблюдается рост на фоне общего спа­
да. В 2015 г. поставлено 6,5 млн хромбуков,
прогноз на нынешний год составляет от 7,5
до 8 млн устройств (в Q1 2016 г. поставлено
приблизительно 1,65 млн единиц, данные
за Q2 в настоящий момент еще недоступ­
ны). Всего же на рынок ПК в этом году ожи­
дается поставка 290 млн единиц раз лич­
ных уст ройств; по мимо хром бу ков, рост
наблюдается в сег мен тах Windows­based
устройств 2­in­1 и игровых ПК.
Хо ро шим спро сом хром бу ки поль зу­
ют ся в Се вер ной Аме ри ке; туда в 2015 г.
Р
отправлено 90 % от их общего количества.
Вторым по величине рынком была Западная
Европа. А вот в Южной Америке, Азии и Аф­
рике эти устройства не преуспели, посколь­
ку в развивающихся странах подключае­
мость представляет большую проблему.
Об ра зо ва ние — круп ней шая об ласть
ис поль зо ва ния хром бу ков: та кие уст­
ройства приобретают студенты, их устанав­
ливают в классах и аудиториях. Беспровод­
ная связь доступна в большинстве учебных
за ве де ний США и Ка на ды. У хром бу ков
прекрасные перспек тивы для дальнейше­
го рас про стра нения на по тре би тельском
и бизнес­рынках, но заменой Windows ПК
они стать пока не смогли. Хромбуки завое­
ва ли популярность в качест ве не дорогих
легких ноутбуков, созданных для web­ком­
пьютинга: они работают под управлением
Chrome OS, комплек туются накопителями
ог раниченного объема, для большинст ва
приложений им требуется соединение с Ин­
тернетом. Хромбук отпу гивает компании,
> HP Chromebook 11
G5 с экраном Gorilla
Glass NBT.
пред по чи таю щие за пус кать при ложе ния
оффлайн в Windows. Тем не менее, в биз­
не се хром бу ки уже на хо дят при ме не ние
в качестве эффек тивных вспомогательных
ноутбуков или тонких клиентов для внут­
ренних облачных приложений.
Google продолжает добавлять в хромбу­
ки интересные опции, например, возмож­
ность выполнять приложения для Android.
Основными поставщиками хромбу ков яв­
ляются Acer, HP и Dell.
ЭВОЛЮЦИЯ TEGRA
От смартфонов до автомобилей
Nvidia следует за потребностями рынка.
етальную информацию о чипе, ко­
торый пресс­секретарь Nvidia на­
звал “Tegra­next”, ком па ния об­
на ро ду ет в хо де кон фе рен ции Hot Chips
в Купертино. Вероятно, это будет чип Teg­
ra с кодовым именем Parker для еще не вы­
пу щен но го ав то мо бильно го ком пью те ра
Nvidia Drive PX2, преемник объяв ленного
в нача ле 2015 г. чипа Tegra X1. Представив
Drive PX 2 на CES в январе, Nvidia заявила
об использовании в нем «чипа Tegra сле­
дующего поколения» — опять­таки, пока
не раскрывая дета лей.
Чипы Tegra одно время были популяр­
ны в смартфонах, планшетах и портатив­
ных медиаплеерах, но не выдержа ли кон­
ку рен ции. Но вей шие мик ро схе мы Nvidia
Tegra предна значены для автопилотируе­
мых ав то мо би лей, их мощ ные гра фиче­
ские возможности помогают распознавать
Источники: www.computerworld.com
Д
объек ты, знаки и сигна лы. Чипы Tegra ус­
та нов ле ны в план ше тах Google Pixel C
и встраиваемой платформе Nvidia Jetson,
планшетах Shield tablets и STB­приставках
для TV. Од на ко не ко то рые под роб но сти,
уже известные о Parker, позволяют утвер­
ждать, что он гораздо лучше под ходит для
ав томоби лей — в отличие от мобильных
устройств, где срок службы батареи имеет
первостепенное значение.
У Parker будет четыре ARM­based ядра
Cortex­A57 и два ядра Denver2 собственной
разработки, интегрированный графический
процессор архитек туры Pascal — такой же,
как в по след них мо де лях Nvidia GeForce
GTX1080, 1070 и 1060, и унифицированная
память для ускорения коммуникации меж­
ду CPU и GPU. Предположительно, чип Park­
er изготовлен по технологии 16­нм FinFET
со стековым расположением транзисторов.
> Действительно ли
чип Parker является тем самым
“Tegra-next”?..
www.linuxformat.ru/subscribe
Два го да на зад, в разгар войн меж ду
64­раз ряд ны ми мо биль ны ми чи па ми,
Nvidia са мо уве рен но у т вер жда ла, что
на презентации на Hot Chips ее 64­битный
чип Tegra превзойдет Apple A7. Сбылся ли
этот про гноз, по ка жут только ито ги Hot
Chips, уже известные нашим читателям. |
Август 2016 LXF212
|
19
Tizen Знакомимся на практике
Tizen Emulator Manager
Вооружившись накопленными знаниями, Лада Шерышова принимается
за практические действия с ОС Tizen.
прошлом номере мы нача ли знакомство с OC Tizen и на­
учились устанавливать набор средств разработки Tizen SDK,
который содержит инструменты для создания собственных
приложений под различные устройства. Одним из них, который,
несомненно, будет полезен разработчикам, является эмулятор вир­
туальных устройств.
Он со дер жит пол ный на бор ин ст ру мен тов для тес ти ро­
вания и отлад ки при ложений перед их ус тановкой на ре альное
устройство.
В концепции Tizen виртуальное устройство — это виртуальная
машина (ВМ) с определенным набором параметров оборудования,
включая образ файловой системы. С помощью эмулятора можно
создавать большое количество виртуальных машин на базе ОС Ti­
zen с самими разными настройками.
Эмулятор Tizen основан на QEMU — приложении с открытым
исходным кодом, полностью эмулирующем аппаратное обеспече­
ние различных устройств. Оно включает виртуальный процессор,
память, все необходимые подсистемы, такие как сетевые адапте­
ры и видеоплаты, а так же различные периферийные устройства.
Следует учитывать, что в настоящее время Tizen SDK под держивает
только архитек туру процессора x86.
Что же позволяет делать эмулятор Tizen? Во­первых, предо ­
ставляет полную эмуляцию устройства. Во­вторых, позволяет мо­
делировать события с помощью панели управления эмулятором
(Emulator Control Panel). В­третьих, ускоряет выполнение операций,
используя аппаратные возможности центрального (CPU) и графи­
ческого процессора (GPU). И многое другое...
Для создания и запуска эмулятора виртуальных устройств ис­
пользуется программа Tizen Emulator Manager. С Emulator Manager можно создавать экземпляры эмуляторов Tizen для различных
устройств и платформ. К таким устройствам относятся мобиль­
ные телефоны (mobile), носимые устройства (wearable), например,
часы, и TV.
Чтобы поближе познакомиться с платформой и начать разра­
ботку приложений под Tizen, попробуем установить эмулятор Tizen
на свой компьютер, создать и запустить виртуальное устройство.
> Рис. 1. Запускаем
Emulator Manager
из Tizen IDE.
В
Наш
эксперт
Лада Шерышова
долгие годы рабо­
та ла на коммерче­
ские корпорации,
создавая промыш­
ленные высокона­
дежные информа­
ционные системы.
Но пришло время
сбросить оковы
и применить свои
знания и опыт
в работе со сво­
бодным ПО.
Устанавливаем эмулятор Tizen
Emulator Manager можно так же запустить из среды разработки
Tizen IDE. Для этого щелкните по иконке Emulator Manager в разде­
ле Connection Explorer (рис. 1).
2 В главном окне Emulator Manager (рис. 2) на жимаем Create New
Emulator и выбираем тип устройства, для которого хотим создать
эмулятор.
3 В появившемся диа логовом окне Create New Emulator (рис. 3) за­
даем параметры создаваемого виртуального устройства.
» В по ле VM Name вве ди те на име но ва ние вир ту аль но го уст­
ройства или оставьте его по умолчанию. При наименовании ВМ ру­
ководствуйтесь следующими правилами:
> Длина наименования должна быть не более 20 символов.
> Разные виртуальные машины не должны иметь одинаковые
наименования.
> Допускаются только символы ­, _, 0–9, a–z и A–Z.
» В поле Platform выберите из списка платформу. Обратите внима­
ние, что Emulator Manager так же под держивает пользовательские
платформы. Если у вас есть файл образа диска пользовательской
платформы, вы можете зарегистрировать ее и да лее использовать
для создания виртуальной машины. Для этого на жмите на иконку
и загрузите необходимый файл образа диска (рис. 4). Подроб­
нее о создании пользовательских платформ мы рассмотрим ниже.
» В разделе Mobile Templates выберите шаблон устройства на осно­
вании следующей информации: Resolution — разрешение экрана;
Display Size — размер экрана (в дюймах); Skin — стиль графическо­
Эмулятор Tizen можно установить с помощью утилиты Update Manager. Запускаем приложение, переходим на вкладку All Packages,
выбираем устройство требуемого типа и версии и для него напро­
тив пакета Emulator на жимаем кнопку Install. (Подробнее о процес­
се установки приложений с помощью Update Manager см. в LXF211.)
Создаем и запускаем виртуальное
устройство
Откроем эмулятор и созда дим c его помощью новое устройство.
С этой целью выполним следующие шаги.
1 Запускаем Emulator Manager.
» В Ubuntu переходим по ссылке Desktop > Start Menu >
Emulator Manager.
» В Windows — Start > All Programs > Tizen SDK >
Emulator Manager.
» В Mac OS — Finder > Applications > Tizen SDK > Emulator Manager.
20
|
LXF212 Август 2016
> Рис. 2. Создаем новое виртуальное устройство.
www.linuxformat.ru/subscribe
Знакомимся на практике Tizen
> Рис. 3. Задаем параметры нового виртуального устройства.
го интерфейса виртуального устройства; RAM Size — объем опера­
тивной памяти; Processors — количество процессоров.
Для мобильных устройств на выбор пред лагается 2 шаблона:
> HD Mobile С разрешением 720 × 1280 и размером экрана 4,97 дюйма
> WVGA Mobile С разрешением 480 × 800 и размером экрана 4 дюйма
Для носимых устройств доступны следующие шаблоны:
> 320 × 320 wearable 320 × 320, 1,43 дюйма
> 360 × 480 wearable 360 × 480, 2,0 дюйма
> Wearable circle 360 × 360, 1,69 дюйма
Выберите требуемый шаблон и на жмите кнопку Confirm, распо­
ложенную в правой верхней части окна.
Новое виртуальное устройство будет добавлено в список эму­
ляторов (рис. 5).
Если вы хотите сконфигурировать дополнительные настройки
для виртуального устройства, в окне создания эмулятора на жмите
кнопку Advance и задайте требуемые параметры (рис. 6). О них бу­
дет подробно рассказано при рассмотрении редак тирования вир­
туального устройства.
Чтобы скрыть панель дополнительных настроек, еще раз на­
жмите кнопку Advance.
4 Запускаем виртуальное устройство, на жав кнопку
вишу Enter.
или кла­
Изучаем возможности
Рассмотрим основные возможности Emulator Manager.
» Фильт руем список вир туальных уст ройств. В Emulator Manager мож но отфильт ровать список виртуальных уст ройств с по­
мо щью кно пок про фи ля
, ко то рые по зво ля ют от би рать
устройства по выбранному типу. Включая и выключая эти кноп­
ки можно полу чать списки устройств в зависимости от выбран­
ной комбинации.
> Рис. 5. Новое устройство в списке эмуляторов.
» Запускаем эмулятор виртуального устройства. В главном окне
Emulator Manager (Emulator List) выбери те в списке нуж ное уст­
ройство и на жмите кнопку
, либо пункт Launch из контекст­
ного меню, которое появляется при щелчке на устройстве правой
кнопкой мыши.
» Редак тируем вир туальное уст ройст во. Выбрав в списке тре­
буемое устройство, щелкните на иконке
, либо выберите пункт
Modify из контекстного меню. В появившемся окне Modify VM вне­
сите необходимые изменения, после чего на жмите кнопку Con­
firm (рис. 7):
> Раздел Device позволяет изменить шаблон устройства вирту­
ального устройства, выбрав его из списка.
> В разделе Display отобра жаются такие параметры устройства,
как разрешение (поле Resolution) и размер экрана (поле Size), ко­
то рые не дос тупны для изме не ния и за пол ня ют ся ав то ма тиче­
ски на основании настроек выбранного шаблона. Поле Skin за да­
ет стиль пользовательского интерфейса виртуальной машины. Его
можно выбрать из пред лагаемого списка.
> Поле Processors задает количество процессоров (1, 2 или 4).
> Поле RAM определяет объем оперативной памяти (доступные
значения — 512 МБ, 768 МБ и 1024 МБ).
> Раздел Sensor позволяет выбрать для устройства различные
сенсоры. На выбор пред лагаются следующие: accelerometer (аксе­
лерометр или G­сенсор), gyroscope (гироскоп), geo­magnetic (гео­
магнитный датчик), proximity (датчик приближения), light (датчик
> Рис. 4. Регистрация новой платформы при создании виртуального
устройства.
> Рис. 6. Дополнительные настройки виртуального устройства.
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
21
Tizen Знакомимся на практике
> Рис. 7. Редактирование параметров виртуального
устройства.
освещенности), haptic (так тильный датчик), pressure (датчик атмо­
сферного давления), ultraviolet (сенсор ультрафиолета) и heartbeat
rate (датчик измерения пульса).
> Поле Connectivity определяет, будет ли использоваться сете­
вая файловая система (NFC).
> В поле File Sharing вы можете установить совместный доступ
вашего компьютера и эмулятора к необходимой папке. Для этого
ука жите в поле общий для использования ката лог.
> Поле Camera определяет тип камеры (фронтальной или тыло­
вой, в зависимости от настроек шаблона): web­камера (WebCam)
или виртуальная камера (Virtual). В слу чае выбора виртуальной
камеры вы можете выбрать файл изобра жения или оставить его
по умолчанию.
> Раздел Network за дает параметры настройки сетевого обо­
рудования.
> В разделе HW Support вы можете включить (или отключить)
аппаратную под держку виртуальной машины. Чтобы приложения
загру жа лись и работа ли быстрее, рекомендуется включить в на­
стройках виртуальной машины такие параметры, как CPU VT и GPU.
CPU VT — па ра метр, от ве чаю щий за аппа рат ную под держ­
ку вир туа ли за ции. Ес ли про цес сор компью тера под держивает
аппа рат ную вир туа ли за цию и аппа рат ный мо дуль ус та нов лен,
вы можете включить или отключить этот параметр. Данная опция
недоступна, если ваш компьютер не имеет аппаратной под держки
виртуа лизации. Подробнее об использовании аппаратной виртуа­
лизации мы рассмотрим чуть позже.
GPU — под держ ка аппа рат ного ус коре ния OpenGL. OpenGL
(Open Graphic Library) — платформонезависимый программный
> Рис. 8. Список
доступных шаблонов виртуальных
устройств.
22
|
LXF212 Август 2016
интерфейс с открытым исходным кодом для работы с двухмер­
ной и трехмерной графикой, под держивающий аппаратное уско­
рение при на личии соответствующих драйверов. Если драйвер гра­
фической карты вашего компьютера под держивает аппарат ное
ускорение, и параметр GPU включен (ON), функция будет работать
правильно. В противном слу чае, не пытайтесь включать этот ре­
жим, иначе работа видеоплейера или камеры может заметно ухуд­
шиться. Если опция GPU недоступна, установите последнюю вер­
сию графического драйвера.
Обратите внимание: если параметр GPU установлен в значение
OFF или недоступен, функция работать не будет! В Mac OS допол­
нительно можно выбрать версию OpenGL ES (OpenGL for Embedded
System — OpenGL для встраиваемых систем). OpenGL ES — под­
множество графического интерфейса OpenGL, специально раз­
работанное для мобильных телефонов, карманных компьютеров,
игровых консолей и т. д. Для выбора доступны версии v2.0 & v3.0
и v1.1 & v2.0.
» Удаляем виртуальное устройство. Выберите в списке устройство,
которое хотите уда лить, и щелкните по иконке
, либо на жмите
в контекстном меню пункт Delete. В появившемся окне для подтвер­
ждения уда ления на жмите Ok.
» Экспортируем образ платформы виртуального устройства Для
требуемого устройства откройте контекстное меню, выберите Ex­
port as и введите имя файла и путь для его сохранения. Да лее Emulator Manager пред ложит вам создать сжатый образ более ма лень­
кого размера. Если вы согласны, на жмите Yes. В противном случае
выберите No.
» Просмат риваем де тальную информацию о вир туальном устройстве Щелкните по строке устройства; затем щелчком правой
кнопкой мыши, выберите из контекстного меню пункт Detail.
» Форма тируем вир туальное уст ройст во Для тре буе мо го уст­
ройства выберите из контекстного меню пункт Reset и в окне под­
тверждения форматирования на жмите Ok.
Создаем шаблоны виртуальных
устройств
Tizen Emulator Manager предоставляет разработчикам набор пре­
допре де ленных шаб лонов вир ту альных уст ройств, с помощью
ко торых мож но соз да вать и за пус кать эк земп ляры раз личных
эмуляторов.
В главном окне Emulator Manager на жимаем кнопку Templates
и загру жаем панель шаблонов (рис. 8). Здесь вы можете создавать,
> Рис. 9. Создаем новый шаблон.
www.linuxformat.ru/subscribe
Знакомимся на практике Tizen
> Рис. 11. Список доступных
платформ.
> Рис. 10. Новый шаблон в списке.
редак тировать, клонировать и уда лять шаблоны, а так же просмат­
ривать список предопределенных и сгенерированных шаблонов.
Созда дим новый шаблон виртуального устройства. Для этого
на жмите на иконку . В открывшемся диа логовом окне New Tem­
plate (рис. 9) задайте следующие поля:
» В поле Device Name введите наименование шаблона виртуально­
го устройства или оставьте его по умолчанию.
» В по ле Profile выбери те из дос тупных тип вирту ального уст­
ройства (mobile или wearable).
» В поле Display за дайте разрешение экрана для выбранного ти­
па устройства, взяв его из списка. Если надо, измените размер эк­
рана (поле Size) и загрузите файл стиля графического интерфей­
са (поле Skin).
» В поле Processor выберите из списка количество процессоров
в устройстве.
» В по ле RAM за дай те объем ОЗУ (вы бе рите из спи ска од но
из пред ложенных значений: 512 МБ, 768 МБ и 1024 МБ). Учтите,
что в 32­битной Windows доступна только память объемом 512 МБ.
» В разделе Sensor отметьте га лочкой необходимые сенсоры.
» В поле Connectivity отметьте, будет ли использоваться сетевая
файловая система (NFC).
» В поле Camera выберите тип камеры — тыловая (Rear) или фрон­
тальная (Front).
Опреде лив параметры устройства, на жми те кнопку Confirm.
Созданный шаблон будет добавлен к списку существующих шаб­
лонов и помечен зеленой иконкой (рис. 10). Обратите внимание, что
предопределенные шаблоны отмечены синим цветом.
Теперь рассмотрим основные операции с пользовательскими
шаблонами.
» Редак тирование шаблона Для редак тирования шаблона щелк­
ните по его строке в списке и по иконке
, либо выберите пункт
Modify из кон текст но го ме ню, ко торое появ ля ет ся при щелчке
на шаблоне правой кнопкой мыши. Внеся необходимые изменения,
на жмите кнопку Confirm.
» Клонирование шаблона Щелкните по строке шаблона и по икон­
ке
, либо выберите пункт Clone из контекстного меню. В появив­
шемся окне выполните необходимые изменения и на жмите кноп­
ку Confirm.
» Просмотр детальной информации о шаблоне Щелкните по стро­
ке шаблона; затем, щелкнув здесь же правой кнопкой мыши, выбе­
рите из контекстного меню пункт Detail.
» Удаление шаблона Щелкните по строке шаблона и по иконке ,
либо выберите пункт Delete из контекстного меню. Здесь будьте ос­
торожны, т. к. уда ление шаблона происходит сразу же, без предва­
рительного подтверждения!
Так же обра ти те внимание на то, что для пре допре де ленных
шаблонов доступны только операции клонирования и просмотр де­
тальной информации. Редак тировать и уда лять их нельзя!
Создаем свою платформу
В главном окне Emulator Manager на жимаем кнопку Platforms и за­
гру жаем панель платформ (рис. 11), в которой вы можете создавать
собственные платформы, редак тировать и уда лять их, а так же про­
сматривать список уже сгенерированных платформ.
Что бы соз дать но вую плат фор му, щелк ни те по иконке
.
В появившемся диа логовом окне New Platform (рис. 12) в поле Name
введите наименование платформы, в поле Base Platform выберите
из списка ба зовую платформу, а в поле Image File ука жите путь
> Рис. 13. Новая
платформа
в списке.
> Рис. 12. Создаем новую платформу.
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
23
Tizen Знакомимся на практике
> Рис. 14. Удаление
платформы.
> Рис. 16. Работаем с Emulator Manager через CLI.
к файлу образа (он обязательно должен иметь расширение .x86!).
Если требуется, введите описание платформы в поле Description.
После этого на жмите кнопку Confirm.
Соз данная плат форма будет добав лена в список платформ
и помечена зеленой иконкой (рис. 13).
Вспомним, что новую платформу можно так же добавить на эта­
пе создания виртуального устройства.
Чтобы уда лить платформу, на жмите на иконку
или, щелкнув
по названию платформы в списке, выберите пункт Delete из контек­
стного меню. В появившемся окне Delete Platform Image (рис. 14)
подтвердите операцию уда ления, на жав кнопку Ok. Если при уда­
лении вы выберете опцию Delete base image file on disk, то файл об­
раза диска будет безвозвратно уда лен с компьютера.
Для ре дак тирова ния плат формы щелкните по ее названию
в списке платформ и на жмите иконку
или выберите пункт Mo­
dify из контекстного меню, щелкнув правой кнопкой мыши. В поя­
вившемся окне Modify Platform (рис. 15) внесите необходимые из­
менения (для редак тирования доступно только поле Description)
и на жмите кнопку Confirm.
Обратите внимание, что предопределенные в Emulator Manager
платформы редак тировать и уда лять нельзя!
Аппаратная поддержка виртуализации
Для аппа рат ной под держ ки вир туа ли за ции эмуля тор Tizen ис­
пользует KVM (Kernel­based Virtual Machine) для Ubuntu или HAX
(Hardware Accelerated Execution) для Windows и Mac OS. Для справ­
ки: KVM — программное решение с открытым исходным кодом,
предназначенное для создания и под держки виртуальных машин
в среде Linux на базе платформы x86; НAX — решение от Intel, ис­
пользующее аппаратные возможности виртуа лизации и позволяю­
щее значительно ускорить работу эмулятора для x86­устройств.
Как мы уже знаем, включить эту опцию можно в Emulator Manager
в детальных настройках виртуальной машины (параметр CPU VT).
Если эта опция недоступна, проверьте выполнение условий, пере­
численных ниже, и установите KVM или HAX.
» В Ubuntu для работы с KVM необходим процессор с аппаратной
поддержкой виртуа лизации. Необходимые расширения имеют про­
> Рис. 15. Редактирование платформы.
24
|
LXF212 Август 2016
цессоры Intel и AMD, использующие технологию виртуа лизации
Intel VT­x и AMD­V соответственно. Чтобы проверить, под держива­
ет ли ваш процессор аппаратную виртуа лизацию, выполните сле­
дующую команду:
$egrep ­c ‘(vmx|svm)’ /proc/cpuinfo
Если команда вернет 0, то ваш процессор аппаратную виртуа ли­
зацию не под держивает. В противном случае, она имеется.
Возможна ситуация, что аппаратная виртуа лизация отключена
в настройках BIOS. Проверьте настройки и, если необходимо, вклю­
чите эту функцию.
» В Windows для работы с HAX необходим процессор с под держкой
технологии Intel VT­x и включенные настройки NX в BIOS.
» В Mac OS потребуется процессор Intel с установленными обнов­
лениями прошивки EFI.
Для установки KVM в Ubuntu, как правило, не требуется никаких
действий, поскольку KVM является часть ядра операционной сис­
темы. Драйвер HAXM (HAX Manager) в случае Windows и Mac OS ус­
танавливается во время инсталляции Tizen SDK. Если происходит
сбой при установке этого драйвера со ссылками на VТ, проверьте
свойства процессора и настройки BIOS. Если сообщения об ошиб­
ке указывают на NX, включите опции NX­ (или PAE­ и DEP­) в BIOS.
Необходимо так же проверить, под держивает ли ваша операцион­
ная система функции NX.
Итак, чтобы запустить эмулятор с аппаратной под держкой вир­
туа лизации, в Emulator Manager установите опцию CPU VT в значе­
ние ON. Для этого откройте настройки эмулятора виртуального уст­
ройства для редак тирования и на жмите кнопку Advanced.
Работа через CLI
Соз давать, ре дак тировать, уда лять и просмат ривать виртуаль­
ные устройства можно так же и через интерфейс командной стро­
ки (CLI). Для этого необходимо будет запустить следующий дво­
ичный файл:
» В Ubuntu — <TIZEN_SDK>/tools/emulator/bin/em-cli
» В Windows — <TIZEN_SDK>\tools\emulator\bin\em-cli.bat
Синтаксис выполнения команды:
­em­cli [global_options] <COMMAND> [command_options]
Ниже перечислены основные команды для работы с Emulator
Manager через CLI:
» create Создает новую виртуальную машину
» create­image Создает образ новой платформы
» delete Уда ляет виртуальную машину
» detail Выдает детальную информацию о настройках виртуаль­
ной машины
» launch Запускает виртуальную машину
» list­platform Отобра жает список доступных платформ
» list­template Отобра жает список доступных шаблонов
устройств
» list­vm Отобра жает список всех созданных виртуальных машин
» modify Редак тирует конфигурацию виртуальной машины
» reset Сбрасывает образ диска виртуальной машины
Для полу чения детальной информации о командах восполь­
зуйтесь системой помощи Emulator Manager, выполнив в команд­
ной строке em­cli ­h (рис. 16). |
www.linuxformat.ru/subscribe
Сравнение Менеджеры информации
Сравнение
Каждый месяц мы сравниваем тонны
программ – а вы можете отдыхать!
Менеджеры информации
Не будучи Тони Старком, Маянк Шарма вынужден смириться с использованием
персональных менеджеров информации вместо Пеппер Поттс.
Про наш тест...
Как сказано во введении, в вопросе
за дач PIM консенсуса нет. Вы да же
не можете привести разработчиков
к соглашению по поводу их состава,
поскольку у ка ж дого, судя по всему,
свое представление об этом. В наше
Сравнение мы включили приложения,
позиционирующие себя как PIM,
и оценили их функции, включенные
по умолчанию. Как минимум, они
должны содержать ка лендарь, а так же
инструменты планирования за дач
и управления адресной книгой и чер­
новыми заметками. Однако многие
менед жеры, похоже, осознают, что
для разных пользователей PIM может
означать разные вещи. Эти приложения
весьма гибкие и могут обзаводиться
новыми функциями через дополнения
и плагины. Последние версии этих
менед жеров были протестированы
на рабочем столе Mate в Ubuntu 16.04.
Единственным исключением был Kontact, который имеется в рабочем столе
KDE в Fedora 23.
У
Наша
подборка
» Evolution
» Kontact
» Makagiga
» Mozilla
Lightning
» Osmo
26
|
прав ление всей персональной
информацией — не легкая за­
дача. Ин фор ма ция по сту па ет
из разных источников и иногда
одновременно, и задача соотнести всю эту
ин фор ма цию и управ лять ею так, что бы
она была готова к использованию, больше
не может выполняться вручную. Вы скорее
перепору чите это дело приложению и со­
сре до то чи тесь на выполне нии бо лее на­
сущных задач.
Менед жер персональной информации,
или PIM, разработан, чтобы помочь вам ор­
ганизовать час ти информации и, по су ти,
функционирует как ваш цифровой персо­
нальный органайзер. Вы можете применять
LXF212 Август 2016
этот менед жер для планирования своего
расписания и отслеживания предстоящий
событий, встреч и переговоров.
Хотя эта категория довольно размытая,
в большинстве PIM есть инструменты для
управления контак тами, задачами и встре­
ча ми, и они по мо га ют до ку мен ти ро вать
и управ лять раз ны ми ви да ми тексто вых
заметок и прочих персональных данных.
Многие PIM так же включа ют ка лен дарь,
планировщик и прочие подобные приложе­
ния — или в виде основных функций или
в качестве опциональных дополнений.
Часто все эти функции обрабатываются
отдельными приложениями, но PIM, кото­
рые мы тестирова ли, являются специа ли­
зированными приложениями, которые по­
зво лят вам вла деть си туацией, управ ляя
этими функциями из единого хорошо увя­
занного интерфейса.
PIMы, которые мы тестировали — специализированные многофункциональные приложения.
www.linuxformat.ru/subscribe
Менеджеры информации Сравнение
Календарь и задачи
Не пропускайте назначенной встречи.
В
озможность управлять вашим рас­
писанием — одна из самых основ­
ных функций PIM. В этом отноше­
нии функции ка лендаря Evolution, Kontact
и Lightning вполне достойные.
Evolution пред ла гает сразу несколько
ви дов ка лен да ря, вклю чая ото бра же ние
дня и недели, а так же рабочей недели, и т. п.
Так же включены список за дач и отобра же­
ние текущих и предстоящих за дач. За дачи
можно фильтровать посредством настраи­
ваемого списка дея тельности: например,
дни рож дения, личные и телефонные звон­
ки и т. д. Щелкните правой кнопкой по ка­
лендарю, чтобы добавить новое совещание,
событие на весь день, новую встречу или
новую за дачу. Окна для определения ка ж­
дого типа этих за дач имеют собственные
соответствующие опции.
Kontact тоже име ет не сколько ви дов
ка лендаря, и через меню действий можно
создать новое событие или новую за дачу,
при чем и то, и дру гое от крывает од но
и то же окно. Как и в Evolution, задачам мож­
но при пи сы вать при ори те ты и мар ки ро­
вать «весь день». Определять напоминания
и периодичность можно и в Kontact, и в Evolution. Kontact вдобавок по зво ля ет опре­
де лять шаблоны для за дач, что помогает
сэкономить время при создании новых за­
дач. И Evolution, и Kontact по зво ляют от­
ме чать ход вы пол не ния дан ной за да чи
в процентах.
Mozilla Lightning пред лагает умный ин­
терфейс, который с ходу отобра жает мас­
су информации: можно просматривать все
запланированные события; события за сле­
дующие 7, 14 и 31 день; события в данном
ка лендарном месяце; события в выделен­
ном на данный момент дне, и т. д. Вы про­
сто щелкаете по дате, чтобы определить но­
вую задачу или новое событие. Интерфейс
для этих двух действий похожий, разве что
с незначительными различиями. Событие
имеет дату нача ла, дату окончания и время,
на протяжении которого задача имеет один
из предопределенных статусов — таких как
«в процессе», «завершено», и т. д.
Makagiga и Osmo пред лагают простой
ка лендарь. В Makagiga вы щелкаете по да­
те, чтобы добавить за дачу с помощью его
простого интерфейса, который позволяет
> Kontact предлагает отличный обзор предстоящих сроков выполнения.
Вердикт
приписывать задаче приоритет и выбирать
дату и время. Приложение имеет разумно
разработанный интерфейс, позволяющий
быст ро просмат ривать за дачи на зав тра,
на остаток недели и на месяц.
Опции для определения за дач в Osmo
размещены во вкладках Basic и Advanced.
Вкладку Basic можно использовать для оп­
ределения даты и времени и чтобы присво­
ить за даче приоритет, а вкладка Advanced
по зво ля ет, на при мер, от ме тить за да чу
как по вто ряю щую ся и оп ре де лить со от­
ветствующие свойства.
Evolution
★★★★★
Kontact
★★★★★
Mozilla Lightning
★★★★★
Makagiga
★★★★★
Osmo
★★★★★
» Makagiga
и Osmo далеко
до остальных
трех.
Контакты и заметки
Отличайте друзей от врагов.
Н
е ко то рые PIM по зво ля ют вес ти
список контак тов, и Kontact в этом
от ношении лидирует. Его ад рес­
ная книга имеет разные виды, где трехпа­
нельный вид по умолча нию ото бра жа ет
кон так ты в ал фа вит ном поряд ке вме сте
с подробностями о них. Он так же создает
QR­коды и добавляет к ка ж дому контак ту
ключ OpenPGP, чтобы шифровать вашу пе­
реписку. Журнал [Journal] в Kontact тоже
очень прост в исполь зовании и включает
хорошие функции редак тирования.
Evolution с небольшим отставанием за­
нимает второе место. Его ад ресная книга
дает вам выбор вида card со ступенчатыми
столбцами, или вида column, который допу­
скает настройку и исправления. Кроме того,
как и в Kontact, вы можете добавить к кон­
так ту ключ PGP или сертификат X.509. Evolution имеет модуль memo, но он позволя­
ет только соз да вать простые доку мен ты
в простом текстовом формате.
Mozilla Lightning не управ ляет контак­
тами и ос тав ляет эту за дачу на откуп ад­
ресной книге Thunderbird. Она пред лагает
> Evolution и Kontact
предлагают адресную книгу и компонент создания
заметок.
Вердикт
Kontact
★★★★★
Mozilla Lightning
★★★★★
Evolution
простой двух панельный вид, где наверху
ото бра жен список кон так тов в алфа вит­
ном порядке и подробности в нижней час­
ти. В Thunderbird по умолча нию нет ком­
понен та за ме ток, но его лег ко до ба вить,
выбрав из впечатляющего списка допол­
не ний. И это всё рав но луч ше, чем Makagiga, где не под держива ют ся кон так ты,
а разве что заметки в простом текстовом
формате, сложном тексте или HTML. Osmo
тоже не ра дует, поскольку под держивает
только формат CSV. Однако благодаря его
компоненту создания заметок вы можете
соз да вать за мет ки в про стом тексто вом
формате, который так же предусматривает
защиту паролем.
www.linuxformat.ru/subscribe
★★★★★
Makagiga
★★★★★
Osmo
★★★★★
» И опять, выби­
райте Evolution,
Kontact или
Lightning.
Август 2016 LXF212
|
27
Сравнение Менеджеры информации
Удобство в использовании
Сотрудничество c с менеджерами.
Н
екоторые из наших PIM привлекают для
раз ных сво их функ ций сторонние при­
ложения, что добавляет сложности взаи­
модейст вию с поль зовате лем. На удобст во в ис­
поль зо ва нии конкретных при ло же ний так же
влияет состав их пакетов. Mozilla Lightning разра­
ботан в качестве дополнения к почтовому клиенту
Thunderbird и добавляет функции ка лендаря и пла­
нировщика. В противополож ность ему, Makagiga
не за висим и умеет обзаводиться новыми функ­
циями через плагины.
Да лее имеется Kontact, который состоит из раз­
ных приложений и координируется группой разра­
ботчиков, работающих в KDE в группе PIM.
Все остальные наши PIMы не привязаны к ка­
кому­то конкретному рабочему окружению и явля­
ются независимыми приложениями.
И вследствие этого мы будем рассматривать,
как они взаимодействуют с другими компонента­
ми, на рабочем столе Mate, чтобы соревнование
шло на равных.
Evolution ★★★★★
Приложение яв ляется частью среды рабочего стола Gnome и постав ляется
со всеми ведущими дистрибу тивами Gnome, такими, как Fedora и Ubuntu. Хо­
тя в основном его считают клиентом элек тронной почты, Evolution способен
на большее. Когда вы запустите его впервые, Evolution проведет вас через мас­
тера, который поможет настроить учетную запись вашей ваш почты или вос­
становить ее из файла резервного копирования. Изначальный интерфейс Evolution — почтовый клиент, но вы можете переключиться на другие аспек ты
приложения в нижнем левом углу. Здесь есть Calendar, Contacts (адресная кни­
га), Tasks (планировщик задач) и Memos (для примечаний). Содержание меню
вверху меняется при переключении с одного компонента на другой. В меню Ac­
tion размещаются все действия, выполняемые из выделенного в данный мо­
мент компонента. Логичность меню делает приложение весьма интуитивным
в использовании.
Kontact ★★★★★
Kontact является частью рабочего стола KDE и поставляется со всеми дистри­
бу тивами, которые используют этот рабочий стол. Kontact состоит из несколь­
ких разных приложений, но имеет хорошо интегрированный интерфейс. Па­
нель управления дает представление об ожидаемых событиях, списке за дач,
новых сообщениях, и т. д. Панель слева перечисляет все разнообразные инди­
видуальные компоненты, а именно: Mail, Contacts, Calendar, To­do, Feeds и Jour­
nal. Меню и значки в верхней части интерфейса меняются при перемещении
с одного компонента на другой. Пунк ты в ка ж дом компоненте понятно отме­
чены, что делает использование приложения довольно простым. Кроме того,
компоненты хорошо интегрированы друг с другом: например, можно щелкнуть
по пустой ячейке в ка лендаре, чтобы создать новое событие, новую задачу или
новую запись в журна ле. Мы обнару жили, что когда вы делаете первые шаги,
вас никто не под держит под локоток, однако документация весьма неплоха.
Поддержка и документация
Нужно что­то объяснить?
В
Evolution имеется подробное руко­
водство пользователя, где растол­
ковыва ются все компонен ты PIM.
Ру ководство так же поможет вам син хро­
низировать менед жера с серверами Micro­
soft Exchange и дает решение типовых про­
блем. Кроме того, Evolution так же включает
карту быстрой подсказки, которую можно
распечатать, со списком горячих клавиш
для наиболее общих задач. Если у вас воз­
ник ли во про сы, вы може те под пи сать ся
на списки рассылки проек та или перейти
в его канал IRC.
28
|
LXF212 Август 2016
Вердикт
Kontact тоже рас по ла гает спра вочни­
ком с информацией по своим компонен­
там. Имеется так же информативная функ­
ция Совет Дня [Tip of the Day]. Некоторая
информация по разным компонентам по­
мещена на странице Kontact в wiki KDE User­
Base, плюс проект распространяет подсказ­
ку через списки рассылки и канал IRC.
Mozilla Lightning документации не пред­
лагает, вместо этого направляя вас в раздел
Help на своем сайте. Эта страница в стиле
па не ли управ ле ния ссылается на до ку­
ментацию по разным компонентам и дает
пояснения по основным темам. Вы так же
можете обратиться на превосходный сайт
под держки Mozilla, чтобы за дать вопросы
относительно Thunderbird.
Makagiga, кроме ин ст рук ций по ус та­
новке, информации пред лагает ма ловато.
На сай те есть добавочная доку мен тация,
но нет ру ково дства для начинающих Get
Started. Если у вас есть вопросы, поместите
их на доске обсу ж дений. Osmo ограничива­
ется списком основных горячих клавиш —
документации нет, но есть страница на wiki­
books.org; правда, она завершена на 75 %.
www.linuxformat.ru/subscribe
Evolution
★★★★★
Kontact
★★★★★
Mozilla Lightning
★★★★★
Makagiga
★★★★★
Osmo
★★★★★
» Вы добудете
руководства
по PIM из сторон­
них источников.
Менеджеры информации Сравнение
Makagiga ★★★★★
Это при ложение не дос тупно в репо зи ториях дист рибу тивов, но на своем
сайте размещает Deb­ и RPM­пакеты. Makagiga требует на личия Oracle Java,
и на сайте так же размещены бинарники с уже включенной средой JRE. Вслед­
ствие лежащего в его основе Java приложение не выглядит «родным» ни на ка­
ком рабочем столе. Панель управ ления Makagiga не пред лагает очевидных
точек входа — она перечисляет три категории слева: Files and Folders, Feeds
и Trash. Files and Folders [Файлы и папки] включает ряд приложений по умол­
чанию, таких, как просмотрщик изобра жений и редак тор, блокнот, менед жер
списка дел, и т. д. Точно так же, раздел Feeds по умолчанию включает некото­
рые ленты RSS.
Если вам понадобятся и другие вид жеты, воспользуйтесь кнопкой Add Wid­
get [Добавить вид жет]. Чтобы продук тивно использовать Makagiga, придется
потратить некоторое время на изучение ее основных компонентов.
Mozilla Lightning ★★★★★
Это одно из самый простых в установке приложений, поскольку оно встраи­
вается в почтовый клиент Thunderbird. Помимо ка лендаря, Lightning включа­
ет менед жер задач для организации ка лендаря и списка дел. Компоненты хо­
рошо интегрированы и очень интуитивны в использовании. Плагин добавляет
в меню Thunderbird новую опцию под названием Event and Tasks [События и за­
лачи]. После установки вы можете переключаться на него, пользуясь значком
в верхней панели, который открывает его в новой вкладке. Интерфейс отобра­
жает три панели с ка лендарем слева, выбранной датой в середине и списком
за дач справа. За дача создается щелчком правой кнопкой по ка лендарю. По­
добным же обра зом, щелк нув пра вой кнопкой по за даче, вы може те соз­
дать событие. Хотя Lightning интуитивен в работе, вы все же, возможно, по­
тратите некоторое время на знакомство с его документацией, чтобы узнать
обо всех его функциях.
Osmo ★★★★★
Osmo, во многом подобный Kontact, получает очки за свой простой, понятный
и хорошо интегрированный интерфейс. Приложение имеет четыре вкладки
вверху (Calendar, Task list, Contact и Notes), которые вы опционально можете
перенести в любой угол. Меню в Osmo отсутствует, но привязанные к действи­
ям кнопки вверху изменяются, когда вы переключаетесь меж ду компонента­
ми. Панель Calendar пред лагает простой функциональный ка лендарь. Вы мо­
же те два ж ды щелк нуть по да те, что бы до ба вить за мет ки, или щелк нуть
правой кнопкой по дате, чтобы добавить за дачу. Можно сохранить адрес ва­
шего контак та в панели Contacts. Osmo пред лагает несколько дополнитель­
ных функции, в том числе поиск, браузер дней рож дения, а так же интеграцию
с Google Maps. Панель Notes позволяет с легкостью сделать заметку с функ­
циями редак тирования сложного текста, и для заметок предусматривается
защита паролем.
Индивидуальная настройка
Заставьте их вас слушаться.
Т
ри менед жера в нашей подборке —
Evolution, Lightning и Kontact — по­
зво ляют от мечать дни и часы, со­
став ляющие вашу рабочую неделю, и это
весьма полезная настройка. Все приложе­
ния по зво ляют вы бирать цвет для пред­
стоящих задач.
Evolution так же позволяет выбирать, где
отобра жать напоминания и как долго это
делать до момента назначенного события.
Lightning пред лагает все соответствующие
настройки под заголовком ка лендаря, где
располагаются четыре вкладки. Вы можете
Вердикт
из ме нить тек сто вый фор мат да ты, вы­
брать часовой пояс, назначить для событий
дли тельность, время нача ла и окончания
по умолчанию, индивидуально настроить
поведение напоминаний.
Настройки компонентов Makagiga ми­
нимальны. Можно изменять цветовую те­
му, ширину строки и поля в блокноте или
ве леть обнов лять лен ту RSS при запуске
и изменять количество дней перед уда ле­
нием старых статей.
Osmo име ет многочисленные оп ции
для изменения струк туры, внешнего вида
и ото бра же ния различных компо нен тов,
и по зво ля ет вы би рать ал го рит мы шиф­
ро ва ния и сжа тия для за ме ток, да еще
некоторые по лезные настройки для дру­
гих компонентов.
Ин ди ви ду альная на строй ка яв ля ет ся
одной из харак терных особенностей Kontact. Все компоненты имеют собственный
раз дел на стро ек, хо тя сте пень на стра и­
ваемости у них неодинаковая. Ка лендарь
имеет наибольшее чис ло настроек, а вот
в предстоящих событиях и заметках пара­
метров поменьше.
www.linuxformat.ru/subscribe
Kontact
★★★★★
Mozilla Lightning
★★★★★
Evolution
★★★★★
Osmo
★★★★★
Makagiga
★★★★★
» У всех, кро­
ме Makagiga,
солидная
индивидуальная
настройка.
Август 2016 LXF212
|
29
Сравнение Менеджеры информации
Добавочные функции
Постойте, есть еще что­то?
В
се менед жеры в нашем Сравнении
расширяют основные компоненты
PIM дополнительными функциями.
Одни пред лагают расширенные функ ции
помимо обычных подозреваемых, которых
мы перечислили ранее, а другие включают
удобные ма ленькие кусочки для под держ­
ки стандартных функций.
Одна из самых выдающихся функ ций
в Evolution, Kontact и Lightning — компо­
нент для управления элек тронной почтой.
И именно эта функция оста лась без внима­
ния в Makagiga и Osmo.
Osmo по став ля ет ся с воз мож но стью
создания PDF из всех за дач в таблице. Его
кон так ты так же пред ла га ют добавочные
функции, такие, как браузер дней рож де­
ния, хорошую функцию поиска и интерес­
ную возможность выделять адрес место­
положения на Google Maps.
Makagiga имеет встроенную програм­
му про смот ра изо бра же ний и по зво ля ет
добавлять ссылки и справки к другим до­
кументам, папкам или сайтам, а так же со­
держит вид жет интернет­поиска, настраи­
ваемый на поиск через несколько движков,
та ких, как DuckDuckGo, Google и Yahoo,
и отобра жает ре зульта ты во встроенном
web­брау зере. В этом PIM так же имеется
ком по нент для ре зерв но го ко пи ро ва ния
всей установки, плюс инструмент для уда­
ления частных данных.
> Импортируйте и экспортируйте данные в и из различных компонентов.
Помимо напоминаний самому себе, Evolution умеет отсылать напоминания любому
контак ту в вашей адресной книге. Evolution
так же можно интегрировать со сторонним
групповым ПО, таким, как Kolab, Exchange
server и Groupwise. Контак ты приложения
могут полу чать информацию с ваших су­
ществующих серверов LDAP, а его адрес­
ная книга — слу жить источником данных
в LibreOffice.
Kontact по став ля ет ся с ком по нен том
Usenet, который по умолчанию отключен.
Ме нед жер так же по зво ля ет бы ст ро соз­
дать список дел — и быструю запись о со­
бы тии — без не обхо ди мо сти от кры вать
ре дак тор. Это осо бенно удобно для соз­
да ния не скольких за дач под ряд. Kontact
умеет работать с рядом серверов группо­
вого ПО, включая Kolab, Open­Xchange, Cit­
adel и OpenGroupware.org. Вы так же мо­
же те исполь зовать Kontact для соз дания
web­страниц из вашего ка лендаря и дан­
ных о задачах.
Mozilla Lightning делает то, что полага­
ется, и ничего сверх этого. Дополнительные
функции черпаются из Thunderbird. Среди
удобных: защита от фишинга; добавление
адресной книги одним щелчком; возмож­
ность обмениваться быстрыми сообщения­
ми с контак тами; и умные папки, которые
позволяют сочетать почтовые ящики, на­
пример, ящик входящих сообщений, с раз­
ных учетных записей.
Вердикт
Kontact
★★★★★
Mozilla Lightning
★★★★★
Evolution
★★★★★
Makagiga
★★★★★
Osmo
★★★★★
» У более круп­
ные проектов
набор функций
шире.
Расширяемость
Приобретение новых функций.
Ч
асть на ших PIM спо соб ны об за­
водиться новыми функциями че­
рез плагины. Osmo, к сожа лению,
к таким не относится. Evolution перепору­
чает ряд функций плагинам, включенным
по умолчанию. Среди этих функций — на­
поминание о вложении; возможность авто­
матически заполнять адресную книгу, от­
вечая на сообщения; сохранение ка лендари
или списка за дач на диск; публикация ка­
лендарей в сети, и т. д.
В Kontact под держивают плагины толь­
ко почта и ка лендарь. Как и в Evolution, че­
тыре плагина почты включены по умолча­
нию. Ка лен дарь тоже снабжен че тырьмя
пла ги на ми, вклю чае мы ми оп цио нально:
например, есть плагин, который добавит
ссылку на Wikipedia’s This Day [Этот День
30
|
LXF212 Август 2016
в Википедии] на страницу History ка ленда­
ря, а другие сделают то же самое с Picture
of the Day [Картинкой Дня].
Как и в Evolution и в Kontact, некоторые
основные функции в Makagiga — програм­
ма чтения новостей, блокнот, просмотрщик
изобра жений и список за дач — размеще­
ны в виде плагинов. Кроме того, в Makagiga
имеется репозиторий из более чем 36 пла­
гинов. Есть плагины для добавления вид­
же тов, та ких как тай мер с обрат ным от­
счетом, цифровые часы и апплет прогноза
погоды Yahoo. Вы так же можете установить
плагины для просмотра документов и изо­
бра жений и смены внешнего вида и стиля
работы менед жера.
Дополнения являются козырной картой
Mozilla: ин тер фейс мож но ис поль зо вать
> Используйте интерфейс плагинов
Makagiga для фильтрации списка
дополнений по типу и функции.
Вердикт
Makagiga
★★★★★
для поиска плагинов для Lightning или для
ка лендаря, что вернет более 70 результа­
тов. Есть плагин Calendar Tweaks, который
пред лагает несколько модифика ций для
улучшения удобства использования ка лен­
даря. Затем имеется плагин Calendar Tabs,
позволяющий быстро переключаться ме­
ж ду периодами времени. Еще один удоб­
ный плагин интегрирует QR­коды событий
ка лендаря, для быстрого перехода на мо­
бильные устройства.
www.linuxformat.ru/subscribe
Mozilla Lightning
★★★★★
Evolution
★★★★★
Kontact
★★★★★
Osmo
★★★★★
» Makagiga
и Lightning лиди­
руют по коли­
честву допол­
нений.
Менеджеры информации Сравнение
Менеджеры информации
Вердикт
В
ыбор менед жера персональной ин­
фор ма ции за ви сит от типа функ­
ций и действий, которые вы хотите
ему де ле ги ро вать. И ес ли не за тей ли вых
приложений типа Osmo может быть более
чем достаточно для студента, который ме­
чется меж ду расписанием занятий, группо­
выми занятиями и оплатой счетов, то бо­
лее про фес сио наль но му поль зо ва те лю
по на до бит ся воз мож ность син хро ни за­
ции с элек тронной почтой и сервером ди­
рек торий на работе вместе с расписанием
его команды.
Мы помес ти ли Makagiga в са мый низ
таб ли цы из­за его ма ло ко му по нят но го
принципа работы и неинтуитивного поль­
зовательского интерфейса. Отсутствие ру­
ководства для начинающих тоже сказа лось
на этом ре зульта те. За тем идет Osmo —
это про стой и по нят ный PIM с хо ро шей
струк турой. Лучше всего он под ходит до­
машним пользователям, которые не будут
I
жа ло вать ся на от сут ст вие рас ширенных
функций.
Выбор меж ду Kontact и Evolution прост:
мы со ве ту ем ис поль зо вать оба. Оба они
яв ляются хорошей опцией для своих ра­
бочих столов. Ес ли вы пользователь KDE,
то Evolution не пред ложит вам каких­то яв­
ных преимуществ перед Kontact. Кроме то­
го, хоть Kontact и состоит из большего чис­
ла компонентов, его использование в среде
GTK способно приводить к неожиданным
проблемам и ошибкам.
Однако на удивление всем победителем
Сравнения этого месяца становится Mozilla
Lightning. Это удивительно, потому что до­
полнение устанавливает только ка лендарь
и заметки. Очень важно, что оно делает это
на Thunderbird, который сам по себе являет­
ся очень мощным и полнофункциональным
клиентом элек тронной почты — и мы пола­
гаем, будет развиваться. Кроме того, при­
ложение выигрывает благодаря солидному
Mozilla Lightning ★★★★★
Версия: 4.0.5.2 Сайт: http://bit.ly/MozillaLightning Лицензия: MPL 2.0
» Простое, но полнофункциональное дополнение,
легко настраиваемое.
II
списку дополнений, которые позволяют ус­
тановить на него все виды функций. Вдо­
бавок, начиная с Thunderbird 38, Lightning
включен в это приложение по умолчанию,
что по зво ля ет не тра тить вре мя и си лы
на его установку вручную.
Начиная с Thunderbird 38, Lightning включен в приложение.
Osmo ★★★★★
Версия: 0.2.14 Сайт: www.clayo.org/osmo Лицензия: GNU GPL v2
» Хорошо разработанное приложение, вполне пригодное
для простых случаев.
V
Kontact ★★★★★
Версия: 4.14.10 Сайт: www.kontact.org Лицензия: GNU GPL
» PIM по умолчанию KDE; большинству пользователей
его должно хватить.
III
IV
> Сочетание Lightning и Thunderbird отлично смотрится во всех
рабочих столах.
Makagiga ★★★★★
Версия: 5.8.1 Сайт: http://makagiga.sourceforge.net Лицензия: Apache
» Богатое функциями, но опорочено своим довольно
недружелюбным интерфейсом.
Evolution ★★★★★
Обратная связь
Версия: 3.18.5.2 Сайт: http://bit.ly/EvolutionPIM Лицензия: LGPL
» Менеджер Gnome по умолчанию, который по сути
незачем заменять.
А вам какой PIM подойдет больше всего? Вы предпочитаете Osmo и считаете,
что наш победитель чересчур сложен? Пишите на [email protected]
Рассмотрите также...
В
ряд ли вы найдете много готовых PIM поми­
мо тех, которые упомяну ты в нашем Сравне­
нии. Многие популярные менед жеры, такие,
как iCal и Chandler, больше не разрабатываются. Ес­
ли вы не против онлайн­альтернатив, то есть Google
Calendar и RememberTheMilk.com. Су пер­умники
могут ис поль зовать org­mode, что бы обогатить
функциями PIM текстовый редак тор Emacs. Можно
так же ис поль зовать ин диви ду альные при ложе­
ния для разных функций PIM. Есть несколько дос­
тойных приложений и сервисов управления за да­
чами, например, Tasque, Task Coach, Getting Things
Gnome, TaskFreak и Trello. Эти приложения так же
помогут организовать и управлять списком за дач.
www.linuxformat.ru/subscribe
У некоторых поль зова те лей за про сы скромные,
и они вполне удов летворяются неавтоматизиро­
ванными решениями. Если вы неприхотливы, мо­
жете использовать приложение ка лендаря, встро­
енное в среду вашего рабочего стола, в сочетании
с простым текстовым редак тором или базовым ре­
дак тором элек тронных таблиц. |
Август 2016 LXF212
|
31
Лучшие программы для Linux 2016
Лучшее ПО
для Linux 2016
Маянк Шарма карабкается
по горам программ с открытым
кодом и возвращается
со сверкающими сокровищами.
П
рограммы, поставляемые с вашим дистрибу тивом — всего лишь верхушка
айсберга; в океане открытого кода вас
ожидает множество замечательных
программ. Вместе с такими хранилищами дистрибу тивов, как GitHub,
Launchpad и т. д., официальные репозитории вашего дистрибу тива вмещают солидное количество инструментов, утилит и изобилующих
функциями приложений.
Выбирая приложения для использования вме­
сте с вашим дистрибу тивом, разработчики обычно
стараются удовлетворить потребности макси­
мальной аудитории. И огромное количество
ценного ПО большинство пользователей Linux
не замечают просто потому, что довольны и про­
граммами, пред лагаемыми дистрибу тивом
по умолчанию.
которые по­прежнему регулярно обновляются
и которые умудрились создать нишевое сооб­
щество преданных пользователей, на удивление
велико. Для данной статьи мы специально ото­
брали неисследованные приложе­
ния и выбра ли 100 лучших, которые
вы, возможно, проглядели. Здесь так­
же имеется парочка популярных имен,
которые делают такое, о чем вы, веро­
ятно, да же не дога дыва лись.
У нас найдется кое­что для ка ж до­
го, так что готовьтесь нафаршировать свой дист­
рибу тив Linux, будь он для ПК или сервера, теми
вкусностями, которые мы перечислили на сле­
дующих страницах.
Множество ценного ПО
большинство пользователей Linux не замечают.
Правда, не все программы, доступные в Сети,
ак тивно под держиваются. Многие проек ты раз­
работчики оставили, перейдя на более интерес­
ные затеи. Тем не менее количество программ,
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
33
Лучшие программы для Linux 2016
Браузер и Интернет
Украсьте свою жизнь во Всемирной паутине.
uGet
помощью легковесного менед же­
ра загрузки uGet скачивать файлы
из Интернета очень просто. По умолчанию прило­
жение использует библиотеку curl, но если вы ус­
тановите в своем дистрибу тиве пакет aria2, uGet
приобретет дополнительные функции: например,
способность скачивать торренты и мета­ссылки
в дополнение к стандартным протоколам скачи­
вания типа HTTP и FTP.
uGet — универсальный менед жер скачивания:
он под держивает очередь закачки, умеет вста­
вать на паузу и возобновлять скачивание, а так же
ускорять скачивание, забирая файлы из несколь­
ких параллельных потоков. Вы можете использо­
вать uGet для определения приоритетов очереди
С
скачивания и да же для регулировки скорости от­
дельных закачек. Менед жер так же предусматри­
вает простой в использовании планировщик и мо­
жет выключать ваш компьютер или отправлять
его в спящий режим по завершении скачивания
всех файлов.
Приложение ак тивно отслеживает буфер
и проверяет все скопированные ссылки. Пользо­
ватели популярного браузера с открытым кодом
Firefox могут интегрировать его в свой браузер,
воспользовавшись расширением FlashGot.
Приложение так же можно применять для ска­
чивания нескольких файлов одновременно: на са­
мом деле, групповое скачивание — один из ко­
зырей uGet. Менед жер с легкостью импортирует
ссылки из текстового файла или файла HTML,
Web-браузер Brave
Р
азработанный с учетом инте­
ресов конфиденциальности,
Brave — это браузер с открытым кодом от соз­
дателя JavaScript и соучредителя Mozilla, Брен­
дана Эйча [Brendan Eich]. Браузер пред лага­
ет встроенную под держку функций усиления
конфиденциальности, таких, как блоки­
ровщик рек ламы [ad­blocker], управляемый
из меню Bravery.
Настройка Replace ads [Заменить рек ла­
му] в этом меню многих за дела за живое. Brave
осознает, что большая часть контента в се­
ти финансируется рек ламными объявления­
ми, и пред лагает технологию замены рек ламы
с вредоносным кодом и кодом отслеживания
«чистой» рек ламой из своей собственной рек­
ламной сети. Компания утверждает, что ее рек­
лама не собирает сведений о пользователях.
Более того, Brave планирует пред лагать 55 %
дохода от рек ламы ее первому издателю. Брау­
зер так же помещает 15 % дохода от рек ламы
в кошелек пользователя, и пользователи могут
поделиться этими средствами с сайтами, кото­
рые они просматривают без рек ламы.
www.brave.com
gPodder
Если вы слушаете
подкасты, используйте gPodder для их автоматического
скачивания и управления ими.
Приложение будет воспроиз­
водить их через аудиоплейер
по умолчанию и синхронизи­
ровать скачанные подкасты
с iPod или любым уст­
ройством Android.
www.gpodder.org
34
|
LXF212 Август 2016
> uGet — универсальное ПО для скачивания.
а так же может последовательно скачивать URL.
Те, кто постоянно что­то скачивает, оценят так же
кое­какие функции управления uGet.
www.ugetdm.com
uBlock Origin
Wallabag
Э
В
тот блокировщик рек ламы уда­
ляет назойливые рек ламные
объявления и защищает вашу конфиденци­
альность, блокируя серверы отслеживания,
домены с вредоносным ПО и т. д. Доступное
для всех основных браузеров, расширение
идет с несколькими хорошо под держиваемы­
ми списками фильтров, но не замед ляет рабо­
ты браузера или загрузки страницы благодаря
своему умному алгоритму. У него минима ли­
стский интерфейс, который отслеживает за­
блокированные запросы, а так же пред лагает
быстрый доступ к ряду стандартных функций.
https://github.com/gorhill/uBlock
отличие от своих популярных проприе­
тарных сотоварищей, таких, как Pocket
и Instapaper, Wallabag — независимое при­
ложение с открытым кодом для сохранения
web­страниц. Вы можете использовать Wallabag, зарегистрировав бесплатную учетную
запись Framabag — это онлайн­версия Wallabag. Но еще лучше разместить его на собствен­
ном сервере, следуя простым инструкциям
с его сайта.
www.wallabag.org
RSS OWL
R
> Избавьтесь от этой навязчивой рекламы.
Ghost
DNSCrypt
Разработанная бывшим
заместителем руководителя
группы Wordpress по удобству
пользователя [UX], Ghost
является простой платфор­
мой для блогов, написанной
на JavaScript. Ее любят за про­
стоту: ею легче управлять,
чем другими платформами
для блоггинга.
www.ghost.org
Приложение DNSCrypt превра­
щает обычный DNS­трафик
в шифрованный, защищая
вас от атак через посред­
ника [man­in­the­middle].
На DNSCrypt очень просто
переключиться, и при этом
не оказывается заметного
влияния на работу браузера
после настройки.
www.dnscrypt.org
www.linuxformat.ru/subscribe
SSOwl — превосходная альтер­
натива Google Reader (покойся
с миром...): это новый агрегатор новостей RSS
и Atom News, несложный в настройке. Прило­
жение собирает, организует, обновляет, хра­
нит новости простым в использовании спо­
собом, и сохраняет выбранные пунк ты для
просмотра оффлайн и распределенного дос­
тупа. У RSSOwl так же есть фильтры, в помощь
доступу к искомому контенту.
www.rssowl.org
Corebird
Corebird — клиент
Twitter, доступный в репозито­
риях многих дистрибу тивов;
под держивает многие функ­
ции Twitter. У этого клиента
впечатляющий интерфейс
пользователя и немалое
количество функций, кото­
рые помогают с легкостью
создавать твиты.
www.corebird.baedert.org
Internet Arcade
Вновь возвращайтесь
в 1970–1980­е, играя в клас­
сическую арка ду с монетками
в своем браузере. Internet
Arcade размещается в небез­
ызвестном Internet Archive;
этот последний намеревается
сохранять всю предысторию
Интернета.
https://archive.org/details/
internetarcade
Лучшие программы для Linux 2016
Работа с файлами
Находите свои файлы и приводите их в порядок.
Seafile
S
eafile — решение
с открытым кодом,
работающее подобно Dropbox —
пред лагает две опции. Если вам
нужна удобная опция, можете ска­
чать клиент и настроить его на син­
хронизацию с онлайн­серверами
хранения от компании в Германии,
что будет стоить около £ 4 за 512 ГБ.
Другая опция — настроить сер­
вер Seafile внутри вашей сети и рас­
ширить те же возможности синхро­
низации, что и в других облачных
сервисах синхронизации.
Для небольших инсталляций
можно использовать Seafile с ба­
зой данных SQLite, а более крупным
объек там пригодятся полнофунк­
циональные базы данных, вроде
MariaDB, MySQL или PostgreSQL.
Подробное руководство админист­
ратора так же содержит инструкции
по подключению его к существую­
щим web­серверам, включая Nginx
и Apache. Управляется Seafile че­
рез его многословный, но хоро­
шо струк турированный web­интер­
фейс, и можно использовать его
библиотеки create, опционально
шифруемые по алгоритму AES­256,
и добавлять к ним файлы. Затем
вы сможете добавлять пользовате­
лей, организовывать их по группам
и делиться библиотеками с группа­
ми. Seafile подойдет для распреде­
ленного доступа к папке на рабочем
столе, если загрузить ее контент
в разделяемую библиотеку.
Seafile так же допускает со­
вместную работу над документа­
ми. Сервис имеет гибкую систе­
му управления версиями, которая
позволяет просматривать исто­
рию файла и восстанавливать ста­
рую версию контента файла. Плюс
ко всему, у Seafile есть клиенты для
всех популярных настольных и мо­
бильных платформ.
www.seafile.com
Catfish
У
тилита поиска рабочего сто­
ла Catfish осуществляет поиск
по рабочему столу Linux, исполь­
зуя существующую базу данных
mlocate вместо установки друго­
го движка индексирования, нагру­
жающего процессор. Интерфейс
пользователя у этой утилиты про­
стоват, но его будет несложно рас­
ширить, добавив опций, которые
су жают поиск. Утилита так же мо­
жет быть полезна при поиске фай­
лов по времени их последнего
изменения.
http://bit.ly/CatfishSearch
CopyQ
Р
асширенный менед жер буфера
CopyQ конвертирует стандарт­
ный буфер в архив контента из ко­
пий предыдущих команд, доступ
к которому можно получить в лю­
бое время. При запуске он обес­
печивает историю копий, которую
можно редак тировать и в кото­
рой можно осуществлять поиск,
включая текст, фото, рисунки
Архиватор Meld
Г
рафический инструмент Meld
позволяет сравнивать два или
три файла, а так же целые дирек­
тории. Инструмент включает та­
кие функции, как выделение син­
таксиса и прямое редак тирование
и командные строки, в дополнение
к простому тексту, скопированному
в течение сессии консоли.
https://hluk.github.io/CopyQ
файла, и умеет изолировать и со­
вмещать различия. Meld так же
можно использовать для просмот­
ра популярных систем управле­
ния версиями, таких, как CVS
и Subversion.
www.meldmerge.org
Syncthing
Ч
асто именуемый
альтернативой с от­
крытым кодом для BitTorrent Sync,
Syncthing может синхронизировать
файлы меж ду компьютерами в ло­
кальной сети или в Интернет, ис­
пользуя мощное шифрование. Этот
инструмент создан с учетом требо­
ваний конфиденциальности и безо­
пасности, и работает на всех основ­
ных платформах. Настройка его
Swatch
fdupes
Swatch — простая программа
просмотра журна лов; она про­
веряет лог­файлы и предпри­
нимает действия, обнару жив
то, на поиск чего настроена.
Инструмент используется для
сканирования логов в ре­
альном времени на на личие
подозрительной деятельности
и сообщений об ошибках.
http://bit.ly/SimpleLogWatcher
Этот инструмент используется
для поиска дубликатов фай­
лов посредством сравнения
их подписей MD5, за которым
следует побайтовое срав­
нение. Есть возможность
передать массу опций инстру­
менту CLI для перечисления
в списке, уда ления и замены
файлов с жесткими ссылками.
http://bit.ly/FdupesTool
PeaZip
Графический инстру­
мент архивирования, PeaZip
способен работать более чем
со 130 разными типами архив­
ных файлов, и да же создавать
зашифрованные. Приложение
интегрируется с популярными
рабочими столами, а опытным
пользователям предоставляет
так же работу из CLI.
www.peazip.org
www.linuxformat.ru/subscribe
весьма проста, и сервис использу­
ет глобальный сервер обнару жения
для соединения с клиентами из лю­
бой области Интернета.
www.syncthing.net
Unison
Это синхронизатор
файлов, подобный rsync.
Данный инструмент отслежи­
вает изменения и обеспечи­
вает «свежесть» последней
версии файла в обоих ме­
стоположениях. Дирек тории
нередко синхронизируются
при посредстве Unison через
SSH­сессию.
http://bit.ly/UnisonFileSynch
Xfe
Многопанельный ме­
нед жер файлов Xfe обладает
редак тируемой адресной
строкой и панелью навига­
ции. Xfe успешно сочетает
классический интерфейс
с современной гибкостью,
и с ним можно взаимодейст­
вовать без мыши, пользуясь
исключительно клавиатурой.
http://bit.ly/XfeFileManager
Август 2016 LXF212
|
35
Лучшие программы для Linux 2016
Для изображений
Darktable
П
Редактируйте, упорядочивайте и делитесь фотками.
Piwigo
В
ас не ра дует перспек тива пере­
дачи своих изобра жений посто­
ронним для размещения на сервере? Вы всегда
можете настроить собственный сервер с по­
мощью Piwigo. После установки вы можете на­
чать создавать альбомы и загру жать изобра же­
ния. Кроме того, можно загру жать изобра жения
на экземпляр Piwigo через менед жер фотогра­
фий рабочего стола, например, DigiKam (см.
ниже). Piwigo попытается автоматически запол­
нить свойства изобра жения, такие, как название
и тэг, на основании данных EXIF. Программа
фотога лереи автоматически изменит размер
изобра жения в соответствии с разрешением эк­
рана и, если надо, сумеет добавить водяные зна­
ки. Посетители вашей размещенной га лереи Piwigo могут размещать комментарии и оценивать
ваши изобра жения, а так же отмечать их как по­
нравившиеся. Piwigo способен создать ленту
RSS и достойно управляет конфиденциально­
стью, и свой экземпляр Piwigo вы можете расши­
рять плагинами.
www.piwigo.org
Pinta
PhotoQT
Э
то приложение разработано
для пользователей­непрофес­
сиона лов, которые ищут простую альтернати­
ву GIMP. Здесь есть все обычные графические
инструменты, включая инструмент свободно­
го рисования и десятки обычных функций ре­
дак тирования изобра жений и эффек тов. Pinta
так же работает со слоями, что понравится
многим пользователям.
https://pinta-project.com
DigiKam
М
енед жер фотографий DigiKam
обла дает функциями, привлека­
тельными для всех пользователей. DigiKam рас­
познает все основные форматы файлов изо­
бра жений и умеет сортировать и упорядочивать
Entangle
Присоединяйте
любую под держиваемую
зеркальную камеру Canon
или Nikon к компьютеру Linux.
Пользовательский интер­
фейс приложения позволяет
предварительно просмат­
ривать снимки, которые
автоматически загру жаются
на компьютер.
www.entangle-photo.org
36
|
LXF212 Август 2016
Е
рофессиональные фотографы, постоянно
работающие с форматом RAW, могут с по­
мощью Darktable конвертировать свои нега­
тивы в растровые изобра жения. Приложение
реа лизует неразрушающий под ход к редак ти­
рованию и под держивает популярные цвето­
вые профили, включая sRGB и Adobe RGB.
Бесчисленные модули редак тирования по­
зволят исправить неудачную выдержку, изме­
нить условия освещенности и настроить цве­
товой ба ланс изобра жения. Для содействия
редак тированию Darktable предусматрива­
ет несколько типов гистограмм и под держ­
ку масок с изменяемым размером, ограничи­
вающих применение эффек тов конкретными
областями изобра жения. Готовое изобра же­
ние Darktable может экспортировать на диск
или прямо в ваш альбом Flickr, или поделить­
ся им с друзьями через элек тронную почту,
Google+ или Facebook.
www.darktable.org
сли вам нужен всего лишь про­
стой просмотрщик изображе­
ний, пригодится PhotoQT с его базовыми
функциями управления файлами и работы
с изобра жениями. Можно повернуть или оп­
рокинуть изобра жение, изменить его масштаб
или уда лить, переименовать или переместить
его. PhotoQT так же умеет отобра жать данные
EXIF и показывать слайд­шоу.
www.photoqt.org
изобра жения на основе мета данных, а так же от­
мечать лица и сортировать изобра жения, при­
сваивая ярлыки (Accepted [Принятые], Rejected
[отклоненные], Pending [В ожидании]), цве­
та́ и оценки. DigiKam пред лагает хороший ба­
ланс гибкости и автоматизации и легко справит­
ся с большой подборкой изобра жений. Опытные
пользователи могут открыть файлы RAW через
инструмент настройки RAW, чтобы вручную на­
строить и подкоррек тировать изобра жение перед
его импортом. Менед жер, по су ти, представляет
собой набор инструментов, и все они отлично
справляются со своими за дачами. Можно импор­
тировать изобра жения прямо с камеры, подклю­
чив ее через USB, а расширенные опции поиска
способны на ходить похожие изобра жения и рас­
познавать дубликатные изобра жения.
Rapid Photo
Downloader
Когда вы в очередной раз
за хотите перенести свои
изобра жения с камеры на ПК,
воспользуйтесь Rapid Photo
Downloader: он выполняет
за дачу, обычно возлагаемую
на приложения управления
фотографиями, и справляется
с ней куда быстрее.
http://bit.ly/RPDer
Shutter
Хотя скриншоты
легко сделать и с помощью
клавиши PrntScr, Shutter
включает весьма впечат­
ляющее количество функ­
ций и способен создавать
снимки разных областей
экрана и применять к по­
лучаемым изобра жениям
разнообразные эффек ты.
www.shutter-project.org
www.linuxformat.ru/subscribe
DigiKam так же включает отличный редак тор
фотографий, со всеми опциями редак тирова­
ния изобра жений, и может решить все основные
проблемы (например, эффект красных глаз и на­
стройку цвета и освещения) всего за несколько
щелчков. Имеется отличный набор расширений,
применяемых для сшивания панорамных изобра­
жений, создания га лерей, ка лендарей и т. д. Когда
вы приведете в порядок свои альбомы, DigiKam
поможет вам поделиться своими фотография­
ми через элек тронную почту, клиент мгновенных
сообщений и популярные сайты изобра жений
и социальные сети. DigiKam разработан как часть
рабочего стола KDE, но ла дит с любым рабочим
столом, и его легко установить из официального
репозитория вашего дистрибу тива.
www.digikam.org
Kerkythea
Приложение рен­
деринга, использующее
физически точный материал
и освещение; оно умеет с ми­
нимумом усилий отрисовы­
вать архитек турные изобра­
жения, от которых просто дух
за хватывает, и импортировать
файлы от своих ана логов,
например, Blender.
www.kerkythea.net
Frogr
Если у вас есть учетная запись
Flickr, то Frogr будет про­
стейшим способом переноса
ваших фотографий с компью­
тера на сайт. Вы можете также
использовать это приложение
для редак тирования внешнего
вида изобра жений и добав­
ления к изображениям тэгов
и описаний.
http://bit.ly/FrogrApp
Лучшие программы для Linux 2016
Утилиты для видео и аудио
Освойте свои мультимедиа с помощью нашей подборки приложений.
Emby
Э
то альтернатива
с открытым кодом
популярному медиа­серверу Plex.
Emby пред лагает почти те же функ­
ции и взаимодействие с пользо­
вателем, что и его проприетарный
собрат. Emby автоматически кон­
вертирует и передает ваши ме­
диа для воспроизведения на лю­
бом устройстве. Вы так же можете
управлять медиа­библиотекой
с любого устройства, используя
web­панель управления.
Медиа­сервер так же умеет на­
страивать разных пользователей,
что предоставит членам вашей се­
мьи свои варианты доступа к ва­
шей библиотеке. Emby пригодится
для просмотра не только контента
в вашей медиа­библиотеке,
но и live TV, если подключить его
к ТВ­тюнеру. Emby поставляется
в двух разных редакциях: бесплат­
ной и платной, под названием Emby Premiere. В бесплатной версии
есть прак тически все необходи­
мые функции для настройки пол­
нофункционального домашнего
медиа­сервера; не хватает лишь
нескольких функций, например,
поиска обложек или мобильной
и облачной синхронизации. Кро­
ме доступа к вашей медиа­библио­
теке из любой точки внутри вашей
сети, вы так же можете подписать­
ся на сервер соединения Emby для
доступа к своим медиа вне своей
локальной сети или с мобильных
устройств, не используя настоящий
IP­адрес сервера Emby. Установка
и настройка сервера Emby тоже
достаточно проста. (Можете вос­
пользоваться нашим руководством
по Emby, стр. 28 LXF204.)
www.emby.media
OpenShot
В
идеоредак торов
в Linux имеется
несколько, и для домашнего поль­
зователя OpenShot пред лагает луч­
шую комбинацию функционально­
сти и простоты в работе. Он умеет
соединять вместе видео, аудио­
треки и фотографии и добав­
лять подписи и переходы, и т. д.,
и экспортировать в разные фор­
маты. OpenShot так же может об­
ращаться к Blender для создания
3D­анимированных титров.
www.openshot.org
Universal Media Server
помощью Universal Media Server (UMS) вы можете передавать лю­
бые медиа с вашей системы Linux через Универсальные протоколы
Plug and Play [Universal Plug and Play, UPnP)] на любое DLNA­совмести­
мое устройство. DLNA — это сертифицированная реа лизация протокола
UPnP, применяемая на популярных игровых консолях, включая PlayStation
и Xbox, и да же на некоторых телевизорах таких популярных брендов, как
LG, Philips и Sony.
www.universalmediaserver.com
С
VLC
Д
истрибу тивы пред­
лагают функцио­
нальный видеоплейер, однако
если вам нужна большая степень
управления, то ничто не сравнит­
ся с VLC. Он под держивает прак­
тически все видео­ и аудиоформа­
ты, а для опытных пользователей
включает удобные инструменты ко­
мандной строки. Приложение уме­
ет делать намного больше, нежели
просто воспроизводить мультиме­
диа. Вы можете использовать его
для записи скринкастов, скачива­
ния видео с YouTube и трансляции
контента по своей сети.
www.videolan.org/vlc/index.html
Handbrake
Е
сли вам нужно кон­
вертировать видео
для оффлайн­просмотра, Handbrake отлично справится с пере­
кодированием видео во многие
форматы. Он может конвертиро­
вать почти любой формат и под­
держивает широкий ряд видео­
кодеков. Одна из его лучших
Audacity
Для работы с аудио
определенно стоит исполь­
зовать мощный звуковой
редак тор Audacity. Он сумеет
привести в порядок аудио,
скомбинировать треки и да же
сгруппировать несколько
треков, а так же осуществ­
лять экспорт в ряд форматов
и настроек качества.
www.audacityteam.org
Flowblade
Этот многотрековый
нелинейный видеоредак тор
с расширенными функциями
способен создавать несколько
независимых временных шкал
или видеорядов и управлять
ими. Вы можете использовать
его для улучшения и слия­
ния клипов с фильтрами
и композиторами.
http://bit.ly/Flowblade
Natron
Natron cледует
установившимся согла­
шениям по композитингу
и использует существующие
инициативы — такие, как
openeffects.org и opencv.org.
Приложение умеет отсле­
живать видео и под держи­
вает стерео­3D и обработку
многочисленных видов.
www.natron.fr
www.linuxformat.ru/subscribe
функций — встроенные профили
устройств, упрощающие процесс
конвертирования.
www.handbrake.fr
Blender Velvets
DevedeNG
Если для редак тирования
видео вы используете редак­
тор видеоряда Blender, вам
может пригодиться набор
дополнений Blender Velvets
для улучшения функций
редак тирования видео — как
по отдельности, так и вместе,
на разных ста диях произ­
водства видео.
www.blendervelvets.org
Вы можете применять
DevedeNG для компиляции
файлов в любом под дер­
живаемом MPlayer формате
в Video CD и DVD, которые
смогут читать аппартные
плейеры. DevedeNG имеет ин­
туитивный интерфейс и может
создавать функциональные
DVD меню.
http://bit.ly/DevedeNG
Август 2016 LXF212
|
37
Лучшие программы для Linux 2016
Инструменты диска
Очищайте и шифруйте свои диски и сметайте с них всё!
zuluCrypt
К
ак ни управляй доступом к данным
на своем компьютере с помощью
учетных записей пользователя и разрешений
файлов, но единственный на дежный механизм
сохранить для себя свои персональные дан­
ные — зашифровать их. С помощью графическо­
го zuluCrypt можно создать шифрованный диск
внутри файла или внутри несистемного раздела
или диска USB. ZuluCrypt так же умеет шифровать
отдельные файлы с помощью GPG.
Интерфейс пользователя zuluCrypt интуити­
вен, и в нем можно создавать файлы рандоми­
зированных ключей и использовать их для шиф­
рования контейнеров. ZuluCrypt так же включает
инструмент zuluMount, способный монтировать
Clonezilla
Darik’s Boot And Nuke
О
дно из лучших решений клони­
рования, Clonezilla распростра­
няется в виде live CD, и популярна благодаря
своей способности создавать и восстанавли­
вать резервные копии без привязки к соста­
ву ПК. Clonezilla — это основанный на Ncurses
интерфейс к набору скриптов, использующих
ряд дисковых утилит с открытым кодом, таких,
как Partimage, ntfsclone, Partclone и dd. Clone­
zilla запросто дублирует отдельные разделы
и да же диски целиком, а так же умеет восста­
навливать разделы, и поможет вам зеркально
отобразить старый диск на новом, большем
по размеру диске.
Clonezilla ла дит с большим числом попу­
лярных дисков, разделов и типов файловых
систем. Встретив раздел непонятного типа,
она вызовет почтенную dd и всё равно сдела­
ет свое дело. Да лее имеется Clonezilla SE, сер­
верная версия инструмента, которую можно
использовать для работы с центральными ре­
позиториями, способными хранить образ ком­
пьютера и использовать этот образ для раз­
множения компьютеров в лаборатории.
www.clonezilla.org
Furius ISO
Вы можете использо­
вать Furius ISO для закольцо­
ванного монтирования файла
образа из графической среды.
Приложение под держивает
всевозможные форматы
образов, и пригодно для
создания контрольной суммы
и прожига образа на оптиче­
ский носитель.
http://bit.ly/FuriousISO
38
|
LXF212 Август 2016
все зашифрованные тома, под держиваемые zuluCrypt, и да же монтировать зашифрованные тома
TrueCrypt, и позволяет сделать точку монтирова­
ния публичной и с распределенным доступом.
Помимо шифрования отдельных файлов,
zuluCrypt умеет шифровать блочные устройства,
т. е. всё записанное на определенном блочном
устройстве. Этим устройством может быть весь
диск, раздел или да же файл, монтированный как
loop­устройство. В процессе шифрования блоч­
ного устройства пользователь создает на уст­
ройстве файловую систему, и уровень шифро­
вания прозрачно шифрует данные, после чего
записывает их на настоящее блочное устройство
более низкого уровня. Будучи зашифрованы, об­
ласти хранения выглядят как ком случайных
D
Testdisk
Testdisk в состоянии восста­
новить и исправить слу­
чайно повреж денные или
уда ленные разделы и сде­
лать незагру жаемые диски
загру жаемыми. Он так же
включает инструмент вы­
членения файлов photorec,
для восстановления файлов
с повреж денных дисков.
http://bit.ly/CGTestDisk
GParted
С помощью GParted
вы можете реструк туриро­
вать диск на своем ПК. Лучше
всего использовать GParted
в качестве Live CD; он умеет
создавать, перемещать, уда­
лять, повторно форматиро­
вать или проверять разделы,
и под держивает все популяр­
ные файловые системы.
www.gparted.org
www.linuxformat.ru/subscribe
данных и да же не выявляют струк туру дирек то­
рии. Для большей безопасности zuluCrypt дает
возможность вместо пароля создавать случай­
ные файлы ключей, которые впоследствии при­
годятся для шифрования файлов и томов.
http://bit.ly/ZuluCrypt
Safecopy
arik’s Boot and Nuke (DBAN) — одно из са­
мых простых в использовании решений
для радикальнейшего уничтожения ка ж дого
бита персональной информации, содержащей­
ся на жестком диске — действительно навсег­
да. Данный инструмент особенно удобен, если
на до кому­то передать свой компьютер. Чтобы
использовать DBAN, скачайте образ Live с его
сайта и прожгите на оптический диск. Это по­
зволит вам загрузиться с помощью диска и за­
пустить инструмент в интерак тивном режиме,
чтобы выбрать диски, которые вы намеревае­
тесь стереть.
www.dban.org
> DBAN удаляет данные радикально.
> Помимо шифрования данных через zuluCrypt,
можно монтировать тома TrueCrypt.
Э
тот простой инструмент восстановления
данных не восстанавливает отдельные
файлы, но предоставляет способ скопировать
данные с аварийного устройства. Наткнувшись
на сбои ввода­вывода, другие инструменты
могут отказаться работать, но Safecopy будет
продвигаться вперед. Можно настроить работу
инструмента для создания образа файловой
системы с повреж денного носителя, сочетать
данные из разных частичных источников, и т. д.
http://safecopy.sourceforge.net
Grsync
П
ользователи настольных ПК могут ощу­
тить мощь rsync, используя графический
интерфейс Grsync. Grsync под держивает боль­
шую часть функций rsync и пред лагает ряд
собственных удобных дополнений, включая
возможность управления несколькими про­
филями резервного копирования, выполне­
ния формальных прогонов, прерывания вы­
полнения скриптов, запуска пользовательских
команд до и после копирования, и не только.
http://www.opbyte.it/grsync
VeraCrypt
Это приложение —
ду ховный преемник TrueCrypt.
Здесь присутствуют все
функции его графического
предшественника, и VeraCrypt можно употреблять
для шифрования на лету,
а так же с целью создания
скрытых томов внутри томов
зашифрованных.
http://bit.ly/VeraCry
Areca Backup
Для работы с Areca нужны
определенные знания, но оно
стоит трудов, поскольку
в этом приложении масса
функций. Оно обеспечивает
тонкий контроль над данны­
ми, резервные копии которых
вы хотите сделать, и пред ла­
гает множество опций сжатия
и шифрования.
www.areca-backup.org
Лучшие программы для Linux 2016
Подспорье для офиса
Нарастите продуктивность благодаря нашей подборке лучшего ПО.
Laidout
Э
то приложение настольного изда­
тельства (DTP), особенно удобное
для работы над многостраничными, вырезанны­
ми и сложенными бук летами. Под ход приложе­
ния к формированию страниц настолько широк,
что допускает непрямоугольные страницы. Бла­
годаря этой функции его можно использовать
для создания прак тически любой формы на час­
тях упаковки. При работе с книгами и журна лами
Laidout разрешает редак тирование и постранич­
но, и по разворотам. Его разработчик уже более
десяти лет использует Laidout для верстки сво­
их комиксов в виде книги, а так же для создания
небольших бук летов, нарезая бумагу формата
Okular
таблоида. Самая последняя версия использует
для рендеринга графики библиотеку Cairo.
Laidout вообще­то выполняет некоторые за­
дачи настольного издательства, например, фор­
мирование полос, да же лучше, чем знаменитая
открытая программа Scribus; однако ему не хва­
тает функций в других областях, например, под­
держки цветовых профилей. Познакомьтесь
со сравнением функций на его сайте, чтобы оце­
нить Laidout по сравнению с его проприетарными
коллегами и коллегами с открытым кодом. Laidout доступен в виде двоичного пакета для дист­
рибу тивов на базе Debian, но для остальных его
придется компилировать из исходника.
www.laidout.org
VokoScreen
O
kular, просмотрщик PDF для
KDE по умолчанию, располага­
ет достойным количеством удобных функций.
Помимо PDF, Okular умеет читать ряд других
типов файлов, включая Postscript, DjVu, CHM,
XPS, ePub, TIFF, CBR и т. д. Приложение так же
можно использовать для аннотаций к под дер­
живаемым документам.
https://okular.kde.org
V
Е
Одна из полезных функций Etherpad — воз­
можность взаимодействия участников через
текстовый чат, можно так же включить аудио/
видеовзаимодействие с помощью плагинов. Рас­
ширяемость — еще одна фишка Etherpad. Его
Calligra Flow Go For it!
Составная часть
офисного пакета Calligra,
Flow является приложением
для создания блок­схем,
организационных схем
и сетевых диаграмм. Оно
пред лагает несколько де­
сятков форм и шаблонов,
которые помогут вам с ходу
приступить к работе.
www.calligra.org/flow
Н
ет лучшего офисного пакета
с открытым кодом, чем LibreOffice. Текущая ветвь релизов 5.x отличается
скоростью и привлекательностью, а приложе­
ния в пакете ста ли удобнее в работе и более
интуитивны, с упрощенными меню и улучшен­
ным управлением. LibreOffice 5 так же лучше
оснащен для работы с документами в проприе­
тарных форматах, чем когда­либо раньше.
Фак тически, улучшенные фильтры импорта
и экспорта — один из его козырей. Еще одно
достойное внимания изменение — улучшенное
выделение символов, способствующее более
эффек тивному взаимодействию с пользова­
телем, в частности, когда вы работаете с доку­
ментами в проприетарных форматах.
www.libreoffice.org
okoscreen — полнофункциональное при­
ложение скринкастинга, на базе извест­
ной библиотекм FFmpeg. Vokoscreen способен
делать запись видео и аудио с опциями запи­
си всего экрана, окна или выбранной облас­
ти, под держивает кодеки MPEG4, x264, MP3
и Vorbis и умеет сохранять файлы в контейне­
рах .AVI и .MKV.
http://www.kohaupt-online.de/hp
Etherpad Lite
сли вы ищете полнофункциональный и лег­
ко расширяемый редак тор совместной работы
для своей сети, лучшим будет Etherpad Lite. Здесь
есть основные функции редак тирования текста,
и можно выделять определенные области текста
(курсивом, жирным шрифтом и т. д.), создавать
упорядоченные и маркированные списки и отме­
нять и возвращать изменения. Само приложение
может импортировать и экспортировать только
простой текст и документы HTML. Но его мож­
но привязать к Abiword и расширить его па литру
под держиваемых форматов документов, включив
форматы PDF, DOC и ODT. Приложение работает
внутри web­браузера, и интерфейс его скуден.
LibreOffice 5
Управляйте своим списком
дел с помощью симпатичного
с виду приложения Go For It.
У него простой интерфейс
для отслеживания ваших
за дач, таймер и выполненные
за дачи. Время от времени
приложение заботливо
напоминает вам о том, что
на до передохнуть.
http://bit.ly/GoForItApp
менед жер плагинов перечисляет их десятками.
Более того, хотя Etherpad автоматически сохра­
няет изменения, вручную можно так же сохранять
промежу точные версии. Etherpad включает пере­
мещение по шка ле времени, позволяющее про­
сматривать или воспроизводить все изменения.
Передвигая ползунок, можно экспортировать лю­
бую из версий, а если вы хотите разрешить авто­
рам добавлять комментарии к документам, вклю­
чите эту функцию через плагин. Редак торы так же
могут выдать распределенный доступ к програм­
ме по URL и опционально присвоить ей статус
только для чтения. А еще Etherpad можно встро­
ить внутрь документа HTML, используя iframe.
http://etherpad.org
Rednotebook Skrooge
Ведите журнал,
документируя свою де­
ятельность с помощью
Rednotebook. Вы можете
добавлять изобра жения
и тэги и форматировать текст,
а так же создавать шаблоны
для за дач определенного типа
и экспортировать журна лы
в нескольких форматах.
http://bit.ly/RedNBApp
www.linuxformat.ru/subscribe
Контролировать ваши
личные расходы и вложе­
ния поможет Skrooge. Это
приложение под держивает
несколько ва лют и способ­
но управлять несколькими
банковскими счетами, а так же
позволяет вам отслежи­
вать перемещения ваших
финансовых потоков.
www.skrooge.org
EtherCalc
EtherCalc — редак тор элек­
тронных таблиц; он делает
всё, что такому редак тору
полагается, да вдобавок под­
держивает совместную работу
в реальном времени. С ним
вы сможете создавать элек­
тронные таблицы онлайн или
настроив EtherCalc на собст­
венном сервере.
www.ethercalc.org
Август 2016 LXF212
|
39
Лучшие программы для Linux 2016
Программистам
Лучшие инструменты, облегчающие жизнь кодера.
Brackets
I
DE с открытым кодом Brackets
от Adobe — это несложный редак­
тор HTML и генератор кода. Он легковесен и име­
ет непритязательный интерфейс с нумерацией
строк и указанием текущей позиции в строке со­
стояния. В помощь созданию web­страниц HT­
ML, IDE пред лагает под держку CSS и JavaScript,
а так же под держивает выделение синтаксиса для
этих языков и умное автозавершение кода. Кроме
того, вы можете попросить IDE автоматически за­
мыкать все скобки.
Предварительно упакованные в пакеты би­
нарники для Brackets доступны для скачивания
на его сайте, и когда вы открываете Brackets впер­
вые, вы сразу перенаправляетесь в основанный
на HTML справочный файл с сопровож дающим
CSS; и это отличный способ начать работу. Левый
столбец перечисляет рабочие файлы, а ниже на­
ходится отобра жение папок. IDE пред лагает все
стандартные инструменты редак тирования, про­
смотра и поиска, которые помогут вам писать, на­
ходить и редак тировать код.
Одна из удобных функций IDE — функция live­
предпросмотра. Она открывает новое окно брау­
зера для рендеринга текущей редак тируемой
страницы. Кроме того, она автоматически обсчи­
тывает все изменения по мере их внесения в код.
Помимо HTML, live­предпросмотр визуа лизирует
так же изменения, внесенные в файл CSS, исполь­
зуемый видимой в данный момент страницей.
По щелчку на элементах CSS, live­предпросмотр
Sass
S
Если вы програм­
мируете лишь изредка и вам
не нужна полноценная IDE,
можете использовать Geany.
Это нечто среднее меж ду
обычным текстовым редак­
тором и IDE с под держкой по­
пулярных языков и удобными
функциями, например, кноп­
кой компилировать/запустить.
www.geany.org
40
|
LXF212 Август 2016
выделит разделы страницы, на которые они воз­
действова ли. Brackets так же можно расширить,
используя любое из дополнений, доступных
для IDE.
www.brackets.io
Aptana Studio
ass — препроцессор CSS, который значи­
тельно ускоряет для web­разработчиков
создание стилевых таблиц, позволяя им пи­
сать код с использованием конструкций язы­
ка программирования перед компиляцией
результатов в CSS.
Для написания стилевых таблиц Sass
сперва может показаться чрезмерно
усложненным излишеством. Но одним
из удобств, предоставляемых Sass, явля­
ется возможность один раз внести изме­
нение и любоваться, как оно отра жает­
ся в нескольких местах стилевой таблицы.
И если в вашей таблице на до поменять зна­
чение какого­нибудь цвета, то вместо мно­
гократных изменений вы можете воспользо­
ваться Sass, и ваша правка воспроизведется
по всей таблице.
Так же, если вы повторяете стилевые бло­
ки, используемые в различных местах таб­
лицы, с помощью Sass можно единожды оп­
ределить блок как используемый повторно
и одним оператором вставить его везде, где
такой блок требуется.
http://sass-lang.com
Geany
> В Brackets есть все стандартные инструменты
редактирования, просмотра и поиска.
Э
TOra
то одна из лучших IDE для web­
разработчиков. Aptana осно­
вана на Eclipse, и требует Java Runtime En­
vironment от Oracle. Кроме того, ну жен Git
для управления версиями, а если вы наме­
рены заняться разработкой Ruby on Rails,
на до так же убедиться, что среда разработ­
ки полностью настроена. Кроме того, если
вы хотите использовать ее с более всесторон­
ней IDE, приложение так же доступно в виде
плагина для Eclipse.
www.aptana.com
T
Ora пригодится для управления
базой данных из графическо­
го интерфейса. TOra под держивает все основ­
ные базы данных, и помимо обычных функ­
ций запросов и просмотра данных, включает
несколько инструментов, весьма удобных для
администраторов и разработчиков баз данных.
Приложение содержит SQL­дебаггер, браузер
базы данных плюс ряд других полезных инст­
рументов, и под держивает рабочие таблицы
SQL с выделением синтаксиса.
http://bit.ly/TOra
Coala
C
> Превосходная IDE на базе Eclipse.
Atom
Созданный раз­
работчиками GitHub,
текстовый редак тор
Atom и предназначается для
разработчиков. Редак тор
пред лагает выделение син­
таксиса и автозавершение для
нескольких языков програм­
мирования и легко расширя­
ется с помощью плагинов.
www.atom.io
Light Table
IDE Light Table под держивает
несколько языков програм­
мирования и предназначена
для предоставления разра­
ботчикам готового доступа
ко всей требуемой им инфор­
мации. IDE так же показы­
вает все функции, которые
размещаются в открытой
части кода.
www.lighttable.com
www.linuxformat.ru/subscribe
oala — это независимое от языка про­
граммирования приложение ана ли­
за кода. Его цель — облегчить разработчи­
кам процесс определения правил, которым,
по их замыслу, должен следовать разра­
батываемый проект. Приложение пред ла­
гает несложный интерфейс CLI, который
при необходимости подсказывает о вводе
и требуемых действиях.
www.coala-analyzer.org
KompoZer
Опытные программи­
сты HTMLмогли бы сэконо­
мить нема ло времени и сил,
используя редак тор KompoZer.
У него интуитивный интер­
фейс, и он включает редак тор
CSS, и настраиваемые панели
инструментов и проверяет
правильность кода с помощью
HTML­ва лидатора от W3C.
www.kompozer.net
Doxygen
Doxygen поможет вам соз­
давать документацию HTML
для вашего кода с использо­
ванием комментариев внутри
самого кода. Утилита CLI под­
держивает несколько языков
программирования и создает
документацию на основе
настраиваемых конфигураци­
онных файлов.
www.doxygen.org
Лучшие программы для Linux 2016
Средства общения
Множество способов безопасной связи с другими.
Retroshare
Б
ольшинство хотят
общаться с друзь­
ями и родными. Многим так же
необходимо участие в совмест­
ной работе онлайн — для проек­
тов или добровольной деятель­
ности; и сейчас всё это можно
сделать без центрального сервера,
используя Retroshare, развиваю­
щуюся платформу для одноранго­
вых коммуникаций.
Retroshare может использо­
ваться без сервера для переда­
чи файлов, сообщений элек трон­
ной почты, коротких сообщений
и для общения в чатрумах. Следо­
вать инструкциям на сайте по ус­
тановке предкомпилированных
бинарников приложения для ва­
шего дистрибу тива очень легко.
При первом запуске Retroshare по­
просит вас создать идентифика­
ционную информацию, за дав имя
пользователя и пароль. Приложе­
ние так же создаст пару случай­
ных ключей PGP, и публичная часть
ключа используется для идентифи­
кации и добавления друзей.
Итак, первым делом на до при­
гласить и обменяться публич­
ным ключом с людьми, с кото­
рыми вы намерены общаться
через Retroshare. Вы можете сде­
лать это из самого приложения.
Добавив друзей, начинайте зна­
комство с разными функциями Retroshare, например, с безопасны­
ми голосовыми и аудиовызовами.
Сеть Retroshare, работающая как
сеть торрентов для ускорения за­
грузки, поможет делиться файла­
ми с друзьями. Желая пойти даль­
ше в защите своей анонимности
и обойти цензуру и брандмауэры,
можете использовать Retroshare
в сети Tor.
http://bit.ly/RetroShare
Jitsi
Э
то универсальное
приложение интер­
нет­телефонии (VoIP) с под держ­
кой мгновенных сообщений (IM),
способное так же делать аудио­
и видеовызовы. Jitsi под держива­
ет большинство популярных про­
токолов IM и телефонии, включая
SIP и XMPP, и имеет все функции,
полагающиеся софтофону, вклю­
чая шифрование текстового чата
с помощью OTR и аудио и видео по­
средством установки сессии ZRTP.
www.jitsi.org
Jappix
appix использует протокол XMPP, позволяя вам создать свою социаль­
ную сеть, размещенную в вашей собственной инфраструк туре. В до­
полнение к аудио­ и видеочатам на Jingle, платформа позволяет делиться
фотографиями и видео и оставлять комментарии. Процедура установки
хорошо документирована; имеется так же Jappix Mini, который встраивает
небольшое окно чата в ваш готовый сайт.
www.jappix.org
J
Sylpheed
Sylpheed вы получаете все функции полнофункционально­
го клиента элек тронной почты без особой нагрузки на обо­
рудование. Sylpheed под держивает популярные протоколы элек тронной
почты и имеет плагины для фильтрования элек тронной почты и их подпи­
си GnuPG, а так же пред лагает знакомый трехпанельный интерфейс, ин­
туитивно понятный в навигации; его более чем достаточно для всех, кто
не интересуется PIM.
https://sylpheed.sraoss.jp/en
С
Tox
ox, довольно новая
шифрованная плат­
форма IM и VoIP, особо привлека­
тельна для пользователей, озабо­
ченных приватностью. Для чата
используется распределенная сеть
с соединением P2P — ту же тех­
нологию применяет BitTorrent для
обеспечения прямого соединения
меж ду пользователями, вместо
T
Telegram
Безопасная аль­
тернатива WhatsApp, кото­
рая позволяет отправлять
саморазрушающимися
сообщения, шифруемые
целиком вместе с таймера­
ми. Сервис так же предлагает
встроенные клиенты для всех
настольных и мобильных
операционных систем.
www.telegram.org
Mail-in-a-Box
Autistici/Inventati TorBirdy
Пожелав настроить сервер
элек тронной почты, вы мо­
жете легко сделать это
с помощью Mail-in-a-Box.
Он использует Fail2ban и сер­
тификат SSL, а так же преду­
сматривает автоматическую
настройку DNS, фильтр спама
и серый список, помимо
прочих функций.
https://mailinabox.email
Это платформа для интер­
нет­ак тивистов, борющихся
за цифровые права. Группа
обеспечивает широкий ряд
сервисов для своих ак ти­
вистов, включая хостинг,
личные VPN, элек тронную
почту, обмен мгновенными
сообщениями и много
чего еще.
http://bit.ly/Autistici
www.linuxformat.ru/subscribe
центрального сервера, который мо­
жет быть взломан. Все чаты шиф­
руются с помощью одноранговой
криптобиблиотеки NaCl.
www.tox.chat
TorBirdy — дополнение для
клиентов элек тронной почты
Thunderbird и IceDove, ко­
торое настраивает клиенты
так, чтобы они пропуска ли
вашу элек тронную почту
через сеть анонимизации
Tor, и позволяет замаскиро­
вать вашу личность, скрыв
реальный IP­адрес.
http://bit.ly/TorBirdy
WeeChat
Легковесный IR­ кли­
ент WeeChat по умолчанию
использует интерфейс на базе
Ncurses, но способен пере­
ходить и на другие варианты
интерфейса. Этот клиент
на редкость хорошо под да­
ется настройке, и с данной
целью предусматривает удоб­
ный скрипт iset.
https://weechat.org
Август 2016 LXF212
|
41
Лучшие программы для Linux 2016
Копилка сисадмина
С этими приложениями вы станете истинным специалистом.
XAMPP
И
дея, лежащая в основе XAMPP —
собрать один удобный пакет, при­
годный в качестве песочницы для тестирования
и разработки web­приложений. Он пред лагает
кросс­платформенный стек с открытым кодом
в качестве решения для web­сервера, который со­
стоит из HTTP­сервера Apache, базы данных MariaDB и интерпретаторов для скриптов, написанных
на языках программирования PHP и Perl, плюс
кое­какие другие библиотеки и инструменты.
XAMPP так же пред лагает ценные модули (и мож­
но установить дополнительные модули PHP через
PEAR) и библиотеки вроде libjpeg, libpng и libzlib,
необходимые некоторым популярным web­прило­
жениям с открытым кодом.
Webmin
О
Если вы обеспокоены по­
треблением ресурсов на сво­
ем компьютере, следите
за ним с помощью Conky.
Он будет сообщать вам
о состоянии разных компо­
нентов, и вы увидите, что этот
инструмент очень гибкий
и имеет высокую степень
настраиваемости.
http://bit.ly/Conky
42
|
LXF212 Август 2016
> Тестируйте свои программы в песочнице XAMPP.
рые генерируются компонентами, через консоль
администратора.
www.apachefriends.org
Turnkey Linux
тправляйте свои обязанности
сисадмина из комфорта web­
интерфейса. Вместо ручного редак тирования
файлов настройки и возни с параметрами ко­
мандной строки, Webmin помогает за дать раз­
ные аспек ты вашей системы, а затем авто­
матически обновит соответствующие файлы
настройки, лежащие в основе.
Вы можете использовать сервисы Webmin
для управления и сетью, и системой хоста; на­
пример, через интерфейс инструмента мож­
но создать и настроить виртуальные хосты для
web­сервера Apache и сервер распределенно­
го доступа к файлам Samba так же легко и про­
сто, как вы создаете и управляете учетными
записями пользователя и настраиваете квоты
диска. Инту тивная панель управления Webmin
содержит список модулей, и ка ж дый из них
отвечает за управление определенными серви­
сами или сервером, например, web­сервером,
или программными пакетами, и т. д. После ус­
тановки Webmin читает файлы настройки для
всех серверов и сервисов на вашей системе
в их стандартном местоположении.
www.webmin.com
Conky
Для содействия в администрировании пакет
включает phpMyAdmin для управления базами
данных, на дежный и быстрый FTP­сервер ProFT­
PD и ряд других утилит. Установка XAMPP проста
и хорошо за документирована. Развернув его с по­
мощью графического инсталлятора, вы можете
«ма лой кровью» добавить поверх него свои лю­
бимые web­приложения. Проек ты, подобные Bit­
nami, производят десятки удобных стеков для по­
пулярных web­приложений, включая Wordpress,
Drupal, Joomla, MediaWiki и т. д.
В помощь управлению стеком XAMPP пред­
лагает интуитивную панель управления, по­
зволяющую настроить и запустить/остано­
вить отдельные компоненты сервера. Можно
так же присматривать за лог­файлами, кото­
П
Déjà Dup
роект Turnkey производит «приспособле­
ния», позволяющие в два счета развернуть
новый сервер. «Приспособление» Turnkey —
это независимая система, упакованная в пол­
нофункциональное web­приложение, которое
работает поверх компонентов Just enough Oper­
ating System (JeOS), необходимых и достаточ­
ных для работы данного приложения. Все при­
способления доступны в нескольких форматах;
установив и запустив их, вы сможете управлять
ими через интерфейс на базе браузера.
www.http://turnkeylinux.org
И
деальным приложением ре­
зервного копирования для
неопытных пользователей Déjà Dup делает его
минимальный интерфейс. Он так прост в ис­
пользовании, что все опции резервного копи­
рования легко настроить за считанные мину­
ты. Основанное на Duplicity, приложение имеет
солидные основы и пред лагает как раз нужное
количество функций для пользователя рабо­
чего стола, непривычных к работе приложения
резервного копирования.
https://launchpad.net/deja-dup
Open Media Vault
Д
> Легко развертываемые серверы.
Mondo
Rescue
Это уникальное решение
для резервного копирования
создает загру жаемые диски
восстановления, настроен­
ные под копируемую систему.
Mondo Rescue использует
текстовый интерфейс и рабо­
тает с широким диапазоном
файловых систем.
www.mondorescue.org
ля всех, кто озабочен своей конфиденци­
альностью и кому нужна бо́льшая степень
защиты данных, чем простое резервное копи­
рование, хорошей опцией будет использование
сервера NAS. Проект Open Media Vault — сер­
вер на базе Debian, который пред лагает воз­
можности коммерческих решений. Он создан
для простой настройки и управления через ин­
туитивный web­интерфейс администратора.
www.openmediavault.org
X2Go
BackupPC
ecryptFS
С помощью приложения X2Go
вы полу чите доступ к гра­
фическому рабочему столу
уда ленного компьютера через
сеть. Приложение использует
протокол NX и пересылает
рабочий стол через посред­
ство зашифрованной сес­
сии SSH; здесь потребуется
переадресация SSH.
http://wiki.x2go.org
Если вы администрируете
большую сеть компьютеров,
приложение уровня предпри­
ятия BackupPC создаст вам
резервные копии всех видов
рабочих столов и серверов.
Приложение под держива­
ет несколько протоколов
и настраивается через
web­интерфейс.
http://bit.ly/BUPCApp
EcryptFS — это стековая
файловая система, которая
помещает незашифрован­
ную файловую систему
поверх смонтированной
зашифрованной. Все фай­
лы, записываемые в папку
с включенным шифрованием,
перед сохранением на диск
шифруются на ходу.
http://ecryptfs.org
www.linuxformat.ru/subscribe
Лучшие программы для Linux 2016
Безопасности ради
Добавьте немного смака к своей подборке программ.
Qubes OS
Д
истрибу тив на базе Fedora для
пользователей, реально озабо­
ченных проблемами безопасности, Qubes OS ра­
ботает по принципу безопасности благодаря
изоляции, и делит компьютер на серию вирту­
альных машин или доменов с помощью Xen. Ка­
ж дая виртуальная машина имеет доступ только
к сервисам, необходимым для выполнения сво­
ей функции, ограничивая таким образом потен­
циальную угрозу безопасности. При всём этом
волшебстве виртуа лизации, Qubes пред лагает
понятный и модернизированный рабочий стол.
Дистрибу тив не имеет live­опции и позволяет ус­
тановить KDE, Xfce или оба этих рабочих стола.
KeePassX
Помимо минимального рабочего стола, всё
остальное в Qubes, включая сетевые карты
и да же диски, сидит по отдельным виртуаль­
ным машинам. ВМ известны как домены безо­
пасности или AppVM, и у ка ж дой — свой уро­
вень безопасности, определенный в шаблоне.
По умолчанию Qubes устанавливается с тремя
доменами — рабочим [work], личным [person­
al] и недоверенным [untrusted], но пользователи
могут добавить больше. Разные приложения ра­
ботают на разных ВМ, но при этом все они появ­
ляются на одном и том же рабочем столе. Цвет
границы окна сообщает вам о том, в какой имен­
но AppVM вы работаете.
www.qubes-os.org
Gufw
П
опытка запомнить все па­
роли для всех ваших
многочисленных сервисов — за дача не из лег­
ких. Вы можете делегировать эту за дачу
KeePassX, который хранит пароли в зашифро­
ванной базе данных. KeePassX может вводить
пароли автоматически, а так же включает гене­
ратор случайных паролей.
www.keepassx.org
В
П
Tor
Сеть Tor помогает вам
разгуливать по Всемирной
паутине анонимно. Сеть Tor
работает, создавая множество
промежу точных узлов по все­
му Интернету. Когда вы за­
прашиваете посещение сайта,
запрос передается по этим
узлам перед тем, как оказать­
ся на сайте.
www.torproject.org
П
лагин Mailvelope для браузеров Firefox
и Chrome защитит от любопытствующих
ваши личные переговоры через сервис web­
mail, например, Gmail или Yahoo Mail. После ус­
тановки вы просто выводите инструмент из па­
нели дополнений Firefox, выбираете Options >
Generate Key и вводите подробную информа­
цию, чтобы получить ключ для своего адре­
са элек тронной почты. Преж де чем приступить
к обмену зашифрованными сообщениями, на­
до будет использовать расширение для об­
мена публичными ключами с вашими контак­
терами. Отправка сообщения сводится к его
составлению, на жатию на значок с замком для
его шифрования и на жатия на кнопку Transfer,
чтобы вставить текст в сообщение.
www.mailvelope.com
ам ну жен Gufw, если вы отказа лись
от брандмауэра, убоявшись трудностей на­
стройки. Интуитивный графический интер­
фейс, предназначенный для неопытных поль­
зователей, помогает управлять правилами
входящего и исходящего трафика для раз­
ных приложений и сервисов и да же отдель­
ных портов.
www.gufw.org
Enigmail
лагин Enigmail для Thunderbird
и IceDove вносит преимущества
GPG в клиенты элек тронной почты. Приступить
к работе с Enigmail легко: его можно скачать пря­
мо из самих браузеров. Плагин автоматически за­
пустит мастера для настройки расширения и ис­
правления настроек элек тронной почты, чтобы
их обезопасить, например, отключив сообще­
ния HTML. После установки плагин добавит но­
вый вход OpenPGP в меню Thunderbird. Не у всех
ваших контак тов есть публичные ключи, поэтому
вы не сможете включить шифрование по умол­
чанию. Enigmail может скачать публичные ключи
контак тов из преднастроенного списка серверов
Mailvelope
ключей, а так же создать правила для ка ж дого по­
лучателя из тех контак тов, чьи публичные клю­
чи у вас есть. По умолчанию Enigmail создаст
2048­битный ключ, который будет действовать
в течение пяти лет. Для шифрования сообще­
Lynis
Exiftool
Lynis — инструмент ауди­
та безопасности, который
сканирует компьютеры
на предмет на личия уязви­
мостей. Инструмент создает
подробный отчет об аудите
со списком потенциальных
уязвимостей и выдвигает
пред ложения по укреплению
безопасности системы.
http://bit.ly/Lynis
Со всеми этими штуковинами
для отслеживания, встроен­
ными в камеры и мобильные
телефоны, будет весьма пред­
усмотрительно использовать
Exiftool, чтобы ликвидировать
все мета данные, приписан­
ные изобра жениям, до того
как размещать изобра же­
ния на сервере или в соцсети.
http://bit.ly/ExifTool
www.linuxformat.ru/subscribe
ний с помощью ключа создайте новое сообще­
ние и выведите меню OpenPGP из окна Compose.
В нем будут опции Sign Message [Подписать сооб­
щение] и Encrypt Message [Зашифровать сообще­
ние]. Разумно будет выбрать обе и затем продол­
жить создание вашего сообщения, как обычно.
Помимо ключа, можно так же использо­
вать этот плагин для создания сертификата от­
зыва, чтобы сделать ключ недействительным,
если он ока жется скомпрометирован. В дополне­
ние к телу письма вы так же можете использовать
Enigmail для шифрования любых вложений. Про­
сто приложите файлы обычным способом, а Enig­
mail позаботится об остальном.
www.enigmail.net
Sleuth Kit
Sleuth Kit — это
набор инструментов CLI,
пригодный для ана лиза
файловой системы и обра­
зов дисков. Он под держивает
множество файловых систем
и особенно часто использу­
ется через свой основанный
на браузере интерфейс,
называемый Autopsy.
www.sleuthkit.org
AFICK
AFICK — программа проверки
отсутствия изменений в фай­
лах, которая просматривает
группу файлов и сообщает,
обнаружились ли какие­либо
изменения. Она удобна для
отслеживания несанкцио­
нированного вмешатель­
ства в важнейшие участки
вашего компьютера.
http://bit.ly/AFICKTool
Август 2016 LXF212
|
43
Makerfaire UK
Лес Паундер отправляется в Ньюкасл-на-Тайне,
чтобы подивиться на ярмарку умельцев и поговорить с теми,
кто составляет костяк сообщества.
44
|
LXF212 Август 2016
www.linuxformat.ru/subscribe
Makerfaire UK
Митч Олтмен
[Mitch Altman]
LXF: Не могли бы вы
рассказать нашим читателям немного о себе?
Митч Олтмен: Думаю, в Ин­
тернете я прославился 12 лет
на зад, когда изготовил схе­
му­брелок TV B Gone, с помощью которой можно
отключать телевизоры в публичных местах. Про­
ект этот затевался не ра ди денег, а из­за моей не­
нависти к телевидению, поскольку я сам потратил
полжизни, пялясь на экран. С тех пор я разъезжаю
по всему миру, выступая на конференциях, среди
которых Makerfaire — самая потрясающая, я был
на первой, в США [в 2006 г.]. TV B Gone полностью
изменил мою жизнь.
LXF: То есть простое устройство-брелок
изменило вашу жизнь?
МО: Да, и я сам его изобрел! И люблю приводить
это в пример. То, что ты делаешь для себя, может
понравиться и другим. Гарантий нет, но есть такая
возможность. Первый день продаж TV B Gone об­
ва лил мой сайт!
LXF: В далеком 2006-м, вы посетили первую
Makerfaire в США. Насколько она изменилась
за эти годы?
МО: На пер вой Makerfaire бы ли кру тые уча ст­
ники — на пример, про ект бес плат но го обще го­
род ско го Wi­Fi; но соб ст вен но из го тов ле ни ем
че го­ли бо ни кто не за ни мал ся. Один мой при­
ятель, еvilmadscientist, демонстрировал 3D­прин­
тер, печатающий конфеты. Но ка ж дый занимался
на Makerfaire любимым делом, и энергетика была
потрясающая. Но потом конференция заканчивает­
ся, и вы «возвращаетесь в реальный мир»; правда,
мне он ка жется под дельным. Настоящий — тот, где
люди занимаются любимым делом. Но раз на пер­
вой Makerfaire до де ла так и не дош ло, я ре шил
приехать на следующую и поучить людей паять —
от желающих не было отбоя!
LXF: Мастера-любители ныне занимаются
не только простой элек троникой, но и лазерной
ПРОЕКТЫ НА MAKERFAIRE UK
Одна группа любителей
собирается запустить
человека в космос!
Навыки умельца
Набор навыков, необходимых мастеру­изобрета­
телю, постоянно меняется, но в основе всего лежит
несколько ключевых. Во­первых, всегда будьте
любознательными — за давайтесь вопросом «Как
это работает?» Истинный хакер всегда за думы­
вается, как работает устройство, и да же норовит
разобрать его, чтобы узнать больше. Во­вторых,
мыслите нестандартно. Рассмотрите проблему
и за думайтесь, как можно ее решить. Не отвер­
гайте идеи сразу, да же если они ка жутся дикими.
Под держивайте других, помогайте им разо­
браться, если у них что­то не ла дится; пред лагайте
свою помощь тем, кому нужны дополнительные
руки для крупных проек тов, ведь когда­нибудь
вам тоже пригодится их помощь.
Очень важны прак тические навыки: ска жем,
умение па ять пригодится и для ремонта ста­
рых устройств, и для изобретения новых. Есть
довольно дешевые па яльные наборы для начи­
нающих, но иногда они могут не соответствовать
вашим ожиданиям. Лучше всего приобрести
па яльник известной марки, типа Antex или Hakko.
резкой, 3D-принтерами и биотехнологиями —
можно ли было предположить такое в 2006-м?
МО: Для технарей сейчас — потрясающее время.
В 2006­м хакерспейсы в мире уже были, но в ос­
новном в Герма нии; именно там я од на ж ды был
на конференции, посвященной тому, как органи­
зовать свой собственный хакерспейс. И мы его ор­
ганизовали (Noisebridge) в Сан­Франциско, а по­
том были и другие. Изначально
они по свя ща лись не толь ко
тех нике, но и дру гим формам
изо бре та тель ст ва; это бы ло
скорее сотворчество, чем раз­
де ле ние по спе ци аль но стям,
как в шко ле. В эти вы ход ные
в Makerfaire UK участвует груп­
па лю би те лей, ко торые хо тят
отправить человека в космос! Что может быть бе­
зумнее и удивительнее? Сколько навыков требует­
ся только для этого проек та!
Но, как говорит Митч Олтмен, в хакерспейсе
сообщество куда важнее оборудования. Сильное
сообщество дает те навыки и тот опыт, которые
необходимы хакерспейсу. Лучше начать с ма лого,
как хакерспейс города Лидса, и собираться раз
в неделю за круглым столом, чем сразу вкла ды­
ваться в нечто глобальное.
> С ростом сообщества навыки умельцев
постоянно меняются.
www.linuxformat.ru/subscribe
LXF: Какую роль сыграют эти хакерспейсы
в XXI веке?
МО: Поживем — увидим. Сейчас 2016 год, это еще
только нача ло века. Возможно, очень важную, ведь
они открывают массу возможностей массе людей.
Сейчас их в мире около 2500, но нужно еще боль­
ше, ведь на планете 7 миллиардов людей, и на всех
мест не хватает.
LXF: Какой, по-вашему, лучший способ стать
умельцем?
МО: Прийти в хакерспейс! Знаний никаких не тре­
буется — они абсолютно открыты для новичков,
нуж на только любознательность и светлая голо­
ва! В Noisebridge у нас ка ж дый день проводятся
проекты и занятия, где люди помогают друг другу
лич но или по соц се тям. Для ха кер спей са не об­
ходимо сообщест во; а да лее мож но най ти место
для регулярных встреч и обмена идеями, и потом
это место расширить — за дача не самая легкая,
но выполнимая.
Август 2016 LXF212
|
45
Makerfaire UK
Иэн Симмонс
LXF: Спасибо, что нашли время с нами поговорить.
Не могли бы вы рассказать нашим читателям
немного о себе?
Иэн Симмонс: Я Иэн Симмонс, дирек тор по на­
уч ным ком му ни ка ци ям [Science Communication
Director] в Centre for Life [Центр для Жизни] горо­
да Ньюкасл­на­Тайне.
LXF: Так значит, это вы, Иэн, принесли Makerfaire
в Великобританию?
ИС: По су ти, да. В 2009­м мы хотели возобновить
Фес ти валь нау ки в Нью кас ле, и нам нуж но бы­
ло какое­нибудь ключевое мероприятие — нечто
впечатляющее. Я почитывал журнал Make и при­
глядывал за тем, что происходит в США. Похожие
мероприятия в других научных центрах я уже про­
водил и знал, что они хорошо вписываются в их
це ли и формат; и я по ду мал: почему бы не сде­
лать Makerfaire? По зво нил Дей лу До гер ти [Dale
[Ian Simmons]
LXF: Makerfaire — это всегда своего рода плавильный котел для культуры «самоделкиных»,
где люди самых разных специальностей представляют свои стенды, проводят мастер-классы.
Проводится ли какой-то отбор заявок?
ИС: Да, мы ста раемся, чтобы изобре та тельская
среда было как можно разнообразнее. Чтобы она
расширялась. Вот в этом году мы постара лись при­
влечь побольше изобретений, связанных с едой:
например, пивоварением, приготовлением острых
соусов. Мне бы так же хоте лось, чтобы бы ло по­
больше тра диционных ремесел, таких как выдел­
ка кожи или кузнечное дело, которые в США пред­
ставлены очень обильно.
LXF: То есть это не ограничивается элек троникой,
кодированием и хакерством?
ИС: Изобретательст во в любом аспек те связано
с созданием чего­либо: это и бу тафоры, изготав­
ли ваю щие «гриб лы»
[3D­модели], реквизит
О ШИРОТЕ ОХВАТА УМЕЛЬЦАМИ
и прочие дета ли кино­
про из вод ст ва, и кос­
п лейщики, которые
из го тав ли вают ко пии
кос тю мов героев сво­
их лю би мых ТВ­шоу.
В США развелось мно­
Dougherty] (автору идеи Makerfaire) и спросил, мо­ жество любителей стим­панка, которые да же оде­
жем ли мы организовать Makerfaire в Великобрита­ жду свою выбирают так, чтобы соот ветст вовать
нии; и он согласился. Так мы ста ли первой Maker­ представляемому ими физическому экспонату или
faire за пределами США.
технике.
В этом году мы постарались привлечь побольше
изобретений по части еды.
LXF: Сколько же лет существует Makerfaire UK
и насколько разрослось это мероприятие
по сравнению с изначальным замыслом?
ИС: Мы нача ли в 2009­м и проводили Makerfaire
ка ж дый год, кроме 2012­го. Снача ла рост был бур­
ным, но за последние несколько лет все стабилизи­
рова лось на одном уровне, поскольку мы достигли
предела вместимости аудитории.
LXF: Стала ли культура умельцев рядовым явлением, и надо ли расширять ее аудиторию?
ИС: Важно привлекать детей к изобретательству,
и шко лы начина ют это де лать. Некоторые пред­
ставлены здесь, на Makerfaire UK, а Reece Founda­
tion согласились спонсировать нас в организации
школьных School Makerfaire. Формат School Maker­
faire — это новая инициатива Make, созданная для
под держ ки школ, которые уже сами организу ют
подобные мероприятия.
LXF: Организацией Makerfaire UK занимается
Centre for Life, являющийся научным центром.
Вы считаете, что навыки, необходимые умельцам
и ученым, схожи?
ИС: Да, ученые тоже должны уметь творчески мыс­
лить и решать проблемы, рассмотрев их под дру­
гим углом. Исторически, ученые сами изготавли­
ва ли оборудование, чтобы совершенствовать свое
знание и эксперименты. Говоря о профессиональ­
ной сфере науки, технологии, инженерии и мате­
матики [обобщенно обозначаемых STEM (Science,
Technology, Engeneering, and Mathematics), — прим.
пер.], в технологии и инженерии изобретательство
используется очень широко, но в нем есть и науч­
ный элемент. STEM­деятельность в научных цен­
трах так же важна для тех, кто не работает в этой
сфере, чтобы они могли сформировать и расши­
рить свои навыки.
Makerfaire по всему миру
Бренд Makerfaire — это не только
масштабные мероприятия.
В последнее время в Makerfaire
ста ли вовлекаться школы и обра­
зовательные организации, пере­
нося этот опыт в учебную среду.
School Makerfaire — это новая
инициатива, пред лагающая
преподавателям простой фор­
мат организации собственного
мероприятия. Как правило, они
не требуют от школ никаких
финансовых вложений, кроме
подписания контрак та.
Следующий уровень — это Mini
Makerfaire. Такие мероприятия
46
|
LXF212 Август 2016
требуют временных и денежных
вложений. Обычно Mini Maker­
faire планируются, как минимум,
за полгода, и им требуется под­
держка представителей местного
сообщества.
В Великобритании, Mini Maker­
faire проводились в Манчестере
и Лондоне, и, как правило, соби­
ра ли от 2000 до 4000 посетителей
за выходные.
Мероприятие в Ньюкасле­на­
Тайне относится к следующему
уровню, именуемому Makerfaire.
Событие такого масштаба тре­
бует значительных временны́х
и денежных затрат, и предпола­
гаемое количество посетителей
Maker faire составляет более 10 000.
Самый высокий уровень —
это Flagship Makerfaire, хоро­
ший пример тому — Нью­Йорк,
собравший более 600 участников
и свыше 75 000 посетителей.
Чтобы организовать такое меро­
приятие, требуются постоянные
сотрудники и крупные финан­
совые вложения. Но исходный
Makerfaire в Сан­Матео, в Ка ли­
форнии, по­прежнему привлекает
более 900 участников и свыше
130 000 посетителей.
www.linuxformat.ru/subscribe
> На то, чтобы провести свою Makerfaire,
решиться нелегко, но начните с малого и дайте
старт. Со временем, количество посетителей
и изобретателей вырастет.
Makerfaire UK
Джон Стокилл
LXF: Не могли бы вы рассказать нашим читателям
немного о себе?
Джон Стокилл: Я Джон, и я из хакерспейса Лид­
са; на Makerfaire UK в этом году я привез 10­фу то­
вый световой куб.
LXF: В Лидсе уже своя традиция «мигающих»
экспонатов?
ДС: Да, и в этом виноват Ньюкасл. Несколько лет
на зад мы уже были на Makerfaire UK, и нас тогда
очень впечатлил однотонный световой куб. Нашей
мас терской он так понравился, что за последую­
щие несколько не дель мы сде ла ли свой первый
простой куб с помощью Arduino. Потом мы пошли
дальше и сдела ли еще один, цветной и побольше.
В конце концов мы решили выставить его на Man­
chester Makefest, и слу чайно оказа лись за столом
напротив ньюкаслцев.
Это подстегнуло дру жескую конкуренцию, ко­
торая приве ла к появ лению нашего нового ку ба.
Мы несколько лет дума ли принять участие в Light
Night — мероприятие в сфере искусства в Лидсе,
но в подаче заявок мы не сильны, нам бы только
лампочки покрасивее соединять. Но затем нашел­
ся коллега, который участвовал ранее в этом ме­
роприятии и имел опыт составления подобной за­
явки, и нам помогли собрать нужные деньги для
нашего проек та.
Мы присту пи ли к соз да нию 10­фу тового ку­
ба, внутри которого на ходится другой куб, разме­
ром 8 × 8 × 8, из светодиодов, первоначально дер­
жав шихся на де ре вян ной ра ме, ко то рую по том
заменили на алюминиевые штанги, так что теперь
для транспортировки нашего проекта при ходит­
ся за ка зывать фургон. На соз да ние проек та по­
требовалось около месяца плюс аврал всех членов
[John Stockill]
мас терской в припаивании лампочек и соз дании
рамы. Мы выставили проект в Light Night 2014 в го­
род ском му зее Лид са. Про ект был раз ме щен
в большой круглой комнате с балконом, и он там
был единственным, и чтобы посмотреть на него,
люди выстраива лись в очереди!
LXF: Просто для ясности: вы ведь не профессионально занимаетесь искусством, у вас есть
основные работы?
ДС: Да, мы программисты, системные админист­
ра торы — все немного компьютерщики, так или
иначе. Такие проек ты мы делаем для удовольствия.
Когда нет большого командного проек та, такого
как куб, ка ж дый в мастерской занимается чем­то
своим. Hackspace дает нам под держку в реа лиза­
ции наших проек тов.
LXF: Как появилась мастерская Leeds Hackspace?
10‑ФУТОВЫЙ СВЕТОВОЙ КУБ
На Makerfaire UK в этом
году мы привезли 10-футовый световой куб.
ДС: В конце 2007­го кучка компьютерщиков, си­
дя в пабе в Лидсе, обсу ж да ли недавнее открытие
London Hackspace, и им поду ма лось, что в Лид­
се тоже долж на быть та кая мас тер ская. По том
мы за клю чи ли со гла ше ние с Leeds Metropolitan
University, ныне Leeds Beckett University, о том, что­
бы собираться по вторникам в одной из их ауди­
торий. В 2008­м у нас появился небольшой взнос,
чтобы у мастерской был свой
на ко пи тель ный счет, хотя
и небольшой, но достаточный
для на ча ла. Что бы со брать
деньги на аренду помещения,
людей у нас тоже было доста­
точ но. Мы вско ре пе ре бра­
лись поближе к центру.
LXF: Можно сказать, что изобретателю
без навыков ведения бизнеса не обойтись?
ДС: Умение разбираться в бюрократии сейчас ста­
новится для мас терских все важ нее, так что нам
нуж ны те, кто готов этим заниматься, потому­то
боль шое со об ще ст во и по мо га ет мас тер ским
выжить. |
Как попасть в хакерспейс
Leeds Hackerspace — одна из множества компьютерных мастерских
во всем мире, готовых предоставить рабочее место и оборудование
всем и ка ж дому. Большинство проводят вечера открытых дверей,
хотя бы раз в неделю, и любой может прийти и посмотреть. Такие
мероприятия позволяют тем, кому сфера изобретательства нова,
«попробовать, преж де чем купить».
Специфика таких мастерских бывает самая разная, и, как
правило, зависит от состава участников: например, специа лизи­
рующаяся в элек тронике будет иметь множество оборудования
для паяния и тестирования. Но сегодня компьютерные мастерские
за ходят в самые новые и удивительные сферы. Школы подключа­
ются к изобретательскому движению, перенося соответствующий
инструментарий и навыки в учебную среду. Уже не удивляет, что
в школьных мастерских можно встретить станок для лазерной
резки, а в кабинете технологии — 3D­принтер. Так стираются гра­
ницы меж ду тра диционными уроками, где все предметы велись
по отдельности. Дети сегодня могут разрабатывать и создавать
свои собственные проек ты в мастерской и затем использовать код,
написанный на уроке информатики, чтобы воплотить свои творения
в жизнь. Компьютерные мастерские — логическое продолжение
этого: они пред лагают школам и изобретателям свои навыки, обору­
дование и сообщество, чтобы воплотить их мечты.
> Недорогой или бесплатный доступ к оборудованию дает людям больше возможностей; главная цель движения изобретателей — предоставить такой доступ каждому.
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
47
SIP-обман
SIP‑ОБМАН
Уязвимы ли вы?
SIP —
это что?
Session Initiation Proto­
col (SIP) — это протокол
коммуникаций для пере­
дачи сигна лов и управ­
ления сессиями комму­
никаций мультимедиа.
Наиболее распространен­
ное приложение SIP —
IP­телефония, где он ис­
пользуется для голосовых
и видеозвонков через се­
ти IP. Протокол контро­
лирует и определяет дан­
ные, отправляемые меж ду
оконечными точками,
и управляет такими ве­
щами, как настройка те­
лефонных звонков, пре­
кращение вызова и другая
функциональность голо­
совых вызовов.
К
Дэвид Митчелл разъясняет риски современного
мира VoIP и дает практические советы по снижению
уязвимости к SIP-обману и его последствиям.
огда пошло в рост применение VoIP
(Voice over Internet Protocol — голосовая коммуникация через интернет-протокол), приблизительно в 2000 г.,
мир телекоммуникаций резко изменился. Технология, существовавшая уже несколько лет, стала осваивать потребительский
рынок и предлагала солидные преимущества
предприятиям, желавшим снизить расходы
и улучшить телефонию.
48
|
LXF212 Август 2016
Прокру тим на десятилетие вперед — и вот VoIP
уже новый стандарт голосовой телефонии, с совре­
PBX, за мизерную цену. Вдобавок к этим преиму­
ществам, возник мир решений с открытым кодом
IP PBX и провайдеров телекомму­
ника ций, и ус лу ги транкинга SIP
пред лагаются любому обла дате­
лю кре дит ной кар ты — VoIP во­
плоти ло меч ту люби те лей и тех­
на рей, же лав ших реа ли зо вать
собст венные сис темы PBX. К со­
жа лению, эта мечта выгодна и злоумышленникам,
жа ж дущим употреблять технологию злонамеренно
ради на живы.
Услуги транкинга SIP предлагаются любому обладателю
кредитной карты.
менными системами Private Branch Exchange (PBX)
на базе IP­адресов, способными пред ложить значи­
тельно больше функций, чем устаревшие системы
www.linuxformat.ru/subscribe
SIP-обман
Что такое
SIP-обман?
SIP­об ман — это ис поль зо ва ние
чу жой системы IP­телефонии с це­
лью на живы. Хакер, обычно на ходящийся в другой
стране (чаще всего в такой, где силовые струк туры
не привык ли работать с подобными преступления­
ми), подключается к IP PBX через Интернет и, ис­
пользуя ряд методов, манипулирует системой для
совершения телефонных звонков.
В большинстве случаев мишенью атаки являет­
ся не доступ к личной информации или да же ком­
прометация целостности самой системы, а только
создание большого объема звонков в службы при­
вилегированного тарифа без оплаты стоимости ис­
ходящих вызовов.
Обычно у ха кера есть договоренность с про­
вай дером приви легированного тарифа, по кото­
рой они по лу ча ют до лю дохо дов, при те каю щих
благодаря звонкам. Иногда провайдер привилеги­
рованного тарифа является соучастником престу­
пления, и обе стороны делят прибыль, предостав­
ляя жертве обязанность оплатить увесистый счет
за телефон.
Кто подвержен
риску?
Если вы сами управляете и под дер­
живаете свой собственный IP PBX,
то, потенциально, вы рискуете оказаться жертвой
SIP­обмана. Бы тует общее заблу ж дение, что ха­
керы обычно выбирают жертвой провайдеров ус­
луг интернет­телефонии; но на самом деле конеч­
ный пользователь подвержен этому риску ничуть
не меньше.
Ес ли вы вла делец ма лого предприятия, кото­
рое запустило свой собственный IP PBX и заключи­
ло соглашение с провайдером транкинговых услуг
SIP, или да же любитель с Raspberry Pi и транком SIP,
вы можете подумать, что взламывать вашу систему
никому не интересно. К несчастью, это не так: риску
подвержен ка ж дый.
За очень короткий временной промежу ток ха­
кер может полу чить дос туп к не защищенному IP
PBX и выставить телефонный счет, который обыч­
ный пользователь мог бы накопить за несколько
лет разговоров (да же при на личии детей под ро­
ст кового возрас та). В нашей статье мы рассмот­
рим ряд простых, но важных шагов, которые сто­
ит предпринять для уменьшения риска оказаться
жертвой SIP­обмана, на конкретном примере PBX
заблокировать их, поскольку такие звонки приво­
дят к очень большим телефонным расходам.
Сложные пароли
Asterisk на CentOS. Но, несмотря на направленность
на эту среду, перечисленные шаги легко перенести
на другие платформы PBX и дистрибу тивы Linux.
Профилактика атак
Есть ряд мер, ко торые вы може те
и должны предпринять для защиты
ва ше го IP PBX от мо шенниче ских
атак SIP. Есть множество способов взломать теле­
фонную систему, а технологии, используемые ха­
керами, варьируются в зависимости от поставщи­
ка или производителя PBX. Следовательно, важно
будет реа лизовать столько мер предосторожности,
сколько прак тически возможно.
Пусть это звучит банально, но в со­
временном мире, где на до запоми­
нать бес чис ленные па ро ли, лег ко
расслабиться и использовать один и тот же пароль
неоднократно. Похожим образом, часто существу­
ет искушение использовать простые пароли, кото­
рые легко запоминать и набирать. И это однозначно
не та ошибка, которую следует совершать при на­
стройке своего PBX.
При создании ау тентификационной информа­
ции задавайте сложные пароли. Это уменьшит риск
ус пеха ата ки гру бой си лы или словарной ата ки.
Пример хорошего пароля — пароль длиной от 8
до 20 символов, не содержащий словарных слов
Включение удаленного доступа
к PBX потенциально упрощает
его взлом для хакеров.
Множество провайдеров SIP­транкинга пред ла­
гают сис темы обнару жения мошенничества и ча­
сто по вашей просьбе могут за дать лимит исполь­
зования для вашей учетной записи. Это значит, что
при взломе вашего PBX вы получите шанс заблоки­
ровать свой транк до того, как финансовые потери
станут неподъемными.
Помимо этого, существует возможность согла­
шения по разрешению и блокировке определенных
типов звонков. Если вам не нужны меж дународные
звонки или звонки по приви легированным тари­
фам, рекомендуется попросить своего провайдера
www.linuxformat.ru/subscribe
или ка кой­то иден тифицирующей информа ции,
яв ляю щийся ком бина ци ей за главных и ма лень­
ких букв, цифр и специальных символов (напри­
мер, ! @ # $, и т. д.). Пароль старайтесь как можно
чаще менять.
Соединения
Одной из отличных функций IP­те­
лефонии является возможность ос­
таваться соединенным с вашим PBX
вне зависимости от вашего местоположения. Это
позволяет сотрудникам иметь с вами контакт, когда
Август 2016 LXF212
|
49
SIP-обман
вы на расстоянии, что не только экономит деньги,
но и упрощает коммуникацию и делает более про­
стым отслеживание дос тупности. Это по зволяет
установить клиент SIP на ваш смартфон и перезва­
нивать вашим друзьям и семье, когда вы в другой
стране, по цене местного звонка.
На беду, включение уда ленного доступа к PBX
по тенци ально упрощает его взлом для ха керов,
по скольку ес ли вы в со стоянии уехать в лю бую
точку мира, сохраняя подключение к своему PBX,
то есть нема лая вероятность того, что и хакер тоже
может это сделать. Следовательно, когда речь идет
об уда лен ных со труд ни ках и ре ги ст ра ци ях SIP,
важно реа лизовать жесткую политику безопасно­
сти. Например, вместо того, чтобы разрешать под­
ключения к вашему PBX из любой точки мира, бо­
лее удачным вариан том может быть блокировка
всего входящего трафика, а при необходимости —
создание белого списка разрешенных IP­адресов.
Это не всегда прак тично, ес ли недос тупен стати­
ческий IP­адрес, но вместо обратного VPN­тоннеля
к вашему PBX неудобство вследствие необходимо­
сти время от времени обновлять iptables несравни­
мо с разорительным телефонным счетом.
Люби́те iptables
Ес ли вы точно знаете, откуда идет
ваш трафик SIP и куда он направ­
ляется — а вы обязаны это знать —
то реа ли за ция же ст кой по ли ти ки безо пас но сти
является самым быстрым и простым способом сни­
жения риска SIP­обмана. Блокируйте трафик ото­
всюду, за исключением известных вам IP­адресов,
с которыми вам надо контак тировать. Естественно,
что ад рес или адреса, которые следует добавить
в бе лый спи сок, это ад ре са ва ше го про вай де ра
транков SIP и те номера, которым нуж но контак­
тировать с вами извне вашей местной сети. Приме­
нение некоторых простых правил поможет в этом.
Типовое правило провайдера транков SIP:
­A INPUT ­s xxx.xxx.xxx.xxx ­d
0/0 ­p udp ­m multiport ­­dport
5060,4569,5036,2727,10000:20000 ­j ACCEPT
Типовое правило SIP­телефона:
­A INPUT ­s xxx.xxx.xxx.xxx ­d 0/0 ­p udp ­m mul­
tiport ­­dport 5060,10000:20000 ­j ACCEPT
В кон це на бо ра пра вил за бло ки руй те все
остальное:
­P INPUT REJECT
iptables можно обновлять посредством исполь­
зо ва ния ко ман ды iptables или ре дак ти ро ва ния
файла iptables в своем любимом текстовом редак­
торе. В нашем случае мы выбра ли vi.
Asterisk ис поль зу ет ряд пор тов для взаи мо­
действия с конечными точками. Вот эти порты:
» 5060 — SIP (подача сигна лов).
» 4569 — IAX2 (Inter­Asterisk eXchange).
» 5036 — IAX (если вы используете IAX, вы можете
за хотеть обдумать его замену на IAX2)
» 10000:20000 — RTP (медиа­поток)
» 2727 — MGCP (ес ли вы ис поль зуе те про токол
управления шлюзом медиа).
Интерфейс Asterisk Management Interface (AMI)
позволяет приложениям и скриптам клиента под­
ключаться к Asterisk и управ лять командами или
читать события через поток TCP/IP. Это невероятно
удобный инструмент для разработчиков и интегра­
торов; но стоит учесть, что, не будучи правильно за­
щищенным, AMI создает лазейку в вашем PBX. Если
у вас нет крайней необходимости в AMI, разумно бу­
дет отключить его. Если же вам без него не обой­
тись, есть другие вещи, которые можно сделать для
защиты и управления доступом.
Файл, в котором настраивается AMI — это /etc/
asterisk/manager.conf.
Полностью отключите AMI:
[general]
enabled = no
webenabled = no
Защитите AMI при необходимости:
[general]
enabled = yes
webenabled = no
port = 1685 ; не помешает сменить порт
по умолчанию 5038
allowmultiplelogin = no
[username]
secret = password
deny = 0.0.0.0/0.0.0.0
permit = 127.0.0.1/255.255.255.255
permit = xxx.xxx.xxx.xxx/255.255.255.255 ;
все нужные внешние IP­адреса
Fail2ban
Fail2ban присмат ривает за фай ла­
ми журна лов на предмет специфи­
ческих записей, а затем действует
в за висимо сти от обна ру женного. Этот мощ ный
ин ст ру мент обыч но при ме ня ют для бло ки ров­
ки вы бранных IP­ад ре сов, принад лежа щих хос­
там, которые пытаются нарушить целостность ва­
шей системы — например, некий хакер настойчиво
порывается уга дать имя поль зовате ля и пароль.
Fail2ban неплохо ла дит с Asterisk и по ла га ет ся
на Asterisk в плане обнару жения любых вторжений,
ошибок ау тентификации и записи данных.
Установите Fail2ban:
yum install fail2ban
Настройте Fail2ban:
touch /etc/fail2ban/filter.d/asterisk.conf
Добавьте следующее:
failregex = NOTICE.* .*: Registration from ‘.*’ failed
for ‘<HOST>:.*’ ­ Wrong password
NOTICE.* .*: Registration from ‘.*’ failed for
‘<HOST>:.*’ ­ No matching peer found
NOTICE.* .*: Registration from ‘.*’ failed for
‘<HOST>:.*’ ­ No matching peer found
NOTICE.* .*: Registration from ‘.*’ failed for
‘<HOST>:.*’ ­ Username/auth name mismatch
NOTICE.* .*: Registration from ‘.*’ failed for
‘<HOST>:.*’ ­ Device does not match ACL
NOTICE.* .*: Registration from ‘.*’ failed for
‘<HOST>:.*’ ­ Peer is not supposed to register
NOTICE.* .*: Registration from ‘.*’ failed for
‘<HOST>:.*’ ­ ACL error (permit/deny)
NOTICE.* .*: Registration from ‘.*’ failed for
‘<HOST>:.*’ ­ Device does not match ACL
NOTICE.* <HOST> failed to authenticate as ‘.*’$
NOTICE.* .*: No registration for peer ‘.*’ \(from
<HOST>\)
NOTICE.* .*: Host <HOST> failed MD5 authentica­
tion for ‘.*’ (.*)
NOTICE.* .*: Failed to authenticate user
.*@<HOST>.*
NOTICE.* .*: Sending fake auth rejection for de­
vice .*\<sip:.*\@<HOST>\>;tag=.*
touch /etc/fail2ban/filter.d/asterisk.conf
PIN-коды
Ес ли вам нравится разрабатывать
и вносить изменения в свой IP PBX,
то вам опре де ленно сто ит пре ду­
смот реть для всех ис хо дя щих вы зо вов PIN­ау­
тен тификацию. Есть несколько реа лизаций этой
функции, но суть ее в том, чтобы заставить поль­
зователей перед совершением исходящего вызо­
ва ау тентифицироваться с помощью PIN. Ау тенти­
фикация по PIN­коду является хорошим способом
ог ра ничить исходящие вызовы ли бо исходящие
вызовы в опре де ленные мес та — например, вне
страны или по привилегированным тарифам.
Это не только предоставля ет за щи ту про тив
ха ке ров, со вер шаю щих до ро го стоя щие звон ки,
Можете ли вы позволить себе рискнуть?
К сожа лению, когда речь идет об об­
нару жении хакеров и привлечении
их к ответственности за SIP­обман,
историй со счастливым концом
очень ма ло. Поимка злоумышленни­
ков крайне трудна вследствие того, что преступле­
ние обычно совершается в другой стране, пересекая
несколько юрисдикций. Да же несмотря на то, что
жертва может действовать в стране с продвину тым
50
|
LXF212 Август 2016
законодательством в вопросе кибер­преступле­
ний, шансы на справед ливое возмездие сводятся
к нулю. Эта жестокая реальность нередко приводит
к финансовой катастрофе и может, в некоторых
слу ча ях, вывести предприятие из строя, а частных
лиц оставить с огромным долгом за телефонные
переговоры.
Нет никаких правил, которые бы требова­
ли от носителей возмещения убытков в слу чае
www.linuxformat.ru/subscribe
мошенничества. Так что, в отличие от мошенниче­
ства с кредитными картами, где вы можете позво­
нить в ваш банк и оспорить подозрительные счета,
SIP­обман — совсем другое дело, и оспаривание
легальности мошеннических вызовов ничего вам
не даст.
По этим причинам готовность к хакерским
атакам и правильная защита от них становятся
еще важнее.
SIP-обман
но так же пред лагает предприятиям способ отсле­
живания вызовов внутри самой организации. Вы­
дав PIN­код ка ж дому сотруднику или члену персо­
на ла организации, вы можете отслеживать вызовы
а так же ус танав ливать ограничения по затратам,
индивидуальные для ка ж дого.
Есть ряд версий данных функций с открытым
кодом, доступных для обычных платформ IP PBX.
В Asterisk к желаемому результату приводит вклю­
чение команды Authenticate в план звонков.
Вот план звонков, включая команду Authenticate:
[outgoing]
exten => _0X.,1,Authenticate(/etc/asterisk/
passwords/${ACCOUNTCODE})
exten => _0X.,2,Dial(${TRUNK}/${EXTEN:1})
exten => _0X.,3,Hangup()
При использовании этого метода следует соз­
дать отдельный файл пароля для ка ж дого пользо­
вателя. Имя файла должно соответствовать id зво­
нящего для соответствующего пользователя в sip.
conf, например:
[1000]
type=friend
accountcode=ABC123
context=user­ABC123
username=ABC123­1000
secret=password
nat=yes
qualify=yes
language=en
host=dynamic
canreinvite=no
dtmfmode=rfc2833
defaultip=0.0.0.0
port=5060
regexten=1000
callerid=ABC123­1000 <1000>
disallow=all
allow=alaw
allow=ulaw
allow=g729
allow=gsm
Чтобы команда Authenticate работа ла, файл па­
роля с именем ABC123-1000 на до создать в /etc/
asterisk/passwords/. Со держи мым это го фай ла
должен быть пароль, используемый для ау тенти­
фикации пользователя.
Засечь вторжения
Есть ряд доступных и универсаль­
ных сторонних решений, помогаю­
щих защитить ваш PBX от мошен­
ничест ва SIP и дру гих атак. Хорошим примером,
разработанным специально для Asterisk, является
SecAst от Telium. SecAst — это система обнару же­
ния и предупреж дения вторжений, разработанная
для защиты телефонных систем на основе Asterisk
от атак и мошенничества. Используя ряд продви­
ну тых технологий для обнару жения действитель­
ной ау тен тифика ционной информа ции, которая
была разглашена или скомпрометирована, SecAst
использует для обнару жения мошеннической ак­
тивности эвристические алгоритмы, основанные
на известных шаблонах атак.
Дос тупное в бесплатном и платном варианте,
это и другое похожее ПО от сторонних производи­
телей может успокоить ваши тревоги, но не стоит
полагаться только на сторонние решения.
При все растущем числе любителей и предпри­
ятий, использующих свои собственные решения IP
PBX, становится как никогда важным осознавать
все риски, связанные с SIP­обманом. Защита ва­
шей сис темы переста ла быть опцией по выбору.
Это суровая необходимость. Следуя за выходом та­
ких технологий, как Raspberry Pi, многие разработ­
чики и владельцы предприятий экспериментируют
(и часто успешно) со своими собственными реше­
ниями с открытым кодом, например, Asterisk, и хотя
экономные решения могут быть весьма привлека­
тельны для некоторых организаций, стоит помнить,
что безопасность остается чрезвычайно важной.
www.linuxformat.ru/subscribe
Вложи те не мно го вре ме ни в оцен ку не обхо­
димости личных и деловых коммуникаций и вне­
дри те соот ветст вующую поли тику безопасности
для защиты своей сис темы и банковского счета.
Не дожидайтесь момента, когда станет слишком
позд но. Мо шен ни че ские ата ки SIP про ис хо дят
очень быстро, и жертвы остаются с огромным сче­
том за телефон обычно да же преж де, чем кто­то
пой мет, что сис те ма бы ла взло ма на. Не мно гие
пред приятия или част ные лица могут по зволить
себе терять десят ки или да же сот ни тысяч фун­
тов. А вы?
Говоря с высоты своего опыта полу чения, лет
одинна дцать на зад, счета бо лее чем на £ 70 000,
мы можем с пол ной уве рен но стью зая вить, что
SIP­обман — реальная и крайне серьезная угро­
за, продолжающая существовать и по сей день. Го­
товьтесь — либо будьте готовы поплатиться. В бук­
вальном смысле. |
Наш эксперт
Дэвид Митчелл — раз­
работчик ПО и пред­
приниматель, потра­
тивший последние
15 лет на написание
ведущих софтверных
решений для индустрии
телекоммуникаций.
Август 2016 LXF212
|
51
Советы мистера Ботвика
По советам
м-ра Ботвика
Нейл Ботвик
Ш-шш... Никому не говорите, но на сей раз Нейл
Ботвик прокрался в офис и написал колонку Джолиона, пока все стона ли насчет планшета с Ubuntu.
Эзотерическое системное администрирование
из таинственных закоулков серверной.
Фермы с Pi
aspberry Pi провозглашался как уст­
ройство для обучения с благородной
целью увеличить число компьюте­
ров в школах и привлечь к программиро­
ванию больше детей. Зна ла ли Raspberry Pi
Foundation, что Pi найдет работу и в других
областях — автоматизации, робототехни­
ке, играх — не говоря уже о паре Pi на око­
лоземной орбите — и во многих других? На­
верное, они представляли широту диапазона
применения Pi, но не ожида ли, что Pi ока жет
влияние на такое количество сфер. А при чем
здесь системное администрирование?
Raspberry Pi на ходит применение так же
и как компьютер кластеров. Если вы разво­
рачиваете серверную ферму из нескольких
мощных компьютеров и хотите ее протес­
тировать, перед вами встает несколько про­
блем. Первая — стоимость оборудования для
тестовой системы, вторая — обеспечение
системе нагрузки как в реальной жизни.
Raspberry Pi — дешевое устройство c ма­
лым потреблением мощности — позволяет
смоделировать серверную ферму на аппара­
туре за несколько сотен фунтов. Благода­
ря более низкой производительности не при­
дется создавать слишком большую нагрузку,
чтобы проверить, как кластер справляется
с перегрузками и выходом из строя отдель­
ных серверов. Причем снижается не толь­
ко стоимость оборудования: поскольку Pi
мал и не требует много энергии, весь кла­
стер можно уместить на столе и подключить
к одной элек трической розетке. Это поможет
более крупным организациям с начальным
развертыванием и тестированием больших
кластеров, но будет полезным и для тех ком­
паний и групп, которым иначе пришлось бы
отказаться от кластерных вычислений.
После долгих лет на деж ды на успех и до­
минирование на рабочем столе, теперь Linux
везде — от суперкомпьютеров до крошеч­
ных встраиваемых устройств, и почти на всех
промежу точных устройствах, за исключени­
ем, разумеется, настольных компьютеров.
Джолион вернется через месяц...
[email protected]
R
52
|
LXF212 Август 2016
Двойной Badlock
Обнаруженная в протоколе SMB уязвимость влияет
на Windows и Samba.
ем из нас, кто работает только в Linux, обыч­
но не за чем об ра щать осо бое вни ма ние
на предупреж дения безопасности Windows
(разве что из беспокойства о том, что на наши поч­
товые серверы хлынет поток свежего спама от бо­
тов Windows). А вот уязвимость Badlock в файловом
сервере SMB от Microsoft отличается тем, что так же
на системы Linux. Это уязвимость уровня протоко­
ла, так что влияет и на Samba.
В мар те, когда о Badlock впервые со общи ли,
ее описыва ли словами «критическая» и «важная».
Теперь, когда появи лись под робности и исправ­
ления, оказа лось, что эта ошибка сопровож дает­
ся на зой ливой рек ламой, а так же уязвимостями
(и красивым логотипом). Badlock создает несколь­
ко уязвимостей. Она разрешает атаки «посредник»
(MITM), позволяя пользователю притвориться дру­
гим пользователем, чтобы изменить данные и вы­
полнять произвольные сетевые вызовы Samba. Од­
на ко для этого преж де все го не обхо дим дос туп
Т
к се ти. Хо тя в по след них ре ли зах уяз ви мость
Badlock устранили, администраторы так же долж­
ны настроить защиту от атак MITM, включив в свою
конфигурацию следующие параметры.
server signing = mandatory
ntlm auth = no
Badlock так же может содействовать атаке «от­
каз в обслу живании (DoS)» для удаленных подклю­
чений, хотя держать порты SMB открытыми давно
считается неумным. Безопаснее по возможности
поль зоваться VPN а в дру гих мес тах ог раничить
доступ с помощью правил брандмауэра. Но, несмот­
ря на весь шум, сопровож давший первое объявле­
ние о Badlock, эта уязвимость не такая уж важная
или критическая. Она не позволяет уда ленно вы­
полнять код или повышать привилегии, и угрожает
лишь небольшому числу компьютеров. Разумеет­
ся, на личие любой уязвимости — это плохая но­
вость, и в последних выпусках Samba — 4.4.2, 4.3.8
и 4.2.11 — эта уязвимость устранена.
> Сначала Badlock
объявили критической уязвимостью;
она и вправду важная, но уж никак
не ужас-ужас-ужас.
www.linuxformat.ru/subscribe
Советы мистера Ботвика
Детальный контроль доступа
Надо допустить много народу к работе с одними и теми же файлами?
Нейл Ботвик покажет, чем тут помогут списки контроля доступа.
ла дение файлами и права доступа к ним в Linux позволя­
ют удобно управлять допуском к работе с файлами в мно­
гопользовательской системе: с какими файлами пользо­
ватель может работать и что ему можно делать. Однако система
рассматривает ка ж дого пользователя изолированно. Это годится
для отдельных пользователей в одной системе (или на файловом
сервере), но не позволяет организовать совместную работу груп­
пы пользователей. Проблема в том, что владелец у ка ж дого файла
один, и обычно записывать в файл тоже может только этот поль­
зователь. Мож но сде лать файл дос тупным для записи группой
и создать группу, содержащую всех, кому может понадобиться пи­
сать в этот файл, но при ка ж дом создании нового файла пользо­
вателю придется вспоминать про смену для разрешения командой
chmod, чтобы другие пользователи тоже могли записывать в этот
файл. Нам ну жен способ сказать «любой файл, созданный в этом
ката логе, должен быть доступен для записи этим пользователям».
Этот способ позволит совместно работать над набором файлов.
Хорошая новость в том, что такой способ уже есть. Это списки кон­
троля доступа (ACL).
> После добавления
или удаления списков контроля доступа по setfacl просмотрите текущие
настройки для файла или каталога
по getfacl.
В
Подготовка пути
Перед нача лом работы с ACL на до предусмотреть три вещи. Пер­
вая — ядро должно включать под держку ACL. В обычных дист­
рибу тивах она есть, но ес ли вы разворачиваете собственное яд­
ро, об этом придется позаботиться отдельно — включить списки
контроля доступа для ка ж дой файловой системы: CONFIG_EXT4_
FS_POSIX_ACL, CONFIG_BTRFS_FS_POSIX_ACL и т. д. Затем нужно
смонтировать файловую систему с опцией acl в /etc/fstab. Для btrfs
это не обязательно, поскольку списки контроля доступа включе­
ны в ней автоматически. Наконец, нужно установить утилиты про­
странства пользователя для ACL; пакет обычно называется ‘acl’.
Сделав это, создадим ката лог и файл для общего доступа.
$ mkdir shared
$ echo “Test file” >shared/testfile
$ getfacl shared/testfile
# file: shared/testfile
# owner: nelz
# group: users
user::rwgroup::r­­
other::r­­
Эта информация очень похожа на получаемую от команды ls ­l,
разве что она более подробная. Всё, что у нас есть — файл, вла­
дельцем которого является пользователь и который доступен для
записи пользователю. Здесь getfacl считывает информацию ACL
из файла, а реальную работу выполняет ее напарница setfacl:
$ setfacl ­­modify group:projectx:rw shared/testfile
$ getfacl shared/testfile
# file: shared/testfile
# owner: nelz
# group: users
user::rw­
group::r­­
group:projectx:rw­
mask::rw­
other::r­­
Теперь вы видите, что у группы projectx есть права на чтение
и запись. Параметр ­­modify, или ­m, изменяет права в соответствии
с указанной за ним спецификацией ACL. Она содержит три части,
разделенные двоеточиями. Первая сообщает, что мы изменяем пра­
ва доступа для группы, вторая указывает группу, а третья — права
доступа. Так как владельцем файла являетесь вы, то su или sudo для
изменения ACL этого файла использовать не нужно. ACL не изме­
няют владельца файла, а лишь определяют, кто и что может делать
с файлом. Пока это не слишком отличается от команды chmod g+w
shared/testfile, но попробуйте это: $ setfacl ­m user:fred:rw shared/
testfile. Теперь указанный пользователь сможет записывать в файл.
ACL для каталогов
Пока мы работа ли только с одним файлом, да же когда запуска ли
команду $ setfacl –m group:projectx:rw shared. Любой файл, создан­
ный в этом ката логе, будет принад лежать пользователю, который
его создал, и иметь стандартные права доступа. Существуют два
варианта команды setfacl, которые с этим работают:
$ setfacl ­m ­R group:projectx:rw shared/
$ setfacl ­m default:group:projectx:rw shared/
Первый вариант применяет парамет ры к за данному ката ло­
гу и всему, что в нем на ходится, с помощью параметра ­R (он же
­­recursive). Второй вариант содержит другую версию специфи­
кации ACL с префиксом default:. Эта команда устанавливает права
доступа по умолчанию для ката лога, которые применяются ко всем
новым файлам и ката логам, в нем создаваемым. Создавайте файл
от имени другого пользователя в ката логе shared, и вы увидите, что
вла дельцем файла (по данным команды ls) является этот другой;
тем не менее, текущий пользователь может записывать в файл,
при условии, что оба пользователя на ходятся в указанной группе.
Мы создавали этот ката лог в ката логе home; на прак тике вы
вряд ли станете так делать, потому что в этом случае придется пре­
доставить пользователям права доступа не меньше rx для ката ло­
гов верхнего уровня, в противном случае те не смогут прочесть наш
ката лог независимо от настроенных списков контроля дос ту па.
Графический вариант
Обычно для работы с ACL используется
командная строка, но для решения этой
за дачи есть и несколько графических
программ. Файловый менед жер KDE
Dolphin под держивает ACL; на жмите кноп­
ку Advanced Permissions [Расширенные
права доступа] в окне Properties [Свойства]
www.linuxformat.ru/subscribe
файла. Существует отдельный редак тор
ACL для GNOME, eiciel (http://rofi.roger­
ferrer.org/eiciel), который включает плагин
Nautilus, предоставляющий те же возмож­
ности, что и Dolphin. Это программа для
Gnome, но редак тором можно пользовать­
ся в любом рабочем столе.
Август 2016 LXF212
|
53
Советы мистера Ботвика
Резервное копирование списков контроля доступа
Проверьте, может ли ваша программа резервного
копирования сохранять ACL и при необходимо­
сти восстанавливать их потом. Если не может,
создайте их копию отдельно с помощью getfacl,
например, так:
$ getfacl ­R shared >shared.acls
Включите этот файл в резервную копию, а затем
после восстановления из резервной копии вы смо­
жете восстановить ACL командой:
$ getfacl ­­restore=shared.acls
Так как другие люди будут создавать файлы в об­
щем ката логе, а вы можете настроить ACL только
хотя вы вряд ли за хотите пожертвовать удобством чтения ради эко­
номии одного символа. Списки контроля доступа для других поль­
зователей и групп не затрагиваются; если вы хотите заменить все
списки для файла, используйте ­­set вместо ­­modify.
> Пользователям
Gnome нужна дополнительная программа для графического изменения
ACL; в других рабочих столах она же
будет работать
редактором.
Удаление или копирование ACL
Самый эффек тивный под ход — создать ката лог где­то еще; мо­
жет быть, выбрать сам ката лог /home, а затем сделать символи­
ческие ссылки с него на ката лог home для ка ж дого пользователя.
При использовании setfacl –modify спецификация ACL перегру жа­
ет все существующие списки для пользователя или группы; другие
списки для этого пользователя или группы для этого файла очища­
ются, да же если они были настроены ранее, например:
$ setfacl ­m user:fred:rx file
$ setfacl ­m user:fred:rw file
В результате этих команд пользователь получает права на чте­
ние и запись, но не на выполнение. Кстати, setfacl установит для це­
левого объек та только права на выполнение, если это ката лог или
если у него уже есть права на выполнение для пользователя. Права
доступа так же можно указать в виде одной восьмеричной цифры,
Для уда ления ACL используйте ­x, или ­­remove. Синтаксис этого
параметра похож на ­m, за исключением того, что права доступа
не указываются — все права доступа для этого пользователя или
группы уда ляются:
$ setfacl ­x user:fred shared/somefile
$ setfacl ­xR user:fred shared
Если вы часто применяете сложные наборы ACL, можно сэко­
номить время, пометив их в файл и использовав параметр ­M вме­
сто ­m (или ­X вместо ­x):
$ setfacl ­M acl_file target
Этот вариант можно использовать с кана лом для копирования
ACL из одного файла в другой:
$ getfacl oldfile | setfacl ­M ­ newfile
Вы можете за хотеть просмотреть, как будут работать специфи­
кации ACL без их фак тического применения, и затем просмотреть
результаты командой getfacl. Это поможет сделать параметр ­­test:
$ setfacl ­­test ­m user:fred:rw shared/testfile
shared/testfile: u::rw­,u:fred:rw­,g::r­­,g:users:rw­,m::rw­,o::r­­,
Вы вод ко ман ды сжат до за га доч но сти, но это не обхо ди мо
при изменении ACL для нескольких файлов. Он показывает, какими
станут права доступа для ка ж дого файла, если запустить команду
без параметра ­­test. ACL позволяют нескольким пользователям
читать и записывать файлы в ката логе, но не предусматривают ни­
какой защиты от перезаписи одним пользователем результатов
работы другого. Желая по­настоящему работать совместно, поду­
майте о под ходящем редак торе (см. «Сравнение» стр. 20 LXF210)
или вос поль зуй тесь ре по зи то рия ми git для хра не ния фай лов;
в этом случае вы сможете определить и откатить изменения. |
> KDE имеет встроенную поддержку
ACL в файловом
менеджере Dolphin.
54
|
для своих файлов, эту команду на до выполнять
с правами root.
А вообще команду getfacl можно запускать
от имени обычного пользователя, если пользова­
тель имеет права доступа для чтения всех файлов
по пу ти.
LXF212 Август 2016
www.linuxformat.ru/subscribe
Учебники
Наши эксперты помогут вам с любым приложением Linux!
ЕВГЕНИЙ БАЛДИН
Подтвердивший
свою квалификацию
физик.
Уже 25
В этом месяце вы научитесь…
Бог — такой же художник,
как другие художники.
Пабло Пикассо
Р
овно 25 лет назад 25 авгу­
ста 1991 г. студент Линус Тор­
вальдс, которому к тому мо­
менту исполнился 21 год, объявил
в телеконференции comp.os.minix
о создании рабочего прототипа но­
вой операционной системы Linux.
Кстати, тогда ядро операционной
системы еще не называ лось Linux,
так как сам автор решил его назвать
Freax (от FREe, freAk и uniX). Первый
публичный релиз исходников ядра
был сделан 17 сентября и содержал
порядка десяти тысяч строк кода, что
уступает по размерам современно­
му ядру Linux более чем в два дцать
тысяч раз!
Ядро Linux создава лось для пер­
сонального компьютера и, к сожа­
лению, именно на нем до сих не по­
лучило да же блокирующего пакета;
но сформировавшиеся сообщество
GNU/Linux уже вполне самодоста­
точно и не зависит от внешних фак­
торов. Если, ска жем, Google решит
выстрелить себе в ногу и заме­
нить Linux в Android на Fuchsia,
то это почти никак не повлияет
на уже сложившуюся инфраструк­
туру для современных линуксои­
дов. GNU/Linux уже давным­давно
сделался взрослым.
PS Компания Microsoft внезапно
открыла исходные тексты под лицен­
зией MIT и портирова ла на GNU/Linux
командную оболочку PowerShell.
Оно, конечно, совершенно ни к че­
му, но что­то в этом мире явно
стало меняться.
[email protected]
Анализировать диск . . . . . 56
Исследовать систему . . . . 60
Ускорять графику . . . . . . . . . 62
Дмитрия Пантелеичева заинтересова ла
занятость его жесткого диска и распо­
ложение файлов на нем.
Ник Пирс добывает детальную инфор­
мацию о системе, не выходя из любез­
ного его сердцу термина ла.
Выбор видеокарты доставил Афнану
Рехману затруднения, но он их преодо­
лел и установил годные драйверы.
Печатать
3D-модели . . . . . . . . . 66
Структурировать
текст . . . . . . . . . . . . . . . . 70
Устанавливать
ФС . . . . . . . . . . . . . . . . . . . 76
Пересылать
образы . . . . . . . . . . . . . 80
Аластер Дженнингс ста­
рательно подбирает про­
граммное обеспечение,
которое свяжет ваш ПК
с 3D­принтером.
По твердому убеж дению
Джеймса Ханта, лучший
формат для долгосрочного
хранения документов —
простой текст.
Демистифицируя процессы
установки, Дмитрий Кузнецов обратился к консольной
утилите создания корневой
файловой системы.
Павлу Емельянову не понра­
вились излишние за держки
на создание образов,
и он изыскал способ
их сократить.
И новичкам, и гуру!
Всегда полезно будет познать
нечто доселе неведомое
Вводим и выводим . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Fuzz-тестирование . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Важная в системном программировании тема — фай­
ловый ввод/вывод. Чем и занялся Михалис Цукалос
для Rust.
Увы, этот мир не идеа лен, и в вашу программу могут уго­
дить злокачественные данные. Джонни Бидвелл прини­
мает превентивные меры.
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
55
Азы системы Осваиваем утилиты, необходи­
мые вам для полноценной работы на Linux­ПК
ЧАСТЬ 9
GNU Core Utilities
Дмитрий Пантелеичев выходит на финишную прямую своего курса по ключевым
утилитам Linux.
Наш
эксперт
Дмитрий Панте‑
леичев считает,
что любую техно­
логию на до изу­
чать от простого
к сложному, и ка­
ж дый шаг закреп­
лять прак тически­
ми примерами.
И
так, сегодня рассмотрим средства для работы с диско­
вым пространством, размерами и именами файлов, и не­
которые другие.
df
Начнем с утилиты df, за дача которой — оценить занятое и свобод­
ное дисковое пространство. Измеряется оно в блоках. По умолча­
нию размер одного блока равен 1 кибибайту (1024 байт). В выво­
димом результате по умолчанию показаны следующие столбцы:
файловая система, количество блоков всего, количество занятых
блоков, количество свободных блоков, количество занятых блоков
в процентах, точка монтирования.
Как обыч но, вы во ди мую ин фор ма цию мож но на стро ить
под свои ну ж ды. Ключ ­B (­­block­size=) за дает единицы размера
блока, и принимает буквенные значения: K, Ki, M, Mi, G, Gi, T, Ti, P,
Pi, E, Ei, Z, Zi, Y, Yi. Как вы уже, конечно, дога дываетесь, это означа­
ет килобайты, кибибайты, мегабайты, мебибайты... ну и так да лее.
К ка ж дому из этих обозначений можно приписать B. То есть можно
указать M или MB, Mi или MiB.
Ключ ­h (­­human­readable) пока жет эти бу квенные суффик­
сы в выводимых результатах. Причем если единицу размера блока
> Рис. 1. Выборочная информация о дисковом пространстве.
56
|
LXF212 Август 2016
не за дать, то ключ ­h поступит хитроумно: крупные числа выведет
в крупных единицах, мелкие числа — в мелких единицах.
Ключ ­­output позволяет перечислить поля, которые на до вы­
вести. Эти поля могут быть следующими:
» source — источник монтирования (обычно это устройство);
» fstype — тип файловой системы;
» itotal — дисковое пространство, занимаемое индексными деск­
рипторами файлов (inodes) всего;
» iused — занятое индексное пространство;
» iavail — свободное индексной пространство;
» ipcent — занятое индексное пространство в процентах;
» size — общий размер дискового пространства;
» used — занятое дисковое пространство;
» avail — свободное дисковое пространство;
» pcent — свободное дисковое пространство в процентах;
» file — имя файла, если оно указано в команде (см. ниже);
» target — точка монтирования.
После ключей можно указать список файлов или ката логов. То­
гда будут отобра жаться данные только для файловых систем, со­
держащих указанные файлы или ката логи.
Давайте посмотрим информацию для корневого ката лога и ка­
та лога /home. Нас будет интересовать только источник монтирова­
ния, общее, занятое и свободное дисковое пространство. Выводить
будем с указанием суффиксов. Размер блока пусть определится
автоматически.
df ­h ­­ouput=source,size,used,avail,target / /home
На рис. 1 мы видим, что ката логи корневой и /home на ходятся
на разных разделах диска. Объем первого раздела — 41 ГБ, из ко­
торых занято 9 ГБ. Объем второго раздела — 105 ГБ, из которых
занято 24 ГБ.
du
Эта утилита определяет объем дискового пространства, занято­
го опре де ленным фай лом или ката логом. Ес ли ука зан ката лог,
то указывается пространство, занимаемое так же всеми его под­
ката логами. Но ес ли подката логов очень много, то это не слиш­
ком удобно. В таком слу чае с помощью ключа ­d (­­max­depth=)
можно за дать максимальную глубину, на уровне которой показы­
вать подката логи. Если глубина будет указана как 0, подката логи
показаны не будут.
Если за даны ката лог и указан ключ ­a (­­all), то будут показаны
не только подката логи (до заданного уровня), но и содержащие­
ся в них файлы. Ключи ­B и ­h действуют так же, как и ана логич­
ные ключи в df.
Следует различать такие понятия, как «размер файла» и «за­
нимае мое дис ковое про стран ст во». Минимальной ад ре суе мой
единицей хранения информации на диске является сек тор. Раз­
мер сек тора современных дисков является 4096 байт (4 кибибай­
та). Поэтому фрагмент файла размером меньше одного сек тора
всё равно займет целый сек тор. Вот почему занимаемое файлом
дисковое пространство всегда несколько больше самого файла.
www.linuxformat.ru/subscribe
Базовые утилиты GNU Учебник
Ключ ­­apparent­size (он не имеет сокращенной версии) указы­
вает, что определять надо именно размер файла, а не дисковое про­
странство. По умолчанию выводится дисковое пространство. Да­
вайте созда дим два ма леньких текстовых файла разных размеров.
cat > hello1 << EOF
Hello world! Hello world! Hello world!
EOF
cat > hello2 << EOF
Hello world!
EOF
Очевидно, что файл hello1 должен быть приблизительно в три
раза больше, чем hello2. Давайте запустим утилиту du и проверим,
сколько места они занимают. Добавим ключ ­h, чтобы программа
сама определила, в каких единицах показывать результат.
du ­h hello1 hello2
Ту же самую команду можно ввести, используя символы под­
становки. Квадратные скобки означают, что на этом месте может
быть любой символ из тех, что внутри скобок.
du ­d hello[12]
Ре зультат: оба фай ла занимают 4.0 КБ — размер дискового
сек тора.
4.0K hello1
4.0K hello2
Теперь проверим их собственный размер. Для этого добавим
ключ ­­apparent­size.
du ­h ­­apparent­size hello[12]
Вот теперь видно, что размеры у них разные:
39 hello1
13 hello2
stat
Да лее, утилита stat. Она показывает статистическую информацию
о файле или ката логе. Посмотрим, какие же параметры программа
выведет по умолчанию по нашим файлам hello1, hello2.
stat hello[12]
Результат можно увидеть на рис. 2.
Если указать ключ ­f (­­file­system), будет показана информа­
ция о файловой системе, в которой на ходится этот файл или ка­
та лог (рис. 3).
stat ­f hello1
Если нас не устраивают параметры по умолчанию, мы можем
указать, какие параметры выводить. Для этого используется ключ
­c (­­format=), значением которого является шаблон, содержащий
произвольный текст и управ ляющие последовательности. Вме­
сто этого ключа можно использовать ключ ­­printf. Разница в том,
что ­­printf интерпретирует экранирующие последовательности
и не добавляет в конце результата символ переноса строки.
Рассмотрим, что это за параметры и какими управляющими по­
следовательностями они за даются: %a — права доступа в восьме­
ричном виде, %A — права доступа в дру жественном виде, %b —
количество занятых блоков, %B — размер ка ж дого блока в байтах,
%C — контекст безопасности SELinux, %d — номер устройства
(десятичный формат), %D — номер устройства (шестна дцатерич­
ный), %f — права доступа (шестна дцатеричный), %F — тип файла,
%g — ID группы пользователя, %G — имя группы пользователя,
%h — количество жестких ссылок, %i — номер индексного деск­
риптора (inode), %m — точка монтирования файловой сис темы,
содержащей этот файл или ката лог, %n — имя файла, %N — имя
файла, на который ссылается символическая ссылка, %o — опти­
мальный размер блока для передачи файла, %s — размер файла
в байтах, %t — старший номер устройства (шестна дцатеричный
формат), %T — младший номер устройства (шестна дцатеричный),
%u — вла делец (ID пользователя), %U — вла делец (имя пользова­
теля), %w — время создания файла, %W — время создания файла
в секундах с 1.01.1970 (эпоха UNIX), %x — время последнего досту­
па, %X — время последнего доступа в секундах с 1.01.1970, %y —
время последнего изменения, %Y — время последнего изменения
в секундах с 1.01.1970, %z — время последнего изменения стату­
са, %Z — время последнего изменения статуса в секундах относи­
тельно 1.01.1970.
Всё вышесказанное относилось к файлам. Теперь рассмотрим
параметры файловой системы: %a — количество свободных бло­
ков, доступных не суперпользователю, %b — общее количество
блоков, %c — общее количество inode, %d — количество свобод­
ных inode, %f — количество свободных блоков, %i — ID файловой
системы (шестна дцатеричный), %l — максимальная длина имени
файла, %n — имя файла, %s — размер блока (для быстрой пере­
дачи), %S — размер блока (для подсчета блоков), %t — тип фай­
ловой системы (шестна дцатеричный формат), %T — тип файловой
системы (в дру жественном виде).
Итак, если мы за хотим вывести только время последнего до­
ступа и время последнего изменения файла hello1, то делаем это
следующей командой:
stat ­c 'последний дос туп %x, последнее изменение %y' hello1
последний дос туп 2016­02­16 04:18:09.583001638 +0300,
последнее изменение 2016­02­16 04:18:09.583001638 +0300
> Рис. 2. Общая статистика по файлам.
sync
За дача следующей утилиты, sync — сохранить на диск данные,
которые буферизованы в оперативной памяти. Буферизация осу­
ществляется с целью увеличить скорость работы, избежав лиш­
них обращений к диску. Оборот ная сторона этого — опасность
потери данных в слу чае обрушения системы. Утилита sync велит
ядру записать буферизованные данные на диск. Эту утилиту на до
запускать перед любым действием, небезопасным в плане воз­
можного обрушения системы. Таким действием может быть запуск
новой программы с целью ее тестирования, запуск программы, по­
лученной из нена дежного источника, любые действия от имени су­
перпользователя, а так же любые действия на рабочем сервере.
> Рис. 3. Общая статистика по файловой системе.
» Подпишитесь на печатную или электронную версии на www.linuxformat.ru/subscribe!
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
57
Учебник Базовые утилиты GNU
10
30
39
hello1
hello2
hello3
basename и dirname
> Рис. 4. Дамп файла с нулевыми
байтами.
Скорая
помощь
Символы под­
становки бывают
следующие:? —
любой символ, * —
любая подстро­
ка, [123] — любой
символ из набо­
ра, [!123] — любой
символ не из набо­
ра, [1­3] — любой
символ из диапа­
зона, [!1­3] — лю­
бой символ
не из диапазо­
на, {gif,jpg,png} —
любая подстрока
из списка.
truncate
Утилита truncate изменяет размер файла. Ес ли файл урезается,
но содержит какие­нибудь данные, то часть данных теряется. Если
файл расширяется, то расширенная часть заполняется нулевыми
байтами. Если указанный файл отсутствует, он будет создан (соз­
дание отсутствующего файла можно запретить с помощью клю­
ча ­c или ­­no­create). Новый размер файла за дается ключом ­s
(­­size=) и указывается числом, к которому могут быть добавлены
уже известные нам суффиксы (K, KB, M, MB и т. д.). Если суффиксы
не указаны, размер за дается в байтах. Если имеется ключ ­o (­­io­
blocks=), то размер за дается в блоках, как указано при ключе ­o.
Ключ ­r (­­reference=) позволяет за дать новый размер файла, ана­
логично другому файлу.
Давайте за да дим размеры файлов hello2, hello3 ана логично
hello1. Поскольку файла hello3 у нас нет, он будет создан автома­
тически. Мы опять используем символы подстановки. Внутри фи­
гурной скобки помеща ют ся через за пя тую фраг мен ты строки.
И на этом месте может стоять любой из этих фрагментов. Так, за­
пись hello{2,3} означает, что действие относится и к файлу hello2,
и к файлу hello3.
truncate ­r hello1 hello{2,3}
Посмотрим размеры получившихся файлов. А заодно познако­
мимся с символами подстановки, обозначающими диапазон: [1­3].
На месте этого шаблона может стоять символ 1, 2 или 3. Размер
всех трех файлов должен получиться одинаковым: 39 байт.
du ­h ­­apparent­size hello[1­3]
39
hello1
39
hello2
39
hello3
Давайте теперь взглянем на содержимое hello2. Его размер был
13, а стал 39. Чем же заполнилось лишнее пространство? Ответ
на это даст дамп файла. В одном из прошлых уроков мы изучали
утилиту od, которая позволяет получить дамп.
od ­t d1 hello2
Мы в данном слу чае за да ли вывод дампа в десятичном виде
по одному байту. Как видно на рис. 4, всё, что следует после над­
писи “Hello world!”, занято нулевыми байтами. Нулевой байт в стан­
дарте Unicode не отобра жается никак. Поэтому, если мы откроем
файл текстовым редак тором или командой cat, мы увидим, что со­
держимое файла не изменилось.
Попробуем теперь за дать размер файла hello1 равным 10 байт.
truncate ­s 10 hello1
Теперь, если его открыть командой cat hello1, появится только
фрагмент старого текста: Hello worl
Размер файла может так же быть рассчитан, исходя из текуще­
го размера файла. В этом случае, при значении ключа ­s (­­size=)
ис поль зу ют ся пре фиксы: + (уве личить размер на N еди ниц), ­
(уменьшить размер на N единиц), < (изменить на N, только если его
размер не менее N), > (изменить на N, только если его размер не бо­
лее N), / (округлить в сторону уменьшения), % (округлить в сторо­
ну увеличения). Префиксы < и > придется экранировать, чтобы от­
личить их от операторов перенаправления.
Давайте уменьшим размер hello2 на 9 байт.
truncate ­s ­9 hello2
Проверим размер. Видно, что он уменьшился с 39 до 30.
du ­h ­­apparent­size hello[1­3]
Утилиты basename и dirname выполняют обратную функцию. Пер­
вая из полного пу ти к файлу получает только имя файла. Вторая,
наоборот, полу чает весь путь, за исключением имени файла. На­
пример, команда basename /home/dima/hello1 выдаст hello1, а ко­
манда dirname /home/dima/hello1 выдаст /home/dima.
Обе они принимают ключ ­z (­­zero), запрещающий вывод сим­
вола переноса строки после ка ж дого элемента. Утилита basename
принимает так же ключи ­a (­­multiple), разрешающий указывать
множест во фай лов в парамет рах, и ­s (­­suffix=), ука зывающий
суффикс, который на до пропускать при выводе названия.
Созда дим файл hello4.txt и выведем файлы hello1 и hello4.txt,
пропустив суффикс .txt. Здесь опять используем символы подста­
новки. В фигурных скобках перечисляются текстовые фрагменты,
которые могут стоять на месте шаблона. В данном случае просто
перед запятой стоит пустая строка.
touch hello4.txt
basename ­as .txt /home/dima/hello[14]{,.txt}
Должны быть выведены две строчки. Видно, что расширение
.txt отреза лось.
hello1
hello4
pathchk
На очереди у нас pathchk. Она проверяет имя файла на допус ти­
мость и переносимость. Сообщение об ошибке возникает в сле­
дующих случаях.
» Имя файла длиннее предельно допустимого.
» Имя хотя бы одного ката лога пу ти к файлу длиннее предельно
допустимого.
» Хотя бы один из ката логов пу ти к файлу не имеет прав на за­
пуск (что для ката лога означает права на дос туп ко вложенным
в него файлам).
Если файла не существует, но его создание не нарушит эти ус­
ловия, то ошибки нет.
Итак, попробуем с помощью pathchk проверить имя недоступ­
ного файла.
Соз да ем не дос туп ный ка та лог с по мо щью ути ли ты mkdir
с ключом ­m (см. урок 3, LXF204). Отберем у всех право на вход
и доступ к содержимому файлов.
mkdir ­m a­x mycatalog
Проверим имя файла в этом ката логе:
pathchk /home/dima/mycatalog/myfile
В результате выведется сообщение об ошибке:
pathchk: /home/dima/mycatalog/myfile: Отка зано в дос ту пе
mktemp
За дача утилиты mktemp — создавать вре́менные файлы. Они мо­
гут использоваться в различных скриптах для хранения промежу­
точных данных, слишком больших, чтобы их помещать в оператив­
ную память. Вре́менные файлы не должны нигде использоваться,
кроме соз давшей их программы. Поэтому их имя долж но быть
уникальным внутри ка ж дого сеанса работы. После окончания ра­
боты это имя должно быть забыто. Программа не должна иметь
возможность прочитать файлы, созданные ею же в предыдущий
раз. Вре́менному файлу устанавливается право на чтение и запись
только для вла дельца. Остальным, включая тех, кто входит в груп­
пу вла дельца, запрещено всё.
» Пропустили номер? Узнайте на с. 108, как получить его прямо сейчас.
58
|
LXF212 Август 2016
www.linuxformat.ru/subscribe
Базовые утилиты GNU Учебник
> Рис. 6. Вывод
значений заданных переменных
окружения.
> Рис. 5. Изменения параметра
терминала.
На звание вре́менного фай ла за дается шаблоном, в котором
обязательно должны присутствовать символы XXX, хотя бы три
подряд (но чем больше, тем безопаснее). Вместо них программа
автоматически подставляет уникальное сочетание символов. Если
на до создать временный ката лог, а не файл, используется ключ
­d (­­directory).
Давайте напишем небольшой скрипт, в котором имя вре́менного
файла будет присваиваться переменной tmpfile. В дальнейшем вся
работа с файлом осуществляется через эту переменную. Назва­
ние файла можно увидеть только при выводе на экран. Нигде в ко­
де оно не появится.
Заодно, вспомним материал предыдущих уроков: echo (вывод
текста), [ (проверка условия), $? (получение кода ответа), cat (ото­
бра жение файла), > (перенаправление потока в файл).
Весь скрипт можно было бы написать одной строкой, разде­
ляя команды точкой с запятой. Но гораздо удобнее вводить его
в несколько строк, осуществляя перенос с помощью символа \.
tmpfile=$(mktemp tmp.XXXX); \
if [ $? ­gt 0 ]; \
then echo Ошибка создания $tmpfile; \
else \
echo $tmpfile создан; \
echo Здравствуй, мир! > $tmpfile; \
cat $tmpfile; \
rm $tmpfile; \
if [ $? ­gt 0 ]; \
then echo Ошибка уда ления $tmpfile; \
else echo $tmpfile уда лен; \
fi; \
fi;
Результат должен получиться приблизительно таким:
tmp.LzGK создан
Здравствуй, мир!
tmp.LzGK уда лен
realpath
Утилита realpath разрешает символические ссылки и относитель­
ные пу ти, полу чая из них абсолютные пу ти к фай лам. Она име­
ет несколько ключей, о которых, как обычно, мож но прочи тать
в справке. Так, ключ ­­relative­to= позволяет получить не абсолют­
ный путь, а относительный путь касательно указанного файла.
Созда дим символическую ссылку на файл hello1 —
ln ­sv hello1 lnkhello
и определим абсолютный путь к файлу, на который она ссылается,
с помощью программы realpath.
realpath lnkhello
Результат должен получиться такой:
/home/dima/hello1
stty, tty и printenv
Ути лита tty выводит путь к фай лу виртуального термина ла, че­
рез ко то рый мы взаи мо дей ст ву ем с сис те мой. Ес ли вы звать
команду tty, работая без графической оболочки, будет пока зан
путь к tty­устройству:
/dev/tty2
Ес ли же вызвать ее из консоли внутри графической оболоч­
ки, то выведется путь к файлу псевдотермина ла, потому что про­
граммная консоль подключается к псевдотермина лу:
/dev/pts/0
За дать термина лу другое устройство можно с помощью ути­
литы stty. Для этого ее необходимо вызвать с ключом ­F (­­file=).
Но основная за дача утилиты stty — отобра жать или изменять
харак теристики термина ла. По умолчанию, она отобра жает только
наиболее важные харак теристики. Ключ ­a (­­all) отобра жает все
харак теристики в дру жественной форме, ключ ­g (­­save) — в ма­
шинной форме.
Всех харак теристик довольно много. Прочитать о них можно,
вы звав справ ку с по мо щью ко манд stty ­­help, man stty и stty
coreutils 'stty invocation'. Что бы осознать смысл большин ст ва
из этих параметров, придется разбираться в устройстве и прин­
ципах работы аппаратных элек тронных устройств ввода и вывода
информации. Ведь эти параметры за дают правила имитации ап­
паратного термина ла — прототипа нашего виртуального терми­
на ла. Некоторые параметры имеют числовое или символьное зна­
чение. Но большинство параметров имеют логическое значение,
подобное аппаратным переключателям «Вкл/Выкл». Если этот па­
раметр указать со знаком «минус», он выключается. Если без зна­
ка — включается. Желая поэкспериментировать с параметрами
термина ла, в первую очередь запомните параметр sane. Он уста­
нав ливает наиболее важ ные параметры в их значения по умол­
чанию и поможет вам исправить дело при неудаче эксперимента.
Возьмем, например, параметр olcuc, означающий вывод текста
одними заглавными буквами. На рис. 5 можно видеть результаты
экспериментов с этим параметром.
Утилита printenv выводит переменные окру жения с их значе­
нием. Ключ ­0 (­­null) запрещает разделять переменные символом
переноса строки. Ес ли ука зать список конкретных переменных,
то выводится только их значение (рис. 6).
chcon и runcon
Две по след ние ути ли ты, с ко то ры ми мы оз на ко мим ся, chcon
и runcon, имеют дело с контекстом безопасности SELinux.
Security Enhanced Linux (SELinux, Linux с улучшенной безопас­
ностью)— это модуль, работающий поверх операционной системы
и добавляющий, в частности, дополнительные свойства для фай­
лов и ката логов: пользователь, роль, тип и уровень.
Утилита chcon изменяет контекст безопасности для указанных
файлов, а runcon запускает программы с контекстом безопасности,
отличающимся от их текущего контекста. Нужные свойства за да­
ются следующими ключами: ­u или ­­user за дает пользователя, ­r
или ­­role за дает роль, ­t или ­­type за дает тип, ­l или ­­range за дает
уровень. Примеры работы этих утилит лучше приводить не здесь,
а в специальном курсе, посвященном SELinux.
Итак, мы познакомились с громадным пакетом из окру жения
GNU. Конечно, охватить все тонкости и частности было невозмож­
но. Но ведь цель была не в том, чтобы дублировать справочную
систему, а в том, чтобы дать общую картину и идею, куда копать
дальше. На деюсь, было интересно и познавательно. |
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
59
Терминал Учимся получать полезную
информацию о своем оборудовании
Terminal: Что я
знаю о системе?
Ник Пирс расскажет, как получить полезную информацию о вашей системе
и ее оборудовании с помощью Terminal.
К
Наш
эксперт
Ник Пирс много че­
го узнал об lsusb,
пока настраи­
вал AirPrint сервер
на Raspberry Pi Ze­
ro для своего iPad,
используя Raspbi­
an и CUPS.
акой бы рабочий стол вы ни использова ли, под ним все­
гда есть оболочка — интерфейс командной строки, кото­
рый дает вам самый полный доступ к вашему ПК. В нашей
серии мы изучаем разные способы погру жения в работу с Terminal
через приобретение новых прак тических навыков, и на этом уро­
ке узнаем, как получить ключевую информацию о процессах, про­
текающих внутри системы на Ubuntu (или другого дистрибу тива
на базе Debian).
В рабочем окру жении Unity есть множество инструментов, даю­
щих информацию о работе системы, но они разбросаны тут и там,
и редко бывают достаточно подробны. Terminal, напротив, пред ла­
гает целый ряд полезных команд, которые сообщают вам кучу де­
та лей, которые вы упускаете, работая с Unity.
Первый инстру мент, который стоит рассмотреть, это hwinfo.
Примечание: его обычно недооценивают, и все же он может пре­
дос тавить полезные сведения о работе оборудования, ус танов­
ленного на вашей сис теме, особенно ес ли запус тить его с фла­
гом hwinfo ­short.
Ва ше обо ру до ва ние бу дет пред став ле но в ви де удоб ного
списка: будет указан его тип и затем описание, как правило, вклю­
чаю щее имя про из во ди те ля и мо дель. Те перь да вай те коп нем
поглубже.
Есть целый ряд команд с префиксом ls, которые предоставля­
ют все необходимые сведения о вашей системе. Первой из них яв­
ляется универсальная команда lshw, которая дает все мельчайшие
подробности, которые вам на до (а может, и не на до) знать о вашей
системе. Примечание: запускать ее нужно в режиме администрато­
ра, поэтому при вызове используйте sudo — например, sudo lshw.
Начнет ся разностороннее ска нирова ние ва шей Linux­сис темы,
> Хотите в деталях узнать, что собой представляет ваша машина? Сделайте вывод из lshw
в файл HTML, чтобы он читался в вашем любимом браузере.
60
|
LXF212 Август 2016
а затем появится длинный — и, каза лось бы, исчерпывающий —
перечень информа ции о ней. Перева рить все это сра зу бывает
непросто, но можно вывести эту информацию в виде HTML­фай­
ла для чтения (и поиска) в вашем web­браузере, с помощью sudo
lshw ­html> sysinfo.html.
Файл будет создан там, где вы на ходитесь в данный момент
в Terminal и в вашей папке Home по умолчанию. Как и с hwinfo,
так же можно представлять краткую информацию в более удобо­
варимом виде через sudo lshw ­short. Данные о системе представ­
ляются в табличном виде, на 4 колонки, чтобы помочь определить
ваше оборудование: путь, устройство, класс и описание.
Семейство ls
Если вам нужна конкретная информация об определенной части
вашего компьютера, стоит взглянуть на других членов семейства
ls. Начните с команды lscpu, которая предоставляет подробную ин­
формацию о вашем процессоре, в том числе такие полезные вещи,
как количество ядер, архитек тура, объем кэш­памяти и под держка
аппаратной виртуа лизации.
Затем идут ваши устройства хранения данных, и здесь вы мо­
жете начать с lsblk. Она пока жет список всех ваших блочных хра­
нилищ, в том числе жесткие диски, DVD­диски, флэш­накопители
многое другое. Ключевая информация включает «имя» (в основ­
ном информацию о физическом диске и его разделах — sda и sdb1
и т. д.), размер, тип (диск или раздел, или ‘rom’ для CD и ‘lvm’, если
настроена система управления логическими томами [Logical Vol­
ume Management]) и рас по ложение дис ка в фай ловой сис теме
Linux (его «точку монтирования»). Обратите внимание так же на по­
ле ‘RM’. Ес ли его значение рано 1, то устройство является съем­
ным. Список отобра жается в виде дерева; чтобы просмотреть его
в обычном виде, используйте lsblk ­l. По умолчанию размер диско­
вода представ лен в «чи таемом» форма те (G для гигабай тов, M
для мегабайтов и т. д.). Ес ли на до отобра зить эти данные в бай­
тах, используйте lsblk ­b. Если у вас есть подключенные SSD­на­
копители, используйте флаг ­D для отобра жения под держки TRIM
(а так же других скрытых возможностей). Желая получить инфор­
мацию о файловых системах ваших дисков, введите lsblk ­f; ото­
бразятся так же метка диска и его UUID. UUID часто используется
при настройке дисков для автоматического монтирования при за­
грузке через файл /etc/fstab. Вы так же можете полу чить сведе­
ния о вла дельце ка ж дого диска, группе и правах дос тупа (пере­
численных в разделе «режим»), используя флаг ­m. Эти команды
работают ана логично ls (которую мы рассмотрели еще в LXF210),
но позволяют лучше проникнуть в суть. Вы так же можете отсор­
тировать список дисков по различным столбцам, используя ключ
­x — на пример, соз дать спи сок дис ков в поряд ке уменьшения
www.linuxformat.ru/subscribe
Терминал Учебник
Получение информации о драйверах
Большинство проблем с оборудованием, как пра­
вило, связаны с драйверами, в том числе и в Linux.
Как мы уже видели, команда lspci ­v может пока­
зать, какой драйвер (или модуль) связан с каким
устройством. Еще один инструмент для отобра­
жения этих модулей — lsmod, он отобра жает пол­
ный список всех модулей, которые используются
в настоящее время. Колонка ‘Used by’ указывает,
с какими устройствами связан ка ж дый модуль.
Записи часто повторяются, поскольку некоторые
драйверы состоят из нескольких частей (например,
вашей видеокарте нужны драйверы для ядра
и для X­сервера).
Воору жившись сочетанием lspci ­v и lsmod,
вы можете определить, какой именно модуль
используется конкретным аппаратным уст­
ройством. Узнав имя модуля, введите следую­
щую команду, чтобы узнать узнать о нем больше:
modinfo <module>.
Замените <module> на имя, указанное под lsmod
(или «работающий драйвер ядра», если вы исполь­
зуете lspci). Отобразится информация об имени
файла драйвера, его версии и лицензии. Другие
полезные поля содержат имя автора и описание,
а так же номер версии. Единственным исключением
станет драйвер видеокарты, если вы установили
проприетарные.
Если modinfo выдает сообщение «Ошибка,
не найден», то модуль в списке является псевдони­
мом; чтобы узнать настоящее имя модуля, введите
sudo modprobe ­­resolve­alias <module>, затем до­
бавьте результат к modinfo, который теперь должен
работать правильно.
размера (начиная с самого ма ленького); для этого введите коман­
ду lsblk ­х size.
Работа с Fdisk
Ути ли та fdisk тра диционно исполь зуется для изменения табли­
цы разделов, но при запуске с ключом ­l может так же отобра жать
более подробную информацию о конкретном диске. Используйте
ее вме сте с иден ти фи ка тором на ко пи те ля (/dev/sda для все го
диска, /dev/sda1 для раздела), например, sudo fdisk ­l /dev/sda.
В поя вив шем ся спи ске бу дет ука зан иден ти фи ка тор уст­
ройства, его начальная и конечная точка на диске (или разделе),
количество имеющихся в нем сек торов, размер, плюс — самое
главное — тип раз де ла. Это до вольно полное опи са ние по мо­
жет вам определить, где какой раздел на ходится (и особенно по­
лезно в слу чае с установкой двойной загрузки с участием разде­
лов Windows).
Если разделы перечислены в том порядке, как они были созда­
ны, а не по их физическому расположению на диске, ищите указы­
вающее на это сообщение «записи таблицы разделов приводятся
не в порядке расположения на диске». Чтобы понять фак тическое
расположение ка ж дого раздела, изучите колонки Нача ло и Конец.
Еще две команды — lspci и lsusb — предоставляют подробную
информацию о других аппаратных устройствах. Утилита lspci ори­
ентирована на внутреннее оборудование, а lsusb — на периферий­
ные устройства, подключенные (или ожидающие подключения)
к USB­портам вашего компьютера.
Принцип работы у них похожий; сама по себе команда предос­
тавляет список всех подключенных устройств — на какой шине оно
расположено, его номер и ID, а так же некое описание (как правило,
производитель и модель), чтобы помочь определить, что есть что.
Добавьте ключ ­v для более детального просмотра и не забудьте
при вызове добавить sudo, чтобы иметь полный доступ ко всему
подключенному оборудованию.
Из этих двух, утилита lspci дает меньше информации в полном
режиме: sudo lspci ­v приводит тип и имя ка ж дого устройства, а за­
тем перечисляет некоторые дополнительные дета ли, включая раз­
личные возможности устройства и — что весьма полезно — какой
драйвер ядра оно использует. Однако если ввести lsusb ­v, на вас
обрушится куча страниц подробной информации о ка ж дом из об­
нару женных устройств. Прокру чивать это вручную неподъемно,
по этому для нача ла опре де ли те то уст ройст во USB, о ко тором
вы хотите узнать более подробно, с помощью sudo lsusb.
Запишите номер шины и номер устройства, а затем введите
команду sudo lsusb ­D /dev/bus/usb/00x/00y. Замените 00x на номер
шины нужного вам устройства, а 00y — на его номер. Тогда вывод
будет касаться только выбранного устройства.
> Используйте команду lspci с флагом -v, чтобы получить более подробный вид вашего
внутреннего оборудования — включая информацию о драйверах.
Последним инструментом, который стоит рассмотреть для по­
лучения дополнительной информации о вашем оборудовании, яв­
ляется утилита dmidecode; она берет информацию из BIOS и пред­
ставляет ее в более удобном для пользователя формате. Особенно
по ле зен этот инст ру мент тем, что может собрать информацию
с материнской платы вашего компьютера, например, такую как
максимальный объем под держиваемой памяти или максималь­
ную скорость процессора, которую тот может потянуть. Лучше все­
го использовать эту команду с ключом ­t, он позволяет сфокуси­
ровать dmidecode на определенной части аппаратного обеспечения
вашей системы, например, sudo dmidecode ­t bios.
Опция BIOS показывает ключевую информацию о вашей ма­
теринской плате — в том числе, какие возможности она под дер­
живает (включая версию UEFI, USB и ACPI) плюс текущую версию
BIOS, включая дату ее выпуска. Так же есть ключевые слова ‘base­
board’ для определения марки, модели и серийного номера вашей
материнской платы, ‘processor’ (отметьте га лочкой поле Upgrade,
чтобы увидеть, к какому сокету процессор подключен), ‘память’
и ‘корпус’.
Обратите внимание, что таблицы DMI, которые содержат эту
информацию, касающуюся BIOS, не всегда точны, так что хотя
dmidecode — ресурс потенци ально по лезный, не удив ляй тесь,
если что­то не сойдется (например, нам он ошибочно определил
объем оперативки в два раза меньше). Относитесь к нему с пре­
дос торож ностью, и он воору жит вас дополни тельным знанием
о вашей системе. |
Скорая
помощь
Хотите упростить
просмотр уст­
ройств USB? Вве­
дите sudo apt­get
install usbview,
чтобы устано­
вить USB Viewer
tool. Имейте в ви­
ду, что открывает­
ся он в GUI, но за­
пускать его на до
из Terminal, коман­
дой sudo usbview.
» Подпишитесь на печатную или электронную версии на www.linuxformat.ru/subscribe!
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
61
Графические драйверы Выберем и установим
правильные графические драйверы в Ubuntu
Графика: Ради
скорости
Афнан Рехман хочет улучшить производительность игровых новинок в Linux;
какой из графических драйверов даст ему наибольший прирост?
Наш
эксперт
Афнан Рехман —
геймер со ста жем
на ПК и в Linux;
он всегда на хо­
дится в непрерыв­
ной (но тщательно
контролируемой)
погоне за лучшей
производительно­
стью в новейших
играх.
> Процесс начальной установки Nvidia может быть длительным.
Проявите терпение и дождитесь, пока установка выдаст вам
сообщение о своем завершении перед перезагрузкой.
Г
Скорая
помощь
Когда вы загру жа­
ете Ubuntu с картой
Nvidia, всплываю­
щее окно вверху
справа, как прави­
ло, сообщает вам
о на личии ограни­
ченных драйверов
и может провести
вас через уста­
новку GUI, если
вы не хотите во­
зиться с команд­
ной строкой.
62
|
онка за производительностью в играх на Linux — это по­
стоянный и изменчивый вызов времени. На рынке видео­
карт доминиру ют два графических гиган та: Nvidia и Ad­
vanced Micro Devices (AMD). Это означает, что решение сводится
всего лишь к одному вопросу: видеокарту какого производителя
купить? Но стоит вам погрузиться глубже в дета ли, как этот во­
прос сильно усложняется.
От вет будет зависеть от ва ших пред поч тений в вопросе це­
на/производительность; вашей ОС; других составляющих вашего
компьютера; и периодически да же места вашего проживания. Зай­
дя на онлайн­форумы в поисках ответа, вы тоже увидите постоян­
ные споры меж ду фанатами AMD и Nvidia по поводу того, какая
видеокарта имеет наилучшее соотношение цена/производитель­
ность и бо́льшую на дежность и какая из них выдает лучшую про­
изводительность и в какой именно из популярных игр. Посколь­
ку Linux становится все дру желюбнее к пользователю и игровые
производители добавляют под держку Linux, самый большой во­
прос — помимо того, какую купить видеокарту — это производи­
тельность графического драйвера. С различными уровнями под­
держки для ка ж дой платформы производительность видеокарты
будет варьироваться от ОС к ОС.
LXF212 Август 2016
Погру жа ясь глубже, давай те начнем с Nvidia. Ее под держ ка
драйвера Linux обычно считается наилучшей: регулярные обнов­
ления вы ходят поч ти так же час то, как и обнов ления драйвера
Windows. Но тут на до сде лать оговорку: ее ПО драйвера не от­
носится к от кры тому коду, что раз дра жает многих поль зовате­
лей Linux или заставляет идти на компромисс. Под держка драй­
вера AMD отстает от Nvidia в плане игровой производительности.
Но под держ ка графического драйвера AMD более дру же любна
к открытому коду, поскольку она пред лагает как более высокопро­
изводительный драйвер Catalyst с закрытым кодом, так и драйвер
Radeon с открытым кодом. Intel, пред лагающая встроенные гра­
фические процессоры на своих новых процессорах, обеспечивает
драйверы исключительно с открытым кодом, хотя ее встроенные
графические чипы недос таточно мощные, чтобы конкурировать
со специа лизированными видеокартами от AMD и Nvidia.
Хотя Nvidia выпускает только проприетарный драйвер GeForce,
сообщество Linux созда ло свой собственный драйвер с открытым
кодом под названием nouveau. В отличие от драйвера AMD с откры­
тым кодом, которому очень помог выпуск спецификации от AMD,
драйвер nouveau был создан почти исключительно посредством
обратного инжиниринга. К чес ти Nvidia, она недавно нача ла по­
могать разработке nouveau, выпуская документацию и специфи­
кации. Таким образом, Nvidia имеют и проприетарные драйверы
GeForce, и драйверы nouveau с открытым кодом. AMD имеет про­
приетарные драйверы Catalyst и драйверы Radeon с открытым ко­
дом. Intel обеспечивает драйвер с открытым кодом, включенный
во все установки Ubuntu.
Ну вот, дос тупные драйверы мы вкрат це обо зре ли; давайте
при сту пим к ус та нов ке то го, ко то рый по дой дет вам. Вна ча ле
мы рас смот рим ус тановку драйверов Nvidia GeForce и nouveau.
www.linuxformat.ru/subscribe
Графические драйверы Учебник
Ошибка MESA
Одной из распространенных ошибок, появляющих­
ся в конце установки драйвера Catalyst, является
ошибка MESA, указывающая на то, что установка
не была завершена правильно. Простейший способ
выяснить, была ли ваша установка затрону та, —
проверить вывод flgrxinfo. Если в выводе будет лю­
бое упоминание слова ‘mesa’, вам придется присту­
пить к решению проблем. Если вы наткнетесь на эту
ошибку, то есть несколько шагов, которые точно
решат эту проблему. Во­первых, убедитесь, что ус­
тановленный пакет restricted-modules соответствует
ядру, с которым вы работаете, и что вы можете
загрузить драйвер fglrx, запустив команду $ sudo
modprobe fglrx. Вы так же можете попытаться уда­
лить модули radeon и dri, а так же модуль ati-agp
посредством запуска следующих команд:
$ sudo rmmod radeon
$ sudo rmmod dri
На нашем уроке мы воспользуемся дистрибу тивом Ubuntu, но эти
шаги мож но предпринять на любой платформе Linux, разве что
с мелкими изменениями.
В Ubuntu драйвер nouveau является настройкой по умолчанию
для любого нового пользователя. В теории, это отличная функ­
ция, поскольку она с открытым кодом. На прак тике же он может
использоваться только для 2D­графики и способен не очень хо­
рошо работать или не работать вообще с более новыми видеокар­
тами и технологиями Nvidia. Для 3D­приложений, таких как игры
и моделирование, обычно рекомендуется использовать проприе­
тарный драйвер Nvidia — ра ди производительности и стабильно­
сти, а так же под держки новейших графических технологий Nvidia,
таких как HairWorks.
Установка драйверов Nvidia
Плюсом проприетарного драйвера Nvidia яв ляется простота ус­
тановки. Внача ле убедитесь, что ваша система обновлена, и уста­
новлены заголовки Linux. Чтобы убедиться в этом, скомандуйте
в термина ле:
$ sudo apt­get install linux­headers­generic
Установка драйверов Nvidia выполняется в три простых шага.
Во­первых, установите сами драйверы с помощью $ sudo apt­get
install nvidia­current в термина ле.
Следующий шаг — скорее мера предосторожности, посколь­
ку быва ли слу чаи, когда скрипт установки Nvidia не запускал эту
команду. Это может повлечь за собой большие проблемы после пе­
резагрузки системы, так что решением здесь является просто сно­
ва запустить команду отдельно: $ sudo nvidia­xconfig. И, наконец,
перезагрузите систему с помощью команды reboot, чтобы измене­
ния вступили в силу. Вот и все! Теперь вы должны уже быть в со­
стоянии использовать драйвер Nvidia GeForce.
Драйвер можно обновлять так, как вы сочтете уместным — по­
средст вом либо повторного запуска команды, либо посещения
сайта Nvidia, скачивания и установки нового. Мы рекомендуем за­
пуск команды: тогда уменьшается риск того, что новый драйвер
вызовет нежелательные проблемы в вашей сис теме. Однако за­
метим, что перед установкой нового драйвера вы должны уда лить
предыдущий. Команда для этого —
$ sudo apt­get remove nvidia* && sudo apt­get autoremove
За тем пере за гру зи тесь и по возвра щении на эк ран пригла­
шения на жмите Ctrl + Alt + F1, чтобы переключиться на командную
консоль. Войдите здесь с помощью вашего имени пользователя
и пароля. Попав в текстовую консоль, вы должны будете убить те­
кущую графическую сессию, запустив $ sudo stop lightdm. И, на­
конец, дайте скачанному пакету драйверов разрешения и запус­
тите его с помощью:
cd ~/Downloads && chmod +x NVIDIA­Linux­*­346.35.run &&
sudo sh NVIDIA­Linux­*­361.42.run
$ sudo rmmod ati­agp
Вдобавок вы еще можете попытаться убедиться,
что вы добавили строку Load: “dri” в разделе Sec­
tion: Module файла /etc/X11/xorg.conf.
Указанные шаги, а так же несколько других
полезных советов по решению проблем AMD
можно найти в официальной документации
Ubuntu на https://help.ubuntu.com/community/
BinaryDriverHowto/AMD.
Да лее просто следуйте инструкциям на экране, а затем пере­
загрузите компьютер. При следующей загрузке запустите $ sudo
nvidia­xconfig, чтобы сохранить свою новую конфигурацию. Опцио­
нально вы так же можете занести в черный список драйвер nouveau,
чтобы не позволить ему установиться во время обновления систе­
мы, или вообще уда лить его. Если вы хотите сделать это, отредак­
тируйте следующий файл настройки, с помощью
$ gksudo gedit /etc/modprobe.d/blacklist­nouveau.conf
На ходясь в файле, добавьте следующие строки в конец и со­
храните файл.
blacklist nouveau
blacklist lbm­nouveauoptions nouveau modeset=0
alias nouveau off
alias lbm­nouveau off
Вы так же можете отключить ядро nouveau, запустив следую­
щие команды одну за другой:
$ echo options nouveau modeset=0 | sudo tee ­a /etc/modprobe.d/
nouveau­kms.conf
$ sudo update­initramfs ­u
И после перезагрузки все будет готово!
Скорая
помощь
PPA — это Person­
al Package Archive
[Личный архив па­
кетов]. Это web­ад­
рес, по которому
содержатся одно
или более преком­
пилированных при­
ложений для опре­
деленной версии
Linux. Использо­
вание PPA умень­
шает количество
проблем совмести­
мости и пред лага­
ет автоматические
обновления ПО.
PPA графических драйверов
Дру гим не дав но раз ра бо тан ным ме то дом яв ля ет ся вве де ние
Graphics Drivers PPA, который доводит новейшие драйверы GeForce
до пользователей рабочего стола, если вам это нравится. Этот ме­
тод не лишен ошибок, но он может намного упростить новичку ра­
боту с лучшими по производительности драйверами. Чтобы до­
бавить PPA и обновить драйверы, запустите следующие команды
в термина ле:
$ sudo add­apt­repository ppa:graphics­drivers/ppa
$ sudo apt­get update
Столк нувшись во время обнов ления драйвера с какой­либо
ошибкой, запустите команду ppa­purge, чтобы откатить драйвер.
Драйвер с от кры тым ко дом nouveau так же мож но уда лить по­
сле ус та новки драйве ров GeForce. Од на ко это не обя за тельно,
> Периодически, после установки драйверов появляется ошибка зацикливания
входа в систему. Если это произошло, нажмите Ctrl + Alt + F1, чтобы перейти в консоль
и удалить драйверы.
» Подпишитесь на печатную или электронную версии на www.linuxformat.ru/subscribe!
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
63
Учебник Графические драйверы
а следовательно, для большинства пользователей не рекоменду­
ется. Если вы твердо намерены уда лить nouveau, введите следую­
щую команду в термина ле:
$ sudo apt­get –purge remove xserver­xorg­video­nouveau
Драйверы AMD могут быть несколько хитрее, в зависимости
от того, хотите ли вы использовать проприетарные драйвера или
нет. При обнару жении видеокарты AMD в системе Ubuntu по умол­
чанию использует драйверы с открытым кодом Radeon. Эти драй­
веры под держиваются командой, нанятой AMD, и больше озабоче­
ны скоростью, чем драйверы с открытым кодом Nvidia. Во многих
играх вы, возможно, да же не заметите разницы меж ду ними двумя.
Однако драйвер с закрытым кодом Catalyst (так же известный как
драйвер fglrx) доступен для желающих его использовать.
Для нача ла установки драйвера Catalyst у вас есть две опции.
Во­первых, вы можете посетить сайт AMD и ввести информацию
о вашей видеокарте. Если вы не уверены в том, какую видеокарту
используете, вы можете выяснить это, используя такую команду
в термина ле: $ lspci –vvnn | grep VGA. Во­вторых, вы можете уста­
новить графический драйвер через командную строку. Некоторые
геймеры Linux предпочитают именно этот метод, поскольку он ме­
нее подвержен ошибкам, но мы рассмотрим оба.
Установка драйверов AMD
Скорая
помощь
Обзаведясь драй­
верами, вы обна­
ру жите множество
мест, где можно
найти, во что по­
играть, например,
Steam, Humble Bun­
dle и GoG.com. Мо­
жете так же попро­
бовать Wine, чтобы
поиграть в некото­
рые игры только
для Windows.
В зависимости от вашей видеокарты, сайт AMD предоставит вам
соответствующую версию драйвера. Однако если вам вру чат ус­
таревшую версию драйвера (что часто происходит с более стары­
ми картами), может оказаться удачнее использовать драйвер с от­
крытым кодом Radeon, который лучше под держивает более старые
карты. Мы бы рекомендова ли использовать драйвер с открытым
кодом, если вы используете видеокарту старше серии HD 6xxx. Об­
ратите внимание: если вы переключаетесь с другой видеокарты,
ска жем, с Nvidia, убедитесь, что вы уда лили предыдущий драйвер
перед продолжением.
Чтобы начать ручную ус тановку Catalyst, позаботьтесь об ус­
тановке библиотек dh-make. Для этого используйте следующую
команду (учтите: Catalyst (fglrx) не под держивается на 16.04. Вам
придется использовать драйверы с открытым кодом):
$ sudo apt­get install dh­make dh­modaliases execstack libc6­i386
lib32gcc1
Ос тава ясь в термина ле, перейди те к папке, куда вы скача ли
драйвер, и запус тите ус тановку пакета. Для версий Ubuntu 14.04
и 12.04 команда выглядит так:
> Графические драйверы также можно найти в Ubuntu Software Center (или Software, как он
называется в 16.04). Они удобны для новичков в Ubuntu, которые хотят убедиться, что у них
есть безопасное решение драйвера.
> Драйвер AMD catalyst поставляется вместе с центром управления GUI, где легко изменять настройки графики на свой вкус.
Для Ubuntu 14.04:
$ sh amd­driver­installer­catalyst­13­4­x86.x86_64.run ­­buildpkg
Ubuntu/trusty
Для Ubuntu 12.04:
$ sh amd­driver­installer­catalyst­13­4­x86.x86_64.run ­­buildp­
kg Ubuntu/precise
В 12.04 окно менед жера пакетов может открыться и при необ­
ходимости установить некоторые зависимости, и в итоге создаст
три Deb­пакета.
Что бы ус та но вить толь ко что соз дан ные фай лы .deb, ис­
пользуйте $ sudo dpkg ­i flgrx*.deb. После этого запустите $ sudo
amdconfig –initial для настройки ус тановки и перезагрузите сис­
тему. Ес ли все пошло хорошо, драйвер fglrx (Catalyst) будет ус­
тановлен и готов к работе в вашей системе. Чтобы подтвердить,
что драйверы работают, откройте терминал и введите $ flgrxinfo.
Вы должны получить вывод термина ла примерно такого вида:
display: :0 screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: AMD Radeon HD 6700 Series
OpenGL version string: 4.2.11733 Compatibility Profile
Context
Если вам на до внести изменения в настройки через AMD Cata­
lyst Control Center, вы можете найти его в меню Application или по­
средством использования $ gksudo amdcccle.
Итак, мы рассмотрели установку драйвера с помощью скачан­
ных с сайта AMD драйверов; давайте теперь рассмотрим установку
драйверов с помощью репозиториев Ubuntu и интерфейса команд­
ной строки. Преж де всего на до сделать резервную копию файла
конфигурации xorg.conf (если он у вас есть), на случай, если всё за­
вершится прова лом и нам пона добится восстановить предыдущую
версию. Этот файл на ходится там, где располагается вся информа­
цию о конфигурации для ваших устройств ввода и вывода, таких
как видеокарты, мониторы, клавиатура и мыши:
$ sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.BAK
Затем следует очистить текущие файлы fglrx и установить об­
щие заголовки Linux (если вы еще не сдела ли этого). Используйте
следующие две команды для выполнения этих за дач, а затем пере­
загрузитесь перед переходом к следующему шагу.
$ sudo apt­get purge fglrx*
$ sudo apt­get install linux­headers­generic
По сле пере за грузки ус та нови те драйверы из репо зи ториев
Ubuntu, используя следующие команды.
» Пропустили номер? Узнайте на с. 108, как получить его прямо сейчас.
64
|
LXF212 Август 2016
www.linuxformat.ru/subscribe
Графические драйверы Учебник
Другие подсказки по решению проблем
Если установка вашего драйвера в силу каких­то
причин не уда лась и ваш компьютер больше не за­
гру жается, есть решение, доступное в режиме
аварийного восстановления и способное помочь.
При включении системы, на ходяясь в загрузчике
Grub, на жмите клавишу Escape и выберите ‘recovery
mode’ для вашего ядра. Прокру тите до ‘root shell’
и запустите программу уда ления ATI, используя
следующие команды. Обратите внимание, что
не стоит делать опечатки в любой из них, поскольку
они могут угробить вашу систему, особенно коман­
да rm ­rf.
$ cd /usr/share/ati/
$ sh ./fglrx­uninstall.sh
$ cd ~
$ rm ­rf /etc/ati/
$ apt­get remove ­purge xorg­driver­fglrx
fglrxamdcccle
Затем, чтобы восстановить ваш файл xorg.conf
к его настройкам по умолчанию, запустите команду
Для Ubuntu 12.04:
$ sudo apt­get install fglrx fglrx­amdcccle
Для Ubuntu 14.04:
$ sudo apt­get install fglrx
Следующий шаг чрезвычайно ва жен, так что следуйте указа­
ниям в точности. Перед перезагрузкой создайте новый файл xorg.
conf. Это непременно на до сделать до перезагрузки, иначе вы по­
лучите колоссальную головную боль при попытках исправить эту
проблему, не видя ничего на экране. Файл создается командой
$ sudo amdconfig –adapter=all ­initial
Завершив этот шаг, перезагрузитесь и проверьте установку, ис­
пользуя все ту же команду fglrxinfo, которую мы обсу ж да ли ранее,
и проверьте вывод. После этого все будет готово. Поздравляем, те­
перь вы работаете с драйверами Catalyst в вашей системе Linux.
Решение проблем AMD
Однако вы можете увидеть сообщение примерно такого вида:
Xlib: extension “XFree86­DRI” missing on display “:1.0
Увидев его, не пугайтесь, поскольку оно не обязательно ука­
зывает на большую проблему. Однако, просто для безопасности,
чтобы исправить ее, снова откройте файл /etc/X11/xorg.conf и до­
бавьте следующую строку в Section: Module:
load “dri”
Еще одним аспек том, который вы, возможно, за хотите учесть,
яв ляется аппаратное ускорение видео с помощью вашей видео­
карты AMD. Для этого после установки драйвера пона добится до­
бавить четыре пакета:
$ sudo apt­get install xvba­va­driver libva­glx1 libva­egl1 vainfo
Чтобы проверить правильность установки пакетов, вы можете
использовать команду $ sudo vainfo и должны получить примерно
следующий вывод:
$ dpkg­reconfigure ­phigh xserver­xorg
Теперь ваш компьютер при следующей загрузке
должен быть в состоянии загрузиться с драйвера­
ми radeon по умолчанию. Если это не так, откройте
файл xorg.conf с помощью редак тора файлов,
например, vi или nano, и там, где сказано Device,
убедитесь, что в поле драйвера введено ‘radeon’.
Для более подробной информации по этому во­
просу посетите https://help.ubuntu.com/community/
VideoDriverHowto.
Помните, что многие из этих методов не имеют полной защиты
от дурака, так что всегда делайте резервные копии вашего файла
xorg.conf перед какой­либо сменой драйверов. Одни методы могут
быть безопаснее, другие — хоть и рискованнее, но при этом пре­
дос тав ляющие больше свободы в вашей ус тановке. Вы должны
оценить риски и преимущества ка ж дого метода и решить, какой
из методов установки и какой из драйверов отвечает вашим пред­
почтениям и ну ж дам, а так же уникальной природе вашей персо­
нальной настройки сис темы Linux. Хо тя в данном ру ководстве
мы в основном рассказа ли об установках Ubuntu, эти методы в ка­
кой­то мере применимы к другим дистрибу тивам Linux; но мы бы
посоветова ли вам прочитать документацию своего дистрибу тива
перед тем, как продолжить.
У вас долж но сформироваться пред став ление обо всех ос­
новных методах установки графических драйверов на Ubuntu. Ка­
кой бы путь вы ни выбра ли, у ка ж дого есть свои преимущества.
В Linux прекрасно то, что у вас есть выбор, будь то выбор настройки
вашего рабочего стола или графического драйвера. Мир игр Linux
быст ро рас ширяется, и когда­ни будь наста нет день, когда вам
не пона добится компьютер с Windows, чтобы играть во все послед­
ние игровые новинки. А до этого, мы на деемся, наше руководство
позволит вам, по крайней мере, сдвинуть эту работу с мертвой точ­
ки и насла ж даться сотнями под держиваемых игр. |
libva: VA­API version 0.32.0
Xlib: extension “XFree86­DRI” missing on display “:0”.
libva: va_getDriverName() returns 0
libva: Trying to open /usr/lib/x86_64­linux­gnu/dri/fglrx_drv_video.so
libva: va_openDriver() returns 0
vainfo: VA­API version: 0.32 (libva 1.0.15)
vainfo: Driver version: Splitted­Desktop Systems XvBA
backend for VA­API ­ 0.7.8
vainfo: Supported profile and entrypoints
VAProfileH264High : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
Мы должны вкратце рассмотреть графический драйвер Intel
для его ряда встроенных видеокарт. Драйвер с открытым кодом
для чипсета Intel идет как часть па кета драйверов xserver-xorgvideo-intel, установленного на всех системах Ubuntu по умолчанию,
так что в их установке нет необходимости. Однако если в силу ка­
ких­либо причин их там нет, вам просто нужно запустить следую­
щую команду, чтобы снова установить их:
$ sudo apt­get install xserver­xorg­video­intel
> Есть множество платформ для скачивания и игры в игры в Linux, например, Steam
и Humble Bundle; но GoG.com полностью свободна от DRM [Защита цифровых прав].
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
65
3D-печать Установите ПО и изучите навыки,
необходимые для печати
ЧАСТЬ 2
3D-принтеры:
Печатаем свой
Собрав 3D­принтер, Аластер Дженнингс рассматривает ПО и навыки,
необходимые для создания и печати собственных моделей.
Pronteface позволяет компьютеру и принтеру взаимодейство­
вать напрямую; это пригодится при первой настройке машины, так
как через его интерфейс можно ус тановить высоту, расстояния,
температуры и да же скорость вращения вентилятора. Оно так же
имеет прямую совместимость с Slic3r.
Slic3r нарезает моделей на слои, готовые для печати. Приложе­
ние позволяет изменять прак тически все аспек ты нарезки модели
и ее качество, и он взаимодействует с Pronterface, чтобы нарезать
и распечатать 3D­модели, созданные в Blender.
Наш
эксперт
Создайте модель для 3D-печати
Аластер Джен‑
нингс на посто­
янной основе
создает и обозре­
вает 3D­прин­
теры для Linux
Format и Tech­
radar.com. Мето­
дом проб и оши­
бок он выяснил,
что будет рабо­
тать, а что — не бу­
дет ни при какой
погоде.
Н
Скорая
помощь
Как и при обыч­
ном наведении
и щелчке кноп­
кой, вы можете ис­
пользовать трех­
кнопочную мышь
в сочетании с кла­
виатурой для пол­
ного управления
навигацией в окне
вида.
66
|
ичто не сравнится с удовольствием от завершения соз­
дания своего собственного 3D­принтера. Но теперь, ко­
гда все провода и узлы на месте, пришло время включить
и подготовить его к первой печати.
Что бы начать ра бо ту, кро ме са мо го прин те ра по тре бу ет ся
це лый спи сок про грамм, ко то рые нуж но за гру зить и ус та но­
вить, пре ж де чем про дол жить. Не ко то рые про грам мы, на при­
мер, Pronterface (www.pronterface.com), мы упомина ли раньше,
когда речь шла о вводе принтера в эксплуатацию, а на этом уро­
ке рассмотрим ее более подробно. Есть так же несколько важных
пакетов, таких как Blender (www.blender.org) для 3D­моделирова­
ния и слайсер моде лей Slic3r (http://slic3r.org), который мы еще
не рассматрива ли.
Давайте начнем с рассмотрения, что делает ка ж дая часть про­
граммного обеспечения и когда их надо использовать. Pronteface —
огромное приложение, оно представляет собой набор хост­интер­
фейсов для 3D­печати и ЧПУ. Мы лишь слегка коснемся того, что
оно делает, поскольку просто хотим использовать его, чтобы прин­
тер работал правильно и можно было передавать модели с компь­
ютера на принтер.
LXF212 Август 2016
Заключительной частью в уравнении 3D­печати является Blender,
приложение для 3D­моделирования. В отличие от всех других ас­
пек тов 3D­печати, отнимающих сравнительно немного времени
на создание или изучение, Blender, к сожа лению, требует большей
самоотдачи. Инструменты и методы довольно просты, но нужно
нема ло времени и способностей, чтобы выучить их все. Однако,
для бесплатного программного обеспечения он не сильно отстает
от 3D­приложений за сотни и тысячи дензнаков. После окончания
моделирования в Blender файл экспортируется в формат STL. Этот
файл нарезается Slic3r и посылается на печать через Pronterface.
Пока у Pronterface нет пакетов для Linux, и чтобы использовать
приложение, его на до скомпилировать и запустить в термина ле.
Так же в вашем дистрибу тиве на до установить несколько зависи­
мостей. Мы исполь зуем Ubuntu. Вы, вероят но, обнару жи те, что
придется немного поэкспериментировать, чтобы ПО заработа ло
и правильно взаимодействова ло с вашим принтером. Первым ша­
гом является загрузка исходных файлов и зависимостей. Для на­
ча ла откройте терминал и введите:
sudo apt­get install python­serial python­wxgtk2.8 python­pyglet
python­numpy cython python­libxml2 python­gobject python­dbus
python­psutil python­cairosvg git
Сле дуй те ин ст рук ци ям и под твер ждай те, по за бо тив шись
о подключении к Интернету. После загрузки исходников их на до
клонировать в нужную папку, но перед этим убедитесь, что вы соз­
да ли папку для приложения и сдела ли ее доступной для записи.
Создайте новую папку в вашем ката логе home или любом другом.
Затем в термина ле перейдите в эту папку, например, cd 3D/. Теперь
клонируйте в эту папку:
> Надо скачать Printrun и его зависимости и клонировать
содержимое в папку на жестком диске.
www.linuxformat.ru/subscribe
3D­печать Учебник
3D-Print Toolbox
Этот инструмент ва жен, поскольку позво­
ляет проверять целостность ваших 3D­мо­
делей перед печатью. После ак тивации
он очень прост в использовании; опять
возьмем для примера два куба и пере­
местим один над другим так, чтобы они
пересека лись. Сейчас они являются двумя
отдельными объек тами, поэтому выделите
один из кубов, а затем во вкладке 3D­Print
[3D­печать] слева на жмите Check all [Прове­
рить всё] и прокру тите панель вниз.
Здесь вы увидите вывод различных
выделенных областей, на которые сле­
дует обратить внимание перед печатью.
Единственное, что следует отметить, это
Overhang Face или низ куба, о чем не стоит
особо беспокоиться. При одном выделен­
ном кубе, удерживая Shift, щелкните для
выделения второй куб. Сочетанием Ctrl + J
объедините оба куба и снова запус тите
Проверить все. Теперь вы увидите шесть
выделенных пересекающихся граней, кото­
рые могут оказаться проблемой. Отмените
объединение, используйте Union Boolean
[логическое объединение] и снова запус­
тите Проверить всё; на этот раз вы должны
увидеть, что проблема пересечения
граней решена.
и убедиться, что всё работает как полагается. Откройте и запустите
Pronterface. В окне Port вы должны увидеть /dev/ttyACM0, затем
переключите скорость на 250000 и на жмите Connect. Внизу окна
G­Code слева введите М119; эта команда проверит, что все конце­
вые выключатели принтера ак тивны, и вы должны увидеть строки
x_min: open, y_min: open и z_min: open.
Для проверки работы концевых выключателей на жмите ка ж­
дый физически. Вы должны увидеть x_min:open, y_min:TRIGGERED
и z_min:open с со об ще ни ем ‘TRIGGERED’, которое ука зы вает
в Pronterface на соответствующий концевой выключатель. Это хо­
рошая проверка, чтобы убедиться в правильности подключений.
> После загрузки откройте терминал в папке с файлами Printrun
и наберите ./pronterface.py, чтобы запустить его.
Подготовьте принтер
git clone https://github.com/kliment/Printrun.git
Теперь вы должны быть готовы запустить Pronterface — снова
наберите в термина ле pronterface.py. Если всё хорошо, приложение
должно запуститься. Однако, весьма вероятно, вы обнару жите, что
остается решить одну­две проблемы. При установке наиболее рас­
пространенная проблема заключается в том, что некоторые из за­
висимостей еще не установлены в вашем дистрибу тиве.
Чтобы убедиться в на личии всех зависимостей, на до проверить
текстовый доку мент requirements.txt в папке Printrun. Позаботь­
тесь, чтобы все это было установлено и доступно.
Следующая проблема — в том, что в некоторых дистрибу ти­
вах установлены версии Python, которые не принимают некоторые
особые скорости обмена [baudrate]. На наше счастье, это проблема
всеобщая, так что на http://reprap.org есть ее исправление. Чтобы
его установить, снова откройте терминал и введите:
cd /usr/lib/python2.7/dist­packages/serial
Затем загрузите заплатку:
sudo wget http://sourceforge.net/p/pyserial/patches/_discuss/
thread/ed3fb0de/f4fd/attachment/pyserial.patch
Установите ее и перезагрузите компьютер:
sudo patch ­b serialposix.py pyserial.patch
Теперь мы поч ти готовы присту пить к печа ти, но пред вари­
тельно убе ди тесь, что печа тающая го ловка вернулась в исход­
ное положение. Для этого удостоверьтесь, что USB и питание ма­
шины отключены, и физически переместите печатающую головку
так, чтобы она каса лась рабочего столика и остава лась на его ле­
вой перед ней час ти. Затем под ключи те прин тер и USB. Подож­
ди те несколько секунд загрузки пане ли управ ления и на жми те
Connect в интерфейсе Pronterface. Теперь на до запустить принтер
Для проверки, что все вентиляторы подключены и работают, вве­
дите M106 S255; долж ны включиться горизонтальные вентиля­
торы, затем по M42 P4 S255 — вентилятор экструдера и M42 P5
S255 — вентилятор нагревателя. Все вентиляторы теперь должны
работать, и мы готовы к разогреву экструдера и рабочего столика.
Отметьте переключатель Watch и введите значения 200 для на­
гревате ля и 70 для рабочего столика, ка ж дый раз на жимая set.
Ес ли всё работает, вы должны увидеть рост температу ры обоих
на графике рядом с переключателем Watch. Следующий этап —
вставка жи лы (она же — нить [filament]). Уве личьте температу­
ру до 230°C и убедитесь, что жила прошла через трубку и гото­
ва ко вводу вверху экс трудера. Рядом с Extrude введите 200mm
@ 200mm a min. В интерфейсе Pronterface на жмите +Y100 graphic,
и печатающая головка поднимется на 100 мм.
Удерживая жи лу наготове над от верстием, на жми те Extrude
и подайте жилу в машину. Вскоре вы должны увидеть, как жила вы­
давливается из сопла принтера. Выдавив 200 мм жилы, экструдер
остановится. В интерфейсе Pronterface на жмите ­Y100, и печатаю­
щая головка вернется к рабочему столику. Помните, что поскольку
вы установили все параметры печати вручную — увеличили тем­
пературу головки и рабочего столика, перед нача лом следующей
части процесса вам придется снова сбросить их в 0.
Теперь позаботимся, чтобы наш столик был горизонта лен. Под­
нимите печатающую головку на 1 мм, подсуньте под нее лист бу­
маги и затем опус тите головку на 1 мм, отрегулировав угловым
винтом высоту столика так, чтобы сопло только цепляло бумагу.
После этого используйте интерфейс Pronterface для переме­
щения печатающей головки по оси X к углу, и повторите процесс.
Сде лай те это для ка ж до го угла, пе ре мес ти те пе ча таю щую го­
ловку в центр и проверьте с бу ма гой. Па ра повторов проверки
» Подпишитесь на печатную или электронную версии на www.linuxformat.ru/subscribe!
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
67
Учебник 3D­печать
горизонтальности столика займет время, но зато сэкономит его
в долгосрочной перспек тиве.
По прави лам, столик следует проверять при ка ж дой печати,
а в реальности — регулярно и как можно чаще. Освоив свой прин­
тер, вы будете знать, когда это на до делать. Теперь принтер готов
к работе и приему 3D­моделей с компьютера или SD­карты.
Ваша первая 3D-печать
Скорая
помощь
Чтобы при ка­
ж дом запуске
Blender не настраи­
вать панели инст­
рументов, облас­
ти и предпочтения,
выберите Save
Startup File [Со­
хранить файл за­
пуска], чтобы на­
строить Blender
под свои ну ж ды.
Установка Slic3r проще, чем установка Pronterface, поскольку это
пакетированное при ложение, которое мож но быст ро загру зить
и ус тановить. Откройте Slic3r и убедитесь, что выбрана вкладка
Plater. Теперь всё, что вам на до сделать — это перетащить свою
3D­модель в окно Drag your objects here или на жать значок Add
в верхнем левом углу экрана.
Появится вид модели сверху, а в главном разделе приложения
вы увидите имя, количество копий и масштаб модели. Чтобы прин­
тер распознал 3D­модель, она должна быть нарезана на слои и экс­
портирована в файл G­кода. Кроме информации о модели, файл
G­кода так же содержит информацию о принтере, которая включа­
ет настройки температуры рабочего столика и нагревателя, скоро­
сти вращения вентиляторов, размер столика и параметры фак ти­
ческого качества печати.
Щелкните в настройках Print quality [качество печати]; первый
набор инструкций относится к качеству. Начните с установки высо­
ты слоя [Layer Height] — для PRUSA i3 подойдет 0,4 мм; а затем ус­
тановите Solid Layers [Сплошные слои] сверху [top] и снизу [bottom]
в 5. Ос тавьте заполнение [infill], подпорки [support] и другие па­
раметры на этой странице как есть и затем щелкните на вкладке
Filament Settings [параметры жилы].
Prusa i3 ис поль зует жи лу 1,75 мм; стан дар ты диа мет ров —
1,75 мм и 2,85 мм. Оставьте другие настройки для Extrusion Multiplier
на 1. Теперь можно установить температуры нагревателя и рабоче­
го стола; они зависят от материа ла и его производителя. В приме­
ре с жилой PLA от www.colorfabb.com, температуры должны быть
установлены так: нагреватель — от 195 до 220°С и рабочий стол —
50–60°С. Для жилы ABS от Ooznest, используемой на нашем уро­
ке, температура нагревателя должна быть в диапазоне 200–250°С;
мы взя ли 235°C, а для рабочего столика — 100 – 110°C, у нас —
105°С. В зависимости от печатаемой модели вам следует поэкспе­
риментировать, чтобы подобрать наилучшие настройки.
Окончательный набор парамет ров: самого прин тера, разме­
ры ра бо че го сто ли ка и ко ор ди на ты его цен тра, ис поль зуе мая
прошивка, подача, нача ло и конец G­кода. В полях Size [размер]
> Файлы можно либо перетащить в Slic3r, либо открыть через значок Add. После открытия
вы можете выбрать качество и другие настройки печати.
> Есть несколько дополнений, полезных при 3D-печати;
одно из важнейших — Mesh: 3D Print Toolbox.
и Coordinates [Координаты] проставьте размеры используемого
рабочего столика. Для Prusa i3 стандарт — 200 × 200 мм и центр
100 × 100 мм. Прошивка должна быть выбрана по умолчанию как
RepRap (Marlin/Sprinter/Repetier), если иное не указано или загру­
жено на плату RAMP 1.4.
Используется плата Arduino Mega 2650, так что опций довольно
много, но мы рекомендуем придерживаться стандартного Marlin.
Диаметр сопла — от 0,2 до 0,5, сейчас — 0,4 мм — наиболее рас­
пространенный, который используется с Ooznest.
Параметры подачи можно оставить как 1 и 0 и позже при необ­
ходимости скоррек тировать. Оставшиеся два поля позволяют до­
бавить некоторый собственный G­код: например, если вы исполь­
зуете дополни тельные вен ти ля торы, как у нас, здесь их мож но
запустить и остановить. В поле нача ла G­кода добавьте
M42 P4 S255
M42 P5 S255
А в конце G­кода —
M42 P4 S0
M42 P5 S0
И, на ко нец, щелк ни те на вклад ке Platter и на жми те Export
G­Code. Затем, ес ли вы еще не сдела ли этого, немного смажьте
столик па лочкой канцелярского клея, чтобы помочь модели за­
крепиться. Вернитесь в Proterface, импортируйте только что соз­
данный в Slic3r файл G­кода и на жмите Print.
Если это ваша первая печать, выберите что­нибудь поменьше
и наблюдайте за процессом — вы обнару жите некоторые «опечат­
ки», обычное дело понача лу.
Подготовив принтер и ус тановив программное обеспечение,
вы можете приступить к созданию собственных 3D­моделей для
печати. Позаботьтесь установить Blender; помимо основного паке­
та, на до так же установить специально разработанное дополнение,
помогающее при моделировании объек тов для 3D­печати.
Для его ак тивации в меню File > User Preferences [Файл > Пара­
метры…] или по Ctrl + Alt + U выберите Addons [Дополнения]. Да лее,
в меню слева выберите Mesh [Полисетка] и затем Mesh: 3D­Print
Toolbox. Отметьте это справа га лочкой и на жмите Save User Settings
[Сохранить настройки], после чего закройте окно.
По умолчанию Blender использует собственную систему единиц
измерения; это нормально при моделировании для компьютера,
но поскольку наши модели будут печататься, важно использовать
реальные единицы измерения. В панели свойств выберите Scene,
это третий слева значок. Под Units [Единицы измерения] выберите
Metric [Метрическая] и Degrees [Гра дусы].
Еще одна хорошая идея изменения настроек по умолчанию —
поменять местами функции левой и правой кнопок мыши при вы­
бо ре объ ек тов в ок не ви да. Для из ме не ния в ме ню File > User
Preferences на жми те Input. На жми те Left под заголовком Select
With, а затем на жмите на красный крестик, чтобы закрыть окно.
» Пропустили номер? Узнайте на с. 108, как получить его прямо сейчас.
68
|
LXF212 Август 2016
www.linuxformat.ru/subscribe
3D­печать Учебник
Создание собственной 3D-модели
Так как мы будем ис поль зо вать Blender для мо де ли ро ва ния,
а не анимации, можно уда лить временну́ю шка лу внизу интерфей­
са. Поводите курсором меж ду временно́й шка лой и окном вида так,
чтобы появился значок изменения размера окна, на жмите правую
кнопку мыши и выберите Join Area [Объединить область]. Наведите
указатель мыши на временну́ю шка лу — появится большая стрел­
ка — и щелкните для уда ления шка лы.
Как в работе с любой программой 3D­моделирования, в Blender
хорошей идеей будет сохранить конфигурацию интерфейса, ко­
гда вы всё настроите. Для этого зайдите в меню File > Save Startup
File [Файл > Сохранить файл запуска]. При следующем открытии
Blender будет настроен и готов к моделированию для 3D­печати.
Наконец, преж де чем двигаться дальше: жизнь в Blender значи­
тельно облег чает трехкнопочная мышь. Это упростит навигацию
по модели в 3D­пространстве.
Теперь мы готовы начать моделирование, и всегда лучше на­
чать с чего­нибудь попроще. Если вы хотите узнать больше о мо­
делировании в Blender, есть огромное количество уроков, которые
стоит посмотреть, особенно курс для начинающих; его бесплатно
можно найти на официальном сайте Blender (www.blender.org).
Большинство учебников о моделировании и анимации да дут
вам очень хорошую основу, но есть несколько методов модели­
рования и принципов, которые на до учесть, когда речь идет о про­
ек тировании для 3D­печа ти. Вот несколько из наибо лее общих
и существенных.
Неразверстываемые (многосвязные) ребра могут быть реаль­
ной проблемой 3D­печа ти: ес ли в анима ции они просто выгля­
дят неприглядно, то в 3D­печати могут стать катастрофой, так как
они по су ти — отверстие в модели. Однако обнару жить их может
быть слож но, особенно ес ли вы объединили несколько полисе­
ток. Чтобы отыскать эти проблемные ребра, снача ла убедитесь,
что вы сняли выделение всей модели, на жав ‘a’ на клавиатуре. Те­
перь на жмите Ctrl + Shift + Alt + M, и некоторые вершины подсветят­
ся оранжевым цветом. Они и есть неразверстываемые, и должны
быть исправлены перед печатью.
> Blender является приложением для 3D-моделирования и позволяет создавать собственные модели, которые затем могут быть
распечатаны.
> Для быстрого объединения двух объектов можно использовать Boolean. После этого
запустите Проверить всё в панели 3D-печать — и вы должны увидеть, что все
предупреждения исчезают.
Простейший способ исправить эти неразверстываемые гра­
ни — на жать ‘f’. Если это не поможет, придется заполнять отвер­
стия вручную, выбрав при легающие ребра, на жав Ctrl + F и вы­
брав Fill [Заполнить]. Перед этим на жмите на клавиатуре ‘z’, чтобы
скрыть грани и чтобы видна была каркасная сетка и полностью
прозрачная 3D­модель.
Для нарезки 3D­моделей мы используем Slic3r; эта програм­
ма довольно снисходительна к принимаемым моделям, особенно
имеющим такие проблемы, как на ложенные поверхности. Поверх­
ности пересекаются, когда два объек та перекрываются. Если мо­
дель создается из нескольких объек тов, то простого объединения
часто будет достаточно Slic3r для исправления и печати. Но если
вы собираетесь делиться своими моделями или печатать их в дру­
гом мес те, то лучше использовать Boolean, чтобы привес ти мо­
дель в порядок.
Самый быстрый способ увидеть, как это работает — создайте
два пере се каю щихся ку ба и на жми те ‘z’, что бы перей ти к ото­
бра жению Wireframe [Каркас]; тогда вы увидите, что два пересе­
кающихся куба — это всё еще два отдельных перекрывающихся
куба. Для подготовки к печати выделите один из кубов, в Object
Modifiers [Модифика торы объек та] выбери те Boolean [Логиче­
ский]. В Operation [Операция] выберите Union [Объединение], щелк­
ните в поле Объект и выберите другой объект. Теперь, глядя на кар­
кас, вы уви ди те, что пере се кающие ся гра ни ис чез ли, а объект
теперь один и готов к печати.
Теперь вы можете создать свою модель в Blender, проверьте
ее на отсутствие разрывов и перекрывающихся поверхностей. Ко­
гда модель закончена, не забудьте ее сохранить, а затем в меню
File > Export [Файл > Экспортировать] > Stl. Затем можете открыть
файл STL в Slic3r и отправить на принтер. |
Поддержка материала
Одной из самых больших проблем в 3D­пе­
чати являются свесы. В идеа ле вы создаете
модель, не имеющую их, но, к сожа лению, в по­
давляющем большинстве слу чаев это просто
не представляется возможным.
Чтобы обойти эту проблему, можно добавить
в модель небольшие подпорки, которые будут
под держивать конструкцию по мере добавления
слоев. После завершения модели их можно быстро
уда лить. Добавление подпорок займет несколько
секунд и, к счастью, это не нужно делать вруч­
ную. В Slic3r щелкните на вкладке Print Settings
и прокру тите вниз до параметров Support Material.
На жмите Generate support material и настройте рас­
становку и слои подпорок под требования вашей
конкретной печати.
www.linuxformat.ru/subscribe
В зависимости от принтера и используемого
материа ла они могут сильно отличаться, и перед
долгой печатью хорошо бы провести несколько
тестов. Эта функция позволяет добавить подпорки,
но неплохо еще добавить к печати поля, особенно
если у нее небольшое основание, которое прилегает
к рабочему столику. Эту возможность можно найти
в разделе Print Settings.
Август 2016 LXF212
|
69
ReStructuredText Использование rST и создание
графики для ваших документов
rST: Классная
документация
Нет предела совершенству, пока есть что убрать. Джеймс Хант демонстрирует
красоту и мощь работы с простым текстом.
С чего бы, при таком богатстве прекрасных графических инст­
рументов для создания документации, кто­то в здравом уме стал
искать не графический способ и исполь зовать обычный текст?
Да же если вы и не за думываетесь о том, что кто­то век спустя за­
хочет прочитать ваши файлы, всё равно есть огромное количество
документов, которые непременно нужно сохранить.
Посмотрев на любую из бесплатных элек тронных книг на сайте
проек та Gutenberg (www.gutenberg.org), вы увидите, что все они
представлены в формате простого текста. И на то есть веская при­
чина: ведь это наилучший формат для долгосрочного хранения
текстов.
Наш
эксперт
Джеймс Хант —
разработчик open­
source дистрибу­
тива Clear Linux
в Intel Open Source
Technology.
Markdown против rST
Скорая
помощь
rST­расшире­
ния есть и в Vim,
и в Emacs, и если
вы используете
расширение tagbar
в Vim, он может ге­
нерировать для вас
схему документа.
Н
екоторые воспринимают создание документации в фор­
мате обычного текста как нечто примитивное: мол, напи­
сать им себе напоминание еще можно, но для серьезной
документации он едва ли под ходит.
За дача нашего учебника — развеять этот миф, продемонст­
рировав средства, доступные любому, кто является фанатом кон­
соли и при этом не хочет пренебрегать качеством. Мы собираем­
ся убедить вас, что стоит писать документацию в текстовом виде,
а именно — в reStructuredText (rST).
> Прямоугольник, связанный с пунктирным кругом (созданным с помощью атрибута
‘dotted’), стрелки автоматически указывают на следующий объект.
70
|
LXF212 Август 2016
Markdown использует простейший возможный синтаксис, который
почти полностью интуитивен. Тяжелая работа выполняется с помо­
щью инструментальных средств (которые проверяют вашу размет­
ку и, скорее всего, потом преобразуют в другой формат).
Но чем плохи существующие тяжеловесы, вроде troff и LaTeX?
Бесспорно, они дают неограниченные возможности и контроль,
но чтобы выполнять там что­то, кроме самых основных за дач, по­
на добится основательно вникнуть.
Сравнивать LaTeX и troff с Markdown — всё равно что сравни­
..
вать Реквием Моцарта с De Profundis Арво Пярта [Arvo Part]; оба аб­
солютно гениальны и невероятно красивы, но Пярт, руководству­
ясь принципом «чем меньше, тем лучше», сугубо минима листичен,
что в конечном итоге приносит не меньшее эмоциональное удовле­
творение, чем куда более сложный Реквием.
Именно таков уровень минима лизма в Markdown: тончайший
«слой» представления поверх вашего текста. Ес ли вы отправите
кому­нибудь файл Markdown по элек тронной почте, они наверня­
ка поймут 99 % разметки, без каких­либо инструментов. Но почему
rST гораздо лучше, чем обычный Markdown? Давайте рассмотрим
наиболее важные причины, в числе которых — красота, стандарты,
функции и инструменты.
> Красота Это может показаться несущественным, но сами по себе
файлы rST просто хорошо выглядят. Дело не в словах и пред ложе­
ниях или да же шрифте, который вы будете использовать. Мы име­
ем в виду в целом внешний вид — то, как смотрится и ощущает­
ся формат. rST чист, свеж и элегантен. Например, вот как вводится
в rST заголовок шестого уровня:
A 6th Level Heading [Заголовок 6­го уровня]
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
А вот как выглядит тот же заголовок с использованием Mark­
down:
###### A 6th Level Heading
Как видим, в Markdown действи тельно есть ука зание глу би­
ны (шесть решеток обозначают шестой уровень), но отличить пя­
тый уровень от шестого с первого взгляда нелегко, тем более, что
www.linuxformat.ru/subscribe
ReStructuredText Учебник
в приличного размера документе заголовки могут быть разнесены
довольно да леко друг от друга.
> Стандарты rST стандартизирован и имеет полную специфика­
цию. Пускай это не вызовет у вас слез ра дости, но поверьте, тут
есть ощу тимые преимущества. Ма ло того, что там приводится пол­
ное описание языка — авторы любезно и щедро снабдили его при­
мерами. Кроме того, стандарты часто являются знаком качества
инструментария, и вновь rST вполне соответствует. Инструмента­
рий, действительно, отличный, и, на самом деле, множество при­
ложений под держивают rST.
Markdown, напротив, не стандартизирован, что объясняет при­
сутствие в Интернете множества — часто несовместимых — вари­
антов этого языка.
> Функ ции rST под держивает слож ные способы форма тирова­
ния. Легко ругать Markdown, но это, в конце концов, простой фор­
мат. Увы, до такой степени простой, что в нем доже отсутствует
под держка таблиц. Зато в rST она не только имеется, но а ж сра­
зу двух типов.
Помимо этого, rST под держивает и все прочие требуемые вам
элементы, в том числе: блоки кода; сноски; комментарии; ссылки
(внутренние и внешние URL); графику; макросы; текстовые бло­
ки для фрагментов фиксированного формата или образцов кода;
под держка библиографии; автоматически генерируемое оглавле­
ние; включение других файлов и т. д.! И при всем при этом, формат
документа остается почти полностью интуитивным.
> Инст ру мен тарий rST пре дос тав ляет визуа лиза торы [renderer]
для преобразования исходного документа в различные форматы.
Чтобы преобразовать rST в HTML, вы запускаете rst2html; чтобы
конвертировать в PDF, используйте rst2pdf.
У всех этих команд (что интересно, за исключением rst2pdf)
есть одна особо полезная опция: ­­strict. Этот незатейливый пара­
метр можно считать одной из самых убойных функций rST. Если
вы запускаете rST в режиме strict [англ. строгий], он будет следить
за правильностью ввода, и если что не так, вы получите сообщение
об ошибке с полезным текстом, показывающим, как решить про­
блему. Этот флаг будет отвергать любой неправильный синтаксис.
Что здесь интересного? Да то, что главная потеха начинается после
доводки вашего документа. По су ти, ­­strict означает, что документ
сформирован верно, и вы можете преобразовать его в прак тически
любой другой формат, который придет вам на ум. Хотите копию до­
кумента в формате PDF? Troff? LaTeX? ODT? SGML? Нет проблем!
Просто осознайте: текст, написанный в rST, становится доступен
во всех остальных форматах. Например, так:
# преобра зовать rst в правильный XML
rst2xml ­­strict example.rst example.xml
# извлечь все блоки литера лов (дословно)
xgrep ­x ‘//literal_block’ example.xml
Теперь ваш доку мент стал действующей ба зой данных XML,
в которой вы можете формировать запросы через Xpath.
Простое форматирование
Помимо основных команд rST, благодаря тем же спецификациям,
существуют другие прекрасные инструменты, под держивающие
rST. Два достойных примера — это генератор документации Sphinx
и pandoc (см. HotPicks, стр. 101). Первый используется при созда­
нии документации Python (см. https://docs.python.org/3/about.html),
а второй — это вообще швейцарский нож для конвертации доку­
ментации с командной строки.
Первый элемент, который ну жен вам в документе, это его на­
звание. В rST оно просто подчеркивается:
My Title [Заголовок]
=======
На самом деле, название слу жит обобщением раздела, поэто­
му разделы (и подразделы любого уровня) так же подчеркиваются:
My Title
=======
Section 1 [Раздел 1]
­­­­­­­­­
Как показано, название обозначается рядом знаков равенства,
а название раздела — строкой дефисов.
Как видите, с разделами rST обращается довольно умно: можно
да же выбрать тип отчеркивания для ка ж дого уровня! Так что если
вы предпочитаете отчеркивать знаком равенства именно разделы,
можно указать иначе:
My Title
­­­­­­­­
Section 1
=========
Sub­section 1 [Под раздел 1]
~~~~~~~~~~~~~
Sub­section 2
~~~~~~~~~~~~~
Section 2
=========
То есть rST просто отслеживает подчеркивания: первое обо­
значает раздел 1, второе — раздел 2, и т. д. Обратите внимание, что
подчеркиваний должно быть столько же, сколько символов в тек­
сте. Например, следующие примеры неверны:
Underline too short [Подчеркивание слишком короткое]
­­­­­­­­
Underline 1 character too long [Подчеркивание на 1 символ
длиннее]
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
Базовое форматирование тоже самое что ни на есть базовое:
­ This text will be *in italics*. [Этот текст пойдет курсивом]
­ This text will be **in bold**. [Этот текст пойдет жирным]
Выше так же пока зано, как сде лать простой маркированный
список. Но опять же, если вы предпочитаете использовать звез­
дочки, то:
* list item 1 [Элемент списка 1]
* list item 2
> В большинстве
приличных редакторов есть режим
rST.
Скорая
помощь
Это не очень широ­
ко афишируется,
но в https://github.
com есть встро­
енная под держка
rST, поэтому вме­
сто того, чтобы
создавать файл
README.md, про­
сто добавьте свой
rST в файл с име­
нем README.rst.
Структурирование документов
Очень большие документы имеет смысл делить на более мелкие
логические блоки и объединять их в один файл. Например, вы мо­
жете сделать основной файл rST, где ка ж дая глава будет браться
из отдельного файла:
.. Reminder to self ­ this file includes all the chapters
» Подпишитесь на печатную или электронную версии на www.linuxformat.ru/subscribe!
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
71
Учебник ReStructuredText
Скорая
помощь
Официальная
документация
к reStructuredText,
включая саму спе­
цификацию, разу­
меется, написана
в rST.
[Напоминание себе ­ этот файл включает все главы ]
.. include:: introduction.rst
.. include:: chapter­1.rst
.. include:: chapter­2.rst
.. include:: chapter­3.rst
.. include:: conclusion.rst
.. include:: bibliography.rst
Естественно, в ка ж дой главе тоже могут быть свои собствен­
ные файлы. Так, внутри chapter-1.rst может быть
.. Reminder to self ­ this file includes all the chapters
.. include:: ch­1­section­1.rst
.. include:: ch­1­section­2.rst
.. include:: ch­1­section­3.rst
Обратите внимание, что первая строка в обоих файлах — это
комментарий (а не двойное двоеточие), и эти строки не будут пре­
образованы при конвертации rST в другой формат.
Поскольку rST не обязательно конвертировать в какой­либо
дру гой язык, вы можете просто писать свои доку мен ты в этом
формате, да так и оставлять. Однако есть смысл убедиться в том,
что ваш rST «верен», по крайней мере, периодически попытавшись
конвертировать его в другой формат.
Чтобы конвертировать rST в HTML, на до выполнить
$ rst2html ­­strict file.rst /tmp/doc.html
Это подтвердит, что ваш вводимый файл (file.rst) верен. И на вы­
ходе будет чис тый HTML. Же лая сде лать немного покру че, мо­
жете применить еще и стили, приказав использовать документ CSS
(Cascading Style Sheet):
$ rst2html ­­strict ­­stylesheet­path=file.css file.rst /tmp/doc.html
Инструментарий и рабочий процесс
Помимо самого rST, вам потребу ются как минимум: при личный
текстовый редак тор, инструмент контроля версий (Git) и инстру­
мент сборки (make). В большинстве хороших редак торов (напри­
мер, Vim и Emacs), для упрощения ва шей жизни, есть режимы
rST. Сохраняя свои документы rST в Git, вы выигрываете два ж ды:
вы полу чаете не только распределенную систему, позволяющую
работать над документацией хоть целой командой, но и всю мощь
git diff и git blame. Наш учебник не по Git, но создать систему доку­
ментации можно с помощью всего лишь
mkdir my­docs
cd my­docs
git init .
echo hello > document.rst
git add document.rst
git commit ­asm “initial commit of my docs.”
Затем запустите git add $file, чтобы добавить новый файл и пе­
риодически выполняйте git commit ­asm “$comment”, чтобы со­
хранить свою работу. Чтобы понять, почему git diff и rST — это
> С помощью одной опции графического инструмента, PlantUML, можно не только
преобразовать UML, но также имитировать виджеты графического интерфейса
из исходного файла ASCII.
72
|
LXF212 Август 2016
прекрасное сочетание, попробуйте применить diff к двум большим
файлам SGML или XHTML.
Примечание: rST мож но исполь зовать с доку ментами любо­
го размера. Например, Upstart Cookbook (http://upstart.ubuntu.com/
cookbook), преобразованный в PDF, представляет собой 202 стра­
ницы с рисунками, таблицами, большим количеством примеров
кода и специальными пик тограммами, и был полностью написан
в виде 11000 строк rST.
Графика и rST
Поскольку rST — простой язык разметки, в нем самом нет средств
для создания графики, но он позволяет включать изобра жения
в ваши документы. И это разумно: пусть rST занимается тем, что
у него полу чается лучше всего — документацией, а для графики
есть другие специа лизированные инструменты.
Преж де чем перей ти к под ходящим графическим при ложе­
ниям, давайте рассмотрим, как работает с графикой rST. В отли­
чие от изу ченных нами ранее средств rST, графические немного
отличаются, поскольку в них используются «дирек тивы». Зву чит
пугающе, но это просто команды, которые должны размещаться
в нача ле строки. Все дирек тивы начинаются с двух точек и пробе­
ла — например, чтобы добавить в файл изобра жение PNG, можно
указать
.. image:: my­photo.png
Обратите внимание на двойные двоеточия (‘::’), которые тре­
бу ются во всех дирек тивах. Ес ли это вам что­то напоминает —
так и должно быть: дирек тивы очень похожи на ранее упомяну­
тые комментарии. Мы обмолвились, что изобра жение включается
в файл rST, но на самом деле, оно добавляется только в файлы, ко­
торые вы создаете из файла rST.
На данном этапе нам на до определиться с нашим под ходом.
Обычные точечные или растровые форматы изобра жений, такие
как PNG и JPEG, отлично под ходят для фотографий, но, то, о чем
мы собираемся говорить, в основном касается создания графиче­
ских изобра жений в какой­либо другой форме. И поскольку мы ре­
шили не пренебрегать качеством, нам не нужны растровые фор­
маты для графики, которую мы будем создавать, поскольку они
не будут произвольно масштабироваться без потери качества.
Если вы действительно хотите сгенерировать растровый вывод
из век торного SVG или PostScript­файла, проще всего установить
набор графических инструментов командной строки ImageMagick,
а затем выполнить следующую команду:
$ convert input.svg output.png
Работу она сделает, но если вам ну жен вывод типографского
качества, следует заменить значение по умолчанию для разреше­
ния печати. Например, для вывода с 1200 DPI (DPI — dots per inch,
точек на дюйм) с разрешением по оси X в 1920 пикселей (а по Y оно
вычислится автоматически), скомандуйте
$ convert ­density 1200 ­resize 1920 input.svg output.png
Оставшаяся часть этого раздела касается двух наиболее рас­
пространенных сценариев, которые могут вам пригодиться:
> Вывод в Сеть Для этого надо воспользоваться графическим фор­
матом SVG и визуа лизатором rst2html.
> Вывод для пуб лика ции Для это го сце на рия, са мо со бой, ну­
жен формат PostScript (или EPS). Здесь вы можете использовать
либо визуа лизатор rst2pdf, либо rst2latex, и конвертировать Latex
в PostScript с помощью команды dvips.
На данном этапе вы должны решить, какой сценарий под хо­
дит вам; хотя дирек тива изобра жения будет принимать изобра же­
ния и SVG, и PostScript, «прикол» в том, что в rST много визуа ли­
заторов командной строки, позволяющих преобразовать текст rST
в другие форматы. Некоторым из них, таким как rst2html, не важно,
в ка ком фор ма те пред став ле но изо бра же ние. Де ло в том, что
в HTML рендеринг изобра жения осу ществ ляется не с помощью
язы ка HTML — про сто HTML со об ща ет ва ше му web­брау зе ру
www.linuxformat.ru/subscribe
ReStructuredText Учебник
Org-mode: Альтернатива Markdown
Для Markdown есть некоторые интересные альтер­
нативы. Прекрасным конкурентом ему является
Org-mode, это редак тор иерархических струк тур
для Emacs. Хотя Org-mode прекрасно под ходят для
написания документации, следует иметь в виду, что
редак тор обязан понимать файлы формата .org.
Редак тировать такой файл в программе, не под­
держивающей Org-mode, не стоит, поскольку фор­
мат Org­mode добавляет «шум» в виде звездочек
(вовлекая пересылку битовых блоков). А если вам
за хочется использовать что­то из многочисленных
функций Org-mode, документ ока жется перегру жен
> Как видите, rST поддерживает сложное форматирование.
расположение файла изобра жения на web­сервере. И уже браузер
извлекает этот файл и обрабатывает его сам.
Но дру гим визуа лизаторам rST, таким как rst2pdf и rst2latex,
не все равно, какие графические форматы вы указываете, посколь­
ку они и вправ ду обраба тывают эти изобра жения. Так что ес ли
вы за да ди те в ука за те ле rst2pdf формат SVG, он не спра вится,
поскольку PDF не под держивает SVG.
Если вы столкнетесь с такой проблемой, то самые удобные ин­
струменты конверсии — это convert и Inkscape. Если вы еще не ус­
тановили эти инструменты, но намереваетесь работать с PostScript,
советуем сделать это, наряду с пакетами ps2eps и psutils.
До пус тим, вы хо ти те пре об ра зо вать SVG в PostScript. Са­
мый простой и самый лучший способ, на самом деле, запус тить
Inkscape в пакетном режиме, вот так:
$ inkscape input.svg ­­export­ps=output.ps
Для конверсии PostScript в SVG запустите его вот так:
$ inkscape input.ps ­­export­plain­svg=output.svg
Примечание: Если на выходе вы хотите получить, ска жем, PNG
или JPEG, проще преобразовать файл SVG в рас тровый формат
с помощью convert ­density, как показано выше (поскольку это по­
зволяет избежать хлопот c ограничительными рамками PostScript).
На данном этапе у вас вновь есть выбор. Поскольку rST под дер­
живает все обычные графические форматы, да лее вы можете от­
крыть свой рисунок в Inkscape, Dia и, возможно, да же GIMP.
> Figlet (www.figlet.org) Это современная альтернатива команды
banner, которая принимает текстовый ввод и на вы ходе создает
ASCII в виде различных шрифтов.
> Jave (www.jave.de) Расшифровывается как Java Ascii Versatile
Editor; это редак тор с графическим интерфейсом, что позволяет
рисовать в ASCII. Но это и просто программа для рисования: на­
пример, вы можете нарисовать круг ASCII с помощью инструмента
ellipse, потом выбрать эту фигуру и вдвинуть в нее свой рисунок!
Если вы ищете инструменты, преобразующие текстовые фор­
маты в обычные графические, взгляните на:
> DOT-язык [точечный] GraphViz (www.graphviz.org) Этот язык раз­
работан специально для работы с графикой, содержащей груп­
пы связанных объек тов. Поэтому он идеально под ходит для пред­
ставления таких вещей, как бинарные деревья, сетевые диаграммы
и деревья решений. Он под держивает форматы PostScript, SVG
и PNG. Вот пример простого графа:
digraph G {
node [shape = circle];
a ­> b
a ­> c
a ­> d
a ­> e
a ­> f
b ­> d
e ­> f
}
Основные элемен ты фай ла GraphViz формата DOT — это те
стро ки со стрелка ми. Отдельные бу к вы обо знача ют вер шины,
а стрелки — связывающие их ребра.
Поскольку GraphViz под держивает графы произвольного раз­
мера, хорошо, если есть возможность изменить способ их отобра­
жения. В GraphViz это делается с помощью различных команд, ис­
пользующих разные способы компоновки.
> ditaa (http://ditaa.sourceforge.net) — инструмент Java, который ге­
нерирует графические файлы из ASCII, но фигуры надо будет рисо­
вать с помощью ASCII­символов. Здесь все довольно интуитивно,
но стоит восполь зоваться плагином редак тора, чтобы ускорить
это занятие. Стандартная версия ditaa генерирует только вывод
e
a
Графические инструменты
Однако очевидно, что если единый язык (rST) для всех текстовых
документов — это прекрасно, то для графики часто требуются спе­
циальные средства, в зависимости от того, какие визуальные эф­
фек ты вы пытаетесь создавать.
Есть две категории инструментов: в первую входят те, что по­
зволяют получить вывод в ASCII, а во вторую — те, что дают ASCII
и преобразуют его в обычный графический формат. Если вам тре­
буются более мощные инструменты, которые позволяют рисовать
картинки в ASCII и сохранять вывод в виде текста, обратите внима­
ние на следующие:
ку чей лишних мета­данных (магическими ком­
ментариями, тэгами, свойствами и временными
метками). Мы считаем, что Org-mode отлично под­
ходит для написания заметок, но не для написания
документации. Но у вас может быть другое мнение
насчет этого.
b
e
c
d
d
f
a
f
b
c
> GraphViz умеет представлять ваши графы по-разному. Левый граф выполнен командой
dot, а правый граф показывает те же данные в радиальном представлении, созданном
командой сirco.
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
73
Учебник ReStructuredText
> Стрелки в PIC могут простираться по любой траектории.
Скорая
помощь
Первоначально rST
был разработан
для создания ком­
ментариев к доку­
ментации языка
программирова­
ния Python. У Perl
есть POD (Plain Old
Documentation),
у Java есть Javadoc,
ну и Python —
это же Python,
им тоже за хоте­
лось выступить
в стиле «батарейка
прилагается».
74
|
PNG, но есть еще альтернативная, которая называется Ditaa Eps, и,
как нетрудно дога даться, конвертирует в Encapsulated PostScript.
> PlantUML (http://plantuml.com) создает красивые UML­диаграммы
в PNG, SVG и других форматах, из исходного ASCII­файла [UML —
язык визуального моделирования, — прим. ред.]. PlantUML во мно­
гом похож на GraphViz в том плане, что вам не приходится реально
«рисовать» какие­либо фигуры с помощью ASCII­символов.
> PIC (http://bit.ly/PICTool) PIC — это сокровище. Он входит в инст­
рументарий Troff (но пусть вас это не пугает). Он генерирует диа­
граммы в PostScript и яв ляется своего рода текстовой версией
Dia. PIC — это одна из самых умных программ, хотя о ней прак­
тически никто ничего не слышал. Это не инструмент для рисова­
ния. Это да же не «просто» графический формат; это полноцен­
ный язык программирования графики. Но не паникуйте, этот язык
создан как удобный для пользователя. Вот как нарисовать рам­
ку с названием:
.PS
box “tricks”
.PE
Проще простого! Единственный неочевидный момент — эти
две странные строки, начинающиеся с точки. Это шаблонный код
Troff (макро­вызовы), который инкапсулирует изобра жение. Имена
макросов обозначают «Нача ло изобра жения» и «Конец изобра же­
ния». Если вы поместите приведенные выше строки в файл (ска­
жем box.pic), вы можете преобразовать его в файл PostScript сле­
дующим образом:
$ groff ­p ­Tps box.pic > box.ps
Выглядит и вправду страшновато, но на самом деле это не так.
Па ра метр ­p со об ща ет groff (это GNU­альтер на ти ва Troff), что
он обрабатывает файл PIC, а ­Tps велит groff генерировать вывод
PostScript. Давайте попробуем создать прямоугольник и круг и со­
единить их стрелкой:
.PS
box “a box”
arrow
circle dotted “a circle”
.PE
Если немного усложнить за дачу, вот хороший пример того, на­
сколько интуитивна работа с PIC:
.PS
box “A”; move; circle filled; move; circle “B”
arrow from 1st box.se down right then right to 2nd circle.w
spline from 2nd circle.n up left then left to 1st box.top ­>
.PE
В этот раз мы снова нарисова ли прямоугольник и два кру га,
но немного отда ли ли их друг от дру га с помощью move. Потом
LXF212 Август 2016
мы нарисова ли две линии (которые, на самом деле, стрелки), чтобы
соединить прямоугольник и второй круг. Параметры всех фигур
в PIC определяются с помощью ключевых слов, таких как «верх»,
«низ», «лево», «право» (вот что значит 1st box.top). Но так же можно
называть их и по координатам компаса. Так, 1st box.se обозначает
«юго­восточный (верхний правый) угол» первого прямоугольника,
а circle.w относится к «запа ду» (левой стороне) второго круга! Про­
длевать линии можно с помощью ключевого слова then.
Кру тая штука; но мы, ка жется, упомянули, что PIC — это еще
и язык программирования? ОК, давай те попробуем что­нибудь
легко набираемое, но выдающее более замысловатый вывод:
.PS
box filled
for i = 0 to 1 by 0.1 do {
circle radius i at last box.ne
}
.PE
Полу чится закрашенный прямоугольник и 10 кругов с увели­
чивающимся ра диусом и центром в северо­вос точном углу это­
го прямоугольника.
Мы разобра ли только самую ма лость из того, что умеет PIC.
Он так же под держивает другие фигуры, математические расчеты,
чтение из файлов данных, макросов и условных выра жений.
Если вы хотите, чтобы ваша графика выглядела превосходно,
извольте прочитать страницы man, info и ­­help для таких команд,
как convert, groff и inkscape, поскольку в них огромное богатство
опций.
Мы рассмотрели основные виды графики, но если у вас более
экзотические интересы, то вот еще несколько вариантов:
> Ноты Если вы — профессиональный композитор, используйте
LilyPond. Или ABC Notation, что тоже подойдет.
> Управление проек тами TaskJuggler — отличный инструмент, спо­
собный строить диаграммы Гантта из файла формата ASCII; но,
к сожа лению, преобразует только в HTML.
> Cписки задач Для этой цели нет ничего лучше, чем Org-mode.
Жутко мощный инструмент.
> Элек тронные таблицы В Org-mode есть встроенная под держ­
ка для элек тронных таблиц (включая суммирование и формулы).
На деюсь, мы сумели убедить вас в том, что rST — настоящее
сокровище. Мы рассмотрели, как из исходного файла с простым
текстом сде лать дос тупный, пригод ный для пуб лика ции текст
с графикой. |
> Использование цикла в PIC для создания оптической иллюзии.
www.linuxformat.ru/subscribe
Установка системы Разбираемся в тонкостях
установки Linux
Debootstrap: Секреты установки
По нажатию кнопки Установить начинают твориться всякие таинственные штуки.
Дмитрий Кузнецов демистифицирует процессы, стоящие за установкой системы.
разные, а дета ли их реа лизации сильно зависят от аппаратуры. На­
пример, во встраиваемых [embedded] системах часто используется
“Das U­Boot” (хотя есть и другие), а в ПК (x86) — Grub или LILO, ко­
торые выну ж дены уживаться вместе с BIOS — заранее записанной
в ПЗУ ПК программой, берущей на себя часть функций загрузчика.
Так или иначе, управ ление полу чает ядро Linux, которое, по­
мимо выполнения множества за дач по инициа лизации аппарат­
ных устройств, должно найти и монтировать корневую файловую
систему (КФС). Обычно это раздел жесткого диска или другого но­
сителя информации, отформатированный под одну из под держи­
ваемых ядром файловых систем (ext3, ext4, jffs2, ubifs и т. д.). Там
хранятся все установленные пакеты ПО. В успешно загру женной
ОС содержимое КФС можно посмотреть так: ls /. Однако следует
иметь в виду, что в процессе загрузки к ней могут быть подмонти­
рованы другие файловые системы, полный список которых можно
получить при помощи команды mount.
Разобравшись с КФС, ядро Linux запускает программу инициа­
лизации — /sbin/init. C нее начинается финальная ста дия загруз­
ки, в процессе которой запускаются все необходимые системные
и прикладные программы и, наконец, пред лагается пользователю
зарегистрироваться в системе.
Наш
эксперт
Дмитрий Кузне‑
цов более 10 лет
ведет неравный
бой с монстра­
ми сложности,
хотя некоторые
почему­то их счи­
тают ветряными
мельницами.
Что делает инсталлятор?
У
с тановка современных дистрибу тивов Linux очень про­
ста. Дос таточно вставить компакт­диск и несколько раз
ответить на приветливые вопросы инсталлятора бодрым
щелчком мыши, чтобы полу чить вполне пригодную для работы
сис тему. Однако за простоту приходится расплачиваться гибко­
стью. Инсталлятор способен лишь на небольшой набор типичных
для большинства пользователей конфигураций. А что делать тем,
кому не повезло попасть в число этих беззаботных счастливчиков?
Попробуем разобраться.
Загрузка Linux
Первым делом следует понять, что должно полу читься в резуль­
тате работы инсталлятора. Рассмотрим процесс загрузки уже ус­
танов ленной ОС Linux и выясним, какие компоненты ПО играют
в нем ключевые роли.
За грузка лю бой ма шины начинает ся с вклю че ния пи та ния.
В этот момент процессор устанавливает значения своих регистров
так, чтобы начать выполнение кода по определенному адресу в па­
мяти. Разумеется, для успешного продолжения работы там нужно
разместить соответствующую программу — загрузчик, главная за­
дача которого — найти и запустить ядро Linux. Загрузчики бывают
76
|
LXF212 Август 2016
Итак, с точки зрения инсталлятора ПО любого дистрибу тива Linux
можно разделить на три части: загрузчик, ядро и КФС. А в задачи
инсталлятора входит:
1 Подготовить устройство хранения информации для установки
ОС. Например, отформатировать один из разделов жесткого диска.
2 Полу чить из репози тория необходимые пакеты ПО и соз дать
из них КФС.
3 Записать полученную КФС на подготовленное устройство.
4 Получить из репозитория и установить загрузчик и ядро.
Ока зывает ся, ниче го слож ного. Большин ст во дейст вий ин­
сталлятора элементарны. Имея под рукой Linux (достаточно да же
LiveCD), их нетрудно выполнить и вручную. C разметкой и форма­
тированием дисков отлично справятся fdisk и mkfs, а с записью
КФС — cp. Установка ядра тоже сводится к простому копированию
файлов: vmliniz и initrd (если нужно) — в /boot, а дополнительных
модулей — в /lib/modules. Если кто­то предпочитает содержимое
ката лога boot хранить на отдельном разделе диска, а при загруз­
ке монтировать его в /boot, не составит труда реа лизовать и такую
конфигурацию. Что касается загрузчика, то его установка может
и вовсе не пона добиться. Если на компьютере установлены другие
ОС, загрузчик должен уже быть, и потребуется лишь немного под­
править его настройки для обеспечения работоспособности новой
системы. Однако и в противном случае установить его обычно до­
вольно просто. Например, Grub инсталлируется всего одной коман­
дой — /usr/sbin/grub­install /dev/sda.
www.linuxformat.ru/subscribe
Debootstrap Учебник
Оста лось разобраться с созданием КФС. Пожа луй, это — са­
мая сложная часть работы инсталлятора — ведь типичная систе­
ма содержит сотни, а то и тысячи, неочевидно взаимодействую­
щих компонентов ПО. Но эта за дача уже давно автоматизирована.
В дистрибу тивах Linux семейства Debian для этого используется
debootstrap, которой мы и воспользуемся да лее.
Debootstrap
Итак, debootstrap — это консольная утилита без графического ин­
терфейса, которая в соответствии с конфигурацией, за даваемой
через параметры командной строки, получает из репозитория на­
бор Deb­пакетов и создает из них КФС в локальном ката логе. Для
нормальной работы ей необходимы права суперпользователя.
Вот точный формат ее вызова:
debootstrap [options] suite target [mirror]
Здесь target — ката лог, где будет создана КФС; suite — имя дист­
рибу тива, из репозитория которого следует брать Deb­пакеты (на­
пример, для Ubuntu 16.04 LTS — xenial); options — дополнительные
параметры; mirror за дает зерка ло репозитория (если не устраива­
ет стандартный вариант).
Сказанного уже вполне достаточно, чтобы начать использовать
debootstrap. Например,
#debootstrap xenial /home/work/rootfs
создаст в ката логе rootfs базовую КФС Ubuntu 16.04 LTS (Xenial Xe­
rus). Поскольку все необязательные параметры опущены, архитек­
тура полученной КФС (целевая архитек тура) совпа дает с архитек­
турой хоста (машина, на которой выполняется сборка).
Ра зу меется, возмож ны и гораз до бо лее гибкие конфигу ра­
ции. Нужно лишь разобраться в дополнительных параметрах (op­
tions). Приводить их полный список смысла нет, его всегда можно
посмотреть в руководстве (man debootstrap). Коснемся лишь двух
самых важных тем:
» Задание списка устанавливаемых пакетов
На пер вый взгляд ка жет ся, что спи сок па ке тов оп ре де ля ет ся
исключительно личными предпочтениями пользователя, а их пе­
речисление вручную — единственное решение, способное обес­
печить полную свободу выбора. Однако для многих сис темных
программ и библиотек альтернатив не так много, а то и нет вовсе.
Поэтому выбор значительной части базовых компонентов систе­
мы да же у самых ярких индивидуа листов не слишком отличается
от общепринятого. Ясно, что заставлять пользователя при ка ж дом
вызове debootstrap набирать огромный и заранее почти известный
список пакетов не только бессмысленно, но и негуманно. Гораздо
лучше определить разумное значение по умолчанию, а при необхо­
димости позволить его откоррек тировать. Создатели debootstrap
так и сдела ли. Параметр ­­variant=X за дает один из предопределен­
ных списков пакетов, а ­­include=a,b,...,c и ­­exclude=a,b,...,c позво­
ляют добавлять или, наоборот, исключать необходимые элемен­
ты. Возможных значений X немного: minbase — минимальный для
жизнеспособной КФС набор пакетов; buildd — это minbase плюс
пакеты для сборки ПО. Кроме того, есть еще два весьма специфич­
ных значения: fakechroot, дающее возможность запускать debootstrap без прав root в окру жении fakeroot, и scratchbox, позволяю­
щее создавать КФС для сис темы кросс­компи ляции scratchbox.
Ecли variant опу щен, стро ит ся ба зо вая КФС Debian. Па ра метр
­­components=a,b,...,c за дает компоненты репозитория, из кото­
рых разрешается брать пакеты. Ubuntu тра диционно под держива­
ет четыре: main, restricted, universe и multiverse.
» Задание целевой архитек туры КФС
Переносимость — од но из главных дос тоинств Linux, по этому
многие дист рибу тивы под держивают несколько процес сорных
архитек тур, а debootstrap может собрать КФС для любой из них.
Однако сделать это не всегда одинаково просто. Дело в том, что
в процессе сборки необходимо запускать содержащиеся в ус та­
нав ливаемых па ке тах программы, а ес ли це ле вая архи тек ту ра
и архитек тура хоста несовместимы, сделать это невозможно. От­
сюда два существенно различающихся сценария использования
debootstrap: когда архитек туры совместимы и когда — нет. В пер­
вом слу чае все просто. Сборка це ликом может быть выполнена
на хосте, достаточно лишь за дать целевую архитек туру в парамет­
ре arch=<название архитек туры>. Во втором — немного сложнее.
Нужно еще добавить ключ ­­foreign, явно указывающий на несо­
вмес тимость архи тек тур. В этом слу чае debootstrap переходит
в специальный двухфазовый режим и выполняет лишь первую фа­
зу, которая не требует запуска устанавливаемых программ, а пото­
му не вызывает никаких проблем. В результате получается заготов­
ка КФС. Ее необходимо сделать корневым ката логом окру жения,
допускающего выполнение кода целевой архитек туры, после че­
го командой /debootstrap/debootstrap ­­second­stage запустить вто­
рую, заключительную, фазу. Для этого можно использовать как
реальную машину с нужной архитек турой, так и эмулятор. Ниже
будет показано, как это сделать на QEMU.
Осо бен но сле ду ет подчерк нуть, что debootstrap аб со лют но
безопасна. Локальный ката лог с создаваемой КФС — единствен­
ный результат работы программы. Его уда ление всегда позволяет
вернуться в исходное состояние и попробовать еще раз. Не нужно
бояться экспериментировать!
Конструируем тестовую «песочницу»
Теперь посмотрим, как все это работает. Для определенности сразу
отметим, что все работы будут выполняться на ПК под управлени­
ем 64­битной ОС Linux Ubuntu 14.04 LTS от имени root.
Начнем с самого простого примера — соберем КФС и, восполь­
зовавшись chroot, соорудим из нее «песочницу» для тестирования
ПО. Это отличная иллюстрация работы debootstrap, позволяющая
сосре доточиться ис ключи тельно на КФС, не от влека ясь на на­
стройку процесса загрузки. Причина, по которой мож но обойти
вниманием столь важные вопросы, в том, что «песочница» рабо­
тает под управлением ОС хоста и использует ее ядро. Конечно, та­
кое решение не может полноценно конкурировать с нормально ус­
тановленной ОС, однако во многих случаях его вполне достаточно.
Итак, приступим. Соберем минимальную КФС Ubuntu 14.04 LTS
(Trusty Tahr). Значение параметра arch — amd64. Рабочий ката­
лог — ./chroot. Его не нужно предварительно создавать, debootstrap может самостоятельно справиться с этой за дачей.
# debootstrap ­­arch=amd64 ­­variant=minbase trusty ./chroot
Дож давшись окончания работы debootstrap, в ката логе ./chroot
можно найти вполне нормальную КФС. Настора живает лишь со­
держи мое dev, proc и sys. Оно долж но фор ми ро вать ся ядром
Linux во время загрузки. Но «песочница» работает под управлени­
ем ОС хоста, поэтому для нее вполне логично использовать сис­
темные ката логи /dev, /proc и /sys. Этого проще всего добиться
монтированием:
# mount ­o bind /dev ./chroot/dev/
# mount ­o bind /proc/ ./chroot/proc/
# mount ­o bind /sys/ ./chroot/sys/
Вот и всё, можно запускать:
# chroot ./chroot
Теперь ls / показывает содержимое ./chroot, а подсчет количества
пакетов в системе (# dpkg ­l | wc ­l) дает число 103. Очевидно, это
и есть “minbase­песочница”.
Вернуться в нормальную систему можно так:
#exit
Запускаем на «живом железе»
Немного усложним за дачу. Попробуем собрать КФС и установить
ее на свободный раздел жесткого диска. Пусть это будет /dev/sda3.
Кроме того, предположим, что /dev/sda1 используется для своп­
пинга [подкачки]. Это временное храни лище страниц оператив­
ной памяти, используемое ОС во время работы. При выключении
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
77
Учебник Debootstrap
> Рис. 1. Содержимое конфигурационных файлов.
пи та ния там не сохраняется ничего по лезного. Сле дова тельно,
в новой сис теме этот раздел так же можно использовать ана ло­
гичным образом.
Снача ла разберемся с параметрами debootstrap. На этот раз по­
пробуем последний LTS­релиз Ubuntu — 16.04 (Xenial Xerus). Це­
левая архитек тура — amd64, ведь использовать полученную КФС
будем на хосте. Набор пакетов — минимальный. Он должен лишь
обеспечивать загрузку ОС без графического интерфейса, регист­
рацию пользователя с правами root и доступ к сети Интернет. Все
остальные проблемы можно решить потом, установкой дополни­
тельных пакетов из репозитория. Конфигурация minbase ка жется
под ходящим вариантом. Однако вполне может потребоваться до­
бавить несколько пакетов. С ходу для этого видится две наиболее
вероятные причины.
Во­первых, в наборе пакетов minbase нет ядра Linux. Почему
его не включили, понятно. Может получиться так, что на компью­
тере уже есть под ходящее ядро и пользователь хочет лишь откор­
рек тировать настройки загрузчика для его использования с но­
вой КФС. В противном случае легко добавить необходимые пакеты
в параметрах debootstrap. Например, для Ubuntu это делается так:
­­include=linux­generic.
Во­вторых, может возникнуть проблема с настройкой доступа
в Интернет. Для решения этой за дачи нет общего рецепта, все за­
висит от предпочтений конкретного провайдера. Например, в до­
машних ус ловиях часто требуется установка PPPoE­соединения.
В этом случае необходимые средства настройки можно добавить
так: ­­include=pppoeconf,net­tools,whiptail.
Итак, собираем КФС:
# debootstrap ­­arch=amd64 ­­variant=minbase ­­include=linux­
generic,pppoeconf,net­tools,whiptail,iputils­ping xenial ./rootfs
Форматируем выбранный раздел жесткого диска:
# mkfs.ext4 /dev/sda3
Монтируем его и копируем туда полученную КФС:
> Рис. 2. Содержимое 40_custom.
78
|
LXF212 Август 2016
# mount /dev/sda3 /mnt/
# cp ­R ./rootfs/* /mnt/
Для обеспечения корректной загрузки остается только подпра­
вить несколько конфигурационных файлов в новой КФС и настро­
ить Grub. При этом нам пона добятся UUID­идентификаторы разде­
лов жесткого диска. Узнать их можно так:
# blkid ­c /dev/null
Допустим, значения UUID получились такие:
/dev/sda1: UUID=”d1383495­4b40­4ea2­848b­6c990fbc95e8”
TYPE=”swap”
/dev/sda3: UUID=”173bbd4b­7554­4edc­be73­438a812952c2”
TYPE=”ext4”
Теперь можно приступать к настройке. Снача ла займемся со­
держимим КФС. Здесь нужно исправить всего четыре файла:
» В /mnt/etc/hostname за дать имя машины. Пусть это будет test­
host.
» В /mnt/etc/hosts добавить testhost в качестве синонима для local­
host.
» В /mnt/etc/fstab за дать корректную информацию для монтируе­
мых при загрузке ОС файловых сис тем. В нашем слу чае их три:
псевдофайловая сис тема procfs, ext4 на /dev/sda3 и раздел для
своппинга /dev/sda1. В дета ли синтаксиса fstab вдаваться не бу­
дем. Он довольно прост, и не составит труда адаптировать ана ло­
гичный файл из любой работающей ОС Linux. Кроме того, всегда
можно заглянуть в man fstab.
» В /mnt/etc/shadow найти строку root:*:17000:0:99999:7::: и уда­
лить в ней *. Это разблокирует учетную запись root и позволит за­
регистрироваться в системе с правами суперпользователя без па­
роля (потом его можно будет установить).
С КФС больше делать нечего. Можно ее размонтировать и за­
няться загрузчиком Grub.
# umount /mnt/
Если на компьютере есть какой­нибудь Linux, то загрузчик уже
должен быть установлен. И очень вероятно, что это Grub. У боль­
шинства читателей, скорее всего, ситуация именно такая, поэто­
му просто добавим новую систему в стартовое меню загрузчика.
Самый простой способ этого добиться — автоматический. Grub
умеет самостоятельно искать ОС на разделах диска и добавлять
их в свое меню. Достаточно лишь дать команду update­grub. Для
тех, кто не любит магии, есть другой путь:
» Отключить автоматический поиск ОС, добавив в /etc/default/grub
строку GRUB_DISABLE_OS_PROBER=true.
» Самостоятельно за дать в /etc/grub.d/40_custom все необходи­
мые парамет ры для нового вариан та загрузки (пример пока зан
на рис.2).
» Обновить конфигурацию командой update­grub.
Вот и всё; перезагрузив компьютер и выбрав в меню Grub Test
kernels > debootstrap_rootfs_ubuntu1604, можно запустить новую
систему.
Переходим на архитектуру ARM
Напос ледок — самое интересное. Соберем КФС текущей версии
Debian (jessie) для весьма популярной на мобильных устройствах
архитек туры — ARM. И не только соберем, но и посмотрим, как
она работает. Для этого не нужно разбирать свой любимый теле­
фон или планшет, достаточно просто установить эмулятор QEMU:
# apt­get install qemu qemu­user­static
Выясним параметры сборки. В репозитории Debian представле­
ны несколько вариантов ARM архитек туры, остановимся на наибо­
лее старом и универсальном — armel. К стандартному minbase­на­
бору пакетов добавим:
» net-tools — простейшие средства для работы с сетью (ifconfig
в том числе);
» isc-dhcp-client — DHCP­клиент (ну жен для получения IP­адреса
при сетевой конфигурации QEMU по умолчанию);
www.linuxformat.ru/subscribe
Debootstrap Учебник
» wget — программа для загрузки файлов (будем ее использовать
для тестирования доступа к сети Интернет);
» linux-base и linux-image-3.16.0-4-versatile — одна из версий ядра
Linux (versatile — хороший вариант, поскольку QEMU под держива­
ет эту платформу).
Ну и, конечно же, нужно не забыть ключ ­­foreign, поскольку ар­
хитек тура хоста (amd64) несовместима с целевой (armel).
Итак, запускаем первую фазу сборки КФС:
# debootstrap ­­arch=armel ­­foreign ­­variant=minbase
­­include=net­tools,isc­dhcp­client,wget,linux­base,linux­image­
3.16.0­4­versatile jessie ./arm_rootfs
Для обеспечения возможности выполнения ARM­кода в полу­
ченную заготовку КФС скопируем статическую версию эмулятора
ARM QEMU, после чего запустим в окру жении chroot вторую фа­
зу сборки:
# cp /usr/bin/qemu­arm­static ./arm_rootfs/usr/bin/
# chroot ./arm_rootfs /debootstrap/debootstrap ­­second­stage
Ос тается от ре дак тировать конфигу ра ционные фай лы hostname, hosts и shadow в ./arm_rootfs/etc/ (fstab не нужно). Как это
сделать, уже было показано выше.
Кроме того, добавим необходимые репозитории в ./arm_rootfs/
etc/apt/sources.list:
deb http://ftp.ru.debian.org/debian/ jessie main
deb­src http://ftp.ru.debian.org/debian/ jessie main
Все, КФС готова. Можно подумать, как ее запустить на QEMU.
На реальной машине первой за дачей была подготовка разде­
ла жесткого диска и запись на него КФС. На эмуляторе роль диска
играет обычный файл — образ. Его можно создать командой dd,
однако в составе QEMU для этой цели есть специальная програм­
ма qemu-img. В нашем случае вполне будет достаточно диска раз­
мером 1 ГБ:
#qemu­img create ./arm_rootfs.img 1G
Для работы с образом воспользуемся утилитой qemu-nbd. Она
представляет его в виде уда ленного диска и при помощи техно­
логии NDB (Network Block Device) организует доступ к его содер­
жимому через файл в ка та логе /dev. Та кой трюк ра зом решает
множество проблем, давая возможность работать с образом как
с реальным диском, а, следовательно, и использовать весь арсе­
нал тра диционных программ.
В Ubuntu NDB реа лизована в виде модуля ядра, поэтому снача­
ла нужно его загузить:
#modprobe nbd max_part=16
Теперь к одному из появившихся файлов /dev/nbdX можно под­
ключить образ диска эмулятора:
#qemu­nbd ­c /dev/nbd0 ./arm_rootfs.img
А затем самым простейшим способом разметить его:
#echo ­e «n\np\n1\n\n\na\n1\nw\neof\n» | fdisk /dev/nbd0
­u=cylinders
Созданный раздел сразу же становится доступен в /dev/nbd0p1,
что позволяет его отформатировать:
#mkfs.ext4 /dev/nbd0p1
Мон тирование и копирование фай лов так же не отлича ются
оригинальностью:
#mkdir “./mnt”
#mount ­t ext4 /dev/nbd0p1 “./mnt”
#cp ­r “./arm_rootfs”/* “./mnt”
#sync
#umount «./mnt»
Образ готов. Оста лось «замести следы»: освободить файл /dev/
nbd и выгрузить модуль ndb.
#qemu­nbd ­d /dev/nbd0
#modprobe ­r nbd
Проверим новую КФС на QEMU. Ядро, initrd и дополнительные
параметры передаются в командной строке, поэтому настройка за­
грузчика не нужна.
> Рис. 3. Настройка
сетевого соединения в QEMU.
#qemu­system­arm ­M versatilepb ­kernel ./arm_rootfs/boot/
vmlinuz­3.16.0­4­versatile ­initrd ./arm_rootfs/boot/initrd.img­
3.16.0­4­versatile ­append “root=/dev/sda1 rootfstype=ext4 rw”
­serial stdio ­drive file=./arm_rootfs.img
В окне эмулятора мож но наблюдать обычный процесс загрузки
Linux, заканчивающийся приглашением зарегистрироваться в сис­
теме. Введем root и посмотрим, как обстоят дела с доступом в Ин­
тернет. К сожа лению, ifconfig показывает только loopback, так что
придется немного повозиться. На первый взгляд ка жется, что про­
блема в настройках эмулятора, но это не так. Согласно докумен­
тации, по умолчанию QEMU имеет сетевой интерфейс, который
подключен к сетевому соединению хоста. Нужно лишь полу чить
IP­адрес через DHCP:
#dhclient eth0
Действительно, это решает проблему, в чем легко удостове­
риться, загрузив что­нибудь из сети Интернет. Например, исход­
ный код одной из версий fdisk:
#wget ftp://ftp.gnu.org/pub/gnu/fdisk/fdisk­0.9.1.tar.bz2
Так же мож но обновить репо зи торий и ус тановить дополни­
тельные пакеты ПО:
#apt­get update
#apt­get install vim
Заключение
Оказывается, в процессе инсталляции Linux нет ничего таинствен­
ного. Немного разобравшись в его внутренних механизмах, лег­
ко добиться самых необычных конфигураций. Хотя в статье речь
шла о утилите debootstrap, специфичной для Linux семейства Debi­
an, ана логичные возможности встречаются и в других дистрибу­
тивах. Например, febootstrap в Linux Fedora. А если да же их где­то
нет, понимание принципов работы инстал лятора никогда не бу­
дет лишним. |
www.linuxformat.ru/subscribe
> Рис. 4. Демонстрация доступности
Интернет в QEMU.
Август 2016 LXF212
|
79
CRIU Знакомство с утилитой
восстановления системы
ЧАСТЬ 4
CRIU: Практическое руководство
Павел Емельянов изучает предпосылки к живой миграции.
И
так, мы научились со хра нять со стоя ние про цес сов,
их восстанавливать и изучать содержимое файлов­обра­
зов. Сегодня мы попробуем сделать первый шаг навстре­
чу основному сценарию применения CRIU — к живой миграции.
Размеры файлов-образов
Наш
эксперт
Павел Емелья‑
нов — архитек тор
в команде Виртуо­
зо, идейный вдох­
новитель проек та
CRIU. В компании
с 2004 г., начинал
в группе разработ­
ки ядра Linux, ко­
торую затем воз­
главил. Сейчас
занимается ар­
хитек турой про­
дук та и открыты­
ми разработками
компании.
Рассмотрим содержимое папки с образами от программы top. Если
от 3­го урока ничего не оста лось, можно сделать новые.
tty1$ ls ­l top­dump/
total 860
­rw­r­­r­­. 1 root root 4201 Jun 30 12:13 cgroup.img
­rw­r­­r­­. 1 root root 891 Jun 30 12:13 core­22952.img
­rw­­­­­­­. 1 root root 116274 Jun 30 12:13 dump.log
­rw­r­­r­­. 1 root root 104 Jun 30 12:13 fdinfo­2.img
­rw­r­­r­­. 1 root root 18 Jun 30 12:13 fs­22952.img
­rw­r­­r­­. 1 root root 32 Jun 30 12:13 ids­22952.img
­rw­r­­r­­. 1 root root 38 Jun 30 12:13 inventory.img
­rw­r­­r­­. 1 root root 4206 Jun 30 12:13 mm­22952.img
­rw­r­­r­­. 1 root root 560 Jun 30 12:13 pagemap­22952.img
­rw­r­­r­­. 1 root root 688128 Jun 30 12:13 pages­1.img
­rw­r­­r­­. 1 root root 29 Jun 30 12:13 pstree.img
­rw­r­­r­­. 1 root root 1916 Jun 30 12:13 reg­files.img
­rw­r­­r­­. 1 root root 1662 Jun 30 12:13 sigacts­22952.img
­rw­r­­r­­. 1 root root 37 Jun 30 12:13 stats­dump
­rw­r­­r­­. 1 root root 32 Jun 30 12:13 tty.img
­rw­r­­r­­. 1 root root 177 Jun 30 12:13 tty­info.img
­rw­r­­r­­. 1 root root 4436 Jun 30 12:13 unixsk.img
Как видим, самый большой файл — pages-1.img (~670k), там хра­
нится содержимое памяти процесса top; на втором месте — dump.
log (~100k) с лога ми; размеры же всех прочих фай лов в сумме
не превышают 20k. Посмотрим, как CRIU хранит память процессов.
» Хранение памяти
У файла памяти в имени содержится номер — 1, но это не PID про­
цесса top, а порядковый номер дампа памяти. Будь в нашем дереве
больше одного процесса, среди образов появились бы файлы pages-2.img, pages-3.img и т. д. Узнать, какому процессу принад лежит
> Сравнение характерных размеров
файлов-образов.
80
|
LXF212 Август 2016
какой файл pages.img, можно, заглянув в файл pagemap-PID.img,
где содержится полная информация об участках виртуального ад­
ресного пространства процесса с PID, содержащих данные. Ядро
Linux выделает процессам память в «ленивом» режиме, и не вся
виртуальная память содержит какие­то данные. CRIU запрашива­
ет у ядра «карту занятой памяти» процессов и сохраняет в образы
только те страницы, которые ядро выделило процессу.
tty1$ crit show dump/mm­22952.img {
“magic”: “PAGEMAP”,
“entries”: [
{
“pages_id”: 1
},
{
“vaddr”: “0x55ced68e9000”,
“nr_pages”: 1
},
{
“vaddr”: “0x55ced6b01000”,
«nr_pages»: 3
},
...
Первый объект в этом фай ле — заголовок, где пока только
одно поле — идентификатор дампа содержимого памяти. Здесь
это 1. Далее идет массив пар vaddr:nr_pages; ка ж дая пара описыва­
ет диапазон страниц с данными. При восстановлении памяти CRIU
считывает эти записи по одной и записывает содержимое nr_pages
страниц из файла pages-ID.img в память процесса по адресу vaddr.
Но эта информация не описывает диапазоны виртуальной памяти,
к которым процессу разрешен доступ — т. н. “mappings” или «ото­
бра жения», создаваемые системным вызовом mmap. Ядро пока­
зывает их в файле /proc/PID/maps, информация о них хранится
в файле mm-PID.img, и диапазоны из pagemap.img включены в эти
отобра жения. Помимо отобра жений, в mm-PID.img так же хранит­
ся дополнительная информация о виртуальной памяти процесса.
tty1$ crit show mm­22952.img {
“magic”: “MM”,
“entries”: [
{
“mm_start_code”: “0x55ced68e9000”,
“mm_end_code”: “0x55ced690130c”,
“mm_start_data”: “0x55ced6b018d0”,
“mm_end_data”: “0x55ced6b02df8”,
“mm_start_stack”: “0x7ffdd3afbf80”,
“mm_start_brk”: “0x55ced6f1a000”,
“mm_brk”: “0x55ced6f5c000”,
“mm_arg_start”: “0x7ffdd3afd828”,
“mm_arg_end”: “0x7ffdd3afd82c”,
“mm_env_start”: “0x7ffdd3afd82c”,
www.linuxformat.ru/subscribe
CRIU Учебник
“mm_env_end”: “0x7ffdd3afdfeb”,
“exe_file_id”: 1,
“mm_saved_auxv”: [
...
],
“vmas”: [
{
“start”: “0x55ced68e9000”,
“end”: “0x55ced6902000”,
“pgoff”: 0,
“shmid”: 1,
“prot”: “PROT_READ | PROT_EXEC”,
“flags”: “MAP_PRIVATE”,
“status”: “VMA_AREA_REGULAR | VMA_FILE_PRIVATE”,
«fd»: ­1,
«fdflags»: «0x0»
},
...
Но вернемся к размерам файлов. Итак, если не считать файла
с логами, файл с содержимым памяти многократно превосходит
по размеру все остальные. Что это означает для живой миграции?
Живая миграция
Простейшая миграция процесса с host1 на host2 — в три команды:
host1$ criu dump ­t $pid ­D dump/
host1$ scp ­R dump/ [email protected]
host2: criu restore ­D dump/
Но этот способ не даст нам реально «живой» миграции. Во­первых,
очень затянется команда dump, ведь все содержимое памяти про­
цессов придется записать в образы pages.img, а размер их прак ти­
чески не ограничен (да же если исчерпалось ОЗУ и ядро выгрузило
часть памяти в раздел подкачки [swap], CRIU достанет их и от ту­
да). Во­вторых, команда копирования тоже продлится долго, ведь
по сети, возможно, придется переслать огромный объем данных.
Ну и выполнение команды restore тоже требует времени, ведь всю
память процессов придется читать с диска из файлов­образов.
Разберемся с этими тремя за держками. Преж де всего, учтем,
что в этом примере мы делаем явно лишнюю работу — записываем
данные в локальные файлы­образы, а потом копируем их на уда­
ленную машину. А если сразу пересылать данные из образов по се­
ти, мы избежим первого промед ления, на запись файлов локально.
» Передача образов по сети
Идея реа лизовать «уда ленные файлы­образы» появилась в CRIU
давно. Но поскольку, как мы видим, основной объем данных —
это содержимое памяти, эта идея была реа лизована в простейшей
форме: по сети в процессе dump’а можно передавать лишь содер­
жимое памяти. Для этого на до сделать две вещи:
1 На принимающей стороне запустить criu page­server; создаст­
ся порт, и он примет соединение, прочитает по нему содержимое
Виртуальная память процесса
mmap()
mm.img
start
end
flags
prot
...
> Восстановление содержимого
памяти процесса
из образов.
Виртуальная память процесса
...
записи об отображениях
> Соответствие образа mm.img адресному пространству процесса.
nr_pages страниц
по адресу vaddr
...
pagemap.img
страницы с данными
vaddr
nr_pages
pagemap.img
...
записи о страницах с данными
памяти и запишет его как файлы­образы pagemap.img и pages.img
в свою локальную папку.
2 На передающей стороне команде dump на до указать, что образы
с содержимым памяти следует записывать на page server.
Корочк, улучшенная живая миграция теперь выглядит так.
Запустим page­server на принимающей стороне, указав порт.
host2$ criu page­server ­D dump/ ­­port 12345
Затем опять запустим процедуру сохранения состояния, но уже
в опции ­­page­server ука жем, что данные на до передавать на host2
(указывается IP­адрес принимающей машины, а не ее доменное
имя). Можно так же добавить опцию ­­daemon, для запуска сервера
в режиме демона. К команде page­server можно добавить опции ­o
и ­v, как и для dump/restore для настройки логгирования.
host1$ criu dump ­t $pid ­D dump/ ­­page­server ­­address host2_
ip ­­port 12345
Так выглядят папки с образами на передающей стороне:
host1$ ls ­l dump/
­rw­r­­r­­. 1 root root 4201 Jun 30 12:31 cgroup.img
­rw­r­­r­­. 1 root root 891 Jun 30 12:31 core­22952.img
­rw­r­­r­­. 1 root root 104 Jun 30 12:31 fdinfo­2.img
­rw­r­­r­­. 1 root root 18 Jun 30 12:31 fs­22952.img
­rw­r­­r­­. 1 root root 32 Jun 30 12:31 ids­22952.img
­rw­r­­r­­. 1 root root 38 Jun 30 12:31 inventory.img
­rw­r­­r­­. 1 root root 4206 Jun 30 12:31 mm­22952.img
­rw­r­­r­­. 1 root root 29 Jun 30 12:31 pstree.img
­rw­r­­r­­. 1 root root 1916 Jun 30 12:31 reg­files.img
­rw­r­­r­­. 1 root root 1662 Jun 30 12:31 sigacts­22952.img
­rw­r­­r­­. 1 root root 37 Jun 30 12:31 stats­dump
­rw­r­­r­­. 1 root root 32 Jun 30 12:31 tty.img
­rw­r­­r­­. 1 root root 177 Jun 30 12:31 tty­info.img
­rw­r­­r­­. 1 root root 4436 Jun 30 12:31 unixsk.img
а на принимающей —
host2$ ls ­l dump/
­rw­r­­r­­. 1 root root 560 Jun 30 12:31 pagemap­22952.img
­rw­r­­r­­. 1 root root 688128 Jun 30 12:31 pages­65537.img
В первой папке нет образов с содержимым памяти: они сразу
переда лись по сети и записаны уже на принимающей стороне, где,
в свою очередь, нет всех прочих образов. А идентификатор образа
pages изменился. Дело в том, что page­server генерирует эти иден­
тификаторы, начиная не с 1, как criu dump, а с 0 × 10000 — во из­
бежание конфлик тов идентификаторов при запуске page­server
и dump на одной машине в одной папке с образами.
Скопируем оставщиеся образы и запустим восстановление:
host1$ scp ­R dump/* [email protected]:dump/
host2: criu restore ­D dump/
Команда scp выглядит уже чуть сложнее: на до не просто скопи­
ровать папку dump/ внутрь другой, а объединить их содержимое.
Итак, мы смогли передать самые тяжеловесные образы сразу
по сети, ускорив живую миграцию. Но время заморозки процессов
всё еще м. б. велико из­за передачи по сети. Как еще уменьшить
время заморозки, рассмотрим на следующем уроке. |
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
81
Rust
Rust: Ускорение
ввода/вывода
файлов
Михалис Цукалос объясняет, как использовать в своих программах файловый
ввод/вывод для обработки текстовых файлов.
Аргументы командной строки
Следующий код Rust, который мы назва ли arguments.rs, выводит
все переданные программе аргументы командной строки, вклю­
чая имя исполняемого файла:
use std::env;
fn main()
{
let mut counter = 0;
for argument in env::args()
{
counter = counter + 1;
println!(“{}: {}”, counter, argument);
}
}
Как вы увидите да лее, необходимый аргумент командной стро­
ки можно полу чить и напрямую. Однако представ ленный метод
прост, элегантен и под ходит для всех случаев.
Наш
эксперт
Михалис Цукалос
(@mactsouk) име­
ет степень магист­
ра в информаци­
онных технологиях
от Университетско­
го коллед жа Лон­
дона и степень
бака лавра по ма­
тематике. Он ад­
министрирует ба­
зы данных, пишет
программы и рабо­
тает в Unix как су­
щая математиче­
ская машина.
Простой пример
Скорая
помощь
Файловый ввод/
вывод — важней­
шая часть любой
ОС: если он мед­
ленный и нена деж­
ный, это может
привести к потере
данных в ОС или
на сервере баз дан­
ных. То есть опе­
рации ввода/вы­
вода должны быть
не только быст­
рыми, но и, самое
главное, на дежны­
ми. А ключ к вы­
сокой скорости
и на дежности —
простота!
82
|
а деюсь, вы уже освоились в Rust, а значит, пора обра­
титься к теме, которая очень важ на в сис темном про­
граммирова нии и опера ционных сис темах: фай ловый
ввод/вывод. Жест кие прави ла программирования в Rust очень
удобны при работе с файлами, так как позволяют снизить коли­
чество ошибок и сконцентрироваться на том, что действительно
важно — на алгоритме и операциях, которые вы хотите выполнить.
Снача ла мы представим несколько простых примеров, а затем пе­
рейдем к более сложным темам, таким как обработка текстовых
файлов и ввод/вывод с отобра жением файлов на памяти. На этом
уроке мы так же рассмотрим несколько важных тем, касающихся
Rust, в том числе указатели, сопоставление шаблонов и типы usize
и isize. Если вам потребуется помощь, обратитесь к двум преды­
дущим руководствам по Rust [Академия кодинга, стр. 78 LXF211
и стр. 84 LXF210] или зайдите на сайт с документацией Rust. По­
этому без долгих предисловий начнем!
Н
LXF212 Август 2016
Следующий код Rust, под названием simple.rs, показывает, как от­
крыть файл для чтения и создать пустой файл для записи. Это две
простейшие формы ввода/вывода:
use std::env;
use std::fs::File;
use std::path::Path;
use std::error::Error;
fn main()
{
let args: Vec<_> = env::args().collect();
let open = ::std::env::args().nth(1).unwrap();
let write = ::std::env::args().nth(2).unwrap();
let path = Path::new(&open);
let display = path.display();
let mut file = match File::open(&path)
{
Err(why) => panic!(“couldn’t open {}: {}”, display,
Error::description(&why)),
Ok(file) => file,
};
let write_path = Path::new(&write);
let write_display = path.display();
let mut write_file = match File::create(&write_path)
{
Err(why) => panic!(“couldn’t create {}: {}”,write_display,
Error::description(&why)),
www.linuxformat.ru/subscribe
Rust
Типы usize и isize
Если коротко, типы usize и isize — это целочис­
ленные типы длиной с указатель; их фак ти­
ческий размер в битах зависит от используе­
мой архитек туры.
Проблема, которую решают типы usize и isize,
состоит в том, чтобы иметь тип с разрядностью,
достаточной для хранения любого указателя или
смещения в струк туре данных. Это элегантное
решение проблемы, так как и usize, и isize автома­
тически привязываются к архитек туре текущей
системы. А вот переменная u64 всегда имеет
длину 64 бита.
Ok(write_file) => write_file,
};
}
Имена обоих файлов передаются программе simple.rs как ар­
гументы командной строки и преобразуются в переменные Path.
В наш пример так же включен код обработки ошибок, без которо­
го не обойтись, так как при работе с именами файлов и расшире­
ниями не всё может пройти гладко. Метод File::create() открыва­
ет файл в режиме только для записи. Если файл уже существует,
его содержимое будет полностью уда лено, в противном слу чае
создастся пус той файл (simple.rs в действии см. на стр. 84 вни­
зу). Средств файлового ввода/вывода много. Универсальное пра­
вило — пользуйтесь теми библиотечными функциями, которые вы
знаете лучше всего.
Представленная программа использует аргументы командной
строки для получения имени копируемого файла и имени нового
файла. В коде Rust файла cp.rs (см. стр. 84 вверху) вы видите раз­
личные варианты этих действий, в том числе ситуации, когда из­
за различных неправильных состояний, определяемых Rust, выда­
ются сообщения об ошибках. Как видите, cp.rs использует метод
fs::copy для создания копии файла.
Сопоставление шаблонов
Теперь можно перейти к сопоставлению шаблонов [pattern match­
ing] в Rust — это может пригодиться во многих ситуациях, и осо­
бенно когда вы хоти те обработать текстовые фай лы и изу чить
их содержимое. Сопоставление шаблонов в Rust указывается с по­
мощью ключевого слова ‘match’, которое вы могли заметить в ко­
де обработки ошибок. Выра жение match долж но накрывать все
возможные значения, поэтому очень распространено помещение
в конце ветви по умолчанию. Ветвь по умолчанию определяется
с помощью символа нижнего подчеркивания (‘_’), который означа­
ет «перехватить все значения». Однако в некоторых редких ситуа­
циях, например, при исследовании условия, которое может прини­
мать только значения true или false, ветвь по умолчанию не нужна.
В коде Rust ниже показано сопоставление шаблонов в Rust:
match an_age
{
0 => “слишком юны!!”,
­1 | ­2 => “в возрас те обмана!”,
1...18 => “всё еще очень юны!”,
18...25 => “в возрас те учебы!”,
ready_for_work @ 26...40 => “в рабочем возрас те!”,
_ if (an_age % 10 == 0) => “в новом десятилетии!”,
_ => “неведомого возрас та!”
}
Как видите, можно указывать диапазон с помощью многоточия
(‘...’) или нескольких значений в виде списка с помощью символа
‘|’. Кроме того, можно указать имя для диапазона: например, диа­
пазон 26–40 имеет имя ready_for_work. Сопоставление шаблонов
так же работает для кортежей и других типов переменных. При вы­
полнении предыду щего кода, сохраненного в файле reg_exp.rs,
мы получим следующий результат:
25: вы в возрас те учебы!
Однако помните, что диапазон чисел, которые
могут представлять usize и isize, способен изме­
няться, так как он зависит от платформы, на ко­
торой компилируется код; поэтому в программе
не основывайтесь ни на каких предположениях
об их размере.
26: вы в рабочем возрас те!
...
40: вы в рабочем возрас те!
41: вы неведомого возрас та!
...
50: вы в новом десятилетии!
Как видно по выводу, порядок размещения раз личных ус ло­
вий играет ключевую роль, потому что выполняется только первое
соответствие, как произошло для возраста 40. Если вам интерес­
ны регулярные выра жения, всё немного усложняется, потому что
тогда пона добится использовать нового зверя — regex. Регуляр­
ные выра жения и сопоставления шаблонов играют ключевую роль
в современных языках программирования, поэтому стоит попро­
бовать как можно больше примеров, чтобы вполне понять, как обе
эти концепции работают в Rust.
Работа с простыми текстовыми
файлами
В этом раз де ле мы нау чимся обраба тывать простые текстовые
файлы. Следующий код, который является частью файла match_
me.rs, иллюстрирует удобный способ итерации в текстовом фай­
ле строка за строкой:
let input_path = ::std::env::args().nth(1).unwrap();;
let mut file = BufReader::new(File::open(&input_path).unwrap());
for line in file.lines()
{
let myLine = line.unwrap();
println!(“{}”, myLine);
}
Следующий код на Rust показывает, как выбрать строки, со­
держащие за данную статическую строку, которая передается про­
грамме в виде аргумента командной строки:
if my_line.contains(&string_to_match)
{
println!(“Found it!”);
}
Скорая
помощь
Rust имеет при­
вычку создавать
массу сообщений
об ошибках и от­
казываться ком­
пилировать код
при на личии таких
сообщений. Это
не всегда плохо,
так как в коде Rust,
который скомпи­
лировался, с боль­
шой вероятностью
не будет глупых
ошибок! Девиз
Rust — «Если ваша
программа компи­
лируется, то скорее
всего не упа дет»;
не слишком
броский, но очень
да же мудрый.
> Это главная страница документации Rust, на которой можно найти полезные
руководства и ссылки. Однако ничто не заменит практику!
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
83
Rust
Скорая
помощь
Rust имеет кру­
тую кривую изу че­
ния. Однако про­
граммировать
на Rust удобнее
и на дежнее, и ме­
нее обременитель­
но. Способ работы
с переменными
Rust позволяет из­
бежать ошибок
со сбором мусора
и ошибок null [nil],
что улучшит каче­
ство вашего кода.
Этот код пока зывает, как иногда дру гой ме тод бывает про­
ще и эффек тивнее, чем сопоставление шаблонов. В данном слу­
чае функция contains() решает за дачу гораздо элегантнее, пыта­
ясь найти за данный текст в своих входных данных. Использование
регулярного выра жения или сопос тав ления шаблонов бы ло бы
ненужным усложнением.
Все строки, соответствующие переданному статическому тек­
сту, сохраняются в другом файле, который тоже указывается как
аргумент программы match_me.rs в командной строке. Полный код
Rust можно найти на LXFDVD.
В следующем выводе показано, как программа match_me.rs об­
рабатывает сама себя:
$ ./match_me
thread ‘<main>’ panicked at ‘Usage: name input output string’,
match_me.rs:13
$ ./match_me match_me.rs outputFile total_lines
Lines processed: 41
$ cat outputFile
let mut total_lines = 0;
total_lines = total_lines + 1;
println!(“Обработано строк: {}”, total_lines);
Ввод/вывод файлов через память
Спроецированный на память [memory­mapped] файловый ввод/
вывод — это особая технология, которая связывает файл на диске
с буфером в памяти. Она реа лизована так, что когда вы получаете
байты из буфера, на самом деле записываются или считываются
соответствующие байты файла. Один из вариантов использования
спроецированного на память файлового ввода/вывода — контей­
нер [crate, «ящик»] mmap.
Сле дующий код на Rust, взя тый из проек та memoryMapped
Cargo, иллюстрирует использование контейнера mmap:
let mmap_opts = &[
MapOption::MapNonStandardFlags(libc::MAP_SHARED),
MapOption::MapReadable,
MapOption::MapWritable,
> На рисунке — исходный код файла cp.rs, а также несколько
запусков его бинарника.
MapOption::MapFd(f.as_raw_fd()),
];
Контейнер libc — этот библиотека Rust для типов и привязок
для «родных» функций C. Контейнер libc не только под держива­
ет функции, но и содержит константы и определения типов. Его
основная за дача — позволить разработчикам Rust работать с ко­
дом C на всех платформах, под держиваемых Rust, предоставляя
прямую привязку к фак тическим сис темным функциям на теку­
щей платформе.
Более под робную информацию о контейнере libc мож но по­
лу чить на https://crates.io/crates/libc. Здесь вы найдете определе­
ние константы MAP_SHARED (определенной на странице https://
doc.rust­lang.org/libc/x86_64­unknown­linuxgnu/libc/constant.MAP_
SHARED.html), т. е.:
pub const MAP_SHARED: c_int = 0x0001
Блоки unsafe
> Здесь показан
simple.rs в действии, а также различные сообщения
об ошибках из-за
проблем с правами
на файлы в Unix.
Как показано (см. стр. 85 слева) на странице документации функ­
ции libc::chmod для платформы linux­gnu, тип c_char — это при­
вязка для типа char в C. Точно так же, тип c_int — это привязка
для типа int. При выполнении проек та memoryMapped создается
новый файл, и его имя передается в качестве аргумента команд­
ной строки:
$ cargo run newFile
$ ls ­l newFile
­rw­r­­r­­ 1 mtsouk mtsouk 262145 Apr 11 09:30 newFile
$ head ­1 newFile
Hello LXF from Mihalis Tsoukalos!
$ file newFile
newFile: ASCII text
Созданный файл получился гораздо больше включенного тек­
ста, это впечатляет! Полезный факт, касающийся доступа к спрое­
цированным на память файлам, состоит в том, что создаваемый
в программе буфер памяти на самом деле не занимает места в па­
мяти, поскольку напрямую связан с файлом на диске. Самое боль­
шое преимущество спроецированного на память файлового ввода/
» Пропустили номер? Узнайте на с. 108, как получить его прямо сейчас.
84
|
LXF212 Август 2016
www.linuxformat.ru/subscribe
Rust
вывода — увеличение производительности, особенно при работе
с большими файлами. Однако иногда за лучшую производитель­
ность приходится платить необходимостью писать дополнитель­
ные строки относительно сложного кода.
Последняя часть файла main.rs содержит следующий код, ко­
торый представляет собой блок unsafe и поэтому потребует неко­
торых пояснений:
unsafe
{
ptr::copy(src_data.as_ptr(), data, src_data.len());
}
Преж де всего, в этом коде показано, как использовать ключе­
вое слово unsafe и определить блок unsafe. Важно понимать, что
компилятор Rust не всегда может проверить безопасность ваше­
го кода, и ключевое слово unsafe [небезопасный] означает, что
вы велите компилятору не беспокоиться о коде: за него отвечаете
вы, разработчик!
Поэтому в блоках unsafe нельзя допускать такие ситуации, как
взаимные блокировки, переполнение целочисленных типов, деле­
ние на ноль и утечки памяти. Такие типы блоков кода должны ис­
пользоваться для дос тупа к статическим изменяемым перемен­
ным и их обновлению, разыменования указателей и, как в примере
выше, вызова небезопас ных функ ций. Небезопас ные функ ции
обычно жертвуют безопасностью ра ди скорости, но предполага­
ется, что программист точно знает, что делает.
Документация на модуль
Те перь мы по ка жем, как соз дать до ку мен та цию для про ек та
memoryMapped. Вам придется документировать сам код Rust, т. е.
чтобы добавить документацию для файла main.rs, и пона добится
отредак тировать сам файл main.rs.
Документация начинается с символов ‘///’ или ‘//!’ и использует­
ся утилитой командной строки rustdoc. Компилятор Rust игнориру­
ет эту информацию, поскольку всё, что начинается с символа ‘//’,
расценивает как комментарии. Информация, начинающаяся с сим­
волов ‘//!’, применима ко всему файлу кода, а информация, начи­
нающаяся с символов ‘///’, считается локальной.
> Это документация для функции libc::chmod контейнера libc,
который позволяет вызывать системные функции C на всех
платформах, поддерживаемых Rust.
> С помощью утилиты rustdoc или команды cargo doc можно создать HTML-документацию
для кода Rust, если в код добавлена необходимая информация.
Ес ли вы со бирае те про ект с по мо щью Cargo, то для соз да­
ния документации на до использовать не rustdoc, а команду cargo
doc. Выходные файлы созда дутся в подката логе ./target/doc ката­
лога проек та. Для проек та memoryMapped следует начать с фай­
ла ./target/doc/memoryMapped/index.html (он приведен на рисун­
ке вверху).
Существует четыре специальных заголовка. Заголовок example
[пример], который используется в файле main.rs, должен содер­
жать корректный код Rust. Другие заголовки — panics [паника],
safety [безопасность] и failures [сбои]. Чтобы включить код Rust
в заголовок example, нужно заключить его в тройные слэши. Если
нужно включить другой код, используйте следующее обозначение:
//! ```c
//! printf(«Это не код Rust!\n»);
//! ```
Важно сохранять связь с кодом, так как rustdoc не сможет про­
верить правильность кода и убедиться, что он коррек тен и не уста­
рел! В случае ошибок в формате документации появится сообще­
ние вроде этого:
src/main.rs:36:8: 36:32 error: expected one of `.`, `;`, `}`, or an
operator, found `/// Inline documentation`
src/main.rs:36 x * 2 /// Inline documentation
Сле дующий код доку мен та ции выве дет строку double_me()
другим шрифтом (как показано на рисунке вверху):
/// Это функция­заглушка с именем `double_me()`.
Под ход, который использует Rust, обычно довольно удобен,
поскольку доку мен тация соз дается ря дом с кодом. Од нако это
подразумевает, что вы любитель писать документацию! Rust соз­
дает локальную документацию для всех контейнеров, используе­
мых в проек те (что тоже можно увидеть на рисунке вверху).
Из этого раз де ла вы долж ны за помнить, что доку мен та ция
в коде Rust начинается с тройного слэша ('///'), двойного слэша ('//')
или восклицательного знака. |
Еще об указателях
В предыдущем учебнике [см. Академия кодинга,
стр. 78 LXF211] мы рассказа ли, что Rust под дер­
живает четыре типа указателей, которые можно
разбить на два вида: ссылки и чистые [raw] указа­
тели. Чистые указатели определяются как *const T
и *mut T; подробное руководство по ним см. на стра­
нице http://doc.rust­lang.org/std/primitive.pointer.html.
Разыменовывая чистый указатель, следует ис­
пользовать блок unsafe, поскольку нет гарантии, что
указатель указывает на безопасное место. Иначе
Rust выдаст такое сообщение об ошибке:
pointers.rs:6:34: 6:46 error: dereference of raw pointer
requires unsafe function or block [E0133]
[разыменование чистого указателя требует функ­
ции или блока unsafe]
Так же существуют изменяемые ссылки, позво­
ляющие модифицировать переменную, на которую
вы ссылаетесь. Следующий код показывает, как
включить добавочный блок из­за того, что another_
var нельзя использовать в области действия
yet_an_var:
let mut another_var = 15;
www.linuxformat.ru/subscribe
{
let yet_an_var = &mut another_var;
*yet_an_var += 1;
}
Пожа луйста, учтите, что для переменных
another_var и yet_an_var необходимо использовать
mut, поскольку значение another_var вы собирае­
тесь изменить.
Если вы хотите увидеть всё это в дейст­
вии, то файл pointers.rs содержит полный код
данного примера.
Август 2016 LXF212
|
85
Fuzz
Fuzz: Анализ
кода в динамике
Джонни Бидвелл объясняет, как принудительное вдувание вашей программе
пыли на вход поможет ее оздоровить.
Наш
эксперт
Джонни Бидвеллу
на доело отве­
чать на вопрос,
что такое fuzzing,
и он стал подни­
мать в ответ пла­
кат с зайчиком.
есмотря на название, отчасти взывающее к смутно­теп­
лым чувствам (по мере взросления, всё более и более ред­
ким) [fuzz — англ. пух, ворс либо пыль], прак тика fuzz­тес­
тирования на самом деле довольно бру тальна — по крайней мере,
с точки зрения программы, которую тестируют. Любая программа
принимает некие входные данные, будь то аргументы командной
строки, сведения из web­формы, входящие пакеты трафика, со­
бытия графического интерфейса и т. д. В идеальном слу чае все
эти данные правильно отформатированы и легко ана лизируются
Н
> American Fuzzy
Lop в действии. Менее активный кролик той же породы
прячется на заднем
плане, явно собираясь взломать вашу
программу.
86
|
LXF212 Август 2016
программой, которая обрабатывает их и, если всё хорошо, форми­
рует необходимый результат. Но иногда это не срабатывает — на­
пример, пакет или файл повреж дается или пользователь ошиба­
ется в количестве дефисов, и тогда программа выну ж дена иметь
дело с нештатными данными. Программы сталкиваются с таки­
ми ситуациями с давних времен, и общее решение состоит в том,
чтобы проверять любые вход ные данные перед их обработ кой
и выдать соответствующее сообщение, если данные непригодны.
Увы, человеческая природа такова, что люди быстро смекнули:
если предоставить неправильные, но особенным образом подго­
товленные входные данные, программа может начать вести себя
непредсказуемо и небезынтересно, позволив полу чить к ней до­
ступ и что­нибудь спереть. Очевидный пример — SQL­инъекция
[см. «Тайны хакеров», стр. 30 LXF208], в которой хитроумно раз­
мещенные кавычки и точки с запятой могут заставить PHP переда­
вать SQL­серверу произвольные запросы. Ска жем, обычное web­
приложение, призванное следить, например, за тем, какую музыку
предпочитают поль зова те ли, мож но заста вить ук расть список
поль зова те лей со сверт ка ми их па ро лей. В общем слу чае зло­
умышленник может использовать измененные входные данные
для создания ошибки отведения памяти и доступа к привилегиро­
ванным данным или их повреж дения.
Наивный (но притом и неоценимый) под ход к fuzz­тестирова­
нию — ак тивная бомбардировка программы (при ее запуске в тес­
товой среде) чисто случайными выходными данными и наблюде­
ние за любым некорректным поведением программы. К такому
поведению может относиться что угодно, от па дения программы
или сбоя памяти до более тонких проявлений, типа выдачи с ви­
ду допустимого вывода или перехода к какому­либо привилеги­
рованному участку кода. Но с ростом размера и сложности при­
ложений слу чайное fuzz­тес тирование становится прак тически
неэффек тивным: огромное количество сочетаний вводимых би­
тов, помноженное на количество точек их ввода, делает эту идею
неосуществимой. Поэтому необходим более разумный под ход. Со­
временные средства fuzz­тестирования могут целиться на конкрет­
ный сегмент кода, постепенно перебирая случайные входные дан­
ные, пока не попа дут в точку.
С помощью fuzz­тестирования можно проверить корректность
кода — например, проверить, что две версии программы, получив
одни и те же входные данные, ведут себя одинаково, и это поведе­
ние соответствует техза данию. Существуют программы fuzz­тести­
рования, основанные на му тациях (в этом случае тестовые данные
му тируют по итогам предыдущего теста) или на генерации вход­
ных данных (тес товые данные генерируются на основе моделей
входных данных программы). Популярная программа fuzz­тестиро­
вания — American Fuzzy Lop (открытая утилита от Google, назван­
ная в честь породы кроликов); для му тирования входных данных
она использует генетические алгоритмы. Доказательство ее мо­
щи приве дено в блоге разработ чика, Ми ха ла За левски [Michał
Zalewski] (см. http://bit.ly/JPEGsOutOfTheAir).
www.linuxformat.ru/subscribe
Fuzz
Советы по fuzz-тестированию
1 Определите свои цели
Снача ла надо решить, будете ли вы искать только уязвимости безо­
пасности или проверять корректность кода целиком. При fuzz­тес­
тировании обнару живается масса не слишком серьезных уязвимо­
стей, с которыми при штатном использовании программа может
вообще никогда не столкнуться. Они могут выглядеть точно так же,
как уязвимости безопасности, и единственная разница в том, что
граница доверия в этом случае не нарушается: т. е. тестируя про­
грамму, которая будет полу чать входные данные от доверенной
программы, вы можете наблюдать множество «па дений», которые
никогда не возникнут при нормальном использовании.
Мож но ли подать ис ка женные данные на вход дру гим спо­
собом? Если да, вы обнару жили уязвимость безопасности, если
нет — низкоприоритетную ошибку, которую, быть может, никогда
не потрудятся исправить. Намерен ли проект обращать внимание
на все обнару женные проблемы или только на уязвимости безо­
пасности? Вы можете сэкономить массу времени и избежать мас­
сы огорчений, за давшись ожиданиями для динамического ана ли­
за с самого нача ла.
2 Осознайте границы доверия
Поймите (и за документируйте), где должна быть встроена провер­
ка ошибок. Для экспертов по безопасности вроде меня легко соз­
дать вообра жаемую модель на деж ной безопасности, в которой
ка ж дая функция постоянно проверяет свои входные данные. К со­
жа лению для нас, реальный мир намного слож нее. Такой вари­
ант чрезмерной бдительности требует больших затрат и поэтому
никогда не реа лизуется на прак тике. Чтобы построить настоящую
модель проек та, потребуется потрудиться чуть больше. Нужно по­
нять, где в ходе выполнения программы проверки выполнять обя­
зательно, а где их можно опустить.
3 Сегментируйте по интерфейсу
Различные программы для fuzz­тестирования имеют разную спе­
циа лизацию. Разбейте свой проект на части, под ходящие для раз­
личных типов таких программ, на основе ин терфейса — файл,
сеть и API.
4 Исследуйте готовые инструменты
Для fuzz­тестирования постоянно разрабатываются новые инстру­
менты, а старые инструменты получают новые функции. Окиньте
свежим взглядом самые популярные утилиты и посмотрите, по­
дойдут ли они хотя бы для какой­либо части вашего проек та. Дэ­
вид Берд [David Bird] недавно добавил в свою версию American
Fuzzy Lop (https://github.com/jdbirdwell/afl) fuzz­тестирование по се­
ти, под роб нее о ко то ром мож но про честь на стра ни це https://
blog.fuzzing­project.org/27­Network­fuzzing­with­american­fuzzy­
..
lop.html. Ханно Бёк [Hanno Bo ck] написал полезные руководства
по исполь зованию некоторых распространенных инст ру мен тов
для fuzz­тестирования в проек те The Fuzzing Project (https://fuzzing­
project.org/tutorials.html).
5 Напишите свои инструменты
Когда передо мной встал вопрос «как выполнить динамический
ана лиз для огромного проек та на нескольких языках, для которого
готовые инструменты не годятся», я обратилась к Дэвиду А. Уилеру
[David A. Wheeler], чтобы посмотреть, как он решил бы эту пробле­
му. Док тор Уилер рекомендует попробовать «написать програм­
му fuzz­тестирования в соответствии с API проек та и создать слу­
чайные входные данные на их основе, затем добавить множество
ут верждений, которые как минимум будут включены во время
fuzz­тестирования. Если вы знаете свой API (или можете его вос­
становить), создать специа лизированный инструмент для fuzz­тес­
тирования довольно легко — возьмите свой генератор случайных
чисел, настройте изолированный контейнер или виртуальную ма­
шину порезвиться, и вперед».
Наш
эксперт
Эмили Рэтлифф —
генеральный
дирек тор по ин­
фраструктуре
безопасности
фонда Core
Infrastructure
Initiative в Linux
Foundation.
6 Есть ли польза от fuzz-тестирования?
Общий упрек в сторону инструментов для fuzz­тестирования состо­
ит в том, что проработав какое­то время, они перестают на ходить
ошибки. Это хорошо! Точно так же, как вы не выбрасываете в му­
сорку набор тестов для автоматизированного тестирования пото­
му, что он на ходит так ма ло регрессий, вы не должны по этой же
причине отка зываться от fuzz­тес тирования. Ес ли ваши инстру­
менты больше не на ходят ошибок, поздравляю! Есть что отпразд­
новать! И перейти к поиску ошибок посложнее.
7 Кажется, придется попотеть
Вы, небось, думаете: «Вы всерьез вообразили, что я буду всё это
делать? Лучше дайте мне название хорошей программы!» Можете
попробовать American Fuzzy Lop. Делать всё это не обязательно,
по крайней мере не всё сразу. Если вы нашли инструмент, который
покрывает хотя бы часть вашего проек та, можете начать работать
с ним. В итоге вы узнаете, хотят ли разработчики проек та (или вы)
исправлять низкоприоритетные ошибки и где на ходятся границы
доверия проек та.
Вы можете обнару жить па дение программы, создать заплат­
ку и отправить ее в проект только затем, чтобы узнать, что ее от­
клонили, поскольку неверные входные данные, сформированные
программой fuzz­тестирования, никогда в эту программу не попа­
дут, и добавлять вашу проверку слишком затратно. Какой бы под­
ход вы ни выбра ли, поба луйте своих последователей и запишите
его. Он устареет, но его будет забавно читать, и он поможет тем, кто
придет после вас. Последнее напоминание: если вы тестируете чу­
жой проект и подозреваете, что обнару жили уязвимость безопас­
ности, обязательно известите об этом! |
Статический и динамический анализ
Автоматизированный ана лиз программ можно раз­
делить на две ветви: статический и динамический.
Первый включает осмотр кода на месте, второй —
запуск кода (физически или виртуально). Первый
может выявить возможные уязвимости с помощью
формальных методов — включающих интенсивное
исследование, например, логики, лежащей в основе
программы, и потока данных. Одной из первых
программ, которые реша ли такие за дачи для C,
была Lint, и термин ‘linting’ до сих пор используется
для описания процесса поиска подозрительных или
лишних фрагментов кода.
Динамический ана лиз программ полезен только
для фрагментов кода, выполняемых во время
www.linuxformat.ru/subscribe
тес тирования. Следовательно, чрезвычайно
важно иметь хороший набор тес товых входных
данных, и для любого динамического ана лиза
жизненно важны инструменты покрытия (которые
регистрируют, какие функции и ветви запуска­
ются в данном тес те), обеспечивающие полноту
этого покрытия.
Август 2016 LXF212
|
87
Пользователям
Pi
Ваша порция смачных новостей, обзоров и учебников от Raspberry Pi
Д-Р СЭМ ААРОН
архитек тор ПО
и создатель
Sonic Pi
Привет...
П
ривет, я Сэм Аарон, и я соз­
дал новый музыкальный
инструмент под названием
Sonic Pi. В отличие от тра диционно­
го инструмента, где на до перебирать
струны или ударять по чему­нибудь
па лочками вживую, здесь на до пи­
сать код — мы называем это живым
кодированием. Sonic Pi полностью
бесплатен и открыт, и по умолчанию
установлен в дистрибу тиве Raspbi­
an на Raspberry Pi, а так же доступен
для Debian, Ubuntu и других. Проек­
тируя Sonic Pi, я стремился к ба лан­
су трех ключевых принципов: про­
стота, чтобы с ним справился да же
10­летний ребенок; увлекательность,
чтобы, играя, вы могли забыть обо
всем; и достаточная мощь, чтобы
справляться с вашим кодом. Про­
занимавшись живым кодировани­
ем на Sonic Pi ка ж дый день в тече­
ние года, я могу выступать со своим
Pi в ночных клубах и концертных за­
лах. И больше всего меня ра дует то,
что раз смог я — сможете и вы! Ра­
зобраться в Sonic Pi — проще про­
стого, в него встроено подробнейшее
руководство, и вы мгновенно освои­
те живое кодирование. Нужна толь­
ко прак тика, как с любым инстру­
ментом. Sonic Pi настолько прост, что
уже широко применяется в школах
для обучения основам программиро­
вания. Оказывается, куда интереснее
изучать списки и итерации, если это
нужно для того, чтобы создать кру­
тые басы. Я часто провожу школьные
мастер­классы по Sonic Pi, и ка ж дый
раз пора жаюсь, каких результатов
дети добиваются всего за пару часов.
Чтобы узнать больше, зайдите
на http://sonicpi.net и слушайте мои
DJ­сессии по четвергам в 10 вечера
на http://livecoding.tv/samaaron.
Bluetooth Raspbian
созрел
Владельцам Pi 3 уже не надо добавлять
доступ к Bluetooth самим.
R
aspberry Pi Foundation проводит классную ра­
боту по обновлению и под держке Pi­дистри­
бу тива Raspbian c самого его выхода в 2012 г.
Но да же после скачка в 2016 г. — выпуска Raspberry
Pi 3 — дистрибу тив еще не под держивал Bluetooth.
В LXF210 [см. стр. 95] мы показа ли, как самим до­
бавить функциональность Bluetooth, но с 16 мая
2016 г. Raspbian будет под держивать Bluetooth из ко­
робки. Клавиатуры и мыши будут переподключать­
ся при перезагрузке, плюс появится под держка аудио
по Bluetooth. Есть кое­какие проблемы с под держкой
аудио в Scratch и Sonic Pi, но, будем на деяться, это
тоже разрешится. Так же внутри — ядро 4.4, утилита
для копирования SD­карт, улучшенные харак теристи­
ки ввода и прочее. http://bit.ly/RaspbianUpdate
> Дождались: полноценная поддержка Bluetooth
со звуком — почти всегда.
VNC Pi
Pi в США
Отдалите свой Minecraft.
Picademy намеревается
покорить Америку.
V
P
NC — классическое решение для уда ленно­
го рабочего стола с открытым кодом, и у не­
го, наконец, появилась версия для Pi на базе
ARM и вышел альфа­релиз. Проблема, которую надо
было преодолеть этому первому релизу, это под держ­
ка визуа лизации оверлеев, например, в Minecraft или
инструменте камеры. Прекрасное пополнение инстру­
ментария Raspberry Pi. http://bit.ly/VNCForPi
> Следим за Pi через Windows.
88
|
LXF212 Август 2016
www.linuxformat.ru/subscribe
i Foundation ждет мировое господство! Хоро­
шее проявление тому — их экспансия в Аме­
риках — мощнейшее продвижение RISK и рас­
пространение курсов Picademy для учителей в США.
Этот двух дневный курс не требует никакой ИТ­под­
готовки и предоставляет все необходимое. Так что
расска жите своим американским друзьям. http://bit.ly/
PicademyUSA
> Теперь и американским читателям
достанется своя
порция британского
Raspberry Pi.
Жесткий диск Обзор
WD PiDrive
В погоне за идеальной комплектацией для Raspberry Pi, Лес Паундер ищет
максимальный объем памяти для своих котофоточек — подойдет ли PiDrive?
Вкратце
» Специальный
жесткий диск
для Raspberry Pi,
обещает большой объем памяти при достойной
производительности. При использовании
с BerryBoot,
это гибкое устройство для
мультизагрузки
множества ОС.
R
aspberry Pi с нами уже четыре года.
Ко гда­то ос нов ным уст рой ст вом
хра не ния в нем бы ла скром ная
карта MicroSD, а ныне Western Digital, про­
изводитель жестких дисков, создал PiDrive.
Это обычный 2,5­дюймо вый же ст кий
диск для ноутбука, но стандартное подклю­
чение SATA за менено на встро енный ин­
терфейс USB. Кроме того, диск настроен
на экономичное энергопотребление, столь
нужное при работе с Pi. Мы использова ли
дополнительный набор кабелей к PiDrive,
в который входит источник питания на 2 А
и специальный кабель, подсоединяющий
диск к портам USB на Pi, для приема и пере­
дачи питания от источника питания к при­
воду и Raspberry Pi одновременно. Физиче­
ски диск больше, чем Pi, потому прикру тить
накопитель к Raspberry Pi через монтажные
отверстия не получится.
Мы протестирова ли PiDrive с Raspberry
Pi 3 на последней версии Raspbian и тут же
замети ли не на ви ст ный цвет ной квад рат
в правом верхнем углу экрана, показываю­
щий, что Pi не хватает мощности. Но вместе
Pi и диск работа ли хорошо, и мы смогли ис­
пользовать его почти как типичный флэш­
на ко пи тель. При том, что это ме ха ниче­
ский диск, и интерфейс у него USB 2.0, Pi
действительно справлялся неплохо, и ско­
рости диска хвата ло для всех задач, вклю­
чая прямую загрузку большого ISO­файла.
Мы решили протестировать диск на ско­
рость; для этого как нельзя лучше подойдет
тест BerryBoot. Это приложение, которое за­
писывается на SD­карту и может скачивать
и настраивать различные ОС для создания
Свойства навскидку
Встроенный
USB-интерфейс
Служит как для питания
от внешнего источника 2 А,
так и для передачи данных
на Pi по USB.
BerryBoot
Мультизагрузкой пользо­
вателей Linux не удивишь,
но для Pi — это прекрас­
ный способ создать гибкую
платформу.
> Что-то знакомое? Ну да, это переделанный 2,5-дюймовый диск.
устройства с многовариантной загрузкой.
Очень на поминает сис те му ин стал ляции
NOOBS, которая используется в Raspberry
Pi Foundation.
Полна коробочка
Western Digital пред ста ви ли для ра бо ты
с PiDrive специальную версию BerryBoot.
Чтобы ус тановить BerryBoot, на до просто
из влечь за гру жен ные фай лы на пус тую
карту SD. Подсоединив PiDrive и микроSD­
карту BerryBoot к на шему Raspberry Pi 3,
мы уви де ли про стой гра фиче ский ин ст­
ру мент конфигу рации, по зволяющий на­
строить монитор, подключение к Интернету
и звук. По завершении настройки вы мо­
жете вос поль зоваться ре дак тором меню
для выбора ОС для установки на PiDrive.
ОС дос тупны са мые разные, от стан­
дарт но го Raspbian до Android (Kit Kat)
до спец ди ст ри бу ти ва Kali Linux для тес­
тирования сис тем на проник новение. Ес­
те ст венно, для на шего тес та мы ре ши ли
установить Raspbian — как ОС по умолча­
нию, чтобы она запуска лась при ка ж дой за­
грузке с диска. Мы перезагрузились и за­
пус ти ли Raspbian; весь процесс в це лом,
от меню выбора BerryBoot до готового ра­
бочего стола, занял 20,92 секунд,. Это все­
го на несколько секунд мед леннее, чем за­
грузка прямо с SD­карты, которая требует
примерно 18 секунд. По ощу щениям, ис­
пользование Raspbian через PiDrive ничем
www.linuxformat.ru/subscribe
не отличается от использования на SD­кар­
те. Разница лишь в том, что здесь в нашем
распоряжении 314 ГБ хранилища. Мы пере­
загрузили Pi и протестирова ли через BerryBoot Android Kit Kat, для создания системы
с двойной загрузкой. Теперь во время за­
грузки мы можем выбрать любую ОС; в про­
тивном слу чае, загрузится ОС по умолча­
нию, в нашем случае, Raspbian.
PiDrive — штука умная, и для правиль­
ного пользователя и правильного проекта
будет превосходным приобретением; беда
в том, что объем флэш­памяти USB посто­
янно растет, а цена па дает, так что причин
его купить становится все меньше. |
Вердикт
Western Digital PiDrive
Разработчик: Western Digital
Сайт: http://bit.ly/WDPiDrive314GB
Цена: Ј 27
Функциональность
Производительность
Удобство в работе
Оправданность цены
7/10
7/10
8/10
7/10
» Хороший продукт; к нему стоит
серьезно присмотреться, если
вам нужен в проектах энерго­
сберегающий жесткий диск.
Рейтинг 7/10
Август 2016 LXF212
|
89
Raspberry Pi Explorer HAT Pro
Explorer HAT Pro:
Начинаем
Лес Паундер представляет Explorer HAT Pro и рассказывает, как проводить
забавные и впечатляющие эксперименты.
П
Наш
эксперт
Лес Паундер —
умелец, он ве­
дет учебные
курсы Picademy
в Raspberry Pi
Foundation. В его
блоге http://
bigl.es можно
найти много ин­
тересного для
самоделкиных.
СОВМЕСТИМО
СО ВСЕМИ
Pi
ервые шаги в ра диолюбительстве — штука веселая, хо­
тя и страшноватая. У вас есть все эти компоненты, кото­
рые что­то там делают, но с чего начать? Ну, почему бы
не с Explorer HAT Pro? Эта плат форма для экс перимен тов, ко­
торая пре дос тав ляет удобный ин тер фейс для вхо дов/вы ходов
общего на значения (GPIO). К HAT [Hardware Attached on Top —
оборудование­приставка] можно подключать датчики, двигатели
и емкостные сенсорные устройства ввода, создавая самые разно­
образные проек ты. На нашем уроке мы расска жем о нескольких
вещах, которые можно сделать с помощью нескольких элек трон­
ных компонентов.
Для этого проек та вам пона добятся любая Raspberry Pi (B+,
Zero, 2 или 3) с 40 контак тами ввода/вывода, дистрибу тив Raspbian,
интернет­соединение, два провода с контак тами «папа – папа», зум­
мер, за жим­«крокодил» и какой­нибудь проводящий фрукт, напри­
мер, банан. Полностью код этого руководства доступен по ссылке
https://github.com/lesp/LXF212­ExplorerAdventures.
Для подключения Explorer HAT Pro к Raspberry Pi дос таточно
всего лишь поместить его поверх всех 40 контак тов GPIO.
Затем подключите «крокодил» к золотому разъему на Входе 8,
а другой конец разъема — к чему­нибудь, что проводит элек три­
чество; например, готовый фрукт для нашей за дачи — банан. Под­
ключите зуммер к плате Explorer HAT, соблюдая полярность зум­
мера. Ножки зуммера должны на ходиться в разных рядах платы.
Подключите один конец провода «папа – папа» к контак ту 5 В платы
Explorer HAT Pro, а другой — к контак ту «плюс» зуммера. К другой
ножке зуммера подключите другой провод от Выхода 1. Да лее в ко­
де мы будем управлять Выходом 1, что позволит выдавать с помо­
щью зуммера звуковые сигна лы.
Настройка HAT
Скорая
помощь
Explorer HAT Pro
имеет массу вели­
колепных функ­
ций, включая два
контроллера дви­
гателей, кото­
рые образуют H­
мост. Они могут
изменять поляр­
ность и позволя­
ют точно управлять
роботом в любых
направлениях.
90
|
Установка программного обеспечения для Explorer HAT Pro относи­
тельно проста благодаря скрипту установки. Для вызова скрипта
откройте терминал и наберите
$ curl ­sS get.pimoroni.com/explorerhat | bash
Эта коман да за даст серию вопро сов, касаю щихся ус та нов­
ки библиотек и под держиваемых конфигу раций. Ответьте «Да»
на пред ложение полной установки программы. Стоит перезагру­
зить Pi и затем открыть приложение Python 3, на ходящееся в раз­
деле Программирование [Programming] главного меню. Вы долж­
ны уви деть обо лоч ку — ин тер фейс, в ко то ром мож но бы ст ро
проверять идеи и логику. Обычно мы не пользуемся оболочкой,
но для этого проек та просто проверим HAT, преж де чем продол­
жать. Снача ла на до импортировать модуль Python для ExplorerHAT,
который позволит нам работать с платой, следующей командой:
import explorerhat .
Эта коман да возвра тит Explorer HAT Pro Detected. Ес ли это­
го не произошло, выключите Raspberry Pi, убедитесь, что плата
LXF212 Август 2016
> Наша цепь для зуммера довольно проста. Достаточно подключить 5 В к плюсу зуммера, а короткий контакт зуммера соединить
с Выходом 1.
установлена правильно, и переустановите программное обеспече­
ние. Для нача ла давайте включим все четыре светодиода. Для это­
го перейдите в оболочку и наберите explorerhat.light.on(). Вы долж­
ны увидеть, как загораются все четыре светодиода Explorer HAT
Pro. Чтобы выключить их, наберите explorerhat.light.off().
Закончив нашу проверку, присту пим к написанию кода про­
ек та. В оболочке выберите File > New [Файл > Создать], чтобы от­
крыть новое окно. Перед написанием кода быстро сохраним файл,
выбрав File > Save [Файл > Сохранить] и указав имя файла explorerinput.py. Благодаря этому последующие сохранения будут происхо­
дить быстрее. Первые несколько строк представляют собой набор
модулей, которые мы импортируем для дос тупа к дополнитель­
ным функциям:
import explorerhat
from time import sleep
from random import randint
Мы импортируем модуль explorerhat для работы с платой, за­
тем функцию sleep из модуля time и функцию randint, сокращение
от “random integer” (случайное целое) из модуля random.
Затем созда дим две функции, ка ж дая из которых будет реа­
гировать на ввод поль зова те ля и выполнять соот ветст вующие
действия:
def alarm(channel, event):
Первая функция именуется alarm и имеет два аргумента, т. е.
значения, которые передаются во время вызова функции. Эти ар­
гументы называются channel и event. Аргумент channel — номер
сработавшего входа, а event содержит информа цию о том, как
именно он сработал, например, длинное или короткое на жатие.
Код этой функции начинается с создания переменной с име­
нем duration:
www.linuxformat.ru/subscribe
Explorer HAT Pro Raspberry Pi
Семейство Explorer HAT Pro
Для нашего урока мы выбра ли самую дорогую
модель Pro, но описанные нами функции есть
и в базовой версии Explorer HAT. Для снижения
стоимости в базовой модели нет контроллеров
двигателей, ана логовых входов и незащищенных
выводов от GPIO.
Другая приставка в этом диапазоне — Explorer
pHAT [см. «Пользователям Pi», стр. 89, LXF208].
Explorer pHAT имеет ана логовые входы и контрол­
лер двигателя, но не имеет платы, так как должна
размещаться на Pi Zero. При этом ее можно исполь­
зовать с любой 40­контактной моделью Pi. Чтобы
сэкономить пространство и стоимость, в Explorer
pHAT нет емкостных входов или разъемов для
«крокодилов», поэтому для нашего проек та она
не подойдет. В ней нет и светодиодов, но их можно
подключить, к четырем выходам.
Во всех версиях Explorer HAT есть буферизо­
ванные входы 5 В, к которым удобно подключить
датчики (например, ультразвуковые), которые
лучше всего работают с логикой 5 В. Выходы ка ж­
дой HAT могут выдавать ток до 500 мА — это до­
вольно много, учитывая, что от такого тока можно
запитать Pi Zero.
duration = randint(1,10)
print(duration)
Эта продолжительность выра жается случайно выбранным це­
лым числом от 1 до 10. Затем мы выводим выбранное число в обо­
лочку, это удобно при отладке проек та. Следующие две строки
функции обрабатывают мигание двух встроенных светодиодов,
красного и синего:
explorerhat.light.red.blink(0.1,0.1)
explorerhat.light.blue.blink(0.2,0.2)
Создание функций
Модуль Explorer HAT имеет функцию для реа лизации мигания све­
тодиодов. Эта функция называется blink и принимает два аргумен­
та: время, в течение которого светодиод горит, и время, в течение
которого светодиод не горит. В этом проек те красный светодиод
мигает чаще синего. Следующая строка этой функции управляет
зуммером, подключенным к выходу 1:
explorerhat.output.one.pulse(0.30,0.30,0.10,0.10)
Мы используем функцию pulse для создания звука оповеще­
ния. Эту функцию можно использовать с другими светодиодами
и устройствами вывода. В данном случае мы созда дим модулиро­
ванный звук. Функция pulse принимает четыре аргумента: время
перехода к включенному состоянию, время выхода из включенно­
го состояния, время включенного состояния и время выключенно­
го состояния. Это позволяет создавать зату хание и нарастание зву­
ка, а так же управлять продолжительностью сигна ла.
За тем мы ис поль зу ем слу чай ное це лое чис ло duration для
управления скоростью выполнения кода:
sleep(duration)
explorerhat.light.off()
explorerhat.output.one.off()
Указав это число в качестве аргумента функции sleep, мы мо­
жем приостановить выполнение кода на случайное время. Это по­
зволяет управлять тем, как долго зуммер и светодиоды будут ра­
ботать, преж де чем мы не выключим их с помощью кода. На этом
функция заканчивается.
Наша вторая функция — световая последовательность, управ­
ляемая с помощью цик ла for:
def lightsequence(channel, event):
Опять же, мы да ем функ ции имя и два ар гу мен та, channel
и event, как и для первой функции. Теперь созда дим цикл for в на­
шей функции с помощью конструкции for i in range(4).
Этот цикл выполнит код, оформленный отступами внутри цик­
ла, четыре раза. Для этого мы используем диапазон, в котором зна­
чение i увеличивается в ка ж дой итерации цик ла.
В следующих строках кода используется функция blink для све­
тодиодов ка ж дого цвета, т. е. синего, желтого, красного и зеленого:
explorerhat.light.blue.blink(0.1,0.1)
sleep(1)
explorerhat.light.yellow.blink(0.1,0.1)
sleep(1)
explorerhat.light.red.blink(0.1,0.1)
sleep(1)
explorerhat.light.green.blink(0.1,0.1)
sleep(1)
explorerhat.light.off()
Ка ж дый светодиод включается и выключается на одну десятую
секунды, поэтому ка ж дая итерация цик ла проходит быстро. Меж­
ду ка ж дыми двумя миганиями светодиода мы приостанавливаем
выполнение кода на одну секунду (sleep(1)), чтобы пользователь
смог увидеть происходящее. В конце ка ж дой итерации мы отклю­
чаем все светодиоды и затем повторяем все снова. На этом функ­
ция заканчивается.
В двух последних строках кода мы определяем касание пользо­
вателя и вызываем соответствующую функцию:
explorerhat.touch.eight.pressed(alarm)
explorerhat.touch.one.pressed(lightsequence)
Когда пользователь касается объек та, присоединенного к за­
жиму­«крокодилу» на Входе 8, вызывается функция alarm, а когда
пользователь касается кнопки 1 Explorer HAT Pro, вызывается код
функции lightsequence.
Сохранив свою работу, выберите из меню Run > Run Module [За­
пуск > Запустить модуль] для запуска проек та. На жмите на фрукт,
присое диненный к «крокоди лу», чтобы включить оповещение,
а когда оно закончится, на жмите на кнопку 1 для запуска свето­
вой последовательности. Отлично, вы созда ли свой первый про­
ект HAT. |
> Зажимы-«крокодилы» позволяют быстро и надежно соединить проводящие материалы.
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
91
Raspberry Pi Docker
Hypriot OS:
Docker на Pi
Джонни Бидвелл признает, что запуск PHP может быть приемлемым,
если он изолирован в контейнере, основанном на Raspberry Pi.
ocker стал повсеместным. Всё труднее бывать в Интернете
и не натыкаться на упоминания о нем и о том, как он из­
меняет мир. Но для простых смертных получение чего­то
большего, чем базовое описание, что он собой представляет и что
делает, может оказаться нелегкой за дачей.
Вкратце Docker объяснить дос таточно просто: он за действу­
ет существующие технологии Linux (LXC, cgroups, области имен,
продвину тые файловые системы и всякое вуду) для создания кон­
тейнеров, где приложения разворачиваются изолированно. Корни
кон тейнериза ции идут из FreeBSD и chroots в Linux, но обра зы
Docker куда на дежнее: доступ к ресурсам компьютера хоста управ­
ляем; у контейнера отдельное дерево процессов и свои собствен­
ные виртуальные сетевые интерфейсы; и, если только это не озна­
чено в явном виде, у контейнера нет доступа к файловой системе
хоста. В результате люди могут поставлять свои приложения в кон­
тейнерах, легко переносимых в другие среды и да же другие ОС.
Но чтобы действительно ра зобраться в Docker, нуж но более
полное объяснение. Чтобы хранить контейнеры Docker, на компь­
ютере должен работать Docker Engine — демон, обеспечивающий
время выполнения программы, позволяя клиенту Docker создать
и запус тить контейнеры Docker, а так же дать этим контейнерам
взаимодействовать с хостом, другими контейнерами в нем и внеш­
ним миром. Контейнер Docker содержит полную установку Linux —
обычно это голый минимум для запуска всего того, что де лает
контейнер. Как и chroot или ВМ OpenVZ, образ контейнера исполь­
зует яд ро хос та для обслу живания низкоуровневых сис темных
вызовов. Однако, в отличие от chroot или ВМ, контейнеры Docker
по умолчанию эфемерны: изменения в файловой системе контей­
нера не сохранятся, ес ли его выключить или перезагрузить. Это
D
Наш
эксперт
Джонни Бидвелл
хочет поместить
linuxformat.com
в контейнер.
И закопать.
СОВМЕСТИМО
СО ВСЕМИ
Pi
> Клиент Docker может сделать для вас ужас сколько всего: сгонять за образами,
известить о работающих контейнерах и создать вывод в формате JSON.
92
|
LXF212 Август 2016
очень полезно, если вы хотите создать действительно воспроиз­
водимую среду, но не так уж ра дует, если полезные файлы внут­
ри контейнера обновляются в процессе его работы и вы забываете
скачать их до окончания работы. Или если вы хотите подправить
настройку контейнера во время его работы. На самом деле, не су­
ществует способа прямого дос ту па из хос та в файловую сис те­
му контейнера (независимо от того, работает он или нет). Однако
на самом деле, Docker и не ждет, чтобы вы дела ли всё именно так,
так что не волнуйтесь. Если вы хотите, чтобы файлы сохранялись
после выключения контейнера, есть несколько решений для этого,
которые мы рассмотрим позже.
Docker — это ПО с открытым кодом, но только для оборудова­
ния x86_64. 32­битная версия доступна, но никак не под держива­
ется. Но мы­то хотим запустить Docker на Raspberry Pi, а это 32­бит­
ная ARM­машина; как же нам быть? До недавнего времени ответ
был «никак», но сейчас, благодаря команде разработчиков Hypri­
ot, у нас все получится. HypriotOS — тщательно подрезанная Rasp­
bian Jessie со всеми предустановленными мелочами Docker и го­
товая к работе. Команда описывает ее как «Иг ровую площад ку
Docker для Raspberry Pi». Размещать какие­либо серьезные сер­
висы у вас не получится, но зато это прекрасный шанс поэкспери­
ментировать с технологией чуть более ощу тимым образом, чем
это позволяет ВМ.
Работа с образами Docker
Вы найдете самые разнообразные образы Docker на Docker Hub,
и их можно установить напрямую с помощью docker pull. Они варь­
ируются от общецелевых дистрибу тивов (очень популярен Alpine
Linux, благодаря своему минима лизму) до простых установок го­
товых приложений. Контейнеры особенно удобны для таких ве­
щей, как WordPress (вы найдете официальный образ на https://
hub.docker.com/_/wordpress), которые бывают довольно каприз­
ны в настройке. Очень легко взять образ и учинить индивидуаль­
ную настройку поверх него, как мы и поступим чуть позже. Желая
создать свой собственный образ OwnCloud, например, вы можете
начать с базового образа, например, сервера Ubuntu, затем доба­
вить еще один уровень, ска жем, Apache и PHP, затем, возможно,
немного навести порядок в системе, затем установить WordPress,
еще ма лость поднастроить Apache и PHP, а затем, может быть, еще
разок навести порядок. Наконец, чтобы этот контейнер на самом
деле смог что­то сделать, на до будет запус тить процесс Apache.
Формально этот процесс управляется Dockerfile — скриптом, со­
держащим всю информацию, необходимую демону Docker для
создания образа.
Команда docker pull скачает образы прямо из Docker Hub. В по­
рядке альтернативы — docker run скачает образ и его запустит. На­
пример, можно запустить миниатюрный web­сервер с помощью
$ docker run ­d ­p 80:80 hypriot/rpi­busybox­httpd
www.linuxformat.ru/subscribe
Docker Raspberry Pi
Установка HypriotOS
Вашей первоочередной за дачей будет скачивание
последней версии HypriotOS с http://blog.hypriot.
com/downloads или с https://github.com/hypriot/
image­builder­rpi/releases. Предположим, она на хо­
дится в вашей папке ~/Downloads. Этот образ заар­
хивирован, так что вторая за дача — распаковать
его, убедившись, что у вас есть необходимые 1,5 ГБ
свободного места:
$ cd ~/Downloads
$ unzip sd­card­rpi­v0.8.0.img.zip
Этот образ Hypriot теперь готов к переносу
на подручную SD­ карту с помощью dd ­ed. В на­
шем слу чае мы вызываем SD­устройство /dev/sdX,
и для выяснения, где смонтирована карта на вашей
машине, вставьте ее и введите lsblk, чтобы увидеть
список блочных устройств и связанных с ними
узлов. Добыв эту информацию, перенесите образ,
примерно так:
$ sudo dd if=sd­card­rpi­v0.8.0.img of=/dev/sdX
bs=1M
После этого ваша SD­карта будет готова к ра­
боте. В ином слу чае, обратитесь к собственному
флеш­инструменту от Hypriot, который так же дает
возможность изменять имя хоста и параметры
Wi­Fi. Инструмент на ходится на https://github.com/
hypriot/flash.
Первый запуск HypriotOS продлится несколько
дольше, чем обычно, поскольку она будет изменять
размер своей файловой системы, чтобы заполнить
всё имеющееся пространство. Мы не будем расска­
зывать здесь о беспроводной сети, но если вы под­
ключите кабель Ethernet, ваш Raspberry Pi сам
Образ Hypriot Docker скачается, скомпилируется и запустится.
Параметр ­d велит Docker запустить образ в фоновом режиме (обо­
собленно), а ­p 80:80 привяжет порт 80 на хосте к порту 80 на кон­
тейнере, сделав его доступным для внешнего мира или, по край­
ней мере, для вашей LAN.
Запуск docker ps пока жет все запущенные контейнеры — на­
деемся, там будет наш образ Busybox. Работающие контейнеры
определяются именем — длинной шестна дцатеричной строкой,
но можно обходиться всего лишь несколькими начальными сим­
волами (если только нет другого контейнера, чье имя начинается
с тех же символов). Так же можно явно указать имя для своего кон­
тейнера с помощью ­­name в команде выше; если этого не сделать,
ему присвоится случайное (возможно, забавное) имя. Помимо ло­
кальной проверки, мы можем увидеть, делает ли контейнер то, что
ему полагается, введя IP­адрес Raspberry Pi в браузер, работающий
где­то в другом месте сети. Это должно показать вам страницу, где
будут красоваться Ма линка, логотип Docker и Веселый Род жер.
Запустите свой Docker
Контейнер можно остановить с помощью $ docker stop <id или имя
контейнера>, где последняя часть получена из команды docker ps.
Неплохо будет уда лять уже не нуж ные кон тейнеры с помощью
$ docker rm <id или имя контейнера>.
Те перь мы можем при сту пить к ра бо те с на шим Dockerfile.
Мы возьмем за ос но ву resin/rpi-raspbian (минимальный образ
Raspbian), обновим репо зи тории и ус та новим/включим Apache
и PHP. Затем откроем HTTP­порт в нашем контейнере и запустим
Apache. Создайте на хос те дирек торию для наших приключений
и другую дирек торию внутри нее —для нашего сайта:
$ mkdir ~/rpi­apache
$ cd ~/rpi­apache
$ mkdir www
$ nano Dockerfile
Заполни те Dockerfile сле дующим обра зом, затем сохрани те
и выйдите:
FROM resin/rpi­raspbian:jessie
MAINTAINER Your Name <[email protected]>
RUN apt­get update && apt­get ­y install apache2 php5 libapache2­
mod­php5 php5­mysql php5­gd php5­json php5­curl php5­
imagick php5­intl php5­mcrypt && apt­get clean
RUN a2enmod php5
разберется со своим IP­адресом. Если у вас есть
запасной монитор и клавиатура, то вы легко узнаете
этот адрес (зайдите с помощью идентификаци­
онной информации, предоставленной ниже, и ис­
пользуйте ip a). Если же нет, то вы можете выяснить
IP­адрес с помощью простой команды ping:
$ ping ­c 1 black­pearl.local
Pi должен обязательно откликнуться благодаря
тому, что HypriotOS использует Avahi (так же извест­
ную как Bonjour) для обнару жения сервисов. Теперь,
располагая этой информация, вы можете войти в Pi
через SSH, используя
$ ssh [email protected]
и пароль по умолчанию, hypriot. Полу чив SSH­ключ
устройства, можете проверить, работает ли все
должным образом — пароль по умолчанию hypriot.
ENV APACHE_RUN_USER www­data
ENV APACHE_RUN_GROUP www­data
ENV APACHE_LOG_DIR /var/log/apache2
EXPOSE 80
CMD [“/usr/sbin/apache2ctl”, “­D”, “FOREGROUND”]
Теперь мы можем создать образ следующим образом (не за­
будьте точку в конце):
$ docker build ­t rpi­apache .
На Raspberry Pi 3 это займет пару минут; ну, а на младших моде­
лях придется подож дать дольше. Однако в конечном итоге вы по­
лучите любезное сообщение об успехе компиляции. Теперь при за­
пуске docker images вы долж ны уви деть свой свежесоз данный
образ, занимающий около 200 МБ, и его id. Мы можем реа лизо­
вать контейнер и настроить отобра жение дирек тории с помощью
$ docker run ­d ­p 80:80 ­v /home/pirate/rpi­apache/www:/var/
www/html ­­name lxf­apache rpi­apache
Что бы это срабо та ло, первый путь в опции ­v дол жен быть
абсолютным, как это ни неудобно. Теперь при попытке перей ти
> Если все идет нормально, ваш Raspberry Pi будет обслуживать для вас эту милую статическую страницу. Нет пиратов дружелюбнее, чем Docker Pirates.
» Подпишитесь на печатную или электронную версии на www.linuxformat.ru/subscribe!
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
93
Raspberry Pi Docker
на IP­адрес своего Pi с дру гого компьютера вы должны увидеть
стра ни цу Apache по умол ча нию. Од на ко всё еще бо лее ин те­
ресно — мы можем выполнить PHP:
$ nano ~/rpi­apache/www/test.php
Помес ти те сле дующий фраг мент кода PHP в файл и сохра­
ните его:
<?php
phpinfo();
?>
Теперь приставьте /test.php в конец URL, который вы только что
посетили, и вы увидите, что PHP жив и прекрасно чувствует себя
внутри нашего контейнера Docker. Кстати о внутренностях наше­
го контейнера Docker: мы можем заглянуть туда, открыв оболоч­
ку Bash внутри контейнера. Здесь мы используем опции ­i и ­t, для
обозначения, что на до ос тавить stdin открытым и что мы хотим
разместить псевдо­tty:
$ docker exec ­it lxf­apache bash
Внутри контейнера можно исследовать файловую сис тему...
и убедиться, что смотреть там особо не на что. Мы увидим, что
наш PHP­скрипт отобра жается в дирек тории var/www/html. Вооб­
ще­то можно заглянуть в файл журна ла /var/log/apache2/access.
log и най ти дока за тельст во нашего опроса ука занного скрип та
несколько секунд назад. Для серьезного проек та было бы умно
хранить журна лы в томе с распределенным доступом, как мы сде­
ла ли для на шей дирек тории www. Послед нее, на что стоит об­
ратить внимание, преж де чем выйти из этой оболочки — то, что
за пуск ps ax по ка зы вает: PID 1 яв ля ет ся про цес сом Apache —
в стране контейнеров нет ну ж ды в системе init.
Данные [в базе] были ваши,
стали наши
Теперь нас отделяет всего лишь одна буква (M) от полностью функ­
ционального Docker’изованного стека LAMP. Конечно, мы с лег­
костью может добавить mysql и т. д. в строку apt­get в Dockerfile,
но куда более интересно (и потенциально более безопасно) изо­
лировать ба зу данных в своем собст венном кон тейнере. И сно­
ва нам, вероятно, пона добится, чтобы данные в базе данных уце­
лели, когда работа контейнера прекратится, поэтому не худо бы
подготовить еще один монтированный том. Однако вместо этого
мы испольуем немного дру гой под ход: тома Docker. Мы сохра­
ним дирек торию /var/lib/mysql (стандартный путь для баз данных
MySQL) как том. Что по су ти означает, что он ока жется где­нибудь
в /var/lib/docker на хосте, и нам не придется беспокоиться о нем.
Hypriot сделал всю трудную работу за нас, так что можно про­
сто взять их образ rpi­mysql из Docker Hub. Обрати те свой взор
на Dockerfile на https://github.com/hypriot/rpi­mysql/blob/master/
Dockerfile. Он ос нован на Raspbian Wheezy — мы могли бы из­
менить его, чтобы перейти на более новую Jessie, но в этом нет
необхо ди мо сти: ста рая вер сия MySQL отлич но по ла дит с дру­
гим нашим контейнером. (Вообразите себе все ужасы, связанные
с конверсией — попытка заставить новую версию Apache работать
на Wheezy — и вы мигом осознаете преимущества контейнеров).
Dockerfile начинается с обычной домашней приборки: настраива­
ются пользователь и группа mysql, ус танав ливается Perl. Потом
(в дирек тиве RUN {}) некая конфигурация передается debconf, ус­
танавливается MySQL и подправляются разрешения в дирек тории
базы данных. Да лее идут донастройки стандартного файла кон­
фигурации (такие вещи, как связанные адреса [bind], внутри кон­
тейнеров пу таются), затем — самое важное: VOLUME /var/lib/mysql.
И, наконец, мы открываем соответствующий порт (3306) и за­
пускаем mysqld. Для использования этого образа нам нужно вве­
сти пароль root MySQL (используя опцию среды ­e), в противном
случае демон завершится, а контейнер прекратит работу. Исполь­
зуйте для проверки нашей базы данных такую команду, да не стес­
няйтесь использовать пароль пона дежнее:
$ docker run ­d ­p 3306:3306 ­e MYSQL_ROOT_
PASSWORD=password ­­name lxf­mysql hypriot/rpi­mysql
Теперь у нас есть полностью функционирующий сервер MySQL.
Вы можете проверить это, установив клиент MySQL на HypriotOS:
$ sudo apt­get install mysql­client
И вы долж ны быть в состоянии подключиться к вашей ба зе
данных, с помощью
$ mysql ­h <IP of Pi> ­u root ­p
Образ MySQL не принимает подключений через интерфейс об­
ратной петли, поскольку в мире Docker это понятие становится за­
пу танным, так что мы должны подключиться, используя взамен
его локальный IP. Удостоверившись, что это работает, введите exit,
чтобы, ну, выйти.
Подключение контейнеров
> Команда разработчиков Hypriot создала целый набор образов Docker, которые можно
запускать на всех моделях Raspberry Pi.
На личие приложения в одном контейнере (например, PHP), желаю­
щего поговорить с приложением в другом (например, MySQL) —
вполне обычное де ло. Особенно когда кто­то начинает впа дать
в крайности, разбирать все на состав ляющие и упаковывать их
в контейнеры.
По ка что мы только от кры ли TCP­порт 3306, что бы лю бой
имеющий доступ к нашему хосту Docker мог так же получить дос­
туп к контейнеру MySQL, на ходящемуся на нем. Вы можете про­
верить это, запустив клиент MySQL снова с другого компьютера.
Однако более взвешенным под ходом будет позволить говорить
с контейнером MySQL только нашему контейнеру Apache. Docker
делает это на удивление легким; фак тически, это да же проще, чем
то, что мы уже продела ли. Давайте ос тановим и уда лим оба на­
ших контейнера:
$ docker rm ­f lxf­apache lxf­mysql
Команда docker rm уда ляет только остановленные контейнеры,
а ­f заставляет их остановиться. Теперь запустите контейнер MySQL
почти как раньше, но на сей раз не указывая порт:
$ docker run ­d ­e MYSQL_ROOT_PASSWORD=password ­­name
lxf­mysql hypriot/rpi­mysql
» Пропустили номер? Узнайте на с. 108, как получить его прямо сейчас.
94
|
LXF212 Август 2016
www.linuxformat.ru/subscribe
Docker Raspberry Pi
МногоPiтие
Данный учебник вдохновлялся руководством
по настройке Docker Swarm [кластера Docker’ов]
от Docker Pirates и обильно от туда заимство­
вал; настоятельно рекомендуем с ним оз­
накомиться (http://blog.hypriot.com/post/
how­to­setup­rpi­docker­swarm).
Там используется утилита docker-machine для
подготовки восьми Raspberry Pi и их совместного
подключения. Процесс вовлекает создание и рас­
пространение маркера, создание головной машины
кластера —Swarm Master, и запуск семи усердных
агентов. Docker Swarm — инструмент относитель­
но новый: на заре Docker связи меж ду контейне­
рами были возможны (изначально), только если
таковые контейнеры располагались оба на одном
и том же хосте.
К счастью, это уже не так, и инструменты типа
Docker Swarm и Docker Network запросто настраива­
ют распределенные приложения. Если у вас имеется
запасной Raspberry Pi, будет достаточно просто
возвести наш учебник на более высокий уровень
сложности и сменить, ска жем, место жительства
контейнера MySQL. В слу чае сети из двух хостов
простейшим способом для этого является созда­
ние оверлейной сети с помощью команды docker
network create.
Чтобы полу чить более подробную информацию
по этому вопросу, справляйтесь с официальной
документацией на https://docs.docker.com/engine/
userguide/networking/work­with­networks.
> Внутри контейнера мы видим ссылку на наш контейнер MySQL, возникшую внутри
файла хостов. Мы
также увидим том
с распределенным доступом, где
можно поместить
скомпонованные
скрипты PHP.
Затем снова запус ти те кон тейнер Apache поч ти как раньше,
но на сей раз с опцией ­­link:
$ docker run ­d ­p 80:80 ­v /home/pirate/rpi­apache/www:/var/
www/html ­­link lxf­mysql ­­name lxf­apache rpi­apache
Это настроит кое­какие связи в сети и файл hosts в нашем кон­
тейнере lxf­apache, так что мы сможем получить доступ к нашему
контейнеру MySQL, используя имя хоста lxf­mysql. Мы можем удо­
стовериться в этом, используя команду docker inspect:
$ docker inspect ­f “{{ .HostConfig.Links }}” lxf­apache
Она долж на вернуть вывод [/lxf­mysql:/lxfapache/lxf­mysql],
и это способ Docker ска зать вам, что ссылка под на званием lxf­
mysql су щест вует — она наследует имя от кон тейнера, ука зан­
ного в параметре ­­link, ес ли не указано иначе с помощью ­­link
container:name — и что два наши контейнера соединены через нее.
Проверка контейнеров
Чтобы проверить, что это действительно работает, и работает пра­
вильно, можно установить OwnCloud в том с распределенном дос­
тупом, используемый нашим контейнером Apache. Мы под шумок
добавили в образ Apache пару дополнительных пакетов PHP, нуж­
ных для OwnCloud, так что нам остается только скачать архив OwnCloud и извлечь его (действуя по инструкциям OwnCloud, именуе­
мым «Для вла дельцев серверов»). Посетите https://owncloud.org/
install/#instructions­server и поищите последнюю версию (на мо­
мент, когда ее иска ли мы, это была 9.0.2). Теперь скачайте файл
BZ2 на Pi:
$ cd ~/rpi­apache/www
$ wget https://download.owncloud.org/community/owncloud­
9.0.2.tar.bz2
bzip2 по умолчанию в HypriotOS не установлен, так что вам при­
дется внача ле установить эту программу, а потом уж приступать
к распаковке:
$ apt­get install bzip2
$ tar xvjf owncloud­9.0.2.tar.bz2
И наконец, на до исправить права собственности, чтобы OwnCloud мог писать в свою дирек торию. В Dockerfile мы велели обра­
зу Apache запускаться от имени пользователя www­data, так что бу­
дем ува жать это решение:
$ chown ­R www­data:www­data owncloud
Теперь, перейдя (с дру гого компьютера в сети) на http://<IP­
адрес Pi>/owncloud, вы должны увидеть появление страницы на­
стройки OwnCloud. Затем вам пона добится выбрать имя пользо­
вателя/пароль для пользователя admin; используйте owncloud как
имя базы данных, введите root в качестве пользователя базы дан­
ных, используйте пароль базы данных, который вы установили ра­
нее, и lxf­mysql в качестве имени сервера базы данных. На жмите
на кнопку — и после нескольких волнующих секунд ваша установ­
ка OwnCloud должна быть готова к работе.
Но не останавливайтесь на достигну том: есть масса других ве­
щей, которые можно сделать с помощью вашего Docker’изованного
стека LAMP. А если вы завязнете, то перезапуск осуществляется
всего лишь с помощью docker rm. |
www.linuxformat.ru/subscribe
Скорая
помощь
Образы Docker
на Docker Hub пор­
тируются только
внутри архитек ту­
ры ка ж дого CPU.
Если вы ищете об­
разы с armhf или
rpi в имени, обычно
вы достигнете ус­
пеха, но боль­
шинство из этих
образов только для
x86_64. Некоторые
из них легко порти­
ровать с помощью,
например, измене­
ния Debian на Raspbian, если пакеты,
о которых мы го­
ворим, доступны
в Raspbian.
Август 2016 LXF212
|
95
Ответы
Ответы
Есть вопрос по открытому ПО? Пишите нам по адресу [email protected], и мы найдем ответ.
В этом месяце мы ответим
на вопросы про...
1 Разблокировку дверки
привода CD
2 Загрузку Mint
с USB
3 Общение
с Windows 10
4 Общий доступ
к каталогам
5 Загрузку UEFI
с ISO-образов
6 Настройки менеджера фото
DigiKam
1 Захват DVD
В
Наверное, я глуп или упускаю очевидное,
но когда я устанавливаю дистрибу тив с вашего диска, всё идет хорошо, пока дистрибу тив не устанавливается и не говорит: «Сейчас
будет перезагрузка». Если попытаться открыть
дверку привода, она не открывается, а если перезагрузить компьютер, установка начинается заново. Диск можно вынуть с помощью скрепки,
но в этом случае с экрана всё исчезает, и приходится нажимать Ctrl + Alt + Del, чтобы вернуться
к установке. Что я делаю не так?
Джон Маршалл [John Marshall]
О
Обычно при использовании live­дистри­
бу тива диск извлечь нельзя, так как фай­
лы на нем используются — именно по­
этому при попытке принудительного извлечения
дис ка компью тер за висает. Главный компонент
live­ди ст ри бу ти ва — отдельный файл, со дер­
жащий фай ловую сис тему squashfs. Это сжатый
ар хив со дер жи мо го раз де ла же ст ко го дис ка.
При загрузке Live DVD этот файл монтируется как
корневая файловая система дистрибу тива, и дист­
рибу тив должен иметь к ней доступ. Пока файло­
вая сис тема смонтирована, дверца привода DVD
остается заблокированной. Решение, как это часто
бывает, вопрос времени. Если перезагрузить сис­
тему, она снова загрузится с DVD, но ни один файл
открыт не будет (загрузочное меню никаких фай­
лов не открывает), поэтому Вы сможете извлечь
диск и перезагру зиться с помощью Ctrl + Alt + Del
или кнопки сброса.
Другой вариант, в зависимости от аппаратной
начинки Вашего компьютера — открыть меню за­
грузки при перезагрузке компьютера. При на жа­
тии определенной клавиши во время загрузки —
обычно это одна из функциональных клавиш или
Esc — должно появиться меню, позволяющее ука­
зать устройство загрузки, и в нем Вы сможете вы­
брать же ст кий диск. Кон крет ные кла ви ши раз­
личаются в разных сис темах, поэтому загляните
в руководство или поищите подсказки на экране за­
грузки. Последняя альтернатива — перезагрузить
96
|
LXF212 Август 2016
> Одни дистрибутивы копируют все нужные файлы в ОЗУ, а другие приходится вырубать.
компьютер и на жать кнопку извлечения диска при
появлении экрана загрузки BIOS. Тогда дверка при­
вода долж на открыться, преж де чем хоть что­то
сможет ее заблокировать. Этот способ несколько
неук люж и может потребовать дальнейшей переза­
грузки, если BIOS или прошивка вдруг решат про­
должить загрузку, так как при включении компью­
тера в приводе на ходился диск.
Из этой си туации есть исключение. На неко­
торых live­дисках есть возможность скопировать
файловую систему squashfs в память перед мон­
тированием — ищите пункт меню, в котором упо­
минается «кэш» или «скопировать в оперативную
память». Это увеличивает время загрузки и требу­
ет большого объема ОЗУ, но существенно увели­
чивает скорость системы после загрузки, так как
ей больше не придется обращаться к мед ленному
оптическому диску. Это означает, что после загруз­
ки дистрибу тива диск можно будет извлечь.
Если эти варианты Вам не под ходят, можно ско­
пировать ISO­образ на USB­флешку и загрузиться
с нее, как описано в FAQ на DVD. При перезагрузке
компьютера можно будет просто выдернуть флеш­
ку (но подож дите, пока дистрибу тив нормально за­
вершит работу: в противном слу чае он может за­
виснуть из­за того, что ему всё еще нужны какие­то
файлы на флешке).
2 Заминка с Mint
В
Я читал, что некоторые дистрибу тивы
с LXFDVD не загру жаются с флешки —
вот интересно, относится ли это к Mint
17.3 с LXF207. Я попробовал: создал флешку
www.linuxformat.ru/subscribe
по описанию в онлайн-руководстве, создал еще
одну флешку с помощью соответствующего меню
в Mint и попробовал загрузиться с двух разных
флешек. Я так же попробовал сделать это на двух
разных компьютерах, изменив порядок загрузки в BIOS и использовав меню загрузки. Во всех
случаях произошла загрузка с локального диска,
и я увидел Windows 7. Команда dd, которой я пользовался, была такой:
$ sudo dd if=linuxmint­17.3­cinnamon­64bit.iso
of=/dev/sdd1 bs=1M
Ричард [Richard]
О
Не ко торые ди ст ри бу тивы не за гру жа­
ются корректно после копирования все­
го LXF DVD на флешку. В таком слу чае
это будет показано в меню загрузки. В подавляю­
щем большинст ве дист рибу тивов исполь зу ются
гибридные ISO­образы, которые можно записать
на флешку напрямую, да же если они не загру жа­
ются с USB­версии всего DVD. В DVD­документа­
ции для ка ж дого дистрибу тива указано, можно ли
его записать на флешку таким обра зом. Проще
всего соз дать загру зочную флешку с помощью
dd. В разных программах для соз дания флешек
используются разные хитрости для загрузки ISO­
образа с флешки с разной степенью успешности
и на деж ности. Современный под ход — исполь­
зовать гибридный образ, который позволяет из­
бежать всех этих проблем и не требует специаль­
ных программ.
Mint загру зится с ISO­образа, скопированно­
го на USB­флешку. Копируйте образ посредством
Ответы
Терминалы
и суперпользователи
Мы часто пред лагаем в качестве решения проблемы
ввести те или иные команды в термина ле. Хотя обычно
то же самое можно сделать с помощью графических
утилит дистрибу тива, такие решения будут слишком
конкретными (будут зависеть от дистрибу тива). Коман­
ды в термина ле более гибкие, и — самое главное — ими
можно пользоваться во всех дистрибу тивах. Команды
настройки системы часто нужно выполнять от имени су­
перпользователя, называемого также root. Существует
два основных способа это делать, в зависимости от ис­
пользуемого дистрибу тива. Во многих дистрибутивах,
особенно в Ubuntu и его производных, перед командой
можно написать sudo — при этом будет запрошен па­
роль пользователя, и ему будут предоставлены привиле­
гии root только на время выполнения команды. В других
дистрибу тивах применяется команда su, для использо­
вания которой требуется ввести пароль root и которая
предоставляет полный доступ root до того момента,
пока вы не наберете logout. Ес ли в вашем дистрибу тиве
используется su, запустите ее один раз и выполняйте
любые за данные команды без предшествующей sudo.
dd, как описывается в первом ответе в FAQ на DVD,
но команда, которой Вы пользова лись, не совсем
верная. Вы указа ли место назначения копирования
как /dev/sdd1, первый раздел на флешке. Но флеш­
ки могут быть разбиты на разделы либо нет, так что
флешка может смонтироваться как /dev/sdx или
/dev/sdx1 в зависимости от того, как она настроена;
а при записи ISO­образа нужно всегда использо­
вать имя всего устройства, т. е. /dev/sdx. Примеча­
ние: спасибо, что расска за ли об этом! Мы обно­
ви ли инст рук ции в FAQ, чтобы сде лать их более
внятными.
3 Общаясь с Windows 10
В
Я столкнулся с серьезной сетевой проблемой, когда сдуру обновил Windows 7
до Windows 10. Я потратил зря несколько
часов, пытаясь настроить сеть между компьютером с 64-битной Windows 10 и настольным компьютером и ноутбуком с 32-битной Ubuntu Mate. Перед обновлением до Windows 10 сеть с Windows
7 и XP работала нормально, и я мог просматривать все файлы Windows 7 и XP на двух компьютерах с Linux.
Теперь в Linux я вижу только общие папки компьютера с Windows. При попытке открыть их я получаю сообщение об ошибке. Скорее всего, с этим
столкнулся не только я. На форумах Windows я ничего не нашел, а Linux, кажется, перестает существовать, когда дело доходит до сети! До обновления на Windows 10 сеть в Linux была такой
простой!
Грэм Боргонон [Graham Borgonon]
О
Спасибо, что присла ли скриншоты с со­
общениями об ошибках, но того, кто ре­
шил, что сообщение «Упс, что­то пошло
не так. Не обрабо танное со общение об ошибке»
будет чем­то кроме пус той траты элек тронов, на­
до бы пристрелить на мес те! Невозможность про­
сматривать весь диск — это на самом деле пред­
умышлен ная «функ ция». Те перь в Win dows 10
дозволяется про смат ри вать толь ко об щие ка­
та логи, что на са мом де ле не так и плохо. Дру­
гие ошибки выгля дят странно, но, похоже, они
вызва ны тем, как Windows 10 пы тается ис поль­
зовать mDNS, который на зывается Avahi в Linux
и Bonjour в MacOS и позволяет выполнять так на­
зываемую настройку сети с нуля. Чтобы это рабо­
та ло с Samba, программа для Linux обеспечива ла
общий дос туп к файлам в Windows, и Вам может
потребоваться настроить ее конфигу рационный
файл. От имени суперпользователя­root откройте
файл /etc/samba/smb.conf в текстовом редак торе.
Ес ли не знаете, как это сделать, откройте терми­
нал и введите команду:
$ sudo gedit /etc/samba/smb.conf
Добавьте в раздел global этого файла — напри­
мер, сразу после строки, в которой за дается имя
рабочей группы — такую строку:
name resolve order = bcast host
Сервис Samba на до будет перезапустить, но пе­
ред этим проверьте имя рабочей группы в файле
smb.conf, так как в сообщении об ошибке в Windows
при попытке подключения к Ubuntu указано имя,
отличное от текущего. После внесения изменений
сохраните файл и перезапустите Samba командой
$ sudo service samba.service restart
После этого всё должно заработать. Если не по­
лу чится, за пус ти те в термина ле коман ду $ sudo
journalctl ­f и попробуйте открыть общий ресурс.
На эк ра не долж ны поя вить ся все со об ще ния
об ошибках, и они будут гораздо полезнее для от­
ладки, чем «Упс»!
4 Общий доступ на запись
В
Как сделать так, чтобы несколько пользователей, которые создают файлы в локальном общем каталоге, имели бы доступ
на запись в файлы, создаваемые другими пользователями в общем каталоге?
Каталог доступен на запись для группы,
и пользователи принадлежат к группе, являющейся владельцем каталога. Это позволяет им создавать файлы в общем каталоге, но создаваемые файлы принадлежат пользователю, который
их создал, и другие пользователи не могут их изменять. Можно ли решить проблему путем исправления umask?
Алан Паркс [Alan Parkes]
О
Этот вопрос не так прост, и нуж но хо­
рошенько поду мать о том, как это бу­
дет использоваться. Если Вы разрешите
нескольким пользователям доступ на запись к од­
ному и тому же фай лу, то что произойдет, ес ли
пользователи A и B откроют один и тот же файл?
Коротко про...
dmesg
З
агру жая свой любимый дистрибу тив
Linux, вы, скорее всего, видите красивый
экран заставки. С его помощью Linux соз­
дает впечатление грации, спокойствия и без­
мятежности, пока в тайне от пользователя про­
исходит масса всяких вещей. Если загрузиться
без этого экрана, вы увидите множество сооб­
щений. Снача ла ядро настраивает себя, рас­
познает оборудование и загру жает драйверы.
А если что­то пойдет не так и вы за хотите
об этом узнать? Ядро под держивает кольцевой
буфер фиксированного размера, в котором хра­
нятся самые последние сообщения. Его можно
просмотреть командой dmesg (обычно с про­
граммой постраничного просмотра):
$ dmesg | less
Так же можно отфильтровать нужные записи
с помощью grep — ска жем, для поиска сообще­
ний, связанных с диском, можно использовать
команду
$ dmesg | grep sd
Чаще всего вам этого не потребуется, но это
очень удобно, когда есть какое­то устройство,
которое работает неправильно: например, ему
ну жен файл прошивки, а так же драйвер, ко­
торый обычно загру жается из ката лога lib/
firmware. Проверить это вы сможете командой
$ dmesg | grep firmware
Если вы пытаетесь отследить работу какого­
то устройства с горячим подключением, у dmesg
теперь есть полезный параметр ­­follow, с ко­
торым новые сообщения будут отобра жаться
www.linuxformat.ru/subscribe
на экране сразу же после их создания ядром.
Например, если выполнить команду
$ dmesg ­­follow | grep ­e sd ­e usb
и подключить USB­диск, вы увидите следую­
щий вывод:
[ 1583.931869] usb 5­2: new high­speed USB
device number 4 using xhci_hcd
[ 1584.047856] usb­storage 5­2:1.0: USB
Mass Storage device detected [Обнару жен
USB­накопитель]
[ 1585.051281] sd 10:0:0:0: [sde] 8015502 512­byte
logical blocks: (4.10 GB/3.82 GiB)
[ 1585.056204] sde: sde1
И так да лее. Эта команда показывает, что я
только что подключил USB­диск емкостью 4 ГБ,
и на нем есть один раздел /dev/sde.
Август 2016 LXF212
|
97
Ответы
Ес ли пользователь A выполнит какие­то измене­
ния и сохранит файл, а затем пользователь B со­
хранит свою версию, то изменения пользователя
A будут утрачены. Ес ли это создает риск, нуж но
исполь зовать репо зи торий git или, в зависимо­
сти от типа фай ла, какой­нибудь ре дак тор для
совместной работы — скажем, тот, который пре­
дос тав ляется OwnCloud. Некоторые программы,
например, LibreOffice, создают файлы блокиров­
ки, которые уменьшают вероятность конфлик тов,
но риск всё равно сохраняется.
Если Вы всё равно хотите пойти по этому пу ти,
есть несколько вариантов. Изменение umask к ним
не относится, так как оно выполняется в профиле
пользователя и влияет на все файлы, созданные
этим пользователем. Это относится к файловым
системам Linux; если Ваш общий ката лог на ходит­
ся в отдельной файловой сис теме FAT или NTFS,
може те ис поль зо вать ее. Один из ва ри ан тов —
списки ACL (списки кон троля дос ту па), которые
по зво ляют ус тановить бо лее дета лизированные
разрешения для файлов и ката логов, но они тре­
буют некоторой настройки, и да же в этом слу чае
Вы можете не полу чить то, что хотелось бы. На­
верное, самый простой вариант — изменять раз­
решения для ка ж дого фай ла при его соз да нии.
Может показаться, что это не очень удобно, но это
можно сделать с помощью функции ядра inotify,
которая сообщает программам о соз дании и из­
менении файла.
Первый шаг — установить incron, эта програм­
ма должна быть в репозиториях Вашего дистри­
бу тива. Она похожа на Cron, с тем исключением,
что за пус кает ко ман ды на ос но ве со бы тий уве­
домлений файлов, а не по времени. Предположим,
Вы хотите сделать ката лог /shared общим и хотите,
чтобы все члены группы ‘work’ могли редак тиро­
вать файлы. Сделайте так, чтобы ката лог был дос­
тупен на запись для группы:
$ chgrp work /shared
$ chmod 775 /shared
Теперь соз дай те корот кий скрипт, например,
/usr/local/bin/sharefile, содержа щий сле дующие
команды:
#!/bin/sh
chgrp work “$1”
chmod g+w “$1”
Этот скрипт из ме ня ет груп пу и раз ре ше ния
файла, за данного в качестве аргумента (не поза­
будьте сделать этот файл исполняемым). Теперь
создайте файл в ката логе /etc/incron.d со следую­
щим содержимым:
/shared IN_CREATE,IN_MODIFY /usr/local/bin/
sharefile “[email protected]/$#”
Первый аргу мент — путь для отслеживания.
Второй — список событий для прослушки; в дан­
ном слу чае нас интересуют файлы, создаваемые
или изменяемые в ка та логе. И по след ний аргу­
мент — команда, которая выполняется при получе­
нии события. [email protected] заменяется на путь для отслежи­
вания, а $# — на имя файла. Для любого за данного
пу ти можно за дать только одно событие, и ка ж дое
событие выполняет только одну команду. Поэтому
мы используем скрипт, так как нам требуется вы­
полнить две команды.
98
|
LXF212 Август 2016
> Даже неловко видеть такое бесполезное сообщение об ошибке в Linux.
Этот способ весьма эффек тивен для Вашей за­
дачи, так как incrond почти не потребляет ресур­
сов, а просто сидит и ждет, пока не получит собы­
тие inotify от ядра.
5 Загрузка с ISO
В
Я последовал вашему руководству
о Gummiboot в LXF194 и счел, что так загру жать компьютер гораздо проще. Мне
нравился старый Grub, но Grub 2 оказался настоящим кошмаром, поэтому простые загрузочные
файлы Gummiboot — это приятное возвращение
в нормальность. С другой стороны, Grub 2 позволяет хранить ISO-образ SystemRescueCd в каталоге /boot и в случае проблем загру жаться прямо
с него — тогда не приходится постоянно держать
под рукой загрузочный диск или флешку. Я решил узнать, как сделать то же самое в Gummiboot,
но пока поиски не увенчались успехом. Можно ли
загрузиться с ISO в Gummiboot через loop-устройство, как в Grub 2?
Оливер Кольер [Oliver Collier]
О
Преж де всего, Gummiboot больше не су­
щест вует как отдельный проект — его
поглотил Systemd (так что Systemd стал
походить на Борг [вымыш ленная высокотех но­
логичная раса киборгов во вселенной «Звездно­
го пу ти», — прим. пер.], но не будем углубляться
в это). Скачать и установить Gummiboot отдельно
по­прежнему можно, но если Ваш дистрибу тив ис­
пользует Systemd, то вместо Gummiboot вам сле­
дует использовать bootctl. Синтаксис и конфигу­
рация bootctl идентичны Gummiboot; по су ти, это
старый проект в новом месте и с новым именем.
Возвраща ясь к Вашему вопросу, основной от­
вет — нет. На сколь ко нам из вест но, по доб ное
мон тирование и загрузка из ISO­образа с помо­
щью Gummiboot/bootctl невозможны. Однако до­
с тичь желаемого с ISO­образом SystemRescueCd
можно другим способом. Создайте ката лог /boot/
sysrescd, затем смонтируйте ISO­образ в дру гой
ката лог, например:
www.linuxformat.ru/subscribe
$ sudo mkdir ­p /mnt/tmp
$ sudo mount ­o loop systemrescuecd­x86­4.7.2.iso
/mnt/tmp
Теперь скопируйте файлы sysrcd.dat, isolinux/
initram.igz, sysrcd.md5, isolinux/rescue64 и isolinux/
altker64 из смонтированного ISO­образа в ката лог
/boot/sysrescd. Здесь предполагается, что у Вас
64­разрядная система — вряд ли с UEFI у Вас ис­
пользуется 32­битное «железо»; но ес ли это так,
скопируйте 32­разрядные версии ядер.
Далее надо создать файл /boot/loader/entries
со следующим содержимым:
title System Rescue Cd ­ Std Kernel
linux /sysrescd/rescue64
options subdir=sysrescd # добавьте здесь другие
опции загрузки
initrd /sysrescd/initram.igz
Здесь предполагается, что у вас есть отдельный
ката лог /boot, смонтированный на системном раз­
деле EFI (ESP). UEFI требует, чтобы ядра размеща­
лись в ESP, поэтому имеет смысл в качестве этого
ката лога выбрать /boot. При желании можно соз­
дать еще одну запись для альтернативного ядра —
я сам обычно использую именно эти, потому что
они более свежие.
После этого перезагрузитесь и попробуйте. По­
скольку имена фай лов не изменяются в разных
версиях, достаточно скопировать новые файлы по­
верх старых при обновлении диска; изменять меню
не требуется.
Данный ме тод так же мож но ис поль зо вать
с другими дистрибу тивами, но (как и в случае с пет­
левым методом Grub) не все дист рибу тивы под­
держивают такую загрузку, и вдобавок синтаксис
в дистрибу тивах, которые это под держивают, бу­
дет различаться.
6 DigiKam-обскура
В
Я переместил все свои фотографии
в DigiKam. Если подвести курсор мыши
к различным областям экрана, появляется подсказка белыми буквами на бледном фоне,
которую я не могу разобрать — у меня плохое
Ответы
Помогите нам
помочь вам
> Как и всё остальное в KDE, всплывающие подсказки в DigiKam можно изменить в соответствии со своими потребностями.
цветовое зрение. Как изменить цвета, желательно
на черный и белый?
Кен [Ken]
О
Если Вы говорите о подсказках, которые
всплывают при наведении курсора мыши
на миниатюру, то изменения на до выпол­
нить в двух местах. Первое — Settings > Configure
DigiKam > Miscellaneous [Параметры > Настроить
DigiKam > Разное]. Здесь можно изменить стиль
подсказки. Затем можно изменить цвета подска­
зок в системных настройках [System Settings] KDE.
Выбери те Colours [Цвета], убеди тесь, что выбор
в раз де ле Scheme [Схема] соответствует же лае­
мому, затем перейдите на вкладку Colours [Цве­
та], выбери те Tooltip [Всплывающая подсказка]
из выпа дающего списка Colour Set [Набор цветов]
и за дай те под ходящие настройки цветов. Так же
удобно будет изменить настройки шрифта, чтобы
он был крупнее или разборчивее.
Доступные варианты пресетов зависят от тем
KDE, которые Вы установили. Загляните на http://
kdelook.org и поищи те то, что соот ветст вует Ва­
шим потребностям. Ес ли Вы запускаете DigiKam
Ежемесячно к нам поступает несколько писем, на кото­
рые мы не в состоянии ответить, поскольку проблема
описана в них с недостаточной полнотой. Чтобы дать вам
наилучший ответ, нам необходимо получить как мож­
но больше информации о проблеме.
Ес ли у вас появляется сообщение об ошибке,
приведите его текст в точности и опишите конкретные
условия, когда оно появляется. При возникновении про­
блемы с устройствами перечислите нам все устройства,
которые у вас установлены.
Ес ли Linux в вашей системе запущен, вы сможете
применить для этого превосходную программу Hardinfo
(http://sourceforge.net/hardinfo.berlios) — она сохранит
подробную информацию об устройствах и о состоянии
системы в HTML­файле, который вы сможете приложить
к своему письму, отправляемому нам.
Не уступающий в удобстве альтернативный вари­
ант — lshw (http://ezix.org/project/wiki/HardwareLiSter).
Одна из указанных программ непременно должна быть
включена в ваш дистрибу тив (а иногда и обе).
Ес ли у вас нет желания или возможности их устано­
вить, выполните в термина ле от имени root приведенные
ниже команды и приложите сгенерированный ими файл
system.txt к письму. Это окажет неоценимую помощь
в диагностике вашей проблемы.
uname ­a > system.txt
lspci >> system.txt
lspci ­vv >> system.txt
и любую другую программу KDE в Gnome или лю­
бом другом рабочем столе на базе GTK, на до уста­
новить программу kde-gtk-config (это стандартное
приложение KDE), которая поможет придать рабо­
чему столу гармоничный вид. |
Часто задаваемые вопросы
Samba
> Я думал, это танец такой. Зачем
он мне в Linux-ПК?
Это другая Samba — открытая вер­
сия сетевого протокола SMB/CIFS
в Windows.
> Выходит, это программа
для Windows?
Нет, это программа для Linux/Unix,
которая реа лизует протокол SMB
для Windows, отсюда и название.
> SMB... а это что такое?
SMB (Server Message Block) — это
один из ранних протоколов Micro­
soft, который использовался, сре­
ди прочего, для общего доступа
к файлам и принтерам. Его заме­
нил протокол CIFS (Common Internet
File System). Это методы, с помо­
щью которых в Windows осуществ­
ляется общий доступ к файлам
и принтерам.
> Ага, значит, я могу тогда обращаться к общим папкам на компьютерах Windows?
Да, и наоборот. Для Samba имеют­
ся клиент и сервер. Клиент может
монтировать ресурсы на компью­
терах с Windows, а сервер — пре­
доставлять общий доступ к вашим
ката логам и принтерам для обра­
щения из Windows.
> То есть это нужно только если
я хочу поделиться файлами
с Windows? А как насчет общего
доступа с другими компьютерами Linux?
Samba ну жен, чтобы поделить­
ся файлами с Windows, но он по­
дойдет и для обмена файлами ме­
ж ду системами Linux. Хотя в Linux
есть NFS (Network File System) для
общего доступа к файлам и CUPS
(Common Unix Printing System) для
уда ленной печати, для тех же целей
пригодится и Samba.
> Но зачем мне протокол Windows
для общего доступа к файлам
между системами Linux?
У NFS и CIFS есть свои преиму­
щества и недостатки. CIFS более
устойчив к сетевым сбоям, т. е.
при потере и восстановлении под­
ключения ваши сетевые ресурсы
останутся на месте, а для NFS эта
ситуация может стать проблем­
ной. С другой стороны, NFS счи­
тается более защищенным, и это
под линно открытый протокол, ко­
торый был таковым с самого на­
ча ла. Однако если у вас есть об­
щие ресурсы на компьютерах
Windows, проще будет использо­
вать Samba и для них, и для ресур­
сов Linux, чем работать поперемен­
но с двумя протоколами.
www.linuxformat.ru/subscribe
> Как насчет производительности — который из этих протоколов
быстрее?
Считается, что NFS чуть быст­
рее, но на этот протокол гораз­
до сильнее влияет производи­
тельность вашей сети, особенно
если она беспроводная. Переме­
щение вашего кресла на метр вле­
во может сыграть огромную роль
в производительности.
> Получается, что Samba — это просто система общего доступа к файлам и принтерам в Windows?
Когда­то это именно так и бы­
ло, но в настоящее время Samba
справляется с гораздо бо́льшим.
При работе с доменами Windows
Server Samba так же способна вы­
ступать как клиент или контроллер
домена, и теперь реализована под­
держка Active Directory.
Август 2016 LXF212
|
99
Лучшие в мире программы
с открытым кодом
LXFHotPicks
Александр Толстой
Qupzilla » Mutt » Pandoc » Wego » Alexandra » PCManFM-Qt » sK1
» DeSmuME » Simutrans » Powertop » Skrooge
Бредет по заснеженным равнинам
Interweb в поисках лучшего ПО с открытым кодом, останавливаясь лишь чтобы
стряхнуть обледенение со спины.
Web-браузер
Qupzilla
Версия: 2.0 Сайт: www.qupzilla.com
Н
ам давным­давно, еще с 2013 г.,
пришлись по ду ше бы ст рый за­
пуск, под держка вкла док и отно­
си тельно небольшая на грузка на па мять
web­браузера Qupzilla. С тех пор многое из­
ме ни лось, и мы ре ши ли сно ва об ра тить
внимание на Qupzilla по причине очень важ­
ного обнов ления, ко торого давно жда ли
и с ра достью встретили.
Как вы, ви димо, в кур се, долгое вре­
мя не бы ло ни од ного web­брау зера, по­
стро ен но го на биб лио те ке ин тер фей са
Qt, ко то рый был спо со бен дос той но со­
перничать с Firefox или Chrome. Konqueror был почти заброшен, а Qupzilla, Rekonq
и Otter были недос таточно зрелыми, и им
недостава ло функций. В результате поль­
зователи KDE были не в состоянии гулять
по со вре мен ным тя же ло вес ным сай там,
пользуясь «родным» Qt­ориентированным
web­браузером, а вот Gnome вполне справ­
лялся, с помощью своего чудесного брау­
зера Epiphany.
Си туа ция не давно изме ни лась, ко гда
Qupzilla перешел со ста рого и непод дер­
живаемого движ ка QtWebkit на сияющий
> Дни, когда многие современные интерфейсы пользователя
куковали без поддержки, миновали!
На коде Chromium,
и обсчитывает почти
весь web идеально.
Исследуем интерфейс Qupzilla
Знакомая
панель инструментов
Панель инструментов по умолча­
нию имеет кнопки для перехода
вперед и назад, обновления стра­
ницы и перехода на домашнюю
страницу — как и полагается
приличному браузеру.
Панель поиска
Qupzilla придерживается класси­
ческого под хода, используя спе­
циальное поле ввода для поиско­
вых запросов.
Богатые инструменты
настройки
В Избранном помещается
большое количество разде­
лов для смены внешнего вида
и стиля работы.
100
|
LXF212 Август 2016
Поддержка расширений
Кнопка с гамбургером
Полезных расширений здесь
имеется множество: напри­
мер, автоматическая прокрут­
ка, жесты мыши, управление
вкладками и т. д.
Из этого меню вы полу чите
дос туп прак тически ко всем
дополнительным функциям
Qupzilla, избранному и опера­
циям с файлами.
www.linuxformat.ru/subscribe
новизной QtWebengine. Последний теперь
ос но ван на ко де Chromium и об счи тыва­
ет почти весь web просто идеально. На ли­
чие в основе движ ка Chromium на самом
деле крайне важно, и несет преимущества,
немыслимые в более ранних версиях Qupzilla. На при мер, вклад ки об ра ба ты ва ют­
ся отдельными сис темными процессами,
и ес ли одна вкладка зависает, ос тальные
продол жают работать, так что вы — ско­
рее всего — ничего не потеряете в сосед­
них вкладках. Qupzilla 2.0 так же более уме­
ло использует современные многоядерные
про цес соры, и вы не мед ленно это за ме­
тите, загрузив ресурсоемкий сайт.
Визуально изменений в Qupzilla не так
уж много, хотя в интерфейсе наблюдает­
ся ряд мел ких улуч ше ний. Как и все гда,
Qupzilla предусматривает удобную страни­
цу бы ст ро го на бо ра, где вы може те раз­
мес тить свои любимые сайты; дос тойную
программу для блокировки рек ламы (под­
дер жи ва ет ся Easy List); ин ст ру мент им­
порта закладок (который работает с Firefox
и Chrome); программу чтения RSS; менед­
жер cookie и т. д.
Возможно, единственная важная функ­
ция, которая в браузере отсутствует — это
сервис синхронизации на основе учетных
записей; но мы полагаем, что это дело вре­
мени. Прямо сейчас Qupzilla предоставляет
собой готовую к работе замену популярных
web­браузеров, или, как минимум, отлич­
ную причину попробовать нечто новое.
LXFHotPicks
Почтовый клиент
Mutt
Версия: 1.6 Сайт: www.mutt.org
M
utt — старинное при ложение,
знакомое многим линуксоидам
со ста жем. Но оно супер­быст­
рое, су пер­легковесное и исключительно
на дежное, так зачем отказываться от него
и в 2016 г.? Как вы, вероятно, поняли по эк­
ранному снимку, Mutt — консольный кли­
ент элек тронной почты, и это идеальный
вы бор, ес ли вы хо ти те соз дать удоб ную
среду сугубо в режиме командной строки.
Недавно вышла новая версия, 1.6, ко всеоб­
щей ра дости, поскольку стабильного рели­
за Mutt не было с 2002 г.
Интерфейс Mutt обильно употребляет
горячие кла виши, и пред по ла гает ся, что
вы их уже изучили еще до запуска. Однако
все настройки хранятся в простом тексто­
вом файле, который вам придется настро­
ить в своем любимом текстовом редак торе.
Например, чтобы настроить Mutt на работу
с Gmail, на до помес тить в файл ~/.muttrc
информацию о вашей учетке и некоторую
специфическую для Google информацию
(сер ти фи ка ты и т. д.). Ос нов ные стро ки
должны выглядеть примерно так:
­­
set imap_user = “ВАША.ПОЧТА@gmail.
com”
set imap_pass = “ПАРОЛЬ”
set smtp_url = “smtps://[email protected]
smtp.gmail.com:587/”
set smtp_pass = “ПАРОЛЬ”
set from = “ВАША.ПОЧТА@gmail.com”
set realname = “ ВАШЕ ИМЯ”
­­
Для остальной части файла проще ис­
поль зо вать шаб лон (ко то рый на хо дит ся
на http://bit.ly/1Sn3I2G). Закончив, запустите
$ mutt и примите сертификаты с помощью
кла ви ши a. Дальней шие дей ст вия будут
> Ничто в Mutt не замедлит работу вашего компьютера.
Интерфейс Mutt
обильно употребляет
горячие клавиши.
за ви сеть от опре де ленных кла виш: gi —
чтобы открыть папку Входящие; k и j — для
перемещения соответственно вверх и вниз;
d — чтобы уда лить сообщение; и т. д. По­
смотрите на верхнюю панель, там вы уви­
дите подсказки. В этом клиенте вы можете
сделать многое, включая выделение цве­
том, присваива ние тэгов, постановка со­
общений в очередь, поиск по регулярным
выра жениям.
Преобразователь документов
Pandoc
Версия: 1.17 Сайт: http://pandoc.org
M
arkdown — очень популярный
язык раз мет ки, ко то рый ши­
ро ко ис поль зу ет ся не только
разработ чиками, но и во многих он лайн­
фору мах и чатах. Хотя некоторые его из­
бегают, есть и те, кому на до конвертиро­
вать существующие документы в Markdown
или наоборот, и вот здесь­то и пригодит­
ся Pandoc.
Это отлич ный ин ст ру ментик ко манд­
ной строки, который выступает в роли пре­
образователя и одновременно интерак тив­
ного форматировщика. Технически Pandoc
является библиотекой Haskell и модульным
ин ст ру мен том, ко торый со сто ит из мно­
жество считывающих и записывающих мо­
дулей для разных видов преобра зования
текста. Он умеет чи тать и писать во мно­
жест во типов фай лов, в том чис ле Mark­
down, reStructuredText, HTML, LaTeX, Media­
Wiki markup, TWiki markup, Haddock markup,
OPML, Emacs Org mode, DocBook, txt2tags,
EPUB, ODT... и да же в формат DOCX от Microsoft Word.
Pandoc пред ла га ет соб ст вен ную, ин­
дивидуальную версию Markdown, которая
включает синтаксис для нижних колонти­
тулов и множество других дополнений, та­
ких как таб лицы; гибкие маркированные
списки; списки определений; защищенные
блоки кода; верхний и нижний индексы; за­
черкивание; блоки мета данных; автомати­
ческое содержание; встроенная математи­
ка LaTeX; цитирование; и Markdown внутри
элементов блока HTML.
Вы можете использовать Pandoc двумя
способами: интерак тивная оболочка кон­
вертирует то, что вы вводите прямо в тер­
мина ле, а классический преобра зователь
экспортирует файл ввода с вашим исход­
ным тек стом. Пер вым спо со бом Pandoc
конвертирует ваш ввод из простого текста
> Официальный
сайт Pandoc предлагает онлайн-преобразователь, который вы можете
испытать прямо
сейчас!
Если вы хотите выучить Markdown, нет
ничего лучше Pandoc.
www.linuxformat.ru/subscribe
или Markdown в HTML4 и выводит резуль­
тат. Чтобы использовать преобразователь
в том же на прав лении, ис поль зуй те сле­
дующий синтаксис:
$ pandoc input.md ­f markdown ­t html ­s
­o output.html
Если в вашей системе Linux установле­
ны пакеты LaTex, вы так же сможете конвер­
тировать документ Markdown прямо в PDF,
вот так:
$ pandoc input.md ­s ­o output.pdf
Очень удобный раздел подсказки встро­
ен прямо в Pandoc (см. $ pandoc ­­help); там
вы сможе те уз нать, как кон вер ти ро вать
в разные языки разметки и из них и созда­
вать желаемый результат. Ес ли вы хотите
найти простой способ выучить Markdown,
нет ничего лучше дру желюбного к пользо­
вателю инструмента Pandoc.
Август 2016 LXF212
|
101
LXFHotPicks
Метеосервис
Wego
Версия: 2.0 Сайт: http://bit.ly/WegoService
Е
сть десятки тысяч приложений Linux
для всевозмож ных по требно стей,
и, ка жет ся, еще не за ня тую ни шу
и удумать нель зя. К счастью, су щест вует
вечный ис точник вдох новения: возьми те
хорошо известное приложение и сделайте
его ана лог для командной строки. Именно
так произош ло с Wego, программой про­
гноза погоды для командной строки. Мы
не имеем права назвать его первым прило­
жением подобного рода, просто потому что
у нас уже есть минима листское консольное
метеоприложение, однако Wego все равно
отличается инновационностью и непохоже
насвоих соперников.
Основное отличие в том, что Wego ими­
тирует сет ку и значки погоды, к которым
мы привык ли в графических индикаторах,
таких, как My Weather или Yahoo Weather.
Wego выводит очень похожий прогноз по­
средством символов ASCII и соответствую­
щим образом их окрашивает.
Настроить Wego для работы очень лег­
ко, хотя некоторые подсказки не помешают.
Во­первых, убе ди тесь, что у вас имеется
ис пол няе мая ‘go’ — на при мер, в Ubuntu
скомандуйте
$ sudo apt­get install gccgo­go
и затем установите Wego с помощью
$ go get ­u github.com/schachmat/Wego
Следующий шаг — настроить свое ме­
стоположение. Сейчас Wego под держивает
два метеосервиса: Forecast.io и Worldweath­
eronline.com. Чтобы получить прогноз, ска­
жем, с Forecast.io, вам при дет ся соз дать
учетную запись и файл ~/.wegorc:
backend=forecast.io
location=40.748,­73.985
forecast­api­key=YOUR_FORECAST.
IO_API_KEY_HERE
Вам надо будет заменить широту и дол­
го ту действующими для вас значе ниями
> Wego и Wttr.in творят с погодой настоящую магию и предлагают
очень простой синтаксис запросов.
Wego выводит прогноз
посредством символов
ASCII и окрашивает.
и пре дос та вить ключ API, ко то рый тоже
можно получить на сайте.
История не заканчивается на Wego, осо­
бенно если вам лень заниматься настрой­
кой. Есть похожий проект, под на званием
Wttr.in (https://github.com/chubin/wttr.in), ко­
торый использует Wego в качестве движ­
ка. С помощью Wttr.in вы получите данные
о погоде в любом месте с помощью запро­
са Curl; например, попробуйте $ curl wttr.in/
London или $ curl wttr.in/Moscow, чтобы уз­
нать погоду в этих двух городах. Кроме то­
го, мож но ис поль зовать ад реса доменов
как указатели на географическое местопо­
ложение. Вы можете неплохо повеселиться
с помощью $ curl wttr.in/@github.com и по­
хожих команд!
Организатор видео
Alexandra
Версия: 1.5 Сайт: http://bit.ly/AlexandraLibrary
Y
ouTube, Vimeo и дру гие сер ви сы
онлайн­видеостриминга обретают
все большую популярность, но все
равно приятно иметь собственную цифро­
вую библиотеку, особенно для фильмов.
Хотите ли вы скопировать DVD на свой же­
сткий диск или оцифровать историческую
за пись на ви деокас се те, весьма по ле зен
будет ор га ни за тор ви део, Alexandra. Это
небольшой, но мощный органайзер, кото­
рый способен управлять вашей коллекци­
ей видео и пред лагает полезные дополни­
тельные функции.
Вряд ли вы оцените преимущества Alexandra, ес ли ваша коллекция невелика —
в та ком слу чае вам с лих вой хва тит ме­
не д же ра фай лов с под держ кой яр лыков
видео; но если у вас солидная библиотека,
то это меняет де ло. Alexandra пред лагает
два основных способа регистрации филь­
ма: первый — вручную. Вы можете на жать
на кнопку Add [Добавить] и выбрать файл,
который хотите зарегистрировать. В форме
102
|
LXF212 Август 2016
для добавления фильмов — множество по­
лей, например, год, страна, режиссер, жанр
и т. д., но Alexandra не застав ляет вас за­
полнять все от руки. Вы можете добавить
информацию автоматически, использовав
выпа дающее меню Load information from
[За гру зить информа цию с] и вы брав он­
лайн­сервис из спи ска (на пример, IMDB.
com). Когда вы на жмете Load [Загрузить],
все эти поля начнут автоматически запол­
няться (ес ли фильм присутст вует в ба зе
данных онлайн).
Конечно, этот способ ма лоудобен, если
вам надо добавить в Alexandra много филь­
мов. Для такого случая вам, вероятно, стоит
использовать кнопку Film scanner [Сканер
фильмов] на панели инструментов вверху
> Кнопка Load
в Alexandra может
автомагически
найти подробности по многим
фильмам.
Alexandra за секунды
превратит вашу видеодиректорию в БД.
www.linuxformat.ru/subscribe
(которая дублируется так же в меню Tools
[Инструменты]).
Сканер фильмов позволяет за дать ди­
ректорию, где вы храните свои видеофайлы,
и затем автоматически сканирует ее на пред­
мет поиска фильмов. Alexandra рассчитыва­
ет, что вы храните каждый фильм в отдель­
ной под дирек тории вместе с его постером
и дру ги ми ма те риа ла ми, и ес ли все так
и есть, вы получаете отличные результаты
импорта «с обложкой». Но, опять же, функ­
ция онлайн­поиска является приятным бо­
нусом, поскольку на сей раз она применя­
ется в пакетном режиме. Если вам повезет,
Alexandra за секунды превратит вашу ви­
деодирек торию в полнофунк циональную
базу данных.
LXFHotPicks
Менеджер файлов
PCManFM‑Qt
Версия: 0.10 Сайт: http://bit.ly/PCManFM­Qt
Д
авайте отдохнем от могу чих инст­
рументов командной строки и вер­
нем ся к гра фи че ским при ло же­
ни ям, ко то рые яв ля ют ся крае уголь ным
камнем работы на настольном ПК: к менед­
жерам файлов.
В основном пользователи Linux делят­
ся на поклонников Dolphin из сообщества
KDE Plasma, любителей Nautilus из лагеря
Gnome и тех, кто предпочитает более легко­
весное решение — Thunar из Xfce. Но у них
есть сильный соперник под названием PCManFM: это еще один высокопроизводи­
тельный менед жер файлов с массой функ­
ций и ма лым потреблением ресурсов.
PCManFM поставляется как часть LXDE,
который, в свою очередь, как раз перепи­
сывается с помощью библиотеки Qt5 и пре­
вращается в LXQt. Этот факт означает, что
у нас есть два прак ти че ски иден тич ных
респина PCManFM, но с разными версиями
и слегка различными внешним видом и об­
разом действий. Версия PCManFM-Qt, од­
нако, более многообещающая, потому что
в некий момент она ос танется единствен­
ной. Вот прямо сейчас PCManFM-Qt может
похвастаться множеством функций: интер­
фейсом со вкладками; настраиваемой бо­
ковой пане лью с переключате лем Places/
Tree; инст ру мен том поис ка фай лов; про­
граммой создания ярлыков медиа; открыть
терминал и открыть как root; плюс высо­
кая степень настраиваемости ин терфей­
са. В нем так же на лицо полная под держ­
ка GVFS [виртуальная фай ловая сис тема
Gnome], а значит, он может полу чать дос­
туп к таким местоположениям, как smb://
и sftp://... и т. д.
На ма ломощных компьютерах через по­
средст во PCManFM-Qt мож но поэкспери­
ментировать над созданием надежного ра­
бочего стола ин диви дуальной настройки
> Иногда мы забываем, что это не Dolphin, потому что в PCManFMQt есть всё необходимое для работы с файловой системой.
Менеджер с массой
функций и малым потреблением ресурсов.
на базе Qt5, совершенно свободного от ре­
сурсоемких компонентов типа Plasma. Уже
имеется достойный выбор производствен­
ных приложений и аксессуаров на базе Qt5,
и PCManFM-Qt — очень дос тойное к нему
дополнение. В конце концов, он мигом от­
крывает большие дирек тории; например,
вы уви ди те, как шу ст ро ото бра жа ют ся
в PCManFm-Qt такие места, как /usr.lib64.
Редактор векторной графики
sK1
Версия: 2.0 Сайт: http://sk1project.org
П
риложений для Linux, пригодных
для про фес сио наль но го изда­
тельского дизайна (DTP), немного.
Проек ты с открытым кодом особенно слабы
в таких областях, как допечатная подготов­
ка и настольные из дате ли. Кое в чем Inkscape близок к Adobe Illustrator, а Scribus
лезет из кожи вон, чтобы сравняться с InDesign, но пока что мы здесь не преуспели.
Проект sK1 имеет долгую историю, которая
нача лась в 2003 г., когда появилось ответв­
ление кода век торного редак тора Skencil.
Одно время, меж ду 2010 и 2014 гг., продукт
именовался PrintDesign, но потом вернулся
к своему девичьему имени, sK1.
У sK1 смешанная область на значения:
с одной стороны, он работает как редак тор
век торной графики — похожий на Inkscape;
а с другой, имеет сильный упор на много­
стра нич ные до ку мен ты и под держи ва ет
фреймы, сет ки, по ля и прочие свойст ва,
встре чаю щие ся в про грам мах на по до­
бие Adobe Pagemaker. Здесь так же имеются
солидные типографские возмож ности —
ска жем, sK1 под держивает транс форма­
цию гли фов (на пример, ручной кернинг)
и расширенное форматирование символов
для создания впечатляющих эффек тов ук­
рашения текста.
sK1 осо бен но быстр при рен де рин ге
услож ненных век тор ных ил лю ст ра ций,
что не прошло не замеченным в прошлом
Сравнении век торных редак торов [стр. 26
LXF193], и включает ути ли ту Uniconver­
tor, прекрасно импортирующую множество
файлов Adobe Illustrator и CorelDRAW.
В но венькой вер сии 2.0 при ба ви лось
не сколько функ ций, но глав ная но вость
состоит в том, что проект до сих пор жив,
и после длительных простоев разработка
> Набор функций
sK1 ограничен,
но очень стабилен.
Особенно быстр при
рендеринге векторных
иллюстраций.
www.linuxformat.ru/subscribe
продолжается. Современная сборка sK1 2.0
исполь зует библиотеку wxWidgets и пре­
красно встраивается в не давние рабочие
столы, в отличие от более старых версий
sK1 0.9.x, скомпи лированных с помощью
древнего инструментария Tkinter.
Заста вить рабо тать новый 2.0 сейчас
легко для пользователей Ubuntu 14.04, 15.10
и лю бых со вмес ти мых ди ст ри бу ти вов,
но по су ти это па кет Python со строгими
зависимостями, и заставить его работать
на других дистрибу тивах будет проблема­
тично. Однако это — лишь вопрос време­
ни, когда появится официальное обновле­
ние для вашего любимого дистрибу тива.
Август 2016 LXF212
|
103
LXFHotPicks
HotGames Развлекательные приложения
Эмулятор Nintendo DS
DeSmuME
Версия: 0.9.11 Сайт: http://desmume.org
D
eSmuME яв ля ет ся эму ля то ром
ПО Nintendo DS с открытым ко­
дом, су щест ву ющим прак тиче­
ски столько же, сколько и сама платфор­
ма­оригинал. С момента своего появления
в качестве проек та одиночки (привет, Yop­
Yop156) DeSmuME прошел долгий путь,
че рез от кры тие сво его ис ход но го ко да
пуб ли ке в вер сии 0.3 и реа ли за цию ог­
ромного количества уникальных функций
в самой последней версии 0.9.11.
Для игры вам ну жен компьютер с Linux
и ROM (*.NDS) игры, в которую вы хотите
поиграть. Копирование ROM, как правило,
считается незаконным — по меньшей ме­
ре вы должны иметь оригинал игры (на ва­
шей территории может быть и иначе). При
наличии всего не обхо ди мого, на жми те
в DeSmuME на кнопку Open и перейдите
в его файл NDS. Эмуля тор за пус тит иг­
ру немед ленно, и вы, возможно, решите
ознакомиться с настройками по умолча­
нию. Перейдите в Go to Config > Edit Con­
trols, что бы про смот реть или изме нить
пред лагаемые привязки клавиш, да об­
ратите внимание на метод видеоинтерпо­
ляции, применяемый в соответствующих
подменю в меню Config.
DeSmuME обычно пред лагает разум­
ные настройки по умолчанию и запускает
вашу игру с готовым звуком и настраивае­
мым размером экрана — при увеличении
ок на эмуля тора кон тент ав тома тиче ски
растягивается. Некоторые видеофильтры
обеспечивают отличное качество картин­
ки и способны поч ти восстановить иг ру
> DeSmuME эмулирует классические игры Nintendo DS.
DeSmuME существует почти столько же,
сколько оригинал.
с низким разрешением до игры с высоким
разрешением, но не забудьте о влиянии
на частоту кадров, которая будет отобра­
жаться в заголовке окна DeSmuME.
Эмулятор пред лагает очень милый иг­
ровой опыт и может похвастаться массой
дополнительных функций, таких, как про­
грамма записи видео, сохранение состоя­
ния эмулятора, просмотр памяти и да же
дисассемблер — очень рекомендуем этот
инструмент для старых игр Nintendo DS!
Имитатор транспортной компании
Simutrans
Версия: 120.1.3 Сайт: www.simutrans.com
И
дея имитировать транспортную
империю очень популярна, если
судить по мас штабу ак тивных
сообществ разных игр с открытым кодом,
которые продолжают развивать концеп­
цию игры Transport Tycoon.
В LXF207 мы сказочно провели время
с OpenTTD, и теперь очередь другого кло­
на, Simutrans. Если вам случа лось играть
в оригинал Transport Tycoon или OpenTTD,
то вы сочтете Simutrans простой для уста­
новки и запуска. Вам дается некая терри­
тория со слу чайно разбросанными горо­
дами, заводами и природными ресурсами,
и основная цель — обеспечить эффек тив­
ную транспорт ную сис тему для достав­
ки пасса жиров, почты и грузов в нужные
им пунк ты на значе ния. По ка ком па ния
рас тет, вам придется рассматривать ми­
нимальные перевозки и стараться не ра­
зориться. Как обычно, вам следует про­
ду мать ма гист ра ли меж ду за висимыми
104
|
LXF212 Август 2016
друг от дру га мес тами, например, лесо­
посадками и лесопилкой, нефтепромыс­
лами и нефтеперерабатывающими заво­
дами, и т. д. Когда ваш бизнес разовьется
и вы начнете зарабатывать больше, чем
тратите, вокруг вас примутся расти и раз­
виваться города.
Simutrans имеет расширенные инстру­
менты для строительства дорог и созда­
ния слож ных транспортных схем, вклю­
чая, на при мер, ог ра ни че ния ско ро сти.
Опять же, не обойтись без сравнения Simutrans с OpenTTD, и в этом отношении Simutrans выигрывает, с учетом количества
объек тов, которые можно создавать, осо­
бенно объек тов инфраструк туры.
> Захламляйте
зеленые леса
и стройте себе
транспортную
империю, как любой порядочный
капиталист.
Широкий выбор
рельсового транспорта, в т. ч. монорельс.
www.linuxformat.ru/subscribe
В пла не графики Simutrans не столь
передовая, хотя привлекает ряд сторон­
них гра фи че ских па ке тов. Од на ко вза­
мен вы получаете более тонкий контроль
за тем, как, зачем и где вы управляете сво­
ей транспортной империей. В частности,
нам понравился широкий выбор рельсо­
вого и же лез но до рож но го транс порта,
в т. ч. трамваи и монорельс, и столь же ши­
рокий выбор опций станций и депо.
Simutrans — очень при ят ный в иг ре
транспортный имитатор, и на официаль­
ном сайте SourceForge имеются так же па­
кеты графики для немецкого, японского
и британского исторического транспорта.
LXFHotPicks
Утилита мониторинга
Powertop
Версия: 2.8 Сайт: https://01.org/powertop
Т
е, кто помнит выпуски LXF из да ле­
кого прошлого, возможно, слыша ли
(и чита ли) о Powertop, выдающейся
утилите мониторинга Linux. Powertop раз­
работан в лаборатории Open Source в Intel
и за последние годы вырос в очень много­
гранную и многофункциональную утили­
ту. Хотя наш скриншот не в силах показать
его во всем блеске, Powertop очень мощ­
ный во многом, а его функ ция экономии
заряда батарей — особо продвину тый ин­
стру мент под держки. Однако его главная
цель — сообщать вам о главных пожира­
телях энергии и позволить менять некото­
рые настройки.
Ес тественно, основными его потреби­
телями являются ноутбуки и прочие пере­
нос ные уст ройст ва, ну ж дающиеся в эф­
фек тивном расходовании заряда батарей,
од на ко ра бо таю щие от элек тро се ти ПК
тоже могут воспользоваться преимущест­
вами Powertop, чтобы ваша сис тема ос та­
ва лась кру той и экономила ват ты. Когда вы
запускаете Powertop (для этого вы долж­
ны быть root), он отобра жает список про­
цессов и событий, нагру жающих ваш CPU,
что бы вы ви де ли, сколько раз CPU при­
шлось проснуться для ка ж дого процесса
и велика ли нагрузка.
Подробную статистику вы узнаете, про­
смат ривая раз де лы Powertop с помощью
клавиши Tab, но обра ти те особое внима­
ние на последнюю вкладку, Tunables. Она
пока зывает список па ра мет ров, ко торые
часто отмечены, как «Плохие [Bad]» с точки
зрения энергосбережения. Вы можете пе­
реключить состояние ка ж дого параметра
с«Плохого» на «Хорошее [Good]», на жав En­
ter, но это сработает только после следую­
щей перезагрузки.
Что бы вос поль зоваться под сказка ми
Powertop и увидеть, какие именно команды
> Используйте всю
мощь Powertop с помощью его превосходной опции
отчета!
Функция экономии заряда батарей — продвинутый инструмент.
переключают состояние, вам нужно будет
создать отчет:
# powertop ­­html=report.html
И затем от крой те его в web­брау зере.
Перейдя в раздел Tuning, вы увидите, какие
команды пред лагаются для решения про­
блем экономии энергии. Вы можете скопи­
ровать эти команды и поместить их в ваш
/etc/rc.local или иной скрипт запуска, или
пойти еще дальше и применить все пред­
ложения одной командой:
# powertop ­­auto­tune
Однако надо учесть вот что: если вы ис­
пользуете беспроводную клавиатуру либо
мышь, Power top переведет эти устройства
в энергосберегающий режим, и они станут
менее отзывчивыми.
Менеджер личных финансов
Skrooge
Версия: 2.3 Сайт: https://skrooge.org
S
krooge — это менед жер личных фи­
нансов, который поможет привес ти
в порядок ваши доходы и расходы,
спланировать бюд жет, помнить о нужных
платежах и одновременно управлять сче­
тами в нескольких банках.
Струк ту ра менед жера довольно плот­
ная, хотя он старается остаться как можно
более понятным и читаемым. Слева распо­
лагаются категории, сообщения — внизу
слева, список основным пунк тов — в ос­
новном раз де ле, и ни же — ре дак тор для
добавления новых пунк тов.
Первым делом вам на до настроить свои
банковские счета. Skrooge ува жает локаль­
ные настройки вашей сис темы и пред ла­
гает список логотипов банков для вашей
страны. Вы можете заполнить относящие­
ся к счету поля чем угодно, но правильные
настройки помогут вам идентифицировать
этот счет в будущем. Заимев хотя бы один
счет, можете добавлять финансовые опе­
ра ции — и для доходов, и для рас ходов.
В Skrooge есть обширный список операций
по умолчанию, где упомяну то прак тически
всё, на что можно потратить деньги, но вы,
естественно, можете добавлять собствен­
ные категории или изменять су щест вую­
щие, то есть за полнить список опера ций
чем хотите.
Волшебство начинается, когда вам тре­
буется полу чить об зор. Перейдя на стра­
ницу Dashboard, вы сможете насла диться
автоматическим обзором ваших теку щих
счетов и денежных переводов. Здесь так же
мож но по лу чить по лез ные под сказ ки
от Skrooge насчет того, как улучшить свои
за мет ки (на при мер, до ба вить ка те го рий
или назначить режимы) и прочитать более
общие советы.
> Skrooge отлично справляется с обзорами и составлением
подробных отчетов.
Просматривайте отчеты по каждой операции или статистику.
www.linuxformat.ru/subscribe
Графические от четы здорово помогут
вам оце нить свои фи нан сы, и у Skrooge
они полу чаются очень хорошо. Например,
кнопка Open Report на панели инструмен­
тов вверху по зво ляет уви деть ин диви ду­
альные от че ты по ка ж дой опе ра ции или
со во купную ста ти стику для все го сче та.
Раздел отчетов имеет кучу настраиваемых
па ра мет ров, включая тип графики — вы
можете выбрать концентрическую или кру­
говую диаграмму, гис тограмму и отобра­
жение в столбик, и т. д. Дайте Skrooge шанс,
ес ли хо ти те, что бы ва ши фи нан сы бы ли
в порядке. |
Август 2016 LXF212
|
105
На диске
Дистрибу тивы, приложения, игры, книги и всякое-разное...
Лучшее из Интернета, упакованное в 8 ГБ качественного DVD.
Легковесный Ubuntu
Lubuntu 16.04
Дистрибутивы
U
buntu, несомненно, исключительно популярный дистрибутив, и на то есть весьма солидные причины в плане удобства
пользователя. Но этого недостаточно,
чтобы объяснить его господство в потребительском Linux; есть и другие дистрибутивы, которые ничуть не хуже
с технической точки зрения, имеют
не менее — если не более — дружелюбные рабочие столы и отличную
поддержку сообщества. Даже те, кто
не использует Ubuntu постоянно, видят и уважают его преимущества;
это — выбор многих по умолчанию
и выбор многих дистрибутивов в качестве их основы. Сравните его с Systemd, одно упоминание о котором вызывает подскок давления у некоторых
наших читателей. Эта альтернатива
устоявшимся системам имеет солидные технические преимущества и хорошую поддержку. Но при любой попытке его обсудить и его сторонники,
и его противники сразу ощетиниваются и изготавливаются к очередной бессмысленной драке, сравнимой с былыми спорами KDE vs Gnome.
Так в чем же разница? Почему одна
попытка господства вызывает уважение, а другая — ненависть?
Быть может, разница
просто в манере презентации и маркетинге этих двух
проектов?
L
ubuntu, вероят но, са мый лег кий из по луофи­
циальных респинов Ubuntu. Он использует ра­
бо чий стол LXDE и отличает ся бы ст ро той от­
кли ка и про сто той ра бо ты с обо рудо ва ни ем. LXDE
является довольно недавним рабочим столом, но су­
щест вует уже несколько лет и стал весьма зре лым.
В нем есть все функции, требуемые большинству поль­
зова те лей, и при всем их ко личест ве он дос та точно
быстр. За исключением дру гого рабочего стола, это
всё равно Ubuntu, со всем тем, чего от него стоит ожи­
дать. Поскольку он легковесный, мы включили 32­бит­
ную версию, однако не стесняйтесь попробовать его
и на современном оборудовании тоже.
Ubuntu с KDE
Kubuntu 16.04
Д
ру гие дистрибу тивы на LXFDVD этого меся­
ца — легковесные дистрибу тивы, под ходящие
для 32­битного оборудования, но мы, конечно,
не забыли о тех из вас, у кого имеется современное обо­
рудование и кто хочет использовать его по максимуму.
Kubuntu — это Ubuntu с рабочим столом KDE, и этот
ра бо чий стол име ет боль ше оп ций на строй ки, чем
мож но вообразить. Про блема с подобной степенью
настройки в том, что для извлечения всех ее преиму­
ществ на до потрудиться. Настройки KDE по умолча­
нию вполне годные, но все же не воздают этой рабочей
» Важно
ВНИМАНИЕ!
Порченые диски
В ма ловероятном случае какого-то дефекта вашего LXFDVD обращайтесь, пожа луйста, по адресу [email protected] или телефону +7 (812) 309-0686.
106
|
LXF212 Август 2016
www.linuxformat.ru/subscribe
среде по заслугам. Некоторые дистрибу тивы сильно пе­
ренастраивают рабочие столы KDE заранее, но Kubuntu
придерживается близости к настройке по умолчанию,
а значит, немного времени, проведенного в System Set­
tings, позволит вам полу чить намного лучшую опера­
ционную систему.
Почему это не сде лано за вас? Потому что более
удобное для вас не обяза тельно будет удобным для
других пользователей. Вы изменяете рабочий стол так,
чтобы он соответствовал вашим планам по его исполь­
зованию, а не меняете свои планы.
Kubuntu
16.04
Попробуйте Ubuntu
с потрясающей новой
внешностью!
64-битный
» Лучшее из Ubuntu 16.04
» Новый рабочий стол KDE Plasma 5
» Приложения KDE с красивым дизайном
» Долгосрочная поддержка на 5 лет
Lubuntu
С рабочим столом LXDE,
идеален для старых машин
16.04
32‑битный
Xubuntu
16.04
Легковесная сборка
для ноутбуков и ПК 32‑битный
LIVE‑ДИСК: ГОТОВ К РАБОТЕ
ВСЕ НЕОБХОДИМОЕ ДЛЯ СТАРТА В LINUX
Новичок в Linux?
Начните отсюда!
» Что такое Linux? Как его установить?
» Есть ли в нем эквивалент MS Office?
» Зачем нужна командная строка?
» Как устанавливать программы?
Ответы приводятся в Index.html на диске.
Еще одна легковесная альтернатива
4M Linux 17.0
И еще!
Системные инструменты
Главное
Checkinstall Установка tar­архива с помо­
щью менед жера пакетов.
К
стати о легковесности: вот дистрибу тив, ко­
торый всё равно что наполнен гелием. Пускай
он легкий, но уж определенно не ортодоксаль­
ный. 4M Linux использует менед жер окон JWM, кото­
рый, возможно, не встречался вам ранее. Подобно дру­
гим дистрибу тивам, он загру жается в режиме среды
live, а так же может установиться на ваш жесткий диск,
но да же процесс ус тановки непохож на дру гие. Вам
нужно заранее подготовить раздел (один раздел — это
всё, что ему требуется), затем запустить программу ус­
тановки. Это означает, что вам ну жен редак тор разде­
лов, который вы сможете найти в любом из дистрибу­
тивов *buntu.
GNU Core Utils Основные утилиты,обязан­
ные быть в ка ж дой операционной системе.
Hardinfo Инструмент тестирования
системы.
Kernel Исходный код самого последнего
стабильного релиза ядра.
Memtest86+ Проверьте ОЗУ на предмет
сбоев.
Plop Простой менед жер загрузки для за­
пуска ОС с CD, DVD и USB.
RaWrite Создавайте загрузочные дискеты
в MS­DOS в Windows.
SBM Независимый от ОС менед жер загруз­
ки с несложным интерфейсом.
WvDial Соединяйтесь с Интернетом через
телефонный модем.
Баланс функции и формы
Чтение
Xubuntu 16.04
Книжная полка
X
Руководство Bash для начинающих Осваи­
вайте написание скриптов Bash.
fce су ще ст ву ет уже дав но — доль ше, чем
Ubuntu. Он был популярен в те дни, когда ком­
пьютеры были куда слабее, с намного мень­
шим объемом памяти, и от легковесных рабочих сто­
лов была реальная польза. Но и сейчас это ак туально.
Мо жет, ком пь ю те ры и ста ли на мно го мощ нее,
но не всем нужны украшательства рабочего стола, ко­
торые эту мощность съедают. Все эти годы Xfce неук­
лонно развивался, и это отличный рабочий стол, может
быть, не столь легковесный, как некоторые альтерна­
тивы, но он пред лагает неплохой компромисс меж ду
Расширенное руководство по скриптам Bash Изучите написание скриптов
еще лучше.
потреблением ресурсов и функциональностью: Xubun­
tu — это, по су ти, Ubuntu с рабочим столом Xfce.
Это 32­битная версия, и ее могут попробовать все,
но Xfce является неплохим выбором и для 64­битного
оборудования. Будучи менее требовательным, он остав­
ляет большую часть мощности оборудования для важ­
ных дел, таких, как перекодирование видео, компиля­
ция программ и обновление вашего статуса в Facebook.
И это хороший выбор для тех, кого не ра дует переход
на Gnome 3, потому что он во многом схож с Gnome 2
и применяет знакомый инструментарий GTK. |
Руководство по созданию скриптов
Bourne Shell Начинайте осваивать
скрипты оболочки.
The Cathedral and the Bazaar [Собор
и Базар] Классический текст Эрика С. Рей­
монда [Eric S Raymond], объясняющий
преимущества открытой разработки.
Справочник администратора Debian
Базовое руководство для системных
администраторов.
Введение в Linux Удобное руководство
со множеством подсказок для начинаю­
щих пользователей Linux.
Словарь Linux Linux от А до Я.
Linux Kernel in a Nutshell [Ядро Linux в Двух
Словах] Введение в ядро, написанное вели­
ким магистром ядра Грегом Кроа­Хартма­
ном [Greg Kroah­Hartman].
Руководство
системного администратора Linux
Контролируйте
свою систему.
Обзор инструментов
Полный обзор инст­
рументов GNU.
www.linuxformat.ru/subscribe
Август 2016 LXF212
|
107
Пропустили номер?
»
Закажите его через сайт www.linuxformat.ru в «ГНУ/Линуксцентре»! Журналы доставляются
и в печатной, и в электронной форме, так что получение нужного вам выпуска LXF может
занять всего пару минут с момента открытия браузера!
Прямо сейчас для заказа доступны следующие номера:
250 руб.
250 руб.
250 руб.
LXF211
LXF210
LXF209
Июль 2016
Июнь 2016
Май 2016
» Победа конвергенции
Она в Ubuntu не за горами
» На всякий пожарный
Строим брандмауэры
» 3D-печать для умельцев
Как собрать принтер
» Интимные письма Сколачиваем почтовый ящик
» Хакерам Рабочая
столовая
» Гуртом сподручнее
Редакторы для совмест­
ной работы
» Самоделкиным Микробиты от ВВС
» Строим графики Кривая вывезет
» Вездесущий Linux
Назовите, где его нет!
» Утопающим на заметку
Дело в спасательных
дисках
» Ни дня без блога Сайт на MongoDB
» У Малины именины Raspberry Pi — 4 года!
LXFDVD: Bodhi, Korora, ROSA, System Rescue CD,
LXFDVD: 4MLinux, ArchBang, KDE neon, ReactOS, Tails,
LXFDVD: Arch для Raspberry Pi, Debian, OpenELEC,
Печатная версия: shop.linuxformat.ru/lxf_211/
PDF-версия: shop.linuxformat.ru/elxf_211/
Печатная версия: shop.linuxformat.ru/lxf_210/
PDF-версия: shop.linuxformat.ru/elxf_210/
Печатная версия: shop.linuxformat.ru/lxf_209/
PDF-версия: shop.linuxformat.ru/elxf_209/
Ubuntu, 12 книг о Linux (на английском языке),
горячие новинки и прочее...
Ubuntu c 13­ю рабочими столами, 10 книг о Linux
(на английском языке), горячие новинки и прочее...
250 руб.
openSUSE Leap, Rescatux, Ubuntu для планшетов,
10 книг о Linux, горячие новинки и прочее...
250 руб.
250 руб.
LXF208
LXF207
LXF205/206
Апрель 2016
Март 2016
Февраль 2016
» Разоблачаем хакеров
Наладить оборону
» Кодируем видео Смотреть
всё, смотреть везде
» Дистрибутивов много
не бывает Мультизагрузка
» Что я знаю о системе Анализ среды
» Разбегаемся из Окон
Прощай, Windows!
» Резервное копирование
Чтобы не было беды
» Говорят художники Свобод­
ным искусствам — свободные инструменты
» Нас хранит богиня Кали Тесты на вторжение
» Умывальников начальник
Управляем умным домом
» Видеоплейеры Лучше
семь раз увидеть
» Raspberry Pi Zero
Компьютер за 5 долларов!
» Организация данных Диски
и как с ними бороться
LXFDVD: Bodhi, Fedora Security, GParted, Kali Light,
LXFDVD: Linux Mint, openSUSE, Clonezilla, ROSA,
LXFDVD: Fedora, Korora, Kubuntu, Tails, Ubuntu, 10 книг
о Linux, горячие новинки и прочее...
Печатная версия: shop.linuxformat.ru/lxf_208/
PDF-версия: shop.linuxformat.ru/elxf_208/
Печатная версия: shop.linuxformat.ru/lxf_207/
PDF-версия: shop.linuxformat.ru/elxf_207/
Печатная версия: shop.linuxformat.ru/lxf_205­206/
PDF-версия: shop.linuxformat.ru/elxf_205­206/
LXLE, Manjaro, Robolinux, 10 книг о Linux, горячие
новинки и прочее...
Sabayon, Tiny Core, 10 книг о Linux, горячие
новинки и прочее...
Подпишитесь на печатную версию журнала через www.linuxformat.ru/subscribe
или www.linuxcenter.ru, и получите электронную версию в подарок!
На сайте shop.linuxformat.ru вы также сможете приобрести предыдущие выпуски LXF.
Телефоны отдела подписки
» Санкт­Петербург: (812) 309­0686
» Москва: (499) 271­4954
Linux Format ВКонтакте: vk.com/linuxform
Вступайте в нашу группу!
DVD
Информация о диске
DVD-приложение к журналу Linux Format № 8 (212). Август 2016
Окончание на обороте »
На диске вы сможете найти всю необходимую инфор­
мацию о том, как устанавливать и использовать
некоторые программы. Пожалуйста, не забывайте,
что большинство программ поставляются вместе
со своей документацией, поэтому дополнительные
материалы и файлы находятся в соответствующих
директориях.
sK1 2.0 Редактор векторной графики
Skrooge 2.3 Менеджер личных финансов
Wego 2.0 Метеосервис
Документация
СРАВНЕНИЕ: МЕНЕДЖЕРЫ
ПЕРСОНАЛЬНОЙ ИНФОРМАЦИИ
(PIM)
Evolution
Mozilla Lightning
Makagiga
Osmo
УЧЕБНИКИ
3D­печать
Pi Explorer
Rust
ПОМОЩЬ
Руководство новичка
Руководства
Ответы
ЧаВо (FAQ)
Мы стараемся включать как можно больше раз­
личных типов установочных пакетов: RPM, Deb или
любых других. Просим вас принять во внимание, что
мы ограничены свободным пространством и доступ­
ными двоичными выпусками программ. По возможно­
сти, мы будем включать исходные тексты для любого
пакета, чтобы вы могли собрать его самостоятельно.
Содержание
Форматы пакетов
Сторона 1
ДИСТРИБУТИВЫ
Kubuntu 16.04 (64-битный)
Разновидность знаменитого Ubuntu, но с рабочим
столом KDE.
Lubuntu 16.04 (32­битный)
Опять же разновидность Ubuntu, уже с рабочим
столом LXDE.
Xubuntu 16.04 (32­битный)
И еще одна разновидность Ubuntu, на сей раз
с рабочим столом Xfce.
4MLinux 17.0 (32­битный)
Компактный дистрибутив Linux с акцентом
на мультимедиа.
о
льн
Часто случается, что новые про­
Внимате
это
е
т
и
т
ч
граммы зависят от других про­
про
как
,
м
е
т
д
е
граммных продуктов, которые
пер ьзовать
л
о
исп
могут не входить в текущую версию
LXFDVD!
вашего дистрибутива Linux.
Мы стараемся предоставить вам как
можно больше важных вспомогательных
файлов. В большинстве случаев, последние версии
библиотек и другие пакеты мы включаем в каталог
«Essentials [Главное]» на прилагаемом диске. Поэ­
тому, если в вашей системе возникли проблемы
с зависимостями, первым делом следует заглянуть
именно туда.
HOTPICKS
Alexandra 1.5 Органайзер видео
DeSmuME 0.9.11 Эмулятор Nintendo DS
Mutt 1.6 Почтовый клиент
Pandoc 1.17 Преобразователь документов
PCManFM-Qt 0.10 Менеджер файлов
Powertop 2.8 Утилита мониторинга
Qupzilla 2.0 Web­браузер
Simutrans 120.1.3 Имитатор транспортной компании
Что-то потеряли?
Что это за файлы?
16.04
32‑битный
Август 2016 LXF212
16.04
www.linuxformat.ru/subscribe
Попробуйте Ubuntu
с потрясающей новой
внешностью!
16.04
Это маловероятно, но если все же прилагаемый
к журналу диск поврежден, пожалуйста, свяжитесь
с нашей службой поддержки по электронной почте:
[email protected]
» Лучшее из Ubuntu 16.04
» Новый рабочий стол KDE Plasma 5
» Приложения KDE с красивым дизайном
» Долгосрочная поддержка на 5 лет
Xubuntu
Легковесная сборка
для ноутбуков и ПК 32‑битный
Если диск не читается...
Kubuntu
64-битный
Lubuntu
С рабочим столом LXDE,
идеален для старых машин
LIVE‑ДИСК: ГОТОВ К РАБОТЕ
ВСЕ НЕОБХОДИМОЕ ДЛЯ СТАРТА В LINUX
Если вы новичок в Linux, вас может смутить изобилие
различных файлов и расширений. Так как мы стара­
емся собрать как можно больше вариантов пакетов
для обеспечения совместимости, в одном каталоге
часто находятся два или три файла для различных
версий Linux и различных архитектур, исходные тек­
сты и откомпилированные пакеты. Чтобы определить,
какой именно файл вам нужен, необходимо обратить
внимание на его имя или расширение:
» имя_программы-1.0.1.i386.rpm — вероятно,
это двоичный пакет RPM, предназначенный
для работы на системах x86;
» имя_программы-1.0.1.i386.deb — такой же пакет,
но уже для Debian;
» имя_программы-1.0.1.tar.gz — обычно это
исходный код;
» имя_программы-1.0.1.tgz — тот же файл, что и выше
этажом по списку: “tgz” — это сокращение от “tar.gz”;
» имя_программы-1.0.1.tar.bz2 — тот же файл,
но сжатый bzip2 вместо обычного gzip;
» имя_программы-1.0.1.src.rpm — также исходный
код, но поставляемый как RPM­пакет для упрощения
процесса установки;
» имя_программы-1.0.1.i386.FC4.RPM — двоичный
пакет RPM для x86, предназначенный специально
для операционной системы Fedora Core 4;
» имя_программы-1.0.1.ppc.Suse9.rpm — двоичный
пакет RPM, предназначенный специально
для операционной системы SUSE 9.x PPC;
» имя_программы-devel-1.0.1.i386.rpm — версия
для разработчиков.
|
109
110
|
LXF212 Август 2016
Пожалуйста, перед использованием данного диска ознакомьтесь
с инструкцией, опубликованной
в журнале на стр. 109!
Advanced Bash Scripting Guide Подробное руководство
по программированию на Bash
Bash Guide for Beginners Руководство по Bash
для начинающих
Bourne Shell Scripting Начальное руководство
по программированию на Bash
ДОКУМЕНТАЦИЯ: 12 КНИГ О LINUX
(НА АНГЛИЙСКОМ ЯЗЫКЕ)
CheckInstall
Coreutils
HardInfo
Kernel
Memtest86+
Plop
SBM
WvDial
ГЛАВНОЕ
ДЕФЕКТНЫЕ ДИСКИ В маловероятном случае обнаружения дефектов
на данном диске, обращайтесь, пожалуйста, по адресу [email protected]
КОММЕНТАРИИ? Присылайте ваши пожелания и предложения по электронной
почте: [email protected]
The Cathedral and the Bazaar Классический текст
Эрика Раймонда [Eric S Raymond] «Собор и базар»
The Debian Administrator’s Handbook Руководство
администратора, написанное разработчиками Debian
Dive Into Python Учебник по программированию
на Python
Intro to Linux Начальное руководство по Linux
Linux Dictionary Словарь Linux, объясняющий
специфическую терминологию
Linux Kernel in a Nutshell Описание ядра
Linux, созданное одним из его выдающихся
разработчиков — Грегом Кроа­Хартманом
[Greg Kroah­Hartman]
Rute Знаменитый справочник
System Administrators Guide Руководство по базовому
администрированию Linux
GNU Tools Summary Руководство по работе
в командной строке и обзор основных утилит GNU
Содержание
DVD-приложение к журналу Linux Format № 8 (212). Август 2016
SELKS 3.0 (64­битный)
Дистрибутив на базе Debian, предназначенный для
управления безопасностью сети. Предоставляет
готовую среду Suricata IDS/IPS с собственным
графическим менеджером правил. Включает панели
Kibana IDS/NSM (для визуализации журналов и др.
файлов с временно́й отметкой) и Scirius (интерфейс
управления правилами для Suricata).
Тираж изготовлен ООО «Маркон», 188652, Россия, Ленинградская область, Всеволожский р­н, дер. Юкки, Школьная ул., 7­а. Лицензия МПТР ВАФ N 77­103.
Настоящий диск тщательно тестировался и проверялся на всех стадиях производства; однако, как и в случае с любым новым ПО, мы рекомендуем вам
использовать антивирусный сканер. Мы также рекомендуем всегда иметь под рукой актуальную резервную копию данных вашего жесткого диска.
К сожалению, редакция Linux Format не в состоянии принимать на себя ответственность за любые повреждения, разрушения или иные убытки, которые
может повлечь за собой использование этого DVD, представленных на нем программ или данных. Прежде чем устанавливать какое­либо ПО на компьютер,
подключенный к сети, проконсультируйтесь с сетевым администратором.
Все дистрибутивы представлены ISO­образом, который можно и записать на отдельный носитель, и загрузить в live­режиме прямо с LXFDVD.
У всех присутствует возможность установки на жесткий диск.
Mint 18 Xfce (64­битный)
Дистрибутив Linux с долгосрочной поддержкой
(обновления по безопасности до 2021 г.)
и облегченным рабочим столом. Предлагает
пользователям доступ к X­Apps — приложениям,
способным работать во множестве настольных сред.
OpenMandriva Lx 3.0 (64­битный)
Полноценный дистрибутив Linux на базе
отечественного дистрибутива ROSA. Его цель —
упрощение создания, улучшения, пропаганды
и распространения свободного ПО.
ДИСТРИБУТИВЫ
Сторона 2
DVD
Создание
установочных дисков
при помощи cdrecord
www.linuxformat.ru/subscribe
Самый быстрый способ записать ISO­образ
на чистую матрицу — это обратиться к про­
грамме cdrecord. Для всех перечисленных
ниже действий потребуются права супер­
пользователя­root. Cначала определите путь
к вашему устройству для записи дисков. Набе­
рите следующую команду:
cdrecord ­scanbus
После этого на экране терминала должен
отобразиться список устройств, подключен­
ных к вашей системе. SCSI­адрес каждого
устройства представляет собой три числа
в левой колонке — например, 0,3,0. Теперь
вы можете с легкостью записать образ
на диск:
cdrecord dev=0,3,0 ­v /путь к образу/image.iso
Чтобы упростить дальнейшее использование
cdrecord, сохраните некоторые настройки
в файле /etc/default/cdrecord. Добавьте
по одной строке для каждого устройства
записи (скорее всего, в вашей системе при­
сутствует только одно такое устройство):
Plextor= 0,3,0 12 16M
Первое слово в этой строке — метка; затем
после адреса SCSI­устройства вы должны
указать скорость и размер буфера. Теперь
можете заменить SCSI­адрес в командной
строке на выбранную вами метку. Все будет
еще проще, если вы добавите следующее:
CDR_DEVICE=Plextor
Для записи ISO­образа вам осталось набрать
команду
cdrecord ­v /path/to/image.iso
Если вы не принадлежите к любителям
командной строки, в таком случае вам
придет на помощь утилита gcombust. Запу­
стите ее от имени root и выберите вкладку
Burn и ISO 9660 Image в верхней части
окна. Введите путь к образу, который
вы хотите записать на диск, и смело нажи­
майте на Combust! Пока ваш образ пишется
на диск, можете выпить чашечку кофе.
Другая ОС?
Использовать Linux для записи компакт­диска
не обязательно. Программы вроде cdrecord
просто переносят двоичные данные на чистую
матрицу. Все необходимые файлы уже вклю­
чены в ISO­образ, который распознается
любой операционной системой, будь то Linux,
Windows, Mac OS X или AmigaOS.
Нет устройства
для записи дисков?
Если у вас нет устройства, с помощью кото­
рого можно было бы записать образ на диск,
можно найти какого­нибудь друга или органи­
зацию, у кого есть компьютер с дисководом,
и прожечь диск у них. Опять­таки, вам подой­
дет любая операционная система, способная
распознать пишущий привод (см. выше).
Некоторые дистрибутивы умеют монти­
ровать образы дисков и выполнять сетевую
установку или даже установку с раздела
жесткого диска. Конкретные методы, конечно,
зависят от дистрибутива. За дополнительной
информацией обращайтесь на web­сайт раз­
работчика дистрибутива.
Главное в мире Linux
Журнал зарегистрирован Федеральной службой
по надзору за соблюдением законодательства в сфере
массовых коммуникаций и охране культурного наследия
ПИ № ФС77-21973 от 14 сентября 2005 года.
Выходит ежемесячно. Тираж печатной версии 2000 экз.,
распространение электронной версии 30 000 экз.
РЕДАКЦИЯ РУССКОЯЗЫЧНОЙ ВЕРСИИ
Главный редактор
Кирилл Степанов [email protected]
Литературный и выпускающий редактор
Елена Толстякова
Переводчики
Елена Ессяк, Даниил Кривошеин, Светлана Кривошеина,
Валентин Развозжаев, Валерий Смирнов, Елена Толстякова
Редактор диска
Александр Баракин
Верстка, допечатная подготовка
Сергей Рогожников
Технический директор
Андрей Смирнов
Директор по рекламе
Владимир Савельев [email protected]
Генеральный директор
Павел Фролов
Учредители
Частные лица
Издатель
ООО «Линукс Формат»
Отпечатано в типографии ООО «ЛД-ПРИНТ»
196644, Санкт-Петербург, Колпинский р-н, пос. Саперный,
территория предприятия «Балтика», д. б/н, лит. Ф
Тел. (812) 462-8383, e-mail: [email protected]
Заказ 14642
РЕДАКЦИЯ АНГЛОЯЗЫЧНОЙ ВЕРСИИ
Редактор Нейл Мор [Neil Mohr] [email protected]
Научный редактор Джонни Бидвелл [Jonni Bidwell]
[email protected]
Выпускающий редактор Крис Торнетт [Chris Thornett]
[email protected]
Художественный редактор Эфраин Эрнандес-Мендоса
[Efrain Hernandez-Mendoza] [email protected]
В сентябрьском номере
Строим лучший...
домашний сервер!
Потоковое вещание, хранение резервных копий,
общий доступ, виртуализация— всё это, и даже
больше, сделает Linux­сервер почти задаром.
Говорит гуру
Свободы ПО Ричарду Столлмену показалось мало,
и он сформулировал принципы свободы оборудования.
Браузеры нового поколения
Вам незачем больше цепляться за именитый браузер­
тяжеловес: облегченные варианты лучше и быстрее.
ПОДГОТОВКА МАТЕРИАЛОВ
Сэм Аарон [Sam Aaron], Джонни Бидвелл [Jonni Bidwell], Нейл Ботвик
[Neil Bothwick], Джеймс Хант [James Hunt], Аластер Дженнингс
[Alastair Jennings], Дэвид Митчелл [David Mitchell], Нейл Мор [Neil Mohr],
Ник Пирс [Nick Peers], Лес Паундер [Les Pounder], Афнан Рехман
[Afnan Rehman], Маянк Шарма [Mayank Sharma], Крис Терстен [Chris Thursten],
Александр Толстой [Alexander Tolstoy], Михалис Цукалос [Mihalis Tsoukalos],
Евгений Балдин, Андрей Гондаренков, Павел Емельянов, Дмитрий Кузнецов,
Дмитрий Пантелеичев, Алексей Федорчук, Лада Шерышова
Иллюстрации Шейн Коллиндж [Shane Collinge]
Иллюстрация с обложки www.magictorch.com
КОНТАКТНАЯ ИНФОРМАЦИЯ
UK: Linux Format, 30 Monmouth Street, Bath BA1 2BW
Teл. +44 (0) 1604 251045, email: [email protected]
РОССИЯ: Санкт-Петербург, пр. Медиков, 5, корп. 7
Тел. +7 (812) 309-0686, e-mail: [email protected]
По вопросам сотрудничества, партнерства, оптовых закупок:
[email protected]
Авторские права: статьи, переведенные из английского издания Linux Format, являются
собственностью или лицензированы Future Publishing Ltd (Future plc group company). Все права
зарегистрированы. Никакая часть данного журнала не может быть повторно опубликована
без письменного разрешения издателя.
Все письма, независимо от способа отправки, считаются предназначенными для публикации,
если иное не указано явно. Редакция оставляет за собой право корректировать присланные
письма и другие материалы. Редакция Linux Format получает неэксклюзивное право
на публикацию и лицензирование всех присланных материалов, если не было оговорено иное.
Linux Format стремится оставлять уведомление об авторских правах всюду, где это возможно.
Свяжитесь с нами, если мы не упомянули вас как автора предложенных вами материалов,
и мы постараемся исправить эту ошибку. Редакция Linux Format не несет ответственности
за опечатки.
Ответственность за содержание статьи несет ее автор. Мнение авторов может не совпадать
с мнением редакции.
Все присланные материалы могут быть помещены на диски — CD или DVD, поставляемые
вместе с журналом, если не было оговорено иное.
Ограничение ответственности: используйте все советы на свой страх и риск. Ни при каких
условиях редакция Linux Format не несет ответственность за повреждения или ущерб, нанесенные вашему компьютеру и периферии вследствие использования тех или иных советов.
Linux — зарегистрированный товарный знак Линуса Торвальдса [Linus Torvalds].
“GNU/Linux” заменяется на “Linux” в целях сокращения. Все остальные товарные знаки
являются собственностью их законных владельцев. Весь код, опубликованный в журнале,
лицензирован на условиях GPL v3. См. www.gnu.org/copyleft/gpl.html
За информацией о журналах, издаваемых Future plc group company, обращайтесь на сайт
www.futureplc.com.
Хочется солененького
Несколько компьютеров в семье уже не редкость — управ­
ляем конфигурацией домашней сети с помощью стека Salt.
Содержание будущих выпусков может меняться — вдруг мы застрянем в домашнем сервере...
112
|
LXF212 Август 2016
www.linuxformat.ru/subscribe
© Linux Format 2005
© Future Publishing Ltd 2005
BATH • LONDON • MILAN • NEW YORK • PARIS • SAN DIEGO • SAN FRANCISCO
16+
Автор
barmaley
barmaley1149   документов Отправить письмо
Документ
Категория
Без категории
Просмотров
833
Размер файла
28 703 Кб
Теги
2016, linuxformat
1/--страниц
Пожаловаться на содержимое документа