Unattended Installation
Installation Script
Because there are many options to configure via the command line install, we have created a PowerShell Script to use as a ‘wrapper’ for the MSI Install.
You find the script at: https://github.com/2pintsoftware/iPXEAnywhere/tree/main/Install
Modify the script to enable the parameters you would like to define. The parameters are defined in the tables below.
Command Line Installation
The install can be configured through the following basic commands:
The above examples are ‘bare minimum’ examples. You may want to configure more properties during install, and we have included a reference of all the MSI properties below:
Mandatory MSI Properties
Property | Value | Description |
---|---|---|
INSTALLTYPE | 1 = PowerShell Integration 2 = ConfigMgr Integration | Type of installation to execute. |
SERVICE_USERNAME | "LocalSystem" or "domain\username" | The account in which the 2PXE service runs as. |
SERVICE_PASSWORD | <password> | The password if domain\username was used as the SERVICE_USERNAME property. |
Optional MSI Properties
Property | Value | Description |
---|---|---|
CONFIGMGRSQL | 1 = enable a SQL connection to the ConfigMgr DB 0 = use HTTP via the Management Point to connect to the ConfigMgr DB | Defines the mechanism used to connect to the ConfigMgr DB. |
RUNTIME_DATABASE_LOGON_TYPE | "WinAuthCurrentUser" = Integrated security "SQLAuth" = SQL Security | Defines the type of logon type used to connect to the ConfigMgr DB |
ODBC_SERVER | "myserverfqdn.com" | The FQDN of the ConfigMgr DB server. |
RUNTIME_DATABASE_NAME | Ex: CM_<SiteCode> | The name of the ConfigMgr database. |
REMOTEINSTALL_PATH | <path to remote install folder> | Media folder the 2PXE service uses to store bootable content. |
DEBUGLOG_PATH | "C:\MyLogfiles\2PXE.log" | Path to the log file. |
DEBUGLOG | 1 = enable 0 = disable | Used to enable or disable debug logging. |
POWERSHELLSCRIPTALLOWBOOT_PATH | "path to script" | Path to the PowerShell extension script for boot requests. |
POWERSHELLSCRIPTIMAGES_PATH | "path to script image" | Path to the PowerShell extension for image selection. |
RUN_ON_DHCP_PORT | 1 = enable 0 = disable | Specifies if the service should respond on DHCP port. |
RUN_ON_PXE_PORT | 1 = enable 0 = disable | Specifies if the service should respond on PXE port. |
RUN_TFTP_SERVER | 1 = enable 0 = disable | Specifies if the built-in TFTP Server should be started. |
RUN_HTTP_SERVER | 1 = enable 0 = disable | Specifies if the built-in HTTP WCF Server should be started. |
EMBEDDEDSDI | 1 = enable 0 = disable | Use an embedded boot.sdi image. |
F12TIMEOUT | "10000" | F12 prompt timout for iPXE loaders for non mandatory deployments in milliseconds. |
IPXELOADERS | 1 = use iPXE boot loaders 0 = 2PXE will use Windows boot loaders | Determines which boot loaders should be used for PXE booting. |
UNKNOWNSUPPORT | 1 = enable 0 = disable | Enables Unknown Machine support in Configuration Manager. |
PORTNUMBER | "port number" | 2PXE Http Service Port (8050 by default). |
POWERSHELLSCRIPTALLOWBOOT_PATH | c:\myscripts | Set only if using custom path location for .ps1 scripts. |
POWERSHELLSCRIPTIMAGES_PATH | c:\myscripts | Set only if using custom path location for .ps1 scripts. |
INSTALLFOLDER | C:\MyInstallPath | Default is C:\Program Files\2pint Software. |
ENABLESCCMMENUCOUNTDOWN | "10000" | Countdown for menu timeout if nothing is selected in Millisecs. |
ENABLESCCMMANDATORYCOUNTDOWN | "30000" | Countdown for Mandatory deployments - the deployment will be executed after this expires in Millisecs. |
SCCMREPORTSTATE | 1 = enable 0 = disable | "1" Instructs 2PXE to send SCCM state messages for mandatory deployments. 1 to send, 0 to not send. |
WIMBOOTPARAMS | Possible parameters are: gui, pause, pause=quiet, rawbcd, index=x For details see: http://ipxe.org/appnote/wimboot_architecture | "gui" command line for wimboot. |
ENABLEIPXEANYWHEREWEBSERVICE | "0” Specifies to use iPXE Anywhere Web Service. 0 to disable 1 - reporting functionality only 2 to move the entire request over to the web service + reporting. 3 is 1+2 and the ability to execute cmdline from iPXE WS in WiNPE BootRequest = 1, Syslog = 2 ReportBootConfiguration = 4, ReportDLStart = 8, ReportDLComplete = 16, ReportDLBoot = 32, RunCmdLineWinPE = 64 | For example: A value of 62 (2+4+8+16+32=62) gives you all but BootRequest and RunCmdLineWinPE. Therefore for iPXE and StifleR Integration you would have to set it to a minimum of; 2+4+8+16+32 = 62 |
IPXEANYWHEREWEBSERVICEURI | "http://url:Port" | Specifies the address and Port for the iPXE Anywhere Web Service. |
NETWORKACCESS_USERNAME | "[%USERDOMAIN]\[%USERNAME]" | The user name and password to connect to a distribution point. |
NETWORKACCESS_PASSWORD | “A123456!" | The password to be used to connect to a distribution point. |
FWTFTP | 1 = enable 0 = disable | Set 1 to allow the installer to create the Port 69 UDP Firewall exception. |
FWDHCP | 1 = enable 0 = disable | Set 1 to allow the installer to create the Port 67 UDP Firewall exception. |
FWPROXYDHCP | 1 = enable 0 = disable | Set 1 to allow the installer to create the Port 4011 UDP Firewall exception. |
FWHTTP | 1 = enable 0 = disable | Set 1 to allow the installer to create the Port 8050 TCP Firewall exception. |
BINDTOIP | <IP Address> | Enter the server NIC IP address to which to bind the service. |
USEHYPERTHREAD | 1 = enable 0 = disable | To run the service with hyperthreading. |
Last updated