一、启动脚本 /etc/rc.local 启动
这种方式虽然简单,但是并不能保证程序在其依赖的系统服务之后启动,所以有可能会启动不成功。
二、编写启动服务.service
/lib/systemd/user/,服务以 .service 结尾。
nginx.service
[Unit] Description=nginx After=network.target [Service] Type=forking ExecStart=/www/lanmps/init.d/nginx start ExecReload=/www/lanmps/init.d/nginx restart ExecStop=/www/lanmps/init.d/nginx stop PrivateTmp=true [Install] WantedBy=multi-user.target
After:描述服务类别
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]服务安装的相关设置,可设置为多用户
以754的权限保存在目录 /lib/systemd/system 中。
systemctl enable nginx.service
其他相关命令
| 任务 | 旧指令 | 新指令 |
|---|---|---|
| 使某项服务自启动 | chkconfig --level 3 httpd on | systemctl enable httpd.service |
| 使某项服务不自启动 | chkconfig --level 3 httpd off | systemctl disable httpd.service |
| 检查服务状态 | serivce httpd status | systemctl status httpd.service |
| 显示已经启动的服务 | chkconfig --list | systemctl list-units --type=service |
| 启动某服务 | service httpd start | systemctl start httpd.service |
| 停止某服务 | service httpd stop | systemctl stop httpd.service |
| 重启某服务 | service httpd restart | systemctl restart httpd.service |
启动nginx服务 systemctl start nginx.service 设置开机自启动 systemctl enable nginx.service 停止开机自启动 systemctl disable nginx.service 查看服务当前状态 systemctl status nginx.service 重新启动服务 systemctl restart nginx.service 查看所有已启动的服务 systemctl list-units --type=service