检查您是否在 Linux 中使用 Systemd检查您是否在 Linux 中使用 Systemd检查您是否在 Linux 中使用 Systemd检查您是否在 Linux 中使用 Systemd
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

检查您是否在 Linux 中使用 Systemd

发表 admin at 2025年2月28日
类别
  • 未分类
标签

您的 Linux 系统是否使用 systemd 或 sysv 或其他 init 系统?以下是如何找出答案。

当您启动 Linux 系统时,它仅从一个进程启动,即一个名为 init 的程序。

自 UNIX 第五版(System V)推出以来,SysV init 系统一直是最受欢迎的,它于 1991 年引入 Linux 系统。

多年来它仍然是最流行的 init 系统,但逐渐地,许多 Linux 发行版开始使用 OpenRC、Runit、UpStart 等。

目前,systemd 被广泛使用,因此您很可能在您的系统上使用 systemd。

但如何确认呢?你运行这个命令:

ps -p 1 -o comm=

如果输出中出现 systemd,则表明您正在使用 systemd。

这适用于使用 systemd 的 Linux 发行版,但如果您使用其他 init 系统怎么办?我们也讨论一下这部分

检查Linux中的init系统

请记住,init 是 Linux 系统中启动的第一个进程。

这意味着细节在于PID为1的进程。然后检查进程1:

ps 1

但不幸的是,这还不够,因为该进程经常显示为 /sbin/init 并且不能提供准确的信息。

abhishek@LHB:~$ ps 1
    PID TTY      STAT   TIME COMMAND
      1 ?        Ss     0:01 /sbin/init splash

/sbin/init 是实际 init 进程的符号链接。您可以按照符号链接查看实际过程。

我正在使用 stat 命令,您可以看到 /sbin/init 链接到 Ubuntu 中的 /lib/systemd/systemd。

abhishek@LHB:~$ stat /sbin/init
  File: /sbin/init -> /lib/systemd/systemd
  Size: 20        	Blocks: 0          IO Block: 4096   symbolic link
Device: 10306h/66310d	Inode: 30675721    Links: 1
Access: (0777/lrwxrwxrwx)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2022-09-21 09:17:59.616364311 +0530
Modify: 2022-06-27 23:58:46.000000000 +0530
Change: 2022-07-12 18:24:23.667196373 +0530
 Birth: 2022-07-12 18:24:23.667196373 +0530

这表明 systemd 正在使用。

再举个例子。我使用的是 Alpine Linux 版本 3.16。这是初始化信息。

localhost:~# stat /sbin/init
  File: '/sbin/init' -> '/bin/busybox'
  Size: 12        	Blocks: 0          IO Block: 4096   symbolic link
Device: 800h/2048d	Inode: 169         Links: 1
Access: (0777/lrwxrwxrwx)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2022-09-22 04:53:46.677137693 +0000
Modify: 2022-07-21 04:10:19.149395174 +0000
Change: 2022-07-21 04:10:19.149395174 +0000

正如你所看到的,Alpine Linux 使用轻量级的 BusyBox init 系统。

您还可以使用 pstree 命令,但这可能不适用于其他所有发行版来识别 init 系统。

pstree

正如您所看到的进程树,它清楚地表明 Ubuntu 正在使用 systemd。

正如您所看到的,了解您的 Linux 系统是否使用 systemd 可能并不简单,但也没有那么复杂。

©2015-2025 Norria support@norria.com