Linux 包管理器

LINUX YUM APT-GET RPM DPKG TAR

Posted by gomyck on December 12, 2019

总结分析各种包管理器相互之间的关联, 区别

rpm & yum

rpm 是红帽系列的操作系统默认的包管理器, 可以方便的查询,安装,卸载,升级软件包, 但是 rpm 只能单一安装某个软件包, 需要用户自行解决软件包依赖问题 .rpm 是一种软件包类型, 可以使用 rpm 或 yum 包管理器安装维护

yum 是基于 rpm 的包管理软件, 可以拟补 rpm 的不足(不能自动解决依赖), 以及可以联网进行软件的安装维护

dpkg & apt-get

dpkg 是 Debian 的默认包管理器, 与 rpm 功能相似 .deb 是一种软件包类型, 可以使用 apt-get 或 dpkg 包管理器安装维护

apt-get 与 yum 类似, 可以自动解决包依赖问题, 以及可以联网进行软件的安装维护

tar

tar 是一种文件格式, 一般来说, tar 类型的软件包, 安装步骤都是: 解压, ./configure, make, make install

yum 配置文件的一些内置变量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
YUM仓库配置文件中的内置变量包括:

$releasever:表示当前系统版本的变量,例如7或8等。

$basearch:表示当前系统架构的变量,例如x86_64或i386等。

$arch:表示当前软件包架构的变量,例如x86_64或i386等。

$uuid:表示当前系统的唯一标识符,用于在订阅系统上注册新的存储库。

$YUM0:表示存储库的基本目录,通常是/var/cache/yum/。

$YUM5:表示存储库的元数据目录,通常是/var/cache/yum/x86_64/7Server。

$YUM6:表示存储库的软件包目录,通常是/var/cache/yum/x86_64/7Server/base。

nexus 仓库管理

上传 rpm包的时候, 创建hosts 仓库, 层级选择 0, 这样可以不用输入上传文件夹, 所有文件都在根目录, 生成的 repodata 也在根目录, 便于管理

1
2
3
4
5
6
7
[baseos]
name=Rocky Linux $releasever - BaseOS
baseurl=http://192.168.3.12/repository/yum-hylink/
enabled=1
#如果校验不通过, 关闭这个选项
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial