Linux下开机启动脚本程序

Linux下开机启动脚本程序,第1张

本周我们学习了如何使用Linux编辑脚本程序,当我们编写好脚本的时候,我们需要返回终端界面,使用各种编译器运行程序,但是有时候我们需要在系统开机的时候就自动运行这些程序,下面我们就来看一下在Linux下将脚本设定成开机自动运行的方法。

Linux在启动时,会自动执行/etc/rc.d目录下的初始化程序,因此我们可以把启动任务放到该目录下。假设我们需要运行的脚本文件是test1目录下的test.py。

在系统中找到/etc/rc.local文件,系统会根据该文件来启动所指定的脚本或命令。

我们需要用超级用户登录,并在上述文件最后添加需要运行的脚本文件。

随后cd /home/test1返回test1目录以对其进行更改。 

su test1 -c "python /home/test1/test.py" --把要执行的命令作为一个参数传递级su

下面我们就可以实现这个脚本的开机自动运行。

设置test.sh为开机要启动的脚本

[root@oldboy scripts]# vim /server/scripts/test.sh

[root@oldboy scripts]# cat /server/scripts/ test.sh

#!/bin/bash

/bin/echo $(/bin/date +%F_%T) >>/tmp/ test.log

方法一:修改/etc/rc.local

[root@oldboy ~]# ll /etc/rc.local

lrwxrwxrwx. 1 root root 13 Mar 30 10:50 /etc/rc.local ->rc.d/rc.local

修改/etc/rc.local文件

[root@oldboy scripts]# tail -n 1 /etc/rc.local

/bin/bash /server/scripts/test.sh >/dev/null 2>/dev/null

重启系统,查看结果

[root@oldboy ~]# cat /tmp/test.log

2018-03-30_12:00:10

方法二:chkconfig管理

删除掉方法一的配置

[root@oldboy ~]# vim /etc/init.d/test

#!/bin/bash

# chkconfig: 3 88 88

/bin/bash /server/scripts/test.sh >/dev/null 2>/dev/null

[root@oldboy ~]# chmod +x /etc/init.d/test

添加到chkconfig,开机自启动

[root@oldboy ~]# chkconfig --add test

[root@oldboy ~]# chkconfig --list test

test 0:off 1:off 2:off 3:on 4:off 5:off 6:off

重启系统,查看结果

[root@oldboy ~]# cat /tmp/test.log

2018-03-30_12:00:10

2018-03-30_12:33:20

*** 作成功

关闭开机启动

[root@oldboy ~]# chkconfig test off

[root@oldboy ~]# chkconfig --list test

test 0:off 1:off 2:off 3:off 4:off 5:off 6:off

从chkconfig管理中删除test

[root@oldboy ~]# chkconfig --list test

test 0:off 1:off 2:off 3:off 4:off 5:off 6:off

[root@oldboy ~]# chkconfig --del test

[root@oldboy ~]# chkconfig --list test

service test supports chkconfig, but is not referenced in any runlevel (run

'chkconfig --add test')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11127390.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存