diff --git a/docset/windows/nano-server-image-generator/edit-nanoserverimage.md b/docset/windows/nano-server-image-generator/edit-nanoserverimage.md index ea5f4a4f28..28b4616e6d 100644 --- a/docset/windows/nano-server-image-generator/edit-nanoserverimage.md +++ b/docset/windows/nano-server-image-generator/edit-nanoserverimage.md @@ -25,16 +25,19 @@ Modifies a Nano Server installation image. ## SYNTAX ``` -Edit-NanoServerImage [[-BasePath] ] [-TargetPath] [-Storage] [-Compute] [-Defender] - [-Clustering] [-OEMDrivers] [-Containers] [[-SetupUI] ] [[-Package] ] - [[-ServicingPackagePath] ] [[-ComputerName] ] [[-AdministratorPassword] ] - [[-UnattendPath] ] [[-DomainName] ] [[-DomainBlobPath] ] [-ReuseDomainNode] - [[-DriverPath] ] [[-InterfaceNameOrIndex] ] [[-Ipv6Address] ] - [[-Ipv6Dns] ] [[-Ipv4Address] ] [[-Ipv4SubnetMask] ] [[-Ipv4Gateway] ] - [[-Ipv4Dns] ] [[-DebugMethod] ] [-EnableEMS] [[-EMSPort] ] [[-EMSBaudRate] ] - [-EnableRemoteManagementPort] [[-CopyPath] ] [[-SetupCompleteCommand] ] [-Development] - [[-LogPath] ] [[-OfflineScriptPath] ] [[-OfflineScriptArgument] ] - [[-Internal] ] [] +Edit-NanoServerImage [[-BasePath] ] [-TargetPath] [[-SetupUI] ] + [[-Package] ] [[-ServicingPackagePath] ] [[-ComputerName] ] [[-AdministratorPassword] ] [[-UnattendPath] ] [[-DomainName] ] + [[-DomainBlobPath] ] [[-DriverPath] ] [[-InterfaceNameOrIndex] ] + [[-Ipv6Address] ] [[-Ipv6Dns] ] [[-Ipv4Address] ] + [[-Ipv4SubnetMask] ] [[-Ipv4Gateway] ] [[-Ipv4Dns] ] + [[-DebugMethod] {Serial | Net | 1394 | USB} [[-DebugBaudRate] ] + [[-DebugBusParams ] [[-DebugChannel] ] [[-DebugCOMPort] ] + [[-DebugKey] ] [[-DebugPort] ] [[-DebugRemoteIP] ] + [[-DebugTargetName] ]] [-EnableEMS] [[-EMSPort] ] [[-EMSBaudRate] ] + [[-CopyPath] ] [[-SetupCompleteCommand] ] [[-LogPath] ] + [[-OfflineScriptPath] ] [[-OfflineScriptArgument] ] [[-Internal] ] + [-Storage] [-Compute] [-Defender] [-Clustering] [-OEMDrivers] [-Containers] [-ReuseDomainNode] + [-EnableRemoteManagementPort] [-Development] [] ``` ## DESCRIPTION @@ -45,31 +48,34 @@ You can use the **Edit-NanoServerImage** cmdlet to do the following operations: - Add packages. - Add drivers. +- Add servicing packages (updates). +- Add an unattended setup file (unattend.xml). +- Add files. +- Add setup scripts. - Set the computer name. - Set the administrator password. +- Configure network settings. - Join a domain. - Enable debugging. - Enable Emergency Management Services (EMS). -- Set the static IP address. +- Enable remote management. +- Enable development options. ## EXAMPLES ### Example 1: Modify a Nano Server installation image ``` -PS C:\>Edit-NanoServerImage -MediaPath "D:\" -BasePath ".\Base" -TargetPath ".\Target 1\NanoServer.vhdx" -Compute -ComputerName "Nano" -DomainName "ContosoDomain" -AdministratorPassword (ConvertTo-SecureString -String "Passw0rd" -AsPlainText -Force) +PS C:\> Edit-NanoServerImage -MediaPath D:\ -BasePath .\Base -TargetPath .\NanoServer.vhdx -Compute -ComputerName Nano -DomainName ContosoDomain -AdministratorPassword (ConvertTo-SecureString -String "Passw0rd" -AsPlainText -Force) ``` This example assumes that you've run the **New-NanoServerImage** cmdlet and specified .\Base as the base path. -This command copies required files from D:\ to .\Base. -It converts the Nano Server .wim file into a .vhdx file and moves it to .\Target 1\NanoServer.vhdx. -It adds the Compute (Hyper-V) package, sets the computer name to Nano, sets the administrator password to Passw0rd, and performs an offline domain join of the machine to ContosoDomain. +This command copies required files from D:\ to .\Base. It converts the Nano Server .wim file into a .vhdx file and moves it to .\NanoServer.vhdx. It adds the Compute (Hyper-V) package, sets the computer name to Nano, sets the administrator password to Passw0rd, and performs an offline domain join of the machine to ContosoDomain. ## PARAMETERS ### -AdministratorPassword -Specifies the administrator password for the image. -If you do not specify this value on the command line, this cmdlet prompts you for the password. +Specifies the password for the built-in Administrator account for the image. If you do not specify this value on the command line, this cmdlet prompts you for the password. ```yaml Type: SecureString @@ -84,7 +90,7 @@ Accept wildcard characters: False ``` ### -BasePath -Specifies the path for the source media. +Specifies the path where Nano Server files are copied from the source media. These files are not automatically deleted after running Edit-NanoServerImage or New-NanoServerImage. This enables you to copy the Nano Server files from the source media once with the MediaPath parameter and reuse the same files with the BasePath parameter when running Edit-NanoServerImage or New-NanoServerImage again. ```yaml Type: String @@ -99,7 +105,7 @@ Accept wildcard characters: False ``` ### -Clustering -Indicates that this operation adds the Clustering package. +Indicates that this operation adds the Clustering package. This package includes Failover Clustering, VM Failover Clustering, Volume Replication Clustering, Storage Spaces Direct (S2D), Storage Quality of Service (QoS), and SMB Witness Service. ```yaml Type: SwitchParameter @@ -114,7 +120,7 @@ Accept wildcard characters: False ``` ### -Compute -Indicates that this operation adds the Compute (Hyper-V) package. +Indicates that this operation adds the Compute package. This package includes Hyper-V and NetQoS. ```yaml Type: SwitchParameter @@ -144,7 +150,7 @@ Accept wildcard characters: False ``` ### -Containers -Indicates that this operation adds the Containers package. +Indicates that this operation adds the Containers package. This package includes host support for Windows Containers. ```yaml Type: SwitchParameter @@ -159,7 +165,7 @@ Accept wildcard characters: False ``` ### -CopyPath -Specifies the copy path. +Specifies one or more files to copy into the target image. This parameter accepts a path to a single file, an array of paths to multiple files, or a hashtable of file paths and target directories where the keys are the file path names and the values are the target directories. For example, @{"C:\mytool.exe"="windows"} will copy mytool.exe from C:\ on the source machine to the windows directory in the target image. ```yaml Type: Object @@ -173,9 +179,83 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -DebugBaudRate +Specifies the baud rate to use for kernel debugging. This parameter is only applicable when DebugMethod is Serial. The default rate is 115200 bps. + +```yaml +Type: UInt32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: 115200 +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugBusParams +Specifies additional bus parameters to use for network kernel debugging (KDNet). This parameter is only applicable when DebugMethod is Net. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugChannel +Specifies the channel that the computer running the debugger can use to connect to the host. This parameter is only applicable when DebugMethod is 1394. + +```yaml +Type: UInt16 +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugCOMPort +Specifies the serial port that kernel debugging is enabled on. This parameter is only applicable when DebugMethod is Serial. The default port is 2. + +```yaml +Type: Byte +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: 2 +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugKey +Specifies the shared key secret for establishing the debugger connection. This parameter is only applicable when DebugMethod is Net. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -DebugMethod -Specifies the method of kernel debugging for the target image. -The acceptable values for this parameter are: +Specifies the method of kernel debugging for the target image. The acceptable values for this parameter are: - Serial - Net (KDNET) @@ -197,8 +277,53 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -DebugPort +Specifies the port that the computer running the debugger can use to connect to the host. This parameter is only applicable when DebugMethod is Net. + +```yaml +Type: UInt16 +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugRemoteIP +Specifies the IP address of the computer running the debugger. This parameter is only applicable when DebugMethod is Net. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugTargetName +Specifies the target name that the computer running the debugger can use to connect to the host. This parameter is only applicable when DebugMethod is USB. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -Defender -Indicates that this operation adds the Windows Defender package. +Indicates that this operation adds the Windows Defender package. This package also includes a default malware definition file for Windows Defender. ```yaml Type: SwitchParameter @@ -213,6 +338,8 @@ Accept wildcard characters: False ``` ### -Development +Indicates that this operation enables settings for development and testing scenarios on Nano Server. This includes enabling PowerShell as the default local shell, allowing installation of unsigned drivers, copying debugger binaries into the image, opening a port for debugging, enabling test signing, and enabling installation of AppX packages without a developer license. + ```yaml Type: SwitchParameter Parameter Sets: (All) @@ -226,8 +353,7 @@ Accept wildcard characters: False ``` ### -DomainBlobPath -Specifies the path to a domain blob. -This cmdlet joins the image to the domain that this parameter specifies. +Specifies the path to a domain blob. This cmdlet joins the image to the domain that this parameter specifies. You can harvest a domain blob from a computer that is joined to the domain using the djoin.exe tool with the Provision parameter. Save the blob to a file and specify the path to the blob file using this parameter. ```yaml Type: String @@ -242,10 +368,8 @@ Accept wildcard characters: False ``` ### -DomainName -Specifies a domain name. -This cmdlet performs an offline join to the domain specified by this parameter. -A domain blob is retrieved from the local computer. -If the local computer is not a member of the specified domain, the command fails. +Specifies a domain name. This cmdlet performs an offline join to the domain specified by this parameter. +A domain blob is retrieved from the local computer. If the local computer is not a member of the specified domain, the command fails. In this case, harvest a domain blob from a computer that is joined to the domain and use the DomainBlobPath parameter instead. ```yaml Type: String @@ -260,7 +384,7 @@ Accept wildcard characters: False ``` ### -DriverPath -Specifies the driver path. +Specifies one or more paths to driver .inf files and binary files to add to the image. Paths can be directories containing drivers or paths to individual driver files. For each driver, both the .inf and .sys files must be present. Only 64-bit drivers are supported on Nano Server. If the drivers are not signed, the command fails. ```yaml Type: String[] @@ -275,8 +399,7 @@ Accept wildcard characters: False ``` ### -EMSBaudRate -Specifies the baud rate for EMS. -The default is 115200 bps. +Specifies the baud rate for Emergency Management Services (EMS). The default is 115200 bps. ```yaml Type: UInt32 @@ -285,14 +408,13 @@ Aliases: Required: False Position: 20 -Default value: None +Default value: 115200 Accept pipeline input: False Accept wildcard characters: False ``` ### -EMSPort -Specifies the port on which to enable EMS. -The default is 1. +Specifies the port on which to enable Emergency Management Services (EMS). The default is 1. ```yaml Type: Byte @@ -301,13 +423,13 @@ Aliases: Required: False Position: 19 -Default value: None +Default value: 1 Accept pipeline input: False Accept wildcard characters: False ``` ### -EnableEMS -Indicates that this operation enables EMS and BootEMS on the image. +Indicates that this operation enables Emergency Management Services (EMS) and BootEMS on the image. ```yaml Type: SwitchParameter @@ -322,7 +444,7 @@ Accept wildcard characters: False ``` ### -EnableRemoteManagementPort -Indicates that this operation opens port 5985 for inbound TCP connections for Windows Remote Management (WinRM). +Indicates that this operation opens port 5985 for inbound TCP connections for Windows Remote Management (WinRM) and enable the Remote Event Log Management firewall group. ```yaml Type: SwitchParameter @@ -337,8 +459,7 @@ Accept wildcard characters: False ``` ### -InterfaceNameOrIndex -Specifies the interface name or index to modify. -You can get the interface name or index using **Get-NetAdapter**, netsh, or Recovery Console. +Specifies the network adapter interface name or index to modify. You can get the interface name or index using **Get-NetAdapter**, netsh, or Recovery Console. ```yaml Type: String @@ -353,7 +474,7 @@ Accept wildcard characters: False ``` ### -Internal -{{Fill Internal Description}} +This parameter is reserved for internal use. ```yaml Type: String @@ -458,7 +579,7 @@ Accept wildcard characters: False ``` ### -LogPath -{{Fill LogPath Description}} +Specifies the path where log files from the operation will be collected. If LogPath is not specified, all logs are collected into a Logs folder in BasePath. ```yaml Type: String @@ -473,7 +594,7 @@ Accept wildcard characters: False ``` ### -OEMDrivers -Indicates that this operation adds the OEM Drivers package. +Indicates that this operation adds the OEM Drivers package. This package includes drivers for a variety of network adapters, storage controllers, and other peripherals. This is the same set of drivers included in a Server Core installation of Windows Server. ```yaml Type: SwitchParameter @@ -488,7 +609,7 @@ Accept wildcard characters: False ``` ### -OfflineScriptArgument -{{Fill OfflineScriptArgument Description}} +Use the OfflineScriptPath parameter to specify an array of paths to PowerShell (.ps1) scripts. If those scripts take arguments, use the OfflineScriptArgument parameter to pass a hashtable of additional arguments to the scripts. ```yaml Type: Hashtable @@ -503,7 +624,7 @@ Accept wildcard characters: False ``` ### -OfflineScriptPath -{{Fill OfflineScriptPath Description}} +Use the OfflineScriptPath parameter to specify an array of paths to PowerShell (.ps1) scripts. If those scripts take arguments, use the OfflineScriptArgument parameter to pass a hashtable of additional arguments to the scripts. ```yaml Type: String[] @@ -518,7 +639,7 @@ Accept wildcard characters: False ``` ### -Package -{{Fill Package Description}} +Specifies an array of Nano Server packages to add. Packages are stored in the NanoServer\Packages folder on the installation media. You can get a list of Nano Server packages by running the Get-NanoServerPackage cmdlet. ```yaml Type: String[] @@ -548,7 +669,7 @@ Accept wildcard characters: False ``` ### -ServicingPackagePath -{{Fill ServicingPackagePath Description}} +Specifies an array of servicing packages (updates) to add. ```yaml Type: String[] @@ -563,7 +684,7 @@ Accept wildcard characters: False ``` ### -SetupCompleteCommand -{{Fill SetupCompleteCommand Description}} +Specifies an array of commands to run after setup completes. ```yaml Type: String[] @@ -578,7 +699,7 @@ Accept wildcard characters: False ``` ### -SetupUI -{{Fill SetupUI Description}} +This parameter is reserved for internal use. ```yaml Type: String[] @@ -593,7 +714,7 @@ Accept wildcard characters: False ``` ### -Storage -Indicates that this operation adds the Storage package. +Indicates that this operation adds the Storage package. This package includes the File Server role, Data Deduplication, Multipath I/O, including a driver for Microsoft Device-Specific Module (MSDSM), ReFS (v1 and v2), iSCSI Initiator (but not iSCSI Target), Storage Replica, Storage Management Service with SMI-S support, SMB Witness Service, Volume Shadow Copy Service (VSS), Dynamic Volumes, and basic Windows storage providers (for Windows Storage Management). Note that when using the Storage parameter to install the File Server role, the role is installed but not enabled. You can enable the File Server role from a remote computer using Server Manager. ```yaml Type: SwitchParameter @@ -608,9 +729,7 @@ Accept wildcard characters: False ``` ### -TargetPath -Specifies the path of the final, modified image. -The image format is determined based on the file extension. -Possible extension values are .vhd, .vhdx, and .wim. +Specifies the path of the final, modified image. The image format is determined based on the file extension. Possible extension values are .vhd, .vhdx, and .wim. ```yaml Type: String @@ -625,6 +744,8 @@ Accept wildcard characters: False ``` ### -UnattendPath +Specifies the path to an unattended setup file (unattend.xml). + ```yaml Type: String Parameter Sets: (All) diff --git a/docset/windows/nano-server-image-generator/get-nanoserverpackage.md b/docset/windows/nano-server-image-generator/get-nanoserverpackage.md index 0e3522de6b..a56cacf33b 100644 --- a/docset/windows/nano-server-image-generator/get-nanoserverpackage.md +++ b/docset/windows/nano-server-image-generator/get-nanoserverpackage.md @@ -29,16 +29,16 @@ Get-NanoServerPackage [[-MediaPath] ] [[-BasePath] ] [[-LogPath] ``` ## DESCRIPTION -The **Get-NanoServerPackages** cmdlet gets packages that are available to embed into a Nano Server installation image. +The **Get-NanoServerPackage** cmdlet gets packages that are available to embed into a Nano Server installation image. ## EXAMPLES ### Example 1: Get available packages ``` -PS C:\> Get-NanoServerPackages -MediaPath "D:\" +PS C:\> Get-NanoServerPackage -MediaPath D:\ ``` -This command gets packages available on the source media. +This command gets packages available on the source media mounted on the D: drive. ## PARAMETERS @@ -58,7 +58,7 @@ Accept wildcard characters: False ``` ### -LogPath -Specifies the log path. +Specifies the path where log files from the operation will be collected. ```yaml Type: String @@ -97,6 +97,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable None. ## OUTPUTS +### System.String ## NOTES diff --git a/docset/windows/nano-server-image-generator/new-nanoserverimage.md b/docset/windows/nano-server-image-generator/new-nanoserverimage.md index 63d3724c45..0d2a3c78d7 100644 --- a/docset/windows/nano-server-image-generator/new-nanoserverimage.md +++ b/docset/windows/nano-server-image-generator/new-nanoserverimage.md @@ -25,48 +25,51 @@ Creates a Nano Server installation image. ## SYNTAX ``` -New-NanoServerImage [-DeploymentType] [-Edition] [-MediaPath ] [-BasePath ] - -TargetPath [-MaxSize ] [-Storage] [-Compute] [-Defender] [-Clustering] [-OEMDrivers] - [-Containers] [-SetupUI ] [-Package ] [-ServicingPackagePath ] - [-ComputerName ] -AdministratorPassword [-UnattendPath ] [-DomainName ] +New-NanoServerImage [-DeploymentType] {Host | Guest} [-Edition] {Standard | Datacenter} + -TargetPath -AdministratorPassword [-MediaPath ] [-BasePath ] + [-MaxSize ] [-Storage] [-Compute] [-Defender] [-Clustering] [-OEMDrivers] [-Containers] + [-SetupUI ] [-Package ] [-ServicingPackagePath ] + [-ComputerName ] [-UnattendPath ] [-DomainName ] [-DomainBlobPath ] [-ReuseDomainNode] [-DriverPath ] [-InterfaceNameOrIndex ] [-Ipv6Address ] [-Ipv6Dns ] [-Ipv4Address ] [-Ipv4SubnetMask ] - [-Ipv4Gateway ] [-Ipv4Dns ] [-DebugMethod ] [-EnableEMS] [-EMSPort ] - [-EMSBaudRate ] [-EnableRemoteManagementPort] [-CopyPath ] [-SetupCompleteCommand ] - [-Development] [-LogPath ] [-OfflineScriptPath ] [-OfflineScriptArgument ] - [-Internal ] [] + [-Ipv4Gateway ] [-Ipv4Dns ] [-DebugMethod {Serial | Net | 1394 | USB}] + [-DebugBaudRate ] [-DebugBusParams ] [-DebugChannel ] [-DebugCOMPort ] [-DebugKey ] [-DebugPort ] [-DebugRemoteIP ] [-DebugTargetName ] + [-EnableEMS] [-EMSPort ] [-EMSBaudRate ] [-EnableRemoteManagementPort] [-CopyPath ] + [-SetupCompleteCommand ] [-Development] [-LogPath ] [-OfflineScriptPath ] + [-OfflineScriptArgument ] [-Internal ] [] ``` ## DESCRIPTION -The **New-NanoServerImage** cmdlet makes a local copy of the necessary files from the installation media and converts the included Nano Server Windows image (.wim) file into a VHD or VHDX image, or reuses the existing .wim file. -It then makes a copy of the converted VHD or VHDX image in the specified path. -You can subsequently perform the following operations: +The **New-NanoServerImage** cmdlet makes a local copy of the necessary files from the installation media and converts the included Nano Server Windows image (.wim) file into a VHD or VHDX image, or reuses the existing .wim file. It then makes a copy of the converted VHD or VHDX image in the specified path. You can subsequently perform the following operations: - Add packages. -- Add drivers. +- Add drivers. +- Add servicing packages (updates). +- Add an unattended setup file (unattend.xml). +- Add files. +- Add setup scripts. - Set the computer name. - Set the administrator password. +- Configure network settings. - Join a domain. - Enable debugging. - Enable Emergency Management Services (EMS). -- Set the static IP address. +- Enable remote management. +- Enable development options. ## EXAMPLES ### Example 1: Create a Nano Server installation image ``` -PS C:\> New-NanoServerImage -MediaPath "D:\" -BasePath ".\Base" -TargetPath ".\Target 1\NanoServer.vhd" -GuestDrivers +PS C:\> New-NanoServerImage -DeploymentType Guest -Edition Datacenter -MediaPath D:\ -BasePath .\Base -TargetPath .\NanoServer.vhd ``` -This command copies the necessary files from D:\ into .\Base. -It converts the Nano Server .wim file into a .vhd file in .\Base\Base.vhd. -It then moves that VHD into .\Target 1\Target 1.vhd and embeds the Guest Drivers package into it. +This command copies the necessary files from D:\ into .\Base. It converts the Nano Server .wim file into a .vhd file. It then moves that VHD to .\NanoServer.vhd and embeds the guest drivers into it. ## PARAMETERS ### -AdministratorPassword -Specifies the administrator password for the image. -If you do not specify this value on the command line, this cmdlet prompts you for the password. +Specifies the password for the built-in Administrator account for the image. If you do not specify this value on the command line, this cmdlet prompts you for the password. To use a blank password, specify $null or press Enter when prompted for the password. ```yaml Type: SecureString @@ -81,7 +84,7 @@ Accept wildcard characters: False ``` ### -BasePath -Specifies the path for the source media. +Specifies the path where Nano Server files are copied from the source media. These files are not automatically deleted after running Edit-NanoServerImage or New-NanoServerImage. This enables you to copy the Nano Server files from the source media once with the MediaPath parameter and reuse the same files with the BasePath parameter when running Edit-NanoServerImage or New-NanoServerImage again. ```yaml Type: String @@ -96,7 +99,7 @@ Accept wildcard characters: False ``` ### -Clustering -Indicates that this operation adds the Clustering package. +Indicates that this operation adds the Clustering package. This package includes Failover Clustering, VM Failover Clustering, Volume Replication Clustering, Storage Spaces Direct (S2D), Storage Quality of Service (QoS), and SMB Witness Service. ```yaml Type: SwitchParameter @@ -111,7 +114,7 @@ Accept wildcard characters: False ``` ### -Compute -Indicates that this operation adds the Compute (Hyper-V) package. +Indicates that this operation adds the Compute package. This package includes Hyper-V and NetQoS. ```yaml Type: SwitchParameter @@ -141,7 +144,7 @@ Accept wildcard characters: False ``` ### -Containers -Indicates that this operation adds the Containers package. +Indicates that this operation adds the Containers package. This package includes host support for Windows Containers. ```yaml Type: SwitchParameter @@ -156,7 +159,7 @@ Accept wildcard characters: False ``` ### -CopyPath -Specifies the copy path. +Specifies one or more files to copy into the target image. This parameter accepts a path to a single file, an array of paths to multiple files, or a hashtable of file paths and target directories where the keys are the file path names and the values are the target directories. For example, @{"C:\mytool.exe"="windows"} will copy mytool.exe from C:\ on the source machine to the windows directory in the target image. ```yaml Type: Object @@ -170,9 +173,83 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -DebugBaudRate +Specifies the baud rate to use for kernel debugging. This parameter is only applicable when DebugMethod is Serial. The default rate is 115200 bps. + +```yaml +Type: UInt32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: 115200 +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugBusParams +Specifies additional bus parameters to use for network kernel debugging (KDNet). This parameter is only applicable when DebugMethod is Net. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugChannel +Specifies the channel that the computer running the debugger can use to connect to the host. This parameter is only applicable when DebugMethod is 1394. + +```yaml +Type: UInt16 +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugCOMPort +Specifies the serial port that kernel debugging is enabled on. This parameter is only applicable when DebugMethod is Serial. The default port is 2. + +```yaml +Type: Byte +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: 2 +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugKey +Specifies the shared key secret for establishing the debugger connection. This parameter is only applicable when DebugMethod is Net. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -DebugMethod -Specifies the method of kernel debugging for the target image. -The acceptable values for this parameter are: +Specifies the method of kernel debugging for the target image. The acceptable values for this parameter are: - Serial - Net (KDNET) @@ -194,8 +271,53 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -DebugPort +Specifies the port that the computer running the debugger can use to connect to the host. This parameter is only applicable when DebugMethod is Net. + +```yaml +Type: UInt16 +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugRemoteIP +Specifies the IP address of the computer running the debugger. This parameter is only applicable when DebugMethod is Net. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DebugTargetName +Specifies the target name that the computer running the debugger can use to connect to the host. This parameter is only applicable when DebugMethod is USB. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### -Defender -Indicates that this operation adds the Windows Defender package. +Indicates that this operation adds the Windows Defender package. This package also includes a default malware definition file for Windows Defender. ```yaml Type: SwitchParameter @@ -210,10 +332,12 @@ Accept wildcard characters: False ``` ### -DeploymentType +Specifies the type of Nano Server deployment image. Valid values are Guest and Host. Specify Guest for creating an image for deployment to a virtual machine. Specify Host for creating an image for deployment to physical hardware. + ```yaml Type: String Parameter Sets: (All) -Aliases: +Aliases: Accepted values: Host, Guest Required: True @@ -224,6 +348,8 @@ Accept wildcard characters: False ``` ### -Development +Indicates that this operation enables settings for development and testing scenarios on Nano Server. This includes enabling PowerShell as the default local shell, allowing installation of unsigned drivers, copying debugger binaries into the image, opening a port for debugging, enabling test signing, and enabling installation of AppX packages without a developer license. + ```yaml Type: SwitchParameter Parameter Sets: (All) @@ -237,8 +363,7 @@ Accept wildcard characters: False ``` ### -DomainBlobPath -Specifies the path to a domain blob. -This cmdlet joins the image to the domain that this parameter specifies. +Specifies the path to a domain blob. This cmdlet joins the image to the domain that this parameter specifies. You can harvest a domain blob from a computer that is joined to the domain using the djoin.exe tool with the Provision parameter. Save the blob to a file and specify the path to the blob file using this parameter. ```yaml Type: String @@ -253,10 +378,7 @@ Accept wildcard characters: False ``` ### -DomainName -Specifies a domain name. -This cmdlet performs an offline join to the domain specified by this parameter. -A domain blob is retrieved from the local computer. -If the local computer is not a member of the specified domain, the command fails. +Specifies a domain name. This cmdlet performs an offline join to the domain specified by this parameter. A domain blob is retrieved from the local computer. If the local computer is not a member of the specified domain, the command fails. In this case, harvest a domain blob from a computer that is joined to the domain and use the DomainBlobPath parameter instead. ```yaml Type: String @@ -271,7 +393,7 @@ Accept wildcard characters: False ``` ### -DriverPath -Specifies the driver path. +Specifies one or more paths to driver .inf files and binary files to add to the image. Paths can be directories containing drivers or paths to individual driver files. For each driver, both the .inf and .sys files must be present. Only 64-bit drivers are supported on Nano Server. If the drivers are not signed, the command fails. ```yaml Type: String[] @@ -285,54 +407,54 @@ Accept pipeline input: False Accept wildcard characters: False ``` -### -EMSBaudRate -Specifies the baud rate for EMS. -The default is 115200 bps. +### -Edition +Specifies the edition of the operating system. Valid values are Standard and Datacenter. ```yaml -Type: UInt32 +Type: String Parameter Sets: (All) Aliases: +Accepted values: Standard, Datacenter -Required: False -Position: Named +Required: True +Position: 1 Default value: None Accept pipeline input: False Accept wildcard characters: False ``` -### -EMSPort -Specifies the port on which to enable EMS. -The default is 1. +### -EMSBaudRate +Specifies the baud rate for Emergency Management Services (EMS). The default is 115200 bps. ```yaml -Type: Byte +Type: UInt32 Parameter Sets: (All) Aliases: Required: False Position: Named -Default value: None +Default value: 115200 Accept pipeline input: False Accept wildcard characters: False ``` -### -Edition +### -EMSPort +Specifies the port on which to enable Emergency Management Services (EMS). The default is 1. + ```yaml -Type: String +Type: Byte Parameter Sets: (All) Aliases: -Accepted values: Standard, Datacenter -Required: True -Position: 1 -Default value: None +Required: False +Position: Named +Default value: 1 Accept pipeline input: False Accept wildcard characters: False ``` ### -EnableEMS -Indicates that this operation enables EMS and BootEMS on the image. +Indicates that this operation enables Emergency Management Services (EMS) and BootEMS on the image. ```yaml Type: SwitchParameter @@ -347,7 +469,7 @@ Accept wildcard characters: False ``` ### -EnableRemoteManagementPort -Indicates that this operation opens port 5985 for inbound TCP connections for Windows Remote Management (WinRM). +Indicates that this operation opens port 5985 for inbound TCP connections for Windows Remote Management (WinRM) and enable the Remote Event Log Management firewall group. ```yaml Type: SwitchParameter @@ -362,8 +484,7 @@ Accept wildcard characters: False ``` ### -InterfaceNameOrIndex -Specifies the interface name or index to modify. -You can get the interface name or index using **Get-NetAdapter**, netsh, or Recovery Console. +Specifies the network adapter interface name or index to modify. You can get the interface name or index using **Get-NetAdapter**, netsh, or Recovery Console. ```yaml Type: String @@ -378,7 +499,7 @@ Accept wildcard characters: False ``` ### -Internal -{{Fill Internal Description}} +This parameter is reserved for internal use. ```yaml Type: String @@ -483,7 +604,7 @@ Accept wildcard characters: False ``` ### -LogPath -{{Fill LogPath Description}} +Specifies the path where log files from the operation will be collected. If LogPath is not specified, all logs are collected into a Logs folder in BasePath. ```yaml Type: String @@ -498,8 +619,7 @@ Accept wildcard characters: False ``` ### -MaxSize -Specifies the size, in bytes, of the dynamic image to create. -The default value is 4 GB. +Specifies the size, in bytes, of the dynamic image to create. The default value is 4 GB. Note that the default size of 4GB is too small to apply cumulative updates. If you use the default size, prior to installing updates, use Hyper-V Manager, Disk Management, PowerShell, or other tool to expand the size of the virtual hard disk and system volume to at least 10GB, or use the ScratchDir parameter on the DISM tools to set the scratch directory to a volume with at least 10GB of free space when installing updates. ```yaml Type: UInt64 @@ -514,8 +634,7 @@ Accept wildcard characters: False ``` ### -MediaPath -Specifies the path of the source media. -If a local copy of the source media already exists, and it is specified as the base path, then no copying is performed. +Specifies the path of the source media. If a local copy of the source media already exists, and it is specified using the BasePath parameter, then no copying is performed. ```yaml Type: String @@ -530,7 +649,7 @@ Accept wildcard characters: False ``` ### -OEMDrivers -Indicates that this operation adds the OEM Drivers package. +Indicates that this operation adds the OEM Drivers package. This package includes drivers for a variety of network adapters, storage controllers, and other peripherals. This is the same set of drivers included in a Server Core installation of Windows Server. ```yaml Type: SwitchParameter @@ -545,7 +664,7 @@ Accept wildcard characters: False ``` ### -OfflineScriptArgument -{{Fill OfflineScriptArgument Description}} +Use the OfflineScriptPath parameter to specify an array of paths to PowerShell (.ps1) scripts. If those scripts take arguments, use the OfflineScriptArgument parameter to pass a hashtable of additional arguments to the scripts. ```yaml Type: Hashtable @@ -560,7 +679,7 @@ Accept wildcard characters: False ``` ### -OfflineScriptPath -{{Fill OfflineScriptPath Description}} +Use the OfflineScriptPath parameter to specify an array of paths to PowerShell (.ps1) scripts. If those scripts take arguments, use the OfflineScriptArgument parameter to pass a hashtable of additional arguments to the scripts. ```yaml Type: String[] @@ -575,7 +694,7 @@ Accept wildcard characters: False ``` ### -Package -{{Fill Package Description}} +Specifies an array of Nano Server packages to add. Packages are stored in the NanoServer\Packages folder on the installation media. You can get a list of Nano Server packages by running the Get-NanoServerPackage cmdlet. ```yaml Type: String[] @@ -605,7 +724,7 @@ Accept wildcard characters: False ``` ### -ServicingPackagePath -{{Fill ServicingPackagePath Description}} +Specifies an array of servicing packages (updates) to add. ```yaml Type: String[] @@ -620,7 +739,7 @@ Accept wildcard characters: False ``` ### -SetupCompleteCommand -{{Fill SetupCompleteCommand Description}} +Specifies an array of commands to run after setup completes. ```yaml Type: String[] @@ -635,12 +754,12 @@ Accept wildcard characters: False ``` ### -SetupUI -{{Fill SetupUI Description}} +This parameter is reserved for internal use. ```yaml Type: String[] Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named @@ -650,7 +769,7 @@ Accept wildcard characters: False ``` ### -Storage -Indicates that this operation adds the Storage package. +Indicates that this operation adds the Storage package. This package includes the File Server role, Data Deduplication, Multipath I/O, including a driver for Microsoft Device-Specific Module (MSDSM), ReFS (v1 and v2), iSCSI Initiator (but not iSCSI Target), Storage Replica, Storage Management Service with SMI-S support, SMB Witness Service, Volume Shadow Copy Service (VSS), Dynamic Volumes, and basic Windows storage providers (for Windows Storage Management). Note that when using the Storage parameter to install the File Server role, the role is installed but not enabled. You can enable the File Server role from a remote computer using Server Manager. ```yaml Type: SwitchParameter @@ -665,9 +784,7 @@ Accept wildcard characters: False ``` ### -TargetPath -Specifies the path of the final, modified image. -The image format is determined based on the file extension. -Possible extension values are .vhd, .vhdx, and .wim. +Specifies the path of the final, modified image. The image format is determined based on the file extension. Possible extension values are .vhd, .vhdx, and .wim. ```yaml Type: String @@ -682,10 +799,12 @@ Accept wildcard characters: False ``` ### -UnattendPath +Specifies the path to an unattended setup file (unattend.xml). + ```yaml Type: String Parameter Sets: (All) -Aliases: +Aliases: Required: False Position: Named