当小伙伴们利用微软sccm给电脑安装操作系统时会不会遇到这种情况,就是以前都是sata接口的机械硬盘或者固态硬盘,那么格式化硬盘时在sccm的任务序列中就很好选择。如何利用system center sccm给m.2 nvme的固态硬盘安装操作系统只要你的启动硬盘插在第几个sata接口上就选择磁盘几就好了。但现在随着m.2 nvme磁盘价格的亲民,企业大部分都选择这种接口的硬盘了。但在sccm中还没有专用的选项。那么应该怎么把系统安装在m.2 nvme磁盘中呢?好。现在我们开始:
1、首先需要在Windows PE 中也就是“启动映象包”中倒入nvme的驱动程序,让Windows PE 识别nvme磁盘。这是非常重要的一步。如何利用system center sccm给m.2 nvme的固态硬盘安装操作系统
如何利用system center sccm给m.2 nvme的固态硬盘安装操作系统
2、为了增加通用性,我们在“任务序列编辑器”中添加两个组,用来判断电脑中是否有nvme磁盘,并且这个磁盘被系统自动分配的磁盘编号是几。
首先添加“判断并格式化sata硬盘组”,在右侧的“选项”中我们添加条件。选择wmi查询,添加语句Select from Win32_DiskDrive where Model like "%NVMe%"
这句话的意思是判断电脑中有没有nvme的硬盘,如果没有就执行这个组。因为我选择的是“如果无条件成立”。如果有nvme磁盘此组就不会执行。
如何利用system center sccm给m.2 nvme的固态硬盘安装操作系统
如果电脑里没有nvme磁盘,我一般会把sata磁盘插在sata0端口上,下面的语句就是正常的格式化磁盘0的语句了。
3、再添加一个“判断并格式化nvme硬盘”组,判断条件同样是Select
from Win32_DiskDrive where Model like "%NVMe%"。只是条件改为“如果满足下列条件则运行此组/步骤:”。这样在电脑中有nvme磁盘时就会运行此组了。
如何利用system center sccm给m.2 nvme的固态硬盘安装操作系统
当有nvme磁盘时我们并不知道进windows pe时系统自动给nvme磁盘分配的是磁盘号几,所以我们还需要下面的语句来判断系统分配的磁盘号才能正确的把系统安装在nvme磁盘上。
如何利用system center sccm给m.2 nvme的固态硬盘安装操作系统
此处的查询语句为Select * from Win32_DiskDrive where Model like "%NVMe%" and Index=0。意思是具有nvme磁盘并且磁盘号为0。那么就会执行
如何利用system center sccm给m.2 nvme的固态硬盘安装操作系统
下面的磁盘号为1是同样的语句,只是把and index=0改成and index=1即可。以我的经验如果电脑中同时有nvme磁盘和sata硬盘,并且硬盘插在sata0端口上的话,进windows pe时系统会把磁盘号0分配给sata硬盘,把磁盘号1分配给nvme硬盘。为了安全起见我还添加了判断nvme磁盘号为2的语句。
至此我们就大功告成了。
总结一下,个人觉得学习wmi语句还是比较重要的,这里换成别的wmi语句还可以判断你的主板型号,因为不同的主板分配的磁盘号也还是有一定规律的。
还有个大神写了一个powershell语句,大意就是把nvme磁盘的磁盘号设置为0。PowerShell -ExecutionPolicy Bypass -Command " (New-Object -COMObject Microsoft.SMS.TSEnvironment).Value('OSDDiskIndex') = (Get-PhysicalDisk | Where-Object BusType -eq 'NVMe').DeviceID "
这个我没有试过。请各位小伙伴们自行测试吧。。