第1章 Linux基础 1
1.1 Linux简介 1
1.1.1 关于Linux 1
1.1.2 Linux发展史 3
1.1.3 Linux特点与组成 6
1.1.4 Linux的发行版本 9
1.2 Ubuntu简介 11
1.2.1 什么是Ubuntu 11
1.2.2 Ubuntu的特点 12
1.2.3 Ubuntu的版本 12
1.2.4 Ubuntu的获得方法 13
本章小结 13
第2章 Ubuntu的安装和配置 14
2.1 安装前的准备 14
2.2 在虚拟机中安装 16
2.3 Ubuntu基本操作 36
2.3.1 登录 36
2.3.2 注销 36
2.3.3 系统的关闭和重启 37
2.4 配置及更新 37
2.4.1 配置软件源 37
2.4.2 首次更新 38
本章小结 39
第3章 操作系统接口 40
3.1 操作系统接口 40
3.1.1 命令行用户接口 40
3.1.2 图形用户接口 40
3.1.3 程序接口 40
3.1.4 Linux系统的接口 40
3.2 Shell命令接口 41
3.2.1 Shell命令接口的组成 41
3.2.2 Shell的版本 42
3.3 X Window图形窗口接口 43
3.3.1 X Window简述 43
3.3.2 X Window系统组成 44
3.4 GNOME 45
3.4.1 GNOME简介 45
3.4.2 GNOME初体验 47
3.4.3 KDE 52
3.5 系统调用接口 52
3.5.1 系统调用 52
3.5.2 系统调用接口 53
3.5.3 Linux 中的系统调用 53
3.5.4 API和系统调用的关系 56
本章小结 57
第4章 Linux常用命令 58
4.1 Linux命令 58
4.1.1 Shell程序的启动 58
4.1.2 命令的格式 58
4.2 常用的目录操作命令 59
4.2.1 ls命令 59
4.2.2 cd命令 61
4.2.3 pwd命令 62
4.2.4 mkdir命令 62
4.2.5 rmdir命令 63
4.3 文件操作的基本命令 64
4.3.1 touch命令 64
4.3.2 cat命令 65
4.3.3 cp命令 68
4.3.4 rm命令 69
4.3.5 mv命令 72
4.3.6 chmod 72
4.4 文件的处理命令 74
4.4.1 grep命令 74
4.4.2 head命令 75
4.4.3 tail命令 75
4.4.4 wc命令 76
4.4.5 sort命令 77
4.4.6 find命令 77
4.4.7 which命令 78
4.4.8 whereis命令 80
4.4.9 locate命令 80
4.5 压缩解压命令 80
4.5.1 bzip2命令和bunzip2命令 80
4.5.2 gzip命令 81
4.5.3 unzip命令 82
4.5.4 zcat命令和bzcat命令 83
4.5.5 tar命令 83
4.6 磁盘操作命令 85
4.6.1 mount命令 85
4.6.2 umount命令 87
4.6.3 df命令 88
4.6.4 du命令 89
4.6.5 fsck命令 89
4.7 关机重启命令 90
4.7.1 shutdown命令 90
4.7.2 halt命令 90
4.7.3 poweroff命令 90
4.7.4 reboot命令 91
4.7.5 init命令 91
4.8 变换用户身份命令 91
4.8.1 激活与锁定root用户 91
4.8.2 su命令 92
4.8.3 sudo命令 92
4.8.4 useradd命令 93
4.8.5 passwd命令 93
4.9 网络操作命令 93
4.9.1 ifconfig命令 93
4.9.2 ping命令 94
4.9.3 netstat命令 95
4.9.4 ftp和bye命令 96
4.9.5 telnet和logout命令 97
4.9.6 rlogin命令 97
4.1 0其他命令 97
4.10.1 echo命令 97
4.10.2 more命令和less命令 98
4.10.3 help命令和man命令 99
4.10.4 cal命令 99
4.10.5 date命令 100
本章小结 101
第5章 文件系统 102
5.1 Ubuntu的文件系统 102
5.1.1 文件系统简介 102
5.1.2 Linux文件系统架构 103
5.1.3 Ext2文件系统 106
5.1.4 Ubuntu的目录结构 110
5.2 挂载与卸载文件系统 113
5.2.1 创建文件系统 113
5.2.2 挂载文件系统 116
5.2.3 卸载文件系统 118
本章小结 119
第6章 文本编辑器 120
6.1 文本编辑器简介 120
6.1.1 Gedit——图形化文本编辑器 120
6.1.2 vi文本编辑器 122
6.1.3 其他文本编辑器 123
6.2 vi编辑器的启动与退出 123
6.2.1 vi编辑器的启动 123
6.2.2 vi编辑器的退出 126
6.3 vi编辑器的工作模式 127
6.3.1 命令模式 127
6.3.2 插入模式 127
6.3.3 转义模式 127
6.4 vi编辑器的基本应用 128
6.4.1 添加文本 128
6.4.2 删除文本 131
6.4.3 文本的替换与修改 131
6.4.4 文本的剪切、复制、粘贴 134
6.4.5 撤销与重复执行 136
6.4.6 全文范围的字符查找与替换 136
6.4.7 保存与退出命令 138
6.4.8 高级应用 139
本章小结 143
第7章 Linux常用应用软件 144
7.1 OpenOffice.org 144
7.1.1 OpenOffice.org Writer 145
7.1.2 OpenOffice.org Calc 148
7.1.3 OpenOffice.org Impress 149
7.2 多媒体功能 151
7.2.1 MPlayer 151
7.2.2 Totem 155
7.3 网络应用 157
7.3.1 Firefox浏览器 157
7.3.2 Evolution邮件 158
7.3.3 即时通信软件QQ for Linux 160
本章小结 161
第8章 系统管理和维护 162
8.1 用户和组群管理 162
8.1.1 用户与组简介 162
8.1.2 用户种类 162
8.1.3 用户的添加与删除 163
8.1.4 组的添加与删除 169
8.2 软件包的管理 171
8.2.1 软件包简介 171
8.2.2 高级软件包管理工具APT 172
8.2.3 文本界面软件包管理工具 175
8.2.4 新立得软件包管理器 176
本章小结 180
第9章 网络配置及服务器搭建 181
9.1 网络的基本配置 181
9.1.1 网络的基础知识 181
9.1.2 IP地址配置 182
9.1.3 DNS配置 187
9.1.4 hosts文件 188
9.2 配置FTP服务器 189
9.3 配置Samba服务器 192
9.3.1 SMB协议和Samba简介 192
9.3.2 配置Samba服务 194
9.4 配置DHCP服务器 195
9.4.1 DHCP基础知识 195
9.4.2 Ubuntu中安装DHCP服务 197
本章小结 199
第10章 Shell编程 200
10.1 Shell的基础知识 200
10.1.1 什么是Shell 200
10.1.2 Shell的种类 201
10.1.3 Shell的便捷操作 202
10.1.4 Shell中的特殊字符 204
10.2 变量 208
10.2.1 变量的种类 208
10.2.2 变量的定义及使用 210
10.3 Shell脚本简介 213
10.4 Shell脚本语言的基本语法 214
10.4.1 建立一个简单的Shell脚本 214
10.4.2 Shell脚本的执行 214
10.4.3 交互式脚本 215
10.4.4 变量的数值运算 216
10.4.5 逻辑判断表达式 220
10.5 分支结构 223
10.5.1 if语句 223
10.5.2 case命令 226
10.6 循环结构 227
10.6.1 for循环 227
10.6.2 while循环 228
10.6.3 until循环 229
10.6.4 退出循环命令 230
10.7 函数 230
10.8 脚本调试 231
本章小结 232
第11章 常用开发环境的搭建 233
11.1 Java开发环境Eclipse的搭建 233
11.1.1 Java简介 233
11.1.2 Java特点 233
11.1.3 Eclipse介绍 234
11.1.4 Eclipse环境的搭建 235
11.2 Java开发环境Eclipse的使用 235
11.2.1 创建Java项目 236
11.2.2 创建Java类 237
11.2.3 编辑Java程序代码 238
11.2.4 执行程序 240
11.3 安装C/C++IDE开发工具 240
11.3.1 Linux下的C/C++开发工具介绍 240
11.3.2 Code::Blocks的安装 241
11.4 C/C++IDE开发工具的使用 242
11.5 用GCC编译执行C程序 246
11.5.1 GCC简介 246
11.5.2 GCC的使用 246
本章小结 253
参考文献 254