将虚拟盘单元添加到 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 管理 。
- 右键单击 磁盘驱动器 ,然后选择 新建磁盘。
- 在 磁盘驱动器名称 字段中,指定要提供给网络服务器存储空间的名称。
- 在 描述 字段中,指定网络服务器存储空间的有意义描述。
- 在 容量 字段中,指定新的网络服务器存储空间的大小 (以兆字节为单位)。 请参阅首选 Linux 分发器的安装文档以确定要使用的大小。
- 单击 确定。
- 继续执行步骤 4。
- 如果使用基于字符的接口,请使用基于字符的接口创建网络服务器存储空间:
- 在 IBM i 命令行中,输入命令 CRTNWSSTG 并按 F4。"创建 NWS 存储空间" (CRTNWSSTG) 屏幕将打开。
- 在 "网络服务器存储空间" 字段中,指定要提供给网络服务器存储空间的名称。
- 在 "大小" 字段中,指定新网络服务器存储空间的大小 (以兆字节为单位)。 请参阅首选 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 。
- 确定新虚拟磁盘驱动器的主机标识, 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: 04NETSPACE是所显示设备的网络存储空间的名称。 在 Linux 逻辑分区上查找现有网络存储空间的名称。 记录现有网络存储空间的Host:值 (主机标识) 以及Channel:(SCSI 总线) 和Lun:(逻辑单元号 (LUN)) 值的数字部分。 新的虚拟磁盘驱动器将具有与现有网络存储空间相同的主机标识, SCSI 总线和 LUN。 例如,如果现有网络存储空间如先前示例输出中所示,那么新的虚拟磁盘驱动器将具有主机标识0, SCSI 总线0和 LUN0。 - 确定新虚拟磁盘驱动器的 SCSI 标识。您可以通过在 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 1host(主机标识) ,chan(SCSI 总线) ,id(SCSI 标识) 和lun(逻辑单元号 (LUN)) 值。 查找具有与新虚拟磁盘驱动器相同的主机标识, SCSI 总线和 LUN 的设备 (如上一步中所确定)。 在这些设备中,查找具有最大 SCSI 标识的设备。 新的虚拟磁盘驱动器将具有一个大于最大现有 SCSI 标识的 SCSI 标识。 例如,如果新虚拟磁盘驱动器的主机标识为0, SCSI 总线为0, LUN 为0,并且 Linux 逻辑分区上的设备如以上示例输出中所示, 那么新的虚拟磁盘驱动器将具有 SCSI 标识1。 - 在 Linux 命令提示符处输入以下命令以手动添加虚拟磁盘驱动器:
echo "scsi add-single-device host chan id lun" > /proc/scsi/scsi。使用以下信息来帮助您了解命令的自变量:host是主机标识。chan是 SCSI 总线。id是 SCSI 标识。lun是 LUN。
例如,如果新虚拟磁盘驱动器的主机标识为0, SCSI 总线为0, SCSI 标识为1, LUN 为0, 您将在 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 Extended) ,请输入
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/sdb1mke2fs 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时,此条目都会安装虚拟盘。