日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

MDT部署双硬盘选择

發布時間:2023/12/19 综合教程 34 生活家
生活随笔 收集整理的這篇文章主要介紹了 MDT部署双硬盘选择 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

如果電腦只配置有一塊或多塊普通磁盤,則選擇disk0安裝OS;

如果電腦同時配置有SSD+其他磁盤,則選擇SSD安裝OS;

如果系統磁盤容量<200G,則只分區一個C盤,>200G則分區為C和D盤。

實現方式:

1.編輯UserExit.vbs腳本,增加如下3個函數,實際上DiskNum()函數在此用不到

Function UserExit(sType, sWhen, sDetail, bSkip)
    oLogging.CreateEntry "entered UserExit ", LogTypeInfo
    UserExit = Success
End Function


'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'如果有固態硬盤存在,則OS安裝在固態硬盤,否則安裝到磁盤0上
Function SelectOSDisk()
  '查找固態硬盤
  Set Wmi = GetObject("Winmgmts:\.RootMicrosoftWindowsStorage")
  Set objDisk = Wmi.Execquery("Select * from MSFT_PhysicalDisk")
  For Each B in objDisk
      if B.MediaType=4 then
           DiskID=B.DeviceId
      end if
  next

  '固態硬盤不存在,則指定disk0
  if DiskID = "" then
     DiskID=0
  end if

  SelectOSDisk = DiskID
End Function

'查找物理磁盤數量
Function DiskNum()
  Set Wmi = GetObject("Winmgmts:\.RootMicrosoftWindowsStorage")
  Set objDisk = Wmi.Execquery("Select * from MSFT_PhysicalDisk")
  n = 0
  For Each B in objDisk
    n = n+1
  next
  DiskNum = n
End Function


'獲取OS Disk Size
Function GetOSDiskSize(OSDiskID)
  Set Wmi = GetObject("Winmgmts:\.RootMicrosoftWindowsStorage")
  Set objOSDisk = Wmi.Execquery("Select * from MSFT_PhysicalDisk Where DeviceId = '" & OSDiskID & "'")
  For Each osdisk in objOSDisk
     GetOSDiskSize=osdisk.size
  Next
End Function


''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

2.在CustomSettings.ini文件添加如下內容:

Properties=MyCustomProperty,OSDDiskSize,DiskNum #增加自定義屬性OSDDiskSize,DiskNum;OSDDiskIndex為系統默認變量參數,無需再次添加

#引用如下內容,獲取變量值

UserExit=UserExit.vbs
;獲取磁盤ID,磁盤大小
OSDDiskIndex=#SelectOSDisk()#
OSDDiskSize=#GetOSDiskSize(%OSDDiskIndex%)#
;DiskNum=#DiskNum()#

3.編輯TS,復制添加Format and Partition Disk(BIOS/UEFI),一個判斷磁盤是否小于200G,一個判斷磁盤是否大于200G

4.添加一個自定義PS1腳本,用于格式第二塊磁盤

腳本內容如下:

InitDataDisk.bat

powershell.exe -executionpolicy bypass -noprofile -noninteractive -file "%~dp0InitDataDisk.ps1"

InitDataDisk.ps1

#對非OS所在磁盤(只操作第一塊非OS磁盤)初始化并分區,磁盤容量小于500G只分一個分區,高于500G分兩個分區
$disks = Get-Disk | ? {$_.IsSystem -eq $False}
$driver_letters = ls function:[A-Z]: | where { ! (test-path $_.name) }| select -ExpandProperty name

if ($disks -ne $null)
    {
    #Clear Disk data.
    try {
        $ErrorActionPreference='stop' 
        $disks[0] | Clear-Disk -RemoveData  -Confirm:$false
        Start-Sleep 1
    }
    catch {}
    #Init Disk.    
    Initialize-Disk $disks[0].Number
    if ($disks[0].Size -le 500GB)
        {
        $disks[0] |New-Partition -UseMaximumSize | Format-Volume -FileSystem NTFS -NewFileSystemLabel Data -Confirm:$false
        $dletter = $driver_letters[2].split(":")[0]
        $disks[0] |Get-Partition | where {$_.PartitionNumber -eq 2} | Set-Partition -NewDriveLetter $dletter
        }
    else {
        $par1_size = 500GB
        $par3_size = $disks[0].Size - $par1_size
        $disks[0] |New-Partition -Size $par1_size | Format-Volume -FileSystem NTFS -NewFileSystemLabel Data -Confirm:$false
        Start-Sleep 1
        $disks[0] |New-Partition -Size $par2_size | Format-Volume -FileSystem NTFS -NewFileSystemLabel Data -Confirm:$false
        $dletter2 = $driver_letters[2].split(":")[0]
        $dletter3 = $driver_letters[3].split(":")[0]
        $disks[0] |Get-Partition | where {$_.PartitionNumber -eq 2} | Set-Partition -NewDriveLetter $dletter2
        $disks[0] |Get-Partition | where {$_.PartitionNumber -eq 3} | Set-Partition -NewDriveLetter $dletter3
        }

    }

總結

以上是生活随笔為你收集整理的MDT部署双硬盘选择的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。