1. 创建启动脚本
touch start.sh
内容参考:
#!/bin/bash echo '准备启动 mongodb...' cd /home/developer/MongoDB && sh ./start.sh && echo 'mongodb启动完毕!' echo '准备启动 rocketMQ...' cd /home/developer/RocketMQ && sh ./startrocketmq.sh && echo 'rocketMQ 启动完毕!' ~
2. 加入启动执行目录
sudo vim /etc/rc.d/rc.local
内容参考:
#!/bin/bash # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES # # It is highly advisable to create own systemd services or udev rules # to run scripts during boot instead of using this file. # # In contrast to previous versions due to parallel execution during boot # this script will NOT be run after all other services. # # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure # that this script will be executed during boot. touch /var/lock/subsys/local su - developer -c 'cd /home/developer/ && sh start.sh'
3. 赋予执行权限
sudo chmod +x /etc/rc.d/rc.local
4. 注意点
.sh
的脚本开头有#!/bin/bash
- 因为很多启动脚本都涉及到日志输出(特别是自己的应用启动脚本), 所以配置的命令最好是先
cd
到对应目录, 然后再执行脚本 - 注意启动的用户, 如果都以
root
启动, 则后续其他用户不方便操作root
留下的进程以及生成的文件
, 建议切换到对应权限的用户执行
切换用户命令su - username -c
(username改为自己的用户名)