开机自启动脚本

网上常见的脚本开机自启方法是:

假设要自启的脚本位于 /home/user/test.sh

  • 给脚本可执行的权限
sudo chmod +x /home/user/test.sh
  • 将脚本文件放到 /etc/init.d/ 目录下
sudo cp /home/user/test.sh /etc/init.d
  • 链接到/etc/rc.d/
sudo ln -s /etc/init.d/start_my_app /etc/rc.d/

这样在新的diban系统中可能不能生效,要LSB 兼容之类 ,脚本还要提供start, stop, restart, force-reload,等命令,具体参考

https://wiki.debian.org/LSBInitScripts


因此这里推荐使用另外一种超级简单的方法:

bash中输入(推荐以管理员的状态)

crontab -e

第一次使用这个的话,会提示选择一种编辑器,根据个人喜好选择吧。然后就会进入对应编辑器的编辑界面,另起一行输入

@reboot /home/user/test.sh

reboot 后面即脚本文件位置,然后保存即可。Ok,脚本现在已经会在开机时自动运行了。

定时任务

同样的bash里输入 crontab -e

然后编辑界面加上具体的命令语句。基本语法为

# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed

比如:

每天的凌晨4点半运行test.sh脚本

30 04 * * * /home/user/test.sh

每周的周一17:30执行test.sh脚本

30 17 * * 1 /home/user/test.sh

或间隔15分钟执行一次test.sh脚本

*/15 * * * * /home/user/test.sh

这个指在9:05 至17:05的范围内,每个钟头的过5分会运行一次,比如10:05、11:05会运行

05 09-17 * * * /home/user/test.sh

关于

bash中输入

service --status-all

会发现有个cron,。就是cron 这个服务实现了前文中那些定时任务。而cron也是在/etc/init.d/中注册从而自启的,启动后它会扫描/var/spool/cron 、/etc/cron.d目录和 /etc/anacrontab文件,扫描到的文件中定义了各种定时任务。

另外关于crontab命令,: 后面的tab其实就相当table的缩写,因为系统中的每个用户(包括管理员)都会有一个对应的cron 文件,位于 /var/spool/cron/crontabs/ 目录下,因此table可以简单理解为管理这些用户cron文件的表。需要注意的是不要直接修改用户对应的cron文件,而应该使用 crontab -e 命令修改,因为这样修改保存后,它会立即生效。

Linux定时任务与开机自启动脚本(cron与crontab)的更多相关文章

  1. linux添加开机自启动脚本示例详解

    linux下(以RedHat为范本)添加开机自启动脚本有两种方法,先来简单的; 一.在/etc/rc.local中添加如果不想将脚本粘来粘去,或创建链接什么的,则:step1. 先修改好脚本,使其所有 ...

  2. linux 开机自启动脚本

    在/etc/rc.local文件中添加自启动命令(其中一种方法) 1.案例,就用博主本人之前发的博文 “nginx + flask + uwsgi + centos + python3 搭建web项目 ...

  3. linux实现开机自启动脚本

    Linux下(以RedHat为范本)添加开机自启动脚本有两种方法,先来简单的; 一.在/etc/rc.local中添加如果不想将脚本粘来粘去,或创建链接什么的,则:step1. 先修改好脚本,使其所有 ...

  4. 红帽linux系统开机自启动脚本。

    其实很多东西在最后完成以后会觉得也就那样,有意思的是探究的过程. 前段时间老板要求把一个程序做成linux系统开机自启动脚本的模式. 首先你需要写一个脚本. 我这边建立了一个.sh的脚本,就是用脚本启 ...

  5. Linux开机自启动脚本的总结

    一.在/etc/rc.local中添加 如果不想将脚本粘来粘去,或创建链接什么的, 则: step1. 先修改好脚本,使其所有模块都能在任意目录启动时正常执行; step2. 再在/etc/rc.lo ...

  6. Centos开机自启动脚本的制作

    原文地址:http://www.2cto.com/os/201306/220559.html 我的一个Centos开机自启动脚本的制作   一.切换到/etc/init.d/   二.制作sh脚本 v ...

  7. postgresql数据库linux下设置开机自启动

    设置PostgreSQL开机自启动PostgreSQL的开机自启动脚本位于PostgreSQL源码目录的contrib/start-scripts路径下cd /opt/soft_bak/postgre ...

  8. 转载:ubuntu 下添加简单的开机自启动脚本

    转自:https://www.cnblogs.com/downey-blog/p/10473939.html linux下添加简单的开机自启动脚本 在linux的使用过程中,我们经常会碰到需要将某个自 ...

  9. Linux设置程序开机自启动,系统命令chkconfig及linux /etc/rc.d/目录的详解

     整理了linux下程序开启几种方式,转载相关博客做统一记录 <linux程序设置开机自启动>转载自:https://www.cnblogs.com/flcz/p/7691532.html ...

随机推荐

  1. Extjs Hello extjs

    <html > <head runat="server"> <title></title> <link rel="s ...

  2. pycharm设置连接

    https://blog.csdn.net/u013088062/article/details/50100121

  3. vs更改项目文件夹名称

    改完之后会提示找不到.csproj,用文档工具打开.sln文件,把里面找.csproj的路径修改一下就好了

  4. Linux里的用户管理

    在linux中系统中,它并不认识帐号名称.它认识的是我们的帐号ID,帐号ID保存在/etc/passwd文件中.我们在登录linux主机时,在输入完帐号和密码时,linux会先查找/etc/passw ...

  5. Tensorflow的认识

    1.基本概念(Tensorflow) 使用图(graphs)来表示计算任务 n 在被称之为会话(Session)的上下文(context)中执行图 n 使用tensor表示数据 n 通过变量(Vari ...

  6. 第9项:尽量使用try-with-resources而不是try-finally(Prefer try-with-resources to try-finally)

      Java库包含许多必须通过调用close方法手动关闭的资源. 示例包括InputStream,OutputStream和java.sql.Connection. 关闭资源经常被客户忽视,可预见的可 ...

  7. Python元类__prepare__方法深入理解

    学习元类的时候,对__prepare__不是很理解,书上讲解的也不是很详细,最后通过查看stackoverflow的一些帖子对该方法有了一些理解,记录如下: 先看代码: class member_ta ...

  8. 品味ZooKeeper之纵古观今_1

    品味ZooKeeper之纵古观今 本章思维导图 这一系列主要是从整体到细节来品味Zookeeper,先从宏观来展开,介绍zookeeper诞生的原因,接着介绍整体设计框架,接着是逐个细节击破. 本章是 ...

  9. Centos7.4 更换国内yum源

    1.进入yum源配置文件夹.(配置之前先看看有没有安装wget命令呢,没的话可以先用当前的yum源安装一下再说.yum -y install wget) 2.转到配置文件目录  cd /etc/yum ...

  10. Servlet记录

    [Servlet]java语言编写动态资源的开发技术,普通的java类 [转发与重定向的区别] 转发在服务器端完成的:重定向是在客户端完成的 转发的速度快:重定向速度慢 转发的是同一次请求:重定向是两 ...