在Linux系统(CentOS7版本)下,如何实现某个服务的开机自启动?
【问题描述】
在CentOS6及其之前的版本,可以使用service + chkconfig 命令,来实现服务的开机自启动;
但在CentOS7版本系统上,之前的命令和配置都无效了。
【思路分析】
在CentOS7版本系统上,配置文件的路径和命令都已经发生改变,需要重新进行配置。
【解决方案】
本文还是以Eureka服务为例,来说明在CentOS7系统中如何设置该服务的开机自启动。
1.在任意目录下,创建一个启动服务的shell脚本文件( 名字可以随意取,这里就以eurek.sh为例说明: touch eurek.sh);
注意:脚本文件不要在 /etc/init.d 目录下,如果该目录下面有就删除掉,否则可能会产生冲突导致自启动无效。
文件的内容如下: 仅供大家参考(你们写的启动服务的脚本要根据你们服务的实际命令和路径来写)
#!/bin/bash
# chkconfig:2345 10 90
# description: eureka service ...
start(){
echo "-----------准备启动Eureka服务----------"
# 进入到eureka的安装目录:
cd /opt/eureka/
# 设置一下 linux系统的JAVA环境变量和Path路径:
export JAVA_HOME=/usr/lib/jvm/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# 在后台启动 eureka服务:
nohup java -jar com.xxxx-xxx-xxxxxx-0.0.1-SNAPSHOT.jar > nohup.out &
echo "-----------完成启动Eureka服务------------"
}
case $1 in
start):
start
;;
stop):
echo "--------------------stop...-------------------"
;;
esac
exit 0
说明:1) shell脚本编写完成后,请在机器上执行一下,确认该脚本是可以正常启动eureka的jar包服务的.
2) 启动后, 可以通过 ps -ef|grep java(或服务) 命令来查看需要启动的java进程(或服务)是否已经正常启动.
2. 在 /usr/lib/systemd/system 目录下面创建一个xxx.service的文件;
注意:xxx.service文件不要放在 /etc/systemd/system 目录下,如果该目录下面有就删除,否则可能会产生冲突。
文件的内容如下: 仅供参考
[Unit]
Description=The eureka.jar service
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/opt/eureka/eureka.sh start
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/opt/eureka/eureka.sh stop
PrivateTmp=True
[Install]
WantedBy=multi-user.target
3. 使用systemctl enable xxx.service 命令,把服务添加到linux系统的自启动服务列表中去;
4. 使用systemctl status xxx.service 命令,查看是否添加成功。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具