linux系统中的定时任务及延时任务
目的:解决人不能时时监控,以及遗忘的问题
一、延时任务(at)at time
> 命令
>ctrl d
1.基本用法
at
-l 列出延迟任务信息(该命令执行时间之后的延迟任务,不包括执行时间之前的延迟任务)
-r 任务id 删除此id的任务
-m 让无输出的命令产生邮件
-M 让有输出的命令不产生邮件
-c 任务id 查看此id延迟任务的执行动作
-f 文件名 用文件内记录的命令作为延迟任务的执行命令
注意:当at下的命令很多时,将其写入一个文件下,默认情况下只有输出的命令才有邮件。
2.实验1:
(1)设定时间在/mnt下touch一个文件
(2)监控/mnt目录
(3)设定在当前时间的1分钟后删除该文件
(4)删除此删除任务的id
(5)该文件仍然存在
实验2
(1)查看mail
(2)清空mail
根据上图圈注部分的提示文件位置
(3)在该时间之后1min后删除/mnt/*,查看mail,查看/mnt目录,下图可以看出删除是一个无输出命令
(4)在/mnt下touch一个文件后,在该时间之后1min后删除/mnt/*(加上-m)查看mail,查看/mnt目录,下图将无输出的命令产生邮件
默认情况下系统中用户都可以使用at命令,所以我们可以使用at命令的黑白名单。
3.at命令的黑名单
目的:冻结某些用户的at命令执行权限(默认情况下系统中存在用户黑名单)
vim /etc/at.deny
student
4.at命令的白名单(默认系统中中不存在白名单的,当白名单出现,系统中只有root和白名单内用户可以使用at命令且黑名单失效)
touch /etc/at.allow
vim /etc/at.allow
student
即便黑名单的用户是student,但是当student出现在白名单内,则黑名单不生效。
二、定时任务(cron)
1.cron这个程序是由crond.service服务提供,写入程序的时间和事件是永久保存的,先保证该服务开启。
2.设定方式
crontab -e [-u 用户名称 ](可以不写,默认用当前用户发起)
crontab -l 列出当前用户的任务
crontab -r 删除当前用户的任务
内容
分钟 小时 天 月 周 用户 事件
11 11 * * * * 每天的11:11分
11 11 1,15 * * * 每月1号和15号11:11分
11 11 1-15 * * * 每月的1至15号11:11分
11 11 1,15 3 * * 3月1号和15号的11:11分
11 11 1,15 3 3 * 3月1号和15号以及3月的所有周三的11:11分
11 05-11 * * * * 每天早上5到11点的11分
11 05-11 * * 1-5 * 每周一至周三早上5点到11点的11分
注意:*表示任意,用户表示发起该时间的所有人和所有组。A用户该文件存放位置:/var/spool/cron/A
3.crontab的黑白名单
默认情况下,系统存在crontab的黑名单,不存在白名单。
① 黑名单
/etc/cron.deny 在此名单下的用户不能执行crontab
vim /etc/cron.deny
kiosk
②白名单
/etc/cron.allow 当此名单出现,只有root和该名单下的用户可以执行crontab黑名单不生效
kiosk
4.将命令导入/var/spol/cron/username 或者vim var/spol/cron/username同样可以设定定时任务
5.切换到 /etc/cron.d,可以查看该目录下存在的文件
该文件的内容同样是定时任务的设定,同理,我们可以在该目录下新建一个文件来设定定时任务。
vim /etc/cron.d/filename或者将该命令导入文件中。该文件的功能就是可以设定多个用户执行cron
<分> <时> <天> <月> <用户> <动作>
vim方式
导入命令方式
导入多行命令方式
三、临时文件的管理
临时文件的配置文件 /usr/lib/tmpfiles.d/ 以下都是临时文件的配置文件,必须以.conf结尾
(1)创建管理临时文件的配置文件 vim /usr/lib/tmpfiles.d/test.conf
下图脚本中体现了目标目录,赋予权限,uid和gid,以及生存时间
(2)监视脚本中的目标目录(递归查看)
(3)该配置文件生效systemd-tmpfiles--create /usr/lib/tmpfiles.d/test.conf
由于该目录下的文件是临时文件,且生存周期是10s,则在10s后,文件消失
(4)清空该配置文件指向的目标目录下的文件
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/test.conf
四、分区
硬盘的分区主要分为基本分区(primary partion)和扩充分区(extension partion)两种,基本分区和扩充分区的数目之和不能大于四个。且基本分区可以马上被使用但不能再分区。扩充分区必须再进行分区后才能使用,也就是说它必须还要进行二次分区。那么由扩充分区再分下去的是什么呢?它就是逻辑分区(logical partion),逻辑分区没有数量上限制。每一个硬盘设备最多能有4个主分区(其中包括扩展分区),构成一个扩展分区都要占一个主分区号码,也就是在一个硬盘中,主分区和扩展分区一共最多是4个。
主分区:主分区的作用就是计算机用来进行启动操作系统的,每一个操作系统的启动引导程序都应该放在主分区上。
逻辑分区:对于逻辑分区就是必须建立在扩展分区上。
扩展分区:扩展分区能够提供更灵活的分区方式,但是不能作为操作系统的引导。
主引导记录(MBR,Main Boot Record)是位于磁盘最前边的一段引导(Loader)代码。它负责磁盘操作系统(DOS)对磁盘进行读写时分区合法性的判别、分区引导信息的定位,它由磁盘操作系统(DOS)在对硬盘进行初始化时产生的。