Feststellen, ob der Linux-Prozess 64-Bit ist

23

Wie kann ich angesichts der PID eines Prozesses, der unter einem x64-Linux ausgeführt wird, feststellen, ob eine 32- oder 64-Bit-Binärdatei ausgeführt wird?

Ich kann mir die Binärdatei ansehen, auf der nicht mehr genügend 'ps' vorhanden ist, und eine Datei darüber erstellen, aber ich habe mich gefragt, ob es eine Möglichkeit gibt, dies durch einen Blick auf / proc / oder so etwas zu erkennen.

Naumcho
quelle

Antworten:

30

Sie können verwenden file, um diese Informationen zu erhalten:

Beispielsweise:

chris@obsidian:~$ file /usr/bin/perl
/usr/bin/perl: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), for GNU/Linux 2.6.8, dynamically linked (uses shared libs), stripped

oder lese aus / proc /

chris@obsidian:~$ file -L /proc/[PID]/exe
/proc/[PID]/exe: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.8, dynamically linked (uses shared libs), stripped

Hier erfahren Sie, ob es sich um 64 oder 32-Bit handelt.

Matthieu Cartier
quelle
5

Ausgehend von PIDkönnen Sie:

file -L /proc/PID/exe
cYrus
quelle