Linux系统如何用systemctl设置开机自启动服务?
1 说明
设置开机自启动,需要用到systemctl工具。
systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。
systemd是一个系统管理守护进程、工具和库的集合,用于取代System V初始进程。Systemd的功能是用于集中管理和配置类UNIX系统。
在Linux生态系统中,Systemd被部署到了大多数的标准Linux发行版中,只有为数不多的几个发行版尚未部署。
2 准备
- os:redhat7.0
- systemctl –version : systemd 208
- weblogic version:12
3 将程序设置成系统服务
3.1 编写系统服务文件
# vi /etc/systemd/system/myapp.service ---------------------------------------------------- #如果/etc/systemd/system/myapp.service有过修改,需要进行更新,执行下面这个命令 #systemctl daemon-reload #查看服务是否被正确识别 #systemctl list-unit-files|grep myapp [Unit] #服务描述,写有意义的内容,便于识别 Description=myapp service [Service] Type=simple #设置应用的工作目录 WorkingDirectory=/myapp_path ExecStart=/myapp_path/startMyApp.sh ExecStop=/bin/kill -s TERM $MAINPID [Install] WantedBy=multi-user.target
3.3 查看系统服务文件是否被识别
# systemctl list-unit-files|grep myapp -------------------------- myapp.service disabled
至此,系统服务文件编写完成。
4 编写程序启动脚本
# vi /myapp_path/startMyApp.sh ---------------------------------------------------- #!/bin/sh #上面这行很重要,会报203错误 #最好先cd到程序目录 cd /myapp_path #使用java的绝对路径。如果找不到java可执行程序,也会报203错误 /usr/java/jdk1.8/bin/java -jar myapp.jar
启动脚本设置执行权限
# chmod +x myapp.sh
5 测试系统服务
5.1 启动系统服务
# systemctl start myapp.service
5.2 停止系统服务
# systemctl stop myapp.service
5.3 查看系统服务是否成功启动
# systemctl status myapp.service -l
5.4 可能碰到的203错误
ExecStart参数指定启动脚本路径不对,会提示203错误。(改对就好了。)
启动程序脚本(.sh文件)中未指定脚本解析器,会提示203错误。(在文件开头添加:#!/bin/sh)
启动程序脚本(.sh文件)没有执行权限,会提示203错误。(chmod +x myapp.sh)
6 将服务设置成开机自启动
# systemctl enable myapp.service # systemctl list-unit-files|grep myapp -------------------------- myapp.service enabled
反向命令:
# systemctl disable myapp.service # systemctl list-unit-files|grep myapp -------------------------- myapp.service disabled
6 查看服务的控制台日志
相当于tail -f。
# journalctl -flu myapp.service
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
linux mount报错:you must specify the filesystem type的解决方法
这篇文章主要介绍了linux mount报错:you must specify the filesystem type的解决方法,文中给出了详细的解决方法示例,对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。2017-03-03
在Linux上完整搭建Apache HTTP服务器的详细步骤
Apache HTTP Server(简称 Apache)是世界上最流行的 Web 服务器软件之一,本文将带你从零开始在 Linux 系统上完整搭建 Apache 服务器,并结合 Java Web 应用进行实战部署,需要的朋友可以参考下2026-04-04
Canonical通过Flutter启用Linux桌面应用程序(推荐)
这篇文章主要介绍了Canonical通过Flutter启用Linux桌面应用程序,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-07-07
Centos搭建PHP5.3.8+Nginx1.0.9+Mysql5.5.17详细配置
算不上经验,只能说是个人总结.在搭建过程中遇到的问题.并记录下来.刚开学习始搭建环境的朋友少走一些弯路.这没有过多的参数,并不是什么高性能网站的部署.本人经验有限,在此分享一些遇到的问题.2012-06-06


最新评论