Chiphell - 分享与交流用户体验

标题: NUC9 iSCSI无盘工作站/服务器札记 — PXE安装及引导 Win11 成功 [打印本页]

作者: imyz    时间: 2022-10-24 10:28
标题: NUC9 iSCSI无盘工作站/服务器札记 — PXE安装及引导 Win11 成功
本帖最后由 imyz 于 2022-10-24 10:32 编辑

如题。此帖就是记录楼主耗时数月、最终成功地通过网卡 PXE 无盘引导进 WinPE 环境、识别 iSCSI target 目标盘、将 Windows 11 安装至 iSCSI target、并由该 iSCSI target 成功引导 Windows 11 的一篇教程 —— 暨制作工具提供、部分注意事项及个中有感等。

说起 iSCSI 无盘 Windows,我目前能查到的官方文档显示,它早前是 Windows Server 版特有的功能,可巨硬早在 WinServer2008 版后就停止了官方支持,并且还提到说必须通过支持 iSCSI 的 HBA 卡才能正确加载与识别 iBFT(iSCSI Boot Firmware Table) ,总之大概意思翻译过来就是“不支持”—— 这显然是“技术流”们(还是穷)所不齿的,挑战不可能才是乐趣所在。言归正传,先交待下我这次 iSCSI 无盘所用到的网络、服务器与客户端环境:

** 网络:
一台外网路由器,级联一台8口二层交换机,所有网络设备均接交换机。只有一条要求:务必确保服务器与客户端网络在同一个网段(VLAN)内、能互 ping 通;若纯是为了安装 Windows,那么上外网的路由器都不需要,仅一台能同时接服务器和客户端网线的傻瓜交换机即可。不过,不建议在无 Internet 外网的环境下操作,因为其中需要用到的 ADK 部署工具需要从官方网站下载(后面教程中提供了下载链接)。否则,请预先将所需要的 ADK + PE Addon 下载至本地,合计大约 3.5GB。
** 服务器端:
Windows Server 2022 DC 虚拟机一台,并配置以下各项服务:
        * iSCSI target(亦可采用诸如群晖这类 NAS 自带的 iSCSI target 功能);
        * DHCP Server (亦可采用路由器自带的,或 Linux 搭建等);
        * WDS(部署服务)—— 它实际上就是 TFTP/BOOTP Server;
        * 文件共享:存放 Windows 安装源文件。
明眼人应该看出来了,我的 iSCSI target 是 “套娃”,因为它是在 WinSvr2022 的虚拟磁盘空间上划出来的,即:虚拟磁盘中的虚拟磁盘,而实体机 ESXi6.7 U3 的存储建在一张 9260-8i 卡上为各虚拟机提供空间,采用机械盘 RAID5 + SSD RAID1 作 RWCache 加速,目前无盘 Windows 11 系统性能的瓶颈在于 1Gbps 的网速,换算下来就是可达到 100MB/s 读写,日常使用就和一块普通机械盘的感受差不多,对我而言完全够用了,今后若是升级 10Gbps LAN 的话就真切主题了。
** 客户端
NUC9祼机一台,干所有脏活累活的主角就是它板载的两张网卡:
        NIC #1:Intel(R) I210 Gigabit Network Connection
        NIC #2:Intel(R) Ethernet Connection (7) I219-LM

总结下来就是:整个安装过程除基本的网络环境和我的 NUC9 外,仅需一台配置好 WDS、DHCP Server、iSCSI target 和 文件共享 这 4 项服务的 Windows Server(虚拟机亦可)。尤其是,若各位已有 Windows Server 所提供的那 4 项服务的其它替代方案的话,则只须用我提供的批处理工具定制好 WinPE.wim、并用它来引导客户机进入预安装环境操作即可。在官方不支持且现成资料匮乏的情况下,能成功实属不易,这其中的注意事项和前提条件较多,对部分看官而言甚至会显得苛刻,再考虑到各位看官在这方面的技能水平可能参差不齐,若直接按教程操作,也许会不断地发问,所以,在进入正式教程之前,我会花大量的文字交待教程中各项操作的前因后果,在此提前给各位打个预防针:全文篇幅较长甚至显得啰嗦,但仍然建议各位看官耐心看完后再动手(双关 + 手动狗头),也许能少走一些弯路。看完后再操作遇到问题时,或许您将要遇到的那个问题已经在这里有相应的答案了。

不想看我啰嗦直接想看教程,并且对自己信心十足的,可移步 2 楼。目前已实测成功的 Windows 11 版本是刚出不久的 22H2。
(, 下载次数: 107)

为了这次的成功,这几个月下来我查找中外各种资料可谓是阅料无数,但真正有用的却只有 iPXE 开发者讨论帖中的这一篇:https://github.com/ipxe/ipxe/discussions/324,可当时我严格按大佬所说的操作后却并没有成功,否则早几个月前就有这篇了。现在回顾时才发现,当时的我离成功是多么的近,这个后面会讲到。

总而言之,这篇教程是基于我数月来无数次失败终成功的原创经历,包括提供给各位的批处理定制工具在内都是我逐字码出来、并经反复测试过的。此外,请不要问我为什么批处理中不用中文注释,因为它本就不是给所有人编辑用的,有需要编辑它的按理完全能读懂……虽然我平常用 Windows 习惯是中文版,但我自己写代码时从不用中文,这也是这么多年一直以来的习惯;可能又有人会反问:为何执行中又有中文提示?也纯粹是为了避免部分中文用户在执行时看到英文提示不知所措,或者换个思路:凡有这类问题的都应当庆兴我暂时还没有纯用英文来写教程的习惯

教程中所附的工具可定制 17 个语种版本,均用脚本逐一自动生成过至少两遍甚至数遍,不存在人为失误的因素,所以一旦有某看官说某语种的生成不了,那它一定不是下图中所列出的 17 种之一。若有人问为何是 17?因为算上命令执行时其它的提示信息,加上语种提示,刚好够一屏 Cmd 或 Terminal 默认的窗口高度/显示行数;若再有人问为嘛是这 17 种?来咬我啊!!
(, 下载次数: 88)

不瞒各位说,在此之前,我的 Win11 21H2 就是通过 iSCSI 无盘方式引导的,但当时是先将 21H2 安装在一张 SD 卡上配置完成后,再 Clone 克隆到 iSCSI target 上实现而非通过常规 PXE 网络引导并在 iSCSI target 上安装的,就是下图中这货,官方标称的读写数据还不错,但跑 Windows 实在要凭耐心,与现在 iSCSI 方式比简直天壤之别。它原是我行车记录仪的存储卡,此前为梦想献身,而今如愿从良,可谓皆大欢喜:
(, 下载次数: 93)

前面也说了,对我这样在技术层面有洁癖的(穷)人来讲,无法纯 iSCSI 这个事不干净(Dirty)。所以,这一次的成功,终于可以让 NUC9 完全摆脱一切外部存储的依赖了!如下图所示:
(, 下载次数: 113)

但为何标题要写纯无盘工作站/服务器呢,因为 ESXi 7/8 也是支持 iSCSI 安装和引导的,我之前试用iSCSI 安装 ESXi 7 是完全没问题的,并且进入后还可以继续添加 iSCSI target 作为 Datastore…… 这样一来,这台 NUC9 就可以完全不配置任何本机存储设备,使得 NAS 集中存储成为可能,只要各位的 NAS 支持 iSCSI target 功能,同时 NAS 的空间和网速都跟得上,今后想装什么或装多少个系统就一根网线解决、想换哪个系统随时切换,真正的 “Out-of-the-Box、Plug & Play”,可谓意义重大。此外,原先采用克隆 SD 卡系统这一方式还有另一个隐患:诸如 21H2 -> 22H2 这样的大版本更新,更新重启后在第二段更新过程中始终会报错,更新无法完成。

上面提到了我曾与成功擦肩而过,当时有点绝望的我准备放弃熟悉的 WDS 转向 iPXE,随后分别在实体机和虚拟机环境中采用了包括 TinyPXEServer + iPXE 在内的各种途径或工具均以失败告终。还是怪我曾经太天真,以为只要给 boot.wim 或 install.wim 添加正确的网卡驱动即可。总结此前无数次的失败,这次成功其最关键的一点就是:务必正确定制支持 iSCSI 的 WinPE 预安装环境!!!否则,要么是在安装过程中报不支持 iBFT 而找不到 iSCSI target 目标盘(开篇有提到这点),要么就是进入安装阶段出 NDIS.SYS 蓝脸(BSOD);即使勉强识别了 iSCSI target 再采用命令行 dism /Apply-Image 的手段完成第一阶段安装,在随后的重启过程必定绕不开 INACCESSIBLE_BOOT_DEVICE 这个著名的 BSOD(图就不再上了,看得我已经快吐了),因为 iSCSI NetAdapter 不通过 setup.exe 常规安装是无法被写入目标盘的 Offline DriverStore…… 关于这一点,可以参考安装日志,其默认是存在 \$WINDOWS.~BT\Sources\Panther\ 目录下的 iscsi_boot_net.log 和 setupact.log。
(, 下载次数: 101)

不过,正确的 WinPE 环境也仅仅是成功的首要条件、并非“充要条件”,因为,还有另外一个极不起眼的因素会让此前所做的一切均付诸东流,认识到这一点很关键,否则就一定会栽在如下图所示这个坑里跳不出来,这是我在经历了无数次失败、抓狂、近乎绝望后,偶然捕捉到log 中图中红框圈出来的相应信息而联想到的,早几个月前看看该多好…
(, 下载次数: 107)
(, 下载次数: 106)

这里我就将这成功的第二条免费赠送给各位看官:若是在定制 WinPE 时不添加与 Windows安装源相对应的语言包的,即:若定制的 WinPE 未额外安装任何语言包的,则 Windows 安装源请务必使用英文版,否则,上图那个报错就是例子…… 谨记 iSCSI 方式直接安装目前不受巨硬官方支持这一点,所以我查阅过的众多的官方文档从未提及这一条,而我偏偏又习惯使用简中安装源……对此我还能说啥呐,巨硬简直浪费我青春!!!我后来也试过,反之则没问题,即:WinPE加中文包来装英文版 Windows 是可行的。不过,Win10/11对多语言支持比 Win7 还是要好很多,即使采用英文版完成后进入 OS 再修改区域、安装语言包也与直接装中文版的没啥差别。以下就是我的 NUC9 在完成第一阶段安装重启后,iSCSI target 盘中的 Windows 首次系统引导画面。只有当一个人经历了几个月不计其数的失败后,才能真正体会到第一次看到这个画面那一刻的心情:
(, 下载次数: 97)

经过一段时间的试用后发现,目前通过 iSCSI 安装及引导的 Windows 有两个已知问题:
1. 关机菜单和注销是一个效果,无法完成关机。目前我能想到最好的方法就是将 “shutdown -s -f -t 0” 这条指令保存到一个唤作 Shutdown.cmd(或 .bat) 文件中,再拖一个快捷键放桌面,双击确定一下即可实现关机。若有高人找到更好解决方案的也请不吝赐教!
2. 全新安装的 Win11/10 在第一次启动时不想用 LiveID 登录的,此前有一个有效的方法就是 “拔网线” 绕过它来注册本机用户…… 但很遗憾,iSCSI 就是依赖网卡/线的,你拔下试下?!经我多次测试的结果来看,22H2 这一版也并没有完全去掉本地用户的功能,我每次新装后启动必然是遇到以下几个页面,然后点下图中的“重试”、“下一步”,反复地重复3~5次(若不行再5~10次)后,就会跳转到本地用户注册了,感觉就是换个方式恶心人罢了:
(, 下载次数: 91)
(, 下载次数: 85)

这篇安装教程有个大前提:仅适用于 NUC9/NUC6 这类能在 UEFI/BIOS 中直接配置与绑定 iSCSI target 的机器,不论是板载(On-board)或直立(Riser)网卡,如图:
(, 下载次数: 98)

而对于本身不支持这个特性的机器,如:网卡/主板不支持、VMware 虚拟机等,则需要借助 iPXE 这个支持配置 root-path、keep-san 等参数的引导工具,先正确地 sanhook ${root-path},随即利用其 chain 脚本命令通过 wimboot 直接引导 boot.wim 文件进入 PE 环境后,再进行 Windows安装。不过,我偏好 WDS 除它图形化管理方便外的另一个重要原因是,WDS 同时也是 tftp/bootp 服务器,我测试过可完美取代 iPXE 所需要的第三方 tftp 服务器(如 TinyPXEServer),将 wimboot 和 .ipxe 脚本放在 WDS 服务器中正确的位置即可实现 chain 方式引导。至于具体如何实现,在这个教程中就不展开了,确有看官感兴趣的我再另开个教程细说 —— 言下之意,这个教程全程都不会用到 iPXE。
另外一点,假如该 iSCSI target 需要提供给多台不同的机器使用的,那么在服务器端配置 iSCSI Initiator 时,请务必添加一个 “*”,这尤其对 VMware 这种天然无法配置 iqn-initiator 的最实用。可能有人会担心 iSCSI target 的 CHAP 问题,我也测试过了,启用或不启用都没问题,如下图中除 test-iscsi 这个 target 关闭了 CHAP 外,其余都是启用的。毕竟 NUC9 本身的配置是可以保存 CHAP 验证信息的,但这并不是说诸如 VMware 这类的就不行,因为 iPXE 是有相对应的 username 和 password 的 Login 参数的,此帖不展开。
(, 下载次数: 92)

已实测 NUC9 板载的两张网卡分别都能完成安装,但仍然建议类似有两张甚至多张网卡的,在安装阶段仅启用其中一张,有需要多张网卡分别安装多个系统的,也建议逐一按这个原则操作。同一张网卡同时绑定了多个 iSCSI target 的,请务必确保准备用来安装 Windows 的那个 target 的顺序排在首位,避免在安装过程中出现一些奇怪的问题,比如我遇到整盘全新分区时不正常的情况。这里又引出两个概念:iSCSI target 的排序,和开机的引导顺序(Boot Order/Priority)是不同的,这里讲的是前者,千万不要混淆。一旦安装完成后,就可以像本地盘一样,按各自喜好随便怎么调整了,即使两张甚至多张网卡同时接网线也完全没问题。因为,前面已讲了,引导都写入各自 iSCSI target 中的 Offline DriverStore 中了。

需要指出的是:仅有标记为 0 的 LUN 才能实现引导,所以,这里又有两个隐含信息:
1. 需要安装 OS 的 iSCSI target 的 LUN=0,而仅作存储用途的 LUN 不必为0;
2. 即使同一张网卡上绑定了多个 LUN=0 的 target,对该网卡而言也只有排在 “最前面” 那个才能列入 Boot Order,至少我这台 NUC9 是这样的。

以上限制对网卡多的来讲完全不是个事儿,若需要装 10 个 OS 而恰好有 10 张网卡的,就可将它们一对一绑到 10 张卡上按需切换,只要自己能分得清 Boot Order 中谁是谁。但独一张网卡的也不必担心,也可以将那 10 个 target 同时绑定,毕竟同一台机器切换 OS 必定要重启,进 UEFI/BIOS 调整一下 iSCSI target 排序也花不了多少时间。
比如我自己目前配置的默认情况就如下图所示,其中的“磁盘3”就是 NUC9 前面板的SD槽,而 Boot Order 实际上是可以进 UEFI 再调整的,另外一点,只有当通过 iSCSI 原生安装时,iSCSI target 盘才有机会如下图所示排在 SD 卡槽的前面,而从 SD 卡 Clone 过去的就不可能:
(, 下载次数: 84)

(, 下载次数: 88)
作者: imyz    时间: 2022-10-24 10:29
本帖最后由 imyz 于 2022-10-24 11:01 编辑

在正式按照教程“实操”前,我假设各位看官已经具备以下几项基本技能(前面已提到其中的部分了)。因为篇幅有限,教程默认下列各项均为各位看官的“应知应会”:

   1. Windows Server 下的 iSCSI target 创建与配置,也可采取 Linux 等替代方案;
   2. Windows Server 下的 WDS 的基本配置,亦可采用诸如 TinyPXEServer 这类 TFTP 服务器再搭配 iPXE + wimboot 的替代方案;
   3. Windows Server 下 DHCP Server 的基本配置,同样可以用其它替代方案给客户机下发IP;
   4. 在上述 WinServer 中安装好 ADK,或者在一台 Win11 22H2 版(建议)的电脑上装好,虚拟机亦可。官方的 ADK(Assessment and Deployment Kit) 和 WinPE Add-on 的链接:https://learn.microsoft.com/zh-c ... ?ocid=tia-235208000;下载前请确认版本。假如怕弄错的,下面是直接的下载链接:
        4.1.        Win11 22H2 版本的ADK:https://go.microsoft.com/fwlink/?linkid=2196127
        4.2.        Win11 22H2 ADK 的 WinPE 加载项:https://go.microsoft.com/fwlink/?linkid=2196224

若想安装 Win10,也可以下载 Win10 的,但建议选 2004 这一版的,据说可以避免驱动签名问题。而 Win10 ADK ver.2004 则是下图所示这个,不要和 Win11 的搞混了:
(, 下载次数: 86)

   5. 创建网络共享目录,用上述的 Windows Server 或自己的 NAS 均可,并将官网下载的 Windows 安装文件悉数拷贝进去。
(, 下载次数: 72)

若无现成 Windows 安装 iso 镜像/源安装包的,可以上官网下载 MediaCreationTool(https://www.microsoft.com/zh-cn/software-download/windows11/),用它下载相对较快,下载后先保存为 iso 光盘镜像,然后将该镜像解压到上面所说的网络共享目录中。
(, 下载次数: 96)
(, 下载次数: 82)

若是在配置 WDS 过程中出现客户端无法接收到 DHCP Server 响应的,估计如图禁用 Windows Server 网卡 IPv4 协议中的 NetBIOS 可解君愁:
(, 下载次数: 98)

在继续下列步骤前,请先测试一下以上的各项准备条件是否已到位,比如最重要的 WDS 能否如下图一样的正常引导客户机,若此时还没有创建 WinPE 的,可以从前面提到的 Windows 安装源中的 sources 文件夹中找到 boot.wim,将它添加到 WDS 的启动映像中,然后客户机开机(通常是按 F12 键)选网卡 PXE 引导则应当见到下图所示的界面:
(, 下载次数: 102)

(, 下载次数: 90)

先别急着开心,这才成功了一半,接下来再确认上述 ADK 是否已正确安装。在安装 ADK 时,功能仅选 “部署工具” 这一项即可,其余都可以取消勾选;而 WinPE Add-on 则相对简单,因为没得选:
(, 下载次数: 95)
(, 下载次数: 96)

既然目标盘是 iSCSI 虚拟网络盘,为 WinPE 预安装环境添加网卡驱动就不再是“可选项”了,尤其是型号较新的机器或板卡。对此,我提供的 WinPE 定制工具中已包含了添加驱动的命令,各位看官所需要做的就是先确定自己网卡的具体型号,然后去官方支持网站下载最新的驱动(若是压缩包或.exe则先解压),将其保存到名为 “Drivers”(名称不可更改)的文件夹中,且该文件夹必须与批处理工具在相同的目录中,如下图所示:
(, 下载次数: 89)

上述 Drivers 文件夹不限定只放网卡驱动,显卡、主板、声卡的都可往里放,命令会自动搜索该文件夹及其子文件夹中所有的驱动。不过,对于 WinPE 而言,除了网卡驱动外其余基本属“废物”!所以建议各位不要浪费宝贵的时间去找网卡以外的,等安装完成进 OS 后再装其它的驱动会更好。

一旦具备以上入门条件后,接下来就是如何定制一个支持 iSCSI 的 WinPE 了。为简化各位看官的操作过程,我直接提供一个傻瓜式的批处理文件,其默认名称就是上图中的“WinPE-Customizer.cmd”,该定制工具的存放位置不限,但还是建议专门建一个自己好记的文件夹来存放。各位下载后,请先不要急于运行它,因为它要在如图所示的部署工具(Deployment Tools)的命令窗口下来执行,并确保每次都是如图所示以管理员身份运行它(若有不信邪的也可以自行尝试):
(, 下载次数: 88)

该定制工具默认是采用 amd64 这个架构(即:x64),若有需要用 x86 的,则可编辑软该批处理文件开头的一个参数,
        set WinPEArch=amd64
(注意 = 号前后不要留空格,确定用 x86 的则将 amd64 替换为 x86 并保存。不过,Windows 11 貌似没有 x86 版的了,我也没有测试过,倒是可以用于 Win10,若有问题请另行反馈吧。)

打开部署工具的窗口后,如下图中的“命令用法”所示,批处理命令的正确打开方式是:

        [批处理路径与文件名] + 空格 + [语言代码] + 回车

假如忽略 [语言代码] 而直接回车的,则会不断提示下图所示的支持语种列表,直至在箭头位置输入正确的语种代码,请注意:字母大小写不对也过不去的:
(, 下载次数: 99)

一旦命令行被正确地执行后,整个过程可能耗时好几分钟,不过映像生成后的临时文件清理也是全自动完成的,所以中间过程可以不必理会它(也最好不要人为干扰它的执行过程),直到下图所示的提示出现,并且在文件夹中看到对应的映像文件后,就可以将该映像文件移至上述 Windows Server 2022 服务器上进行后续的流程:
(, 下载次数: 81)

(, 下载次数: 87)

一旦 WinPE 定制完成,即可如下图所示将其导入 WDS 的启动镜像中:
(, 下载次数: 87)

至此,客户端机器即可上电或重启,并采用网卡 PXE 引导(通常是按 F12 键),并选择前面定制的 WinPE 镜像引导至预安装环境,可以先看下图。进入后第一件事就是先用以下命令行在 PE 环境中,将前面所说的Windows 安装源所在的网络共享目录映射成为一个网络盘,映射网络盘的命令格式如下:

        net use Y: \\ServerIP\共享目录名 <用户密码> </user:<域名\>用户名>

先解释下该命令,以防个别看官提问:
   1. <> 代表该项为可选,并且这对尖括号本身不必输入;
   2. Y: 代表欲创建的目标网络驱动器名称;除了 X: 是WinPE 默认的除外,A-Z 字符只要未被占用的任君选用;
   3. <共享目录名> 代表前面共享的 Windows 安装包目录的网络共享名;
   4. <ServerIP> 代表上面共享目录所在的服务器的 IP 地址;
   5. <域名\> 是指:若共享目录在一台 AD 域控服务器上,那么它就是其 NetBIOS 格式的域名;若共享不在域控服务器上的则直接忽略它;
   6. 用户名:这里是 <ServerIP> 那台服务器的用户名之一。

有域控的示例:
        net use Y: \\192.168.1.50\WinSource passwd /user:DOMAIN\Who

非域控的示例:
        net use Y: \\192.168.1.50\WinSource passwd /user:Who

下图中的 I: 是我自己的习惯,各位请自行决定。因为我的共享文件是在域控上的,所以才有 SRCDS\ 这样的形式。若按图中的网络盘符,接下来输入 I: 回车后即可访问网络共享的 Windows 安装源,接着用 cd 和 dir 命令找到并输入 setup.exe 回车后的事就和用光盘安装完全一样了。若是连这也不会的,那只好劝退了,还是把宝贵的时间花在更有意义的事上吧,能坚持到这里我也是真服了你了!!!

(, 下载次数: 82)

(, 下载次数: 96)

节目的最后当然是答应给各位的那个批处理工具,也是全文中最重要的。CHH 本身不支持上图以外的附件,也可能是因为我坛龄尚浅还是个天使的缘故??所以周末一直在尝试将该工具包上传到 度pan 或 Aliyun,谁曾想忙了整天竟然双双失败,前者一直说我网页超时、服务器错误等拒绝我上传带批处理的,打包、加密、连嵌入 PPT 都试过也不行;而后者虽然能上传,可一点分享时就说服务器在维护中,10月底前恢复…… 我这才反应过来,猜测应该或许有可能大概率上就是 10 月这次最盛大的大会了。好在今天再尝试时,其中一个已经恢复了,双手奉上:

https://www.aliyundrive.com/s/9nCDv7LKKz2
提取码: 89dg

请容我最后再多一句嘴:工具包是 7-Zip 生成的自解压包,唤作 WinPE-iSCSIer.exe,双击运行它会得到三样东西:
   1. WinPE-Customizer.cmd;
   2. 关于Drivers文件夹的特别说明.pdf;
   3. Drivers文件夹、其中有 Intel PRO1000 系列最新的 x64 驱动。

使用前请仔细核对清单,谨防上当受骗。
作者: ghwwx    时间: 2022-10-24 10:42
想起好多年以前i386时代的无盘站DOS7.22, 现在无盘站的用处已经很少了吧。
作者: kouqin    时间: 2022-10-24 10:47
佩服楼主的钻研精神
作者: 荡秋千的考拉    时间: 2022-10-24 11:17
目前可用的使用本地账户的操作是登录界面按下SHIFT+F10

CDM命令行输入  oobe\bypassnro

然后重启, 就可以使用本地账户了22H2可用,我前几天刚安装WIN11 22H2 专业版

以前还有的几个套路失效了
作者: Wurenji    时间: 2022-10-24 11:48
ghwwx 发表于 2022-10-24 10:42
想起好多年以前i386时代的无盘站DOS7.22, 现在无盘站的用处已经很少了吧。

学校机房和网吧也仍然在用无盘方案,容易统一维护,不过我高中的学校若干年过去了已经在用锐捷的云教室方案了,学生机是个安卓盒子,学生系统全都跑在一台服务器上,KVM架构。
作者: RedMomoe    时间: 2022-10-24 11:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: RedMomoe    时间: 2022-10-24 11:56
提示: 作者被禁止或删除 内容自动屏蔽
作者: imyz    时间: 2022-10-24 12:10
RedMomoe 发表于 2022-10-24 11:55
谢谢楼主的经验!不过现在硬盘很便宜了,还有必要玩无盘吗?

的确是看每个人的不同需求的。

我是因为本身有 NAS + Homelab 的存储需求,不希望再把钱分散投在客户机存储上了,所谓的“集中精力办大事”
作者: RedMomoe    时间: 2022-10-24 12:16
提示: 作者被禁止或删除 内容自动屏蔽
作者: imyz    时间: 2022-10-24 12:32
RedMomoe 发表于 2022-10-24 12:16
我是说无盘,没说客户机储存!有盘启动+远程桌面,要方便多了,不需要那么折腾的。 ...

好吧。我怀疑我们讲的可能是不同的东西。
作者: ghwwx    时间: 2022-10-24 12:32
RedMomoe 发表于 2022-10-24 11:56
其实,有盘启动+远程桌面更加方便。

那时候大一大二(96,97年)的时候。
记得学生机的配置是386sx 25MHz, 服务器好像是486DX 100, 那时候客户端全部是DOS6.22。

可以启动WIN3.2 但是机器不配鼠标。
作者: nineapple    时间: 2022-10-24 12:37
imyz 发表于 2022-10-24 12:32
好吧。我怀疑我们讲的可能是不同的东西。

他说的应该是瘦客户端,计算和存储全部在远端的。。。当然这个实现起来更容易点,也是目前的主流

你这个无盘,纯粹是无盘而已。。 本地系统+NAS磁盘映射也能达到一样的效果。。。。
作者: RedMomoe    时间: 2022-10-24 12:39
提示: 作者被禁止或删除 内容自动屏蔽
作者: mypchas6fans    时间: 2022-10-24 12:39
感觉iSCSI像是个很久远的名字了
作者: imyz    时间: 2022-10-24 12:59
nineapple 发表于 2022-10-24 12:37
他说的应该是瘦客户端,计算和存储全部在远端的。。。当然这个实现起来更容易点,也是目前的主流

你这个 ...

所以我才说理解上不同。

我的目的就是前者:瘦客户端
作者: imyz    时间: 2022-10-24 13:00
RedMomoe 发表于 2022-10-24 12:39
本质上差不多。现在大企业的客户云,不都是这么玩的?让用户选择不同的硬件配置、带宽套餐,自己安装系统 ...

云不是应该首先本地客户机要有 OS 后才能访问云吗?

iSCSI 就是让客户机本地也不要任何存储
作者: imyz    时间: 2022-10-24 13:01
mypchas6fans 发表于 2022-10-24 12:39
感觉iSCSI像是个很久远的名字了

若是新事物的话,我怎么可能这么快就知道了?!
作者: RedMomoe    时间: 2022-10-24 13:04
提示: 作者被禁止或删除 内容自动屏蔽
作者: imyz    时间: 2022-10-24 13:11
RedMomoe 发表于 2022-10-24 13:04
本地一块硬盘,值多少钱?  以前搞无盘站,是因为硬盘价格高......

所以,我还是感觉我们谈的不是同一件事。

我既然能用 NUC9 难道就差一块 SSD 的钱?假如你仔细看了我 1 楼的,不难发现我在此前是用了行车记录仪的 SD 卡作本地存储的,这用意不能再明显了吧!?我若用这台 NUC9 的钱自己 DIY 差不多够同等配置的两台了吧?并且每台都可以上本地 SSD
作者: RedMomoe    时间: 2022-10-24 13:13
提示: 作者被禁止或删除 内容自动屏蔽
作者: imyz    时间: 2022-10-24 13:19
RedMomoe 发表于 2022-10-24 13:13
你愿意折腾,那是另外一回事。我说的是如何方便完成一件事。

对不起了,是我不对!就如有人跑马拉松花了 ...

不好意思,我并没恶意。

原本这个教程也不是适用所有人的。我开篇也说了,挑战不可能才是乐趣。有人爬山喜欢徒步、而有的却喜欢花钱请人抬一个道理。
作者: zexin4    时间: 2022-10-24 21:14
技术贴,学习学习
作者: jhhuang    时间: 2022-10-25 14:56
很好的技术帖子,楼上阴阳怪气的,简直笑话。
作者: imyz    时间: 2022-10-25 15:07
jhhuang 发表于 2022-10-25 14:56
很好的技术帖子,楼上阴阳怪气的,简直笑话。

也别这样讲。楼上实际上也没说错,本地存储肯定是最方便的,这一点他是对的。

但他可能并没仔细看我写的内容,恰恰忽视了我刻意回避用本地盘的“初衷”
作者: ghwwx    时间: 2022-10-25 15:43
其实无盘站有一个好处:
对于大批量的机器,比如教室,考试用机器,一次重启后,全部恢复到初始安装的状态。

维护起来非常方便。


作者: imyz    时间: 2022-10-25 15:45
ghwwx 发表于 2022-10-25 15:43
其实无盘站有一个好处:
对于大批量的机器,比如教室,考试用机器,一次重启后,全部恢复到初始安装的状态。 ...

是的。这一点也是之前我在看微软官方文档时提到的,不过是 Server 2008 的文档了
作者: allenchueng    时间: 2022-10-25 17:32
  网吧的无盘系统好像很早就支持Windows 11了。
  作为一个深受无盘瘦客户机之害的人来说,避而远之。
  不过楼主的精神不错!
作者: pp0pp    时间: 2022-10-25 17:59
allenchueng 发表于 2022-10-25 17:32
  网吧的无盘系统好像很早就支持Windows 11了。
  作为一个深受无盘瘦客户机之害的人来说,避而远之。
...

我想了解一下“瘦客户机之害”主要表现在哪些地方?
作者: imyz    时间: 2022-10-25 18:19
allenchueng 发表于 2022-10-25 17:32
  网吧的无盘系统好像很早就支持Windows 11了。
  作为一个深受无盘瘦客户机之害的人来说,避而远之。
...

看到你讲的这个,我感觉可能我之前对瘦客户机有些误解了,所以顺便也纠正一下我 16# 楼的回复。

我又回头查了下瘦客户机的定义,是指存储与计算全在服务器上的类似“终端”的那种,可是我这个 iSCSI 方式,实际上 13# 说的是对的,就是纯无盘,只是存储走 iSCSI 网络协议存储在服务器端了,其余的还是在本地,所以才有 1Gbps 折算 100MB/s  “磁盘IO” 这个说法。

我又看了胖客户机的定义,感觉也不准确,所以,标题中的 “无盘” 就是准确的了。
作者: yang2jie1    时间: 2022-10-25 19:06
imyz 发表于 2022-10-25 18:19
看到你讲的这个,我感觉可能我之前对瘦客户机有些误解了,所以顺便也纠正一下我 16# 楼的回复。

我又回 ...

我看了一下帖子。 我感觉楼主折腾的目的是,nuc9只是做一个cpu密集型的计算单元,不在乎 ISCSI网络挂载导致的IO瓶颈。 更多的可能是准备多几个启动镜像,放不同的运行环境。 切换环境的时候 只需要 让机器关机,挂载好目标的映像 WOL一下,就换个马甲起来了。数据集中存储在服务器,不需要冗余的维护数据同步 安全备份等等一系列的事情了。
而且楼主应该是有方案洁癖或者执念在里面,就是不想用瘦客户端这种方案去操作1个服务器, 这种性能完全依托于中央计算节点了。  楼主的方案是反其道而行,数据在中央节点,计算就放客户端。 这样不会占用中央节点过多的性能,因为只有1份系统,性能消耗也就是 管理ISCSI的cpu性能以及 磁盘IO 网络IO。 需要计算的时候,就召唤牛马起来拉磨~  不用了就退退退~   不知道我是否get到楼主的思路。。
作者: imyz    时间: 2022-10-25 19:30
yang2jie1 发表于 2022-10-25 19:06
我看了一下帖子。 我感觉楼主折腾的目的是,nuc9只是做一个cpu密集型的计算单元,不在乎 ISCSI网络挂载导 ...

兄台理解到位了!

我之所以反复提集中存储、NAS 这些概念,而不提 “集中计算/算力”、“云” 也是这个意思,还是我的表达能力有限、没抓住中心思想和关键词啊。

NAS 这种本身就不需要强大的算力的,手上这台 LaCie 5big 还是 Atom 4核,让它作计算服务器!?它也不是那块料啊
作者: Mufasa    时间: 2022-10-25 19:58
楼主精神可嘉

不过,我还是选择买一个一百块钱的SSD,简单粗暴的解决问题。

至少启动部分用本地SSD,速度会好一些。
存储部分,我也打算用iSCSI挂载。。。。
作者: imyz    时间: 2022-10-25 21:33
Mufasa 发表于 2022-10-25 19:58
楼主精神可嘉

不过,我还是选择买一个一百块钱的SSD,简单粗暴的解决问题。

哈哈哈哈,这个就是个人喜好。实际上就和很多人喜欢外接一块 U 盘来装 ESXi 的 OS,Datastore 独立开来差不的意思。

ESXi 就不说了,原生支持这种 iSCSI 方式安装,唯独 Windows 的脾气倔,但我不吃那套,硬要上...... 将来我这台 NUC9 也是打算配合 NAS 通过 iSCSI 的方式将 OS + Datastore 尽数集中存储,跑些负载不高的虚拟机,加上它还有 PCIe 槽,可玩性还是蛮高的。
作者: Mufasa    时间: 2022-10-25 22:05
imyz 发表于 2022-10-25 21:33
哈哈哈哈,这个就是个人喜好。实际上就和很多人喜欢外接一块 U 盘来装 ESXi 的 OS,Datastore 独立开来差 ...

我准备套娃

先用ubuntu装一套ceph,这样就提供了 iSCSI

成员组服务器,用一个小SSD启动ESXi

在ESXi里面挂载iSCSI作为存储虚拟机的容器

最后 ESXi 里面装Windows Server
作者: imyz    时间: 2022-10-25 22:28
Mufasa 发表于 2022-10-25 22:05
我准备套娃

先用ubuntu装一套ceph,这样就提供了 iSCSI

我不了解 Ceph,只是知道它也是个存储解决方案,不晓得和 VMware vSAN 是不是同一个概念?

另外,既然你的 Ceph 已经提供了 iSCSI target,若不介意的话,可以尝试将那台成员组服务器的小 SSD 替换成 iSCSI target?我亲测过,ESXi 原生支持这种方式安装、引导的,并且我看你启动 ESXi 后最终也是 iSCSI 挂为 Datastore
作者: terry0086    时间: 2022-10-26 16:45
这个思路挺好的,现在家庭用电脑都算力过剩了。像华为开始出nas和手机上可登录云主机,以及它的全光网络主路由带子光终端FTTR等类似的思路来看,它要是出一套独立主机带几个极低配置的显示输入终端供各个家庭用户办公上网和存储的话感觉会有市场。。。
作者: imyz    时间: 2022-10-26 18:24
terry0086 发表于 2022-10-26 16:45
这个思路挺好的,现在家庭用电脑都算力过剩了。像华为开始出nas和手机上可登录云主机,以及它的全光网络主 ...

我这个 iSCSI 的方式应该与华为的云主机的概念还是不同的。云主机首先要解决本地主机 OS 的问题后,再由本机 OS 访问云主机,手机 OS 也属本机主机。

而 iSCSI 本身不是为了云主机而产生的,纯粹就是让本地主机无盘,将原本需要安装到本机 SSD/HDD 中的 OS 通过 iSCSI 安装到家庭 NAS 中。然后,是否继续用它来上云主机与否,不是 iSCSI 或这个教程的涵盖范围。
作者: allenchueng    时间: 2022-10-27 22:25
pp0pp 发表于 2022-10-25 17:59
我想了解一下“瘦客户机之害”主要表现在哪些地方?

  我很早很早就已经用NT Server 4.0做电教室的Windows 95无盘系统了,RPL引导,NetBEUI协议传输,还不是iSCSI。那时候可没有交换机,而是集线器!相较于大批量采购硬盘的成本,天价服务盘其实都很省钱了。
  大量的碎片回写导致服务器卡(那时的SCSI的I/O性能其实非常低)、客户机卡(比如16口Hub,总上行100Mbps,每台机器能分到多少?单位是bps哦!)。
  NT Server 4.0的稳定性可以说是每个做过网管的人的恶梦!动不动全员瘫痪。嘿嘿。

  Server 2000发布的时候跟着出来的iSCSI技术我其实是馋了很久想体验的,可惜那段时间没环境来玩。

  之后自己做网吧的时候,已经是Server 2003、无盘XP了,PXE引导、iSCSI传输已经很成熟很稳定了。可是那时候还没有哪家公司去研究本地回写技术,只有我们一个小圈子里面在折腾RAMDisk做本地回写。
  各种蓝屏,各种重启,各种启动不成功(RAMDisk加载延迟导致的一系列问题),哈哈!可是相较于服务器回写,RAMDisk本地回写的性能直接起飞,我们只能“将就”咯!

  再之后就是网吧大面积普及服务器大内存缓存、SSD缓存、SSD回写、本地内存回写(国内第一家貌似是网维大师研究出来的驱动),零几年的时候不记得了,几乎新开的网吧都已经干到万兆主干、千兆到桌面了。相比机械硬盘,客户机的体验是非常之爽的。
  但是,但是,那时候可是会有很多人带着U盘来网吧做文案的哟!客户机一个重启,芭比Q。这种情况我自己都遇得不少,更别说顾客了。

  所以啊,发誓不再碰无盘……哈哈!
  这只是分享我自己的经历、体验以及因此给自己带来的影响罢了,不影响楼主的研究哦!
作者: Predator    时间: 2022-11-14 14:48
allenchueng 发表于 2022-10-27 22:25
  我很早很早就已经用NT Server 4.0做电教室的Windows 95无盘系统了,RPL引导,NetBEUI协议传输,还不 ...

D-link的hub
3c905的大卡
8139各种屎一样的ROM

握个手,我那时也干过一段时间RPL
作者: Predator    时间: 2022-11-14 15:07
Mufasa 发表于 2022-10-25 19:58
楼主精神可嘉

不过,我还是选择买一个一百块钱的SSD,简单粗暴的解决问题。

我家大概从15年开始
台式机全都ITX加一个小SSD,大散热器低速风扇
全部存储包括游戏都存去NAS——至于是用iSCSI还是windows共享,这个就见仁见智了

但是现代大企业的虚拟桌面体系,要满足的东西不一样

比如一个全球跑的高管人员,他可以:
1. 在香港办公室桌上瘦客户机开机进入桌面,这个系统其实在德州乡下某机房的VMware上面
2. 洲际飞行的时候拿出ipad,用app登录进自己的桌面,打开前一天没做完的文件
3. 回到上海的老家,从家里的电脑上用网页方式登录回自己的桌面
于此同时,公司的IT人员升级他的系统,备份他的文件,都直接在服务器上面操作

另一方面对于一些有高性能要求的行业,比如CAD,photoshop这一类,同样的使用这种方式,终端使用者那边只是一个高档的显示器/键鼠。CPU算力和图形能力全部都在服务器端。从服务器到客户端传输的都是键鼠操作和桌面视频演算结果(这个部分可以去看看PCOIP)

集中管理,集中分配资源,集中升级换代
这个方式能显著的降低企业IT设备的TCO
已经和早年那种主力解决存储成本问题的“无盘”不是一个目的了
作者: manowar0330    时间: 2022-11-14 15:52
技术贴。。。。nb
作者: Mufasa    时间: 2022-11-14 17:42
Predator 发表于 2022-11-14 15:07
我家大概从15年开始
台式机全都ITX加一个小SSD,大散热器低速风扇
全部存储包括游戏都存去NAS——至于是 ...

不同企业根据自身需求,选择适合自己的方案。

我们本地数据量比较大,上云的部分很少,
所以选择了自己弄一个山寨机房,在里面搞后端存储,和前端运算。

公网部分,买几个腾讯云作为跳板,frp穿出去就好。

因为个人习惯问题,我喜欢用廉价SSD启动系统,包括服务器上的那些ESXi,也是弄个廉价SSD来启动,我觉得比用优盘启动ESXi要放心一些。。。。
作者: ctz556    时间: 2022-11-25 11:33
本帖最后由 ctz556 于 2022-11-25 11:38 编辑

太复杂了,定制PE、WDS、ADK,这些都没有接触过,没看明白。问题的关键是网卡驱动吗?

曾经简单尝试使用Hyper-V把Win10安装到VHDX,然后ipxe启动,结果因蓝屏无法启动而告终。以为Win10免驱的网卡能直接这么启动。

对于不追求纯iscsi(以及没法在UEFI/BIOS中直接绑定iscsi的机器)来说,是否有更简单的解决方案。比如系统安装过程在非无盘的环境下完成,如hyper-v虚拟机或者其他工具,又或者有盘安装再克隆的方式?
作者: huihuige    时间: 2022-11-25 16:09
太长了
先收藏再看
好像很复杂的样子……
作者: 683599    时间: 2022-11-25 16:34
厉害
好家伙
作者: imyz    时间: 2022-11-25 17:33
ctz556 发表于 2022-11-25 11:33
太复杂了,定制PE、WDS、ADK,这些都没有接触过,没看明白。问题的关键是网卡驱动吗?

曾经简单尝试使用Hy ...

问题的关键是:正确地定制一个能支持 iSCSI 的 WinPE 引导映像。

对于 UEFI/BIOS 中无法配置并写入 iSCSI 配置的机器来说,采用 iPXE + TinyPXEServer + wimboot 来引导那个定制的 WinPE 应该就是最简单的了。关于这一点,1/2楼教程中有提到
作者: eonghk    时间: 2022-11-25 17:49
技术贴要支持下。对于单纯存储中央化的家庭网路来说挺合适的,数据备份和管理会变得很容易,同时因为调用的是本地的CPU+GPU,如果有游戏需求的话还是比较理想的。这个和硬盘成本其实没啥关系。

作者: imyz    时间: 2022-11-25 18:07
eonghk 发表于 2022-11-25 17:49
技术贴要支持下。对于单纯存储中央化的家庭网路来说挺合适的,数据备份和管理会变得很容易,同时因为调用的 ...

是的,原本也不是为了省本地磁盘的钱,主要还是希望能 “集中存储”,只是顺带可以将原本花在本地磁盘的钱用在建 10Gb 网或 NAS 存储上
作者: realzoc    时间: 2022-11-25 18:28
楼主太强了 希望需要的人能找到这个帖子
作者: eonghk    时间: 2022-11-25 19:57
imyz 发表于 2022-11-25 22:07
是的,原本也不是为了省本地磁盘的钱,主要还是希望能 “集中存储”,只是顺带可以将原本花在本地磁盘的 ...

我赶巧遇到了一波mellanox的设备,就直奔40G了,直接上架两个4U总共48盘。外加一台2U负责docker跑应用,一个小机柜扔车库问题就都解决了。家里电脑基本不用操心存储空间和备份了。iSCSI + PXE 对于Linux来说更加友好,Windows略折腾点。重点还就是中央存储,而不是无盘启动。

作者: imyz    时间: 2022-11-25 20:07
eonghk 发表于 2022-11-25 19:57
我赶巧遇到了一波mellanox的设备,就直奔40G了,直接上架两个4U总共48盘。外加一台2U负责docker跑应用, ...

壕无人性

Windows 的确在这方面太折腾了,这也是我为了搞这个前后花了好几个月的时间
作者: ctz556    时间: 2022-11-25 20:26
imyz 发表于 2022-11-25 17:33
问题的关键是:正确地定制一个能支持 iSCSI 的 WinPE 引导映像。

对于 UEFI/BIOS 中无法配置并写入 iSCS ...

关键怎么会是PE?通过这个定制的预安装环境安装的系统和其他方式安装的系统会有什么不同?不都是释放install.wim到磁盘吗?
作者: imyz    时间: 2022-11-25 20:31
ctz556 发表于 2022-11-25 20:26
关键怎么会是PE?通过这个定制的预安装环境安装的系统和其他方式安装的系统会有什么不同?不都是释放inst ...

你大可以不用我的方法和工具,仅将网卡驱动用 DISM 直接添加进官方默认的 WinPE.wim 中以及 install.wim 中看看会不会 BSOD
作者: ctz556    时间: 2022-12-25 15:29
本帖最后由 ctz556 于 2022-12-25 15:54 编辑
imyz 发表于 2022-11-25 20:31
你大可以不用我的方法和工具,仅将网卡驱动用 DISM 直接添加进官方默认的 WinPE.wim 中以及 install.wim  ...


分享一下折腾经历。

本人是个爱瞎折腾的人,什么有意思的然后对自己或许有那么一丁点用的东西都喜欢去折腾,比如这个iSCSI无盘系统。

然后还得说到自己患有严重的系统洁癖及强迫症,总是希望系统保持纯净的状态,不愿意安装任何非必要或者不可靠的软件,特别是国产软件普遍比较流氓。对于某些偶尔又不得不用的软件,总是希望使用后不留任何痕迹,这几乎是不可能的事情。而对于喜欢各种瞎折腾而又有洁癖的我来说,利用vhdx的差分功能创建多个系统分支实现快速系统恢复还原,正是我在这条路上踩过坑并一度放弃但看到楼主的分享后又决定尝试的原因。

感谢楼主分享的PE创建脚本,小白不明白自己之前一直失败的原因,所以直接拿来用了。

Routeros的主路由环境,所以DHCP和TFTP(ipxe)服务器都由ROS提供。虽然用的WinNAS但没有用WDS甚至TinyPXE Server这种集成工具,也是强迫症在作怪。当然HTTP服务还是由WinNAS下的绿色软件hfs提供。

ipxe相关文件上传到ROS的flash/ipxe文件夹下

设置tftp文件目录
  1. /ip tftp
  2. add real-filename=flash/ipxe/ req-filename=.*
复制代码


设置启动文件名及tftp服务器
  1. /ip dhcp-server network
  2. add address=192.168.1.0/24 boot-file-name=undionly.kpxe gateway=192.168.1.1 next-server=192.168.1.1
复制代码


开机用网卡启动PE就能成功安装系统了。一口气安装了多个系统包括Win10 LTSC Pro Ent和Win11多个系统。

但是安装Windows11时踩了一个坑并还没能跳出来,就是Windows11用Legacy BIOS模式安装的系统无法启动,启动过程没有任何反应(未出现Windows LOGO),像是启动了个没有引导信息的硬盘,实际用虚拟机启动这个安装好后的vhdx是能够引导的。但是用UEFI模式安装启动很顺利。

然而我首选安装的几个版本的Win10都是Legacy BIOS模式安装的,不想再重装一遍,而且UEFI ipxe在我古董B85主板的螃蟹卡启动时有不小的几率卡在ipxe启动阶段。而又不想在Legacy BIOS和UEFI网络启动时来回修改dhcp-server的boot-file-name。于是又在网络上找到使用dhcp-server matcher设置来指定Legacy BIOS和UEFI两种模式使用相应的boot-file。

这里又踩坑了,UEFI网启时通过dhcp-server option 67的办法原本配置正确的snponly.efi文件名,启动时却自己加上了一个乱码导致找不到文件而无法启动。所以只好设置dhcp-server的boot-file-name为UEFI启动的snponly.efi文件。通过匹配客户端code 93(Client System)的值0x0000指定Legacy BIOS的启动文件undionly.kpxe。这样就不必手动来回修改dhcp-server的boot-file-name了。

(, 下载次数: 66)



  1. /ip dhcp-server network
  2. add address=192.168.1.0/24 boot-file-name=snponly.efi gateway=192.168.1.1 next-server=192.168.1.1

  3. /ip dhcp-server option
  4. add code=67 name=boot-uefi value="'snponly.efi'"
  5. add code=67 name=boot-bios value="'undionly.kpxe'"

  6. /ip dhcp-server option sets
  7. add name=boot-uefi options=boot-uefi
  8. add name=boot-bios options=boot-bios

  9. /ip dhcp-server matcher
  10. add address-pool=default-dhcp code=93 disabled=yes name=ipxe-uefi option-set=boot-uefi server=DHCP-default value=0x0007
  11. add address-pool=default-dhcp code=93 name=ipxe-bios option-set=boot-bios server=DHCP-default value=0x0000
复制代码



一整折腾,vhdx文件保存在NAS的HDD上时基本上为不可用状态,开机时长2分钟,磁盘请求占用经常100%,网络和HDD双重性能瓶颈啊。于是给NAS加固态,启动时间缩短到1分钟之内,有点香了。然后家庭网络只有1G,于是给客户机加固态,直接VHDX本地启动。嗯,强迫症是病,得治!


作者: imyz    时间: 2022-12-25 21:09
ctz556 发表于 2022-12-25 15:29
分享一下折腾经历。

本人是个爱瞎折腾的人,什么有意思的然后对自己或许有那么一丁点用的东西都喜欢去折 ...

兄弟你还真的爱折腾啊,装了这些个系统 ?而且还要分 UEFI + BIOS 两个方式...... 自认爱折腾的我看完你这都甘败下风

另外,我对其中一点不是很明白:
利用vhdx的差分功能创建多个系统分支实现快速系统恢复还原


首先你的 iSCSI Target 也是 WinNAS 提供,基本能确定每个 LUN 对应一个 WinNAS 中的 VHDX 文件,然后你上面这句的意思是用 WinPE 成功引导后,并不是直接安装而是在那个虚拟 iSCSI 盘的空间中又创建 vhdx 文件用 diskpart 挂载后再将 Windows 安装进这个新建的 vhdx 文件中??

若是这样,我算下看:WinNAS 用 vhdx 提供 target 已经算套一个娃了,然后又在这个 target 中再建 vhdx 套第二个娃?
作者: ctz556    时间: 2022-12-26 00:23
imyz 发表于 2022-12-25 21:09
兄弟你还真的爱折腾啊,装了这些个系统 ?而且还要分 UEFI + BIOS 两个方式...... 自认爱折腾的我看完你 ...

不是不是,装了这么多系统仅仅只是测试安装流程,实际再怎么爱折腾也用不上这么多呀![尴尬]。uefi和传统bios同时用到也仅仅是因为legacy bios模式无盘启动win11不成功,所以因为win11又多弄了个uefi。

另外我所说的vhdx的差分功能并不是套娃的意思。而是利用这一特征来快速创建多个不同用途的系统,而只要简单通过删除或者重新创建子vhdx文件的方法,就能快速实现系统还原。例如把一个完成初试安装的vhdx作为父文件,创建多个子vhdx文件,就相当于安装了多个系统了,而不必占用重复的磁盘空间,这对于喜欢折腾的人来说实在太方便了。
作者: qp6g3o    时间: 2023-1-1 21:51
牛逼 真的有钻研技术的精神~
作者: jameszjq    时间: 2023-2-17 20:17
在OptiPlex 7080Micro上照着折腾了一下,受限于现在7080<-->NAS之间的千兆环境,读写速度不太符合预期。暂时转回有盘之路。待家庭网络环境全部万兆化(或者客户机与服务端局部万兆化)之后再玩。
作者: imyz    时间: 2023-2-18 14:25
jameszjq 发表于 2023-2-17 20:17
在OptiPlex 7080Micro上照着折腾了一下,受限于现在7080NAS之间的千兆环境,读写速度不太符合预期。暂时转 ...

千兆环境下 iSCSI 启动的确相对本地盘尤其是 SSD 来说慢上不少,而且还得看 NAS 提供的 iSCSI target 自身的磁盘 4K 随机读写性能、最大 IOPS,所以它是个综合问题,并不是只要上万兆就能和本地 SSD 一样的。

我目前 iSCSI 无盘就是上个网、看个电影,再就是阀门社的老游戏,如:L4D2 这类,只要是完成了 OS 启动后还是够日常用的。

春节前新整了一套带万兆的家用服务器,接下来看价格逐渐过渡到家庭万兆
作者: jameszjq    时间: 2023-2-18 15:22
imyz 发表于 2023-2-18 14:25
千兆环境下 iSCSI 启动的确相对本地盘尤其是 SSD 来说慢上不少,而且还得看 NAS 提供的 iSCSI target 自 ...

iSCSI服务端本身不存在性能问题,2x U2+2x SATA SSD+5x HDD的分层存储。

是我自己在来回犹豫电或光万兆方案迟迟没有升级。一会儿想利用已经走好的网线上电口万兆,一下子又想一劳永逸全换光口。
作者: 雪域蓝天    时间: 2023-8-7 10:53
很敬佩你的专研精神,我在琢磨如何做个可以用WDS 引导的PE 在生产环境中使用
作者: 午夜土猪    时间: 2023-9-22 09:40
iSCSI这个怎么搞定多机同时挂载?

挂都能挂上,但是A机写的B机看不到,win也喜欢弹出磁盘修复,总体一个虚拟盘同时只能一台机使用
作者: imyz    时间: 2023-9-22 10:30
本帖最后由 imyz 于 2023-9-22 12:16 编辑
午夜土猪 发表于 2023-9-22 09:40
iSCSI这个怎么搞定多机同时挂载?

挂都能挂上,但是A机写的B机看不到,win也喜欢弹出磁盘修复,总体一个 ...


兄弟玩得挺花啊,这是准备搞网吧?话说我目前还没有这个需求,但从需求本身上看,用同一个虚拟盘应当是不行的,毕竟不同机器的注册表和激活信息都是不同的,所以报错就对了。

不过,我们知道有“差分磁盘”这回事,所以眼下我只能给一个解决思路,以下纯是基于 Windows VHDX 为基础,言下之意,你的 iSCSI Target 是 Win Server 提供的 VHDX 格式虚拟磁盘:

1. 首先用 iSCSI 方式完成模板机的全新安装,在最后阶段重启并进入OOBE界面时,按 Ctrl+Shift+F3 手工进入审计模式
2. 将事先准备好的驱动、软件等在审核模式中安装完成;
3. 清理所有临时文件后,执行系统封装:
  1. Sysprep.exe /generalize /shutdown
复制代码

4. 这时就需要回到你 iSCSI Target 所在的那台 Win Server 上,用 diskpart 命令创建差分磁盘,如:
  1. create vdisk file=D:\iSCSI\chldWin11.vhdx parent=D:\iSCSI\Win11.vhdx
复制代码

5. 再将第 4 步中得到的 chldWin11.vhdx 作为新 iSCSI target 创建给新机用;
6. 有多台机器的就如法炮制...

差分磁盘的好处是出问题后可以利用父磁盘瞬还原;另外,因子盘只存储自身基于父盘的“增量”部分,所以针对像网吧、大企业这种机器多的,可以节省磁盘空间。

因为没有实践过,所以上述是纯理论。若 iSCSI Target 不是 WinServer 的,请自行搜索如何创建差分磁盘吧


作者: moogly    时间: 2023-10-11 22:49
佩服佩服,这套方案折腾下来,必然花了无数个日日夜夜
曾经折腾过一次iSCSI,然后当时Target 所在的硬盘出现了坏道,导致iSCSI镜像损坏,数据丢失,而且我搞了很久都没能恢复数据,于是放弃。。。当时把数据安全做好就好了
作者: CYF19991203    时间: 2025-3-27 10:23
imyz 发表于 2022-10-24 10:29
在正式按照教程“实操”前,我假设各位看官已经具备以下几项基本技能(前面已提到其中的部分了)。因为篇幅 ...

谢谢回复,我现在可以安装了,并且安装阶段没有任何问题,但是在安装之后会重启,再次重启的时候有两种现象,一种安装win11 出现蓝屏,一种是win10 报错(window setup could not congigure Windows to run on this computers hardware)。我感觉这两个都是一个问题,
回到您帖子本身,务必正确定制支持iscsi 的WINPE 环境!!!,我理解这个会影响到安装过程,如果第一步的安装完成,但是安装流程中会重启,这个重启发生上述两个错误,会不会是我的驱动不太对?
作者: imyz    时间: 2025-3-27 10:37
CYF19991203 发表于 2025-3-27 10:23
谢谢回复,我现在可以安装了,并且安装阶段没有任何问题,但是在安装之后会重启,再次重启的时候有两种现 ...

能进入 WinPE 环境并将 Windows 安装到 iSCSI target 上的,说明 PE 环境、iSCSI 的各项配置都是正确的,而安装完成后重启出现蓝屏的情况,首先得看蓝屏 BSOD 的具体错误代码才好分析问题,不排除是你的网卡驱动问题。

此外,Win10 与 Win11 在 iSCSI 方式安装完成之后会有一点不同,Win10 需要手工删除注册表中的 PagingFiles 这一项后才能正常启动,即:“HKLM\SYSTEM\ControlSet001\Control\Session Manager\Memory Management\PagingFiles”。我在一楼已给出了这个操作的出处:

https://github.com/ipxe/ipxe/discussions/324





欢迎光临 Chiphell - 分享与交流用户体验 (https://www.chiphell.com/) Powered by Discuz! X3.5