如何在 CentOS/RHEL 6 上设置“max_report_luns”和“max_luns”以扫描超过 512 个 LUN

CentOS/RHEL 6 中可以显示的最大 luns 的默认限制是 512.
但在许多情况下,我们可能希望增加此限制。
SCSI核心模块有一个参数来控制多个LUN的数量。

更多: zhilu jiaocheng

更改 max_report_luns 参数

  1. 要更改 max_report_luns 或者 max_luns 的值,请将以下内容添加到 grub.conf 'kernel' 行:
# vi /boot/grub/grub.conf 
 kernel /vmlinuz-2.6.32-71.el6.x86_64 ro root=/dev/mapper/vg_rhel60-lv_root 
    rd_LVM_LV=vg_rhel60/lv_root rd_LVM_LV=vg_rhel60/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM 
    LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto 
    rhgb quiet scsi_mod.max_report_luns=[yourvalue] scsi_mod.max_luns=[yourvalue]

在此指定我们希望系统扫描的最大 lunx 数。
我们可以指定一个较大的数字,例如 2048 或者 4096 等。

  1. 重新启动系统。
    重新启动后,应该会出现其他 LUN。
    更改将在重新启动后持续存在。
# shutdown -r now

查看当前设置

要查看“max_luns”参数的当前设置,请使用以下命令:

# systool -v -m scsi_mod
Module = "scsi_mod"
  Attributes:
    uevent              = 
  Parameters:
    default_dev_flags   = "0"
    eh_deadline         = "-1"
    inq_timeout         = "20"
    max_luns            = "512"
    scan                = "async"
    scsi_logging_level  = "0"
    use_blk_mq          = "Y"

我们还可以查看文件 /sys/module/scsi_mod/parameters/max_luns ,以查看当前设置:

# cat /sys/module/scsi_mod/parameters/max_luns
512

验证

重新启动后系统启动后,使用以下任何命令再次验证设置。

# cat /sys/module/scsi_mod/parameters/max_luns
# cat /sys/module/scsi_mod/parameters/max_report_luns
# systool -v -m scsi_mod
日期:2020-09-17 00:12:38 来源:oir作者:oir