ubuntu 开机启动时自动运行程序

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

Linux加载后, 它将初始化硬件和设备驱动, 而后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。一般状况下,修改放置在bash

/etc/rc或网络

/etc/rc.d 或app

/etc/rc?.d队列

目录下的脚本文件,可使init自动启动其它程序。例如:编辑/etc/rc.d/rc.local 文件(该文件一般是系统最后启动的脚本),在文件最末加上一行“xinit”或“startx”,能够在开机启动后直接进入X-Window。进程


2. 登陆时自动运行程序crontab

用户登陆时,bash先自动执行系统管理员创建的全局登陆script :ip

/ect/profileget

而后bash在用户起始目录下按顺序查找三个特殊文件中的一个:it

/.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”,运行“crontabcronFile”命令后,每当元月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.

Ubuntu下添加开机启动脚本

Ubuntu开机以后会执行/etc/rc.local文件中的脚本,因此咱们能够直接在/etc/rc.local中添加启动脚本。

固然要添加到语句:exit 0 前面才行。

如:

sudo vi /etc/rc.local

而后在 exit 0 前面添加好脚本代码。

后续有空再研究下添加一个Ubuntu的开机启动服务看看。

若是要添加为开机启动执行的脚本文件,可先将脚本复制或者软链接到/etc/init.d/目录下,而后用:update-rc.d xxx defaults NN命令(NN为启动顺序),将脚本添加到初始化执行的队列中去。

注意若是脚本须要用到网络,则NN需设置一个比较大的数字,如98 。

编写ejb启动文件,添加到/etc/init.d/

执行命令update-rc.d ejb defaults 98

#!/bin/sh ejb_start(){ sudo /usr/local/jboss-4.2.3.GA.ejb/bin/run.sh -c default -b 192.168.1.144 } ejb_stop(){ sudo /usr/local/jboss-4.2.3.GA.ejb/bin/shutdown.sh -s 192.168.1.144 -S } case $1 in start) ejb_start ;; stop) ejb_stop ;; *) echo 'Usage:ejb start|stop' ;; esac
相关文章
相关标签/搜索