Linux运维(2)

1.如何处理僵尸进程
  僵尸进程:由于各种原因导致某个进程挂掉了,但是进程本身仍然存在,还占用着系统资源,这种异常进程僵尸进程。
  查找:未来通过ps aux过滤 Z状态即可找出僵尸进程或top命令查看.
  解决:
    方案01:找出僵尸进程上级进程,结束进程即可
    方案02:如果上级进程是主进程(pid为1进程),则需要重启Linux系统
2.进程监控指令

 3.ps命令

  ps -ef
    UID 进程属于的用户
    PID 进程id号,大部分都是随机.
    PPID 父进程的id号, pstree -p查看详细关系
    CMD 进程名字
  ps aux
    比-ef多了一些,cpu使用率,内存使用率,占用内存大小,进程状态
  ps aux每一列含义

 4.进程状态

 5.软件后台运行方法

 6.杀手三剑客

 7.负载高排查流程

  排查流程
  1️⃣通过监控软件发现系统负载高(w,lscpu查看).
  2️⃣判断是cpu还是io导致的负载高.
    cpu高:top中的 us(user 用户占用cpu) sy(system 系统占用cpu)
    io高: top中的 wa(iowait) 磁盘io导致的负载高
  3️⃣
    🅰如果是cpu导致的,排查出哪个进程导致的ps aux过滤出占用cpu较高的进程。
    🅱如果是io导致的,排查初级哪个进程导致的,通过iotop -o命令排查。
  4️⃣未完待续.(具体分析这个进程有啥问题,第2阶段再说) 

 8.服务管理

 9.Linux 运行级别

 10.Linux启动流程

 11.L i n u x r o o t密码忘记如何解决

  尽可能避免这个情况出现:
  1. 多准备个备用用户,普通用户设置sudo权限。
  2. 未来不仅仅只有密码认证,还有其他认证方式。
  3. 做好密码更新与统计工作。keepass保存密码。 excel表格。
  重启Linux密码需要重启Linux.
  1️⃣重启Linux 
  2️⃣进入grub菜单(先不要继续)选择第1个(目前使用中的Linux内核),按 e ,编辑内核配置。
  3️⃣找到Linux16的行,修改这一行的内容 ro 改为 rw ,按 END 键到这一行的最后,输入 init=/bin/bash
  4️⃣修改完成,执行ctrl+x启动系统,进入救援模式(此时无法远程连接)。
  5️⃣通过vi/vim编辑/etc/passwd文件,去掉root的x标记(没有密码了),重启Linux.
  6️⃣本地登录Linux设置个密码即可
12.磁盘管理体系

 13.磁盘接口

 14.磁盘内部接口

 15.Raid(多块磁盘组合)级别

 16.硬盘命名

  #磁盘接口:
      sas/sata/scsi接口的硬盘,硬盘名字是以sd开头
      虚拟机(kvm)/公有云:     硬盘名字是以vd开头
  #第几块硬盘:通过字母表示从字母a开始一次类推。
    /dev/sda
  #第1块硬盘(SAS)接口
    /dev/sda

 17.一块硬盘,磁盘分区三部曲

  打隔断:分区操作
  装修,格式化:创建文件系统
  安装门窗:挂载(命令,配置文件) 

 18.前挂载整个流程:

  1.磁盘分区:fdisk命令
  2.磁盘格式化:格式化:创建文件系统, mkfs mkfs -t xfs === mkfs.xfs
  3.磁盘挂载:mount(临时), 永久:/etc/rc.local 或 /etc/fstab

 19.实现永久挂载的方案:

  方案1️⃣ 使用rc.local ,把挂载命令 mount /dev/sdb1 /data/ 写入到/etc/rc.local,注意命令最好写为绝对路径
  方案2️⃣专业的开机自动挂载的配置文件/etc/fstab ,根据配置文件的要求把mount命令改为配置文件形式即可。

 20.磁盘管理

 21.企业分区方案

不重要的数据

 重要数据

 不知道是否重要

 22.磁盘空间不足排障

 23.文件系统

 24.磁盘性能指标

 25.引号系列

 26.重定向符号

 27.通配符

 28.正则分类

 29.正则

 30.基础正则

 31.扩展正则

32.perl正则

 33.三剑客sed

 过滤:

  行号,行号范围
  模糊过滤或查询
  模糊范围
替换
  格式 s ˂ g
  修改文件内容 -i -i.bak
  反向引用:
    类似于awk取列,取出某行中指定的内容.
    本质:通过正则进行匹配,通过()进行分组,通过后面使用\1 \数字获取前面分组的内容.
    把你想要获取的内容,通过()与正则保护起来,然后在后面2个符号之间他通过,\数字进行使用与调用.
删除: d删除行.
增加: cai
  a append 如果多行,加上\n即可.
  i insert
  c replace
选项
  -n 取消默认输出 -n p一起使用.
  -i -i.bak
  -r

 34.四剑客

 35.awk取行取列小结

  awk + NR 取出指定的行,指定范围的行.  例:awk  'NR=1{print $0}' /etc/passwd

  awk + ˌ 过滤  例:awk 'NR>=2 && NR<=5' /etc/passwd
  awk中取列的时候说明:
  $数字,表示取列,$1 第1列 $0表示这一行.
  $NF 最后一列
  NF Number of Field 每行有多少列
  $(NF-1) 取出倒数第2列,一般用于正向取发生变化或数字过大. 
  awk取列的时候,默认是通过空白字符进行分割的.
  空白字符:空格,连续空格,tab键.
  但是一些时候使用默认分隔符不够了,需要我们手动指定分隔符,通过-F选项指定.
  未来我们想快速取出想要的内容,选择趁手工具(选好分隔符).
  选择分隔符建议: 看你目标两边是啥
  如果是空格,连续空格,tab键直接使用awk取列即可,$1,$2,$NF
  其他情况需要通过-F指定分隔符+正则实现 [] []+ | 

36.服务使用流程

 37.定时任务目录结构

 38.配置命令

 39.定时任务时间部分

 40.故障案例

  1.现象:
  邮件服务开启: 不断收到邮箱 You have new mail in /var/spool/mail/root
  邮件服务关闭: 一些邮件的临时目录不断堆积小文件. /var/spool/postfix/maildrop
  原因:
  定时任务运行命令或脚本的时候,命令或脚本有输出,定时任务就会通过邮件形式发送给root.
  解决:
  定时任务中命令或脚本定向到空或追加到文件.

 41.csv表格:通过逗号分割的内容

posted @ 2024-03-11 09:09  嘉禾世兴  阅读(3)  评论(0编辑  收藏  举报