linux的程序包管理rpm

,,,,我们知道,程序就是指令加上数据的集合或者称为算法加上数据结构的集合。应用程序以源代码和二进制的形式存在:源代码是包含了整个应用程序的编程语言的所有代码的文本文件;二进制则是将源代码经过一系列的转换操作之后得到的可以直接执行的文件。
,,,使用源代码安装应用程序的步骤为:预处理(预处理器)——比;编译(编译器)——比;字节码——比;汇编(汇编器)——比;链接(链接器)——比;可以直接执行的二进制程序文件。当我们使用源代码安装应用程序时,不同操作系统的相同操作安装出来的相同应用程序如果直接拿出来放在另一个操作系统上使用可能会不能使用,但如果两台主机的不同操作系统有POSIX的接口标准,便可以直接使用。
,,,程序包管理器在制定系统中进行程序的安装、卸载,升级,查询及校验等工作。不同的linux发行版本,有着不同的程序包管理器:Debian: dpt (Debian软件包工具包),dpkg工具,. deb后缀名的包文件;RdeHat: rpm (Redhat包管理器),转工具,rpm后缀名的包文件;S.u.s。艾凡:rpm等rpm成为linux的程序包管理器的行业标准,rpm是perl编写的,后来用C重写了rpm。
,,,在制作rpm程序包的时候,通常其制作者会采用分包技术来构建rpm程序包,或者说是根据程序的不同功能,构建多个程序包。被分包的程序包分为主程序包和附属功能包。主程序包和附属功能包具有相同的版本号,发行版本号,操作系统以及兼容平台的标识,仅仅是多了个附属的功能而已。所以,主程序包往往被所有的附属功能包所依赖,不安装主程序包就不能安装附属功能包。
,,,对于rpm程序包的命名,源码包和二进制包的命名方式是不同的:源码包:software_name-VERSION.src.rpm;二进制包:software_name-VERSION——(释放)。(os) .arch。rpm。
,,,rpm程序包中文件的组成清单:
,,,,1。程序的文件
,,,,2。文件清单
,,,,3。软件安装或卸载时所运行的脚本文件:共分为四类
,,,,,,,1)预设:在正式的安装操作开始之前所运行的脚本,%
,以前,,,,,,2)postinstall:在安装完成之后所执行的脚本,%
后,,,,,,,3)preuninstall:在正式卸载操作开始之前所运行的脚本,% preun
,,,,,,,4)postuninstall:在卸载完成之后所执行的脚本,% postun
,,,在计算机中安装rpm程序包一般使用rpm或者百胜工具rpm命令行工具可以进行安装、卸载,升级(降级),查询,文件校验,验证,数据库维护的操作rpm中的通用选项为- v:显示安装历程的信息,仅仅显示安装软件名;vv显示非常详细的操作信息。
,,,rpm中的安装操作:rpm ,{我|——安装},,(安装选项),,PACK-AGE_FILE……
,,,安装选项:
,,,,,- h,散列:用50个#来表示安装进度
,,,,,——测试:并不是真正的安装软件包,仅仅是测试是否在安装时能够正常完成,排练模式
,,,,,——nodeps:忽略因为依赖关系导致的安装错误,不建议使用。
,,,,,——replacefiles:替换文件:在安装软件包时,软件包中的文件会直接将原来安装的文件替换;
,,,,,——replacepkgs:替换程序包:无需卸载软件包而重新安装
,,,,,——noscript:不运行任何脚本
,,,,,——nosignature:不考虑软件包的来源是否合法
,,,,,——nodigest:不考虑软件包是否完整
,,,rpm中的升级操作:rpm - u(安装选项)& lt; package_file> +
,,,,,如果选择被安装的程序包事先并未安装,则全新安装,如果已经安装了旧版本,则可以升级安装;
,,,,rpm ,(- f |——清新),,(安装选项),& lt;包゛ge_file> +
,,,,,仅仅只能对已经安装的低版本的程序包进行升级安装;
,,,,,常用选项:与安装相同
,,,,,,,——oldpackage:用老版本的程序包替换新版本的程序包
,,,,,,,——力强制升级
,,,,,,,注意:不要对内核进行升级操作,linux可以支持多内核,可以直接安装新版本的内核,在启动界面可以手动更换,升级安装可能会带来文件的变化,因此系统默认不会直接更改之前安装过的程序的配置文件,新程序包中的配置文件会被重命名,通常会是:FINENAME。rpmnew
,,,rpm中的卸载操作:rpm ,{- e |——消除},,(——allmatches),,(——nodeps)
,,,——allmatchs:将卸载所有匹配制定名称的程序包的各个版本;
,,,——nodeps:卸载时忽略依赖关系,不建议使用
,,,——测试:仅仅测试卸载,排练模式
,,,rpm中的查询操作:rpm ,{- q |——查询},,(选择选项),,,[查询选项]
,,,,,,直接给出程序包名
,,,,,,——,——所有查询所有已安装的程序包名
,,,,,,- f,文件文件查找指定的文件是由哪个程序包提供的;
,,,,,,- p,包PACKAGE_FILE对还没有安装的程序包文件中执行查询操作

linux的程序包管理rpm