Oracle Solaris 10 9/10 安裝指南:Solaris Live Upgrade 與升級規劃

從 UFS 檔案系統遷移至 ZFS 根池

如果您是從目前執行中的系統建立啟動環境,則 lucreate 指令會將 UFS 根 (/) 檔案系統複製到 ZFS 根池。複製程序可能需要一些時間,實際情況取決於您的系統。

當您從 UFS 檔案系統進行遷移時,來源啟動環境可以是磁碟片段上的 UFS 根 (/) 檔案系統。您無法從 ZFS 根池上的來源啟動環境,在 UFS 檔案系統上建立啟動環境。

從 UFS 根 (/) 檔案系統遷移至 ZFS 根池

下列指令會從 ZFS 根池中的 UFS 根 (/) 檔案系統建立 ZFS 根池和新啟動環境。在 lucreate 作業之前,ZFS 根池必須存在,且必須使用磁碟片段 (而非整個磁碟) 加以建立,才能升級及啟動。磁碟不能有 EFI 標籤,但必須是 SMI 標籤。如需更多限制的資訊,請參閱使用 Solaris Live Upgrade 的系統需求和限制

圖 11–1 顯示 zpool 指令將會在獨立磁碟片段 c0t1d0s5 上建立根池 rpool。磁碟片段 c0t0d0s0 包含 UFS 根 (/) 檔案系統。在 lucreate 指令中,-c 選項會命名目前執行中的系統 c0t0d0,即 UFS 根 (/) 檔案系統。-n 選項會將名稱指定給要建立的啟動環境 new-zfsBE-p 選項會指定新啟動環境 rpool 的放置位置。UFS /export 檔案系統和 /swap 磁碟區不會複製到新啟動環境。

圖 11–1 從 UFS 檔案系統遷移至 ZFS 根池

上下文說明圖例。


範例 11–1 從 UFS 根 (/) 檔案系統遷移至 ZFS 根池

此範例顯示的指令與圖 11–1 中的指令相同。這些指令會建立新根池 rpool,並且從 UFS 根 (/) 檔案系統在池中建立新啟動環境。在此範例中,zfs list 指令會顯示 zpool 指令所建立的 ZFS 根池。下一個 zfs list 指令會顯示 lucreate 指令所建立的資料集。


# zpool create rpool c0t1d0s5
# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool

# lucreate -c c0t0d0 -n new-zfsBE -p rpool
# zfs list
NAME                        USED  AVAIL  REFER  MOUNTPOINT 
rpool                      9.29G  57.6G    20K  /rpool
rpool/ROOT                 5.38G  57.6G    18K  /rpool/ROOT
rpool/ROOT/new-zfsBE       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
rpool/dump                 1.95G      -  1.95G  - 
rpool/swap                 1.95G      -  1.95G  - 

新啟動環境為 rpool/ROOT/new-zfsBE。啟動環境 new-zfsBE 準備就緒,可以升級及啟動。


將配置有 Solaris Volume Manager 磁碟區的 UFS 檔案系統遷移至 ZFS 根檔案系統

如果系統有 Solaris Volume Manager (SVM) 磁碟區,則可遷移 UFS 檔案系統。若要從現有 SVM 配置建立 UFS 啟動環境,您必須從目前執行中的系統建立新啟動環境。然後再從新 UFS 啟動環境建立 ZFS 啟動環境。

Solaris Volume Manager (SVM) 簡介。ZFS 使用儲存池的概念來管理實體儲存。在過去,檔案系統建構於單一實體裝置之上。為了定址多個裝置並提供資料備援,引入磁碟區管理員的概念,以提供單一裝置的影像。因此,不必修改檔案系統,即可利用多個裝置。此設計多添一層複雜度。此複雜度最後阻止了某些檔案系統的進展,因為檔案系統無法控制虛擬化磁碟區上的資料實體放置。

ZFS 儲存池取代了 SVM。ZFS 完全去除了磁碟區管理。ZFS 會將裝置彙總至儲存池,而不強制建立虛擬化磁碟區。儲存池說明儲存裝置配置和資料備援的這類實體特性,並做為可建立檔案系統的任意資料存放區。檔案系統不再受限於個別裝置,使它們能夠與池中所有檔案系統共用空間。您不再需要預先決定檔案系統的大小,因為檔案系統會在分配給儲存池的空間內自動增長。當增加新儲存裝置時,池中的所有檔案系統可以立即使用此增加的空間,而不需再執行其他作業。在許多方面,儲存池都會扮演虛擬記憶體系統的角色。當記憶體 DIMM 增加到系統,作業系統不會強制您呼叫某些指令來配置記憶體,並將其指定給個別程序。系統上的所有程序都會自動使用此增加的記憶體。


範例 11–2 從具有 SVM 磁碟區的 UFS 根 (/) 檔案系統遷移至 ZFS 根池

遷移具有 SVM 磁碟區的系統時,會忽略 SVM 磁碟區。您可以在根池中設定鏡像,如下列範例所示。

在此範例中,使用 lucreate 指令搭配 -m 選項,會從目前執行中的系統建立新啟動環境。磁碟片段 c1t0d0s0 包含配置有 SVM 磁碟區的 UFS 根 (/) 檔案系統。zpool 指令會建立根池 c1t0d0s0 和 RAID-1 磁碟區 (鏡像) c2t0d0s0。在第二個 lucreate 指令中,-n 選項會將名稱指定給要建立的啟動環境 c0t0d0s0-s 選項會識別 UFS 根 (/) 檔案系統。-p 選項會指定新啟動環境 rpool 的放置位置。


# lucreate -n ufsBE -m /:/dev/md/dsk/d104:ufs
# zpool create rpool mirror c1t0d0s0 c2t1d0s0
# lucreate -n c0t0d0s0 -s ufsBE -p zpool

啟動環境 c0t0d0s0 準備就緒,可以升級及啟動。