当前位置: 代码迷 >> 综合 >> 源码包管理 任务计划——at cron
  详细解决方案

源码包管理 任务计划——at cron

热度:57   发布时间:2024-02-07 00:56:08.0

一、文件管理

1、源码包管理

(1)概述

Source  Code  源代码经过GCC、C++编译环境编译才能运行

可以设定个人设置,开关功能

(2)源码包管理

获取源码包——官网下载到真机,然后 rz 命令上传到虚拟机

                  ——在网上找到软件包的下载链接,直接 “ wget  链接 ” 就可以下载了

(3)示例——部署 Tengine 
下载源码包的命令
[root@localhost ~]# wget   http://tengine.taobao.org/download/tengine-2.2.0.tar.gz
准备编译环境如编译器
[root@localhost ~]# yum -y install   gcc   make   zlib-devel  pcre  pcre-devel  openssl-devel
解压
[root@localhost ~]# useradd www
[root@localhost ~]# tar xvf tengine-2.2.0.tar.gz
[root@localhost ~]# cd tengine-2.2.0
配置——注意空格
[root@localhost tengine-2.2.0]#./configure  --user=www  --group=www  --prefix=/usr/local/nginx  
编译
[root@localhost tengine-2.2.0]# make
安装
[root@localhost tengine-2.2.0]# make install
启动测试
可能之前的实验,安装过httpd服务。如果直接启动nginx会有冲突。请确保关闭httpd
# systemctl stop  httpd
[root@localhost tengine-2.2.0]# /usr/local/nginx/sbin/nginx            //  启动
[root@localhost tengine-2.2.0]# systemctl stop firewalld               // 关闭防火墙
使用浏览器访问本机的IP,http://127.0.0.1,如果能看到NGINX的网页,说明部署成功。
 

二、任务计划

1、作用: 计划任务主要是做一些周期性的任务,目前最主要的用途是定期备份数据。

分类:一次性调度执行 at             循环调度执行 cron

2、一次性调度执行 at

(1)如果你是最小化安装的 centos 系统,你需要自己装一下 at 程序,然后如下图所示需要 start 程序

(2)语法格式         at <TIMESPEC>
<TIMESPEC>示例
now +5min                                                             5分钟后
teatime tomorrow (teatime is 16:00)                      下午茶时间
noon +4 days                                                         第四天中午
5pm august 3 2029                                               2020年8月3日下午5点

(3)示例

3、循环调度执行 cron

(1)简介

cron的概念和crontab是不可分割的。
crontab是一个命令,常见于Unix和Linux的操作系统之中,用于设置周期性被执行的指令。
该命令从标准输入设备读取指令,并将其存放于“/etc/crontab”文件中,以供之后读取和执行。

(2)查看进程状态

crond 程序运行是计划任务执行的根本

(3)管理方式
创建计划            "crontab   -e"     Edit jobs for the current user
查询计划            "crontab     -l"    List the jobs for the current user
管理员可以使用 -u username, 去管理其他用户的计划任务
删除计划             "crontab    -r"     Remove all jobs for the current users.

    计划任务存储位置        [root@localhost ~]# ls /var/spool/cron/


(4)语法格式 Job format
# .---------------- 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
# | | | | |
# * * * * * command

说明  分  时  日  月  周    命令或脚本程序                六个部分用空格隔开
示例1
0 * * * * /mysql_back.sh                    每小时的0分执行
*/5 * * * * /mysql_back.sh                 每五分钟执行
0 2 1,4,6 * * /mysql_back.sh            每月的1,4,6日的2点整执行
0 2 5-9 * * /mysql_back.sh               每月5日到9日的两点整执行
* * * * * /mysql_back.sh                    每分钟执行
0 2 * * * /mysql_back.sh                   每天两点整执行
0 2 14 * * /mysql_back.sh                每月14号的2点整执行
0 2 14 2 * /mysql_back.sh               2月14日2点整执行
0 2 * * 5 /mysql_back.sh                 不写月日,仅周生效
每月的周五,两点执行
0 2 2 6 5 /mysql_back.sh               书写月和日,月或日,月日周均生效
6月2日的两点整执行
6月的周五两点整执行
(5)示例——每一分钟执行创建文件的计划任务

1.准备创建脚本文件
# vim /root/1.sh
输入以下内容
/usr/bin/touch   /root/`date +%F-%H-%M-%S`.txt

        授予执行权
#chmod +x   /root/1.sh
2.编写任务计划
#crontab -e
输入以下内容
*  *  *   *   *    /root/1.sh
3.查看创建结果
#ls  -l   /root/