回滚过程将所有系统软件和所有系统元数据设置恢复到应用更新之前的状态。此功能是通过在应用新的更新之前创建系统各方面的快照,并回滚此快照进行回滚来实现的。回滚所带来的影响如下:
将恢复和丢失任何设备的配置更改。例如,假设正在运行版本 V,然后更新为版本 V+1,并更改了 DNS 服务器。如果执行回滚,则 DNS 服务器设置修改将有效地撤消并从系统中永久删除。
相反,对用户数据所做的任何更改将不会恢复:如果从 V 更新到 V+1,然后客户机以任何方式创建目录或修改共享资源,在回滚后这些更改将仍然存在(如您所期望的)。
如果设备正在运行版本 V,并且具有先前的回滚目标 V-1 和 V-2,然后您直接恢复到版本 V-2(从而“跳过”V-1),则不仅会删除 V 的,也将删除 V-1 的系统软件设置和系统软件。即,回滚到 V-2 后,就像从未应用过更新 V-1 和 V 一样。但是,V-1 和 V 的软件上载映像将仍保存在系统中,如果希望的话,您可以在回滚后通过重新执行更新来再次应用。
如果应用更新后,系统进行了备份并正在运行,则您可以使用 BUI 或 CLI 来启动向两个先前应用的更新之一的回滚。如果更新后系统完全无法运行,则使用失败安全回滚过程。
管理员可以通过选择其他引导菜单条目之一(如果存在),从串行控制台执行系统软件的失败安全回滚。虽然也可以从 BUI 或 CLI 请求回滚,但回滚是从引导菜单提供的,因为有可能在新的系统软件完全运行失败的情况下需要回滚,即根本无法引导。要从控制台进行回滚,像平常一样访问串行控制台,在引导期间的 10 秒钟超时时间之内,使用方向键将菜单选择项向下移动到较早的条目之一:
GNU GRUB version 0.97 (612K lower / 2087424K upper memory) +-------------------------------------------------------------------------+ | Sun ZFS Storage 7120 2013.06.05.0.0,1-1.6 | | Sun ZFS Storage 7120 2011.04.24.4.2,1-1.28 | | | +-------------------------------------------------------------------------+ Use the ^ and v keys to select which entry is highlighted. Press enter to boot the selected OS, 'e' to edit the commands before booting, or 'c' for a command-line.
选择回滚引导菜单条目后,系统将引导旧的核心软件,但必须在控制台上手动确认回滚以提交回滚,这将有效地删除自系统更新以来进行的所有更改,如上所述。确认步骤如下:
SunOS Release 5.11 Version ak/generic@2011.04.24.4.2,1-1.28 64-bit Copyright (c) 1983, 2010, Oracle and/or its affiliates. All rights reserved. System rollback in progress. Rollback to: ak/nas@2011.04.24.4.2,1-1.28 Proceed with system rollback [y,n,?]
输入 "y" 继续回滚,系统将使用之前的快照完成引导。输入 "n" 取消回滚并立即重新引导系统,使管理员可以选择不同的引导映像(例如,当前系统软件或较早的快照)。