自启动程序方法1
 
etc/rc.local在里面加入/home/robin/code/autoruntest > /dev/null &(其中autoruntest 测试程序名称,下同)。即可自启动
 
 
自启动程序方法2
 
创建linux服务,步骤如下:
1)        写服务启动脚本文件(后附例子)
2)        修改脚本文件chmod 777 autoruntest
3)        脚本文件拷贝到 /etc/rc.d/init.d/
4)        chkconfig --add autoruntest 添加服务
5)        重新启动(完成)
其中到了第三步后就可以使用service启动停止了,要自启动必须使用chkconfig 将服务添加到系统中。
 
要定制系统服务必须要以root用户操作。通过ntsysv命令可以看到系统所有的服务,及其是否和系统一起启动,在这里可以定制系统服务,在这里可以看到测试程序autoruntest已经添加为系统服务了,并且是随着系统运行的。这里可以定制启动的服务,按F1可以看到各个服务的介绍。后附系统服务的介绍。
 
以下是两个开机自启动脚本:
 

if [ `id -u` -ne 0 ]
then
echo "ERROR:For bind to port 53,must run as root."
exit 1
fi
case "$1" in
start)
if [ -x /usr/local/named/sbin/named ]; then
for i in `seq 1 8`
do
/usr/local/named/sbin/named -c /usr/local/named/etc/named.conf -u root        
echo "BIND9-named1$i server started"
done
fi
;;
stop)
kill `cat /usr/local/named/var/named.pid` && echo . && echo 'BIND9 server stopped'
;;
restart)
echo .
echo "Restart BIND9 server"
$0 stop
sleep 10
$0 start
;;
reload)
/usr/local/named/sbin/rndc reload
;;
status)
/usr/local/named/sbin/rndc status
;;
*)
echo "$0 start | stop | restart |reload |status"
;;
esac
 
#!/bin/bash

#

# autoruntest    the shell script takes care of autoruntest auto start and stop

#

# chkconfig:     2345 20 80

# description: autoruntest

# processname:         /etc/rc.d/init.d/autoruntest

    

EXEC_PATH=/home/robin/code

EXEC=autoruntest

PID_FILE=/var/run/autoruntest.pid

DAEMON=/home/robin/code/autoruntest

    

# Source function library.

. /etc/rc.d/init.d/functions

    

if ! [ -x $EXEC_PATH/$EXEC ] ; then

             echo "ERROR: $EXEC_PATH/$EXEC not found"

             exit 1

fi

    

stop()

{

             echo "Stoping $EXEC ..."

             killall $DAEMON >/dev/null

             usleep 100

             echo "Shutting down $EXEC: [    OK    ]"                

}

    

start()

{

             echo "Starting $EXEC ..."

             $DAEMON > /dev/null &

             usleep 100

             echo "Starting $EXEC: [    OK    ]"                    

}

    

restart()

{

             stop

             start

}

    

    

case "$1" in

             start)

             start

             ;;

             stop)

             stop

             ;;

             restart)

             restart

             ;;

             status)

             status -p $PID_FILE $DAEMON        

             ;;            

    *)

             echo "Usage: service $EXEC {start|stop|restart|status}"

             exit 1

esac
exit $?
chkconfig加载自启动.提示"**服务不支持chkconfig"
原来是自己写的脚本时,忘记写两行了.开头一般要这样写
#!/bin/bash
#chkconfig:345 61 61 //此行的345参数表示,在哪些运行级别启动,启动序号(S61);关闭序号(K61)
#description:Apache //此行必写,描述服务.
 
个服务在这个级别被停止.若前面有一个"s"表示"Start",表示这个服务在这个运行级别被启动.在K或S的
后面有一些数字,这是服务的,当启动服务时,按从小到大启动,当停止服务时,按从大到小停