Как указываются данные репозитория в apt?

Как указываются данные репозитория в apt?

Я выполнил apt list --installedкоманду и получил следующий вывод:

xterm/xenial,now 322-1ubuntu1 amd64 [installed]
xul-ext-ubufox/xenial,now 3.2-0ubuntu1 all [installed]
xz-utils/xenial,now 5.1.1alpha+20120614-2ubuntu2 amd64 [installed]
yelp/xenial,now 3.18.1-1ubuntu4 amd64 [installed]
yelp-xsl/xenial,now 3.18.1-1 all [installed]
zeitgeist-core/xenial,now 0.9.16-0ubuntu4 amd64 [installed]
zeitgeist-datahub/xenial,now 0.9.16-0ubuntu4 amd64 [installed]
zenity/xenial,now 3.18.1.1-1ubuntu2 amd64 [installed]
zenity-common/xenial,now 3.18.1.1-1ubuntu2 all [installed]
zip/xenial,now 3.0-11 amd64 [installed]
zlib1g/unknown,xenial-updates,now 1:1.2.8.dfsg-2ubuntu4.1 amd64 [installed]

Почему unknown, а не xenialпри обновлении из локального репозитория?

Что это за nowрепозиторий?

решение1

unknown

Часть unknownвзята из записи для Suiteключа в Releaseфайле для репозитория Debian. Я думаю, что вы сгенерировали локальный репозиторий без правильной установки требуемых ключей для InReleaseфайла Release (или ), и поэтому aptпоказывает unknown.

Например, типичный стандартный файл Release может иметь следующие записи (взятые из InReleaseфайла официального репозитория Ubuntu):

Origin: Ubuntu
Label: Ubuntu
Suite: zesty
Version: 17.04
Codename: zesty
Date: Wed, 12 Apr 2017  2:53:23 UTC
Architectures: amd64 arm64 armhf i386 ppc64el s390x

Проверятьэта секцияна вики-странице Debian для получения дополнительной информации о формате файла Release.

И проверьтеэто немного старое, но мое любимое руководстводля создания надлежащего локального репозитория Ubuntu.

now

nowотносится к версии пакета, установленного в данный момент (и, таким образом, считающегося доступным). Информация хранится в /var/lib/dpkg/statusфайле. У меня есть эти записи вapt list --installed

zlib1g/zesty,now 1:1.2.11.dfsg-0ubuntu1 amd64 [installed]
zlib1g-dev/ubuntu-local,zesty,now 1:1.2.11.dfsg-0ubuntu1 amd64 [installed,automatic]
zsync/zesty,now 0.6.2-2ubuntu1 amd64 [installed]

Как вы видите, zsyncесть nowзапись, которая означает, что он установлен и доступен как таковой. Если вы не видите других записей, кроме , nowэто будет означать, что у вас установлен пакет, который недоступен для переустановки из любого известного репозитория.

Вот вывод apt policy zsyncтой же системы.

zsync:
  Installed: 0.6.2-2ubuntu1
  Candidate: 0.6.2-2ubuntu1
  Version table:
 *** 0.6.2-2ubuntu1 500
        500 http://bd.archive.ubuntu.com/ubuntu zesty/universe amd64 Packages
        100 /var/lib/dpkg/status
     0.6.2-1ubuntu1 500
        500 file:/mnt/Data/Software/Linux/Debian_Packages/xenial_debs2  Packages

Как вы можете видеть, /var/lib/dpkg/statusбыл указан как репозиторий, zsyncчто означает, что он в настоящее время установлен.

Связанный контент