Руководство по Ubuntu для новичков

Это старая версия документа.


Управление программами и обновлениями

Я надеюсь, вы разобрались с основными особенностями Ubuntu и более-менее осознали основные концепции этой операционной системы. Теперь пора перейти к описанию практических способов работы с некоторыми основными пользовательскими функциями системы. Из теории использования Ubuntu осталась только одна тема - репозитории и установка приложений. Её-то я и постараюсь объяснить в этой и последующих статьях.

Итак, вы возможно уже слышали слово репозиторий и знаете, что это архивы программ, из которых Ubuntu берёт необходимые пользователю приложения. Подробней про репозитории я расскажу в одной из следующих статей, а пока постараюсь в общих чертах объяснить систему управления программным обеспечением в Ubuntu.

Что такое deb-пакеты, или куда девались exe

Ubuntu имеет принципиально отличное от Windows отношение к устанавливаемым программам. Во-первых, в Windows каждое приложение при установке ставит в свою папку свою собственную копию всех необходимых ему для работы библиотек, а в Ubuntu установочные файлы содержат только само ПО, оставляя вопрос предоставления необходимых библиотек на совесть системы. Из-за этого установочные файлы для Windows могут быть на порядок больше по размеру, чем те же файлы для Ubuntu. Во-вторых, Ubuntu, как и любой Linux, поощряет использование для каждой программы отдельных текстовых файлов для сохранения конфигурации, а Windows только сейчас начал переходить на подобную политику, до этого использовалось весьма странное образование с названием реестр. В-третьих, для того, чтобы найти нужную программу для Windows нужно либо перерыть весь интернет, либо достать откуда-то установочный диск, а потом ещё пройти через длительную процедуру установки, в Ubuntu же всё необходимое ПО скачивается и устанавливается автоматически по запросу пользователя. Вы просто говорите: мне нужна такая-то программа, Ubuntu сама её скачает и поставит, в подавляющем большинстве случаев вам вообще ничего не придётся делать. В-четвёртых, Ubuntu гораздо лучше чем Windows относится к вопросам интеграции ПО в систему, в частности, вам никогда не придётся перезагружать компьютер после установки нового ПО. Есть ещё много аспектов системы управления приложениями Ubuntu, есть так же некоторые недостатки, надеюсь, вы всё поймёте после того, как я объясню основы работы пакетной системы Ubuntu.

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

Дальше вам надо будет нажать на кнопку Установить, ввести свой пароль и дождаться окончания процесса установки. Ничего сложного.

Для установки новых приложений в Ubuntu вы должны обладать правами администратора.

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

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

Надо сразу сказать, что основное отличие deb-пакетов от программ-установщиков приложений из Windows заключается в так называемых зависимостях. Я писал выше, что deb-пакеты оставляют вопрос предоставления необходимых библиотек на совесть системы. Так вот, делают это они с помощью указания зависимостей. Зависимость это то, что должно стоять в системе для обеспечения работы устанавливаемого приложения. Если система не может разрешить зависимости, то новый пакет не будет установлен. Правда на практике такого никогда не случается, потому как Ubuntu всегда автоматически разрешает все зависимости и скачивает недостающие пакеты из интернета без участия пользователя. Однако если у вас нет интернета, то зависимости придётся разрешать вручную, хотя существуют и другие варианты, но об этом позже.

Попробую пояснить на примере. Допустим у вас есть пакет xxxx, зависящий от пакета yyyy. При попытке поставить xxxx система проверит, стоит ли в ней уже yyyy. Если да, то пакет будет поставлен без всяких вопросов. Если же нет, то Ubuntu обратится к репозиторию, скачает с него пакет yyyy, затем поставит сначала его и только потом xxxx. Всё это происходит в автоматическом режиме и не требует участия пользователя.

На всякий случай скажу, что абсолютно все компоненты системы входят в состав какого-нибудь пакета. Т.е. вся система как бы собрана из кирпичиков - deb-пакетов. Любой системный файл относится к какому-нибудь пакету и вообще весь учёт файлов программ происходит в автоматическом режиме в рамках программы управления пакетами. Поэтому пользователю даже не надо указывать место для установки новой программы, всё это записано внутри пакета и не подлежит изменению. Удаление так же происходит в автоматическом режиме.

Пользователю в Ubuntu вообще не надо задумываться о вопросах установки или удаления приложений. Хотите что-то поставить? Пожалуйста! Удалить? Тоже без проблем. Система всё сделает и настроит за вас. Единственное неудобство - это необходимость наличия интернета, хотя и это можно обойти.

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

Репозитории и с чем их едят

Что же такое репозиторий? Пока что я буду рассматривать только интернет-репозитории, хотя бывают и другие, но о них в специальной статье. Так вот, репозиторий в интернете - это специальный сайт с архивом пакетов и вспомогательной информацией. Каждый репозиторий имеет так называемый индекс - список всех доступных в нём пакетов с указанием их версий, зависимостей и прочей полезной информации. Ubuntu периодически или же по запросу скачивает со всех прописанных в системе репозиториев их индексы. И когда нужно выполнять какие-либо операции с пакетами Ubuntu ориентируется именно на эти сохранённые в ней индексы.

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

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

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

Программы управления пакетами

В Ubuntu существуют две основные графические утилиты управления программами: «Центр приложений Ubuntu» и «Менеджер пакетов Synaptic». Кроме того, все действия можно легко совершать и через консоль. О каждом упомянутом инструменте я расскажу в одной из следующих статей. Кроме того, я так же расскажу про программу управления обновлениями системы.

Начнём, пожалуй, с Центра приложений: