图书目录

第1篇  基础知识

第1章  Linux系统简介 2

1.1  Linux系统的起源 2

1.2  Linux版本 3

1.2.1  Linux内核版本 3

1.2.2  Linux发行套件版本 3

1.3  Red Hat Enterprise Linux 9.1简介 5

1.4  习题 6

第2章  Linux系统安装 7

2.1  安装前的准备 7

2.1.1  硬件配置与兼容性要求 7

2.1.2  免费获取镜像文件 8

2.1.3  选择安装方式 8

2.2  通过U盘安装Linux 8

2.2.1  启动安装程序 8

2.2.2  语言和键盘设置 9

2.2.3  时区配置 10

2.2.4  设置root用户的密码 11

2.2.5  磁盘分区 11

2.2.6  选择安装的软件包 14

2.2.7  关闭KDUMP 14

2.2.8  准备安装 15

2.3  第一次启动Linux系统 15

2.4  删除Linux系统 17

2.5  使用虚拟机安装Linux 18

2.6  常见问题的处理 23

2.6.1  无法使用图形界面安装方式 23

2.6.2  无法使用磁盘的剩余空间 23

2.6.3  分区后无法进入下一个

安装界面 23

2.6.4  无法保存安装过程中的错误

跟踪信息 24

2.7  习题 24

第3章  图形桌面系统管理 25

3.1  桌面系统简介 25

3.1.1  X-Window系统简介 25

3.1.2  KDE和GNOME简介 26

3.2  GNOME的使用 27

3.2.1  GNOME简介 27

3.2.2  GNOME桌面 28

3.2.3  文件管理 31

3.2.4  GNOME面板 34

3.2.5  菜单 34

3.2.6  输入法 35

3.2.7  屏幕分辨率 35

3.2.8  屏幕保护程序 35

3.2.9  添加和删除软件 36

3.2.10  搜索文件 37

3.2.11  设置系统字体与主题 38

3.2.12  日期时间 39

3.2.13  使用光盘或U盘 40

3.2.14  更改GNOME语言环境 40

3.2.15  注销和关机 41

3.3  常用的应用软件 42

3.3.1  Firefox浏览器 42

3.3.2  GNOME之眼图像查看器 42

3.3.3  Gedit文本编辑器 43

3.3.4  Evince PDF文档查看器 44

3.3.5  远程访问 44

3.4  常见问题的处理 49

3.4.1  无法挂载光盘或U盘 49

3.4.2  无法注销系统 50

3.4.3  启动后无法进入图形环境 51

3.5  习题 52

第4章  命令行界面 53

4.1  命令行简介 53

4.1.1  为什么要使用命令行 53

4.1.2  Shell简介 54

4.2  命令行的使用 54

4.2.1  进入命令行 54

4.2.2  处理多个终端 55

4.2.3  在终端窗口中配置文件 56

4.2.4  终端窗口中的基本操作 56

4.3  常用命令 60

4.3.1  man命令:查看帮助信息 60

4.3.2  date命令:显示时间 60

4.3.3  hostname命令:显示主机名 61

4.3.4  clear命令:清屏 61

4.3.5  exit命令:退出 61

4.3.6  history命令:显示历史命令 61

4.3.7  pwd命令:显示当前目录 62

4.3.8  cd命令:切换目录 62

4.3.9  ls命令:列出目录和文件 62

4.3.10  cat命令:显示文件内容 63

4.3.11  touch命令:创建文件 63

4.3.12  df命令:查看文件系统 63

4.3.13  alias和unalias命令:设置命令别名 64

4.3.14  echo命令:显示信息 65

4.3.15  export命令:输出变量 65

4.3.16  env命令:显示环境变量 66

4.3.17  ps命令:查看进程 66

4.3.18  whoami和who命令:查看用户 67

4.3.19  su命令:切换用户 67

4.3.20  grep命令:过滤信息 67

4.3.21  wc命令:统计 68

4.3.22  more命令:分页显示 68

4.3.23  管道 69

4.4  VI编辑器 70

4.4.1  3种运行模式 70

4.4.2  使用VI编辑器 70

4.4.3  VI编辑器的常用命令 71

4.5  常见问题的处理 73

4.5.1  开机默认进入命令行环境 73

4.5.2  远程访问命令行环境 74

4.6  习题 75

第2篇  系统管理

第5章  Linux系统启动过程 78

5.1  Linux系统启动过程简介 78

5.2  BIOS加电自检 79

5.3  引导加载程序 80

5.3.1  引导加载程序的启动 80

5.3.2  GRUB2配置 81

5.4  Systemd进程 83

5.4.1  Systemd进程简介 83

5.4.2  Systemd进程的引导过程 85

5.4.3  Systemd进程管理 86

5.5  重启和关闭系统 89

5.5.1  shutdown命令:关闭或重启系统 89

5.5.2  halt命令:关闭系统 90

5.5.3  reboot命令:重启系统 90

5.5.4  init命令:改变运行级别 91

5.5.5  通过图形界面关闭系统 91

5.6  常见问题的处理 92

5.6.1  进入Linux救援模式 92

5.6.2  GRUB被Windows覆盖 94

5.6.3  重新分区后GRUB引导失败 95

5.7  习题 96

第6章  用户和用户组管理 97

6.1  用户管理概述 97

6.1.1  用户账号 97

6.1.2  用户账号文件:passwd和

shadow 99

6.1.3  用户组 100

6.1.4  用户组文件:group和

gshadow 103

6.2  普通用户管理 104

6.2.1  添加用户 104

6.2.2  更改用户密码 106

6.2.3  修改用户信息 107

6.2.4  删除用户 107

6.2.5  禁用用户 108

6.2.6  配置用户的Shell环境 108

6.3  用户组管理 111

6.3.1  添加用户组 111

6.3.2  修改用户组 111

6.3.3  删除用户组 112

6.4  用户和用户组的图形化管理 113

6.4.1  查看用户 113

6.4.2  添加用户 114

6.4.3  修改用户 115

6.4.4  删除用户 116

6.5  常见问题和常用命令 116

6.5.1  忘记root用户密码 116

6.5.2  误删用户账号 117

6.5.3  常用的用户管理命令 118

6.6  常用的管理脚本 120

6.6.1  批量添加用户 120

6.6.2  完整地删除用户账号 121

6.7  习题 123

第7章  磁盘分区管理 124

7.1  磁盘分区简介 124

7.1.1  Linux分区简介 124

7.1.2  磁盘设备管理 125

7.2  使用Fdisk进行分区管理 126

7.2.1  Fdisk简介 126

7.2.2  Fdisk交互模式 127

7.2.3  分区管理 128

7.3  使用Parted进行分区管理 132

7.3.1  Parted简介 132

7.3.2  Parted交互模式 133

7.3.3  分区管理 134

7.4  LVM——逻辑卷管理 136

7.4.1  LVM简介 136

7.4.2  物理卷管理 137

7.4.3  卷组管理 138

7.4.4  逻辑卷管理 140

7.5  常见问题的处理 141

7.5.1  添加新磁盘 141

7.5.2  删除分区后系统无法启动 144

7.5.3  误删Swap分区 144

7.6  习题 145

第8章  文件系统管理 146

8.1  文件系统简介 146

8.1.1  Linux文件系统简介 146

8.1.2  Linux支持的文件系统类型 147

8.1.3  Linux的默认安装目录 148

8.2  文件系统管理 149

8.2.1  创建文件系统 149

8.2.2  查看已挂载的文件系统 151

8.2.3  使用fstab文件自动挂载文件系统 152

8.3  文件和目录管理 153

8.3.1  查看文件和目录属性 153

8.3.2  文件类型 154

8.3.3  链接文件 156

8.3.4  查看文件内容 156

8.3.5  删除文件和目录 158

8.3.6  更改当前目录 158

8.3.7  文件名通配符 159

8.3.8  查看目录占用的空间大小 160

8.3.9  复制文件和目录 161

8.3.10  移动文件和目录 161

8.4  文件和目录权限管理 162

8.4.1  Linux文件和目录权限简介 162

8.4.2  更改文件或目录的所有者 163

8.4.3  更改文件或目录的权限 163

8.4.4  设置文件和目录的默认权限 164

8.5  常见问题和常用命令 165

8.5.1  无法卸载文件系统 166

8.5.2  修复受损的文件系统 166

8.5.3  修复文件系统超级块 167

8.5.4  使用Windows分区 168

8.6  常用的管理脚本 169

8.6.1  自动挂载所有的Windows分区的脚本 169

8.6.2  转换目录和文件名大小写的脚本 170

8.7  习题 171

第9章  软件包管理 173

9.1  使用RPM软件包 173

9.1.1  RPM简介 173

9.1.2  RPM命令的使用方法 174

9.1.3  安装RPM软件包 175

9.1.4  查看RPM软件包 176

9.1.5  升级软件包 178

9.1.6  删除软件包 178

9.2  打包命令tar 179

9.2.1  tar命令简介 179

9.2.2  打包文件 179

9.2.3  查看归档文件的内容 180

9.2.4  还原归档文件 180

9.2.5  在归档文件中追加新文件 181

9.2.6  压缩归档文件 181

9.3  压缩和解压缩命令 182

9.3.1  gzip和gunzip命令 182

9.3.2  zip和unzip命令 183

9.3.3  bzip2和bunzip2命令 185

9.4  其他软件安装方式 186

9.4.1  源代码安装方式 186

9.4.2  源代码安装实例 187

9.4.3  .bin文件安装方式 189

9.5  常见问题的处理 190

9.5.1  如何快速安装RPM软件包 190

9.5.2  如何安装.src.rpm软件包 191

9.5.3  查看程序由哪个RPM包安装 192

9.6  习题 192

第10章  进程管理 193

10.1  进程简介 193

10.2  Linux进程管理 194

10.2.1  查看进程 194

10.2.2  启动进程 196

10.2.3  终止进程 197

10.2.4  更改进程的优先级 198

10.2.5  进程挂起与恢复 199

10.3  定时任务 200

10.3.1  使用crontab命令设置定时任务 200

10.3.2  使用at命令设置定时任务 201

10.4  常见问题的处理 202

10.4.1  如何杀死所有进程 202

10.4.2  定时任务不生效 203

10.5  习题 203

第11章  网络管理 205

11.1  TCP/IP网络 205

11.1.1  TCP/IP网络的历史 205

11.1.2  OSI网络模型 206

11.1.3  TCP/IP网络模型 206

11.2  以太网配置 208

11.2.1  添加以太网连接 208

11.2.2  更改以太网设备 209

11.2.3  更改DNS记录 210

11.3  网络配置文件 211

11.3.1  网络设备配置文件 211

11.3.2  使用resolv.conf文件配置DNS服务器 211

11.3.3  使用network文件配置主机名 212

11.3.4  使用hosts文件配置主机名和IP地址的映射关系 212

11.4  接入互联网 212

11.4.1  有线连接 212

11.4.2  无线连接 213

11.5  常用的网络命令 214

11.5.1  使用ifconfig命令管理网络接口 214

11.5.2  使用nmcli命令管理网络连接 216

11.5.3  使用hostname命令查看主机名 219

11.5.4  使用route命令管理路由 219

11.5.5  使用ping命令检测主机是否激活 221

11.5.6  使用netstat命令查看网络信息 222

11.5.7  使用nslookup命令进行解析 224

11.5.8  使用traceroute命令跟踪路由 225

11.5.9  使用telnet命令管理远程主机 225

11.6  常见问题的处理 226

11.6.1  如何在同一个网卡上绑定多个IP地址 226

11.6.2  Linux网络故障的处理步骤 228

11.7  常用的管理脚本 229

11.7.1  统计客户端的网络连接数 229

11.7.2  自动发送邮件的脚本 230

11.8  习题 231

第12章  系统监控 233

12.1  系统性能监控 233

12.1.1  性能分析准则 233

12.1.2  内存监控 235

12.1.3  CPU监控 236

12.1.4  磁盘监控 238

12.1.5  网络监控 240

12.1.6  综合监控命令——top 241

12.2  Rsyslog日志 244

12.2.1  Rsyslog简介 244

12.2.2  Rsyslog的配置 244

12.2.3  Rsyslog配置实例 246

12.2.4  清空日志文件的内容 247

12.2.5  查看日志 247

12.3  其他日志 248

12.3.1  dmesg日志——记录内核日志信息 248

12.3.2  用户登录日志 250

12.3.3  用户操作记录 250

12.3.4  应用日志 251

12.4  常见问题的处理 252

12.4.1  内存泄漏 252

12.4.2  定期清理日志文件 252

12.5  习题 253

第13章  Shell编程 254

13.1  Shell编程简介 254

13.1.1  什么是Shell脚本 254

13.1.2  编写Shell脚本 255

13.2  条件测试 255

13.2.1  数值测试 255

13.2.2  字符串测试 256

13.2.3  文件状态测试 257

13.2.4  条件测试的逻辑操作符 257

13.3  控制结构 258

13.3.1  if-then-else分支结构 258

13.3.2  case分支结构 259

13.3.3  for循环结构 260

13.3.4  expr命令计数器 261

13.3.5  while循环结构 262

13.3.6  until循环结构 263

13.4  脚本参数与交互 264

13.4.1  向脚本传递参数 264

13.4.2  用户交互 265

13.4.3  特殊变量 266

13.5  常见问题的处理 267

13.5.1  如何屏蔽命令的输出结果 267

13.5.2  如何把一条命令分成多行编写 267

13.6  习题 268

第14章  Linux系统安全 269

14.1  用户账号和密码安全 269

14.1.1  删除或禁用不必要的用户 269

14.1.2  使用强壮的用户密码 270

14.1.3  设置合适的密码策略 270

14.1.4  破解shadow密码文件 271

14.1.5  禁用静止用户 272

14.1.6  保证只有一个root用户 273

14.1.7  文件路径中的“.”  273

14.1.8  主机信任关系——host.equiv和.rhosts文件 274

14.2  网络安全 275

14.2.1  ping探测 275

14.2.2  服务端口 276

14.2.3  拒绝攻击 279

14.2.4  使用安全的网络服务 281

14.2.5  增强Xinetd的安全 281

14.3  文件系统安全 281

14.3.1  全球可读文件 282

14.3.2  全球可写文件 282

14.3.3  特殊的文件权限——setuid和

setgid 283

14.3.4  没有所有者的文件 285

14.3.5  设备文件 285

14.3.6  磁盘分区 285

14.3.7  设置GRUB密码 286

14.3.8  限制su命令切换 287

14.3.9  使用合适的mount命令选项 287

14.4  备份与恢复 288

14.4.1  使用tar命令进行备份 288

14.4.2  专用的备份恢复命令——dump和restore 289

14.4.3  底层设备操作命令dd 292

14.4.4  备份的物理安全 292

14.5  日志记录 293

14.5.1  查看当前登录的用户 293

14.5.2  查看用户的历史登录日志 293

14.5.3  secure日志中的安全信息 294

14.5.4  messages日志中的安全信息 295

14.5.5  cron日志中的安全信息 295

14.5.6  history日志中的安全信息 296

14.5.7  日志文件的保存 296

14.6  漏洞扫描工具Nessus 297

14.6.1  如何获得Nessus安装包 297

14.6.2  安装Nessus服务器 298

14.6.3  启动和关闭Nessus 298

14.6.4  客户端访问Nessus 299

14.7  开源软件OpenSSH 303

14.7.1  SSH和OpenSSH简介 303

14.7.2  安装OpenSSH 303

14.7.3  启动和关闭OpenSSH 304

14.7.4  OpenSSH配置文件 305

14.7.5  OpenSSH服务器配置 305

14.7.6  OpenSSH客户端配置 309

14.7.7  使用SSH远程登录 310

14.7.8  使用sftp命令进行文件传输 314

14.7.9  使用scp命令进行远程文件复制 315

14.7.10  在Windows客户端上使用SSH 317

14.8  常见问题的处理 319

14.8.1  Linux系统是否有病毒 319

14.8.2  系统文件损坏的解决办法 320

14.9  习题 320

第3篇  网络服务管理

第15章  Web服务器配置和管理 322

15.1  Web服务器简介 322

15.1.1  Web服务的发展历史和工作原理 322

15.1.2  Apache简介 323

15.1.3  Apache的模块 323

15.2  Apache服务器的安装 325

15.2.1  如何获取Apache软件 325

15.2.2  安装Apache服务器软件 326

15.2.3  启动和关闭Apache 328

15.2.4  检测Apache服务 329

15.2.5  让Apache自动运行 329

15.3  Apache服务器的基本配置和维护 330

15.3.1  查看Apache的相关信息 330

15.3.2  httpd.conf配置文件简介 331

15.3.3  配置文件的修改 334

15.3.4  符号链接和虚拟目录 335

15.3.5  页面重定向 336

15.3.6  Apache日志文件 337

15.4  日志分析 339

15.4.1  AWStats简介 340

15.4.2  安装AWStats日志分析程序 340

15.4.3  配置AWStats 342

15.4.4  使用AWStats分析日志 343

15.5  Apache安全配置 343

15.5.1  访问控制 343

15.5.2  用户认证 346

15.5.3  分布式配置文件.htaccess 348

15.6  虚拟主机 348

15.6.1  虚拟主机服务简介 349

15.6.2  基于IP的虚拟主机服务 349

15.6.3  基于主机名的虚拟主机服务 351

15.7  常见问题的处理 352

15.7.1  防止网站图片盗链 352

15.7.2  忽略某些访问日志的记录 353

15.7.3  解决Apache无法启动的问题 353

15.8  习题 353

第16章  动态Web服务器配置和管理 355

16.1  动态网页技术简介 355

16.1.1  动态网页技术的工作原理 355

16.1.2  实现动态网页的常见技术 356

16.1.3  Tomcat简介 356

16.2  Tomcat服务器的安装 357

16.2.1  如何获取JDK 357

16.2.2  安装JDK 357

16.2.3  如何获取Tomcat 358

16.2.4  安装Tomcat 358

16.2.5  启动和关闭Tomcat 359

16.2.6  检测Tomcat服务 359

16.2.7  让Tomcat自动运行 360

16.3  整合Apache和Tomcat 361

16.3.1  为什么要整合Apache和Tomcat 361

16.3.2  安装mod_jk模块 361

16.3.3  Apache和Tomcat的后续配置 363

16.4  Apache和其他动态Web的整合 365

16.4.1  整合CGI 365

16.4.2  整合基于Perl的CGI 368

16.4.3  整合PHP 369

16.5  常见问题的处理 371

16.5.1  解决PHP模块无法载入的问题 371

16.5.2  如何压缩PHP模块的容量 372

16.6  习题 372

第17章  DNS服务器配置和管理 373

17.1  DNS简介 373

17.1.1  DNS域名结构 373

17.1.2  DNS的工作原理 374

17.2  DNS服务器的安装 376

17.2.1  如何获得Bind安装包 376

17.2.2  安装Bind 376

17.2.3  启动和关闭Bind 377

17.2.4  开机自动运行 378

17.3  Bind服务器配置 378

17.3.1  named.conf配置文件 378

17.3.2  根区域文件named.root 383

17.3.3  正向解析区域文件 385

17.3.4  反向解析区域文件 387

17.4  配置实例 387

17.4.1  网络拓扑 388

17.4.2  配置named.conf 388

17.4.3  配置区域文件 390

17.4.4  测试结果 392

17.5  常见问题和常用命令 393

17.5.1  因TTL值缺失导致的错误 393

17.5.2  dig命令:显示DNS解析结果与配置信息 393

17.5.3  ping命令:解析域名 394

17.5.4  host命令:正向和反向解析 394

17.5.5  named-checkconf命令:检查named.conf文件的内容 394

17.5.6  named-checkzone命令:检查区域文件的内容 395

17.6  习题 395

第18章  邮件服务器配置和管理 396

18.1  电子邮件简介 396

18.1.1  电子邮件的传输过程 396

18.1.2  邮件的相关协议 397

18.1.3  Linux常用的邮件服务器程序 398

18.2  安装邮件服务器 399

18.2.1  安装SASL 399

18.2.2  安装Postfix 400

18.2.3  启动和关闭邮件服务 403

18.2.4  saslauthd服务的自启动配置 404

18.2.5  Postfix服务的自启动配置 405

18.3  Postfix配置 405

18.4  POP和IMAP的实现 407

18.4.1  安装Dovecot 407

18.4.2  配置Dovecot 408

18.4.3  启动和关闭Dovecot 409

18.4.4  Dovecot服务的自启动配置 410

18.5  电子邮件客户端配置 410

18.6  习题 411

第19章  DHCP服务器配置和管理 412

19.1  DHCP简介 412

19.2  DHCP服务器的安装 413

19.2.1  如何获得DHCP安装包 414

19.2.2  安装DHCP 414

19.2.3  启动和关闭DHCP 415

19.2.4  设置DHCP服务开机自动运行 416

19.3  DHCP服务器配置 417

19.3.1  dhcpd.conf配置文件 417

19.3.2  dhcpd.conf文件的参数 418

19.3.3  dhcpd.conf文件的选项 419

19.3.4  使用dhcpd.leases文件查看已分配的IP地址 420

19.4  配置实例 421

19.4.1  网络拓扑 421

19.4.2  配置步骤 422

19.5  DHCP客户端配置 423

19.5.1  Linux客户端配置 423

19.5.2  Windows客户端配置 424

19.6  习题 425

第20章  代理服务器配置和管理 426

20.1  代理服务器简介 426

20.2  代理服务器的安装 427

20.2.1  如何获得Squid安装包 428

20.2.2  安装Squid 428

20.2.3  启动和关闭Squid 429

20.2.4  设置Squid服务开机自动运行 430

20.3  Squid的配置 430

20.3.1  squid.conf配置文件 430

20.3.2  与配置文件相关的命令 434

20.3.3  配置透明代理 435

20.4  Squid安全 436

20.4.1  访问控制列表 436

20.4.2  使用http_access选项控制HTTP请求 437

20.4.3  身份认证 439

20.5  Squid日志管理 441

20.5.1  access_log日志 441

20.5.2  cache.log日志 442

20.6  Squid客户端配置 442

20.6.1  Linux客户端配置 442

20.6.2  Windows客户端配置 443

20.7  常见问题的处理 444

20.7.1  创建cache目录时提示权限不正确 445

20.7.2  启动Squid时提示地址已被占用 445

20.7.3  启动Squid时提示DNS名称解析测试失败 445

20.8  习题 446

第21章  NFS服务器配置和管理 447

21.1  NFS简介 447

21.2  安装和启动NFS服务器 448

21.2.1  安装NFS 448

21.2.2  启动NFS 450

21.2.3  检测NFS服务 450

21.2.4  开机自启动NFS服务 451

21.3  NFS服务器端配置 452

21.3.1  exports配置文件 452

21.3.2  NFS权限控制 454

21.3.3  exportfs命令:输出共享目录 455

21.4  NFS客户端配置 457

21.4.1  安装客户端 457

21.4.2  查看共享目录列表 458

21.4.3  创建挂载点并挂载共享目录 459

21.4.4  卸载NFS文件系统 461

21.4.5  开机自动挂载NFS共享目录 461

21.5  NFS配置实例 462

21.5.1  用户需求 462

21.5.2  修改exports文件配置 462

21.5.3  在服务器端创建目录 463

21.5.4  输出共享目录 463

21.5.5  人力部门客户端的配置 464

21.6  使用Autofs按需挂载共享目录 464

21.6.1  安装Autofs 464

21.6.2  启动Autofs服务 465

21.6.3  设置Autofs服务开机自动启动 465

21.6.4  修改Autofs配置文件 465

21.6.5  配置实例 466

21.7  常见问题的处理 466

21.7.1  无法卸载NFS共享目录并提示系统繁忙 467

21.7.2  挂载共享目录失败 467

21.7.3  NFS请求被挂起 468

21.8  习题 468

第22章  Samba服务器配置和管理 469

22.1  Samba简介 469

22.2  Samba服务器的安装 470

22.2.1  如何获得Samba安装包 470

22.2.2  安装Samba 470

22.2.3  启动和关闭Samba 471

22.2.4  开机自动运行Samba 472

22.3  Samba服务器的基本配置 473

22.3.1  smb.conf配置文件 473

22.3.2  全局选项 473

22.3.3  共享选项 476

22.3.4  配置文件的生效与验证 477

22.3.5  Samba用户管理 478

22.3.6  用户映射 479

22.4  Samba安全设置 480

22.4.1  安全级别 480

22.4.2  用户访问控制 481

22.5  日志设置 483

22.6  配置实例 485

22.6.1  应用案例 485

22.6.2  配置步骤 485

22.7  Linux客户端配置 487

22.7.1  类似于FTP的客户端程序smbclient 487

22.7.2  mount挂载共享目录 488

22.7.3  挂载Windows共享目录 489

22.7.4  使用图形界面访问共享资源 491

22.8  Windows客户端配置 492

22.9  常见问题的处理 493

22.9.1  共享目录无法写入 493

22.9.2  Windows用户不能在网络中浏览Samba服务器 493

22.10  习题 493

第23章  NAT服务器配置和管理 495

23.1  NAT概述 495

23.1.1  NAT简介 495

23.1.2  NAT的工作原理 496

23.2  NAT的地址转换方式 497

23.2.1  与NAT地址相关的概念 497

23.2.2  静态地址转换NAT 497

23.2.3  动态地址转换NAT 498

23.2.4  网络地址端口转换NAT 499

23.3  使用Firewalld防火墙配置NAT 500

23.3.1  Firewalld命令行管理工具 501

23.3.2  Firewalld图形管理工具 503

23.3.3  NAT配置 508

23.4  配置实例 509

23.4.1  应用案例 509

23.4.2  NAT服务器的配置步骤 509

23.5  NAT客户端配置 511

23.5.1  Linux客户端配置 511

23.5.2  Windows客户端配置 512

23.6  习题 513

第24章  MySQL数据库服务器配置和管理 514

24.1  数据库概述 514

24.1.1  数据库技术简介 514

24.1.2  MySQL简介 515

24.1.3  常见的数据库 516

24.2  MySQL数据库服务器的安装 517

24.2.1  如何获得MySQL安装包 517

24.2.2  安装MySQL 518

24.2.3  启动和关闭MySQL 521

24.2.4  开机自动运行MySQL服务 523

24.3  MySQL的基本配置 523

24.3.1  MySQL客户端程序 524

24.3.2  MySQL配置文件 525

24.3.3  更改管理员密码 527

24.3.4  MySQL服务器管理程序mysqladmin 528

24.4  数据库管理 529

24.4.1  查看数据库 530

24.4.2  选择数据库 530

24.4.3  创建数据库 530

24.4.4  删除数据库 531

24.5  数据表结构管理 532

24.5.1  数据表结构 532

24.5.2  字段类型 533

24.5.3  创建数据表 533

24.5.4  更改数据表 537

24.5.5  复制数据表 539

24.5.6  删除数据表 539

24.6  数据管理 540

24.6.1  查询数据 540

24.6.2  插入数据 541

24.6.3  更新数据 543

24.6.4  删除数据 543

24.7  索引管理 544

24.7.1  创建索引 544

24.7.2  删除索引 544

24.8  用户和权限管理 544

24.8.1  MySQL权限控制原理 545

24.8.2  用户管理 547

24.8.3  用户授权 548

24.8.4  回收权限 550

24.9  MySQL的备份和恢复 550

24.9.1  使用mysqldump进行备份和恢复 550

24.9.2  使用mysqlhotcopy进行备份和恢复 552

24.9.3  使用SQL语句进行备份和恢复 553

24.9.4  启用二进制日志 555

24.9.5  直接备份数据文件 555

24.10  MySQL图形化管理工具 555

24.10.1  获得phpMyAdmin安装包 555

24.10.2  安装phpMyAdmin 556

24.10.3  配置phpMyAdmin 556

24.10.4  登录phpMyAdmin 557

24.10.5  数据库管理 558

24.10.6  数据表管理 559

24.10.7  表记录管理 561

24.10.8  用户权限管理 563

24.11  常见问题的处理 565

24.11.1  phpMyAdmin出现“配置文件现在需要绝密的短语密码”

警告 565

24.11.2  查询时出现Out of memory错误 565

24.11.3  忘记root用户密码 565

24.12  习题 566

第25章  Webmin服务器配置和管理 567

25.1  Webmin简介 567

25.2  Webmin的安装与使用 568

25.2.1  如何获得Webmin安装包 568

25.2.2  安装Webmin 569

25.2.3  启动和关闭Webmin 569

25.2.4  登录Webmin 570

25.2.5  更改Webmin的语言和主题 572

25.3  Webmin各功能模块简介 572

25.3.1  Webmin类型模块 573

25.3.2  系统类型模块 573

25.3.3  服务器类型模块 574

25.3.4  网络类型模块 575

25.3.5  硬件类型模块 576

25.3.6  群集类型模块 577

25.3.7  Tools类型模块 578

25.4  Webmin类型模块 578

25.4.1  Webmin用户管理 579

25.4.2  Webmin配置 580

25.5  系统类型模块 581

25.5.1  定时任务 582

25.5.2  用户与群组 583

25.5.3  Change Passwords模块 584

25.5.4  磁盘和网络文件系统 584

25.5.5  文件系统备份 585

25.6  服务器类型模块 586

25.6.1  Apache 服务器 587

25.6.2  DHCP服务器 588

25.6.3  Postfix配置 589

25.6.4  Samba Windows 文件共享 589

25.6.5  Squid代理服务器 590

25.7  网络类型模块 590

25.7.1  网络接口 590

25.7.2  路由和网关 592

25.7.3  NFS输出 592

25.8  硬件类型模块 593

25.8.1  GRUB开机加载程序 593

25.8.2  本地磁盘分区 594

27.8.3  系统时间 595

25.9  Tools类型模块 596

25.10  习题 596

第26章  Oracle服务器配置和管理 598

26.1  Oracle Database 19c简介 598

26.2  Oracle数据库服务器的安装 598

26.2.1  如何获得Oracle安装包 599

26.2.2  软件和硬件要求 599

26.2.3  安装前的配置 601

26.2.4  安装Oracle Database 19c 603

26.2.5  配置网络监听程序 613

26.3  数据库管理 617

26.3.1  创建数据库 617

26.3.2  更改数据库 627

26.3.3  删除数据库 630

26.4  Oracle服务管理 633

26.4.1  手工启动和关闭

Oracle服务 633

26.4.2  开机自动启动

Oracle数据库服务 636

26.4.3  检测Oracle数据库的状态 637

26.5  Oracle图形化管理工具——OEM 638

26.5.1  登录OEM 638

26.5.2  使用OEM监控

Oracle数据库 640

26.6  常见问题的处理 641

26.6.1  如何获得数据库创建过程中的详细信息 642

26.6.2  访问OEM出现“安全连接失败,使用了无效的安全证书”错误 642

26.6.3  忘记sys用户密码 642

26.7  习题 643

附录  Linux指令速查索引 644