AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 517872
Accepted
rogerdpack
rogerdpack
Asked: 2019-05-09 12:03:32 +0800 CST2019-05-09 12:03:32 +0800 CST 2019-05-09 12:03:32 +0800 CST

systemctl 列出所有可能的(包括禁用的)服务

  • 772

我有一个源自 /etc/init.d/XX 脚本的“服务”,并为它生成了一个 systemd包装器。它不会在任何运行级别自动启动,并且当我运行systemctl --all或systemctl list-unit-files --all它不会出现在任何列表中时。

我的预感是因为它没有依赖关系,还没有启动,它没有“加载”到 systemd 中(所以没有启用,没有加载)所以 systemd 没有列出它。

有没有办法获得所有可能服务的完整列表,即使是那些尚未启动且未自动启动的服务?或者做一个systemctl search等效的?

此相关问题仅要求提供将在启动时尝试的服务列表。

“--all”下的man 页面systemctl说

要列出系统上安装的所有单元,请改用 list-unit-files 命令

但是这些禁用的单位不会出现在list-unit-files.

systemd systemctl
  • 3 3 个回答
  • 19460 Views

3 个回答

  • Voted
  1. Best Answer
    rogerdpack
    2019-05-15T06:41:41+08:002019-05-15T06:41:41+08:00

    好的,我问了“systemd 人”,他们说在旧版本中并没有列出所有这些,尽管手册页这样说:

       -a, --all
           When listing units, show all loaded units, regardless of their
           state, including inactive units. When showing unit/job/manager
           properties, show all properties regardless whether they are set or
           not.
    
           To list all units installed on the system, use the list-unit-files
           command instead.
    

    上面列出的大部分功能似乎并没有真正发生在“我的”systemd 版本systemd 219(CentOS 6)上。但它似乎在 Debian 9 上具有 version 的较新版本的 systemctl 中得到修复systemd 232,也许这就是原因。

    systemd如果 init.d 脚本确实指定了运行级别但所有目录中都不存在/etc/rc?.d(a lachkconfig --del my_service或其等效项systemctl disable my_service,或者如果chkconfig最初从未在其上运行) ,则您仍然可以使用旧版本正常控制它们(状态、启动、停止)然后对于systemd-sysv-generator旧版本的 systemd,如果您运行等,它不会 [显示在列表中][2],systemctl list-units --all即使它工作正常并且仍然​​可控。或者,如果它们是正常服务但被禁用,它们似乎也不会出现在任何列表中,尽管它们仍然可以正常工作。

    参考: https ://lists.freedesktop.org/archives/systemd-devel/2019-May/042555.html

    • 8
  2. Callan
    2019-05-09T14:48:35+08:002019-05-09T14:48:35+08:00

    您是否以 root 身份运行这些命令?我相信 list-unit-files 命令正是您正在寻找的。它列出了单元文件,而不仅仅是加载的服务列表。我认为您可能正在考虑如何配置服务的问题。

    也许从创建一个虚拟服务开始并确保它被注册。一些实际上并没有做任何事情的东西。然后,一旦它起作用,您就可以看到它与不起作用的服务有何不同。或者将您的服务单元文件与正在运行的简单服务之一进行比较。

    • 2
  3. Namasivayam Chinnapillai
    2022-09-13T22:42:22+08:002022-09-13T22:42:22+08:00

    列出系统中正在运行、活动或失败的每个已加载服务:

    # sudo systemctl list-units --type=service --all
    

    列出系统中所有禁用的服务:

    # sudo systemctl list-unit-files --type=service --state=disabled
    

    列出系统中所有启用的服务:

    # sudo systemctl list-unit-files --type=service --state=enabled
    

    列出系统中所有处于活动状态的已加载服务:

    # sudo systemctl list-units --type=service --state=active
    

    列出系统中每个已加载且处于运行状态的服务:

    # sudo systemctl list-units --type=service --state=running
    

    列出系统中每个已加载的失败状态的服务:

    # sudo systemctl list-units --type=service --state=failed
    

    列出系统中每个已加载且处于退出状态的服务:

    # sudo systemctl list-units --type=service --state=exited
    
    • 0

相关问题

  • journalctl 中的区分级别

  • 将默认编辑器更改为 vim for _ sudo systemctl edit [unit-file] _

  • systemd:如何在服务启动时运行脚本,而不编辑服务定义

  • 使用 systemd 看门狗支持重新启动应用程序

  • 使用键盘快捷键启动/停止 systemd 服务 [关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve