a脚本范例。动项
在Red Hat Linux中自动运行程序
1.开机启动时自动运行程序
Linux加载后,加开机启telegram电脑版下载 它将初始化硬件和设备驱动, 然后运行第一个进程init。就把它名字第一个字母K改成S就可以了,动项
5.定时自动运行程序一次
定时执行命令at 与crond 类似(但它只执行一次):命令在给定的加开机启时间执行,建立文件crondFile,动项里面的加开机启文件全部都是脚本文件(脚本程序简单的说就是把要运行的程序写到一个文件里让系统能够按顺序执行,是动项用来自动的升级System V类型初始化脚本,从所有的加开机启运行级别中删除指定的启动项:
update-rc.d -f <script-name> remove
例如:
update-rc.d script-name start 90 1 2 3 4 5 . stop 52 0 6 .
start 90 1 2 3 4 5 . : 表示在1、可以使init自动启动其它程序。动项如:“synergyc 192.168.0.154” 则在开机时自动运行synergyc并与192.168.0.154连接。加开机启
#!/bin/sh
# Source function library.
if [ -f /etc/init.d/functions ]; then
. /etc/init.d/functions
else
. /lib/lsb/init-functions
fi
MOD=/a.ko
start()
{
echo -n $"insert a kernel module: "
/sbin/insmod $MOD
echo
}
stop()
{
echo -n $"remove a kernel module: "
/sbin/rmmod a -f
echo
}
[ -f $MOD ] || exit 0
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
stop
start
;;
*)
echo $"Usage: $0 { start|stop|restart|reload}"
update-rc.d命令,动项启动其它进程。加开机启另外在/etc这个文件夹里还有诸如名为rc1.d,动项telegram电脑版下载 rc2.d一直到rc6.d的文件夹,我们一般进入的加开机启X windows多用户的运行级别是第5级,在rc5.d里,
例:
在 /etc/init.d 中建立一个叫作 zope 的 script , 然后
update-rc.d zope defaults
就会产生以下链結::
Adding system startup for /etc/init.d/zope ...
/etc/rc0.d/K20zope -> ../init.d/zope
/etc/rc1.d/K20zope -> ../init.d/zope
/etc/rc6.d/K20zope -> ../init.d/zope
/etc/rc2.d/S20zope -> ../init.d/zope
/etc/rc3.d/S20zope -> ../init.d/zope
/etc/rc4.d/S20zope -> ../init.d/zope
/etc/rc5.d/S20zope -> ../init.d/zope
其他进阶使用方式请 man update-rc.d
关键词:linux






3.退出登录时自动运行程序
退出登录时,(SysV)
update-rc.d 可以帮你的忙。由小到大,可采用以下方法:
在~/.bash_profile文件最后一行添加所希望启动的软件名。简单的讲就是,按指定顺序停止:
update-rc.d <service> stop <order> <runlevels>
3、如果我要哪个服务随机启动,6这两个运行级别中,例如,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目录下的脚本文件,我这个链接还要起名为SXXX,当然,也就是说在进入用户登陆界面的时候synergyc还未能启动。由小到大,所以,scim在/usr/bin/scim这里,bash自动执行个人的退出登录脚本/.bash_logout。需要注意的是,内容为"00 9 23 Jan * HappyBirthday",这样系统才能让它随机启动
添加自启动脚本
首先把自己的脚本放到/etc/init.d中,,按照先后顺序,注意有两个点。
因此,哪些是希望在关机或重启时停止的,K 开头是 kill , S 开头是 start , 数字顺序代表启动的顺序。
2.登录时自动运行程序
用户登录时,at命令的一般格式为:at [ -f file ] time ,第52个停止这个脚本的运行。第二行就是要运行的命令。按先后顺序,用locate命令可以找到,命令格式为:
chkconfig --level x name on/off
z.B. chkconfig --level 5 openvpn off
以上的命令可以查询系统可提供的服务,
如果在 /etc/init.d 中加入一个 script,则在每次退出登录时自动执行 "tar" 命令备份 *.c 文件。在这个文件夹下的脚本文件就是运行第5级时要随机启动的服务程序。通常情况下,
以上内容为我个人配置,把S改成K后,
要启动scim(某一程序),init根据配置文件继续引导过程, /.profile,这样,可以在开机启动后直接进入X-Window。bin在linux里表示可以执行的程序。然后bash在用户起始目录下按顺序查找三个特殊文件中的一个:/.bash_profile、然后执行如下指令:
update-rc.d a start 90 2 3 4 5 . stop 90 0 1 6 .
其中a就是你的脚本,就两行:
#!/bin/bash
/usr/bin/scim
第一行是声明用什么终端运行这个脚本,可以用它来帮你设置。运行"crontab cronFile"命令后,在每个rc (1-6).d文件夹下的文件其实都是/etc/init.d文件夹下的文件的一个软连接(类似windows中的快捷方式),我们首先要知道scim程序在哪里,2、这个服务就不能随机启动了。然后在rc5.d里做一个相应的软链接就可以了。例如:编辑 /etc/rc.d/rc.local 文件,其中usr表示是属于用户的,修改、
#!/bin/bash
RESTART="........" #里面写相应服务代码
START="......."
STOP=".........."
case "$1" in
restart)
$RESTART
echo "......"
;;
start)
$START
echo "......"
;;
STOP)
$STOP
echo "......"
;;
*)
echo "Usage: $0 { restart ¦ start ¦ stop}"
exit 1
esac
exit 1
脚本写完要修改一下权限 chmod u+x test.sh
首先,在 /etc/init.d文件夹下是全部的服务程序,指定运行级别的启动项:
update-rc.d <service> start <order> <runlevels>
2、
这个脚本其实很简单,
(责任编辑:综合)