本书从原理性和实用性出发,从初学者的角度全面而详细地介绍了Linux操作系统的基本概念和常用命令。阐述的内容涵盖初学者完成日常工作必需的各个方面,包括Linux系统概述、常用命令、文件系统、文本编辑、Shell程序设计、Linux系统管理的基本设置与备份、服务器管理、Linux内核简介、常用开发工具、Linux内核编译与管理、综合案例等。本书各章都有实例讲述,各章末尾配有练习题,可帮助读者由浅入深、循序渐进地学习Linux操作系统,便于读者通过理论联系实际,快速上手实践,从而熟练掌握Linux操作系统的使用技巧,提高应用开发能力。
本书面向应用,实用性强,适用面广,结合企业案例,增强了应用性。
本书可作为普通高等院校计算机、自动化、电子信息、通信、机电等专业的教材及教学参考书,也适合有关专业人员阅读。
第1章 Linux系统概述
1.1 Linux系统的历史
1.1.1 UNIX系统的出现
1.1.2 Linux的出现
1.1.3 Linux的发行版本
1.2 GNU计划自由软件与开放源码
1.3 Linux的特点
1.4 Linux的发展和应用
1.4.1 Intranet
1.4.2 服务器
1.4.3 嵌入式系统
1.4.4 集群计算机
1.5 Linux系统安装
习题1
第2章 Linux常用命令
2.1 Shell与Shell命令
2.2 简单命令
2.3 文件操作命令
2.4 目录及其操作命令
2.5 历史命令、别名命令
2.6 联机帮助命令
习题2
第3章 Linux文件系统
3.1 文件和文件系统概述
3.1.1 文件的概念
3.1.2 文件的类型
3.2 文件系统类型
3.3 文件系统结构
3.3.1 系统目录结构
3.3.2 路径
3.4 文件和目录权限管理
3.4.1 文件和目录权限的简介
3.4.2 文件和目录的基本权限
3.4.3 文件和目录的特殊权限
习题3
第4章 文本编辑
4.1 VI编辑器
4.2 VIM编辑器的工作模式
4.3 VIM的基本操作
4.3.1 VIM的进入与退出
4.3.2 VIM的编辑
4.3.3 VIM的光标移动
4.3.4 VIM的复制和粘贴
4.3.5 VIM的删除和取消
4.3.6 VIM的查找和替换
4.3.7 VIM的多文件编辑
习题4
第5章 Linux Shell程序设计
5.1 Shell概述
5.1.1 Shell模式类别
5.1.2 Shell脚本的特点
5.1.3 Shell脚本的建立和执行
5.2 Shell的特殊字符
5.3 Shell变量
5.3.1 环境变量
5.3.2 用户定义的变量
5.3.3 位置参数
5.3.4 Shell特殊变量
5.4 运算符及表达式
5.5 输入与输出
5.6 控制结构
5.6.1 条件测试语句
5.6.2 条件语句
5.6.3 case语句
5.6.4 while语句
5.6.5 until语句
5.6.6 for语句
5.6.7 break命令和continue命令
5.7 函数
5.8 脚本的调试
习题5
第6章 Linux系统管理的基本设置与备份
6.1 用户和工作组管理
6.1.1 用户管理
6.1.2 用户组管理
6.1.3 与用户账号有关的系统文件
6.2 文件系统及其维护
6.2.1 虚拟文件系统(VFS)
6.2.2 Linux文件系统结构
6.2.3 Linux树状目录结构
6.2.4 文件系统的相关命令及应用
6.3 文件系统的备份
6.3.1 gzip压缩工具
6.3.2 bzip2压缩工具
6.3.3 tar工具
6.4 系统安全管理
6.4.1 设置系统权限
6.4.2 suIsudo
6.5 系统性能优化
6.5.1 查看CPU负载的工具
6.5.2 内存使用情况分析
6.5.3 网络运行状态
习题6
第7章 服务器管理
7.1 网络配置管理
7.1.1 网络接口
7.1.2 默认网关与主机路由
7.1.3 网络连接
7.2 vsftpd服务器
7.2.1 FTP传输模式
7.2.2 vsftpd服务器简介
7.2.3 vstftpd服务器的安装配置
7.2.4 vsftpd匿名用户配置
7.2.5 vsftpd系统用户配置
7.2.6 vsftpd虚拟用户配置
7.3 DNS服务器
7.3.1 DNS简介
7.3.2 DNS服务器的工作原理
7.3.3 BIND软件
7.4 Apache Web服务器
7.4.1 Apache Web服务器简介
7.4.2 Prefork MPM工作原理
7.4.3 Worker MPM工作原理
7.4.4 安装Apache Web服务器
7.4.5 Apache常用目录
7.4.6 Apache配置文件详解
7.4.7 Apache虚拟主机在企业中的应用
习题7
第8章 Linux内核简介
8.1 进程管理
8.1.1 程序的顺序执行与并发执行
8.1.2 进程的概念
8.1.3 进程控制块
8.1.4 Linux系统中的进程
8.2 进程管理的命令
8.3 进程通信
8.3.1 信号机制
8.3.2 管道文件
8.3.3 System IPC机制
8.4 磁盘管理
8.4.1 磁盘分区
8.4.2 磁盘格式化
8.4.3 磁盘的挂载
8.5 内存管理
8.6 设备管理
8.6.1 Linux设备管理综述
8.6.2 Linux I/O系统的软件结构
8.6.3 Linux的设备管理机制
8.6.4 字符设备的管理与驱动
8.6.5 Linux的中断处理
习题8
第9章 常用开发工具
9.1 gcc编译系统
9.1.1 gcc使用方法简介
9.1.2 gcc编译流程
9.2 gdb程序调试工具
9.2.1 gdb使用流酲
9.2.2 gdb基本命令
9.3 程序维护工具make
9.3.1 makefile基本结构
9.3.2 makefile变量
9.3.3 makefile规则
9.3.4 make管理器的使用
9.4 Qt介绍
9.4.1 Qt程序设计简介
9.4.2 开发Qt图形界面程序
习题9
第10章 Linux内核编译与管理
10.1 内核编译的基本过程
10.1 内核概述
10.1.2 内核编译的过程
10.2 内核配置详解
10.2.1 General setup
10.2.2 Loadable module support
10.2.3 Processo