Полное руководство по команде apt в Linux

Полное руководство по команде apt в Linux

Наверное, давно назревал вопрос о статье, раскрывающей основные аспекты применения менеджера пакетов apt в операционной системе Linux. Потому мы постараемся подробно и с примерами рассказать о том, как управлять пакетами.

Если вы пользовались хотя бы одним из дистрибутивов вроде Debian, Ubuntu или Linux Mint. (либо дистрибутивами, разработанными на их основе) — то должны были сталкиваться и apt.

Менеджер пакетов apt включен в стандартный набор инструментов дистрибутива Ubuntu начиная с версии 16.04. После чего начал стремительно приобретать все новых и новых ценителей. Все дело в том, что постоянно увеличивается число дистрибутивов Linux, родственных Ubuntu. В которых именно apt является утилитой для управления пакетами по умолчанию.

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

Содержание:

  1. Что представляет собой утилита apt
  2. Примеры использования утилиты apt в Linux на основе Debian и Ubuntu
    1. Обновление базы данных доступных пакетов с помощью команды apt update
    2. Обновление пакетов с помощью команды apt upgrade
      1. В чем состоят отличия между командами apt update и apt upgrade
    3. Установка нового пакета с помощью команды apt install
      1. Установка нескольких пакетов одновременно через apt
      2. Применение команды apt install к уже установленному пакету
      3. Установка пакета с помощью команды apt install без его обновления
      4. Обновление пакета без установки
      5. Установка конкретной версии пакета
    4. Удаление пакетов с помощью команд apt remove и apt purge
      1. Отличия между apt remove и apt purge
    5. Поиск пакетов с помощью команды apt search
    6. Просмотр информации о пакете с помощью команды apt show
    7. Вывод списка обновлений (установленных и доступных) пакетов с помощью команды apt list
    8. Использование команды apt autoremove для очистки системы
  3. Выводы

Что представляет собой утилита apt

Популярный дистрибутив Ubuntu Linux, созданный комапнией Canonical и позиционированный как дистрибутив, дружественный к новичкам, ведет свою родословную от Debian. При этом дистрибутив Debian Linux по умолчанию включает инструмент для управления пакетами dpkg. Стоит отметить, что dpkg — это система управления пакетами, отвечающая за порядок доступа системы к установке различных приложений.

Утилита apt (от англ. Advanced Package Tool) — это специальная надстройка на интерфейс командной строки, позволяющая удобно работать с системой управления пакетами dpkg. А именно — искать их, скачивать, обновлять, удалять и т.п.

Примеры использования утилиты apt в Linux на основе Debian и Ubuntu

В прошлом работа с менеджером пакетов apt осуществлялась за счет использования команды apt-get и различных субкоманд (install, update, upgrade, remove, purge, find и т.п.). По этой причине большинство примеров все еще использует именно такой формат — знакомый и привычный опытным пользователям. С другой стороны, в современных версиях дистрибутивов Linux уже можно командой apt вместо apt-get. И при этом результат будет точно таким же.

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

Команда apt в своей работе обращается к специальной базе данных, в которой содержится список доступных для скачивания и установки пакетов программного обеспечения. Конечно, если пользоваться устаревшей (неактуальной) версией такого списка — система не будет знать о тех пакетах, которые стали доступными недавно. Потому мы советуем после установки Linux обязательно провести обновление базы данных. И повторять эту операцию перед установкой любых утилит. Для этого введите в командную строку команду apt update:

 

Важно: большинство операций, выполняемых командой apt, требуют прав суперпользователя — не забывайте использовать команду sudo.

Вывод этой команды на экран включает данные о доступных пакетах, полученные от различных серверов.

sudo apt update

Каждая строка вывода начинается с одного из следующих идентификаторов:

  1. Hit — доступных обновлений для данного пакета сейчас нет.
  2. Ign — данный пакет игнорируется, так как его нельзя проверить или при проверке обновлений возник тривиальный сбой (не беспокойтесь, это не ошибка)
  3. Get — доступна для скачивания более новая версия пакета.

Кроме того, в конце строк с идентификатором Get вы увидите информация о загрузке (с размером в kB). Стоит отметить, что при выполнении этой команды загружается только информация о новой версии пакета, а не сам пакет.

Обновление пакетов с помощью команды apt upgrade

В том случае, если после обновления базы данных обнаружены новые версии пакетов — их можно обновить. Для этого с root-правами введите в командную строку команду apt upgrade:

 

После ее применение на экран будут выведены данные со списком и количеством обновляемых пакетов.

sudo apt upgrade

Также полное обновление всех пакетов, для которых имеются более свежие версии, возможно и другим способом. Для этого введите с root-правами введите в командную строку команду apt full-upgrade:

 

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

В чем состоят отличия между командами apt update и apt upgrade

Часто новички не понимают разницы между командами apt update и apt upgrade.

Команда apt update — только обновляет актуальную базу данных с доступными для установки пакетами программного обеспечения.

Предположим, что в вашей системе Linux имеется пакет N версии 1.3. Если выполнить команду apt update, то ваша база данных получит информацию о новой версии пакета N — 1.4.

В таком случае применение команды apt upgrade приведет к обновлению установленного пакета N до более актуальной версии.

Для экономии времени и сил — можно и нужно комбинировать данные команды. Для этого введите их, разеляя двойным амперсандом (&&).

 

Важно: добавление опции -y позволяет пользователю не подтверждать обновление каждого пакета перед его установкой.

Установка нового пакета с помощью команды apt install

Зная название конкретного пакета, можно выполнить его непосредственную установку на свою операционную систему Linux. Для этого введите в командную строку с правами суперпользователя команду apt install и название пакета вместо package_name:

 

Например, давайте укажем название net-tools, чтобы установить популярный инструмент для работы с сетевыми соединениями:

 

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

sudo apt install net-tools

Однако не всегда Вы будете точно помнить или знать название нужных пакетов. В таком случае можно попробовать ввести несколько первых букв названия и нажать клавишу Tab на клавиатуре. Тогда утилита выведет список пакетов, которые включают аналогичную комбинацию символов.

sudo apt install net-t

Установка нескольких пакетов одновременно через apt

Устанавливать большое количество пакетов по одному — не очень удобно и рационально. К счастью, команда apt install предусматривает возможность установки сразу нескольких пакетов. Для этого перечислите их через пробел в качестве отдельных аргументов команды:

 

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

Применение команды apt install к уже установленному пакету

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

Установка пакета с помощью команды apt install без его обновления

Как мы уже писали ранее, возможны ситуации, при которых пользователю нужно избежать несанкционированного обновления пакета при попытке установки. В таком случае следует ввести в командную строку с правами суперпользователя команду apt install с опцией --no-upgrade(для примера мы снова использовали уже знакомый Вам пакет net-tools):

 

--no-upgrade

Обновление пакета без установки

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

Установка конкретной версии пакета

При обычном использовании команды apt install всегда устанавливается самая свежая из доступных версий пакетов программного обеспечения. Однако бывают ситуации, когда Вам нужна более старая версия программы. Например, для обеспечения совместимости с другими утилитами. Или по причине поддержки специфического аппаратного обеспечения. В таком случае Вы можете установить определенную версию нужного пакета. Для этого введите с root-правами в командную строку команду apt install. И затем тут же без пробелов после названия пакета — добавьте знак равенства (=) и нужную Вам версию программы:

Удаление пакетов с помощью команд apt remove и apt purge

Скорее всего, рано или поздно у вас возникнет необходимость удалить тот или иной установленный пакет. К счастью, сделать это не сложнее, чем удалить или обновить его. Просто введите в командную строку с правами суперпользователя команду apt remove:

 

sudo apt remove net-tools

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

Помимо команды apt remove предусмотрен и другой способ удаления пакетов — команда apt purge:

Отличия между apt remove и apt purge

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

  • apt remove — удаляет все двоичные файлы пакета, но сохраняет файлы с настройками;
  • apt purge — удаляет и сам пакет, и его файлы настроек.

Предположим, что вы воспользуетесь командой apt remove для удаления приложения. А затем через какое-то время повторно его установите. В таком случае данное программное обеспечение считает сохранившиеся файлы настроек. То есть, Вы можете как задать новые настройки, так и применить старые — ранее установленные.

С другой стороны, команда apt purge поможет, если у вы допустили ошибку во время первичной настройки программы. Тогда можно полностью очистить свой операционную систему от данного пакета ПО и его файлов с настройками. А потом, в случае необходимости, попробовать заново и произвести чистую установку. В большинстве случаев, все же, для удаления пакетов достаточно использовать команду apt remove.

Поиск пакетов с помощью команды apt search

С помощью утилиты Вы также можете легко найти все пакеты, соответствующие заданному поисковому запросу. Для этого введите в командную строку команду apt search:

 

apt search

Просмотр информации о пакете с помощью команды apt show

Скорее всего, у вас будет часто возникать необходимость узнать больше о том или ином пакете. Особенно — вы тех случаях, когда по одному лишь названию непонятно, для чего предназначена программа. В таком случае введите в командную строку команду apt show и название интересующего Вас пакета (вместо package_name):

 

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

  • размер пакета (отдельно в скачанном и в установленном виде);
  • из каких источников доступен пакет;
  • содержимое пакета.

apt show

Вывод списка обновлений (установленных и доступных) пакетов с помощью команды apt list

В актуальной версии утилиты apt добавлена дополнительная команда — apt list. С ее помощью можно, например, вывести на экран все пакеты, для которых найдены доступные обновления. Для этого введите в командную строку команду apt list с опцией --upgradeable:

 

Если обновления для установленных пакетов есть — система выведет их на экран.

apt list

Кроме того, с помощью команды list можно легко вывести список установленных пакетов, добавив опцию –installed:

 

Также Вы можете вывести на экран все пакеты, доступные для вашей операционной системы Linux. Для этого введите в командную строку команду apt list с опцией --all-versions:

 

Важно: вывод команды apt list (особенно в сочетании с опцией --all-versions) может быть громоздким — используйте его фильтрацию с помощью команды grep.

Использование команды apt autoremove для очистки системы

Старая утилита apt-get не обладает функцией autoclean, применяющейся для очистки места в дистрибутиве Ubuntu. Для этого Вы можете ввести в командную строку команду apt autoremove с правами root:

 

В результате Вы удалите данные, относящиеся к уже удаленным ранее пакетам. То есть — все то, что уже не используется, но все еще сохраняется на дисковом пространстве и зря занимает место.

apt autoremove

Выводы

Умение использовать менеджер пакетов apt и его субкоманды существенно расширит Ваши возможности при работе с дистрибутивами Linux на основе Debian (особенно — с Ubuntu). К счастью, большинство функций утилиты интуитивно понятны и дополнены простыми подсказками. Надеемся, что данное руководство поможет Вам быстрее разобраться в особенностях поиска, установки, обновления и удаления пакетов программного обеспечения.

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

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

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

Чтобы знать больше и выделяться знаниями среди толпы 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, подайте заявку или получите бесплатную консультацию.

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

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

  • Степан
    17 июля 2018 16:44

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

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

      Ответить
  • Большое спасибо,за простое и доходчивое пояснение первых команд в терминале Линукс для “чайников” и всех начинающих.Т.Е. всех сремящихся к новому.Особое благодарность автору за потраченное время и терпение.Здоровья Вам и всей Ваше семье.Благополучия в жизни.

    Ответить
  • Что значит -y в этой строчке sudo apt update && sudo apt upgrade -y?

    Ответить
  • Здравствуйте. В процессе установки libwebkitgtk-3.0-0 с помощью apt install, менеджер пакетов запрашивает ввод числовых аргументов (номер страны раскладки клоавиатуры, номер раскладки и т.д). Возможно ли эти числа указать как-либо подобно указанию -y? Или нужно копать в сторону конфигурационных файлов?

    Ответить
  • Как узнать название нужной программы? Такое впечатление, что нужное приложение или програмаа и пакет это одно и то же. Или нет?
    Например, apt install net-tools. Откуда узнать, что это именно net-tools, а не nettols, net_tols, net tools и т.д.? Например, нужен редактор чего-нибудь, скажем, картинок. Где узнать, что вводить после apt install?

    И для того, чтобы нужное устанавливалось, наверное, где-то надо прописать адрес «магазина приложений», адрес репозитория то бишь, а иначе ничего не установится. Где узнать адреса репозиториев? Все ли они подходят?

    Ответить

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

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

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

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