Из man apt.conf
,
Cache-Start, Cache-Grow, Cache-Limit
Начиная с версии 0.7.26 APT использует изменяемый размер файла кэша с отображением памяти для хранения доступной информации. Cache-Start действует как намек на размер cache будет увеличиваться до, следовательно, это объем памяти, который APT будет запрашивать при запуске. Значение по умолчанию - 20971520 байт (~ 20 МБ). Обратите внимание, что это количество места, которое должно быть доступно для APT; в противном случае он, скорее всего, выйдет из строя, поэтому для устройств с ограничением памяти это значение должно быть снижен, в то время как в системах с большим количеством настроенных источников его следует увеличить. Cache-Grow определяется в байтах со значением по умолчанию из 1048576 (~ 1 МБ)насколько будет увеличен размер кеша в случае, если пространства, определенного параметром Cache-Start, будет недостаточно. Это значение будет применено снова и снова пока либо кеш не станет достаточно большим, чтобы хранить всю информацию, либо размер кеша не достигнет предела кэша. В по умолчанию Cache-Limit - 0 что означает без ограничений. Если Cache-Grow установлен на 0, автоматический рост кеша отключен.
Если Cache-Limit предварительно установлен на ноль, это означает, что Cache-Limit будет неограниченным. И если вместе с ним Cache-Start и Cache-Grow тоже установлены на какие-то значения по умолчанию. Тогда почему не apt-config dump фиксирует эту информацию. Использование поиска ниже не дало результата.
$ apt-config dump | grep -E "Cache-Start|Cache-Grow|Cache-Limit"
Эти значения являются своего рода запасным вариантом, который устанавливается, когда нет нужной конфигурации. Если вы заглянете в исходный код:
apt-pkg/pkgcachegen.cc
map_filesize_t const MapStart = _config->FindI("APT::Cache-Start", 24*1024*1024);
map_filesize_t const MapGrow = _config->FindI("APT::Cache-Grow", 1*1024*1024);
map_filesize_t const MapLimit = _config->FindI("APT::Cache-Limit", 0);
FindI
Ищет параметр в пространстве конфигурации, если его там нет, он устанавливает значение по умолчанию.
apt-pkg/contrib/configuration.h
int FindI(std::string const &Name,int const &Default = 0)
И apt-config dump
только выгружает пространство конфигурации. Ваша конфигурация должна быть там, чтобы отображаться в выводах, которых нет. И очевидно, что apt-config
не может заглянуть в свои собственные двоичные файлы, чтобы узнать, каковы значения по умолчанию.
Вы можете сказать, что в дампе есть и другие строки, и я не могу найти никакого связанного с ними конфигурационного файла. как этот:
Binary::apt::APT::Cache::ShowDependencyType "1";
Опять же, если мы посмотрим на исходный код, мы обнаружим:
_config->CndSet("Binary::apt::APT::Cache::ShowDependencyType", true);
В данном случае этот настраивается. CndSet
— условный набор. Он устанавливает некоторые конфигурации по умолчанию, не перезаписывая существующие.
Итак, здесь нужно помнить о двух вещах.