Windows 网络存储ISCSI

本文介绍网络存储ISCSI的主要知识点以及如何通过代码控制挂载。

Windows网络存储有很多协议,我目前学习、稍微有了解的是FTP、SMB、ISCSI,FTP、SMB类似可以用来添加共享文件夹,或者添加映射网络驱动器:

我使用FTP都是先建个映射,再将内部的文件夹固定到快速访问。平时使用效率就很高了

回到ISCSI,最近买了2款NAS,多学习学习NAS这块

群晖,网上大家评价性能很好。我尝试了下,就退货了。。。略贵,操作还特别复杂

绿联,有点坑不支持ISCSI,只支持SMB这些协议,不过它的手机、PC设备数据同步,软件体验还蛮好的。

威联通,我买了入门级的262C版本,哈哈。4G内存2块硬盘位置,学习肯定是够用了。

iSCSI(Internet Small Computer Systems Interface)是一种使用IP网络传输SCSI命令的协议,使得存储设备能够通过网络进行访问。它将存储区域网络(SAN)的功能扩展到远程位置。 工作方式:iSCSI通过TCP/IP网络传输数据,它将存储设备看作是本地硬盘,允许块级存储访问

iSCSI是一种基于因特网及SCSI协议下的存储技术,使用 TCP/IP 协议(一般使用3260)让两台主机通过IP网络相互协商然后交换SCSI命令。

这样,iSCSI就是用广域网仿真了一个常用的高性能本地存储总线,从而创建了一个存储局域网(SAN),这样可将NAS的一部分空间作为虚拟磁盘与电脑端共享,像本地硬盘一样使用这部分空间,并且还是块级存储。

买回来初始化后,打开"iSCSI与光纤通道"应用,新建文件LUN快速创建一个ISCSI目标:

在控制台-系统状态,查找到我们的IP:

手动挂载操作

然后在你电脑Windows上,搜索iscsi,打开"iscsi发起程序"。输入IP,点确定即可:

回到第一个Tab,选中iqn目标连接。如果想省事也可以使用"快速连接",在第一个Tab中输入IP:

操作完了这些,打开Windows开始菜单-磁盘管理,就可以看到未初始化的磁盘了:

右键新建卷,完成盘符、格式化,就以正常使用了。这个操作比较耗时,276G磁盘花了35s。。。:

代码控制挂载

上面是手动操作挂载的,也可以通过基于iscsi命令快速实现

下面输入IP,查找iscsi目标:

复制代码
1 iscsicli AddTargetPortal 192.168.31.67 3260
2 iscsicli ListTargets

然后连接目标:

复制代码
1 iscsicli QLoginTarget iqn.2004-04.com.qnap:ts-262c:iscsi.yudong.87ddf4

操作成功后,iqn目标会显示连接成功:

以上是通过iscsicli实现的,详细的操作指令,可以通过cmd或者powershell输入iscsicli help查看。文档API也可以看 iSCSI 发现库 API - Win32 apps | Microsoft Learn

也可以通过PowerShell完成挂载,PowerShell实现有比较完善的文档,

iSCSI Module | Microsoft LearnIscsiTarget Module | Microsoft Learn
实现 Windows Server iSCSI - Training | Microsoft Learn

iSCSI Target Server Overview | Microsoft Learn

另外,WMI其实也可以iSCSI WMI 类 - Windows drivers | Microsoft Learn,只不过貌似未开放

之后就是初始化磁盘 ,命令行操作可以使用diskpart完成。diskpart可以参考 Windows 本地虚拟磁盘 - 唐宋元明清2188 - 博客园 里磁盘初始化的内容

如果需要.NET实现一键挂盘,可以针对上面的iscsicli或者powershell脚本进行封装下。

参考文章:

详解块存储、文件存储、对象存储区别 - 知乎

科普!一文详解 FTP、FTPS 与 SFTP 的原理 - 知乎

五大主流分布式存储技术对比分析,你 pick 哪一种?| 争议_gpfs luster-CSDN博客

【最强科普】一文读懂分布式存储 - 知乎

使用powershell配置和管理基于Windows的iSCSI - 简书

相关推荐
for_ever_love__12 小时前
python基础语法学习: 数据容器
windows·python·学习
huainingning13 小时前
微软windows系统官网IPV6临时地址介绍
windows·microsoft·智能路由器
.Peter18 小时前
.NET/WPF 程序在部分 Windows 电脑无法保存用户环境变量:使用 DPAPI 实现安全兼容
windows·信息安全·c#·.net·wpf·环境变量·dpapi
码字的特恩19 小时前
微软确认暂不为 Windows 11 加入透明效果自定义功能,建议用户使用第三方工具
人工智能·windows·算法·microsoft·计算机·大模型·编程
神奇小梵19 小时前
安全和开发的需要了解的知识————下载内容的安全,和下载内容如何运行
android·windows·安全·个人开发
zhangfeng113320 小时前
Windows AMD显卡跑PyTorch
人工智能·pytorch·windows
楷哥爱开发20 小时前
如何在 Windows、macOS 和 Linux 上安装 scikit-learn (sklearn)
linux·windows·macos
2603_9651481120 小时前
eBay商品数据API:寻找海外仓与价格洼地
大数据·人工智能·windows·python·microsoft
江畔柳前堤1 天前
HBM:大语言模型时代的「算力血液」——从内存墙到带宽革命的深度拆解
服务器·人工智能·windows·目标检测·语言模型·自然语言处理·软件工程
天天进步20151 天前
UI-TARS 源码解析 #22:二次开发实战:用 UI-TARS 做一个简单的 Windows 自动操作 Agent
windows·ui