配置服务文件

为目标设置一个配置文件,如配置一个文件名为unitanduserinit.service,用记事本打开,并输入以下内容

  1. [Unit]
  2. Description=服务说明
  3. [Service]
  4. WorkingDirectory=/root/DataSync/OA.SyncData.Core/
  5. ExecStart=/root/dotnet/dotnet /root/DataSync/OA.SyncData.Core/OA.SyncData.Core.dll
  6. Restart=always
  7. RestartSec=10
  8. [Install]
  9. WantedBy=multi-user.target

服务存放路径

将文件放在/usr/lib/systemd/system 或者 /etc/systemd/system目录下,然后可以测试一下:

  1. sudo systemctl start test.service

然后你可以查看你的/home/downey/test.sh脚本是否已经运行

  1. systemctl status unitanduserinit.service

如果已经运行表示配置文件没有问题。然后可以将服务设置为开机自启动

设置开机启动

  1. sudo systemctl enable unitanduserinit.service

配置项说明

  1. Description:运行软件描述
  2. Documentation:软件的文档
  3. After:因为软件的启动通常依赖于其他软件,这里是指定在哪个服务被启动之后再启动,设置优先级
  4. Wants:弱依赖于某个服务,目标服务的运行状态可以影响到本软件但不会决定本软件运行状态
  5. Requires:强依赖某个服务,目标服务的状态可以决定本软件运行。
  6. ExecStart:执行命令
  7. ExecStop:停止执行命令
  8. ExecReload:重启时的命令
  9. Type:软件运行方式,默认为simple
  10. Restartlways
  11. RestartSec10
  12. WantedBy:这里相当于设置软件,选择运行在linux的哪个运行级别,只是在systemd中不在有运行级别概念,但是这里权当这么理解。