Linux软件包管理
一、应用程序与命令的关系
1. 基本命令是Linux系统中不可缺少的组成部分。
2. 命令保存在/bin和/sbin目录中;应用程序保存在/usr/bin和/usr/sbin目录中。
3. 命令的作用是完成对Linux系统本身的管理工作,应用程序则完成与Linux系统管理相对独立的任务。
4. 命令只能以命令行的形式运行,命令格式中包括命令字、命令选项和命令参数;应用程序可以是以命令行的形式运行,也可以是字符界面或图形界面的窗口程序,形式比较多样。
二、Linux应用程序的组成部分
应用程序中不同类型的文件保存在Linux系统的不同目录中:
普通执行程序文件:/usr/bin
服务器执行程序文件和管理程序文件:/usr/sbin
应用程序配置文件:/etc
应用程序文档文件:/usr/share/doc
应用程序手册页文件:/usr/share/man
三、yum软件管理工具
1. yum简介
yum早期命名为yup。RPM软件包管理系统对软件之间的依赖关系没有内部定义,造成安装RPM软件时经常出现令人无法理解的问题;而yum则会自动下载并安装所有的软件依赖包。
yum的宗旨:自动化升级,安装/移除RPM软件包,收集RPM软件包的相关信息,检查依赖并自动提示用户解决。
yum的关键之处是要有可靠的repository,也就是软件仓库,它可以是HTTP或FTP站点,也可以是本地软件池。一般是基于网络来安装软件。
2. yum命令
升级系统:yum update
移除指定的软件包:yum remove 软件名
安装指定的软件包:yum install 软件名
搜索相关的软件包:yum search 软件名
升级指定的软件包:yum update 软件名
列出软件的详细信息:yum list 软件名
3. 更改软件仓库源
Linux中默认的软件仓库源是国外的,访问速度比较慢,如果需要,可以自行更改软件仓库源为国内的一些镜像网站。
更改软件仓库源时,首先要备份原来的仓库源配置文件:/etc/yum.repos.d/CentOS-Base.repo,然后下载新的仓库源文件,如:wget http://mirrors.163.com/.help/CentOS6-Base-163.repo,接着执行yum makecache命令,把镜像服务器的软件包列表缓存下来,以后使用yum命令时速度就会快很多了。
四、RPM软件管理工具
1. RPM简介
RPM最早是由Red Hat公司提出的软件包管理标准。rpm命令可以完成对软件包的所有管理功能。
2. rpm命令
rpm -qa:查询Linux系统中的所有rpm软件包(源码安装编译的软件包无法查到)
rpm -q 包名称:查询指定名称的软件包是否安装
rpm -qi 包名称:查询指定名称的软件包的详细信息
rpm -ql 包名称:查询指定名称软件包中所包括的文件列表
rpm -qf 文件名称:查询指定文件所属的软件包
rpm -i 包名称:安装软件包
rpm -ivh 包名称:安装RPM软件包时显示更多的提示信息
rpm -e 软件名称:卸载RPM软件包
(RPM软件包的卸载同样存在依赖关系,被依赖的软件包应该最后被卸载)
rpm -U 包名:升级RPM软件包
(当系统中未安装需要升级的软件包时,升级的过程等同于安装软件包的过程)
五、源代码编译安装软件
源代码编译安装软件包的一般步骤:
1. 确认当前系统中具备软件编译的环境
rpm -qa | grep gcc
若没有软件编译的环境则需要安装gcc。
2. 获得(下载)应用程序的源代码软件包文件
wget 软件包链接
3. 解压(释放)源代码软件包文件,进入源代码目录
tar zxf tar文件包名称
4. 进行编译前的配置工作
程序源代码目录中的“configure”命令可用于完成程序编译前的配置工作。
查看“configure”命令支持的配置选项:./configure --help
指定安装路径:./configure --prefix=路径名
还有其他一些应用程序文件安装路径的配置,若不配置则使用默认的安装路径。
5. 进行程序源代码的编译
使用“configure”检测当前环境是否满足编译需求,有可能需要一些依赖包,下载再安装即可。
使用make命令进行应用程序的编译。
6. 将编译完成的应用程序安装到系统中
使用make install命令进行应用程序的安装。
7. 验证(执行)已编译安装完成的程序
总结:
Linux安装软件包有三种方式:yum安装、RPM安装和源代码编译安装。
在Linux系统上安装软件时,首先应该选择使用yum来安装软件,因为yum会自动下载并安装需要的依赖软件包,方便快捷。
当yum的软件仓库源中没有需要的软件包的时候,才选择RMP来安装,这时需要我们自己上网查找软件包,下载下来,然后使用RPM安装,此过程还经常需要自己手动下载并安装一些依赖软件包,比较繁琐。
当查找不到软件的RPM包的时候,只能下载软件包的源代码,自己动手编译并安装。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)