GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Führen Sie die 64-Bit-App auf einem 32-Bit-Ubuntu-System aus

Sie können das nicht direkt unter Linux auf x86_64 mit einem 32-Bit-Kernel tun. Sie benötigen einen 64-Bit-Kernel, um 64-Bit-Code ausführen zu können. (Hinweis:Kernel. Sie können ein 32-Bit-Userland auf einem 64-Bit-Kernel ausführen und Unterstützung für 64-Bit-Binärdateien installieren. Wie einfach dies ist, hängt von der Distribution ab. Beispiel hier für Debian.)

Einige Virtualisierungssoftware ist dazu in der Lage (mit Einschränkungen hinsichtlich des verwendeten CPU-Typs), und Emulatoren können dies auch. Aber um es nativ auszuführen, benötigen Sie einen 64-Bit-Kernel.

Da die meisten 64-Bit-Distributionen 32-Bit-Unterstützung haben (entweder standardmäßig oder installierbar), sollten Sie diese verwenden, wenn Sie sowohl 64-Bit- als auch 32-Bit-Binärdateien auf demselben Betriebssystem ausführen müssen.


Erweitern der Antwort von @Mat:

Ja, manche Virtualisierungssoftware kann das. Das größte zu bewältigende Hindernis besteht darin, dass in einer 32-Bit-Umgebung die 64-Bit-Funktionen der CPU nicht verfügbar sind und auch die Funktionen eines 64-Bit-Kernels nicht verfügbar sind. Es ist sogar so, wenn Ihre CPU hat 64-Bit-Unterstützung (seit etwa 2003 haben alle).

Ihre Frage besagt implizit, dass Sie die 64-Bit-App in Ihrer eigenen Systemumgebung ausführen möchten. Wenn es wirklich Ihre Absicht ist, schließt dies alle auf virtuellen Maschinen basierenden Lösungen aus. Das einzige, was mir noch bekannt ist, ist die Kernel-Emulation des qemu. Also:

qemu-x86_64 ./your_64bit_app

Es führt Ihre App auf Ihrem aktuellen System mit Ihrem aktuellen Kernel und Ihren aktuellen Umgebungsvariablen aus . Natürlich ist es nicht sehr schnell, es muss deine CPU emulieren.

Es kann nur Linux x86-64-Apps emulieren.


Linux
  1. Debian – Wie führt man 32-Bit-Programme auf einem 64-Bit-Debian/Ubuntu aus?

  2. Befehle nach Systeminaktivität planen?

  3. 32-Bit-App unter 64-Bit-Linux ausführen?

  4. Der Adressraum des 32-Bit-Prozesses unter 64-Bit-Linux

  5. Installieren Sie 64-Bit-Ubuntu oder 32-Bit?

So aktualisieren Sie den Linux-Kernel in Ubuntu und Linux Mint

Ist Ihr Ubuntu ein 32-Bit- oder ein 64-Bit-Betriebssystem?

Ist Ihr Ubuntu ein 32-Bit- oder ein 64-Bit-Betriebssystem? [GUI + Terminal]

So ändern Sie den Standardkernel in Ubuntu 22.04 | 20.04 LTS

So aktualisieren Sie Ubuntu 18.04 auf Ubuntu 20.04

Wie kann ich überprüfen, ob das Linux-System 32-Bit oder 64-Bit ist?