Systemd 启用的服务不再在启动时启动

2024-02-23

我很久以前制作了一些自定义的 systemd 服务,它们都具有相同的配置(当然 ExecStart 除外)

这个配置工作了很多年,我从 18.04 LTS 版本开始就已经启动并运行了 ubuntu,但现在看起来其中一些 systemd 服务根本没有在启动时启动,配置如下(myapp.service):

[Unit]
Description="myapp"
After=syslog.target network-online.target
Wants=network-online.target

[Service]
Restart=always
RestartSec=10
User=root
Group=root
WorkingDirectory=/opt/myapp
ExecStart=/usr/local/bin/myapp
KillMode=control-group

[Install]
WantedBy=multi-user.target

该服务已启用:

$ sudo systemctl enable myapp
Created symlink /etc/systemd/system/multi-user.target.wants/myapp.service → /lib/systemd/system/myapp.service.

如果我在重新启动后执行“systemctl status myapp”:

● myapp.service - "myapp"
   Loaded: loaded (/lib/systemd/system/myapp.service; enabled; vendor preset: enabled)
   Active: inactive (dead)

如果我在重新启动后执行“journalctl -u myapp -f”:

Jan 13 12:10:06 myhost systemd[1]: Started myapp.
Jan 17 07:15:03 myhost systemd[1]: Stopping myapp...
Jan 17 07:15:09 myhost systemd[1]: Stopped myapp.

我的配置有什么问题吗?

如果我手动启动 /usr/local/bin/myapp ,脚本上没有错误,并且我也尝试使用 tmux 运行它,现在在 bg 中运行了 3 天,没有错误。但 systemd 重启后不会启动它。

今天,我还尝试安装一个需要 systemd 配置的新服务,该软件包是 zram-config ,默认情况下它在启动时启用。 但是在: apt install zram-config && sudo restart 之后:

$ sudo systemctl status zram-config
● zram-config.service - Initializes zram swaping
   Loaded: loaded (/lib/systemd/system/zram-config.service; enabled; vendor preset: enabled)
   Active: inactive (dead)

但如果现在我这样做:

$ sudo systemctl start zram-config
$ sudo systemctl status zram-config
● zram-config.service - Initializes zram swaping
   Loaded: loaded (/lib/systemd/system/zram-config.service; enabled; vendor preset: enabled)
   Active: active (exited) since Mon 2020-01-27 12:25:55 CET; 1s ago
  Process: 5541 ExecStart=/usr/bin/init-zram-swapping (code=exited, status=0/SUCCESS)
 Main PID: 5541 (code=exited, status=0/SUCCESS)

Jan 27 12:25:55 myhost systemd[1]: Starting Initializes zram swaping...
Jan 27 12:25:55 myhost init-zram-swapping[5541]: Setting up swapspace version 1, size = 985,7 MiB (1033568256 bytes)
Jan 27 12:25:55 myhost init-zram-swapping[5541]: nessuna etichetta, UUID=4ac5c2cd-0c68-4f6d-a5c0-d8f91a509c71
Jan 27 12:25:55 myhost init-zram-swapping[5541]: Setting up swapspace version 1, size = 985,7 MiB (1033568256 bytes)
Jan 27 12:25:55 myhost init-zram-swapping[5541]: nessuna etichetta, UUID=83a4f201-d591-4222-89a6-5bc5aebedef4
Jan 27 12:25:55 myhost init-zram-swapping[5541]: Setting up swapspace version 1, size = 985,7 MiB (1033568256 bytes)
Jan 27 12:25:55 myhost init-zram-swapping[5541]: nessuna etichetta, UUID=1f6f742e-6fb8-4332-b226-bf6918f7ee28
Jan 27 12:25:55 myhost init-zram-swapping[5541]: Setting up swapspace version 1, size = 985,7 MiB (1033568256 bytes)
Jan 27 12:25:55 myhost init-zram-swapping[5541]: nessuna etichetta, UUID=a5509c55-46f5-4112-8fe1-68171f31409e
Jan 27 12:25:55 myhost systemd[1]: Started Initializes zram swaping.

我真的不明白我的 Ubuntu 安装上的 systemd 有什么问题,我是否最好重新安装整个操作系统?

Thanks


检查完整输出journalctl有关周期的消息,例如:

Job <your.service> deleted to break ordering cycle starting with <something else>

我有类似的问题。这是由于订购周期造成的,这很难调试和修复。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Systemd 启用的服务不再在启动时启动 的相关文章

  • 如何查找连接到 AF_INET 套接字的客户端的 UID?

    有什么方法或类似的东西ucred for AF UNIX如果是AF INET插座 TCP在我的例子中 找出连接到我的套接字的客户端的UID 还有 proc net tcp但它显示了UID of the creator插座的而不是连接的cli
  • 让 MongoDB 在 Linux 上监听远程连接

    我已在 Windows 本地计算机上 上成功安装 MongoDB 作为服务 但现在我想将 MongoDb 移动到单独的服务器 所以我将 tarball 解压到网络上的虚拟服务器 运行 Linux 当我从本地计算机使用 PuTTY 连接到服务
  • 在 /dev/input/eventX 中写入事件需要哪些命令?

    我正在开发一个android需要将触摸事件发送到 dev input eventX 的应用程序 我知道C执行此类操作的代码结构如下 struct input event struct timeval time unsigned short
  • 如何使用 sed 仅删除双空行?

    我找到了这个问题和答案 https stackoverflow com questions 4651591 howto use sed to remove only triple empty lines关于如何删除三重空行 但是 我只需要对
  • 如何制作和应用SVN补丁?

    我想制作一个SVN类型的补丁文件httpd conf这样我就可以轻松地将其应用到其他主机上 If I do cd root diff Naur etc httpd conf httpd conf original etc httpd con
  • 并行运行 make 时出错

    考虑以下制作 all a b a echo a exit 1 b echo b start sleep 1 echo b end 当运行它时make j2我收到以下输出 echo a echo b start a exit 1 b star
  • 嵌入式Linux poll()不断返回

    我有一个特别的问题 当我知道没有什么可读时 民意调查不断返回 因此设置如下 我有 2 个文件描述符 它们构成fd设置民意调查监视 一种用于引脚从高到低的变化 GPIO 另一个用于代理输入 代理输入出现问题 处理的顺序是 启动main函数 然
  • 在 Mac OS X 上构建 Linux 内核

    我正在做一个修改Linux内核的项目 我有一台桌面 Linux 机器 在上面构建内核没有问题 不过 我要去旅行 我想在途中工作 我只有一台 MacBook 当我尝试构建 Linux 内核时 它抱怨说elf h was not found 我
  • 何时使用 pthread 条件变量?

    线程问题 看来 只有在其他线程调用 pthread cond notify 之前调用 pthread cond wait 时 条件变量才起作用 如果在等待之前发生通知 那么等待将被卡住 我的问题是 什么时候应该使用条件变量 调度程序可以抢占
  • Django + nginx + uwsgi 无法登录

    我有非常简单的登录逻辑 类似于官方 Django 解决方案 class Login FormView template name login html form class AuthenticationForm def get self a
  • Unix 命令列出包含字符串但*不*包含另一个字符串的文件

    如何递归查看包含一个字符串且不包含另一个字符串的文件列表 另外 我的意思是评估文件的文本 而不是文件名 结论 根据评论 我最终使用了 find name html exec grep lR base maps xargs grep L ba
  • 修改linux下的路径

    虽然我认为我已经接近 Linux 专业人士 但显然我仍然是一个初学者 当我登录服务器时 我需要使用最新版本的R 统计软件 R 安装在 2 个地方 当我运行以下命令时 which R I get usr bin R 进而 R version
  • 从 PL/SQL 调用 shell 脚本,但 shell 以 grid 用户而非 oracle 身份执行

    我正在尝试使用 Runtime getRuntime exec 从 Oracle 数据库内部执行 shell 脚本 在 Red Hat 5 5 上运行的 Oracle 11 2 0 4 EE CREATE OR REPLACE proced
  • Bash 解析和 shell 扩展

    我对 bash 解析输入和执行扩展的方式感到困惑 对于输入来说 hello world 作为 bash 中的参数传递给显示其输入内容的脚本 我不太确定 Bash 如何解析它 Example var hello world displaywh
  • 强制卸载 NFS 安装目录 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的答案
  • 带有 CUDA 的 Tensorflow:导入错误

    我已经按照 NVIDIA 教程中的说明一步步安装了 TensorFlow Ubuntu 16 04 桌面版 GTX 970 http www nvidia com object gpu accelerated applications te
  • 如何使用 bash 锁定文件

    我有一个任务从远程服务器同步目录 rsync av email protected cdn cgi l email protection srv data srv data 为了使其定期运行并避免脚本 reEnter 问题 我使用 rsyn
  • 仅打印“docker-container ls -la”输出中的“Names”列

    发出时docker container ls la命令 输出如下所示 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a67f0c2b1769 busybox tail f dev
  • 如何在bash中使用jq从变量中包含的json中提取值

    我正在编写一个 bash 脚本 其中存储了一个 json 值 现在我想使用 Jq 提取该 json 中的值 使用的代码是 json val code lyz1To6ZTWClDHSiaeXyxg redirect to http examp
  • apt-get 无法在 ubuntu dockerfile 中工作

    我对 docker 相当陌生 正在尝试通过编写自己的镜像来学习 并且目前正在阅读 Docker 的实际操作 ISBN 1633430235 在我自己的代码和书中的示例 第 146 页 中 我想通过 dockerfile 安装 git My

随机推荐

  • 如何在ios应用程序中播放RTMP视频流?

    嗨 我正在开发广播应用程序 我正在使用 Videocore 库 现在我如何在 ios 应用程序中播放该流视频 我尝试使用 MpMoviePlayer 但它不支持 rtmp 流 那么是否有任何第三方库可供 RTMP 支持的播放器使用 请帮助我
  • 未创建表 sqlite android

    我正在制作一个应用程序 我想在其中保存用户联系人详细信息 但是每当我尝试插入或选择某些值时 我都会收到错误 数据库代码 public class ContactsDatabase extends SQLiteOpenHelper priva
  • 获取Java中注解的参数值

    所以我有一个代码 Path foo public class Hello GET Produces text html public String getHtml Context Request request Context HttpSe
  • 扭曲的Python getPage

    我试图获得这方面的支持 但我完全感到困惑 这是我的代码 from twisted internet import reactor from twisted web client import getPage from twisted web
  • 编辑控件未使用所选画笔完全重新绘制

    我有一个编辑控件 其背景颜色取决于用户输入的有效性 如果输入有效 编辑控件应保持默认外观 否则背景颜色应更改为浅灰色 我正在检查有效性EN UPDATE处理程序 如果它无效 我存储HWND的编辑控件到vector 视觉样式已启用 当我改变鼠
  • 如何修复错误代码 C4146“一元减运算符应用于无符号类型。结果仍然无符号”?

    数据类型int的最小值为 2 147 483 648 所以 我输入了 int val 2147483648 但是 它有一个错误 unary minus operator applied to unsigned type result sti
  • 如何将 ArrayUtils 用于对象数组,它不会删除数组的内容

    如何删除对象数组的内容 如果还有其他方法可以删除对象数组的内容 请分享 import java util Arrays import java util Scanner import org apache commons lang3 Arr
  • IE中Jquery多级列表问题

    首先对我的英语感到抱歉 好吧 我尝试创建一个可排序的问题 答案列表 它在 FF 中完美运行 但在 IE 中不起作用 在 IE 中 当我尝试对答案 第二级 li 进行排序时 其问题和同一组答案以一种奇怪的方式与所选问题一起移动 Example
  • 基于多列值的 Python pandas groupby 值

    我在 Pandas 数据集中有一个连续的活动数据 sample data code user id 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 4705 4705 4705 4705 4705 223 223
  • 具有 DynamoDB 和 MySQL 双数据源的 Spring Data/JPA 存储库

    我熟悉如何让 Spring 通过多个持久单元和多个entityManagerFactoryBean 实现动态处理多个数据源 但我正在努力解决的是如何拥有 MySQL 方言and通过 spring config xml 文件在同一 sprin
  • 来自调试器的 Ios Xcode 消息:由于内存问题而终止

    我有一个带有集合视图的应用程序 以及此集合视图中的一个单元格 该单元格重定向到外部链接 每当该链接打开时 应用程序就会在后台崩溃并在调试器上显示 由于内存问题而终止 如果我只按主页按钮 应用程序就会继续正常工作 if UIDeviceOri
  • 单例类可以是静态的吗?

    单例类可以是静态的吗 不 单例类应该被实例化 因为该术语本身指的是一个实例 如果将其设为静态类 则无法从中创建单例对象
  • 如何使用Python查找文本文件中的所有isbn?

    我有一个文本文件text isbn里面有大量的 ISBN 我想编写一个脚本来解析它并将其写入一个新的文本文件 每个 ISBN 编号都在新行中 到目前为止 我可以编写用于查找 ISBN 的正则表达式 但无法进一步处理 import re li
  • AngularJS mailto 不发送电子邮件

    我使用以下代码允许我的 AngularJS 应用程序用户使用他们最喜欢的邮件客户端发送电子邮件 但是当我单击 发送 按钮时没有任何反应 有人可以检查我的代码并告诉我我在这里到底缺少什么吗 谢谢
  • 如何在不构建“音频可视化工具”的情况下将 JavaScript 动画与歌曲的节奏同步?

    从我的基本理解来看 JavaScript 音频可视化器是根据实际声波反映音乐的 我想构建像节拍器 http bl ocks org 1399233 这样的东西 我每隔一段时间就为一些 DOM 元素设置动画x beats 我现在这样做的方式是
  • Jasmine 对象“没有方法 'andReturn'”

    茉莉花初学者 茉莉花间谍的第一次尝试 我以为我在模仿格式显示在这里 http pivotal github io jasmine 搜索 andReturn 但我收到一个无法解决的错误 TypeError Object function ca
  • Visual Studio 构建事件立即返回

    我有一个运行时间较长的构建后事件 长到足以令人厌烦地等待 但又短到足以在每次发布编译后完成 我想立即返回到 VS 我尝试过运行批处理文件start但视觉工作室仍在等待cmd返回成功之前关闭窗口 有没有办法在生成此构建后事件时立即返回成功 T
  • 我可以使用 JavaScript 停止元刷新吗?

    以下代码允许用户停止元刷新的发生 并且它成功删除了meta refresh从页面 但浏览器仍然刷新页面 知道如何让它发挥作用吗
  • 无法在 python 3.7 中安装 Matplotlib

    在 Windows 10 64 位机器中安装 matplotlib 时出现错误显示 python setup py egg info failed with error code 1 in C Users Animus AppData Lo
  • Systemd 启用的服务不再在启动时启动

    我很久以前制作了一些自定义的 systemd 服务 它们都具有相同的配置 当然 ExecStart 除外 这个配置工作了很多年 我从 18 04 LTS 版本开始就已经启动并运行了 ubuntu 但现在看起来其中一些 systemd 服务根