mimari amd64 olmasına rağmen i386 dosyalarını arıyor


15

Bağlı olmayan bir makinede linux / ubuntu güncellemek için bir dosya deposu kullanmaya çalışıyorum. Bu makinenin mimarisi (uname -a):

x86_64 GNU/Linux

Sonuçları dpkg --printarchitecture:

amd64

Bir Trusty Tahr amd64 makinesidir ve özellikle bunu yetenek yetenekleri.list dosyasında söylüyor. Ayrıca, ubuntu'daki "Bu Bilgisayar Hakkında" özel olarak makinenin 64 bit olduğunu söylüyor. Bu yüzden amd64 paketlerini makineye kurdum. Ancak, yapmaya çalıştığımda aşağıdaki apt-get updategibi hatalar alıyorum:

W: Failed to fetch file:/var/spool/apt-mirror-trusty/mirror/archive.ubuntu.com/ubuntu/dists/trusty/main/binary-i386/Packages  File not found

Yani, başka bir deyişle, 64 bit bir makine olmasına rağmen, apt açık bir şekilde i386 paketlerini okumaya çalışıyor. Bunu neden yapıyor ve 64 bit paketleri nasıl kullanabilirim?

Sources.list içinde i386'yı belirten hiçbir şey olmadığını unutmayın.

Sources.list dosyasındaki tek önerilmeyen satır:

deb file:///var/spool/apt-mirror-trusty/mirror/archive.ubuntu.com/ubuntu trusty main restricted universe multiverse

Belki de bu çoklu arşiv desteği Ubuntu'da varsayılan olarak etkindir çünkü i386 ve amd64'te bir şeyler derlemeyecek kadar tembel olan bazı ortak yazılım sağlayıcıları (Skype, cof, cof ..) vardır. Çok arşivli kitaplıklara ihtiyaç duyulacağından, dpkgvarsayılan olarak amd64 ve 32bit kardeş kabul edecek şekilde yapılandırılır. "Belki" diyorum çünkü bu bilgilerle ilgili resmi bir belge bulamadım. Sadece 2 sentim.

Yanıtlar:


25

Ubuntu amd64kurulumlarında, i386varsayılan olarak ek bir mimari olarak etkindir. apt& co. depoların, gördüğünüz hataya neden olan tüm yapılandırılmış mimarileri sağlamasını bekleyin.

Aynanızın yalnızca amd64paketleri olduğundan, onu şöyle işaretlemelisiniz:

deb [ arch=amd64 ] file:///var/spool/apt-mirror-trusty/mirror/archive.ubuntu.com/ubuntu trusty main restricted universe multiverse

Gerçekten sorun buydu. Bu düzeltme ile havuz kabul edildi ve güncellendi. Teşekkürler.
Tyler Durden

2
dpkg --print-foreign-architecturesçoklu arşiv desteğinin etkinleştirildiği mimariyi gösterecektir; Aynı sorunu yaşadım ve (muhtemelen şaşırtıcı bir şekilde) yukarıdaki komut bildirdi:i386
sxc731

Bu, varsayılan olarak ek mimarinin nasıl devre dışı bırakılacağını açıklamaz . [arch=amd64]Her debsatıra koymak iyi bir çözüm değildir. Bu nasıl yapılacağını açıklar: superuser.com/a/714392/376867
midenok

2
@midenok Her depo tanımlayıcısına bir kemer niteleyicisi eklemeyi nereden önerdim? i386Bir zahmetli depo ile başa çıkmak tamamen devre dışı bırakmak oldukça fazladır. Sorunda açıklanan soruna neden olan birden çok havuzunuz varsa, bunun yerel yapılandırmayla değil havuzların Mimarileri alanında bir sorun olduğunu gösterir .
Stephen Kitt

@Stephen Kitt Tamam, soruda açıklanan belirli bir sorunu çözdünüz. Ancak çözümünüz pratik değildir. Asker ve ben dahil çoğu insan paket listesinde i386 paketlerini görmek istemiyor.
midenok
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.