莱芜市城乡建设局网站,高端公司网站建设,在哪个平台做网站好,seo快速建站最近在通过Linux系统学一些技术#xff0c;但是在启动Nginx时#xff0c;总是需要执行其安装路径下的脚本文件#xff0c;要么我们需要先进入其安装路径#xff0c;要么我们每次执行命令直接拼上Nginx的完整目录#xff0c;如启动时命令为/usr/local/nginx/sbin/nginx。 可… 最近在通过Linux系统学一些技术但是在启动Nginx时总是需要执行其安装路径下的脚本文件要么我们需要先进入其安装路径要么我们每次执行命令直接拼上Nginx的完整目录如启动时命令为/usr/local/nginx/sbin/nginx。 可以看到这样在进行Nginx操作时稍比较繁琐还需记住Nginx的安装路径但是我了解到通过systemctl命令可以对系统服务进行管理那是否可以将Nginx配置一下使用systemctl命令启动呢 答案是当然可以 在 Linux 系统中一些服务可能已经集成了 systemd 单元units因此可以直接通过 systemctl 命令来管理包括启动、停止、重启等操作。而另一些服务可能还未提供 systemd 单元此时可能需要通过执行脚本来启动、停止服务。 对于 Nginx 这样的常见服务通常都可以通过 systemctl 来管理。如果你的系统没有提供 Nginx 的 systemd 单元你可以手动创建一个 systemd 单元文件来实现通过 systemctl 来管理 Nginx 服务。 以下是具体步骤
1、sudo su提权确保当前用户有权限编辑文件
2、进入配置文件目录创建一个新的 systemd 单元文件如/usr/lib/systemd/system/nginx.service
3、编辑nginx.service
[Unit]DescriptionNginx Web ServerAfternetwork.target[Service]TypeforkingExecStart/usr/local/nginx/sbin/nginxExecReload/usr/local/nginx/sbin/nginx -s reloadExecStop/usr/local/nginx/sbin/nginx -s stopKillModeprocessRestarton-failureRestartSec5s[Install]
WantedBymulti-user.target 解释各个配置项的含义 [Unit] 部分是对服务单元的描述。 Description描述服务的简短说明。After指定服务单元依赖的其他单元在本例中表示 Nginx 服务应该在网络服务启动后启动。 [Service] 部分是指定服务的具体执行细节。 Type指定服务的启动类型这里是 forking表示启动服务时会派生出一个子进程。ExecStart指定启动 Nginx 服务的命令路径应为自己Nginx的安装路径。ExecReload指定重新加载 Nginx 配置的命令路径应为自己Nginx的安装路径。ExecStop指定停止 Nginx 服务的命令路径应为自己Nginx的安装路径。KillMode指定终止模式这里是 process表示通过向进程发送信号终止服务。Restart指定在失败时是否重新启动服务这里是 on-failure表示只有在服务失败时才重新启动。RestartSec指定重新启动服务的时间间隔这里是 5 秒。 [Install] 部分是指定服务的安装信息。 WantedBy指定服务的启动级别这里是 multi-user.target表示服务将在多用户环境下启动。 4、创建完成后重新加载 systemd 配置
systemctl daemon-reload
5、以上步骤完成后就可以使用systemctl命令对nginx服务进行相关操作了
启动 Nginx 服务
systemctl start nginx
查看 Nginx 服务状态
systemctl status nginx 停止 Nginx 服务
systemctl stop nginx 重启服务
systemctl restart nginx