V2EX POST
652 subscribers
138 photos
31 videos
99 files
101K links
v2ex新贴定时推送,可按需置顶本频道然后关闭通知
Download Telegram
apt 安装软件包时,自定义 systemd 服务重启问题


求 Linux 大佬给指点迷津!

不知道有没有人用过 apache geode 缓存服务。Ubuntu 24.04 系统,为了让 geode 能开机自启,把 geode 弄成了 systemd 服务,服务配置单元如下:

```ini
[Unit]
Description=Apache Geode
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target

[Service]
Type=forking
User=ubuntu
Group=ubuntu
Environment="JAVA_HOME=/usr/java"
WorkingDirectory=/opt/geode
ExecStart=/opt/geode/bin/gfsh run --file=/opt/geode/bin/start
TimeoutStartSec=300
#Restart=on-failure
#SuccessExitStatus=143

[Install]
WantedBy=multi-user.target
```

问题来了,每次 `sudo apt install/upgrade` 任意软件包,都会自动重启这个 geode.service 服务,而且只会重启它一个 systemd 服务。。。

无语了,这个缓存服务重启后,很多其它使用他的程序都得重启一遍。geode 也没什么依赖进程,为什么使用 apt 安装任意软件包,都要自动重启它呢!
关键是还有好多其它 jar 包微服务,rocketmq 啊等等程序都配置了 systemd 服务,单单就只有 geode 服务会重启。而且把它改名,比如 `areyouok.service`,apt 装完软件包还是会单单重启它...
如果不使用 systemd 服务启动这个 geode ,手动执行 `/opt/geode/bin/gfsh run --file=/opt/geode/bin/start` 命令起来的 geode ,就不受影响