问题标签 [systemctl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
106 浏览

python - 在 debian 软件包安装期间 systemctl 状态卡住

我有一个发布以下内容的 python 服务。通过子进程调用命令:

这个包,作为它的安装的一部分,发出一个 systemctl status smb 命令,这个命令永远卡住了。给 RUNLEVEL=1 的原因是为了防止 nginx(包的依赖)一安装就在 80 端口启动。

关于什么可能是错误的任何想法?请询问更多信息。

编辑: systemctl 进程卡住等待寻呼机返回。寻呼机进程无限期地等待读取。

另外为了防止使用RUNLEVEL=1,我在安装自定义包之前屏蔽了nginx,所以不再提供RUNLEVEL=1。

0 投票
0 回答
488 浏览

mongodb - $ systemctl start mongodb 返回失败 (status=100)

我的问题很简单,但不容易找到解决方案。

在我的服务器上,我已经运行了几个月的 mongodb,但它突然停止了工作。我开始使用 mongodb,$ systemctl start mongodb但它不再起作用了。

我运行时得到的响应$ systemctl status mongodb是:

  • 活跃:失败
  • 进程:ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
  • (代码=退出,状态=100)

会是什么呢?我有 .ns 和 .0/.1/.2 文件的备份。

0 投票
0 回答
238 浏览

ubuntu - systemctl 说 nginx 没有运行;但是 nginx _IS_ 正在运行

当我sudo systemctl status nginx在 Ubuntu 上运行时,我被告知该服务已停止。

当我运行时ps ax | grep nginx,我看到 nginx 有两个不同的 PID(一个主,一个工作),都在运行。事实上,我的网络服务器在浏览器中运行良好。

问题是我想更新我的 nginx 配置,然后用类似sudo systemctl reload nginx. 但这是一个生产网络服务器,在我理解为什么 systemctl 认为 nginx 离线(并且正在跟踪一个完全不同的 PID)之前,我已经厌倦了这样做。

0 投票
1 回答
14711 浏览

linux - 停止服务时单元进入故障状态 (status=143)

这是我的问题。我有 CentOS 和 java 进程在它上面运行。Java 进程由启动/停止脚本操作。它也创建了一个 java 实例的 .pid 文件。

我的单位文件看起来像:

当我调用stop函数时,脚本终止 java 进程SIGTERM并返回 0 代码:

之后,如果我检查我的单位的状态,我会得到类似的东西(状态=143):

当我的启动/停止脚本中没有该return值时,它的行为完全相同。
添加到单元文件中,例如:

对我来说不是个好主意。为什么systemctl表演如此,并没有向我展示正常的服务状态?

当我尝试修改我的启动/停止脚本而不是return 0我把return 10它的行为相同时,但我可以看到它exit 10通过了。
这是一个例子:

journalctl日志中我可以看到systemctl首先返回状态 = 143,然后返回值 10。所以我猜我的错误是在启动/停止脚本中的某个地方(因为在函数返回 0 之前传递了错误代码 143)?

0 投票
1 回答
161 浏览

linux - Systemd 服务在脚本中遗漏了命令

我正在尝试启动一个pigpiod.service通过 systemd 命名的服务。它使用三个命令调用脚本。第二个被遗漏了。为什么是这样?

/etc/systemd/system/pigpiod.service:

/home/sysop/pigpiod.sh:

  • 重新启动机器时,会在 中创建两个文件/home/sysop/,但pigpiod没有启动。
  • 当通过同样的方式手动启动服务sudo systemctl start pigpiod时。
  • sudo /home/sysop/pigpiod.sh手动运行pigpiod的时候其实就是启动了!

这是sudo systemctl status pigpiod -l启动后的输出:

为什么 systemd 跳过了 的执行/usr/bin/pigpiod,但以 root 身份手动运行脚本却没有?

我的系统:Raspberry Pi Model 3B,Raspbian GNU/Linux 8 (jessie)

0 投票
2 回答
642 浏览

linux - Linux 服务意外死亡

运行 Ubuntu 17.04,我想要一个systemctl服务来监督一个主bash脚本,其中三个程序(这里由带有参数标记的虚拟脚本代替foo_script)在无限循环下运行(因为可能的程序崩溃)。

foo_main.sh如果从命令行调用主脚本,则可以正常工作;但我试图从中设置的服务很快就会崩溃。

文件foo_script.sh

文件loop.sh

文件foo_main.sh

文件/etc/systemd/system/food.service

我从每个sudo systemctl status food.service(在 a startofc 之后)获得的输出几乎相同

● food.service - Foo 守护进程

已加载:已加载(/etc/systemd/system/food.service;已禁用;供应商预设:已启用)

活跃:不活跃(死)

9 月 28 日 14:54:30 john-host systemd[1]:启动 Foo 守护进程。

9 月 28 日 14:54:30 john-host foo_main.sh[7376]: foo_main 脚本开始于 /home/john/bin

9 月 28 日 14:54:30 john-host foo_main.sh[7376]:<< foo_script.sh fb 循环开始 >>

9 月 28 日 14:54:30 john-host foo_main.sh[7376]: << looping foo_script.sh fb >> 1

9 月 28 日 14:54:31 john-host foo_main.sh[7376]: << looping foo_script.sh fb >> 2

9 月 28 日 14:54:32 john-host foo_main.sh[7376]: foo_main 脚本结束

9 月 28 日 15:24:30 john-host foo_main.sh[7921]: << foo_script.sh gb 循环的开始 >>

9 月 28 日 15:24:30 john-host foo_main.sh[7921]: << foo_script.sh gc 循环的开始 >>

9 月 28 日 15:24:30 john-host foo_main.sh[7921]: << looping foo_script.sh gb >> 1

9 月 28 日 15:24:30 john-host foo_main.sh[7921]: << looping foo_script.sh gc >> 1

0 投票
1 回答
70 浏览

systemd - 成功完成另一个单元后指示执行一个单元

朋友们。

我使用 cloud-config 来安装和配置 DCOS 集群。

通常“agentinstall.service”服务需要 5 分钟才能完成。

是否可以仅在“agentinstall.service”完成后指示 systemd 执行“agentconfigure.service” ?

谢谢你。

0 投票
2 回答
10498 浏览

apache2 - 启动 apache2 时出现“systemctl status apache2.service”错误

root@kudo2:~# sudo systemctl restart apache2 apache2.service 的作业失败,因为控制进程退出并出现错误代码。有关详细信息,请参阅“systemctl status apache2.service”和“journalctl -xe”。

root@kudo2:~# systemctl status apache2.service ● apache2.service - Apache HTTP 服务器

已加载:已加载(/lib/systemd/system/apache2.service;已禁用;供应商预设:已禁用)

活动:自 2017 年 10 月 3 日星期二 14:22:01 UTC 以来失败(结果:退出代码);3 分钟 33 秒前

进程:17190 ExecStart=/usr/sbin/apachectl start (code=exited, status=1/FAILURE)

10 月 3 日 14:22:01 kudo2 apachectl[17190]: (98) 地址已在使用中:AH00072: make_sock: 无法绑定到地址 [::]:80

10 月 3 日 14:22:01 kudo2 apachectl[17190]: (98) 地址已在使用中:AH00072: make_sock: 无法绑定到地址 0.0.0.0:80

10 月 3 日 14:22:01 kudo2 apachectl[17190]:没有可用的监听套接字,正在关闭

10 月 3 日 14:22:01 kudo2 apachectl [17190]:AH00015:无法打开日志

10 月 3 日 14:22:01 kudo2 apachectl [17190]:操作“开始”失败。

10 月 3 日 14:22:01 kudo2 apachectl[17190]:Apache 错误日志可能有更多信息。

10 月 3 日 14:22:01 kudo2 systemd[1]: apache2.service: 控制进程退出,code=exited status=1

10 月 3 日 14:22:01 kudo2 systemd[1]:无法启动 Apache HTTP 服务器。

10 月 3 日 14:22:01 kudo2 systemd[1]:apache2.service:单元进入失败状态。

10 月 3 日 14:22:01 kudo2 systemd [1]:apache2.service:失败,结果为“退出代码”。根@kudo2:~#

0 投票
0 回答
92 浏览

postgresql - 奇怪的 systemctl 行为

我在我的 Ubuntu 16.04 上安装了 Postgres9.6 到apt-get. 我在 AWS ubuntu 实例上安装了相同的版本来尝试复制。

我按照这个博客的步骤操作:
http ://www.rassoc.com/gregr/weblog/2013/02/16/zero-to-postgresql-streaming-replication-in-10-mins/

现在我可以登录到两台机器上的 postgres 用户,并运行 psql 并执行所有数据库操作。但是当我使用 检查服务器的状态(在两台机器上)sudo systemctl status postgres.service时,我得到了这个:

● postgres.service Loaded: not-found (Reason: No such file or directory) Active: inactive (dead)

这很奇怪,因为我可以跑步psql,对吧?
这使我无法创建远程连接。

0 投票
1 回答
313 浏览

traefik - 带有 systemd 的 traefik 看不到容器 docker

我想通过 systemd 启动 traefik,但是 systemd 与手动启动的结果不同。

这是我手动启动 traefik 的示例:

当我使用 systemd 时:

知道为什么我看不到我的容器 docker 吗?