iSCSI(Internet Small Computer System Interface)是一种基于IP网络的存储协议,它允许将远程存储设备映射到本地系统,就像使用本地硬盘一样,在CentOS 7系统中,挂载iSCSI存储可以扩展存储容量,提升数据管理效率,本文将详细介绍如何在CentOS 7上完成iSCSI的挂载过程,帮助用户轻松实现网络存储的集成。
我们需要了解iSCSI的基本组件,iSCSI系统包括启动器(Initiator)和目标(Target),启动器是客户端,安装在本地系统上,用于发起连接;目标是服务器端,提供存储资源,在CentOS 7中,我们使用iscsi-initiator-utils包作为启动器。

在开始操作前,请确保您的CentOS 7系统已更新到最新状态,并具备root权限,确认网络连接稳定,且您已获得iSCSI目标服务器的IP地址、端口和目标名称,这些信息通常由存储管理员提供。
第一步是安装iSCSI启动器软件,打开终端,输入以下命令:
yum install iscsi-initiator-utils -y
这个命令会下载并安装必要的软件包,安装完成后,启动iSCSI服务并设置为开机自启:
systemctl start iscsid systemctl enable iscsid
我们需要发现可用的iSCSI目标,使用iscsiadm命令进行发现操作,假设目标服务器的IP是192.168.1.100,端口是3260(默认端口),则执行:
iscsiadm -m discovery -t st -p 192.168.1.100:3260
这个命令会扫描目标服务器,并列出可用的目标名称,请记下目标名称,例如iqn.2021-01.com.example:storage.target,后续步骤会用到。
发现目标后,需要登录到目标以建立连接,使用以下命令:

iscsiadm -m node -T iqn.2021-01.com.example:storage.target -p 192.168.1.100:3260 -l
这里,-T参数指定目标名称,-p参数指定目标地址,-l表示登录,如果登录成功,系统会提示连接已建立,您可以使用lsblk命令查看新添加的磁盘设备,它会显示为类似/dev/sdb的设备。
登录后,iSCSI磁盘可能未格式化,我们需要先识别设备,然后进行分区和格式化,使用fdisk -l命令查看所有磁盘,找到新增的iSCSI设备,假设设备是/dev/sdb,我们可以用fdisk工具分区:
fdisk /dev/sdb
在fdisk交互界面中,输入n创建新分区,选择分区类型(通常用主分区),然后设置分区大小,完成后,输入w保存并退出。
格式化分区,使用ext4文件系统:
mkfs.ext4 /dev/sdb1
这个过程可能需要几秒钟,具体取决于磁盘大小,格式化完成后,我们可以挂载分区到系统目录,首先创建一个挂载点,mnt/iscsi:
mkdir /mnt/iscsi
然后挂载设备:

mount /dev/sdb1 /mnt/iscsi
为了确保系统重启后自动挂载,需要编辑/etc/fstab文件,添加以下行:
/dev/sdb1 /mnt/iscsi ext4 defaults,_netdev 0 0
注意,_netdev选项表示这是一个网络设备,系统会在网络就绪后挂载,避免启动问题。
挂载完成后,验证操作是否成功,使用df -h命令检查挂载点,确认/mnt/iscsi显示正确的容量,还可以在挂载点创建测试文件,确保读写权限正常。
在实际使用中,可能会遇到连接中断或权限问题,建议定期检查iSCSI服务状态,使用systemctl status iscsid命令监控,如果连接丢失,可以重新登录目标,防火墙设置可能影响连接,请确保3260端口在CentOS 7和目标服务器之间开放,使用以下命令配置防火墙:
firewall-cmd --permanent --add-port=3260/tcp firewall-cmd --reload
从我的经验来看,iSCSI挂载在CentOS 7上是一个稳定且高效的解决方案,尤其适合企业环境中的存储扩展,它简化了数据管理,但用户需注意网络延迟和安全性,在生产环境中,建议使用CHAP认证来增强安全性,通过/etc/iscsi/iscsid.conf文件配置用户名和密码,防止未授权访问,总体而言,掌握iSCSI挂载技能能显著提升系统管理员的工作效率,同时为数据备份和共享提供便利。
