QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5181|回复: 13

我的apache终于可以自动启动了(共享)(redhat)

[复制链接]
发表于 2005-1-26 09:30:44 | 显示全部楼层 |阅读模式
像我一样的菜鸟们,希望你们可以不被系统服务自启动问题,难住
,请高手指正我的错误

最近一直在弄apache服务器,好辛苦啊,参看了/etc/rc.d/init.d/下其它的服务启动脚本以及和rc0~6.d目录之下的符号连接,终于有点明白chkconfig的工作原理,

apache这个问题其实很简单的(不知道的时候,好难),你只要把在安装路径下的bin目录下的apachectl文件复制到 /etc/rc.d/init.d/目录下,用文本编辑器打开他,在文件首部#!/bin/bash行下,加入以下几行
# chkconfig: 2345 50 40
# description This is  Internet www Server
说明一下,description是描述这个服务用的,一定要写上对服务的描述,而且不可以是中文的,
chkconfig: 第一组数字是系统运行级2345表示的是将要设为启动的系统运行级别, 第二个数字是优先级,00优先级最高,当然考虑到依赖性,你的服务的优先级不宜过高,如果,比自己依赖的服务的优先级更高,那么您的服务将无法正常启动,第三组数字就是杀死服务的优先级

您还可以用以下方法设置它将覆盖以上两句的设置
### BEGIN INIT INFO
# Provides: 服务名
# Required-Start: $local_fs $network (依赖的服务用空格隔开,$加上服务名,要求先启动的服务)
# Required-Stop: $local_fs $network (依赖的服务用空格隔开,$加上服务名,要求先停止的服务)
# Default-Start: 2 3 4 5 (要启动该服务的运行级别)
# Default-Stop: 0 1 6(这个不用说了吧)
# Short-Description: 简单描述一下服务(英文)
# Description: 描述一下服务(英文)(这里不覆盖在chkconfig下的description)
### END INIT INFO
保存退出,在GUI的服务配置中就可以看到该服务的条目了,右边出现该服务的描述
接着就可以chkconfig -add 服务,就可以看到你设置的那些级别可以自动启动服务了,或是chkconfig -level 级别 服务名
发表于 2005-1-27 22:21:59 | 显示全部楼层
还是要说一下这个是在redhat下弄的
其他的发行版很少有chkconfig这个冬冬的.
回复

使用道具 举报

 楼主| 发表于 2005-1-28 11:13:56 | 显示全部楼层
版主说的是,呵呵,偶是菜鸟嘛,所以认为用redhat的人会多一些
回复

使用道具 举报

发表于 2005-1-28 12:03:28 | 显示全部楼层
再支持一下, 这篇东东写得挺好的, 谁来加个精 :-)
回复

使用道具 举报

发表于 2005-1-30 16:55:05 | 显示全部楼层
晕,正为这发愁呢,没想到这么简单,谢谢,楼主啦
回复

使用道具 举报

发表于 2005-5-28 16:45:09 | 显示全部楼层
楼主你加两句时的#号还要吗?
据我的理解,加上#号成注释了啊?
回复

使用道具 举报

发表于 2005-5-28 17:18:19 | 显示全部楼层
要加#号的,不加不行,不加会提示表达式出错的,因为它是个脚本嘛
回复

使用道具 举报

发表于 2005-6-1 17:42:49 | 显示全部楼层

Re: 我的apache终于可以自动启动了(共享)(redhat)

[quote:4adb6c1b83="fke7985"]像我一样的菜鸟们,希望你们可以不被系统服务自启动问题,难住
,请高手指正我的错误

最近一直在弄apache服务器,好辛苦啊,参看了/etc/rc.d/init.d/下其它的服务启动脚本以及和rc0~6.d目录之下的符号连接,终于有点明白chkconfig的工作原理,

apache这个问题其实很简单的(不知道的时候,好难),你只要把在安装路径下的bin目录下的apachectl文件复制到 /etc/rc.d/init.d/目录下,用文本编辑器打开他,在文件首部#!/bin/bash行下,加入以下几行
# chkconfig: 2345 50 40
# description This is  Internet www Server
说明一下,description是描述这个服务用的,一定要写上对服务的描述,而且不可以是中文的,
chkconfig: 第一组数字是系统运行级2345表示的是将要设为启动的系统运行级别, 第二个数字是优先级,00优先级最高,当然考虑到依赖性,你的服务的优先级不宜过高,如果,比自己依赖的服务的优先级更高,那么您的服务将无法正常启动,第三组数字就是杀死服务的优先级

您还可以用以下方法设置它将覆盖以上两句的设置
### BEGIN INIT INFO
# Provides: 服务名
# Required-Start: $local_fs $network (依赖的服务用空格隔开,$加上服务名,要求先启动的服务)
# Required-Stop: $local_fs $[/quote]

按照以上介绍的去做,为什么系统会提示:
apachectl 服务不支持 chkconfig
回复

使用道具 举报

发表于 2005-6-2 13:39:12 | 显示全部楼层

#!/bin/bash
下加
# chkconfig: 2345 50 40
# description This is Internet www Server
这两行就OK了
看看是单词拼写不正确,
回复

使用道具 举报

发表于 2005-6-4 07:18:50 | 显示全部楼层
[quote:44ffe779d0="fke7985"] 我的apache终于可以自动启动了(共享)(redhat)[/quote]
不需要共享,系统自带了。
回复

使用道具 举报

发表于 2005-6-4 20:40:33 | 显示全部楼层
倒~~~~~~~
自带的版本太低,RPM包安装的不太好,源代码编译的好
回复

使用道具 举报

发表于 2005-6-22 18:20:20 | 显示全部楼层
我想弄tomcat-5.5.9的自动启动,怎么不行呢??
我把  /usr/local/ jakarta-tomcat-5.5.9/bin/startup.sh 的文件拷贝到/etc/rc.d/init.d/底下
然后vi startup.sh
#!/bin/sh
#chkconfig:2345 50 40
#description This is Internet www Server
# -----------------------------------------------------------------------------
# Start Script for the CATALINA Server
#
# $Id: startup.sh,v 1.4 2004/11/17 20:17:46 yoavs Exp $
# -----------------------------------------------------------------------------

# Better OS/400 detection: see Bugzilla 31132
os400=false
case "`uname`" in
CYGWIN*) cygwin=true;;
OS400*) os400=true;;
esac

# resolve links - $0 may be a softlink
PRG="$0"

while [ -h "$PRG" ] ; do
  ls=`ls -ld "$PRG"`
  link=`expr "$ls" : '.*-> \(.*\)$'`
  if expr "$link" : '.*/.*' > /dev/null; then
    PRG="$link"
  else
    PRG=`dirname "$PRG"`/"$link"
  fi
done

PRGDIR=`dirname "$PRG"`
EXECUTABLE=catalina.sh

# Check that target executable exists
if $os400; then
  # -x will Only work on the os400 if the files are:
  # 1. owned by the user
  # 2. owned by the PRIMARY group of the user
  # this will not work if the user belongs in secondary groups
  eval
else
  if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
    echo "Cannot find $PRGDIR/$EXECUTABLE"
    echo "This file is needed to run this program"
    exit 1
  fi
fi

exec "$PRGDIR"/"$EXECUTABLE" start "$@"

再然后
#chkconfig --add  startup.sh
提示
  startup.sh 服务不支持chkconfig

呵呵……麻烦楼主有空给看看,你知道我不聪明的,详细一点最好,谢谢:)
回复

使用道具 举报

发表于 2005-6-22 18:22:14 | 显示全部楼层
补充:
startup.sh文件里我就加了
#chkconfig:2345 50 40
#description This is Internet www Server


这两句,是不是加少了??
回复

使用道具 举报

发表于 2007-2-28 10:14:17 | 显示全部楼层
楼主,加那两句就行了吗?为什么我加上去,保存退出,重启。
apache还是没启动呀?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-4-20 15:00 , Processed in 0.133206 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表