New-SCGuestOSProfile
建立客體作業系統配置檔以用於 VMM。
語法
New-SCGuestOSProfile
[-Shielded <Boolean>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile <Boolean>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-VMMServer <ServerConnection>]
[-Name] <String>
[-Description <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-GuestOSProfile <GuestOSProfile>]
[-Owner <String>]
[-UserRole <UserRole>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-LinuxDomainName <String>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
New-SCGuestOSProfile
[-Shielded <Boolean>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile <Boolean>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxAdministratorSSHKey <SSHKey>]
[-VMMServer <ServerConnection>]
[-Name] <String>
[-Description <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-GuestOSProfile <GuestOSProfile>]
[-Owner <String>]
[-UserRole <UserRole>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-LinuxDomainName <String>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
New-SCGuestOSProfile
[-Shielded <Boolean>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile <Boolean>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxAdministratorSSHKeyString <String>]
[-VMMServer <ServerConnection>]
[-Name] <String>
[-Description <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-GuestOSProfile <GuestOSProfile>]
[-Owner <String>]
[-UserRole <UserRole>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-LinuxDomainName <String>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
New-SCGuestOSProfile
[-Shielded <Boolean>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile <Boolean>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-VMMServer <ServerConnection>]
[-Name] <String>
[-Description <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
-Domain <String>
[-DeploymentTypeNano <Boolean>]
[-DomainJoinCredential <VMMCredential>]
[-GuestOSProfile <GuestOSProfile>]
[-Owner <String>]
[-UserRole <UserRole>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-LinuxDomainName <String>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
New-SCGuestOSProfile
[-Shielded <Boolean>]
[-GuiRunOnceCommands <String[]>]
[-MergeAnswerFile <Boolean>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-VMMServer <ServerConnection>]
[-Name] <String>
[-Description <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-ProductKey <String>]
[-LocalAdministratorCredential <VMMCredential>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Workgroup <String>]
[-GuestOSProfile <GuestOSProfile>]
[-Owner <String>]
[-UserRole <UserRole>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-LinuxDomainName <String>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
Description
New-SCGuestOSProfile Cmdlet 會建立客體操作系統配置檔,以用於 Virtual Machine Manager(VMM)。 客體操作系統是虛擬機上的操作系統,與部署一或多個虛擬機之實體主計算機上的主機操作系統相反。
客體作業系統配置檔會儲存作業系統組態資訊。 配置檔包含一組屬性,其中包含自動響應檔案中指定的最常見設定(例如 Sysprep.inf 或 Unattend.xml 檔案)。
您可以建立獨立客體作業系統配置檔,或自定義範本或虛擬機,以包含客體作業系統設定檔設定。 New-SCGuestOSProfile Cmdlet 會將新的客體作業系統設定檔物件儲存在 VMM 連結庫中。
您可以根據預設設定建立客體作業系統配置檔、根據現有的客體作業系統配置檔建立客體作業系統設定檔,或者您可以在建立設定檔時自定義設定。 如果您除了 Name 參數之外未指定任何參數,New-SCGuestOSProfile Cmdlet 會建立預設的客體作業系統設定檔物件。
範例
範例 1:建立預設客體作業系統配置檔
PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.Contoso.com" | where {$_.Name -eq "64-bit edition of Windows Server 2008 R2 Enterprise"}
PS C:\> New-SCGuestOSProfile -Name "NewOSProfile01" -OperatingSystem $OS
第一個命令會從 VMMServer01 取得名為 「64 位版本的 Windows Server 2008 R2 Enterprise」 的作業系統物件,並將物件儲存在 $OS 變數中。
第二個命令會建立名為 NewProfile01 的預設客體作業系統設定檔,並指定作業系統的名稱。
範例 2:建立客體作業系統配置檔,以用來將虛擬機加入網域
PS C:\> $DomainCredential = Get-SCRunAsAccount -Name "RunAsAccount01"
PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.Contoso.com" | where {$_.Name -eq "64-bit edition of Windows Server 2008 R2 Enterprise"}
PS C:\> New-SCGuestOSProfile -Name "NewOSProfile02" -JoinDomain "Contoso.com" -DomainJoinCredential $DomainCredential -OperatingSystem $OS
第一個命令會取得名為 RunAsAccount01 的執行身分帳戶物件,並將物件儲存在$DomainCredential變數中。
第二個命令會從 VMMServer01 取得名為 Windows Server 2008 R2 Enterprise 64 位版本的操作系統物件,並將物件儲存在$OS變數中。
最後一個命令會建立名為 NewOSProfile02 的客體作業系統設定檔,並指定作業系統的名稱。 當您使用 NewOSProfile02 建立虛擬機時,配置檔會使用指定的執行身分帳戶,將虛擬機加入 Contoso.com 網域。
注意:如果您提供 PSCredential 物件,而不是 DomainJoinCredential 參數的 RunAs 帳戶,建議您只使用具有有限許可權的帳戶自動將虛擬機加入網域,因為網域帳戶名稱和密碼在主機伺服器上以純文本簡短顯示。
範例 3:複製現有的客體作業系統配置檔
PS C:\> $OSProfile = Get-SCGuestOSProfile -Name "NewOSProfile02"
PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.contoso.com" | where {$_.Name -eq "64-bit edition of Windows Server 2008 R2 Datacenter"}
PS C:\> New-SCGuestOSProfile -Name "NewOSProfile03" -GuestOSProfile $OSProfile -ComputerName "Contoso03" -OperatingSystem $OS
第一個命令會取得名為 NewOSProfile02 的客體 OS 配置檔物件,並將物件儲存在$OSProfile變數中。
第二個命令會取得名為 Windows Server 2008 R2 Datacenter 64 位版本的操作系統物件,並將物件儲存在$OS變數中。
最後一個命令會建立名為 NewOSProfile03 的客體作業系統設定檔,此設定檔是以 NewOSProfile02 為基礎,但會修改電腦名稱,併為操作系統指定不同的名稱。 NewOSProfile03 中的所有其他設定都與 NewOSProfile02 中的設定相同。
範例 4:建立 Linux 客體作業系統配置檔,並設定 Linux DNS 功能變數名稱
謹慎
本文參考 CentOS,這是已達到生命周期結束 (EOL) 狀態的 Linux 發行版。 請據以考慮您的使用和規劃。 如需詳細資訊,請參閱
PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.Contoso.com" | where {$_.Name -eq "CentOS Linux 6 (64 bit)"}
PS C:\> New-SCGuestOSProfile -Name "My CentOS Profile" -LinuxDomainName "contoso.com" -OperatingSystem $os
第一個命令會從 VMMServer01 取得名為 CentOS Linux 6(64 位)的操作系統物件,並將物件儲存在 $OS 變數中。
第二個命令會建立名為 My CentOS 設定檔的客體作業系統配置檔,並指定作業系統的名稱和 Linux DNS 功能變數名稱。 當您使用 My CentOS 設定檔來建立虛擬機時,配置檔會使用指定的 Linux DNS 功能變數名稱。
參數
-AnswerFile
指定儲存在 VMM 連結庫中的腳本物件,以作為回應檔案使用。 回應檔案文稿的名稱取決於您要在虛擬機上安裝的作業系統:
- Sysprep.inf。 Windows XP、Windows Server 2000 或 Windows Server 2003
- Unattend.xml。 Windows Vista、Windows 7 或 Windows Server 2008
類型: | Script |
別名: | SysPrepFile |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-AutoLogonCount
指定 Windows 應該自動將回應檔案中指定的系統管理員記錄到主控台工作階段的次數。
類型: | UInt32 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-AutoLogonCredential
指定當啟用自動系統管理員登入時,Windows 用來登入主控台工作階段的回應檔案中包含的執行身分帳戶。
類型: | RunAsAccount |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ComputerName
指定 VMM 可在網路上唯一識別的電腦名稱。 此參數可接受的值為:
- FQDN
- IPv4 或 IPv6 位址
- NetBIOS 名稱
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DeploymentTypeNano
{{Fill DeploymentTypeNano Description}}
類型: | Boolean |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Description
指定客體作業系統設定檔的描述。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DisableAutoLogon
指出此 Cmdlet 會停用自動系統管理員登入。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Domain
指定 Active Directory 網域的完整功能變數名稱 (FQDN)。
範例格式:-Domain "Domain01.Corp.Contoso.com"
類型: | String |
別名: | JoinDomain |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-DomainJoinCredential
指定有權將計算機加入網域之帳戶的使用者名稱和密碼。 建議您使用有限的許可權帳戶,將計算機加入網域。 這包括虛擬和實體計算機。
您可以使用目前的 參數,在 VMHostProfile 上指定認證,以便將實體主計算機加入網域,或在新的或現有的範本、新的或現有的客體操作系統配置檔或新的虛擬機上指定認證,以將虛擬機加入網域。
類型: | VMMCredential |
別名: | JoinDomainCredential |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DomainJoinOrganizationalUnit
指定自動迷你安裝期間電腦加入的組織單位。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-FullName
指定註冊虛擬機名稱的人員名稱。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-GuestOSProfile
指定客體作業系統配置檔物件。
類型: | GuestOSProfile |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-GuiRunOnceCommands
指定要新增至自動響應檔案 [GuiRunOnce] 區段的命令陣列。 在每個以雙引號括住的字串周圍使用單引號。
範例格式:-GuiRunOnceCommands '"C:\APF\APFPostSysPrepCopy.cmd PARAMS1"', '"C:\APF\APFPostSysPrepCopy.cmd PARAMS1"'
如需 Windows PowerShell 如何使用引號的資訊,請輸入 Get-Help about_Quoting_Rules
。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-JobVariable
指定作業進度會追蹤並儲存在此參數所命名的變數中。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-LinuxAdministratorSSHKey
指定 Linux SSH 金鑰的公鑰檔案。
類型: | SSHKey |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-LinuxAdministratorSSHKeyString
將 Linux 系統管理員 SSH 金鑰指定為字串。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-LinuxDomainName
指定要與Linux作業系統特製化搭配使用的完整功能變數名稱 (FQDN)。
範例格式:-LinuxDomainName "Domain01.Corp.Contoso.com"
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-LocalAdministratorCredential
指定本機系統管理員帳戶的使用者名稱和密碼(或在Linux相容客體作業系統配置檔的情況下為Linux根帳戶)。
在新的或現有的範本、新的或現有的客體作業系統配置檔上指定認證,或在新虛擬機上指定認證會覆寫任何現有的系統管理員密碼。
類型: | VMMCredential |
別名: | AdminPasswordCredential |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-MergeAnswerFile
指出這個 Cmdlet 是否將回應檔案與客體作業系統設定合併在一起。 預設值為 $True。 VMM 控制台會使用此參數。 請勿指定此參數。
類型: | Boolean |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Name
指定 VMM 物件的名稱。
類型: | String |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
-OperatingSystem
指定虛擬機的作業系統類型。
若要取得 VMM 中所有可用作業系統的名稱,請輸入 Get-SCOperatingSystem
。
類型: | OperatingSystem |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-OrganizationName
指定註冊虛擬機名稱之人員的組織名稱。
類型: | String |
別名: | OrgName |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Owner
以有效網域用戶帳戶的形式指定 VMM 對象的擁有者。
- 範例格式:
-Owner "Contoso\PattiFuller"
- 範例格式:
-Owner "PattiFuller@Contoso"
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ProductKey
指定產品金鑰。 產品金鑰是識別產品授權的 25 位數數位。 產品密鑰可用來註冊 VMM 或要安裝在虛擬機或主機上的作業系統。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-PROTipID
指定觸發此動作之效能和資源優化提示 (PRO 提示) 的識別碼。 此參數可讓您稽核 PRO 秘訣。
類型: | Guid |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveDomainJoinOrganizationalUnit
指出此 Cmdlet 會移除電腦在安裝期間加入的組織單位。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveServerFeatures
指出此 Cmdlet 會從範本中移除所有伺服器角色和功能。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RunAsynchronously
表示作業會以異步方式執行,讓控件立即返回命令殼層。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Shielded
指出物件是否受到防護。
類型: | Boolean |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-TimeZone
指定數位(索引),識別共用相同標準時間的地理區域。
如需時區索引的清單,請參閱
指定 GMT 標準時區的範例格式:-TimeZone 085
類型: | Int32 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-UnattendSettings
指定由 string
類型: | System.Collections.Generic.Dictionary`2[System.String,System.String] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-UserRole
指定使用者角色物件。
類型: | UserRole |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-VMMServer
指定 VMM 伺服器物件。
類型: | ServerConnection |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Workgroup
在新的或現有的範本、新的或現有的客體作業系統配置檔上,或在新的虛擬機上指定您要加入虛擬機的工作組名稱。 您可以使用此參數來覆寫範本或客體作業系統設定檔上的現有值。
類型: | String |
別名: | JoinWorkgroup |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸出
GuestOSProfile
此 Cmdlet 會傳回 GuestOSProfile 物件。