《Linux操作系统基础》课件-项目八 软件安装与包管理工具_第1页
《Linux操作系统基础》课件-项目八 软件安装与包管理工具_第2页
《Linux操作系统基础》课件-项目八 软件安装与包管理工具_第3页
《Linux操作系统基础》课件-项目八 软件安装与包管理工具_第4页
《Linux操作系统基础》课件-项目八 软件安装与包管理工具_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目八软件安装与包管理工具能力目标和要求:(1)理解软件包的各种类型。(2)重点掌握RPM包管理工具。(3)重点掌握YUM前端工具。(4)掌握文件的打包和解压缩。(5)掌握源代码的安装方法。项目八软件安装与包管理工具项目八

思维导图任务8.1软件包类型8.1.1按内容分类

1.源码包源码包其实就是一大堆源代码程序,是由程序员按照特定的格式和语法编写出来的。解开该软件包之后,还需要使用编译器将其编译成为可执行文件方可运行。优点:源码包是开源的,因此可查看源代码,可以自由选择所需功能,通过直接删除安装位置即可卸载。缺点:由于必须经过编译,因此安装步骤比较多,并且编译时间过长。2.二进制包也叫编译后的二进制软件包,它是由源码包经过成功编译之后产生的包,解开该软件包之后可以直接运行。二进制包是Linux系统默认的软件安装包。优点:使用简单,只需要几个命令就可以实现软件包的安装、升级、查询、卸载,安装速度快。缺点:无法查看源代码,在功能选择上不如源代码包灵活,并且其在安装前需要解决软件包之间的依赖性问题。任务8.1软件包类型8.1.2按格式分类

(1)rpm格式软件包rpm全称是RedHatPackageManager(RedHat包管理器),它既是一种包管理工具,也是一种包的封装格式,它最先是由红帽公司发布的。在安装时,rpm会先依照软件里的数据查询相依赖的软件是否满足,如果满足则进行安装,如果不满足则不安装。在使用rpm进行安装时,软件安装的环境必须与打包时的环境需求一致或相当,并且在安装时需要满足某些软件的依赖,而且在卸载时需要特别小心,最底层的软件不可先移除,否则可能造成整个系统的问题。rpm软件包在红帽LINUX、SUSE、Fedora版本的Linux可以直接进行安装,rpm软件包可以在/等网站下载获取。(2)deb格式软件包deb是DebianLinux提供的一个包管理器,它与rpm十分类似。但由于rpm出现得早,并且应用广泛,所以在各种版本的Linux中都常见到。而Debian的包管理器dpkg只出现在DebianLinux中。它的优点是不用被严格的依赖性检查所困扰,缺点是只在DebianLinux发行版中才能见到这个包管理工具。(3)tar.gz格式软件包tar.gz其实就是一个压缩包,类似于Windows操作系统里的zip、rar等压缩文件。源码包一般都是使用tar打包成gz压缩包。因此,源码包名一般是以tar.gz结尾。任务8.1软件包类型8.1.3软件包的命名规则

在Linux系统中,无论是那种类型或那种格式的软件包,它的命名都遵循一定的规律,即:名称-版本-修正版-类型。例如:rp-pppoe-3.11-5.el7.x86_64.rpm(1)rp-pppoe:软件名称。(2)3.11:软体的版本。(3)5:释出的次数。(4)el7:适合的操作系统(5)x86_64:适合的硬体平台。(6)rpm:文件类型名。任务8.2RPM包管理工具RPM(RPMPackageManager)是RHEL/CentOS等Linux系统中流行的一种包管理工具,rpm是以一种数据库记录的方式来将所需要的软件安装在Linux主机上。而数据库记录了安装的包与包之间的依赖相关性。因此,使用rpm来安装软件需要先解决软件包之间的依赖性关系。由于rpm包管理工具不能自动解决软件包之间的依赖关系,因此,rpm包管理工具是一种精致安装。rpm命令有好多的命令选项,结合这些选项主要可以实现以下三类功能:(1)查询、验证rpm软件包的相关信息;(2)安装、升级、卸载rpm软件包;(3)维护rpm数据库信息等综合管理操作;在使用RPM包管理工具时应注意以下几点:(1)安装的时候,由于rpm的数据库没有记录软件包的相关记录,应该指明完整的rpm包名。(2)卸载的时候,不能指明完整的包名,只需要指定要卸载的软件包的名字即可(3)-U与-F选项均可用于软件升级,不同点在于,-U选项可用于升级或安装,如果已经安装了且存在新版本,会移除旧版本并升级成新版本,简称升级或安装软件包;-F只升级软件包,如果指定软件包没有安装,不会安装和升级。任务8.2RPM包管理工具命令格式:rpm[选项][软件包名称]表8-1rpm通用选项选项功能-?/--help查看帮助信息--version查看版本-quiet安静模式-v显示详细信息-vv显示更详细信息,以便排错表8-2rpm主选项主功能主选项配合选项配合功能查询-q-a查询所有已经安装过的软件包-f查询指定文件由哪一个软件包提供-p用于实现对未安装的软件包进行查询操作-l查询软件包安装生成的所有文件列表-i查询软件包的相关信息,包括名字、版本号、大小、所属包组、描述信息等。-c查询软件包提供的配置文件列表-d查询软件包提供的文本文件列表-L查询软件包的许可证信息-R查询指定软件包的依赖能力关系安装-i-h以#符号显示进度条;每个#表示2%的进度;--test测试安装,检查并报告依赖关系及冲突消息等--nodeps忽略软件包的依赖关系(正常情况不应该忽略)--replacefiles如果其他程序安装过相应文件,会覆盖安装--oldpackage允许降级安装软件包升级-U/-F--justdb只安装数据库,不包安装安装文件系统的文件;(通过查询选项还是可以列出安装的文件,不过实际并不存在,卸载的时候也要加上该选项)卸载-e--nodeps卸载软件包前不检查依赖关系--test测试卸载,不真正执行校验-V-nodeps校验的时候不检查软件包的依赖关系--nodigest校验的时候不检查包完整性--nosignature校验的时候不检查包签名信息和来源合法性任务8.2RPM包管理工具8.2.1查询

通过查询命令,可查询系统中已经安装有那些RPM软件包,也可以查询指定软件包的详细信息。[root@centos7Packages]#rpm-qa\\查询当前系统所有已安装的RPM包[root@centos7Packages]#rpm-qiptables\\查询指定RPM包[root@centos7Packages]#rpm-qa|grep"iptables"\\也可通过管道符“|”来查询指定RPM包[root@centos7Packages]#rpm-qiiptables\\查询已安装RPM软件的详细信息[root@centos7Packages]#rpm-qizsh\\查询未安装RMP包详细信息,由于未加-p选项,提示为未安装软件包[root@centos7Packages]#rpm-qpizsh\\由于RPM软件包未安装,查询时需要输入全名,否则出现打开失败提示。[root@centos7Packages]#rpm-qpizsh-5.0.2-28.el7.x86_64.rpm\\查询未安装RMP包详细信息,需输入rpm软件包全名。[root@centos7Packages]#rpm-qciptables\\查询已安装软件包配置文件[root@centos7Packages]#rpm-qpczsh-5.0.2-28.el7.x86_64.rpm\\查询未安装软件包配置文件[root@centos7Packages]#rpm-qdiptables\\查询已安装软件包提供的文本文件列表[root@centos7Packages]#rpm-qliptables\\查询已安装软件包安装生成的所有文件列表[root@centos7Packages]#rpm-qf/usr/share/man/man8/iptables.8.gz\\通过文件反向查询是由那个RPM包产生的任务8.2RPM包管理工具8.2.2安装

通过rpm命令可完成RPM软件包的安装。在安装之前,用户需要获得root权限。使用rpm命令进行安装需要手动解决软件包之间的依赖关系,如安装的软件包需要依赖其他软件包方可进行安装,需要根据提示把依赖包先行安装。[root@centos7Packages]#rpm-ivhzsh-5.0.2-28.el7.x86_64.rpm\\安装zsh软件包任务8.2RPM包管理工具8.2.3卸载

由于软件包之间存在着相互依赖的情况,在卸载软件包时需要先把依赖的软件包卸载掉,如果依赖的软件包是系统所必须的,就不能卸载该依赖包,否则会造成系统崩溃。[root@centos7Packages]#rpm-evhzsh\\卸载zsh软件包,注意卸载时只需软件包名,而不能输入完整包名。任务8.2RPM包管理工具8.2.4升级

使用rpm命令可对软件进行升级更新。并且,如果需要升级的软件还没有安装,系统会直接安装该软件。[root@centos7Packages]#rpm-Uvhzsh-5.0.2-28.el7.x86_64.rpm\\使用-U选项进行升级时,如果发现该软件未安装,则系统会安装该软件[root@centos7Packages]#rpm-Fvhzsh-5.0.2-28.el7.x86_64.rpm\\使用-F选项进行升级时,如果发现该软件未安装,此时系统不做任何操作任务8.2RPM包管理工具8.2.5校验

RPM软件包校验可用来判断已安装的软件包(或文件)是否被修改。[root@centos7Packages]#rpm-Vzsh\\检验只需要写软件名,如果检验成功不输出任何信息[root@centos7Packages]#rpm-qczsh\\查看zsh软件包的配置文件[root@centos7Packages]#echo"test">>/etc/skel/.zshrc\\往配置文件.zshrc添加信息[root@centos7Packages]#rpm-Vzsh\\重新检验,由于前面往配置文件.zshrc添加了信息,因此,检验时会检测出配置文件已经有过改动任务8.3RPM包管理器的前端工具YUMyum(YellowdogUpdaterModified),俗称小黄狗,是一个交互式的基于rpm实现的包管理器。yum是rpm的前端工具实现,可以从指定服务器上自动下载程序包,并自动分析程序包的元数据、自动处理程序包之间的依赖关系,能一次性安装完所有依赖的包,而无须手动分析并安装所有依赖包。

yum访问文件服务器(俗称yum源或yum仓库,yumrepository)的模式是基于C/S架构的,而文件服务器(repository)则需要以某种共享服务方式将其提供的程序包及包相关的元数据提供给其他主机使用,通常使用到的协议有http、https、ftp、nfs等。此外,也可以使用光盘作为本地仓库或者自己制作本地仓库,通常使用到的协议是file。yum能够实现rpm软件包的安装、卸载、查询,或者向其他命令或程序提供可用的软件包等操作。任务8.3RPM包管理器的前端工具YUM8.3.1配置本地YUM源

使用yum安装软件包时,至少需要一个yum源。CentOSLinux7默认的yum源配置文件存放在/etc/yum.repos.d/目录下,用户可以自行定义任意可以使用的yum源,但文件的扩展名必须是repo。本地yum源配置信息:[CentOS7-localbase]name=CentOS7localisoyumbaseurl=file:///media/cdromgpgcheck=0enabled=1表8-3YUM配置文件常用选项选项功能[repositoryID]yum源唯一的ID号,[里可以为任意字符串,但不同的yum源的ID号不允许相同name=Somenameforthisrepositoryyum源的名称,可以为任意字符串baseurl=url://path/to/repository指定yum源的URL地址(URL可以是http、https、ftp、nfs、file等协议,本地yum源使用file协议)mirrorlist=url://path/to/repository指定镜像站点目录enabled={1|0}是否启用yum源,1表示启用(默认值),0表示未启用gpgcheck={1|0}是否对软件包数据的来源合法性和数据完整性做检验,1表示检查,0表示不检查gpgkey=URL指定GPG密钥文件的访问路径,可由yum仓库提供。当gpgcheck启用时,这里需要指定任务8.3RPM包管理器的前端工具YUM8.3.2YUM命令

命令格式:yum[选项][命令][软件包名...]命令功能:用于查询、安装、卸载软件。表8-4yum常用选项选项功能-y自动回答为“yes”-q静默模式-v查看详细信息--nogpgcheck禁止对软件包进进行检测表8-5yum常用命令命令选项功能yumrepolist无显示yum源列表,默认的显示启用的yum源。enabled只显示启用的yum源列表disabled只显示关闭的yum源列表all显示启用和关闭的yum源列表yumrepoinfo无查看yum源的详细信息,选项与repolist一致,与repolist-v等价yumist无列出yum源中所有可以安装或更新的rpm包软件包名列出指定的可以安装或更新以及安装的rpm包available列出yum仓库所有可用的rpm包updates列出yum仓库所有可以更新rpm包installed列出所有已经安装的rpm包extras列出已经安装的但是不包含在yum仓库中的rpm包yum无列出资源库中所有可以安装或更新的rpm包的信息软件包名列出资源库中特定的可以安装或更新以及已经安装的rpm包的信息updates列出资源库中所有可以更新的rpm包的信息installed列出已经安装的所有的rpm包的信息extras列出已经安装的但是不包含在资源库中的rpm包的信息yum软件包名索匹配特定字符的rpm包yum文件名搜索有包含特定文件名的rpm包yum软件包名安装指定rpm包yum软件包名重新安装指定rpm包yumcheck-update无检查可更新的rpm包yum软件包名升级指定rpm包yum软件包名降级指定软件yum软件包名删除rpm包,包括与该包有倚赖性的包yum软件包名清除暂存中rpm包文件headers清除暂存中rpm头文件oldheaders清除暂存中旧的rpm头文件all清除暂存中旧的rpm头文件和包文件yummakecache无生成新的yum缓存任务8.3RPM包管理器的前端工具YUM8.3.3配置国内线上YUM源

配置线上yum源为阿里云。(阿里云官方镜像站:/mirror/)(1)配置网络,使得Linux系统可以联接互联网。(2)备份系统自带yum源[root@CENTOS7yum.repos.d]#mv*.reporepobk/\\备份系统自带的repo文件(3)下载最新的阿里云yum配置文件[root@CentOS7yum.repos.d]#wget-O/etc/yum.repos.d/CentOS-Base.repo/repo/Centos-7.repo\\下载阿里云的yum配置文件(4)清除缓存及创建新的yum源缓存[root@CentOS7yum.repos.d]#yumcleanall

\\清除yum源缓存[root@CentOS7yum.repos.d]#yummakecache

\\创建新的yum源缓存[root@CentOS7yum.repos.d]#yumrepolist

\\查看yum源列表任务8.4打包/解压缩文件

tar命令也是Linux系统中最常用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论