版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目6软件安装管理麒麟操作系统应用活页式教程学习目标Ø知识目标1.掌握RPM包的相关概念2.掌握RPM包管理命令3.掌握YUM包管理命令Ø 能力目标1.能够掌握RPM包的命名规则、依赖性等相关概念2.能够掌握使用rpm命令完成软件包的安装与升级、查询、卸载、校验等操作3.能够掌握使用yum命令完成软件包的查询、安装与升级、卸载等操作,并掌握YUM源的搭建方法
Ø素养目标1.培养探索、创新、改革的科学精神2.养成严谨的规范意识,提升职业技能3.培养严谨求实、不懈努力的工匠精神任务1RPM包管理contents目录任务2YUM包管理任务1RPM包管理安装RPM工具包安装与升级RPM包查询RPM包任务流程卸载RPM包校验RPM包任务1RPM包管理步骤1:安装RPM工具包。任务1RPM包管理使用yuminstallrpmdevtools命令安装RPM工具包。在安装时,自动安装依赖包rpm-build和依赖包zstd,确认安装界面如图6-1所示。输入“y”确认安装,安装完成,如图6-2所示。图6-1确认安装界面步骤1:安装RPM工具包。任务1RPM包管理图6-2安装完成步骤1:安装RPM工具包。任务1RPM包管理图6-2安装完成
知识链接:RPM(RedHatPackageManager)工具包。RPM工具包的功能:RPM工具包是由RedHat公司开发的,是一种用于互联网下载包的打包和自动安装工具,会生成具有“.rpm”扩展名的文件,可以用来管理应用程序的安装、卸载和维护。由于其使用简单,操作方便,可以实现软件的查询、安装、卸载、升级和校验等功能,为用户节省了大量时间,因此目前很多Linux版本都在使用这种包管理方式,包括麒麟高级服务器版、Fedora、CentOS、SUSE等。RPM工具包的优点如下。(1)包管理系统简单,只要通过几个命令就可以实现包的安装、升级、查询和卸载。(2)安装速度比源码包快很多。任务1RPM包管理
知识链接:RPM工具包也有缺点,具体如下。(1)经过编译,不能再看到源代码。(2)在功能选择方面不如源码包灵活。(3)具有很强的依赖性。假设要安装软件包a,则可能需要先安装软件包d和e,再安装软件包b和c,软件包依赖关系如图6-3所示。由于操作系统安装软件包的情况不同,因此有时这种依赖关系可能有几十种。
图6-3软件包依赖关系任务1RPM包管理经验分享:
如果操作系统中未安装RPM工具包,则无法使用rpm命令操作RPM包,因此需要先使用yum命令安装RPM工具包。如果操作系统中安装了RPM工具包,则可省略此步骤。用户可在终端输入rpm命令,测试操作系统是否具备RPM工具包。任务1RPM包管理步骤2:安装与升级RPM包。任务1RPM包管理(1)使用如下命令安装一个名为rp-pppoe-3.11-7.el7.x86_64.rpm的软件包,需要在软件包当前目录下安装,如图6-4所示。rpm-irp-pppoe-3.11-7.el7.x86_64.rpm
图6-4安装软件包步骤2:安装与升级RPM包。任务1RPM包管理(2)在安装过程中,如果需要显示安装的进度,则可以使用如下命令,如图6-5所示。rpm-ivhrp-pppoe-3.11-7.el7.x86_64.rpm
图6-5在安装过程中显示安装的进度步骤2:安装与升级RPM包。任务1RPM包管理(2)在安装过程中,如果需要显示安装的进度,则可以使用如下命令,如图6-5所示。rpm-ivhrp-pppoe-3.11-7.el7.x86_64.rpm
图6-5在安装过程中显示安装的进度经验分享:
在安装、更新或卸载软件包时,可能会对操作系统的文件系统和配置文件进行修改,这些操作需要用户具有足够的权限才能进行。在执行rpm命令时,如果当前用户没有足够的权限,则系统将会提示用户使用root权限才能执行该命令。在这种情况下,用户需要使用sudo命令或su命令切换到root用户。任务1RPM包管理
知识链接:1.RPM包的命名规则RPM包一般都会遵循统一的命名规则,RPM包的命名格式如下:name-version-release.arch.rpm软件包名称-软件版本号-发行版号-处理器架构例如,httpd-2.4.29-23.el7.x86_64.rpm。
httpd:软件包名称。
2.4.29:软件版本号。
23.el7:发行版号。
x86_64:适用的处理器架构。
rpm:RPM包的扩展名。Linux操作系统下的文件不是靠扩展名区分文件类型的,也就是说,Linux操作系统中的扩展名没有任何含义。“.rpm”扩展名是为了方便管理员识别的。任务1RPM包管理
知识链接:2.RPM包的安装命令格式rpm–i(or--install)[选项]file1.rpm…fileN.rpm其中,“-i”表示安装操作,file1.rpm到fileN.rpm表示待安装的RPM包名称。带“-i”参数rpm命令的详细选项如表6-1所示。表6-1带“-i”参数rpm命令的详细选项任务1RPM包管理选项说明-v查看更详细的安装信息画面-h在安装时输出hash记号(#)显示安装进度--test只对安装进行测试,并不实际安装--percent以百分比的形式输出安装进度--excludedocs不安装软件包中的文档文件--includedocs安装文档文件--replacepkgs强制重新安装已经安装的软件包--replacefiles替换属于其他软件包的文件--force忽略软件包及文件的冲突--noscripts不运行预安装和后安装脚本--prefix<path>将软件包安装到由<path>指定的路径下--ignorearch不校验软件包的结构--ignoreos不检查软件包运行的操作系统--nodeps不检查依赖性关系步骤2:安装与升级RPM包。任务1RPM包管理(3)“依赖检测失败”会导致软件安装失败。在很多时候利用RPM工具包安装软件会出现失败情况,如图6-6所示。
图6-6软件安装失败经验分享:
依赖检测失败中的“>=”表示版本号要大于或等于所显示的版本号;“<=”表示版本号要小于或等于所显示的版本号;“=”表示版本要等于所显示的版本号。任务1RPM包管理
知识链接:知识链接:RPM包的依赖性。1.树形依赖假设安装软件包a,则可能需要先安装软件包d和e,再安装软件包b和c。这种依赖关系依据当前系统已安装的软件包情况而定,有时会多达几十种。解决方案:这是最常见的依赖关系,按照依赖顺序安装软件包。2.环形依赖假设安装软件包a需要安装软件包b;安装软件包b需要安装软件包c;安装软件包c需要安装软件包a。当出现这种情况时,顺序安装无法解决。解决方案:可以通过同时安装软件包a、b、c来解决。命令如下。rpm-ivha.rpmb.rpmc.rpm任务1RPM包管理
知识链接:3.函数库依赖函数库的命名是以“.so.数字”结尾的。例如,libapr-l.so.0就是函数库,它不是软件,只是包中的一个文件而已。如果安装失败提示对函数库依赖,则不能按照文件名称去查找RPM包来安装。解决方案:可以在RPM包搜索引擎中输入要查找的库文件名,搜索出此库文件所在的软件包。由于RPM包的依赖性,直接安装RPM包较为烦琐,因此可以通过YUM在线管理自动安装以解决问题,具体参见后续任务中的YUM在线管理。任务1RPM包管理步骤2:安装与升级RPM包。任务1RPM包管理(4)使用如下命令完成RPM包的升级,如图6-7所示。rpm-Uvhrp-pppoe-3.11-7.el7.x86_64.rpm
图6-7升级RPM包经验分享:通常在进行整个操作系统的旧版软件修补时,可以进行如下操作。(1)到各厂商的errata网站或者国内的FTP镜像站点下载最新的PRM文件。(2)使用“-Fvh”将系统内已安装的软件进行修补和升级。任务1RPM包管理
知识链接:
RPM包的升级命令。RPM包的升级命令格式如下。rpm–Uvh包全名常用选项如下。
-U:升级安装。如果没有安装过,则系统直接安装。如果安装的版本较低,则升级到新版本(Upgrade)。
-F:升级安装。如果没有安装过,则不会安装。必须在已经安装有较低版本的情况下才能升级(Freshen)。任务1RPM包管理步骤3:查询RPM包。任务1RPM包管理1.查询rp-pppoe软件包是否已经安装使用如下命令查询rp-pppoe软件包是否已经安装,如图6-8所示。rpm-qrp-pppoe
图6-8查询rp-pppoe软件包是否已经安装经验分享:rp-pppoe-3.11-7.el7.x86_64.rpm通常是指包全名,而rp-pppoe被叫作包名。在没有安装软件包时,必须写包全名,而且要写绝对路径;而已经安装的软件包只需要写包名即可,因为安装的软件包已建立数据库,可以在任意路径下执行命令。任务1RPM包管理
知识链接:RPM包的查询命令。RPM包的查询命令格式如下。rpm{–q|--query}[选项][查询信息]其中,查询参数可使用“-q”或者“--query”,二者必选其一。rpm查询命令支持的所有选项有3类:详细选项(见表6-2)、信息选项(用于显示文件的一些属性信息,如文件列表、文件功能等,见表6-3)、通用选项(见表6-4)。任务1RPM包管理任务1RPM包管理详细选项说明-p<file>查询软件包的软件-f<file>查询<file>属于哪个软件包-a查询所有安装的软件包--whatprovides<x>查询提供了<x>功能的软件包-g<group>查询属于<group>组的软件包--whatrequires<x>查询所有需要<x>功能的软件包表6-2rpm查询命令详细选项任务1RPM包管理表6-3rpm查询命令信息选项信息选项说明<null>显示软件包的全部标识-i显示软件包的概要信息-l显示软件包的文件列表-c显示配置文件列表-d显示文档文件列表-s显示软件包中的文件列表及其状态--scripts显示安装、卸载、校验脚本--queryformat/--qf以用户指定方式显示查询信息--dump显示每个文件的所有已校验信息--provides显示软件包提供的功能--requires/(-R)显示软件包所需的功能任务1RPM包管理表6-4rpm查询命令通用选项通用选项说明-v显示附加信息-vv显示调试信息-root<path>指定软件安装目录--rcfile<rcfile>设置rpmrc文件为<rcfile>-dbpath<path>设置RPM资料库所在的路径为<path>步骤3:查询RPM包。任务1RPM包管理2.查询系统中所有已安装的软件包使用如下命令查询系统中所有已安装的软件包,如图6-9所示。rpm-qa
图6-9查询系统中所有已安装的软件包步骤3:查询RPM包。任务1RPM包管理3.查询软件包中的文件列表使用如下命令查询已安装的软件包rp-pppoe中的文件列表和安装的完整目录,如图6-10所示。rpm–qlrp-pppoe
图6-10查询已安装的软件包中的文件列表和安装的完整目录步骤3:查询RPM包。任务1RPM包管理使用如下命令查询未安装的软件包中的文件列表和打算安装的位置,如图6-11所示。rpm–qlpglibc-debug-2.3.2-4.80.8.i386.rpm
图6-11查询未安装的软件包中的文件列表和打算安装的位置步骤3:查询RPM包。任务1RPM包管理4.查询软件包所依赖的软件包使用如下命令查询系统中和已安装的软件包有依赖关系的软件包,如图6-12所示。rpm–qRrp-pppoe
图6-12查询和已安装的软件包有依赖关系的软件包步骤4:卸载RPM包。任务1RPM包管理使用如下命令卸载RPM包,如图6-13所示。rpm–erp-pppoe
图6-13卸载RPM包经验分享:
卸载也是有依赖性的。例如,在安装时,先安装httpd软件包,再安装其功能模块mod_ssl包。那么在卸载时,一定要先卸载mod_ssl包,再卸载httpd软件包,否则会报错。任务1RPM包管理
知识链接:RPM包的卸载命令。要卸载已安装的RPM包,可以使用以下命令格式。rpm-e软件包名“-e”表示卸载(Erase)。该命令会从系统中移除指定的RPM包及其关联的文件和配置。需要注意的是,使用此命令卸载RPM包后,该软件将不再可用,并且可能会影响依赖它的其他软件。任务1RPM包管理步骤5:校验RPM包。任务1RPM包管理监控RPM包是否被改动,需要使用如下命令进行RPM包校验。如果没有提示信息,则没有被改动,如图6-14所示。rpm–Vrp-pppoe
图6-14RPM包校验
知识链接:RPM包的校验命令。RPM包的校验可以根据需要校验已安装的软件包或未安装的软件包文件的完整性。校验结果将会显示不匹配的文件或属性,以便检测软件包是否被改动、损坏或存在其他问题。RPM包的校验命令格式如下。rpm–V[选项]包名常用选项如下。
-a:校验本机已安装的所有软件包。
-f:校验某个系统文件是否被改动。任务1RPM包管理任务2YUM包管理任务2YUM包管理配置YUM源查询软件包信息安装与升级软件包任务流程卸载软件包步骤1:配置YUM源。任务2YUM包管理1.访问YUM源配置文件网络YUM源配置文件位于/etc/yum.repos.d/目录下,文件扩展名为“.repo”,扩展名为“.repo”的文件都是YUM源配置文件,如图6-15所示。
图6-15YUM源配置文件步骤1:配置YUM源。任务2YUM包管理当前目录下有4个YUM源配置文件,以ks8-adv-BaseOS容器为例,使用如下命令打开ks8-adv-BaseOS.repo文件,如图6-16所示。文件内容如图6-17所示。vimks8-adv-BaseOS.repo
图6-16打开ks8-adv-BaseOS.repo文件
图6-17ks8-adv-BaseOS.repo文件内容经验分享:ks8-adv-BaseOS容器中各参数的含义。
[ks8-adv-BaseOS]:容器名称,一定要放在“[]”中。
name:容器说明,可以根据情况任意编写。
baseurl:当前YUM源服务器的地址。默认是KylinLinuxAdvancedServer10的YUM源服务器地址,当然也可以改成其他YUM源服务器的地址。
gpgcheck:如果为1,则表示RPM的数字证书生效;如果为0,则表示RPM的数字证书不生效。
gpgkey:数字证书的公钥文件保存位置。不用修改。
enabled:如果不写或写成enabled=1,则表示此容器生效;如果写成enabled=0,则表示此容器不生效。
mirrorlist:镜像站点,该参数可以被注释掉。任务2YUM包管理
知识链接:1.YUM软件管理器YUM(YellowdogUpdater)是一个专门为了解RPM包的依赖关系而存在的Shell前端软件管理器。YUM的关键之处在于可靠的repository,即软件仓库。它可以是HTTP或FTP站点,也可以是本地软件池,但必须包含RPM的header,header包括RPM包的各种信息,如描述、功能、提供的文件、依赖性等。通过分析RPM的标头数据,可以自动处理RPM包的依赖性问题,从而一次性安装所有依赖的软件包,不需要逐一下载各个软件依赖包并安装,简化了RPM包的安装、升级、查询和卸载操作,非常方便和快捷。2.YUM源在使用YUM安装软件包之前,需要指定好YUM下载RPM包的位置,此位置被称为YUM源。换句话说,YUM源是指软件安装包的来源。在使用YUM安装软件时至少需要一个YUM源。既可以使用网络作为YUM源,又可以使用本地光盘作为YUM源。任务2YUM包管理步骤1:配置YUM源。任务2YUM包管理2.本地YUM源搭建(1)准备ISO文件光盘,或者从网络上直接下载。当前操作系统为银河麒麟高级服务器操作系统V10,用户可从麒麟软件官网下载相应版本的ISO文件。(2)挂载ISO文件到指定路径下。例如,将ISO文件挂载到/mnt/yum目录下,命令如下。①创建yum目录,作为挂载点。mkdir/mnt/yum②挂载ISO文件到/mnt/yum目录下。mount/root/Kylin-Server-10-SP2-aarch64-Release-Build09-20210524.iso/mnt/yum或者挂载光盘到/mnt/yum目录下。mount/dev/cdrom/mnt/yum/步骤1:配置YUM源。任务2YUM包管理(3)在/etc/yum.repos.d/目录下,使用如下命令修改其他几个YUM源配置文件的扩展名,使它们失效,如图6-18所示。mvks8-adv-Plus.repoks8-adv-Plus.repo.bakmvks8-adv-BaseOS.repoks8-adv-BaseOS.repo.bakmvks8-adv-PowerTools.repoks8-adv-PowerTools.repo.bak
图6-18修改其他几个YUM源配置文件的扩展名经验分享:修改YUM源配置文件的扩展名。只有扩展名是“.repo”的文件才能作为YUM源配置文件。如果想让YUM源配置文件失效,则可以删除其他几个YUM源配置文件,但是如果删除了,当想使用网络作为YUM源时,就没有了参考文件,所以最好还是修改文件的扩展名。任务2YUM包管理步骤1:配置YUM源。任务2YUM包管理(4)使用如下命令编辑自定义的“.repo”配置文件或者修改某个“.repo”配置文件,参数修改如图6-19所示。vimlocal.repo
图6-19参数修改经验分享:修改baseurl参数为当前镜像文件挂载地址,并且把enabled=0改为enabled=1,使当前YUM源配置文件生效。任务2YUM包管理步骤1:配置YUM源。任务2YUM包管理(5)使用如下命令清除缓存,启用本地YUM源。yumcleanallyummakecacheyumlist步骤2:查询软件包信息。任务2YUM包管理1.查找某个软件包名称或描述的重要关键字使用如下命令查找与httpd相关的软件包,如图6-20所示。“:”左侧显示的是软件包名称,右侧显示的是在RPM内的name设置(软件包名称)。yumsearchhttpd
图6-20查找与httpd相关的软件包
知识链接:yumsearch命令。yumsearch命令用于在仓库中搜索与关键字相关的软件包。yumsearch命令的格式如下。yumsearch关键字其中,关键字可以是软件包名称、描述或其他相关信息。执行该命令后,YUM会搜索仓库中的软件包,并显示与关键字相关的软件包列表。列表包含软件包名称、描述等信息。任务2YUM包管理步骤1:配置YUM源。任务2YUM包管理2.列出目前YUM源服务器所管理的所有软件包与版本(1)使用如下命令查找YUM源服务器中提供的所有软件包名称,图6-21所示为部分查询结果,分别显示软件包名称、版本、软件源。yumlist
图6-21部分查询结果(2)使用如下命令列出目前YUM源服务器中可供本机进行升级的软件包与版本,如图6-22所示。yumlistupdates
图6-22可供本机进行升级的软件包与版本步骤1:配置YUM源。任务2YUM包管理(3)使用如下命令查询YUM源服务器中是否包含某个软件包,如图6-23所示。yumlisthttpd
图6-23查询YUM源服务器中是否包含某个软件包
知识链接:yumlist命令。yumlist命令用于列出可用的软件包。在执行yumlist命令时,会显示仓库中的所有软件包及其相关信息,包括软件包名称、版本、大小和描述等。以下是yumlist命令的常用用法。(1)列出所有可用的软件包。yumlist该命令会列出所有可用的软件包,包括已安装的软件包和仓库中的软件包。(2)列出已安装的软件包。yumlistinstalled该命令会列出系统中已安装的软件包。(3)列出可更新的软件包。yumlistupdates该命令会列出可更新的软件包,包括已安装的软件包和仓库中的软件包的更新版本。任务2YUM包管理
知识链接:(4)列出特定的软件包信息。yumlistpackage_name该命令会列出与指定名称相关的软件包信息。例如,要想列出名为“nginx”的软件包信息,可以执行上述命令。(5)列出已安装但不在仓库中的软件包。yumlistextras该命令会列出已安装但不在仓库中的软件包。任务2YUM包管理步骤1:配置YUM源。任务2YUM包管理3.查询指定软件包的信息使用如下命令查询httpd软件包的相关信息,如图6-24所示。yuminfohttpd
图6-24查询httpd软件包的相关信息
知识链接:yuminfo命令。yuminfo命令对于在仓库中搜索软件包或获取所有软件包的概览非常有用。yuminfo命令有以下两种用法。1.列出所有可用软件包的摘要信息yuminfo该命令将列出所有可用软件包的摘要信息,包括软件包的名称、版本、大小和描述等。2.获取特定软件包的摘要信息yuminfo软件包名该命令将显示特定软件包的摘要信息,包括软件包的名称、版本、大小、描述、依赖关系等。任务2YUM包管理步骤1:配置YUM源。任务2YUM包管理4.查询提供指定内容的软件包如果我们想使用某个命令或文件,但是不知道这个命令或文件在哪个软件包中,则可以使用如下命令查询,图6-25所示为提供passwd命令的软件包。yumprovidespasswd
图6-25提供passwd命令的软件包
知识链接:
yumprovides命令。yumprovides命令用于查询提供指定文件的软件包。在执行此命令时,需要指定要查询的文件名称。YUM将在所有仓库中搜索提供指定文件的软件包,并返回匹配的软件包列表。以下是yumprovides命令的使用方法。yumprovides文件名执行该命令后,YUM将搜索所有仓库以查询提供指定文件的软件包。在某些情况下,需要使用sudo命令或以root用户身份执行该命令才能访问软件包信息。任务2YUM包管理步骤3:安装与升级软件包。任务2YUM包管理1.安装指定的软件包使用如下命令安装指定的软件包urlview-0.9-23.20131022git08767a.el8.x86_64,如图6-26所示。yuminstallurlview-0.9-23.20131022git08767a.el8.x86_64
图6-26安装指定的软件包
知识链接:yuminstall命令。yuminstall命令用于安装指定的软件包或一组软件包。在执行此命令时,需要指定要安装的软件包名。YUM会检查仓库,下载并安装相应的软件包以满足安装要求。yuminstall命令的格式如下。yuminstall软件包名执行该命令后,YUM将自动解决软件包的依赖关系,并下载、安装所有必需的软件包。任务2YUM包管理经验分享:“yum
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《课外阅读相变存储器》课件
- 语文:高考每日快餐(79套)
- 渴望苦难高考语文阅读理解
- 高三语文一轮复习(十八)文言文实词
- 教育培训机构销售专员工作总结
- 高中美术专业培养方案计划
- 酒店经营总结
- 汽车租赁公司前台工作总结
- 重庆市江津区2022-2023学年九年级上期期末化学试题
- 门诊护士工作总结
- 公务员考试申论电子教材及国家公务员考试申论电子教材
- 度假村开发方案
- 广东省惠州市2022-2023学年高一上学期期末考试物理试题(含答案)
- 辽宁省丹东市2022-2023学年八年级上学期末数学期末试卷(含答案)
- 2023年政府项目申报专员年度总结及下一年规划
- 中学燃气锅炉事故应急预案
- 公租房续租申请书范文示例
- 小学各项制度执行情况总结
- 2023-2024学年江苏省徐州市九年级(上)期中物理试卷
- 搬运装卸服务外包投标方案(技术标)
- 急性肾衰竭属于中医学“癃闭”范畴5种常用中成药辨证施治方案
评论
0/150
提交评论