centos7 添加自启
Posted zhanglw456
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7 添加自启相关的知识,希望对你有一定的参考价值。
方法一:通过脚本设置
1)
chmod +x /etc/rc.d/rc.local
- 在 /etc/rc.d/rc.local 中 添加需要自启的软件的启动命令,如:
/usr/local/tomcat8/bin/startup.sh // 执行 tomcat 启动命令
方法二:通过配置系统服务来设置自启动
在CentOS 7中, 一些软件程序会在安装时自动创建服务, 比如Apache, php, mysql, nginx等等,
对于已经创建好的服务, 我们唯一要做的就是把服务设置成自启动就可以了,如:
systemctl enable mysqld // mysql服务自启
systemctl status mysqld // 查看服务状态
systemctl disable mysqld // 取消自启
自己创建服务.
CentOS7的服务systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分,需要开机不登陆就能运行的程序,存在系统服务里,即:/usr/lib/systemd/system目录下.
CentOS7的每一个服务以.service结尾,一般会分为3部分:[Unit]、[Service]和[Install]
[Unit]部分主要是对这个服务的说明,内容包括Description和After,Description 用于描述服务,After用于描述服务类
[Service]部分是服务的关键,是服务的一些具体运行参数的设置.
Type=forking是后台运行的形式,
User=users是设置服务运行的用户,
Group=users是设置服务运行的用户组,
PIDFile为存放PID的文件路径,
ExecStart为服务的具体运行命令,
ExecReload为重启命令,
ExecStop为停止命令,
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]部分的启动、重启、停止命令全部要求使用绝对路径,使用相对路径则会报错!
[Install]部分是服务安装的相关设置,可设置为多用户的
例如我们创建一个名为nginx.service的服务
#vim /usr/lib/systemd/system/nginx.service
[UNIT]
#服务描述
Description=Media wanager Service
#指定了在systemd在执行完那些target之后再启动该服务
After=network.target
[Service]
#定义Service的运行类型,一般是forking(后台运行)
Type=forking
#定义systemctl start|stop|reload *.service 的执行方法(具体命令需要写绝对路径)
#注:ExecStartPre为启动前执行的命令
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/opt/nginx/sbin/nginx -s reload
ExecStop=/opt/nginx/sbin/nginx -s stop
#创建私有的内存临时空间
PrivateTmp=True
[Install]
#多用户
WantedBy=multi-user.target
再 添加 可执行 权限
chmod 754 /usr/lib/systemd/system/nginx.service
常用命令:
systemctl list-units --type=service // 查看服务列表状态
systemctl list-unit-files // 列出所有已经安装的 服务 及 状态 (可为人所读, 内容简略、清晰)
systemctl // 可以列出正在运行的服务状态,如图:(基本不为人所读, 内容复杂、全面)
systemd-cgls // 以树形列出正在运行的进程,它可以递归显示控制组内容
systemctl start xxx.service // 启动一个服务
systemctl stop xxx.service // 关闭一个服务
systemctl restart xxx.service // 重启一个服务
systemctl status xxx.service // 查看服务状态
systemctl is-enabled xxx.service // 查看服务是否开机启动
systemctl list-unit-files | grep enabled // 查看已启动的服务列表
systemctl --failed // 查看启动失败的服务列表
以上是关于centos7 添加自启的主要内容,如果未能解决你的问题,请参考以下文章