將虛擬硬碟機新增至 Linux 邏輯分割區
您可以將虛擬硬碟機動態新增至使用 IBM® i 資源的 Linux® 邏輯分割區。 這可讓您在需要時增加 AIX® 邏輯分割區的儲存體容量。
關於此作業
虛擬磁碟可簡化伺服器上的硬體配置,因為它們不需要您將其他實體裝置新增至伺服器,即可執行 Linux。 您最多可以將 64 個虛擬磁碟配置給 Linux 邏輯分割區。 每一個虛擬磁碟最多支援 1000 GB 儲存體。 每一個虛擬磁碟對 Linux 顯示為一個實際硬碟機。 不過, i 整合檔案系統中的關聯空間分散在屬於 i 邏輯分割區的磁碟上。 在磁碟之間配送儲存體,可透過 i提供裝置同位檢查保護的好處。 因此,您不需要透過透過 Linux設定裝置同位檢查保護,來使用其他處理資源及記憶體資源。
IBM i 可讓您將虛擬磁碟動態新增至 Linux 邏輯分割區。 您可以在整合檔案系統中配置磁碟空間,並使其可供 Linux 使用,而無需重新啟動伺服器或邏輯分割區。 Linux 管理者也可以配置新配置的磁碟空間,並使其可供使用,而無需重新啟動伺服器。
若要將虛擬磁碟動態新增至 Linux 邏輯分割區,請完成下列步驟:
程序
- 如果您使用 IBM Navigator for i, 使用 IBM Navigator for i建立網路伺服器儲存體空間。
- 展開 我的連線 > 您的伺服器 > 網路 > Windows 管理 。
- 用滑鼠右鍵按一下 磁碟機 ,然後選取 新建磁碟。
- 在 磁碟機名稱 欄位中,指定您要提供給網路伺服器儲存體空間的名稱。
- 在 說明 欄位中,指定網路伺服器儲存體空間的有意義說明。
- 在 容量 欄位中,指定新網路伺服器儲存體空間的大小 (以 MB 為單位)。 請參閱您偏好的 Linux 經銷商的安裝說明文件,以決定您要使用的大小。
- 按一下 確定。
- 繼續步驟 4。
- 如果您使用文字介面,請使用文字介面來建立網路伺服器儲存體空間:
- 在 IBM i 指令行上,鍵入指令 CRTNWSSTG ,然後按 F4。即會開啟「建立 NWS 儲存體空間 (CRTNWSSTG)」顯示畫面。
- 在「網路伺服器儲存體空間」欄位中,指定您要提供給網路伺服器儲存體空間的名稱。
- 在「大小」欄位中,指定新網路伺服器儲存體空間的大小 (MB)。 請參閱您偏好的 Linux 經銷商的安裝說明文件,以決定您要使用的大小。
- 在「文字說明」欄位中,指定網路伺服器儲存體空間的有意義說明。
- 按 Enter 鍵。
- 在 IBM i 指令行上,鍵入指令 CRTNWSSTG ,然後按 F4。
- 如果您使用 IBM Navigator for i, 使用 IBM Navigator for i鏈結網路伺服器儲存體空間。
- 展開 我的連線 > 您的伺服器 > 網路 > Windows 管理 。
- 按一下 磁碟機,用滑鼠右鍵按一下可用的網路伺服器儲存體空間,然後選取 新增鏈結。
- 選取您要將網路伺服器儲存體空間鏈結至其中的伺服器。
- 選取其中一種可用的資料存取類型。
- 按一下 確定。
- 繼續步驟 5。
- 如果您使用文字介面,請使用文字介面來鏈結網路伺服器儲存體空間:
- 在 IBM i 指令行上,鍵入指令 ADDNWSSTGL 並按 F4。即會開啟「新增網路伺服器儲存體鏈結 (ADDNWSSTGL)」顯示畫面。
- 在「網路伺服器說明」欄位中,指定網路伺服器說明 (NWSD) 的名稱。
- 在「動態儲存體鏈結」欄位中,指定 *YES 以讓網路伺服器儲存體空間動態可供邏輯分割區使用 (亦即,無需重新啟動 Linux 邏輯分割區即可使用)。
- 在「磁碟機序號」欄位中,指定您要使用的鏈結順序位置。
- 按 Enter 鍵。
- 在 IBM i 指令行上,鍵入指令 ADDNWSSTGL 並按 F4。
- 如果 Linux 邏輯分割區不在執行中,請啟動 Linux 邏輯分割區。 在邏輯分割區執行之前,請勿繼續進行。
- 使用具有超級使用者 (root) 專用權的使用者名稱登入 Linux 。
- 決定新虛擬磁碟機的主機 ID、SCSI 匯流排及邏輯裝置號碼 (LUN)。您可以在 Linux 命令提示字元中鍵入下列指令,以列出現有裝置:
cat /proc/scsi/scsi
。 下列範例顯示指令的範例輸出:
在此範例中,Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: IBM Model: VDASD NETSPACE Rev: 0001 Type: Direct-Access ANSI SCSI revision: 04
NETSPACE
是所顯示裝置的網路儲存體空間名稱。 尋找 Linux 邏輯分割區上現有網路儲存體空間的名稱。 請注意Host:
值 (主機 ID) 的數值部分,以及現有網路儲存體空間的Channel:
(SCSI 匯流排) 和Lun:
(邏輯單元號碼 (LUN)) 值。 新的虛擬磁碟機將具有與現有網路儲存體空間相同的主機 ID、SCSI 匯流排及 LUN。 例如,如果現有網路儲存體空間如前述範例輸出中所示,則新的虛擬磁碟機將具有主機 ID0
、SCSI 匯流排0
及 LUN0
。 - 判定新虛擬磁碟機的 SCSI ID。您可以在 Linux 命令提示字元中鍵入下列指令,以表格形式列出現有裝置:
下列範例顯示指令的輸出範例:cd /proc/scsi/sg cat device_hdr; cat devices
記下現有裝置的host chan id lun type opens qdepth busy online 0 0 0 0 0 2 30 0 1 0 1 0 0 0 0 30 0 1
host
(主機 ID)、chan
(SCSI 匯流排)、id
(SCSI ID) 及lun
(邏輯單元號碼 (LUN)) 值。 尋找與新虛擬磁碟機具有相同主機 ID、SCSI 匯流排及 LUN 的裝置 (如您在前一個步驟中所決定)。 在那些裝置中,尋找具有最大 SCSI ID 的裝置。 新的虛擬磁碟機將具有 SCSI ID ,其大於最大現有 SCSI ID。 例如,如果新的虛擬磁碟機具有主機 ID0
、SCSI 匯流排0
及 LUN0
,且 Linux 邏輯分割區上的裝置如上述範例輸出中所示, 則新的虛擬磁碟機將具有 SCSI ID1
。 - 在 Linux 命令提示字元中鍵入下列指令,以手動新增虛擬磁碟機:
echo "scsi add-single-device host chan id lun" > /proc/scsi/scsi
。請使用下列資訊來協助您瞭解指令的引數:host
是主機 ID。chan
是 SCSI 匯流排。id
是 SCSI ID。lun
是 LUN。
例如,如果新的虛擬磁碟機將具有主機 ID0
、SCSI 匯流排0
、SCSI ID1
及 LUN0
, 您將在 Linux 命令提示字元中鍵入指令echo "scsi add-single-device 0 0 1 0" > /proc/scsi/scsi
。 - 在 Linux 命令提示字元中,鍵入下列指令以在虛擬磁碟機上建立磁碟分割區:
fdisk /dev/sdb
。您必須具有超級使用者 (root) 專用權才能執行此指令。即會顯示Command (m for help):
提示。 - 在提示時鍵入
p
,以查看虛擬磁碟機的現行分割區表格。依預設,新的虛擬磁碟機會顯示虛擬磁碟上的單一磁碟分割區。例如,Disk /dev/sdb: 64 heads, 32 sectors, 200 cylinders Units = cylinders of 2048 * 512 bytes Device Boot Start End Blocks Id System /dev/sdb1 1 199 203760 6 FAT16
- 在命令提示字元中鍵入
d
,以刪除現行分割區,然後建立新的分割區。磁碟分割區的預設格式為 FAT16。 請勿在虛擬磁碟機上使用格式化為 FAT16 的磁碟分割區。即會顯示Partition number (1-4):
提示。 - 鍵入您要刪除的磁碟分割區號碼,然後按 Enter 鍵。在此範例中,您鍵入
1
。fdisk
指令會顯示命令提示字元,指出刪除成功。 - 鍵入
n
以建立新的磁碟分割區。即會顯示Command action E extended P primary partition (1-4)
提示。 - 鍵入
p
,以在虛擬磁碟上建立主要磁碟分割區,然後按 Enter 鍵。即會顯示Partition number (1-4):
提示。 - 鍵入
1
,因為這是虛擬磁碟上的第一個分割區,然後按 Enter 鍵。即會顯示First cylinder (1-200, default 1):
提示。 - 按 Enter 鍵對第一個磁碟磁柱使用預設值 1。這會使用此磁碟分割區的整個磁碟。即會顯示
Last cylinder or +size or +sizeM or +sizeK (1-200, default 200):
提示。 - 按 Enter 鍵以使用預設值 200 作為最後一個磁碟磁柱。這會使用此分割區的整個虛擬磁碟。附註: 分割區的類型預設為 Linux。 如果您需要不同的磁碟類型 (例如「邏輯磁區管理程式 (LVM)」或 Linux 延伸) ,請鍵入
t
以變更分割區的類型。fdisk
指令會傳回命令提示字元,指出分割區建立成功。 - 鍵入
w
,以確定對磁碟結構所做的變更,然後按 Enter 鍵。fdisk
指令會將變更寫入虛擬磁碟機。fdisk
指令會顯示下列診斷訊息:
完成作業之後, fdisk 指令會傳回命令提示字元。The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
- 使用 Linux mkfs 指令來格式化磁碟分割區。mkfs 指令有一些選用參數,但通常預設值會滿足大部分磁碟使用。 若要格式化在先前步驟中建立的磁碟分割區,請確保您已使用超級使用者 (root) 專用權登入,並在 Linux 命令提示字元中鍵入下列指令:
因為第二個虛擬磁碟上存在單一磁碟分割區,所以磁碟名稱為 /dev/sdb1 (sdb 表示它是第二個磁碟,而 1 表示它是分割區 1)。 mkfs 指令會顯示下列診斷訊息:mkfs /dev/sdb1
mke2fs 1.28 (31-Aug-2002) Fileserver label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 51200 inodes, 204784 blocks 10239 blocks (5.00%) reserved for the super user First data block=1 25 block groups 8192 blocks per group, 8192 fragments per group 2048 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729 Writing inode tables: done Writing superblocks and fileserver accounting information: done This fileserver will be automatically checked every 29 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
- 鍵入下列指令,以建立可用來存取新檔案的目錄:
mkdir /mnt/data
- 鍵入下列指令,以在新目錄中裝載虛擬磁碟機:
mount /dev/sdb1 /mnt/data
- 使用 Linux 文字編輯器 (例如 vi) ,將項目新增至 /etc/fstab 檔案。例如,
/dev/sdb1 /mnt/data ext2 defaults 1 1
。 每次重新啟動 Linux時,此項目都會裝載虛擬磁碟。