第1章 Linux基础 1
1.1 Linux概述 1
1.1.1 Linux的诞生 1
1.1.2 Linux的发行版本 2
1.1.3 Linux的特点 7
1.1.4 Linux的组成部分 8
1.2自由软件与开源软件 9
1.2.1自由软件 9
1.2.2 GPL和BSD许可证 10
1.2.3 OSI和OSS 10
1.2.4开放源代码软件在我国的发展 11
1.2.5自由软件与开源软件的区别 11
1.3 Linux应用 11
1.3.1 Linux在服务器领域的应用 11
1.3.2 Linux在嵌入式中的应用 12
1.3.3 Linux在桌面领域的应用 13
1.3.4 Linux在数据中心领域的应用 13
1.3.5 Linux的发展趋势 13
1.3.6 Linux有关的网站 14
小结 14
习题1 14
第2章 Linux的安装 15
2.1 Linux的安装方法 15
2.2在安装有Windows XP的硬盘上安装Ubuntu 12.04 16
2.2.1安装前的准备 16
2.2.2开始安装 17
2.3虚拟机安装 22
2.3.1创建虚拟机 22
2.3.2在虚拟机中安装系统 25
2.3.3 VMware的实用技巧 26
小结 27
习题2 28
第3章 图形界面与字符界面 29
3.1 Unity桌面环境 29
3.1.1 Unity概述 29
3.1.2 Unity桌面介绍 29
3.2 GNOME桌面环境 35
3.2.1安装GNOME3桌面环境 35
3.2.2 GNOME3桌面环境介绍 36
3.3图形界面软件更新 38
3.3.1软件更新 38
3.3.2修改更新源 38
3.4字符界面 41
3.4.1终端 41
3.4.2 Putty远程登录 42
3.5字符界面软件安装 44
3.5.1 APT管理软件 44
3.5.2 dpkg命令 44
小结 45
习题3 45
第4章 Linux文件管理 46
4.1 Linux文件系统概述 46
4.1.1文件系统概念 46
4.1.2文件与目录的定义 46
4.1.3 Linux的文件结构、类型、属性 48
4.2 Linux文件操作命令 51
4.2.1显示文件内容命令 51
4.2.2显示目录内容及更改目录命令 52
4.2.3建立、删除文件命令 54
4.2.4建立、删除目录命令 55
4.2.5复制、移动命令 56
4.2.6压缩备份命令 58
4.2.7权限管理命令 60
4.2.8 Linux文件查找命令 62
4.3输入/输出重定向 64
4.3.1标准输入/输出 64
4.3.2输入重定 65
4.3.3输出重定向 65
4.4管道 66
小结 67
习题4 67
第5章 Linux系统用户管理 69
5.1 Linux用户介绍 69
5.1.1用户和用户组 69
5.1.2用户分类 70
5.2相关文件 70
5.2.1 passwd文件 70
5.2.2 shadow文件 71
5.2.3 group文件 72
5.2.4 gshadow文件 73
5.3用户管理命令 74
5.3.1 useradd 74
5.3.2 passwd命令 75
5.3.3 usermod命令 76
5.3.4 userdel命令 77
5.4用户组管理命令 78
5.4.1 groupadd命令 78
5.4.2 groupmod命令 78
5.4.3 groupdel命令 79
5.4.4 gpasswd命令 79
5.5 su和sudo命令 80
5.5.1 su命令 80
5.5.2 sudo命令 81
小结 82
习题5 82
第6章 磁盘管理 84
6.1磁盘 84
6.1.1硬盘的物理结构 84
6.1.2文件系统类型 85
6.1.3硬盘的分类 86
6.2分区命名方式 86
6.3常用磁盘管理命令 87
6.3.1添加硬盘 87
6.3.2查看硬盘信息 87
6.3.3创建硬盘分区 88
6.3.4为各分区创建文件系统 90
6.3.5挂载磁盘分区 90
6.3.6挂载USB 91
6.3.7卸载磁盘分区 91
6.4磁盘配额管理 91
6.4.1查看内核是否支持配额 92
6.4.2安装磁盘配额工具 92
6.4.3激活分区的配额功能 92
6.4.4建立配额数据库 92
6.4.5启动磁盘配额 93
6.4.6编辑用户磁盘配额 93
6.4.7设定宽限期 94
6.4.8其他配额功能 95
小结 96
习题6 96
第7章 Linux引导及进程管理 98
7.1 Linux引导流程 98
7.1.1系统引导 98
7.1.2 Ubuntu的运行级别 100
7.1.3关闭系统 101
7.2 Linux内存管理 103
7.2.1物理内存和虚拟内存 103
7.2.2内存的监视 104
7.2.3交换分区swap的使用 105
7.3 Linux进程管理 107
7.3.1进程的概念 107
7.3.2常用进程管理命令 107
7.3.3任务计划 111
小结 113
习题7 113
第8章 Linux编辑器的使用 115
8.1文本编辑器 115
8.1.1 Gedit编辑器 115
8.1.2 nano编辑器 117
8.1.3 vi编辑器 118
8.2 vi编辑器的使用 118
8.2.1启动vi编辑器 118
8.2.2 3种工作模式 119
8.2.3光标操作命令 120
8.2.4屏幕操作命令 121
8.2.5文本修改命令 121
8.2.6其他命令 123
8.3 gcc编译及其调试 124
8.3.1 gcc编译器的使用 124
8.3.2 gcc总体选项实例 126
8.3.3 gcc优化选项实例 127
8.3.4警告和出错选项实例 128
8.3.5 gdb调试器 128
8.4 Eclipse编辑器 131
8.4.1安装JDK 131
8.4.2配置Eclipse的C语言集成开发环境 132
8.4.3使用Eclipse编辑器编译实例 133
8.4.4在Eclipse中使用gdb调试程序 136
小结 139
习题8 139
第9章 shell及其编程 141
9.1 shell概述 141
9.1.1 Bourne shell 141
9.1.2 C shell 142
9.1.3 Korn shell 142
9.1.4 Bourne Again shell 142
9.1.5查看用户shell 142
9.2 shell脚本 143
9.2.1 shell脚本概述 143
9.2.2执行shell脚本 143
9.3 shell脚本变量 144
9.3.1系统变量 144
9.3.2环境变量 145
9.3.3用户自定义变量 146
9.3.4变量的使用 146
9.3.5数字与数组的声明和使用 148
9.3.6 shell的输入/输出 149
9.3.7运算符和特殊字符 151
9.4 shell控制结构 153
9.4.1 test命令 153
9.4.2 if语句 155
9.4.3 case语句 157
9.4.4 while语句 158
9.4.5 until语句 159
9.4.6 for语句 159
9.4.7循环控制语句 160
9.5 shell函数 161
9.5.1函数的声明 161
9.5.2函数的调用 162
9.5.3函数的参数传递 163
9.6应用实例 163
小结 165
习题9 166
第10章 Linux服务器配置 167
10.1网络服务概述 167
10.2 Linux系统的基本网络配置 167
10.2.1查看网络配置 167
10.2.2修改网络配置 170
10.2.3测试网络配置 171
10.3 Samba服务器 172
10.3.1 Samba服务器简介 172
10.3.2安装Samba服务器 173
10.3.3配置Samba服务器 174
10.4 Linux系统下LAMP平台的搭建 177
10.4.1 LAMP平台概述 177
10.4.2 LAMP平台的搭建 178
10.5 NFS网络服务 182
10.5.1 NFS简介 182
10.5.2 NFS工作原理 182
10.5.3 NFS服务的安装与配置 183
10.5.4访问NFS服务 186
小结 187
习题10 187
附录 部分习题参考解答 188
参考文献 194