当前位置: 首页 > 编程笔记 >

GNU/Linux 检测您正在使用哪种基于systemd的发行版

漆雕修能
2023-03-14
本文向大家介绍GNU/Linux 检测您正在使用哪种基于systemd的发行版,包括了GNU/Linux 检测您正在使用哪种基于systemd的发行版的使用技巧和注意事项,需要的朋友参考一下

示例

此方法适用于Arch,CentOS,CoreOS,Debian,Fedora,Mageia,openSUSE,Red Hat Enterprise Linux,SUSE Linux Enterprise Server,Ubuntu等现代版本。这种广泛的适用性使其成为第一种方法的理想选择,如果您还需要确定较旧的系统,则可以使用其他方法。

看看/etc/os-release。具体而言,看变量NAME,VERSION,ID,VERSION_ID,和PRETTY_NAME。

在Fedora上,此文件可能如下所示:

    NAME=Fedora
    VERSION="24 (Workstation Edition)"
    ID=fedora
    VERSION_ID=24
    PRETTY_NAME="Fedora 24 (Workstation Edition)"
    ANSI_COLOR="0;34"
    CPE_NAME="cpe:/o:fedoraproject:fedora:24"
    HOME_URL="https://fedoraproject.org/"
    BUG_REPORT_URL="https://bugzilla.redhat.com/"
    REDHAT_BUGZILLA_PRODUCT="Fedora"
    REDHAT_BUGZILLA_PRODUCT_VERSION=24
    REDHAT_SUPPORT_PRODUCT="Fedora"
    REDHAT_SUPPORT_PRODUCT_VERSION=24
    PRIVACY_POLICY_URL=https://fedoraproject.org/wiki/Legal:PrivacyPolicy
    VARIANT="Workstation Edition"
    VARIANT_ID=workstation

在CentOS上,此文件可能如下所示:

    NAME="CentOS Linux"
    VERSION="7 (Core)"
    ID="centos"
    ID_LIKE="rhel fedora"
    VERSION_ID="7"
    PRETTY_NAME="CentOS Linux 7 (Core)"
    ANSI_COLOR="0;31"
    CPE_NAME="cpe:/o:centos:centos:7"
    HOME_URL="https://www.centos.org/"
    BUG_REPORT_URL="https://bugs.centos.org/"
    
    CENTOS_MANTISBT_PROJECT="CentOS-7"
    CENTOS_MANTISBT_PROJECT_VERSION="7"
    REDHAT_SUPPORT_PRODUCT="centos"
    REDHAT_SUPPORT_PRODUCT_VERSION="7"

该文件记录在freedesktop网站上;原则上,它不是特定于systemd的,而是将存在于所有基于systemd的发行版中。

在bash shell中,可以获取/etc/os-release文件,然后直接使用各种变量,如下所示:

$ ( source /etc/os-release && echo "$PRETTY_NAME" )
Fedora 24 (Workstation Edition)
           

 类似资料:
  • 本文向大家介绍GNU/Linux 检测您正在使用的基于Debian的发行版,包括了GNU/Linux 检测您正在使用的基于Debian的发行版的使用技巧和注意事项,需要的朋友参考一下 示例 只需执行lsb_release -a。 在Debian上: 在Ubuntu上: 如果未lsb_release安装,则可能需要尝试一些猜测,例如,有一个文件/etc/issue通常包含发行版名称。例如,在ubun

  • 问题内容: 有时我需要访问一些运行Linux的服务器(或者可能是另一个类似Unix的SO),但是我不知道如何验证服务器上正在使用哪个分发版本(有时甚至是服务器的“负责人”不知道)。 有没有一种简单而可靠的方法来发现这一点,那就是在所有这些方面都是一致且一致的? 问题答案: 可能为您工作。 更多细节可用 在http://etbe.coker.com.au/2007/08/30/identifying

  • 本文向大家介绍GNU/Linux 基本的Linux实用程序,包括了GNU/Linux 基本的Linux实用程序的使用技巧和注意事项,需要的朋友参考一下 例子 Linux几乎可以执行所有任务的命令,并且其中大多数都是直观且易于解释的。 在Linux中获得帮助 命令 易用性 man <name> 阅读<名称>的手册页。 man <section> <name> 阅读与给定部分相关的<name>手册页。

  • 问题内容: 我们仍处于项目的设计阶段,但我们正在考虑在嵌入式Linux内核上具有三个独立的进程。进程之一是通信模块,该模块处理通过各种介质往返于设备的所有通信。 其他两个过程将需要能够通过通信过程发送/接收消息。我正在尝试评估Linux提供的IPC技术。其他进程将发送的消息的大小将有所不同,从调试日志到流媒体,速率约为5 Mbit。同样,媒体可能同时流进和流出。 您将为该应用建议哪种IPC技术?

  • 问题内容: 我已经准备了一个应用程序和网站,客户可以在该应用程序上为其设置几个选项,然后再下载。设置以二进制格式存储在文件的末尾(附加),然后将已编辑的文件发送给最终用户。问题是文件的“内容”的更改将破坏文件签名- 是否有任何机会使用任何命令行工具重新签名此更改的文件?我尝试使用Microsoft的SignTool,但在Linux上无法正常工作。 问题答案: 使用的signtool 实际上很简单;

  • 问题内容: 仅Java库中就有8个布局管理器,然后还有一堆3rd party产品。 前几天,我尝试使用SpringLayout并…好吧,它对我来说没有用。看到我的另一个问题。所以…如果你有一个Swing应用设计,并希望您的布局 只是这样 ,什么是您的首选布局管理器?有什么有趣/有用的经验可以联系吗? 更新:是的 ,请确保我知道不同的LM适用于不同的布局。但是我希望你们中的大多数人在所做的大部分事情