day23-定时任务-笔记

Day23-定时任务


导读

  • 上周回顾
    • 1.磁盘
    • 2.进程
    • 3.启动
  • 今日内容
    • 定时任务
    • 定时任务注意的事项
    • 拒绝某个用户使用

上周回顾

磁盘

磁盘的内部结构

  • 盘片:正反两面都可以用来存储数据,如果有很多盘片,可以拿主轴串在一起
  • 磁道:存取数据,需要磁头磁化金属颗粒,形成金属块
  • 扇区:硬盘出厂的时候进行的低级格式化,每个扇区512字节为度量单位

磁盘接口类型

  • 淘汰类:IDE、SCSI
  • 个人类:SATA、SSD
  • 企业类:SAS、SSD

硬盘指标

  • 尺寸:1.8、2.5、3.5
  • 容量
  • 转速:7500、10000、15000
  • IOPS:(dd、iostat、hdparm)

fdisk分区

  • MBR分区,小于2T
    • 四个主要分区
    • 三个主要分区,一个扩展分区,N个逻辑分区

gdisk分区

  • GPT分区,大于2T
    • 128个主要分区

mkfs格式化

  • 初始化文件系统,inode和block(4kb)

临时挂载

  • mount挂载
  • umount卸载

永久挂载

  • /etc/fstab
    • 设备名
    • 挂载点
    • 类型
    • 挂载参数
    • 备份
    • 检查

swap交换分区

  • 内存吃满,使用swap
  • 内存吃满,随机kill某个进程

RAID磁盘阵列

  • raid0
  • raid1
  • raid5
  • raid10

进程

  • 进程:程序运行的实例,只不过进程存在生命周期
  • 进程生命周期
  • 查看进程状态
    • 静态ps
      • STAT:R、S、S+、Ss、D、T、Z...
    • 动态top:cpu使用率指标如何查看
      • 使用率 内核使用率 等待IO返回 ...

nice优先级

  • nice
  • renice
  • 服务器假死问题

管理后台进程

  • SCreen

管理进程状态

  • kill
  • pkill
  • killall

中断

  • 软中断
  • 硬中断

平均负载

  • 详见day22笔记

启动

Centos6启动流程

  • 详见day22笔记

Centos7启动流程

  • 详见day22笔记

c6和c7启动区别

  • 加载的父进程不一样
  • 加载的配置文件不一样
  • 串行、并行

运行级别

  • 0 6 关机和重启
  • 2 4 不用
  • 3 5 字符、图形
  • 1 单用户

单用户模式

必须面对实体,必须系统是正常的

  • 修改密码
  • 修改配置文件
  • sudo权限改坏 (5分钟)

救援模式

系统无法正常引导

  • 引导丢失
  • 内核丢失
  • 分区抹掉了

思路:

  • 加载光盘中的镜像
  • 进入光盘中的镜像
  • 挂载真实的系统目录结构
  • 执行相应的命令进行恢复操作

今日内容

定时任务

  • 什么是定时任务

    • 定点执行某个任务
  • 为什么用定时任务

    • 电商秒杀,定点开启,定点关闭
    • 定时备份
    • 时间同步
    • 日志切割(系统日志)
    • 日志切割(程序产生的日志删除) ---> 实时推送到远端 ---> 远端分析 ---> 出图
    • 定时执行 5分钟----> 脚本(监控数据库存活状态)
    • 定时爬虫
    • 定时同步
  • 定时任务使用情况

    • 系统使用: 日志切割(系统日志)
    • 个人使用: 定时备份,定时清理,时间同步
  • 定时任务如何使用

    crontab

    /var/spool/cron/

    *  *  *  *  * user-name  command to be executed
    
  • 定时任务书写规范

    SHELL=/bin/bash
    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    MAILTO=root
    
    # For details see man 4 crontabs
    
    # 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
      分 时 日  月 周
    
    * 表示任意的(分、时、日、月、周)时间都执行
    - 表示一个时间范围段,如 5-7点
    , 表示分割时段,如6,0,4表示周六、日、四
    /1表示每隔n单位时间,如*/10 每10分钟
    

定时任务注意的事项

  • 给定时任务注释
  • 将需要定期执行的任务写入shell脚本中,避免直接使用命令无法执行的情况
  • 定时任务的结尾一定要有&>/dev/null或者将结果保存下来

拒绝某个用户使用

/etc/cron.deny

你可能感兴趣的:(day23-定时任务-笔记)