dpkg --get-selectionsで予約およびインストール用にマークされたアップグレードパッケージ

dpkg --get-selectionsで予約およびインストール用にマークされたアップグレードパッケージ

パッケージをholdwithとマークしてecho "xyz hold" | sudo dpkg --set-selectionsから明示的にパッケージを使用すると、パッケージはinapt upgrade xyz=1.2.3とマークされます。installdpkg --get-selections

パッケージを「永久的に」表示する方法はありますかhold? - 更新したいが、常に手動で実行され、決して他の更新の一部としては実行されません。

オンラインで閲覧しようとしましたが、パッケージの入手方法に関する投稿が100件もあることがわかります。また、-packagesに対して実際に何も指定せずに(または突然緩んでいます..)man aptに送信しようとしました。したがって、その動作のリソースを提供できる場合は、私も嬉しいです。man apt-get 8upgradehold


3つのパッケージを連続して特定の「最新ではない」バージョンにアップグレードし、最後のパッケージは指定されたバージョンを取得しましたが、他のパッケージは突然「最新」バージョンになったときにいくつかの問題が発生しました。

出力からapt upgrade他のパッケージもアップグレードすることを示します。たとえば、新しいスクリプトを作成したくありません。

upgrade(){
  apt-get upgrade $1=$2
  echo "$1 hold" | dpkg --set-selection
}

... それともこれが私が探している解決策ですか?


この質問はもともと「askubuntu」に投稿されましたが、トラフィックは発生しなかったため、質問を削除してここに投稿することを提案しました。

1人のユーザーが.を使用することを提案しましたが、apt-mark問題は解決せず、パッケージの保存が簡素化されました。

ベストアンサー1

パッケージを保存することでこれを行う方法はないと思いますが、アップグレードを防ぐ方法は他にもあります。優先順位-1でパッケージを固定できます。/etc/apt/preferences.d次の内容でファイルを作成します。

Package: xyz
Pin: version *
Pin-Priority: -1

xyz特定のバージョンを要求しない限り、アップグレードの対象にすることはできません。

おすすめ記事