少年意气强不羁,虎胁插翼白日飞。这篇文章主要讲述Powershell实现多硬盘的电脑使用SCCM安装系统选择目的盘清单相关的知识,希望能为你提供帮助。
需求背景现在公司新购的ThinkPad或Dell笔记本和台式机部分机型预装为2块物理磁盘。默认情况下使用SCCM在线部署操作系统时,只能通过任务序列中选择指定的硬盘和分区进行部署系统。但有些机器Disk1为固态磁盘,有些Disk0
为固态磁盘,不太方便选择系统安装的目的磁盘。

文章图片
最终目的实现针对不同机型,自动部署系统至正确的磁盘或弹框让Helpdesk人员部署系统时手动选择安装系统的目的磁盘;
实现方法1(不推荐,请酌情参考使用)在没有找到合适的方法(方法2)之前,我都是通过该方法使用了大概1年半。由于我以弃用该方法,这里只描述下实现方式:
- 在SCCM或MDT任务中,根据机型种类去复制多个$Apply Operation System Image$;
- 若机型A,需要将系统安装在Disk0,则将刚复制的序列中的其中一个将安装系统的目的磁盘选择Disk0;
- 同样,机型B需要将系统安装在Disk1,则在另外一个复制的任务序列,将系统安装目的磁盘选择Disk1;
- 在上述2个应用系统镜像的任务序列(相同任务、不同机型)做类似如下匹配
文章图片
实现方法2Google出一位大佬的脚本,稍加修改。原作链接
最终的效果图如下:

文章图片
详细步骤:
- 打开SCCM\\MDT系统部署任务序列,在最顶部创建文件夹随意命名;
文章图片
- 创建任务1—检查计算机是否存在多个硬盘;
文章图片
代码部分:
PowerShell.exe -NoProfile -Command "If ((Get-Disk | Where-Object -FilterScript $_.Bustype -ne USB).Count -gt 1) $TSEnv = New-Object -COMObject Microsoft.SMS.TSEnvironment; $TSEnv.Value(‘MoreThanOneHD’)= $true"
- 创建任务2—选择安装系统的目的磁盘
文章图片
- 将脚本上传至SCCM Package中,然后按上图所示将命令行粘贴进去(Package部分自己上传并选择),命令部分代码如下:
%SYSTEMROOT%\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -STA -NoProfile -ExecutionPolicy Bypass -File .\\ChooseDiskWPF.ps1
- 在任务2选项中做个条件筛选,即——当计算机存在多块硬盘时,则执行该任务;若计算机只有一块硬盘,则跳过:
文章图片
- 重新生成Boot Image(需添加必要组件):
文章图片
代码下载【Powershell实现多硬盘的电脑使用SCCM安装系统选择目的盘清单】下载、解压然后上传至SCCM或MDT Package中:点击下载(访问密码Blog.itpro.cc)
推荐阅读
- 使用Python监控邮件服务器公网IP是否被列入黑名单并及时告警
- 记一次nginx405的错误
- JS 变量作用域与内存
- Java基础之方法引用(JDK1.8新特性)
- [ C++ ] 类与对象(下)日期类Date补充及流提取和流插入运算符重载
- Java基础之Stream流(JDK1.8新特性)
- HarmonyOS - 实现多设备协同
- 看漫画漫画柜mhgui,Python爬虫之神奇的eval,附赠一个压缩模块
- AI+科学计算-昇思MindSpore都给我们带来哪些惊喜()