是否有一个(简单的)命令来查询 SLE 15 中提供已安装包的模块?

是否有一个(简单的)命令来查询 SLE 15 中提供已安装包的模块?

SLE (SLES、SLED) 15 引入了模块化设计,其中软件包可以来自一组不同的“模块”。要安装这样的软件包,必须“启用”相应的模块(例如通过SUSEConnect)。

有一个命令可以列出已启用的模块(SUSEConnect --list-extensions),但我找不到一个命令来查询已安装包的“模块来源”(我最初猜测 RPM 查询标签DISTURL会显示它,但结果证明是错误的)。

是否有命令可以找出提供已安装 RPM 包的模块,或者列出从特定模块安装的所有包的命令?

答案1

我之前无法找到解决方案的一个原因是命名法:虽然 SUSE 将其称为“模块”,但基本上只是单独的“存储库”(可能需要额外的许可证/订阅)。

因此,诀窍就是像这样对存储库进行过滤:

MOD_BASE=SLE-Module-Legacy15-SP2
zypper packages --installed-only --repo ${MOD_BASE}-Pool --repo ${MOD_BASE}-Updates

(第二个存储库包含软件包更新,也许你可以忽略它)

输出可能如下所示:

Refreshing service 'Basesystem_Module_15_SP2_x86_64'.
Refreshing service 'Desktop_Applications_Module_15_SP2_x86_64'.
Refreshing service 'Development_Tools_Module_15_SP2_x86_64'.
Refreshing service 'Legacy_Module_15_SP2_x86_64'.
Refreshing service 'SUSE_Linux_Enterprise_High_Availability_Extension_15_SP2_x86_64'.
Refreshing service 'SUSE_Linux_Enterprise_Server_for_SAP_Applications_15_SP2_x86_64'.
Refreshing service 'SUSE_Package_Hub_15_SP2_x86_64'.
Refreshing service 'Server_Applications_Module_15_SP2_x86_64'.
Building repository 'SLE-Module-Legacy15-SP2-Pool' cache ...................................................................................................................................................................[done]
Building repository 'SLE-Module-Legacy15-SP2-Updates' cache ................................................................................................................................................................[done]
Loading repository data...
Reading installed packages...
S  | Repository                      | Name                      | Version         | Arch
---+---------------------------------+---------------------------+-----------------+-------
i+ | SLE-Module-Legacy15-SP2-Updates | ntp                       | 4.2.8p15-4.19.1 | x86_64
v  | SLE-Module-Legacy15-SP2-Updates | ntp                       | 4.2.8p15-4.16.1 | x86_64
v  | SLE-Module-Legacy15-SP2-Updates | ntp                       | 4.2.8p15-4.13.1 | x86_64
v  | SLE-Module-Legacy15-SP2-Updates | ntp                       | 4.2.8p15-4.10.1 | x86_64
v  | SLE-Module-Legacy15-SP2-Pool    | ntp                       | 4.2.8p13-4.6.1  | x86_64
i+ | SLE-Module-Legacy15-SP2-Pool    | sle-module-legacy-release | 15.2-44.1       | x86_64

相关内容