确定操作系统版本的常用方法似乎正在查看
/etc/*-release file
*这里将是特定版本操作系统所属的系列.但是在OEL系统上,存在以下文件,并且所有这些文件似乎都返回了有效的发行版本,在这种情况下,有一种确定操作系统发布版本详细信息的确定方法:
cat /etc/redhat-release Red Hat Enterprise Linux Server release 5.8 (Tikanga) cat /etc/enterprise-release Enterprise Linux Enterprise Linux Server release 5.8 (Carthage) cat /etc/oracle-release Oracle Linux Server release 5.8 cat /etc/*release* Enterprise Linux Enterprise Linux Server release 5.8 (Carthage) Oracle Linux Server release 5.8 Red Hat Enterprise Linux Server release 5.8 (Tikanga)
使用下面提到的替代方法仅在以上文件不返回的情况下使用
有效值:
lsb_release -a returns the same output as returned by enterprise-release
更新1:执行的上下文
/ etc / * – release文件作为编程解决方案的一部分进行检查,*的值由一个虚拟文件提供,该文件可以包含以下值:
Asianux的,企业,Mandrake的,红帽,UnitedLinux的,SUSE的SuSE
根据上面场景中出现的顺序,因为企业首先出现/ etc / enterprise-release文件被查询以查找操作系统版本
如果在使用/ etc / redhat-release之前出现redhat,则使用redhat.
解决方法
lsb_release -a
见Linux Standard Base documentation
根据你的问题,你提到这是一个替代方案,以防上述情况不起作用.您应首先使用lsb_release,因为它是标准.
它还应返回比enterprise-release命令更多的信息,特别是LSB Version行(例如,lsb_release -v)