安装配置好的一台服务器,后来想把一些程序放到rc.loacl里,让其随机启动。不过重启机器后,发现不生效。从网上虽然解决方法,查看了很多,都是说在相应启动级别里的配置文件里配置才行,如:

1lrwxrwxrwx  1 root root 11 12月  3 11:57 S99local -> ../rc.local
2[root@web45 rc3.d]# pwd
3/etc/rc.d/rc3.d
4[root@web45 rc3.d]#

上面是在启动级别为3的配置文件。但是通过查看,其链接的是/etc/rc.d/rc.loacl,而/etc/rc.d/rc.loacl文件又链接的是/etc/rc.local文件。(注:这是在centos环境下是这样的,不保证其他发行版本也是这样的。)

即然这样,为什么会重启了运行不了呢?而直接source /etc/rc.loacl文件运行是没问题的。查看message日志也没发现什么异常。这样重启了两次,发现仍不行,实在想不出是什么原因造成的。不过无意间在一个网页边栏上瞥见selinux这个词。心想会不会是因为这个引起的。(虽然那篇文章里没提到是selinux的问题)

于是查看下selinux的配置文件:

1[root@web45 rc3.d]# vim /etc/selinux/config
2# This file controls the state of SELinux on the system.
3# SELINUX= can take one of these three values:
4#     enforcing - SELinux security policy is enforced.
5#     permissive - SELinux prints warnings instead of enforcing.
6#     disabled - No SELinux policy is loaded.
7SELINUX=enforcing

果然是开启的,disabled掉。重启,OK,搞定,该脚本里的引用脚本启动成功了。哈哈