LXF76:Ubuntu по-русски
Kryver (обсуждение | вклад) м (→Борьба за мультимедиа) |
Yaleks (обсуждение | вклад) м (категория) |
||
(не показана 1 промежуточная версия 1 участника) | |||
Строка 186: | Строка 186: | ||
И в ответ на команду вида | И в ответ на команду вида | ||
<CODE> | <CODE> | ||
− | $ apt-cache search ftp | + | $ apt-cache search ftp |
</CODE> | </CODE> | ||
последует список всех пакетов, в описании которых фигурирует | последует список всех пакетов, в описании которых фигурирует | ||
Строка 346: | Строка 346: | ||
gstreamer0.8-ffmpeg. Теперь, наконец, начинают крутиться и они, | gstreamer0.8-ffmpeg. Теперь, наконец, начинают крутиться и они, | ||
так что эксприменты можно прекратить со спокойной душой. | так что эксприменты можно прекратить со спокойной душой. | ||
+ | |||
+ | [[Категория:Учебники]] | ||
+ | [[Категория:Ubuntu]] | ||
+ | [[Категория:Алексей Федорчук]] |
Текущая версия на 13:34, 6 января 2009
|
|
|
Содержание |
[править] Ubuntu и Kubuntu: гуманистический Linux по-русски
Алексей Федорчук расскажет вам о семействе дистрибутивов Ubuntu, включающем, кроме эпонима, также Kubuntu и Edubuntu, а также несколько национально-специфических систем и сторонних разработок (в том числе и недавно зародившийся в недрах Google дистрибутив Goobuntu).
[править] Об Ubuntu и Kubuntu
Основатель этого семейства дистрибутивов – южноафриканец Марк Шаттлворт, один из разработчиков Debian и по совместительству – бывший глава бывшей интернет-компании Thawte Consulting. Деятельность которой была столь успешна, что на закате эпохи dot-com’ов ее приобрела известная корпорация VeriSign за астрономическую сумму, сделавшую Марка весьма богатым человеком. После чего он повел себя не очень стандартным для акулы капитализма образом.
Что надлежит сделать порядочному человеку в случае нежданного богачества? Перво-наперво, «поделиться с пацанами». И каждый из бывших сотрудников Thawte Consulting получил премию – миллион рэндов (более US $100000). Во-вторых, следует осуществить голубую мечту своего детства. И Марк слетал в космос туристом, оказавшись в этом качестве вторым человеком в истории Земли. В-третьих, стоит подумать о тех, кому не повезло стать миллионерами. И Марк создает и финансирует несколько некоммерческих организаций – по развитию образования в Африке, помощи развивающимся странам, и так далее. И, наконец, вернуться к тому, с чего начинал – в данном случае в начале всех начал оказался Linux, на котором был построен бизнес компании Thawte. А посему Марк собирает команду для разработки собственного дистрибутива Linux. В основу которого, естественно, кладется Debian – собственно, Ubuntu и характеризуется как Debian с «человеческим лицом». Говорят, что само слово Ubuntu на одном из африканских языков означает нечто подобное нашему понятию «гуманизм».
При создании дистрибутива была сразу четко определена его целевая аудитория. Сам Марк в интервью журналу LinuxFormat (LXF71, октябрь 2005), на вопрос, для каких пользователей предназначен Ubuntu, отвечает, что Ubuntu ориентирован, с одной стороны, на тех, кто сам все знает и умеет, с другой – на тех, кто ничего о компьютерах не знает, знать не хочет, но готов положиться на знающих.
Забегая вперед, заметим, что представление об Ubuntu как о дистрибутиве для неспециалистов не далеко от истины – хотя ряд мелких недоработок (особенно в отношении локализации) не позволяет егопользователю обойтись совсем уж без знаний.
В двух словах, Ubuntu – это почти самый обычный Debian, использующий deb-формат пакетов и систему управления ими – apt, сохраняющий совместимость с огромным его пакетным репозиторием. Отличие от прародителя – во-первых, в том, что он комплектуется самыми свежими версиями пакетов. При этом разработчики декларируют полугодичный релиз-цикл для своего дистрибутива (и пока его придерживаются).
Вторая особенность Ubuntu – в том, что при инсталляции системы по умолчанию автоматически устанавливается и настраивается графическая среда GNOME. Но, поскольку это – лишь один из возможных вариантов, немедленно был создан вариант дистрибутива, использующий в качестве рабочего окружения KDE. Который логично получил имя Kubuntu. Подчеркнем, что Ubuntu и Kubuntu – это одна и та же система, использующая общий репозиторий пакетов. И различия их проявляются только в комплектации инсталяционного CD или DVD. Третий же основной представитель семейства, Edubuntu – это Ubuntu, укомплектованный образовательными программами.
В Kubuntu (как и в Ubuntu) в качестве программы установки используется тот же Debian Installer, что и в последней (Sarge) версии материнского дистрибутива. Правда, несколько модифицированный. Если установка Debian выполняется в два этапа, разделенные рестартом машины (первый – разметка диска и установка базовых компонентов, второй – установка дополнительных пакетов и начальное конфигурирование), то вариант от Ubuntu – как бы в полтора: вся базовая установка и начальное конфигурирование совмещены в один этап, а после перезагрузки происходит только развертывание дополнительных пакетов (GNOME или KDE с соответствующими приложениями – для Ubuntu и Kubuntu, соответственно).
И еще одна важная особенность установщика Ubuntu: в ходе инсталляции по умолчанию не создается учетной записи суперпользователя, и в дальнейшем все действия по администрированию системы выполняются через программу sudo, sudoedit или штатными средствами GNOME /KDE – все они требуют для доступа к правам root ввода обычного пользовательского пароля. Правда, при установке в режиме эксперта root может быть создан – но в дальнейшем это повлечет некоторые сложности, так что начинающему пользователю лучше этого не делать.
[править] Настройка доступа к репозиториям пакетов
По завершении установки пользователь получает в свое распоряжение почти готовую к использованию среду – локализованную (для Руси – локаль UTF8), с офисным пакетом (OpenOffice.org), коммуникационными, графическими и мультимедийными приложениями (таковыми выступают штатные средства GNOME или KDE). Но, к сожалению, именно «почти»: русификация нуждается в некоторой доработке, а использование мультимедийных приложений ограничено, по понятным лицензионным соображениям, только открытыми форматами (типа Ogg Vorbis). Исправление этих мелких и во многом вынужденных недоработок требует доустановки пакетов. И потому одно из первых, что потребуется начинающему пользователю – это освоение системы пакетого менеджмента Ubuntu. И здесь первый шаг – настройка доступа к репозиториям пакетов.
После обычной установки имеется доступ только к одному такому репозиторию – установочному CD или DVD. Но кое-какие компоненты можно получить только из репозиториев сетевых. Делается это с помощью программного комплекса apt.
Источники пакетов, получаемых через apt, описываются в специальном конфигурационном файле – /etc/apt/sources.list. После
пользовательской установки по умолчанию он содержит строку вида
deb cdrom:[Kubuntu 5.10 _Breezy Badger_ – Release i386 (20051012)]/breezy main restricted
плюс еще несколько закомментированных строк, распадающихся на отдельные секции.
Формат каждой строки таков:
- тип пакета – deb для двоичных файлов и deb-src для исходных текстов;
- URL архива – в наших условиях это будет http://ru.archive.ubuntu.com/ubuntu;
- имя собственное дистрибутива – для текущей версии breezy (собственно дистрибутив), breezy-updates, breezy-backports, breezysecurity (дополнительные компоненты);
- тип репозитория – main и restricted (основная часть дистрибутива, поддерживаемая командой обновления безопасности), universe и multiverse (дополнительная часть, лишенная соответствующей поддержки).
Нам они понадобятся все, включая и те, что являются как бы не совсем официальными (universe и multiverse). Так что достаточно просто снять комментарии со всех строк, начинающихся с deb и deb-src – не исключено, что некоторые пакеты придется собирать из исходных текстов.
Сделанного достаточно, чтобы доустанавливать пакеты, не включенные в комплект инсталляционного компакт-диска, а также получать все штатные обновления. За обновлениями же не вполне штатными (например, KDE последних версий) нужно следить на сайте http://www.kubuntu.org – там будут исчерпывающие указания по подключению дополнительных репозиториев.
[править] Основы пакетного менеджмента
Теперь необходимо сначала сказать несколько слов о пакетах, используемых в Ubuntu и Kubuntu.
Cемейство дистрибутивов Ubuntu основывается на дистрибутиве Debian и наследует его формат пакетов (deb). Это – архивный файл, включающий скомпилированные исполняемые программы (и все необходимые им для работы компоненты), и так называемые управляющие файлы, в том числе, описания зависимостей пакета.
В Debian и его клонах зависимости имеют несколько градаций: обязательные (depends), настоятельно рекомендуемые (recommends), рекомендуемые умеренно настойчиво (suggests). Первая градация – это обычные «жесткие» зависимости – пакеты, без которых установка и работа данного невозможна. Ну а настоятельно рекомендуемые и рекомендуемые просто – это две разновидности «мягких» зависимостей, добавляющих пакету те или иные необязательные, но полезные функции. Впрочем, таково субъективное мнение сопроводителя (maintainer) данного пакета – вполне возможно, что мнение пользователя будет иным.
В отношении средств управления пакетами в Kubuntu имеется богатый выбор. Однако в этой статье речь пойдет только о двух из них – dpkg и apt.
[править] Команда dpkg сотоварищи
Команда dpkg – в ряде случаев простейший способ установить единичный пакет и сконфигурировать его, а также получить информацию о нем. Если нам необходимо установить единичный пакет, поступаем
так:
$ sudo dpkg -i path2/packagename.deb
и дело в шляпе – через считанные мгновения пакет packagename.deb будет установлен.
В случае нарушения зависимостей dpkg выдаст сообщение об ошибке с полным перечнем того, какие пакеты нужно установить для ее устранения (в списке будут перечислены только обязательные зависимости). Достаточно поместить все необходимые пакеты в командную строку для того, чтобы они были установлены единой операцией.
Обратная процедура – удаление ненужных пакетов. Это делается
двояко: команда
$ sudo dpkg -r packagename
удалит пакет, но сохранит его настроечные файлы, а команда
$ sudo dpkg -P packagename
произведет полную очистку системы от компонентов пакета.
Правда, только если они не являются зависимостями других пакетов – в этом случае последует сообщение о невозможности удаления пакета и будет выведен список зависимостей, этому препятствующих.
Вообще-то dpkg – это целое семейство команд, включающее, кроме себя самой, еще несколько: dpkg-deb, dpkg-query и так далее.
Один из представителей этого семейства, который так и называется –
dpkg-reconfigure, служит цели переконфигурирования уже установленных пакетов. Делается это так:
$ sudo dpkg-reconfigure packagename
После этого вызывается диалоговая программа конфигурации – debconf, и ответы на серию более или менее тривиальных вопросов позволяют добиться желаемого результата.
[править] Инструментарий apt
Набор apt (Advanced Packaging Tools) – это программный комплекс,
охватывающий все стороны управления пакетами. Он включает в себя
почти десяток команд, тесно переплетающихся друг с другом. Так,
назначение команды apt-cache – в получении информации о пакетах,
причем не только установленных на локальной машине, но и находящихся в сетевых репозиториях. Сведения эти берутся из локальной
базы данных, создаваемой во время инсталляции системы, и в дальнейшем обновляемой с помощью apt-get:
$ sudo apt-get update
При этом устанавливается соединение со всеми репозиториями, перечисленными в файле /etc/apt/sources.list, и локальный кэш пакетов приводится в соответствие с их текущим состоянием.
Теперь можно произвести тотальное обновление системы:
$ sudo apt-get upgrade
При этом будет проведено сравнение версий установленных пакетов с обновленным кэшем, система выявит все, нуждающееся в обновлении, скачает соответствующие версии из сети и заменит ими устаревшие пакеты. В случае, если новые версии повлекут за собой и новые зависимости – они также будут скачаны и установлены. Но перед этим будет выведен полный список пакетов, нуждающихся в обновлении, объем, который предстоит скачать, и потребный объем дискового пространства.
В некоторых случаях apt-get upgrade не сможет выполнить обновление каких-либо пакетов, о чем честно и сообщит. Причины этому
могут быть разные – например, конфликт новых зависимостей пакетов.
На сей случай имеется более радикальное средство – dist-upgrade.
Именно к нему следует прибегнуть и при обновлении старой версии
дистрибутива до нового релиза:
$ sudo apt-get dist-upgrade
Эта команда просто тотально перепишет все наличные пакеты их обновленными версиями, одновременно разрешая и новые их зависимости (вплоть до удаления конфликтующих пакетов).
Вот теперь можно взяться и за отдельные пакеты. Дистрибутивные
deb-пакеты вовсе не совпадают с пакетами авторскими – они намного
более дробные. Например, каждый из авторских пакетов KDE, типа
kdenetworks или kdegraphics, делится на множество мелких монофунк-
циональных deb-пакетов. И тут на помощь придет команда apt-cache
search, которая в качестве аргумента воспринимает ключевое слово.
И в ответ на команду вида
$ apt-cache search ftp
последует список всех пакетов, в описании которых фигурирует ключевое слово ftp.
Выявив нужный пакет, следует обратиться к команде apt-get install. Посредством которой будет он благополучно скачан и установлен – со всеми обязательными (depends) зависимостями. Перед этим будет опять-таки выведен список подлежащих установке пакетов, объем скачиваемого материала и изменения в занятом дисковом пространстве. А также будет дан список пакетов, связанных с данным разными типами «мягких» зависимостей – пользователю останется только решить, нужны ли они ему.
Инструмент apt-get выполняет и удаление пакетов:
$ apt-get remove packagename
При этом настроечные файлы сохраняются – для их удаления требуется опция --purge, которая выполнит полную очистку системы от всех компонентов пакета.
Очень ценна опция -i, обеспечивающая инверсию действия опера-
торов. То есть команда
$ sudo apt-get remove packagname -i
установит пакет packagename, а команда
$ sudo apt-get install packagname -i
напротив, удалит его. Это очень полезно при экспериментировании с большим количеством пакетов.
Если нужно собрать из исходников много пакетов, пересобрать систему целиком или требуется компиляция с какими-либо особыми услови-
ями, следует прибегнуть к инструменту – apt-build. Это – отдельный
пакет, который устанавливается обычными образом, и в ходе установки
настраивается. Настройки включают: выбор степени оптимизации, облегченной (соответствующая флагу gcc -O1), средней (флаг -O2) или усиленной (-O3), указание дополнительных флагов gcc, если в них есть
необходимость, опций для команды make, выбор процессора (Pentium,
Pentium-4 и так далее). Если же для отдельных программ условия компиляции нужно изменить – apt-build можно переконфигурировать
обычным образом:
$ sudo dpkg-reconfigure apt-build
Команда apt-build включает ряд операторов, таких, как update – обновление списка доступных пакетов, upgrade – сборка обновленных пакетов, world – полная пересборка всей системы. То есть инструмент apt-build, несмотря на сугубо пакетную природу использующих его дистрибутивов, имеет ничуть не меньшие возможности по индивидуалированной компиляции, чем система портов FreeBSD или аналогичные средства Source Based дистрибутивов Linux.
[править] Kubuntu по русски
Дистрибутив, претендующий на «гуманное отношение к пользователям», должен в обязательно порядке уметь разговаривать с ними на родном языке, в том числе, и русском. И тут Ubuntu и Kubuntu в первом приближении выглядят терпимо: если в ходе установки выбрать русский язык и соответствующую ему страну, то есть Россию, то по завершении процесса мы получаем более-менее русифицированные X с прогрессивной локалью UTF-8.
А вот в консоли дело обстоит из рук вон плохо: шрифт для вывода кириллических символов при старте машины автоматически не подгружается, а попытка ввести русские буквы приводит к появлению на экране вполне нечленораздельной абракадабры. Конечно, Kubuntu не ориентирован на использование в текстовом режиме. Однако и терпеть в консоли такое безобразие тоже не хочется. Так что давайте уж доведем до ума русификацию консоли.
Процедура эта достаточно просто выполняется вручную. Во-первых,
обеспечиваем загрузку шрифта со встроенной таблицей sfm (screen
font map): вызываем для редактирования необходимый конфигурационный файл:
$ sudoedit /etc/console-tools/config
и вносим в него строки:
SCREEN_FONT_vc1=LatArCyrHeb-16 SCREEN_FONT_vc2=LatArCyrHeb-16 SCREEN_FONT_vc3=LatArCyrHeb-16 SCREEN_FONT_vc4=LatArCyrHeb-16 SCREEN_FONT_vc5=LatArCyrHeb-16 SCREEN_FONT_vc6=LatArCyrHeb-16
Загружаемый таким образом шрифт выглядит весьма убого, но его можно заменить шрифтами либо из пакета terminus-fonts, либо из коллекции с http://www.posix.ru/download.shtml (последние нужно поместить в каталог /usr/share/consolefonts/ вручную).
Во-вторых, устанавливаем Unicode-раскладку клавиатуры (ru-utf,
скачать ее можно здесь же: http://www.posix.ru/download.shtml):
$ sudo cp path2/ru-utf.kmap.gz /etc/console/boottime.kmap.gz
И после перезагрузки машины убеждаемся, что обрели способность к вводу символов кириллицы. Раскладка – для win-маркированных клавиш (то есть с нормальным расположением знаков препинания), переключение латиница/кириллица – по правому <Control>.
Есть и другой способ русификации, более соответствующий Debian Way – установка и конфигурирование пакета console-cyrillic, что предлагается читателю в качестве самостоятельного упражнения.
Вторая проблема из числа локально зависимых, требующая решения, для этих целей используется aspell – что естественно для Unicode (так как ispell с Unicode до сих пор не работает). Имеется и пакет с русским словарем для него, aspell-ru – но только для архитектуры i386. Для AMD64 же можно предложить два решения.
Первое – через http://rpmfind.net/ отыскать более-менее свежий
rpm-пакет для архитектуры AMD64, установить alien – трансформатор
пакетов из одного формата в другой и его посредством преобразовать
rpm в deb:
$ fakeroot alien aspell-ru-0.99f7-2.x86_64.rpm
Каковой и устанавливается обычным образом:
$ sudo dpkg -i alien aspell-ru-0.99f7-2.x86_64.deb
Второе же решение – просто автоматом построить соответствующий deb-пакет посредством apt-build, после чего остается подключить его к любимому текстовому редактору или просто запускать из командной строки.
[править] Борьба за мультимедиа
Все сказанное ранее относилось к любому из дистрибутивов семейства Ubuntu. Теперь же речь пойдет о специфике Kubuntu. В нем для проигрывания аудио штатно предназначена программа Amarok, а за воспроизведение видео отвечает универсальный медиаплейер Kaffeine. Сразу после установки, что называется, «из коробки», оба они в состоянии только запускать звуковые ogg-файлы, ни mp3, ни Real Audio их восприятию недоступны, как, впрочем, и банальные avi’шки домашнего производства.
Столь нехорошее поведение объясняется отсутствием движков и кодеков. И связано с лицензионными соображениями. Дело в том, что алгоритмы, на которых основываются программы воспроизводства аудио/видео (например, mpeg-кодирования) запатентованы в тех странах, законы которых признают патенты на алгоритмы (или, скажем, законы природы). И создатели дистрибутивов, ориентированных на международное распространение (а разработчики Ubuntu/Kubuntu именно к тому и стремятся), вынуждены с этим считаться.
Благо законы нашей Родины, вопреки Салтыкову-Щедрину, в такой глупости до сих пор замечены не были, и мы можем слушать музыку или смотреть кино, не чувствуя себя интеллектуальными преступниками. Остается только обеспечить свое право возможностью его использовать.
Для чего нам и потребуется устанавливать эти самые кодеки/движки. Возникает вопрос – какие? Для ответа придется прибегнуть к методу ползучего эмпиризма.
Сначала займемся звуком, воспроизводимом посредством Amarok.
Посредством
$ apt-cache search amarok
смотрим, какие движки (engine) к нему можно подключить в принципе. Оказывается, следующие:
amarok-gstreamer – GStreamer engine for the amaroK audio player amarok-arts – aRts engine for the amaroK audio player amarok-engines – output engines for the amaroK audio player amarok-xine – xine engine for the amaroK audio player
Не буду тянуть кота за хвост – я остановился на варианте amarokxine, дополненном пакетом akode-mpeg – ведь mpeg потребуется в любом случае. После чего Amarok начинает нормально играть не только mp3 и Real Audio, но и, в качестве бесплатного приложения, – классово чуждый WMA. Правда, Kaffeine – категорически отказывается что либо, кроме ogg-файлов – но все-таки основное его назначение – крутить видео. А этого он пока тоже делать не хочет.
Изучение вывода команды
$ apt-cache search kaffeine
приводит к заключению, что нужно установить gstreamer0.8-mpeg2dec – после этого начинается показ фильмов, содранных с VideoCD – но без звука. Звук появляется после установки gstreamer0.8-mad, но мои домотканные avi’шки по прежнему не прокручиваются. Последняя надежда – устанавливаю gstreamer0.8-ffmpeg. Теперь, наконец, начинают крутиться и они, так что эксприменты можно прекратить со спокойной душой.