linux里的计划任务
一、定制计划任务
1、atd服务(一次性)
1、atd服务对应的命令------》at
使用at命令时先要进行安装
[root@localhost lianxi]# yum install at -y
然后必须要起动atd服务,不然不会定时去执行任务的
[root@localhost lianxi]# service atd start
Redirecting to /bin/systemctl start atd.service
案例如下:
[root@localhost lianxi]# at 11:00 #创建一个一次性执行的计划任务
at> bash /root/wang.sh
at> <EOT> # ctrl+d退出
job 5 at Wed Dec 22 11:00:00 2021
[root@localhost lianxi]# at -l
3 Wed Dec 22 10:20:00 2021 a root
5 Wed Dec 22 11:00:00 2021 a root
[root@localhost lianxi]#[root@localhost lianxi]# atrm 3 #删除计划任务编号为3的任务
[root@localhost lianxi]# at -l #查看计划任务列表
5 Wed Dec 22 11:00:00 2021 a root
[root@localhost lianxi]#
2、存放一次性计划任务的目录:/var/spool/at
batch命令也等同于at命令,只不过是系统负载比较低的时候运行计划任务
uptime命令:
[root@localhost lianxi]# uptime #查看系统开机多久了,以及系统的平均负载 10:28:33 up 4 days, 16:13, 2 users, load average: 0.00, 0.01, 0.05
2、crond服务(周期性)服务是默认安装的,而且开机自动启动
1、crond服务对应的命令------》crontab 是创管理周期性计划任务的命令
-e 表示创建一个计划任务 (edit)
-l 查看计划任务列表
2、存放周期性计划任务的目录:/var/spool/cron
cron服务的配置文件:/etc/crontab
cron服务的日志文件:/var/log/cron (可以知道一个计划任务是否执行(CMD))
格式如图所示:
例子:《示例1 (root用 户)》
每天早上7:50自动开启sshd服务,22点50时关闭
每隔5天的12点整清空一次FTP服务器公共目录Ivar/ftp/pub
每周六的7:30时,重新启动httpd服务
每周一、三、五的17:30时,打包备份/etc/httpd目录
[root@localhost lianxi]# crontab -e
crontab: installing new crontab
[root@localhost lianxi]# crontab -l
30 3 * * * bash /root/sc.sh
50 7 * * * service sshd start
50 22 * * * service sshd stop
0 12 */5 * * rm -rf /var/ftp/pub/*
30 7 * * 6 service httpd restart
30 17 * * 1,3,5 tar czf /backup/httpd.tar.gz /etc/httpd
30 4 * * * /bin/bash /lianxi/backup/backup_log.sh
[root@localhost lianxi]#
3、atd服务、crond服务 后面d的含义
d------》daemon(守护进程):一直在内存里运行的进程,直到我们人为停止它的运行,不然它是一直在内存中运行的,因为一直在内存里运行,所以我们的用户可以随时去访问,所以它一直守护着你,等待着你的到来。
二、同步时间
在centos7里:使用ntpdate命令
#第一步先安装
[root@localhost lianxi]# yum install ntpdate -y#第二步
[root@localhost lianxi]# date -s "2021-12-22 15:6:12" #修改时间
2021年 12月 22日 星期三 15:06:12 CST#第三步
[root@localhost lianxi]# ntpdate time.windows.com
22 Dec 11:59:38 ntpdate[13102]: step time server 20.189.79.72 offset -11225.674351 sec
[root@localhost lianxi]# date
2021年 12月 22日 星期三 11:59:42 CST
在centos8或7里:使用chrony
[root@localhost lianxi]# yum install chrony -y #安装[root@localhost lianxi]# service chronyd restart #重启服务
Redirecting to /bin/systemctl restart chronyd.service[root@localhost lianxi]# date -s "2021-12-22 15:6:12"
2021年 12月 22日 星期三 15:06:12 CST[root@localhost lianxi]# date
2021年 12月 22日 星期三 12:02:38 CST
三、练习
1.编写一个脚本/backup/backup_log.sh实现备份/var/log目录下的所有文件到/backup目录下,要求文件名是包含当天日期,精确到秒,文件名例如:2016-6-6-2_30_20-log.tar.gz。
同时要求删除/backup目录下七天前的备份文件,只保留最近7天的
2.以root用户的身份去执行,计划任务的要求是每天的4:30执行上面的这个脚本/backup/backup_log.sh
[root@lamp-test backup]# pwd
/backup
[root@lamp-test backup]# cat backup_log.sh
#!/bin/bash
mkdir -p /backup
tar -czf /backup/$(date +%F_%H_%M_%S)-log.tar.gz /var/log/*
find /backup -mtime +7 -type f -name "*.tar.gz" -exec rm -rf {} \;
[root@lamp-test backup]# crontab -l
30 4 * * * bash /backup/backup_log.sh
四、安全问题
1、如何找出有非法的计划任务?
到哪些地方去看?
crond进程会到哪些地方去找需要执行的脚本?
1./var/spool/cron --》用户自定义的计划任务存放的地方
2.操作系统本身的计划任务--(顺风车)
[root@localhost lianxi2]# ls /etc/cron.*
/etc/cron.deny/etc/cron.d:
0hourly/etc/cron.daily: 每台需要执行的脚本
logrotate man-db.cron/etc/cron.hourly: 每小时需要执行的脚本
0anacron/etc/cron.monthly: 每个月需要执行的脚本/etc/cron.weekly: 每周执行的脚本[root@localhost lianxi2]# cat /etc/cron.deny 禁用crond服务的用户可以写到里面
2、搭顺风车案例
搭顺风车例子:
[root@lamp-test cron.hourly]# pwd
/etc/cron.hourly
[root@lamp-test cron.hourly]# ls
0anacron poweroff.sh
[root@lamp-test cron.hourly]# chmod +x poweroff.sh
[root@lamp-test cron.hourly]# cat poweroff.sh
init 0[root@lamp-test log]# cd /etc/cron.hourly/
[root@lamp-test cron.hourly]# ls
0anacron poweroff.sh
[root@lamp-test cron.hourly]# rm -rf poweroff.sh
linux里的计划任务相关推荐
- linux里查看所有用户和用户组
http://www.cnblogs.com/rooney/archive/2009/05/19/1459801.html 1.linux里查看所有用户 linux里,并没有像windows的net ...
- linux里gpl_GPL实施,ONOS与Linux Foundation合作以及更多新闻
linux里gpl 在本周的开放源代码新闻摘要中,我们将介绍面向社区的GPL实施,与Linux Foundation合作的ONOS项目,使用Texas Instruments计算器制作音乐的开放源代码 ...
- linux下的计划任务
Linux 计划任务 --cron介绍 cron是linux下的计划任务工具,类似于windows的计划任务. 基本原理 守护进程cron加载crontab,并按时执行其中的命令. c ...
- Linux进程与计划任务
Linux进程与计划任务 linux进程及作业管理 进程 内核的功用:进程管理.文件系统.网络功能.内存管理.驱动程序.安全功能等特权操作 模式切换(理想状态):70%CPU时间用户模式+30%CPU ...
- Linux中使用计划任务自动执行
Linux中的计划任务 知识要点 计划任务的意义 计划任务分类 用户计划任务crontab 系统计划任务 计划任务使用注意事项 anacron服务介绍 计划任务的意义 1.计划任务 创建和管理在指 ...
- Linux里新建文件/目录的默认权限
Linux里新建文件/目录的默认权限 新建文件默认权限为666,新建目录默认权限为777. 但是要"减去" umask的值,umask的值可以使用umask命令看到,一般情况下,r ...
- windows兼容Linux php,支持windows与linux的php计划任务的实现方法
本文实例讲述了支持windows与linux的php计划任务的实现方法.包括了在winows下利用winodows计划任务来操作,还有在linux中利用linux的方法来实现.分享给大家供大家参考.具 ...
- 在Linux里设置环境变量的方法(export PATH)
在Linux里设置环境变量的方法(export PATH) 在Linux里设置环境变量的方法(export PATH) 一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要设置环境变量 ...
- 我的Linux成长路---001 Linux学习初期计划
Linux学习初期计划 1.Linux基础 Linux历史.Linux版本.Linux安装.shell命令 2.Linux系统管理 用户管理.文件权限管理.磁盘管理.进程管理.自动化任务.安装程序.. ...
最新文章
- ORBBuf : 一种鲁棒的协同视觉SLAM缓冲方法
- Linux命令中21个不太好搜索其含义的特殊符号你都知道吗?
- MySQL-锁表处理
- Xcode 6 Bug:Interface Builder文件中的未知类
- springboot的jsp应该放在哪_web项目jsp放在哪里 Spring Boot 静态资源处理(4)
- Poj(2240),Floyd求汇率是不是赚钱
- Maven虐我千百遍,我待Maven如初恋
- jzoj3056-数字【数位dp,统计,容斥】
- sample等价是什么错误_一个复制粘贴引发的有趣小错误及思考
- (一)golang工作区
- 苹果这个酷炫的项目要流产了?市场未爆发或成主因
- seL4操作系统基础01:seL4 whitepaper概览
- LSI阵列卡在线扩容
- 【NLP】学不会打我 半小时学会基本操作 13 孪生网络
- 来聊聊我的阿里云P7面试经历
- Algorithms, Part I by Kevin Wayne, Robert Sedgewick
- 374C. Inna and Dima
- poj-1979改-红与黑
- 神威太湖之光超级计算机搭载了40960,神威·太湖之光超级计算机上实现了千万核超大规模并行计算...
- 2020年计算机二级报名时间上半年,2020年上半年计算机二级报名时间是什么时候...