标签: daemon

docker.io 和 docker 有什么区别?

试图在这里学习 docker,但我对 docker.io 和 docker 之间的区别有点困惑。是docker.io守护程序服务器和docker客户端?为什么守护进程需要一直运行?

process daemon docker

51
推荐指数
5
解决办法
6万
查看次数

如果失败,如何自动重启linux后台进程?

我有一个由 init.d 脚本在后台执行的进程。例如:

case "$1" in 
    start)
       /bin/myprocess &
    stop)
       killall myprocess
    restart)
       killall myprocess
       /bin/myprocess &
esac
Run Code Online (Sandbox Code Playgroud)

在某些情况下,myprocess 可能会失败并返回。是否有任何(标准)方法来检测其故障并自动重新启动?

linux bash process daemon

42
推荐指数
3
解决办法
10万
查看次数

如果没有 systemd,WSL/WSL2/WSLg 如何工作?

据我了解,systemd 是 Linux 的“主”守护进程,在启动并运行其 init 函数后立即管理所有其他进程。由于我遇到了这个(现已解决)问题,即无法在 WSL 上使用任何 systemd 命令,我意识到它根本没有 systemd 进程。

现在,出于好奇,我想知道 WSL 依赖于哪个进程管理而不是 systemd。由于我在“一般谷歌搜索”上没有找到令人满意的答案,我想,让我们在这里尝试一下。

linux process daemon systemd windows-subsystem-for-linux

37
推荐指数
3
解决办法
2万
查看次数

如何监视服务并在 Linux 中停止时重新启动

实际上,我不太确定是否应该使用 Shell 脚本,或者是否已经有一些方法。但是无论我们使用什么方法,我都希望服务一直运行。

比方说,iptables作为一个例子。然后 ..

  • 每当iptables服务stopped或(换句话说)没有运行,我希望它是started(或restarted)..自动无论何时停止(或不运行)。
  • 换句话说,我想让服务一直保持正常运行。

(也许我可以给出一个公平的频率来检查,如果进行实时检查是问题。所以可以说,每 5 分钟一次)

我能想到的唯一方法是在 Cron Tab 中使用 Shell 脚本。

  • 请问有什么聪明的解决办法吗?

谢谢!

linux services reboot daemon

27
推荐指数
2
解决办法
9万
查看次数

如何防止 Linux 服务自动启动?

我最近从 Windows 迁移到 Linux (xubuntu)

我是一名开发人员,已经安装了我需要的一切,LAMP。在 Windows 中,我曾经关闭所有不必要的服务——我不需要 Apache 或 MySQL 服务一直运行。每当我需要 MySQL 时,我都会使用:

net start mysql
Run Code Online (Sandbox Code Playgroud)

我如何在 Linux 中做同样的事情?

  1. 禁用不需要的守护进程自动启动?
  2. 仅在我需要它们时才启动它们?

linux boot services daemon

16
推荐指数
3
解决办法
6万
查看次数

启动时启动 systemd 用户服务

我正在尝试为特定用户启动 systemd 服务(服务名称/目标不相关)。我这样做是因为我需要有一个在启动时运行的应用程序的每个用户进程。

这是我迄今为止取得的成就:

但是,当我重新启动该服务时,该服务似乎没有启动,并且在 journalctl 中没有看到该服务的任何内容。但是状态说服务已启用:

~ $ systemctl --user 状态传输守护进程

? custom.service - 自定义守护进程
加载:加载(/etc/systemd/user/custom.service;启用;供应商预设:启用)

活动:不活动(死)

我也可以通过运行手动运行它,没有问题

~ $ systemctl --user start custom.service

任何人都知道我做错了什么?

arch-linux daemon systemd

15
推荐指数
2
解决办法
2万
查看次数

无法启动 systemd - 无法获得 D-Bus 连接

我正在尝试systemd在 Debian 上设置守护进程宽度。

systemd已经是发行版的一部分。刚刚在下面添加了一个新的单元文件 my-daemon.service/etc/systemd/system/但在重新启动后,无论我做什么,我都会收到此错误。它在重新启动之前工作

~ # systemctl daemon-reload
Failed to get D-Bus connection: Unknown error -1

~ # systemctl list-units
Failed to get D-Bus connection: Unknown error -1
Run Code Online (Sandbox Code Playgroud)

也尝试删除单元文件 my-daemon.service 并重新启动系统..但仍然出现相同的错误

更新

# dpkg -l | grep -i dbus
ii  at-spi2-core                           2.14.0-1                             amd64        Assistive Technology Service Provider Interface (dbus core)
ii  dbus                                   1.8.22-0+deb8u1                      amd64        simple interprocess messaging system (daemon and utilities)
ii  dbus-x11                               1.8.20-0+deb8u1                      amd64        simple interprocess messaging system (X11 deps)
ii  libdbus-1-3:amd64                      1.8.20-0+deb8u1 …
Run Code Online (Sandbox Code Playgroud)

linux daemon systemd

13
推荐指数
2
解决办法
7万
查看次数

Pulseaudio 守护进程启动失败

startxArch Linux上运行时,错误:

E: [pulseaudio] main.c: Daemon startup failed.
Run Code Online (Sandbox Code Playgroud)

被退回。

有什么办法可以解决这个错误吗?

xorg pulse-audio arch-linux daemon

12
推荐指数
1
解决办法
2万
查看次数

'ps' 中的 [..] 是什么意思,您如何创建类似的流程?

运行 ps 时,您会得到如下信息:

root         2  0.0  0.0      0     0 ?        S<   00:00   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S<   00:00   0:00 [ksoftirqd/0]
root         4  0.0  0.0      0     0 ?        S<   00:00   0:00 [events/0]
Run Code Online (Sandbox Code Playgroud)

所有守护进程通常都有“[..]”括号。

它们是什么意思(如果有的话)?你如何创建一个看起来像这样的过程?

我问的原因是我们从 rcS 创建了一个系统守护进程(程序使用 fork 创建守护进程),但是 ps 条目看起来像:

root       207  0.0  0.2   1516   200 ?        S    00:00   0:00 /root/testdaemo
Run Code Online (Sandbox Code Playgroud)

所以我们想知道拥有 '[..]' 括号是否重要以及进程如何首先获得它们。

谢谢。

linux daemon

11
推荐指数
2
解决办法
8412
查看次数

unix:///var/run/supervisor.sock 没有这样的文件

我在Ubuntu 14.04 服务器上运行Supervisord,一切正常。我使用 git push 进行部署,在部署时我还需要重新启动我的应用程序服务器 ( gunicorn ),我应该可以使用supervisorctl.

un my supervisord.conf, gunicorn 定义如下:

[program:gunicorn]
command=/home/imb/imb/venv/bin/gunicorn --worker-class eventlet -b 127.0.0.1:5000 -w 1 app:app
directory=/home/imb/imb
autostart=true
autorestart=true
stdout_logfile=/tmp/gunicorn.log
redirect_stderr=true
stopsignal=QUIT
Run Code Online (Sandbox Code Playgroud)

supervisorctl是这样启用的:

[supervisorctl]
serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL  for a unix socket
Run Code Online (Sandbox Code Playgroud)

我开始使用主管

sudo supervisord -c /home/imb/imb/supervisord.conf
Run Code Online (Sandbox Code Playgroud)

据我所知,我现在应该能够使用命令重新启动gunicorn supervisorctl restart gunicorn,但是当我这样做时,我得到

$ supervisorctl restart gunicorn
unix:///var/run/supervisor.sock no such file
Run Code Online (Sandbox Code Playgroud)

我检查了该文件/var/run/supervisor.sock确实不存在,即使我确定主管实际上正在运行:

$ ps -A | grep supervisor
27211 ?        00:00:00 supervisord
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么 …

linux daemon ubuntu supervisord

10
推荐指数
2
解决办法
2万
查看次数