【Linux】在 Linux 中查询系统架构


那年夏天我和你躲在 这一大片宁静的海

直到后来我们都还在 对这个世界充满期待

今年冬天你已经不在 我的心空出了一块

很高兴遇见你 让我终究明白

回忆比真实精彩

🎵 王心凌《那年夏天宁静的海》


在 Linux 系统中,了解系统架构对于安装软件、调试性能问题以及系统优化至关重要。本文将介绍几种在 Linux 中查询系统架构的方法,包括使用命令行工具和系统信息文件。

什么是系统架构?

系统架构(System Architecture)指的是计算机的硬件结构,包括处理器类型、指令集架构(ISA)、内存和I/O接口等。常见的处理器架构有 x86、x86_64(也称为AMD64)、ARM 等。

使用命令行工具查询系统架构

  1. uname 命令
    uname 命令用于显示系统信息,其中 -m 选项可以显示系统的硬件架构。
bash 复制代码
uname -m
示例输出:
x86_64

这个输出表示系统运行在 64 位的 x86 架构上。

  1. lscpu 命令
    lscpu 命令可以显示详细的 CPU 架构信息,包括架构类型、CPU 数量、线程数、内核数、CPU 频率等。
bash 复制代码
lscpu

示例输出:

less 复制代码
Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              4
On-line CPU(s) list: 0-3
Thread(s) per core:  2
Core(s) per socket:  2
Socket(s):           1
NUMA node(s):        1
Vendor ID:           GenuineIntel
CPU family:          6
Model:               142
Model name:          Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
Stepping:            10
CPU MHz:             2300.000
CPU max MHz:         4600.0000
CPU min MHz:         400.0000
BogoMIPS:            4599.99
Virtualization:      VT-x
L1d cache:           32K
L1i cache:           32K
L2 cache:            256K
L3 cache:            8192K
NUMA node0 CPU(s):   0-3
Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d
  1. arch 命令
    arch 命令是 uname -m 的简写形式,同样可以用于显示系统架构信息。
bash 复制代码
arch

示例输出:

复制代码
x86_64
  1. file 命令
    file 命令可以用于检查可执行文件的类型和架构信息。通过检查内核文件,可以确定系统架构。
bash 复制代码
file /bin/bash

示例输出:

bash 复制代码
/bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=ef3e1c6d3f4ab3e14e06bbfcb1e6d3791a7a7c4c, stripped

使用系统信息文件查询系统架构

  1. /proc/cpuinfo
    /proc/cpuinfo 文件包含有关 CPU 的详细信息,可以用来查询系统架构。
bash 复制代码
cat /proc/cpuinfo

示例输出(部分):

bash 复制代码
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 142
model name	: Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
stepping	: 10
cpu MHz		: 2300.000
cache size	: 8192 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 22
wp		: yes
  1. /proc/version
    /proc/version 文件显示内核版本和编译信息,可以间接了解系统的架构。
bash 复制代码
cat /proc/version

示例输出:

less 复制代码
Linux version 5.4.0-74-generic (buildd@lcy01-amd64-005) (gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04)) #83-Ubuntu SMP Wed May 12 18:58:09 UTC 2021

总结

了解系统架构对于系统管理和软件开发至关重要。在 Linux 中,有多种方法可以查询系统架构信息,包括使用 uname、lscpu、arch 和 file 命令,以及读取 /proc/cpuinfo 和 /proc/version 文件。通过这些方法,你可以轻松地获取系统的详细架构信息。

相关推荐
武子康几秒前
Java-160 MongoDB副本集部署实战 单机三实例/多机同法 10 分钟起集群 + 选举/读写/回滚全流程
java·数据库·sql·mongodb·性能优化·系统架构·nosql
强里秋千墙外道37 分钟前
【Linux】ssh升级到最新版本-以ubuntu为例
linux·运维·ssh
先做个垃圾出来………1 小时前
Docker容器部署方法
运维·docker·容器
minhuan1 小时前
构建AI智能体:七十五、用扣子平台创建工作流:从自动化到智能化的进阶之路
运维·自动化·工作流构建·意图识别工作流
老实巴交的麻匪1 小时前
(八)学习、实践、理解 CI/CD 与 DevOps:持续集成 CI,从源代码到容器镜像
运维·云原生·自动化运维
9ilk1 小时前
【仿RabbitMQ的发布订阅式消息队列】--- 介绍
linux·笔记·分布式·后端·rabbitmq
馨谙2 小时前
OpenSSH 安全配置核心概念解析
linux·服务器·网络
半桔2 小时前
【IO多路转接】IO 多路复用之 select:从接口解析到服务器实战
linux·服务器·c++·github·php
ink@re2 小时前
Linux iptables:四表五链 + 实用配置
linux·运维·服务器
共享家95272 小时前
Linux 信号控制
linux·服务器