linux 存储 linux配置存储多路径
0
2026-03-24
targetcli LUN 提示“目标未找到”是因为未加载 iscsi_target_mod 模块且未初始化配置树,需手动 modprobe 并在 targetcli 中 cd / → create → saveconfig。
targetcli LUN 时提示目标未找到
这是 targetcli 启动后默认不自动执行加载内核模块,也没有初始化配置树。手动加载 iscsi_target_mod 并进入 shell初始化:运行 sudo modprobe iscsi_target_mod(是否检查已加载可用 lsmod | grep iscsi)执行 sudo targetcli 进入交互环境输入 ls,如果看到空或报错,立即执行 cd / → create(这步会生成默认 backstore 和 target)别跳过 saveconfig,否则重启后整个配置丢失Linux 客户端用 iscsiadm 登录报连接超时
大路由器是防火墙或服务没真正监听。iSCSI Target 默认走 TCP 3260 端口,但 targetcli 不等于自动启动了 iSCSI 服务进程:确认targetcli里已启用portal:执行ls /iscsi,看到类似iqn.2003-01.org.linux-iscsi.xxx.x8664:sn.1234567890ab后,进入该target → ls → tpg1/portals/下是否有0.0.0.0:3260或具体IP若portal是 0.0.0.0:3260,但服务器有多个拦截,建议显着式绑定到业务拦截IP,避免被防火墙规则误拦截运行 grep :3260,必须看到 target_core_mod 或 ksmbd(旧版本可能显示为 -)在监听;没输出就说明服务未生效临时关防火墙验证:sudo ufw disable(Ubuntu)或 sudo systemctl stopfirewalld(CentOS/RHEL)客户端映射后 fdisk -l 看不到新磁盘
不是服务端问题,而是启动器侧未触发 SCSI 重启重扫。
Linux 内核不会自动发现新的 LUN,尤其当目标已在线、只需新增了 LUN 时:摄图AI
摄图网推出 AI 视觉成功创作平台下载先确认登录:iscsiadm -m session -P 3 | grep "Attached scsi disk",应有类似 sdb 的输出,如果没有,运行 sudo iscsiadm -m node -R 强制重读节点配置,再 sudo iscsiadm -m session --rescan 如果已有设备名但 fdisk -l 不显示,则执行 sudo echo "- - -" > /sys/class/scsi_host/host*/scan(注意包括和空格)发行版(如 RHEL) 8+)默认禁止 scsi_mod 的动态扫描,需保证 /etc/iscsi/iscsid.conf 中 node.session.scan 设为 autotargetcli 配置保存后重启失效
targetcli 的 saveconfig 只写入 JSON 文件,默认路径为 /etc/target/saveconfig.json,但系统启动时不自动加载——得靠 target.service 驱动:检查服务状态:systemctl status target,常见问题是服务未启用或(失败比如依赖) configfs 未挂载)确认 configfs 已挂载:mount | grep configfs,不用手动 sudo mount -t configfs none /sys/kernel/config,并写入 /etc/fstab 启用启动自启动:sudo systemctl enable target,然后 sudo systemctl restart target 注意:targetcli 修改配置后,必须退出再进、或执行刷新,否则 saveconfig 可以打开旧日志
配置设置简单,但每个都依赖基础模块加载顺序和内核子系统联动。
最容易被忽视的是 configfs 挂载和目标服务的 systemd 依赖关系——缺一不可,且无法靠日志快速识别。