Linux使用和管理指南:从云原生到可观测性
Michael Hausenblas
王浩然, 孟博 译
出版时间:2024年05月
页数:221
“作为当年的老牌Linux发行版维护者,我可以证明云原生技术的兴起改变了大多数开发人员与Linux系统的交互方式。我强烈推荐Michael的这本书,它带领开发人员学习从容器到eBPF等各种现代Linux技术。”
-Chris AniszczykCloud Native Computing Foundation (CNCF)的CTO

如果你在开发或操作中使用Linux,并且需要一种结构化的方法来帮助你深入学习,那么本书就是为你准备的。作者Michae Hausenblas还提供了使用这一开源操作系统改进工作流程的技巧和窍门。无论你是开发人员、软件架构师还是站点可靠性工程师,本书都将帮助你使用Linux满足从开发到办公任务的日常需求。
在学习过程中,你将获得使用现代Linux终端和shell的实践经验,并学会如何管理工作负载。你将了解如何通过使用容器、systemd、现代文件系统和不可变发行版(如Flatcar和Bottlerocket)来运行Linux应用程序。
通过学习本书,你将:
● 将Linux作为现代工作环境来使用,而不仅仅是从管理员的角度来使用。
● 学习Linux内核、终端多路复用器、人性化shell和可移植shell脚本等关键组件。
● 熟悉从文件权限到功能的访问控制,了解文件系统作为基本构建块的作用。
● 了解应用程序依赖管理和容器。
● 获得Linux网络栈和工具(包括DNS)的实践经验。
● 应用现代操作系统的可观测性来管理工作负载。
● 熟悉进程间通信、虚拟机和选定的安全主题。
  1. 前言
  2. 第1章 Linux简介
  3. 1.1 什么是现代环境
  4. 1.2 Linux故事(到目前为止)
  5. 1.3 为什么要使用操作系统
  6. 1.4 Linux发行版
  7. 1.5 资源的可见性
  8. 1.6 Linux高级概述
  9. 1.7 总结
  10. 第2章 Linux内核
  11. 2.1 Linux架构
  12. 2.2 CPU架构
  13. 2.2.1 x86架构
  14. 2.2.2 ARM架构
  15. 2.2.3 RISC-V架构
  16. 2.3 内核组件
  17. 2.3.1 进程管理
  18. 2.3.2 内存管理
  19. 2.3.3 网络
  20. 2.3.4 文件系统
  21. 2.3.5 设备驱动程序
  22. 2.3.6 系统调用
  23. 2.4 内核扩展
  24. 2.4.1 模块
  25. 2.4.2 一种扩展内核的现代方法:eBPF
  26. 2.5 总结
  27. 第3章 shell和脚本
  28. 3.1 基础知识
  29. 3.1.1 终端
  30. 3.1.2 shell
  31. 3.1.3 现代命令
  32. 3.1.4 常见的任务
  33. 3.2 人性化的shell
  34. 3.2.1 Fish shell
  35. 3.2.2 Z-shell
  36. 3.2.3 其他现代shell
  37. 3.2.4 我应该使用哪个shell
  38. 3.3 终端多路复用器
  39. 3.3.1 screen
  40. 3.3.2 tmux
  41. 3.3.3 其他多路复用器
  42. 3.3.4 我应该使用哪个多路复用器
  43. 3.4 脚本
  44. 3.4.1脚本基础知识
  45. 3.4.2 编写可移植的bash脚本
  46. 3.4.3 检测和测试脚本
  47. 3.4.4 端到端示例:GitHub用户信息脚本
  48. 3.5 总结
  49. 第4章 访问控制
  50. 4.1 基础知识
  51. 4.1.1 资源和所有权
  52. 4.1.2 沙盒
  53. 4.1.3 访问控制类型
  54. 4.2 用户
  55. 4.2.1 管理本地用户
  56. 4.2.2 用户集中管理
  57. 4.3 权限
  58. 4.3.1 文件权限
  59. 4.3.2 进程权限
  60. 4.4 高级权限管理
  61. 4.4.1 功能
  62. 4.4.2 seccomp配置文件
  63. 4.4.3 访问控制列表
  64. 4.5 良好实践
  65. 4.6 总结
  66. 第5章 文件系统
  67. 5.1 基础知识
  68. 5.2 虚拟文件系统
  69. 5.2.1 逻辑卷管理器
  70. 5.2.2 文件系统操作
  71. 5.2.3 常用文件系统布局
  72. 5.3 伪文件系统
  73. 5.3.1 procfs
  74. 5.3.2 sysfs
  75. 5.3.3 devfs
  76. 5.4 常规文件
  77. 5.4.1 通用文件系统
  78. 5.4.2 内存文件系统
  79. 5.4.3 写时复制文件系统
  80. 5.5 总结
  81. 第6章 应用、包管理和容器
  82. 6.1 基础知识
  83. 6.2 Linux启动过程
  84. 6.3 systemd
  85. 6.3.1 单元
  86. 6.3.2 使用systemctl 进行管理
  87. 6.3.3 使用journalctl进行监控
  88. 6.3.4 示例:scheduling greeter
  89. 6.4 Linux应用程序供应链
  90. 6.5 软件包和包管理器
  91. 6.5.1 RPM包管理器
  92. 6.5.2 Debian deb
  93. 6.5.3 特定语言的包管理器
  94. 6.6 容器
  95. 6.6.1 Linux命名空间
  96. 6.6.2 Linux cgroups
  97. 6.6.3 写时复制文件系统
  98. 6.6.4 Docker
  99. 6.6.5 其他容器工具
  100. 6.7 现代包管理器
  101. 6.8 总结
  102. 第7章 网络
  103. 7.1 基础知识
  104. 7.2 TCP/IP协议栈
  105. 7.2.1 链路层
  106. 7.2.2 互联网层
  107. 7.2.3 传输层
  108. 7.2.4 套接字
  109. 7.3 DNS
  110. 7.3.1 DNS记录
  111. 7.3.2 DNS查询
  112. 7.4 应用层网络
  113. 7.4.1 万维网
  114. 7.4.2 安全外壳
  115. 7.4.3 文件传输
  116. 7.4.4 网络文件系统
  117. 7.4.5 与Windows共享
  118. 7.5 高级网络主题
  119. 7.5.1 whois
  120. 7.5.2 动态主机配置协议
  121. 7.5.3 网络时间协议
  122. 7.5.4 wireshark和tshark
  123. 7.5.5 其他高级工具
  124. 7.6 总结
  125. 第8章 可观测性
  126. 8.1 基础知识
  127. 8.1.1 可观测性策略
  128. 8.1.2 术语
  129. 8.1.3 信号类型
  130. 8.2 日志
  131. 8.2.1 Syslog
  132. 8.2.2 journalctl
  133. 8.3 监控
  134. 8.3.1 设备I/O和网络接口
  135. 8.3.2 集成的性能监视器
  136. 8.3.3 工具化
  137. 8.4 高级可观测性
  138. 8.4.1 追踪和剖析
  139. 8.4.2 Prometheus和Grafana
  140. 8.5 总结
  141. 第9章 进阶主题
  142. 9.1 进程间通信
  143. 9.1.1 信号
  144. 9.1.2 命名管道
  145. 9.1.3 UNIX域套接字
  146. 9.2 虚拟机
  147. 9.2.1 基于内核的虚拟机
  148. 9.2.2 Firecracker
  149. 9.3 现代Linux发行版
  150. 9.3.1 Red Hat Enterprise Linux CoreOS
  151. 9.3.2 Flatcar Container Linux
  152. 9.3.3 Bottlerocket
  153. 9.3.4 RancherOS
  154. 9.4 精选安全主题
  155. 9.4.1 Kerberos
  156. 9.4.2 可插拔认证模块
  157. 9.5 其他现代和未来产品
  158. 9.5.1 NixOS
  159. 9.5.2 桌面上的Linux
  160. 9.5.3 嵌入式系统上的Linux
  161. 9.5.4 云IDE中的Linux
  162. 9.6 总结
  163. 附录A 有用的解决方案
  164. 附录B 现代Linux工具
书名:Linux使用和管理指南:从云原生到可观测性
作者:Michael Hausenblas
译者:王浩然, 孟博 译
国内出版社:机械工业出版社
出版时间:2024年05月
页数:221
书号:978-7-111-75533-3
原版书书名:Learning Modern Linux
原版书出版商:O'Reilly Media
Michael Hausenblas
 
Michael Hausenblas是Go、Kubernetes和Red Hat的OpenShift的先驱开发者,他帮助AppOps构建和运行分布式服务。他有大规模数据处理和容器编排的背景,他在W3C和IETF的倡导和标准化方面有着丰富的经验。在Red Hat之前,Michael曾在Mesosphere、MapR以及爱尔兰和奥地利的两个研究机构工作。他贡献开源软件(主要是使用Go),博客,并经常活跃在Twitter上。

Michael是Amazon Web Service容器开发领域的倡导者。
 
 
购买选项
定价:89.00元
书号:978-7-111-75533-3
出版社:机械工业出版社