红联Linux门户
Linux帮助

redhat自动起停服务的脚本

发布时间:2006-09-04 00:11:18来源:红联作者:flycocoon
[code]#!/bin/bash/bin/bash
# chkconfig: 345 95 5
# path: /etc/inc.d/init.d/filename
# processname: filename

RETVAL=0
prog="filename"

start() {
echo -n $"Starting..."
su - root -c "mount -t ntfs /dev/hda5 /mnt/d"
su - root -c "mount -t ntfs /dev/hda6 /mnt/e"
su - root -c "mount -t ntfs /dev/hda7 /mnt/f"
su - oracle -c "dbstart"
su - oracle -c "lsnrctl start"
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
return $RETVAL
}

stop() {
echo -n $"Shutting down "
su - oracle -c "lsnrctl stop"
su - oracle -c "dbshut"
su - root -c "umount /dev/hda5"
su - root -c "umount /dev/hda6"
su - root -c "umount /dev/hda7"
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
return $RETVAL
}

# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
*)
echo $"Usage: $0 {start|stop}"
exit 1
esac

exit $RETVAL[/code]

-------------------------------------上面为脚本------------------------------------------------------

只需要修改绿色和红色部分,绿色为启动部分,红色为停止部分,自己控制好起停顺

序,下面简单解释一下。

[code] su - root -c "mount -t ntfs /dev/hda7 /mnt/f"[/code]

这句的意思就是说用root用户执行命令:mount -t ntfs /dev/hda7 /mnt/f

其实注释里面有了,把这个脚本保存成一个文件,给他700权限,root:root用户,

拷贝到/etc/inc.d/init.d/这个目录,然后执行命令:chkconfig --add 文件名

如果没有报错,那就启动ntsysv,选中你这个文件名,确定,好了,以后自动起停数据库,

自动装载/卸载windows的ntfs格式硬盘。

注意:

oracle用户使用dbstart,dbshut命令需要把oratab行尾的N改成Y。

脚本里面的# chkconfig: 345 95 5后面的5由来: /etc/rc n .d/对应服务的K值
装载ntfs硬盘需要额外对内核进行一些修改,具体请google.
文章评论

共有 1 条评论

  1. lgms2008 于 2006-09-04 17:20:18发表:

    顶起来