您可以使用 Solaris Live Upgrade,將 UFS 檔案系統遷移至 ZFS 根池,以及從現有 ZFS 根池建立 ZFS 根檔案系統。
使用 Solaris Live Upgrade 建立啟動環境是 Solaris 10 10/08 發行版本的新功能。針對 UFS 檔案系統執行 Solaris Live Upgrade 時,指令行參數和 Solaris Live Upgrade 的作業均維持不變。若要在具有 UFS 檔案系統的系統上執行 Solaris Live Upgrade,請參閱本書的第 1 部分使用 Solaris Live Upgrade 升級。
下列各節提供這些作業的簡介:
從 Solaris 10 10/09 發行版本開始,您可以設定 JumpStart 描述檔來識別 ZFS 根池的 Flash 歸檔。
Flash 歸檔可以建立在執行 UFS 根檔案系統或 ZFS 根檔案系統的系統上。ZFS 根池的 Flash 歸檔含有整個池階層,但交換和傾印磁碟區以及任何其他排除的資料集除外。安裝 Flash 歸檔時,會建立交換和傾印磁碟區。
您可以使用下列 Flash 歸檔安裝方法:
產生能夠用來使用 ZFS 根檔案系統來安裝和啟動系統的 Flash 歸檔。
透過使用 ZFS Flash 歸檔來執行系統的 JumpStart 安裝。
建立 ZFS Flash 歸檔會將整個根池備份,而不是個別的啟動環境。使用 flarcreate 和 flar 指令的 -D 選項可以排除池內的個別資料集。
如需詳細指示和限制,請參閱 「Oracle Solaris ZFS Administration Guide」中的「Installing a ZFS Root File System (Oracle Solaris Flash Archive Installation)」。
如果您有 UFS 檔案系統,Solaris Live Upgrade 的運作方式與舊版中的運作方式相同。您現在可以從 UFS 檔案系統遷移至 ZFS 根池,以及在 ZFS 根池中建立新啟動環境。對於這些作業,lucreate 指令已藉由搭配 -p 選項而獲得增強。指令語法如下:
# lucreate [-c active_BE_name] -n BE_name [-p zfs_root_pool] |
-p 選項會指定新啟動環境常駐的 ZFS 池。如果來源啟動環境和目標啟動環境位於同一個池中,則可以省略此選項。
ZFS 不支援 lucreate 指令 -m 選項。其他 lucreate 指令選項仍可如常地使用,但有一些例外。如需相關限制,請參閱使用 Solaris Live Upgrade 的系統需求和限制。
如果您是從目前執行中的系統建立啟動環境,則 lucreate 指令會將 UFS 根 (/) 檔案系統複製到 ZFS 根池。複製程序可能需要一些時間,實際情況取決於您的系統。
當您從 UFS 檔案系統進行遷移時,來源啟動環境可以是磁碟片段上的 UFS 根 (/) 檔案系統。您無法從 ZFS 根池上的來源啟動環境,在 UFS 檔案系統上建立啟動環境。
下列指令會從 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 中的指令相同。這些指令會建立新根池 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 (SVM) 磁碟區,則可遷移 UFS 檔案系統。若要從現有 SVM 配置建立 UFS 啟動環境,您必須從目前執行中的系統建立新啟動環境。然後再從新 UFS 啟動環境建立 ZFS 啟動環境。
Solaris Volume Manager (SVM) 簡介。ZFS 使用儲存池的概念來管理實體儲存。在過去,檔案系統建構於單一實體裝置之上。為了定址多個裝置並提供資料備援,引入磁碟區管理員的概念,以提供單一裝置的影像。因此,不必修改檔案系統,即可利用多個裝置。此設計多添一層複雜度。此複雜度最後阻止了某些檔案系統的進展,因為檔案系統無法控制虛擬化磁碟區上的資料實體放置。
ZFS 儲存池取代了 SVM。ZFS 完全去除了磁碟區管理。ZFS 會將裝置彙總至儲存池,而不強制建立虛擬化磁碟區。儲存池說明儲存裝置配置和資料備援的這類實體特性,並做為可建立檔案系統的任意資料存放區。檔案系統不再受限於個別裝置,使它們能夠與池中所有檔案系統共用空間。您不再需要預先決定檔案系統的大小,因為檔案系統會在分配給儲存池的空間內自動增長。當增加新儲存裝置時,池中的所有檔案系統可以立即使用此增加的空間,而不需再執行其他作業。在許多方面,儲存池都會扮演虛擬記憶體系統的角色。當記憶體 DIMM 增加到系統,作業系統不會強制您呼叫某些指令來配置記憶體,並將其指定給個別程序。系統上的所有程序都會自動使用此增加的記憶體。
遷移具有 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 準備就緒,可以升級及啟動。
您可以在同一個根池中或在新的根池上建立新 ZFS 啟動環境。本節包含以下簡介:
在同一個 ZFS 根池中建立新啟動環境時,lucreate 指令會從來源啟動環境建立快照,然後從該快照建立複製。幾乎在瞬間就會完成快照和複製的建立,因此使用的磁碟空間極少。最終所需的空間量取決於升級程序中替代的檔案數目。雖然快照為唯讀,但是複製是可讀寫的快照副本。對複製啟動環境所做的任何變更不會反映在快照或建立快照的來源啟動環境中。
當使用中資料集中的資料變更時,快照會持續參照舊資料而耗用空間。因此,快照會阻止資料釋回池中。如需快照的更多資訊,請參閱「Oracle Solaris ZFS Administration Guide」中的第 7 章「Working With Oracle Solaris ZFS Snapshots and Clones」。
當目前啟動環境位於同一 ZFS 池上時,會忽略 -p 選項。
圖 11–2 顯示從 ZFS 根池建立 ZFS 啟動環境。磁碟片段 c0t0d0s0 包含 ZFS 根池 rpool。在 lucreate 指令中,-n 選項會將名稱指定給要建立的啟動環境 new-zfsBE。建立原始根池的快照 rpool@new-zfsBE。該快照會用來建立複製,即新的啟動環境 new-zfsBE。啟動環境 new-zfsBE 準備就緒,可以升級及啟動。
此範例顯示的指令與圖 11–2 中,在同一根池中建立新啟動環境的指令相同。lucreate 指令會搭配 -c zfsBE 選項命名目前執行中的啟動環境,而 -n new-zfsBE 則會建立新啟動環境。zfs list 指令會顯示具有新啟動環境和快照的 ZFS 資料集。
# lucreate -c zfsBE -n new-zfsBE # zfs list AME USED AVAIL REFER MOUNTPOINT rpool 9.29G 57.6G 20K /rpool rpool/ROOT 5.38G 57.6G 18K /rpool/ROOT rpool/ROOT/zfsBE 5.38G 57.6G 551M rpool/ROOT/zfsBE@new-zfsBE 66.5K - 551M - 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 - |
您可以使用 lucreate 指令,將現有 ZFS 根池複製到另一個 ZFS 根池。複製程序可能需要一些時間,實際情況取決於您的系統。
圖 11–3 顯示 zpool 指令會在 c0t1d0s5 上建立 ZFS 根池 rpool2,因為可啟動的 ZFS 根池尚未存在。使用 lucreate 指令搭配 -n 選項會將名稱指定給要建立的啟動環境 new-zfsBE。-p 選項會指定新啟動環境的放置位置。
此範例顯示的指令與圖 11–3 中建立新啟動環境,然後在新建立的根池中建立新啟動環境的指令相同。在此範例中,zpool create 指令會建立 rpool2。zfs list 指令顯示在 rpool2 中沒有建立任何 ZFS 資料集。資料集是使用 lucreate 指令建立的。
# zpool create rpool2 c0t2d0s5 # zfs list NAME USED AVAIL REFER MOUNTPOINT rpool2 9.29G 57.6G 20K /rpool2 rpool 9.29G 57.6G 20K /.new.lulib.rs.109262 rpool/ROOT 5.46G 57.6G 18K legacy rpool/ROOT/zfsBE 5.46G 57.6G 551M rpool/dump 3.99G - 3.99G - rpool/swap 3.99G - 3.99G - |
新 ZFS 根池 rpool2 建立於磁碟片段 c0t2d0s5 上。
# lucreate -n new-zfsBE -p rpool2 # zfs list NAME USED AVAIL REFER MOUNTPOINT rpool2 9.29G 57.6G 20K /rpool2 rpool2/ROOT/ 5.38G 57.6G 18K /rpool2/ROOT rpool2/ROOT/new-zfsBE 5.38G 57.6G 551M /tmp/.new.luupdall.109859 rpool2/dump 3.99G - 3.99G - rpool2/swap 3.99G - 3.99G - rpool 9.29G 57.6G 20K /.new.lulib.rs.109262 rpool/ROOT 5.46G 57.6G 18K legacy rpool/ROOT/zfsBE 5.46G 57.6G 551M rpool/dump 3.99G - 3.99G - rpool/swap 3.99G - 3.99G - |
新啟動環境 new-zfsBE 會與其他資料集 ROOT、dump 和 swap 建立於 rpool2 上。啟動環境 new-zfsBE 準備就緒,可以升級及啟動。
如果您要從目前執行中系統以外的來源建立啟動環境,則必須將 lucreate 指令與 -s 選項搭配使用。-s 選項的作用與用於 UFS 檔案系統的方式相同。-s 選項提供替代根 (/) 檔案系統的路徑。此替代根 (/) 檔案系統就是建立新 ZFS 根池的來源。替代根可以是 UFS (/) 根檔案系統或 ZFS 根池。複製程序可能需要一些時間,實際情況取決於您的系統。
下列指令會從現有 ZFS 根池建立新 ZFS 根池。-n 選項會將名稱指定給要建立的啟動環境 new-zfsBE。-s 選項會指定啟動環境 source-zfsBE 用做複製的來源,而非目前執行中的啟動環境。-p 選項會指定將新啟動環境置於 newpool2 中。
# lucreate -n new-zfsBE -s source-zfsBE -p rpool2 |
啟動環境 new-zfsBE 準備就緒,可以升級及啟動。
您可以使用 Solaris Live Upgrade,將非全域區域遷移至 ZFS 根檔案系統。如需簡介、規劃及逐步程序,請參閱第 14 章針對已安裝非全域區域的 ZFS 執行 Solaris Live Upgrade。
如需本章主題的額外資訊,請參閱表 11–1 所列的資源。
表 11–1 其他資源
資源 |
位置 |
---|---|
如需 ZFS 資訊,包括簡介、規劃和逐步說明 | |
在具有 UFS 檔案系統的系統上使用 Solaris Live Upgrade |