The easiest way to proceed is to first mount the 2012R2 ISO that matches your Core installation and point the cmdlet at the attached source. Of course you can do this via IPMI/ iDRAC or if your ISO files are already on an internal file structure, you can mount and upgrade directly within PowerShell. Very important: the ISO must match the installed build of your Windows Server Core machine or this process will fail!
First map a drive to your ISO repository, if this goes according to plan it won’t need to be persistent:
Next mount the disk image to your server, change the drive letter and ISO name accordingly:
Mount-DiskImage –ImagePath ‘W:\en_windows….ISO’ -Storage Type ISO -PassThru
The Mount-DiskImage cmdlet will mount your ISO to the next available drive letter on the host. To determine what that is, pipe your previous command to the Get-Volume cmdlet. You can see that it reveals E as our new drive letter assigned to the mounted ISO:
Mount-DiskImage –ImagePath ‘W:\en_windows….ISO’ -Storage Type ISO -PassThru | Get-Volume
If your source ISO has multiple Windows installations within, determine which version is required for your installation by identifying its index so you will install from the proper wim file. In the example below index 4 shows the Server Datacenter product which is what I need. Index 2 show the Standard license level, 1 and 3 show the Core products. This needs to match what you already have installed (Datacenter Core—>Datacenter GUI). If you get an error during the upgrade you’ve either chosen the wrong ISO or the wrong Server build. Volume License vs MSDN, 2012 R2 with Update or without…the distinction matters.
Get-WindowsImage -ImagePath e:\sources\install.wim
Run the feature install command and point to the wim file mounted on the new drive letter with the correct Server edition index number (pay close attention to the syntax!). The feature installation will run and if all goes well your server will reboot then come up with the full GUI version of Server in 10-20 minutes.
Install-WindowsFeature Server-GUI-Mgmt-Infra,Server-GUI-Shell -Restart -Source wim:e:\sources\install.wim:4
I did this while recovering several hosts from an orphaned AD environment which also orphaned a 4-node failover cluster. Some helpful PowerShell commands useful to me along the way:
Identify Network Interface Index: Get-NetIpConfiguration
DNS Change: Set-DNSClientServerAddress –InterfaceIndex x -ServerAddresses (“10.10.1.10”, “10.10.1.9”)
Domain change: Add-computer -domainname domain.com
Forcibly remove host from a domain: netdom remove ComputerName /domain:DomainName /Force
Resources:
http://mikefrobbins.com/2014/12/25/mount-an-iso-on-a-physical-server-running-server-core/http://blogs.technet.com/b/john_taylor/archive/2013/01/09/converting-from-server-2012-core-install-to-full-gui.aspx
0 Comments