linux运维实战练习
一、总结Linux系统上的任务计划(at、crontab)的详细使用方法;
Linux上的任务计划:
任务计划分为:
在未来时间点一次性执行某任务,实现目标命令:at batch
在未来时间内周期性执行某任务,crontab
电子邮件服务:
协议:SMTP:简单邮件传输协议
/var/spool/mail/USERNAME
登录用户的默认邮件目录
POP3:邮局协议
imap4:互联网访问协议
mail命令的使用:
centos7下为mailx;
发送邮件例:
#mail root@localhost \\-s 可代替邮件主题subject,直接回车输入
正文;
Subject:Hi 主题
How are you 正文
How old you 正文
Ctrl+D 邮件发送
发送给localhost 本地主机;
#mail 查看邮件信息
& number 查看某封邮件
输入重定向发送邮件:
mail -s "fstab" root@localhost < /etc/fstab \\输入重定向<;
cat /etc/fstab | mail -s 'fstab.new' root @localhost
MUA:mail命令的简单使用
mail命令:
mail:进入交互式收发邮件接口;
使用mail -s 指明subject
mail -s
at命令的使用:
一次性执行某任务;
Ctrl+d 提交作业
承载未来时间点运行的某作业:
支持使用作业队列:
默认为a队列;
at [option]... TIME
TIME:
(1)绝对时间 HH:MM;tomorrow;
(2)相对时间 now+时间单位 minute hour;
(3)模糊时间 midnight noon teatime
at -l
at now+3minute
常用选项:
-q: at作业队列;实现相关队列的管理;
-f: 读取文件中的作业命令;可编辑一个文件后使用文件名进行读取
作业,例:at -f at.list 15:15-->读取at.list文件中的命令在15:15分
进行作业执行;
-l: 查看作业队列待运行的作业列表=atq命令
-c: 查看待运行作业的内容;
-d: 删除指定作业;相当于atrm
batch:相似与at,但是不需要指定时间,时间由系统自行选择在资源较
为空闲时,运行指定的任务。
crontab:周期性任务计划;
守护进程:crond,在后台出于运行状态,进行监控。
crontab -e 编辑任务,打开当前shell回话的默认编辑器来编辑cron任
务表;
crontab -l 查看任务 list
-u user:不是管理自己的cron任务,而是指定的目标用户,只
有管理员可操作,不指定用户就代表管理自己的任务。
-r 移除所有任务
周期性任务有两类:
1.系统cron任务:没有默认运行用户身份,需要额外指定运行者;
在/etc/crontab vim打开进行编辑操作;
七个字段组成: 前5个字段来定义时间点
user-name:以哪个用户的身份运行任务:
command to be executed:要运行的任务
2.用户cron任务:由某个用户所提交,默认以提交者的身份运行,
无需额外指定运行者;
在/var/spool/cron/USERNAME vim命令打开编辑;
注: 普通用户不建议拥有此权限查看这个文件;
建议用crontab命令让用户管理此文件;
前五个为时间点,最后一个为运行任务本身
5个时间点:
分钟:有效范围为0-59minute
小时:0-23:
日 :1-31,不是每个月都有31号的。
月 :1-12,
周几:0-7,0和7都表示周日;
注意:几月几号与周几,不建议同时使用;
例:6 * * * * 表示:每月每天每小时的第六分钟
时间点表示法:
*:对应时间点有效取值范围内的每个时间点
用数字表示既定时间点;
-:一个特定的连续时间范围,3-7=3到7分钟
,: 一个离散的时间点,3,5,7=第三和第五和第七分钟;
/#:表示有效时间范围内每多少时间;用于指定频率;
1-30/4=每一个小时的1-30分钟每4分钟运行一次;*/4=每4小时运行一次
,*表示小时的话;
5 */3 * * * /bin/echo "howdy" 每三个小时运行echo查
看howdy;要给既定的分钟才可实现,不然意义不同为三小时以后而不是
每三小时;
思考:
如果想实现每8分钟运行一次某任务
如果想实现每10秒钟运行一次某任务
了解sleep命令;
cron补充性的工具:anacron
在cron一段时间内没有运行规定时间点执行任务的时候,立即执行此任务
一次。
(1)如何禁止crontab运行发送邮件给管理员;
COMMAND > /dev/null
COMMAND &> /dev/null
(2)对于crontab文件来讲:%有特殊功能,如果命令中出现%。要记得转
义,或者用单引号对其引用。
(3)crontab的PATH变量与用户的变量不完全相同,所以,建议在cron中
的任务要使用绝对路径。
题目:
1、每周一到周六的凌晨3点20分,运行cp命令对/etc/目录进行归档另存,存储位置为/backups/etc-YYYY-MM-DD
[root@localhost ~]#mkdir /backups/ [root@localhost ~]#contab -e 20 3 * * */1-6 /bin/cp /etc/ /backup/etc-$( date +\%Y-\%m-\%d )
2、每周日凌晨2点30分,运行cp命令对/etc/fstab文件进行备份,存储位置为/backup/fstab-YYYY-MM-DD-hh-mm-ss;
[root@localhost ~]#mkdir /backup/fstab [root@localhost ~]#crontab -e 30 2 * * */0 /bin/cp /etc/fstab /backup/fstab-$( date +\%Y-\%m-\%d-\%H-\%M-\%S )
3、每天晚上12点,取得/proc/meminfo文件中所有以S或M开头的行,追加至/statistics/meminfo.txt文件中,且每天的消息之前,要加上类似===============分隔线;
[root@localhost ~]#mkdir /statistics/meminfo.txt [root@localhost ~]#crontab -e 0 0 * * * /bin/echo "=================" >> statistics/meminfo.txt && /usr/bin/egrep '^(S|M)' /proc/meminfo >> statistics/meminfo.txt
转载于:https://blog.51cto.com/summer37/1692818
linux运维实战练习相关推荐
- Linux运维实战|大文件切割
介绍 日常工作中需要对日志文件进行分析,当日志文件过大时,Linux中使用vim.cat.vim.grep.awk等这些工具对大文件日志进行分析将会成为梦魇,具体表现在: 执行速度缓慢,文件内容需要加 ...
- 《Linux运维实战:Centos7.6一键离线部署mongodb4.2.23副本集群》
一.部署背景 由于业务系统的特殊性,我们需要面向不通的客户安装我们的业务系统,而作为基础组件中的mongodb针对不同的客户环境需要多次部署,作为一个运维工程师,提升工作效率也是工作中的重要一环.所以 ...
- 老男孩linux运维实战培训中心讲师介绍
老男孩linux运维实战培训中心讲师介绍 老男孩,资深unix/Linux系统运维网站架构专家.高级运维总监.从事一线网站运维及系统架构管理10年以上,13年的教育教学培训经历(擅长教育心理,职业规划 ...
- 《Linux运维实战:使用openssl生成免费证书》
文章目录 一.背景 二.生成证书 2.1.证书格式为cer 2.2.证书格式为pem 三.Nginx配置 四.安装客户端证书 总结:整理不易,如果对你有帮助,可否点赞关注一下? 一.背景 由于第三方外 ...
- Linux运维实战:CentOS7.6操作系统从入门到精通(11-15)
第11章 重定向和文件的查找 第12章 磁盘介绍及管理 第13章 Linux文件系统结构 第14章 RAID的原理与搭建 第15章 LVM管理和SSM工具使用 Linux运维实战:CentOS7.6操 ...
- Linux运维实战:CentOS7.6操作系统从入门到精通(6-10)
第6章 CentOS用户管理 第7章 CentOS 7 文件权限管理 第8章 CentOS 7 程序包的管理与安装 第9章 文件的归档和压缩 第10章 CentOS 7 系统进程管理 Linux运维实 ...
- 《Linux运维实战:使用mongodump和mongorestore备份与恢复Mongodb数据》
一.备份与恢复方案 mongodump是MongoDB官方提供的备份工具,它可以从MongoDB数据库读取数据,并生成BSON文件,mongodump适合用于备份和恢复数据量较小的MongoDB数据库 ...
- 《Linux运维实战:使用Percona XtraBackup物理备份与恢复Mysql数据》
一.Percona XtraBackup工具介绍 Percona XtraBackup是世界上唯一开源.免费的MySQL热备份软件,可为InnoDB和XtraDB数据库执行非阻塞备份.Percona ...
- 《Linux运维实战:Centos7.6基于ansible一键离线部署mongodb4.2.23容器版副本集群》
一.部署背景 由于业务系统的特殊性,我们需要针对不同的客户环境部署 mongodb副本集群,由于大都数用户都是专网环境,无法使用外网,为了更便捷,高效的部署,针对业务系统的特性,我这边编写了基于ans ...
- 《Linux运维实战:Nginx服务报错unknown directive stream》
一.场景一 Ubuntu 18.04 LTS操作系统,安装完Nginx之后,由于业务需求,代理转发代理TCP stream {server {listen 9000;proxy_connect_tim ...
最新文章
- 12.super关键字
- 今日arXiv精选 | 15篇ICCV 2021最新论文
- DeepFakes天敌来了!伯克利紧急研发“火眼金睛”防伪克星
- 调试 SAP Spartacus 服务器端渲染 SEO HTML Tag 生成逻辑的注意事项
- 鹤峰:美丽的茶乡—— 山水篇
- SpringMVC的工作流程
- Java中的三态布尔值
- ipad如何连接电脑_电脑无法连接外网远程调试,一文教你如何用手机让台式机连接外网...
- linux 内核 第二周 操作系统是如何工作的
- MySQL锁定机制简介
- 【ARC083E】Bichrome Tree
- 软考软件设计师下午真题-面向对象的程序设计与实现-策略设计模式(2015年下半年试题六))代码讲解
- Jetson nano 开机自动连接 Wifi
- 复旦非全日制研究生计算机,信息整合!复旦大学非全日制研究生招生详情
- 怎么停止skywalking_SkyWalking安装和使用
- android用shape画虚线,怎么也不显示
- 蚂蚁研究员玉伯:做一个简单自由有爱的技术人
- 58到家数据库30条军规解读 【转】
- linux svn e170001 认证失败,jenkins - svn: E170001报错的原因以及解决方案
- 解压tar.xz方法