《UNIX/Linux系统管理技术手册-读书笔记-第一章
1. 本书定位与管理员角色总览
| 知识内容 |
作用/任务 |
| 指南手册:讲解主要管理系统、差异、协作方式,提供流行方案优劣对比。 |
帮助您在众多技术选项中做出适合自己环境的决策。 |
快速参考:汇总日常命令常用组合(如ps的常用选项)。 |
避免记忆海量参数,直接查阅高效用法。 |
| 企业级管理:侧重云、分布式、安全、灾难恢复等规模化场景。 |
应对病毒、网络分区、恶意攻击,保证业务连续性。 |
2. 系统管理员核心任务(13项)
| 任务 |
是什么 |
能做什么 |
| 控制访问 |
管理用户账户(创建/删除/密码重置),可集成目录服务自动化。 |
确保合法用户访问,回收离职权限,维护身份管理。 |
| 添加硬件 |
物理/云环境中的硬件识别、驱动配置、外部存储阵列等。 |
让操作系统正确识别并使用新硬件资源。 |
| 任务自动化 |
利用脚本和自动化工具替代重复、耗时操作。 |
提升效率、减少人为错误、快速响应需求变化。 |
| 监督备份 |
制定备份策略,定期执行并测试恢复。 |
灾难发生时能完整、及时地恢复数据。 |
| 软件安装与升级 |
选择、安装、配置软件,处理补丁和安全更新,实现持续交付。 |
保持系统功能最新且稳定,交付内部开发版本。 |
| 监控 |
主动检测服务响应、日志分析、资源可用性(如磁盘)。 |
在用户投诉前发现并修复问题,保障SLA。 |
| 排错 |
诊断各类故障,必要时协调专家。 |
定位问题根源(通常比解决更具挑战)。 |
| 维护本地文档 |
记录决策、配置、网络拓扑等。 |
方便团队协作,避免半夜逆向工程。 |
| 警惕系统安全 |
实现安全策略、审计、入侵检测。 |
作为第一道防线,保护系统免受破坏。 |
| 性能调优 |
根据工作负载调整内核/应用参数。 |
使服务器发挥最佳性能,满足业务需求。 |
| 制定场地策略 |
制定合规的使用、数据保留、隐私策略。 |
满足法律要求,同时促进生产。 |
| 同供应商打交道 |
选择云/软件/咨询等第三方,参与合同谈判。 |
确保外部服务与内部需求匹配,成本可控。 |
| 乐于助人 |
处理各类用户问题(即便非职责范围)。 |
提升个人价值与团队评价,实际技能之外的重要软技能。 |
3. 建议的知识背景与必备工具
| 知识/工具 |
是什么 |
能做什么 |
| 命令行 |
系统管理的主要交互界面,GUI工具尚不完备。 |
执行几乎所有管理操作,是必会技能。 |
| vi/vim |
标准文本编辑器,增强版vim。 |
高效编辑配置文件、脚本(vimtutor快速入门)。 |
| nano |
简单易用的初学者编辑器。 |
应急编辑,但专业环境慎用(有失水准)。 |
| 脚本语言 |
Bash、Python、Ruby、Expect等。 |
自动化任务、胶合工具、复杂逻辑处理。 Bash用于简易粘合;Python/Ruby用于结构化脚本;Expect用于交互式程序驱动。 |
| 正则表达式 |
文本匹配模式。 |
日志分析、数据处理、搜索替换等。 |
4. Linux发行版概览与选择
| 发行版 |
特点 |
适用场景 |
| Debian |
非商业,社区驱动,三条支线(稳定/测试/不稳定)。 |
追求自由、稳定、长期支持的生产环境。 |
| Ubuntu |
基于Debian,商业支持(Canonical),LTS版5年维护。 |
桌面、云、服务器,偶数年4月LTS推荐生产。 |
| RHEL |
商业发行,需授权,技术支持完善。 |
大型企业关键业务,需厂商保障。 |
| CentOS |
RHEL免费克隆(二进制兼容)。 |
无预算但想用RHEL生态,或作非生产测试。 |
| Fedora |
RHEL上游测试平台,社区驱动。 |
尝鲜新技术,不适合生产。 |
| CoreOS |
最小化容器化发行版,所有软件跑在容器中。 |
微服务、Kubernetes集群。 |
| Arch |
滚动更新,面向高级用户。 |
定制化、学习最新内核。 |
| openSUSE |
SUSE Linux Enterprise的免费版。 |
欧洲常见,企业级备份。 |
| FreeBSD |
完整操作系统(非仅内核),BSD许可。 |
网络设备、高性能、安全敏感环境(如WhatsApp、Netflix)。 |
选择考量:5年后是否存续?安全补丁及时性?社区活跃度?商业支持费用?
5. 文档资源体系
| 资源类型 |
是什么 |
能做什么 |
| man手册页 |
命令、文件格式、系统调用等的联机文档,分为9节。 |
man command查用法;man -k keyword搜索;man section title指定节。 |
| 系统指南 |
各发行版官方管理手册(如Debian管理员手册、FreeBSD Handbook)。 |
系统级配置与安装指南。 |
| 软件包文档 |
项目自带的README、白皮书、邮件列表、IRC。 |
特定配置问题与Bug排查。 |
| 图书 |
O’Reilly等出版社的专著。 |
系统性深入学习。 |
| RFC |
Internet协议和规程标准文档。 |
权威参考,理解协议细节。 |
| 搜索引擎与会议 |
Google、LISA、DefCon等。 |
快速查找未知问题,结识同行,跟踪趋势。 |
6. 软件安装与管理精要
| 操作 |
是什么 |
命令示例 |
| 判断命令是否存在 |
搜索PATH中的可执行文件。 |
which gcc |
| 查找文件位置 |
更大范围搜索系统目录。 |
whereis httpd |
| 定位任何文件 |
基于预编译数据库快速匹配。 |
locate signal.h(数据库由updatedb定期更新) |
| 查询已安装包(RPM系) |
检查包是否安装,或文件所属包。 |
rpm -q python
rpm -qf /etc/httpd |
| 查询已安装包(Debian系) |
dpkg查询。 |
dpkg-query -S /etc/apache2 |
| 查询已安装包(FreeBSD) |
pkg查询。 |
pkg which /usr/local/sbin/httpd |
| 安装新包(Debian/Ubuntu) |
APT高级包工具,从仓库获取。 |
sudo apt-get install tcpdump |
| 安装新包(RHEL/CentOS) |
yum(或dnf)。 |
sudo yum install tcpdump |
| 安装新包(FreeBSD) |
pkg。 |
sudo pkg install tcpdump |
| 从源代码构建 |
下载源码,./configure、make、make install。 |
无预编译包时,或需定制编译选项。 |
| Web脚本安装 |
使用curl/wget下载并执行安装脚本。 |
快速部署如Salt、RVM;注意HTTPS安全性,建议先存为文件再执行。 |
原则:优先使用系统自带包管理器,便于跟踪、升级和卸载;源码安装前阅读INSTALL/README。
7. 托管选择与团队角色
| 类别 |
是什么 |
作用 |
| 公有云(AWS/GCP/DigitalOcean) |
按需付费的计算资源,免硬件运维,内置高可用服务。 |
适合新项目,低成本快速启动,弹性扩展。 |
| 私有数据中心 |
自建物理环境。 |
大型企业合规、数据主权需求。 |
| DevOps |
文化/哲学,促进开发与运维融合,自动化交付。 |
缩短部署周期,提升效率。 |
| SRE(网站可靠性工程师) |
专注可用性、监控、故障响应、容量规划。 |
保障服务稳定运行。 |
| 安全运维工程师 |
运行安全工具,模拟攻击,监控威胁。 |
日常安全防护与审计。 |
| 网络管理员 |
设计、配置、运维物理网络设备。 |
数据中心网络互联。 |
| DBA(数据库管理员) |
安装、调优、备份恢复数据库,设计模式。 |
保障数据层性能与可靠。 |
| NOC工程师 |
实时监控大屏,处理工单与突发事件。 |
快速响应告警,协调团队。 |
| 数据中心技术员 |
服务器上架、布线、电源、硬件生命周期。 |
物理基础设施维护。 |
| 架构师 |
分布式系统设计,消除单点,规划增长。 |
技术决策与全局蓝图。 |
8. 单位与约定快速备忘
| 概念 |
说明 |
| IEC单位(KiB, MiB, GiB) |
2的幂,明确无歧义(如1 MiB = 1,048,576 B)。 |
| 十进制单位(kB, MB, GB) |
10的幂(如1 MB = 1,000,000 B),用于网络带宽、磁盘容量等。 |
| 命令语法约定 |
[ ]可选,...可重复,{ | }多选一。 |
| shell通配符 |
*任意字符,?单字符,~家目录,~user用户家目录。 |