系统定时任务与延时任务
延时任务
延时任务是我们规定在几点或者在多久之后让系统执行的某一任务
设置延时任务的步骤:
at time(时间)
dosomething(具体的任务)
ctrl+d(执行该延时任务)
系统延时命令
at
at -l 查看执行的延时任务
at -c 5 查看任务5的详细信息
at -l 5 查看任务5的基础信息
[root@localhost ~]$ at now+1min ##在1分钟后
at> echo hello ##执行echo hello 的命令
at> <EOT> ##执行ctrl + d
job at Sun Nov 4 01:33:00 2018 生成此任务的任务号
[root@localhost ~]$ at -l 4 查看任务4的基本信息
4 Sun Nov 4 01:33:00 2018 a root[root@localhost ~]$ at -c 5 查看任务5的详细信息${SHELL:-/bin/sh} << 'marcinDELIMITER21832c28'
echo hello
at命令,黑白名单
/etc/at.deny 黑名单(在白名单不存在时黑名单生效)
/etc/at.allow 白名单(与黑名单同时存在时,白名单无效)
编辑这两个文件,就可以实现at命令对特定用户开放
vim /etc/at.deny
在黑名单中添加gq用户
[root@localhost ~]# su - gq
Last login: Sun Nov 4 01:31:58 CST 2018 on pts/0
[gq@localhost ~]$ at
You do not have permission to use at.
可以看到gq用户不能执行at命令
[root@localhost ~]# su - westos
Last login: Sun Nov 4 01:29:23 CST 2018 on pts/0
[westos@westos ~]$ at now+1min
at> echo hello
at> <EOT>
job 5 at Tue Nov 6 14:49:00 2018
[westos@westos ~]$ at -l 5
5 Tue Nov 6 14:49:00 2018 a westos
而westos用户因不在黑名单中依旧可以执行at命令
系统中默认是没有at命令的白名单的,我们先创建这样一个文件
默认全黑,若要允许哪个用户可以使用at命令,则在白名单中写入用户名即可。
可以看到gq用户同时在黑白名单里,但是白名单生效
编辑白名单写入gq用户
系统定时任务(由crond.service服务提供)
发起定时任务
定时任务可以设定在哪一天哪一小时等循环地做某一件事情,我们可以用man 5 crontab来查看其具体用法
[root@localhost ~]# systemctl status crond.service 查看服务的状态信息
● crond.service - Command SchedulerLoaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)Active: active (running) since Sun 2018-11-04 00:32:13 CST; 1h 15min agoMain PID: 1224 (crond)CGroup: /system.slice/crond.service└─1224 /usr/sbin/crond -nNov 04 00:32:13 localhost.localdomain systemd[1]: Star...
Nov 04 00:32:13 localhost.localdomain systemd[1]: Star...
Nov 04 00:32:13 localhost.localdomain crond[1224]: (CR...
Nov 04 00:32:14 localhost.localdomain crond[1224]: (CR...
Hint: Some lines were ellipsized, use -l to show in full.
man 5 crontab 查到的信息
1>方式1
[root@localhost ~]# crontab -u root -e 以root用户身份发起定时任务
no crontab for root - using an empty one
crontab: installing new crontab编辑内容 (注意: * * * * * ==> 分,时,天,月,周)* * * * * rm -fr /gaoqi/* ( 表示每分钟删除/gaoqi/*)
[root@localhost ~]# crontab -u root -l 查看root用户的定时任务
* * * * * rm -fr /gaoqi/*
[root@localhost ~]# crontab -u root -r 取消root用户的所有定时任务
[root@localhost ~]# crontab -u root -l
no crontab for root
root@localhost ~]# crontab -u gq -e 以gq这个用户发起定时任务03 22 * * * rm -fr /mnt/* (编辑内容) 每天的22:03删除/mnt/* [root@localhost etc]# cat /var/spool/cron/gq 定时任务生成的文件存放在/var/spool/cron/root 目录
03 22 * * * rm -fr /mnt/*
2>方式2
编辑的文件其实就是/var/spool/cron/目录下的文件,文件名是指定的用户,没有指定用户就是root用户:
crontab 命令,黑白名单
/etc/cron.deny 黑名单(在白名单不存在时黑名单生效)
/etc/cron.allow 白名单(与黑名单同时存在时,白名单无效)
编辑这两个文件,就可以实现cron命令对特定用户开放
黑名单的设定
[root@localhost etc]#vim /etc/cron.deny
在黑名单中写入gq用户
[root@westos ~]# su - gq
Last login: Tue Nov 6 15:45:02 EET 2018 on pts/1
[gq@westos ~]$ crontab -e
You (gq) are not allowed to use this program (crontab)
See crontab(1) for more information
可看到在黑名单中的gq用户无法执行定时命令
[gq@westos ~]$ logout
[root@westos ~]# crontab -u gq -e
crontab: installing new crontab
退出登陆,可以看到用超级用户身份指定gq用户执行定时命令是可以的
白名单的设定
与延时命令黑名单设置类似
我的白名单未写入用户,默认全黑。
系统对临时文件的管理
[root@localhost mnt]# cd /etc/cron.d
[root@localhost cron.d]# ls
0hourly raid-check sysstat
[root@localhost cron.d]# vim westos
* * * * * root rm -fr /mnt/*
[root@localhost cron.d]#
[root@localhost cron.d]# cd /etc/cron.daily/
[root@localhost cron.daily]# ls
0yum-daily.cron logrotate man-db.cron mlocate rhsmd
[root@localhost cron.daily]# ana
anaconda
anaconda-cleanup
anaconda-disable-nm-ibft-plugin
anacron 错过的命令,会在开启服务时立即执行
analog
[root@localhost cron.daily]# anacron
[root@localhost cron.d]# cd /usr/lib/tmpfiles.d/
[root@localhost tmpfiles.d]# ls
abrt.conf rpcbind.conf
cups.conf rpm.conf
cups-lp.conf samba.conf
etc.conf sap.conf
gvfsd-fuse-tmpfiles.conf selinux-policy.conf
initscripts.conf setroubleshoot.conf
iscsi.conf spice-vdagentd.conf
legacy.conf subscription-manager.conf
libselinux.conf systemd.conf
libstoragemgmt.conf systemd-nologin.conf
lvm2.conf tmp.conf
mdadm.conf tuned.conf
pam.conf var.conf
ppp.conf x11.conf
radvd.conf
在这个目录下,以.conf结尾的文件都是临时文件处理的配置文件,可以打开,作为参考模版
[root@localhost tmpfiles.d] vim westos.conf
d /mnt/westos 777 root root 20s
[root@localhost tmpfiles.d]# systemd-tmpfiles --creat /usr/lib/tmpfiles.d/*
[root@localhost tmpfiles.d]# cd /mnt
[root@localhost mnt]# touch /mnt/westos/file1
系统定时任务与延时任务相关推荐
- Linux下的定时任务和延时任务
系统定时任务及延时任务 延时任务是临时的 服务器的维护是在服务器用户最少的时候进行运维,因此需要设置定时任务,通过编写脚本自动在设定的时间内进行运维 [1]设定延时任务 开启监控: watch -n ...
- linux 指定时间加3天,Linux系统的定时任务和延时任务
1.系统延时任务 at now+1min##延时1分钟 at> touch file{1..10} at> job 2 at Sun Jan 20 02:07:00 2019 监控/mnt ...
- Linux 系统中的定时任务及延时任务
######系统延时任务及定时任务###### ##1.系统延时任务## [root@localhost1 ~]# at 23:37 ##设定任务执行时间 at> rm -fr / ...
- Linux系统中的延时任务及定时任务
系统延时任务 at命令可以指定某一任务在将来的特定时间运行.对您系统的检查或者特定时间发送的通知.那些需要花费很长时间才可完成的任务适合 at 命令.仅需使用 at 命令将任务设置为在一分钟或几分钟之 ...
- Linux系统中的定时任务及延时任务详解
Linux系统中的定时任务及延时任务 1.系统延时任务 at 23:37/now+1min ##设定任务执行时间/延时1分钟 at> rm -fr /mnt/* ##任务动作 at> &l ...
- 贼好用,冰河再次升级了这款开源的精准定时任务和延时队列框架!!
写在前面 在实际工作中,很多小伙伴在开发定时任务时,会采取定时扫描数据表的方式实现.然而,这种方式存在着重大的缺陷:如果数据量大的话,频繁的扫描数据表会对数据库造成巨大的压力:难以支撑大规模的分布式定 ...
- Linux 系统管理 (进程管理、工作管理、系统资源查看、系统定时任务)
一.进程管理 进程管理的作用: 1).判断服务器健康状态(最重要) 2).查看系统中所有进程 3).杀死进程 1-1.进程的查看--ps和pstree命令 # 查看系统中所有进程,使用BSD操作系统格 ...
- linux查看定时任务进程,[Linux]系统管理: 进程管理(ps/top/pstree/kill/pkill), 工作管理, 系统资源查看, 系统定时任务...
进程管理:查看与终止 进程查看 1. 进程是正在执行的程序或命令. 2. 进程管理的作用: 判断服务器健康状态, 查看系统中所有进程 杀死进程 3. 查看系统中所有进程 ps aux # 查看系 ...
- (四)Linux系统定时任务及延迟任务
目录 ###1.系统延时任务### ###2.at任务黑白名单### #at任务的黑名单 #at任务的白名单 ###3.系统定时任务### 1)系统级别的cron(文件方式设定定时任务) 2)cron ...
最新文章
- 超全的Android组件及UI框架
- 单例设计模式-饿汉式
- Hibernate提高性能的几点建议
- 记一次中小公司的研发问题
- Bash字符串处理(与Java对照) - 19.查找字符的位置
- mysql返回yyyy mm dd_怎么把取出mysql数据库中的yyyy-MM-dd日期转成yyyy年MM月dd日格式...
- 2018数据技术嘉年华-金融峰会·重庆站即将起航!
- MediaInfo使用简介(新版本支持HEVC)
- 在计算机结构的简化模型中,2.4 计算机结构的简化模型
- 时间序列分析与非参数统计
- LINUX安装中文字体SimHei
- ubuntu20.05安装vmware workstation 16,踩坑:GLib does not have GSettings support.
- 微信小程序:微擎开发飞鹅打印机配置
- nginx 启动 报错,80端口被占用问题,80端口无法杀掉问题
- R语言计算时间序列数据的移动平均值(滚动平均值、例如5日均线、10日均线等):使用zoo包中的rollmean函数计算k个周期移动平均值
- 5、TM4的PD7和PF0解锁问题
- TCP协议的通讯流程
- 什么样的工作轻松又赚钱?真的有这样的工作吗?
- 《Django By Example》读书笔记 01
- 【AD封装】芯片IC封装-QFP,TQFP,LQFP(带3D)