Colobridge WIKI

управление пакетами

Применимость: Linux


Как устанавливать и удалять программы в Linux


  • apt-get: устанавливает и удаляет пакеты из системы, а также может обновлять список пакетов и установленное программное обеспечение.
  • apt-cache: поиск необходимого пакета по списку пакетов apt, находящегося на локальной машине.
  • dpkg - используется для различных административных задач, например, для переконфигурирования Xorg.

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

  • apt-listbugs: ищет ошибки в пакете программы ещё до установки самой программы.
  • apt-listchanges: то же самое, что и apt-listbugs, но для безошибочных изменений.
  • apt-rdepends: для показа дерева зависимости пакета.
  • deborphan - ищет обособленные зависимости в системе, оставленные после удаления родительских пакетов.
  • debfoster - помогает deborphan идентифицировать, в каких зависимостях пакета система больше не нуждается.
  • dselect - интерфейс для просмотра, выбора и поиска пакетов в вашей системе.

Ещё: apt-cdrom, apt-config, apt-extracttemplates, apt-ftparchive, apt-key, apt-mark and apt-sortpkgs.

Как вы заметили, это 16 различных инструментов, с которыми вы познакомитесь, когда приступите к изучению вашего дистрибутива.

Дальше - больше, apt-get имеет большую проблему с удалением пакетов. Сначала он определяет зависимости, которые должны быть установлены для выбранного пакета, но не определяет их, когда вы удаляете этот пакет. Если зависимости удовлетворены, ‘apt-get remove’ удалит выбранные пакеты, но оставит обособленные зависимости. Альтернатива?

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

Aptitude — это превосходный способ для установки, удаления, обновления, иначе говоря, для управления вашей системой совместно с apt. Во-первых, aptitude может решить проблемы обособленных зависимостей. Во-вторых, у него блокирующий ошибки dselect интерфейс. Последнее, и самое важное, здесь используется один инструмент для выполнения многих функций. Давайте посмотрим: aptitude: при запуске без аргументов появляется графический интерфейс (правда, в консоли, прям как mc) для поиска, установки, обновления и других административных действий над пакетами.

  • aptitude install: установка программного обеспечения, а также построение необходимых зависимостей.
  • aptitude remove: удаление пакетов, а также обособленных зависимостей.
  • aptitude purge: удаление пакетов и обособленных зависимостей, а также ненужных конфигурационных файлов.
  • aptitude search: поиск пакетов по локальному списку apt.
  • aptitude update: обновление локального списка пакетов.
  • aptitude upgrade: обновление уже установленных пакетов по обновленному списку пакетов.
  • aptitude clean: удаление установочных файлов.
  • aptitude dist-upgrade: обновление пакетов, даже если некоторые из них не будут использованы для установки.
  • aptitude show: подробная информация о пакете.
  • aptitude autoclean: удаление устаревших пакетов, но сохранение текущих.
  • aptitude hold: исправление ошибок в пакете текущей версии, но не его обновление.

Сразу видно, что используется одна команда с разными удобночитаемыми вариантами (нет флагов). И это только верхушка айсберга. Например, используем aptitude при поиске пакета, результат — сортировка найденного в алфавитном порядке и краткое описание каждого пакета. Эта команда даже скажет вам, какие пакеты уже установлены в системе, в отличии от apt-cache, который выводит список пакетов в случайном и неудобно читаемом порядке.

Aptitude превосходит apt-get: лучшая обработка зависимостей, удобный интерфейс, ОДИН инструмент и др.

система помощи Aptitude (русскоязычный вариант):

HELP по APTITUDE

  • install - Установить/обновить пакеты
  • remove - Удалить пакеты
  • purge - Удалить пакеты и их файлы конфигурации
  • hold - Зафиксировать пакеты
  • unhold - Отменить команду hold для пакета
  • markauto - Пометить пакет, что он был установлен автоматически
  • unmarkauto - Пометить пакет, что он был установлен вручную
  • forbid-version - Запретить aptitude обновлять определённую версию пакета.
  • update - Загрузить список новых/обновлённых пакетов
  • safe-upgrade - Perform a safe upgrade
  • full-upgrade - Perform an upgrade, possibly installing and removing packages
  • forget-new - Забыть, какие пакеты «новые»
  • search - Поиск пакета по имени и/или выражению
  • show - Показать подробную информацию о пакете
  • clean - Удалить загруженные файлы пакетов
  • autoclean - Удалить старые загруженные файлы пакетов
  • changelog - Посмотреть changelog пакета
  • download - Загрузить файл .deb для пакета
  • reinstall - Загрузить и (возможно) переустановить уже установленный пакет

Параметры:

-h             Этот текст помощи
-s             Имитировать действия, но не выполнять их на самом деле.
-d             Только загрузить пакеты, ничего не устанавливать и не удалять.
-P             Всегда спрашивать подтверждение или действия
-y             Предполагать ответ 'yes' на простой вопрос yes/no
-F format      Задать формат отображения результатов поиска; смотрите руководство
-O order       Задать формат сортировки результатов поиска; смотрите руководство
-w width       Задать ширину вывода результатов поиска
-f             Принудительно исправлять неработоспособные пакеты.
-V             Показывать версию устанавливаемых пакетов.
-D             Показывать зависимости автоматически изменяемых пакетов.
-Z                 Показывать изменение размера установки каждого пакета.
-v             Отображать дополнительную информацию. (может быть введено несколько раз)
-t [release]   Задать выпуск, из которого должны быть установлены пакеты
-q             Не выводить индикатор прогресса в режиме командной строки.
-o key=val     Вручную установить значение параметра настройки с именем 'key'
--with(out)-recommends Указать, будут ли рекомендуемые пакеты
               трактоваться как строгие зависимости
-S fname       Читать aptitude информацию о расширенном статусе из fname.
-u             Загрузить список новых пакетов при запуске.
-i             Запустить установку при запуске.


Актуальность: 2011/03/02 10:25