设置nginx开机自启动
一、创建服务
1.服务创建的位置
# 我这里有两个创建服务的路径
-- /etc/systemd/system/
-- /lib/systemd/system/
# 服务名的要求
-- xxx.service 后缀名为.service结尾
# 创建服务命令
$ sudo vim /lib/systemd/system/nginx.service
2.nginx服务的内容
# 内容如下(pid,php-fpm,conf路径按照个人的实际路径修改)
输入a,可以修改文件
按下esc键,然后按ZZ,就可以保存退出
[Unit]
Description=nginx service
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx22/sbin/nginx
ExecReload=/usr/local/nginx22/sbin/nginx -s reload
ExecStop=/usr/local/nginx22/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
Description:描述服务
After:描述服务类别
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重新加载命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
二、启动nginx服务
$ systemctl start nginx --启动nginx服务
$ systemctl status nginx --查看服务的状态
三、设置服务开机自启动
$ systemctl is-enabled nginx.service --查看是否开机启动
$ systemctl enable nginx.service --设置开机自动动
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /lib/systemd/system/nginx.service.
四、服务的常用命令
$ systemctl start nginx --启动服务
$ systemctl status nginx --查看服务的状态
$ systemctl stop nginx --停止服务
$ systemctl reload nginx --重新加载
$ systemctl restart nginx --重启
$ sudo netstat -tupln| grep 80 --查看端口号80
$ systemctl list-units --type=service 查看所有已启动的服务
一个常见的错误
Warning: nginx.service changed on disk. Run 'systemctl daemon-reload' to reload units.
直接按照提示执行命令systemctl daemon-reload 即可。