
# HCE的REPO源配置
HCE采用RPM包形式管理软件，并且提供了与系统配套的官方REPO源来发布软件包及其更新。您可通过dnf/yum命令实现常见的软件管理功能，包括安装、升级、卸载等。
#### 官方repo源
HCE镜像，在**/etc/yum.repos.d/hce.repo** 文件中会默认配置官方repo源。以[HCE 2.0版本](https://repo.huaweicloud.com/hce/2.0/)为例，其内容如下：
```
[base]
name=HCE $releasever base
baseurl=https://repo.huaweicloud.com/hce/$releasever/os/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://repo.huaweicloud.com/hce/$releasever/os/RPM-GPG-KEY-HCE-2
[updates]
name=HCE $releasever updates
baseurl=https://repo.huaweicloud.com/hce/$releasever/updates/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://repo.huaweicloud.com/hce/$releasever/updates/RPM-GPG-KEY-HCE-2
 
[debuginfo]
name=HCE $releasever debuginfo
baseurl=https://repo.huaweicloud.com/hce/$releasever/debuginfo/$basearch/
enabled=0
gpgcheck=1
gpgkey=https://repo.huaweicloud.com/hce/$releasever/debuginfo/RPM-GPG-KEY-HCE-2
```
以HCE 3.0版本为例，其内容如下：
```
[base]
name=HCE $releasever base
baseurl=https://repo.huaweicloud.com/hce/$releasever/os/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://repo.huaweicloud.com/hce/$releasever/os/RPM-GPG-KEY-HCE-3
[updates]
name=HCE $releasever updates
baseurl=https://repo.huaweicloud.com/hce/$releasever/updates/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://repo.huaweicloud.com/hce/$releasever/updates/RPM-GPG-KEY-HCE-3
 
[debuginfo]
name=HCE $releasever debuginfo
baseurl=https://repo.huaweicloud.com/hce/$releasever/debuginfo/$basearch/
enabled=0
gpgcheck=1
gpgkey=https://repo.huaweicloud.com/hce/$releasever/debuginfo/RPM-GPG-KEY-HCE-3
```
其中各字段含义如下：
- name：对repo源的描述。
- baseurl：仓库所在的服务器地址，支持http://、ftp://、file://三种格式。
- enabled：是否启用该软件仓库，1表示启用，0表示禁用。
- gpgcheck：是否进行gpg校验，1表示启用校验，0表示禁用校验。
- gpgkey：公钥保存的地址，用于gpg校验。
![](https://support.huaweicloud.com/usermanual-hce/public_sys-resources/caution_3.0-zh-cn.png)
- 使用时需要将$releasever和$basearch替换成环境实际配置，$releasever为OS版本号，可替换为2.0或3.0，$basearch为节点架构，可替换为aarch64或x86_64。
- 修改该文件可能会对系统的软件安装、升级产生影响，不建议修改该文件。
 
#### 第三方repo源配置
HCE 2.0如果要新增第三方repo源，可按下述过程进行配置（以openEuler社区的镜像源为例）：
1. 在**/etc/yum.repos.d/** 目录新增**openEuler.repo** 文件（名称可以自定义，文件后缀需以.repo结尾）。使用**vim /etc/yum.repos.d/openEuler.repo**命令进行编辑。
2. 配置仓库名字，如openEuler-everything，仓库名必须唯一，可根据实际情况进行调整。
3. 配置name选项，如openEuler everything repository，表示仓库的具体描述，可根据实际情况进行调整。
4. 配置baseurl选项，此处为**：** **https://repo.openeuler.org/openEuler-22.03-LTS/everything/x86_64**，表示软件包从该链接获取，具体可参考openEuler或者对应repo提供者的官方说明。
5. 配置gpgcheck选项，为1表示对安装的软件包进行gpg校验。
6. 配置enabled选项，为1表示启用该repo源。
7. 配置gpgkey选项，此处为**：https://repo.openeuler.org/openEuler-22.03-LTS/everything/x86_64/RPM-GPG-KEY-openEuler**，表示gpg校验使用的公钥来源于该链接。
按照上述方法，再添加上openEuler update repo源，最终**openEuler.repo** 文件效果如下：
```
[openEuler-everything]
name=openEuler everything repository
baseurl=https://repo.openeuler.org/openEuler-22.03-LTS/everything/x86_64
gpgcheck=1
enabled=1
priority=3
gpgkey=https://repo.openeuler.org/openEuler-22.03-LTS/everything/x86_64/RPM-GPG-KEY-openEuler
[openEuler-update]
name=openEuler update repository
baseurl=https://repo.openeuler.org/openEuler-22.03-LTS/update/x86_64/
gpgcheck=1
enabled=1
priority=3
gpgkey=https://repo.openeuler.org/openEuler-22.03-LTS/everything/x86_64/RPM-GPG-KEY-openEuler
```
HCE 3.0如果要新增第三方repo源，最终**openEuler.repo** 文件效果如下：
```
[openEuler-everything]
name=openEuler everything repository
baseurl=https://repo.openeuler.org/openEuler-24.03-LTS-SP1/everything/x86_64
gpgcheck=1
enabled=1
priority=3
gpgkey=https://repo.openeuler.org/openEuler-24.03-LTS-SP1/everything/x86_64/RPM-GPG-KEY-openEuler
[openEuler-update]
name=openEuler update repository
baseurl=https://repo.openeuler.org/openEuler-24.03-LTS-SP1/update/x86_64/
gpgcheck=1
enabled=1
priority=3
gpgkey=https://repo.openeuler.org/openEuler-24.03-LTS-SP1/everything/x86_64/RPM-GPG-KEY-openEuler
```
![](https://support.huaweicloud.com/usermanual-hce/public_sys-resources/notice_3.0-zh-cn.png)
可以通过配置中的priority字段控制repo源的优先级。如果优先使用HCE默认源，可在hce.repo配置中都加上priority=1（数值越小优先级越高），然后在第三方源配置中加上priority=2，数值根据实际情况进行调整。
![](https://support.huaweicloud.com/usermanual-hce/public_sys-resources/note_3.0-zh-cn.png)
如果要升级软件包，可参考用户指南[更新HCE系统和RPM包](https://support.huaweicloud.com/usermanual-hce/hce_02_0020.html)。
#### yum/dnf常见使用方式
HCE 1.1仅支持通过yum命令进行软件管理相关操作，HCE 2.0和HCE 3.0同时支持yum与dnf命令。常用的软件管理相关的命令如下：
| 功能        | yum命令               | dnf命令               | 示例                           |
|:---|:---|:---|:---|
| 安装软件包     | yum install \<软件包\> | dnf install \<软件包\> | 安装gcc：yum install gcc        |
| 卸载软件包     | yum remove \<软件包\>  | dnf remove \<软件包\>  | 卸载gcc：yum remove gcc         |
| 列出已安装的软件包 | yum list installed  | dnf list installed  | 列出系统所有的包：yum list installed  |
| 搜索软件包     | yum search \<软件包\>  | dnf search \<软件包\>  | 在repo源中搜索gcc包：yum search gcc |
| 查询软件包信息   | yum info \<软件包\>    | dnf info \<软件包\>    | 查询gcc软件包信息：yum info gcc      |
   
