CentOS7添加开机启动服务或脚本
三种实现方式:
方法一:(rc.local)
1、因为在centos7中/etc/rc.d/rc.local
的权限被降低了,所以需要赋予其可执行权
chmod +x /etc/rc.d/rc.local
2、赋予脚本可执行权限
假设/usr/src/iptables.sh
是你的脚本路径,给予执行权限
chmod +x /usr/src/iptable.sh
3、打开/etc/rc.d/rc.local
文件,在末尾增加如下内容
/usr/src/iptable.sh
方法二:(chkconfig)
1、将脚本移动或复制到/etc/rc.d/init.d
目录下
cp /usr/src/iptable.sh /etc/rc.d/init.d
2、增加脚本的可执行权限
chmod +x /etc/rc.d/init.d/iptable.sh
3、添加脚本到开机自动启动项目中
cd /etc/rc.d/init.d chkconfig --add iptables.sh chkconfig iptables.sh on
chkconfig启动脚本规范 在脚本开头加入下面内容:
#!/bin/sh #chkconfig:2345 80 90 #decription:autostart
说明:chkonfig后面是启动级别和优先级,description后面是服务描述。如上面脚本意思是,
服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,停止的优先级是10。
优先级范围是0-100,数字越大,优先级越低。
注意:不添加以上内容的话添加启动项时会提示service myservice does not support chkconfig
Linux启动优先级
运行级别就是操作系统当前正在运行的功能级别。这个级别从0到6 ,具有不同的功能。
这些级别在/etc/inittab文件里指定。这个文件是init程序寻找的主要文件,最先运行的服务是那些放在/etc/rc.d 目录下的文件。
不同的运行级定义如下:(可以参考Linux里面的/etc/inittab)
# 缺省的运行级,RHS用到的级别如下: 0:关机 1:单用户模式 2:无网络支持的多用户模式 3:有网络支持的多用户模式 4:保留,未使用 5:有网络支持有X-Window支持的多用户模式 6:重新引导系统,即重启 # 对各个运行级的详细解释: 0 为停机,机器关闭。 1 为单用户模式,就像Win9x下的安全模式类似。 2 为多用户模式,但是没有NFS支持。 3 为完整的多用户模式,是标准的运行级。 4 一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本 电脑的电池用尽时,可以切换到这个模式来做一些设置。 5 就是X11,进到X Window系统了。 6 为重启,运行init 6机器就会重启。
方法三:(systemd)
可以通过systemd添加自定义服务启动,可以参见:CentOS7上设置FreeSwitch自启动