[TOC]
Linux的众多发行版本
新手往往会被 Linux 众多的发行版本搞得一头雾水,我们首先来解释一下这个问题。
从技术上来说,李纳斯•托瓦兹开发的 Linux 只是一个内核。内核指的是一个提供设备驱动、文件系统、进程管理、网络通信等功能的系统软件,内核并不是一套完整的操作系统,它只是操作系统的核心。
一些组织或厂商将 Linux 内核与各种软件和文档包装起来,并提供系统安装界面和系统配置、设定与管理工具,就构成了 Linux 的发行版本。
在 Linux 内核的发展过程中,各种 Linux 发行版本起了巨大的作用,正是它们推动了 Linux 的应用,从而让更多的人开始关注 Linux。因此,把 Red Hat、Ubuntu、SUSE 等直接说成 Linux 其实是不确切的,它们是 Linux 的发行版本,更确切地说,应该叫作"以Linux为核心的操作系统软件包"。
Linux 的各个发行版本使用的是同一个 Linux 内核,因此在内核层不存在什么兼容性问题,每个版本有不一样的感觉,只是在发行版本的最外层(由发行商整合开发的应用)才有所体现。
Linux 的发行版本可以大体分为两类:
- 商业公司维护的发行版本,以 RedHat 为代表
- 社区组织维护的发行版本,以 Debian 为代表
因此查看版本的命令就分为查看 内核版本及查看发行版本
内核版本查看命令
第一种方法:uname -a
$ uname -a
Linux localhost.localdomain 2.6.32-888.el6.x86_64 #1 SMP Fri Feb 13 12:14:55 CST 2015 x86_64 x86_64 x86_64 GNU/Linux
其中 2.6.32-888.el6.x86_64
即为内核发行版的信息
内核发行版命名规则:
- 主版本号:2
- 次版本号:6【奇数为开发版本,偶数为稳定版本】
- 修订版本号:32【修改的次数】
- 此次版本的第N次修改:888
- el6:redhat enterprise linux 6
- x86_64:编译框架
第二种方法:cat /proc/version
$ cat /proc/version
Linux version 2.6.32-888.el6.x86_64 (root@sysb-2014092805.meilishuo.com) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) ) #1 SMP Fri Feb 13 12:14:55 CST 2015
发行版本查看命令
第一种方法:lsb_release -a
$ lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 6.5 (Final)
Release: 6.5
Codename: Final
该命令适用于所有遵守LSB规范(全称:Linux Standards Base) 的linux,包括Redhat、SuSE、Debian、Ubuntu、Centos等发行版。
LSB 是 Linux 标准化领域中事实上的标准,制定了应用程序与运行环境之间的二进制接口。
第二种方法:cat /etc/redhat-release
- 适用于 RedHat,CentOS
$ cat /etc/redhat-release
CentOS release 6.5 (Final)
第三种方法:rpm -q xxx
- 适用于 RedHat,CentOS
centos
$ rpm -q centos-release
centos-release-6-5.el6.centos.11.2.x86_64
redhat
$ rpm -q redhat-release
第四种方法:/etc/issue
- 适用于 RedHat,CentOS,Ubuntu
CentOS
$ cat /etc/issue
CentOS release 6.5 (Final)
Kernel \r on an \m
Ubuntu
$ cat /etc/issue
Ubuntu 11.04 \n \l