天天看点

查看Linux系统的体系结构的命令uname命令file命令arch命令dpkg命令getconf 命令另一种方式参考

计算机的体系结构从指令集的复杂度上可以分两类,一是复杂指令集CISC,主要是X86架构。另一类是精简指令集RISC,这个比较多,主要是ARM、MIPS、PowerPC等。

拿到一块开发板,有时候想快速的知道它的体系结构或者叫系统架构,linux上提供了比较多的方法来判断。下面列几种相对常见一些的

uname命令

uname -a
[email protected]:~$ uname -a
Linux tegra-ubuntu 4.4.38-tegra #1 SMP PREEMPT Fri Jul 28 09:55:22 PDT 2017 aarch64 aarch64 aarch64 GNU/Linux
           

aarch64就是ARM架构

[email protected]:~$ uname -a
Linux ubuntu 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
           

X86架构

[email protected]:~# uname -a
Linux DrogooBox 3.3.8 #33 Tue Mar 22 15:02:01 CST 2016 mips GNU/Linux
           

MIPS架构

file命令

file看一下本地的可执行程序,比如/bin/bash,随便找个可执行程序就可以。

file /bin/bash
[email protected]:~$ file /bin/bash 
/bin/bash: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-, for GNU/Linux 3.7.0, BuildID[sha1]=64c27467ad7a6c507c8f79464fea872fed5dd044, stripped
           

里面有个ARM,显然是ARM架构。

[email protected]:~$ file /bin/bash
/bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/l, for GNU/Linux 2.6.32, BuildID[sha1]=04eca96c5bf3e9a300952a29ef3218f00487d37b, stripped
           

显然是X86架构

arch命令

arch命令给出的结果比较简洁主要用于显示操作系统架构类型,与 uname -m 命令非常类似。如果输出 x86_64 则表示为 64 位系统,如果输出 i686 或 i386 则表示为 32 位系统。

arch
[email protected]:~$ arch
aarch64
           

ARM架构

[email protected]:~$ arch
x86_64
           

X86架构

dpkg命令

dpkg 的命令可用于查看 Debian/ Ubuntu 操作系统是 32 位还是 64 位,此命令只适用于基于 Debian 和 Ubuntu 的 Linux 发行版。如果当前 Linux 是 64 位则输出 amd64,是 32 位则会输出 i386。

dpkg --print-architecture
           

getconf 命令

getconf 命令主要用于显示系统变量配置,我们也可使用如下参数来查看 Linux 系统架构:

getconf LONG_BIT
           

另一种方式

直接去看cpuinfo信息,然后自己再简单分析一下即可。

cat /proc/cpuinfo
           

参考

1. 如何查看linux系统的体系结构

2. 查看Linux系统架构类型的5条常用命令

继续阅读