当前位置:首页 > Ubuntu > 正文

Ubuntu iSCSI存储管理实战教程(手把手教你使用iscsiadm命令挂载远程iSCSI存储)

在现代数据中心和云计算环境中,iSCSI(Internet Small Computer System Interface)是一种广泛使用的存储协议,它允许通过标准网络将远程存储设备映射为本地磁盘。对于使用 Ubuntu 系统的用户来说,掌握 iscsiadm 命令是进行 iSCSI 存储管理的关键技能。

本文将从零开始,详细讲解如何在 Ubuntu 系统中安装、配置并使用 iscsiadm 命令连接和挂载 iSCSI 存储目标(Target),即使是 Linux 新手也能轻松上手。

Ubuntu iSCSI存储管理实战教程(手把手教你使用iscsiadm命令挂载远程iSCSI存储) iscsiadm命令  iSCSI存储管理 Linux iSCSI客户端配置 Ubuntu挂载iSCSI存储 第1张

一、什么是 iSCSI?

iSCSI 是一种基于 TCP/IP 协议的存储网络标准,它允许客户端(Initiator)通过网络访问远程服务器(Target)上的块级存储设备,就像这些设备直接连接在本地一样。这种技术常用于虚拟化、数据库和高可用性系统中。

二、准备工作

在开始之前,请确保满足以下条件:

  • 你有一台运行 Ubuntu(建议 20.04 或更高版本)的服务器或桌面系统;
  • 网络中存在一个可访问的 iSCSI Target(例如由 NAS、SAN 或另一台 Linux 服务器提供);
  • 你知道 Target 的 IP 地址、端口(默认 3260)以及可能需要的认证信息(用户名/密码)。

三、安装 iSCSI Initiator 工具

Ubuntu 默认不安装 iSCSI 客户端工具,我们需要手动安装 open-iscsi 包:

sudo apt updatesudo apt install open-iscsi -y  

安装完成后,服务会自动启动。你可以用以下命令检查状态:

sudo systemctl status iscsid  

四、发现 iSCSI Target

使用 iscsiadm 命令可以扫描网络中的 iSCSI 目标。假设你的 Target 服务器 IP 是 192.168.1.100,执行以下命令:

sudo iscsiadm -m discovery -t st -p 192.168.1.100  

如果成功,你会看到类似如下的输出:

192.168.1.100:3260,1 iqn.2024-06.com.example:storage.target01  

其中 iqn.2024-06.com.example:storage.target01 就是 Target 的唯一标识符(IQN)。

五、登录并挂载 iSCSI 存储

发现 Target 后,就可以使用 IQN 登录并将其映射为本地设备:

sudo iscsiadm -m node -T iqn.2024-06.com.example:storage.target01 -p 192.168.1.100 --login  

成功后,系统会自动创建一个块设备,通常位于 /dev/sdX(如 /dev/sdb)。你可以用以下命令查看:

lsblk  

接下来,你可以像操作普通硬盘一样对其进行分区、格式化和挂载:

# 格式化为 ext4 文件系统(首次使用时)sudo mkfs.ext4 /dev/sdb# 创建挂载点sudo mkdir -p /mnt/iscsi-storage# 挂载sudo mount /dev/sdb /mnt/iscsi-storage  

六、设置开机自动挂载(可选)

为了让 iSCSI 设备在系统重启后自动连接并挂载,你需要做两件事:

  1. 确保自动登录:iscsiadm 默认会保存登录信息,重启后会自动重连;
  2. 修改 /etc/fstab:添加挂载项,但建议使用 UUID 或 _netdev 选项避免启动卡死。

首先获取设备的 UUID:

sudo blkid /dev/sdb  

然后编辑 /etc/fstab

sudo nano /etc/fstab  

添加如下行(替换 UUID 为你自己的):

UUID=abcd1234-ef56-7890-abcd-ef1234567890 /mnt/iscsi-storage ext4 _netdev 0 0  

注意:_netdev 选项告诉系统该设备依赖网络,需在网络就绪后再挂载。

七、常见问题与排查

  • 无法发现 Target:检查防火墙是否放行 3260 端口,确认 Target 服务是否运行;
  • 登录失败:确认 IQN 是否正确,是否需要 CHAP 认证(可在 /etc/iscsi/iscsid.conf 中配置);
  • 设备未出现:运行 dmesg | tail 查看内核日志。

八、总结

通过本教程,你已经学会了如何在 Ubuntu 系统中使用 iscsiadm 命令 连接和管理 iSCSI 存储。无论是搭建私有云、部署数据库还是扩展存储空间,Ubuntu iSCSI存储管理 都是一项非常实用的技能。希望这篇 Linux iSCSI客户端配置 教程能帮助你顺利完成 Ubuntu挂载iSCSI存储 的任务!

如有疑问,欢迎在评论区留言交流!