Katello:将CentOS勘误表导入纸浆

时间:2020-03-21 11:45:55  来源:igfitidea点击:

我们将把CentOS勘误表导入Pulp。

测试环境

我们在CentOS 7服务器上安装了Katello:

katello.igi.local(10.11.1.4)

安装

安装以下软件包:

# yum install git \
  pulp-admin-client \
  pulp-rpm-admin-extensions \
  pulp-rpm-consumer-extensions \
  pulp-rpm-handlers \
  pulp-rpm-yumplugins \
  pulp-rpm-admin-extensions \
  pulp-consumer-client \
  python-pulp-agent-lib \
  perl-Text-Unidecode \
  perl-XML-Simple \
  perl-XML-Parser

配置CentOS勘误导入

确保CentOS储存库已同步。
我们已经在上一篇文章中做到了这一点。

克隆存储库:

# cd /opt && git clone https://github.com/rdrgmnzs/pulp_centos_errata_import.git
# cd ./pulp_centos_errata_import

下载最新的勘误档案并解压缩文件:

# wget -N https://cefs.steve-meier.de/errata.latest.xml.bz2
# bunzip2 ./errata.latest.xml.bz2

配置Pulp身份验证:

# mkdir -m0700 ~/.pulp
# cat /etc/pki/katello/certs/pulp-client.crt /etc/pki/katello/private/pulp-client.key > ~/.pulp/user-cert.pem
# chmod 0400 ~/.pulp/user-cert.pem

将CentOS勘误表导入纸浆

可能是在导入CentOS勘误表时我们不知道要使用哪个存储库ID,因此我们可以运行以下命令而无需指定任何命令(可能需要更长的时间):

# perl ./errata_import.pl --errata=errata.latest.xml

另外,我们可以使用以下命令查看Pulp存储库的列表:

# pulp-admin repo list | less

然后将勘误导入所需的存储库中,例如:

# perl ./errata_import.pl \
  --errata=errata.latest.xml \
  --include-repo=83418f8f-e069-4b24-8e67-4b07af5e87d2 \
  --include-repo=0abbd033-67cc-4e42-bff0-237d52f1bcdb

在某些情况下,我们会收到错误消息“跳过勘误-未找到软件包”。
如果发生这种情况,请尝试使用-include-repo标志传递要为其加载勘误的存储库ID。
daccess-ods.un.org daccess-ods.un.org

导入勘误后,使用强大的Hammer强制执行后同步操作(Katello 3.0及更高版本):

# hammer settings set \
  --name "force_post_sync_actions" \
  --value "true"

我们必须同步存储库,以便发布勘误(并在Katello界面中可见)。

# hammer repository synchronize \
  --name "base_x86_64" \
  --product "el7_repos"

如果一切顺利,我们应该看到一些勘误表:

# hammer repository info \
  --name "base_x86_64" \
  --product "el7_repos"
ID:

1
Name:

base_x86_64
Label:

base_x86_64
Organisation:

theitroad
Red Hat Repository: no
Content Type:

yum
Checksum Type:

sha256
Mirror on Sync:     no
URL:

http://mirror.centos.org/centos/7/os/x86_64/
Publish Via HTTP:   yes
Published At:

http://katello.igi.local/pulp/repos/theitroad/Library/custom/el7_repos/base_x86_64/
Relative Path:

theitroad/Library/custom/el7_repos/base_x86_64
Download Policy:    on_demand
Product:

ID:   1

Name: el7_repos
GPG Key:

ID:   1

Name: RPM-GPG-KEY-CentOS-7
Sync:

Status:

Success

Last Sync Date: 28 days
Created:

2016/02/20 20:56:52
Updated:

2016/02/21 23:16:44
Content Counts:

Packages:

9591

Package Groups: 84

Errata:

830

请注意如何将“同步镜像”设置为“否”。
这是为了防止在下次同步时清除已加载的勘误。

以下是随机选择的勘误ID的一些信息:

# hammer erratum info --id 4191
ID:

4191
Errata ID:   CESA-2016:0260
Title:

CentOS systemd Security Update
Type:

security
Severity:    Moderate
Issued:

2016-02-01
Updated:     2016-02-01
Description: Not available
Summary:

Solution: