虚拟机下的麒麟V10SP1与SP2进行iSCSI连接——基于MobaXterm

news/2025/9/25 15:01:52/文章来源:https://www.cnblogs.com/dingdongwan/p/19111234

好的!作为小白,我会带你一步一步完成 iSCSI 存储管理的配置。我会用最详细的方式解释每个步骤,确保你能完全理解。


🎯 准备工作:理解你的环境
根据你的描述,你的环境是:

Windows 11 主机

VMware Workstation 17

两个虚拟机:

麒麟 SP2(服务器端) - IP: 192.168.24.158(你自己的服务端ip)
麒麟 SP1(桌面端) - IP: 192.168.24.159(你自己的客户端ip)

使用 MobaXterm 通过 SSH 连接两个系统

iSCSI 的角色分配:

服务器端(SP2, 192.168.24.158(你自己的服务端ip)):提供存储空间(就像"存储服务器")

客户端(SP1, 192.168.24.159(你自己的客户端ip)):使用存储空间(就像"客户电脑")


🔧 第一步:服务器端(SP2)配置
1.1 登录服务器端
在 MobaXterm 中,点击 Session → SSH,输入:

Remote host: 192.168.24.158(你自己的服务端ip)

Username: root

Password: kylin2024!

连接成功后,你应该看到命令行提示符,比如 [root@server ~]#

1.2 安装 iSCSI 目标软件
iSCSI 目标软件让服务器能够"提供"存储空间。

更新软件源(就像手机更新应用商店)

sudo yum update(这一步可以省略)

安装 iSCSI 目标软件(targetcli)

sudo yum install targetcli -y
解释:

sudo:以管理员权限执行命令

yum:麒麟系统的软件包管理器(类似手机的应用商店)

targetcli:管理 iSCSI 目标的命令行工具

1.3 启动 iSCSI 目标服务

启动服务(就像打开一个应用程序)

sudo systemctl start target

设置开机自动启动(这样重启后服务会自动运行)

sudo systemctl enable target

检查服务状态(确认服务正在运行)

sudo systemctl status target
预期结果:你应该看到绿色的 active (running) 字样。

1.4 配置 iSCSI 目标(重点步骤)
现在进入交互式配置界面:

进入 targetcli 配置界面

sudo targetcli
你会看到类似这样的提示符:/>

逐步执行以下命令:

a. 创建存储文件(虚拟硬盘)
/> cd backstores/fileio
/backstores/fileio> create kylin_iscsi_file /root/kylin-iscsi-file 2G
解释:

我们在 /root 目录下创建一个 2GB 的文件,模拟一块物理硬盘

文件名:kylin-iscsi-file

大小:2GB(2048MB)

这里也可以替换成其他硬盘

b. 创建 iSCSI 目标名称
/backstores/fileio> cd /iscsi
/iscsi> create iqn.2024-04.com.kylin:file
解释:

iqn:iSCSI 限定名称,就像存储设备的"身份证号"

2024-04.com.kylin:file:命名规则(年月.域名:设备名)

c. 设置访问权限(允许哪个客户端连接)
/iscsi> cd iqn.2024-04.com.kylin:file/tpg1/acls
/iscsi/iqn.20.../tpg1/acls> create iqn.2024-04.com.kylin:storage
解释:我们允许名为 iqn.2024-04.com.kylin:storage 的客户端连接。

d. 配置网络监听
/iscsi/iqn.20.../tpg1/acls> cd /iscsi/iqn.2024-04.com.kylin:file/tpg1/portals
/iscsi/iqn.20.../tpg1/portals> delete 0.0.0.0 3260
/iscsi/iqn.20.../tpg1/portals> create 192.168.24.158(你自己的服务端ip)
解释:

删除默认的监听(0.0.0.0 表示监听所有IP)

创建只监听服务器自身IP(192.168.24.158(你自己的服务端ip))的入口

端口 3260 是 iSCSI 的标准端口

e.开启ACL验证

正确的路径:进入 TPG1 目录

cd /iscsi/iqn.2024-04.com.kylin:file/tpg1

然后设置属性

set attribute authentication=0
set attribute generate_node_acls=1
set attribute demo_mode_write_protect=0

f. 关联存储设备
/iscsi/iqn.20.../tpg1/portals> cd /iscsi/iqn.2024-04.com.kylin:file/tpg1/luns
/iscsi/iqn.20.../tpg1/luns> create /backstores/fileio/kylin_iscsi_file

g. 保存并退出
/iscsi/iqn.20.../tpg1/luns> exit
退出后,重启服务使配置生效:

sudo systemctl restart target
1.5 配置防火墙
让防火墙允许 iSCSI 流量通过:

永久开放 3260 端口

sudo firewall-cmd --permanent --add-port=3260/tcp

重新加载防火墙配置

sudo firewall-cmd --reload

检查端口是否开放

sudo firewall-cmd --list-ports
预期结果:你应该看到 3260/tcp 在列表中。


🔧 第二步:客户端(SP1)配置
2.1 登录客户端
在 MobaXterm 中新开一个 SSH 会话:

Remote host: 192.168.24.159(你自己的客户端ip)

Username: root

Password: kylin2024!

2.2 安装 iSCSI 启动器软件
客户端需要软件来"发现"并使用服务器提供的存储。

安装 iSCSI 启动器

sudo yum install iscsi-initiator-utils -y

客户端

apt install -y open-iscsi

2.3 配置客户端名称
编辑客户端配置文件,设置客户端的"身份证":

编辑 initiatorname.iscsi 文件

sudo vim /etc/iscsi/initiatorname.iscsi
按 i 进入编辑模式,输入以下内容:

InitiatorName=iqn.2024-04.com.kylin:storage
按 ESC 退出编辑模式,然后输入 :wq 保存并退出。

解释:这个名称必须与服务器端 ACL 中设置的名称完全一致。

2.4 启动 iSCSI 服务

启动服务

sudo systemctl start iscsi
sudo systemctl enable iscsi

检查服务状态

sudo systemctl status iscsi
2.5 发现服务器上的 iSCSI 目标

发现服务器上的 iSCSI 目标

sudo iscsiadm -m discovery -t st -p 192.168.137.176
预期结果:你应该看到类似这样的输出:

192.168.24.158(你自己的服务端ip):3260,1 iqn.2024-04.com.kylin:file
2.6 登录到 iSCSI 目标

登录到目标

sudo iscsiadm -m node -T iqn.2024-04.com.kylin:file -p 192.168.137.176 -l
解释:

-T:指定目标名称

-p:指定服务器地址

-l:登录(login)

2.7 检查是否连接成功

查看 iSCSI 会话

sudo iscsiadm -m session -P 3

查看系统识别的磁盘

lsblk
预期结果:在 lsblk 的输出中,你应该能看到除了系统盘(通常是 sda)之外的新磁盘,比如 sdb。


🔧 第三步:在客户端配置 LVM 和挂载
3.1 查看新磁盘

确认新磁盘的存在

lsblk
你应该看到类似这样的输出:

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
└─sda1 8:1 0 20G 0 part /
sdb 8:16 0 2G 0 disk # ← 这就是新的 iSCSI 磁盘!
3.2 LVM 配置(逻辑卷管理)
a. 创建物理卷(PV)

在 /dev/sdb 上创建物理卷

sudo pvcreate /dev/sdb
解释:物理卷就像是"原材料仓库"。

b. 创建卷组(VG)

创建名为 kylin_vg 的卷组

sudo vgcreate kylin_vg /dev/sdb
解释:卷组就像是"生产车间",管理所有物理卷。

c. 创建逻辑卷(LV)

使用全部空间创建逻辑卷 kylin_lv

sudo lvcreate -l 100%FREE -n kylin_lv kylin_vg
解释:逻辑卷就像是"成品仓库",从卷组中划分出来的可用空间。

3.3 格式化并挂载
a. 创建挂载目录

创建挂载点目录

sudo mkdir -p /data/storage
b. 格式化逻辑卷

格式化为 ext4 文件系统

sudo mkfs.ext4 /dev/kylin_vg/kylin_lv
c. 临时挂载测试

临时挂载

sudo mount /dev/kylin_vg/kylin_lv /data/storage

检查是否挂载成功

df -h
预期结果:你应该在输出中看到 /data/storage 已经挂载,容量约为 2.0G。

3.4 配置开机自动挂载
a. 获取逻辑卷的 UUID

查看逻辑卷的 UUID

sudo blkid /dev/kylin_vg/kylin_lv
记录下输出的 UUID,比如:UUID="a1b2c3d4-e5f6-7890-abcd-ef1234567890"

b. 编辑 fstab 文件实现开机自动挂载

编辑 fstab 文件

sudo vim /etc/fstab
在文件末尾添加一行(将 YOUR_UUID 替换为实际的 UUID):

UUID=YOUR_UUID /data/storage ext4 defaults,_netdev 0 0

重要:_netdev 参数表示这是一个网络设备,要等网络启动后再挂载。

c. 测试自动挂载

卸载当前挂载

sudo umount /data/storage

测试自动挂载(应该无错误输出)

sudo mount -a

再次检查是否挂载成功

df -h | grep storage

✅ 最终验证
在客户端执行以下命令进行全面验证:
lsblk

在服务器端验证:

查看 targetcli 配置

sudo targetcli ls


🆘 故障排除指南
如果遇到问题,按以下步骤检查:

网络连通性:

ping 192.168.24.158(你自己的服务端ip) # 从客户端 ping 服务器
防火墙问题:

在服务器端检查端口

sudo firewall-cmd --list-ports
服务状态:

服务器端

sudo systemctl status target

客户端

sudo systemctl status iscsi
重新扫描磁盘:

如果在客户端看不到新磁盘

sudo iscsiadm -m node -R
请按照这个步骤一步一步操作,如果遇到任何问题,把错误信息截图发给我,我会帮你解决。这个过程看起来复杂,但实际操作一遍后就会很清晰了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/917115.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

中断的基本概念

在计算机执行程序的过程中,出现某些需要紧急处理的特殊情况或者特殊请求,cpu暂时终止现行程序。而转去对这些特殊情况处理,处理完毕后在返回到原程序的断点处。 工作流程 1.中断请求 中断源向cpu发送中断请求信号 2…

郑州市科协网站做农村电子商务的网站有哪些内容

LANMP简介 LANMP是指一组通常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。 L:指Linux,一类Unix计算机操作…

AT_arc173_e [ARC173E] Rearrange and Adjacent XOR

好家伙,标签一出来给我假完了。 刚开始以为是拆位对于每一位的每一层去做贪心,结果发现假了。 有一个很显然的性质是,答案一定由原序列若干个数异或得到,现在我们需要观察这些数有什么性质。 我们再仔细一想,如果…

修复gradle8使用Transform第一个构建中断第二次构建失败的问题:java.io.IOException: Unable to delete directory xxxx\build

问题描述 使用了gradle编译插件,编译插件使用的是Transform处理字节码,如果第一次ctrl+c中断或者其它原因中断,下次再次构建会出现build文件夹清理不了的问题 Execution failed for task :my-module:my-submodule:c…

.NET操作Word/WPS打造专业文档 - 页面设置与打印控制完全指南

本文将详细介绍如何使用MudTools.OfficeInterop.Word库来设置页面参数、管理页眉页脚以及控制文档打印。我们将深入探讨从基础的纸张设置到高级的分节页面控制,从简单的页眉页脚到复杂的多区域布局,以及如何精确控制…

NORDIC蓝牙6.0新品NRF54L15多协议超低功耗高性能BLE芯片 - 动能世纪

NRF54L15,NRF54L10,NRF54L05 是NORDIC推出的高性能,多协议,低功耗BLE6.0芯片 产品简介 增强的多协议支持nRF54L 系列支持低功耗蓝牙、蓝牙 Mesh、Thread、Matter、Zigbee、Amazon Sidewalk 和 2.4 GHz 专有协议,并…

记录:git、.${index}. 滚动条

解决问题:从底层找,从最开始的位置打日志,一步步节点去找问题发生的位置 记录、统计:各环境账号。。。上线:需要准备的资源、账号、人员 去掉debugger 1、提交代码;2、dev,fat,本地各种自测;3、new tag,改动…

快速入门HarmonyOS应用开发(三) - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Docker + IDEA 一键部署! - 实践

Docker + IDEA 一键部署! - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&q…

使用springboot开发一个宿舍管理系统练习项目 - 实践

使用springboot开发一个宿舍管理系统练习项目 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&quo…

有做兼职赚钱的网站吗12315可以查询营业执照吗

本文小编给大家分享的是腾讯视频下载的视频怎么导出来_手机腾讯视频怎么缓存视频电影。相比其它的视频客户端,腾讯视频的多维度筛选,大数据比对,更有利于用户发现和推荐自己喜爱的影视剧内容。腾讯视频播放器推荐精准,越用越懂你&…

seo网站制作网站专题报道页面怎么做的

最近开始阅读java底层的源码,是因为发现越到后面越发现读源码的重要性,真的很重要,不阅读源码,你会发现“路”越走越窄。 今天看到了String的这个构造方法, /*** Initializes a newly created {code String} object so…

深圳有做网站公司wordpress onethink

可以放在服务器上,对服务器上的文件进行浏览、上传、下载,可下载文件源码。把下所有代码入在一个文件里即可,文件的后缀要为asp。thedir request("thedir")if thedir "" thenfolderini server.mappath(".")…

云南省城乡住房与建设厅网站教育网站建设情况报告

在官网可编辑表格typescript样例里 const inputRef useRef<InputRef>(null); InputRef项目报错原因是ant design的版本问题! antd 4.19版本重写了input 可通过InputRef来使用input组件的ref

CF1542

简单题/简单题/简单计数题/中等计数题/优化计数题CF1542E2 Abnormal Permutation Pairs 既然要求了字典序,那么我们可以枚举两个排列的最长公共前缀长度 \(L\) 并钦定 \(p_{L+1}<q_{L+1}\),此时 \(L+1\) 之后的位…

Manim实现涟漪扩散特效

在视频制作和数据可视化领域,涟漪扩散特效是一种常见且富有视觉吸引力的动画效果。 本文将详细介绍如何使用Manim数学动画引擎来实现这一效果,包括其实现原理、使用示例以及应用场景。 1. 实现原理 涟漪扩散特效主要…

CRMEB标准版PHP移动订单功能深度解析:多端同步方案

添加的客服进移动端个人中心统计管理里面就可以管理订单 Git仓库:https://gitee.com/ZhongBangKeJi/CRMEB

PolarFire SOC Auto Update 和 IAP 文档阅读(四) IAP

PolarFire SOC Auto Update 和 IAP 文档阅读(四) IAP 文档来自:PolarFire FPGA and PolarFire SoC FPGA Programming User GuidePolarFire SOC Auto Update 和 IAP 文档阅读一 - 所长 - 博客园 PolarFire SOC Auto Up…

CICD流程建设之持续测试实践指南

本文来自腾讯蓝鲸智云社区用户: CanWay持续测试(CT)是在软件开发周期(SDLC)期间持续检查软件质量的过程。具体指每次更改代码时定期执行的自动化测试。持续测试可及早发现并修复问题,确保软件始终准备就绪并运行良…

wordpress文章添加按钮seo检查工具

目录 项目名称&#xff1a; 项目背景&#xff1a; 项目目标&#xff1a; 项目成果&#xff1a; 经验教训及学习&#xff1a; 未来优化&#xff1a; 项目名称&#xff1a; 数字华容道小游戏 项目背景&#xff1a; 在学习编程过程中&#xff0c;为了加强特性技术和对概念…