商品已成功飞到您的手机啦!快登录手机站看看吧!
> 扫一扫 下载客户端
> 微信关注“互动出版网”,便捷查询订单,更多惊喜天天有
内容简介
书籍 计算机书籍
本书以Fedora 21为蓝本,全面系统地介绍了Linux系统的使用、管理与开发。全书共分为三部分:第一部分介绍Linux的基本知识,使读者快速认识Linux,熟悉Linux操作环境,掌握Linux的基本操作;第二部分介绍软硬件管理、网络管理、,网络服务的配置、安全管理、系统定制以及如何对系统进行管理与监视;第三部分介绍Linux下常用的软件开发工具和开发环境,帮助读者迅速了解Linux平台上软件开发的方法和步骤。
本书由浅入深、图文并茂、通俗易懂,不仅分析了Linux核心的工作原理与结构,而且突出了Fedora的新技术和新特点。对每一项功能,一股给出多种操作实现途径。通过本书的学习,读者能迅速领悟Linux的精髓,发现Linux的博大精深,进而能够在当今信息化大潮中运用Linux的强大功能,实现自己的创新和设计。
本书不仅适合Linux系统的初学者学习,也适合那些使用过旧版本、想了解新版本的读者学习。高级用户、管理者以及研究开发人员也可以将本书作为较为全面的参考书。
目录
前言
教学建议
第一部分Linux使用基础
第1章Linux概述2
11初识Linux2
111什么是Linux2
112Linux的特性3
113Linux与其他操作系统的区别4
114GNU、GPL和LGPL5
115Linux的主要版本6
12Linux概览8
121Linux的内核8
122Linux的用户界面8
123Linux的文件结构8
124Linux的应用程序9
13Linux的安装9
131安装前的准备9
132引导安装程序11
133收集安装信息12
134正式安装16
14启动与关闭Linux17
141用户登录17
142首次登录的设置18
143选择默认用户界面19
144用户注销21
145关机21
15本章小结22
习题23
第2章shell及常用命令24
21Linux终端使用基础24
211什么是Linux终端24
212shell的基本形式24
22文件与目录的基本概念27
221文件与文件类型27
222目录27
223工作目录、用户主目录与路径28
23目录和文件的基本操作29
231显示文件命令29
232复制、删除和移动命令31
233创建和删除目录命令32
234切换工作目录和显示目录命令32
235查找与定位命令33
236链接命令ln35
237创建文件、改变文件或目录时间的命令touch36
238文件比较与排序命令36
24备份与压缩命令38
241备份命令tar38
242压缩和解压命令gzip38
243解压命令unzip39
25其他常用命令40
251显示文字命令echo40
252显示日历命令cal40
253日期时间命令date40
254清除屏幕命令clear42
255软件包管理命令rpm42
26联机帮助命令43
261man43
262info43
263help43
27本章小结44
习题44
第3章XWindow系统的使用45
31Fedora下的XWindow系统45
311XWindow系统的组成与特点45
312GNOME简介46
313KDE简介46
314桌面应用程序46
315窗口管理器46
32GNOME桌面环境48
321GNOME桌面布局48
322GNOME的顶端面板48
323GNOME的浮动面板50
324GNOME的消息和通知区50
325GNOME的工作区选择器51
326GNOME的桌面设置51
33GNOME的应用程序和窗口管理53
331GNOME中的应用程序53
332运行桌面应用程序54
333收藏夹和快捷方式管理55
334GNOME的窗口管理56
335GNOME的文件管理器57
336GNOME的软件管理61
34本章小结62
习题62
第4章Linux系统的常用软件64
41办公软件64
411办公套件LibreOffice64
412Writer组件65
413Calc组件67
414Impress组件68
42网络应用软件69
421浏览器Firefox69
422电子邮件管理软件Evolution71
43多媒体应用软件73
431音乐播放器Rhythmbox73
432电影播放器Totem75
44其他工具软件75
441GNU图像处理程序75
442文本编辑器77
45本章小结77
习题78
第5章硬件与软件的安装79
51Linux硬件安装79
511Linux硬件管理基础79
512Linux统一设备模型80
513安装硬件驱动的一般步骤81
514硬件安装实例82
52Linux软件安装86
521Linux中应用软件的安装包86
522安装Tarball包应用软件87
523安装RPM包应用软件88
524安装Deb包应用软件89
53通过yum命令安装软件90
531yum源的配置和使用90
532yum的常用命令93
533yum软件安装实例93
54patch原理和命令94
541应用patch的一般过程95
542利用diff与patch更新软件95
55本章小结97
习题98
第二部分Linux系统管理
第6章网络的基本配置100
61网络接口的硬件信息100
62网络接口的配置101
621使用文本模式工具配置接口101
622使用图形界面工具配置接口102
623使用终端命令显示和配置接口104
63网络接口的启动与停止105
64常用网络命令106
641网络测试命令106
642远程登录命令109
65网络相关配置文件110
651主机名配置文件110
652网络接口配置文件110
653主机名列表文件111
654域名服务器配置文件111
655主机名解析配置文件111
656名字服务切换配置文件112
657协议定义文件113
658网络服务列表文件113
66本章小结113
习题113
第7章常用网络服务的使用与配置115
71网络服务管理工具115
711图形界面的管理工具115
712文本界面的管理工具116
713命令行界面的管理工具116
714xinetd117
72Apache服务器119
721简介119
722安装120
723启动与关闭121
724配置121
725应用实例122
73vsFTPd服务器125
731简介125
732安装125
733启动与关闭125
734配置125
735FTP客户端126
736应用实例127
74Samba服务器129
741简介129
742安装129
743启动与关闭129
744配置130
745应用实例133
75DNS服务器135
751简介135
752安装Bind136
753启动与关闭136
754配置137
755使用配置文件配置DNS139
76本章小结143
习题143
第8章系统管理与监视145
81用户管理145
811Linux的账号145
812用户管理方法145
813用户间切换150
814用户配置文件150
815账号管理和查看命令153
82文件访问权限管理154
821文件权限表示154
822文件权限管理155
83进程管理157
831进程的概念157
832启动进程158
833进程管理命令161
84系统监视162
841系统监控命令top162
842内存查看命令free163
843磁盘空间用量查看命令df163
844系统监视器164
85日志查看164
851日志文件164
852查看日志165
86本章小结166
习题166
第9章Linux系统的安全管理168
91Linux系统的安全设置168
911系统的安全设置168
912账号的安全设置169
913网络的安全设置170
92SELinux171
921SELinux简介171
922SELinux的基本概念173
923SELinux的安全控制原理174
924SELinux的基本操作175
925SELinux的策略管理179
926SELinux的记录与诊断183
927SELinux访问控制示例183
93本章小结184
习题184
第10章Linux系统的定制186
101Linux内核概述186
1011Linux系统架构186
1012Linux内核的组成187
1013Linux内核配置文件189
102Linux内核的定制190
1021获取Linux系统内核源代码190
1022生成自定义的内核配置文件191
1023根据配置文件编译内核193
103Linux发行版本的定制194
1031Fedora的定制版本194
1032创建自己的Fedora定制版196
104本章小结197
习题197
第三部分Linux平台上的程序设计
第11章shell程序设计200
111使用shell200
112bash程序设计201
1121bash程序的一般格式201
1122变量的声明和使用202
1123条件判断205
1124控制结构207
1125函数211
113shell程序实例213
1131Linux实例程序213
1132文件备份脚本示例213
114本章小结215
习题215
第12章GCC的使用与开发216
121GCC简介216
122GCC的使用216
123利用GCC开发C语言程序219
1231简单的C语言程序219
1232多个文件的C程序220
1233使用makefile生成程序221
124调试222
1241静态调试222
1242动态调试224
125本章小结226
习题227
第13章GTK+图形界面程序设计228
131XWindow编程简介228
132GTK+程序设计简介228
133GTK+开发图形界面程序229
1331基本的GTK+程序229
1332编译GTK+源程序232
1333应用容器的GTK+程序233
134本章小结238
习题239
第14章Qt图形界面程序设计240
141Qt程序设计简介240
142开发Qt图形界面程序240
1421简单的Qt图形程序241
1422Qt程序的编译242
1423QtCreator程序开发244
143本章小结250
习题250
第15章集成开发环境KDevelop的使用251
151KDevelop简介251
152KDevelop的使用251
1521启动KDevelop251
1522创建工程252
1523编辑工程254
1524编译生成工程255
153本章小结257
习题257
第16章集成开发环境Eclipse的使用258
161Eclipse概述258
1611Eclipse简介258
1612Eclipse的优势258
162Eclipse的安装与使用259
1621JDK8安装配置259
1622安装与使用Eclipse260
1623Eclipse界面组成261
1624创建第一个Java应用程序261
163EclipseRCP应用开发263
1631什么是RCP263
1632新建RCP项目263
1633项目的组织结构265
1634RCP基本框架267
1635发布RCP应用程序270
164本章小结271
习题271
附录Linux终端命令272
前言
Linux是一个优秀的操作系统,它支持多用户、多进程及多线程,以稳定、强健、可靠的性能著称。Linux提供了强大的服务器功能,因此在网络技术日益发展的今天,受到越来越多的企业和个人的青睐。越来越多的网络及网络服务器都选择Linux作为运行平台。
目前在很多国家,以Linux为代表的自由软件已经在包括政务、军事、商业等众多领域获得了广泛的应用。在我国,Linux也在电子政务、电子商务等信息化建设领域崭露头角。在今后数年,高水平的Linux专业人才将成为IT领域乃至整个就业市场中的新宠。
在出现的早期,Linux主要在学术团体、专业领域中使用,普通用户常常对它望而生畏。其实,作为一个通用操作系统,Linux与Windows功能类似,操作也基本相同。而且经过多年的发展,在全世界众多精英的共同努力下,Linux在系统的功能和性能、使用和管理的便利性方面都有显著提高。普通用户通过学习完全可以掌握它,并利用它的强大功能使自己在信息化过程中如虎添翼。
FedoraLinux从RedHatLinux发展而来,是Linux的一个主要发行版本,是应用最广泛也是使用最方便的版本之一。它继承了Linux的高性能,融入了更多易操作的特点,并增加了很多新功能。本书以Fedora21为蓝本,由浅入深地介绍Linux系统,帮助读者对Linux系统有一个整体的认识,逐步掌握Linux的基本使用方法和管理技术,最终自如地使用和管理Linux系统,并在Linux上进行软件开发。
本书面向那些已经熟悉Windows系统、具有基本的网络知识和程序设计语言(C/C++、Java)基础的读者,为他们提供另一种融入信息化社会的途径。全书包含使用基础、系统管理和程序设计三个部分。下面介绍一下各部分的主要内容。
第一部分介绍Linux的使用基础,包括第1~5章,主要面向初学者,目的是使读者快速认识Linux、熟悉Linux操作环境、掌握Linux的基本操作。第1章首先介绍了Linux系统的起源、特点以及与其他操作系统的异同,使读者能够从总体上了解Linux的特点和功能。同时,还介绍了Fedora21的安装、登录、注销以及关闭系统的方法。第2章介绍了shell的概念和一些常用的shell命令,重点介绍Linux系统的文件和目录的基本操作。此外还介绍了压缩与归档、rpm软件包管理、在线帮助等常用的shell命令。第3章介绍XWindow及常用的图形化桌面系统GNOME的使用。第4章介绍Fedora中常用的应用软件,包括办公软件、网络应用软件、多媒体应用软件以及其他常用工具。第5章介绍常用软硬件的安装与管理,包括Linux统一的设备模型、硬件驱动安装的一般步骤、软件管理的常用命令与方法。
第二部分介绍Linux的系统管理,包括第6~10章,主要面向高级用户和系统管理者,涉及网络管理、网络服务配置、系统管理与监视以及系统安全管理等内容。第6章介绍网络接口的配置以及系统的TCP/IP网络管理。第7章介绍常用的网络服务的安装、配置和运行。第8章介绍系统管理与监视技术,包括用户管理、进程管理、系统管理以及日志查看。第9章介绍Linux系统的安全管理技术,包括标准Linux系统的安全设置方法以及Linux内置的安全子系统SELinux。第10章介绍Linux系统的定制方法,包括Linux内核的定制和发行版本的定制。通过这部分的学习,读者可以在多方面实现对Linux的系统管理,既可以实现对系统软硬件的管理,还可以根据自己的需求实现对Linux内核和应用的定制,充分发挥Linux灵活、安全以及功能丰富的优点。
第三部分介绍Linux平台上的程序设计,包括第11~16章,主要面向那些已经具有一定的程序设计语言基础而希望在Linux平台上进行软件开发的读者。Linux不仅仅是强大的操作系统,更是一个自由、开放的平台。在这个平台上,集成了很多方便、高效的开发工具,为用户设计满足各种需求的应用软件提供了丰富的手段。该部分先后介绍了6个开发环境和工具:第11章介绍shell程序设计技术,第12章介绍如何利用GCC工具在Linux平台上进行C/C++程序的开发,第13章介绍使用GTK+开发工具包开发图形界面应用程序的方法,第14章介绍使用Qt工具包开发图形界面应用程序的方法,第15章介绍KDevelop图形界面集成开发环境的使用,第16章介绍使用Eclipse工具进行Java语言应用程序的开发方法。通过这部分的学习,读者能够掌握在Linux下进行软件开发的基本步骤和方法,了解几种常用开发工具的功能和使用方法,从而迅速从原来的开发环境转换到Linux下进行软件开发。
本书在第2版的基础上,根据作者在Linux系统的教学、研究与开发方面的实践经验,结合Linux系统的新进展改编而成。但是,由于Linux涉及的知识体系相当庞大,用一本书的容量来展示其功能必然需要对内容做适当取舍,因而不可能满足所有读者的需求。此外,由于时间仓促,本书中难免出现疏漏,有不当之处或者是对本书的建议,敬请广大读者不吝赐教。