我使用一项systemd
服务在 Ubuntu 20.04 启动时启动几个进程。
# MyApp start app service
[Unit]
Description=MyApp start service
Requires=network-online.target
After=network-online.target
[Service]
Type=simple
ExecStartPre=/bin/sleep 20
ExecStart=/etc/init.d/MyApp.sh start
ExecStop=/etc/init.d/MyApp.sh stop
LimitMEMLOCK=infinity
LimitCORE=infinity
RemainAfterExit=yes
User=admin
[Install]
#WantedBy=multi-user.target
#WantedBy=graphical.target
WantedBy=basic.target
我的所有进程都在系统启动后启动。然而,几分钟后,用户级systemd
退出并删除了我的进程创建的所有信号量。
看来我可以设置RemoveIPC=No配置来/etc/systemd/logind.conf
阻止用户systemd
删除信号量。
但是,用户为什么会systemd
退出?我应该使用命令sudo loginctl enable-linger admin
来阻止它退出吗?
谢谢!