Значительная доля работы с Linux ведется в терминале — или консоли, командной строке, а ключевую ее часть составляет использование программных пакетов с приложениями, библиотеками, утилитами и инструментами. Основные действия, которые можно проводить с пакетами:
- установка;
- удаление;
- обновление;
- поиск;
- просмотр информации о состоянии, позволяющей понять реакцию системы на введенную команду;
- разрешение зависимостей.
Первые 5 примеров использования интуитивно понятны, а вот что такое разрешение зависимостей, нужно пояснить.
Программные пакеты, то есть наборы программ, объединенные для выполнения каких-либо функций, могут правильно работать только при совместимости версий и полном наборе необходимых утилит. Как правило, информация о нужных библиотеках и их версиях есть в списке программных зависимостей, которые устанавливают до пакета. Обычно такие зависимости и их цепочки разрешают пакетные менеджеры, устанавливая необходимые библиотеки в нужном порядке.
Все эти операции можно осуществлять в операционных системах Debian и основанных на них дистрибутивах, таких как:
- Debian,
- Ubuntu,
- Linux Mint,
- elementary OS.
Помочь в реализации таких операций может пакетный менеджер Advanced Packaging Tool, или APT.
Что такое APT
Обычно подобные менеджеры получают пакеты из интернет-репозиториев, состоящих из индексов и хранилищ. Сначала загружаются файлы индексов со списком всех пакетов и ссылками на них. Затем, согласно полученным индексам, пакеты скачиваются из хранилища во временный каталог и после загрузки устанавливаются в систему или обновляются. Их установка возможна и с других носителей. Как правило, список установщиков пакетов хранится в файле /etc/apt/sources.list и в каталоге /etc/apt/sources.list.d/.
APT — это библиотека, позволяющая другим программным инструментам, например apt, apt-get, apt-cache, apt-config, предоставлять возможности для работы с программными пакетами.
Есть и другие утилиты, например aptitude и synaptic. Но по умолчанию в системе используются именно apt и apt-get, включенные в набор стандартных программ Ubuntu. Таким образом, их не нужно покупать, скачивать и устанавливать отдельно.
APT (именно заглавными буквами, как набор утилит) состоит из разных инструментов, необходимых для осуществления специальных функций. Начиная с версии Ubuntu 16.04 появился новый инструмент — apt (строчными буквами, как одна из утилит APT), разработанный для выполнения команд инструментов apt-get и apt-cache. Относительно новый инструмент apt предназначен для пользователей, а apt-get — инструмент более низкого уровня, тесно взаимодействующий с основными процессами Linux. На последнем остановимся подробнее.
Что такое apt-get
Утилита командной строки apt-get устанавливает и обновляет пакеты, отвечает за обновление индекса списка пакетов и всей системы Ubuntu из аутентифицированных источников. Была выпущена в 1998 году вместе с дистрибутивом Debian 2.0 (Hamm). Это инструмент командной строки или консоли, обладающий преимуществами перед другими подобными утилитами, например:
- легкое использование простых терминальных соединений (SSH) для удаленного управления операционной системой и ее программами;
- простота применения в автоматизированных процессах совместно с cron — планировщиком задач unix-систем.
Разберемся, как реализовать возможности утилиты.
Использование apt-get-команд
Чтобы получить официальное описание, документацию, введите в командной строке apt-get. Результат выполнения — перечень часто используемых команд.
Утилита apt-get для работы (кроме поиска) требует прав суперпользователя, поэтому, если вы вошли в систему без прав администратора, перед каждой apt-get необходимо указывать sudo.
Например:
sudo apt-get update
Основной синтаксис команд apt-get в Linux:
sudo apt-get [options] [command] [packages]
Разберемся, что означает каждое слово.
sudo — задает права администратора.
apt-get — это вызов утилиты, обращение к ней.
options — необязательный параметр для изменения поведения команды apt-get.
Примеры опций:
- -y — для автоматического ответа «Yes» («да») на уточняющий вопрос «Вы действительно хотите это сделать?»;
- -assume-no — для автоматического ответа «No» («нет») на вопрос «Вы действительно хотите это сделать?»;
- -s (-simulate) — нужна для того, чтобы получить результат выполнения команды, не осуществляя, а лишь имитируя ее;
- -q (-quiet) — нужна, чтобы скрыть возможные сообщения-предупреждения.
command — команда для исполнения.
packages — пакет или список пакетов через пробелы, с которыми необходимо осуществить операции.
Теперь рассмотрим основные команды.
Основные apt-get-команды
Команды интуитивно понятны, так как их значение совпадает с переводом с английского. Рассмотрим основные:
- update — обновить информацию о пакетах;
- install — установить (автоматически после выполнения команды скачать и настроить) пакет;
- reinstall — переустановить пакет;
- upgrade — обновить до новых версий;
- remove — удалить;
- purge — удалить пакет и очистить систему от его файлов конфигурации;
- autoremove — удалить пакеты, которые были установлены для работы ранее удаленного;
- check — проверить на нарушение зависимостей;
- show — показать статус установки, версию, описание, другие метаданные и зависимости;
- list — показать информацию о пакете, но только в том случае, если он установлен или доступен для установки;
- build-dep — получить зависимости для сборки пакета.
Рассмотрим варианты использования команд на примерах.
Установка. Установить пакет с помощью apt-get достаточно просто, для этого нужно прописать в командной строке:
sudo apt-get install название
где вместо слова «название» будет указано название необходимого пакета.
Удаление. Для удаления необходимо выполнить аналогичную операцию, но вместо ключевого слова «install» будет «remove»:
sudo apt-get remove название
Просмотр информации о пакете. Синтаксис такой:
sudo apt-get show название
Обновление индексов. Чтобы обновить локальные индексы пакетов от текущих до последних, необходимо выполнить команду, похожую на ранее использованные:
sudo apt-get update
Информация обо всех пакетах актуализируется.
Обновление пакетов. Для этого после выполнения предыдущей команды необходимо ввести командную строку:
sudo apt-get upgrade
Этих основных команд хватит для начала работы и первой настройки программного обеспечения операционной linux-системы, основанной на Debian. Чтобы подробнее ознакомиться с официальной документацией, введите:
apt-get help
При успешном выполнении код возврата будет «0», а если в ходе выполнения возникнут ошибки, — «100».
Использование apt-cache и apt-key
Команда apt-cache предоставляет информацию из пакетного менеджера Advanced Packaging Tool, которая формируется из разных источников, перечисленных в файле sources.list в виде образа кеша. Кеш — это временная система хранения, которая нужна для более быстрой работы по сети или другим каналам связи, когда необходимо много раз загружать одну и ту же информацию. Чтобы этого избежать, данные загружают на компьютер и вызывают в момент, когда они нужны. Как только кеш становится бесполезен, его обычно удаляют.
Команда apt-cache ищет пакеты по ключевым словам с помощью ключевого слова search, а также показывает информацию о доступных версиях пакетов с помощью show.
Приведем примеры использования apt-cache.
- Чтобы найти пакет по его названию или части названия, необходимо ввести следующую строку:
apt-cache search ключевое_слово
где ключевым словом поиска может быть все название пакета или его часть, а также любые слова из его описания.
- Чтобы отобразить информацию:
apt-cache show название
где указывается название интересующего пакета.
Утилита apt-key нужна для управления ключами, которые APT использует для аутентификации пакетов. Ключи защищают репозитории от подделки пакета. Любой репозиторий содержит пакеты, которые передаются свободно и открыто, поэтому при их установке необходимо быть уверенным в их подлинности. Проверить подлинность пакета можно с помощью закрытого ключа. Все ключи в системе находятся в хранилище, расположенном в /etc/apt/trusted.gpg.
Основные команды:
- add — добавление ключа в базу доверенных ключей;
- del — удаление ключа из базы;
- list — просмотр добавленных ключей.
Еще немного примеров.
- Для просмотра списка ключей необходимо выполнить:
apt-key list
- Для добавления:
apt-key add ключ
где будет указан нужный ключ.
Для удаления используется тот же синтаксис, но вместо add будет del.