使用systemd配置Java守护程序
我在工作中使用此定义systemd: [Unit] Description=Some job [Service] ExecStart=/usr/local/sbin/somejob User=dlt Type=forking [Install] WantedBy=multi-user.target 调用脚本的方式如下(调用一个简单的例程,该例程在tcpip套接字上侦听并将输入追加到文件中): #!/bin/sh cd /home/user/tmp/testout nohup java -jar /home/user/programming/tests/java/core/SocketTest/SocketTest.jar </dev/null >/dev/null & After systemctl start somejob进程显示为正在运行,以init其父进程为例: user@CANTANDO ~$ ps -u dlt eo pid,ppid,command PID PPID COMMAND 8718 1 java -jar /home/user/programming/tests/java/core/SocketTest/SocketTest.jar 执行systemctl stop somejob完该过程后,不再显示(端口已关闭)。 所以一切似乎都很好 我的问题是:这是使用,运行Java守护程序的可接受解决方案systemd,还是存在警告,因此还有其他更稳定或安全的方法来实现这一目标?