centos7安装Nginx配置自启动命令
2018-12-18 本文已影响0人
yichen_china
2.设置开机启动
字段 | 说明 |
---|---|
systemctl enable nginx.service | 设置开机启动 |
systemctl start nginx.service | 启动nginx服务 |
systemctl enable nginx.service | 设置开机自启动 |
systemctl disable nginx.service | 停止开机自启动 |
systemctl status nginx.service | 查看服务当前状态 |
systemctl restart nginx.service | 重新启动服务 |
systemctl list-units --type=service | 查看所有已启动的服务 |
4.Systemd 命令和 sysvinit 命令的对照表
image
5.Sysvinit 运行级别和 systemd 目标的对应表
image先查询原系统是否已经存在nginx
命令 | 功能 |
---|---|
sudo find / -name nginx* | 全局查找 |
systemctl stop nginx.service | #停止服务 |
yum erase nginx-1.12.2-2.el7.x86_64 | 删除包,yum remove 卸载只是把包移到最后 |
ps -ef | grep nginx #查找进程 |
我的centos7系统是最小化安装的, 缺很多库, 首先安装必须的运行库
yum install wget gcc gcc -c ++ pcre -devel zlib -devel
创建工作目录并进入工作目录
mkdir -p /z/nginx && cd /z/nginx
获取nginx最新的安装包
wget [http://nginx.org/download/nginx-1.11.10.tar.gz](http://nginx.org/download/nginx-1.11.10.tar.gz)
解压缩
tar zxvf nginx-1.11.10.tar.gz
进入目录
cd nginx-1.11.10
检测系统配置, 生成make相关文件
./configure
./configure执行成功会输出以下信息
nginx的安装位置,以及文件路径
Configuration summary
+ using system PCRE library
+ OpenSSL library is not used
+ using system zlib library
nginx path prefix: "/usr/local/nginx"
nginx binary file: "/usr/local/nginx/sbin/nginx"
nginx modules path: "/usr/local/nginx/modules"
nginx configuration prefix: "/usr/local/nginx/conf"
nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
nginx pid file: "/usr/local/nginx/logs/nginx.pid"
nginx error log file: "/usr/local/nginx/logs/error.log"
nginx http access log file: "/usr/local/nginx/logs/access.log"
nginx http client request body temporary files: "client_body_temp"
nginx http proxy temporary files: "proxy_temp"
nginx http fastcgi temporary files: "fastcgi_temp"
nginx http uwsgi temporary files: "uwsgi_temp"
nginx http scgi temporary files: "scgi_temp"
编译并安装
make && make install
创建nginx启动命令脚本
vi /etc/init.d/nginx
插入以下内容, 注意修改PATH和NAME字段, 匹配自己的安装路径 (这段是从网上copy的)
#! /bin/bash
# chkconfig: - 85 15
PATH=/usr/local/nginx
DESC="nginx daemon"
NAME=nginx
DAEMON=$PATH/sbin/$NAME
CONFIGFILE=$PATH/conf/$NAME.conf
PIDFILE=$PATH/logs/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
set -e
[ -x "$DAEMON" ] || exit 0
do_start() {
$DAEMON -c $CONFIGFILE || echo -n "nginx already running"
}
do_stop() {
$DAEMON -s stop || echo -n "nginx not running"
}
do_reload() {
$DAEMON -s reload || echo -n "nginx can't reload"
}
case "$1" in
start)
echo -n "Starting $DESC: $NAME"
do_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
do_stop
echo "."
;;
reload|graceful)
echo -n "Reloading $DESC configuration..."
do_reload
echo "."
;;
restart)
echo -n "Restarting $DESC: $NAME"
do_stop
do_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2
exit 3
;;
esac
exit 0
设置执行权限
chmod a+x /etc/init.d/nginx
注册成服务
chkconfig --add nginx
设置开机启动
chkconfig nginx on
重启, 查看nginx服务是否自动启动
shutdown -h 0 -r
netstat -apn|grep nginx
对nginx服务执行停止/启动/重新读取配置文件操作
命令 | 功能 |
---|---|
systemctl start nginx.service | 启动nginx服务 |
systemctl stop nginx.service | 停止nginx服务 |
systemctl restart nginx.service | 重启nginx服务 |
systemctl reload nginx.service | 重新读取nginx配置(这个最常用, 不用停止nginx服务就能使修改的配置生效) |
以上所述是小编给大家介绍的centos7系统下nginx安装并配置开机自启动操作,希望对大家有所帮助!
Nginx+Center OS 7.2 开机启动设置
centos 7以上是用Systemd进行系统初始化的,Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度。关于Systemd的详情介绍在这里。
Systemd服务文件以.service结尾,比如现在要建立nginx为开机启动,如果用yum install命令安装的,yum命令会自动创建nginx.service文件,直接用命令
systemcel enable nginx.service
设置开机启动即可。
在这里我是用源码编译安装的,所以要手动创建nginx.service服务文件。
开机没有登陆情况下就能运行的程序,存在系统服务(system)里,即:
/lib/systemd/ system /
1.在系统服务目录里创建nginx.service文件
vi /lib/systemd/ system /nginx.service
内容如下
[Unit]
Description=nginx
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
wq保存退出。