如何检查你的 Linux 系统是否使用 systemd

系统 Linux
不知道在使用哪个初始化系统?以下是方法。

每个主流 Linux 发行版(包括 Ubuntu、Fedora、openSUSE 和 Arch)默认都使用 systemd。

但是有 许多非 systemd 发行版,例如使用轻量级 runit 来获得更好性能的 Void Linux 或主要使用 sysvinit 的 Devuan。

当你尝试遵循某些教程或文档并且其中包含特定于 systemd 或某些其他初始化服务的命令时,就会出现问题。

这时,你必须检查你的 Linux 系统使用的是 systemd 还是其他系统。

一种方法是检查 PID 为 1 的进程(毕竟,初始化系统是 Linux 系统上运行的第一个进程)。

ps 1

但它的输出可能会产生误导,因为它经常显示 /sbin/init,这只是实际的初始化进程的软链接。

如果你 跟随该符号链接,就可以获取初始化系统信息。有两种方法:

  • 使用 stat 命令
  • 使用 readlink 命令

那么让我们从第一个开始。

📋 这些方法在 6 个初始化系统中进行了测试:Systemd、OpenRC、SysVinit、Busybox、runit 和 s6。

方法 1:使用 stat 命令检查 systemd 是否正在使用

以下是如何使用 stat 命令来了解你正在使用的初始化系统:

stat /sbin/init

如果你使用的是 systemd 支持的发行版,那么它将显示以下输出:

但是,如果你使用 systemd 之外的其他任何东西,它将显示初始化系统的名称,但是如果你使用的是 SysVinit,它只会显示 init 而不是 sysvinit

SysVinit only displays "init" instead of sysvinitSysVinit only displays "init" instead of sysvinit

方法 2:使用 readlink 命令检查初始化系统

与之前的方法不同,当你使用 readlink 命令时,它只会打印初始化系统的名称。

因此,如果你想知道你是否正在使用 Systemd,只需使用以下命令:

readlink /sbin/init

如果你使用 OpenRC 初始化访问,那么它将显示以下输出:

但如果你使用 SysVinit,那么它会显示以下输出:

我为你写的小“脚本”

另一种方法是检查 /run/systemd/system 目录是否存在。

好吧,最简单的找出方法是在终端中 使用 if-else bash 命令,它将检查你是否正在运行由 systemd 驱动的发行版:

if [ -d /run/systemd/system ]; then echo "System is running systemd"; else echo "System is not running systemd"; fi

有关 systemd 的更多信息

当你知道你正在使用 systemd 支持的发行版,你就可以 使用 systemctl 命令管理服务

当然你也可以从头开始 创建一个 systemd 服务

我希望本指南对你有所帮助。

责任编辑:庞桂玉 来源: Linux中国
相关推荐

2018-03-22 19:30:26

LinuxMeltdownSpectre

2017-02-10 19:20:02

Linuxnc命令远程端口

2019-01-02 16:12:17

Linux系统 vmstat

2020-12-31 08:00:00

机器学习人工智能工程师

2019-04-23 09:27:32

Linux端口

2014-07-14 09:24:51

Debiansystemd

2021-11-02 19:01:41

WWWGrepHTML安全安全工具

2013-12-06 10:20:21

2022-10-24 08:17:29

API算法元素

2009-12-16 16:54:56

Linux操作系统

2021-07-26 05:16:24

HashCheck密码隐私

2018-03-14 09:26:20

LinuxWindowsBIOS

2022-07-20 07:13:45

Linuxsystemd

2019-08-23 06:22:47

LinuxShell监控脚本

2016-11-22 18:31:20

2022-05-27 10:59:22

LinuxSystemd

2019-09-23 08:00:00

Linux冻结屏幕锁定屏幕

2022-11-07 12:52:25

Linuxfsck命令

2022-11-03 10:46:58

Linux端口

2021-08-17 10:53:11

Linuxsystemd-ude硬件
点赞
收藏

51CTO技术栈公众号