admin 管理员组

文章数量: 1087139


2024年6月7日发(作者:html表格代码例子)

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

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

Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。init根据配置

文件继续引导过程,启动其它进程。通常情况下,修改放置在

/etc/rc或 /etc/rc.d 或 /etc/rc?.d 目录下的脚本文件,可以使init自动启动其它程

序。

例如:编辑 /etc/rc.d/ 文件(该文件通常是系统最后启动的脚本), 在文件最

末加上一行“xinit”或“startx”,可以在开机启动后直接进入X-Window。

2. 登录时自动运行程序

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

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

/.bash_profile、 /.bash_login、 /.profile, 但只执行最先找到的一个。因此,只需根

据实际需要在上述文件中加入命令就可以实现用户登录时自动运行某些程序(类似于DOS

下的)。

3. 退出登录时自动运行程序

退出登录时,bash自动执行个人的退出登录脚本 /.bash_logout。

例如,在/.bash_logout中加入命令“tar -cvzf *.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″ <

at>Ctr-D

Job 1 at 2000-11-09 12:00

2000-11-09 12:00时候自动发一标题为“Have a lunch”,内容为文件内

容 的邮件给Roger.

ubuntu 自添加开机启动程序

ubuntu (我的是 9.10)的开机启动会和 redhat suse 这些发行版会稍有差别,比如默

认情况下没有 /etc/inittab 的配置文件,redhat 发行版在启动级别 3 上是文本模式登

录,而 ubuntu 的启动级别2~5 都是一样的启动。现在,添加一个自定义的可执行文件

或脚本,使其在开机启动时执行。

以一个脚本为例,脚本的内容很简单 :

引用

#! /bin/sh

echo "hello start up script!" > /home/beyes/

exit 0

这个脚本的作用只是在我的家目录里建立一个文本文件,里面的内容就是 echo 后的

内容hello start up script!。

编辑好这个脚本后,给其赋予相应的可执行文件,为了方便,就 chmod 777

/etc/init.d/mystart接着在 /etc/rc5.d 这个目录下做一个软链接: ln -s

/etc/init.d/mystart /etc/rc5.d/S99mystart,这个脚本开机启动生效了么?经过重启后,

并没有发现在 /home/beyes 目录下生成 文件。使用 sysv-rc-conf 配置一

下启动服务:

在第 2 运行级别也配置了让 mystart 启动。这个 sysv-rc-conf 会读取 /etc/init.d

里的文件以及 rcx.d (x为运行级别)下的软连接等信息。

配置完后,重启。再到 /home/beyes 里查看,生成了 文件,里面也有

相应的内容。从这里,也看到了 ubuntu 默认的启动运行级别为 2 。另外,在 /etc/rc2.d

目录下,也发现了由 sysv-rc-conf 生成的软连接: S99mystart

ubuntu开机自动运行程序

1.编写shell脚本

gedit /etc/init.d/aa

#!/bin/bash

mplayer /home/ -fs -vo fbdev -vf scale=800:600 (fs全屏,vo进入桌面前

使用, scale设置画面大小)

2. chmod 755 /etc/init.d/aa

3. ubuntu默认启动级别为2加载的脚本在/etc/rc2.d/

ln -s /etc/init.d/aa /etc/rc2.d/s99aa (s为开始执行99为执行顺序aa为文件名)


本文标签: 自动 启动 文件