yum命令用法(yum命令管理软件需要哪些支持)

yum命令用法(yum命令管理软件需要哪些支持)p nbsp 概述 p p img src http shouzuofang com upload ad content xuanchuantu 11 jpg p 创新互联建站专注为客户提供全方位的互联网综合服务 包含不限于网站设计 成都网站设计 通许网络推广 小程序开发

大家好,我是讯享网,很高兴认识大家。



 <p>&nbsp;概述:</p><p><img src="http://shouzuofang.com/upload/ad_content/xuanchuantu-11.jpg"></p>创新互联建站专注为客户提供全方位的互联网综合服务,包含不限于网站设计、成都网站设计、通许网络推广、小程序开发、通许网络营销、通许企业策划、通许品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们大的嘉奖;创新互联建站为所有大学生创业者提供通许建站搭建服务,24小时服务热线:,官方网址:www.cdcxhl.com<p>&nbsp;&nbsp;&nbsp;本章内容:软件的运行环境,软件包基础,rpm包管理,yum管理,定制yum仓库,编译安装</p><p>一、软件运行环境</p>&nbsp;1.API:Application&nbsp;Programming&nbsp;Interface&nbsp;(应用程序开发接口) 

讯享网

&nbsp;&nbsp;&nbsp;POSIX:Portable&nbsp;OS(国际标准) &nbsp;&nbsp;&nbsp;程序源代码–>&nbsp;预处理–>&nbsp;编译–>&nbsp;汇编–>&nbsp;链接 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;静态编译: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;共享编译:.so &nbsp;&nbsp;&nbsp;ABI:Application&nbsp;Binary&nbsp;Interface(应用二进制程序接口) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Windows与Linux不兼容 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;linux:文件格式:ELF(Executable&nbsp;and&nbsp;Linkable&nbsp;Format) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;win:文件格式:exe,msl&nbsp;PE(Portable&nbsp;Executable) &nbsp;&nbsp;&nbsp;库级别的虚拟化: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Linux:&nbsp;WINE(提供模拟windows的库,运行win环境) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Windows:&nbsp;Cywin(提供linux的运行环境) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.开发语言 &nbsp;&nbsp;&nbsp;系统级开发 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C/C++(依赖于c库) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;httpd,nginx,vsftpd,go &nbsp;&nbsp;&nbsp;应用级开发 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;java(依赖于jvm虚拟机) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Python(openstack云站),php,perl(依赖于per解释器),ruby &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.程序格式: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c/c++ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;源代码:文本格式的程序代码; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;编译开发环境:编译器,头文件,开发库 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;二进制格式:文本格式的程序代码–>编译器–>二进制格式(二进制程序、库文件、配置文件、帮助文件) &nbsp;&nbsp;&nbsp;&nbsp;java/Python &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;源代码:编译能够在其虚拟机(jvm/pvm)运行的格式; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;开发环境:编译器、开发库 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;二进制 &nbsp;&nbsp;&nbsp;&nbsp;项目构建工具 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c/c++:make&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jave:maven

二、包管理

1.二进制应用程序的组成部分: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;二进制文件、库文件、配置文件、帮助文件 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.程序包管理: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;源代码–>目标二进制格式(二进制程序、库文件、配置文件、帮助文件)–>组织成为一个或有限几个“包文件”(安装,升级,卸载,查询,校验) &nbsp;&nbsp;&nbsp;&nbsp;程序包管理器: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;deblan:&nbsp;dpt,dpkg&nbsp;&nbsp;以”.deb”后缀 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redhat:&nbsp;rpm&nbsp;(redhat&nbsp;package&nbsp;manager)&nbsp;以&nbsp;”.rpm”后缀&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;S.u.S.E:rpm,&nbsp;”.rpm”命令 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3.包命令格式 &nbsp;&nbsp;&nbsp;&nbsp;源代码: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name-VERSION.tar.gz|bz2|xz &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VERSION:&nbsp;major(主版本号).minor(次版本号).release(发行号) &nbsp;&nbsp;&nbsp;&nbsp;rpm包命名格式: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name-VERSION-release.arch.rpm &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VERSION:&nbsp;major.minor.release(rpm包发行号) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;changelog文档(内容修复改进的相关文档) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;例:bash-4.2.46-19.el7.x86_64.rpm &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;release:release.OS &nbsp;&nbsp;&nbsp;&nbsp;常见的arch: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x86:&nbsp;i386,&nbsp;i486,&nbsp;i586,&nbsp;i686 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x86_64:&nbsp;x64,&nbsp;x86_64,&nbsp;amd64powerpc:&nbsp;ppc &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;跟平台无关:noarch&nbsp;(适用于所有平台) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4.包:分类和拆包 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Application-VERSION-ARCH.rpm:&nbsp;主包 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Application-devel-VERSION-ARCH.rpm&nbsp;&nbsp;开发子包 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Application-utils-VERSION-ARHC.rpm&nbsp;&nbsp;其它子包 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Application-libs-VERSION-ARHC.rpm&nbsp;&nbsp;&nbsp;其它子包 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;包之间:可能存在依赖关系,甚至循环依赖 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;自动解决依赖包管理前端工具: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;yum:rpm包管理器的前端工具 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;apt-get:deb包管理器前端工具 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;zypper:&nbsp;suse上的rpm前端管理工具 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dnf:&nbsp;Fedora&nbsp;18+&nbsp;rpm包管理器前端管理工具 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5.库文件 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;查看二进制程序所依赖的库文件: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ldd&nbsp;/PATH/TO/BINARY_FILE &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;管理及查看本机装载的库文件: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ldconfig &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/sbin/ldconfig-p:&nbsp;显示本机已经缓存的所有可用库文件名及文件路径映射关系 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;配置文件:/etc/ld.so.conf,&nbsp;/etc/ld.so.conf.d/*.conf &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;缓存文件:/etc/ld.so.cache &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 6.包管理器 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;程序包管理器: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;功能:将编译好的应用程序的各组成文件打包一个或几个程序包文件,从而方便快捷地实现程序包的安装、卸载、查询、升级和校验等管理操作 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;程序包的组成清单(每个程序包单独实现) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RPM包内的文件清单 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RPM的元数据,如名称,版本,依赖性,描述等 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;安装或卸载时运行的脚本 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;数据库(公共)&nbsp;&nbsp;路径:/var/lib/rpm&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;程序包名称及版本 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;依赖关系 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;功能说明 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;包安装后生成的各文件路径及校验码信息 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7.&nbsp;获取程的来源&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1)系统发版的光盘或官方的服务器; CentOS镜像: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://mirrors.aliyun.com &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://mirrors.sohu.com &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://mirrors.163.com

2)&nbsp;项目官方站点

3)&nbsp;第三方组织: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Fedora-EPEL &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;搜索引擎: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://pkgs.org &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://rpmfind.net &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ttp://rpm.pbone.net

4)&nbsp;自己制作

三、CentOS系统上rpm命令管理程序包:

功能:安装、卸载、升级、查询、校验、数据库维护

1.安装

格式:rpm&nbsp;-i[option]&nbsp;PACKAGE_FILE 选项: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-i:表示install安装 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-v&nbsp;-vv:表示显示安装过程,后者显示更加详细; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-h:以#号显示进度条格式; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-nodeps:忽略依赖关系 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-force:强制动作,注意安装成功后可能不能运行; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-test:测试安装,作为测试检查 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-nosignature:不检查签名就是来源合法性; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-nodigest:不检查包完整性;MD5头; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-noscipts:不执行程序包脚本片断 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;注意:rpm自带四类脚本 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;%pre:安装前脚本;&nbsp;&nbsp;&nbsp;-nopre &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;%post:安装后脚本;&nbsp;&nbsp;-nopost &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;%preun:卸载前脚本;&nbsp;-nopreun &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;%postun:卸载后脚本;-nopostun &nbsp;使用: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;-ivh&nbsp;&nbsp;PACKAGE_FILE

2.升级

格式:&nbsp;rpm&nbsp;-U|F[optIon]&nbsp;PACAGE_FILE&nbsp;&nbsp; 选项: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-U:表示不管软件事先是否存在都要升级,存在就升级,不存在就安装; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-F:表示软件软件存在就升级,如何不存在,就放弃升级; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-oldpackage:降级,如果升级之后发现有Bug或者兼容性问题,可以使用此选项回滚到升级前的版本; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-force:强制动作,注意安装成功后可能不能运行; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-replacepkgs:注意不能替换配置文件; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;注意: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(1)不要对kernel做升级操作;支持多kernel并存;可以直接安装; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(2)修改过的配置升级不会覆盖,升级同新文件,会重命名为file.rpmnew

3.查询:

格式:rpm&nbsp;-q[option]&nbsp;[PACKAGE-NAME|PACKAGE_FILE] 选项: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-qa:查询系统所有已安装的程序包; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-qf&nbsp;/path/to/file:查询文件是由那个程序包生成; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-ql:查询程序生成的文件: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-qi:查询程序属性信息; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-qc:查询程序配置文件; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-qd:查询程序提供的文档 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-q&nbsp;-whatprovides&nbsp;CAPABILITY(功能):查询这种CAPABILITY由那个程序提供; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-q&nbsp;-whatrequires&nbsp;CAPABILITY:查询这种CAPABILITY被哪些程序包依赖; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-q&nbsp;-scripts:查询程序包生成的脚本; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-q&nbsp;-changelog:查询软件历史 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;查询未安装的软件包信息,需要加-p选项跟上面的选项结合使用,后面的参数必须是PACKAGE_FILE; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;列如: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-qpi:查询指定PACKAGE_FILE的程序属性信息;

4.卸载

格式:rpm&nbsp;-e[option]&nbsp;PACKAGE-NAME 选项: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-vh:显示过程 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-nodeps:忽略依赖 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-noscripts:忽略脚本 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-allmatches:卸载所有匹配指定名称的程序包,也就是说卸载软件名称中包含此名称的所有包; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-test:测试检查卸载,不是真卸载 &nbsp;注意: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;卸载会检查依赖关系,如果卸载的软件被其他程序依赖,请谨慎卸载,否则导致其依赖程序无法运行; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;-e&nbsp;&nbsp;PACKAGE_FILE

5.校验

工作原理:校验检查的是软件包来源的合法性和完整性,要想对它们校验检查,必须要有校验机制,这种机制是根据签名和加密实现的,通常发行版的光盘中会有一个包含所有软件特征码的文件,特征码是根据软件包特征提取的,通过单项加密实现的用来校验软件包的完整性,如果软件包在获取途中被修改,在系统中再次提取软件包特征码,跟系统已有的特征码文件比对,不同则判断被攥该,修改过的软件包,根据相同的加密算法提取的特征肯定不同;来源合法性是根据签名实现的;特征码文件被称为公钥;校验是由校验程序完成的,默认rpm命令安装时会调用; 公钥获取: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;官方网站 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;系统光盘 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;系统配置文件中,这是系统在安装时从安装光盘复制进去的 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;系统公钥位置:/etc/pik/rpm-gpg/RPM-GPG-KEY-CentOS-7 导入公钥: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;-import&nbsp;/path/to/pub.key 校验软件: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;-V&nbsp;PACKAGE-NAME:校验安装文件自安装后是否被修改过,根据PMS记录信息判断; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;-K&nbsp;PACKAGE_FILE:对指定未安装的软件包进行手工校验;

6.数据库重建

默认数据库目录位置:/var/lib/rpm 语法格式: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;-initdb&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:初始化数据库 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rpm&nbsp;-rebuilddb&nbsp;&nbsp;:重新构建 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-dbpath=/path/&nbsp;&nbsp;:指定数据库创建位置;

四、CentOS系统上yum命令管理程序包:

1.yum配置文件

yum&nbsp;repository:yum&nbsp;repo(yum仓库),存储了众多rpm&nbsp;包及包的相关的元数据文件(放置于特定目录repodata) 文件服务器: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ftp:// &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http:// &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file:/// yum&nbsp;客户端配置文件: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/etc/yum.conf&nbsp;:为所有仓库提供公共配置,一般不做更改 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/etc/yum.repos.d/*.repo&nbsp;:为仓库的指向提供配置 仓库指向的定义: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[repositoryID] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name=Some&nbsp;name&nbsp;for&nbsp;this&nbsp;repository,yum仓库描述 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;baseurl=url://path/to/repository/,yum仓库路径,支持上述三种路径 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;enabled={1|0},0表示禁用,1表示启用,可以不写表示启用,但是写错enabled会造成禁用 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gpgcheck={1|0},此行不写要检测,0是不检测包,1是检查包 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pgkey=URL 此外假如系统上已经装有检查文本文件/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7,相当于以上两项 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;enablegroups={1|0},包组 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;failovermethod={roundrobin|priority},优先级-(默认为:roundrobin,意为随机挑选;&nbsp;cost=默认为1000)

2.yum 命令的用法

格式:yum&nbsp;[options]&nbsp;[command]&nbsp;[package&nbsp;…]

1)显示仓库列表: &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;repolist&nbsp;[all|enabled|disabled]

2)显示程序包: &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;list

3)安装程序包(centos7上yum支持补全,因为其bash版本更高): &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;install&nbsp;package1&nbsp;[package2]&nbsp;[…]&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;reinstall&nbsp;package1&nbsp;[package2]&nbsp;[…]&nbsp;(重新安装)

4)升级程序包: &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;update&nbsp;[package1]&nbsp;[package2]&nbsp;[…]&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;downgrade&nbsp;package1&nbsp;[package2]&nbsp;[…]&nbsp;(降级)

5)检查可用升级: &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;check-update

6)卸载程序包: &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;remove&nbsp;|&nbsp;erase&nbsp;package1&nbsp;[package2]&nbsp;[…]&nbsp;&nbsp;)


讯享网

7)查看程序包信息information: &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;info&nbsp;[…]

8)查看指定的特性(&nbsp;可以是某文件)是由哪个程序包所提供: &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;provides&nbsp;|&nbsp;whatprovides&nbsp;feature1&nbsp;[feature2]&nbsp;[…],类似于rpm的-qf选项

9)清理本地缓存(yum缓存在主配置文件中有说明即是#cat&nbsp;/etc/yum.conf有相关说明): 安装程序包时,下载的包文件存放于cachedir=/var/cache/yum/\(basearch/\)releasever中,其中\(basearch是硬件架构,\)releasever是操作系统版本号 &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;clean&nbsp;[&nbsp;packages&nbsp;|&nbsp;metadata&nbsp;|&nbsp;expire-cache&nbsp;|rpmdb&nbsp;|&nbsp;plugins&nbsp;|&nbsp;all&nbsp;] . 10)&nbsp;构建缓存: &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;makecache

11)&nbsp;搜索: &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;search&nbsp;string1&nbsp;[string2]&nbsp;[…],以指定的关键字搜索程序包名及summary信息

12)&nbsp;查看指定包所依赖的capabilities: &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;deplist&nbsp;package1&nbsp;[package2]&nbsp;[…]

13)&nbsp;查看yum&nbsp;事务历史: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;yum历史日志文件:/var/log/yum.log &nbsp;&nbsp;&nbsp;&nbsp;#cat&nbsp;/var/log/yum.log也可以查看yum事务历史 &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;history&nbsp;[info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]

14)&nbsp;包组管理的相关命令: 单个包的功能有限,为了实现复杂的功能,需要许多包组成包组 &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;groupinstall&nbsp;group1&nbsp;[group2]&nbsp;[…]&nbsp;,安装包组 &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;groupupdate&nbsp;group1&nbsp;[group2]&nbsp;[…]&nbsp;,升级包组 &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;grouplist&nbsp;[hidden]&nbsp;[groupwildcard]&nbsp;[…]&nbsp;,查看包组列表 &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;groupremove&nbsp;group1&nbsp;[group2]&nbsp;[…]&nbsp;,卸载包组 &nbsp;&nbsp;&nbsp;&nbsp;yum&nbsp;groupinfo&nbsp;group1&nbsp;[…]&nbsp;,查看包组信息

3. 如何使用光盘当作本地yum 仓库

1)&nbsp;挂载光盘至某目录,例如/mnt/cdrom [root@localhost&nbsp; ]#&nbsp;mkdir&nbsp;/mnt/cdrom [root@localhost&nbsp;]#&nbsp;mount&nbsp;/dev/cdrom&nbsp;/mnt/cdrom&nbsp; 2)&nbsp;创建配置文件 [root@localhost&nbsp;~]#&nbsp;vim&nbsp;/etc/yum.repos.d/yum.repo [cdrom] name=yum&nbsp;test baseurl=file:///mnt/cdrom或者file:///misc/cd gpgcheck=0 gpgkey= enabled=1

4. yum 的命令行选项

-nogpgcheck:禁止进行gpgcheck检查 -y:自动回答为“yes” -q:静默模式 -disablerepo=repoidglob:临时禁用此处指定的repo -enablerepo=repoidglob:临时启用此处指定的repo -noplugins:禁用所有插件

5. yum 仓库

1)&nbsp;yum&nbsp;的repo配置文件中可用的变量: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \(releasever:&nbsp;当前OS的发行版的主版本号 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\)arch:&nbsp;平台,i386,i486,i586,x86_64等等 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \(basearch:当前基础平台架构 实例: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;baseurl=http://server/centos/\)releasever/$basearch/ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://server/centos/7/x86_64 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;http://server/centos/6/i384 2)&nbsp;创建自定义yum仓库: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;createrepo&nbsp;[options]&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;其中yum需要的一些依靠性、校验信息等等都存放在repodata目录中,所以要自定义建立yum源不仅需要rpm包,也是离不开repodata目录,repodata目录文件可以由createrepo命令生成

五、源码安装

  1. C代码编译安装三步骤-在源代码目录下操作
C代码编译安装三步骤: &nbsp;&nbsp;&nbsp;1)&nbsp;http://shouzuofang.com/article/configure: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(1)&nbsp;通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及Makefile.in文件生成makefile; &nbsp;&nbsp;&nbsp;&nbsp; (2)&nbsp;检查依赖到的外部环境; &nbsp;&nbsp;&nbsp;2)&nbsp;make: &nbsp;&nbsp;&nbsp;&nbsp; 根据makefile文件,构建应用程序; &nbsp;&nbsp;&nbsp;3)&nbsp;make&nbsp;install

开发工具: &nbsp;&nbsp;&nbsp;&nbsp; autoconf:&nbsp;生成configure脚本 &nbsp;&nbsp;&nbsp;&nbsp; automake:生成Makefile.in &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;建议:安装前查看INSTALL,README

开源程序源代码的获取: &nbsp;&nbsp;&nbsp;&nbsp; 官方自建站点: &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;apache.org&nbsp;(ASF) &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;mariadb.org &nbsp;&nbsp;&nbsp;&nbsp; … &nbsp;&nbsp;&nbsp;&nbsp; 代码托管: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SourceForge &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;Github.com &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;code.google.com

c/c++:&nbsp;gcc&nbsp;(GNU&nbsp;C&nbsp;Complier) 编译C源代码: &nbsp;&nbsp;&nbsp;&nbsp;前提:提供开发工具及开发环境 &nbsp;&nbsp;&nbsp;&nbsp;开发工具:make,&nbsp;gcc等 &nbsp;&nbsp;&nbsp;&nbsp;开发环境:开发库,头文件 &nbsp;&nbsp;&nbsp;&nbsp;glibc:标准库

通过“包组”提供开发组件 &nbsp;&nbsp;&nbsp;&nbsp;CentOS&nbsp;6:&nbsp;“Development&nbsp;Tools”,&nbsp;“Server&nbsp;Platform&nbsp;Development”,

第一步:configure脚本 &nbsp;&nbsp;&nbsp;&nbsp;选项:指定安装位置、指定启用的特性 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;–help:&nbsp;获取其支持使用的选项 &nbsp;&nbsp;&nbsp;&nbsp;选项分类: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;装路径设定: &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;–prefix=/PATH/TO/SOMEWHERE:&nbsp;指定默认安装位置;默认为/usr/local/ &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;–sysconfdir=/PATH/TO/SOMEWHERE:配置文件安装位置;

&nbsp;&nbsp;&nbsp;&nbsp;system&nbsp;types: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Optional&nbsp;Features:&nbsp;可选特性 &nbsp;&nbsp;&nbsp;&nbsp; –disable-FEATURE &nbsp;&nbsp;&nbsp;&nbsp; –enable-FEATURE[=ARG] &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Optional&nbsp;Packages:&nbsp;可选包 &nbsp;&nbsp;&nbsp;&nbsp; –with-PACKAGE[=ARG] &nbsp;&nbsp;&nbsp;&nbsp; –without-PACKAGE

第二步:make 第三步:make&nbsp;install

2. 安装后的配置:(以httpd为例子)

1)&nbsp;将编译安装后的二进制程序目录导入至PATH&nbsp;环境变量中,就可以直接使用命令而不再用写绝对路径或相对路径; 编辑文件/etc/profile.d/NAME.sh #vim&nbsp;/etc/profile.d/http2.sh PATH=$PATH:/usr/local/http2/bin 2)&nbsp;导入库文件路径 编辑/etc/ld.so.conf.d/NAME.conf 添加新的库文件所在目录至此文件中#vim&nbsp;/etc/ld.so.conf.d/http2.sh /usr/local/http2/lib 然后让系统重新生成缓存#ldconfig&nbsp;[-v] 3)&nbsp;导入头文件,头文件的默认位置是/usr/include 基于链接的方式实现:ln&nbsp;-sv [root@localhost&nbsp;htdocs]#&nbsp;cd&nbsp;/usr/include [root@localhost&nbsp;include]#&nbsp;ln&nbsp;-s&nbsp;/usr/local/http2/include&nbsp;http2 4)&nbsp;导入帮助手册 编辑/etc/man.config|man_db.conf文件 添加一个MANPATH&nbsp;/usr/local/http2/man

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


讯享网        新闻名称:Linux的包管理工具介绍-创新互联            <br>
        标题路径:http://shouzuofang.com/article/degsee.html
小讯
上一篇 2025-06-06 16:18
下一篇 2025-04-18 13:51

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/172583.html