logo资料库

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

第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
资料共7页,全文预览结束
UBUNTU添加开机自动启动程序方法
UBUNTU 添加开机自动启动程序方法 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. ubuntu 自添加开机启动程序 ubuntu (我的是 9.10)的开机启动会和 redhat suse 这些发行版会稍有差别, 比如默认情况下没有 /etc/inittab 的配置文件,redhat 发行版在启动级别 3 上是文本模式登录,而 ubuntu 的启动级别2~5 都是一样的启动。现在,添加 一个自定义的可执行文件或脚本,使其在开机启动时执行。 以一个脚本为例,脚本的内容很简单 : 引用#! /bin/sh echo "hello start up script!" > /home/beyes/mystart.txt exit 0 这个脚本的作用只是在我的家目录里建立一个文本文件,里面的内容就是 echo 后的内容 hello start up script!。 编辑好这个脚本后,给其赋予相应的可执行文件,为了方便,就 chmod 777 /etc/init.d/mystart 接着在 /etc/rc5.d 这个目录下做一个软链接: /etc/rc5.d/S99mystart ln -s /etc/init.d/mystart 那么,这个脚本开机启动生效了么?经过重启后,并没有发现在 /home/beyes 目 录下生成 mystart.txt 文件。
使用 sysv-rc-conf 配置一下启动服务: 上图,在第 2 运行级别也配置了让 mystart 启动。这个 sysv-rc-conf 会读取 /etc/init.d 里的文件以及 rcx.d (x 为运行级别)下的软连接等信息。关于更 多管理启动项的更多信息见: http://www.groad.net/bbs/read.php?tid-1392.html 配 置完后,重启。再到 /home/beyes 里查看,生成了 mystart.txt 文件,里 面也有相应的内容。从这里,也看到了 ubuntu 默认的启动运行级别为 2 。另 外,在 /etc/rc2.d 目录下,也发现了由 sysv-rc-conf 生成的软连接: S99mystart linux 启动过程综述 http://www.ibm.com/developerworks/cn/linux/kernel/startup/index.html Upstart 与 ubuntu 启动过程,简单原理 http://www.linuxdiyf.com/viewarticle.php?id=102927
Upstart: Ubuntu 的基于事件的启动进程 http://www2.oklinux.cn/html/Basic/azpz/20080504/52808.htm sysv-rc-conf 一、sysv-rc-conf 简介 sysv-rc-conf 是一个强大的服务管理程序,群众的意见是 sysv-rc-conf 比 chkconfig 好用。 二、背景知识 1、Ubuntu 运行级别 Linux 系统任何时候都运行在一个指定的运行级上,并且不同的运行级的程序和 服务都不同,所要完成的工作和要达到的目的都不同,系统可以在这些运行级之 间进行切换,以完成不同的工作。 Ubuntu 的系统运行级别: 0 1 2~5 6 多用户状态 系统停机状态 单用户或系统维护状态 重新启动 查看当前运行级别,执行命令: runlevel ( runlevel 显示上次的运行级别和当前的运行级别,“N”表示没有上次的运 行级别。) 切换运行级别,执行命令: int [0123456Ss] ( 即在 init 命令后跟一个参数,此参数是要切换到的运行级的运行级代号, 如:用 init 0 命令关机;用 init 6 命令重新启动。) Linux 系统主要启动步骤: 1. 读取 MBR 的信息,启动 Boot Manager 系统中安装多个 的系统。 Boot Manager。 Windows 使用 NTLDR 作为 Boot Manager,如果您的 版本的 Windows,您就需要在 NTLDR 中选择您要进入 Linux 通常使用功能强大,配置灵活的 GRUB 作为 2. 加载系统内核,启动 init 进程 init 进程是 Linux 的根进程,所有的系统进程都是 它的子进程。 3. init 进程读取 /etc/inittab 文件中的信息,并进入预设的运行级 别, 按顺序运行该运行级别对应文件夹下的脚本。脚本通常以 start
参数启 执行,然后是 它对应的启动 动,并指向一个系统中的程序。 通常情况下, /etc/rcS.d/ 目录下的启动脚本首先被 /etc/rcN.d/ 目录。例如您设定的运行级别为 3,那么 目录为 /etc/rc3.d/ 。 4. 根据 /etc/rcS.d/ 文件夹中对应的脚本启动 Xwindow 服务器 xorg Xwindow 为 Linux 下的图形用户界面系统。 5. 启动登录管理器,等待用户登录 Ubuntu 系统默认使用 GDM 作为登录管理器,您在登 录管理器界面中 /etc/rc3.d/ 输入用户名和密码后,便可以登录系统。(您可以在 文件夹中找到一个名为 S13gdm 的链接) 三、安装 sysv-rc-conf sudo apt-get install sysv-rc-conf 四、使用 sysv-rc-conf sudo sysv-rc-conf 操作界面十分简洁,你可以用鼠标点击,也可以用键盘方向键定位,用空格键选 择,用 Ctrl+N 翻下一页,用 Ctrl+P 翻上一页,用 Q 退出。 常见的系统服务有: acpi-support 高级电源管理支持 acpid acpi 守护程序.这两个用于电源管理,非常重要 alsa 声音子系统 alsa-utils anacron cron 的子系统,将系统关闭期间的计划任务,在下一次系统运行时执行。 apmd acpi 的扩展 atd 类似于 cron 的任务调度系统。建议关闭 binfmt-support 核心支持其他二进制的文件格式。建议开启 bluez-utiles 蓝牙设备支持 bootlogd 启动日志。开启它 cron 任务调度系统,建议开启 cupsys 打印机子系统。 dbus 消息总线系统(message bus system)。非常重要 dns-clean 使用拨号连接时,清除 dns 信息。 evms 企业卷管理系统(Enterprise Volumn Management system) fetchmail 邮件用户代理守护进程,用于收取邮件 gdm gnome 登录和桌面管理器。 gdomap gpm 终端中的鼠标支持。
halt 别动它。 hdparm 调整硬盘的脚本,配置文件为 /etc/hdparm.conf。 hibernate 系统休眠 hotkey-setup 笔记本功能键支持。支持类型包括: HP, Acer, ASUS, Sony,Dell, 和 IBM。 hotplug and hotplug-net 即插即用支持,比较复杂,建议不要动它。 hplip HP 打印机和图形子系统 ifrename 网络接口重命名脚本。如果您有十块网卡,您应该开启它 inetd 在文件 /etc/inetd.conf 中,注释掉所有你不需要的服务。如果该文件不 包含任何服务,那关闭它是很安全的。 klogd 重要。 linux-restricted-modules-common 受限模块支持。 /lib/linux-restricted-modules/ 文件夹中的模块为受限模块。例如某些驱动 程序,如果您没有使用受限模块,就不需要开启它。 lvm 逻辑卷管理系统支持。 makedev 创建设备文件,非常重要。 mdamd 磁盘阵列 module-init-tools 从/etc/modules 加载扩展模块,建议开启。 networking 网络支持。按 /etc/network/interfaces 文件预设激活网络,非常 重要。 ntpdate 时间同步服务,建议关闭。 pcmcia pcmcia 设备支持。 powernowd 移动 CPU 节能支持 ppp and ppp-dns 拨号连接 readahead 预加载库文件。 reboot 别动它。 resolvconf 自动配置 DNS rmnologin 清除 nologin rsync rsync 守护程序 sendsigs 在重启和关机期间发送信号 single 激活单用户模式 ssh ssh 守护程序。建议开启 stop-bootlogd 在 2,3,4,5 运行级别中停止 bootlogd 服务 sudo 检查 sudo 状态。重要 sysklogd 系统日志 udev & udev-mab 用户空间 dev 文件系统(userspace dev filesystem)。重要 umountfs 卸载文件系统 urandom 随机数生成器 usplash 开机画面支持 vbesave 显卡 BIOS 配置工具。保存显卡的状态 xorg-common 设置 X 服务 ICE socket。 adjtimex 调整核心时钟的工具 dirmngr 证书列表管理工具,和 gnupg 一起工作。 hwtools irqs 优化工具
libpam-devperm 系统崩溃之后,用于修理设备文件许可的守护程序。 lm-sensors 板载传感器支持 mdadm-raid 磁盘陈列管理器 screen-cleanup 清除开机屏幕的脚本 xinetd 管理其他守护进程的一个 inetd 超级守护程序
分享到:
收藏