迁移solaris ufs根文件系统至zfs根文件系统

1、前言:ide

这个使用的是Oracle Solaris Live Upgrade工具。此工具具备如下功能:工具

■ 将UFS 根文件系统迁移到ZFS 根文件系统时,必须使用-p 选项指定现有ZFS 存储池。
■ 若是UFS 根文件系统在不一样的片上具备组件,则会将这些组件迁移到ZFS 根池。
■ 能够迁移具备区域的系统,但在Solaris 10 10/08 发行版中支持的配置有限。this

■ 在同一池中建立新的ZFS BE 时,Oracle Solaris Live Upgrade 可使用ZFS 快照和克隆功能。lua

迁移的基本过程以下:3d

■ 在任何基于SPARC 或基于x86 的受支持系统上,安装Solaris 10 10/0八、Solaris 105/0九、Solaris 10 10/09 或Solaris 10 9/10 发行版,或者使用标准升级程序从先前的Solaris 10 发行版进行升级。
■ 运行最低Solaris 10 10/08 发行版时,为ZFS 根文件系统建立ZFS 存储池。
■ 使用Oracle Solaris Live Upgrade 将UFS 根文件系统迁移到ZFS 根文件系统。
■ 使用luactivate 命令激活ZFS BE。blog

迁移以前的注意事项:get

■ Oracle Solaris 安装程序GUI 的标准升级选项不可用于从UFS 迁移到ZFS 根文件系统。要从UFS 文件系统迁移,必须使用Oracle Solaris Live Upgrade工具。
■ 在进行Oracle Solaris Live Upgrade 操做以前,必须建立将用于引导的ZFS 存储池。建立新池以前,必须使用片而不是整个磁盘建立ZFS 存储池,而且确保要用于池中的磁盘具备SMI (VTOC) 标签而不是EFI 标签,才能使ZFS 存储池可升级和可引导。若是使用的是EFI,在使用lucreate命令的时候会报错的。it

■ 不能使用Oracle Solaris Live Upgrade 从ZFS BE 建立UFS BE。若是将UFS BE 迁移到ZFS BE,而且保留UFS BE,则能够从UFS BE 或ZFS BE 引导。
■ 请勿使用zfs rename 命令重命名ZFS BE,由于Oracle Solaris Live Upgrade 功能没法检测名称更改。后续命令(如ludelete)将会失败。实际上,若是有要继续使用的现有BE,则请勿重命名ZFS 池或文件系统。
■ 建立备用BE(主BE 的克隆)时,不能使用-f、-x、-y、-Y 和-z 选项从主BE 中包括或排除文件。在如下状况下,您仍可使用包括和排除选项设置:
■ 虽然可使用Oracle Solaris Live Upgrade 将UFS 根文件系统升级到ZFS 根文件系统,但不能使用Oracle Solaris Live Upgrade 升级非根或共享文件系统。
■ 不能使用lu 命令建立或迁移ZFS 根文件系统。class

2、迁移过程:cli

一、查看当前文件系统的状态:

p_w_picpath

二、添加新硬盘并分区:

p_w_picpath

这里的c1t1d0是新添加的,用于建立zfs池。

p_w_picpath

三、建立zfs池rpool:

p_w_picpath

四、使用lucreate建立新的引导环境:

p_w_picpath

-c:若是系统以前没有建立引导环境,则指定一个主引导环境,其名称为ufsBE。

-n:新的引导环境名称。

-p:zfs池名称。

这个过程根据系统环境过程可能比较长,耐心等待吧。

五、查看BE状态:

p_w_picpath

处于激活状态的是ufsBE,而且能够引导。而zfsBE还未激活,因此状态是no而且可删除。

六、查看zfs组件:

p_w_picpath

这里的dump使用系统推荐的大小便可。

七、激活zfsBE:

p_w_picpath

p_w_picpath

上面提到了两点:

(1)、在此情况下只能使用shutdown或者init命令重启系统,不然系统是不能使用zfsBE引导的。

(2)、若是系统系统失败了,则可使用上述屏幕输出的5条命令激活ufsBE,从ufsBE引导系统。

八、将系统从新引导至ZFS BE:

p_w_picpath

此过程会更新grub的menu.lst文件。

p_w_picpath

在引导的grub界面会多出上图中的zfsBE两行,此刻系统默认的引导环境是zfsBE。

九、系统起来后查看ZFS BE 是否处于活动状态:

p_w_picpath

这里的ufsBE能够删除掉了。

文件系统状态:

p_w_picpath

zfs池状态:

p_w_picpath

3、切换回ufsBE:

一、查看zfsBE是否处于激活状态:

p_w_picpath

二、执行luactive命令,激活ufsBE:

p_w_picpath

p_w_picpath

三、执行init 6重启系统:

p_w_picpath

p_w_picpath

p_w_picpath

四、系统起来后检查是否正常:

p_w_picpath

p_w_picpath

ufsBE已处于激活状态了。zfsBE能够删除了。

五、删除不须要的BE:

p_w_picpath

这个因为使用c1t1d0建立了zfs池,并且上面存在一个引导环境<zfsBE>,因此报错。不过上面给出了提示,可使用-f参数强制删除zfsBE。

p_w_picpath

完了以后重启下,是否存在问题:

p_w_picpath

4、补充:

使用lucreate命令的时候,它会将须要的文件放在/etc/lu下面,具体内容以下图所示:

p_w_picpath

其中GRUB_backup_menu是未执行lucreate命令以前的引导文件menu.lst,内容如图所示:

p_w_picpath

GRUB_backup_menu.prev是执行完lucreate命令以后的引导文件menu.lst,内容如图所示:

p_w_picpath

其余的一些文件,有兴趣的朋友能够研究下。

相关文章
相关标签/搜索