APT або Advanced Package Tool — це утиліта командного рядка для керування пакетами в дистрибутивах на основі Debian/Ubuntu.
Це один із доступних менеджерів пакунків разом із apt-get, але, як і інші, він дозволяє встановлювати, змінювати або видаляти різні пакунки, не будуючи їх із вихідного коду. Він може виконувати набагато більше дій, пов’язаних із керуванням пакунками, які ми розглянемо в наступних розділах.
Загальний синтаксис використання команди apt такий:
$ apt [COMMAND] [PACKAGE]
Не забувайте використовувати sudo з apt, оскільки багато його підкоманд вимагатимуть привілеїв для внесення змін на системному рівні.
Тут ми розглянемо різні підкоманди, які можна використовувати з apt, і їх використання.
Оновити базу даних пакетів
apt потребує репозиторію пакунків із базою даних усіх доступних пакунків, які можна встановити в системі Debian/Ubuntu. Цю базу даних сховища слід оновити перед тим, як ви почнете встановлювати пакет, оскільки apt має знати подробиці про пакет, його версію, архітектуру та віддалене розташування.
Оновити базу даних репозиторію легко, і це можна зробити за допомогою:
$ sudo apt update
приклад:
[email protected]:~$ sudo apt update Get:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB] Hit:2 http://azure.archive.ubuntu.com/ubuntu focal InRelease Get:3 http://azure.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB] Get:4 http://azure.archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB] Get:5 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [1086 kB] Get:6 http://azure.archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [841 kB] Fetched 2255 kB in 1s (2677 kB/s) Reading package lists... Done Building dependency tree Reading state information... Done 14 packages can be upgraded. Run 'apt list --upgradable' to see them. [email protected]:~$
Оновлення встановлених пакетів
Встановлені пакети в системі можна оновити до останньої доступної версії за допомогою:
$ sudo apt upgrade
За допомогою команди оновлення пакунки будуть встановлені, якщо потрібно, щоб задовольнити залежності, але існуючі пакунки ніколи не будуть видалені. Якщо для оновлення пакета потрібно видалити встановлений пакет, оновлення для цього пакета не виконується.
приклад:
[email protected]:~$ sudo apt update Get:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB] Hit:2 http://azure.archive.ubuntu.com/ubuntu focal InRelease Get:3 http://azure.archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB] Get:4 http://azure.archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB] Get:5 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [1086 kB] Get:6 http://azure.archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [841 kB] Fetched 2255 kB in 1s (2677 kB/s) Reading package lists... Done Building dependency tree Reading state information... Done 14 packages can be upgraded. Run 'apt list --upgradable' to see them. [email protected]:~$ sudo apt upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done The following packages will be upgraded: apt apt-utils libapt-pkg6.0 libpython3.8 libpython3.8-minimal libpython3.8-stdlib libuv1 linux-base linux-base-sgx open-vm-tools python3-distupgrade python3.8 python3.8-minimal ubuntu-release-upgrader-core 14 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Need to get 9485 kB of archives. After this operation, 603 kB of additional disk space will be used. Do you want to continue? [Y/n] Y Get:1 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libapt-pkg6.0 amd64 2.0.6 [835 kB] Get:2 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 apt amd64 2.0.6 [1296 kB] Get:3 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 apt-utils amd64 2.0.6 [216 kB] Get:4 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libpython3.8 amd64 3.8.10-0ubuntu1~20.04 [1625 kB] Get:5 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3.8 amd64 3.8.10-0ubuntu1~20.04 [387 kB] Get:6 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libpython3.8-stdlib amd64 3.8.10-0ubuntu1~20.04 [1675 kB] Get:7 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3.8-minimal amd64 3.8.10-0ubuntu1~20.04 [1898 kB] Get:8 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libpython3.8-minimal amd64 3.8.10-0ubuntu1~20.04 [717 kB] Get:9 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 libuv1 amd64 1.34.2-1ubuntu1.3 [80.8 kB] Get:10 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 ubuntu-release-upgrader-core all 1:20.04.35 [23.9 kB] Get:11 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3-distupgrade all 1:20.04.35 [104 kB] Get:12 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 linux-base all 4.5ubuntu3.6 [17.8 kB] Get:13 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 linux-base-sgx all 4.5ubuntu3.6 [4660 B] Get:14 http://azure.archive.ubuntu.com/ubuntu focal-updates/universe amd64 open-vm-tools amd64 2:11.2.5-2ubuntu1~ubuntu20.04.1 [604 kB] Fetched 9485 kB in 0s (54.4 MB/s) Preconfiguring packages ... (Reading database ... 59511 files and directories currently installed.) Preparing to unpack .../libapt-pkg6.0_2.0.6_amd64.deb ... Unpacking libapt-pkg6.0:amd64 (2.0.6) over (2.0.5) ... Setting up libapt-pkg6.0:amd64 (2.0.6) ... (Reading database ... 59511 files and directories currently installed.) Preparing to unpack .../archives/apt_2.0.6_amd64.deb ... Unpacking apt (2.0.6) over (2.0.5) ... Setting up apt (2.0.6) ... (Reading database ... 59511 files and directories currently installed.) Preparing to unpack .../00-apt-utils_2.0.6_amd64.deb ... Unpacking apt-utils (2.0.6) over (2.0.5) ... Preparing to unpack .../01-libpython3.8_3.8.10-0ubuntu1~20.04_amd64.deb ... Unpacking libpython3.8:amd64 (3.8.10-0ubuntu1~20.04) over (3.8.5-1~20.04.3) ... Preparing to unpack .../02-python3.8_3.8.10-0ubuntu1~20.04_amd64.deb ... Unpacking python3.8 (3.8.10-0ubuntu1~20.04) over (3.8.5-1~20.04.3) ... Preparing to unpack .../03-libpython3.8-stdlib_3.8.10-0ubuntu1~20.04_amd64.deb ... Unpacking libpython3.8-stdlib:amd64 (3.8.10-0ubuntu1~20.04) over (3.8.5-1~20.04.3) ... Preparing to unpack .../04-python3.8-minimal_3.8.10-0ubuntu1~20.04_amd64.deb ... Unpacking python3.8-minimal (3.8.10-0ubuntu1~20.04) over (3.8.5-1~20.04.3) ... Preparing to unpack .../05-libpython3.8-minimal_3.8.10-0ubuntu1~20.04_amd64.deb ... Unpacking libpython3.8-minimal:amd64 (3.8.10-0ubuntu1~20.04) over (3.8.5-1~20.04.3) ... Preparing to unpack .../06-libuv1_1.34.2-1ubuntu1.3_amd64.deb ... Unpacking libuv1:amd64 (1.34.2-1ubuntu1.3) over (1.34.2-1ubuntu1.1) ... Preparing to unpack .../07-ubuntu-release-upgrader-core_1%3a20.04.35_all.deb ... Unpacking ubuntu-release-upgrader-core (1:20.04.35) over (1:20.04.33) ... Preparing to unpack .../08-python3-distupgrade_1%3a20.04.35_all.deb ... Unpacking python3-distupgrade (1:20.04.35) over (1:20.04.33) ... Preparing to unpack .../09-linux-base_4.5ubuntu3.6_all.deb ... Unpacking linux-base (4.5ubuntu3.6) over (4.5ubuntu3.1) ... Preparing to unpack .../10-linux-base-sgx_4.5ubuntu3.6_all.deb ... Unpacking linux-base-sgx (4.5ubuntu3.6) over (4.5ubuntu3.1) ... Preparing to unpack .../11-open-vm-tools_2%3a11.2.5-2ubuntu1~ubuntu20.04.1_amd64.deb ... Unpacking open-vm-tools (2:11.2.5-2ubuntu1~ubuntu20.04.1) over (2:11.0.5-4) ... Setting up libpython3.8-minimal:amd64 (3.8.10-0ubuntu1~20.04) ... Setting up apt-utils (2.0.6) ... Setting up linux-base (4.5ubuntu3.6) ... Setting up python3-distupgrade (1:20.04.35) ... Setting up libuv1:amd64 (1.34.2-1ubuntu1.3) ... Setting up linux-base-sgx (4.5ubuntu3.6) ... Setting up ubuntu-release-upgrader-core (1:20.04.35) ... Setting up python3.8-minimal (3.8.10-0ubuntu1~20.04) ... Setting up open-vm-tools (2:11.2.5-2ubuntu1~ubuntu20.04.1) ... Installing new version of config file /etc/vmware-tools/tools.conf.example ... Installing new version of config file /etc/vmware-tools/vgauth.conf ... Setting up libpython3.8-stdlib:amd64 (3.8.10-0ubuntu1~20.04) ... Setting up python3.8 (3.8.10-0ubuntu1~20.04) ... Setting up libpython3.8:amd64 (3.8.10-0ubuntu1~20.04) ... Processing triggers for libc-bin (2.31-0ubuntu9.2) ... Processing triggers for systemd (245.4-4ubuntu3.7) ... Processing triggers for man-db (2.9.1-1) ... Processing triggers for mime-support (3.64ubuntu1) ... [email protected]:~$
Переконайтеся, що ви виконали sudo apt update, перш ніж оновлювати пакети, щоб уникнути проблем під час оновлення, а також переконатися, що ви отримуєте найновіші доступні пакети зі сховища. Якщо ви хочете, ви можете виконати ці команди в одному рядку як:
$ sudo apt update && sudo apt upgrade -y
Пакети повного оновлення
apt також пропонує команду повного оновлення. Вона відрізняється від команди оновлення тим, що видаляє поточні встановлені пакунки, якщо це необхідно для оновлення системи в цілому. Таким чином, будьте обережні з цією командою і, якщо можливо, використовуйте замість неї команду оновлення.
$ sudo apt full-upgrade
Встановити єдиний пакет
Встановити новий пакунок можна за допомогою apt за допомогою наведеного нижче синтаксису:
$ sudo apt install [package-name]
приклад:
[email protected]:~$ sudo apt install unzip Reading package lists... Done Building dependency tree Reading state information... Done Suggested packages: zip The following NEW packages will be installed: unzip 0 upgraded, 1 newly installed, 0 to remove and 14 not upgraded. Need to get 169 kB of archives. After this operation, 593 kB of additional disk space will be used. Get:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB] Fetched 169 kB in 0s (4040 kB/s) Selecting previously unselected package unzip. (Reading database ... 59511 files and directories currently installed.) Preparing to unpack .../unzip_6.0-25ubuntu1_amd64.deb ... Unpacking unzip (6.0-25ubuntu1) ... Setting up unzip (6.0-25ubuntu1) ... Processing triggers for mime-support (3.64ubuntu1) ... Processing triggers for man-db (2.9.1-1) ... [email protected]:~$
Встановити декілька пакетів
Ви можете встановити декілька пакетів у системі за допомогою apt. Синтаксис подібний до попереднього прикладу:
$ sudo apt install [package-name-1] [package-name-2] ... [package-name-n]
приклад:
[email protected]:~$ sudo apt install zip unzip Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: unzip zip 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. Need to get 336 kB of archives. After this operation, 1231 kB of additional disk space will be used. Get:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB] Get:2 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 zip amd64 3.0-11build1 [167 kB] Fetched 336 kB in 0s (7749 kB/s) Selecting previously unselected package unzip. (Reading database ... 59527 files and directories currently installed.) Preparing to unpack .../unzip_6.0-25ubuntu1_amd64.deb ... Unpacking unzip (6.0-25ubuntu1) ... Selecting previously unselected package zip. Preparing to unpack .../zip_3.0-11build1_amd64.deb ... Unpacking zip (3.0-11build1) ... Setting up unzip (6.0-25ubuntu1) ... Setting up zip (3.0-11build1) ... Processing triggers for man-db (2.9.1-1) ... Processing triggers for mime-support (3.64ubuntu1) ... [email protected]:~$
Якщо один із зазначених пакетів уже встановлено в системі, apt шукатиме оновлення в репозиторії та, якщо доступне, оновить пакет або збереже встановлену версію як є.
Встановити конкретну версію
Часто потрібно інсталювати певну версію пакета, особливо в корпоративних системах. apt дозволяє інсталювати певну версію пакета, припускаючи, що він доступний у сховищі за допомогою:
$ sudo apt install [package-name]=[version]
приклад:
[email protected]:~$ sudo apt install unzip=6.0-25ubuntu1 Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: unzip 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 169 kB of archives. After this operation, 593 kB of additional disk space will be used. Get:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB] Fetched 169 kB in 0s (2767 kB/s) Selecting previously unselected package unzip. (Reading database ... 59541 files and directories currently installed.) Preparing to unpack .../unzip_6.0-25ubuntu1_amd64.deb ... Unpacking unzip (6.0-25ubuntu1) ... Setting up unzip (6.0-25ubuntu1) ... Processing triggers for mime-support (3.64ubuntu1) ... Processing triggers for man-db (2.9.1-1) ... [email protected]:~$
Видалити пакет
Подібно до встановлення пакета, apt можна використовувати для видалення пакета із системи за допомогою команди нижче:
$ sudo apt remove [package-name]
приклад:
[email protected]:~$ sudo apt remove unzip Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be REMOVED: unzip 0 upgraded, 0 newly installed, 1 to remove and 14 not upgraded. After this operation, 593 kB disk space will be freed. Do you want to continue? [Y/n] Y (Reading database ... 59529 files and directories currently installed.) Removing unzip (6.0-25ubuntu1) ... Processing triggers for man-db (2.9.1-1) ... Processing triggers for mime-support (3.64ubuntu1) ... [email protected]:~$
Очистити пакет
Подібно до видалення пакета, очищення пакета також виконує те саме завдання, але за допомогою команди видалення apt просто видаляє двійкові файли пакета, залишаючи конфігураційні файли без змін. З іншого боку, команда purge гарантує, що все, що стосується пакета, включаючи його двійкові файли та файли конфігурації, буде видалено з системи. Якщо залишити файли конфігурації, ви зможете повторно використовувати ті самі файли конфігурації, якщо ви плануєте повторно інсталювати програму.
Щоб очистити пакет, використовуйте:
$ sudo apt purge [package-name]
приклад:
[email protected]:~$ sudo apt purge unzip Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be REMOVED: unzip* 0 upgraded, 0 newly installed, 1 to remove and 14 not upgraded. After this operation, 593 kB disk space will be freed. Do you want to continue? [Y/n] Y (Reading database ... 59529 files and directories currently installed.) Removing unzip (6.0-25ubuntu1) ... Processing triggers for man-db (2.9.1-1) ... Processing triggers for mime-support (3.64ubuntu1) ... (Reading database ... 59511 files and directories currently installed.) Purging configuration files for unzip (6.0-25ubuntu1) ... [email protected]:~$
Пошук пакетів
apt може служити не лише утилітою для встановлення та видалення пакунків. Він також може шукати потрібний пакет у сховищі за допомогою команди пошуку:
$ apt search [search-text]
приклад:
[email protected]:~$ apt search netstat Sorting... Done Full Text Search... Done bwm-ng/focal 0.6.2-1 amd64 small and simple console-based bandwidth monitor gnome-nettool/focal 3.8.1-3 amd64 network information tool for GNOME golang-github-aelsabbahy-gonetstat-dev/focal 0.0~git20160428.0.edf89f7-3 all Netstat implementation in Go golang-github-mwitkow-go-conntrack-dev/focal 0.0~git20190716.2f06839-1 all Go middleware for net.Conn tracking libparse-netstat-perl/focal 0.14-1 all module to parse the output of the "netstat" command net-tools/focal 1.60+git20180626.aebd88e-1ubuntu1 amd64 NET-3 networking toolkit netstat-nat/focal 1.4.10-3build1 amd64 tool that display NAT connections nicstat/focal 1.95-1build1 amd64 print network traffic statistics qnetstatview/focal 1.5.6-1 amd64 Shows detailed listings of all TCP and UDP endpoints unhide/focal 20130526-4 amd64 Forensic tool to find hidden processes and ports whichman/focal 2.4-9 amd64 Fault tolerant search utilities: whichman, ftff, ftwhich [email protected]:~$
Переглянути вміст пакета
Щоб отримати докладні відомості про пакет, незалежно від того, чи він встановлений чи буде встановлений, ви можете використати команду show, як наведено нижче:
$ apt show [package-name]
приклад:
[email protected]:~$ apt show firefox Package: firefox Version: 90.0+build1-0ubuntu0.20.04.1 Priority: optional Section: web Origin: Ubuntu Maintainer: Ubuntu Mozilla Team <[email protected]> Bugs: https://bugs.launchpad.net/ubuntu/+filebug Installed-Size: 226 MB Provides: gnome-www-browser, iceweasel, www-browser Depends: lsb-release, libatk1.0-0 (>= 1.12.4), libc6 (>= 2.30), libcairo-gobject2 (>= 1.10.0), libcairo2 (>= 1.10.0), libdbus-1-3 (>= 1.9.14), libdbus-glib-1-2 (>= 0.78), libfontconfig1 (>= 2.12.6), libfreetype6 (>= 2.10.1), libgcc-s1 (>= 3.3), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.42), libgtk-3-0 (>= 3.14), libharfbuzz0b (>= 0.6.0), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libpangoft2-1.0-0 (>= 1.14.0), libstdc++6 (>= 9), libx11-6, libx11-xcb1 (>= 2:1.6.9), libxcb-shm0, libxcb1, libxcomposite1 (>= 1:0.4.5), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6, libxrender1, libxt6 Recommends: xul-ext-ubufox, libcanberra0, libdbusmenu-glib4, libdbusmenu-gtk3-4 Suggests: fonts-lyx Replaces: kubuntu-firefox-installer Task: ubuntu-desktop-minimal, ubuntu-desktop, kubuntu-desktop, kubuntu-full, xubuntu-desktop, lubuntu-desktop, ubuntustudio-desktop, ubuntukylin-desktop, ubuntu-mate-core, ubuntu-mate-desktop, ubuntu-budgie-desktop Xul-Appid: {ec8030f7-c20a-464f-9b0e-13a3a9e97384} Download-Size: 57.0 MB APT-Sources: http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages Description: Safe and easy web browser from Mozilla Firefox delivers safe, easy web browsing. A familiar user interface, enhanced security features including protection from online identity theft, and integrated search let you get the most out of the web. N: There is 1 additional record. Please use the '-a' switch to see it [email protected]:~$
Список встановлених пакетів
Нам часто потрібно перерахувати встановлені пакети в системі для різних цілей. apt дозволяє отримати список встановлених пакетів просто за допомогою:
$ apt list --installed
Список усіх пакетів
Щоб отримати список усіх пакетів, доступних для вашої системи, скористайтеся командою list із ключовим словом –all-versions:
$ apt list --all-versions
Список оновлюваних пакетів
Пакети потрібно постійно оновлювати, оскільки постійно з’являються нові версії з покращеними або додатковими функціями та виправленнями помилок, включаючи критичні лазівки в безпеці. apt гарантує, що ви можете легко виправити свою систему Debian/Ubuntu за допомогою команди оновлення, як запропоновано раніше в статті. Щоб отримати список усіх доступних оновлень для встановлених пакетів у вашій системі, запустіть:
$ apt list --upgradable
приклад:
[email protected]:~$ apt list --upgradable Listing... Done apt-utils/focal-updates 2.0.6 amd64 [upgradable from: 2.0.5] apt/focal-updates 2.0.6 amd64 [upgradable from: 2.0.5] libapt-pkg6.0/focal-updates 2.0.6 amd64 [upgradable from: 2.0.5] libpython3.8-minimal/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [upgradable from: 3.8.5-1~20.04.3] libpython3.8-stdlib/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [upgradable from: 3.8.5-1~20.04.3] libpython3.8/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [upgradable from: 3.8.5-1~20.04.3] libuv1/focal-updates,focal-security 1.34.2-1ubuntu1.3 amd64 [upgradable from: 1.34.2-1ubuntu1.1] linux-base-sgx/focal-updates 4.5ubuntu3.6 all [upgradable from: 4.5ubuntu3.1] linux-base/focal-updates 4.5ubuntu3.6 all [upgradable from: 4.5ubuntu3.1] open-vm-tools/focal-updates 2:11.2.5-2ubuntu1~ubuntu20.04.1 amd64 [upgradable from: 2:11.0.5-4] python3-distupgrade/focal-updates 1:20.04.35 all [upgradable from: 1:20.04.33] python3.8-minimal/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [upgradable from: 3.8.5-1~20.04.3] python3.8/focal-updates,focal-security 3.8.10-0ubuntu1~20.04 amd64 [upgradable from: 3.8.5-1~20.04.3] ubuntu-release-upgrader-core/focal-updates 1:20.04.35 all [upgradable from: 1:20.04.33] abhi[email protected]:~$
Очистіть невикористані пакети
За нормального використання іноді у вашій системі можуть бути встановлені пакети, які більше не потрібні. Це може статися, оскільки ці пакунки були встановлені як частина залежності іншого пакунка, який уже було видалено пізніше, хоча залежності залишаються в системі. Щоб очистити такі пакунки та звільнити місце на диску, ви можете скористатися:
$ sudo apt autoremove
приклад:
[email protected]:~$ sudo apt autoremove Reading package lists... Done Building dependency tree Reading state information... Done 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. [email protected]:~$
У моїй системі не залишилося жодних пакетів, що залишилися, тому вихідні дані не повідомляли про зміни.
Перевірте залежності пакетів
Пакет може мати одну або кілька залежностей, які необхідно встановити в системі, щоб пакет працював правильно. apt забезпечує встановлення необхідних залежностей як частину встановлення пакета. Якщо ви хочете перевірити залежності пакета, використовуйте:
$ apt depends [package-name]
приклад:
[email protected]:~$ apt depends zip zip Depends: libbz2-1.0 Depends: libc6 (>= 2.14) Recommends: unzip [email protected]:~$
Перевстановити пакет
Пакет може бути пошкоджено або вам може знадобитися перевстановити його, щоб переконатися, що всі файли пакета розташовано в правильному порядку. Щоб знову встановити пакет, не видаляючи його, ви можете скористатися:
$ sudo apt reinstall [package-name]
приклад:
[email protected]:~$ sudo apt reinstall unzip Reading package lists... Done Building dependency tree Reading state information... Done 0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded. Need to get 169 kB of archives. After this operation, 0 B of additional disk space will be used. Get:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB] Fetched 169 kB in 0s (5695 kB/s) (Reading database ... 59559 files and directories currently installed.) Preparing to unpack .../unzip_6.0-25ubuntu1_amd64.deb ... Unpacking unzip (6.0-25ubuntu1) over (6.0-25ubuntu1) ... Setting up unzip (6.0-25ubuntu1) ... Processing triggers for mime-support (3.64ubuntu1) ... Processing triggers for man-db (2.9.1-1) ... [email protected]:~$
Завантажити пакет
Файли пакетів можна завантажити в локальну файлову систему, не інсталюючи їх. Щоб завантажити пакет з apt, використовуйте:
$ apt download [package-name]
приклад:
[email protected]:~$ apt download unzip Get:1 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 unzip amd64 6.0-25ubuntu1 [169 kB] Fetched 169 kB in 0s (1405 kB/s) [email protected]:~$ [email protected]:~$ ls -l unzip_6.0-25ubuntu1_amd64.deb -rw-r--r-- 1 abhisheknair abhisheknair 168956 Aug 16 2019 unzip_6.0-25ubuntu1_amd64.deb [email protected]:~$
Перевірте журнал змін пакета
Ми можемо легко перевірити журнал змін щодо будь-якого пакета за допомогою apt, використовуючи:
$ apt changelog [package-name]
Редагувати джерела
Команда edit-sources у apt дозволяє редагувати ваші файли sources.list, а також забезпечує перевірку працездатності, щоб переконатися, що зміни послідовні та дійсні. Це незавершена команда, тому її слід використовувати обережно. Ви можете редагувати sources.list як:
$ sudo apt edit-sources
Отримати довідку APT
Щоб отримати додаткову допомогу щодо команди apt, використовуйте:
$ apt help
приклад:
[email protected]:~$ apt help apt 2.0.6 (amd64) Usage: apt [options] command apt is a commandline package manager and provides commands for searching and managing as well as querying information about packages. It provides the same functionality as the specialized APT tools, like apt-get and apt-cache, but enables options more suitable for interactive use by default. Most used commands: list - list packages based on package names search - search in package descriptions show - show package details install - install packages reinstall - reinstall packages remove - remove packages autoremove - Remove automatically all unused packages update - update list of available packages upgrade - upgrade the system by installing/upgrading packages full-upgrade - upgrade the system by removing/installing/upgrading packages edit-sources - edit the source information file satisfy - satisfy dependency strings See apt(8) for more information about the available commands. Configuration options and syntax is detailed in apt.conf(5). Information about how to configure sources can be found in sources.list(5). Package and version choices can be expressed via apt_preferences(5). Security details are available in apt-secure(8). This APT has Super Cow Powers. [email protected]:~$
Резюме
інструмент apt — це зручна та потужна утиліта керування пакунками на основі CLI для систем на базі Debian/Ubuntu. Звичайна повсякденна робота системного адміністратора включає керування пакетами в системі та знання apt і його типових команд використання, що полегшує це завдання.
Щоб отримати додаткову допомогу щодо apt, зверніться до його сторінки довідки.
$ man apt