【转】UBUNTU添加开机自动启动程序方法

摘要:
init根据配置文件继续引导过程,启动其它进程。.d目录下的脚本文件,可以使init自动启动其它程序。例如,建立文件crondFile,内容为“00923Jan*HappyBirthday”,运行“crontabcronFile”命令后,每当元月23日上午9:00系统自动执行“HappyBirthday”的程序。

【转】UBUNTU添加开机自动启动程序方法

转自:http://apps.hi.baidu.com/share/detail/5778261

UBUNTU添加开机自动启动程序方法

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

2. 登录时自动运行程序 用户登录时,bash先自动执行系统管理员建立的全局登录script : /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. 下面着重介绍一下CRON。 crontab命令用于定时执行指定的命令,功能类似Windows下的“任务计划”,通常用来做一些重复性的工作。 Linux系统的用户只需将要执行的命令序列加到crontab文件中,操作系统即会按用户配置的时间执行这些命令序列。 向crontab文件里添加指令之前,需要检查下crontab服务是否已启动和是否开机自动启动: 查看crontab服务状态:service crond status 手动启动crontab服务:service crond start 查看crontab服务是否已设置为开机启动 ,执行命令:ntsysv 打开服务配置,查看crond服务前的[]是否已选中(打*号为选中),若未选中则选中该服务。 使用命令:crontab -l 查看当前用户已配置的任务计划 编辑crontab文件命令:crontab -e 也可以不使用“crontab -e”命令创建crontab配置文件,其他任何文本编辑器编写命令序列,比如文件名为“abc.cron”,然后使用命令:“crontab abc.cron”将命令序列添加到crontab中。 默 认情况下,系统所有用户都可以使用crond服务。如需对crond服务的使用加限制,可以使用配置文件/etc/cron.allow和 /etc/cron.deny,望文生义,cron.allow是允许使用crond服务的用户清单,cron.deny里的用户则相反 crontab命令的语法格式如下: 格式一:crontab [-u user] file 此命令用于添加一个新的crontab 文件 -u 如果使用该选项,指定用户的 crontab 文件将被修改,反之则修改执行 crontab 命令用户的 crontab 文件。 格式二:crontab [-u user] [ -e | -l | -r ] -l 在标准输出上显示当前的crontab。 -r 删除当前的crontab文件。 -e 使用系统编辑器编辑当前的crontab文件。当编辑完成后,文件将自动安装。这种方式很方便,修改后即时生效。 废话了半天,这里才是重点。crontab 文件中命令格式如下: minute hour day-of-month month-of-year day-of-week commands 即:“分 时 日 月 周 命令 ”,共计6段,前5段都是时间,最后一段才是你要定期执行的指令。每段之间使用空格或者制表符分隔。 来看一下前5段即日期和时间的取值范围 : 1,分钟[00-59] 2,小时[00-23] 3,日[01-31] 4,月份[01-12] 5,周[0-6] ;注意,这里的0表示周日 OK,来个简单点的例子,每天早上6点半起床: 30 06 * * * echo "Get Up Now !" >> /tmp/test.txt 将上面这条指令另到crontab文件,系统每天上午6点半会向/tmp/test.txt文件里添加一行“Get Up Now !”。 上面这条指令里使用了特殊符号“*”,与SQL查询语句“SELECT * FROM TAB”里的“*”一样是“任何”的意思,即代表当前段取值范围内的所有数字,如第3段上的“*”代表[01-31]日,第4段上的“*”代表 [01-12]月。 特殊符号除了“*”号还有“/”、“-”、“,”: / 代表“每”的意思,如“/5”表示每5个单位; - 用于表示一个范围,如“[1-10]”表示从1到10; , 用于表示若干离散的数字,如“5,15,25” 比如命令:[0-59]/5 23 * * * /sbin/shutdown -h now 表示每晚11点开始,每5分钟尝试一次关机,帮你养成早睡早起的好习惯,呵呵。机器关掉后,如果尝试开机,则到5的倍数时会再次关掉,酷似Windows 2000中了冲击波病毒。 00,10,20,30,40,50 * * * * echo "10 minutes has passed !" >> /tmp/test.txt 每小时的00分、10分、20分、30分、40分、50分向文件“/tmp/test.txt”写一行又十分钟过去喽。 根据上面的命令格式和时间描述方式,你就可以让系统在预订时间做些稀奇古怪的事了。

免责声明:文章转载自《【转】UBUNTU添加开机自动启动程序方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Oracle corrupt block(坏块) 详解bat批处理常用脚本下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

实现crontab定时调用python脚本,以及command not found的问题

操作 1.修改 /etc/crontab文件调用python脚本和其他sh的不同是:需要写清楚调用哪个python解释器例如:* 12 * * * root /usr/bin/python /home/admin/test.py 需要用/usr/bin/python 全路径指定.另外需要在此前写root 表示调用账户.2.增加日志使用/home/admin...

Crontab详细用法-定时任务详解

    Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式:  Seconds Minutes Hours DayofMonth Month DayofWeek Year或Seconds Minutes Hours DayofMonth Month DayofWeek 每一个域可出现的字符...

Linux下的/etc/crontab文件和crontab -e命令区别及Crontab命令详解(转)

/etc/crontab文件和crontab -e命令区别 1、格式不同 前者 # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) #...

crontab的用法

转载于:点击打开链接 cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业。 由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务: /sbin/service crond start //启动服务 /sbin/service crond stop //关闭服务 /sbin/service c...

Linux计划任务.md

crond crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。 Linux下的任务调度分为两类,系统任务调度和用户任务调度。...

部署Kettle做ETL开发并使用Crontab制作调度系统

背景说明:在数据量较小,且数据源和装载地都是关系型数据库时,使用Kettle做ETL较为简便。由于调度系统产品因为服务器环境方面的因素,而无法部署,故使用Linux的crontab定时器来制作简易调度系统是一个比较简便的解决方案。本文旨在记录Kettle的部署及配置文件配置注意事项和如何自制简易调度系统,以便处理类似问题时方案的复用。 一、环境与工具 C...