Linux中自定义服务开机自启nginx

1.用root权限创建并编辑服务文件,文件名称可自定义:

sh 复制代码
sudo vim /etc/systemd/system/nginx-oss.service

2.填入以下内容(根据实际路径修改ExecStart、ExecStop等路径

sh 复制代码
[Unit]
# 服务描述
Description=Dts Nginx Service
# 网络启动后再启动Nginx
After=network.target

[Service]
# Nginx以fork方式运行(后台进程)
Type=forking
# 启动命令:指定Nginx可执行文件和配置文件(若配置文件路径默认,可省略-c参数)
ExecStart=/DTS/dts-installer/tools/nginx-linux/sbin/nginx -c /DTS/dts-installer/tools/nginx-linux/conf/nginx.conf
# 停止命令:通过PID文件停止
ExecStop=/DTS/dts-installer/tools/nginx-linux/sbin/nginx -s stop
# 重启命令
ExecReload=/DTS/dts-installer/tools/nginx-linux/sbin/nginx -s reload
# 启动用户(通常用root,若需限制权限可改为其他用户)
User=root
Group=root
# 确保启动前目录存在(可选,根据实际情况添加)
WorkingDirectory=/DTS/dts-installer/tools/nginx-linux
# 进程崩溃后自动重启
Restart=on-failure
# 多用户模式下开机自启
[Install]
WantedBy=multi-user.target

3.重载systemd配置并设置开机自启

sh 复制代码
sudo systemctl daemon-reload

4.启用开机自启

sh 复制代码
sudo systemctl enable nginx-oss.service

5.启动Nginx服务(手动验证是否能正常启动)

sh 复制代码
sudo systemctl start nginx-oss.service

6.查看服务状态,若nginx启动了说明配置是正确的:

sh 复制代码
sudo systemctl status nginx-oss.service

7.验证开机自启是否生效:

sh 复制代码
systemctl is-enabled nginx-oss
相关推荐
funnycoffee12313 分钟前
centos 上没有安装telnet命令 ,如何测试到1个目标IP的 443端口是否open
linux·tcp/ip·centos
威迪斯特14 分钟前
Ubuntu的apt命令详解:系统管理的核心工具
运维·服务器·ubuntu·apt·下载·包管理·维护
QuestLab22 分钟前
【第20期】2026年4月23日 AI日报
运维·服务器·人工智能
第八学期22 分钟前
如何解决挖矿病毒的攻击
运维·服务器·安全
爱莉希雅&&&25 分钟前
Ansible+Docker案例(含ansible配置安装docker)
linux·运维·mysql·nginx·docker·容器·ansible
wicb91wJ630 分钟前
Linux服务器性能调优常用命令
linux·服务器·网络
圆山猫32 分钟前
[AI] [Linux] 教我编一个启用rust的riscv kernel用于qemu启动
linux·ai·rust
RisunJan42 分钟前
Linux命令-nmap(网络探测和安全审计工具)
linux·网络·安全
兔子小灰灰43 分钟前
云服务器配置远程桌面
服务器·云计算
SarL EMEN1 小时前
Linux(CentOS)安装 MySQL
linux·mysql·centos