パッケージバージョン1.14.2-2+deb10u1
がインストールされ、1.14.2-2+deb10u1
は、執筆時点でのリポジトリ内の最新バージョンです。
dpkg -l | grep nginx-extras ii nginx-extras
1.14.2-2 + deb10u1 AMD64 nginx Web /プロキシサーバー(拡張バージョン)
apt update
apt dist-upgrade --simulate
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
nginx-extras
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Inst nginx-extras [1.14.2-2+deb10u1] (1.14.2-2+deb10u1 Debian:10.3/stable, Debian-Security:10/stable [AMD64])
Conf nginx-extras (1.14.2-2+deb10u1 Debian:10.3/stable, Debian-Security:10/stable [AMD64])
それでも、APTはアップグレードしたいのですが、なぜですか?システムがすでにアップグレードされていることをAPTに知らせるにはどうすればよいですか?
なぜアップグレードをしないのですか? APTを使用して不必要にアップグレードしたくありません。それは私のローカルな変更を上書きするからです。
バックグラウンド:
手動でダウンロードしました(apt source nginx-extras
)、コンパイル、ローカル変更を行い、dpkgとaptを使用してパッケージをインストールしました。パッケージソースフォルダdebian/changelogは Webリポジトリリポジトリ変更ログファイル と一致します。
これは、インストールされているパッケージが、同じバージョンであっても、リポジトリから入手できるパッケージと一致しないために発生します。 ( AB がわかっているように、これはパッケージのインストール済みサイズに基づいているようです。インストール済みパッケージのバージョンがリポジトリから入手できるバージョンと同じであるが、インストール済みサイズが異なる場合、apt
は、パッケージをリポジトリから入手可能なバージョンに置き換えたいと考えています。インストールされているサイズは、リモートパッケージの場合はPackages
に、/var/lib/dpkg/status
インストールされたパッケージの場合。もちろん、これはすべて、パッケージピンの優先順位にも従順です。)
パッケージをローカルでビルドする場合、特にパッケージに変更を加える場合は、メンテナ以外のアップロードを行っているかのように変更ログを更新することをお勧めします。
dch -n "Summary of your changes"
dch -r ignored
そうすれば、apt
は、リポジトリが更新されるまで、パッケージをリポジトリ内のパッケージに置き換えようとはしません。