在 Windows Server 中,服务器管理器控制台和适用于 Server Manager 的 Windows PowerShell cmdlet 使你可以将角色和功能添加到本地或远程服务器,或脱机虚拟硬盘(VHD)。 可以同时添加多个角色和功能。 本文介绍如何在 Windows Server 中添加或删除角色和功能,包括多个服务器。
有关 Windows Server 中有哪些角色和功能的详细信息,请参阅 Windows Server 版本的比较。
先决条件
在添加或删除角色、角色服务和功能之前,请确保满足以下先决条件:
使用具有管理员权限的用户帐户。 还需要在使用服务器管理器管理的所有远程服务器上具备管理员权限,或者在挂载的脱机 VHD 上具备管理员权限。
查看并了解特定于计划添加的角色或功能的任何依赖项或先决条件,因为某些角色可能需要额外的配置或服务才能正常运行。 有关详细信息,请参阅 Windows Server 中的“按需配置功能”。
为添加某些功能(如 .NET Framework 3.5)所需的文件提供安装介质或备用源路径。
若要在远程服务器上添加角色和功能,请将其添加到服务器管理器。 有关如何将服务器添加到服务器管理器的详细信息,请参阅 将服务器添加到服务器管理器。
若要将角色和功能添加到脱机 VHD,目标 VHD 必须满足以下要求:
- VHD 必须运行与 VHD 装载到的服务器版本匹配的 Windows Server 版本。
- 确保 VHD 文件未由其他进程使用或装载到其他位置。
- VHD 不能包含多个系统卷或分区。
- 对于存储在网络共享文件夹上的 VHD,必须向选择装载 VHD 的服务器的计算机(或本地系统)帐户授予 读取 和 写入 权限。 仅限用户的帐户访问权限还不足够。
注释
可以在相同版本的 Windows Server 或更早版本上使用服务器管理器在远程服务器上添加角色和功能。 此要求包括将等效的 Windows 客户端版本与远程服务器管理工具(RSAT)配合使用。 例如,Windows Server 2025 还可以在 Windows Server 2022 上添加角色和功能,但 Windows Server 2022 无法在 Windows Server 2025 上添加角色和功能。
本文不介绍如何添加远程桌面服务(RDS)角色,该角色在服务器管理器中具有不同的安装过程。 有关添加 RDS 角色的详细信息,请参阅 部署远程桌面服务环境。
将角色和功能添加到 Windows Server
可以在本地服务器、已添加到服务器管理器的远程服务器或脱机 VHD 上,使用服务器管理器中的“添加角色和功能向导”或 Windows PowerShell cmdlet 添加角色和功能。
选择相关选项卡。
若要使用服务器管理器中的角色和功能向导添加角色和功能,请执行以下步骤:
打开“开始”菜单,键入 服务器管理器,然后打开 服务器管理器。
在右上角选择“ 管理 ”,然后选择“ 添加角色和功能”。 此时会打开 “添加角色和功能”向导 。
对于 “开始之前”,请查看信息,然后选择“ 下一步”。
对于 安装类型,请选择 “基于角色”或“基于功能”的安装,然后选择“ 下一步”。 使用此选项可添加远程桌面服务以外的所有角色和功能。 有关添加 RDS 角色的详细信息,请参阅 部署远程桌面服务环境。
对于 “服务器选择”,选择要在其中添加角色和功能的服务器。 可以选择添加到服务器管理器的本地服务器或远程服务器。 如果要在脱机 VHD 上添加角色和功能,请选择 “选择虚拟硬盘”,选择要在其上装载 VHD 的服务器,然后浏览或输入其文件路径。 选择“下一步”。
对于 服务器角色,选择要添加的角色。 如果只想添加功能,则无需选择任何角色。 完成角色选择后,选择“ 下一步”。
在您继续操作时,向导会自动通知您是否在目标服务器上发现冲突,这些冲突可能会阻止添加所选角色或功能,或干扰正常操作。 系统还会提示你添加所选角色或功能所需的其他角色和功能。
如果计划通过另一台服务器或使用运行远程服务器管理工具 (RSAT) 的 Windows 客户端计算机远程管理角色,则可以选择不在目标服务器上为角色安装管理工具和管理单元。 默认情况下,会添加管理工具。
对于 功能,选择要添加的角色。 如果只想添加角色,则无需选择任何功能。 进行功能选择后,选择“ 下一步”。
对于“确认”,请查看所选的角色和功能。 准备就绪后,选择“ 安装”。 某些角色和功能要求在安装后重启服务器。 如果希望服务器在安装后自动重启,请选中“根据需要 自动重启目标服务器 ”框。
小窍门
如果需要指定安装源文件,请选择 “指定备用源路径”。 您还可以使用以下格式指定 Windows 映像(WIM)文件,在前面加上 WIM
作为前缀,并在后面加上功能文件所在的索引作为后缀,例如 WIM:e:\sources\install.wim:4
。 然而,无法直接将 WIM 文件用作离线 VHD 添加角色和功能的源文件。 必须将脱机 VHD 挂载并指定其挂载路径作为源文件路径,或者必须指定一个包含 WIM 文件内容副本的文件夹。 源路径或文件共享必须向目标服务器的计算机帐户授予 读取 权限;授予用户帐户访问权限是不够的。 有关在 WIM 文件中列出索引的详细信息,请参阅 列出 WIM 或 VHD 文件中包含的映像。
你还可以将选择导入基于 XML 的配置文件,以便使用 Windows PowerShell 进行无需人工干预的安装。 若要导出指定的配置,请选择“ 导出配置设置”,然后将 XML 文件保存到方便的位置。 可以在 “添加多个服务器上的角色和功能”部分中找到使用此配置文件的步骤。
安装完成后,选择“关闭”。
若要使用 适用于服务器管理器的 Windows PowerShell 模块添加角色和功能,请执行以下步骤。 请务必将任何 <placeholder>
值替换为你自己的值。
以管理员身份打开 PowerShell 会话。
运行以下命令以获取 Windows Server 中提供的所有角色和功能的列表:
Get-WindowsFeature
如果要检查远程服务器上的角色和功能,请使用 -ComputerName
参数。 即使远程服务器未添加到服务器管理器,也可以使用此参数。
Get-WindowsFeature -ComputerName <ComputerName>
运行以下命令,通过 Install-WindowsFeature
cmdlet 添加角色或功能。 需要指定要添加的一个或多个角色或功能的名称,如以下示例所示。 可以在 Install-WindowsFeature 中找到 cmdlet 的完整文档。
小窍门
角色所需的管理工具和管理单元默认情况下并未包含在内。 要在角色安装中包括管理工具,可在 cmdlet 中添加 -IncludeManagementTools
参数。 如果正在为运行 Windows Server 的 Server Core 安装选项的服务器上添加角色和功能,可以将角色的管理工具添加到安装中,但基于 GUI 的管理工具和管理单元不会被安装。 仅安装命令行和 Windows PowerShell 管理工具。
如果添加的角色或功能需要重启服务器才能完成安装,请添加 -Restart
参数以自动重启而不提示。
若要在本地服务器上添加 DNS 和 DHCP 角色(包括管理工具),请运行以下命令:
Install-WindowsFeature -Name DNS,DHCP -IncludeManagementTools
若要在脱机 VHD 上添加 DNS 和 DHCP 角色和功能,请添加参数 -Vhd
。 该 cmdlet 假定你要将 VHD 装载到本地计算机。 或者,还添加参数 -ComputerName
以及要装载 VHD 的服务器的名称。 如果要在运行 Windows 客户端操作系统的计算机上运行 cmdlet,则必须添加该 -ComputerName
参数。
Install-WindowsFeature -Name DNS,DHCP -Vhd <Path> -ComputerName <ComputerName>
cmdlet 的输出显示安装的结果,如以下示例所示。 如果参数Restart Needed
Yes
的值为,请重启服务器以完成安装。
Success Restart Needed Exit Code Feature Result
------- -------------- --------- --------------
True No Success {DHCP Server, DNS Server}
可以通过运行以下命令获取所有已安装角色和功能的列表:
Get-WindowsFeature | ? Installed -eq $true
在多个服务器上添加角色和功能
不能在单个向导会话中的多个目标服务器上使用 “添加角色和功能向导 ”。 但是,你可以使用 Windows PowerShell 同时在多个目标服务器上添加角色和功能。 必须将这些服务器添加到服务器管理器。
使用 Install-WindowsFeature cmdlet,可以指定一个 XML 配置文件,其中包含要在多个服务器上安装的角色和功能。 此配置文件是使用“添加角色和功能向导”创建的
重要
指定的所有目标服务器都必须运行与运行服务器管理器的相同版本的 Windows Server 或相关的 Windows 客户端作系统。
若要在多个服务器上添加角色和功能,请执行以下作:
创建一个 XML 配置文件,其中包含要在多个服务器上安装的角色和功能,如 “角色和功能向导”选项卡所示。 按照步骤 8 中的指南将所选内容导出到基于 XML 的配置文件。
以管理员身份打开 PowerShell 会话。
在以下示例中运行以下命令,在指定的服务器上添加角色和功能、使用配置文件,并在必要时重启每个服务器。 请务必将任何 <placeholder>
值替换为你自己的值。 此示例在单独的作业中运行每个命令,以便命令在每台服务器上并发运行。 有关在作业中运行命令的详细信息,请参阅 “启动作业”。
$serverNames = '<server01>','<server02>','<server03>'
$configurationFilepath = '<filePath to DeploymentConfigTemplate.xml>'
$jobs = @()
foreach($serverName in $serverNames) {
$jobs += Start-Job -Command {
Install-WindowsFeature -ConfigurationFilepath $configurationFilepath -ComputerName $serverName -Restart
}
}
Receive-Job -Job $jobs -Wait | Select-Object Success, RestartNeeded, exitCode, FeatureResult
如果参数Restart Needed
Yes
的值为,请重启服务器以完成安装。
验证在配置中指定的角色和功能是否已在每个作业的输出中完成。
从 Windows Server 中删除角色和功能
可以使用服务器管理器中的“删除角色和功能向导”或 Windows PowerShell cmdlet,删除本地服务器、已添加到服务器管理器的远程服务器或脱机 VHD 上的角色和功能。
选择相关选项卡。
若要使用服务器管理器中的角色和功能向导删除角色和功能,请执行以下步骤:
打开“开始”菜单,键入 服务器管理器,然后打开 服务器管理器。
在右上角选择“ 管理 ”,然后选择“ 删除角色和功能”。 这样将打开“删除角色和功能向导”。
对于 “开始之前”,请查看信息,然后选择“ 下一步”。
对于 服务器选择,请选择要删除其上的角色和功能的服务器。 可以选择添加到服务器管理器的本地服务器或远程服务器。 如果要删除脱机 VHD 上的角色和功能,请选择 “选择虚拟硬盘”,选择要在其上装载 VHD 的服务器,然后浏览或输入其文件路径。 选择“下一步”。
对于 服务器角色,请选择要删除的角色。 如果只想删除某个功能,则无需选择任何角色。 完成角色选择后,选择“ 下一步”。
当你继续操作时,向导会自动建议你移除你选择的角色或功能所需的任何其他角色和功能。
对于 功能,选择要删除的角色。 如果只想删除角色,则无需选择任何功能。 进行功能选择后,选择“ 下一步”。
对于“确认”,请查看所选的角色和功能。 准备就绪后,选择“ 删除”。 某些角色和功能要求在删除服务器后重启服务器。 如果希望服务器在删除后自动重启,请选中“根据需要自动 重启目标服务器 ”框。
删除完成后,选择“ 关闭”。
若要使用 适用于服务器管理器的 Windows PowerShell 模块删除角色和功能,请执行以下步骤。 请务必将任何 <placeholder>
值替换为你自己的值。
以管理员身份打开 PowerShell 会话。
运行以下命令获取服务器上安装的所有角色和功能的列表:
Get-WindowsFeature | ? Installed -eq $true
如果要检查远程服务器上的角色和功能,请使用 -ComputerName
参数。 即使远程服务器未添加到服务器管理器,也可以使用此参数。
Get-WindowsFeature -ComputerName <ComputerName> | ? Installed -eq $true
使用 cmdlet 删除角色或功能 Unnstall-WindowsFeature
,并指定要添加的一个或多个角色或功能的名称,如以下示例所示。 可以在 Uninstall-WindowsFeature 中找到 cmdlet 的完整文档。
若要删除本地服务器上的 DNS 和 DHCP 角色(包括管理工具),请运行以下命令:
Uninstall-WindowsFeature -Name DNS,DHCP -IncludeManagementTools
若要删除脱机 VHD 上的 DNS 和 DHCP 角色和功能,请添加参数 -Vhd
。 该 cmdlet 假定你要将 VHD 装载到本地计算机。 或者,还添加参数 -ComputerName
以及要装载 VHD 的服务器的名称。 如果要在运行 Windows 客户端操作系统的计算机上运行 cmdlet,则必须添加该 -ComputerName
参数。
Uninstall-WindowsFeature -Name DNS,DHCP -Vhd <Path> -ComputerName <ComputerName>
cmdlet 的输出显示删除的结果,如以下示例所示。 如果参数Restart Needed
Yes
的值为,请重启服务器以完成安装。
Success Restart Needed Exit Code Feature Result
------- -------------- --------- --------------
True Yes SuccessRestart {DHCP Server, DNS Server}
可以通过运行以下命令获取所有剩余已安装角色和功能的列表:
Get-WindowsFeature | ? Installed -eq $true
虚拟代理
如果在安装或删除角色和功能时遇到问题,可以尝试我们的虚拟代理。 它可以帮助你快速识别和修复与角色和功能相关的问题。
相关内容
按需配置功能