What is apt cache in linux

What is apt-cache used for?

apt-cache ‘s manual, maybe this can help out a bit, while waiting for someone to give you a better answer?

The heading says apt-cache and not «APT cache», then also there’s the command-line tag and also the only question to date which describes the command is almost as much upvoted as the question, so I must suppose the question refers to the command. But what is the «APT cache» used for? That’s a very legit question. I asked it here.

1 Answer 1

apt-cache is a command to manipulate and obtain information from the packages at apt’s cache.

It creates a repository of information about the packages that are avaiable from your sources list, so this way you can search packages and information about it.

Let’s say you want to install a chat program but you don’t know the name of a package for it.

You would open a console and type:

sudo apt-cache search chat

This would return a list of packages available and that refer to the word chat.

Typical operations with apt-cache :

Adds a package file to the source cache.

Builds both the package and source cache

Show some general information for a single package

Show some basic statistics

Show the entire file in a terse form

Print an available file to stdout

Search the package list for a regex pattern

Show a readable record for the package

Show raw dependency information for a package

List the names of all packages

Generate package graphs for GraphVis

Don’t forget to add package name after the commands listed above.

Источник

What is apt cache in linux

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

команда может принимать одно из следующих значений: o add файл1 [файл2] [. ] o gencaches o showpkg пакет1 [пакет2] [. ] o stats o dump o dumpavail o unmet o check o search o show o showpkg o depends o pkgnames o dotty

Если не используется одна из опций, -h или —help, то должна быть указана одна из вышеприведённых команд. add add добавляет индексные файлы имен пакетов к кэшу пакетов. gencaches gencaches выполняет такую же операцию как и apt-get check . Cтроит кэш источников и кэш пакетов из их источников в /etc/apt/sources.list и из /var/lib/dpkg/status (или из базы RPM). showpkg showpkg выводит информацию о пакетах, перечисленных в командой строке. Остальные аргументы являются именами пакетов. Перечисляются как доступные версии так и обратные зависимости каждого пакета, а также прямые зависимости для каждой версии. Прямые (обычные) зависимости — это те зависимости, от которых зависит данный пакет; обратные зависимости указывают на то, что существуют другие пакеты, которые зависят от данного пакета. Таким образом, прямые зависимости должны быть удовлетворены для установки пакета, а обратные могут и не быть удовлетворены. Для примера, apt-cache showpkg libreadline2 выведет нечто похожее на следующее:

Package: libreadline2 Versions: 2.1-12(/var/state/apt/lists/debian.midco.net_debian_dists_slink_main_binary-i386_Packages), Reverse Depends: libreadlineg2,libreadline2 libreadline2-altdev,libreadline2 Dependencies: 2.1-12 - libc5 (2 5.4.0-0) ncurses3.0 (0 (null)) ldso (2 1.9.0-1) Provides: 2.1-12 - Reverse Provides:

Здесь можно увидеть, что пакет libreadline2, версия 2.1-8, зависит от libc5, ncurses3.0, и ldso, что они должны быть установлены, чтобы libreadline2 заработал. Далее libreadlineg2 и libreadline2-altdev зависят от libreadline2. Если пакет libreadline2 устанавливается, то и пакеты libc5, ncurses3.0 и ldso также должны быть установлены, а libreadlineg2 и libreadline2-altdev могут и не быть установлены. Для того, чтобы понять остальную информацию лучше всего посмотреть исходные тексты apt . stats stats отображает некоторую статистику касательно кэша . Аргументы не нужны. Статистический отчет выглядит так (поля): o Имён пакетов — это количество имен пакетов, найденных в кэше. o Нормальные пакеты — это количество обычных имен пакетов; таких пакетов у которых имя пакета и имя используемое другими пакетами в зависимостях совпадают один к одному. Большинство пакетов относятся именно к этой категории. o Целиком виртуальные пакеты — это количество пакетов, которые существуют только как виртуальные; те пакеты которые только «предоставляют» виртуальное имя пакета, за которым нет фактического пакета, использующего это имя. Например, «mail-transport-agent» в системе Debian GNU/Linux — это чистый виртуальный пакет; несколько пакетов предоставляют «mail-transport-agent», но нет ни одного пакета с названием «mail-transport-agent». o Одиночные виртуальные пакеты — это количество пакетов, в которых только один из пакетов предоставляет соответствующих виртуальный пакет. Например, в системе Debian GNU/Linux, «X11-text-viewer» — это виртуальный пакет, но только один пакет, xless, предоставляет «X11-text-viewer». o Смешанные виртуальные пакеты — это количество пакетов, которые и предоставляют соответствующий виртуальный пакет и имеют имя виртуального пакета в качестве имени пакета. Например, в системе Debian GNU/Linux, e2fsprogs — это и реальный пакет и пакет, который предоставляет пакет e2compr. o Отсутствуют — это количество имен пакетов, на которые ссылаются в зависимостях, но которые не предоставляются ни одним из пакетов. Отсутствующие пакеты могут быть в отсутствующей части, если полный дистрибутив недоступен или если пакет (реальный или виртуальный) был удален из дистрибутива. o Различных версий — это количество версий пакетов, найденных в кэше; данное значение по крайней мере должно быть равно общему количеству имен пакетов. Если доступен более чем один дистрибутив (например, и «stable» и «unstable»), то данное значение может быть значительно больше, чем общее количество имен пакетов. o Всего зависимостей — это количество зависимостей требуемых всеми пакетами в кэше. dump dump показывает краткий список по каждому пакету в кэше. Команда в первую очередь нужна для отладки. dumpavail dumpavail выдает список всех доступных пакетов. Команда полезна для использования с dpkg и используется в dselect . unmet unmet выдает краткую справку об неудовлетворенных зависимостях в кэше пакетов. check check это случайная функция для тестирования определенных акцептов кэша. Не используйте ее. showpkg showpkg выдает список состоящий из структуры кэша по заданным пакетам и некоторую относящуюся к ним информацию. Список в первую очередь нужен для отладки. show show выполняет функцию похожую на —print-avail или rpm -qi, выводит записи по пакетам с указанными именами. search search выполняет полный поиск текста по всем доступным файлам пакетов по заданному шаблону. Команда просматривает имена пакетов и описания, для поиска определенной строки, а также выводит имя пакета и его краткое описание. Если задана опция —full то вывод будет идентичен команде show если найдутся пакеты удовлетворяющие условию, а если задана опция —names-only то поиск в длинном описании производиться не будет, только в именах пакетов. depends depends показывает список, состоящий из всех пакетов, от которых зависит данный пакет и всех других пакетов, которые могут полностью покрывать данную зависимость. pkgnames Данная команда выдает имя каждого пакета в системе. Необязательный аргумент — это префикс для фильтрации списка имен. Вывод этой команды обычно используется в функциях оболочки и генерируется очень быстро. Данную команду лучше всего использовать с опцией —no-generate . dotty dotty берет список пакетов в командной строке и генерирует вывод, удобный для использования пакетом dotty фирмы GraphVis (http://www.research.att.com/sw/tools/graphviz/). Результатом будет список узлов и краев, который представляет собой отношения между пакетами. По умолчанию заданные пакеты будут отслеживаться на предмет всех зависимостей, что будет представлять из себя очень большую схему. Такое поведение можно отключить установкой опции APT::Cache::GivenOnly. Результирующие узлы будут выглядеть определенными фигурами, обычные пакеты как боксы, чистые представляются треугольниками, смешанные ромбами, отсутствующие пакеты шестиугольниками. Оранжевые боксы означают рекурсию, которая была остановлена [leaf packages], синие линии — это предварительные зависимости, зеленые — конфликты. Внимание, dotty не может отображать большие списки пакетов.

Читайте также:  Lpr принтер в linux

ОПЦИИ

Все опции командной строки могут быть заданы при помощи файла настроек, описания обозначают устанавливаемые элементы настройки. Для логических опций вы можете перекрыть файл с настройками используя конструкцию вида -f- , —no-f , -f=no или некоторые другие вариации.

-h, —help Выдает краткую подсказку. -v, —version Выдает версию программы. -p —pkg-cache Выбрать файл для хранения кэша пакетов. Данный кэш является первичным кэшем, который используется всеми другими операциями.
Элемент настройки: Dir::Cache::pkgcache . -s —src-cache Выбрать файл для записи кэша источника. Этот источник используется только gencaches и он хранит обработанную версию информации о пакете из удаленного источника. Когда строится кэш пакетов, кэш источника используется для предотвращения повторной обработки всех файлов пакетов.
Элемент настройки: Dir::Cache::srcpkgcache . -q, —quiet Производится вывод годный для протоколирования, в котором опускается индикаторы хода выполнения задачи. Указание большего числа опций -q приведет к более урезанному выводу, максимально вы можете указать их еще два раза. Вы также можете использовать конструкцию -q=# для установки нужного вам количества сообщений вывода, перекрывая файл с настройками.
Элемент настройки: quiet . -i —important Выводить только важные зависимости; при использовании этой опции с командой unmet, будут выводиться только отношения Depends и Pre-Depends .
Элемент настройки: APT::Cache::Important . -f —full Выдавать полные записи пакета во время поиска.
Элемент настройки: APT::Cache::ShowFull . -a —all-versions Выдавать все записи для всех доступных версий. Эта опция применима только к команде show.
Элемент настройки: APT::Cache::AllVersions -g —no-generate Не выполнять автоматическую регенерацию кэша, использовать кэш в том виде, как есть.
Элемент настройки: APT::Cache::NoGenerate . —names-only Искать только имена пакетов, а не длинные описания.
Элемент настройки: APT::Cache::NamesOnly . —all-names Заставляет команду pkgnames выдавать все имена, включая имена виртуальных пакетов и отсутствующие зависимости.
Элемент настройки: APT::Cache::AllNames . -c, —config-file Файл с настройками; Задать для использования файл с настройками. apt-get будет читать файл с настройками по умолчанию и затем данный файл с настройками. Смотрите информацию о синтаксисе в apt.conf(5) . -o, —option Установить Опцию Настройки; Она будет установлена определенной опцией настройки. Используется следующий синтаксис:

Читайте также:  Linux apache postgresql python

ФАЙЛЫ

o /etc/apt/sources.list — источники для получения пакетов o /var/lib/apt/lists/ — область хранения информации о состоянии каждого ресурса пакетов, заданного в списке источников o /var/lib/apt/lists/partial/ — временная область хранения информации в процессе скачивания

Источник

Оцените статью
Adblock
detector