37.2. 領域安裝

外來領域安裝和設定包含下列幾個步驟。接下來,會安裝第一個外來領域,以完成建立第一個網路連結的所有不同任務。

若要安裝外來系統,您必須提供區塊裝置的 root 檔案系統或需要設定的檔案系統映像檔。若要稍後存取系統,使用虛擬主控台或設定外來系統的網路連接。安裝 SUSE Linux 到 YaST 支援的目錄。此外來系統的硬體需求和正常的 Linux 安裝類似。

領域可共享從其他領域唯讀安裝的檔案系統,如 /usr/opt。不要共享寫入讀取的檔案系統。要與許多外來領域共享可寫入資料,可使用 NFS 或其他網路或叢集檔案系統。

[Warning]啟動外來領域

啟動外來領域時,請確認安裝程式或控制 domain-0 不會安裝外來系統的檔案系統。

第一件事是建立檔案系統映像檔,是 Linux 外來系統安裝的位置。

  1. 若要建立名為 guest1 的空映像檔,請在目錄/var/tmp/ (4 GB 大) 中,使用下列指令:

    dd if=/dev/zero of=/var/tmp/guest1 seek=1M bs=4096 count=1
  2. 該映像檔為一個大的、空的、沒有任何資訊的檔案。若要將檔案寫入到映像檔,需要檔案系統:

    mkreiserfs -f /var/tmp/guest1

    指令 mkreiserfs 會通知您這不是區塊特殊裝置,並要求確認。輸入 Y 然後按一下 Enter 繼續。

  3. 會在目錄執行實際的安裝。所以必須安裝檔案系統映像檔 /var/tmp/guest1 到目錄。

    mkdir -p /var/tmp/dirinstall
    mount -o loop /var/tmp/guest1 /var/tmp/dirinstall
    
[Important]重要

當您完成安裝後,再解安裝此檔案系統映像檔。安裝時,YaST 同時會安裝 /proc 檔案系統,所以也必須解安裝:

umount /var/tmp/dirinstall/proc
umount /var/tmp/dirinstall

37.2.1. 使用 YaST 安裝外來領域

若要使用 YaST 安裝外來領域,您需要先準備新的外來領域的檔案系統映像檔。啟動 YaST 然後選擇 軟體+安裝至 Xen 的目錄

目錄安裝的 YaST 模組有多個選項,請按照自己的需求設定:

  • 目標目錄:/var/tmp/dirinstall

    設定該選項到檔案系統映像檔的安裝點以供使用。預設值為接受。

  • 第一次開機時執行 YaST 和 SUSEconfig:是

    設定該選項為 。第一次啟動外來領域時,將會要求您提供 root 密碼和初次使用者。

  • 建立映像檔:否

    這次建立的映像檔只是安裝目錄的 Tar 歸檔。這並不是很實用。

  • 軟體

    選取要使用的安裝類型。任何預設值應該會是好的開始。

按一下 下一步 開始安裝。根據套件的數量,安裝可能會花費一段時間。完成安裝後,必須移走 tls 程式庫:

mv /var/tmp/dirinstall/lib/tls /var/tmp/dirinstall/lib/tls.disabled
 

Xen 使用 domain-0 其中一個核心,以啟動外來領域。若要在外來領域使用網路,必須讓外來領域可使用該核心模組。

cp -a /lib/modules/$(rpm -qf --qf %{VERSION}-%{RELEASE}-xen \
    /boot/vmlinuz-xen) /var/tmp/dirinstall/lib/modules
 

若要避免檔案系統錯誤,安裝後,必須解安裝檔案系統映像檔:

umount /var/tmp/dirinstall/proc
umount /var/tmp/dirinstall/
 

同時可能會建立 domain-0 和外來系統的特殊核心。主要的不同是在外來系統不需要硬體驅動程式。因為這些驅動程式為模組,不會在外來系統使用,SUSE 只傳送兩個任務的一個核心。

37.2.2. 設定救援系統為外來領域

要快速取得執行中系統的快速方法是,重複使用已存在 root 檔案系統,如 SUSE Linux 救援系統。基本上,交換虛擬區塊的核心映像檔/裝置驅動程式和此映像檔中的網路裝置。若要快速完成任務,可至 /usr/share/doc/packages/xen/ 取得程序檔 mk-xen-rescue-img.sh

使用救援方法建立 root 檔案系統的缺點是,不會有 RPM 資料庫,所以您將無法輕易的使用 RPM 新增套件。另一方面,檔案會很小,但包含大部分啟動網路所需的物件。

若要執行程序檔 mk-xen-rescue-img.sh,您至少需要包含救援映像檔的目錄和放置目標映像檔的目標位置。按照預設值,目錄會放置在開機 DVD 中的 /boot

cd /usr/share/doc/packages/xen
./mk-xen-rescue-img.sh /media/dvd/boot /usr/local/xen 64 

程序檔的第一個參數是救援映像檔的目錄。第二個參數是映像檔的目標位置。可選參數為新建外來領域的磁碟空間需求和要使用的核心版本。

然後程序檔會複製映像檔到新的位置,取代核心和多個核心模組,並停用系統的 tls 目錄。最後一步,會在 /etc/xen/ 產生新的映像檔的組態檔。