安装配置好的一台服务器,后来想把一些程序放到rc.loacl里,让其随机启动。不过重启机器后,发现不生效。从网上虽然解决方法,查看了很多,都是说在相应启动级别里的配置文件里配置才行,如:
lrwxrwxrwx 1 root root 11 12月 3 11:57 S99local -> ../rc.local
[root@web45 rc3.d]# pwd
/etc/rc.d/rc3.d
[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的配置文件:
[root@web45 rc3.d]# vim /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=enforcing
果然是开启的,disabled掉。重启,OK,搞定,该脚本里的引用脚本启动成功了。哈哈