查看主机操作系统是欧拉还是centOS?

云计算

如何查看主机操作系统是欧拉还是CentOS

结论先行:要快速区分主机运行的是欧拉(openEuler)还是CentOS操作系统,可通过检查/etc/os-release文件内容、使用hostnamectl命令或运行cat /etc/centos-release命令进行确认。欧拉和CentOS有显著不同的发行版标识信息

常用检查方法

方法1:检查/etc/os-release文件

cat /etc/os-release
  • 欧拉系统会显示包含"openEuler"的标识
  • CentOS系统会显示"CentOS Linux"或"CentOS Stream"

方法2:使用hostnamectl命令

hostnamectl
  • 输出中的"Operating System"行会明确显示系统类型

方法3:检查CentOS特有文件

cat /etc/centos-release  # 仅CentOS存在此文件
  • 如果文件存在且显示版本信息,则是CentOS
  • 欧拉系统没有此文件

关键区分特征

  • 欧拉系统标识特征

    • /etc/os-release中包含NAME="openEuler"
    • 通常会有ID="openEuler"的配置项
    • 版本信息可能包含"Euler"或"openEuler"字样
  • CentOS系统标识特征

    • /etc/os-releaseNAME="CentOS Linux"NAME="CentOS Stream"
    • 存在/etc/centos-release文件
    • 版本信息明确包含"CentOS"字样

其他辅助方法

查看内核信息

uname -a
  • 欧拉系统内核可能包含"euler"字样
  • CentOS内核通常显示"el7"、"el8"等(RHEL兼容内核标识)

检查安装的软件包

rpm -qa | grep -i euler  # 查找欧拉相关包
rpm -qa | grep -i centos # 查找CentOS相关包

自动化检测脚本示例

#!/bin/bash
if [ -f /etc/os-release ]; then
    source /etc/os-release
    if [[ "$NAME" == *"openEuler"* ]]; then
        echo "系统是 openEuler 版本: $VERSION"
    elif [[ "$NAME" == *"CentOS"* ]]; then
        echo "系统是 CentOS 版本: $VERSION"
    else
        echo "未知系统: $NAME"
    fi
elif [ -f /etc/centos-release ]; then
    echo "系统是 CentOS: $(cat /etc/centos-release)"
else
    echo "无法确定系统类型"
fi

最终建议:对于生产环境,推荐同时使用多种方法交叉验证,特别是检查/etc/os-release/etc/centos-release这两个最可靠的文件,以避免单一方法的误判。欧拉作为国产操作系统,其标识信息与CentOS有本质区别,通过系统文件内容可以明确区分。

未经允许不得转载:CLOUD云枢 » 查看主机操作系统是欧拉还是centOS?