АПТ (программное обеспечение)
Разработчик(и) | Проект Дебиан |
---|---|
Первоначальный выпуск | 31 марта 1998 г [1] |
Стабильная версия | 2.9.7 [2]
/ 30 июля 2024 г |
Репозиторий | |
Написано в | С++, [3] сценарий оболочки, [3] Расширяемый язык разметки, [3] CMake, [3] С, [3] Перл [3] |
Операционная система | Unix-подобный |
Тип | Менеджер пакетов |
Лицензия | GPLv2+ |
Веб-сайт | неделя |
Инструмент расширенных пакетов , или APT , — это бесплатного программного обеспечения пользовательский интерфейс , который работает с основными библиотеками для управления установкой и удалением программного обеспечения в Debian на основе Debian и дистрибутивах Linux . [4] APT упрощает процесс управления программным обеспечением в Unix-подобных компьютерных системах за счет автоматизации поиска, настройки и установки пакетов программного обеспечения либо из предварительно скомпилированных файлов, либо путем компиляции исходного кода. [4]
Использование
[ редактировать ]APT — это набор инструментов, распространяемых в пакете с именем apt . Значительная часть APT определена в C++ библиотеке функций ; APT также включает программы командной строки для работы с пакетами, использующими эту библиотеку. Три таких программы apt
, apt-get
и apt-cache
. Их часто используют в примерах, поскольку они просты и распространены. Пакет apt имеет « важный » приоритет во всех текущих выпусках Debian и поэтому включен в установку Debian по умолчанию. APT можно рассматривать как интерфейс для dpkg
, дружелюбнее старшего dselect
внешний интерфейс. Пока dpkg
выполняет действия над отдельными пакетами, APT управляет отношениями (особенно зависимостями) между ними, а также обеспечивает поиск и управление решениями по управлению версиями более высокого уровня (отслеживание выпуска и закрепление версии ).
APT часто называют одной из лучших функций Debian. [5] [6] [7] [8] что разработчики Debian объясняют строгим контролем качества в политике Debian. [9] [10]
Основной особенностью APT является то, как он вызывает dpkg
— выполняет топологическую сортировку списка пакетов, которые необходимо установить или удалить, и вызывает dpkg
в наилучшей возможной последовательности. В некоторых случаях используется --force
варианты dpkg
. Однако он делает это только тогда, когда не может рассчитать, как избежать причины. dpkg
требует, чтобы действие было принудительным.
Установка программного обеспечения
[ редактировать ]Пользователь указывает один или несколько пакетов для установки. Каждое имя пакета формулируется как часть имени пакета, а не как полное имя файла (например, в системе Debian libc6
будет предоставлен аргумент, а не libc6_1.9.6-2.deb
). Примечательно, что APT автоматически получает и устанавливает пакеты, от которых зависит указанный пакет (при необходимости). Это была первоначальная отличительная особенность систем управления пакетами на основе APT, поскольку она позволяла избегать сбоев установки из-за отсутствия зависимостей, своего рода ада зависимостей .
Еще одним отличием является получение пакетов из удаленных репозиториев. APT использует файл конфигурации местоположения ( /etc/apt/sources.list
), чтобы найти нужные пакеты, которые могут быть доступны, например, в сети или на съемном носителе, и получить их, а также получить информацию о доступных (но не установленных) пакетах.
APT предоставляет другие параметры команды для отмены решений, принятых системой разрешения конфликтов apt-get. Один из вариантов — принудительно использовать конкретную версию пакета. Это может привести к понижению версии пакета и выводу зависимого программного обеспечения из строя, поэтому пользователю следует соблюдать осторожность.
Наконец, apt_preferences
Механизм позволяет пользователю создавать альтернативную политику установки для отдельных пакетов.
Пользователь может указать пакеты, используя регулярное выражение POSIX .
APT выполняет поиск в своем кэшированном списке пакетов и перечисляет зависимости, которые необходимо установить или обновить.
APT автоматически извлекает, настраивает и устанавливает зависимости.
Триггеры — это обработка отложенных действий.
Обновление, обновление и дистрибутив-обновление
[ редактировать ]Режимы использования apt
и apt-get
которые облегчают обновление установленных пакетов, включают:
update
используется для повторной синхронизации индексных файлов пакетов из их источников. Списки доступных пакетов извлекаются из мест, указанных в/etc/apt/sources.list
. Например, при использовании архива Debian эта команда извлекает и сканируетPackages.gz
файлы, чтобы была доступна информация о новых и обновленных пакетах.upgrade
используется для установки новейших версий всех пакетов, установленных в настоящее время в системе, из источников, перечисленных в/etc/apt/sources.list
. Пакеты, установленные в настоящее время с доступными новыми версиями, извлекаются и обновляются; ни при каких обстоятельствах установленные в данный момент пакеты не удаляются, а еще не установленные пакеты не извлекаются и не устанавливаются. Новые версии установленных в данный момент пакетов, которые невозможно обновить без изменения статуса установки другого пакета, останутся в своей текущей версии.full-upgrade
(apt
) иdist-upgrade
(apt-get
), помимо выполнения функцииupgrade
, также разумно обрабатывает изменение зависимостей с новыми версиями пакетов;apt
иapt-get
иметь «умную» систему разрешения конфликтов и при необходимости попытается обновить наиболее важные пакеты за счет менее важных./etc/apt/sources.list
Файл содержит список мест, из которых можно получить нужные файлы пакета. [4] у способности есть умнееdist-upgrade
функция под названиемfull-upgrade
. [11]
Конфигурация и файлы
[ редактировать ]/etc/apt
содержит папки и файлы конфигурации APT.
apt-config
— это программа запроса конфигурации APT. [12] apt-config dump
показывает конфигурацию. [13]
Файлы
[ редактировать ]/etc/apt/sources.list
: [14] Места для получения посылок./etc/apt/sources.list.d/
: Дополнительные фрагменты списка источников./etc/apt/apt.conf
: файл конфигурации APT./etc/apt/apt.conf.d/
: фрагменты файла конфигурации APT./etc/apt/preferences.d/
: Каталог с файлами настроек версии. Здесь указывается « закрепление », т.е. предпочтение получать определенные пакеты из отдельного источника или из другой версии дистрибутива./var/cache/apt/archives/
: Область хранения полученных файлов пакетов./var/cache/apt/archives/partial/
: Область хранения файлов пакетов в пути./var/lib/apt/lists/
: Область хранения информации о состоянии каждого ресурса пакета, указанного вsources.list
/var/lib/apt/lists/partial/
: Место хранения государственной информации в пути.
Источники
[ редактировать ]APT опирается на концепцию репозиториев для поиска программного обеспечения и разрешения зависимостей. Для APT репозиторий — это каталог, содержащий пакеты и индексный файл. Это может быть указано как сетевое местоположение или местоположение на компакт-диске . По состоянию на 14 августа 2021 г. [update] В проекте Debian имеется центральный репозиторий, содержащий более 50 000 пакетов программного обеспечения, готовых к загрузке и установке. [15]
APT можно добавить любое количество дополнительных репозиториев ( source.list В файл конфигурации /etc/apt/sources.list
), а затем получить запрос от APT. Графический интерфейс часто позволяет изменять sources.list
проще( apt-setup
). После указания репозитория пакетов (например, во время установки системы) пакеты в этом репозитории можно устанавливать без указания источника, и они будут автоматически обновляться.
В дополнение к сетевым репозиториям компакт-диски и другие носители данных (USB-накопитель, жесткие диски...), используя также можно использовать apt-cdrom
[16] или добавление file:/
ТИП [17] в файл списка источников. apt-cdrom
можно указать папку, отличную от компакт-диска, используя команду -d
вариант (т. е. жесткий диск или USB-накопитель). Компакт-диски Debian, доступные для загрузки, содержат репозитории Debian. Это позволяет обновлять машины, не подключенные к сети. Можно также использовать apt-zip
.
Проблемы могут возникнуть, когда несколько источников предлагают один и тот же пакет(ы). Системы, которые имеют такие потенциально конфликтующие источники, могут использовать закрепление APT, чтобы контролировать, какие источники следует отдать предпочтение.
APT-закрепление
[ редактировать ]Функция закрепления APT позволяет пользователям заставлять APT выбирать определенные версии пакетов, которые могут быть доступны в разных версиях из разных репозиториев. Это позволяет администраторам гарантировать, что пакеты не будут обновлены до версий, которые могут конфликтовать с другими пакетами в системе или которые не были достаточно проверены на наличие нежелательных изменений.
Для этого пины APT ( настроек в файле /etc/apt/preferences
) необходимо изменить, [18] хотя графический интерфейс часто упрощает закрепление.
Передние части
[ редактировать ]Существует несколько других интерфейсов APT, которые предоставляют более продвинутые функции установки и более интуитивные интерфейсы. К ним относятся:
- Synaptic — GTK. графический пользовательский интерфейс
- Ubuntu Software Center — GTK, графический пользовательский интерфейс разработанный в рамках проекта Ubuntu.
- aptitude , консольный клиент с CLI и ncurses. на основе TUI интерфейсами
- KPackage , часть KDE.
- Менеджер пакетов Adept , графический интерфейс пользователя для KDE (deb, rpm, bsd)
- PackageKit , интерфейс D-Bus , поддерживаемый freedesktop.org , поддерживает программное обеспечение GNOME и KDE Discover.
- GDebi — инструмент на базе GTK, спонсируемый для Ubuntu. (Существует также версия Qt, доступная в репозиториях Ubuntu как gdebi-kde.)
- apt-cdrom — способ добавить новый компакт-диск в список доступных репозиториев APT (sources.lists). Для добавления компакт-дисков в систему APT необходимо использовать apt-cdrom, вручную это сделать невозможно.
- apt-zip — способ использования apt со съемными носителями , в частности с USB-накопителями .
- aptURL , программный пакет Ubuntu, который позволяет устанавливать приложения конечного пользователя одним щелчком мыши через браузер. [19] [20]
- Cydia — менеджер пакетов для взломанной iOS на основе APT (портирован на iOS в рамках проекта Telesphoreo). [21] [22]
- Sileo , как и Cydia , менеджер пакетов для взломанной iOS на основе более новых версий APT (портирован на iOS командой Electra)
- gnome-apt GTK/ GNOME — графический интерфейс на основе виджетов . Разработано Havoc Pennington [23]
- Muon Discover (предыдущий центр программного обеспечения Muon) , графический пользовательский интерфейс на основе Qt.
- Менеджер приложений Hildon (приложение Maemo) , Maemo интерфейс
- apticron — служба, предназначенная для запуска через cron для отправки уведомлений об ожидающих обновлениях по электронной почте системному администратору (сисадмину).
- APT Daemon — внешний интерфейс, который работает как служба , позволяющая пользователям устанавливать программное обеспечение через PolicyKit и, в свою очередь, является платформой, используемой программным центром Ubuntu (наряду с менеджером программного обеспечения Linux Mint ).
- Установщик пакетов , часть MX Linux.
- Apt-offline : удобный способ внести любые доступные неконтейнерные изменения в любую установку Linux типа Debian без использования прямого подключения к Интернету. Однако может потребоваться временное прямое соединение, например, для установки Apt-offline на некоторых соответствующих типах Linux и для добавления PPA в список источников.
Интерфейсы APT могут:
- поиск новых пакетов;
- пакеты обновлений;
- установить или удалить пакеты и
- обновить всю систему до новой версии.
Интерфейсы APT могут перечислять зависимости устанавливаемых или обновляемых пакетов, спрашивать администратора, следует ли также устанавливать пакеты, рекомендованные или предлагаемые вновь установленными пакетами, автоматически устанавливать зависимости и выполнять другие операции в системе, такие как удаление устаревших файлов и пакетов.
История
[ редактировать ]Первоначальная попытка, которая привела к apt-get
программа была dselect
проект замены, известный под кодовым названием Deity . [24] Этот проект был заказан в 1997 году Брайаном Уайтом, в то время менеджером по выпуску Debian. Первая функциональная версия apt-get
был вызван dpkg-get
и предназначалась только как тестовая программа для основных функций библиотеки, которые будут лежать в основе нового пользовательского интерфейса (UI). [25]
Большая часть первоначальной разработки APT велась через интернет-чат (IRC), поэтому записи были утеряны. Архивы списка рассылки «Команды создания божеств» включают только самые основные моменты.
Имя «Божество» было оставлено в качестве официального названия проекта из-за опасений по поводу религиозного характера названия. Название APT в конечном итоге было выбрано после значительного внутреннего и общественного обсуждения. В конечном итоге название было предложено в IRC, принято, а затем окончательно утверждено в списках рассылки. [26]
APT был представлен в 1998 году, а оригинальные тестовые сборки были распространены по IRC. Первой версией Debian, включавшей его, была Debian 2.1, выпущенная 9 марта 1999 года. [27]
В конце концов, первоначальная цель проекта Deity по замене dselect
пользовательский интерфейс оказался неудачным. Работа над пользовательским интерфейсом проекта была прекращена (каталоги пользовательского интерфейса были удалены из системы параллельных версий ) после первого публичного выпуска apt-get
. Ответ на APT как на dselect
Метод и утилита командной строки были настолько замечательными и позитивными, что все усилия по разработке были сосредоточены на поддержании и улучшении этого инструмента. Лишь намного позже несколько независимых людей создали пользовательские интерфейсы поверх libapt-pkg
.
В конце концов, новая команда подхватила проект, начала создавать новые функции и выпустила версию 0.6 APT, в которой появилась функция Secure APT, использующая надежную криптографическую подпись для аутентификации репозиториев пакетов. [28]
Варианты
[ редактировать ]APT изначально был разработан как интерфейс для dpkg для работы с Debian. .deb
пакеты. Версия APT, модифицированная для работы с системой диспетчера пакетов RPM, была выпущена как APT-RPM . [29] Проект Fink перенес APT на Mac OS X для некоторых собственных задач управления пакетами. [30] и APT также доступен в OpenSolaris .
apt-файл
[ редактировать ]apt-file — это команда, упакованная отдельно от APT, позволяющая определить, какой пакет включает определенный файл, или вывести список всех файлов, включенных в пакет, в удаленных репозиториях. [31]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Первоначальный выпуск» . Журнал изменений пакета apt . Проект Дебиан. 31 марта 1998 года . Проверено 18 декабря 2021 г.
- ^ «2.9.7 · Теги · APT-разработчики / apt · GitLab» . 30 июля 2024 г. Проверено 4 августа 2024 г.
- ^ Перейти обратно: а б с д и ж «Проект с открытым исходным кодом apt — Advanced Package Tool на Open Hub: страница языков» . Открыть хаб . Проверено 2 мая 2024 г.
- ^ Перейти обратно: а б с "apt-get(8)" . Страницы руководства Debian . Проверено 18 декабря 2021 г.
- ^ Байфилд, Брюс (9 декабря 2004 г.). «Букварь для apt-get» . Проверено 18 декабря 2021 г.
- ^ «Из архива: лучшие дистрибутивы 2000 года» . Радар Тукса. Архивировано из оригинала 26 июля 2020 года.
- ^ Дорган, Дэвид (19 января 2004 г.). «Миграция на Debian» . Linux.ie. Архивировано из оригинала 13 мая 2006 года.
- ^ «Разработка мобильных Linux с помощью Familiar и минимального Debian» . Мобильный Тукс. Архивировано из оригинала 15 сентября 2008 года.
- ^ «Почему Дебиан» . Проверено 18 декабря 2021 г.
- ^ «Руководство по политике Debian» . Проверено 18 декабря 2021 г.
- ^ «Обсуждение дист-обновления и полного обновления» . Проверено 18 декабря 2021 г.
- ^ «apt-config(8)» . Страницы руководства Debian . Проверено 18 декабря 2021 г.
- ^ «Запросить конфигурацию APT с помощью apt-config — администратор Debian» . 2 декабря 2006 г. Проверено 18 декабря 2021 г.
- ^ «Список источников» . Дебиан Вики . Проверено 18 декабря 2021 г.
- ^ «Выпущен Debian 11 «яблочко»» . www.debian.org . Проверено 11 мая 2022 г.
- ^ «apt-cdrom(8)» . Страницы руководства Debian . Проверено 27 декабря 2021 г.
- ^ например, файл deb:/mnt/install стабильный основной вклад несвободный .
{{citation}}
: CS1 maint: постскриптум ( ссылка ) - ^ «Аптконфигурация» . Дебиан Вики . Проверено 18 мая 2020 г.
- ^ «АптURL» . Убунту Вики . Проверено 27 декабря 2021 г.
- ^ «Как установить программное обеспечение в Ubuntu Linux: полное руководство для новичка» . 17 июня 2018 г. Проверено 27 декабря 2021 г.
- ^ Юрик, Дэвид (2009). Хаки для iPhone: расширяем возможности iPhone и iPod touch . О'Рейли Медиа, Инк. с. 20. ISBN 9780596516642 . Проверено 27 декабря 2021 г.
- ^ Адхикари, Ричард (20 марта 2008 г.). «Андроид, Шмандроид: Linux на iPhone» . LinuxInsider . Проверено 27 декабря 2021 г.
- ^ Малликин, Гленн (декабрь 2001 г.). «Эволюция систем управления пакетами Debian» . АУГН . Том. 22, нет. 4. с. 50. ISSN 1035-7521 .
gnome-apt был написан Хэвоком Пеннингтоном.
- ^ Уайт, Брайан К. (11 апреля 1997 г.). « Проект замены «dselect» («божество»)» . [электронная почта защищена] (список рассылки).
- ^ Ганторп, Джейсон (2 марта 1998 г.). «Это работает» . [электронная почта защищена] (список рассылки).
- ^ Ганторп, Джейсон (19 марта 1998 г.). «Re: 2 вещи (!)» . [электронная почта защищена] (список рассылки).
- ^ «Краткая история Debian» . debian.org. Архивировано из оригинала 24 августа 2003 года.
- ^ «Безопасный APT» . Дебиан Вики . Проверено 27 декабря 2021 г.
- ^ «АПТ-РПМ» . apt-rpm.org. Архивировано из оригинала 21 апреля 2008 года . Проверено 27 декабря 2021 г.
- ^ «Финк – О» . www.finkproject.org. Архивировано из оригинала 11 мая 2008 года . Проверено 27 декабря 2021 г.
- ^ «Проверка и извлечение содержимого пакета Debian» . Блог Packagecloud . 13 октября 2015 г. Проверено 27 декабря 2021 г.
Внешние ссылки
[ редактировать ]- Debian по командам обслуживания Руководство –
- APT HOWTO. Архивировано 9 марта 2021 г. на Wayback Machine.
- Подходящее руководство
- Глава 2. Управление пакетами Debian — Справочник Debian
- Программное обеспечение командной строки
- Кроссплатформенное бесплатное программное обеспечение
- Дебиан
- ДПКГ
- Бесплатные системы управления пакетами
- Бесплатное программное обеспечение, написанное на C++.
- Программное обеспечение для управления пакетами Linux
- Менеджеры обновлений программного обеспечения
- Убунту
- Программное обеспечение, использующее лицензию GPL