《局域网模拟网络存储:linux iscsi store windows/linux client》
一文描述了如何使用一个磁盘分区模拟iscsi设备,并在windows上进行加载该设备。但是该文还遗留的很多没有解决的问题,今天我们一一探讨。(原文链接 http://ddbiz.com/?p=136)
1. scsi-target 模拟设备
scsi-target 可以使用一个分区进行网络存储模拟,如
tgtadm --lld iscsi --mode logicalunit --op new --tid=1 -b /dev/cciss/c0d0p7
就是使用 c0d0p7 的分区作为一个网络磁盘。
scsi-target 也可以使用一个文件进行网络存储模拟,如
# #模拟一个200M的文件 dd if=/dev/zero of=/opt/iscsi-target-disk1 bs=1M count=200
# #模拟设备 tgtadm --lld iscsi --mode logicalunit --op new --tid=2 --lun=1 -b /opt/iscsi-target-disk1
更详细的用法,可以参考 http://fedoraproject.org/wiki/Scsi-target-utils_Quickstart_Guide
2. 网络存储的文件系统类型
iscsi 向网络上的pc提供一个网络的存储环境,就像 SAN 一样(本来就是 IP-SAN :-) ),但是不同的客户端加载网络设备时,
使用的文件系统是不一样的。向NTFS 格式的文件系统,本身就不是作为共享网络使用的。如果使用ntfs文件系统,那么target
的链接端只能允许一个客户端连接(initiator),而且最好是仅仅有同一个客户端连接。ntfs 中的文件是有用户权限设定的,不同
系统的用户的guid是不同的,因此不同的客户端访问不同文件时,会有很大的困扰:要么读取错误,要么根本就看不到其他客户
端创建的文件!
严重的时候会在(重新)加载时发生目录损坏错误:
如果同时又多个操作系统的initiator连接此iscsi设备,这种损坏情况是不可避免的。通过系统修复,会发现文件系统存在不正确
的信息:
3. windows server 卸载iscsi initiator
windows 服务器在卸载iscsi设备时,经常会遇到无法卸载,设备使用的问题:
这是因为系统中有应用在使用此磁盘设备,可以使用这个软件来检查设备的使用:
http://technet.microsoft.com/en-us/sysinternals/bb896655.aspx
如: handle E:
可以看到 TSVNCache 在使用设备,想办法停掉 TSVNCache即可
(原文链接 http://ddbiz.com/?p=136)