可以通过以下几种方法快速确认云服务器的操作系统是CentOS还是Ubuntu:
1. 查看系统发行版信息文件
# 方法1:查看 /etc/os-release 文件(最推荐)
cat /etc/os-release
# 方法2:查看 /etc/issue 文件
cat /etc/issue
# 方法3:查看 /etc/redhat-release 或 /etc/lsb-release
cat /etc/redhat-release 2>/dev/null || cat /etc/lsb-release 2>/dev/null
2. 使用系统命令
# 方法1:hostnamectl 命令
hostnamectl
# 方法2:lsb_release 命令(可能需要安装)
lsb_release -a
# 方法3:uname 命令(显示内核信息)
uname -a
3. 通过包管理器判断
# 检查包管理器
which yum # CentOS/RHEL系列使用yum/dnf
which apt # Ubuntu/Debian系列使用apt
# 或者查看包管理器配置文件
ls /etc/yum.repos.d/ 2>/dev/null
ls /etc/apt/sources.list 2>/dev/null
4. 快速判断脚本
#!/bin/bash
if [ -f /etc/redhat-release ]; then
echo "这是CentOS/RHEL系统"
cat /etc/redhat-release
elif [ -f /etc/lsb-release ]; then
echo "这是Ubuntu/Debian系统"
grep DISTRIB_DESCRIPTION /etc/lsb-release
else
echo "无法确定系统类型"
cat /etc/os-release 2>/dev/null || echo "请检查其他方法"
fi
5. 通过系统目录结构判断
- CentOS: 通常有
/etc/redhat-release文件 - Ubuntu: 通常有
/etc/lsb-release文件
快速识别特征
-
CentOS输出示例:
NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" -
Ubuntu输出示例:
NAME="Ubuntu" VERSION="20.04.3 LTS (Focal Fossa)" ID=ubuntu
最简单的方法
直接运行:
cat /etc/os-release | grep -E "^NAME=|^VERSION="
或者使用这个一行命令:
grep -E "^NAME=" /etc/os-release | cut -d'"' -f2
这些方法中,cat /etc/os-release 是最通用和准确的方法,适用于大多数Linux发行版。
CLOUD技术笔记