У меня есть сценарий Python, работающий на Ubuntu. Сценарий получает все установленные способные пакеты с
apt_cache = apt.cache.Cache()
Я хочу получить названия репозитория каждого установленного пакета. В то время как я ожидаю видеть гостеприимный/основной, гостеприимный / вселенная, xenial-updates/main и т.д., некоторые пакеты имеют теперь/теперь для названия репозитория.
('linux-headers-generic', [<Origin component:'now' archive:'now' origin:'' label:'' site:'' isTrusted:False>])
Большинство других пакетов похоже:
('zip', [<Origin component:'main' archive:'xenial' origin:'Ubuntu' label:'Ubuntu' site:'de.archive.ubuntu.com' isTrusted:True>, <Origin component:'now' archive:'now' origin:'' label:'' site:'' isTrusted:False>])
Каков meaining теперь здесь?
Вводя по абсолютному адресу вокруг исходного кода, значения становятся now
когда версия от dpkg status
файл, который не включает, куда пакет первоначально прибыл из. Таким образом Вы будете видеть версию с архивом now
для любого пакета, который в настоящее время устанавливается. Можно также видеть это в выводе apt-cache policy
:
$ apt-cache policy
Package files:
100 /var/lib/dpkg/status
release a=now
...
Например:
$ apt-cache policy apt
apt:
Installed: 1.2.25
Candidate: 1.2.25
Version table:
*** 1.2.25 500
500 http://jp.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages
100 /var/lib/dpkg/status
И установленная версия возникнет в API:
<Origin component:'main' archive:'xenial-updates' origin:'Ubuntu' label:'Ubuntu' site:'jp.archive.ubuntu.com' isTrusted:True>
<Origin component:'now' archive:'now' origin:'' label:'' site:'' isTrusted:False>
Однако, если Вы получаете версию с now
как единственный источник, который означает apt
не мог определить местоположение его ни в каком источнике. Это могло произойти для: