正德厚生,臻于至善

Linux运维知识分类体系

Linux 运维知识体系庞大,需结合 “基础认知 – 核心操作 – 架构部署 – 故障保障 – 自动化管理” 的逻辑分层,同时覆盖不同场景(如服务器、云环境、容器化)的运维需求。以下是结构化分类方案:

Linux 运维知识分类(完整版)

一、Linux 基础与系统认知

该模块是运维的核心前提,聚焦 “理解系统本质 + 掌握基础交互”,为后续复杂操作打基础。

  1. 系统基础概念
    • 操作系统原理:内核(Kernel)与用户空间(User Space)的分工、进程 / 线程 / 协程的区别、内存管理(虚拟内存、页表)、文件系统层级(VFS 虚拟文件系统)。
    • Linux 发行版差异:主流发行版特性对比(CentOS/RHEL、Ubuntu、Debian、SUSE)、适用场景(服务器首选 CentOS/RHEL,桌面 / 开发首选 Ubuntu)、包管理机制区别(RPM/YUM、DPKG/APT)。
    • 系统启动流程:传统 BIOS+MBR 启动(POST→GRUB→内核加载→init 进程)、UEFI+GPT 启动(UEFI 初始化→GRUB2→内核加载→systemd)、启动级别的演变(runlevel 与 systemd target 对应关系)。
  2. 命令行与 Shell 基础
    • 核心 Shell 操作:Bash 语法(变量定义 / 引用、条件判断if-else、循环for/while、函数)、Shell 环境(登录 Shell 与非登录 Shell、/etc/profile~/.bashrc加载顺序)。
    • 基础命令集群:
      • 文件操作:ls-l/-a/-h)、cp-r/-p)、mvrm-rf风险控制)、touchfind(按名称 / 大小 / 时间搜索,结合-exec执行命令)。
      • 文本处理:cat/more/less(文件查看)、grep(正则匹配,-i/-v/-n)、sed(流编辑,替换 / 删除行)、awk(字段提取,如awk -F ',' '{print $2}')。
      • 系统信息:uname-r内核版本、-m架构)、hostnamewhoamiid(用户权限信息)、df/du(磁盘空间,-h人性化显示)。
  3. 用户与权限管理
    • 用户 / 组操作:useradd/userdel(创建 / 删除用户)、groupadd/groupdel(组管理)、passwd(密码设置,-l锁定、-u解锁)、usermod(修改用户属性,如附加组-G)。
    • 权限控制:文件权限(rwx读 / 写 / 执行,数字表示755/644)、目录权限(x权限决定是否可进入)、特殊权限(SUID:执行时获所有者权限,如passwd;SGID:继承组权限;Sticky Bit:仅所有者删文件,如/tmp)、ACL 权限(setfacl/getfacl,精细控制单个用户权限)。

二、系统核心运维操作

该模块是日常运维的 “高频工作区”,覆盖系统资源、软件、存储、网络的核心管理能力。

  1. 进程与资源管理
    • 进程监控:psps aux查看所有进程、ps -ef查看进程树)、top/htop(实时监控 CPU / 内存 / 进程占用,排序与筛选)、pstree(进程树展示父进程关系)。
    • 进程控制:kill(发送信号,-9强制终止、-15正常终止)、killall(按进程名批量终止)、pkill(按条件筛选终止,如pkill -u test终止 test 用户进程)。
    • 资源限制:ulimit(临时设置进程资源上限,如ulimit -n 65535调整最大文件句柄数)、/etc/security/limits.conf(永久配置用户 / 进程资源限制)。
  2. 软件与包管理
    • RPM/YUM 管理(CentOS/RHEL):rpm -ivh(安装)、rpm -e(卸载)、rpm -qa(查询已装包);yum install/yum remove(自动解决依赖)、yum makecache(生成缓存)、yum repo-list(查看仓库)、自定义 YUM 源(本地 ISO 挂载或内网仓库)。
    • DPKG/APT 管理(Ubuntu/Debian):dpkg -i(安装)、dpkg -r(卸载);apt update(更新仓库索引)、apt install(安装带依赖)、apt autoremove(清理无用依赖)。
    • 源码编译安装:流程(./configure(指定安装路径--prefix)→make(编译)→make install(安装))、依赖解决(如安装gcc/make/openssl-devel等开发包)、示例(Nginx/Redis 源码安装)。
  3. 存储与文件系统管理
    • 磁盘分区:fdisk(MBR 分区,支持≤2TB 磁盘)、parted(GPT 分区,支持>2TB 磁盘)、分区类型(主分区 / 扩展分区 / 逻辑分区)。
    • 文件系统操作:
      • 创建与挂载:mkfs(创建文件系统,如mkfs.xfs/mkfs.ext4)、mount(临时挂载,-t指定类型、-o设置选项如ro只读)、/etc/fstab(永久挂载配置,格式:设备路径 挂载点 类型 选项 0 0)。
      • 逻辑卷(LVM):动态调整磁盘空间,核心操作(pvcreate创建物理卷→vgcreate创建卷组→lvcreate创建逻辑卷→mkfs格式化→挂载)、扩展 / 缩减逻辑卷(lvextend/lvreduce+ 文件系统扩容xfs_growfs/resize2fs)。
    • 磁盘监控:smartctl(检查磁盘健康状态,smartctl -a /dev/sda)、iostat(监控磁盘 I/O 使用率,iostat -x 1每秒刷新)。
  4. 网络配置与管理
    • 网络基础配置:ip命令(替代ifconfigip addr查看网卡、ip link set eth0 up启动网卡、ip route查看路由)、/etc/sysconfig/network-scripts/ifcfg-eth0(CentOS 固定 IP 配置,BOOTPROTO=staticIPADDR/NETMASK/GATEWAY)、/etc/netplan/(Ubuntu 固定 IP 配置,YAML 格式)。
    • 网络服务与工具:
      • 服务管理:systemctl start/stop/enable/disable network(CentOS)、systemctl start/stop/enable/disable networking(Ubuntu)。
      • 网络诊断:ping(连通性测试)、traceroute/mtr(路由追踪)、telnet/nc(端口测试,nc -zv 192.168.1.1 80)、tcpdump(抓包分析,tcpdump -i eth0 port 80)、netstat/ss(查看端口占用,ss -tulnp | grep 80)。
    • 防火墙配置:firewalld(CentOS 7+,firewall-cmd --add-port=80/tcp --permanent开放端口、firewall-cmd --reload重载)、ufw(Ubuntu,ufw allow 22/tcp开放 SSH 端口)、iptables(底层防火墙规则,如iptables -A INPUT -p tcp --dport 80 -j ACCEPT)。

三、服务部署与架构运维

该模块聚焦 “业务支撑”,覆盖 Linux 环境下常见中间件、Web 服务、数据库的部署与管理,以及高可用架构设计。

  1. 常用服务部署
    • Web 服务:Nginx(编译安装 /yum 安装、配置虚拟主机、反向代理、负载均衡、SSL 证书配置)、Apache(httpd服务管理、虚拟目录配置)。
    • 中间件服务:Tomcat(JDK 依赖配置、服务启停脚本、端口修改、集群部署)、Redis(单机部署、配置文件优化、持久化(RDB/AOF)、主从复制、哨兵模式)、RabbitMQ(Erlang 依赖安装、服务启动、用户权限配置、队列管理)。
    • 数据库服务:MySQL(源码安装 /mariadb-server yum 安装、my.cnf配置优化(内存、连接数)、主从复制(基于 binlog)、权限管理(grant授权))、PostgreSQL(yum 安装、数据库创建、远程访问配置)。
    • 其他基础服务:NFS(网络文件共享,exports配置共享目录、mount -t nfs客户端挂载)、FTP(vsftpd服务,匿名用户 / 本地用户配置、权限控制)、SSH(sshd_config优化,禁用 root 登录、修改默认端口、密钥登录配置)。
  2. 高可用与集群架构
    • 双机热备(HA):Keepalived(基于 VRRP 协议,配置虚拟 IP(VIP)、主从节点切换、健康检查脚本)、Heartbeat(早期 HA 工具,资源接管配置)。
    • 负载均衡集群:LVS(Linux 虚拟服务器,三种模式:DR 直接路由、NAT 网络地址转换、TUN 隧道,结合 Keepalived 实现高可用)、Nginx Plus(商业版,支持会话保持、健康检查)。
    • 容器化与编排:Docker(安装与基础命令(pull/run/build)、镜像管理、容器网络(bridge/host)、数据卷(Volume)挂载)、Docker Compose(单主机多容器编排,YAML 配置文件)、Kubernetes 基础(Minikube 单机部署、Pod/Service/Deployment 核心资源管理)。

四、监控与故障排查

该模块是 “系统稳定性保障” 的核心,覆盖全链路监控体系搭建与常见故障的定位方法。

  1. 监控体系搭建
    • 基础监控工具:nmon(系统资源实时监控,CPU / 内存 / 磁盘 / I/O 可视化)、sar(历史资源统计,sar -u 1 5查看 CPU 使用率、sar -r查看内存)、zabbix(企业级监控,Agent 客户端部署、监控项配置(CPU / 磁盘 / 端口)、触发器与告警(邮件 / 短信)、自定义监控脚本(如应用存活检查))、Prometheus+Grafana(时序数据监控,Exporter(node_exporter/nginx_exporter)部署、 Grafana 仪表盘配置、告警规则设置)。
    • 日志监控:ELK Stack(Elasticsearch 存储日志、Logstash 收集与过滤日志(如 Nginx 访问日志)、Kibana 可视化查询)、rsyslog(日志集中收集,配置客户端发送日志到服务端)、journalctl(systemd 日志查看,journalctl -u nginx查看 Nginx 服务日志、journalctl --since "1 hour ago"查看 1 小时内日志)。
  2. 故障排查方法论
    • 故障分类与排查流程:
      • 系统类故障:无法启动(检查 GRUB 配置、/etc/fstab错误、initramfs 修复)、死机 / 卡顿(top看 CPU / 内存占用、dmesg查内核报错、vmstat看 IO 等待)。
      • 网络类故障:无法联网(ip addr看网卡状态、ping网关 / DNS、traceroute查路由中断点)、端口不通(ss看端口是否监听、firewall-cmd看防火墙规则、tcpdump抓包看请求是否到达)。
      • 服务类故障:服务启动失败(systemctl status 服务名看状态、查看服务日志定位错误(如 Nginx 日志/var/log/nginx/error.log)、依赖检查(如 Tomcat 依赖 JDK))、服务性能差(top看服务进程资源占用、iostat看 IO 瓶颈、strace跟踪系统调用(strace -p 进程ID))。
    • 核心排查工具:dmesg(内核日志,查硬件 / 驱动错误)、strace(跟踪进程系统调用,定位文件 / 权限问题)、ltrace(跟踪进程库函数调用)、gdb(调试 C/C++ 程序崩溃问题)。

五、自动化与运维工程化

该模块聚焦 “效率提升”,通过脚本、工具、平台实现运维自动化,减少重复操作,降低人为失误。

  1. Shell 脚本开发
    • 脚本实战场景:系统初始化脚本(安装基础工具、关闭 SELinux、配置防火墙、优化内核参数)、批量操作脚本(批量创建用户(结合for循环)、批量部署服务(结合sshpass免密执行)、日志清理脚本(find删除 7 天前日志)、服务监控脚本(检查服务存活,挂掉则重启并告警)。
    • 脚本规范:脚本开头#!/bin/bash、注释说明功能 / 作者 / 日期、变量定义(如LOG_PATH="/var/log")、错误处理(set -e遇到错误退出、if判断命令执行结果)。
  2. 自动化运维工具
    • 批量管理工具:Ansible(无 Agent 架构,基于 SSH,Playbook 编写(YAML 格式),实现批量安装服务、配置文件推送、命令执行,如批量部署 Nginx Playbook)、SaltStack(C/S 架构,Minion 客户端部署,State 文件定义状态,支持实时执行与定时任务)。
    • 配置管理:Puppet(C/S 架构,Manifest 文件(Ruby 语法)定义节点配置,适合大规模节点统一管理)、Chef(基于 Ruby,Cookbook 封装配置逻辑)。
  3. 系统优化与安全加固
    • 内核参数优化:/etc/sysctl.conf配置(网络优化:net.core.somaxconn=65535(最大监听队列)、net.ipv4.tcp_tw_reuse=1(复用 TIME_WAIT 连接);内存优化:vm.swappiness=10(减少 Swap 使用);文件句柄:fs.file-max=655350),配置后sysctl -p生效。
    • 安全加固:关闭不必要服务(systemctl disable postfix)、禁用 SELinux(/etc/selinux/config设为SELINUX=disabled,重启生效)、定期更新系统(yum update -y)、使用fail2ban防御 SSH 暴力破解(监控/var/log/secure,多次失败则封禁 IP)、敏感文件权限控制(chmod 600 /etc/shadowchmod 700 /root)。

六、专项场景运维

针对特定 Linux 运维场景的深度知识,覆盖云环境、大数据、安全合规等领域。

  1. 云环境 Linux 运维
    • 云服务器操作:AWS EC2/Azure VM / 阿里云 ECS(实例创建、安全组配置(对应 Linux 防火墙)、弹性 IP 绑定、云盘挂载(类似本地磁盘fdisk/mount))。
    • 云原生适配:容器镜像优化(减小镜像体积,如 Alpine 基础镜像)、云存储集成(阿里云 OSS 挂载为本地目录、AWS S3 客户端配置)、云监控集成(对接云厂商监控平台,如阿里云云监控 Agent)。
  2. 大数据与 AI 环境运维
    • 大数据组件部署:Hadoop 集群(HDFS/MapReduce/YARN,基于 Ansible 批量部署、hdfs dfsadmin管理 HDFS)、Spark 集群(Standalone/YARN 模式部署、资源配置优化)。
    • 环境依赖管理:Python 虚拟环境(virtualenv/conda)、GPU 驱动与 CUDA 安装(适配 AI 训练场景,nvidia-smi验证)。
  3. 安全合规运维
    • 日志审计:开启系统审计(auditd服务,auditctl -a exit,always -F arch=b64 -F path=/usr/bin/passwd监控 passwd 命令操作)、定期导出审计日志。
    • 合规检查:满足等保 2.0 要求(身份鉴别、访问控制、安全审计、数据备份)、使用工具(如 OpenSCAP)进行合规扫描。
赞(0) 打赏
未经允许不得转载:徐万新之路 » Linux运维知识分类体系

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册