3.15 Linux软件包/仓库管理与配置

本文对比了源码包与二进制包的特点,并详细介绍了RPM软件包管理工具的使用方法,包括依赖性的处理及常用命令。此外,还介绍了如何通过YUM仓库解决依赖性问题,并给出了源码包安装的步骤。

一、RPM软件包管理

      1.  源码包的优点:①开源 

                                  ② 可以选择需要的功能 

                                  ③ 软件更加适合自己的系统

                                  ④ 更加稳定效率高               

                                  ⑤ 卸载方便

                        缺点:① 安装过程步骤多,容易出现拼写错误

                                  ② 编译时间长,安装比二进制安装时间长

                                  ③ 一旦报错新手很难解决

      2.  二进制包的优点:①包管理系统简单,只需通过几个命令就能实现安装升级卸载

                                      ② 安装速度比源码包安装快的多

                            缺点:① 经过编译,不可看到源代码

                                      ② 功能选择不如源码包灵活

                                ③ 依赖性

 

      3.  依赖性分为树形依赖和环形依赖

             树形依赖必要现有后面的包之后前面的才可以安装

             环形依赖需要同时安装

      4.  rpm命令  -ql package_name:查询安装包的目录

                          -qf /path_to_somefile:查询某个文件是由哪个rpm包生成的

                          -qc package_name:查询指定安装包的配置文件

二、YUM仓库配置

      1. yum可以解决依赖性

      2. yum命令   search -- 搜索

                           install -- 安装

                           erase/remove – 卸载

                           -y 当用户等待输入时,这个选项自动提供yes

三、源码包的安装

      1.编译环境:gcc/g++(编译器)

      2. 编译安装三步骤:①configure 检测编译特性 检查编译环境

                                     ② make 编译程序

                                         make install 安装程序

                                     ③ 配置可执行文件和帮助文档

 

### 3.13 检查并修改 DNS 配置以解决域名解析失败问题 当系统在更新时出现无法解析 `mirrors.aliyun.com` 的问题,首先应检查 DNS 配置。可以通过修改 `/etc/resolv.conf` 文件,将 DNS 服务器更换为公共 DNS 以绕过本地 DNS 缓存问题。例如,使用 Google 提供的 DNS 服务: ```bash nameserver 8.8.8.8 nameserver 8.8.4.4 ``` 或者使用阿里云的公共 DNS: ```bash nameserver 223.5.5.5 nameserver 223.6.6.6 ``` 此方法适用于因本地 DNS 缓存失效或网络配置异常导致的域名解析失败问题[^1]。 ### 3.14 更换镜像源以避免特定域名无法解析 若 `mirrors.aliyun.com` 域名无法解析,可以尝试更换为其他可用镜像源,例如清华大学的镜像源。编辑 `/etc/apt/sources.list` 文件,将原阿里源替换为清华源: ```bash deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse ``` 更新源列表后执行: ```bash sudo apt update ``` 该方法适用于因特定镜像源不可达或域名解析异常导致的依赖问题[^3]。 ### 3.15 安装指定版本的 linux-headers 若提示 `linux-headers-5.15.0-25-generic` 无安装候选,可能是因为当前系统内核版本所需版本不匹配或软件源中未包含该版本。可以通过以下方式查看当前系统中可用的内核版本: ```bash dpkg -l | grep linux-image ``` 查看当前运行的内核版本: ```bash uname -r ``` 如果当前运行的内核版本为 `5.15.0-25-generic`,但未安装对应的 headers,可以尝试更新软件源并重新安装: ```bash sudo apt update sudo apt install linux-headers-$(uname -r) ``` 如果系统中未包含该版本的 headers,可以考虑添加官方仓库或安装特定版本的内核头文件包: ```bash sudo apt install linux-headers-5.15.0-25-generic ``` 此方法适用于因软件源未包含特定版本 headers 或内核版本不匹配导致的安装失败问题。 ### 3.16 清除 APT 缓存并重新更新索引 如果软件包索引损坏,可能导致域名解析失败或找不到安装包。可以尝试清除 APT 缓存并重新获取索引: ```bash sudo apt clean sudo apt update --fix-missing ``` 此操作将删除本地缓存的 `.deb` 文件并重新下载索引文件,有助于解决因缓存损坏导致的域名解析问题和依赖关系错误[^2]。 ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值