一、RAID阵列概述
• 廉价冗余磁盘阵列
– Redundant Arrays of Inexpensive Disks
– 通过硬件/软件技术,将多个较小/低速的磁盘整合成一个大磁盘

– 阵列的价值:提升I/O效率、硬件级别的数据冗余
– 不同RAID级别的功能、特性各不相同

• RAID 0,条带模式
– 同一个文档分散存放在不同磁盘
– 并行写入以提高效率
– 至少需要2块磁盘
笔记RAID 和进程管理_第1张图片
• RAID 1,镜像模式
– 一个文档复制成多份,分别写入不同磁盘
– 多份拷贝提高可靠性,效率无提升
– 至少需要2块磁盘
笔记RAID 和进程管理_第2张图片

• RAID5,高性价比模式
– 相当于RAID0和RAID1的折中方案
– 需要至少一块磁盘的容量来存放校验数据
– 至少需要3块磁盘
笔记RAID 和进程管理_第3张图片

• RAID6,高性价比/可靠模式
– 相当于扩展的RAID5阵列,提供2份独立校验方案
– 需要至少两块磁盘的容量来存放校验数据
– 至少需要4块磁盘
笔记RAID 和进程管理_第4张图片

• RAID 0+1/RAID 1+0
– 整合RAID 0、RAID 1的优势
– 并行存取提高效率、镜像写入提高可靠性
– 至少需要4块磁盘
笔记RAID 和进程管理_第5张图片
RAID各级特点对比:
笔记RAID 和进程管理_第6张图片

  • RAID的实现
    • 硬RAID:由RAID控制卡管理阵列
    – 主板 --> 阵列卡 --> 磁盘 --> 操作系统 --> 数据

• 软RAID:由操作系统来管理阵列
– 主板--> 磁盘-->操作系统-->RAID软件 -->数据
二、进程管理
程序:静态的代码,占用磁盘的空间

 进程:动态运行的代码,占用CPU与内存
     PID:标识进程  
     systemd:所有进程的父进程  PID=1
  • 命令行 &:将命令行在后台运行
  • Ctrl + z 组合键:挂起当前进程(暂停并转入后台)
  • jobs:列出当前用户当前终端的后台任务
  • bg 编号:启动指定编号的后台任务
  • fg 编号:将指定编号的后台任务调入前台运行
  • kill [-9] PID...:杀死指定PID值的进程
  • kill [-9] %n:杀死第n个后台任务
  • killall [-9] 进程名...:杀死指定名称的所有进程
  • pkill:根据指定的名称或条件杀死进程
    1. 查看进程树:
  • pstree — Processes Tree
    – 格式:pstree [选项] [PID或用户名]
    常用命令选项
    – -a:显示完整的命令行
    – -p:列出对应PID编号
  • ps aux 操作
    – 列出正在运行的所有进程

用户 进程ID %CPU %内存 虚拟内存 固定内存 终端 状态 起始时间 CPU时间 程序指令

  • ps aux | wc -l #统计正在运行进程的个数
  • ps -elf 操作
    – 列出正在运行的所有进程

PPID:父进程的PID号

  • 进程动态排名
    top 交互式工具
    – 格式:top [-d 刷新秒数] [-U 用户名]

[root@svr7 /]# top -d 1

按大写P可以CPU进行排序
按大写M可以内存进行排序

  • 检索进程
    pgrep — Process Grep
    – 用途:pgrep [选项]... 查询条件

    常用命令选项
    – -l:输出进程名,而不仅仅是 PID
    – -U:检索指定用户的进程
    – -t:检索指定终端的进程
    – -x:精确匹配完整的进程名

  • 查看进程:
    pstree(结构显示清晰)
    ps aux (输出进程内容详细)
    ps -elf(输出进程的PPID)
    top(动态排名,有CPU负载信息,可以进行排序)
    pgrep(输出简洁,方便运用Shell脚本)
  • 杀死进程的不同方法
    – Ctrl+c 组合键,中断当前命令程序
    – kill [-9] PID... 、kill [-9] %后台任务编号
    – killall [-9] 进程名...
    – pkill 查找条件
  • 杀死一个用户开启的所有进程(踢出一个用户) killall -9 -u 用户名
    三、日志管理
    1. 日志的功能
  • 系统和程序的“日记本”
    – 记录系统、程序运行中发生的各种事件
    – 通过查看日志,了解及排除故障
    – 信息安全控制的“依据”
    2.常见的日志文件
    /var/log/messages 记录内核消息、各种服务的公共消息
    /var/log/dmesg 记录系统启动过程的各种消息
    /var/log/cron 记录与cron计划任务相关的消息
    /var/log/maillog 记录邮件收发相关的消息
    /var/log/secure 记录与访问限制相关的安全消息
  • tailf动态查看日志消息
  • users、who、w 命令
    – 查看已登录的用户信息,详细度不同 详细程度一次递增
  • last、lastb 命令
    – 查看最近登录成功/失败的用户信息
  • Linux内核定义的事件紧急程度
    – 分为 0~7 共8种优先级别
    – 其数值越小,表示对应事件越紧急/重要

    0  EMERG(紧急)       会导致主机系统不可用的情况
    1  ALERT(警告)     必须马上采取措施解决的问题
    2  CRIT(严重)              比较严重的情况
    3  ERR(错误)                运行出现错误
    4  WARNING(提醒)         可能会影响系统功能的事件
    5  NOTICE(注意)          不会影响系统但值得注意
    6  INFO(信息)               一般信息
    7  DEBUG(调试)      程序或系统调试信息等
  • 使用journalctl工具
    • 提取由 systemd-journal 服务搜集的日志
    – 主要包括内核/系统日志、服务日志

• 常见用法
– journalctl | grep 关键词
– journalctl -u 服务名 [-p 优先级]

[root@svr7 /]# systemctl restart httpd

[root@svr7 /]# journalctl | grep httpd

[root@svr7 /]# journalctl -u httpd -p 6

– journalctl -n 消息条数
– journalctl --since="yyyy-mm-dd HH:MM:SS" --until="yyyy-mm-dd HH:MM:SS"

  1. 列出最近10条重要程度在 ERR 及以上的日志消息:journalctl -p 3 -n 10
  2. 列出所有与服务httpd相关的消息 journalctl -u httpd
  3. 列出前4个小时内新记录的日志
    • 根据当前日期时间往前推4个小时,确定--since起始和--until结束时刻:
      journalctl --since "2018-08-06 14:11" --until "2018-08-06 18:11"
      补充:
      /etc/hosts:提供域名解析,只为本机提供解析服务
      解析优先级 :
      浏览器输入域名------>本机/etc/hosts--->/etc/resolv.conf--->DNSPATH:环境变量
      PATH:提供命令搜寻路径(执行命令时,会到PATH变量值路径中寻找改程序,如果找到就执行,如果找不到输出未找到)