Популярные примеры команд apt в Ubuntu / Debian Linux

Популярные примеры команд apt в Ubuntu / Debian Linux

Я новый системный администратор Linux. Как использовать утилиту командной строки apt для управления пакетами на сервере Ubuntu Linux LTS и Debian Linux? Как я могу использовать команду apt для управления пакетами? Можете ли вы предоставить подходящие примеры команд для новых разработчиков?

APT означает Advanced Package Tool. Это набор основных инструментов внутри системы Debian и Ubuntu Linux. Вы можете использовать команду apt для установки приложений, удаления или удаления приложений, обновления сервера Ubuntu / Debian и многого другого. Подходит для работы с командой dpkg для установки и обновления системы. Я настоятельно рекомендую вам использовать команду apt, чтобы не печатать в командной строке. На этой странице представлены примеры подходящих команд для новых пользователей Linux.

Команда apt-get — это первый интерфейсный инструмент. apt — это второй инструмент, который устраняет некоторые проектные ошибки команды apt-get. Следовательно, вы должны использовать команду apt. Эта команда обеспечивает более приятный интерфейс, включая индикаторы выполнения и цвета в интерфейсе командной строки. Он предоставляет те же функции, что и специализированные инструменты APT, такие как apt-get и apt-cache, но по умолчанию включает параметры, более подходящие для интерактивного использования.

 

Синтаксис

Базовый синтаксис следующий:
apt [options] command
apt [options] command pkg1
apt [options] command pkg1 pkg2

Примеры команды apt

Давайте посмотрим, как использовать команду apt для установки обновлений безопасности или нового набора пакетов на сервере Ubuntu или Debian Linux

Как получать обновления

Чтобы загрузить информацию о пакете из всех настроенных источников, введите:
$ sudo apt update

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

Чтобы обновить все пакеты, установленные в настоящее время в системе, выполните:
$ sudo apt upgrade
Примеры выходных данных:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following NEW packages will be installed:
  libboost-random1.58.0 liblvm2app2.2
  linux-headers-4.4.0-16
  linux-headers-4.4.0-16-generic
  linux-image-4.4.0-16-generic
  linux-image-extra-4.4.0-16-generic
The following packages will be upgraded:
  apport bsdutils dbus dmeventd dmsetup ethtool
  gcc-5-base geoip-database grub-legacy-ec2
  libblkid1 libdbus-1-3 libdevmapper-event1.02.1
  libdevmapper1.02.1 libfdisk1 libglib2.0-0
  libglib2.0-data liblvm2cmd2.02 liblxc1 libmount1
  libpam-cgfs libpam-systemd libpython3.5-minimal
  libpython3.5-stdlib librados2 librbd1
  libsmartcols1 libstdc++6 libsystemd0 libudev1
  libuuid1 linux-generic linux-headers-generic
  linux-image-generic lvm2 lxc lxc-common
  lxc-templates lxc1 lxcfs lxd lxd-client mount
  openssh-client openssh-server openssh-sftp-server
  python3-apport python3-lxc python3-problem-report
  python3.5 python3.5-minimal sudo systemd
  systemd-sysv tzdata ubuntu-minimal ubuntu-standard
  udev util-linux uuid-runtime
59 upgraded, 6 newly installed, 0 to remove and 0 not upgraded.
Need to get 96.4 MB of archives.
After this operation, 297 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://us.archive.ubuntu.com/ubuntu xenial/main amd64 bsdutils amd64 1:2.27.1-6ubuntu2 [51.6 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu xenial/main amd64 util-linux amd64 2.27.1-6ubuntu2 [847 kB]
Get:3 http://us.archive.ubuntu.com/ubuntu xenial/main amd64 mount amd64 2.27.1-6ubuntu2 [121 kB]
Get:4 http://us.archive.ubuntu.com/ubuntu xenial/main amd64 dbus amd64 1.10.6-1ubuntu3 [141 kB]
Get:5 http://us.archive.ubuntu.com/ubuntu xenial/main amd64 libdbus-1-3 amd64 1.10.6-1ubuntu3 [161 kB]
Get:6 http://us.archive.ubuntu.com/ubuntu xenial/main amd64 systemd-sysv amd64 229-3ubuntu2 [17.3 kB]
...
....
..
Setting up lxd (2.0.0~rc8-0ubuntu2) ...
Setting up liblvm2cmd2.02:amd64 (2.02.133-1ubuntu8) ...
Setting up dmeventd (2:1.02.110-1ubuntu8) ...
Setting up lvm2 (2.02.133-1ubuntu8) ...
update-initramfs: deferring update (trigger activated)
Processing triggers for shared-mime-info (1.5-2) ...
Processing triggers for libc-bin (2.23-0ubuntu2) ...
Processing triggers for initramfs-tools (0.122ubuntu6) ...
update-initramfs: Generating /boot/initrd.img-4.4.0-16-generic

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

Примечание о применении пакетов и обновлений безопасности

Просто введите следующие две команды, чтобы применить все обновления безопасности и пакетов:
$ sudo apt update && sudo apt upgrade
Чтобы увидеть список пакетов, которые можно обновить в системе, введите:
$ apt list --upgradable

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

Команда full-upgrade выполняет функцию обновления, но удаляет установленные пакеты, если это необходимо для обновления системы в целом. Это полезно, когда пакеты не обновляются или вы хотите установить Ubuntu с версии 16.04 по 16.04.1:
$ sudo apt full-upgrade

Установить новые пакеты:

Чтобы установить новый пакет под названием nginx, введите:
$ sudo apt install {pkgNameHere}
$ sudo apt install nginx

Как удалить пакеты

Чтобы удалить или удалить пакет с именем nginx, введите:
$ sudo apt remove {pkgNameHere}
$ sudo apt remove nginx

Все файлы будут удалены, кроме файлов конфигурации в системе..

ОПЦИЯ ОЧИСТКИ ДЛЯ УДАЛЕНИЯ ФАЙЛОВ ПАКЕТА И КОНФИГУРАЦИИ

При удалении пакета удаляются все упакованные данные, но обычно остаются небольшие (измененные) файлы конфигурации пользователя на случай, если удаление было случайным. Простая отправка запроса на установку для случайно удаленного пакета восстановит его работу, как и раньше в этом случае. С другой стороны, вы можете избавиться от этих остатков, вызвав purge даже для уже удаленных пакетов:
$ sudo apt purge {pkgNameHere}
$ sudo apt purge nginx
$ sudo apt purge nginx nginx-core nginx-common

ОПЦИЯ АВТОУДАЛЕНИЯ

Параметр autoremove используется для удаления пакетов, которые были автоматически установлены для удовлетворения зависимостей для других пакетов и теперь больше не нужны, поскольку зависимости изменились или пакет (ы), требующий их, был удален за это время. Например, когда вы обновляете ядро ​​Linux до 4.1.5, вам может не понадобиться ядро ​​Linux версии 3.8.5. Синтаксис:
$ sudo apt autoremove
$ sudo apt --purge autoremove

Искать пакеты

Опцию поиска можно использовать для поиска данного регулярного выражения. Для поиска пакетов php введите: Примеры выходных данных::
$ apt search php
$ apt search mysql-5.?
$ apt search mysql-server-5.?
$ apt search httpd*
$ apt search ^apache
$ apt search ^nginx
$ apt search ^nginx$

Найти информацию о пакетах

Чтобы показать или просмотреть информацию о данном пакете (ах), включая его зависимости, размер установки и загрузки, источники, из которых доступен пакет, описание содержимого пакетов и многое другое:

$ apt show {pkgNamehere}
$ apt show nginx
$ apt show sudo

Примеры выходных данных:

Package: sudo
Version: 1.8.19p1-1
Priority: optional
Section: admin
Maintainer: Bdale Garbee <bdale@gag.com>
Installed-Size: 3106 kB
Depends: libaudit1 (>= 1:2.2.1), libc6 (>= 2.17), libpam0g (>= 0.99.7.1), libselinux1 (>= 1.32), libpam-modules, lsb-base
Conflicts: sudo-ldap
Replaces: sudo-ldap
Homepage: http://www.sudo.ws/
Tag: admin::login, admin::user-management, implemented-in::c,
 interface::commandline, role::program, scope::utility,
 security::authentication, use::login
Download-Size: 1054 kB
APT-Sources: http://httpredir.debian.org/debian stretch/main amd64 Packages
Description: Provide limited super user privileges to specific users
 Sudo is a program designed to allow a sysadmin to give limited root
 privileges to users and log root activity.  The basic philosophy is to give
 as few privileges as possible but still allow people to get their work done.
 .
 This version is built with minimal shared library dependencies, use the
 sudo-ldap package instead if you need LDAP support for sudoers.

Как перечислить пакеты

Чтобы вывести список всех пакетов, введите:

$ apt list
$ apt list | more
$ apt list | grep foo
$ apt list | grep php7-

Чтобы отобразить список пакетов, удовлетворяющих определенным критериям, введите:
$ apt list nginx
$ apt list 'php7*'

Политику пакета apt

Введите команду:
$ apt list -a {pkgNameHere}
$ apt list -a sudo

Примеры выходных данных:

Listing... Done
sudo/zesty,now 1.8.19p1-1ubuntu1 amd64 [installed]

Список всех установленных пакетов

Синтаксис:
$ apt list --installed
$ apt list --installed | grep {pkgNameHere}

 

Список зависимостей пакета

Параметр зависимости показывает список каждой зависимости, имеющейся в пакете, и всех возможных других пакетов, которые могут выполнять эту зависимость. Например:
$ apt depends {pkgNameHere}
$ apt depends sudo

Примеры выходных данных:

sudo
  Depends: libaudit1 (>= 1:2.2.1)
  Depends: libc6 (>= 2.17)
  Depends: libpam0g (>= 0.99.7.1)
  Depends: libselinux1 (>= 1.32)
  Depends: libpam-modules
  Depends: lsb-base
  Conflicts: sudo-ldap
  Replaces: sudo-ldap

Выполнять рекурсивные списки зависимостей, аналогичные apt-cache?

Синтаксис:
$ apt rdepends {pkgNames}
$ apt rdepends sudo

Удержание пакета означает, что его нельзя обновить, пока вы снова не отключите его. Синтаксис:
$ apt hold {pkgName}
$ apt hold sudo

Как снять пакет с удержания?

Синтаксис
$ apt unhold {pkgName}
$ apt unhold sudo

Отредактировать файл исходной информации, например /etc/apt/sources.list?

Синтаксис:
$ sudo apt edit-sources

Параметры команды apt

На странице руководства по команде apt:

  list - список пакетов на основе имен пакетов
  search - поиск по описанию пакетов
  show - показать детали пакета
  install - установить пакеты
  remove - удалить пакеты
  autoremove - автоматически удаляет все неиспользуемые пакеты
  update - обновить список доступных пакетов
  upgrade - обновить систему путем установки / обновления пакетов
  full-upgrade - обновить систему путем удаления / установки / обновления пакетов
  edit-sources - редактировать файл исходной информации
Вывод

Мы объяснили подходящие команды с множеством практических примеров для новых и опытных системных администраторов / разработчиков.


Прокрутить вверх