Dnes si představíme malý PowerShell skript, který Vám pomůže přenést všechny role a funkce z jednoho serveru na druhý. Na takto připraveném serveru je možné následně využít nástrojů pro migraci serveru, které dokáže exportovat a importovat jednotlivé konfigrace různých rolí a funcí serveru. Základem ovšem zůstává mít instalované stejné role a funkce na starém i novém stroji a to jak vše provést na 2 spuštění sktriptu a přeneseníé jednoho TXT souboru si ukážeme.
Nejprve je potřeba si uložit následující skript:
Function MigraceRoliFunkci
{
Param(
[Parameter(Mandatory=$true)]
[String]$soubor = "C:\Users\Public\features.txt",
[Parameter(Mandatory=$false)]
[Switch]$Import
)
if($Import)
{
$file = Get-Content $soubor;
$radek = ($file.Count) - 3;
$role = Get-Content $soubor -Tail $radek
foreach ($f in $role)
{
Install-WindowsFeature -Name $f -IncludeManagementTools
}
Write-Host "Restartujte server co nejdříve!"
}
else
{
Get-WindowsFeature | Where-Object {$_. installstate -eq "installed"} | select name | Out-File -FilePath $soubor
Write-Host "Vyzvednete si vygenerovany soubor pro import."
}
}
Nyní jej můžeme spustit na starém serveru a následně zavolat funkci například takto:
MigraceRoliFunkci -soubor E:\funkce.txt
Nyní skriprt spustí export seznamu rolí a funkcí za našeho starého serveru na náš disk E do souboru funkce.txt.
Disk E přeneseme na nový server, kde pro zjednodušení bude mít také písmeno E, spustíme náš skript a opět budeme volat funkci:
MigraceRoliFunkci -soubor E:\funkce.txt -Import
Nyní naše funkce provede instalaci všech rolí a funkcí, které nalezne v souboru funkce.csv. Po dokončení instalace máme server připraven k importu nastavení, ale o tom až někdy jindy.