Show Table of Contents
17.2. 添加使用 FCP 的逻辑单位(LUN)
以下是如何添加 FCP LUN 的示例。
注意
如果在 z/VM 中运行,请确定将 FCP 适配器附加到 z/VM 虚拟机中。要在产品环境中形成多路径,则必须至少在两个不同的物理适配器中(CHPID)中有两个 FCP 设备。例如:
CP ATTACH FC00 TO *CP ATTACH FCD0 TO *
17.2.1. 动态激活 FCP LUN
按以下步骤操作激活 LUN:
- 使用
cio_ignore程序从忽略设备列表中删除 FCP 适配器,并使其出现在 Linux 中:#cio_ignore -r device_number使用 FCP 适配器设备号替换 device_number。例如: - 要使 FCP 适配器在线,请使用以下命令:
#chccwdev -e fc00 - 确认 zfcp 设备驱动程序自动端口扫描找到的所需 WWPN:
#ls -l /sys/bus/ccw/drivers/zfcp/0.0.fc00/drwxr-xr-x. 3 root root 0 Apr 28 18:19 0x500507630040710b drwxr-xr-x. 3 root root 0 Apr 28 18:19 0x50050763050b073d drwxr-xr-x. 3 root root 0 Apr 28 18:19 0x500507630e060521 drwxr-xr-x. 3 root root 0 Apr 28 18:19 0x500507630e860521 -r--r--r--. 1 root root 4096 Apr 28 18:17 availability -r--r--r--. 1 root root 4096 Apr 28 18:19 card_version -rw-r--r--. 1 root root 4096 Apr 28 18:17 cmb_enable -r--r--r--. 1 root root 4096 Apr 28 18:17 cutype -r--r--r--. 1 root root 4096 Apr 28 18:17 devtype lrwxrwxrwx. 1 root root 0 Apr 28 18:17 driver -> ../../../../bus/ccw/drivers/zfcp -rw-r--r--. 1 root root 4096 Apr 28 18:17 failed -r--r--r--. 1 root root 4096 Apr 28 18:19 hardware_version drwxr-xr-x. 35 root root 0 Apr 28 18:17 host0 -r--r--r--. 1 root root 4096 Apr 28 18:17 in_recovery -r--r--r--. 1 root root 4096 Apr 28 18:19 lic_version -r--r--r--. 1 root root 4096 Apr 28 18:17 modalias -rw-r--r--. 1 root root 4096 Apr 28 18:17 online -r--r--r--. 1 root root 4096 Apr 28 18:19 peer_d_id -r--r--r--. 1 root root 4096 Apr 28 18:19 peer_wwnn -r--r--r--. 1 root root 4096 Apr 28 18:19 peer_wwpn --w-------. 1 root root 4096 Apr 28 18:19 port_remove --w-------. 1 root root 4096 Apr 28 18:19 port_rescan drwxr-xr-x. 2 root root 0 Apr 28 18:19 power -r--r--r--. 1 root root 4096 Apr 28 18:19 status lrwxrwxrwx. 1 root root 0 Apr 28 18:17 subsystem -> ../../../../bus/ccw -rw-r--r--. 1 root root 4096 Apr 28 18:17 uevent - 通过将 FCP LUN 添加到要访问 LUN 的端口(WWPN)激活它:
#echo 0x4020400100000000 > /sys/bus/ccw/drivers/zfcp/0.0.fc00/0x50050763050b073d/unit_add - 找到分配的 SCSI 设备名称:
#lszfcp -DV/sys/devices/css0/0.0.0015/0.0.fc00/0x50050763050b073d/0x4020400100000000 /sys/bus/ccw/drivers/zfcp/0.0.fc00/host0/rport-0:0-21/target0:0:21/0:0:21:1089355792
17.2.2. 永久激活 FCP LUN
上述说明描述了如何在运行的系统中动态激活 FCP LUN。但是这种更改不是永久的,重启后无法保留。如何将在您的 Linux 系统中对 FCP 配置的修改保留下来要看 FCP LUN 是否属于 root 文件系统。必须在引导进程早期使用
initramfs 激活那些 root 文件系统所需的 FCP LUN 方可将其挂载到 root 文件系统中。cio_ignore 命令是明确用于永久设备配置,您不需要在忽略列表中手动释放设备。
17.2.2.1. FCP LUN 是 Root 文件系统的一部分
添加作为 root 文件系统一部分的 FCP LUN 时唯一需要修改的文件是
/etc/zipl.conf,然后运行 zipl 引导装载程序工具。不需要重新生成 initramfs。
Red Hat Enterprise Linux 提供在引导进程早期激活 FCP LUN 的参数:
rd_zfcp=。该参数值是一个用逗号分开的设备总线 ID 列表,WWPN 是以 0x 为前缀的 16 位十六进制数字,FCP LUN 是以 0x 为前缀后接多个 0 的 16 位十六进制数。
下面的
zipl.conf 示例适用于使用在两个 FCP LUN 分区中的物理卷作为 LVM 卷组 vg_devel1,该卷组中包括一个用于 root 文件系统的逻辑卷 lv_root。为方便演示,该示例显示没有多路径的配置。
[defaultboot] default=linux target=/boot/ [linux] image=/boot/vmlinuz-2.6.32-19.el7.s390x ramdisk=/boot/initramfs-2.6.32-19.el7.s390x.img parameters="root=/dev/mapper/vg_devel1-lv_root rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a000000000 rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a100000000 rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!condev"
要在包含第三 FCP LUN(其设备总线 ID 为 0.0.fc00;WWPN 0x5105074308c212e9;FCP LUN 0x401040a300000000)的分区中另一个物理卷,只要在
zipl.conf 的引导内核参数行中添加 rd_zfcp=0.0.fc00,0x5105074308c212e9,0x401040a300000000 即可。例如:
[defaultboot]
default=linux
target=/boot/
[linux]
image=/boot/vmlinuz-2.6.32-19.el7.s390x
ramdisk=/boot/initramfs-2.6.32-19.el7.s390x.img
parameters="root=/dev/mapper/vg_devel1-lv_root
rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a000000000
rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a100000000
rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a300000000
rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8
SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!condev"警告
确保
/etc/zipl.conf 中内核命令行的长度不超过 896 字节。否则将无法保存引导装载程序,同时安装会失败。
运行
zipl 在下次 IPL 时应用对 /etc/zipl.conf 的修改:
#zipl -VUsing config file '/etc/zipl.conf' Target device information Device..........................: 08:00 Partition.......................: 08:01 Device name.....................: sda Device driver name..............: sd Type............................: disk partition Disk layout.....................: SCSI disk layout Geometry - start................: 2048 File system block size..........: 4096 Physical block size.............: 512 Device size in physical blocks..: 10074112 Building bootmap in '/boot/' Building menu 'rh-automatic-menu' Adding #1: IPL section 'linux' (default) kernel image......: /boot/vmlinuz-2.6.32-19.el7.s390x kernel parmline...: 'root=/dev/mapper/vg_devel1-lv_root rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a000000000 rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a100000000 rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a300000000 rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!condev' initial ramdisk...: /boot/initramfs-2.6.32-19.el7.s390x.img component address: kernel image....: 0x00010000-0x007a21ff parmline........: 0x00001000-0x000011ff initial ramdisk.: 0x02000000-0x028f63ff internal loader.: 0x0000a000-0x0000a3ff Preparing boot device: sda. Detected SCSI PCBIOS disk layout. Writing SCSI master boot record. Syncing disks... Done.
17.2.2.2. FCP LUN 不是 Root 文件系统的一部分
不是 root 文件系统一部分的 FCP LUN,比如数据磁盘,是在
/etc/zfcp.conf 中永久配置的。每行有一个 FCP LUN,包含 FCP 适配器的设备总线 ID、前缀为 0x 的 16 位十六进制 WWPN,以及前缀为 0x 并附加多个 0 以达到 16 位十六进制数的 FCP LUN,中间使用空格或者 tab 分开。/etc/zfcp.conf 中的条目是在将 FCP 适配器添加到系统中时友 udev 激活和配置。在引导时,系统会添加所有可看到的 FCP 适配器并启动 udev。
/etc/zfcp.conf 示例内容:
0.0.fc00 0x5105074308c212e9 0x401040a000000000 0.0.fc00 0x5105074308c212e9 0x401040a100000000 0.0.fc00 0x5105074308c212e9 0x401040a300000000 0.0.fcd0 0x5105074308c2aee9 0x401040a000000000 0.0.fcd0 0x5105074308c2aee9 0x401040a100000000 0.0.fcd0 0x5105074308c2aee9 0x401040a300000000
对
/etc/zfcp.conf 的修改只在系统重启或者更改系统 I/O 配置动态添加新 FCP 通道(例如:在 z/VM 里附加一个通道)时生效。另外,可以执行以下命令,为之前没有激活的 FCP 适配器激活 /etc/zfcp.conf 中的新条目:
- 使用
cio_ignore程序从忽略设备列表中删除 FCP 适配器,并使其出现在 Linux 中:#cio_ignore -r device_number使用 FCP 适配器设备号替换 device_number。例如:#cio_ignore -r fcfc - 要触发激活更改的 uevent,请执行:
#echo add > /sys/bus/ccw/devices/device-bus-ID/uevent例如:#echo add > /sys/bus/ccw/devices/0.0.fcfc/uevent

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.