系统锁定

系统锁用于防止对客户端执行某些操作。例如,系统锁可防止更新或重启动客户端。此功能对于运行生产软件的客户端或想要阻止意外更改时很有用。您可以在准备好执行操作时禁用系统锁。

1. 客户端上的系统锁

当客户端被锁定或置于中断模式后,便无法安排操作,并会禁止执行命令,而且系统细节页面上会显示一个黄色标题。在此模式下,虽然可以使用 Web UI 或 API 为锁定的客户端安排操作,但操作会失败。

锁定机制不适用于 Salt SSH 客户端。

过程:对客户端执行系统锁定
  1. 在 SUSE Manager Web UI 中,导航到要锁定的客户端的系统细节页面。

  2. 导航到公式选项卡,选中系统锁公式,然后单击 保存

  3. 导航到公式  系统锁选项卡,选中锁定系统,然后单击 保存。 在此页面上,您也可以在客户端处于锁定状态时启用特定的 Salt 模块。

  4. 进行更改后,您可能需要应用 highstate。 在此情况下,Web UI 中会显示一个标题通知您。客户端会保持锁定状态,直到您去除系统锁公式。

有关 Salt 中的中断模式的详细信息,请参见 https://docs.saltstack.com/en/latest/topics/blackout/index.html

2. 软件包锁

可以在多个客户端上使用软件包锁定,但可用的功能集不同。必须在 SUSE Linux Enterprise 和 openSUSE(基于 zypp)客户端与 Red Hat Enterprise Linux 或 Debian 客户端之间进行区分。

2.1. 基于 Zypp 的系统上的软件包锁

软件包锁用于防止在未经授权的情况下安装或升级软件包。当软件包被锁定后,会显示一个挂锁图标,表示无法安装该软件包。任何尝试安装锁定软件包的操作均会在事件日志中报告为错误。

您无法安装、升级或去除锁定的软件包,无论是通过 SUSE Manager Web UI 还是使用软件包管理器在客户端计算机上直接执行均是如此。锁定的软件包还会间接锁定任何依赖的软件包。

过程:使用软件包锁
  1. 在受管系统上导航到软件  软件包  锁定选项卡查看所有可用软件包的列表。

  2. 选择要锁定的软件包,然后单击 请求锁定。选择要激活软件包锁的日期和时间。默认情况下,软件包锁会尽快激活。请注意,软件包锁可能不会立即激活。

  3. 要去除软件包锁,请选择要解锁的软件包,然后单击 请求解锁。就像激活软件包锁一样选择日期和时间。

2.2. 类似 Red Hat Enterprise Linux 和 Debian 的系统上的软件包锁

一些类似 Red Hat Enterprise Linux 和 Debian 的系统可对客户端进行软件包锁定。

在类似 Red Hat Enterprise Linux 和 Debian 的系统上,软件包锁仅用于防止在未经授权的情况下升级或去除软件包。当软件包被锁定后,会显示一个挂锁图标,表示无法更改该软件包。任何尝试更改锁定软件包的操作均会在事件日志中报告为错误。

您无法升级或去除锁定的软件包,无论是通过 SUSE Manager Web UI 还是使用软件包管理器在客户端计算机上直接执行均是如此。锁定的软件包还会间接锁定任何依赖的软件包。

过程:使用软件包锁
  1. 在 Red Hat Enterprise Linux 7 系统和 Red Hat Enterprise Linux 8 或 9 系统上,分别以 root 身份安装 yum-plugin-versionlockpython3-dnf-plugin-versionlock。在 Debian 系统上,apt 工具已包含锁定功能。

  2. 在受管系统上导航到软件  软件包  锁定选项卡查看所有可用软件包的列表。

  3. 选择要锁定的软件包,然后单击 请求锁定。选择要激活软件包锁的日期和时间。默认情况下,软件包锁会尽快激活。请注意,软件包锁可能不会立即激活。

  4. 要去除软件包锁,请选择要解锁的软件包,然后单击 请求解锁。就像激活软件包锁一样选择日期和时间。