systemctl和service一样,是linux的服务管理工具
systemd是linux最新的初始化系统,目的是提高系统的启动速度,尽可能的减少启动进程,尽可能多的并发启动进程。
systemctl使用方法:
systemctl +common+Unti
例如:systemctl start mysql
systemctl reload nginx
比较常用的common有:
start:启动
stop:停止
restart:重启,同stop后start
enable:设置服务开机启动
disenable:设置服务开机不启动
is-able:查看服务是否设置了开机启动
reload:不重启服务,加载配置
status:查看服务的运行状态,运行时间等
is-active:查看服务是否正在进行
kill:杀掉该服务进程,通常的使用场景是stop后还能看到该服务在运行。
mask:注销服务,注销后该服务没办法启动,对应的unmask,取消注销。
将服务添加到systemctl的方法
需要vi /user/lib/systemd/system/mysql.service,通常如果没有配置过,且linux是通过命令行安装的,是没有mysql.service这个文件的,执行vi命令之后会新建个文件。
我给的建议是1:复制system文件夹下的其他文件,然后在配置中将对应配置改为mysql的配置
或者2.cat其他服务端的配置文件内容,复制需要的配置内容,然后cat >mysql.service,ctrl+v,ctrl+d
然后配置下start,stop,relaod脚本对应的位置:
[Unit]:服务的说明
Description:描述服务
After:描述服务类别
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:启动、重启、停止命令全部要求使用绝对路径
[Install]服务安装的相关设置,可设置为多用户
保存文件之后,尝试下,以mysql为例
systemctl start mysql 就可以启动mysql了。