在Red Hat Linux中自动运行程序
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″ Ctr-D
Job 1 at 2000-11-09 12:00
2000-11-09 12:00时候自动发一标题为"Have a lunch",内容为plan.txt文件内容的邮件给Roger。
#!/bin/bash
RESTART="........" #里面写相应服务代码
START="......."
STOP=".........."
case "$1" in
restart)
$RESTART
echo "......"
;;
start)
$START
echo "......"
;;
STOP)
$STOP
echo "......"
;;
*)
echo "Usage: $0 {restart ¦ start ¦ stop}"
exit 1
esac
exit 1
脚本写完要修改一下权限 chmod u+x test.sh
首
先,linux随机启动的服务程序都在/etc/init.d这个文件夹里,里面的文件全部都是脚本文件(脚本程序简单的说就是把要运行的程序写到一个
文件里让系统能够按顺序执行,类似windows下的autorun.dat文件),另外在/etc这个文件夹里还有诸如名为rc1.d,
rc2.d一直到rc6.d的文件夹,这些都是linux不同的runlevel,我们一般进入的X
windows多用户的运行级别是第5级,也就是rc5.d,在这个文件夹下的脚本文件就是运行第5级时要随机启动的服务程序。需要注意的是,在每个rc
(1-6).d文件夹下的文件其实都是/etc/init.d文件夹下的文件的一个软连接(类似windows中的快捷方式),也就是说,在
/etc/init.d文件夹下是全部的服务程序,而每个rc(1-6).d只链接它自己启动需要的相应的服务程序!
要启动
scim(某一程序),我们首先要知道scim程序在哪里,用locate命令可以找到,scim在/usr/bin/scim这里,其中usr表
示是
属于用户的,bin在linux里表示可以执行的程序。这样,我就可以编写一个脚本程序,把它放到/etc/init.d里,然后在rc5.d里做一个相
应的软链接就可以了。
这个脚本其实很简单,就两行:
#!/bin/bash
/usr/bin/scim
第一行是声明用什么终端运行这个脚本,第二行就是要运行的命令。
还
需要注意的一点是,在rc5.d里,每个链接的名字都是以S或者K开头的,S开头的表示是系统启动是要随机启动的,K开头的是不随机启动的。这
样,你就可以知道,如果我要哪个服务随机启动,就把它名字第一个字母K改成S就可以了,当然,把S改成K后,这个服务就不能随机启动了。因此,我这个链接
还要起名为SXXX,这样系统才能让它随机启动。
分享到:
相关推荐
Weblogic 开机自动启动详解 Weblogic 作为一个流行的 Java 企业级应用服务器,通常需要在服务器启动时自动启动,以确保业务的连续性。然而,在 Windows 系统下,Weblogic 的自动启动却需要进行一些额外的配置。在这...
在Android应用开发中,"开机自启动"是一个常见的需求,特别是在需要后台服务持续运行或者希望应用程序在用户开机后立即可用的情况下。本知识点主要讲解如何利用Android的广播接收器(BroadcastReceiver)来实现在...
Visual C++源代码 20 如何创建开机自启动程序Visual C++源代码 20 如何创建开机自启动程序Visual C++源代码 20 如何创建开机自启动程序Visual C++源代码 20 如何创建开机自启动程序Visual C++源代码 20 如何创建开机...
然而,由于安全和性能考虑,现代安卓版本对应用的自启动进行了限制,许多设备和定制系统会默认禁止非系统应用的自启动。这使得用户需要手动开启应用的自启动权限,或者借助第三方工具实现。 这个“安卓自动启动软件...
在Android系统中,开机自启动应用是指当设备完成启动过程后,系统会自动运行的一类应用程序。这些应用通常会在用户无须手动干预的情况下执行特定任务,例如同步数据、推送通知或者进行后台服务的初始化。"BOOT_...
Windows 下 oracle 服务自动启动设置 概述 在 Windows 操作系统中,设置 Oracle 服务自动启动可以确保数据库服务在需要时自动开启,而不需要每次手动启动实例。这篇文章将详细介绍如何设置 Oracle 服务自动启动,...
对于需要开机自启动的虚拟机,首先要在Windows 10系统中设置VMware 17自动启动服务。这涉及到修改服务设置,将"VMware 自动启动服务"(VmwareAutostartService)的启动类型设置为"自动",并启动该服务。用户可以通过...
开机自启动的程序通常会在用户登录时运行,它们的路径存储在`HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run`或`HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run`这两个...
根据提供的信息,我们可以了解到这是一段关于易语言实现开机自动启动功能的代码示例。下面将详细介绍这段代码的功能、原理以及实现方式。 ### 易语言开机自动启动源码解析 #### 1. 开机自动启动的基本原理 在...
在Windows操作系统中,Java程序的自启动和异常处理是一个关键的系统管理任务,尤其是在服务器环境中。这个名为"windows服务自启动.zip"的压缩包提供了一套解决方案,它包含四个核心文件:install.bat、start.bat、...
当设备启动时,我们有时希望某些Service能够自动启动,以便立即开始执行预定的任务,这就是所谓的“开机自启动Service”。本文将深入探讨如何在Android中实现开机自启动Service。 首先,我们要明白Android系统的...
"自动启动雷电模拟器,然后启动指定app"这个主题聚焦于使用雷电模拟器进行自动化操作,这对于Android应用的测试、调试和演示非常有用。雷电模拟器是一款流行的Android模拟器,它允许用户在Windows操作系统上运行...
在Android系统中,"开机自启动"是指当设备完成启动过程后,某些应用程序或服务能够自动启动并开始运行。这通常涉及到系统级别的设置和权限管理,对于开发者来说,理解和掌握这个功能是创建后台服务和持续运行应用的...
在安卓系统中,应用程序的自动启动功能通常用于服务、后台任务或者定时任务,使得应用在设备启动后能够立即运行,执行特定的任务。本教程将详细讲解如何实现安卓开机自动启动应用程序,以及涉及到的相关知识点。 ...
在IT行业中,管理和控制计算机的启动行为是一项基本但至关重要的任务。这通常涉及到修改系统注册表,以便在操作系统启动时自动执行特定程序。本话题主要关注如何使用Visual Studio 2008(VS2008)在Windows 7环境下...
本文将详细讲解如何使用C#编程语言创建一个开机自启动程序,并介绍如何监视指定程序以及线程的使用。 首先,我们要了解Windows开机启动的基本原理。开机自启动程序通常会在注册表的`HKEY_CURRENT_USER\Software\...
在Android系统中,"开机自启动"是指当设备完成启动过程后,某些应用程序或服务能够自动启动,无需用户手动操作。这通常涉及到Android系统的广播接收器(BroadcastReceiver)和权限设置。下面将详细讲解Android开机自...
在Android系统中,应用通常不会在开机时自动启动,除非开发者特别设置了这个功能。这个功能在某些场景下非常有用,比如天气更新应用、消息推送服务等。本篇将详细讲解如何实现Android应用的开机自动启动。 一、...
标题中的"Delphi EX10 Android 实现开机自启动"是指使用Embarcadero Delphi XE10(也称为 RAD Studio XE10)开发的Android应用程序,目的是使其能够在设备启动时自动运行。这个过程涉及到Android系统的权限管理和...
2. **开发者选项中的自启动管理**:在开发者选项里,寻找“应用程序”或“应用启动”设置,这里通常有对应用自启动的控制。启用需要开机启动的应用。 3. **第三方应用设置**:有些应用自身提供了开机启动设置,你...