一、 编写脚本
编写一个脚本文件,使脚本可以执行备份命令。 
例如,将文件目录 /home/backups/balalala 备份到/home目录下,并压缩。
1. 创建脚本
命令格式: touch 路径/文件名.sh 
例如: 
输入命令:touch /home/backup.sh

2. 写入命令
首先进入脚本:vi命令 
vi /home/backup.sh 
在脚本内写入:
 #! /bin/sh
 mkdir /home/plantask/temp
 #创建一个临时文件 保存备份的路径
 cp -r /www/xilan /home/plantask/temp
 #数据存在plantask目录下,备份到temp目录下,所以先将数据拷过来
 tar -zcPvf /www/backups/xilan$(date +%Y%m%d%H%M%S).tar.gz /home/plantask/temp  -->时间精确到毫秒
 #将数据所在文件夹plantask打包
 rm -rf /home/plantask/temp
  
 find ./ -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;
 #删除改文件夹下超过30天的文件

3. 执行脚本文件
直接手动执行脚本文件。 
命令格式:sh 路径/文件名.sh 
例如:sh /home/backup.sh

有时候会出现find:未知的断言"-name *.tar.gz -exec rm",

把最后一行重新写下或者再拷贝一个改下就好了,至于什么原因,暂时没找出来,对比了报错之前的内容,也没看出来有什么区别,希望大神看到了给解答下。

find /home/bkebpaper/ -mtime +1 -name "*.tar.gz" -exec rm -rf {} \;

二、 设置定时执行本脚本。
例如:设置脚本每7天执行一次。
1. 安装crond
如果没有安装crond服务就先装上服务。 
检查服务状态:service crond status
2. 修改crontab内容
输入命令:crontab –e 
进入后继续输入命令:0 0 /7 *  sh /home/backup.sh   ---->一定要加上sh命令

设置为每7天执行一次脚本文件 
然后,保存退出:wq
 0 */1 * * * sh /home/plantask/backup.sh  #每小时执行一次
 */1 * * * * sh /home/plantask/backup.sh #每分钟执行一次 用于调试

sh脚本前面五个字段分别表示分钟(0-59)、小时(0-23)、日(1-31)、月(0-12)、星期几(0-6)后面的为脚本所在目录   --->一定要加上sh命令

3. 重新启动crond服务
输入命令:service crond restart
至此配置完成!

**************************************************************************************************

安装crontab:
[root@CentOS ~]# yum install vixie-cron
[root@CentOS ~]# yum install crontabs
说明:
vixie-cron软件包是cron的主程序;
crontabs软件包是用来安装、卸装、或列举用来驱动 cron 守护进程的表格的程序。
//+++++++++++++++++++++++++++++++++++
cron 是linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务:
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置
查看crontab服务状态:service crond status
手动启动crontab服务:service crond start
查看crontab服务是否已设置为开机启动,执行命令:ntsysv
加入开机自动启动:
chkconfig --level 35 crond on

*************************************************************************

1,crontab命令

功能说明:设置计时器。

语  法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr]

补充说明:cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序。只要用户会编辑计时器的配置文件,就可以使用计时器的功能。其配置文件格式如下:
Minute Hour Day Month DayOFWeek Command

参  数: 
 -e  编辑该用户的计时器设置。 
 -l  列出该用户的计时器设置。 
 -r  删除该用户的计时器设置。 
 -u<用户名称>  指定要设定计时器的用户名称。

2,crontab 格式

基本格式 :
* *  *  *  *  command
分 时 日 月 周  命令

第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

crontab文件的一些例子:

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。

* */1 * * * /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

*/30 * * * * /usr/sbin/ntpdate 210.72.145.44
每半小时同步一下时间

crontab命令主要有3个参数:

  -e :编辑用户的crontab。

  -l :列出用户的crontab的内容。

  -r :删除用户的crontab的内容。

  执行crontab -e,将自动打开编辑器,你可以编辑自己的crontab文件,语法和 /etc/crontab 文件一样,不同的只是,不必再指出执行的用户,编辑后保存即可。

  crontab -l用来查看自己的crontab文件内能,crontab -r删除自己的crontab。

CentOS安装crontab 定时备份文件夹的更多相关文章

  1. CentOS安装crontab及使用方法(转)

    CentOS安装crontab及使用方法(转)    安装crontab:[root@CentOS ~]# yum install vixie-cron[root@CentOS ~]# yum ins ...

  2. CentOS安装crontab及使用方法

    crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于 “crontab”文件中,以供之后读取和执行.通常,crontab储 ...

  3. 【转载】CentOS中crontab定时计划任务的使用

    转载自:http://blog.csdn.net/testcs_dn/article/details/48780971 概述 利用“任务计划”,可以将任何脚本.程序或文档安排在某个最方便的时间运行.通 ...

  4. centos 安装 crontab 和 简单的使用教程

    crontab是一个非常好用的定时执行任务的程序.以下是操作方式 1. 安装 cron 的 主程序 : yum -y install vixie-cron 2. 安装 cron 守护进程的表格的程序  ...

  5. CentOS安装crontab及使用方法(汇总多人博客并实践确认无误)

    安装centOS: yum -y install vixie-cron --该软件包是cron的主程序 yum -y install crontabs--该软件包用来安装.卸载或者列举需要cron来守 ...

  6. centos安装crontab:

    # yum install vixie-cron # yum install crontabs /sbin/service crond start //启动服务/sbin/service crond ...

  7. centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节课

    centos  lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress  安装phpmyadmin  定时备份mysql两种方法  第二十五节 ...

  8. centos下yum安装crontab+mysql自动备份

    参考博文: centos下yum安装crontab yum install vixie-cron crontabs      //安装 chkconfig crond on               ...

  9. 在CentOS下安装crontab服务

    1. 确认crontab是否安装: 执行 crontab 命令如果报 command not found,就表明没有安装 2. 安装 crontab 执行 yum install -y vixie-c ...

随机推荐

  1. angular5 ng-bootstrap和ngx-bootstrap区别

    https://angular.cn/resources ngx-bootstrap 安装: npm install ngx-bootstrap --save 再引入css <link href ...

  2. Ubuntu 的 desktop 和 server 还是有区别。

    除了安装的包,比如 GUI, LAMP 上有差别之外,所用的内核也稍有不一样. 不过desktop可以通过安装 sudo apt-get install linux-image-server 之后,编 ...

  3. 68. Text Justification *HARD*

    Given an array of words and a length L, format the text such that each line has exactly L characters ...

  4. iOS UI-IOS开发中Xcode的一些使用技巧

    一.快捷键的使用 经常用到的快捷键如下: 新建 shift + cmd + n     新建项目 cmd + n             新建文件 视图 option + cmd + 回车 打开助理编 ...

  5. 使用iview-project 打包build报错,ERROR in xxxxx.cheunk.js from UglifyJs

    一.iview-project  为iview官方推荐工程,一个基于iview的vue脚手架 github网址:https://github.com/iview/iview-project 废话不多说 ...

  6. Vysor_v1.6.9

    ---恢复内容开始--- 装系统 D:\home sys 触摸板驱动 1 D:\envs\common\jdk jdk安装 2 DriveTheLife 3 img 4 PCMaster 5 Sogo ...

  7. css中 font常用的样式属性

    今天我总结一下文本常用的字体样式 1.font常用样式 1)字体类型 语法:font-family: +字体类型:    如: font-family:宋体; 2)字体大小 语法:font-size: ...

  8. PHP:第一章——PHP中的数组运算符和类运算符

    数组运算符: $a+$b;//$a和$b的联合 $a == $b;//比较$a与$b的值相同为true; $a === $b;//如果$a与$b的值与顺讯完全相同为true; $a !=$b;//如果 ...

  9. linux command wc

    Linux command wc [Purpose]        Learning how to statistics line numbers in file   [Eevironment]    ...

  10. Automatic Login Using sshpass

    #! /bin/bash user=root password=12345678 remote_ip=192.168.3.140 sshpass -p $password ssh $user@$rem ...