日期:2014-05-16  浏览次数:20612 次

如何判断Linux是32位还是64位

方法一:getconf LONG_BIT

在linux终端输入getconf LONG_BIT命令

如果是32位机器,则结果为32

[root@localhost ~]# getconf LONG_BIT
32

如果是64位机器,则结果为64

[root@localhost ~]# getconf LONG_BIT
64

?

方法二:uname -a

如果是64位机器,会输出x86_64

[chenzhou@testweb01 ~]$ uname -a
Linux testweb01 2.6.18-308.4.1.el5 #1 SMP Tue Apr 17 17:08:00 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux

可以看到,uname-a执行后的结果中输出了x86_64,说明该机器是64位的,否则代表该机器是32位的

[root@localhost ~]# uname -a
Linux localhost.localdomain 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:54 EDT 2009 i686 i686 i386 GNU/Linux

?

方法三:file /sbin/init 或者 file /bin/ls

示例:32位机器

file /sbin/init

[root@localhost ~]# file /sbin/init
/sbin/init: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped

file /bin/ls

[root@localhost ~]# file /bin/ls
/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped

示例:64位机器

file /sbin/init

[chenzhou@testweb01 ~]$ file /sbin/init
/sbin/init: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped

file /bin/ls

[chenzhou@testweb01 ~]$ file /bin/ls
/bin/ls: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped

?可以通过命令结果中的64-bit或者32-bit来判断该机器是64位还是32位