为引导环境创建文件系统时,所用规则与为 Solaris 操作环境创建文件系统时的规则相同。Solaris Live Upgrade 无法防止您为关键文件系统创建无效配置。例如,您可以输入一个 lucreate 命令,它会为根目录 (/) 和 /kernel — 目录 (/) 的一个无效部分 — 创建单独的文件系统。
在为磁盘重新分片时,不要重叠片。如果存在这种情况,新的引导环境显得已经被创建,但当启动时,该引导环境却无法引导。重叠的文件系统可能被损坏。
要让 Solaris Live Upgrade 正常工作,活动引导环境上的 vfstab 文件必须有有效内容并且必须有至少一个根 (/) 项。
当您创建未激活引导环境时,需要标识出根 (/) 文件系统将被复制到的片。当您为根 (/) 文件系统选择片时,使用以下原则。片必须符合以下规则:
必须是系统可以从中引导的片。
必须满足推荐的最小值。
如果您有一个 sun4m 系统,则根 (/) 文件系统不能大于 2 GB。
可以在不同的物理磁盘上,或者在活动根 (/) 文件系统所在的同一个磁盘上。
可以是 Veritas 卷管理器卷,但不支持这些卷。
可以创建新的引导环境,它包含物理磁盘片、Solaris 卷管理器卷或 Veritas 卷管理器卷的任意组合。复制到新引导环境中的关键文件系统可以是以下类型:
物理片。
包含在 RAID–1 卷(镜像)中的单片关联。包含根 (/) 文件系统的片可以是 RAID–1 卷。
包含在 RAID–0 卷中的单片关联。包含根 (/) 文件系统的片可以是 RAID–0 卷。
创建新的引导环境时,lucreate -m 命令识别以下三种设备:
/dev/dsk/cwtxdysz 格式的物理片
/dev/md/dsk/dnum 格式的 Solaris 卷管理器卷
/dev/vx/dsk/volume_name 格式的 Veritas 卷管理器卷
如果您在使用 Veritas VxVM 升级时遇到问题,请参见在运行 Veritas VxVm 时使用 Solaris Live Upgrade 进行升级,系统将发出应急信息。
可以选择指定镜像或子镜像,或允许 lucreate 命令选择自由卷。
要指定卷,请在设备名后附加逗号和子镜像或镜像的名称。以下选项中指定了子镜像 d1。
-m /:/dev/dsk/c0t0d0s0,d1:attach |
要使软件能够选择自由卷,请不要命名子镜像或镜像。在此选项中未指定子镜像,因此软件可以选择自由卷。
-m /:/dev/dsk/c0t0d0s0:attach |
可以缩写物理磁盘片和 Solaris 卷管理器卷的名称。缩写是能够唯一标识设备的最短名称。例如,
Solaris 卷管理器卷可由其 dnum 标志来标识,因此,/dev/md/dsk/d10 可以简化为 d10。
如果系统包含一个控制器和多个磁盘,则可以使用 t0d0s0;但如果包含多个控制器,则应使用 c0t0d0s0。
有关命名要求和原则的详细信息,请参阅 Solaris Volume Manager Administration Guide 中的“Overview of Solaris Volume Manager Components”。
如果镜像或子镜像需要维护或处于忙状态,则无法分离组件。应在创建新引导环境和使用 detach 关键字之前,使用 metastat 命令。metastat 命令用于检查镜像是处于重新同步的过程还是处于使用状态。有关信息,请参见手册页 metastat(1M)。
如果使用 detach 关键字分离子镜像,则 lucreate 命令将检查当前是否正在重新同步某个设备。如果正在重新同步设备,则无法分离子镜像,并会显示错误消息。
重新同步是指出现以下问题之后,将数据从一个子镜像复制到另一个子镜像的过程:
子镜像故障。
系统崩溃。
子镜像脱机之后又重新联机。
附加新的子镜像。
有关重新同步的详细信息,请参见 Solaris Volume Manager Administration Guide 中的“RAID 1 Volume (Mirror) Resynchronization”。
使用 lucreate 命令(而不是 Solaris 卷管理器命令)可以操作未激活的引导环境中的卷。Solaris 卷管理器软件不识别引导环境,而 lucreate 命令包含检查操作,用于防止无意破坏引导环境。例如,lucreate 命令可以防止改写或删除 Solaris 卷管理器卷。
但是,如果您已经使用 Solaris 卷管理器软件创建了复杂 Solaris 卷管理器关联、分组和镜像,则必须使用 Solaris 卷管理器软件操作它们。Solaris Live Upgrade 识别这些组件,并支持使用这些组件。使用 Solaris 卷管理器命令创建、修改或销毁卷组件之前,请使用 lustatus 或 lufslist 命令。这些命令可以确定包含文件系统(由 Solaris Live Upgrade 引导环境使用)的 Solaris 卷管理器卷。
可以使用带 -m 选项的 lucreate 命令 ,通过三种方法配置交换片:
如果不指定交换片,则会为新引导环境配置属于当前引导环境的交换片。
如果指定了一个或多个交换片,则这些片是专供新引导环境使用的交换片。两个引导环境不共享任何交换片。
可以指定共享交换片并为交换添加新片。
以下示例展示了配置交换的三种方式。当前引导环境是通过 c0t0d0s0 上的根 (/) 文件系统配置的。 交换文件系统位于 c0t0d0s1。
以下示例中未指定交换片。新的引导环境包含位于 c0t1d0s0 上的根 (/) 文件系统。在 c0t0d0s1 上的当前引导环境和新引导环境之间可以共享交换。
# lucreate -n be2 -m /:c0t1d0s0:ufs |
以下示例中指定了一个交换片。新的引导环境包含位于 c0t1d0s0 上的根 (/) 文件系统。新的交换文件系统在此 c0t1d0s1 上创建。 在当前引导环境和新引导环境之间不共享任何交换片。
# lucreate -n be2 -m /:c0t1d0s0:ufs -m -:c0t1d0s1:swap |
以下示例中添加了一个交换片,另一个交换片由两个引导环境共享。新的引导环境包含位于 c0t1d0s0 上的根 (/) 文件系统。新的交换片在此 c0t1d0s1 上创建。 在当前引导环境和新引导环境之间共享 c0t0d0s1 上的交换片。
# lucreate -n be2 -m /:c0t1d0s0:ufs -m -:shared:swap -m -:c0t1d0s1:swap |
如果交换片正被当前引导环境以外的任何引导环境使用,则引导环境创建失败。如果引导环境是使用 -s 选项创建的,则替换源引导环境可以使用交换片,但不能使用任何其它引导环境。
Solaris Live Upgrade 将片的全部内容复制到指定的新引导环境片。您可能希望该片上有些大的文件系统可在引导环境之间共享(而不是复制),以节省空间和复制时间。必须复制对于操作环境(例如,根目录 [/] 和 /var)很关键的文件系统。诸如 /home 之类的文件系统不是关键文件系统,可以在引导环境之间共享。可共享的文件系统必须是用户定义的文件系统,并且在活动引导环境和新的引导环境上都必须位于单独的交换片上。您可以根据需要以几种方式重新配置磁盘。
您可以在创建新的引导环境之前重新划分磁盘片,并将可共享的文件系统放在自己的片上。例如,如果根 (/) 目录、/var 和 /home 在同一个片上,则重新配置磁盘并将 /home 放在它自己的片上。当您创建任何新的引导环境时,缺省情况下,/home 与新的引导环境共享。
如果您想共享一个目录,这个目录必须被拆分到自己的片上。这样,该目录就是一个可以与其它引导环境共享的文件系统。您可以使用 lucreate 命令和 -m 选项来创建一个新的引导环境并将一个目录拆分到它自己的片上。但是,新的文件系统还是不能与原始引导环境共享。您需要再次运行 lucreate 命令和 -m 选项来创建另一个引导环境。这样,两个新的引导环境就可以共享该目录了。
例如,如果您想从 Solaris 8 发行版升级到 Solaris 9 发行版并共享 /home,则可以运行带有 -m 选项的 lucreate 命令。您可以创建 Solaris 8 发行版,使 /home 在自己的片上作为独立的文件系统。然后再次运行带有 -m 选项的 lucreate 命令来复制该引导环境。这第三个引导环境就可以被升级到 Solaris 9 发行版。/home 在 Solaris 8 和 Solaris 9 发行版之间共享。
有关可共享和关键文件系统的说明,请参见文件系统类型。