平台检测的实用程序
LbPlatformUtils的Python项目详细描述
这是一个在lhcb核心软件和 lhcdirac平台兼容性信息。
它在
- LHCBDIRAC-158: Fixing “Platforms” and “SystemConfig” parameters
- LBCORE-1227: Enable -m sse4.2 in gcc6.2 opt compilation
- LBCORE-1228: Provide a CMTCONFIG build with -m avx2
- LHCBDIRAC-626: dirac-pilot and CPU architecture
- LBCORE-1247: extend lb-run to understand the special platform “best”
操作系统ID派生
os id(os_id)是一个短字符串,用于标识操作系统 (例如Linux Flavor、MacOS、Windows…)及其版本,通常采用以下格式 <name><version>。
在Linux上,操作系统ID是从不同的可能来源计算出来的:
- 文件/etc/os-release[1]
- 名称是从字段ID中提取的,向上是第一个(可选) -
- 版本是从字段VERSION_ID 中提取的
- 如果ID或ID_LIKE包含rhel或suse,我们只保留 直至第一个.
- 否则,我们将删除所有出现的.
- 如果VERSION_ID不存在且名称为debian,则 将版本设置为testing
- 文件/etc/redhat-release
- 名称是
- slc如果它包含CERN
- sl如果它包含Scientific Linux
- centos如果它包含CentOS
- rhel如果它包含Red Hat Enterprise Linux
- 版本是单词release后面的数字,直到第一个 .
- 文件/etc/lsb-release
- 名称是从字段DISTRIB_ID中提取的,在第一个字段之前 (可选)-,小写
- 版本是从字段^{tt29}中提取的$ 正在删除所有出现的.
[1] | https://www.freedesktop.org/software/systemd/man/os-release.html |