写一个定时数据备份的shell脚本

1.查看定时器的状态:service crond status 或 systemctl status crond.service
在这里插入图片描述
表示已启动,如果报crond not found则安装定时器。如果没启动,使用:service crond start 启动。

yum install  vixie-cron
yum install  crontabs

2.用以下的方法启动、关闭这个cron服务:
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置
3.查看crontab服务是否已设置为开机启动,执行命令:ntsysv
加入开机自动启动:

chkconfig –level 35 crond on

4.建shell脚本。

  vim  mongodump.sh
mongodump -h localhost:27022 -d lison -o /usr/local/apache/mongoDB/
echo "mongodump success"

配置mongo的环境变量:

vim /etc/profile
#mongo Env
export MONGO_HOME=/usr/local/mongoDB/mongodb-linux-x86_64-rhel70-3.4.10
export PATH=$PATH:$MONGO_HOME/bin
source /etc/profile

报错:

mongodump: 未找到命令

解决:

ln -s /usr/local/mongoDB/mongodb-linux-x86_64-rhel70-3.4.10/bin/mongodump /usr/bin

5.设置需要执行的脚本
新增调度任务可用两种方法:
1)、在命令行输入: crontab -e 然后添加相应的任务,wq存盘退出。
2)、直接编辑/etc/crontab 文件,即vi /etc/crontab,添加相应的任务。
crontab -e配置是针对某个用户的,而编辑/etc/crontab是针对系统的任务
查看调度任务
crontab -l //列出当前的所有调度任务
crontab -l -u jp //列出用户jp的所有调度任务
删除任务调度工作
crontab -r //删除所有任务调度工作
直接编辑 vim /etc/crontab ,默认的文件形式如下:
在这里插入图片描述
前四行是有关设置cron任务运行的环境变量。

SHELL变量的值指定系统使用的SHELL环境(该样例为bash shell),

PATH变量定义了执行命令的路径。Cron的输出以电子邮件的形式发给MAILTO变量定义的用户名。

如果MAILTO变量定义为空字符串(MAILTO=""),电子邮件不会被发送。执行命令或脚本时HOME变量可用来设置基目录。

文件/etc/crontab中每行任务的描述格式如下:

minute hour day month dayofweek command

minute - 从0到59的整数

hour - 从0到23的整数

day - 从1到31的整数 (必须是指定月份的有效日期)

month - 从1到12的整数 (或如Jan或Feb简写的月份)

dayofweek - 从0到7的整数,0或7用来描述周日 (或用Sun或Mon简写来表示)

command - 需要执行的命令(可用as ls /proc >> /tmp/proc或 执行自定义脚本的命令)

root表示以root用户身份来运行

run-parts表示后面跟着的是一个文件夹,要执行的是该文件夹下的所有脚本

对于以上各语句,星号()表示所有可用的值。例如在指代month时表示每月执行(需要符合其他限制条件)该命令。

整数间的连字号(-)表示整数列,例如1-4意思是整数1,2,3,4

指定数值由逗号分开。如:3,4,6,8表示这四个指定整数。

符号“/”指定步进设置。“/”表示步进值。如0-59/2定义每两分钟执行一次。步进值也可用星号表示。如*/3用来运行每三个月份运行指定任务。
以“#”开头的为注释行,不会被执行。
6.解决:You have new mail in /var/spool/mail/root
方案一:修改系统配置文件/etc/profile,告诉系统不要去检查邮箱:

echo "unset MAILCHECK" >> /etc/profile
source /etc/profile

方案二:指定发送邮箱。
先查看/usr/share/下是不是有logwatch,没有则下载:

yum install -y logwatch
vim  /usr/share/logwatch/default.conf/logwatch.conf

在这里插入图片描述
故障排除
如果没有收到 Logwatch日志报告邮件 , 请检察本地 sendmail 服务是否正常

猜你喜欢

转载自blog.csdn.net/shidebin/article/details/83183384