cd /usr/local/nginx/sbin/touch nginx_restart.sh
nginx_restart.sh文件内容如下:
#!/bin/shwhile truedoA=`ps -C nginx --no-header | wc -l`if [ $A -eq 0 ];then echo $(date +%F%n%T) "Restart Nginx Services" >> /usr/local/nginx/logs/nginx.logsystemctl start nginxsleep 10 elseecho $(date +%F%n%T) "Nginx Running" >> /usr/local/nginx/logs/nginx.logfisleep 5 done
nginx启动命令以及与配置systemctl:
一.配置systemctl之前的启动方式
进入sbin目录下执行以下命令:
1 启动nginx的命令为/usr/local/nginx/sbin/nginx 2 停止nginx的命令为 /usr/local/nginx/sbin/nginx -s stop3 重启nginx的命令为 /usr/local/nginx/sbin/nginx -s reload
二.配置systemctl之后的启动方式
systemctl status nginxsystemctl start nginxsystemctl stop nginxsystemctl restart nginx
三.配置方法
1.创建一个nginx.service
在 /usr/lib/systemd/system/目录下面新建一个nginx.service文件。并赋予可执行的权限
vim /usr/lib/systemd/system/nginx.service
chmod +x /usr/lib/systemd/system/nginx.service
2.编辑service内容
[Unit]//对服务的说明Description=nginx - high performance web server //描述服务After=network.target remote-fs.target nss-lookup.target //描述服务类别[Service] //服务的一些具体运行参数的设置Type=forking //后台运行的形式PIDFile=/usr/local/nginx/logs/nginx.pid //PID文件的路径ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf //启动准备ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf //启动命令ExecReload=/usr/local/nginx/sbin/nginx -s reload //重启命令ExecStop=/usr/local/nginx/sbin/nginx -s stop//停止命令ExecQuit=/usr/local/nginx/sbin/nginx -s quit//快速停止PrivateTmp=true//给服务分配临时空间[Install]WantedBy=multi-user.target //服务用户的模式
3.启动服务
在启动服务之前,需要先重载systemctl命令systemctl daemon-reloadsystemctl start nginx.service
不中断的在后台运行nginx_restart.sh:nohup ./nginx_restart.sh &(nginx_restart.sh的打印信息会输出到当前目录下的nohup.out中)
如果觉得《Linux下nginx宕机自动启动》对你有帮助,请点赞、收藏,并留下你的观点哦!