标签:ack 流程 border alac 命令 自动 公众 软件 span
1、源代码管理
绝大多数开源软件都是直接以源代码形式发布的,一般会被打包为tar.gz 的归档压缩文件。程序源代码需要编译为二进制可执行文件后才能够运行使用。源代码的基本编译流程为
源代码形式的软件使用起来较为麻烦,但是兼容性和可控性较好。并且开源软件一般会大量使用其他开源软件的功能,所以开源软件会有大量的依赖关系(使用某软件需要先安装其他软件)。
2、RPM包管理器
在RPM(Redhat Package Manager,红帽软件包管理器)公布之前,要想在Linux系统中安装软件只能采取源码包的方式安装。早期在Linux系统中安装程序是一件非常困难、耗费耐心的事情,而且大多数的服务程序仅仅提供源代码,需要运维人员自行编译代码并解决许多的软件依赖关系,因此要安装好一个服务程序,运维人员需要具备丰富知识、高超的技能,甚至良好的耐心。而且在安装、升级、卸载服务程序时还要考虑到其他程序、库的依赖关系,所以在进行校验、安装、卸载、查询、升级等管理软件操作时难度都非常大。
RPM机制是专门为解决这些问题而设计的。RPM有点像Windows系统中的控制面板,会建立统一的数据库文件,详细记录软件信息并能够自动分析依赖关系。目前RPM的优势已经被公众所认可,使用范围也已不局限在红帽系统中了,下表是一些常用的RPM软件包命令。
安装软件的命令格式 |
rpm -ivh packagename.rpm |
升级软件的命令格式 |
rpm -Uvh packagename.rpm |
卸载软件的命令格式 |
rpm -e packagename.rpm |
查询软件描述信息的命令格式 |
rpm -qpi packagename.rpm |
列出软件文件信息的命令格式 |
rpm -qpl packagename.rpm |
查询文件属于哪个RPM的命令格式 |
rpm -qf packagename |
查看某一个软件包是否安装 |
rpm -qa|grep packagename.rpm |
-i: install 安装
-v: verboes 可视化
-h: hash 显示安装进度
另外的常用的附带参数为:
--force: 强制安装,即使覆盖其他包的文件也要安装
--nodeps: 当要安装的rpm包依赖其他包的时候,即使其他包没有安装,也要安装这个包
-U: upgrade 即升级的意思
查询一个包是否安装
rpm -q packagename(这里的包名是不带有平台信息以及后缀名的)
eg:rpm -q alacarte-0.10.0-1.fc6(如果加了平台信息及后缀名alacarte-0.10.0-1.fc6.noarch.rpm反而不能查出来)
rpm -qa 查询当前系统上所安装的所有rpm包
rpm -qa | grep packagename 查看某个软件包是否安装(这里的包名是带有平台信息以及后缀名的)
标签:ack 流程 border alac 命令 自动 公众 软件 span
原文地址:https://www.cnblogs.com/Hunry/p/9368782.html