linux---虚拟机的全自动安装和定时延时任务

一.虚拟机的全自动安装

1.前期准本工作

【yum源】 和【dhcp】 服务搭建成功

2.下载kickstart服务

yum install system-config-kickstart.noarch -y 下载kickstart服务
在这里插入图片描述

3.system-config-kickstart —> 打开kickstart图形界面

basic configuration ---> 基本信息设定
在这里插入图片描述
installation method ---> 安装模式选择
在这里插入图片描述
boot loader options ---> 引导程序选项
在这里插入图片描述
partition information ---> 分区划分策略
在这里插入图片描述
/boot ---> 分区划分
在这里插入图片描述
/swap ---> 分区划分
在这里插入图片描述
/ ---> 分区划分
在这里插入图片描述
Network Configuration ---> 网络设置
在这里插入图片描述
firewall configuration ---> 火墙配置信息
在这里插入图片描述
post-installation ---> 安装后执行脚本
在这里插入图片描述
在这里插入图片描述

4.保存ks.cfg到/var/www/html

在这里插入图片描述

5.vim /var/www/html/ks.cfg —> 编辑ks.cfg文件,给自动安装虚拟机添加安装包

在这里插入图片描述

6. ksvalidator ks.cfg —> 检查ks.cfg文件是否编辑错误

在这里插入图片描述

7.vim /etc/sysconfig/selinux 编辑selinux文件

在这里插入图片描述

8.在物理机中

 cd /mnt
 vim new.sh		--->  编辑自动安装文本
	#!/bin/bash
	virt-install \
	--name $1 \
	--ram 1024 \
	--cpus 1 \
	--disk /var/lib/libvirt/images/$1.gcow2,bus=virtio,size=10 \
	--network bridge=br0,model=virtio \
	--location http://172.25.254.97/xin \
	--extra-args ks=http://172.25.254.97/ks.cfg &
chmod +x new.sh		--->  给文件增加执行权限
./nex.sh ming		--->  执行文件,自动安装虚拟机ming

二. 延时任务

1.系统延时任务 (at)
[root@server ~]# at 14:48	---> 设定任务执行时间
at> rm -fr /mnt/*		---> 任务动作
at> <EOT>			---> ctrl+d发起任务

[root@server ~]# at now+1min	---> 延时一分钟
at> rm -fr /mnt/*
at> <EOT>
at -l		查看任务列表
at -c 任务号	取消任务内容
at -r 任务号	取消任务执行
注意:当任务有输出时,输出会以邮件的形式发送给at任务的发起者
at now+1min
at> echo hello
at> <EOT>

mail -u root		查看超级用户的邮件
1			查看第一封邮件
q			退出
> /var/spool/mail/root	清空邮件
2.at任务的黑白名单
/etc/at.deny	---> 系统中默认存在,在此文件中出现的用户不能执行at
/etc/at.allow	---> 系统中默认不存在,当文件出现,普通不能执行at,只有在白名单中出现的用户可以执行,并且/etc/at.deny失效

三.定时任务

1.定时任务
systemctl start crond.service   ---> 开启定时程序,定时任务生效
crontab -e -u hostname		---> 编辑定时任务crontab,并且指定用户
crontab -l -u hostname		---> 列出指定用户的定时任务crontab
crontab -r -u hostname		---> 删除指定用户的定时任务crontab
2.编辑定时任务格式
(* * * * * 分时日月周)
分	时	日	月	周	
* 	*	 *	 *	 *       ---> rm -fr /mnt/*	每分钟
*/2 	*	 *	 *	 *	---> 每两分钟
*/2 	09-17	 *	 *	 *	---> 早九点-晚五点每两分钟
*/2 	*/2	 *	 *	 *	---> 每隔两小时每两分钟
*/2 	09-17	 1	 3,5	 5 	---> 三月和五月每周周五和三月一日,五月一日,早九点-晚五点每两分钟
*/2 	09-17	 *	 *	 5	---> 每周五早九点-晚五点每两分钟
3.文件方式设定定时任务
vim /etc/cron.d/file	---> file名称任意
 * * * * * username	action
 * * * * * root 		rm -rf /mnt/*
非交互式:
echo "* * * * * root rm -rf /mnt/*" > /etc/cron.d/westos
cd /etc/cron.		双击tab建
这种方式定义的crontab使用crontab -l 看不到
4.crontab的黑名单
/etc/cron.deny	---> 系统中默认存在,在此文件中出现的用户不能执行crontab
/etc/cron.allow	---> 系统中默认不存在,当文件出现,普通不能执行crontab,
		只有在白名单中出现的用户可以执行,并且/etc/cron.deny失效
	注意:这两个名单都不会影响/etc/cron.d/目录中定时任务的发起和执行
	* * * * *  root 		rm -rf /mnt/*
5.系统中临时文件的管理方式
cd /usr/lib/tmpfiles.d
vim /westos.conf
	类型	名称		权限	所有人	所有组	存在时间
	d 	/mnt/westos 	777	 root	 root 	5s
systemd-tmpfiles --create /usr/lib/tmpfiles.d/*	读取目录里所有文件按照其规则去建立
systemd-tmpfiles --clean  /usr/lib/tmpfiles.d/*	清理临时文件

猜你喜欢

转载自blog.csdn.net/hzyuhz/article/details/83617850