Bagaimana cara mendapatkan codename ("wheezy" atau "sid") dari versi paket?

0

apt-cache show memperlihatkan berbagai versi paket

# 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
...

Tetapi bagaimana memetakan versi paket untuk merilis nama kode seperti stable / testing / unstable?

[Catatan masalah XY] - apa yang saya coba dan apa yang terjadi:

Mencoba bootstrap i386 debian saya untuk juga menjalankan binari amd64 (menjaga i386 sebagai lengkungan utama),

  • Sebagai langkah pertama dalam mencoba dunia amd64 baru, saya mencoba menjalankan program,
  • Gagal menemukan libssl.so.1.0.0,
  • Saya mencoba menginstal libssl1.0.0: amd64,
  • dihentikan oleh ketidakcocokan libgcc1,
  • mencoba menginstal libgcc1: amd64, mendapat kesalahan tentang ketidakcocokan,
  • meningkatkan sistem ke paket yang lebih baru (seperti apt-get upgrademenunjukkan angka nol),
  • memperbarui paket terkait libgcc i386 secara paksa dengan menginstal dengan versi eksplisit yang ditentukan ( 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)
  • mencoba menginstal libgcc1: amd64, mendapat lebih sedikit kesalahan dibandingkan dengan sebelumnya, tetapi masih terhenti karena tidak adanya libc6: amd64,
  • mencoba menginstal libc6: amd64, dihentikan oleh ketidakcocokan besar-besaran,
  • menemukan (menurut apt-cache info) bahwa untuk versi "my" i386 libc6 saat ini tidak tersedia versi amd64 yang sesuai.
  • Bingung dengan berbagai versi: yang masih dari "pemerasan" (terlalu tua), yaitu dari "sid" (hanya tersedia untuk instalasi manual, bukan untuk peningkatan). Mengapa tidak ada perpustakaan versi "saya" walaupun saya baru saja meningkatkan sepenuhnya? ..

[/ Catatan masalah XY]

Perbarui Mencoba 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

Sepertinya libc6 saya adalah sesuatu di antaranya.

Vi.
sumber
Kecuali ada informasi penting yang saya tidak tahu, biner AMD64 TIDAK AKAN PERNAH berjalan pada mesin i386, 64 bit dapat berjalan 32 bit, tetapi tidak sebaliknya.
Saat ini saya menjalankan sistem i386_32 pada kernel i386_64. Ini berjalan dengan baik. Tapi saya ingin memulai migrasi lambat ke 64-bit. Langkah selanjutnya adalah perpustakaan.
Vi.
@Lowki jika dia memiliki kernel 64-bit (dengan CPU 64-bit) dan dependensi amd64, maka tidak ada masalah. Bagaimana Anda menjalankan program 32-bit pada versi 64-bit Ubuntu?
Braiam
@Braiam, Mengapa mengganti judul? Pertanyaan utama sudah dijawab ( apt-cache policy- Saya tidak tahu sebelumnya). Sekarang diskusi tentang hal yang relatif tidak berhubungan.
Vi.

Jawaban:

1

Bagaimana cara mendapatkan codename ("wheezy" atau "sid") dari versi paket?

Karena Debian adalah rilis bergulir, paket tidak memiliki sidatau wheezyterpasang di mana pun, satu-satunya cara untuk mengetahui dari mana Anda menginstal paket itu gunakan apt-cache policy package.

Tentang masalah libc6:

Jika Anda ingin "memutakhirkan" dari 32 ke 64-bit maka itu tidak mungkin, atau lebih mungkin Anda merusak sistem.

The libc6paket adalah tuan ibu dari semua dependensi. Apakah yang akhirnya akan mengetahui apakah sistem Anda 64 atau 32 bit, dan mengubahnya tidak mudah. Panduan lama untuk bermigrasi tidak akan berfungsi lagi karena ada keindahan bernama Multiarch. Ada panduan lain tetapi terlalu berbahaya untuk dicoba dalam produksi (alias PC rumah Anda) dan Anda mungkin akan berakhir dengan sistem yang tidak dapat di-boot (mulai menangis jika itu hanya Anda) dengan satu-satunya solusi instal ulang. Jadi, Anda ingin sistem 64-bit ke inti dan sudah menginstal 32-bit? Solusi:

  1. Gunakan VM
  2. Gunakan LXC
  3. Pasang kembali
  4. Cobalah untuk menyeberanginya
  5. Menangis lalu instal ulang

Itulah satu-satunya solusi Anda.

Braiam
sumber
Instalasi libc6: amd64 seharusnya tidak berbahaya karena sistemnya adalah i386, jadi saat ini tidak ada yang bergantung pada libc6: amd64. Tetapi versi libc6: amd64 dan libc6: i386 harus cocok. Tetapi saya tidak dapat menemukan versi yang diperlukan untuk amd64 dan saat ini tidak tahu mengapa ...
Vi.
Sistem laptop utama saya didukung, jadi saya berharap dapat kembali jika diperlukan.
Vi.
Tidak dapat memiliki libc6: i386 dan libc6: amd64 secara bersamaan? Untuk apa multiarch itu dalam kasus ini? Saya ingin dapat menginstal dan / atau menjalankan kedua-satunya program i386 dan hanya amd64 ...
Vi.
Multiarch is the term being used to refer to the capability of a system to install and run applications of multiple different binary targets on the same system.-> Sepertinya apa yang saya butuhkan, harapkan untuk saya For example running a i386-linux-gnu application on an amd64-linux-gnu system.terbalik: i386 harus tetap primery untuk sementara waktu, dan amd64 ekstra. Bagaimana saya mengharapkan menginstal paket amd64 jika sebagian besar dari mereka bergantung pada libc6: amd64 yang tidak dapat diinstal dengan desain ( Breaks: libc6:amd64)?
Vi.
Sebagai program pertama yang memeriksa x86_64, saya mencoba menjalankannya eureqa_0_99_2_X11_x86-64. Gagal dengan pustaka yang hilang libssl.so.1.0.0. (libc6 sendiri tampaknya benar-benar tersedia /lib64). Saya mencoba menginstal libssl1.0.0: amd64, tetapi gagal karena tidak dapat menemukan deps amd64 dasar ...
Vi.
2

Sudahkah Anda mencoba dengan 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

(Saya menjalankan pengujian debian dengan [Pin: 200] tidak stabil dan eksperimental [Pin: 1])

Juga, ketika Anda menginstal paket dari versi yang lebih tinggi coba gunakan --target-release:

apt-get install -t unstable iceweasel
Carlos C Soto
sumber
Bagus, hanya halaman manual yang mendokumentasikannya D :!
Braiam
juga apt-show-versi dapat membantu ini
Carlos C Soto
apt-show-versions libc6-> libc6/testing uptodate 2.17-97; apt-show-versions libc6:i386-> libc6:i386 not installed (even not available)... Apakah dia tahu tentang multiarch?
Vi.
Apt-show-versi saya adalah 0.22.3, ini adalah output saya: # apt-show-versi libc6 libc6: amd64 / testing 2.17-97 libc6 uptodate: i386 / pengujian 2.17-97 uptodate
Carlos C Soto
Dukungan multiarch di apt-show-versi telah ditambahkan di versi 0.21. Dalam versi stabil saat ini adalah 0,20. Mungkin apt-get install -t testing apt-show-versions?
Carlos C Soto