Linux应用大全 基础与管理(txt+pdf+epub+mobi电子书下载)


发布时间:2020-10-08 14:48:06

点击下载

作者:於岳

出版社:信息技术第二出版分社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

Linux应用大全 基础与管理

Linux应用大全 基础与管理试读:

前言

Linux是一个免费的多用户、多任务的操作系统,它的运行方式、功能和UNIX操作系统很相似,但Linux系统的稳定性、安全性与网络功能是许多商业操作系统所无法比拟的。Linux系统最大的特色是源代码完全公开,在符合GNU/GPL的原则下,任何人都可以自由取得、传播甚至修改源代码。

Linux系统已经成为全球发展最快的操作系统,其应用将更加丰富,特别是在系统级的数据库、消息管理、Web应用、桌面办公和嵌入式开发等方面。同时业界许多大公司对Linux专业人才的渴求与日俱增,比如百度、腾讯、阿里巴巴、京东、新浪等大型企业都在急剧扩招Linux人才。Linux目前在中国已经成功地应用于游戏、电子商务、金融、电信、制造、电力、能源以及交通等各行各业,并得到了充分的肯定和广泛的认可。

本书在内容安排上首先从介绍和安装Linux入手,先后讲述了Linux系统管理各方面的知识,包括使用Linux图形界面,Linux应用程序,使用Linux字符界面,Linux文本编辑器,目录和文件管理,Linux常用命令,Kickstart配置,Shell编程,用户和组群账户管理,权限、所有者和ACL,归档与压缩,软件包安装和管理,磁盘分区和格式化,文件系统管理,磁盘配额,逻辑卷管理(LVM),磁盘阵列管理(RAID),Linux启动与引导,GRUB引导装载程序,进程和服务管理,任务计划,备份与还原,内核,硬件管理,日志管理,SELinux配置,PAM,审计系统,性能监测和资源使用限制,Webmin管理工具,块设备和字符设备管理,以及Linux故障排查。本书内容由浅入深,讲解全面细致,实例丰富,有助于读者通过本书掌握Linux系统管理知识。

本书使用对象

• Linux爱好者;

• Linux系统运维、管理工程师;

• 备考Linux认证(如RHCE、LPI)的读者;

• Linux培训机构的教师和学生;

• 大专院校计算机专业的教师和学生;

• Linux自学者。

本书特色

• 内容涉及Linux系统管理方面的知识,全面、深入和系统;

• 本书作者具有多年IT工作和授课经验,遵循理论和实践并重原则;

• 使用大量图表和实例进行讲述,便于读者理解和掌握知识点;

• 由浅入深进行讲解,脉络清晰,突出实践性、实用性,通俗易懂;

• 从培训讲课的角度来编写本书,更加易于读者进行自学和练习。

笔者从事计算机工作多年,担任过资深系统工程师、数据库工程师、架构师、培训专家。书中所有的实例都经过了笔者反复多次的测试,只要按照本书中的描述进行操作,就能在读者的Linux系统上轻松实现。

由于笔者水平有限,编写时间仓促,书中难免有遗漏和不足之处,恳请广大读者提出宝贵意见,笔者电子邮箱为:airfish2000@126.com。

最后谨以此书献给我的父母和家人,在编写本书的漫长过程中,他们给予我很多鼓励和帮助。作者2014年10月第1章认识Linux系统Linux系统发展至今已有二十多年的历史,现在有众多的系统管理员开始接触这个系统,并且安装到他们公司的服务器上。本章主要介绍Linux系统的基础知识。1.1Linux系统简介1.1.1 什么是Linux

Linux是一个免费的多用户、多任务的操作系统,其运行方式、功能和UNIX系统很相似,但Linux系统的稳定性、安全性与网络功能是许多商业操作系统所无法比拟的。Linux系统最大的特色是源代码完全公开,在符合GNU/GPL(通用公共许可证)的原则下,任何人都可以自由取得、传播甚至修改源代码。

越来越多的大中型企业的服务器选择了Linux作为其操作系统。近几年来,Linux系统又以其友好的图形界面、丰富的应用程序及低廉的价格,在桌面领域得到了较好的发展,受到了普通用户的欢迎。1.1.2 Linux系统的产生

Linux系统的内核最早是由芬兰大学生Linus Torvalds开发的,并于1991年8月发布。当时由于UNIX系统的商业化,Andrew Tannebaum教授开发了Minix操作系统,该系统不受AT&T许可协议的约束,可以发布在Internet上免费给全世界的学生使用,这为教学科研提供了一个操作系统。Minix系统具有较多UNIX的特点,但与UNIX不完全兼容。1991年,Linus Torvalds为了给Minix系统用户设计一个比较有效的UNIX PC版本,自己动手写了一个类Minix的操作系统,这就是Linux的雏形。

Linux的兴起可以说是Internet创造的一个奇迹。到1992年1月,全世界大约只有1000人在使用Linux系统,但由于它发布在Internet上,互联网上的任何人在任何地方都可以得到它。在众多热心人的努力下,Linux系统在不到3年的时间里成为了一个功能完善、稳定可靠的操作系统。1.1.3 Linux系统的应用领域

Linux系统的应用主要涉及应用服务器、嵌入式、软件开发以及桌面应用四个方面。在桌面应用领域,Windows系统占有绝对优势,其友好的界面、易操作性和多种多样的应用程序是Linux所缺乏的,Linux的长处主要在于服务器端和嵌入式两个领域。

1.Linux服务器

Linux系统的可靠性使它成为企业Web服务器的重要选择。同时,Linux支持多种硬件平台,非常容易与其他平台如Windows、UNIX等系统共存,其相关应用软件多为免费甚至是开放源代码,例如Web服务器Apache以及邮件服务器Sendmail都附在Linux系统安装套件之中。Linux厂商大都将服务器应用作为一个重要方向,Linux群集更是大家都看好的趋势,也是Linux提高可扩展性和可用性的必经之路。当然,除了Web服务器以外,Linux还适用于防火墙、代理服务器、DNS服务器、DHCP服务器、数据库、FTP服务器、VPN服务器以及用于一些办公系统的文件与打印服务器等。

2.嵌入式Linux系统

嵌入式操作系统是当前操作系统领域的热点,Linux在该领域的低成本、小内核以及模块化有着自己的特色,很多Linux厂商纷纷在该领域投入人力、物力开展研发工作。

3.软件开发平台

Linux开发工具和应用正日臻完善,Linux开发者可以使用Java、C、C++、Perl或PHP来开发应用程序。PHP很容易学习,执行速度很快,而且开放程序代码的PHP还支持大部分数据库,具有各种功能的动态链接库资源,是目前电子商务开发常用的语言。

4.桌面应用

新版本的Linux系统在桌面应用方面进行了改进,达到相当高的水平,完全可以作为一种集办公应用、多媒体应用、游戏娱乐和网络应用等多方面功能于一体的图形界面操作系统。1.2Linux系统的特点和组成

Linux系统在短短的几年之内就得到了非常迅猛的发展,这与Linux系统具有的良好特性是分不开的,本节主要讲述Linux系统的特点以及Linux系统的组成。1.2.1 Linux系统的特点

越来越多的系统管理员将他们的服务器平台迁移到Linux系统下,Linux系统具有以下主要特点。

1.开放性

开放性是指系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。凡遵循OSI国际标准所开发的硬件和软件都能彼此兼容,可方便地实现互连。

2.多用户

多用户是指系统资源可以被不同用户各自拥有使用,即每个用户对自己的资源(如文件、设备)有特定的权限,并且互不影响。

3.多任务

多任务是现代计算机的最主要的一个特点。它是指计算机可以同时执行多个程序,而且各个程序的运行互相独立。Linux系统调度每一个进程,平等地访问计算机处理器。

4.良好的用户界面

Linux系统向用户提供了文本界面和图形界面两种方式。Linux的传统界面是基于文本的命令行界面,即Shell,Shell有很强的程序设计能力,用户可方便地用它编写程序,从而为用户扩充系统功能提供了更高级的手段。

Linux系统还为用户提供了图形用户界面。它利用鼠标、菜单、窗口、滚动条,给用户呈现一个直观、易操作、交互性强的友好的图形化界面。

5.设备独立性

设备独立性是指操作系统把所有的外部设备(如显卡、内存等)统一当作文件来看待,只要安装它们的驱动程序,任何用户都可以像使用文件一样操纵、使用这些设备,而不必知道它们的具体存在形式。

6.丰富的网络功能

完善的内置网络是Linux系统的一大特点。Linux系统在通信和网络功能方面优于其他操作系统。其他操作系统不包含如此紧密地和内核结合在一起的连接网络的能力,也没有内置这些联网特性的灵活性。而Linux系统为用户提供了完善的、强大的网络功能。

7.可靠的系统安全

Linux采取了许多安全技术措施,包括对读写进行权限控制、带保护的子系统、审计跟踪、核心授权等,这为网络多用户环境中的用户提供了必要的安全保障。

8.良好的可移植性

可移植性是指将操作系统从一个平台转移到另一个平台使它仍然能按其自身的方式运行。Linux是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。1.2.2 Linux系统的组成

Linux系统一般由内核、Shell、文件系统和应用程序这四个主要部分组成。内核、Shell和文件系统一起形成了基本的操作系统结构。它们使得用户可以运行程序、管理文件并使用Linux 系统。

1.内核

内核是操作系统的核心,具有很多最基本功能,如虚拟内存、多任务、共享库、需求加载、可执行程序和TCP/IP网络功能。Linux内核的主要模块分为存储管理、CPU和进程管理、文件系统、设备管理和驱动、网络通信、系统的初始化和系统调用等部分。

2.Shell

Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。实际上Shell是一个命令解释器,它解释由用户输入的命令并且将它们送到内核。另外,Shell编程语言具有普通编程语言的很多特点,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。

3.文件系统

文件系统是文件存放在磁盘等存储设备上的组织方法。Linux系统能支持多种目前流行的文件系统,比如ext4、ext3、ext2、msdos、vfat和iso9660等。

4.应用程序

标准的Linux系统都有一套称为应用程序的程序集,它包括文本编辑器、编程语言、X Window、办公软件、影音工具、Internet工具和数据库等。1.3Linux与Windows、UNIX系统的比较1.3.1 Linux与Windows系统的共性

Linux与Windows系统具有以下几处相似的地方。

1.多用户操作系统

Linux和Windows都是多用户操作系统,由许多不同的用户来使用,系统为每个用户提供单独的环境和资源,并且基于用户身份来控制安全性。Linux和Windows系统都可以以组成员的方式来控制资源的访问权限,这样在用户数目较大时可以不必为每一个账号设置权限。

2.支持多种文件系统

Linux和Windows系统都支持多种文件系统。

3.支持多种端口和设备

两种操作系统都支持各种物理设备端口,如并口、串口和USB接口。支持各种控制器,比如IDE和SCSI 控制器。

4.支持联网功能

Linux和Windows系统都支持多种网络协议,比如TCP/IP、NetBIOS和IPX;都支持多种类型的网络适配器。都具备通过网络共享资源的能力,比如共享文件和打印;都可以提供网络服务功能,比如DHCP、DNS、Web、mail等。

5.服务

Linux和Windows系统都提供服务。服务是指在后台运行的应用程序,可以为系统和远程调用该服务的计算机提供一些功能。1.3.2 Linux与Windows系统的区别

Linux和Windows系统的工作方式还是存在一些根本的区别,这些区别是Linux系统的核心。

1.应用目标

Windows系统主要定位于个人桌面用户,易使用、易维护、界面美观。Linux系统定位于网络操作系统,设计灵感来自于UNIX操作系统,命令设计比较简单,Linux系统配置文件和数据都以文本为基础。Linux系统同样拥有非常先进的网络、脚本和安全能力。

2.图形化界面

Windows系统必选图形界面,图形界面和命令行不能分开使用。Linux系统是可选的图形化界面,图形环境并没有集成到Linux系统中,而是运行于系统之上的单独一层,图形化的管理工具通常是命令行工具的扩展,使用图形化工具并不妨碍对配置文件进行手工修改。Linux系统同时支持这两种方式,并不要求只用文本界面或者图形界面。

3.文件扩展名

Windows系统使用文件扩展名来区分文件类型。Linux系统不使用文件扩展名来识别文件的类型。相反,Linux根据文件的头内容来识别其类型。为了提高可读性仍可以使用文件名扩展,但这对Linux系统来说没有任何作用。

4.重新引导

如果用户使用Windows已经很长时间了,可能已经习惯出于各种原因(从软件安装到纠正服务故障)而重新引导系统。Linux系统一旦运行,它将保持良好的运行状态,直到受到外来因素的影响,比如硬件的故障。实际上,Linux系统的设计使得应用程序不会导致内核的崩溃,因此不必经常重新引导。所以除了Linux内核之外,其他软件的安装、启动、停止和重新配置都不用重新引导系统。

5.命令区分大小写

Windows系统命令和文件名不区分大小写。所有Linux系统下的命令、文件和口令等都区分大小写。1.3.3 Linux与UNIX系统的区别

Linux与UNIX系统具有以下区别。

1.应用平台

UNIX是一个功能强大,性能全面的多用户、多任务操作系统,可以应用从巨型计算机到普通PC等多种不同的平台上,是应用面最广、影响力最大的操作系统。Linux外观和性能与UNIX相同,但Linux不源于任何版本的UNIX源代码,并不是UNIX,而是一个类似于UNIX的产品。

2.发展背景

Linux是从UNIX发展而来的。这种继承使得Linux的用户能更大程度上从UNIX团体贡献中获利。因为UNIX是世界上使用最普遍、发展最成熟的操作系统,它是20世纪70年代中期发展起来的微机和巨型机的多任务系统,虽然有时接口比较混乱,并缺少相对集中的标准,但还是发展壮大成为了最广泛使用的操作系统之一。UNIX的用户可以从很多方面得到支持和帮助。因此Linux作为UNIX的一个克隆,同样会得到相应的支持和帮助,直接拥有UNIX在用户中建立的牢固的地位。

3.使用费用方面

Linux是一种开放、免费的操作系统,而UNIX系统基本上需要有偿使用。这一区别使得我们能够不用花钱就能得到很多Linux的版本以及为其开发的应用软件。

4.产品方面

UNIX和Linux都是操作系统的名称,但UNIX这四个字母除了是操作系统名称外,还作为商标归SCO所有。Linux商业化的有Red Hat Linux、SuSe Linux、slakeware Linux等。UNIX主要有Sun Solaris、IBM AIX、HP-UNIX,以及x86平台的SCO UNIX/UNIXwareUNIX。多数是硬件厂商针对自己的硬件平台的操作系统,主要与CPU等有关,如Sun Solaris作为商用,定位在其使用SPARC/SPARC II的CPU的工作站及服务器上,当然Solaris也有x86的版本,而Linux也有其余RISC的版本。

5.性能方面

Linux没有UNIX那么全面,但基本上对个人用户和小型应用来说是绰绰有余。通常情况下,如果有机会使用到UNIX环境,比如银行、电信部门,那一般都是固定机型的UNIX。比如电信里SUN的居多,民航里HP的居多,银行里IBM的居多。不同的UNIX命令集有些不同。1.4Linux内核版本和发行版本

在讲到Linux系统的版本时,主要是指Linux的内核版本和发行版本,我们安装在服务器上的一般是指发行版本。1.4.1 Linux内核版本

内核是一个用来和硬件打交道并为用户程序提供一个有限服务集的低级支撑软件。一个计算机系统是一个硬件和软件的共生体,它们互相依赖,不可分割。

内核版本号由3个数字组成:r.x.y,比如2.6.32。

r:表示主要版本号;

x:表示次要版本号,偶数表示稳定版本,奇数表示测试开发版本;

y:表示修正号码,也就是内核错误修补的次数。

注意:

要查看Linux内核版本,可以使用uname -r命令,比如笔者安装的Linux内核版本是2.6.32。

[root@rhel ~]# uname -r

2.6.32-358.el6.x86_641.4.2 Linux发行版本

目前市面上已经发行了将近几百种Linux发行版本,选择一款稳定、快速和高效的版本应用在服务器上是非常重要的。

1.Linux发行版本简介

一些组织和公司,将Linux系统的内核、应用软件和文档包装起来,并提供一些系统安装界面、系统配置设定管理工具,就构成了Linux发行版本。相对于Linux操作系统内核版本,发行版本的版本号每一个发布厂商都不一样,与Linux系统内核的版本号是相对独立的。根据GPL准则,这些发行版本虽然都源自一个内核,但都没有自己的版权。Linux的各个发行版本都是使用Linus主导开发并发布的同一个Linux内核,因此在内核层不存在什么兼容性问题。这其中最著名的便是Red Hat公司开发的Red Hat系列以及社区组织开发的Debian系列发行版本。

2.主流Linux发行版本

Linux发行版本有几百种之多,在此就简单地介绍几款目前比较著名、流行以及在企业中经常使用的Linux发行版本。(1)Red Hat

Red Hat是Linux用户最熟悉、最耳熟能详的发行版系统。Red Hat最早由Bob Young和Marc Ewing两人在1995年创建。而公司在最近几年才开始真正步入盈利时代,这归功于收费的Red Hat Enterprise Linux(简称RHEL,Red Hat企业版Linux)。(2)SUSE

SUSE Linux是德国最著名的Linux发行版,在全世界范围中也享有较高的声誉。SUSE自主开发的软件包管理系统YaST也大受好评。SUSE已经于2004年被Novell公司收购。(3)Oracle Linux

Oracle Enterprise Linux(简称OEL)是由Oracle公司提供支持的企业级Linux发行版,该系统在2006年初发布第一个版本。Oracle Enterprise Linux与Red Hat Enterprise Linux二进制兼容,也就是说能运行在Red Hat Enterprise Linux系统上的软件也能运行在Oracle Enterprise Linux上。(4)Red Flag

Red Flag是由中科红旗软件技术有限公司推出的中文版本的Linux,该Linux在中国Linux用户中占有一定的比例。该版本因为拥有完善的中文支持以及与Windows相似的用户界面而得到大家的认可。(5)Ubuntu

Ubuntu是一个基于Debian系统,拥有Debian所拥有的所有优点,以及自己所加强的优点的近乎完美的Linux操作系统。Ubuntu是一个相对较新的发行版,但是,它的出现改变了许多潜在用户对Linux系统的看法,Ubuntu的安装更加方便和简单。

Ubuntu被誉为对硬件支持最好、最全面的Linux发行版之一,许多在其他发行版上无法使用,或者默认配置时无法使用的硬件,在Ubuntu上能正常使用。并且,Ubuntu采用自行加强的内核,安全性方面更加突出。(6)Debian

Debian最早由Ian Murdock于1993年创建。由于Debian采用了Linux内核,但是大部分基础的操作系统工具都来自于GNU工程,因此又称为Debian GNU/Linux。Debian附带了超过29000个软件包,这些预先编译好的软件被包裹成一种良好的格式以便于在计算机上进行安装。(7)Mandriva

Mandriva原名Mandrake,最早由Gaël Duval创建,并在1998年7月发布,最早的Mandrake开发者是基于Red Hat进行开发的。Red Hat默认采用GNOME桌面系统,而Mandrake将之改为KDE桌面系统。由于当时的Linux普遍比较难安装,不适合第一次接触Linux的新手,所以Mandrake还简化了安装系统,这也是当时Mandrake在国内如此红火的原因之一。(8)Gentoo

Gentoo最初由Daniel Robbins创建。由于开发者对FreeBSD的熟识,所以Gentoo拥有媲美FreeBSD的广受美誉的ports系统——portage。Gentoo的首个稳定版本发布于2002年。

Gentoo的出名因为其高度的自定制:因为它是一个基于源代码的发行版。尽管安装时可以选择预先编译好的软件包,但是大部分使用Gentoo的用户都选择自己手动编译。这也是为什么Gentoo适合有Linux使用经验的老手使用的原因。(9)Slackware

Slackware是由Patrick Volkerding创建于1992年,是历史最悠久的Linux发行版本。由于Slackware尽量采用原版的软件包而不进行任何修改,所以产生新漏洞的机率便低了很多。(10)Fedora

Fedora Linux是一款由Fedora Project社区开发、Red Hat公司赞助,面向日常应用的快速、稳定、强大的操作系统。Fedora基于Red Hat Linux,在Red Hat Linux终止发布后,Red Hat公司以Fedora来取代Red Hat Linux在个人领域的应用,而另外发布的Red Hat Enterprise Linux(Red Hat企业版Linux)则取代Red Hat Linux在商业应用的领域。(11)CentOS

CentOS来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同在于,CentOS并不包含封闭源代码软件。1.5GNU和GPL1.5.1 GNU简介

GNU(GNU's Not UNIX)计划是由Richard Stallman(理查德·斯托曼)在1983年9月27日公开发起的项目,它的主要目标是创建一套完全自由的操作系统。为保证GNU软件可以自由地使用、复制、修改和发布,所有GNU软件都在一份在禁止其他人添加任何限制的情况下授权所有权利给任何人的协议条款(GPL)。

UNIX是一种广泛使用的商业操作系统的名称,由于GNU将要实现UNIX系统的接口标准,因此GNU计划可以分别开发不同的操作系统部件。GNU计划采用了部分当时已经可自由使用的软件,比如TeX排版系统和X Window视窗系统等。不过GNU计划也开发了大批其他的自由软件。

1985年Richard Stallman又创立了自由软件基金会(Free Software Foundation,FSF)为GNU计划提供技术、法律以及财政支持。尽管GNU计划大部分时候是由个人自愿无偿贡献,但FSF有时还是会聘请程序员帮助编写。当GNU计划开始逐渐获得成功时,一些商业公司开始介入开发和技术支持。当中最著名的就是之后被Red Hat兼并的Cygnus Solutions。

到了1990年,GNU计划已经开发出的软件包括了Emacs文字编辑器、GCC编程语言编译器,以及大部分UNIX系统的程序库和工具,唯一没有完成的重要组件就是操作系统的内核。

1991年Linus Torvalds编写出Linux操作系统内核并在GPL条款下发布。Linux之后在网上广泛流传,许多程序员参与了开发与修改。1992年Linux与其他GNU软件结合,完全自由的操作系统正式诞生,该操作系统往往被称为GNU/Linux(简称Linux)。

许多UNIX系统上也安装了GNU软件,因为GNU软件的质量比之前UNIX的软件还要好。GNU工具还被广泛地移植到Windows和Mac OS系统上。

GNU包含以下三个协议条款。

GPL:GNU General Public License(GNU通用公共许可证);

LGPL:GNU Lesser General Public License(GNU较宽松公共许可证);

GFDL :GNU Free Documentation License(GNU自由文档许可证)。

由于GPL很难被商业软件所应用,它要求调用它的库的代码也得GPL,全部开放,并且一同发布,不能直接连接,所以后来GNU推出了LGPL许可证。GPL和LGPL之间唯一不同之处在于私人版权代码是否可以与开放源代码相互连接,LGPL允许实体连接私人代码到开放源代码,并可以在任何形式下发布这些合成的二进制代码。只要这些代码是动态连接的就没有限制。1.5.2 GPL简介

GPL(General Public License,GNU通用公共许可证)是一个被广泛使用的自由软件许可协议条款,最初由Richard Stallman(理查德·斯托曼)为GNU计划而撰写,它以GNU Emacs、GDB、GCC的许可证的早期版本为蓝本。该许可证最新版本为第3版(GPLv3),于2007年6月29日发布。GPL给予了计算机程序自由软件的定义,并且使用Copyleft来确保程序的自由被完善地保留。

GPL许可社会公众享有运行、复制软件的自由,发行传播软件的自由,获得软件源码的自由,改进软件并将自己作出的改进版本向社会发行传播的自由。

GPL还规定只要这种修改文本在整体上或者其某个部分来源于遵循GPL的程序,该修改文本的整体就必须按照GPL流通,不仅该修改文本的源码必须向社会公开,而且对于这种修改文本的流通不允许附加修改者自己作出的限制。因此一项遵循GPL流通的程序不能同非自由的软件合并。

GPL遵循以下原则。

确保软件自始至终都以开放源代码形式发布,保护开发成果不被窃取用作商业发售。任何一套软件,只要其中使用了受GPL协议保护的第三方软件的源程序,并向非开发人员发布时,软件本身也就自动成为受GPL保护并且约束的实体;

GPL大致就是一个Copyleft(反版权的意思,和Copyright相反)的体现。可以去掉所有原作的版权信息,只要保持开源,并且随源代码、二进制版附上GPL的许可证就行,让后人可以很明确地得知此软件的授权信息;

无论软件以任何形式发布,都必须同时附上源代码。比如在Web上提供下载,就必须在二进制版本(如果有的话)下载的同一个页面,清楚地提供源代码下载的链接。如果以光盘形式发布,就必须同时附上源代码的光盘;

开发或维护遵循GPL的软件的公司或个人,可以对使用者收取一定的服务费用。但是必须无偿提供软件的完整源代码,不得将源代码与服务做捆绑或任何变相捆绑销售。1.6Red Hat Linux系统的优点

Red Hat Linux是初学Linux系统的最佳选择,对于初次接触Linux系统的用户来说,Red Hat Linux可以让用户很快感受到Linux系统的强大功能。

1.支持和硬件平台多

Red Hat Linux同时支持 Intel、Alpha、SPARC等众多硬件平台。

2.优秀的安装界面

Red Hat Linux只用制作一张启动盘就可以进行光盘方式的安装工作,整个安装过程非常简单明了,用户只需要选择很少的选项就可以开始安装。

3.独特的RPM升级方式

Red Hat所有的软件包都是以RPM方式包装的,这种包装方式让用户可以轻松进行软件升级,彻底卸载应用软件和系统部件,RPM使用简单,系统内核的升级也只用一行命令就可以轻松完成,而且还会检查程序运行时需要的库是否已经安装,用户安装一遍Red Hat Linux之后,就再也不用重新安装系统了,只需要不断升级就可以了。

4.丰富的软件包

Red Hat收集的软件包是非常完整的,不仅包括大量的GNU和自由软件,还包括了一些优秀的ShareWare软件。这些软件都经过Red Hat公司技术人员的认真调试和配置,使一个普通用户安装完Red Hat Linux之后立刻就能享受配置完整的Web、Samba等需要用户花费大量时间和精力去编译、安装的服务。

5.安全性能好

Red Hat默认配置下的系统安全性能已经非同一般,并且提供PAM和SELinux以加强系统安全性和系统管理的扩充性。如果用户计划增加系统的安全性,要安装更多的安全软件,比如TCP wrapper。

6.方便的系统管理界面

Red Hat提供一套X Window下的系统管理软件,使用系统账户可以在图形方式下增加、删除用户、改变系统设置、安装新软件和安装打印机等,与UNIX系统下通常采用的字符方式的界面相比要直观和方便得多,与商业UNIX系统提供的SAM和Windows系统下的控制面板相比也毫不逊色。

7.详细而完整的在线文档

在/usr/share/doc目录中收录了完整的系列说明文件,还有Red Hat独有的用户指南,详细说明各种软件安装、系统维护的方式。第2章安装和升级Linux系统安装Linux系统之前需要了解安装系统的相关知识,特别是分区命名方案、磁盘分区和挂载目录,本章主要讲述如何安装和升级Linux系统。2.1准备安装Linux系统

在安装Linux系统之前应做好相应的准备工作,这些工作包括了解安装Linux系统的硬件要求、交换分区(swap分区)的工作原理以及Linux系统磁盘分区方案和挂载目录。2.1.1 安装Linux系统的硬件要求

在计算机上安装Linux系统,首先需要了解你的计算机是否达到安装所必须的硬件要求,如果计算机配置较低,则系统是无法正常安装的。

1.安装Linux的硬件要求

安装Linux系统,需要计算机硬件配置能达到以下要求,目前主流的计算机都能达到该要求。

CPU:主流计算机和服务器都能达到要求;

内存:安装Linux系统至少需要1GB内存(建议使用2GB甚至更高内存);

硬盘空间:若要安装所有软件包至少需要10GB以上硬盘空间;

显示器和显卡;

DVD光驱。

2.硬件兼容性

硬件兼容性在老式计算机和组装计算机上显得特别重要。Linux系统与最近几年厂家生产的多数硬件相兼容,然而硬件的技术规范每天都在改变,很难保证计算机的硬件会百分之百地兼容。

要查看Red Hat硬件兼容性可以访问以下网址,查看众多厂家的硬件产品。

https://hardware.redhat.com2.1.2 交换分区

直接从物理内存读写数据要比从硬盘读写数据快得多,而物理内存是有限的,这样就使用到了虚拟内存。虚拟内存是为了满足物理内存的不足而提出的一种策略,它是利用磁盘空间虚拟出的一块逻辑内存,用作虚拟内存的磁盘空间被称为交换分区(swap分区)。

Linux系统会在物理内存不足的时候,使用交换分区做虚拟内存,也就是说内核会将暂时不用的内存块信息写到交换分区,这样一来,物理内存得到了释放,这块内存就可以用于其他用途,当需要用到原始的内容时,这些信息会被重新从交换分区读入物理内存。

Linux的内存管理采取的是分页存取机制,为了保证物理内存能得到充分的利用,内核会在适当的时候将物理内存中不经常使用的数据块自动交换到虚拟内存中,而将经常使用的信息保留到物理内存。

Linux系统会不时地进行页面交换操作,以保持尽可能多的空闲物理内存,即使并没有什么操作需要使用内存,Linux也会交换出暂时不用的内存页面,这可以避免等待交换所需的时间。

Linux进行页面交换是有条件的,不是所有页面在不用时都交换到虚拟内存,Linux内核根据“最近最常使用”算法,仅仅将一些不经常使用的页面文件交换到虚拟内存。2.1.3 Linux系统硬盘知识

硬盘被用来可靠地储存和检索数据,在硬盘分区之前用户需要了解Linux系统下硬盘的相关知识。

1.分区命名方案

Linux系统使用字母和数字的组合来指代硬盘分区,这与Windows系统不同,Windows系统分区会指派一个驱动器字母。驱动器字母从“C:”开始,然后依据分区数量按字母顺序排列。

Linux系统使用一种更加灵活的分区命名方案,该命名方案是基于文件的,文件名的格式为/dev/xxyN(比如/dev/sda1分区)。

下面详细讲解Linux系统分区的命名方法。

/dev:这是Linux系统下所有设备文件所在的目录名。因为分区位于硬盘上,而硬盘是设备,所以这些文件代表了在/dev上所有可能的分区。

xx:分区名的前两个字母表示分区所在设备的类型,通常是hd(IDE硬盘)或sd(SCSI硬盘)。

y:这个字母表示分区所在的设备。例如,/dev/hda(第1个 IDE 硬盘)或/dev/sdb(第2个SCSI硬盘)。

N:最后的数字N代表分区。前4个分区(主分区或扩展分区)用数字1~4表示,逻辑驱动器从5开始。例如,/dev/hda3是第1个IDE 硬盘上的第3个主分区或扩展分区;/dev/sdb6是第2个SCSI硬盘上的第2个逻辑驱动器。

2.磁盘分区和挂载目录

令许多学习Linux系统的新用户感到困惑的是各分区是如何被Linux系统使用和访问的。在Windows系统中相对来说较为简单,每一个分区有一个驱动器字母,用户用驱动器字母来指代相应分区上的文件和目录。

Linux系统处理分区及磁盘存储的方法截然不同,Linux系统中的每一个分区都是构成支持一组文件和目录所必需的存储区的一部分。它是通过挂载来实现的,挂载是将分区关联到某一目录的过程,挂载分区使起始于这个指定目录(称为挂载目录)的存储区能够被使用。

例如,如果分区/dev/sda5被挂载在目录/usr上,这意味着所有在/usr下的文件和目录在物理上位于/dev/sda5。因此文件/usr/bin/cal被保存在分区/dev/sda5上,而文件/etc/passwd却不是。

/usr目录下的目录还有可能是其他分区的挂载目录。例如,某个分区(如/dev/sda7)可以被挂载到/usr/local目录下,这意味着文件/usr/local/man/whatis将位于分区/dev/sda7上,而不是分区/dev/sda5上。

3.硬盘分区方案

在计算机上安装Linux系统,对硬盘进行分区是一个非常重要的步骤,下面介绍常见的分区方案。(1)最简单的分区方案

swap分区:即交换分区,实现虚拟内存,建议大小是物理内存的1~2倍。

/boot分区:用来存放与Linux系统启动有关的程序,比如引导装载程序等,最少100MB。

/分区:建议大小至少在10GB以上。

使用以上的分区方案,所有的数据都放在/分区上,对于系统来说不安全,数据不容易备份。(2)合理的分区方案

swap分区:实现虚拟内存,建议大小是物理内存的1~2倍。

/boot分区:建议大小最少为100MB;

/usr分区:用来存放Linux系统中的应用程序,其相关数据较多,建议最少为8GB;

/var分区:用来存放Linux系统中经常变化的数据以及日志文件,建议最少为1GB;

/分区:Linux系统的根目录,所有的目录都挂在这个目录下面,建议最少为1GB;

/home分区:存放普通用户的数据,是普通用户的宿主目录,建议大小为剩下的空间。2.2安装Linux系统

可以通过图形界面和字符界面两种方式安装Linux系统,本节主要讲述图形界面安装方式,而字符界面的安装过程与图形界面相似。2.2.1 安装Linux系统的步骤

在安装Linux系统前需要获取该软件,读者可以从网上搜寻并下载Red Hat Enterprise Linux 6 update 4 x86_64(64位系统)。

1.安装引导

首先要设置计算机的BIOS启动顺序为光驱启动,保存设置后将Linux系统的DVD安装光盘放入DVD驱动器中,然后重新启动计算机。计算机启动以后会出现如图2.1所示的界面,这时可以使用[↑]键(向上键)和[↓]键(向下键)切换到【Install or upgrade an existing system】选项,然后按回车键就可以通过图形界面开始安装Linux系统。图2.1 安装引导界面

2.检测光盘介质

接下来的安装过程中,Linux系统会检测用户计算机硬件的相关信息。检测完毕后在图2.2所示的界面中,要求检查光盘介质MD5SUM信息,如果希望进行检验,单击【OK】按钮,否则用[Tab]键切换到【Skip】按钮上按回车键跳过。在此安装过程阶段,用户可以选择单击【Skip】按钮跳过检测光盘介质。图2.2 检测光盘介质界面

3.安装欢迎界面

在跳过安装光盘检测之后,进入如图2.3所示的Linux安装欢迎界面,在此界面中单击【Next】按钮进入下一步安装界面。图2.3 安装欢迎界面

4.选择安装过程语言

在语言选择界面中可以根据实际情况选择语言,在此处选择的语言即是安装Linux系统过程中所使用的语言,而且还是Linux系统所使用的默认语言,在此选择【Chinese(Simplified)(中文(简体))】选项,如图2.4所示。图2.4 选择安装过程语言

5.选择键盘类型

选择完安装系统过程中的语言后,单击【Next】按钮进入如图2.5所示的界面选择键盘类型,一般计算机默认会选择【美国英语式】,在此使用默认的选择。图2.5 选择键盘类型

6.安装存储设备

单击【下一步】按钮,进入如图2.6所示的界面,选择【基本存储设备】选项,如果使用SAN安装Linux系统,那么选择【指定的存储设备】选项。图2.6 安装存储设备

单击【下一步】按钮,弹出如图2.7所示的界面,在安装中已经检测到了硬盘,容量大小为512000MB(500GB),该硬盘目前是一块空白设备,也没有检测到任何分区和文件系统。单击【是,忽略所有数据】按钮,接着将初始化计算机磁盘并且删除磁盘上的所有数据(如果有数据的话)。图2.7 初始化磁盘

7.指定计算机主机名

安装存储设备之后接着出现如图2.8所示的界面,在该界面中指定计算机的主机名,主机名是用来识别计算机的一种方法,所以在网络内不允许出现同名的主机。

8.网络配置

在图2.8所示界面中单击【配置网络】按钮,将打开如图2.9所示的【网络连接】界面,安装程序会自动检测系统中的网络设备,已经搜索到一块网卡,该网卡的名称为eth0。图2.8 设置计算机主机名图2.9 网络连接

选择该网卡,单击【编辑】按钮,打开如图2.10所示的界面,选择【自动连接】复选框,这样当Linux系统启动时,该网卡将会自动激活。图2.10 选择自动连接

接下来就该设置IP地址了,这里我们使用IPv4地址。选择【IPv4设置】选项卡,依次输入地址、子网掩码、网关、DNS服务器等信息,如图2.11所示,然后单击【应用】按钮并关闭【网络连接】对话框。图2.11 设置静态IP地址

9.时区选择

网卡IP地址配置完以后,单击【下一步】按钮,在如图2.12所示的界面上选择计算机所在的时区,这里选择【亚洲/上海】,即北京时间。图2.12 时区选择界面

10.设置根用户密码

单击【下一步】按钮,进入如图2.13所示的界面,两次输入根密码,即该Linux系统超级管理员root用户的密码。根密码必须至少包含6个字符,输入的密码不会在屏幕上显示,而且密码是区分大小写的,建议在此设置包含有大写字母、小写字母、数字以及特殊符号的复杂密码。图2.13 设置根用户密码

11.磁盘分区配置

单击【下一步】按钮,进入如图2.14所示的磁盘分区配置界面。在Linux系统安装过程中有自动分区和手工分区两种磁盘分区方式。图2.14 磁盘分区设置界面(1)自动分区方式

自动分区方式可以允许用户选择在计算机磁盘上删除哪些分区,并自动对磁盘进行分区,默认创建/分区和swap分区,可以供选择的自动分区方式有以下几种。

使用所有空间:选择该选项将删除磁盘驱动器上的所有分区,包括由其他操作系统创建的分区,如Windows系统所创建的分区,然后在计算机上创建默认的分区结构。

替换现有Linux系统:选择该选项将只删除Linux分区(以前安装Linux系统时创建的分区),而不会影响用户磁盘驱动器上的其他分区(例如FAT32分区),然后在计算机上创建默认的分区结构。

缩小现有系统:缩小已经存在的分区,释放部分空间。这种方式在硬盘剩余空间不足的情况下可以选择使用。

使用剩余空间:选择该选项系统将保留用户当前的数据和分区(假设用户的硬盘驱动器上有足够的可用空闲空间),然后在计算机上创建默认的分区结构。(2)手工分区方式

在图2.14所示界面中选择【创建自定义布局】,然后单击【下一步】按钮,进入如图2.15所示手工分区界面,在这里可以按用户预先设计的分区方案来进行分区。图2.15 手动分区界面

在这里我们可以看到很多按钮,这些按钮控制着手工分区的行为,它们用来改变一个分区的属性(比如文件系统类型和挂载点),还可用来创建RAID设备和LVM。

创建:生成存储,单击该按钮后,将出现一个对话框创建标准分区、软件RAID和LVM。

编辑:修改目前在分区部分选定分区的属性。单击【编辑】按钮打开一个对话框。部分或全部字段可被编辑,这要依据分区信息是否已被写入磁盘而定。

删除:删除目前在当前磁盘分区部分中突出显示的分区,用户会被要求确认对任何分区的删除。

重设:用来把磁盘恢复到最初的状态。如果用户重设分区,那么所做的所有改变将会 丢失。

单击【创建】按钮出现如图2.16所示的对话框,可以创建标准分区、软件RAID和LVM。

生成分区:创建普通的标准Linux分区。

创建软件RAID:给部分或全部磁盘分区提供冗余性,需谨慎使用。如果要制作一个RAID设备,用户必须首先创建软RAID分区。如果用户已经创建了两个或两个以上的软RAID分区,选择【RAID设备】单选框把软RAID分区连接为一个RAID设备。

生成LVM:创建物理卷、卷组和逻辑卷设备,通过使用逻辑卷安装Linux系统可以实现磁盘分区的扩容。图2.16 生成存储

下面详细介绍在创建标准分区时各分区字段的含义及其使用方法。

挂载点:输入分区的挂载点。如果这个分区是根分区,输入/;如果是/boot 分区,输入/boot,如果是swap分区则无需挂载点。也可以通过使用下拉菜单为磁盘分区选择正确的挂载点。

文件系统类型:使用下拉菜单,选择用于该分区的合适的文件系统类型,比如swap或ext4。

允许的驱动器:这个字段包括用户计算机上安装的磁盘列表。如果一个磁盘的列表突出显示,那么在该磁盘上可以创建分区。

大小(MB):输入分区的大小,单位为MB。

其他大小选项:选择是否要将分区保留为固定大小,允许它扩大(使用硬盘驱动器上的可用空间)到某一程度,或允许它扩大到使用全部硬盘驱动器上可用的剩余空间。如果用户选择【指定空间大小(MB)】,必须在这个选项右侧的字段内给出大小限制。这会允许用户在硬盘驱动器上保留一定的空间为将来使用。

强制为主分区:选择所创建的分区是否为磁盘上的四个主分区之一。

加密:将磁盘分区进行加密。

接下来开始对磁盘进行手工分区,按以下方案进行分区。

磁盘总空间:500GB。

/boot分区:100MB。

swap分区:2048MB(2GB)。

/分区:153600MB(150GB)。

剩余空间(为以后实验使用):347.9GB。

开始创建分区,首先创建/boot分区,指定挂载点为/boot,文件类型类型为ext4,以及分区的容量大小为100MB,如图2.17所示,最后单击【确定】按钮。图2.17 创建/boot分区

接着创建swap分区,swap分区不需要指定挂载点,文件系统类型为swap,分区的容量大小为2048MB(2GB),如图2.18所示,最后单击【确定】按钮。图2.18 创建swap分区

最后创建/分区,指定挂载点为/,文件系统类型为ext4,分区的容量大小为153600MB(150GB),如图2.19所示,最后单击【确定】按钮。图2.19 创建/分区

按分区方案将所有的分区创建完毕以后,效果如图2.20所示,共三个磁盘分区,分别是sda1、sda2和sda3。图2.20 最终分区效果界面

单击【下一步】按钮,出现如图2.21所示的【将存储配置写入磁盘】界面,单击【将修改写入磁盘】按钮开始创建分区并格式化分区。图2.21 将存储配置写入磁盘

12.引导装载程序设置

将存储配置写入磁盘之后,进入如图2.22所示的引导装载程序设置界面,引导装载程序是Linux系统启动时所运行的第一个软件,它的责任是载入操作系统内核,并把控制权转交给内核,然后内核再初始化剩余的操作系统。图2.22 引导装载程序配置

Linux系统为用户提供了GRUB引导装载程序,GRUB 能够通过连锁载入另一个引导装载程序来载入其他操作系统。(1)引导装载程序设备

在如图2.22所示的界面中单击【更换设备】按钮,进入如图2.23所示的界面,系统默认将引导装载程序安装到主引导记录(MBR)中。图2.23 安装引导装载程序的路径

在下面两个位置之一中可以安装引导装载程序。

主引导记录(MBR)-/dev/sda:这是引导装载程序推荐安装的地方,除非MBR已经是启动另一个操作系统的引导装载程序。MBR是硬盘驱动器上的一个特殊区域,它会被BIOS自动载入,并且是引导装载程序控制引导进程的最初位置。如果用户在MBR上安装引导装载程序,当用户的计算机引导时,GRUB会显示一个引导提示,然后便可以引导Linux或其他任何用户配置要引导的操作系统。

引导分区的第一个扇区-/dev/sda1:如果已经在系统上使用另一个引导装载系统,则推荐使用这个位置。在这种情况下,用户的另外的引导装载系统会首先取得控制权,然后可以配置它来启动GRUB,继而引导Linux系统。(2)引导装载程序密码

安装引导装载程序时用户应该设置一个密码来保护GRUB的安全。若使用了引导装载程序密码,用户必须先输入该密码之后才能进入GRUB。如果选择使用引导装载程序密码来增进系统安全性,需选择【使用引导装载程序密码】复选框,接着弹出【输入引导装载程序密码】对话框,输入密码并确认,如图2.24所示。图2.24 设置引导装载程序密码(3)设置系统标签

在如图2.22所示的界面中选择默认系统,然后单击【编辑】按钮,打开【添加/编辑引导装载程序记录】对话框。在【标签】文本框中用户可以设置一个容易识别的系统标签,如图2.25所示,最后单击【确定】按钮即可。图2.25 设置标签

13.软件包安装

引导装载程序设置完毕,单击【下一步】按钮,进入如图2.26所示的软件包安装设置界面。图2.26 软件包安装默认界面(1)默认安装软件包

默认安装可以选择基本服务器、数据库服务器、万维网服务器、身份管理服务器、虚拟化主机、桌面、软件开发工作站以及最小等不同的软件组。选择不同的软件组安装的软件包和数量是不同的。

在默认安装环境下的软件组可以选择【桌面】,这样就会安装一个图形化管理界面,以便在图形界面上管理Linux系统。选择【以后自定义】单选框,然后单击【下一步】按钮开始安装默认的软件包,这种方式将安装很少的软件包,所占用的磁盘空间也较小。(2)自定义安装软件包

建议读者在此自定义安装软件包,在如图2.26所示的界面下选择【现在自定义】单选框并单击【下一步】按钮,进入如图2.27所示的界面选择要安装的软件包组(比如KDE桌面、输入法等软件包组)。建议刚开始学习Linux的读者在此选择所有的软件包组。图2.27 选择软件包组

在Linux系统中,每一个软件包都是有归类的,比如【KDE桌面】就包含了很多KDE桌面环境下的软件包,共有24个软件包,在此勾选【KDE桌面】复选框,然后单击【可选软件包】按钮,出现如图2.28所示的界面,选择需要安装的软件包。图2.28 选择软件包

14.开始安装Linux系统

当软件包选择完毕之后单击【下一步】按钮,经过安装筹备后开始安装Linux系统,如图2.29所示。界面上会显示每一个正在安装的软件包名称、大小以及软件包描述信息。软件包选择的越多,安装过程时间越长,在这里你就耐心的等待吧。图2.29 安装Linux系统过程

15.Linux安装完毕

Linux系统安装完毕之后,出现如图2.30所示的界面,单击【重新引导】按钮开始接下来的安装后的初始化配置。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载