Linux程序开机自启动
Linux系统程序开机自启动配置
修改启动配置文件
新建一个sh后缀的脚本文件(例如:stratup.sh),把你所要启动的命令编写进去。然后再编辑“**/etc/rc.local”启动配置文件,把脚本文件所在位置的全路径**输入进去即可。
计划定时启动
通过crontab可以设定程序的执行时间表, 例如让程序在每天的9点,或者每个星期一的9点执行一次。
crontab -l 列出时间表;
crontab -e编辑时间表;
crontab -d删除时间表;
“-l”查看时间表;
“-e”是编辑(其实就是用vim编辑一个特定文件);
“-d”删除,把该用户所有的时间表都删除,一般都是用“-e”编辑把不要了的时间表逐行删除;
crontab文件的格式是:M H D m d CMD。
一个6个字段,其中最后一个CMD就是所要执行的程序,如haha.sh。
M:分钟(0-59)
H:小时(0-23)
D:日期(1-31)
m:月份(1-12)
d:一个星期中的某天(0-6,0代表周日)
这5个时间字段用空格隔开,其值可以是一个数字,也可以用逗号隔开的多个数字(或其他) ,如果不需设置,则默认为“*”。
例如,每天的9点0分执行startup.sh,就是“0 9 * * * /home/programs/./startup.sh”。
注册系统服务
操作系统自带的服务,如ssh,ftp等等,开机都是自动启动的,我们也可以通过这种方式让自己开发的程序伪装成系统服务。
比如我想把某个程序添加为系统服务,可以执行以下命令:
chkconfig –add 程序名称(首先,添加为系统服务,注意add前面是两个横杠)
chkconfig -leve 启动级别 服务名 on
(说明,3级别代表在命令行模式启动,5级别代表在图形界面启动,on表示开启)
chkconfig -leve 启动级别 服务名 off(说明,off表示关闭自启动)
例如:chkconfig -level 3 mysql on (说明:让mysql服务在命令行模式,随系统启动)
也可以使用 chkconfig –del 服务名称 来删除系统服务
如果要查看哪些服务被添加为系统服务可以使用命令 :
ntsysv 或者chkconfig –list
如果要查看哪些程序被添加为自启动,可以使用命令 :
cat /etc/rc.local(查看这个文件中添加了哪些程序路径)