linux下设置自启动
.netcore centos配置自动启动
systemd分两种服务系统和用户服务
对应存储位路径为系统(/usr/lib/systemd/system)、用户(/etc/systemd/user/)
切换到服务系统
cd /etc/systemd/system
新建服务文件
vi WebApiDemo.service
[Unit]
Description=WebApiDemo services
After=network.target #服务启动顺序。如:在网络服务启动后启动
[Service]
WorkingDirectory = /usr/local/netcore/data/WebApiDemo/ #工作目录。根据软件服务器上实际位置设置
ExecStart=/usr/local/netcore/data/WebApiDemo/WebApiDemo param #启动命令,参数(根据实际情况输入,如
Restart = always #服务意外关闭后是否自动启动
RestartSec = 3 #重试间隔
User = root #启动用户
Environment = ASPNETCORE_ENVIRONMENT=Production #环境变量 (不需要可以删除该行)
Environment = DOTNET_PRINT_TELEMETRY_MESSAGE=false #环境变量(不需要可以删除该行)
[Install]
WantedBy=multi-user.target
赋予服务权限 rwxrwxrwx 0777
sudo chmod 777 WebApiDemo.service #sudo chmod +x WebApiDemo.service (备用命令)
运行服务常用命令
systemctl daemon-reload #刷新服务
systemctl start WebApiDemo.service #启动服务
systemctl stop WebApiDemo.service #停止服务
systemctl enable WebApiDemo.service #设置服务自启
systemctl status WebApiDemo #检查下服务运行状态
systemctl list-units --type=service #显示所有已启动的服务
#查看实时日志
journalctl -f -u WebApiDemo.service
#参数解释
-f #实时日志
-u #按名称筛选服务
问题解决
#执行 systemctl start WebApiDemo.service 命令出现错误时,执行下列语句
#查看SELINUX状态
sestatus
#临时关闭SELINUX
setenforce 0