yum、rpm、apt 和 dpkg以及添加软件源

软件包工具

yum 和 rpm

# rpm(Red Hat Package Manager)

- 用途: 主要用于管理 Red Hat 系列发行版(如 RHEL、CentOS、Fedora)中的软件包。
- 功能:
- 安装、卸载、升级和查询 RPM 软件包。
- 不处理软件包的依赖关系。

- 常见用法:

- 安装软件包:
sudo rpm -i package.rpm

- 卸载软件包:
sudo rpm -e package

- 升级软件包:
sudo rpm -U package.rpm

- 查询已安装的软件包:
rpm -qa

# yum(Yellowdog Updater, Modified)

- 用途: 基于 RPM 的包管理工具,用于 Red Hat 系列发行版。
- 功能:
- 处理软件包的依赖关系。
- 从指定的软件源(仓库)下载和安装软件包。
- 支持组包安装、自动升级、查询等功能。

- 常见用法:

- 更新仓库索引:
sudo yum update

- 安装软件包:
sudo yum install package

- 卸载软件包:
sudo yum remove package

- 列出可用的软件包:
yum list available

- 查找软件包:
yum search package

 

apt 和 dpkg

# dpkg(Debian Package)


- 用途: 主要用于管理 Debian 系列发行版(如 Debian、Ubuntu)中的软件包。
- 功能:
- 安装、卸载、升级和查询 DEB 软件包。
- 不处理软件包的依赖关系。


- 常见用法:

- 安装软件包:
sudo dpkg -i package.deb

- 卸载软件包:
sudo dpkg -r package

- 查询已安装的软件包:
dpkg -l
# apt(Advanced Package Tool)

 

- 用途: 基于 DEB 的包管理工具,用于 Debian 系列发行版。
- 功能:
- 处理软件包的依赖关系。
- 从指定的软件源(仓库)下载和安装软件包。
- 提供高级功能,如自动升级、组包管理等。


- 常见用法:


- 更新仓库索引:
sudo apt update

- 升级所有软件包:
sudo apt upgrade

- 安装软件包:
sudo apt install package

- 卸载软件包:
sudo apt remove package

- 修复依赖关系:
sudo apt-get install -f

- 搜索软件包:
apt search package

联系

1. 依赖管理: yum 和 apt 都能够自动处理软件包的依赖关系,而 rpm 和 dpkg 不具备此功能。
2. 包管理类型:
- rpm 和 yum 主要用于 Red Hat 系列发行版。
- dpkg 和 apt 主要用于 Debian 系列发行版。
3. 低级与高级工具: rpm 和 dpkg 是低级工具,直接操作软件包文件。而 yum 和 apt 是高级工具,提供更高层次的依赖管理和仓库管理功能。

总结

- rpm 和 dpkg: 基本包管理工具,不处理依赖关系。
- yum 和 apt: 高级包管理工具,处理依赖关系并管理仓库。

 

软件源添加

在Ubuntu和Red Hat(或其衍生版如CentOS)中添加软件源(也称为仓库或repo)的过程略有不同。下面我会分别解释如何在这两种系统上操作。

Ubuntu

在Ubuntu中,你通常使用apt包管理器来管理软件源。以下是添加新软件源的步骤:

打开终端。
编辑软件源列表:
使用你喜欢的文本编辑器(如nano、vi或gedit)编辑/etc/apt/sources.list文件或创建一个新的.list文件在/etc/apt/sources.list.d/目录下

例如,要编辑sources.list文件,你可以使用以下命令:

sudo nano /etc/apt/sources.list

或者在/etc/apt/sources.list.d/目录下创建一个新的.list文件:

sudo nano /etc/apt/sources.list.d/new-repo.list
添加软件源:
在编辑器中,添加新的软件源行。每一行通常包含一个仓库的URL和相关的发行版/组件信息。例如:

deb http://example.com/ubuntu/ stable main
deb-src http://example.com/ubuntu/ stable main


这里,deb表示二进制包,而deb-src表示源代码包。
保存并关闭文件。
更新包列表:运行以下命令以获取新的软件源列表:

sudo apt update
安装软件:现在你可以使用apt命令来安装来自新软件源的软件了。

sudo apt install package-name


Red Hat(及其衍生版如CentOS)


在Red Hat及其衍生版中,你通常使用yum(在较新版本中可能是dnf)和.repo文件来管理软件源。以下是添加新软件源的步骤:

打开终端。创建新的.repo文件:
在/etc/yum.repos.d/目录下创建一个新的.repo文件。例如,要创建一个名为new-repo.repo的文件,你可以使用以下命令:


sudo nano /etc/yum.repos.d/new-repo.repo
编辑.repo文件:
在编辑器中,添加新的软件源信息。一个.repo文件可以包含一个或多个[repository]部分,每个部分定义了一个软件源。例如:

[new-repo]
name=New Repository
baseurl=http://example.com/redhat/
enabled=1
gpgcheck=0


这里,name是软件源的名称,baseurl是软件源的URL,enabled=1表示启用该软件源,gpgcheck=0表示在安装软件时不进行GPG签名检查(出于安全考虑,通常建议将其设置为1,并导入相应的GPG密钥)。
保存并关闭文件。

清除缓存并更新软件源:

如果你使用的是yum,运行以下命令:

sudo yum clean all
sudo yum makecache


如果你使用的是dnf,运行以下命令:

sudo dnf clean all
sudo dnf makecache
安装软件:现在你可以使用yum或dnf命令来安装来自新软件源的软件了。


sudo yum install package-name  或者  sudo dnf install package-name

posted @ 2024-06-21 09:31  Augustone  阅读(87)  评论(0)    收藏  举报