解释 uname 输出:32 位还是 64 位?

解释 uname 输出:32 位还是 64 位?

我使用uname命令并得到:

Linux rufusruffcutt 3.2.0-35-generic-pae #55-Ubuntu SMP Wed Dec 5 18:04:39 UTC 2012 i686 i686 i386 GNU/Linux

这是什么意思?我如何判断这是一个 32 位还是 64 位内核版本?

答案1

man uname

-a, --all 按照以下顺序打印所有信息,但如果未知则省略 -p 和 -i:

   -s, --kernel-name
          print the kernel name

   -n, --nodename
          print the network node hostname

   -r, --kernel-release
          print the kernel release

   -v, --kernel-version
          print the kernel version

   -m, --machine
          print the machine hardware name

   -p, --processor
          print the processor type or "unknown"

   -i, --hardware-platform
          print the hardware platform or "unknown"

   -o, --operating-system
          print the operating system

因此就你的情况而言:

Linux       rufusruffcutt 3.2.0-35-generic-pae #55-Ubuntu SMP Wed Dec 5 18:04:39 UTC 2012 i686 i686 i386 GNU/Linux      

因此,您有一台机器硬件 i686,一种处理器类型i686,以及一个硬件平台i386

在 Ubuntu 版本中,i386是 32 位版本;在 64 位系统中,它们是x86_64

使用uname -i应该只给你硬件平台。

答案2

相反,您可以使用以下getconf命令:

getconf LONG_BIT

它将显示您的内核是 32 位还是 64 位。

答案3

i686 是具有 32 位字长的 Intel 处理器架构的名称。

相关内容