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时间表示方式
* * * * * 每分钟执行定时任务
*/2 * * * * 每两分钟执行一次定时任务
*/2 09-17 * * * 早9晚5每两分钟执行定时任务
*/2 * 3 * * 每隔两小时每两分钟
*/2 09-17 * * 5 每周周5早9晚5
(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点清理系统临时文件.