遷移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

其餘的一些文件,有興趣的朋友能夠研究下。

相關文章
相關標籤/搜索