精通Linux(第2版)

精通Linux(第2版)

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

本书讲解了Linux操作系统的工作机制以及运行Linux系统所需的常用工具和命令。

内容简介

根据系统启动的大体顺序,本书更深入地介绍从设备管理到网络配置的各个部分,最后演示了系统各部分的运行方式,并介绍了一些基本技巧和开发人员常用的工具。Linux不像其他操作,会对用户隐藏很多重要的东西。相反,Linux会让用户掌控一切。而要掌控一切,就必须理解这个操作系统的工作机制,包括如何启动、如何连网,以及Linux内核如何工作。本书是畅销书的新版本,作者拥有多年的实践经验,内容通俗易懂。通过这本书,读者可以迅速从Linux新手变成老鸟,把作者丰富的经验装进自己的知识库。

作者简介

作者Brian Ward,毕业于芝加哥大学,获计算机科学博士学位。1993年开始接触Linux,研究并教授Linux二十余年。除了这本深受读者喜爱的书,Brian还著有Linux Kernel-HOWTO(No Starch Press)、The Linux Problem Solver(No Starch Press)等畅销著作。现居旧金山,身兼计算机高级顾问与高级讲师等数职。

章节目录

版权信息

前言

读者对象

阅读要求

阅读方法

动手操作

本书结构

第2版的新内容

关于术语

致谢

第一版书评

第1章 概述

1.1 Linux 操作系统中的抽象级别和层次

1.2 硬件系统:理解主内存

1.3 内核

1.3.1 进程管理

1.3.2 内存管理

1.3.3 设备驱动程序和设备管理

1.3.4 系统调用和系统支持

1.4 用户空间

1.5 用户

1.6 前瞻

第2章 基础命令和目录结构

2.1 Bourne shell: /bin/sh

2.2 shell的使用

2.2.1 shell窗口

2.2.2 cat命令

2.2.3 标准输入输出

2.3 基础命令

2.3.1 ls命令

2.3.2 cp命令

2.3.3 mv命令

2.3.4 touch命令

2.3.5 rm命令

2.3.6 echo命令

2.4 浏览目录

2.4.1 cd命令

2.4.2 mkdir命令

2.4.3 rmdir命令

2.4.4 shell通配符

2.5 中间命令

2.5.1 grep命令

2.5.2 less命令

2.5.3 pwd命令

2.5.4 diff命令

2.5.5 file命令

2.5.6 find和locate命令

2.5.7 head和tail命令

2.5.8 sort命令

2.6 更改密码和shell

2.7 dot文件

2.8 环境变量和shell变量

2.9 命令路径

2.10 特殊字符

2.11 命令行编辑

2.12 文本编辑器

2.13 获取在线帮助

2.14 shell输入输出

2.14.1 标准错误输出

2.14.2 标准输入重定向

2.15 理解错误信息

2.15.1 解析Unix的错误信息

2.15.2 常见错误

2.16 查看和操纵进程

2.16.1 命令选项

2.16.2 终止进程

2.16.3 任务控制

2.16.4 后台进程

2.17 文件模式和权限

2.17.1 更改文件权限

2.17.2 符号链接

2.17.3 创建符号链接

2.18 归档和压缩文件

2.18.1 gzip命令

2.18.2 tar命令

2.18.3 压缩归档文件(.tar.gz)

2.18.4 zcat命令

2.18.5 其他的压缩命令

2.19 Linux目录结构基础

2.19.1 root目录下的其他目录

2.19.2 /usr目录

2.19.3 内核位置

2.20 以超级用户的身份运行命令

2.20.1 sudo命令

2.20.2 /etc/sudoers

2.21 前瞻

第3章 设备管理

3.1 设备文件

3.2 sysfs设备路径

3.3 dd命令和设备

3.4 设备名总结

3.4.1 硬盘:/dev/sd*

3.4.2 CD和DVD:/dev/sr*

3.4.3 PATA硬盘:/dev/hd*

3.4.4 终端设备/dev/tty/*、/dev/pts/*和/dev/tty

3.4.5 串行端口:/dev/ttyS*

3.4.6 并行端口:/dev/lp0和/dev/lp1

3.4.7 音频设备:/dev/snd/*、/dev/dsp、/dev/audio和其他

3.4.8 创建设备文件

3.5 udev

3.5.1 devtmpfs

3.5.2 udevd的操作和配置

3.5.3 udevadm

3.5.4 设备监控

3.6 详解SCSI和Linux内核

3.6.1 USB存储设备和SCSI

3.6.2 SCSI和ATA

3.6.3 通用SCSI设备

3.6.4 访问设备的多种方法

第4章 硬盘和文件系统

4.1 为磁盘设备分区

4.1.1 查看分区表

4.1.2 更改分区表

4.1.3 磁盘和分区的构造

4.1.4 固态硬盘

4.2 文件系统

4.2.1 文件系统类型

4.2.2 创建文件系统

4.2.3 挂载文件系统

4.2.4 文件系统UUID

4.2.5 磁盘缓冲、缓存和文件系统

4.2.6 文件系统挂载选项

4.2.7 重新挂载文件系统

4.2.8 /etc/fstab文件系统表

4.2.9 /etc/fstab的替代者

4.2.10 文件系统容量

4.2.11 检查和修复文件系统

4.2.12 特殊用途的文件系统

4.3 交换空间

4.3.1 使用磁盘分区作为交换空间

4.3.2 使用文件作为交换空间

4.3.3 你需要多大的交换空间

4.4 前瞻:磁盘和用户空间

4.5 深入传统文件系统

4.5.1 查看inode细节

4.5.2 在用户空间中使用文件系统

4.5.3 文件系统的演进

第5章 Linux内核的启动

5.1 启动消息

5.2 内核初始化和启动选项

5.3 内核参数

5.4 引导装载程序

5.4.1 引导装载程序任务

5.4.2 引导装载程序概述

5.5 GRUB简介

5.5.1 使用GRUB命令行浏览设备和分区

5.5.2 GRUB配置信息

5.5.3 安装GRUB

5.6 UEFI安全启动的问题

5.7 链式加载其他操作系统

5.8 引导装载程序细节

5.8.1 MBR启动

5.8.2 UEFI启动

5.8.3 GRUB工作原理

第6章 用户空间的启动

6.1 init介绍

6.2 System V 运行级别

6.3 识别你的init

6.4 systemd

6.4.1 单元和单元类型

6.4.2 systemd中的依赖关系

6.4.3 systemd配置

6.4.4 systemd操作

6.4.5 在systemd中添加单元

6.4.6 systemd进程跟踪和同步

6.4.7 systemd的按需和资源并行启动

6.4.8 systemd的System V兼容性

6.4.9 systemd辅助程序

6.5 Upstart

6.5.1 Upstart初始化过程

6.5.2 Upstart任务

6.5.3 Upstart配置

6.5.4 Upstart操作

6.5.5 Upstart日志

6.5.6 Upstart运行级别和System V兼容性

6.6 System V init

6.6.1 System V init启动命令顺序

6.6.2 System V init链接池

6.6.3 run-parts

6.6.4 System V init控制

6.7 关闭系统

6.8 initramfs

6.9 紧急启动和单用户模式

第7章 系统配置:日志、系统时间、批处理任务和用户

7.1 /etc目录结构

7.2 系统日志

7.2.1 系统日志

7.2.2 配置文件

7.3 用户管理文件

7.3.1 /etc/passwd文件

7.3.2 特殊用户

7.3.3 /etc/shadow文件

7.3.4 用户和密码管理

7.3.5 用户组

7.4 getty和login

7.5 设置时间

7.5.1 内核时间和时区

7.5.2 网络时间

7.6 使用cron来调度日常任务

7.6.1 安装crontab文件

7.6.2 系统crontab文件

7.6.3 cron的未来

7.7 使用at进行一次性任务调度

7.8 了解用户ID和用户切换

进程归属、有效UID、实际UID和已保存UID

7.9 用户标识和认证

为用户信息使用库

7.10 PAM

7.10.1 PAM配置

7.10.2 关于PAM的一些注解

7.10.3 PAM和密码

7.11 前瞻

第8章 进程与资源利用详解

8.1 进程跟踪

8.2 使用lsof查看打开的文件

8.2.1 lsof输出

8.2.2 lsof的使用

8.3 跟踪程序执行和系统调用

8.3.1 strace命令

8.3.2 ltrace命令

8.4 线程

8.4.1 单线程进程和多线程进程

8.4.2 查看线程

8.5 资源监控简介

8.6 测量CPU时间

8.7 调整进程优先级

8.8 平均负载

8.8.1 uptime的使用

8.8.2 高负载

8.9 内存

8.9.1 内存工作原理

8.9.2 内存页面错误

8.10 使用vmstat监控CPU和内存性能

8.11 I/O监控

8.11.1 使用iostat

8.11.2 使用iotop查看进程的I/O使用和监控

8.12 使用pidstat监控进程

8.13 更深入的主题

第9章 网络与配置

9.1 网络基础

数据包

9.2 网络层次

9.3 网际层

9.3.1 查看自己计算机的IP地址

9.3.2 子网

9.3.3 共用子网掩码与无类域内路由选择

9.4 路由和内核路由表

默认网关

9.5 基本ICMP和DNS工具

9.5.1 ping

9.5.2 traceroute

9.5.3 DNS与host

9.6 物理层与以太网

9.7 理解内核网络接口

9.8 配置网络接口

手动添加和删除路由

9.9 开机启动的网络配置

9.10 手动和开机启动的网络配置带来的问题

9.11 一些网络配置管理器

9.11.1 NetworkManager的操作

9.11.2 与NetworkManager交互

9.11.3 NetworkManager的配置

9.12 解析主机名

9.12.1 /etc/hosts

9.12.2 resolv.conf文件

9.12.3 缓存和零配置DNS

9.12.4 /etc/nsswitch.conf文件

9.13 Localhost

9.14 传输层:TCP、UDP和Service

9.14.1 TCP端口与连接

9.14.2 建立TCP连接

9.14.3 端口的数字和/etc/services

9.14.4 TCP的特点

9.14.5 UDP

9.15 普通本地网络

9.16 理解DHCP

9.16.1 Linux的DHCP客户端

9.16.2 Linux的DHCP服务器

9.17 将Linux配置成路由器

互联网的上行线

9.18 私有网络

9.19 网络地址转换(IP伪装)

9.20 路由器与Linux

9.21 防火墙

9.21.1 Linux防火墙基础

9.21.2 设置防火墙规则

9.21.3 防火墙策略

9.22 以太网、IP和ARP

9.23 无线以太网

9.23.1 iw

9.23.2 无线网络安全

9.24 小结

第10章 网络应用与服务

10.1 服务的基本概念

深入剖析

10.2 网络服务器

10.3 SSH

10.3.1 SSHD服务器

10.3.2 SSH客户端

10.4 守护进程inetd和xinetd

TCP封装器:tcpd、/etc/hosts.allow和/etc/hosts.deny

10.5 诊断工具

10.5.1 lsof

10.5.2 tcpdump

10.5.3 netcat

10.5.4 扫描端口

10.6 远程程序调用

10.7 网络安全

10.7.1 典型漏洞

10.7.2 安全资源

10.8 前瞻

10.9 套接字:进程与网络的通信方式

10.10 Unix域套接字

10.10.1 对开发者的好处

10.10.2 列出Unix域套接字

第11章 shell脚本

11.1 shell脚本基础

shell脚本的局限性

11.2 引号与字面量

11.2.1 字面量

11.2.2 单引号

11.2.3 双引号

11.2.4 单引号的字面义

11.3 特殊变量

11.3.1 单个参数:$1,$2,……

11.3.2 参数的数量:$#

11.3.3 所有参数:$@

11.3.4 脚本名:$0

11.3.5 进程号:$$

11.3.6 退出码:$?

11.4 退出码

11.5 条件判断

11.5.1 防范空参数

11.5.2 使用其他命令来测试

11.5.3 elif

11.5.5 测试条件

11.5.6 用case进行字符串匹配

11.6 循环

11.6.1 for循环

11.6.2 while循环

11.7 命令替换

11.8 管理临时文件

11.9 here文档

11.10 重要的shell脚本工具

11.10.1 basename

11.10.2 awk

11.10.3 sed

11.10.4 xargs

11.10.5 expr

11.10.6 exec

11.11 子shell

11.12 在脚本中包含其他文件

11.13 读取用户输入

11.14 什么时候(不)应该使用shell脚本

第12章 在网络上传输文件

12.1 快速复制

12.2 rsync

12.2.1 rsync基础

12.2.2 准确复制目录结构

12.2.3 以斜杠结尾

12.2.4 排除文件与目录

12.2.5 合并、检查及冗长模式

12.2.6 压缩

12.2.7 限制带宽

12.2.8 传文件到你的计算机

12.2.9 更多有关rsync的话题

12.3 文件共享

12.4 用Samba分享文件

12.4.1 配置服务器

12.4.2 服务器访问控制

12.4.3 密码

12.4.4 启动服务器

12.4.5 诊断和日志文件

12.4.6 配置文件共享

12.4.7 home目录

12.4.8 共享打印机

12.4.9 使用Samba客户端

12.4.10 作为客户去访问文件

12.5 NFS客户端

12.6 有关网络文件服务的选择与局限的更多内容

第13章 用户环境

13.1 创建启动文件的规则

13.2 何时需要修改启动文件

13.3 shell启动文件的元素

13.3.1 命令路径

13.3.2 帮助手册的路径

13.3.3 提示符

13.3.4 别名

13.3.5 权限掩码

13.4 启动文件的顺序及例子

13.4.1 bash shell

13.4.2 tcsh shell

13.5 用户默认设置

13.5.1 shell默认设置

13.5.2 编辑器

13.5.3 翻页器

13.6 启动文件的一些陷阱

13.7 前瞻

第14章 Linux桌面概览

14.1 桌面组件

14.1.1 窗口管理器

14.1.2 工具包

14.1.3 桌面环境

14.1.4 应用

14.2 近观X Window系统

14.2.1 显示管理器

14.2.2 网络透明性

14.3 探索X客户端

14.3.1 X事件

14.3.2 理解X输入以及偏好设定

14.4 X的未来

14.5 D-Bus

14.5.1 系统和会话实例

14.5.2 监视D-Bus消息

14.6 打印

14.6.1 CUPS

14.6.2 格式转换与打印过滤器

14.7 其他有关桌面的话题

第15章 开发工具

15.1 C编译器

15.1.1 多个源码文件

15.1.2 头(include)文件和目录

15.1.3 连接库

15.1.4 共享库

15.2 make

15.2.1 一个Makefile实例

15.2.2 内置规则

15.2.3 最终的程序构建

15.2.4 保持更新

15.2.5 命令行参数与选项

15.2.6 标准宏和变量

15.2.7 常规的目标

15.2.8 组织一个Makefile

15.3 调试器

15.4 Lex和Yacc

15.5 脚本语言

15.5.1 Python

15.5.2 Perl

15.5.3 其他脚本语言

15.6 Java

15.7 展望:编译包

第16章 从C代码编译出软件

16.1 软件的构建系统

16.2 解开C源码包

从哪里开始

16.3 GNU autoconf

16.3.1 一个autoconf的例子

16.3.2 使用打包工具来安装

16.3.3 configure脚本的选项

16.3.4 环境变量

16.3.5 autoconf的目标

16.3.6 autoconf的日志文件

16.3.7pkg-config

16.4 实践安装

在哪里安装

16.5 打补丁

16.6 编译和安装的问题排查

具体错误

16.7 前瞻

第17章 在基础上搭建

17.1 Web服务器与应用

17.2 数据库

数据库的种类

17.3 虚拟化

17.4 分布式计算与实时计算

17.5 嵌入式系统

17.6 结束语

看完了

精通Linux(第2版)是2015年由人民邮电出版社·图灵出品出版,作者。

得书感谢您对《精通Linux(第2版)》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
跟阿铭学Linux(第3版) 电子书
本书是一本入门级的Linux学习教材,适合初学者阅读。本教程由浅入深,内容精湛,案例丰富,通俗易懂!书中分两部分:前面为基础知识,内容涉及Linux的安装、使用远程登录工具登录Linux、文件和目录管理、磁盘管理、Vim、压缩和解压缩文件和目录、安装和卸载软件包等;后面为进阶知识,内容包括正则表达式、shell脚本、日常管理操作、LAMP环境、LNMP环境、MySQL常用的操作、NFS、FTP、T
Linux就该这么学(第2版) 电子书
1.本书耗时近3年时间,修订1500余次,内容源自国内每天访问量近60000人次的同名Linux培训课程; 2.在上一版的基础上进行了系统的更新,基于Linux系统RHEL 8编写,适用于CentOS、Fedora、Ubuntu等主流衍生版本; 3.面向零基础读者,从Linux基础知识讲起,渐进式地提高内容难度; 4.每章带有大量的图、表、命令示例以及课后复习题,旨在增强读者的理解能力并巩固所学知识; 5.本书内容的广度和深度覆盖RHCE 8认证的考试要求,因此可作为RCHE 8认证的备考用书; 6.随书配套站点免费提供所需软件、在线阅读、扩展资料等多种增值服务.
跟阿铭学Linux(第4版) 电子书
一部让你轻松入门Linux的学习教程。
Linux实用教程(第4版 微课版) 电子书
本书基于RedHatEnterpriseLinux操作系统进行编写,主要内容包括初步了解Linux系统、安装Linux系统、字符界面操作基础、目录和文件管理、常用操作命令、Shell编程、用户和组群管理、磁盘分区和文件系统管理、软件包管理、权限和所有者、日常管理和维护、网络基本配置、远程连接服务器配置、NFS服务器配置、DHCP服务器配置、Samba服务器配置、DNS服务器配置、Web服务器配置、
Linux深度攻略 电子书
Linux是一个免费的多用户、多任务的操作系统,其稳定性和安全性显著,网络功能强大。目前,Linux已经成为全球增长zui快的操作系统,其应用更加丰富,特别是在系统级的数据库、消息管理、Web应用、桌面办公和嵌入式开发等方面。Linux深度攻略首先从介绍Linux系统的安装入手,讲述了Linux系统管理和服务器配置两部分的知识。系统管理方面内容有Linux系统简介和安装,Linux字符界面,目录和