您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

在Red Hat Linux中自动运行程序

添加时间:2010-11-7  添加: admin 

1.开机启动时自动运行程序

  Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目录下的脚本文件,可以使init自动启动其它程序。例如:编辑 /etc/rc.d/rc.local 文件,在文件最末加上一行“xinit”或“startx”,可以在开机启动后直接进入X-Window。
  
2.登录时自动运行程序

  用户登录时,bash首先自动执行系统管理员建立的全局登录 :/ect/profile。然后bash在用户起始目录下按顺序查找三个特殊文件中的一个:/.bash_profile、/.bash_login、/.profile,但只执行最先找到的一个。
   因此,只需根据实际需要在上述文件中加入命令就可以实现用户登录时自动运行某些程序(类似于DOS下的Autoexec.bat)。
  
3.退出登录时自动运行程序

  退出登录时,bash自动执行个人的退出登录脚本/.bash_logout。例如,在/.bash_logout中加入命令“tar -cvzf c.source.tgz *.c”,则在每次退出登录时自动执行 “tar” 命令备份 *.c 文件。

4.定期自动运行程序

  Linux有一个称为crond的守护程序,主要功能是周期性地检查 /var/spool/cron目录下的一组命令文件的内容,并在设定的时间执行这些文件中的命令。用户可以通过crontab 命令来建立、修改、删除这些命令文件。

  例如,建立文件crondFile,内容为“00 9 23 Jan * HappyBirthday”,运行“crontab cronFile”命令后,每当元月23日上午9:00系统自动执行“HappyBirthday”的程序(“*”表示不管当天是星期几)。
  
5.定时自动运行程序一次

  定时执行命令at 与crond 类似(但它只执行一次):命令在给定的时间执行,但不自动重复。at命令的一般格式为:at [ -f file ] time ,在指定的时间执行file文件中所给出的所有命令。也可直接从键盘输入命令:

  $ at 12:00
   at>mailto Roger -s ″Have a lunch″ < plan.txt
   at >Ctr-D
   Job 1 at 2000-11-09 12:00
   2000-11-09 12:00时候自动发一标题为“Have a lunch”,内容为plan.txt文件内容的邮件给Roger。

6. 启动Apache

Apache可以手工启动,或者是在启动系统时自动启动。手工启动通过使用apachectl程序来实现。命令apachectl start启动Apache服务;命令apachectl restart或apachectl graceful重新启动Apache以使修改后的配置生效,graceful参数发出的信号是SIGUSR1,restart发出的信号是SIGHUP。

为了让Apache在系统启动时自动启动,可以在init.d或rc.N文件中写一个简单的脚本,或者在rc.local或rc.boot文件中直接调用apachectl(修改的文件取决于哪种Linux发布类型)。下面是在Debian/GNU系统中/etc/init.d/目录下的一个脚本样例:

 

#! /bin/bash

#

# apache Start the apache HTTP server.

#

NAME=apache

PATH=/bin:/usr/bin:/sbin:/usr/sbin

DAEMON=/usr/sbin/apache

SUEXEC=/usr/lib/apache/suexec

PIDFILE=/var/run/$NAME.pid

CONF=/etc/apache/httpd.conf

APACHECTL=/usr/sbin/apachectl

trap "" 1

export LANG=C

test -f $DAEMON || exit 0

test -f $APACHECTL || exit 0

if egrep -q -i "^[[:space:]]*ServerType[[:space:]]+inet" $CONF

then

exit 0

fi

case "$1" in

start)

echo -ne "Starting Web server: $NAME.\n"

$APACHECTL start

;;

stop)

echo -ne "Stopping Web server: $NAME.\n"

$APACHECTL stop

;;

exit 0

分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站