努力
加油

怎么确认轻量应用服务器安装的是Ubuntu还是CentOS?

确认轻量应用服务器(无论是阿里云、腾讯云还是华为云等厂商)底层跑的是 Ubuntu 还是 CentOS,最直接且准确的方法是通过 SSH 登录到服务器后,在终端执行几个简单的命令。

别被“轻量”两个字迷惑了,它本质上还是一台 Linux 虚拟机,内核和文件系统逻辑与标准 ECS/CVM 没有区别。以下是几种常用且可靠的验证方式,按推荐程度排序:

1. 查看发行版标识文件(最权威)

Linux 系统通常在 /etc/ 目录下存放描述自身版本的文件。这是判断依据最充分的地方。

方法 A:查看 os-release(现代 Linux 通用)
绝大多数较新的 Ubuntu(16.04+)和 CentOS(7+)都支持此文件。

cat /etc/os-release

输出解读:

  • 如果看到 NAME="Ubuntu" 或 PRETTY_NAME="Ubuntu 20.04 LTS",那就是 Ubuntu。
  • 如果看到 NAME="CentOS Linux" 或 ID="centos",那就是 CentOS。

方法 B:查看特定发行版的专属文件
如果上面的命令输出不全,可以针对性地查看:

  • 检查是否为 Ubuntu:

    cat /etc/lsb-release

    注意:CentOS 通常没有这个文件,或者内容不同。

  • 检查是否为 CentOS:

    cat /etc/redhat-release

    注意:Ubuntu 通常没有这个文件。

2. 使用 hostnamectl 命令(简洁直观)

这是一个系统管理工具,直接显示操作系统类型和版本,适合快速确认。

hostnamectl

输出示例:

  • Ubuntu:
    Operating System: Ubuntu 22.04.3 LTS
              Kernel: Linux 5.15.0-xx-generic
        Architecture: x86-64
  • CentOS:
    Operating System: CentOS Linux 7 (Core)
              Kernel: Linux 3.10.0-xxx.el7.x86_64
        Architecture: x86-64

3. 通过包管理器反推(辅助判断)

如果你已经能操作命令行,可以通过默认使用的包管理器来侧面印证。

  • Ubuntu/Debian 系: 使用 apt 或 dpkg

    which apt
    # 如果有输出路径如 /usr/bin/apt,大概率是 Ubuntu
  • CentOS/RHEL 系: 使用 yum 或 dnf 或 rpm

    which yum
    # 如果有输出路径如 /usr/bin/yum,大概率是 CentOS

注意: 有些用户可能在 Ubuntu 上手动安装了 yum,或在 CentOS 上编译安装了 apt,所以这个方法只能作为辅助,不能作为唯一依据。

4. 为什么不建议只看内核版本?

很多人会尝试用 uname -r 查看内核,比如 5.4.0-xx-generic 或 3.10.0-xxx.el7。

  • generic 后缀常见于 Ubuntu。
  • .el7 或 .el8 后缀常见于 CentOS/RHEL。

但这不是绝对标准。因为:

  1. 你可以自己在 Ubuntu 上安装 EL 系列内核模块。
  2. 某些定制化的 CentOS 镜像可能使用了更新的内核。
  3. 内核版本只反映内核级别,不反映用户空间的用户态软件包体系(即发行版本身)。

实操建议 & 避坑指南

  1. 首选命令: 直接在终端运行 cat /etc/os-release,99% 的情况下一眼就能看出结果。
  2. 新手误区: 不要依赖图形界面(如果有的话),轻量应用服务器默认通常是纯命令行环境。即使你购买了带 Web 控制面板的套餐,底层系统类型也不会变。
  3. 权限问题: 确保你使用的是 root 用户或有 sudo 权限的用户登录。普通用户有时无法读取 /etc/ 下的部分文件。
  4. 国内云厂商特性:
    • 阿里云轻量应用服务器: 提供多种镜像,包括 Ubuntu、CentOS、Debian、Windows Server 等。创建时选了什么,就是什么。
    • 腾讯云轻量应用服务器: 同样提供 Ubuntu、CentOS、Debian 等官方镜像。
    • 华为云 Stack/Stacks: 类似,选择镜像时决定。

总结:
打开你的 SSH 客户端(如 Xshell、Putty、Terminal),连接服务器后,输入:

cat /etc/os-release | grep PRETTY_NAME

这就够了。干净利落,无需多余解释。