Set-SCGuestOSProfile
更改 VMM 中使用的来宾操作系统配置文件的属性。
语法
Set-SCGuestOSProfile
[-GuestOSProfile] <GuestOSProfile>
[-ProductKey <String>]
[-GuiRunOnceCommands <String[]>]
[-LocalAdministratorCredential <VMMCredential>]
[-MergeAnswerFile <Boolean>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxDomainName <String>]
[-Shielded <Boolean>]
[-Name <String>]
[-Description <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Owner <String>]
[-UserRole <UserRole>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
Set-SCGuestOSProfile
[-GuestOSProfile] <GuestOSProfile>
[-ProductKey <String>]
[-GuiRunOnceCommands <String[]>]
[-LocalAdministratorCredential <VMMCredential>]
[-MergeAnswerFile <Boolean>]
[-DomainJoinCredential <VMMCredential>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxDomainName <String>]
[-Shielded <Boolean>]
[-Name <String>]
[-Description <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
-Domain <String>
[-DeploymentTypeNano <Boolean>]
[-Owner <String>]
[-UserRole <UserRole>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
Set-SCGuestOSProfile
[-GuestOSProfile] <GuestOSProfile>
[-ProductKey <String>]
[-GuiRunOnceCommands <String[]>]
[-LocalAdministratorCredential <VMMCredential>]
[-MergeAnswerFile <Boolean>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxDomainName <String>]
[-LinuxAdministratorSSHKey <SSHKey>]
[-Shielded <Boolean>]
[-Name <String>]
[-Description <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Owner <String>]
[-UserRole <UserRole>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
Set-SCGuestOSProfile
[-GuestOSProfile] <GuestOSProfile>
[-ProductKey <String>]
[-GuiRunOnceCommands <String[]>]
[-LocalAdministratorCredential <VMMCredential>]
[-MergeAnswerFile <Boolean>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxDomainName <String>]
[-LinuxAdministratorSSHKeyString <String>]
[-Shielded <Boolean>]
[-Name <String>]
[-Description <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Owner <String>]
[-UserRole <UserRole>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
Set-SCGuestOSProfile
[-GuestOSProfile] <GuestOSProfile>
[-ProductKey <String>]
[-GuiRunOnceCommands <String[]>]
[-LocalAdministratorCredential <VMMCredential>]
[-MergeAnswerFile <Boolean>]
[-AnswerFile <Script>]
[-OperatingSystem <OperatingSystem>]
[-LinuxDomainName <String>]
[-Shielded <Boolean>]
[-Name <String>]
[-Description <String>]
[-FullName <String>]
[-OrganizationName <String>]
[-ComputerName <String>]
[-TimeZone <Int32>]
[-RemoveServerFeatures]
[-Workgroup <String>]
[-Owner <String>]
[-UserRole <UserRole>]
[-AutoLogonCredential <RunAsAccount>]
[-AutoLogonCount <UInt32>]
[-DisableAutoLogon]
[-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
[-DomainJoinOrganizationalUnit <String>]
[-RemoveDomainJoinOrganizationalUnit]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
说明
Set-SCGuestOSProfile cmdlet 更改虚拟机管理器(VMM)环境中使用的来宾操作系统配置文件的一个或多个属性。 对来宾操作系统配置文件所做的更改仅影响来宾操作系统配置文件本身。 更改不会影响以前使用此配置文件创建的任何现有虚拟机。
示例
示例 1:为现有来宾操作系统配置文件指定组织名称
PS C:\> $OSProfile = Get-SCGuestOSProfile -Name "NewOSProfile01"
PS C:\> Set-SCGuestOSProfile -GuestOSProfile $OSProfile -OrgName "Contoso"
第一个命令获取名为 NewOSProfile01 的来宾 OS 配置文件对象,并将对象存储在$OSProfile变量中。
第二个命令将 Contoso 设置为存储在 $OSProfile 中的来宾操作系统配置文件的组织名称。
示例 2:为现有的 Linux 来宾操作系统配置文件指定 SSHKey
警告
本文中提到了 CentOS,这是一个已达到生命周期结束 (EOL) 状态的 Linux 发行版。 请相应地考虑你的使用和规划。 有关详细信息,请参阅 CentOS 生命周期结束指南。
PS C:\> $OSProfile = Get-SCGuestOSProfile -Name "My CentOS Profile"
PS C:\> $Sshkey = Get-SCSSHKey -Name "My.Sshkey"
PS C:\> Set-SCGuestOSProfile -GuestOSProfile $OSProfile -LinuxAdministratorSSHKey $Sshkey
第一个命令获取名为 MyCentOSProfile 的来宾 OS 配置文件对象,并将该对象存储在$OSProfile变量中。
第二个命令获取名为 My.Sshkey 的 SSHKey 对象,并将该对象存储在$Sshkey变量中。
最后一个命令设置存储在$OSProfile中的来宾操作系统配置文件上的 My.sshkey 对象。
参数
-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
禁用自动管理员登录。
类型: | 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: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | 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: | Named |
默认值: | None |
必需: | False |
接受管道输入: | 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 提示)的 ID。 此参数允许你审核 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、String组成的键/值对。
类型: | System.Collections.Generic.Dictionary`2[System.String,System.String] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-UserRole
指定用户角色对象。
类型: | UserRole |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Workgroup
在新的或现有的模板、新的或现有的来宾操作系统配置文件或新虚拟机上指定要加入虚拟机的工作组的名称。 可以使用此参数替代模板或来宾操作系统配置文件上的现有值。
类型: | String |
别名: | JoinWorkgroup |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输出
GuestOSProfile
此 cmdlet 返回 GuestOSProfile 对象。
备注
- 需要 VMM 来宾 OS 配置文件对象,可以使用 Get-SCGuestOSProfile cmdlet 来检索该对象。