20 полезных команд apt-get и 5 удобных команд apt-cache для управления пакетами

20 полезных команд apt-get и 5 удобных команд apt-cache для управления пакетами

Это краткое руководство расскажет Вам о том, как работать с пакетами программного обеспечения в дистрибутивах Linux на базе Debian / Ubuntu. Вы научитесь использовать команды apt-get и apt-cache для выполнения следующих операций с пакетами:

  • поиска;
  • установки;
  • обновления;
  • удаления.

Давайте приступим к рассмотрению возможностей этого простого и удобного инструмента системного администрирования.

Содержание:

    1. Что такое apt-get
    2. Что такое apt-cache
    3. Топ-5 полезных базовых примеров использования команды apt-cache
      1. Как просмотреть все доступные пакеты
      2. Как узнать имя пакета и описание программного обеспечения
      3. Как посмотреть информацию о пакете
      4. Как проверить зависимости для конкретных пакетов
      5. Как проверить статистику кэша
    4. Топ-20 полезных базовых примеров использования команды apt-get для управления пакетами
      1. Как обновить системные пакеты
      2. Как обновить пакеты программного обеспечения
      3. Как установить или обновить конкретные пакеты
      4. Как установить несколько пакетов одновременно
      5. Как установить несколько пакетов с помощью шаблонной маски
      6. Как установить пакеты без их обновления
      7. Как не устанавливать, а только обновить пакеты
      8. Как установить конкретную версию пакета
      9. Как удалить пакет без очистки его настроек
      10. Как полностью удалить пакет
      11. Как я могу освободить дисковое пространство
      12. Как загрузить только исходный код пакета
      13. Как загрузить и распаковать пакет
      14. Как загрузить, распаковать и скомпилировать пакет
      15. Как загрузить и не устанавливать пакеты
      16. Как проверить журнал изменения пакетов
      17. Как выполнить поиск неисправностей
      18. Как искать и строить зависимости
      19. Как быстро очистить apt-get cache
      20. Как автоматически удалить установленные пакеты
    5. Выводы

Что такое apt-get

Итак, apt-get — это бесплатная утилита командной строки, предназначенная для управления пакетами. Она связана с с библиотекой программного обеспечения APT (Advanced Packaging Tool). Дистрибутив Ubuntu как использует ее в качестве основного источника ПО для обеспечения потребностей операционной системы.

Важно: в последних версиях дистрибутива Ubuntu вместо apt-get можно использовать сокращенную команду apt.

Что такое apt-cache

Не менее часто используется apt-cache. Это утилита командной строки, предназначенная для поиска в кэше утилиты apt. В дистрибутивах Линукс (системах на основе Debian / Ubuntu) она применяется для обнаружения пакетов, готовых к установке, а также — с целью сбора данных о пакетах программного обеспечения.

Топ-5 полезных базовых примеров использования команды apt-cache

Давайте рассмотрим пять элементарных и при этом полезных примеров использования команды apt-cache.

Как просмотреть все доступные пакеты

Следующая команда поможет Вам увидеть все пакеты, которые доступны для установки:

 

В результате вывод команды будет выглядеть как список:

Как узнать имя пакета и описание программного обеспечения

В утилите предусмотрена возможность узнать имя пакета — для этого предназначена опция search. При ее использовании Вы увидите список пакетов ПО, каждый из пунктов которого дополнен кратким описанием. К примеру, так будет выглядеть команда, если использовать в качестве аргумента vsftpd:

 

Тогда как результат поиска с описанием будет выглядеть так:

 

Скорее всего, вам может понадобиться список всех пакетов, начинающихся с определенной комбинации символов. На примере vsftpd ввод будет выглядеть так:

 

И тогда утилита найдет для Вас пакет vsftpd:

Как посмотреть информацию о пакете

Предположим, что Вас интересует следующая информация о выбранном пакете:

  • номер версии;
  • размер;
  • зависимости;
  • хэш.

Тогда следует воспользоваться опцией show:

 

В результате, если использовать как пример netcat, Вы увидите следующие данные:

Как проверить зависимости для конкретных пакетов

Зависимости пакета — это другие пакеты, обязательные для его работы. Чтобы просмотреть список зависимостей выбранного пакета — воспользуйтесь опцией showpkg. Для примера снова используем пакет vsftpd:

 

В результате утилита покажет все известные зависимости ПО и отобразит их статус (установлены или нет):

Как проверить статистику кэша

Также Вам может пригодиться опция stats, которая показывает статистику о кэше. Она позволяет увидеть итоговые имена пакетов — список всего, что найдено в кэше:

 

В результате статистика кэша будет выглядеть примерно так:

Топ-20 полезных базовых примеров использования команды apt-get для управления пакетами

Скорее всего, наиболее часто Вы будете использовать команду apt-get (или ее укороченный вариант — apt). Потому давайте рассмотрим двадцать полезных примеров ее использования.

Как обновить системные пакеты

Специально для повторной синхронизации кэша пакетов с источниками предназначена опция update (список источников хранится в файле /etc/apt/sources.list). После ее использования команда скачает кэш из соответствующих репозиториев и обновит версии пакетов. Пример ввода будет выглядеть так:

 

В результате Вы должны увидеть в выводе отчет о синхронизации кэша:

Как обновить пакеты программного обеспечения

Самый востребованный вариант использования команды — обновление установленного программного обеспечения. И для этой цели нужно воспользоваться опцией upgrade.

Важно: опция не удаляет уже установленные в операционной системе пакеты. Также не скачиваются и не устанавливаются ранее отсутствующие в ОС пакеты, являющиеся зависимостями установленных программ.

Ввод будет выглядеть следующим образом:

 

В результате Вы должны увидеть примерно следующий отчет о процессе обновления пакетов:

 

Вам может понадобиться обновление пакетов с соблюдением всех зависимостей и разрешением конфликтом между пакетами (за счет удаления ПО с низким приоритетом). Специально на такой случай была предусмотрена опция dist-upgrade. Ее использование будет выглядеть следующим образом:

Как установить или обновить конкретные пакеты

Самый простой и часто используемый вариант применения команды — это установка ПО. Для этого воспользуйтесь опцией install и в качестве примера снова попробуйте netcat:

 

В результате Вы должны увидеть в командной строке Linux отчет об установке пакета netcat:

Как установить несколько пакетов одновременно

Но кто в наше время устанавливает пакеты программного обеспечения по одному? Вероятно Вам нужно будет устанавливать сразу несколько утилит — и это реально сделать все с той же опцией install. Просто напишите названия через пробел — мы решили взять для примера пакеты nethogs и goaccess:

 

В результате в терминале Вы увидите отчет об успешной установке обоих пакетов — и nethogs, и goaccess:

Как установить несколько пакетов с помощью шаблонной маски

Конечно же, предыдущий метод хорош только в том случае, если пакетов, подлежащих установке, несколько. Однако прописывать вручную много имен пакетов в команде может быть утомительно. И особенно нерационально использовать данный метод, если в названиях утилит есть общее слово или сочетание символов. Чтобы установить все программы, соответствующие заданному запросу, просто воспользуйтесь метасимволом «*», выделив ими шаблонную маску (регулярное выражение):

Как установить пакеты без их обновления

Возможно, при установке ПО Вам не захочется обновлять все пакеты. Например, потому что их старые и проверенные версии лучше подходят для Вашей работы. Специально на такой случай предусмотрена опция --no-upgrade:

 

В результате будет отображен процесс установки пакета packageName без обновления уже установленных пакетов:

Как не устанавливать, а только обновить пакеты

Возможна и обратная ситуация — когда Вам нужно будет лишь обновить установленные пакеты. Для этого предусмотрена опция --only-upgrade:

 

В результате в командной строке будет отображен отчет о процессе обновления пакетов без установки самого ПО:

Как установить конкретную версию пакета

Также часто возникает необходимость в установке определенной версии выбранного пакета. Сделать это совсем просто — добавьте после имени пакета символ «=» (знак равенства) и укажите после него желаемую версию:

 

В результате в командной строке будет отображен отчет о процессе установки пакета с указанной Вами версией:

Как удалить пакет без очистки его настроек

Предположим, что Вы хотите удалить тот или иной пакет программного обеспечения. Однако предполагаете, что в будущем будете использовать его снова и не хотите терять актуальные файлы настроек. Самый удобный способ сделать это — опция remove:

 

В результате утилита покажет отчет об удалении ПО:

Как полностью удалить пакет

С другой стороны, некоторые пакеты Вы будете удалять раз и навсегда, а потому нет смысла засорять память компьютера лишними файлами настроек. На такой случай есть соответствующая опция команды — purge:

 

В результате Вы должны увидеть в терминале отчет о процессе полного удаления пакета:

 

Кроме того, существует возможность объединить предыдущую remove с опцией --purge:

 

В результате в консоли Линукс будет отображен процесс полного удаления пакета:

Как освободить дисковое пространство

Рано или поздно станет актуальной проблема освобождения дискового пространства. Сделать это поможет очистка извлеченных / загруженных файлов (пакетов) .deb из локального репозитория. Для этого предназначена отдельная опция — clean:

Как загрузить только исходный код пакета

Также опытные пользователи могут захотеть загрузить лишь исходный код указанного пакета. Для решения подобной задачи используется опция –download-only source. Давайте попробуем ввести следующую команда, для примера снова взяв пакет vsftpd:

 

В командной строке будет отображен отчет о результатах загрузки исходного кода пакета vsftpd:

Как загрузить и распаковать пакет

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

 

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

Как загрузить, распаковать и скомпилировать пакет

Существует возможность скачать, распаковать и скомпилировать исходный код пакета. Для этого есть отдельная опция — --compile. Давайте попробуем использовать ее, в качестве примера взяв утилиту goaccess:

 

В результате в консоли Вы должны увидеть отчет о процессе компиляции goaccess:

Как загрузить и не устанавливать пакеты

Предположим, что Вы желаете загрузить, но не устанавливать тот или иной набор ПО. Безусловно, и такая возможность была предусмотрена создателями менеджера apt-get. Просто воспользуйтесь опцией download. Давайте используем ее для скачивания nethogs в текущий рабочий каталог:

 

В результате отчет в консоли будет показывать, что пакет nethogs просто скачан и не установлен:

Как проверить журнал изменения пакетов

Довольно часто Вам придется сверять версии пакетов, установленных в ОС, а также искать те из них, которые изменились. Для этой цели предусмотрена опция changelog, которая загружает журнал изменений пакетов и показывает их установленные версии:

 

В результате Вы должны увидеть в выводе консоли процесс загрузки журнала изменений:

Как выполнить поиск неисправностей

Бывает и так, что некоторые пакеты работают некорректно. Однако и на такой случай есть отдельная опция утилиты — check. Давайте попробуем с ее помощью провести диагностику — обновить кэш пакетов и проверить их на наличие неполадок:

 

В результате будет отображен отчет о процессе поиска неисправностей:

Как искать и строить зависимости

Полезной для Вас может оказаться опция build-dep, которая примечательна тем, что выполняет поиск локальных репозиториев в системе и устанавливает все зависимости пакета. Однако в том случае, если пакет отсутствует в локальном репозитории — будет выведен код ошибки. Попробуем использовать опцию, снова взяв в качестве примера netcat:

 

В результате в выводе утилиты будет отображен процесс поиска зависимостей для пакета netcat:

Как быстро очистить apt-get cache

В работе с Linux может возникнуть потребность в очистке кэша. На такой случай предусмотрена опция autoclean, которая очищает содержимое каталога /var/cache/apt/archives (все файлы .deb) и позволяет освободить занятое ими дисковое пространство.

Пример ввода будет выглядеть следующим образом:

 

В результате Вы должны увидеть отчет о процессе очистки загруженных пакетов:

Как автоматически удалить установленные пакеты

После удаления некоторых пакетов в системе могут остаться их зависимости. Безусловно, многие из них без основного пакета больше не нужны Вашему дистрибутиву. Однако они занимают дисковое пространство без какой-либо пользы. Конечно же, вам не придется искать такие пакеты вручную — лучше воспользуйтесь опцией autoremove:

 

В результате утилита выведет в командную строку отчет об удалении пакета vsftpd со всеми зависимостями:

Выводы

Мы рассмотрели большинство доступных опций с командами apt-get и apt-cache, но это далеко не все из них. Согласитесь, работать с этими командами оказалось довольно просто. Вы можете ознакомится с остальными опциями воспользовавшись страницами man: man apt-get или man apt-cache.

Спасибо за время, уделенное прочтению статьи!

Если возникли вопросы — задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Больше похожих постов

6 комментариев. Оставить новый

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения


Поиск по сайту
Лучшее
Популярное
Рубрики
Меню