Python Linux系统管理与自动化运维 封面

Python Linux系统管理与自动化运维

评分 4.2
章节数
12
丛书
Linux/Unix技术丛书
ISBN
9787111578659

标签

内容简介

本书是作者在网易云平台开发、数据库内核开发以及大规模系统运维工作中使用 Python 的经验总结,以 Linux 系统管理为线索、以 Python 语言为载体,讲的是如何用 Python 解决系统管理与自动化运维中遇到的各类实际问题的实战书。全书按逻辑分为五个部分、共 11 章,且每一章都可以单独成篇阅读:介绍篇(第1章)讨论 Python 的优缺点以及它为什么适合 Linux 系统管理,并给出 Python 2 与 Python 3 的选择建议;工具篇(第2章)系统讲解 pip 高级用法、vim 与 PyCharm、IPython 与 Jupyter、pdb 与 ipdb 调试、PEP 8 与 pycodestyle、autopep8 代码规范检查,以及 pyenv、virtualenv 环境管理;脚本篇(第3至第7章)依次介绍用 argparse、click、logging、ConfigParse 打造命令行工具,字符串、正则与字符集编码的文本处理及 Jinja2 模板,os.path、glob、shutil、tarfile、zipfile 等文件的读写、查找、比较与压缩包管理,借助 dstat、glances 与 /proc 目录监控 Linux 系统,以及文档与报告的生成;自动化篇(第8至第10章)讲解 Scapy 网络嗅探、Fabric 自动化运维与 Ansible 自动部署;综合案例篇(第11章)以“用 Python 打造 MySQL 数据库专家系统”为载体,串联高级语言特性与系统架构设计。书中配有 Apache 访问日志分析、重复文件查找、压缩包备份、部署 MongoDB 等大量可动手复现的案例,强调“学完就用”,可作为 Python 的进阶实战教材。

编辑推荐

市面上的 Python 书大多停在语法与算法题上,而这本《Python Linux系统管理与自动化运维》解决的是另一类痛点:会写 Python,却不知道拿它去管理服务器、写工具、搭自动化流程。作者赖明星有网易 MySQL/MongoDB 云平台与大规范系统运维的一线背景,书里的案例不是教科书式玩具,而是真实工作场景的抽象——Apache 日志分析、重复文件与 MD5 校验、压缩包备份、subprocess 调度外部命令、用 /proc 自建监控、Scapy 抓包、Fabric 与 Ansible 批量部署,读起来能明显感觉到“这是干过活的人写的”。结构上采用模块化设计,五个部分共 11 章各自独立,读者完全可以按需要跳读:今天要写命令行工具就翻第 3 章,明天要批量发版就看 Fabric 与 Ansible 两章。第 11 章以“MySQL 数据库专家系统”收官,把前面的文本处理、模板、命令行与架构设计串成一个完整项目,是从“会写脚本”迈向“会做系统”的过渡带。需要提醒的是,本书成书于 2017 年,示例以 Python 2 与 Python 3 并存时代的写法为主,部分工具(如 pycodestyle、Fabric 版本、Ansible 用法)已有更新,照着敲代码时要按当前版本文档做适配;但书中关于文件系统、/proc、subprocess、正则与文本处理的思路并未过时,方法论价值大于代码逐行复现。对于把“运维”当作职业方向的读者,这是一本性价比很高的实战过渡书。

适合谁读

适合

  • 已有 Python 语法基础、想把它用到服务器管理上的运维工程师
  • 需要通过写脚本替代重复手工操作的 Linux 系统管理员
  • 做后端开发、想补齐部署与自动化运维能力的程序员
  • 正在寻找 Python 实战案例的计算机专业高年级学生

不适合

  • 零基础、尚未学过 Python 语法的初学者,建议先补语言基础
  • 完全没有 Linux 使用经验、也不打算学习命令行的读者
  • 只关心算法、数据分析或 Web 框架开发的读者

阅读建议

  1. 不必从第 1 页读起,先按当前痛点挑章节:写工具看第 3 章,管文件看第 5 章,做部署看第 9、10 章。
  2. 每个案例都在真实机器或虚拟机上跑一遍,把书中的脚本改造成自己环境的版本,比只读代码收获更大。
  3. 书中部分工具与写法基于 2017 年前后的版本,动手前先查官方文档确认当前 API,遇到差异以新版为准。
  4. 读完前 10 章后,用第 11 章的思路把工作中的某个重复流程重写成一个小系统,作为自查练习。

出版社简介

机械工业出版社 中国 · 成立于 1950 年

机械工业出版社(China Machine Press)在科技与专业出版之外,库内图书还体现出对心理学、计算机、管理、财经与社科等方向的持续关注。心理学方面收入荣格作品及分析心理学导论,并涉及压力与健康、成瘾与疗愈等应用议题;计算机领域有《计算机程序的构造和解释(JavaScript版)》;管理与财经类包括《管理行为(原书第4版)》《不平等的代价(珍藏版)》《这次不一样:八百年金融危机史(纪念版)》;科学哲学与科学史方面则有《世界观(原书第3版)》。相关作者资源涵盖C.G.荣格、威廉·麦圭尔、索努·沙姆达萨尼、加博尔·马泰等。公开资料有限,以上仅据库内图书归纳其出版面貌。

目录

  1. 推荐序一 / 推荐序二 / 推荐序三 / 前言
  2. 第1章 Python语言与Linux系统管理(1.1 Python语言有多流行;1.2 Python为什么流行;1.3 Python的缺点;1.4 应用场景;1.5 为什么适合Linux系统管理;1.6 使用Python 2还是Python 3)
  3. 第2章 Python生态工具(2.1 内置小工具:启动下载服务器、转JSON、检查第三方库;2.2 pip高级用法;2.3 vim插件与PyCharm;2.4 IPython与jupyter;2.5 pdb与ipdb调试;2.6 PEP 8、pycodestyle与autopep8;2.7 pyenv与virtualenv)
  4. 第3章 打造命令行工具(sys.argv、stdin与fileinput、SystemExit、getpass;ConfigParser;argparse;logging;click与prompt_toolkit)
  5. 第4章 文本处理(字符串常量与函数、Apache访问日志分析、字符串格式化;正则表达式与re模块;字符集编码与Unicode;Jinja2模板生成HTML表格与XML配置)
  6. 第5章 Linux系统管理(文件读写;os.path与os模块;fnmatch、glob与os.walk查找文件;shutil高级文件处理;目录比较与MD5校验;tarfile、zipfile压缩包管理;subprocess执行外部命令;综合案例:部署MongoDB)
  7. 第6章 使用Python监控Linux系统(dstat、glances;/proc目录与进程信息;利用/proc查找被删除的文件;shell与Python监控对比)
  8. 第7章 文档与报告处理
  9. 第8章 网络嗅探工具Scapy
  10. 第9章 自动化运维工具Fabric
  11. 第10章 自动部署工具Ansible
  12. 第11章 综合案例:使用Python打造MySQL数据库专家系统

常见问题

这本书适合零基础学 Python 的人吗?
不太适合。作者在前言中明确说明,本书不是 Python 语言教程,读者需具备 Python 基础、Linux 使用经验和 SSH 基本操作;它讲的是如何把 Python 用在系统管理与运维上,因此建议先学完语言基础再读。
书里的代码是 Python 2 还是 Python 3?
书中第 1 章专门讨论了 Python 2 与 Python 3 的取舍,正文示例两者都有涉及。由于成书于 2017 年,部分写法带有过渡期特征,现在实践时应统一迁移到 Python 3 并核对新版本文档。
和网上讲 Ansible、Fabric 的教程相比有什么不同?
书中不只是罗列工具命令,而是把这些工具放回“Linux 系统管理与自动化”的完整脉络中:先讲命令行工具与文本处理等基础能力,再讲 Scapy、Fabric、Ansible,最后用 MySQL 专家系统串联,更强调自建工具与架构思路。
本书的评分和篇幅如何?
该书由机械工业出版社于 2017 年 9 月出版,ISBN 为 9787111578659,平装 412 页,豆瓣评分约 8.3 分(五十余人评价),属于 Linux/Unix 技术丛书。

读者评论

查询本书

本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。

同一作者

同类高分