1.rc.local
# 1.编辑rc.local文件 vim /etc/rc.d/rc.local # 添加内容如下 执行的shell脚本(比如启动某个服务) /bin/bash /xxx.sh # 要保证 /xxx.sh 有可执行权限 chmod +x /xxx.sh # 命令启动 比如 GP 数据库 su - gpadmin -c "gpstart -a" # 2.Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure chmod +x /etc/rc.d/rc.local
2.chkconfig
2.1 举例
cat <<'EOF' > /etc/rc.d/init.d/kafka #!/bin/bash # chkconfig: 2345 40 60 # description: service kafka # processname: kafka export JAVA_HOME=/usr/local/java/jdk1.8.0_241 KAFKA_HOME=/usr/local/kafka case $1 in start) ${KAFKA_HOME}/bin/kafka-server-start.sh -daemon ${KAFKA_HOME}/config/server.properties;; stop) ${KAFKA_HOME}/bin/kafka-server-stop.sh;; status) ${JAVA_HOME}/bin/jps | grep Kafka;; restart) ${KAFKA_HOME}/bin/kafka-server-stop.sh ${KAFKA_HOME}/bin/kafka-server-start.sh -daemon ${KAFKA_HOME}/config/server.properties;; *) echo "require start|stop|status|restart";; esac EOF chmod +x /etc/rc.d/init.d/kafka chkconfig --add /etc/rc.d/init.d/kafka chkconfig kafka on
2.2 chkconfig配置说明
Linux chkconfig 命令用于检查,设置系统的各种服务。这是 Red Hat 公司遵循 GPL 规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。
# 语法 chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]
- –add 增加所指定的系统服务,让 chkconfig 指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
- –del 删除所指定的系统服务,不再由 chkconfig 指令管理,并同时在系统启动的叙述文件内删除相关数据。
- –level<等级代号> 指定读系统服务要在哪一个执行等级中开启或关毕。
# 列出 chkconfig 所有的服务的情况或serviceName的服务情况 chkconfig --list [serviceName] # 开启服务 chkconfig serviceName on # 关闭服务 chkconfig serviceName off
系统服务配置文件里的 # chkconfig: 2345 10 90
三个参数说明:
第一个参数,指定服务的运行级别。
- 0 关机
- 1 单用户模式
- 2 无网络支持的多用户模式
- 3 有网络支持的多用户模式
- 4 保留,未使用
- 5 有网络支持有X-Window支持的多用户模式
- 6 重新引导系统,即重启
第二个参数,指定启动服务的优先等级。
第三个参数,指定停止服务的优先等级。
特别注意:数值越大等级越低。