When a SharePoint 2013 needs to be deployed in a server which doesn’t have internet access, and SharePoint requires prerequisite to be installed, we can do couple of things.
- Download prerequisites in a different machine which has access to internet.
- Move that to the actual server where SharePoint needs to be deployed.
- Use prerequisite installer to use local folder for installing the prerequisite.
Downloading prerequisites
We can download prerequisites using Powershell. Please use the following script.
Import-Module BitsTransfer
## Prompt for the destination path
$DestPath = Read-Host -Prompt "- Enter the destination path for downloaded files"
## Check that the path entered is valid
If (Test-Path "$DestPath" -Verbose)
{
## If destination path is valid, create folder if it doesn't already exist
$DestFolder = "$DestPath\PrerequisiteInstallerFiles"
New-Item -ItemType Directory $DestFolder -ErrorAction SilentlyContinue
}
Else
{
Write-Warning " - Destination path appears to be invalid."
## Pause
Write-Host " - Please check the path, and try running the script again."
Write-Host "- Press any key to exit..."
$null = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
break
}
## We use the hard-coded URL below, so that we can extract the filename (and use it to get destination filename $DestFileName)
## Note: These URLs are subject to change at Microsoft's discretion - check the permalink next to each if you have trouble downloading.
$UrlList = ("http://download.microsoft.com/download/D/0/F/D0F564A3-6734-470B-9772-AC38B3B6D8C2/dotNetFx45_Full_x86_x64.exe", # Microsoft .NET Framework 4.5
"http://download.microsoft.com/download/5/2/B/52B59966-3009-4F39-A99E-3732717BBE2A/Windows6.1-KB2506143-x64.msu", # Windows Management Framework 3.0 (CTP2)
"http://download.microsoft.com/download/9/1/3/9138773A-505D-43E2-AC08-9A77E1E0490B/1033/x64/sqlncli.msi", #Microsoft SQL Server 2008 r2 Native Client
"http://download.microsoft.com/download/D/7/2/D72FD747-69B6-40B7-875B-C2B40A6B2BDD/Windows6.1-KB974405-x64.msu", #Windows Identity Foundation (KB974405)
"http://download.microsoft.com/download/E/0/0/E0060D8F-2354-4871-9596-DC78538799CC/Synchronization.msi", # Microsoft Sync Framework Runtime v1.0 SP1 (x64)
"http://download.microsoft.com/download/A/6/7/A678AB47-496B-4907-B3D4-0A2D280A13C0/WindowsServerAppFabricSetup_x64.exe", #Windows Server AppFabric
"http://download.microsoft.com/download/0/1/D/01D06854-CA0C-46F1-ADBA-EBF86010DCC6/r2/MicrosoftIdentityExtensions-64.msi", # Windows Identity Extensions
"http://download.microsoft.com/download/9/1/D/91DA8796-BE1D-46AF-8489-663AB7811517/setup_msipc_x64.msi", # Microsoft Information Protection and Control Client
"http://download.microsoft.com/download/8/F/9/8F93DBBD-896B-4760-AC81-646F61363A6D/WcfDataServices.exe", # Microsoft WCF Data Services 5.0
"http://download.microsoft.com/download/7/B/5/7B51D8D1-20FD-4BF0-87C7-4714F5A1C313/AppFabric1.1-RTM-KB2671763-x64-ENU.exe" # CU Package 1 for Microsoft AppFabric 1.1 for Windows Server (KB2671763)
)
ForEach ($Url in $UrlList)
{
## Get the file name based on the portion of the URL after the last slash
$DestFileName = $Url.Split('/')[-1]
Try
{
## Check if destination file already exists
If (!(Test-Path "$DestFolder\$DestFileName"))
{
## Begin download
Start-BitsTransfer -Source $Url -Destination $DestFolder\$DestFileName -DisplayName "Downloading `'$DestFileName`' to $DestFolder" -Priority High -Description "From $Url..." -ErrorVariable err
If ($err) {Throw ""}
}
Else
{
Write-Host " - File $DestFileName already exists, skipping..."
}
}
Catch
{
Write-Warning " - An error occurred downloading `'$DestFileName`'"
break
}
}
## View the downloaded files in Windows Explorer
Invoke-Item $DestFolder
## Pause
Write-Host "- Downloads completed, press any key to exit..."
$null = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")Once all the prerequisites are downloaded, copy them to server in a particular path and create the following batch file.
Installing prerequisites
set PreReqPath="E:\Install\SharePoint\PrerequisiteInstallerFiles" PrerequisiteInstaller.exe /SQLNCli:%PreReqPath%\sqlncli.msi ^ /PowerShell:%PreReqPath%\Windows6.1-KB2506143-x64.msu ^ /NETFX:%PreReqPath%\dotNetFx45_Full_x86_x64.exe ^ /IDFX:%PreReqPath%\Windows6.1-KB974405-x64.msu ^ /Sync:%PreReqPath%\Synchronization.msi ^ /AppFabric:%PreReqPath%\WindowsServerAppFabricSetup_x64.exe ^ /IDFX11:%PreReqPath%\MicrosoftIdentityExtensions-64.msi ^ /MSIPCClient:%PreReqPath%\setup_msipc_x64.msi ^ /WCFDataServices:%PreReqPath%\WcfDataServices.exe ^ /KB2671763:%PreReqPath%\AppFabric1.1-RTM-KB2671763-x64-ENU.exe
2 replies on “Installing SharePoint 2013 Prerequisites Without an Internet Connection”
Hi Kannan,
Will this work for Sharepoint Foundation 2013? (With SP1?)
Jean-Pierre
Hi Jean,
Yup this should work, but I have tried this only on Enterprise Edition.
Kannan