Базовые команды apt-get и apt-cache

Утилита apt-get — производительная свободная консольная программа, используемая и работающая с библиотекой APT (Advanced Packaging Tool) для выполнения установки новых пакетов с ПО, удаления существующих, обновления установленых, а также для обновления всей операционной системы.

Консольная утилита apt-cache используется для поиска в кеше программных пакетов APT. Говоря простыми словами, этот инструмент, используется для поиска пакетов, сбора информации о пакетах и поиска пакетов, доступных для установки в операционных системах, основанных на Debian или Ubuntu.

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

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

apt-cache pkgnames
Как можно найти имя пакета и его описание.

Чтобы найти название пакета и его описание перед установкой, используйте флаг «search». Использование “search” c apt-cache отобразит список подходящих пакетов с кратким описанием. Например, вы хотите найти описание пакета vsftpd: чтобы сделать это, команда должна быть вот такой:

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

apt-cache pkgnames vsftpd
Как я могу просмотреть информацию о пакете?

Например, если вы хотите ознакомиться с информацией о пакете, с его кратким описанием, отображающим номер версии, контрольные суммы, размер, размер после установки, категории и так далее, вы можете использовать подкоманду «show», как показано ниже:

apt-cache show netcat
Как можно проверить зависимости какого-либо пакета?

Чтобы проверить зависимости конкретного пакета, вы можете использовать подкоманду showpkg, чтобы узнать, установлены эти зависимости или нет. Например, используйте команду showpkg вместе с названием пакета.

apt-cache showpkg vsftpd
Как можно просмотреть статистику кэша?

Подкоманда stats отобразит полную статистику о кеше, например, полное число пакетов, найденное в кеше. Используйте такую команду:

apt-cache stats
Как обновить список пакетов в системе?

Команда update используется для синхронизации и обновления индексных файлов пакетов. Синхронизация происходит с источниками, указанными в файле /etc/apt/sources.list. Эту команду можно использовать, например, чтобы не упускать важные обновления пакетов.

sudo apt-get update
Как обновить пакеты в системе?

Команда upgrade используется для обновления всего установленного на данный момент софта в вашйе системе. Иногда может получиться так, что обновление установить нельзя из-за какого-либо другого пакета, который требует старую версию.

sudo apt-get upgrade
Но если вы хотите обновиться вне зависимости от требований пакетов, используйте подкоманду dist-upgrade:

sudo apt-get dist-upgrade
Как я могу установить или обновить какой-либо конкретный пакет?

Подкоманда install используется для установки или обновления какого-либо пакета.

sudo apt-get install netcat
Как я могу установить несколько пакетов сразу?

Вы можете ввести названия нескольих пакетов, чтобы установить их одновременно. Например, чтобы установить пакеты nethogs и goaccess, вы можете выполнить следующую команду:

sudo apt-get install nethogs goaccess
Как установить несколько пакетов по «маске» названия

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

sudo apt-get install *name*
Как установить пакеты без обновления.

Использование флага –no-upgrade предотвратит обновление уже установленных пакетов.

sudo apt-get install packageName --no-upgrade
Как только обновить определенные пакеты?

Флаг –only-upgrade не установит новые пакеты, а только обновит существующие.

sudo apt-get install имя_пакета --only-upgrade
Как я могу установить определенную версию пакета?

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

sudo apt-get install vsftpd=2.3.5-3ubuntu1
Как удалить пакеты без удаления настроек?

Чтобы удалить программные пакеты без удаления их конфигурационных файлов (для дальнейшего их использования), используйте команду remove как показано.

sudo apt-get remove vsftpd
Как полностью удалить пакеты?

Чтобы удалить пакет вместе с его файлами настроек, используете подкоманду purge, как показано ниже.

sudo apt-get purge vsftpd
Или вы можете объединить обе команды, вот так:

sudo apt-get remove --purge vsftpd
Как можно очистить место на диске?

Команда clean используется для освобождения дискового пространствва за счет удаления полученных .deb-файлов пакетов в вашем локальном репозитории.

sudo apt-get clean
Как только загрузить исходный код пакета?

Чтобы только загрузить исходный код пакета, вы можете использовать опцию –download-only source с именем пакета, например:

sudo apt-get --download-only source vsftpd
Как можно загрузить и распаковать пакет?

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

sudo apt-get source vsftpd
Как можно загрузить, распаковать и скомпилировать исходный код пакета?

Вы также можете загрузить, распаковать и скомпилировать исходный код пакета, используя опцию ‘–compile‘, как показано ниже:

sudo apt-get --compile source goaccess
Как загрузить пакет без установки

Используя опцию «download», вы можете загрузить любой пакет, не устанавливая его. Например, следующая команда только загрузит пакет nethogs в текущую рабочую директорию.

sudo apt-get download nethogs
Как можно просмотреть лог изменений (changelog) пакета?

Флаг changelog загружает лог изменений пакета и отображает версию пакета, если он установлен.

sudo apt-get changelog vsftpd
Как можно исправить сломанные зависимости?

Команда «check» — инструмент для диагностики, он используется для обновления кеша пакетов и проверки на сломанные зависимости.

sudo apt-get check
Как можно найти и собрать зависимости?

Команда build-dep ищет и устанавливает собранные зависимости нужного пакета. Если пакет отсутствует в локальном репозитории, вы получите ошибку.

sudo apt-get build-dep netcat
Как можно автоматически очистить кеш Apt-Get?

Команда autoclean удаляет все .deb-файлы из /var/cache/apt/archives для освобождения свободного места на жестком диске.

sudo apt-get autoclean
Как можно автоматически удалить ненужные пакеты?

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

sudo apt-get autoremove vsftpd