パッケージ バージョンのコード名 (「wheezy」または「sid」) を取得するにはどうすればよいですか?

パッケージ バージョンのコード名 (「wheezy」または「sid」) を取得するにはどうすればよいですか?

apt-cache showパッケージのさまざまなバージョンを表示します

# apt-cache show libc6:i386
Package: libc6
Version: 2.17-97
Architecture: i386
...

Package: libc6
Status: install ok installed
Version: 2.17-7
Architecture: i386
Multi-Arch: same
...

Package: libc6
Version: 2.13-38
Architecture: i386
...

# apt-get show libc6:amd64
Package: libc6
Version: 2.17-97
Architecture: amd64
...

Package: libc6
Version: 2.13-38
Architecture: amd64
...

しかし、パッケージ バージョンを stable/testing/unstable などのリリース コード名にマッピングするにはどうすればよいでしょうか?

[XY 問題メモ] - 何を試み、何が起こるか:

i386 Debian をブートストラップして amd64 バイナリも実行できるようにしようとしています (i386 をプライマリ アーキテクチャとして維持)。

  • 新しいamd64の世界を試すための第一歩として、プログラムを実行してみました。
  • libssl.so.1.0.0が見つかりませんでした。
  • libssl1.0.0:amd64をインストールしようとしましたが、
  • libgcc1の非互換性により停止しました。
  • libgcc1:amd64をインストールしようとしましたが、互換性がないというエラーが発生しました。
  • システムをより新しいパッケージ(apt-get upgradeゼロを表示するなど)にアップグレードしました。
  • 明示的にバージョンを指定してインストールすることにより、i386 libgcc 関連パッケージを強制的にアップグレードしました ( apt-get install libstdc++6=4.8.2-1 gcc-4.8-base=4.8.2-1 libgcc1=1:4.8.2-1 libgfortran3=4.8.2-1 libquadmath0=4.8.2-1 libgcc-4.8-dev=4.8.2-1 libgomp1=4.8.2-1 libitm1=4.8.2-1 libatomic1=4.8.2-1 libasan0=4.8.2-1 libstdc++-4.8-dev=4.8.2-1)
  • libgcc1:amd64 をインストールしてみましたが、以前に比べてエラーは減りましたが、libc6:amd64 がないためまだ停止しました。
  • libc6:amd64をインストールしようとしましたが、互換性の問題で停止しました。
  • によると、apt-cache info「私の」i386 バージョンの libc6 に対応する amd64 バージョンは現在存在しないことがわかりました。
  • さまざまなバージョンに混乱しています。どれがまだ「squeeze」のバージョン (古すぎる) で、どれが「sid」のバージョン (手動インストールでのみ使用可能、アップグレードでは使用不可) です。完全にアップグレードしたばかりなのに、ライブラリの「my」バージョンがないのはなぜですか?

[/XY問題メモ]

アップデート試したことapt-cache policy

# apt-cache policy libc6:i386
libc6:
  Installed: 2.17-7
  Candidate: 2.17-7
  Version table:
     2.17-97 0
         10 http://ftp.de.debian.org/debian/ sid/main i386 Packages
         10 http://ftp.mgts.by/debian/ testing/main i386 Packages
 *** 2.17-7 0
        100 /var/lib/dpkg/status
     2.13-38 0
        900 http://ftp.mgts.by/debian/ wheezy/main i386 Packages

私の libc6 はその中間のようです。

答え1

パッケージ バージョンのコード名 (「wheezy」または「sid」) を取得するにはどうすればよいですか?

sidDebian はローリングリリースなので、パッケージにはや がどこにも添付されていないためwheezy、パッケージをどこからインストールしたかを知る唯一の方法は を使用することですapt-cache policy package

libc6の問題について:

32 ビットから 64 ビットに「アップグレード」したい場合は、それは不可能であり、むしろシステムが壊れる可能性が高いです。

パッケージlibc6はすべての依存関係の母体です。最終的にシステムが64ビットか32ビットかを判断するものであり、変更は簡単ではありません。古い移行ガイドMultiarch と呼ばれる美しいものが存在するため、もう動作しません。別のガイドがありますしかしそれは危険すぎる実稼働環境(つまり自宅の PC)で試すと、おそらく起動できないシステムになり(それが唯一のシステムなら泣きそうになります)、再インストールするしか解決策はありません。つまり、コアまで 64 ビットのシステムが必要で、32 ビットがすでにインストールされているということですか? 解決策:

  1. VMを使用する
  2. LXCを使用する
  3. 再インストール
  4. 越えてみて
  5. 泣いて再インストール

それらが唯一の解決策です。

答え2

apt-cache madison を試しましたか?

eclipxe@localhost:~# apt-cache madison iceweasel
 iceweasel |     25.0-1 | http://ftp.debian.org/debian/ experimental/main amd64 Packages
 iceweasel | 24.1.0esr-1 | http://ftp.debian.org/debian/ unstable/main amd64 Packages
 iceweasel | 17.0.9esr-1~deb7u1 | http://ftp.debian.org/debian/ testing/main amd64 Packages

eclipxe@localhost:~# apt-cache madison iceweasel | awk '{print $1,$6}'
iceweasel experimental/main
iceweasel unstable/main
iceweasel testing/main

(私は不安定版 [ピン: 200] と実験版 [ピン: 1] で Debian テストを実行しています)

また、上位バージョンのパッケージをインストールする場合は、--target-release を使用するようにしてください。

apt-get install -t unstable iceweasel

関連情報