了解Linux中的uname命令

时间:2020-03-05 15:29:59  来源:igfitidea点击:

uname代表UNIX名称,此用命令为用户提供重要的系统信息。

在Linux上使用uname命令

有几个选项可以过滤掉我们需要的特定信息。

uname [options]

此命令真的是不言自明的,所以我将列出可能的选项和它们的输出描述。

然后我将在我的机器上完成每个机器并显示输出。
随便跟随。

uname命令选项

|功能|快捷键|
| --- - | --- |
|内核名称| -S |
|内核释放| -r |
|内核版本* | -v |
|网络节点名称(主机名)| -N |
|机器架构| -m |
|处理器架构| -P |
|硬件平台(OS架构)| -i |
|操作系统| -O |

uname命令输出

我叫做每个选项来向我们展示我的系统上的输出。

Hyman@theitroad:~$uname -s
Linux
Hyman@theitroad:~$uname -r
5.3.0-22-generic
Hyman@theitroad:~$uname -v
#24+system76~1573659475~19.04~26b2022-Ubuntu SMP Wed Nov 13 20:0
Hyman@theitroad:~$uname -n
theitroad
Hyman@theitroad:~$uname -m
x86_64
Hyman@theitroad:~$uname -p
x86_64
Hyman@theitroad:~$uname -i
x86_64
Hyman@theitroad:~$uname -o
GNU/Linux

-M,-P和-I的输出在我的系统上是相同的,但这些值不引用相同的信息。
如果是一个32位系统,则输出将不同。

如果我们使用虚拟机,我们可能也会得到不同的输出。
我的一个,-p和-i返回"未知"。

这是一个使用旧Ubuntu VM的示例。

Hyman@theitroad: ~$uname -p
unknown
Hyman@theitroad: ~$uname -i
unknown

与uname -a一起放在一起

还有一个选择。
如果你只想要一个包含所有这些信息的字符串怎么办?
是的,你可以用-a做到这一点!

这是uname -a命令的结果:

Hyman@theitroad:~$uname -a
Linux pop-os 5.3.0-22-generic #24+system76~1573659475~19.04~26b2022-Ubuntu SMP Wed Nov 13 20:0 x86_64 x86_64 x86_64 GNU/Linux

让我们再次分解输出:

  • Linux - OS内核名称
  • POP-OS - 主机名
  • 5.3.0-22-通用 - 内核发布
  • #24 + System76~1573659475~19.04~26B2022-Ubuntu SMP Nov 13 20:0 - 关于上次编译内核的详细信息
  • X86_64 - 机器架构
  • x86_64 - 处理器架构(x86_64表示64位)
  • x86_64 - 操作系统的架构
  • GNU/Linux - 操作系统

我们可以通过GUI在不同的位置提供此信息,但没有任何内容击败此简单命令的速度和易于易于释放。

现在让我向我们展示此命令最有用的例子。

使用uname -r获取内核版本

我们可以使用-r选项获取Linux内核版本信息:

Hyman@theitroad:~$uname -r
5.3.0-22-generic

使用uname-n获取主机名

有方法可以在Linux中获取主机名。
其中一个是使用uname命令的-n选项:

Hyman@theitroad:~$uname -n
theitroad

获取处理器架构(32位或者64位)

虽然我们没有在Linux中获取详细的CPU信息,但肯定会发现CPU是否为-p选项32位或者64位。

Hyman@theitroad:~$uname -p
x86_64

x86_64表示64位。
I686,I386等意味着32位。

获取操作系统架构(32位或者64位)

我们可以在64位CPU上安装32位OS。
因此要找出操作系统的架构,请使用-i选项:

Hyman@theitroad:~$uname -i
x86_64