Что компонент или архив “теперь” означают в способном Python API?

У меня есть сценарий 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 теперь здесь?

2
задан 1 March 2018 в 09:59

1 ответ

Вводя по абсолютному адресу вокруг исходного кода, значения становятся 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 не мог определить местоположение его ни в каком источнике. Это могло произойти для:

  • установленная версия, которая больше не находится ни в каком источнике (время для обновления!)
  • пакет установил использование deb файла без соответствующего пакета в репозиториях
  • пакет установил из источника, который был впоследствии отключен
0
ответ дан 2 December 2019 в 09:17

Другие вопросы по тегам:

Похожие вопросы: