Linux运维最佳实践

Linux运维最佳实践 pdf epub mobi txt 电子书 下载 2025

胥峰,杨俊俊 著
图书标签:
  • Linux
  • 运维
  • 最佳实践
  • 系统管理
  • 服务器
  • 自动化
  • Shell
  • 性能优化
  • 安全
  • 排错
  • Docker
  • Kubernetes
想要找书就要到 图书大百科
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 机械工业出版社
ISBN:9787111545682
版次:1
商品编码:12025874
品牌:机工出版
包装:平装
丛书名: Linux/Unix技术丛书
开本:16开
出版时间:2016-09-01
用纸:胶版纸

具体描述

产品特色


编辑推荐

盛大游戏拥有超过10年运维经验资深专家撰写,高效运维、云技术实践等有影响力社区,以及盛大、腾讯、金山多位运营专家联袂推荐

技术层面:4大运维方向、21种运维技术,105个*佳实践;

思想层面:构建运维服务体系,培养运维格局,掌握解决疑难运维问题的思想方法


内容简介

  本书是运维领域的璀璨明珠,是一本有思想的运维技术干货集!

  技术层面,作者从高性能网站架构、服务器安全和监控、网络分析、自动化运维和游戏运维4个方向,梳理和总结了105个棘手的运维难题,结合自己10余年的工作经验,对这些问题给出了经过实践检验的解决方案,可直接应用到生产环境中。除解决方案外,还详细讲解了每个问题背后涉及的技术原理(共涉及21种技术)。

  思想层面,本书不仅有作者对运维服务体系的深度思考,而且还有作者的主动运维思维和宏观的运维格局,更有作者解决具体运维问题的思维方法。

  通过本书,不仅能解决具体的技术难题,提高工作效率,而且还能增强技术功底,提升工作能力。更重要的是,它能让我们明白,技术不是运维的终追求,思想才是运维人员应该毕生修炼的目标!

  具体内容方面,本书分为四大部分:

  第一篇(第1-9章),高性能网站构建。这部分对构建高性能网站所需要的各个技术方面做详尽说明,涵盖域名、CDN、负载均衡、网站部署和数据库技术等的实践。

  第二篇(第10-13章),服务器安全和监控。业务架构起来了,如何保证它的安全性和稳定性,成为我们需要关注的焦点。这部分解决2个问题,一是加固服务器,使其避免轻易成为黑客的肉鸡;二是监控,使故障在成为有重大影响的事件前就被预警和处理。

  第三篇(第14-16章),网络分析技术。这部分给出在Linux运维领域中的网络分析方法论。通过这部分的学习,我们将在遇到未知的网络服务问题时,能够参照本书中的方法论实施分析,从而解决问题。

  第四篇(第17-21章),运维自动化和游戏运维。随着服务器规模的剧增,再使用一台台登录服务器的方法来管理运维将成为效率的瓶颈。这一部分给出我们的运维自动化实践方案,从开源实现到自主开发,互相补充,互相提升,真正实现适合自己的运维自动化体系。游戏运维部分将对端游和手游这两大目前热点的游戏运维主题进行说明。??


作者简介

  胥峰,

  资深运维专家,有10年运维经验,在业界颇具威望和影响力。2011年加入盛大游戏,工作至今,曾参与盛大游戏多款大型端游和手游的运维,主导运维自动化平台的功能设计和实施。通过公众号“运维技术实践”发布 “网络分析技术实践”系列主题技术文章,引发万人阅读转发。拥有工信部认证高级信息系统项目管理师资格。


  杨俊俊,

  资深Linux系统专家,目前就职于盛大游戏,担任盛大游戏“G云”运维负责人。具有多年Linux运维开发经验,精通KVM虚拟化、Linux监控及运维自动化管理。《深度实践KVM》作者之一。

精彩书评

  胥峰是盛大游戏技术保障中心运维方面的“镇海之宝”,每年的游戏大节点上线,一些疑难杂症,都是由他解决的。由他坐镇的大项目,我会淡定很多,这与他扎实的技术底蕴、丰富的实操能力以及宏观的格局是分不开的。

  现在他把这几年沉淀下来的经验无私分享出来,结合他多年的实践和思考的积累,可以说干货满满,诚意多多。作为技保中心运维部门第三位出书人(前两位分别是《深度实践KVM》的作者肖力和杨俊俊),我希望技保中心以后有更多牛人出书,分享更多经验,和G云一起,为业内同行提供更好的服务和知识传递。

  —— 陈桂新 盛大游戏技术保障中心总监


  本书是一本不可多得的运维宝典。它囊括高性能网站构建、服务器安全与监控、网络分析、运维自动化、游戏运维等丰富且实用的内容。本书内容源自作者多年运维工作实践,以及带领团队攻克多个重点运维难题的经验,凝聚了作者对运维服务体系的深度思考与技术应用的精妙心得。我十分有幸曾与胥峰一起合作共事,深知胥峰雄厚的运维技术能力、杰出的解决问题的思路与方法,以及在运维领域所取得卓越成果。阅读本书,除将收获饱含实战性的运维干货外,更为重要的是,将领悟到极具价值的、由点及面的主动运维思维。强烈推荐从事运维工作的同学珍藏。  

  —— 熊普江 腾讯公司架构师


  运维是门手艺活,既需要多年磨砺,也讲究学习技巧。通过吸收别人磨砺出的精华知识,转为自身的技术能力,是一个非常好的学习技巧。

  运维体系是承载业务的大船,运维团队既要修建这艘船,也要驾驶航行这艘船。作为运维人员,面对运维体系建设和日常业务支撑的要求,既需要非常全面和体系化的知识储备,也需要非常深入和灵活快速的实践能力。胥峰同学经过多年的学习和实践,成了Linux运维的卖油翁。文以载道,无论是理论知识,还是实践经验,通过本书进行记录和传播,是一件非常有价值的事情。

  十几年前,我也曾出版过一本Linux教程类的书籍,深知编著书籍的不易。感谢胥峰同学的努力和毫不藏私,奉献出这么好的一部书。

  —— 马凯 微鲸科技副总裁


  和胥峰在盛大游戏共事多年,跟胥峰学到许多系统方面的知识,更佩服的是胥峰解决问题时思路之开阔、方法之简洁。从盛大游戏离职之后,一直为失去和胥峰当面学习的机会而遗憾。《Linux运维*佳实践》这本书修补了我这方面的遗憾。本书是胥峰多年运维经验的总结,涉及Web、数据库、网络、监控、运维自动化等多个运维层面,每个层面都是干货满满,足见作者兴趣广泛、功力深厚。相信许多运维工程师以后会和我一样,将这本书当作案头书,经常阅读,不断汲取精华。                   

  —— 肖力 《深度实践KVM》作者

目录

前言

第1篇 高性能网站构建

第1章 深入理解DNS原理与部署

BIND2

最佳实践1:禁用权威域名服务器递归

查询2

DNS的组成部分2

域名服务器的分类3

递归查询与迭代查询的区别5

禁用递归查询的原因与方法6

最佳实践2:构建域名解析缓存6

域名解析缓存的必要性6

NSCD安装配置方法6

域名解析缓存验证7

最佳实践3:配置chroot加固BIND8

最佳实践4:利用BIND实现简单负载

均衡9

最佳实践5:详解BIND视图技术及

优化10

BIND视图工作原理10

BIND视图优化技巧12

最佳实践6:关注BIND的漏洞信息12

最佳实践7:掌握BIND监控技巧13

本章小结13

第2章 全面解析CDN技术与实战14

最佳实践8:架构典型CDN系统14

最佳实践9:理解HTTP协议中的缓存

控制:服务器端缓存控制头部信息16

最佳实践10:配置和优化Squid 18

推荐使用大内存服务器18

推荐每个磁盘独立使用18

禁用atime更新19

配置Squid多实例19

使用URL哈希方法对Squid多实例

进行调度19

禁用缓存间通信协议19

架构二级缓存19

使用Squid Manager获取运行状态20

优化HTTP Range 20

最佳实践11:优化缓存防盗链21

Key的组成21

校验过程21

实施过程22

重定向器22

最佳实践12:实践视频点播CDN23

系统模块分类23

用户访问流程23

同步源站服务器24

视频源站服务器25

视频转发服务器26

缓存服务器28

最佳实践13:设计大规模下载调度

系统30

本章小结31

第3章 负载均衡和高可用技术32

最佳实践14:数据链路层负载均衡33

链路层负载均衡的必要性33

Linux Bonding配置过程34

最佳实践15:4层负载均衡38

4层负载均衡的数据格式38

4层负载均衡的时序图39

最佳实践16:7层负载均衡40

7层负载均衡的数据格式40

7层负载均衡的时序图40

最佳实践17:基于DNS的负载均衡41

最佳实践18:基于重定向的负载均衡43

下载系统HTTP 302重定向43

上传系统的重定向方法44

最佳实践19:基于客户端的负载均衡45

哈希方法45

数据库读写分离46

最佳实践20:高可用技术推荐47

本章小结47

第4章 配置及调优LVS48

最佳实践21:模式选择49

LVS-NAT49

LVS-DR49

LVS-Tun53

3种模式对比与推荐53

最佳实践22:LVS+Keepalived实战

精讲53

LVS+Keepalived配置过程详解53

LVS重要参数56

LVS-DR模式的核心提示与优化57

最佳实践23:多组LVS设定注意事项58

最佳实践24:注意网卡参数与MTU

问题58

MTU的原理58

案例解析59

最佳实践25:LVS监控要点64

性能采集64

可用性监控64

最佳实践26:LVS排错步骤推荐64

本章小结66

第5章 使用HAProxy实现4层和

7层代理67

最佳实践27:安装与优化67

HAProxy TCP负载均衡68

HAProxy HTTP负载均衡69

HAProxy的核心配置参数71

HAProxy的会话保持机制72

HAProxy中ip_local_port_range问题73

HAProxy后端服务器获取客户端IP73

TCP负载均衡和HTTP负载均衡的

对比74

最佳实践28:HAProxy+Keepalived

实战75

最佳实践29:HAProxy监控76

性能采集76

可用性监控76

最佳实践30:HAProxy排错步骤推荐77

本章小结77

第6章 实践Nginx的反向代理和

负载均衡78

最佳实践31:安装与优化79

Nginx的核心配置参数81

Nginx负载均衡算法81

Nginx Proxy协议的选择81

Nginx中ip_local_port_range问题86

Nginx被代理的后端服务器获取客户

端IP86

最佳实践32:Nginx监控86

性能采集86

可用性监控87

最佳实践33:Nginx排错步骤推荐88

最佳实践34:Nginx常见问题的处理

方法88

本章小结89

第7章 部署商业负载均衡设备

NetScaler90

最佳实践35:NetScaler的初始化设置90

NetScaler中各种用途的IP概念90

NetScaler初始化的步骤91

最佳实践36:NetScaler基本负载均衡

核心参数配置94

最佳实践37:NetScaler内容交换核心

参数配置96

NetScaler被代理的后端服务器获取

客户端IP98

最佳实践38:NetScaler的Weblog配置

与解析98

最佳实践39:NetScaler高级运维指南99

最佳实践40:NetScaler监控104

ns.log监控104

性能采集106

最佳实践41:NetScaler排错步骤

推荐106

最佳实践42:NetScaler Surge Protection

引起的问题案例107

最佳实践43:LVS、HAProxy、Nginx、

NetScaler的大对比108

最佳实践44:中小型网站负载均衡方案

推荐109

本章小结109

第8章 配置高性能网站110

最佳实践45:深入理解HTTP协议110

HTTP协议通信的网络模型111

一次HTTP请求的详细分析112

最佳实践46:配置高性能静态网站114

缓存配置方法115

压缩配置方法115

防盗链的配置方法116

图片剪裁的方法116

减少Cookie携带117

实现静态文件的安全下载117

使用ngx_http_secure_link_module模块

的配置方法117

使用Nginx中的X-Accel-Redirect控制

头部118

使用CDN加速用户访问119

最佳实践47:配置高性能动态网站119

PHP-FPM优化119

Tomcat优化120

最佳实践48:配置多维度网站监控121

日志监控122

可用性监控124

性能监控124

本章小结125

第9章 优化MySQL数据库126

最佳实践49:MySQL配置项优化126

最佳实践50:使用主从复制扩展读写

能力127

主从复制监控的方法128

主从复制失败的原因分析128

最佳实践51:使用MHA构建高可用

MySQL131

本章小结132

第2篇 服务器安全和监控

第10章 构建企业级虚拟专用网络134

最佳实践52:常见的VPN构建技术134

PPTP VPN的原理135

IPSec VPN的原理135

SSL/TLS VPN的原理135

3种VPN构建技术的对比136

最佳实践53:深入理解OpenVPN的

特性136

最佳实践54:使用OpenVPN创建Peer-

to-Peer的VPN136

Linux tun设备精讲139

最佳实践55:使用OpenVPN创建Remote

Access的VPN141

最佳实践56:使用OpenVPN创建Site-

to-Site的VPN148

最佳实践57:回收客户端的证书149

最佳实践58:使用OpenVPN提供的

各种script功能150

最佳实践59:OpenVPN的排错步骤151

本章小结154

第11章 实施Linux系统安全策略与

入侵检测156

最佳实践60:物理层安全措施156

最佳实践61:网络层安全措施157

使用Linux的iptables限制网络访问158

使用Windows Server 2003 Enterprise的

ipsecpol限制网络访问159

使用Windows Server 2008 Enterprise的

netsh advfirewall限制网络访问159

使用FreeBSD的IPFW限制网络访问161

使用Cisco IOS的ACL限制网络访问162

端口扫描的重要性162

分布式DDOS的防护163

最佳实践62:应用层安全措施165

密码安全策略165

SSHD安全配置166

Web服务器安全168

数据库安全策略171

BIND安全配置171

最佳实践63:入侵检测系统配置171

最佳实践64:Linux备份与安全180

备份与安全的关系180

数据备份的注意事项180

数据恢复测试180

本章小结180

第12章 实践Zabbix自定义模板

技术181

最佳实践65:4步完成Zabbix Server

搭建181

最佳实践66:Zabbix利器Zatree184

最佳实践67:Zabbix Agent自动注册185

最佳实践68:基于自动发现的KVM

虚拟机性能监控188

本章小结195

第13章 服务器硬件监控196

最佳实践69:服务器硬盘监控196

最佳实践70:SSD定制监控198

SSD优势与内部结构198

SSD选型198

SSD应用场景及定制监控199

最佳实践71:服务器带外监控:带外

邮件警告202

本章小结205

第3篇 网络分析技术

第14章 使用tcpdump与Wireshark

解决疑难问题208

最佳实践72:理解tcpdump的工作

原理209

tcpdump的实现机制209

tcpdump与iptables的关系210

tcpdump数据包长度超过网卡MTU的

问题210

tcpdump的简要安装步骤210

最佳实践73:学习tcpdump的5个参数

和过滤器211

学习tcpdump的5个参数211

学习tcpdump的过滤器211

最佳实践74:在Android系统上抓包的

最佳方法212

最佳实践75:使用RawCap抓取回环

端口的数据214

最佳实践76:熟悉Wireshark的最佳

配置项215

Wireshark安装过程的注意事项215

Wireshark的关键配置项216

使用追踪数据流功能218

最佳实践77:使用Wireshark分析问题

的案例219

案例一 定位时间戳问题219

解决方法220

案例二 定位非正常发包问题220

抓包方法221

分析方法222

解决方法223

最佳实践78:使用libpcap进行自动化

分析223

本章小结224

第15章 分析与解决运营商劫持

问题225

最佳实践79:深度分析运营商劫持的

技术手段225

中小运营商的网络现状225

基于下载文件的缓存劫持226

基于页面的iframe广告嵌入劫持229

基于伪造DNS响应的劫持230

网卡混杂模式与raw socket技术230

最佳实践80:在关键文件系统部署

HTTPS的实战233

HTTPS证书的获取方法233

Nginx支持HTTPS的按照方式235

Nginx配置文件示例235

本章小结235

第16章 深度实践iptables237

最佳实践81:禁用连接追踪237

排查连接追踪导致的故障237

分析连接追踪的原理239

禁用连接追踪的方法240

确认禁用连接追踪的效果243

最佳实践82:慎重禁用ICMP协议243

禁用ICMP协议导致的故障案例一则243

MTU发现的原理245

解决问题的方法247

最佳实践83:网络地址转换在实践中的

案例247

源地址NAT247

目的地址NAT248

最佳实践84:深入理解iptables各种表

和各种链248

本章小结250

第4篇 运维自动化和游戏运维

第17章 使用Kickstart完成批量

系统安装252

最佳实践85:Kickstart精要252

PXE启动过程及原理252

Kickstart创建及结构组成253

pre-installation与post-installation应用

实践256

最佳实践86:系统配置参数优化258

Web服务器中的参数优化259

DB服务器中的参数优化261

NUMA263

KVM宿主机中的参数优化265

本章小结266

第18章 利用Perl编程实施高效

运维267

最佳实践87:多进程编程技巧268

最佳实践88:调整Socket编程的超时

时间270

为什么设置Socket超时270

设置Socket超时的方法271

最佳实践89:批量管理带外配置271

带内管理与带外管理271

HP iLO的批量管理方法272

Dell iDRAC的批量管理方法273

最佳实践90:推广邮件的推送优化274

推送优化的思路与代码分析274

推广邮件的效果分析275

最佳实践91:使用PerlTidy美化

代码276

本章小结278

第19章 精通Ansible实现运维

自动化279

最佳实践92:理解Ansible280

Ansible安装及原理280

Ansible原理与架构281

Ansible配置项说明283

Inventory定义格式284

最佳实践93:学习Ansible Playbook

使用要点285

Playbook基本语法和格式285

使用Include、Roles组织Playbook287

Ansible多样的变量定义与使用法则290

最佳实践94:Ansible模块介绍及开发293

Ansible常用模块介绍293

如何开发Ansible模块294

最佳实践95:理解Ansible插件296

最佳实践96:Ansible自动化运维实例:

Ansible自动安装配置zabbix客户端298

本章小结299

第20章 掌握端游运维的技术要点300

最佳实践97:了解大型端游的技术

架构301

服务器架构设计301

服务器角色说明及通信原理303

最佳实践98:理解游戏运维体系发展

历程304

最佳实践99:自动化管理技术305

平台架构与设计原则305

平台功能划分307

最佳实践100:自动化监控技术311

最佳实践101:运维安全体系312

最佳实践102:运维服务管理体系314

最佳实践103:运维体系框架建设315

本章小结316

第21章 精通手游运维的架构体系317

最佳实践104:推荐的手游架构318

手游和端游运维的异同点318

使用HTTP协议的优点318

推荐的网络架构319

最佳实践105:手游容量规划320

机房选择320

网络带宽容量规划321

Web服务器承载能力规划321

Memcached承载能力规划322

数据库承载能力规划324前言

第1篇 高性能网站构建

第1章 深入理解DNS原理与部署

BIND2

最佳实践1:禁用权威域名服务器递归

查询2

DNS的组成部分2

域名服务器的分类3

递归查询与迭代查询的区别5

禁用递归查询的原因与方法6

最佳实践2:构建域名解析缓存6

域名解析缓存的必要性6

NSCD安装配置方法6

域名解析缓存验证7

最佳实践3:配置chroot加固BIND8

最佳实践4:利用BIND实现简单负载

均衡9

最佳实践5:详解BIND视图技术及

优化10

BIND视图工作原理10

BIND视图优化技巧12

最佳实践6:关注BIND的漏洞信息12

最佳实践7:掌握BIND监控技巧13

本章小结13

第2章 全面解析CDN技术与实战14

最佳实践8:架构典型CDN系统14

最佳实践9:理解HTTP协议中的缓存

控制:服务器端缓存控制头部信息16

最佳实践10:配置和优化Squid 18

推荐使用大内存服务器18

推荐每个磁盘独立使用18

禁用atime更新19

配置Squid多实例19

使用URL哈希方法对Squid多实例

进行调度19

禁用缓存间通信协议19

架构二级缓存19

使用Squid Manager获取运行状态20

优化HTTP Range 20

最佳实践11:优化缓存防盗链21

Key的组成21

校验过程21

实施过程22

重定向器22

最佳实践12:实践视频点播CDN23

系统模块分类23

用户访问流程23

同步源站服务器24

视频源站服务器25

视频转发服务器26

缓存服务器28

最佳实践13:设计大规模下载调度

系统30

本章小结31

第3章 负载均衡和高可用技术32

最佳实践14:数据链路层负载均衡33

链路层负载均衡的必要性33

Linux Bonding配置过程34

最佳实践15:4层负载均衡38

4层负载均衡的数据格式38

4层负载均衡的时序图39

最佳实践16:7层负载均衡40

7层负载均衡的数据格式40

7层负载均衡的时序图40

最佳实践17:基于DNS的负载均衡41

最佳实践18:基于重定向的负载均衡43

下载系统HTTP 302重定向43

上传系统的重定向方法44

最佳实践19:基于客户端的负载均衡45

哈希方法45

数据库读写分离46

最佳实践20:高可用技术推荐47

本章小结47

第4章 配置及调优LVS48

最佳实践21:模式选择49

LVS-NAT49

LVS-DR49

LVS-Tun53

3种模式对比与推荐53

最佳实践22:LVS+Keepalived实战

精讲53

LVS+Keepalived配置过程详解53

LVS重要参数56

LVS-DR模式的核心提示与优化57

最佳实践23:多组LVS设定注意事项58

最佳实践24:注意网卡参数与MTU

问题58

MTU的原理58

案例解析59

最佳实践25:LVS监控要点64

性能采集64

可用性监控64

最佳实践26:LVS排错步骤推荐64

本章小结66

第5章 使用HAProxy实现4层和

7层代理67

最佳实践27:安装与优化67

HAProxy TCP负载均衡68

HAProxy HTTP负载均衡69

HAProxy的核心配置参数71

HAProxy的会话保持机制72

HAProxy中ip_local_port_range问题73

HAProxy后端服务器获取客户端IP73

TCP负载均衡和HTTP负载均衡的

对比74

最佳实践28:HAProxy+Keepalived

实战75

最佳实践29:HAProxy监控76

性能采集76

可用性监控76

最佳实践30:HAProxy排错步骤推荐77

本章小结77

第6章 实践Nginx的反向代理和

负载均衡78

最佳实践31:安装与优化79

Nginx的核心配置参数81

Nginx负载均衡算法81

Nginx Proxy协议的选择81

Nginx中ip_local_port_range问题86

Nginx被代理的后端服务器获取客户

端IP86

最佳实践32:Nginx监控86

性能采集86

可用性监控87

最佳实践33:Nginx排错步骤推荐88

最佳实践34:Nginx常见问题的处理

方法88

本章小结89

第7章 部署商业负载均衡设备

NetScaler90

最佳实践35:NetScaler的初始化设置90

NetScaler中各种用途的IP概念90

NetScaler初始化的步骤91

最佳实践36:NetScaler基本负载均衡

核心参数配置94

最佳实践37:NetScaler内容交换核心

参数配置96

NetScaler被代理的后端服务器获取

客户端IP98

最佳实践38:NetScaler的Weblog配置

与解析98

最佳实践39:NetScaler高级运维指南99

最佳实践40:NetScaler监控104

ns.log监控104

性能采集106

最佳实践41:NetScaler排错步骤

推荐106

最佳实践42:NetScaler Surge Protection

引起的问题案例107

最佳实践43:LVS、HAProxy、Nginx、

NetScaler的大对比108

最佳实践44:中小型网站负载均衡方案

推荐109

本章小结109

第8章 配置高性能网站110

最佳实践45:深入理解HTTP协议110

HTTP协议通信的网络模型111

一次HTTP请求的详细分析112

最佳实践46:配置高性能静态网站114

缓存配置方法115

压缩配置方法115

防盗链的配置方法116

图片剪裁的方法116

减少Cookie携带117

实现静态文件的安全下载117

使用ngx_http_secure_link_module模块

的配置方法117

使用Nginx中的X-Accel-Redirect控制

头部118

使用CDN加速用户访问119

最佳实践47:配置高性能动态网站119

PHP-FPM优化119

Tomcat优化120

最佳实践48:配置多维度网站监控121

日志监控122

可用性监控124

性能监控124

本章小结125

第9章 优化MySQL数据库126

最佳实践49:MySQL配置项优化126

最佳实践50:使用主从复制扩展读写

能力127

主从复制监控的方法128

主从复制失败的原因分析128

最佳实践51:使用MHA构建高可用

MySQL131

本章小结132

第2篇 服务器安全和监控

第10章 构建企业级虚拟专用网络134

最佳实践52:常见的VPN构建技术134

PPTP VPN的原理135

IPSec VPN的原理135

SSL/TLS VPN的原理135

3种VPN构建技术的对比136

最佳实践53:深入理解OpenVPN的

特性136

最佳实践54:使用OpenVPN创建Peer-

to-Peer的VPN136

Linux tun设备精讲139

最佳实践55:使用OpenVPN创建Remote

Access的VPN141

最佳实践56:使用OpenVPN创建Site-

to-Site的VPN148

最佳实践57:回收客户端的证书149

最佳实践58:使用OpenVPN提供的

各种script功能150

最佳实践59:OpenVPN的排错步骤151

本章小结154

第11章 实施Linux系统安全策略与

入侵检测156

最佳实践60:物理层安全措施156

最佳实践61:网络层安全措施157

使用Linux的iptables限制网络访问158

使用Windows Server 2003 Enterprise的

ipsecpol限制网络访问159

使用Windows Server 2008 Enterprise的

netsh advfirewall限制网络访问159

使用FreeBSD的IPFW限制网络访问161

使用Cisco IOS的ACL限制网络访问162

端口扫描的重要性162

分布式DDOS的防护163

最佳实践62:应用层安全措施165

密码安全策略165

SSHD安全配置166

Web服务器安全168

数据库安全策略171

BIND安全配置171

最佳实践63:入侵检测系统配置171

最佳实践64:Linux备份与安全180

备份与安全的关系180

数据备份的注意事项180

数据恢复测试180

本章小结180

第12章 实践Zabbix自定义模板

技术181

最佳实践65:4步完成Zabbix Server

搭建181

最佳实践66:Zabbix利器Zatree184

最佳实践67:Zabbix Agent自动注册185

最佳实践68:基于自动发现的KVM

虚拟机性能监控188

本章小结195

第13章 服务器硬件监控196

最佳实践69:服务器硬盘监控196

最佳实践70:SSD定制监控198

SSD优势与内部结构198

SSD选型198

SSD应用场景及定制监控199

最佳实践71:服务器带外监控:带外

邮件警告202

本章小结205

第3篇 网络分析技术

第14章 使用tcpdump与Wireshark

解决疑难问题208

最佳实践72:理解tcpdump的工作

原理209

tcpdump的实现机制209

tcpdump与iptables的关系210

tcpdump数据包长度超过网卡MTU的

问题210

tcpdump的简要安装步骤210

最佳实践73:学习tcpdump的5个参数

和过滤器211

学习tcpdump的5个参数211

学习tcpdump的过滤器211

最佳实践74:在Android系统上抓包的

最佳方法212

最佳实践75:使用RawCap抓取回环

端口的数据214

最佳实践76:熟悉Wireshark的最佳

配置项215

Wireshark安装过程的注意事项215

Wireshark的关键配置项216

使用追踪数据流功能218

最佳实践77:使用Wireshark分析问题

的案例219

案例一 定位时间戳问题219

解决方法220

案例二 定位非正常发包问题220

抓包方法221

分析方法222

解决方法223

最佳实践78:使用libpcap进行自动化

分析223

本章小结224

第15章 分析与解决运营商劫持

问题225

最佳实践79:深度分析运营商劫持的

技术手段225

中小运营商的网络现状225

基于下载文件的缓存劫持226

基于页面的iframe广告嵌入劫持229

基于伪造DNS响应的劫持230

网卡混杂模式与raw socket技术230

最佳实践80:在关键文件系统部署

HTTPS的实战233

HTTPS证书的获取方法233

Nginx支持HTTPS的按照方式235

Nginx配置文件示例235

本章小结235

第16章 深度实践iptables237

最佳实践81:禁用连接追踪237

排查连接追踪导致的故障237

分析连接追踪的原理239

禁用连接追踪的方法240

确认禁用连接追踪的效果243

最佳实践82:慎重禁用ICMP协议243

禁用ICMP协议导致的故障案例一则243

MTU发现的原理245

解决问题的方法247

最佳实践83:网络地址转换在实践中的

案例247

源地址NAT247

目的地址NAT248

最佳实践84:深入理解iptables各种表

和各种链248

本章小结250

第4篇 运维自动化和游戏运维

第17章 使用Kickstart完成批量

系统安装252

最佳实践85:Kickstart精要252

PXE启动过程及原理252

Kickstart创建及结构组成253

pre-installation与post-installation应用

实践256

最佳实践86:系统配置参数优化258

Web服务器中的参数优化259

DB服务器中的参数优化261

NUMA263

KVM宿主机中的参数优化265

本章小结266

第18章 利用Perl编程实施高效

运维267

最佳实践87:多进程编程技巧268

最佳实践88:调整Socket编程的超时

时间270

为什么设置Socket超时270

设置Socket超时的方法271

最佳实践89:批量管理带外配置271

带内管理与带外管理271

HP iLO的批量管理方法272

Dell iDRAC的批量管理方法273

最佳实践90:推广邮件的推送优化274

推送优化的思路与代码分析274

推广邮件的效果分析275

最佳实践91:使用PerlTidy美化

代码276

本章小结278

第19章 精通Ansible实现运维

自动化279

最佳实践92:理解Ansible280

Ansible安装及原理280

Ansible原理与架构281

Ansible配置项说明283

Inventory定义格式284

最佳实践93:学习Ansible Playbook

使用要点285

Playbook基本语法和格式285

使用Include、Roles组织Playbook287

Ansible多样的变量定义与使用法则290

最佳实践94:Ansible模块介绍及开发293

Ansible常用模块介绍293

如何开发Ansible模块294

最佳实践95:理解Ansible插件296

最佳实践96:Ansible自动化运维实例:

Ansible自动安装配置zabbix客户端298

本章小结299

第20章 掌握端游运维的技术要点300

最佳实践97:了解大型端游的技术

架构301

服务器架构设计301

服务器角色说明及通信原理303

最佳实践98:理解游戏运维体系发展

历程304

最佳实践99:自动化管理技术305

平台架构与设计原则305

平台功能划分307

最佳实践100:自动化监控技术311

最佳实践101:运维安全体系312

最佳实践102:运维服务管理体系314

最佳实践103:运维体系框架建设315

本章小结316

第21章 精通手游运维的架构体系317

最佳实践104:推荐的手游架构318

手游和端游运维的异同点318

使用HTTP协议的优点318

推荐的网络架构319

最佳实践105:手游容量规划320

机房选择320

网络带宽容量规划321

Web服务器承载能力规划321

Memcached承载能力规划322

数据库承载能力规划324

官网论坛访问能力规划325

人数曲线接入325

本章小结325


官网论坛访问能力规划325

人数曲线接入325

本章小结325


前言/序言

  为什么要写这本书


  《论语·卫灵公》有言:“工欲善其事,必先利其器”。


  在Linux运维领域中,什么是广大系统管理员们的“利器”呢?在笔者看来,系统管理员的“利器”有3个,一个是方法论,一个是经验,最后一个是积极饱满的学习精神。


  我们面对的是一个不断变化的世界,业务需求在变,技术架构在变,开源工具与商业系统异构部署,新工具和技术概念层出不穷,唯有一套科学的技术方法论才能应对这些变化。很多时候,我们在面对新的问题时,会束手无措,这恰恰也是方法论缺失导致的结果。从事运维工作10余年来,笔者逐渐体会到在运维领域中总结一套问题排除方法论是一件至关重要和有意义的事情。在笔者的工作环境中,经常听到有工程师问:“网站访问不了了,是什么问题?”此时,笔者会把我的故障定位方法告诉他,依次实施这些方法,基本都能够有效定位并及时解决问题。笔者想,若能把这些方法论分享给初入这个行业的新手或者在这个领域中工作了多年但仍未打通“任督二脉”的人,将会是一件极有意义的事。


  经验是另一个有意思的话题。很多时候,我们对一个问题的判断,是基于以前的思考和处理方法的。有时候经验并不完全正确,但对经验的总结和归纳,却可以给我们提供新的思考方向,因为从经验中获取的知识和技能在未来也是通用的。自2006年毕业后,笔者一直从事与运维相关的工作。在笔者最开始从事的局域网内网管理工作中,笔者看到了使用ARP欺骗竟然可以让一台计算机失去网络连接,笔者看到了Andrew.S.Tanenbaum先生所著的《Computer Networks》中所讲的每个知识都活了起来。到后来,笔者加入了一家创业型的公司,全面负责公司的网站和业务运维,从每天上千次网站访问量到日PV超过千万,笔者经历了高性能网站构建、监控、安全和运维自动化等各个方面的实践,使得自己在各个层面都有了丰富的经验积累。再后来,进入盛大游戏,笔者接触到了大型端游的上线运维运营、现象级手游的发布运维,使自己又对游戏运维体系有了很多积累和总结。笔者想把这些经验都积累下来,分享给大家,让大家在考虑架构和运维体系时,既能注意宏观的层面,也能把握技术细节。通过学习书中每一个技术和体系的最佳实践,所有工程师都能得到提升。通过笔者的分享,我曾踩过的那些“坑”在大家前进的路上将被填平,并成为大家前进的基础。本书中总结的每一个最佳实践,都将是对系统稳定性和性能的一个优化。


  积极饱满的学习精神是系统管理员必备的特质,这也决定了大家的职业之路能走多远。有了方法论和经验,可以让一个人在某个时间成为某个领域的专家,但是只有不断学习,才能保持在这个领域的优势。就像驾驶一辆汽车在高速上疾驶,也许开始时一路领先,但如果没有持续加油提供动力,还是会被后面的车辆不断超越。在运维工作中,不断学习就是不断给自己的职业能力加油。在面对新概念、新技术时,仅考虑如何使用它是不够的,更多的是思考这些技术的底层原理、实现方法、技术前景预估和判断,这样才能成为不断引领这个领域进步的人。


  读者对象


  本书适合以下几类读者阅读:


  中高级运维工程师;


  Linux运维爱好者;


  计算机相关专业的学生。


  如何阅读本书


  本书分为4大部分,具体介绍如下。


  第一部分,高性能网站构建。这部分对构建高性能网站所需要的各项技术都做了详尽说明,涵盖域名、CDN、负载均衡、网站部署和数据库的相关知识和最佳技术实践。


  第二部分,服务器安全和监控。业务架构起来后,如何保证它的安全和稳定性,是大家需要关注的焦点。这部分解决两个问题:一个是加固服务器,使其避免轻易成为黑客的“肉鸡”;一个是监控,使故障在成为有重大事故前就被预警和处理。


  第三部分,网络分析技术。这部分给出Linux运维领域中的网络分析方法论。通过对这部分的学习,大家将在遇到未知的运维网络服务问题时,能够自信地按方法论实施分析,从而解决问题。


  第四部分,运维自动化和游戏运维。随着服务器规模的剧增,使用一台台登录服务器来管理、运维的方式将成为效率的瓶颈。这部分给出运维自动化实践方案,从开源实现到自主开发,互相补充,互相提升,真正实现适合自己的运维自动化体系。游戏运维,将对端游和手游这两大目前最火的游戏运维主题进行说明。


  勘误和支持


  虽然笔者试图努力保证本书不出现错误,但鉴于笔者的知识和视角,本书难免会出现用词不当、技术适用性的问题。在此,作者恳请读者不吝指教。您若发现本书存在不足之处,请发送邮件到xufengnju@163.com或者添加QQ群434242482 (Linux运维最佳实践)帮助笔者修正。另外,您还可以通过以上两种方式获得技术支持。本书的勘误将列在http://xufeng.info/errata.html中。


  致谢


  感谢盛大游戏高级总监桂总和我的领导老冯的大力支持。


  感谢力哥(《深度实践KVM》作者、西山居运维经理肖力)的引荐,使本书得以从想法到落实出版。


  感谢机械工业出版社的杨福川。福川兄出版了一系列IT技术领域的畅销书、精品书,本书能够得到福川兄的指正和帮助,是我的荣幸。


  感谢我的妻子和可爱的女儿Cary,你们的理解和支持是我工作的动力,你们的笑容是我幸福的源泉。


  胥 峰




《精通Linux系统管理:从入门到精通的全方位指南》 内容概要: 本书并非关于“Linux运维最佳实践”的直接阐述,而是以一种更为系统、深入的方式,为读者构建一个坚实的Linux系统管理知识体系。我们将从最基础的操作系统概念出发,逐步深入到复杂的网络配置、安全加固、性能优化以及自动化运维的各个层面。本书旨在帮助读者理解Linux系统运作的底层原理,掌握实用的命令行技巧,能够独立解决实际工作中遇到的各类问题,最终成为一名技艺精湛、思路清晰的Linux系统管理员。 章节详情: 第一部分:Linux基础与核心概念 第一章:Linux操作系统的演进与哲学 本章将追溯Linux操作系统的起源,介绍其自由开源的理念,以及为什么它在服务器领域占据主导地位。我们将探讨Linux的发行版文化,包括Debian、Red Hat、Ubuntu等主流发行版的特点和应用场景,帮助读者理解不同发行版在包管理、配置方式和社区支持上的差异。 深入剖析Linux内核的架构,理解进程管理、内存管理、文件系统、设备驱动等核心组件的功能。通过对这些基础概念的理解,为后续的深入学习打下坚实的基础。 介绍Linux命令行哲学,强调“小即是美”和“一切皆文件”的理念,引导读者初步认识Shell的作用,以及如何利用命令行工具进行高效的操作。 第二章:Linux命令行界面(CLI)精通 本章将带领读者全面掌握Linux命令行操作。从基础命令如`ls`、`cd`、`pwd`、`mkdir`、`rm`、`cp`、`mv`等的文件和目录管理,到权限管理命令如`chmod`、`chown`、`chgrp`,再到文本处理命令如`cat`、`grep`、`sed`、`awk`。 深入讲解Shell脚本编程,包括变量、条件判断、循环、函数、输入输出重定向、管道等。通过大量实例,演示如何编写实用的Shell脚本来自动化日常管理任务,提高工作效率。 介绍Linux进程管理工具,如`ps`、`top`、`htop`、`kill`、`nice`等,理解进程状态,学习如何监控和管理系统中的进程。 讲解Linux文件系统结构(FHS),理解`/bin`、`/etc`、`/home`、`/var`、`/usr`等目录的功能和作用,建立清晰的系统文件组织概念。 第三章:用户与权限管理 详细介绍Linux的用户和组管理机制。学习如何创建、删除、修改用户和组,以及如何管理用户的密码策略。 深入理解Linux文件权限模型(ugo/rwx),包括普通权限、特殊权限(SUID、SGID、Sticky Bit)的作用和配置方法。 讲解ACL(Access Control Lists),提供比传统权限更细粒度的访问控制能力。 介绍`sudo`命令的使用,如何安全地授权普通用户执行特权命令,以及`sudoers`文件的配置。 第二部分:系统服务与网络管理 第四章:系统服务管理与Systemd 本章重点介绍Linux现代服务管理工具Systemd。学习Systemd的基本概念,包括Unit、Target、Service、Socket等。 掌握如何使用`systemctl`命令来启动、停止、重启、重载、查看服务状态,以及如何配置服务开机自启。 学习如何编写Systemd的Unit文件,定制化管理应用程序的服务。 简要回顾SysVinit和Upstart等传统的服务管理方式,为理解Systemd的演进提供背景。 第五章:网络配置与故障排查 详细讲解Linux的网络接口配置,包括静态IP、DHCP的配置方法。 深入理解TCP/IP协议栈,包括IP地址、子网掩码、默认网关、DNS解析的工作原理。 学习使用`ifconfig`、`ip`、`route`、`netstat`、`ss`等命令进行网络诊断和监控。 介绍Linux防火墙(iptables/nftables)的基本配置,学习如何设置端口转发、访问控制规则,为系统提供基础的网络安全防护。 讲解DNS客户端配置(`/etc/resolv.conf`)和本地主机名解析(`/etc/hosts`)。 深入理解SSH协议,掌握SSH客户端和服务端的配置,包括密钥认证、端口转发、SSH隧道等高级应用。 第六章:文件系统管理与存储 本章将深入讲解Linux下的文件系统类型,如Ext4、XFS、Btrfs等,理解它们在性能、功能和可靠性上的差异。 学习如何创建、格式化、挂载和卸载文件系统。 掌握磁盘分区与逻辑卷管理(LVM),理解LVM的优势,以及如何创建、扩展、缩减逻辑卷。 讲解磁盘配额(Quota)的使用,限制用户或组的文件存储空间。 介绍NFS(Network File System)和Samba等网络文件共享服务,实现跨平台的文件共享。 理解SWAP(交换空间)的作用,以及如何创建和管理SWAP分区或文件。 第三部分:系统安全与性能优化 第七章:Linux系统安全加固基础 本章将系统性地探讨Linux系统的安全策略。从最小权限原则出发,讲解如何最小化安装、禁用不必要的服务。 深入配置SSH服务,禁止Root登录,使用密钥认证,更改默认端口等。 学习SELinux(Security-Enhanced Linux)或AppArmor的基本概念和使用,理解其强制访问控制(MAC)机制。 讲解文件完整性校验工具,如`tripwire`或`aide`,用于检测文件被篡改。 介绍日志管理的重要性,学习如何收集、分析系统日志(如`/var/log`下的文件),以及使用`rsyslog`或`syslog-ng`进行日志集中管理。 理解密码策略和用户账户锁定机制。 第八章:Linux性能监控与分析 本章将教授读者如何有效地监控Linux系统的性能。 深入分析CPU使用率,学习使用`top`、`htop`、`mpstat`、`vmstat`等工具识别CPU瓶颈。 掌握内存管理,理解物理内存、缓存、缓冲区和Swap的作用,以及如何使用`free`、`memstat`等工具进行分析。 讲解I/O性能监控,使用`iostat`、`iotop`、`sar`等工具分析磁盘读写性能。 介绍网络性能监控,如`nload`、`iftop`,分析网络流量和连接。 讲解系统性能分析工具如`sar`,通过历史数据进行趋势分析。 介绍性能调优的基本思路和方法,例如调整内核参数、优化应用程序配置。 第九章:日志管理与故障排除 本章将系统性地指导读者如何进行有效的日志管理和故障排除。 详细解析Linux系统常见的日志文件,如`syslog`、`auth.log`、`kern.log`、Web服务器日志(Apache、Nginx)、数据库日志等,理解每种日志记录的信息。 学习使用`grep`、`tail -f`、`less`等命令来实时监控和检索日志。 介绍日志轮转(logrotate)的配置,管理日志文件的大小和数量。 深入探讨常见的系统故障场景,如服务无法启动、网络不通、磁盘空间不足、CPU/内存占用过高,并提供系统的排查思路和方法。 学习如何使用`/var/log/messages`(或`journalctl`)作为故障排查的起点。 第四部分:自动化与高级主题 第十章:Shell脚本自动化进阶 在本章中,我们将进一步深入Shell脚本编程,使其成为强大的自动化工具。 学习更高级的Shell特性,如函数库、信号处理、后台作业控制。 讲解如何使用`cron`调度任务,编写定时脚本来执行周期性操作。 介绍正则表达式的深入应用,提高文本处理的效率和精度。 讲解如何使用`sed`和`awk`进行复杂的数据提取和转换。 提供大量实际案例,例如自动备份脚本、系统监控脚本、日志分析脚本等。 第十一章:自动化配置管理工具入门 本章将介绍现代自动化配置管理工具的概念和基本用法。 重点介绍Ansible,讲解其Playbook、模块、Inventory等核心概念。 通过实例演示如何使用Ansible来部署应用、管理服务、配置用户和权限。 简要提及Chef、Puppet等其他主流配置管理工具,为读者提供更广阔的视野。 理解自动化配置管理工具如何帮助实现配置的一致性、可重复性和可扩展性。 第十二章:容器化技术基础(Docker) 本章将介绍当下流行的容器化技术Docker。 讲解容器与虚拟机的区别,理解容器的轻量级、快速部署优势。 学习Docker的基本概念,如镜像(Image)、容器(Container)、仓库(Registry)。 掌握Docker命令行的常用操作,如拉取镜像、运行容器、构建镜像(Dockerfile)。 通过示例展示如何为应用程序创建Docker镜像,并部署运行。 为后续深入学习容器编排工具(如Kubernetes)打下基础。 附录: 常用Linux命令速查表 重要的配置文件路径概览 性能监控工具参数说明 推荐的进一步学习资源 本书旨在提供一个全面、系统且实用的Linux系统管理学习路径,帮助读者从零开始,逐步掌握Linux系统的方方面面,并为应对复杂的实际工作场景做好充分准备。通过理论与实践的结合,本书将赋能读者成为一名自信、高效的Linux系统专家。

用户评价

评分

我是一名有着几年Linux使用经验的用户,但总感觉自己的技能水平停滞不前,特别是在面对大型、复杂的系统部署和维护时,常常力不从心。《Linux运维最佳实践》这本书,对我来说,就像是一个“点醒者”。它并没有一开始就抛出那些高深莫测的概念,而是从大家最关心的、最实际的问题入手,比如如何优雅地处理系统日志,如何高效地监控系统资源,如何构建健壮的备份恢复策略等等。 书中对于“最佳实践”的解读,让我受益匪浅。它不仅仅是告诉我们“怎么做”,更重要的是解释“为什么这么做”。例如,在讲解权限管理时,它会详细分析不同用户和组的角色定位,以及如何通过最小权限原则来提升系统安全性。这种深度的思考,让我不再满足于表面上的操作,而是开始关注背后的逻辑和潜在的风险,从而能够做出更明智、更具前瞻性的决策。

评分

作为一名IT行业的从业者,我深知Linux在现代IT架构中的重要地位。对于Linux运维,我一直抱着学习的态度,希望能不断提升自己的专业技能。《Linux运维最佳实践》这本书,在我看来,是一本非常值得推荐的参考书。它不像一些技术文档那样枯燥乏味,而是以一种更加人性化的方式,将复杂的Linux运维知识娓娓道来。 我尤其欣赏书中对于“自动化”理念的渗透。它不仅仅是讲解了各种命令的使用,更重要的是引导读者思考如何通过脚本和工具来提高工作效率,减少人为错误。比如,在讲解服务部署和管理时,书中会介绍如何使用systemd来统一管理服务,以及如何编写简单的shell脚本来实现批量操作。这些内容,对于我这样希望提升运维效率的人来说,非常有价值,让我能够将更多精力投入到更具创造性的工作中。

评分

我是一位对Linux系统一直充满好奇,但缺乏系统学习机会的学习者。之前尝试过一些在线课程和零散的教程,但总觉得不成体系,知识点也容易遗忘。《Linux运维最佳实践》这本书,恰恰解决了我的痛点。它以一种非常易于理解的方式,循序渐进地带领读者进入Linux运维的世界。 书中对于各种常见运维场景的讲解,都非常接地气。比如,当你遇到服务器响应缓慢的问题时,书中会详细指导你如何一步步地定位瓶颈,是CPU、内存、磁盘I/O还是网络问题。它提供的分析方法和工具介绍,都非常实用,让我能够快速掌握诊断问题的关键。而且,书中不仅仅是教你如何解决眼前的问题,更重要的是教你如何预防问题的发生,这让我感到受益匪浅。

评分

作为一名初入Linux运维领域的实践者,我一直在寻找能够帮助我构建稳定、高效服务器环境的指导。市面上相关的书籍不少,但很多要么过于理论化,要么过于碎片化。《Linux运维最佳实践》这本书,可以说很好地填补了这一空白。它的内容详实,涵盖了从基础的网络配置到复杂的安全加固,再到日常的性能调优和故障排查,几乎囊括了Linux运维的方方面面。 我特别喜欢书中对于“实践”的强调。每一章节都不仅仅是理论的阐述,更重要的是提供了大量实际操作的案例和详细的步骤。比如,在讲解防火墙配置时,它不仅说明了iptables的各种选项,还给出了针对不同场景下的具体配置示例,并且详细解释了每一条规则的作用。这样的内容设计,让我能够边看边练,很快就能将所学知识应用到实际工作中,感受到立竿见影的效果。

评分

我最近入手了一本名为《Linux运维最佳实践》的书,虽然名字听起来很专业,但实际上它为我打开了一扇全新的大门。我一直以来都对Linux系统颇感兴趣,但总觉得自己在实际操作中缺乏系统性的指导,很多时候是边摸索边学习,效率不高,而且常常会遇到一些棘手的问题,不知道如何根治。这本书的出现,简直就像是为我量身定制的。 首先,让我印象深刻的是书中对Linux系统架构的深入剖析。它不仅仅是简单地罗列命令,而是从更宏观的角度,讲解了Linux内核的工作原理、文件系统的组织方式、进程管理的机制等等。通过阅读这部分内容,我才真正理解了为什么一些操作会有那样的效果,而不是仅仅记住了一个孤立的命令。这种“知其然,更知其所以然”的学习方式,让我感觉学习效率大大提升,也为我后续深入研究打下了坚实的基础。

评分

很好的工具书,编写的很不错哦,作者需要更加努力哦!

评分

对工作帮助很大,不可多得的教材

评分

据说不错,所以才买的。

评分

很好,需要慢慢消化

评分

连裤回去啦!好吧、嗯嗯嗯嗯哼蹦蹦哒哒他就可以养家糊口

评分

通俗易懂,作为参考资料手册使用....

评分

公司买的,看起来不像是盗版的,给个好评吧

评分

公司买的,看起来不像是盗版的,给个好评吧

评分

我竟然买了这本书了?过会去翻看下,一下子买了几十本

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.teaonline.club All Rights Reserved. 图书大百科 版权所有