Lurou's Home

写有质量的技术博客,做有质量的事情。

SUSE Linux多个开机启动脚本的优先级排序问题

最近suse操作系统下发生了不少问题,一一记录一下吧。今天解决的是系统开机时多个脚本的优先级排序问题,在说明白一点是,suse系统下设置存储卷挂载以及oracle启动的优先级顺序的方法。


遇到存储卷无法自动挂载,可以看我这篇文章处理:

http://blog.csdn.net/laven54/article/details/9121661



如果是oracle数据库服务器,你想要的是,系统所有服务都启动、所有设备都加载就绪之后,你再执行after.local内的mount命令去挂载存储卷。对于其他应用服务器其实也是适用的,原理一样。

我们原来的系统是通过在/etc/init.d目录下放置start_oracle.sh,并且创建软连接到/etc/init/d/rc5.d目录下面的方法来实现oracle的开机启动的。


总结一下:

1、分区不能自动挂载的问题解决了,现在通过after.local来挂载存储卷。

2、新问题是,目前after.local的优先级低于/etc/init/d/rc5.d目录下面的start_oracle.sh,也就是系统会先去执行start_oracle.sh,然后执行after.local,可是这个时候明明还没有准备好嘛。


解决办法:

弄清楚原理就好解决了!

直接删除start_oracle.sh在/etc/init/d/rc5.d目录下面的软连接(不删除的话,可能会发生冲突或报错); 接着,编辑after.local文件,在mount信息之后,添加执行启动oracle的脚本的绝对路径即可;


附上操作过程:

1、找到oracle开机启动脚本

linux-92bv:/etc/init.d # pwd
/etc/init.d
linux-92bv:/etc/init.d # ls -al start_oracle.sh
-rwxr-xr-x 1 root root 169 Feb 23  2012 start_oracle.sh



2、发现开机启动脚本的启动方式是软连接
linux-92bv:/etc/init.d/rc5.d # pwd
/etc/init.d/rc5.d


linux-92bv:/etc/init.d/rc5.d # ls -al
lrwxrwxrwx  1 root root   27 Feb 23  2012 S16start_oracle -> /etc/init.d/start_oracle.sh



3、删除软连接
linux-92bv:/etc/init.d/rc5.d # rm S16start_oracle

4、设置开机启动脚本到after.local文件,并且把优先级顺序排在挂载存储卷的顺序后面
linux-92bv:/etc/init.d # pwd
/etc/init.d
linux-92bv:/etc/init.d # more after.local
mount /dev/tmsvg/oradata   /ora_data
bash  /etc/init.d/start_oracle.sh



阅读更多
个人分类: suse linux
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭