Linux系统基本管理之系统定时任务管理

Linux系统基本管理之系统定时任务管理

一.pxe+kickstart自动化安装系统

1.问题描述:企业中通常需要在多台虚拟机上安装系统,怎么实现一键化操作启动,来达到多份安装资源共享的问题?

2.针对上述问题引入pxe,原理图如下:

远程主机在通过dhcp获取IP地址时,也能获取到pxe文件。

3.pxelinux的环境搭建

(1)安装相关软件(注意需提前安装好dhcp服务)

    dnf   install   syslinux-tftpboot-6.04-1.el8.noarch  -y

    dnf    install   tftp-server -y

    安装好之后开启 tftp服务

(2) 配置pxelinux 文件

(3)在dhcp主配置文件中指定pxe文件

vim /etc/dhcp/dhcpd.conf

(4)完成以上步骤后 pxe的环境也就搭建完成。重新建立一台虚拟机,开启新的虚拟机之后 开启系统会见到下面效果

4.pxe配置文件设定和kickstart脚本制作

(1)编辑vim   pxelinux.cfg/default    设置安装系统的读秒时间

(2)挂载镜像资源,让资源能网络共享

(3)指定共享资源安装位置

      vim   pxelinux.cfg/default   

(4)制作脚本(制作步骤前面内容已提到)

      vim /var/www/html/westos.cfg 

(5)重启dhcp和tftp服务,实现一键安装系统

完成以上步骤,即可实现pxe+kickstart 企业一键化自动安装系统。

二.系统中设定延时任务

1.at延时任务的设定

at  时间    表示多少时间之后执行啥任务

at    -l  查看任务队列

at -r  任务号    取消任务执行

at  -c    任务号   表示查看任务的具体内容

at   now+分钟数      表示任务几分钟后结束

at 任务的执行  按Ctrl+D    

操作如下:

2.系统延迟任务中产生的输出会以邮件的形式发送给at命名的发起者

(1)安装邮件发送软件

      dnf   install   postfix  -y

      mail  -u root   查看超级用户邮件 

     mail  root    发送邮件  以点表示发送

      >  1               查看第一封邮件

       > q               退出查看

>   /var/spool/mail/root    清空系统邮件

(2)查看at延迟任务输出管理的形式

执行一个at 命令即可查看到一封邮件在已发送至root用户

3.at任务的黑白名单

(1)黑名单的控制

vim   /etc/at.deny          该文件是系统中默认存在的,出现在该文件中用户名单不可执行at命令

vim   /etc/at.allow    该文件是系统中默认不存在的,出现在该文件中用户名单可执行at命令  其他用户不可执行

三.系统定时任务的设定

(1)crontab时间表示方式

* * * * *      命令
minute   hour   day   month   week   command 
# minute: 表示分钟,可以是从0到59之间的任何整数。
# hour:表示小时,可以是从0到23之间的任何整数。
# day:表示日期,可以是从1到31之间的任何整数。
# month:表示月份,可以是从1到12之间的任何整数。
# week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
# command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。
在以上各个字段中,还可以使用以下特殊字符:
星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。
逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”
中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”
正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

   使用实例

# 每1分钟执行一次command
* * * * * command
 
# 每小时的第3和第15分钟执行
3,15 * * * * command
 
# 在上午8点到11点的第3和第15分钟执行
3,15 8-11 * * * command
 
# 每隔两天的上午8点到11点的第3和第15分钟执行
3,15 8-11 */2 * * command
 
# 每个星期一的上午8点到11点的第3和第15分钟执行
3,15 8-11 * * 1 command
 
# 每晚的21:30重启smb 
30 21 * * * /etc/init.d/smb restart
 
# 每月1、10、22日的4 : 45重启smb 
45 4 1,10,22 * * /etc/init.d/smb restart
 
# 每周六、周日的1 : 10重启smb
10 1 * * 6,0 /etc/init.d/smb restart
 
# 每天18 : 00至23 : 00之间每隔30分钟重启smb 
0,30 18-23 * * * /etc/init.d/smb restart
 
# 每星期六的晚上11 : 00 pm重启smb 
0 23 * * 6 /etc/init.d/smb restart
 
# 每一小时重启smb 
* */1 * * * /etc/init.d/smb restart
 
# 晚上11点到早上7点之间,每隔一小时重启smb 
* 23-7/1 * * * /etc/init.d/smb restart
 
# 每月的4号与每周一到周三的11点重启smb 
0 11 4 * mon-wed /etc/init.d/smb restart
 
# 一月一号的4点重启smb 
0 4 1 jan * /etc/init.d/smb restart
 
# 每小时执行/etc/cron.hourly目录内的脚本
01   *   *   *   *     root run-parts /etc/cron.hourly

(2)系统控制crontab的服务    crond.service

(3)crontab 命令的用途

      crontab  -e   -u  用户        表示编辑定时任务

      crontab  -l   -u  用户         表示查看定时任务

      crontab  -r   -u  用户         删除定时任务   

(4)文件方式设置定时任务

vim   /etc/cron.d/文件名  

*  *   *  *  *      username      action   

*  *   *  *  *      root      rm -fr   /mnt/* 

(5)crontab的黑白名单

vim /etc/cron.deny          系统中默认存在,在此文件中出现的用户不能执行crontab

vim /etc/cron.allow          系统中默认不存在,当文件出现,普通用户不能执行crontab

以上两个名单中的内容都不会影响/etc/cron.d/目录中定时任务的发起与执行

四.系统中临时文件的管理方式

cd   /usr/lib/temfiles.d/           系统中临时文件存在的目录

vim westos.conf 

d     /mnt/westos       777    root   root   8s     临时文件时一个目录,在8秒之后文件会被清理

systemd-tmpfiles --creat  /usr/lib/tmpfiles.d/*      创建临时文件

systemd-tmpfiles --clean  /usr/lib/tmpfiles.d/*      清理临时文件

实验如下:

指定临时文件目录

设定临时文件的定时任务

创建临时文件和清理临时任务

watch -n 1 ls -lR /mnt   监控实验效果

测试题:

(1)用一条非交互命令设定lee用户在每天15点清理/mnt目录

(2)设定系统定时任务,每周5早上8点清理系统临时文件.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值