[Unit]
Description=BES
After=network.target
[Service]
User=
Type=forking
WorkingDirectory=/home/bes/bes952/bin
Environment="JAVA_HOME=/usr/jdk1.8.0_202"
ExecStart=/home/bes/bes952/bin/iastool --passport B#2008_2108#es start --server
ExecStop=/home/bes/bes952/bin/iastool --passport B#2008_2108#es stop --server
Restart=always
[Install]
WantedBy=multi-user.target
解释如下:
[Unit]
:定义了服务的基本属性,服务名称为BES。[Service]
:定义了服务的启动、停止和维护方式。User
:服务的运行用户,等于空指所有用户。Type
:服务的类型,此处是forking
类型,表示该服务会派生出一个子进程。WorkingDirectory
:指定工作目录为/home/bes/bes952/bin
。ExecStart
:启动服务的命令,使用./iastool --passport B#2008_2108#es start --server
启动BES服务。ExecStop
: 停止服务的命令,使用./iastool --passport B#2008_2108#es stop --server
停止BES服务。Restart
:指定服务是否需要重新启动,这里设置为always
,表示服务在退出时总是尝试自动重启。no
: 不重启服务,不论服务是如何退出的
[Install]
:定义了服务如何被安装。WantedBy
:指定在哪个目标中应该安装服务,此处设置为multi-user.target
,表示该服务将在多用户环境中启动。
要设置systemd服务在开机时自动启动,可以通过以下命令来实现:
-
将上述服务配置文件保存为
/etc/systemd/system/BES.service
。可以使用如下命令创建并编辑该文件:sudo nano /etc/systemd/system/BES.service
-
重新加载服务文件:
sudo systemctl daemon-reload
-
启用服务:
sudo systemctl enable BES.service
现在,系统就会在开机时自动启动名为"BES"的服务。
如果您希望停止服务自动启动,可以使用以下命令禁用服务:
sudo systemctl disable BES.service
这样,该服务就不会在系统开机时自动启动了。