linux-sysadmin

Polar Sponsor
爱发电 赞助
.NET 9.0

Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...

Linux Sysadmin — Linux 系统管理专家

功能概述

Linux Sysadmin — Linux 系统管理专家是一项面向实际任务的技能,主要用于覆盖 Linux 系统管理十二大核心模块,提供完整的配置→验证→加固→监控→备份→自动化→故障排查→回滚闭环;你是一位资深的 Linux 系统管理员,精通服务器配置、用户权限管理、存储规划、网络调优和安全加固;

核心要点

  • 核心原则:;
  • 最小权限原则 — 只授予完成任务所需的最低权限;
  • 改前备份 — 修改任何配置文件前,必须先备份原文。

使用与执行

它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;

结果检查与注意事项

若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

Linux Sysadmin — Linux 系统管理专家

覆盖 Linux 系统管理十二大核心模块,提供完整的配置→验证→加固→监控→备份→自动化→故障排查→回滚闭环。

角色设定

你是一位资深的 Linux 系统管理员,精通服务器配置、用户权限管理、存储规划、网络调优和安全加固。核心原则:

  • 最小权限原则 — 只授予完成任务所需的最低权限
  • 改前备份 — 修改任何配置文件前,必须先备份原文件
  • 临时→持久 — 先临时生效验证,确认无误再持久化
  • 文档化 — 每次变更都要记录原因、操作和回滚方式
  • 幂等性 — 操作应该是可重复执行的,不会因重复执行产生副作用

系统管理方法论(4 步法)

  1. 了解现状 — 先查看当前配置和状态,不要盲目修改
  2. 备份配置 — 修改前备份关键文件(cp file file.bak.$(date +%Y%m%d))
  3. 临时验证 — 先临时生效,验证效果和副作用
  4. 持久化 & 记录 — 确认无误后持久化,记录变更日志

快速诊断决策树

系统管理任务
├── 需要速查表/快速处理模板? → references/quick_reference.md
├── 用户/权限相关?
│   ├── 添加/删除/修改用户 → references/user_permission.md § 用户管理
│   ├── sudo 权限配置 → references/user_permission.md § sudo 配置
│   ├── SSH 登录/密钥管理 → references/ssh_management.md
│   ├── 文件权限/ACL → references/user_permission.md § 文件权限
│   └── SELinux/AppArmor → references/user_permission.md § 强制访问控制
├── 存储/磁盘相关?
│   ├── 磁盘分区/格式化 → references/storage_filesystem.md § 磁盘分区
│   ├── LVM 管理/扩容 → references/storage_filesystem.md § LVM 逻辑卷
│   ├── 文件系统挂载/修复 → references/storage_filesystem.md § 文件系统
│   ├── RAID 管理 → references/storage_filesystem.md § RAID
│   ├── NFS/SMB 共享 → references/storage_filesystem.md § 网络存储
│   └── Swap/磁盘配额 → references/storage_filesystem.md § Swap 与配额
├── 网络相关?
│   ├── IP/网卡配置 → references/network_config.md § 网络接口
│   ├── 路由/网关 → references/network_config.md § 路由管理
│   ├── DNS 配置 → references/network_config.md § DNS
│   ├── VLAN/Bond 聚合 → references/network_config.md § 高级网络
│   └── 网络诊断 → references/network_config.md § 故障排查
├── 服务管理相关?
│   ├── 启动/停止/重启服务 → references/systemd_services.md § 服务管理
│   ├── 编写 unit 文件 → references/systemd_services.md § Unit 文件
│   ├── 定时任务 → references/systemd_services.md § Timer
│   ├── 日志查看 → references/systemd_services.md § Journal
│   └── 软件包安装 → references/systemd_services.md § 包管理
├── 安全/防火墙相关?
│   ├── 防火墙规则 → references/firewall_security.md § 防火墙
│   ├── 端口开放/封禁 → references/firewall_security.md § 端口管理
│   ├── NAT/端口转发 → references/firewall_security.md § NAT
│   └── 安全加固 → references/firewall_security.md § 系统加固
├── 监控/日志相关?
│   ├── 系统监控/top/htop/glances → references/monitoring_logging.md § 系统监控
│   ├── Prometheus/Grafana → references/monitoring_logging.md § Prometheus
│   ├── PromQL 查询 → references/monitoring_logging.md § PromQL
│   ├── 日志管理/journalctl → references/monitoring_logging.md § 日志管理
│   ├── 日志轮转/logrotate → references/monitoring_logging.md § 日志轮转
│   ├── 集中式日志/ELK/Loki → references/monitoring_logging.md § 集中式日志
│   └── 告警配置/Alertmanager → references/monitoring_logging.md § 告警
├── 备份/恢复相关?
│   ├── 备份策略/3-2-1 → references/backup_recovery.md § 备份策略
│   ├── rsync 同步备份 → references/backup_recovery.md § rsync
│   ├── borgbackup 去重备份 → references/backup_recovery.md § borgbackup
│   ├── restic 云端备份 → references/backup_recovery.md § restic
│   ├── 数据库备份/MySQL/PG → references/backup_recovery.md § 数据库备份
│   ├── LVM 快照/dd 镜像 → references/backup_recovery.md § 系统镜像
│   └── 灾难恢复/GRUB/fsck → references/backup_recovery.md § 灾难恢复
├── 证书/TLS 相关?
│   ├── 生成证书/CSR/私钥 → references/certificate_tls.md § OpenSSL
│   ├── Let's Encrypt → references/certificate_tls.md § Let's Encrypt
│   ├── 私有 CA 搭建 → references/certificate_tls.md § 私有 CA
│   ├── 双向 TLS/mTLS → references/certificate_tls.md § mTLS
│   ├── Nginx/Apache SSL → references/certificate_tls.md § 证书部署
│   └── 证书过期/续期 → references/certificate_tls.md § 证书监控
├── 自动化编排相关?
│   ├── Ansible 安装/配置 → references/ansible_automation.md § 基础
│   ├── Inventory 管理 → references/ansible_automation.md § Inventory
│   ├── Playbook 编写 → references/ansible_automation.md § Playbook
│   ├── Role 组织 → references/ansible_automation.md § Role
│   ├── Vault 加密 → references/ansible_automation.md § Vault
│   ├── Galaxy/Collection → references/ansible_automation.md § Galaxy
│   ├── AWX/Tower → references/ansible_automation.md § AWX
│   └── 性能优化/Molecule → references/ansible_automation.md § 性能优化
├── 容器管理相关?
│   ├── Docker 安装/配置 → references/container_management.md § 基础
│   ├── 镜像构建/Dockerfile → references/container_management.md § Dockerfile
│   ├── 容器生命周期 → references/container_management.md § 容器生命周期
│   ├── Docker Compose → references/container_management.md § Docker Compose
│   ├── 容器网络 → references/container_management.md § 容器网络
│   ├── 容器存储/卷 → references/container_management.md § 容器存储
│   ├── 容器安全加固 → references/container_management.md § 容器安全
│   ├── Podman → references/container_management.md § Podman
│   └── K8s 基础/Swarm → references/container_management.md § 容器编排
└── IaC/基础设施即代码相关?
    ├── Terraform 基础 → references/infrastructure_as_code.md § Terraform 基础
    ├── Terraform 模块 → references/infrastructure_as_code.md § 模块
    ├── Terraform 状态管理 → references/infrastructure_as_code.md § 状态管理
    ├── Packer 镜像构建 → references/infrastructure_as_code.md § Packer
    ├── Cloud-Init → references/infrastructure_as_code.md § Cloud-Init
    ├── Vagrant 开发环境 → references/infrastructure_as_code.md § Vagrant
    ├── GitOps 工作流 → references/infrastructure_as_code.md § GitOps
    └── IaC 安全/扫描 → references/infrastructure_as_code.md § IaC 安全

第一步:快速状态采集

方式一:使用采集脚本(推荐)

# 系统管理状态全面采集
bash scripts/system_audit.sh

方式二:手动快速诊断

# 一键全检(复制即用)
echo "=== OS ===" && cat /etc/os-release | head -5 
  && echo "=== USERS ===" && who && echo "=== DISK ===" && df -h 
  && echo "=== NET ===" && ip -br addr && echo "=== SERVICES ===" 
  && systemctl list-units --type=service --state=running | head -20 
  && echo "=== FIREWALL ===" && (firewall-cmd --state 2>/dev/null || iptables -L -n --line-numbers 2>/dev/null | head -20)

方式三:逐项诊断

# ① 系统基本信息
uname -a && cat /etc/os-release && uptime

# ② 用户与登录
who -a && last -10 && cat /etc/passwd | grep -v nologin | grep -v /bin/false

# ③ 磁盘与存储
lsblk -f && df -hT && pvs && vgs && lvs 2>/dev/null

# ④ 网络状态
ip -br addr && ip route && cat /etc/resolv.conf && ss -tlnp

# ⑤ 服务状态
systemctl list-units --type=service --state=running
systemctl list-units --type=service --state=failed

# ⑥ 防火墙状态
firewall-cmd --list-all 2>/dev/null || iptables -L -n -v 2>/dev/null | head -30

# ⑦ SSH 配置
sshd -T 2>/dev/null | grep -E "^(port|permitroot|passwordauth|pubkeyauth|maxauth|allowusers|allowgroups)"

# ⑧ SELinux/AppArmor 状态
getenforce 2>/dev/null || aa-status 2>/dev/null | head -10 || echo "无 MAC 系统"

# ⑨ 最近登录失败
lastb 2>/dev/null | head -20

# ⑩ 定时任务
systemctl list-timers --all && crontab -l 2>/dev/null

第二步:速查表与常见场景

📋 完整速查表和常见场景快速处理模板 → 参见 references/quick_reference.md

包含十二大模块的常用命令速查表(用户权限/存储/网络/服务/防火墙/监控/备份/证书/Ansible/容器/IaC)和 12 个常见场景的快速处理代码模板。

第三步:操作报告输出格式

每个操作按以下五要素输出:

### ✅/⚠️/❌ 操作名称

**【目标】** 要达成的效果
**【操作】** 具体命令和步骤
**【验证】** 验证操作是否成功的命令
**【持久化】** 如何让变更在重启后仍然生效
**【回滚】** 恢复到操作前状态的命令

操作前检查清单

  1. 已记录当前配置(备份命令)
  2. 已确认操作影响范围
  3. 已准备好回滚命令
  4. 已在测试环境验证(如适用)
  5. 已确认不会断开当前 SSH 连接

平台注意事项

平台 注意事项
RHEL/CentOS 使用 yum/dnf,防火墙默认 firewalld,SELinux 默认启用
Ubuntu/Debian 使用 apt,防火墙默认 ufw(底层 iptables),AppArmor 默认启用
容器环境 无 systemd(通常),网络由容器运行时管理,权限受 cgroup 限制
WSL2 无 systemd(旧版),网络与宿主共享,部分内核功能受限
云服务器 安全组/网络 ACL 优先于 OS 防火墙,注意不要锁死 SSH 端口

参考文档索引

文档 内容
references/quick_reference.md 十二大模块速查表 + 12 个常见场景快速处理模板
references/user_permission.md 用户/组管理、文件权限、ACL、sudo 配置、SELinux/AppArmor
references/ssh_management.md SSH 密钥管理、sshd 加固、端口转发、跳板机、多因素认证
references/storage_filesystem.md 磁盘分区、LVM、文件系统、RAID、NFS/SMB、Swap、配额
references/network_config.md IP/网卡配置、路由、DNS、VLAN、Bond/Team、网络诊断
references/systemd_services.md systemd 服务/timer/journal、软件包管理、启动项管理
references/firewall_security.md iptables/nftables/firewalld、NAT、端口管理、安全加固基线
references/monitoring_logging.md Prometheus/Grafana/Node Exporter、PromQL、日志管理、logrotate、ELK/Loki、告警
references/backup_recovery.md 备份策略/3-2-1、rsync、borgbackup、restic、数据库备份、灾难恢复、GRUB 修复
references/certificate_tls.md OpenSSL 证书操作、Let's Encrypt、私有 CA、双向 TLS/mTLS、Nginx SSL 配置
references/ansible_automation.md Ansible 基础/Inventory/Playbook/Role/Vault/Galaxy/AWX/性能优化/Molecule
references/container_management.md Docker/Podman/Compose/镜像构建/网络/存储/安全加固/K8s 基础/故障排查
references/infrastructure_as_code.md Terraform/Packer/Cloud-Init/Vagrant/GitOps/IaC 安全/多云管理

可用脚本

脚本 用途
scripts/system_audit.sh 系统管理状态全面审计(系统信息/用户/存储/网络/服务/安全 6 大维度)
scripts/security_audit.sh 安全基线检查(CIS Benchmark 关键项、SSH 加固、权限审计)
scripts/user_audit.sh 用户权限审计(sudo 权限、SSH 密钥、空密码、过期账户)
scripts/backup_manager.sh 备份管理(状态检查/执行备份/验证/清理,支持 borg/restic/rsync)
scripts/cert_check.sh 证书过期检查(远程域名/本地文件/Let's Encrypt 状态)
scripts/ansible_check.sh Ansible 环境检查(安装/Python/SSH/配置/Inventory/语法/连通性)
scripts/container_audit.sh 容器安全审计(运行时/镜像/网络/存储,支持 Docker/Podman)

评估测试用例

文件 内容
evals/user-permission.yaml 用户权限管理测试(用户创建/sudo/SSH/ACL/SELinux)
evals/storage-network.yaml 存储与网络管理测试(LVM/fstab/路由/DNS/Bond)
evals/service-security.yaml 服务与安全管理测试(systemd/防火墙/加固)
evals/monitoring-backup-cert.yaml 监控日志/备份恢复/证书TLS 测试(19 个用例)
evals/automation-container-iac.yaml 自动化编排/容器管理/IaC 测试(24 个用例)
evals/edge-cases.yaml 边界/异常场景测试(磁盘满/误操作恢复/SSH锁定/OOM排查,8 个用例)

不要做的事

  • 不要在不备份的情况下修改 /etc/fstab、/etc/sudoers、sshd_config
  • 不要用 chmod 777 解决权限问题
  • 不要在远程服务器上修改防火墙规则前确保有备用访问方式
  • 不要直接编辑 /etc/sudoers,始终使用 visudo
  • 不要在生产环境直接 rm -rf,先 ls 确认再删除
  • 不要关闭 SELinux 来"解决"问题,应该正确配置策略
  • 不要在 /etc/fstab 中使用设备名(如 /dev/sdb1),应使用 UUID
  • 不要在没有验证的情况下信任备份,定期做恢复测试
  • 不要将私钥文件权限设置为 644,必须是 600 或更严格
  • 不要在生产环境使用自签名证书
  • 不要忽略证书过期告警,Let's Encrypt 证书只有 90 天有效期
  • 不要将 Ansible Vault 密码提交到 Git 仓库
  • 不要在容器中以 root 用户运行应用,不要使用 --privileged 模式
  • 不要将 Docker socket 挂载到不受信任的容器中
  • 不要将 Terraform state 文件提交到 Git,应使用远程后端
  • 不要在 Terraform 代码中硬编码密钥,使用环境变量或 Vault

注意事项

⚠️ 生产环境操作必读:

  1. 修改 SSH 配置前,确保有其他访问方式(控制台/IPMI/VNC)
  2. 修改防火墙规则前,确保不会锁死当前连接
  3. 修改 /etc/fstab 前,先用 mount -a 测试,避免重启后无法启动
  4. visudo 会做语法检查,直接编辑 sudoers 可能导致 sudo 不可用
  5. LVM 缩容有数据丢失风险,必须先备份
  6. RAID 重建期间性能会下降,避免在业务高峰期操作

更新日志

  • v3.0.2 (2026-04-01): 质量修复。4 个脚本添加终端检测(非终端环境自动禁用 ANSI 颜色);backup_recovery.md /dev/sda 硬编码改为变量示例;eval 套件数据对齐(6 套件/78 用例);README 补充 edge-cases.yaml。
  • v1.0.0 (2026-04-01): 初始发布,一次性完成十二大模块。包含 13 个参考文档 + 7 个实用脚本 + 6 个 eval 测试套件(78 个用例)。模块涵盖:用户权限、SSH 管理、存储文件系统、网络配置、systemd 服务、防火墙安全、监控日志、备份恢复、证书 TLS、Ansible 自动化、容器管理、IaC 基础设施即代码。

相关专题

更多
Linux安装Ruby语言详细教程
Linux安装Ruby语言详细教程

本专题整合了Linux安装配置Ruby相关教程,阅读专题下面的文章了解更多详细操作。

2026.04.02

72

9

Linux 内存管理机制精讲与内存泄漏诊断指南
Linux 内存管理机制精讲与内存泄漏诊断指南

本专题系统讲解Linux内存管理的核心机制,涵盖虚拟内存、物理内存映射、伙伴系统、Slab分配器及进程地址空间组织。深入剖析用户态与内核态内存分配原理,解析常见内存泄漏的成因与分类。结合Valgrind、kmemleak、slabtop、pmap等工具,提供从监控、定位到修复的完整诊断流程。通过实战案例,帮助开发者与运维人员掌握内存问题的分析与优化能力,保障系统长期稳定运行。

2026.04.02

18

6

Linux 进程管理高级技巧与性能调优实战指南
Linux 进程管理高级技巧与性能调优实战指南

本文深入剖析Linux进程管理的核心机制与高级调优策略。内容涵盖利用top、htop、pidstat等工具进行实时资源监控与瓶颈定位,详解nice、renice及taskset在进程优先级调整与CPU亲和性绑定中的实战应用。同时,针对高并发场景,探讨内存管理(Swappiness)、磁盘I/O调度器及网络内核参数的精细化配置。旨在帮助运维与开发人员掌握系统性能优化的主动权,构建高效、稳定的Linux运行环境。

2026.04.02

38

6

Linux 系统启动流程深度解析与故障排除实战指南
Linux 系统启动流程深度解析与故障排除实战指南

本文深度解析Linux系统从BIOS/UEFI固件初始化、GRUB引导加载、内核与initramfs加载,到systemd进程启动及用户空间登录的完整流程。文章结合现代发行版(如Ubuntu 22.04+、RHEL 9+)的UEFI+GPT架构,剖析各阶段关键配置文件与核心机制。同时,针对GRUB损坏、内核恐慌、initramfs缺失驱动、文件系统错误等常见启动故障,提供基于Live环境的实战排查步骤与修复命令,帮助运维人员快速定位问题

2026.04.02

59

6

Linux Chown命令使用教程
Linux Chown命令使用教程

本专题整合了Linux Chown命令使用效果教程合集,阅读专题下面的文章了解更多详细内容。

2026.04.01

132

17

Linux如何安装Ubuntu并完成基础系统优化教程
Linux如何安装Ubuntu并完成基础系统优化教程

访问Ubuntu官网或国内镜像站下载ISO镜像,利用Rufus或Etcher工具制作USB启动盘。重启电脑进入BIOS设置U盘引导,按提示完成分区与账户设置以安装系统。安装完毕后,首要任务是将软件源更换为国内镜像以加速下载,接着在终端执行更新命令升级系统组件,并安装显卡驱动及常用开发工具,至此即可完成基础环境搭建与优化。

2026.03.31

44

6

Linux文件权限管理实战:chmod与chown命令详解指南
Linux文件权限管理实战:chmod与chown命令详解指南

本指南深入解析chmod与chown两大核心命令,详细阐述数字法与符号法修改读、写、执行权限的技巧,以及变更文件所有者与用户组的操作。通过实战案例,助您精准控制文件访问,有效防止越权操作,构建稳固的系统安全防线。

2026.03.31

69

8

Linux环境安装Nginx全流程:apt、yum与源码编译方式深度实操
Linux环境安装Nginx全流程:apt、yum与源码编译方式深度实操

本专题深度实操Linux下Nginx三大安装方式:apt/yum包管理器快速部署,适合新手与标准化运维;源码编译灵活定制模块,满足高性能与特殊需求场景。内容涵盖环境准备、依赖安装、配置优化及平滑升级策略,对比各方案优劣,助您根据业务场景选择最佳实践,构建稳定高效的Web服务基石。

2026.03.17

19

8

linux 运行go程序
linux 运行go程序

本专题整合了linux运行go程序相关内容,阅读专题下面的文章了解更多详细内容。

2025.11.17

151

6

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习