centos7以后rc.local和之前的有不太一样了,centos7默认开机不会执行,那是什么原因呢,其实细心点看rc.local的注释就知道了
#!/bin/bash #这个文件是为兼容性才添加的 # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES #强烈建议使用systemd服务或udev规则来运行开机启动脚本,而不是使用这个文件 # 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. #请记住:你必须运行'chmod +x /etc/rc.d/rc.local'来确保这个脚本在启动时执行 # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure that this script will be executed during boot.看了上面的注释就明白了吧,其实给rc.local加上执行权限就可以了
[root@localhost ~]# ll /etc/rc.local lrwxrwxrwx. 1 root root 13 2月 16 23:32 /etc/rc.local -> rc.d/rc.local [root@localhost ~]# ll /etc/rc.d/rc.local -rw-r--r--. 1 root root 502 3月 9 00:16 /etc/rc.d/rc.local [root@localhost ~]# chmod +x /etc/rc.d/rc.local [root@localhost ~]# ll /etc/rc.d/rc.local -rwxr-xr-x. 1 root root 502 3月 9 00:16 /etc/rc.d/rc.local