Linux设置nginx开机自启动

第一步:进入到/lib/systemd/system/

cd /lib/systemd/system/

第二步:创建nginx.service文件,并编辑

内如如下:

[Unit]
Description=nginx service
After=network.target 
   
[Service] 
Type=forking 
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true 
   
[Install] 
WantedBy=multi-user.target




[Unit]:服务的说明
Description:描述服务
After:描述服务类别
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3

保存退出。

第三步:加入开机自启动

# systemctl enable nginx

如果不想开机自启动了,可以使用下面的命令取消开机自启动

# systemctl disable nginx

第四步:服务的启动/停止/刷新配置文件/查看状态

# systemctl start nginx.service          启动nginx服务

# systemctl stop nginx.service           停止服务

# systemctl restart nginx.service        重新启动服务

# systemctl list-units --type=service     查看所有已启动的服务

# systemctl status nginx.service          查看服务当前状态

# systemctl enable nginx.service          设置开机自启动

# systemctl disable nginx.service         停止开机自启动

常见的错误

Warning: nginx.service changed on disk. Run 'systemctl daemon-reload' to reload units.

 直接按照提示执行命令systemctl daemon-reload 即可。

# systemctl daemon-reload

  • 11
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Linux设置Nginx开机自启,可以按照以下步骤操作: 1. 打开终端,使用root用户登录系统。 2. 编辑Nginx的启动脚本,可以使用以下命令: vi /etc/init.d/nginx 3. 在脚本中添加以下内容: #!/bin/sh # # nginx - this script starts and stops the nginx daemon # # chkconfig: - 85 15 # description: Nginx is an HTTP(S) server, HTTP(S) reverse \ # proxy and IMAP/POP3 proxy server # processname: nginx # config: /etc/nginx/nginx.conf # pidfile: /var/run/nginx.pid # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network # Check that networking is up. [ "$NETWORKING" = "no" ] && exit nginx="/usr/sbin/nginx" prog=$(basename $nginx) NGINX_CONF_FILE="/etc/nginx/nginx.conf" [ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx lockfile=/var/lock/subsys/nginx start() { [ -x $nginx ] || exit 5 [ -f $NGINX_CONF_FILE ] || exit 6 echo -n $"Starting $prog: " daemon $nginx -c $NGINX_CONF_FILE retval=$? echo [ $retval -eq ] && touch $lockfile return $retval } stop() { echo -n $"Stopping $prog: " killproc $prog -QUIT retval=$? echo [ $retval -eq ] && rm -f $lockfile return $retval } restart() { configtest || return $? stop sleep 1 start } reload() { configtest || return $? echo -n $"Reloading $prog: " killproc $nginx -HUP RETVAL=$? echo } force_reload() { restart } configtest() { $nginx -t -c $NGINX_CONF_FILE } rh_status() { status $prog } rh_status_q() { rh_status >/dev/null 2>&1 } case "$1" in start) rh_status_q && exit $1 ;; stop) rh_status_q || exit $1 ;; restart|configtest) $1 ;; reload) rh_status_q || exit $1 ;; force-reload) force_reload ;; status) rh_status ;; condrestart|try-restart) rh_status_q || exit restart ;; *) echo $"Usage: $ {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}" exit 2 esac 4. 保存并退出编辑器。 5. 将脚本设置为可执行权限,可以使用以下命令: chmod +x /etc/init.d/nginx 6. 将Nginx添加到系统服务中,可以使用以下命令: chkconfig --add nginx 7. 设置Nginx开机自启,可以使用以下命令: chkconfig nginx on 现在,每次系统启动时,Nginx都会自动启动。如果需要手动启动、停止或重启Nginx,可以使用以下命令: service nginx start service nginx stop service nginx restart 希望这些步骤能够帮助你在Linux设置Nginx开机自启。 ### 回答2: 要在Linux设置Nginx开机自启,可以采用以下步骤: 1. 打开终端并登录到您的Linux服务器。 2. 编辑Nginx配置文件。 命令:sudo nano /etc/rc.local 3. 在文件的底部添加以下命令。 /usr/local/nginx/sbin/nginx 4. 您可以保存并退出文件。 5. 重启Linux服务器,以确保Nginx在下一次服务器启动时启动。 命令:sudo reboot 6. 当您的服务器重新启动后,Nginx服务将作为守护程序运行并在操作系统启动时自动启动。 以上是在CentOS或Red Hat等RPM-based Linux发行版上实现Nginx开机自启的方式。在Ubuntu等Debian-based Linux发行版上,还可以采用systemd管理服务的方式进行设置。 1. 打开终端并登录到您的Linux服务器。 2. 编辑Nginx systemd服务文件。 命令:sudo nano /lib/systemd/system/nginx.service 3. 添加以下内容: [Unit] Description=The NGINX HTTP and reverse proxy server After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking PIDFile=/run/nginx.pid ExecStartPre=/usr/local/nginx/sbin/nginx -t ExecStart=/usr/local/nginx/sbin/nginx ExecReload=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s stop PrivateTmp=true [Install] WantedBy=multi-user.target 4. 您可以保存并退出文件。 5. 使用以下命令启用Nginx服务。 命令:sudo systemctl enable nginx.service 6. 重启Linux服务器,以确保Nginx在下一次服务器启动时启动。 命令:sudo reboot 7. 当您的服务器重新启动后,Nginx服务将作为守护程序运行并在操作系统启动时自动启动。 通过以上步骤,您可以成功地实现在Linux设置Nginx开机自启。请注意,需要根据您的Linux发行版和运行环境进行适当的调整。 ### 回答3: 在 Linux 系统中,可以使用 Systemd 服务管理器来设置 Nginx 开机自启。具体步骤如下: 1. 打开终端并输入以下命令,以安装 Systemd 服务管理器: ```bash sudo apt-get install systemd ``` 2. 创建 Nginx 的 Systemd 单元文件,以便 Systemd 管理 Nginx 服务。可以使用任何文本编辑器(如 Vi 或 nano)来创建新文件。打开终端并输入以下命令: ```bash sudo nano /lib/systemd/system/nginx.service ``` 3. 将以下内容复制并粘贴到新文件中: ```text [Unit] Description=The NGINX HTTP and reverse proxy server After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking PIDFile=/run/nginx.pid ExecStartPre=/usr/sbin/nginx -t ExecStart=/usr/sbin/nginx ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s TERM $MAINPID [Install] WantedBy=multi-user.target ``` 以上内容定义了服务的名称和描述,以及服务的启动和停止脚本。这个文件还指定了服务在系统启动时应该自动启动。 4. 完成编辑并保存文件。按下 "Ctrl + X" 退出 Nano,并选择 “Y” 保存文件。 5. 在 Systemd 中重新加载服务定义: ```bash sudo systemctl daemon-reload ``` 6. 启用 Nginx Systemd 服务,以确保在系统启动时自动启动服务: ```bash sudo systemctl enable nginx ``` 7. 启动 Nginx 服务: ```bash sudo systemctl start nginx ``` 到此为止,您已成功设置Nginx开机自启功能。如果需要在将来禁用此功能,可以使用以下命令: ```bash sudo systemctl disable nginx ``` 总之,使用 Systemd 服务管理器在 Linux设置 Nginx 开机自启并不难。只需按照以上步骤操作即可轻松完成。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值