2015年9月5日课程作业(练习)

1、总结Linux系统上的任务计划(at、crontab)的详细使用方法;

at命令:

承载未来时间运行的某作业:

支持使用作业队列:    
            默认为a队列;

Ctrl+d

at [option]... TIME

TIME:    
            (1) 绝对时间    
                HH:MM,    
                MMDD[CC]YY, MM/DD/[CC]YY, DD.MM.[CC]YY or [CC]YY-MM-DD    
                tomorrow    
            (2) 相对时间    
                now+#UNIT    
                    minute, hour, day, week    
            (3) 模糊时间    
                midnight    
                noon    
                teatime

常用选项:    
            -q QUEUE: at作业队列;    
            -f /PATH/FROM/SOMEFILE:从指定的文件中读取要运行的作业;    
            -l: 查看作业队列中的等运行作业列表;相当于使用atq命令;    
            -c AT_JOB_NUM: 查看待运行作业的内容;    
            -d: 删除指定作业;相当于atrm

=============================================================================================================

crontab:周期性任务计划

守护进程:crond

周期性任务有两类:    
            (1) 系统cron任务;没有默认运行用户身份,所以需要额外指定运行者;    
                /etc/crontab

vim命令

# Example of job definition:    
                    # .---------------- minute (0 - 59)    
                    # |  .------------- hour (0 - 23)    
                    # |  |  .---------- day of month (1 - 31)    
                    # |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...    
                    # |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat    
                    # |  |  |  |  |    
                    # *  *  *  *  * user-name  command to be executed

7个字段:    
                        前5个字段:时间点    
                        user-name: 以哪个用户的身份运行任务    
                        command to be executed: 要运行任务

(2) 用户cron任务:由某个用户所提交,默认就以提交者的身份运行,所以无需额外指定运行者;    
                /var/spool/cron/USERNAME

vim命令;不建议    
                crontab命令:建议

# Example of job definition:    
                    # .---------------- minute (0 - 59)    
                    # |  .------------- hour (0 - 23)    
                    # |  |  .---------- day of month (1 - 31)    
                    # |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...    
                    # |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat    
                    # |  |  |  |  |    
                    # *  *  *  *  *  command to be executed

5个时间点:    
                        分钟:有效取值范围0-59;    
                        小时:0-23    
                        日:1-31    
                        月:1-12    
                        周几:0-7

注意:几月几号与周几,不建议同时使用;

例如:    
                            6 * * * *

时间表示法:

*: 对应时间点有效取值范围内的每个时间点;    
                            -: 一个特定连续时间范围, 3-7    
                            ,:一个离散的时间点, 3,5,7    
                            /#:有效时间范围内的每多少时间;用于指定频率;    
                                1-30/4, */4

5 */3 * * * /bin/echo "howdy"

5 7 * * 1-5 /bin/echo "howdy"

crontab命令:    
                        crontab [-u user] [-l | -r | -e]    
                            -u user: 不是管理自己的cron任务,而是指定的目标用户的cron任务;仅root拥有管理其它用户的cron任务的权限;默认管理自己的;

-l: list,列出任务;    
                            -r: remove, 移除所有任务;    
                            -e: edit,编辑,打开一当前shell会话的默认编辑器来编辑cron任务表;

注意:    
                (1) 如果不想接收任务执行结果的通知邮件:    
                    COMMAND > /dev/null    
                    COMMAND &> /dev/null    
                (2) 对于crontab文件来讲,%有特殊功用;如果命令中会出现%, 要记得转义,或者用单引号对其引用;    
                (3) crontab的PATH变量与用户的变量不完全相同,所以,建议在cron中的任务要使用绝对路径    
                    /root/bin/a.sh

=====================================================================================================================

练习:

2、每周一到周六的凌晨3点20分,运行tar命令对/etc/目录进行归档另存,存储位置为/backups/etc-YYYY-MM-DD;

[[email protected] ~]# mkdir  /backups/                       //创建目录

[[email protected] ~]# echo "20 3 * * 1-6   /bin/tar -cvf /backups/ect-$(date +%F).tar"  /etc >> /var/spool/cron/root

如果是: 每周一到周六的凌晨3点20分,运行cp命令对/etc/目录进行归档另存,存储位置为/backups/etc-YYYY-MM-DD;

[[email protected] ~]# echo "20 3 * * 1-6   /bin/cp  -a  /etc  /backups/ect-$(date +%F)/" >> /var/spool/cron/root

3、每周日凌晨2点30分,运行tar命令对/etc/fstab文件进行备份,存储位置为/backup/fstab-YYYY-MM-DD-hh-mm-ss;

[[email protected] ~]# echo "30 2 * * 0   /bin/tar -cvf /backups/fstab-$(date +%F-%H-%M-%S).tar"  /etc/fstab  >> /var/spool/cron/root

4、每天晚上12点,取得/proc/meminfo文件中所有以S或M开头的行,追加至/statistics/meminfo.txt文件中,且每天的消息之前,要加上类似===============分隔线;

[[email protected] ~]# mkdir statistics

[[email protected] ~]# crontab –e

编辑如下内容后保存退出    
0  0 * * *  echo -e "====================\n"+`egrep  ‘^[SM]‘   /proc/meminfo `  >>/statistics/meminfo.txt

时间: 2024-10-27 04:20:52

2015年9月5日课程作业(练习)的相关文章

2015年8月30日课程作业(练习)

linux运维实战练习-2015年8月30日课程作业(练习)安排 一.作业(练习)内容: 1.总结文本编辑工具vim的使用方法: vim: 全屏幕的编辑器 编辑模式:命令模式 输入模式: 末行模式: 编辑模式 --> 输入模式: i: insert, 在光标所在在位置前可输入内容 a:append,在光标所在在位置后可输入内容 I: 行首,在光标所在在位置行首可输入内容 A:行尾,在光标所在在位置行尾可输入内容 O:在光标所在位置上方新建行,在行首可输入内容 o:new line,在光标所在位置

linux运维实战练习-2015年9月01日课程作业(练习)

linux运维实战练习-2015年9月01日课程作业(练习)安排 一.作业(练习)内容: 1.复习本次课程所讲的内容 2.总结整理磁盘管理及文件系统管理中设计的各种命令的使用,并附注一定的示例: 在Linux中,一块磁盘能被使用(可以被访问.被写入.被存储)要有以下三个步骤: (1)进行磁盘分区,及创建分区 (2)创建文件系统 (3)挂载文件系统 (1)磁盘分区 创建分区的命令: fdisk, parted, sfdisk fdisk:最多支持在一块硬盘上的15个分区:fdisk提供了一个交互式

linux运维实战练习-2015年9月5日课程作业(任务计划使用和练习)-JY1506402-19+liuhui880818

作业目标:linux运维实战练习-2015年9月5日课程作业(练习)安排 作业环境:CentOS 6.7/7 x86_64 一.作业(练习)内容: 1.总结Linux系统上的任务计划(at.crontab)的详细使用方法: 2.每周一到周六的凌晨3点20分,运行cp命令对/etc/目录进行归档另存,存储位置为/backups/etc-YYYY-MM-DD: 3.每周日凌晨2点30分,运行cp命令对/etc/fstab文件进行备份,存储位置为/backup/fstab-YYYY-MM-DD-hh-

2015年8月27日课程作业(文件权限管理及grep正则和扩展正则表达式)-JY1506402-19+liuhui880818

学习内容:文件权限管理及grep正则和扩展正则表达式 系统环境:CentOS 6.7/7 x86_64 一.作业(练习)内容: 1.总结本此课程中所涉及命令的使用方法及相关示例展示: 2.总结基本正则表达式及扩展正则表达式 3.显示/etc/passwd文件中以bash结尾的行 4.显示/etc/passwd文件中的两位数或三位数 5.显示`netstat -tan`命令结果中以'LISTEN'后跟0个.1个或者多个空白字符结尾的行 6.添加用户bash.testbash.basher以及nol

linux运维实战练习-2015年9月13日课程作业(练习)安排

一.作业(练习)内容: 1.描述shell程序的运行原理(可附带必要的图形说明): 2.总结shell编程中所涉及到的所有知识点(如:变量.语法.命令状态等等等,要带图的哟): 3.总结课程所讲的所有循环语句.条件判断的使用方法及其相关示例:(if (jpg|png is not exist):echo "You say a XX") 4.写一个脚本:如果某路径不存在,则将其创建为目录:否则显示其存在,并显示内容类型:(不要怀疑,就是这么简单) 5.写一个脚本,完成如下功能:判断给定的

linux运维实战练习-2015年9月01日课程作业(练习)安排

一.作业(练习)内容: 1.复习本次课程所讲的内容: 2.总结整理磁盘管理及文件系统管理中设计的各种命令的使用,并附注一定的示例: 3.创建一个10G的文件系统,类型为ext4,要求开机可自动挂载至/mydata目录 二.完成时间: 2015年9月15日之前. 三.提交方式: 请将作业的博文链接地址以评论本博客的形式提交.格式如: 学员编号+姓名   http://mageedu.blog.51cto.com/4265610/1687589

2015年8月27日课程作业(练习)安排

一.作业(练习)内容: 1.总结本此课程中所涉及命令的使用方法及相关示例展示: 2.总结基本正则表达式及扩展正则表达式 3.显示/etc/passwd文件中以bash结尾的行 4.显示/etc/passwd文件中的两位数或三位数 5.显示`netstat -tan`命令结果中以'LISTEN'后跟0个.1个或者多个空白字符结尾的行 6.添加用户bash.testbash.basher以及nologin用户(nologin用户的shell为/sbin/nologin):而后找出/etc/passw

2015年9月01日课程作业(磁盘和文件系统管理)-JY1506402-19+liuhui880818

<Linux系统管理> (1)磁盘和文件系统管理: (2)RAID, LVM; btrfs; (3)程序包管理:rpm, yum(dnf) (4)Linux的网络管理; (5)进程和作业管理:htop, glances, tsar: (6)sed和awk: (7)Linux系统的开机启动流程: (8)内核基础知识,内核定制编译: (9)系统安装:kickstart, pxe 一.作业(练习)内容: 1.复习本次课程所讲的内容: 2.总结整理磁盘管理及文件系统管理中设计的各种命令的使用,并附注一

linux运维实战练习-2015年8月30日课程作业(练习)安排

一.作业(练习)内容: 1.总结文本编辑工具vim的使用方法: 2.总结文件查找命令find的使用方法: 3.总结bash环境变量的相关内容: 4.总结Linux文件系统上的特殊权限(SUID.SGID.Sticky)的知识点: 5.总结Linux磁盘管理.文件系统相关知识点及其相关命令的使用方法: 6.复制/etc/grub.cfg配置文件至/tmp目录,用查找替换命令删除/tmp/grub.cfg文件中的行首的空白字符: 7.复制/etc/rc.d/init.d/functions文件至/t

linux运维实战练习-2015年9月10日课程作业(练习)安排

一.作业(练习)内容: 1.总结rpm和yum实现程序包的管理功能. 要求:作业要图文并茂 二.完成时间: 2015年9月15日之前. 三.提交方式: 请将作业的博文链接地址以评论本博客的形式提交.格式如: 学员编号+姓名   http://mageedu.blog.51cto.com/4265610/1687589