Linux学习笔记(三)

十一、yum

    1> 配置文件:/etc/yum.conf/

    2>yum仓库:/etc/yum.repos.d

    3>yum功能

        install:安装软件包

        update:升级软件包

        check-update:检查软件包的升级信息

        upgrade:更新软件包

        remove:卸载软件包

        list:显示所有已经安装和未安装的软件包

        info:查看软件包信息

        clean:清除软件包的信息

        search:查询与软件包相关的软件包

        deplist:查询软件包依赖关系列表

        repolist:查看yum源

        repoinfo:查看可用yum源的信息

        groupsinstall:安装软件包组

        

   4>更改yum的网络源

        在/etc/yum.repos.d下利用vim编写*.repo文件,示例如图:

         

     对上图的解释:

      

   5>Linux中如何启动、重启、停止、重载服务以及检查服务(如 httpd.service)状态 

        # systemctl start httpd.service

        # systemctl restart httpd.service

        # systemctl stop httpd.service

        # systemctl reload httpd.service

        # systemctl status httpd.service

 十二、进程

         

        

         

       

  

十三、任务计划:调度性的任务

一次性任务计划:
at:设置系统在某一个时间点执行的任务,执行结果以邮件的方式发送给任务发起者
语法:
# at data_time
at>at_command1
at>at_command2
at>ctrl+d 保存退出
data_time:时间日期写法
绝对时间:
HH:MM:具体时间点
DD.MM.YY:天.月.年
YY-MM-DD:年-月-日
MM/DD/YY:月/日/年
HH:MM YY-MM-DD:
相对时间:
at now+3minutes:从任务计划创建开始计时,3分钟以后执行

# systemctl start atd
# systemctl enable atd
# systemctl status atd
Linux中设置at任务后,会在/var/spool/at/目录生成at任务计划的文件,按照文件名的排序顺序执行

/etc/at.allow和/etc/at.deny:

/etc/at.allow:at任务计划的白名单,仅允许此文件中的用户执行at
/etc/at.deny:at任务计划的黑名单,仅拒绝次文件中的用户执行at

系统先查找/etc/at.allow,再去查找/etc/at.deny,如果两个文件都没有,只有root用户能够执行at

at命令:设置at任务计划
-l:查看系统中at任务列表,相当于atq
-r:删除系统中的at任务列表,相当于atrm
-d:删除系统中的at任务列表,相当于atrm
-c:列出后续at任务的具体指令内容

batch:用法和at相同,不过batch任务计划是在CPU空闲时执行,当CPU的平均负载小于0.8时执行batch设定任务

# batch data_time
at>at_command1
at>at_command2
at>ctrl+d 保存退出
data_time:时间日期写法
绝对时间:
HH:MM:具体时间点
DD.MM.YY:天.月.年
YY-MM-DD:年-月-日
MM/DD/YY:月/日/年
HH:MM YY-MM-DD:
相对时间:
at now+3minutes:从任务计划创建开始计时,3分钟以后执行

uptime:查看CPU的平均负载


周期性任务计划:
系统周期性任务:
日志轮换:logrotate
登录文件分析:logwatch任务
创建locate数据库:updatedb
创建man帮助信息数据库:CentOS6:makewathis CentOS7:mandb
RPM软件登录文件的创建
与网络相关的分析行为:
用户周期性任务:
cron:设置周期任务计划
anacron:当cron周期性任务由于某种原因没有执行,anacron重新执行cron任务

控制crond服务:
# systemctl start crond
# systemctl enable crond
# systemctl status crond

/etc/cron.allow和/etc/cron.deny
/etc/cron.allow:白名单
/etc/cron.deny:黑名单,默认情况下系统只保留/etc/cron.deny

cron相关的配置文件:
/etc/crontab:cron配置文件
/etc/cron.d/:cron辅助配置文件
/var/spool/cron:用户cron任务计划的配置文件,Linux用户设置完cron任务后,会在/var/spool/cron目录下生成以用户名名称的cron文件

crontab:设置/查看/删除等cron任务计划,执行结果以邮件方式发送给任务发起者
-e:编辑cron任务内容
-u:为指定用户设置cron任务计划(只有root用户能够使用)
-l:查看cron任务列表
-r:删除所有的cron列表

设置cron任务语法:
系统设置:
分 时 日 月 周 用户 命令
用户设置:
分 时 日 月 周 命令

时间取值范围:
分钟:0-59
小时:0-23
日期:1-31
月份:1-12或jan,feb,mar,apr ...
周:0-7或sun,mon,tue,wed,thu,fri,sat,其中0和7都代表周日
时间的特殊写法:
通配:*代表任意时间 10 17 * * * cat /etc/fstab
离散时间段:,(逗号) 5,15,30,45,56 17 * * * cat /etc/fstab
连续时间段:-(中横线) 00 23 * * 1-5 cat /etc/fstab
间隔时间段:*/n */5 * * * * cat /etc/fstab 00 10 */5 * * cat /etc/fstab


/etc/crontab文件解析:
SHELL=/bin/bash:cron任务计划执行使用的shell程序
PATH=/sbin:/bin:/usr/sbin:/usr/bin:cron任务计划命令搜索地址
MAILTO=root:cron任务计划执行结果发送给哪个用户
/etc/cron.d:辅助配置文件目录

cron.hourly:cron工具去执行
cron.daily,cron.weekly cron.monthly是有anacron工具去执行

cron设置任务计划时注意事项:
CPU和内存资源集中使用时的问题:
# vim /etc/crontab
1,6,11,16,21,26,31,36,41,46,51,56 * * * * root COMMAND1
取消一些不必要的输出:设置命令时可以重定向输出
时间的检验:设置时间时,周与日月不可并存
安全的检验:借有/var/log/cron的内容查看cron任务计划中是否有非法任务
环境变量:系统命令查找和cron任务命令位置由$PATH变量决定,设置cron任务时,使用命令的绝对路径


anacron:当cron周期性任务由于某种原因没有执行,anacron重新执行cron任务

anacron语法:
anacron [options] [job]
-s:依据时间记录文件去判断是否执行
-f:强制执行
-n:立刻运行未执行的任务,不需要延时

anacron执行流程:
1:由/etc/anacrontab分析到cron.daily天数为1天
2:由/var/spool/anacron/cron.daily取出最近一次执行anacron时间戳
3:由2步骤分析出的时间戳和cron任务进行比较,查看哪些cron任务超过1天时间没有执行
4:准备执行指令,根据/etc/anacrontab的设置,将延时执行
5:延时时间过后,执行指令

 

posted @ 2019-02-25 23:12  佛心小鹏  阅读(162)  评论(0编辑  收藏  举报