VPN ikili dosyanız bu CPU için mi derlendi? ELF başlığını okuyun
ELF sınıfı ve makinesi farklı alanlardır, yorumlayıcı ise üçüncüsüdür. Bir Pi veya başka bir karta VPN istemcisi kurmadan önce üçünü de okuyun.
Her iki dosya da 32 bit ve yalnızca biri kartınızda çalışır. Intel için bir ELF32 derlemesi ile ARM için bir ELF32 derlemesi sınıf alanında aynı fikirdedir ve önemli olan her şeyde ayrılır. 32 bit seçeneği sunan bir indirme sayfası, gerçekten indirdiğiniz dosyanın başlığını okuyana kadar size neredeyse hiçbir şey söylememiştir. Adını değiştirmek tek bir komutu bile değiştirmez.
Sınıf ve makine farklı soruları yanıtlar
Sınıf alanı dosyanın 32 bit mi 64 bit mi yapılar kullandığını söyler. Makine alanı dosyanın hangi komut kümesi için derlendiğini adlandırır. Yalnızca ilkini okumak, bir x86 derlemesinin tamamen inandırıcı görünen bir dosya adıyla bir ARM kartına inmesinin yoludur. Her iki değer de aynı komuttan gelir, bu yüzden birini atlamak çok kolaydır.
Aynı karışıklık 64 bit etiketler için de geçerlidir; burada aarch64 ve x86-64 bir sözcük boyutunu paylaşır ve tek bir komutu bile paylaşmaz. Tek bir 64 bit indirme listeleyen bir satıcı sayfası kendi derlemesini tanımlar, sizin makinenizi değil. Sayfadaki sütun başlığı yerine dosyanın başlığını kontrol edin.
readelf -h ./vendor-vpn readelf -l ./vendor-vpn | head -20 file ./vendor-vpn
İlk komut başlığı yazdırır, sınıf ve makine dahil. İkincisi program başlıklarını gösterir; yorumlayıcı isteği oradadır. Üçüncüsü, bir tablo ihtiyacınızdan fazla olduğunda size tek satır verir.
Çalıştırma izni eklemek veya bir dağıtım denetimini yamalamak hiçbir şeyi çevirmez. Emülasyon, platformun desteklediği yerde, kendi performans ve bağımlılık maliyeti olan bir dağıtım kararıdır.
Kurulum programını çalıştırmadan önce başlığı okuyun
Güvenilir bir yapıtı ondan bir şey çalıştırmadan önce inceleyin. Yarı yolda başarısız olan bir kurulum programı değiştirilmiş kitaplıklar ve çalışan hiçbir şey bırakabilir; bu, başladığınız arşivden daha kötü bir başlangıç noktasıdır. Başlık incelemesi salt okunurdur ve sistemde hiçbir şeyin değişmemesi anlamında geri alınabilir.
Makine alanını çalışan sistemin paket mimarisiyle karşılaştırın, kartın pazarlama adıyla değil. 32 bit kullanıcı alanı çalıştıran 64 bit bir CPU 32 bit derlemeye ihtiyaç duyar ve bu ayrıntı hangi indirmenin yerel olduğuna karar verir. Kısıt kartın yeteneği değil, kurulu kullanıcı alanıdır.
dpkg --print-architecture uname -m getconf LONG_BIT
İlk komut sistemin hangi mimari için paket kurduğunu bildirir ve eşleşmesi gereken değer budur. Diğer ikisi çekirdeği ve sözcük boyutunu tanımlar ve çok mimarili bir kurulumda kullanıcı alanından farklı olabilirler.
Bu yanıtlar farklılaştığında, başka bir arşiv indirmeden önce satıcının hangisini desteklediğine karar verin. Tahmin etmek, her biri farklı bir noktada başarısız olan bir kurulum döngüsü yaratır ve her başarısızlık yeni bir sorun gibi görünür.
Yorumlayıcıyı kontrol edin, yalnızca mimariyi değil
Dinamik bir çalıştırılabilir dosya, beklediği yükleyiciyi bir program başlığına kaydeder. Yükleyici yolunun farklı olduğu bir sistemde çekirdek, makine alanı tam olarak eşleşse bile dosyayı başlatmayı reddeder. İnsanları eksik kitaplıkları aramaya gönderen başarısızlık budur.
Hata iletisi hangi durumda olduğunuzu söyler ve iki durumu karıştırmak kolaydır. Bir biçim veya mimari reddi, eksik bir dosya veya yorumlayıcıdan farklıdır, ve yalnızca biri başka bir paket kurularak düzeltilir.
readelf -l ./vendor-vpn | grep -A1 INTERP ls -l /lib64/ld-linux-x86-64.so.2
İlk komut, ikili dosyanın istediği yorumlayıcı yolunu gösterir. İkincisi o yolun var olup olmadığını denetler; bu, yanlış bir derlemeyi eksik bir yükleyiciden ayırır.
Güvenilmeyen bir ikili dosya üzerinde bağımlılık listesi çalıştırmayın, çünkü bazı uygulamalar inceledikleri dosyayı çalıştırabilir. İncelemeyi salt okunur tutun ve desteklenmeyen bir derlemeyi başlatmak için yükleyici sembolik bağlantıları ekleme dürtüsüne karşı koyun.
Gerçekler elinizdeyken bir derleme isteyin
Satıcıya işletim sistemi sürümünü, paket mimarisini, sınıf ve makine değerlerini ve ilk hata iletisini gönderin. Bu bileşim yararlı bir yanıt kazanır; genel bir hatanın ekran görüntüsü ise bir destek şablonu kazanır.
İkili dosya sorusunu yapılandırma sorusundan ayrı tutun. Doğru derleme başladıktan sonra profiller, kimlik bilgileri ve yollar hâlâ kendi sorunlarıdır ve hiçbir profil düzenlemesi yanlış mimarili bir ikili dosyayı çalıştırmaz.