【2018.03.15】软件包/仓库管理与配置

本文介绍YUM仓库管理的特点及其配置文件,对比源码包安装与RPM包安装的区别,并详细讲解了RPM软件包管理的方法,包括依赖性的解决方式。

【思维导图】 

【重点】

  1. YUN仓库管理
  2. 源码包
  3. RPM相关查询指令
  4. RPM依赖性的解决方案

【详细】

一、YUM仓库管理



  • 特点
解决了软件包之间的依赖性

自动查询并安装用户请求的软件包所依赖的其他软件包

  • 语法

yum [命令选项] 软件包


  • 配置文件

两个重要的配置文件

CentOS-Base.repo(网络源配置文件)

CentOS-Media.repo(本地源配置文件)

网络源改本地源

二、源码包


  • 源码包安装的优缺点
优点缺点
开源,可以修改代码安装过程步骤较多,尤其安装较大的软件集合时,容易出现拼写错误
自由选择所需要的功能与二进制安装时间比,编译安装时间长
编译安装,更加适合自己的系统安装过程中一旦报错新手很难解决
更加稳定、高效 
卸载方便 
  
  • 源码包的安装过程
安装C语言编译器 ---> 下载源码包 ---> 解压下载的源码包 ---> 进入压缩目录 ---> ./configure软件配置与检查

./configure的作用

定义需要的功能选项,及安装位置

检测系统环境是否符合安装要求

把定义好的功能选项和检测的系统环境的信息都写入Makefile文件,用于后续的编译

./configure常见参数

--prefix指定文件安装路径
--exec-prefix指定体系相关的文件的安装位置,默认是PREFIX
--bindir / --sbindir可执行文件的安装位置,默认是PREFIX/bin和PREFIX/sbin
--datadir指定所安装的只读文件的目录,默认是PREFIX/share
--sysconfdir用于各种配置文件,默认是PREFIX/etc或PREFIX/var
--libdir库文件目录,默认EXEC - PREFIX/lib
--includedirC/C++头文件的目录,默认是PREFIX/include
  • 如何确定安装过程报错

安装过程停止并出现error、warning、no的提示

  • RPM包安装和源码包安装的比较

RPM包安装的服务可以使用系统服务管理命令

源码包安装的服务不能被服务管理命令管理,只能用绝对路径进行服务的管理。因为没有安装到默认路径中

三、RPM软件包管理

  • RPM源码包

*.src.rpm结尾的这类软件包是包含了源代码的rpm包,使用rpm-ivh来进行安装,生成源程序和SPEC文件,能够

直接生成RPM包

  • RPM二进制包
  • 依赖性及解决方法
依赖性解决方法
树形依赖一个一个装
环形依赖同时一起装
  • 包全名/包名的使用
包全名:操作的包是没有安装的软件包,使用包全名

包名:操作已安装的软件包时,使用包名。实质是搜索/var/lib/rpm/中的数据库

  • 语法

四、二进制包的优缺点
优点缺点

包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载

看不到源代码
安装速度比源码包安装快功能选择不如源码包灵活
 依赖性


zhilong@server:~/桌面/test$ sudo apt update sudo apt install openssh-server [sudo] zhilong 的密码: 命中:1 https://packages.microsoft.com/repos/code stable InRelease 命中:2 http://mirrors.tuna.tsinghua.edu.cn/ubuntu jammy InRelease 获取:3 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB] 忽略:3 http://security.ubuntu.com/ubuntu jammy-security InRelease 获取:3 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB] 忽略:3 http://security.ubuntu.com/ubuntu jammy-security InRelease 获取:3 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB] 忽略:3 http://security.ubuntu.com/ubuntu jammy-security InRelease 获取:3 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB] 错误:3 http://security.ubuntu.com/ubuntu jammy-security InRelease 下列签名无效: BADSIG 871920D1991BC93C Ubuntu Archive Automatic Signing Key (2018) <ftpmaster@ubuntu.com> 已下载 57.4 kB,耗时 12秒 (4,933 B/s) 正在读取软件包列表... 完成 正在分析软件包的依赖关系树... 完成 正在读取状态信息... 完成 有 1 个软件包可以升级。请执行 ‘apt list --upgradable’ 来查看它们。 W: 校验数字签名时出错。此仓库未被更新,所以仍然使用此前的索引文件。GPG 错误:http://security.ubuntu.com/ubuntu jammy-security InRelease: 下列签名无效: BADSIG 871920D1991BC93C Ubuntu Archive Automatic Signing Key (2018) <ftpmaster@ubuntu.com> W: 无法下载 http://security.ubuntu.com/ubuntu/dists/jammy-security/InRelease 下列签名无效: BADSIG 871920D1991BC93C Ubuntu Archive Automatic Signing Key (2018) <ftpmaster@ubuntu.com> W: 部分索引文件下载失败。如果忽略它们,那将转而使用旧的索引文件。 正在读取软件包列表... 完成 正在分析软件包的依赖关系树... 完成 正在读取状态信息... 完成 将会同时安装下列软件: ncurses-term openssh-sftp-server ssh-import-id 建议安装: molly-guard monkeysphere ssh-askpass 下列【新】软件包将被安装: ncurses-term openssh-server openssh-sftp-server ssh-import-id 升级了 0 个软件包,新安装了 4 个软件包,要卸载 0 个软件包,有 1 个软件包未被升级。 需要下载 435 kB/751 kB 的归档。 解压缩后会消耗 6,050 kB 的额外空间。 您希望继续执行吗? [Y/n] y 获取:1 http://security.ubuntu.com/ubuntu jammy-security/main amd64 openssh-server amd64 1:8.9p1-3ubuntu0.13 [435 kB] 错误:1 http://security.ubuntu.com/ubuntu jammy-security/main amd64 openssh-server amd64 1:8.9p1-3ubuntu0.13 Hash 校验和不符 Hashes of expected file: - SHA512:fb516af6d224e09eba4e06943214079999b61fb50537d9467fddd37dc1bf47b4a7c7acb4edf3a6632e1ddf283a589ebc701e2b328abe0853a594f3d12880a6b0 - SHA256:bda9d0ce3eca0e76243bdfd1636e595128064fec42d84215d39c38007bb79b76 - SHA1:73f734cb6794c690f8ae00698c4158b44b03ebbe [weak] - MD5Sum:62f0ff41cb08a1c29e1a85c123af59f9 [weak] - Filesize:435084 [weak] Hashes of received file: - SHA512:99bcc7d9f08cca6b99f77ca515d7f9edf57d63a00ec104e786be9580716bd282e24b0be458e262b53a0ea3038676f5b3913f9143fd57f4f12dd156e9a11bad2c - SHA256:05f69b72200403e179058d4dd43ff01398d667a91a2ff145078d21412cf9b858 - SHA1:d32365019bc9681407a8ab86814f06191080397c [weak] - MD5Sum:217215d76198ee3eac1578c2cb72d487 [weak] - Filesize:435084 [weak] Last modification reported: Thu, 24 Apr 2025 12:35:00 +0000 已下载 247 kB,耗时 3秒 (83.5 kB/s) E: 无法下载 http://security.ubuntu.com/ubuntu/pool/main/o/openssh/openssh-server_8.9p1-3ubuntu0.13_amd64.deb Hash 校验和不符 Hashes of expected file: - SHA512:fb516af6d224e09eba4e06943214079999b61fb50537d9467fddd37dc1bf47b4a7c7acb4edf3a6632e1ddf283a589ebc701e2b328abe0853a594f3d12880a6b0 - SHA256:bda9d0ce3eca0e76243bdfd1636e595128064fec42d84215d39c38007bb79b76 - SHA1:73f734cb6794c690f8ae00698c4158b44b03ebbe [weak] - MD5Sum:62f0ff41cb08a1c29e1a85c123af59f9 [weak] - Filesize:435084 [weak] Hashes of received file: - SHA512:99bcc7d9f08cca6b99f77ca515d7f9edf57d63a00ec104e786be9580716bd282e24b0be458e262b53a0ea3038676f5b3913f9143fd57f4f12dd156e9a11bad2c - SHA256:05f69b72200403e179058d4dd43ff01398d667a91a2ff145078d21412cf9b858 - SHA1:d32365019bc9681407a8ab86814f06191080397c [weak] - MD5Sum:217215d76198ee3eac1578c2cb72d487 [weak] - Filesize:435084 [weak] Last modification reported: Thu, 24 Apr 2025 12:35:00 +0000 E: 有几个软件包无法下载,要不运行 apt-get update 或者加上 --fix-missing 的选项再试试?
08-30
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值