跳过导航链接 | |
退出打印视图 | |
在 x86 平台上引导和关闭 Oracle Solaris Oracle Solaris 11 Information Library (简体中文) |
以下任务介绍如何使用 beadm 实用程序创建和管理引导环境、快照和数据集。
引导环境 (boot environment, BE) 是用于引导的 ZFS 文件系统。引导环境实际上是 Oracle Solaris OS 映像的可引导实例,以及安装到该映像的任何其他软件包。您可以在单个系统上维护多个引导环境。每个引导环境可以安装不同的 OS 版本。安装 Oracle Solaris 时,在安装期间会自动创建新的引导环境。
快照是数据集或引导环境在指定时间点创建的只读映像。请注意,快照不可引导。但是,可以创建基于特定快照的引导环境,然后激活该新的引导环境,从而在下次系统重新引导时使其成为缺省引导环境。
数据集是用于标识 ZFS 文件系统、克隆、快照或卷的通用术语。
共享数据集是用户定义的目录,如 /expor,它在活动和非活动的引导环境中包含相同的挂载点。共享数据集位于每个引导环境的根数据集区域之外。
引导环境的关键数据集包含在该环境的根数据集区域中。
有关 beadm 实用程序的更多信息,请参见 beadm(1M) 手册页。有关管理引导环境的更多信息,请参见《创建和管理 Oracle Solaris 11 引导环境》。有关在全局或非全局区域环境中使用 beadm 实用程序的特定信息,请参见《创建和管理 Oracle Solaris 11 引导环境》中的第 2 章 "beadm Zones(区域)支持"。
# beadm create beName
其中 beName 是表示新引导环境名称的变量。此新引导环境处于非活动状态。
注 - beadm create 命令不会创建部分引导环境。要么成功创建新的完全引导环境,要么命令失败。
# beadm mount beName mountpoint
如果该挂载点的目录不存在,则 beadm 命令将创建目录,然后在该目录上挂载引导环境。如果引导环境已经挂载,beadm mount 命令将失败,而且不会在新的位置重新挂载引导环境。
此时引导环境被挂载,但保持非活动状态。请注意,可对已挂载的非活动引导环境进行升级。此外,请记住,在重新引导系统之前卸载引导环境。
# beadm activate beName
其中 beName 是表示要激活的引导环境名称的变量。重新引导时,活动的新引导环境成为列于 GRUB 菜单中的缺省引导项。
示例 7-1 使用共享数据集创建克隆的引导环境
以下示例显示了名为 BE2 的新创建的引导环境中的数据集。此示例中的原始引导环境为 BE1。新引导环境 BE2 包含克隆自 BE1 的独立数据集。如果 BE1 包含传统文件系统(如 /opt)的独立数据集,那么也将克隆这些数据集。
# beadm create BE2 # beadm list -a BE2 BE/Dataset/Snapshot Active Mountpoint Space Policy Created ------------------- ------ ---------- ----- ------ ------- BE2 rpool/ROOT/BE2 - - 42.0K static 2011-04-07 10:56
如之前的输出中所示,存储池的名称为 rpool。该池已经存在于系统中,因为之前已在初始安装或升级过程中进行了设置。ROOT 这一特殊数据集也是之前在初始安装或升级过程中创建的。ROOT 保留供引导环境根专用。
# beadm create beName@snapshot
示例快照名称包括以下内容:
BE@0312200.12:15pm
BE2@backup
BE1@march132008
# beadm create -e BEname@snapshotdescription beName
使用现有快照的名称替换 BEname@snapshotdescription,使用新引导环境的定制名称替换 beName。
例如:
# beadm create -e BE1@now BE2
此命令从名为 BE1@now 的现有快照创建名为 BE2 的新引导环境。然后可以激活引导环境。有关说明,请参见如何激活新创建的引导环境。
您可以激活新创建的引导环境,从而在重新引导时使其成为引导的缺省引导环境。请注意,在任何给定时间都只能激活一个引导环境。
# beadm activate beName
其中 beName 是表示要激活的引导环境的变量。
请注意以下事项:
beadm activatebeName 命令通过将 bootfs 可引导池属性设置为要激活的引导环境的 ROOT 数据集的值,来激活相应的引导环境。
beadm activate 命令在 menu.lst 文件中将新激活的引导环境设置为缺省引导环境。
新激活的引导环境现在是 x86 GRUB 菜单中的缺省项。
注 - 如果引导环境无法引导,请重新引导并从 GRUB 菜单或引导菜单中选择上一个引导环境。
要显示使用 beadm 命令创建的可用引导环境、快照和数据集,请使用 beadm list 命令。
# beadm list option
列出有关引导环境的所有可用信息。此选项包括从属快照和数据集。
列出有关引导环境的数据集的信息。
列出有关引导环境的快照的信息。该选项与 -d 选项一起使用。
不显示标题信息。选择此选项会生成一个更便于脚本或其他程序进行解析的显示。
例如,要列出 oracle-solaris 引导环境中的所有可用数据集,需要键入以下命令:
# beadm list -a oracle-solaris BE/Dataset/Snapshot Active Mountpoint Space Policy Created ------------------- ------ ---------- ----- ------ ------- oracle-solaris rpool/ROOT/solaris - - 14.33M static 2011-01-20 07:45
示例 7-2 查看快照规范
以下 beadm list 示例包括 -s 选项,用于显示当前映像中存在的所有快照的信息。
在下列样例结果中,每个快照标题均包括一个时间戳,指示该快照的创建时间。
# beadm list -s test-2
将显示样例结果。
BE/Snapshot Space Policy Created ----------- ----- ------ ------- test-2 test-2@2010-04-12-22:29:27 264.02M static 2010-04-12 16:29 test-2@2010-06-02-20:28:51 32.50M static 2010-06-02 14:28 test-2@2010-06-03-16:51:01 16.66M static 2010-06-03 10:51 test-2@2010-07-13-22:01:56 25.93M static 2010-07-13 16:01 test-2@2010-07-21-17:15:15 26.00M static 2010-07-21 11:15 test-2@2010-07-25-19:07:03 13.75M static 2010-07-25 13:07 test-2@2010-07-25-20:33:41 12.32M static 2010-07-25 14:33 test-2@2010-07-25-20:41:23 30.60M static 2010-07-25 14:41 test-2@2010-08-06-15:53:15 8.92M static 2010-08-06 09:53 test-2@2010-08-06-16:00:37 8.92M static 2010-08-06 10:00 test-2@2010-08-09-16:06:11 193.72M static 2010-08-09 10:06 test-2@2010-08-09-20:28:59 102.69M static 2010-08-09 14:28 test-2@install 205.10M static 2010-03-16 19:04
如果要在系统上腾出更多磁盘空间,可以使用 beadm 命令销毁(删除)现有引导环境。
请注意以下事项:
不能销毁当前已引导的引导环境。
beadm destroy 命令会自动从 x86 GRUB 菜单中删除已销毁的引导环境的项。
beadm destroy 命令将仅销毁引导环境的关键数据集或非共享数据集。共享数据集位于引导环境根数据集区域之外,且销毁引导环境时不受影响。
# beadm destroy beName
在销毁引导环境之前将提示您进行确认。
销毁 beName 指定的引导环境。
在没有确认请求的情况下强制销毁引导环境。
强制销毁引导环境,即使已挂载引导环境也是如此。