Управление пакетами в Ubuntu и Debian при помощи Apt-Get и Apt-Cache

Что такое Apt-Get?

Apt – программа пользовательского интерфейса командной строки для упаковочной системы dpkg, использование которой является предпочтительным способом управления программным обеспечением из командной строки для любого дистрибутива. Это основная система управления пакетами в Debian и дистрибутивах Linux на базе Debian, таких как Ubuntu.

В то время как инструмент «dpkg» формирует базовый упаковочный уровень, apt-get и apt-cache предоставляют удобные интерфейсы и осуществляют обработку зависимостей. Это позволяет пользователям просто и рационально управлять большим количеством программного обеспечения.

Данное руководство говорит об основном использовании «apt-get» и «apt-cache» и их возможностях в управлении ПО. Все примеры рассматриваются на облачном сервере Ubuntu 12.04, но описанные действия и техники можно выполнить на любом дистрибутиве, основанном на Debian.

Обновление базы данных пакета с AptGet

Apt-get работает с базой данных известного и доступного программного обеспечения. Данная команда выполняет установку, поиск пакетов, а также другие действия, связанные с этой базой данных.

Поэтому прежде чем начать любую упаковочную операцию с apt-get, нужно убедиться в наличии новейшей локальной копии базы данных.

Обновить базу данных можно с помощью следующей команды. Apt-get требует административных привилегий при исполнении большинства операций:

sudo apt-get update

Будет выведен список серверов, из которых извлекается информация. После этого база данных обновится.

Обновление установленных пакетов с помощью AptGet

Пакеты системы можно обновить при помощи следующей команды:

sudo apt-get upgrade

Для более полного обновления используйте аргумент «dist-upgrade», который решает интеллектуальные зависимости новых пакетов и обновляет необходимые программы за счет менее важных:

sudo apt-get dist-upgrade

Установка новых пакетов с AptGet

Если имя пакета, который нужно установить, известно, то его можно установить с помощью следующего синтаксиса:

sudo apt-get install package1 package2 package3 ...

Можно также установить несколько пакетов за один раз, что позволяет получить все необходимое для проекта программное обеспечение за один шаг.

Важно понимать, что apt-get устанавливает не только запрашиваемое ПО, но также программы, необходимые для его установки или запуска.

К примеру, полный пакет текстового редактора «vim» можно установить, введя:

sudo apt-get install vim

Удаление пакета с Аpt-Get

Чтобы удалить пакет можно использовать следующую команду:

sudo apt-get remove package_name

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

Если конфигурационный файл не нужно хранить, его можно удалить вместе с программой, используя синтаксис:

sudo apt-get purge package_name

Данное действие удаляет любой конфигурационный файл, связанный с пакетом.

Чтобы удалить какой-либо ненужный пакет, установленный автоматически для поддержки другой программы, введите следующее:

sudo apt-get autoremove

Также можно указать имя пакета после команды «autoremove», чтобы удалить пакет и его зависимости.

Общие флаги AptGet

Существует ряд различных опций, которые можно указать при помощи флагов. Рассмотрим некоторые из них.

Чтобы осуществить «пробный прогон» процедуры с целью узнать ее действие, можно использовать флаг «-s» («simulate»):

sudo apt-get install -s htop
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
strace ltrace
The following NEW packages will be installed:
htop
0 upgraded, 1 newly installed, 0 to remove and 118 not upgraded.
Inst htop (1.0.1-1 Ubuntu:12.04/precise [amd64])
Conf htop (1.0.1-1 Ubuntu:12.04/precise [amd64])

На месте фактических действий можно увидеть разделы«Inst» и «Conf», которые указывают на локацию, куда пакет буде установлен и сконфигурирован, если убрать флаг «-s».

При необходимости настроить автоматическое подтверждение выбора, можно использовать флаг «-у», что автоматически отвечает «да» на все вопросы.

sudo apt-get remove -y htop

Если нужно скачать пакет, но не устанавливать его, можно выполнить следующую команду:

sudo apt-get install -d packagename

Данные файлы будут расположены в «/var/cache/apt/archives».

При необходимости подавить результаты можно использовать флаг «-qq»:

sudo apt-get remove -qq packagename

Поиск пакета с помощью AptCache

Инструмент упаковки «apt», на самом деле, является набором связанных бесплатных инструментов, которые используются для управления программным обеспечением системы.

В то время как «apt-get» используется для обновления, установки и удаления пакетов, «apt-cache» используется для запроса информации в базе данных пакетов.

Чтобы найти нужные пакеты, можно использовать следующую команду. Обратите внимание, apt-cache обычно не требует административных привилегий.

apt-cache search what_you_are_looking_for

К примеру, если нужно найти «htop», улучшенную версию «top», можно ввести следующее:

apt-cache search htop
aha - ANSI color to HTML converter
htop - interactive processes viewer

Можно искать и более общие понятия. В данном примере нужно найти программное обеспечение преобразования mp3:

apt-cache search mp3 convert
abcde - A Better CD Encoder
cue2toc - converts CUE files to cdrdao's TOC format
dir2ogg - audio file converter into ogg-vorbis format
easytag - viewing, editing and writing ID3 tags
hpodder - Tool to scan and download podcasts (podcatcher)
id3v2 - A command line id3v2 tag editor
kid3 - KDE MP3 ID3 tag editor
kid3-qt - Audio tag editor

. . .

Просмотр информации о пакете с AptCache

Для просмотра информации о пакете, включая расширенное описание, используйте следующий синтаксис:

apt-cache show package_name

Это также предоставит информацию о размере скачивания и необходимых для пакета зависимостях.

Чтобы убедиться, что пакет установлен, и узнать, какому хранилищу он принадлежит, введите:

apt-cache policy package_name

Итоги

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

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

Tags: , , , , ,

Добавить комментарий