私はこれら2つのコマンドの違いを理解しようとしましたが、結果が異なることに気付きました。
apt-get install -t testing appX
apt-get install appX/testing
背景
ソースリストを設定し、構成を固定します https://serverfault.com/a/382101/132528
現在の結果
root@home:/etc/apt# apt-cache policy i3
i3:
Installed: (none)
Candidate: 4.2-2
Version table:
4.8-1 0
750 http://debian.mirror.ac.za/debian/ testing/main AMD64 Packages
750 http://ftp.us.debian.org/debian/ testing/main AMD64 Packages
50 http://debian.mirror.ac.za/debian/ unstable/main AMD64 Packages
50 http://ftp.us.debian.org/debian/ unstable/main AMD64 Packages
4.8-1~bpo70+1 0
100 http://debian.mirror.ac.za/debian/ wheezy-backports/main AMD64 Packages
4.2-2 0
995 http://debian.mirror.ac.za/debian/ wheezy/main AMD64 Packages
995 http://debian.mirror.ac.za/debian/ stable/main AMD64 Packages
995 http://ftp.us.debian.org/debian/ stable/main AMD64 Packages
するとき、4.2-2を選びます
apt-get install -t testing appX
そして、行うときに4.8を選択します
apt-get install appX/testing
Debianハンドブック:
-t targetRelease
アップグレードされたパッケージを検索するときに特定のディストリビューションを使用するようにapt-getに指示するには、-tまたは--target-releaseオプションを使用し、その後に必要なディストリビューションの名前を続ける必要があります(例:apt-get -tstableアップグレード)。
パッケージ/配布
Sources.listファイルが複数のディストリビューションについて言及している場合、インストールするパッケージのバージョンを指定することができます。 apt-get install package = versionを使用して特定のバージョン番号をリクエストできますが、通常は、Originのディストリビューション(Stable、Testing、またはUnstable)を示し、apt-get install package/distributionを使用することをお勧めします。
質問
どちらの場合も、必要な分布を指定しますが、手元の動作は2つのケース間で一貫していませんか?
私は同じ問題を抱えていましたが、私はそれを理解しました!!!
(もともとコメントしたかったのですが 元の回答 他の人もこの問題を抱えているようですが、当時は自分の意見が価値があるほどの魔法の「評判」ポイントがありませんでした、だからここに行きます。)
それは彼がapt-pinningのために選んだ値の癖です。 apt-get install my_package
を実行すると、aptは、固定優先度が最も高いものに基づいて、パッケージをインストールするソースを選択します。
システム設定全体(デフォルトリリース)の優先度は990です。
Apt-getコマンドに-t unstable
を追加すると、一時的に「不安定」になり、そのコマンドのデフォルトリリースになります。
彼は「安定」の固定優先度を995に設定しました。つまり、パッケージの優先度はデフォルトリリースの優先度よりもさらに高いため、パッケージは常に安定した状態からインストールされます。
だから修正?簡単-/etc/apt/preferences.d/security.pref
のピン優先度を995から900に変更するだけです。