第一种
vim /etc/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
# 使用 bitlink 用户及 用户环境 后台执行 start.sh &后台运行
su - bitlink -c "/home/bitlink/service/dc/start.sh &"
第二种
也是可以的 但是有一个弊端是重启之后需要root用户登录一次 才能执行。原因不详(有大佬懂的话,请评论告诉我,感谢!)
在/etc/profile.d/下写.sh文件
在/etc/profile.d/下写.sh文件,reboot即可
/etc/profile会遍历/etc/profile.d/*.sh
第三种
- 先切换root账户
- 切换目录
/etc/rc.d/init.d
# cd /etc/rc.d/init.d
- 创建脚本文件
# touch bitlink.sh
- 脚本文件填入如下内容(可参考部署包-脚本里的bitlink.sh文件)
#!/bin/sh
#chkconfig: 2345 20 80
##普通用户启动服务
/bin/su - carbon -c "sh /home/carbon/service/start_jar.sh"
/bin/su - carbon -c "docker-compose -f /home/carbon/software/middleware.yml up -d"
- 设置权限
# chmod +x bitlink.sh
- 添加服务
# chkconfig --add bitlink.sh
- 开机自启动
# chkconfig bitlink.sh on