Я выполнил 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
что означает, что он в настоящее время установлен.