shell中系统任务设置

1、系统启动流程

启动计算机的硬件(BIOS)

读取时间

选择对应的启动模式(USB HDD EFI)

如果是Linux系统,回去找/boot目录.引导这个系统启动

计算机系统开始启动,读取初始化配置文件

vim /etc/inittab

启动时控制着计算机的运行级别 runlevel

1 Single user mode(单用户模式)
0 halt(关机)
2 Multiuser, without NFS(多用户模式,但是无网络状态) FS-->FileSystem
3 Full multiuser mode(多用户完整版模式)
4 unused (保留模式)
5 X11(用户界面模式)
6 reboot(重启模式)

id:3:initdefault: 默认runlevel为3

以runlevel=3开始启动对应的服务和组件

开始默认引导公共的组件或者服务

vim /etc/rc.d/rc.sysinit

开始加载对应runlevel的服务

vi /etc/rc3.d/

K:关机时需要关闭的服务

S:启动时需要开启的服务

数字代表了开启或者关闭的顺序

所有的文件都是软链接,链接的地址为 /etc/init.d

当启动完毕,所有的服务也被加载完成

2、系统服务

我们可以使用chkconfig命令查看当前虚拟机的服务

通过查看可以得知不同的级别对应到每一个服务确定本次开机自动启动

开机结束后,我们需要使用service(Centos6)Systemctl(Centos7)命令控制服务的开启或者关闭

3、 开机自启动服务

rc.local

首先创建脚本存放的文件夹

mkdir -p /usr/local/scripts

在文件夹中创建脚本文件

vim hello.sh

给予执行权限

去/etc/rc.d/rc.local文件中添加脚本的绝对路径

给予rc.local执行权限

创建一个文件夹

mkdir /usr/local/soft/ceshitest

重启虚拟机

reboot

chkconfig

创建开机自启动脚本文件

vim schoolntpdate.sh

#!/bin/bash 
#chkconfig: 2345 88 99
#description:auto_run

# 开机创建文件夹
mkdir /usr/local/soft/ceshitest2

给其设置执行权限

chmod u+x schoolntpdate.sh

将脚本拷贝到 /etc/init.d 下

cp schoolntpdate.sh /etc/init.d/

添加到服务

chkconfig --add /etc/init.d/schoolntpdate.sh

重启服务器

reboot

4、定时任务

在linux中最小时间是到分钟的

在系统服务中心,crond负责周期任务

systemctl status crond.service

添加任务,编辑当前用户的任务列表

crontab -e

编辑任务

星 星 星 星 星 command

* * * * * ......

分 时 日 月 周 命令

第1列表示分钟1~59 每分钟用*或者 */2表示

第2列表示小时1~23(0表示0点)

第3列表示日期1~31

第4列表示月份1~12

第5列标识号星期0~6(0表示星期天)

第6列要运行的命令

*:表示任意时间都,实际上就是“每”的意思。可以代表00-23小时或者00-12每月或者00-59分

-:表示区间,是一个范围,00 17-19 * * * cmd,就是每天17,18,19点的整点执行命令

,:是分割时段,30 3,19,21 * * * cmd,就是每天凌晨3和晚上19,21点的半点时刻执行命令

/n:表示分割,可以看成除法,*/5 * * * * cmd,每隔五分钟执行一次

30 21 * * * /usr/local/etc/rc.d/lighttpd restart 
上面的例子表示每晚的21:30重启apache。

45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启apache。

10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重启apache。

0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。

0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重启apache。

* */2 * * * /usr/local/etc/rc.d/lighttpd restart
每两小时重启apache

* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11点到早上7点之间,每隔一小时重启apache

0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4号与每周一到周三的11点重启apache

0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一号的4点重启apache

需求:每分钟要干一些事情
*/1 * * * *

--(功能描述:显示年月日时分秒)
date "+%Y%m%d%H%M%S"

重启crontab,使配置生效

systemctl restart crond.service

通过crontab -l

查看当前的定时任务

清除任务

crontab -r

 

最新文章

  1. 洛谷练习P2279 P1346
  2. wiseinstall 制做安装包小记
  3. JSON value
  4. iOS7 中的新加入的下载类NSURLSession(随ios版本更新而更新)
  5. Material Calendar View 学习记录(二)
  6. [译]Stairway to Integration Services Level 6 - SSIS 工作流管理基础
  7. iOS-直播开发(开发从底层做起)
  8. 前端技术API手册(2) -- CSS API 的实现
  9. JAVA之旅(十二)——Thread,run和start的特点,线程运行状态,获取线程对象和名称,多线程实例演示,使用Runnable接口
  10. 关于extern的用法
  11. .NET跨平台开发之Xamarin.Android介绍与生命周期【2】
  12. 剖析servlet injection及源码分析.
  13. HTML5上传图片预览功能
  14. 使用Java代码自定义Ribbon配置
  15. 蓝精灵:寻找神秘村Smurfs: The Lost Village迅雷下载
  16. django之models学习总结
  17. Scapy 网段中ping扫描
  18. 20145209 2016-2017-2 《Java程序设计》第5周学习总结
  19. systemtap 2.8 news
  20. oracle获得日期与向oracle表中插入Date字符串原理解析

热门文章

  1. torch.nn.MSELoss()函数解读
  2. 数字化转型之数字资产知识库(springboot+es+vue+neo4j)
  3. ebook下载 | 灵雀云发布《 企业高管IT战略指南——为何选择容器与Kubernetes》
  4. 关于 GIN 的路由树
  5. python 基础知识-day10(面向对象)
  6. SAP BOM 读取
  7. React中setState方法说明
  8. 论文阅读 Exploring Temporal Information for Dynamic Network Embedding
  9. docker 映射端口穿透内置防火墙
  10. ByDesign各版本区别