4.17. 恢复损坏的软件仓库
如果存储库崩溃,您可以使用高级同步恢复它,该同步有三个选项:
- 优化的同步
- 对存储库进行同步,绕过没有检测到与上游软件包差异的软件包。
- 完全同步
- 无论检测到的更改是什么,都同步所有软件包。如果无法将特定软件包下载到本地存储库,则使用这个选项,即使它们存在于上游存储库中。
- 验证内容检查
同步所有软件包,然后在本地验证所有软件包的校验和。如果 RPM 的校验和与上游社区不同,它会重新下载 RPM。此选项仅与 Yum 内容相关。如果您有以下错误之一,则使用这个选项:
-
在与
yum
同步时,特定软件包会导致404
错误。 -
软件包与预期的下载错误不匹配
,这意味着特定的软件包已损坏。
-
在与
流程
- 在 Satellite Web UI 中,进入到 Content > Products。
- 选择包含损坏存储库的产品。
- 选择您要同步的存储库的名称。
- 要执行优化的同步或完成同步,请从 Select Action 菜单中选择 Advanced Sync。
- 选择所需选项,然后单击 Sync。
- 可选: 要验证校验和,请点击 Select Action 菜单中的 Verify Content Checksum。
CLI 过程
获取存储库 ID 列表:
hammer repository list \ --organization "My_Organization"
# hammer repository list \ --organization "My_Organization"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用所需选项同步损坏的存储库:
对于优化的同步:
hammer repository synchronize \ --id My_ID
# hammer repository synchronize \ --id My_ID
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对于完整的同步:
hammer repository synchronize \ --id My_ID \ --skip-metadata-check true
# hammer repository synchronize \ --id My_ID \ --skip-metadata-check true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 对于验证内容同步:
hammer repository synchronize \ --id My_ID \ --validate-contents true
# hammer repository synchronize \ --id My_ID \ --validate-contents true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow