จาก pid ของกระบวนการที่ทำงานบน x64 linux ฉันจะบอกได้อย่างไรว่ามันใช้ไบนารี 32 หรือ 64 บิต
ฉันสามารถดูไบนารีที่มันหมด 'ps' และทำไฟล์ในนั้น แต่ฉันสงสัยว่ามีวิธีที่จะบอกโดยดูที่ / proc / หรืออะไรทำนองนั้น
จาก pid ของกระบวนการที่ทำงานบน x64 linux ฉันจะบอกได้อย่างไรว่ามันใช้ไบนารี 32 หรือ 64 บิต
ฉันสามารถดูไบนารีที่มันหมด 'ps' และทำไฟล์ในนั้น แต่ฉันสงสัยว่ามีวิธีที่จะบอกโดยดูที่ / proc / หรืออะไรทำนองนั้น
คำตอบ:
คุณสามารถใช้file
เพื่อรับข้อมูล:
ตัวอย่างเช่น:
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
หรืออ่านจาก / 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
สิ่งนี้จะบอกคุณว่าเป็น 64 หรือ 32 บิต
เริ่มต้นจากPID
คุณสามารถ:
file -L /proc/PID/exe