|
发表于 2003-10-12 03:22:36
|
显示全部楼层
这里没有必要用 nohup 吧?如果是希望输出内容不显示到屏幕上可以直接用 管道符将输出重定向到某个文件,或者干脆 /dev/null。
如果说你真的想做一个程序,比较好的办法是不要将它写在 rc.local 里,自己写一个 /etc/init.d 下的服务脚本,然后用 service 命令像控制普通系统服务一样控制这个程序 - start, stop, restart, reload ....
Gentoo 所使用的 BSD Style init 和 Redhat 所使用的 SysV init 格式不太一样,Gentoo 下的服务脚本非常好写,这里有个例子,是 esound 服务的内容:
[code:1]#!/sbin/runscript
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# $Header: /home/cvsroot/gentoo-x86/media-sound/esound/files/esound.init.d,v 1.2 2003/05/30 22:55:56 utx Exp $
# Note: You need to start esound on boot, only if you want to use it over network.
# Warning: To use global esound daemon, you must also set spawn_options
# in /etc/esd/esd.conf to the same protocol (i. e. add "-tcp") and unset
# "Enable sound server startup" in gnome-sound-properties for all users
# and optionally handle authentization.
. /etc/conf.d/esound
depend() {
use net portmap
}
start() {
ebegin "Starting esound"
start-stop-daemon --start --quiet --background --exec /usr/bin/esd -- $ESD_START $ESD_OPTIONS
eend $?
}
stop() {
ebegin "Stopping esound"
start-stop-daemon --stop --quiet --exec /usr/bin/esd
eend $?
}[/code:1] |
|