终端关闭时,Systemd关闭

忍者

我的systemd服务文件的名称为,os.service并具有以下配置行。

#  This systemd service file will help supervise os service
[Unit]
Description=Os Server
After= network.target

[Service]

# Preferably configure a non-privileged user
# User=deploy
# Group=deploy

# Environment variables shared across the config
#EnvironmentFile=  # environment file to be used, includes RACK_ENV
EnvironmentFile=/home/deploy/test/shared/.env
SyslogIdentifier=test
PIDFile=/home/deploy/test/shared/tmp/server.pid

# Specify the path to your test application root
# WorkingDirectory=/home/deploy/test/

# Start/Reload/Stop syntax
ExecStart=/home/deploy/test/current

# TimeoutSec=15
# TimeoutStopSec=10
RestartSec=5s           

# Restart os, always if it dies for some reason
Restart=always

[Install]
WantedBy=multi-user.target

在服务器中,当我断开ssh连接时,服务会死机并导致502 Bad Gateway我必须ssh并运行systemctl --user start os.service才能启动并使其工作。再次,一旦我关闭我的终端,然后os.service再次死亡。

斯蒂芬·基特

您正在通过用户管理器(--user运行该服务,显然您logind没有为您启用徘徊。结果,每当您注销时,您的会话(包括其中启动的所有服务)都将关闭。

要更改此行为,您需要启用linginging

sudo loginctl enable-linger $USER

这将在启动时为您启动一个用户管理器,并允许您的服务在您的登录会话后继续存在。

诸如此类的系统服务的更好方法实际上是将其作为自己的用户运行,并由主要systemd实例管理。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SSH终端关闭时,tmux会话关闭

来自分类Dev

SSH终端关闭时,tmux会话关闭

来自分类Dev

为什么关闭终端时phpstorm关闭

来自分类Dev

尝试关闭时,Systemd挂起

来自分类Dev

关闭或注销时显示终端

来自分类Dev

运行shell脚本时终端关闭

来自分类Dev

关闭终端时执行脚本

来自分类Dev

关闭终端时执行脚本

来自分类Dev

运行shell脚本时终端关闭

来自分类Dev

终端在执行apt-get时关闭

来自分类Dev

关闭终端时暂停wget并继续

来自分类Dev

ssh连接断开时终端关闭

来自分类Dev

从终端关闭活动窗口

来自分类Dev

无法通过终端关闭

来自分类Dev

处理终端窗口关闭

来自分类Dev

从终端关闭活动窗口

来自分类Dev

无法通过终端关闭

来自分类Dev

关闭特定终端

来自分类Dev

通过终端关闭X

来自分类Dev

侏儒终端自动关闭

来自分类Dev

关闭终端中的屏幕

来自分类Dev

systemd:失败时停止引导过程(实际上是关闭)

来自分类Dev

systemd套接字连接关闭时停止子服务

来自分类Dev

systemd-networkd - 更新租约时接口关闭

来自分类Dev

Firefox每次关闭时如何执行终端命令

来自分类Dev

在终端中停止Gulp时,如何关闭BrowserSync的旧实例?

来自分类Dev

终端窗口关闭时如何自动杀死tmux窗口?

来自分类Dev

Firefox每次关闭时如何执行终端命令

来自分类Dev

程序启动结束时,如何防止终端关闭?