怎么看系统是ubuntu还是centos?

服务器

结论:通过查看系统文件、使用命令行工具或检查特定服务,可以快速判断服务器运行的是 Ubuntu 还是 CentOS。核心方法包括检查 /etc/os-release 文件、运行 cat /etc/issueuname -r 命令,以及观察默认的包管理器类型(如 apt 对应 Ubuntu,yum 对应 CentOS)。

以下是具体的方法和步骤:


1. 检查 /etc/os-release 文件

这是最直接的方法之一。该文件包含了操作系统的详细信息。

  • 打开终端并运行以下命令:
    cat /etc/os-release
  • 如果输出中包含 Ubuntu,则说明系统是 Ubuntu。
  • 如果输出中包含 CentOSAlmaLinux 等类似的名称,则说明系统是 CentOS。

示例输出:

  • Ubuntu:
    NAME="Ubuntu"
    VERSION="20.04.5 LTS (Focal Fossa)"
    ID=ubuntu
  • CentOS:
    NAME="CentOS Linux"
    VERSION="7 (Core)"
    ID="centos"

2. 查看 /etc/issue 文件

/etc/issue 文件通常包含系统发行版的基本信息。

  • 运行以下命令:
    cat /etc/issue
  • 如果显示类似 Ubuntu 20.04 的内容,则系统为 Ubuntu。
  • 如果显示类似 CentOS Linux 7 的内容,则系统为 CentOS。

注意: 在某些情况下,此文件可能被自定义或未更新,因此建议结合其他方法验证。


3. 检查默认包管理器

不同的 Linux 发行版使用不同的包管理工具:

  • Ubuntu 使用 aptdpkg

    apt --version

    如果命令成功执行且返回版本信息,则系统为 Ubuntu。

  • CentOS 使用 yumdnf

    yum --version

    如果命令成功执行且返回版本信息,则系统为 CentOS。


4. 通过内核版本辅助判断

虽然内核版本本身不能完全区分系统类型,但可以作为参考。

  • 运行以下命令:
    uname -r
  • Ubuntu 的内核版本通常以 generic 结尾,例如:
    5.4.0-122-generic
  • CentOS 的内核版本通常以 el7el8 结尾,例如:
    3.10.0-1160.el7.x86_64

5. 检查服务管理工具

Ubuntu 和 CentOS 使用不同的服务管理工具:

  • Ubuntu 默认使用 systemdupstart

    systemctl --version

    如果命令成功执行,则系统可能是 Ubuntu(或其他基于 Debian 的系统)。

  • CentOS 也使用 systemd,但可以通过检查默认的服务管理器进一步确认:

    ps -p 1
    • 如果 PID 1 是 systemd,则系统可能是 CentOS 或 Ubuntu。
    • 如果 PID 1 是其他进程(如 init),则需要进一步排查。

6. 测试常见命令的兼容性

尝试运行一些特定于发行版的命令:

  • Ubuntu 特定命令:

    lsb_release -a

    如果返回类似以下内容,则系统为 Ubuntu:

    No LSB modules are available.
    Distributor ID: Ubuntu
    Description:    Ubuntu 20.04.5 LTS
    Release:        20.04
    Codename:       focal
  • CentOS 特定命令:

    rpm -qa | grep centos

    如果返回类似以下内容,则系统为 CentOS:

    centos-release-7-9.el7.centos.x86_64

总结

通过以上方法,您可以轻松判断服务器运行的是 Ubuntu 还是 CentOS。推荐优先使用 cat /etc/os-releaselsb_release -a,因为它们提供了明确的操作系统信息。同时,结合包管理器和内核版本进行交叉验证,能够确保结果的准确性。

未经允许不得转载:CDNK博客 » 怎么看系统是ubuntu还是centos?