我如何知道我使用的是哪个版本的 Linux?

cwd*_*cwd 124 linux ssh version system-information info

很多时候,我会通过 ssh 进入一个新客户端的机器来更改他们的网站配置,而无需对服务器配置了解太多。我已经看到了一些获取有关您正在使用的系统的信息的方法,但是是否有一些标准命令可以告诉我我使用的是哪个版本的 Unix/Linux 以及基本系统信息(例如它是否是 64 位系统)?与否),诸如此类?

基本上,如果你刚刚登录到一个盒子并且对它一无所知,你会检查什么东西,你会使用什么命令来做到这一点?

小智 107

如果我需要知道什么是 Linux/Unix , 32/64 位

uname -a 
Run Code Online (Sandbox Code Playgroud)

这会给我几乎所有我需要的信息,

如果我还需要知道 Linux 机器上的版本(Centos 5.4,或 5.5 或 5.6),我会进一步检查该文件/etc/issue以查看其发布信息(或对于 Debian / Ubuntu /etc/lsb-release

另一种方法是使用该lsb_release实用程序:

lsb_release -a
Run Code Online (Sandbox Code Playgroud)

或者为 RHEL 派生系统做一个rpm -qa | grep centos-releaseorredhat-release

  • 在 2016 年,`lsb_release` 似乎不再适用于现代发行版。我在 Amazon Linux AMI 版本 2016.03 和 CentOS Linux 7 上测试了该命令,但没有找到。似乎 ls `cat /etc/os-release` 是目前最好的解决方案,如果有点不透明,`uname -a` 有点可用(例如 Amazon Linux AMI 版本 2016.03 与 Linux ip-xxxx 4.4.11-23.53.amzn1 .x86_64 #1 SMP Wed Jun 1 22:22:50 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux) (4认同)

小智 55

使用以下命令获取更多详细信息:

  1. cat /etc/*release*
  2. uname -a

  • 我比接受的答案更喜欢这个答案 (5认同)

小智 6

cat /proc/version

结果:

Linux version 3.14.27-100.fc19.x86_64 (mockbuild@bkernel02.phx2.fedoraproject.org) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-7) (GCC) ) #1 SMP Wed Dec 17 19:36:34 UTC 2014
Run Code Online (Sandbox Code Playgroud)

我相信这适用于大多数发行版,并提供cat /etc/*release*uname -a. 但是,/proc现在避免将用于进程以外的事物,所以也许有一天它会消失。

  • 在 Apline 3.10.4 上,这返回了一些意想不到的东西:`Linux version 4.19.76-linuxkit (root@d203b39a3d78) (gcc version 8.3.0 (Alpine 8.3.0)) #1 SMP Thu Oct 17 19:31:58 UTC 2019` (2认同)

rah*_*hmu 5

您应该查看uname命令。

我必须处理大量的异构机器。uname -a通常是我登录时的第一反应。


小智 5

在这里结合一些想法:

cat /etc/*_version /etc/*-release && uname -a

应该在任何发行版上都能满足您的需求。


snr*_*snr 5

有很多答案,但我正在寻找更通用的答案。AFAI 关注大多数系统上的以下工作。

cat /etc/os-release
Run Code Online (Sandbox Code Playgroud)

示例输出:

sh-4.4$ cat /etc/os-release                                                                                                                                                                           
NAME=Fedora                                                                                                                                                                                           
VERSION="26 (Twenty Six)"                                                                                                                                                                             
ID=fedora                                                                                                                                                                                             
VERSION_ID=26                                                                                                                                                                                         
PRETTY_NAME="Fedora 26 (Twenty Six)"                                                                                                                                                                  
ANSI_COLOR="0;34"                                                                                                                                                                                     
CPE_NAME="cpe:/o:fedoraproject:fedora:26"                                                                                                                                                             
HOME_URL="https://fedoraproject.org/"                                                                                                                                                                 
BUG_REPORT_URL="https://bugzilla.redhat.com/"                                                                                                                                                         
REDHAT_BUGZILLA_PRODUCT="Fedora"                                                                                                                                                                      
REDHAT_BUGZILLA_PRODUCT_VERSION=26                                                                                                                                                                    
REDHAT_SUPPORT_PRODUCT="Fedora"                                                                                                                                                                       
REDHAT_SUPPORT_PRODUCT_VERSION=26                                                                                                                                                                     
PRIVACY_POLICY_URL=https://fedoraproject.org/wiki/Legal:PrivacyPolicy                                                                                                                                 
Run Code Online (Sandbox Code Playgroud)

  • 这将适用于使用 systemd 的 Linux 发行版。对于那些不使用 systemd 的发行版的旧版本,这将不起作用(例如 RHEL 6),对于根本不使用 systemd 的发行版,这将不起作用。[第二个投票最多的答案](https://unix.stackexchange.com/a/193559/135943) 无论如何都会处理这个文件,所以没有理由不喜欢更通用的命令。 (3认同)