부팅시 자동으로 아파치가 실행되게 하는 방법
글쓴이: flowerdog / 작성시간: 금, 2006/07/07 - 12:17오후
안녕하세요? 리눅스 초보입니다.
- 페도라5를 사용합니다.
- service httpd start 이런식으로 아파치를 실행시키다가
- http://kldp.org/node/21213 이 글을 읽고 리눅스 부팅시 아파치 서비스가 자동으로 실행되게 하려고 했습니다.
- ln 명령으로 /etc/rc.d/init.d/httpd 에 대한 링크를 rc3.d, rc0.d, rc6.d 에 S85httpd, K15httpd, K15httpd 으로 걸어줬습니다.
이렇게까지 했고 리부팅 해봤는데 아파치가 바로 실행되지 않네요. 아마 무언가 빼먹거나 잘못한것 같은데 무얼 해줘야 하나요?
읽어주셔서 감사합니다. 아래는 httpd의 내용입니다.
#!/bin/bash # # httpd Startup script for the Apache HTTP Server # # chkconfig: - 85 15 # description: Apache is a World Wide Web server. It is used to serve \ # HTML files and CGI. # processname: httpd # config: /etc/httpd/conf/httpd.conf # config: /etc/sysconfig/httpd # pidfile: /var/run/httpd.pid # Source function library. . /etc/rc.d/init.d/functions if [ -f /etc/sysconfig/httpd ]; then . /etc/sysconfig/httpd fi # Start httpd in the C locale by default. HTTPD_LANG=${HTTPD_LANG-"C"} # This will prevent initlog from swallowing up a pass-phrase prompt if # mod_ssl needs a pass-phrase from the user. INITLOG_ARGS="" # Set HTTPD=/usr/sbin/httpd.worker in /etc/sysconfig/httpd to use a server # with the thread-based "worker" MPM; BE WARNED that some modules may not # work correctly with a thread-based MPM; notably PHP will refuse to start. # Path to the apachectl script, server binary, and short-form for messages. apachectl=/usr/sbin/apachectl httpd=${HTTPD-/usr/sbin/httpd} prog=httpd pidfile=${PIDFILE-/var/run/httpd.pid} lockfile=${LOCKFILE-/var/lock/subsys/httpd} RETVAL=0 # check for 1.3 configuration check13 () { CONFFILE=/etc/httpd/conf/httpd.conf GONE="(ServerType|BindAddress|Port|AddModule|ClearModuleList|" GONE="${GONE}AgentLog|RefererLog|RefererIgnore|FancyIndexing|" GONE="${GONE}AccessConfig|ResourceConfig)" if LANG=C grep -Eiq "^[[:space:]]*($GONE)" $CONFFILE; then echo echo 1>&2 " Apache 1.3 configuration directives found" echo 1>&2 " please read /usr/share/doc/httpd-2.2.0/migration.html" failure "Apache 1.3 config directives test" echo exit 1 fi } # The semantics of these two functions differ from the way apachectl does # things -- attempting to start while running is a failure, and shutdown # when not running is also a failure. So we just do it the way init scripts # are expected to behave here. start() { echo -n $"Starting $prog: " check13 || exit 1 LANG=$HTTPD_LANG daemon $httpd $OPTIONS RETVAL=$? echo [ $RETVAL = 0 ] && touch ${lockfile} return $RETVAL } stop() { echo -n $"Stopping $prog: " killproc $httpd RETVAL=$? echo [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile} } reload() { echo -n $"Reloading $prog: " if ! LANG=$HTTPD_LANG $httpd $OPTIONS -t >&/dev/null; then RETVAL=$? echo $"not reloading due to configuration syntax error" failure $"not reloading $httpd due to configuration syntax error" else killproc $httpd -HUP RETVAL=$? fi echo } # See how we were called. case "$1" in start) start ;; stop) stop ;; status) status $httpd RETVAL=$? ;; restart) stop start ;; condrestart) if [ -f ${pidfile} ] ; then stop start fi ;; reload) reload ;; graceful|help|configtest|fullstatus) $apachectl $@ RETVAL=$? ;; *) echo $"Usage: $prog {start|stop|restart|condrestart|reload|status|fullstatus|graceful|help|configtest}" exit 1 esac exit $RETVAL
Forums:
찾았습니다. -_ㅜ
# chmod 755 /etc/rc.d/init.d/httpd
# /sbin/chkconfig --level 345 httpd on
이걸 빼먹었군요.
http://www.redhat.com/docs/ma
http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/sysadmin-guide/ch-services.html
RHEL 문서중에 서비스 조절 방법이 나와있는 부분입니다. 참고하세요.
--
마잇
--
마잇
chkconfig on 명령의
chkconfig on 명령의 기능자체가 init.d의 기동스크립트 파일의 링크를 각런레벨의 디렉토리에 만들어 주는 겁니다. off는 링크파일을 지우는 거고요.
고로 필요한 런레벨 디렉토리에 링크를 제대로 만들어 주셨다면 chkconfig on 커맨드를 안쓰셔도 부팅시 자동으로 기동됩니다.
그럼 이만 총총...[훈]
http://elflord.egloos.com
===== ===== ===== ===== =====
그럼 이만 총총...[竹]
http://elflord.egloos.com
아 결국 # chmod 755
아 결국
# chmod 755 /etc/rc.d/init.d/httpd
# /sbin/chkconfig --level 345 httpd on
이거만 하면 되는 거였군요.
댓글 달기