2016/12/22 技术探讨

一直都有在CentOS中搭建ISCSI服务做网盘,但自从红帽发布7之后,粉转黑,转投到了大便(Debian)阵营中来,自然而然的也需要在Debian中搭建同样的服务供我在Windows中继续使用ISCSI服务。

关于CentOS中如何搭建ISCSI服务,方式比较简单,这篇文章(《CentOS下如何搭建ISCSI以及Windows如何挂载ISCSI镜像》)也有详细的介绍,有需要的读者可以移步翻阅,而关于Debian如何搭建ISCSI,网上虽然也有相关的教程,但可以直言不讳的用“乱七八糟”来形容,跟着这些教程走,往往是走进一个大坑里(亲身掉坑),这里我还是有必要把教程记录到博客中,供有缘的读者或者自己以后使用。


关于ISCSI,其实Debian中的ISCSI分两个部分,他们分别是“iscsi target”部分(server部分)以及“iscsi initiator”部分(客户端部分)。本篇内容主要讲解如何搭建ISCSI服务,因此也只会讲“iscsi target”部分,不讲“iscsi initator”部分。

首先我们切换到“root”权限,并使用aptget命令快速的安装iscsitarget:

apt-get install -y iscsitarget 

接着使用vi编辑“/etc/default/iscsitarget”:

vi /etc/default/iscsitarget

把里面的“ISCSITARGET_ENABLE=false”中的“false”改为“true”并保存退出。

接着使用dd命令,产生一块作为ISCSI存储空间的块:

#这里我假设保存在/home/mydisk/iscsi.block中,并且大小为4000M。
mkdir /home/mydisk
dd if=/dev/zero of=/home/mydisk/iscsi.block bs=4M count=1000

使用vi编辑“/etc/iet/ietd.conf”

vi /etc/iet/ietd.conf

这个文件是配置挂载哪些iscsi磁盘(就刚才建的block)以及登陆的用户密码的。里面的配置基本都注释掉,各位读者可以通过取消注释并修改里面参数的方式来修改,这里我就为了方便美观,直接在文件末尾追加相关配置,效果都是一样:

#Target代表客户端显示的目标名称,如果局域网内存在多个Target,则需要名称唯一
#具体的明明规则是,Target 名称
Target ILoveJingHong

#这里配置具体的ISCSI Block地址(刚刚dd命令创建的那个)
#第一块(磁盘)用Lun0表示,第二块则用Lun1,如此类推
#Path就是地址了
Lun 0 Path=/home/mydisk/iscsi.block,Type=fileio

#这里配置能够登陆的用户的用户账号密码
#IncomingUser 账号 密码
#这里的密码需要长一点(推荐使用12位),短密码会导致客户端无法连接
IncomingUser admin admin1234567

最后就是启动我们的ISCSI服务了,使用以下的任意一个语句都可以启动:

systemctl start iscsitarget
或者
/etc/init.d/iscsitarget start

就这样,我们的ISCSI服务已经搭建完成,可以在Windows中进行挂在了,具体的挂在方式参见《CentOS下如何搭建ISCSI以及Windows如何挂载ISCSI镜像》

这里再次提醒一下,密码记得设置长一点,否则ISCSI是无法连接的。

  [ Linux ]   [ ISCSI ]   [ Debian ]
知识共享许可协议 本作品由小蝶惊鸿创作,采用知识共享署名 4.0 国际许可协议进行许可,转载时请保留本文署名及链接。