结论:通过命令行执行特定命令,可以快速判断服务器系统是CentOS还是Ubuntu。
在运维或部署服务器环境时,明确操作系统类型至关重要。因为不同的发行版使用不同的包管理器和配置方式,识别当前系统的类型有助于后续操作的准确性。
使用 cat /etc/os-release 命令查看
-
这是最直观的方法之一。
-
该命令会输出类似以下内容:
NAME="Ubuntu" VERSION="20.04.3 LTS (Focal Fossa)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 20.04.3 LTS"或者对于CentOS:
NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE=rhel fedora PRETTY_NAME="CentOS Linux 7 (Core)" -
重点关注
NAME和ID字段即可判断是Ubuntu还是CentOS。
使用 lsb_release -d 查看简要信息
-
如果你的系统安装了
lsb-core包,可以运行:lsb_release -d -
输出结果如:
Ubuntu 20.04.3 LTS或
CentOS Linux release 7 (Core) -
此方法简洁明了,适合快速查看。
检查是否存在特定文件或路径
- Ubuntu系统通常使用
apt命令,而CentOS使用yum或dnf。 - 可以通过是否存在
/etc/apt/sources.list或/etc/yum.conf来辅助判断。 -
例如:
ls /etc/apt/ # 如果存在,则可能是Ubuntu ls /etc/yum.conf # 如果存在,则可能是CentOS
使用 grep 提取版本信息
-
如果你只想快速提取关键词,可以用如下命令:
grep '^NAME=' /etc/os-release输出如:
NAME="Ubuntu"或
NAME="CentOS Linux"
总结建议
- 推荐优先使用
cat /etc/os-release或lsb_release -d,这两个方法最准确且通用。 - 对于脚本编写来说,解析
/etc/os-release文件是标准做法。 - 无论采用哪种方法,关键是找到能明确标识系统类型的字段,如
NAME、ID或包管理器类型。
掌握这些方法后,你可以迅速判断服务器运行的是CentOS还是Ubuntu系统,为后续的软件安装与配置提供保障。
CDNK博客